/* Wizard · padrão VOUAR (Identidade Visual e Marcas v3.7, seções 5 e 6).
   Paleta oficial, Inter (interface e títulos) e IBM Plex Mono (rótulos,
   dados, códigos). Dourado só em destaque; botão de ação é a pílula
   azul-noite com texto branco (C-119). Nada de cor fora da paleta. */

:root{
  --azul-noite:#0A1B2E; --azul-profundo:#102A43; --elevacao:#143352;
  --marfim:#F5F2EA; --papel:#FBF9F4; --grafite:#1E2933;
  --texto-escuro:#DCE6EF; --apagado:#93A5B5; --apagado-2:#6E8093; --cinza-azulado:#4A5A6A;
  --dourado:#C49A2A; --dourado-texto:#D9AE4B; --dourado-escuro:#9A7B22;
  --azul-marca:#2D6BE4; --azul-claro:#6FA1F7; --azul-marca-profundo:#1A3A6B;
  --linha:#E2DCCD; --linha-2:#CFC6B2;
  --erro:#9B3B2A;
  --f-ui:'Inter', system-ui, sans-serif;
  --f-mono:'IBM Plex Mono', ui-monospace, monospace;
  --raio:8px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--marfim);color:var(--grafite);font-family:var(--f-ui);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--azul-marca)} a:hover{color:var(--azul-marca-profundo)}
:focus-visible{outline:3px solid var(--azul-marca);outline-offset:2px}

/* rótulo mono: o que faz a peça parecer instrumento de medição */
.rotulo{display:block;font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--cinza-azulado);margin:0 0 6px}
.mono{font-family:var(--f-mono)}
h1{font-weight:600;font-size:clamp(26px,3.4vw,36px);letter-spacing:-.02em;line-height:1.15;margin:0 0 6px;color:var(--azul-noite)}
h2{font-weight:600;font-size:clamp(19px,2.2vw,24px);letter-spacing:-.015em;line-height:1.25;margin:0 0 14px;color:var(--azul-noite)}
h3{font-weight:600;font-size:17px;margin:0 0 6px;color:var(--azul-noite)}
p{margin:0 0 12px}
.secundario{color:var(--cinza-azulado);font-size:15px}

/* topo */
.topo{background:var(--azul-noite);color:var(--texto-escuro)}
.topo-dentro{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.marca{display:flex;align-items:center;gap:14px;text-decoration:none}
.marca img{height:34px;width:auto;display:block}
.marca .produto{font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dourado-texto);border-left:1px solid var(--elevacao);padding-left:14px}
.topo nav{display:flex;align-items:center;gap:18px;font-size:15px}
.topo nav a{color:var(--texto-escuro);text-decoration:none}
.topo nav a:hover{color:#fff}
.topo nav .quem{color:var(--apagado);font-size:14px}
.topo form{margin:0}
.link-botao{background:none;border:0;padding:0;color:var(--texto-escuro);font:inherit;font-size:15px;cursor:pointer}
.link-botao:hover{color:#fff;text-decoration:underline}

.pagina{max-width:1200px;margin:0 auto;padding:28px 24px 64px}
.grade{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}
@media (max-width:960px){.grade{grid-template-columns:minmax(0,1fr)}}

.cartao{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);padding:22px 24px}
.cartao + .cartao{margin-top:18px}
.cartao.escuro{background:var(--azul-noite);border-color:var(--azul-noite);color:var(--texto-escuro)}
.cartao.escuro h2,.cartao.escuro h3{color:#fff}
.cartao.escuro .rotulo{color:var(--apagado)}

/* formulários */
label{display:block;font-family:var(--f-mono);font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--cinza-azulado);margin:14px 0 6px}
input[type=text],input[type=email],input[type=password],input[type=search],select{width:100%;font:inherit;font-size:16px;color:var(--grafite);background:#fff;border:1px solid var(--linha-2);border-radius:6px;padding:11px 13px;min-height:46px}
input:focus,select:focus{outline:none;border-color:var(--azul-marca);box-shadow:0 0 0 3px rgba(45,107,228,.18)}
.campos{display:grid;grid-template-columns:1.1fr 1.3fr 1fr .9fr auto;gap:12px;align-items:end}
.campos label{margin-top:0}
@media (max-width:960px){.campos{grid-template-columns:1fr 1fr}.campos .acao{grid-column:1/-1}}
@media (max-width:560px){.campos{grid-template-columns:1fr}}
.ajuda{font-size:13px;color:var(--apagado-2);margin-top:6px}

.botao{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 22px;border-radius:999px;border:1px solid var(--azul-noite);background:var(--azul-noite);color:#fff;font:inherit;font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap}
.botao:hover{background:var(--azul-profundo);color:#fff}
.botao.secundario{background:transparent;color:var(--azul-noite);border-color:var(--linha-2)}
.botao.secundario:hover{background:#fff;color:var(--azul-noite)}
.botao.largo{width:100%}
.botao[disabled]{opacity:.5;cursor:not-allowed}

.aviso{padding:12px 16px;border-radius:6px;font-size:15px;margin:0 0 18px;border:1px solid}
.aviso.erro{background:#F8ECE8;border-color:#E3BFB5;color:var(--erro)}
.aviso.info{background:#EEF3FC;border-color:#C9D9F6;color:var(--azul-marca-profundo)}

/* tabela de empresas */
.tabela{width:100%;border-collapse:collapse;font-size:15px}
.tabela th{font-family:var(--f-mono);font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--cinza-azulado);text-align:left;padding:10px 12px;border-bottom:1px solid var(--linha-2);white-space:nowrap}
.tabela td{padding:12px;border-bottom:1px solid var(--linha);vertical-align:top}
.tabela tr:hover td{background:#fff}
.tabela .num{font-family:var(--f-mono);text-align:right;white-space:nowrap}
.tabela a.nome{font-weight:600;color:var(--azul-noite);text-decoration:none}
.tabela a.nome:hover{text-decoration:underline}
.rolagem{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media (max-width:720px){.oculta-celular{display:none}}

/* selos de estado */
.selo{display:inline-block;font-family:var(--f-mono);font-weight:500;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:4px;border:1px solid;white-space:nowrap}
.selo.na_fila{color:var(--cinza-azulado);border-color:var(--linha-2);background:#fff}
.selo.rodando{color:var(--azul-marca);border-color:#C9D9F6;background:#EEF3FC}
.selo.pronta{color:#fff;border-color:var(--azul-noite);background:var(--azul-noite)}
.selo.falhou{color:var(--erro);border-color:#E3BFB5;background:#F8ECE8}
.selo.tipo{color:var(--azul-noite);border-color:var(--linha-2);background:transparent}
.selo.declarado{color:var(--azul-marca-profundo);border-color:#C9D9F6;background:#EEF3FC}
.selo.observado{color:var(--azul-noite);border-color:var(--linha-2);background:#fff}
.selo.deduzido{color:var(--dourado-escuro);border-color:#E6D3A2;background:#FBF4E2}
.selo.vazio,.selo.nao_se_aplica{color:var(--apagado-2);border-color:var(--linha);background:transparent}

/* números da empresa */
.numeros{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0 6px}
.numero{background:#fff;border:1px solid var(--linha);border-radius:6px;padding:14px 16px}
.numero .valor{font-family:var(--f-mono);font-weight:500;font-size:26px;color:var(--azul-noite);line-height:1.1}
.numero .nota-pe{font-size:13px;color:var(--apagado-2);margin-top:4px}

.bloco{margin-top:26px}
.bloco > h2{padding-top:18px;border-top:1px solid var(--linha)}
.lista-limpa{list-style:none;margin:0;padding:0}
.lista-limpa > li{padding:14px 0;border-bottom:1px solid var(--linha)}
.lista-limpa > li:last-child{border-bottom:0}
.trecho{font-size:14px;color:var(--cinza-azulado);margin-top:6px}
.trecho .fonte{font-family:var(--f-mono);font-size:12px;word-break:break-all}
.discorda{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0}
@media (max-width:640px){.discorda{grid-template-columns:1fr}}
.discorda > div{background:#fff;border:1px solid var(--linha);border-radius:6px;padding:10px 12px;font-size:15px}
.pergunta{font-size:15px;color:var(--azul-noite);font-weight:500}
.gancho{border-left:3px solid var(--dourado);padding:4px 0 4px 14px;margin:12px 0}

.campo-16{padding:16px 0;border-bottom:1px solid var(--linha)}
.campo-16 .cabeca{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline}
.campo-16 .valor{margin:8px 0 0}
.campo-16 .perg{font-size:14px;color:var(--cinza-azulado);margin-top:8px;padding-left:12px;border-left:3px solid var(--linha-2)}

.historico li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--linha);font-size:14px}
.historico li:last-child{border-bottom:0}
.historico a{text-decoration:none}
.historico .atual{font-weight:600}

.check{display:flex;gap:10px;align-items:flex-start;font-family:var(--f-ui);font-size:14px;letter-spacing:normal;text-transform:none;color:var(--grafite);margin:12px 0}
.check input{width:20px;height:20px;margin-top:1px;flex-shrink:0;accent-color:var(--azul-noite)}

/* entrada */
.entrada{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--azul-noite)}
.entrada .cartao{width:100%;max-width:420px;background:var(--papel)}
.entrada .marca{justify-content:center;margin-bottom:18px}
.entrada .marca img{height:44px}

.espera{display:flex;gap:14px;align-items:center}
.giro{width:22px;height:22px;border:3px solid var(--linha-2);border-top-color:var(--azul-marca);border-radius:50%;animation:giro 1s linear infinite;flex-shrink:0}
@keyframes giro{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.giro{animation:none}}

.rodape{max-width:1200px;margin:0 auto;padding:0 24px 32px;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--apagado-2)}
