/* gerado por design/gerar.mjs a partir de design/zorion-constelacao.tokens.json; não edite este arquivo, edite os tokens e gere de novo */
:root{--z-fonte-display:"Space Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--z-fonte-texto:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--z-fonte-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--z-t-xs:0.75rem;--z-t-sm:0.84375rem;--z-t-base:0.96875rem;--z-t-md:1.0625rem;--z-t-lg:1.25rem;--z-t-xl:1.625rem;--z-t-2xl:2.125rem;--z-t-3xl:2.875rem;--z-t-4xl:3.875rem;--z-lh-tight:1.08;--z-lh-snug:1.25;--z-lh-normal:1.55;--z-lh-relaxed:1.7;--z-peso-texto:400;--z-peso-medio:550;--z-peso-forte:650;--z-peso-display:680;--z-e0:0rem;--z-e1:0.25rem;--z-e2:0.5rem;--z-e3:0.75rem;--z-e4:1rem;--z-e5:1.25rem;--z-e6:1.5rem;--z-e7:2rem;--z-e8:2.5rem;--z-e9:3.5rem;--z-e10:4.5rem;--z-e11:6rem;--z-r-xs:6px;--z-r-sm:10px;--z-r-md:14px;--z-r-lg:20px;--z-r-pilula:999px;--z-dur-rapida:120ms;--z-dur-normal:220ms;--z-dur-lenta:420ms;--z-curva-saida:cubic-bezier(.2,.8,.2,1);--z-curva-entrada:cubic-bezier(.4,0,1,1);--z-curva-padrao:cubic-bezier(.4,0,.2,1);--z-alvo:44px}
:root,[data-tema="noite"]{color-scheme:dark;--z-fundo:#070b17;--z-superficie:#0d1328;--z-elevada:#141c3a;--z-sobreposta:#1a2450;--z-linha-suave:#1b2447;--z-linha:#2a3566;--z-linha-forte:#5a68ad;--z-texto:#eef2ff;--z-texto-2:#b7c1e4;--z-texto-3:#8e9ac4;--z-texto-off:#68749f;--z-marca:#7794ff;--z-marca-acao:#3f5cf0;--z-marca-acao-hover:#4a66f6;--z-sobre-marca:#ffffff;--z-decisao:#ffb454;--z-sobre-decisao:#1c1304;--z-ok:#3bd89f;--z-ok-fundo:#0f2a26;--z-aviso:#ffc65a;--z-aviso-fundo:#2e2410;--z-erro:#ff7b8a;--z-erro-fundo:#331822;--z-info:#63c9ff;--z-info-fundo:#102a3c;--z-neutro:#97a3cc;--z-neutro-fundo:#1a2243;--z-foco:#a9bbff;--z-sombra-1:0 1px 0 rgba(255,255,255,.045) inset,0 10px 28px rgba(0,0,0,.38);--z-sombra-2:0 1px 0 rgba(255,255,255,.06) inset,0 24px 64px rgba(0,0,0,.55);--z-brilho:0 0 0 1px rgba(119,148,255,.38),0 0 36px rgba(119,148,255,.22);--z-halo:radial-gradient(900px 520px at 82% -8%,rgba(91,124,255,.30),transparent 62%),radial-gradient(700px 420px at 4% 8%,rgba(255,180,84,.07),transparent 60%);--z-vidro:rgba(7,11,23,.72)}
[data-tema="dia"]{color-scheme:light;--z-fundo:#f4f6fc;--z-superficie:#ffffff;--z-elevada:#ffffff;--z-sobreposta:#ffffff;--z-linha-suave:#e6e9f5;--z-linha:#d3d8ec;--z-linha-forte:#7480ad;--z-texto:#0f1530;--z-texto-2:#434d75;--z-texto-3:#5b6590;--z-texto-off:#8791b5;--z-marca:#3350ea;--z-marca-acao:#3350ea;--z-marca-acao-hover:#2740cf;--z-sobre-marca:#ffffff;--z-decisao:#c47500;--z-sobre-decisao:#1c1304;--z-ok:#0b7a55;--z-ok-fundo:#e3f6ee;--z-aviso:#8a5400;--z-aviso-fundo:#fff3dc;--z-erro:#b42337;--z-erro-fundo:#fdebee;--z-info:#0a6791;--z-info-fundo:#e3f3fb;--z-neutro:#586285;--z-neutro-fundo:#eceff8;--z-foco:#3350ea;--z-sombra-1:0 1px 2px rgba(15,21,48,.06),0 8px 22px rgba(15,21,48,.07);--z-sombra-2:0 2px 6px rgba(15,21,48,.08),0 28px 60px rgba(15,21,48,.13);--z-brilho:0 0 0 1px rgba(51,80,234,.30),0 0 30px rgba(51,80,234,.14);--z-halo:radial-gradient(900px 520px at 82% -8%,rgba(51,80,234,.10),transparent 62%),radial-gradient(700px 420px at 4% 8%,rgba(245,160,43,.08),transparent 60%);--z-vidro:rgba(244,246,252,.82)}
@media (prefers-color-scheme:light){:root:not([data-tema]){color-scheme:light;--z-fundo:#f4f6fc;--z-superficie:#ffffff;--z-elevada:#ffffff;--z-sobreposta:#ffffff;--z-linha-suave:#e6e9f5;--z-linha:#d3d8ec;--z-linha-forte:#7480ad;--z-texto:#0f1530;--z-texto-2:#434d75;--z-texto-3:#5b6590;--z-texto-off:#8791b5;--z-marca:#3350ea;--z-marca-acao:#3350ea;--z-marca-acao-hover:#2740cf;--z-sobre-marca:#ffffff;--z-decisao:#c47500;--z-sobre-decisao:#1c1304;--z-ok:#0b7a55;--z-ok-fundo:#e3f6ee;--z-aviso:#8a5400;--z-aviso-fundo:#fff3dc;--z-erro:#b42337;--z-erro-fundo:#fdebee;--z-info:#0a6791;--z-info-fundo:#e3f3fb;--z-neutro:#586285;--z-neutro-fundo:#eceff8;--z-foco:#3350ea;--z-sombra-1:0 1px 2px rgba(15,21,48,.06),0 8px 22px rgba(15,21,48,.07);--z-sombra-2:0 2px 6px rgba(15,21,48,.08),0 28px 60px rgba(15,21,48,.13);--z-brilho:0 0 0 1px rgba(51,80,234,.30),0 0 30px rgba(51,80,234,.14);--z-halo:radial-gradient(900px 520px at 82% -8%,rgba(51,80,234,.10),transparent 62%),radial-gradient(700px 420px at 4% 8%,rgba(245,160,43,.08),transparent 60%);--z-vidro:rgba(244,246,252,.82)}}

/* Zorion Constelação · base compartilhada (site, portal do cliente, administração). Só tokens (--z-*); nenhuma cor fixa aqui.
   Sem style="" e sem script inline no HTML: a CSP do produto é estrita (style-src 'self'). */
@font-face{font-family:"Inter";src:url(/assets/l-3100e775e8616cd2-inter-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url(/assets/l-0640890476fc1198-space-grotesk-latin-wght-normal.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
*,*::before,*::after{box-sizing:border-box}
html[data-tema="noite"]{color-scheme:dark;background-color:var(--z-fundo)}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
body{margin:0;background:var(--z-fundo);color:var(--z-texto);font-family:var(--z-fonte-texto);font-size:var(--z-t-base);line-height:var(--z-lh-normal);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
h1,h2,h3,h4{font-family:var(--z-fonte-display);font-weight:var(--z-peso-display);letter-spacing:-.02em;line-height:var(--z-lh-snug);margin:0;color:var(--z-texto);text-wrap:balance}
h1{font-size:clamp(1.75rem,1.2rem + 1.8vw,var(--z-t-2xl))}
h2{font-size:var(--z-t-xl)}
h3{font-size:var(--z-t-lg)}
h4{font-size:var(--z-t-md)}
p{margin:0 0 var(--z-e3)}
small,.z-pequeno{font-size:var(--z-t-sm)}
button,input,select,textarea{font-family:inherit}
a{color:var(--z-marca);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
code,kbd,samp,.z-mono{font-family:var(--z-fonte-mono);font-size:.92em}
:focus{outline:none}
:focus-visible{outline:3px solid var(--z-foco);outline-offset:2px;border-radius:var(--z-r-xs)}
::selection{background:var(--z-marca-acao);color:var(--z-sobre-marca)}
img,svg{max-width:100%}
hr{border:0;border-top:1px solid var(--z-linha);margin:var(--z-e6) 0}
.vh,.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
.pular,.skip{position:absolute;left:-9999px;top:8px;z-index:1000;display:inline-flex;align-items:center;min-height:var(--z-alvo);background:var(--z-texto);color:var(--z-fundo);padding:0 var(--z-e4);border-radius:var(--z-r-sm);font-weight:var(--z-peso-forte);text-decoration:none}
.pular:focus,.skip:focus{left:var(--z-e3)}
/* ---- botões ---- */
.z-btn,.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--z-e2);min-height:var(--z-alvo);padding:0 var(--z-e5);border-radius:var(--z-r-sm);border:1px solid var(--z-linha-forte);background:transparent;color:var(--z-texto);font:inherit;font-weight:var(--z-peso-forte);font-size:var(--z-t-base);line-height:1.2;text-decoration:none;cursor:pointer;transition:background var(--z-dur-rapida) var(--z-curva-padrao),border-color var(--z-dur-rapida) var(--z-curva-padrao),transform var(--z-dur-rapida) var(--z-curva-saida)}
.z-btn:hover,.btn:hover{background:var(--z-elevada);border-color:var(--z-marca);text-decoration:none}
.z-btn:active,.btn:active{transform:translateY(1px)}
.z-btn[disabled],.btn[disabled],.btn.disabled{opacity:.55;cursor:not-allowed;transform:none}
.btn-primary,.z-btn-acao,.z-btn[data-variant="acao"]{background:var(--z-marca-acao);border-color:var(--z-marca-acao);color:var(--z-sobre-marca)}
.btn-primary:hover,.z-btn-acao:hover,.z-btn[data-variant="acao"]:hover{background:var(--z-marca-acao-hover);border-color:var(--z-marca-acao-hover);color:var(--z-sobre-marca)}
.btn-outline-secondary,.z-btn-contorno,.z-btn[data-variant="ghost"]{background:transparent;border-color:var(--z-linha-forte);color:var(--z-texto)}
.btn-danger,.z-btn-perigo,.z-btn[data-variant="danger"]{background:var(--z-erro-fundo);border-color:var(--z-erro);color:var(--z-erro)}
.btn-danger:hover,.z-btn-perigo:hover,.z-btn[data-variant="danger"]:hover{background:var(--z-erro);border-color:var(--z-erro);color:var(--z-fundo)}
.btn-sm,.z-btn-sm{min-height:36px;padding:0 var(--z-e4);font-size:var(--z-t-sm)}
/* botão pequeno só no desktop com mouse; em aparelho de toque ou tela estreita vale o alvo de 44 px */
@media (max-width:60rem),(pointer:coarse){.btn-sm,.z-btn-sm{min-height:var(--z-alvo)}}
.btn .icon,.z-btn .icon{width:18px;height:18px;flex:none}
/* ---- formulários ---- */
label,.form-label{display:block;font-weight:var(--z-peso-medio);font-size:var(--z-t-sm);color:var(--z-texto-2);margin:var(--z-e4) 0 var(--z-e1)}
/* O primeiro rótulo do formulário não leva margem em cima; um rótulo que vem DEPOIS de texto (ajuda, aviso, select) mantém a margem. O campo oculto do csrf não conta. */
form>label:first-child,form>input[type=hidden]:first-child+label,form>input[type=hidden]:first-child+input[type=hidden]+label{margin-top:0}
input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea,.form-control,.form-select{display:block;width:100%;min-height:var(--z-alvo);padding:var(--z-e2) var(--z-e3);border-radius:var(--z-r-sm);border:1px solid var(--z-linha-forte);background:var(--z-superficie);color:var(--z-texto);font:inherit;font-size:var(--z-t-base);line-height:1.4;transition:border-color var(--z-dur-rapida),box-shadow var(--z-dur-rapida)}
textarea{min-height:7rem;resize:vertical}
input::placeholder,textarea::placeholder{color:var(--z-texto-off)}
/* Campo em foco: borda na cor da marca E o anel de 3 px dos links e botões. A regra do campo tem especificidade (0,3,1); a de foco precisa vencê-la, senão a borda e o anel do <input> eram ignorados (só sobrava um halo de 1,6:1). */
input:not([type=hidden]):not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus,.form-control:focus,.form-select:focus{border-color:var(--z-marca);box-shadow:none;outline:3px solid var(--z-foco);outline-offset:2px}
input[type=checkbox],input[type=radio],.form-check-input{width:20px;height:20px;accent-color:var(--z-marca-acao);margin:0;flex:none}
/* a linha inteira (caixa + rótulo) é o alvo: pelo menos 44 px de altura, com a caixa alinhada à primeira linha do rótulo */
.form-check{display:flex;align-items:flex-start;gap:var(--z-e3);min-height:var(--z-alvo);margin:var(--z-e1) 0}
.form-check .form-check-input{margin-top:12px}
.form-check-label{flex:1;margin:0;padding:10px 0;font-weight:var(--z-peso-texto);color:var(--z-texto)}
.z-help,.z-ajuda{font-size:var(--z-t-sm);color:var(--z-texto-3);margin:var(--z-e1) 0 0}
.z-form-narrow{max-width:34rem}
.z-actions,.z-acoes,.zp-acoes{display:flex;flex-wrap:wrap;gap:var(--z-e3);align-items:center;margin-top:var(--z-e4)}
/* ---- estados e avisos (cor nunca é o único portador do significado: ícone/texto acompanham) ---- */
.z-pill,.badge{display:inline-flex;align-items:center;gap:var(--z-e1);padding:2px var(--z-e3);border-radius:var(--z-r-pilula);font-size:var(--z-t-xs);font-weight:var(--z-peso-forte);letter-spacing:.01em;line-height:1.5;background:var(--z-neutro-fundo);color:var(--z-neutro);white-space:nowrap}
.badge::before,.z-pill::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.badge.bg-green-lt,.z-pill[data-tom="ok"]{background:var(--z-ok-fundo);color:var(--z-ok)}
.badge.bg-blue-lt,.z-pill[data-tom="info"]{background:var(--z-info-fundo);color:var(--z-info)}
.badge.bg-yellow-lt,.z-pill[data-tom="aviso"]{background:var(--z-aviso-fundo);color:var(--z-aviso)}
.badge.bg-orange-lt{background:var(--z-aviso-fundo);color:var(--z-aviso)}
.badge.bg-red-lt,.z-pill[data-tom="erro"]{background:var(--z-erro-fundo);color:var(--z-erro)}
.badge.bg-secondary-lt,.z-pill[data-tom="neutro"]{background:var(--z-neutro-fundo);color:var(--z-neutro)}
.z-pill[data-tom="decisao"]{background:color-mix(in srgb,var(--z-decisao) 18%,transparent);color:var(--z-decisao)}
.alert,.z-aviso,.z-notice,.z-note,.z-warn,.z-err,.z-ok{display:block;padding:var(--z-e3) var(--z-e4);border-radius:var(--z-r-sm);border:1px solid var(--z-linha);border-left:4px solid var(--z-info);background:var(--z-info-fundo);color:var(--z-texto);font-size:var(--z-t-sm);line-height:1.5;margin:0 0 var(--z-e4)}
.alert-success,.z-notice,.z-ok,.z-aviso[data-tom="ok"]{border-left-color:var(--z-ok);background:var(--z-ok-fundo)}
.alert-warning,.z-warn,.z-aviso[data-tom="aviso"]{border-left-color:var(--z-aviso);background:var(--z-aviso-fundo)}
.alert-danger,.z-err,.z-aviso[data-tom="erro"]{border-left-color:var(--z-erro);background:var(--z-erro-fundo)}
.alert .d-flex,.z-aviso .d-flex{display:flex;gap:var(--z-e3);align-items:flex-start}
.alert,.z-aviso,.z-notice,.z-note,.z-warn,.z-err,.z-ok{overflow-wrap:anywhere}
.alert .d-flex>div,.z-aviso .d-flex>div{min-width:0;overflow-wrap:anywhere}
.alert-icon,.alert .icon{width:20px;height:20px;flex:none;margin-top:1px;color:currentColor}
.alert-success .alert-icon{color:var(--z-ok)}.alert-warning .alert-icon{color:var(--z-aviso)}.alert-danger .alert-icon{color:var(--z-erro)}.alert-info .alert-icon{color:var(--z-info)}
/* ---- utilitários usados pelos gabaritos ---- */
.text-secondary,.z-muted,.zp-nota{color:var(--z-texto-3)}
.z-muted{font-size:var(--z-t-sm)}
.text-center{text-align:center}.text-nowrap{white-space:nowrap}.text-uppercase{text-transform:uppercase;letter-spacing:.06em}
.small{font-size:var(--z-t-sm)}.fw-semibold{font-weight:var(--z-peso-forte)}
.d-flex{display:flex}.gap-2{gap:var(--z-e2)}.h-100{height:100%}
.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--z-e1)}.mb-2{margin-bottom:var(--z-e2)}.mb-3{margin-bottom:var(--z-e4)}.mt-0{margin-top:0}.mt-2{margin-top:var(--z-e2)}.mt-3{margin-top:var(--z-e4)}
.h2{font-family:var(--z-fonte-display);font-size:var(--z-t-xl);font-weight:var(--z-peso-display);letter-spacing:-.02em}
.h4{font-family:var(--z-fonte-display);font-size:var(--z-t-md);font-weight:var(--z-peso-forte)}
.h5{font-size:var(--z-t-base);font-weight:var(--z-peso-forte)}
.z-stack>*+*{margin-top:var(--z-e4)}
.z-inline{display:inline}
.z-quebra,.z-quebra-palavras{white-space:normal;overflow-wrap:anywhere}

/* Zorion Constelação · estado do serviço (/status e o resumo do portal). Portado do statusCss de theme.mjs para os tokens; cor nunca é o único portador (ícone e texto acompanham). */
.zs{--zs-ok:var(--z-ok);--zs-lento:var(--z-aviso);--zs-falha:var(--z-erro);--zs-nd:var(--z-linha-forte);--zs-ind:var(--z-neutro)}
.zs-topo{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;margin-bottom:14px}
.zs-topo h1{margin:0}
.zs-conn{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:14px;color:var(--z-texto-2);background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:999px;padding:6px 12px}
.zs-dot{width:10px;height:10px;border-radius:50%;background:var(--zs-nd);flex:none}
.zs-conn-vivo .zs-dot{background:var(--zs-ok);box-shadow:0 0 0 3px color-mix(in srgb,var(--z-ok) 25%,transparent)}
.zs-conn-vivo{color:var(--z-ok)}
.zs-conn-reconectando .zs-dot,.zs-conn-conectando .zs-dot{background:var(--zs-lento)}
.zs-conn-velho .zs-dot{background:var(--zs-lento)}
.zs-conn-velho{color:var(--z-aviso);border-color:color-mix(in srgb,var(--z-aviso) 35%,transparent);background:var(--z-aviso-fundo)}
.zs-conn-pausado .zs-dot{background:var(--zs-ind)}
.zs-geral{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:12px}
.zs-geral-p{display:flex;gap:14px;align-items:center;border-radius:var(--z-r-md);padding:16px 18px;border:1px solid var(--z-linha);background:var(--z-superficie);box-shadow:var(--z-sombra-1)}
.zs-geral-p h2{margin:0 0 2px;font-size:clamp(18px,2.2vw,22px);line-height:1.25}
.zs-geral-p p{margin:0;color:var(--z-texto-2);font-size:14.5px}
.zs-geral-ic .zs-ic{width:38px;height:38px}
.zs-geral-p.zs-ok{background:var(--z-ok-fundo);border-color:color-mix(in srgb,var(--z-ok) 35%,transparent)}.zs-geral-p.zs-ok .zs-geral-ic{color:var(--zs-ok)}
.zs-geral-p.zs-lento{background:var(--z-aviso-fundo);border-color:color-mix(in srgb,var(--z-aviso) 35%,transparent)}.zs-geral-p.zs-lento .zs-geral-ic{color:var(--zs-lento)}
.zs-geral-p.zs-falha{background:var(--z-erro-fundo);border-color:color-mix(in srgb,var(--z-erro) 35%,transparent)}.zs-geral-p.zs-falha .zs-geral-ic{color:var(--zs-falha)}
.zs-geral-p.zs-sem-dados,.zs-geral-p.zs-indisponivel{background:var(--z-neutro-fundo);border-color:var(--z-linha)}.zs-geral-p.zs-sem-dados .zs-geral-ic,.zs-geral-p.zs-indisponivel .zs-geral-ic{color:var(--zs-ind)}
.zs-medida{margin:10px 2px 16px;font-size:14px;color:var(--z-texto-2)}
.zs-medida strong{color:var(--z-texto);font-variant-numeric:tabular-nums}
.zs-grade-svc{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}
.zs-grade-diag{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:12px}
.zs-svc{background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);padding:14px 14px 12px;box-shadow:var(--z-sombra-1);display:flex;flex-direction:column;gap:10px;min-width:0}
.zs-svc-h{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;justify-content:space-between}
.zs-svc-h h3{margin:0;font-size:15.5px}
.zs-st{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600}
.zs-ic{flex:none}
.zs-ok .zs-st,.zs-ver-publicada .zs-st{color:var(--zs-ok)}
.zs-lento .zs-st,.zs-ver-validacao .zs-st{color:var(--z-aviso)}
.zs-falha .zs-st{color:var(--zs-falha)}
.zs-sem-dados .zs-st,.zs-indisponivel .zs-st{color:var(--zs-ind)}
.zs-svc.zs-falha{border-color:color-mix(in srgb,var(--z-erro) 35%,transparent)}
.zs-svc.zs-lento{border-color:color-mix(in srgb,var(--z-aviso) 35%,transparent)}
.zs-faixa{display:block;width:100%;height:30px}
.zs-inc-mark{fill:var(--zs-falha)}
.zs-b.zs-parcial{fill:color-mix(in srgb,var(--z-ok) 30%,transparent);stroke:var(--z-ok);stroke-width:1.2}
.zs-sw.zs-parcial{background:color-mix(in srgb,var(--z-ok) 30%,transparent);box-shadow:inset 0 0 0 1.5px var(--z-ok)}
.zs-sw-inc{background:var(--zs-falha);height:4px;border-radius:1px}
.zs-tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}
.zs-tag{font-size:12px;font-weight:600;background:color-mix(in srgb,var(--z-marca) 16%,transparent);color:var(--z-marca);border-radius:999px;padding:2px 9px}
.zs-tag-m{background:var(--z-neutro-fundo);color:var(--z-texto-2)}
.zs-det{margin:10px 2px 0;font-size:14px}
.zs-det summary{cursor:pointer;color:var(--z-marca);font-weight:600;padding-block:var(--z-e3)}
.zs-tab-box{overflow-x:auto;margin-top:8px}
.zs-tab{width:100%;border-collapse:collapse;background:var(--z-superficie);font-size:13px;border:1px solid var(--z-linha)}
.zs-tab caption{text-align:left;color:var(--z-texto-2);padding:0 0 6px}
.zs-tab th,.zs-tab td{border-bottom:1px solid var(--z-linha);padding:6px 8px;text-align:left;white-space:nowrap}
.zs-b.zs-ok{fill:var(--zs-ok)}.zs-b.zs-lento{fill:var(--zs-lento)}.zs-b.zs-falha{fill:var(--zs-falha)}.zs-b.zs-sem-dados{fill:var(--zs-nd)}
.zs-svc-f{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 10px;margin:0;font-size:13px;color:var(--z-texto-2)}
.zs-num{font-variant-numeric:tabular-nums;color:var(--z-texto)}
.zs-ia{background:var(--z-elevada)}
.zs-ia-t{margin:0;font-size:13.5px;color:var(--z-texto-2)}
.zs-eixo-x{display:flex;justify-content:space-between;font-size:12px;color:var(--z-texto-3);margin:-4px 0 0}
.zs-dias-box+.zs-eixo-x{margin:6px 2px 0}
.zs-leg-l{white-space:nowrap}
.zs-leg{display:flex;flex-wrap:wrap;gap:6px 16px;list-style:none;padding:0;margin:8px 2px 0;font-size:13px;color:var(--z-texto-2)}
.zs-leg li{display:inline-flex;align-items:center;gap:6px}
.zs-sw{display:inline-block;width:12px;height:12px;border-radius:3px}
.zs-sw.zs-ok{background:var(--zs-ok)}.zs-sw.zs-lento{background:var(--zs-lento)}.zs-sw.zs-falha{background:var(--zs-falha)}.zs-sw.zs-sem-dados{background:var(--zs-nd)}
.zs-nota{font-size:13.5px;color:var(--z-texto-2);margin:8px 2px 0;max-width:80ch}
.zs-lat-box,.zs-dias-box{background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);padding:12px;box-shadow:var(--z-sombra-1);margin-top:10px}
.zs-lat{display:block;width:100%;height:auto}
.zs-grade{stroke:var(--z-linha-suave);stroke-width:1}
.zs-grade-v{stroke-dasharray:3 4}
.zs-eixo{fill:var(--z-texto-3);font-size:12px;font-family:var(--z-fonte-texto)}
.zs-p50{fill:none;stroke:var(--z-marca);stroke-width:2.5;stroke-linejoin:round}
.zs-p95{fill:none;stroke:var(--z-marca);stroke-width:1.8;stroke-dasharray:5 4;stroke-linejoin:round}
.zs-p50-pt{fill:var(--z-marca)}.zs-p95-pt{fill:var(--z-marca)}
.zs-k{display:inline-block;width:18px;height:0;border-top:3px solid var(--z-marca);vertical-align:middle;margin:0 6px 0 10px}
.zs-k-p95{border-top:2px dashed var(--z-marca)}
.zs-dias{display:block;width:100%;height:auto}
.zs-incs{display:grid;gap:12px}
.zs-inc{background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);padding:14px 16px;box-shadow:var(--z-sombra-1)}
.zs-inc header{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;justify-content:space-between}
.zs-inc h3{margin:0;font-size:15.5px}
.zs-inc p{margin:6px 0 0;font-size:14px;color:var(--z-texto-2)}
.zs-inc-m{font-variant-numeric:tabular-nums}
.zs-inc-resolvido .zs-st{color:var(--zs-ok)}.zs-inc-em-andamento .zs-st{color:var(--zs-falha)}
.zs-tl{margin:8px 0 0;padding:0 0 0 18px;font-size:13.5px;color:var(--z-texto-2)}
.zs-tl li{margin:2px 0}
.zs-tl time{font-variant-numeric:tabular-nums;color:var(--z-texto);margin-right:4px}
.zs-vazio{color:var(--z-texto-2);font-size:14px}
.zs-vers{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.zs-ver{background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);padding:12px 14px;display:grid;gap:4px;box-shadow:var(--z-sombra-1)}
.zs-ver-n{font-weight:600}
.zs-ver-v{font-family:var(--z-fonte-mono);font-size:14px}
.zs-ver-d{font-size:13px;color:var(--z-texto-2)}
.zs-ev{margin:6px 0 0;padding-left:18px;font-size:13px;color:var(--z-texto-2)}
.zs-como{margin-top:28px}
.zs-portal{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:12px;padding:10px 14px;font-size:14px;color:var(--z-texto-2);margin:6px 0 18px}
.zs-portal.zs-ok .zs-st{color:var(--zs-ok)}.zs-portal.zs-falha .zs-st{color:var(--zs-falha)}.zs-portal.zs-lento .zs-st{color:var(--z-aviso)}.zs-portal.zs-sem-dados .zs-st{color:var(--zs-ind)}
@media (max-width:1040px){.zs-geral{grid-template-columns:1fr}}
@media (max-width:640px){.zs-grade-svc{grid-template-columns:1fr;gap:10px}.zs-geral{gap:8px}.zs-geral-p{padding:12px 14px;gap:12px}.zs-geral-ic .zs-ic{width:30px;height:30px}.zs-svc{padding:12px}.zs-lat-box{overflow-x:auto}.zs-lat{min-width:620px}.zs-eixo{font-size:17px}.zs-topo{margin-bottom:10px}.zs-conn{font-size:13px}}
/* R2: visão executiva; o histórico permanece inteiro e acessível por expansão. */
.z-main:has(.zs-dashboard){padding-block:20px;max-width:none}
.zs-dashboard .zs-topo{margin-bottom:12px}.zs-dashboard h1{font-size:clamp(24px,3vw,32px);line-height:1.15}
.zs-dashboard .zs-geral-p{padding:12px 14px;gap:10px}.zs-dashboard .zs-geral-p h2{font-size:18px}.zs-dashboard .zs-geral-p p{font-size:13px;line-height:1.4}.zs-dashboard .zs-geral-ic .zs-ic{width:28px;height:28px}
.zs-dashboard .zs-medida{font-size:13px;margin:10px 0 12px}.zs-dashboard .zs-svc{padding:12px;gap:8px}.zs-dashboard .zs-svc-h h3{font-size:14px}.zs-dashboard .zs-st{font-size:13px}.zs-dashboard .zs-eixo-x{font-size:11px}.zs-dashboard .zs-svc-f{font-size:12px}
.zs-insights{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;margin-top:16px}.zs-dashboard .zs-insights h2{font-size:16px;margin:0 0 6px}.zs-dashboard .zs-lat-box{margin-top:8px;padding:8px}.zs-dashboard .zs-lat{height:145px;min-width:0}.zs-dashboard .zs-nota{font-size:12px;line-height:1.45}.zs-dashboard .zs-vers{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 0}.zs-dashboard .zs-ver{padding:10px;font-size:13px;gap:3px}.zs-dashboard .zs-ver-d{font-size:12px}
.zs-history{margin-top:14px;border:1px solid var(--z-linha);border-radius:var(--z-r-md);background:var(--z-superficie);padding:0 14px}.zs-history>summary,.zs-dashboard .zs-det>summary{cursor:pointer;color:var(--z-texto-2);font-weight:600;padding:12px 0;min-height:44px;display:list-item}.zs-history>summary:hover,.zs-dashboard .zs-det>summary:hover{color:var(--z-texto)}.zs-history>summary:focus-visible,.zs-dashboard .zs-det>summary:focus-visible{outline:3px solid var(--z-marca);outline-offset:3px;border-radius:4px}.zs-history[open]{padding-bottom:14px}.zs-history section{margin-top:14px}.zs-history section h2{font-size:18px}.zs-dashboard .zs-como{margin-top:12px}.zs-conn-reconectando{color:var(--z-aviso)}
@media(max-width:1040px) and (min-width:761px){.zs-dashboard .zs-geral{grid-template-columns:1.45fr 1fr}}
@media(max-width:760px){.zs-insights{grid-template-columns:1fr;gap:16px}.zs-dashboard .zs-geral{grid-template-columns:1fr}.zs-dashboard .zs-grade-svc{grid-template-columns:1fr}.zs-dashboard .zs-lat-box{overflow:visible}.zs-dashboard .zs-lat{height:auto;min-width:0}.zs-dashboard .zs-vers{grid-template-columns:repeat(2,minmax(0,1fr))}.zs-dashboard .zs-topo{align-items:flex-start}.zs-dashboard .zs-topo h1{font-size:26px}.zs-dashboard .zs-medida{line-height:1.5}}
@media(forced-colors:active){.zs-history{border-color:CanvasText}.zs-conn .zs-dot{background:CanvasText;box-shadow:none}}

.zs-dashboard .zs-topo h1{font-size:clamp(24px,3vw,32px);margin:0;line-height:1.15}.zs-dashboard .zs-geral-p h2{margin:0 0 3px}.zs-dashboard .zs-svc-h h3{margin:0}.zs-dashboard .zs-vers{padding:0}.zs-dashboard .zs-vers-resumo{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px}.zs-dashboard .zs-vers-resumo li{margin:0;background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);padding:10px 12px}.zs-vers-resumo li>div{display:flex;gap:10px;align-items:baseline;justify-content:space-between;font-size:13px;line-height:1.4}.zs-vers-resumo .zs-st{margin-top:4px;font-size:12px}.zs-vers-resumo .zs-st .zs-ic{width:16px;height:16px}.zs-dashboard .zs-ia-fonte{margin-top:4px;font-size:12px}
.zs-dashboard .zs-geral-p p{margin:0}.zs-dashboard .zs-geral-p .zs-ia-fonte{margin-top:4px}.zs-dashboard .zs-svc-f{margin:0}.zs-dashboard .zs-nota{margin:6px 0 0}.zs-dashboard .zs-vers-resumo .zs-st.zs-ok{color:var(--zs-ok)}.zs-dashboard .zs-vers-resumo .zs-st.zs-lento{color:var(--zs-lento)}.zs-dashboard .zs-eixo{font-size:16px}

@media(min-width:761px){.zs-dashboard .zs-geral-p h2{font-size:17px}.zs-dashboard .zs-vers-resumo li{padding:8px 10px}.zs-dashboard .zs-vers-resumo{gap:6px}.zs-dashboard .zs-insights{margin-top:12px}.zs-dashboard .zs-medida{margin-block:8px}.zs-dashboard .zs-svc{gap:6px}.zs-dashboard .zs-history{margin-top:10px}.zs-dashboard .zs-insights h2{font-size:15px}}
@media(max-width:760px){.zs-dashboard .zs-svc{padding:10px;gap:5px}.zs-dashboard .zs-grade-svc{gap:8px}.zs-dashboard .zs-medida{margin-block:8px}.zs-dashboard .zs-geral{gap:8px}}

@media(max-width:760px){.zs-dashboard .zs-eixo{font-size:28px}}

.zs-dashboard .zs-eixo{font-size:12px}
@media(min-width:761px){.z-main:has(.zs-dashboard){padding-block:16px}.zs-dashboard .zs-vers-resumo li{padding:6px 10px}.zs-dashboard .zs-vers-resumo{gap:4px}.zs-dashboard .zs-vers-resumo li>div{line-height:1.35}.zs-dashboard .zs-vers-resumo .zs-st{line-height:1.35}.zs-dashboard .zs-history{margin-top:8px}}

/* Zorion Constelação · casca pública (topo, rodapé) e blocos das páginas de conteúdo (condições, perguntas, documentação, privacidade, estado,
   entrar, criar conta, recuperação, erros). A landing acrescenta landing.css. Só tokens --z-*. */
html[data-tema="noite"],html[data-tema="noite"] body.zs-pagina,html[data-tema="noite"] #conteudo{background-color:var(--z-fundo)}
body.zs-pagina{min-height:100vh;display:flex;flex-direction:column}
body.zs-pagina::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--z-halo)}
.z-shell{width:100%;max-width:74rem;margin:0 auto;padding:0 var(--z-e6)}
/* ---- topo ---- */
.z-top{position:sticky;top:0;z-index:40;background:var(--z-vidro);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-bottom:1px solid var(--z-linha-suave)}
.z-top-in{display:flex;align-items:center;gap:var(--z-e6);min-height:4.25rem}
.z-brand{display:flex;align-items:center;gap:var(--z-e3);min-height:var(--z-alvo);min-width:var(--z-alvo);color:var(--z-texto);text-decoration:none;font-family:var(--z-fonte-display);font-weight:var(--z-peso-display);font-size:var(--z-t-md);letter-spacing:-.01em;flex:none}
.z-brand:hover{text-decoration:none}
.z-brand svg{width:30px;height:30px;flex:none}
.z-nav{display:flex;align-items:center;gap:2px;margin-left:auto}
.z-nav a{display:inline-flex;align-items:center;min-height:var(--z-alvo);padding:0 var(--z-e3);border-radius:var(--z-r-sm);color:var(--z-texto-2);text-decoration:none;font-size:var(--z-t-sm);font-weight:var(--z-peso-medio);transition:background var(--z-dur-rapida),color var(--z-dur-rapida)}
.z-nav a:hover{background:var(--z-elevada);color:var(--z-texto)}
.z-nav a[aria-current="page"]{background:var(--z-elevada);color:var(--z-texto)}
.z-top-acoes{display:flex;align-items:center;gap:var(--z-e3);flex:none}
.z-nav-entrar{display:inline-flex;align-items:center;min-height:var(--z-alvo);padding:0 var(--z-e3);color:var(--z-texto);font-weight:var(--z-peso-medio);font-size:var(--z-t-sm);text-decoration:none;border-radius:var(--z-r-sm)}
.z-nav-entrar:hover{background:var(--z-elevada);text-decoration:none}
.z-menu-m{display:none;position:relative}
.z-menu-m summary{list-style:none;display:flex;align-items:center;justify-content:center;width:var(--z-alvo);height:var(--z-alvo);border:1px solid var(--z-linha-forte);border-radius:var(--z-r-sm);cursor:pointer;color:var(--z-texto);font-size:0}
.z-menu-m summary::-webkit-details-marker{display:none}
.z-menu-m summary::before{content:"";width:18px;height:2px;background:currentColor;box-shadow:0 6px 0 currentColor,0 -6px 0 currentColor;border-radius:2px}
.z-menu-m[open] summary{background:var(--z-elevada)}
.z-menu-painel{position:absolute;right:0;top:calc(100% + 8px);width:min(18rem,calc(100vw - 2rem));padding:var(--z-e3);background:var(--z-superficie);border:1px solid var(--z-linha-forte);border-radius:var(--z-r-md);box-shadow:var(--z-sombra-2)}
.z-menu-painel nav{display:flex;flex-direction:column;gap:2px}
.z-menu-painel a{display:flex;align-items:center;min-height:var(--z-alvo);padding:0 var(--z-e3);border-radius:var(--z-r-sm);color:var(--z-texto);text-decoration:none;font-weight:var(--z-peso-medio)}
.z-menu-painel a:hover{background:var(--z-elevada)}
.z-menu-painel .z-menu-cta{margin-top:var(--z-e3);justify-content:center;padding:0 var(--z-e5);color:var(--z-sobre-marca)}
.z-menu-painel .z-menu-cta:hover{background:var(--z-marca-acao-hover);color:var(--z-sobre-marca)}
.z-menu-painel form{margin:var(--z-e3) 0 0}
.z-menu-painel form .z-btn{width:100%}
/* ---- corpo das páginas de conteúdo ---- */
.z-main{flex:1 0 auto;padding:var(--z-e9) 0 var(--z-e10)}
.z-main>.z-shell>h1,.z-main h1{margin:0 0 var(--z-e3);font-size:clamp(2rem,1.4rem + 2.4vw,var(--z-t-3xl));letter-spacing:-.03em;line-height:1.06}
.lede,.z-lede{font-size:var(--z-t-md);color:var(--z-texto-2);max-width:60ch;margin:0 0 var(--z-e6)}
.z-main h2{font-size:var(--z-t-xl);margin:var(--z-e8) 0 var(--z-e3)}
.z-main h3{font-size:var(--z-t-lg);margin:var(--z-e6) 0 var(--z-e2)}
.z-main li{margin:0 0 var(--z-e2)}
.z-main ul,.z-main ol{padding-left:1.25rem;margin:0 0 var(--z-e4)}
/* Links de explicação: distintos do texto, com anel de foco compartilhado; ações e estados conservam suas cores. */
:is(.z-main,.l-commercial main) a:not(:where(.z-btn,.btn,.pular,.z-brand,.zi-marca,.zi-auth-marca,[aria-current],[data-tom],.z-pill,.alert a,.z-aviso a,.z-notice a,.z-warn a,.z-err a,.z-ok a)){color:#94a3b8;text-decoration:none;transition:color var(--z-dur-rapida)}
:is(.z-main,.l-commercial main) a:not(:where(.z-btn,.btn,.pular,.z-brand,.zi-marca,.zi-auth-marca,[aria-current],[data-tom],.z-pill,.alert a,.z-aviso a,.z-notice a,.z-warn a,.z-err a,.z-ok a)):is(:hover,:focus-visible){color:#fff;text-decoration:none}
.z-card{background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);padding:var(--z-e6);box-shadow:var(--z-sombra-1);margin:0 0 var(--z-e5)}
.z-card>h2{margin:0 0 var(--z-e3);font-size:var(--z-t-lg)}
.z-card>:last-child{margin-bottom:0}
.z-grid{display:grid;gap:var(--z-e5);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}
.z-stack{display:flex;flex-direction:column;gap:var(--z-e5);min-width:0}
.z-stack>.z-card{margin:0}
.z-stack>ol,.z-stack>ul{margin:0}
ol.z-stack{counter-reset:zp;list-style:none;padding:0}
ol.z-stack>li{counter-increment:zp;position:relative;padding-left:var(--z-e8);margin:0}
ol.z-stack>li::before{content:counter(zp);position:absolute;left:0;top:2px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--z-marca) 16%,transparent);color:var(--z-marca);border:1px solid color-mix(in srgb,var(--z-marca) 45%,transparent);font-size:var(--z-t-sm);font-weight:var(--z-peso-forte)}
ol.z-stack>li p{margin:var(--z-e1) 0 0;color:var(--z-texto-2)}
.z-kv{display:grid;grid-template-columns:minmax(9rem,16rem) minmax(0,1fr);gap:var(--z-e3) var(--z-e6);margin:0}
.z-kv dt{color:var(--z-texto-3);font-size:var(--z-t-sm);font-weight:var(--z-peso-medio)}
.z-kv dd{margin:0;overflow-wrap:anywhere}
.z-table-wrap{overflow-x:auto;background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);box-shadow:var(--z-sombra-1)}
.z-table-wrap table{width:100%;border-collapse:collapse;font-size:var(--z-t-sm)}
.z-table-wrap caption{text-align:left;color:var(--z-texto-3);padding:var(--z-e3) var(--z-e4) 0}
.z-table-wrap th{padding:var(--z-e3) var(--z-e4);text-align:left;font-size:var(--z-t-xs);letter-spacing:.07em;text-transform:uppercase;color:var(--z-texto-3);border-bottom:1px solid var(--z-linha)}
.z-table-wrap td{padding:var(--z-e3) var(--z-e4);border-bottom:1px solid var(--z-linha-suave);vertical-align:top}
.z-table-wrap tbody tr:last-child td{border-bottom:0}
.z-foot-fim{margin:0}
/* perguntas (details) */
.zl-faq{display:grid;gap:var(--z-e3);max-width:52rem}
.zl-faq details{background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);padding:0 var(--z-e5)}
.zl-faq details[open]{border-color:var(--z-linha-forte)}
.zl-faq summary{cursor:pointer;list-style:none;padding:var(--z-e4) var(--z-e7) var(--z-e4) 0;font-weight:var(--z-peso-forte);position:relative;min-height:var(--z-alvo)}
.zl-faq summary::-webkit-details-marker{display:none}
.zl-faq summary::after{content:"";position:absolute;right:2px;top:50%;width:10px;height:10px;border-right:2px solid var(--z-marca);border-bottom:2px solid var(--z-marca);transform:translateY(-70%) rotate(45deg);transition:transform var(--z-dur-normal) var(--z-curva-saida)}
.zl-faq details[open] summary::after{transform:translateY(-30%) rotate(225deg)}
.zl-faq details>p{margin:0 0 var(--z-e4);color:var(--z-texto-2)}
/* condições: duas colunas */
.zl-pilot-page{display:grid;gap:var(--z-e5);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start}
/* formulários públicos (entrar, criar conta, recuperação, lista de espera) */
.z-form-narrow{max-width:30rem}
.z-main form{margin:var(--z-e4) 0 0}
/* ---- rodapé ---- */
.z-foot{--z-foot-texto:#94a3b8;--z-foot-hover:#ffffff;border-top:0;background:var(--z-fundo);padding:var(--z-e8) 0 var(--z-e7);color:var(--z-foot-texto);font-size:var(--z-t-sm)}
.z-foot a{color:var(--z-foot-texto);text-decoration:none;transition:color var(--z-dur-normal) var(--z-curva-padrao)}
.z-foot a:hover,.z-foot a:focus-visible{color:var(--z-foot-hover);text-decoration:none}
.z-foot-in{display:grid;gap:var(--z-e6) var(--z-e8);grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr))}
.z-foot-marca{display:flex;gap:var(--z-e3);align-items:flex-start}
.z-foot-marca svg{width:32px;height:32px;flex:none}
.z-foot-marca strong{display:block;color:var(--z-texto);font-family:var(--z-fonte-display);font-size:var(--z-t-md)}
.z-foot-marca p{margin:var(--z-e1) 0 0;color:var(--z-texto-3);max-width:28ch}
.z-foot-col{display:flex;flex-direction:column;gap:var(--z-e1)}
.z-foot-t{margin:0 0 var(--z-e2);font-size:var(--z-t-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--z-texto-3);font-weight:var(--z-peso-forte)}
.z-foot-col a{display:inline-flex;align-items:center;min-height:32px}
.z-foot-fim{grid-column:1/-1;padding-top:var(--z-e5);border-top:1px solid var(--z-linha-suave);color:var(--z-texto-3)}
.z-btn-acao{background:var(--z-marca-acao);border-color:var(--z-marca-acao);color:var(--z-sobre-marca)}
.z-btn-acao:hover{background:var(--z-marca-acao-hover);border-color:var(--z-marca-acao-hover);color:var(--z-sobre-marca)}
@media (max-width:56rem){
  .z-nav{display:none}
  .z-top-in{gap:var(--z-e3)}
  .z-top-acoes{margin-left:auto}
  .z-menu-m{display:block}
  .z-foot-in{grid-template-columns:repeat(2,minmax(0,1fr))}
  .z-foot-marca{grid-column:1/-1}
  .zl-pilot-page{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:22rem){.z-brand span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
@media (max-width:40rem){
  .z-shell{padding:0 var(--z-e4)}
  .z-nav-cta,.z-top-acoes form{display:none}
  .z-top-in{min-height:3.75rem}
  .z-kv{grid-template-columns:minmax(0,1fr);gap:2px}.z-kv dd{margin-bottom:var(--z-e3)}
  .z-main{padding:var(--z-e7) 0 var(--z-e9)}
  .z-card{padding:var(--z-e5)}
  .z-foot-in{grid-template-columns:minmax(0,1fr)}
}
/* ---- páginas de conteúdo: cabeçalho, resumo, documentação, perguntas, acesso, mensagens ---- */
.z-pag-cab{margin:0 0 var(--z-e7);max-width:48rem}
.z-pag-rotulo{margin:0 0 var(--z-e2);font-size:var(--z-t-xs);font-weight:var(--z-peso-forte);letter-spacing:.1em;text-transform:uppercase;color:var(--z-marca)}
.z-pag-cab h1{margin:0 0 var(--z-e3)}
.z-pag-cab .lede{margin:0}
.z-main .z-resumo{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--z-e4);margin:0 0 var(--z-e7);padding:0;list-style:none}
.z-main .z-resumo li{margin:0;padding:var(--z-e4) var(--z-e5);background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);box-shadow:var(--z-sombra-1)}
.z-resumo b{display:block;margin-bottom:var(--z-e1);font-size:var(--z-t-xs);font-weight:var(--z-peso-forte);letter-spacing:.08em;text-transform:uppercase;color:var(--z-texto-3)}
.z-resumo span{font-family:var(--z-fonte-display);font-weight:var(--z-peso-display);font-size:var(--z-t-lg);letter-spacing:-.01em;line-height:1.2}
.z-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--z-e5);align-items:start}
.z-doc{display:grid;grid-template-columns:14rem minmax(0,1fr);gap:var(--z-e8);align-items:start;margin:0 0 var(--z-e6)}
.z-doc-indice{position:sticky;top:5.5rem}
.z-doc-t{margin:0 0 var(--z-e3);font-size:var(--z-t-xs);font-weight:var(--z-peso-forte);letter-spacing:.09em;text-transform:uppercase;color:var(--z-texto-3)}
.z-doc-indice ol{list-style:none;margin:0;padding:0}
.z-doc-indice li{margin:0}
.z-main .z-doc-indice a{display:block;padding:var(--z-e2) var(--z-e3);border-left:2px solid var(--z-linha);color:var(--z-texto-2);text-decoration:none;font-size:var(--z-t-sm)}
.z-main .z-doc-indice a:hover{color:var(--z-texto);border-left-color:var(--z-marca);background:var(--z-elevada)}
.z-doc-corpo>.z-card{scroll-margin-top:5.5rem}
.z-faq-grupos{display:flex;flex-direction:column;gap:var(--z-e7);margin:0 0 var(--z-e7)}
.z-main .z-faq-grupo h2{margin:0 0 var(--z-e3);font-size:var(--z-t-lg)}
.z-faq-grupo .zl-faq{display:flex;flex-direction:column;gap:var(--z-e3);max-width:52rem}
.z-faixa{margin:0 0 var(--z-e5);padding:var(--z-e5) var(--z-e6);border:1px solid var(--z-linha);border-radius:var(--z-r-md);background:var(--z-superficie)}
.z-faixa p{margin:0 0 var(--z-e3)}
.z-faixa .z-actions{margin-top:0}
.z-acesso{display:grid;grid-template-columns:minmax(0,30rem) minmax(0,1fr);gap:var(--z-e8);align-items:start}
.z-acesso-form{margin:0}
.z-acesso-form h2,.z-lado h2{margin:0 0 var(--z-e4);font-size:var(--z-t-lg)}
.z-acesso-form form{margin:0}
.z-lado{padding:var(--z-e6);border:1px dashed var(--z-linha-forte);border-radius:var(--z-r-md);background:color-mix(in srgb,var(--z-superficie) 60%,transparent)}
.z-lado .z-actions{margin:var(--z-e4) 0}
.z-lado>:last-child{margin-bottom:0}
.z-lado ol{margin:0 0 var(--z-e4)}
.z-msg{display:flex;gap:var(--z-e5);align-items:flex-start;max-width:44rem;margin:var(--z-e7) 0}
.z-msg-sinal{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font-family:var(--z-fonte-display);font-weight:var(--z-peso-display);font-size:var(--z-t-lg);background:var(--z-info-fundo);color:var(--z-info);border:1px solid color-mix(in srgb,var(--z-info) 40%,transparent)}
.z-msg[data-tom="ok"] .z-msg-sinal{background:var(--z-ok-fundo);color:var(--z-ok);border-color:color-mix(in srgb,var(--z-ok) 40%,transparent)}
.z-msg[data-tom="erro"] .z-msg-sinal{background:var(--z-erro-fundo);color:var(--z-erro);border-color:color-mix(in srgb,var(--z-erro) 40%,transparent)}
.z-msg h1{margin:0 0 var(--z-e3)}
.z-msg .z-kv{margin:var(--z-e4) 0}
@media (max-width:56rem){
  .z-main .z-resumo{grid-template-columns:repeat(2,minmax(0,1fr))}
  .z-cols{grid-template-columns:minmax(0,1fr)}
  .z-doc{grid-template-columns:minmax(0,1fr);gap:var(--z-e5)}
  .z-doc-indice{position:static}
  .z-doc-indice ol{display:flex;flex-wrap:wrap;gap:var(--z-e2)}
  .z-main .z-doc-indice a{display:inline-flex;align-items:center;min-height:var(--z-alvo);padding:0 var(--z-e4);border:1px solid var(--z-linha);border-radius:var(--z-r-pilula)}
  .z-acesso{grid-template-columns:minmax(0,1fr);gap:var(--z-e6)}
}
@media (max-width:40rem){
  .z-main .z-resumo{grid-template-columns:minmax(0,1fr)}
  .z-msg{flex-direction:column;gap:var(--z-e4)}
  .z-acesso-form .z-actions .z-btn,.z-lado .z-actions .z-btn{width:100%}
  .z-faixa{padding:var(--z-e5)}
}
/* alvos de toque de 44 px no rodapé e nos botões pequenos quando o aparelho é de toque ou a tela é estreita */
@media (max-width:56rem),(pointer:coarse){.z-foot-col a{min-height:var(--z-alvo)}}
/* contraste forçado (Windows): o ícone do menu é desenhado com background/box-shadow, que o modo remove; no lugar dele aparece a palavra "Menu" */
@media (forced-colors:active){.z-menu-m summary{width:auto;padding:0 var(--z-e4);font-size:var(--z-t-sm)}.z-menu-m summary::before{display:none}}

/* divulgação simples dentro de formulário (ex.: "Já escreveu antes?") */
.z-det{margin:var(--z-e4) 0;border:1px solid var(--z-linha);border-radius:var(--z-r-md);padding:0 var(--z-e4);background:var(--z-superficie)}
.z-det summary{cursor:pointer;min-height:var(--z-alvo);display:flex;align-items:center;font-weight:var(--z-peso-forte)}
.z-det[open]{border-color:var(--z-linha-forte)}
.z-det>div{padding:0 0 var(--z-e4)}

/* O cabeçalho é fixo: o controle que recebe o foco por teclado não pode ficar por baixo dele (WCAG 2.4.11). Em janela baixa (zoom de 400%, celular deitado) ele deixa de ser fixo para não ocupar a tela. */
html{scroll-padding-top:5.5rem}
@media (max-height:32rem){.z-top{position:relative}html{scroll-padding-top:0}}
/* Menu do celular aberto: o painel ocupa a largura toda sob o cabeçalho e o conteúdo atrás dele sai da ordem do teclado (visibility), para o foco nunca parar num campo coberto. Navegador sem :has() mantém o painel de antes. */
@media (max-width:56rem){
  .z-menu-m{position:static}
  .z-menu-painel{left:0;right:0;top:100%;width:auto;max-height:calc(100vh - 4.5rem);max-height:calc(100dvh - 4.5rem);overflow-y:auto;border-radius:0 0 var(--z-r-md) var(--z-r-md);border-top:0}
  body:has(.z-menu-m[open]) main,body:has(.z-menu-m[open]) footer{visibility:hidden}
  body:has(.z-menu-m[open]) .pular{display:none}
}

/* Rodapé compacto: destinos próprios, sem índice de uma landing longa. */
.z-foot-compact{padding:var(--z-e5) 0}
.z-foot-compact>.z-shell{display:flex;align-items:center;justify-content:space-between;gap:var(--z-e4);flex-wrap:wrap}
.z-foot-compact p{margin:0;display:flex;gap:var(--z-e3);align-items:center}
.z-foot-compact p strong{color:inherit;font-weight:var(--z-peso-medio)}
.z-foot-compact p span{color:inherit;font-size:var(--z-t-sm)}
.z-foot-compact nav{display:flex;flex-wrap:wrap;gap:var(--z-e2) var(--z-e5)}
.z-foot-compact nav a{font-size:var(--z-t-sm);min-height:var(--z-alvo);display:inline-flex;align-items:center}

/* Experiência pública compacta: somente contato e os documentos legais.
   Os detalhes nativos mantêm todo o texto disponível por teclado e em zoom.
   Nenhuma altura fixa, corte ou rolagem interna é usada para esconder conteúdo. */
.z-main:has(>.z-shell>.z-public-compact){padding:var(--z-e5) 0 var(--z-e6)}
.z-public-compact .z-pag-cab{margin-bottom:var(--z-e5);max-width:64rem}
.z-public-compact .z-pag-cab h1{font-size:clamp(1.75rem,1.3rem + 1.5vw,2.5rem);line-height:1.15;margin-bottom:var(--z-e2)}
.z-public-compact .z-pag-cab .lede{font-size:var(--z-t-base);max-width:76ch}
.z-public-compact .z-resumo{margin-bottom:var(--z-e5);gap:var(--z-e3)}
.z-public-compact .z-resumo li{padding:var(--z-e3) var(--z-e4)}
.z-public-compact .z-resumo span{font-size:var(--z-t-base)}
.z-legal-sections{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--z-e3);margin-bottom:var(--z-e4)}
.z-legal-section{min-width:0;background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md);scroll-margin-top:5.5rem}
.z-legal-section[open]{border-color:var(--z-linha-forte)}
.z-legal-section>summary{cursor:pointer;min-height:var(--z-alvo);padding:var(--z-e3) var(--z-e5);font-weight:var(--z-peso-forte);font-size:var(--z-t-base);color:var(--z-texto);overflow-wrap:anywhere}
.z-legal-section>summary::marker{color:var(--z-texto-2)}
.z-legal-content{padding:0 var(--z-e5) var(--z-e4);overflow-wrap:anywhere}
.z-legal-content .z-kv{grid-template-columns:minmax(8rem,12rem) minmax(0,1fr);gap:var(--z-e2) var(--z-e4)}
.z-legal-content p,.z-legal-content ul{margin-bottom:var(--z-e3)}
.z-legal-content>:last-child{margin-bottom:0}
.z-contact-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:var(--z-e5)}
.z-contact-layout .z-card,.z-contact-layout .z-lado{padding:var(--z-e5);margin:0;border:1px solid var(--z-linha);background:var(--z-superficie);box-shadow:var(--z-sombra-1)}
.z-contact-layout h2{margin-bottom:var(--z-e3)}
.z-contact-layout form{margin:0}
.z-contact-layout label{margin-top:var(--z-e2)}
.z-contact-layout input,.z-contact-layout select,.z-contact-layout textarea{margin-bottom:var(--z-e2)}
.z-contact-layout textarea{min-height:6rem;resize:vertical}
.z-contact-layout .z-help{margin:0 0 var(--z-e2)}
.z-contact-layout .z-det{margin:var(--z-e3) 0}
.z-contact-layout .z-actions{margin:var(--z-e3) 0}
.z-contact-layout .z-stack{gap:var(--z-e4)}
.z-contact-layout .z-muted{margin:var(--z-e3) 0 0}
.z-contact-fields{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:var(--z-e3)}
.z-contact-confirmation .z-msg{margin:0;padding:var(--z-e5);max-width:52rem;background:var(--z-superficie);border:1px solid var(--z-linha);border-radius:var(--z-r-md)}
@media(max-width:56rem){
 .z-contact-layout{grid-template-columns:minmax(0,1fr)}
 .z-contact-fields{grid-template-columns:minmax(0,1fr);gap:0}
 .z-public-compact .z-resumo{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:40rem){
 .z-legal-content .z-kv{grid-template-columns:minmax(0,1fr);gap:2px}
 .z-legal-content .z-kv dd{margin-bottom:var(--z-e3)}
 .z-legal-section>summary{padding:var(--z-e3) var(--z-e4)}
 .z-legal-content{padding:0 var(--z-e4) var(--z-e4)}
}

/* Contato em desktop baixo: liberar a primeira dobra reduzindo estrutura,
   sem diminuir o texto nem os controles44px; a mensagem continua redimensionável. */
@media(min-width:56.01rem) and (max-height:52rem){
 .z-main:has(>.z-shell>.z-contact){padding:var(--z-e3) 0}
 .z-contact .z-pag-cab{margin-bottom:var(--z-e3)}
 .z-contact .z-pag-cab h1{font-size:2rem;line-height:1.15;margin-bottom:var(--z-e1)}
 .z-contact .z-pag-rotulo{margin-bottom:var(--z-e1)}
 .z-contact-layout .z-card,.z-contact-layout .z-lado{padding:var(--z-e4)}
 .z-contact-layout h2{margin-bottom:var(--z-e2)}
 .z-contact-layout textarea{height:5.5rem;min-height:5.5rem}
 .z-contact-layout .z-det,.z-contact-layout .z-actions{margin:var(--z-e2) 0}
 .z-contact-layout .z-muted{margin-top:var(--z-e2)}
}

/* Temas oficiais completos: o select recebe mais largura; a ajuda de e-mail
   ocupa a linha inteira, sem estreitar o texto ou alterar a ordem do formulário. */
@media(min-width:56.01rem){
 .z-contact-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(19.5rem,2.2fr);row-gap:0}
 .z-contact-fields>div:first-child{display:contents}
 .z-contact-fields>div:first-child>label{grid-column:1;grid-row:1;margin-top:0}
 .z-contact-fields>div:first-child>input{grid-column:1;grid-row:2}
 .z-contact-fields>div:first-child>.z-help{grid-column:1/-1;grid-row:3}
 .z-contact-fields>div:nth-child(2){grid-column:2;grid-row:1/span 2}
 .z-contact-fields>div:nth-child(3){grid-column:3;grid-row:1/span 2}
 .z-contact-fields label{margin-top:0}

}
@media(min-width:56.01rem) and (max-width:70rem){
 .z-contact-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
 .z-contact-fields>div:first-child{display:block}
 .z-contact-fields>div:nth-child(2){grid-column:2;grid-row:1}
 .z-contact-fields>div:nth-child(3){grid-column:1/-1;grid-row:2}
}
