/* BuscaCargas Express · CSS único do site (servido por src/web/estaticos.js com hash).
   Tokens de cor da landing (buscacargasexpress/index.html). Fontes: pilhas do sistema, sem arquivos de fonte
   (docs/DECISOES-DE-CONSTRUCAO.md §1). Mobile first, 16 px de margem lateral, sem rolagem horizontal, foco visível,
   modo escuro por prefers-color-scheme (data-theme="light" | "dark" no <html> força o tema).
   A CSP é style-src 'self': as páginas NÃO podem usar style="" nem <style>; use estas classes.

   CLASSES
   Estrutura ....... .wrap .wrap-estreita .pagina .sec .sec-head .midcta .pilha .pilha-p .pilha-g .linha .linha-entre
                     .grade (cartões auto) .grade-2 .grade-3
   Layout .......... .pular .top (branco, logo oficial laranja) .brand .logo .nav .faixa footer.foot .so-aproxima .legal .avisos
   Texto ........... .eyebrow .lede .muted .pequeno .mono .src .ph .texto (content/*.md) .codigo .sr .centro .nowrap
   Botões .......... .btn + .btn-primario | .btn-sec | .btn-wa | .btn-ghost | .btn-link ; .btn-pequeno .btn-bloco ;
                     .acoes (grupo) ; form.inline
   Formulários ..... .form .sub .row .field (label + input/select/textarea) .ajuda .erro-campo .opcoes (fieldset)
                     .check (label com caixa/rádio) .isca (campo isca) .contador ; [aria-invalid="true"]
   Avisos .......... .alerta .alerta-ok .alerta-erro .alerta-aviso .alerta-info
   Cartões/listas .. .card .card-destaque .cards .lista-limpa .lista-linhas .vazio .kpis .kpi (.n .l)
   Preço e selos ... .valor .valor-grande .selos .selo .selo-ok .selo-aviso .nota
   Detalhes ........ details.detalhes > summary ('Ver cálculo') ; table.memoria (linhas da conta)
   Tabelas ......... .rolagem > table.tabela (td.num)
   Progresso ....... ol.etapas > li (.feita | aria-current="step"; texto dentro do li fica só para leitor de tela)
   Paginação ....... nav.paginacao > a | span (aria-current="page")
   Home (landing) .. .hero (.cta .proof) .map (.cap) .facts .fact (.n .l .s) .who (.yes .no) .steps .veh (.tbl td.n
                     td.c td.u p.foot) .cov (.grid .col .origins .km .dest .pills .pill .why) .carriers (.cta .card .k
                     .v .s) .faq (.list .a)
   Impressão ....... .so-tela (some ao imprimir) .so-impressao (só aparece ao imprimir)

   PÁGINAS (ex-extra-wp13..17, juntadas pelo portão)
   Títulos ......... .h-pequeno .h-card .h-banda
   Home ............ .hero-grade .hero-topo .hero-sub .hero-texto .hero-pontos .hero-form .hero-prova .hero-transp .facts-cab
                     .mapa-bloco .aproxima .bloco-aproxima .final ; faixa: .faixa-longa .faixa-curta (celular)
   Cotação ......... .form-cotacao .cep-info .check-alto .opcoes-linha .filtros .em-formacao
   Resultado ....... .resumo-pedido .rotulo-fixo .card-resultado .card-cab .card-preco .preco-oculto .lista-info
                     .grupo-recolhido .continuar .form-chamar table.memoria tr.subtotal ; .mensagem-wa .so-aproxima-texto
   Perfil .......... .pilulas .pilula .resposta .tabela-empilha (td[data-rotulo]) ; .texto mark.ph
   Escolhas ........ .escolhas (em linha) .escolhas-coluna .escolha (label grande com rádio/caixa; b + small opcionais)
                     .opcoes>legend.pergunta
   Alvos 44 px ..... .check.alvo (= .check-alto, .check.pn-alvo) .link-alvo .lista-alvos .link-acao .atalhos .item-titulo
   Conta/empresa ... .entrada-codigo .qtd dl.dados .nao-lida .campo-botao .resposta-avaliacao
   Painel (pn-) .... .pn .pn-nav .pn-subnav .pn-cabeca .pn-checklist (li.pn-feito|li.pn-falta > .pn-marca) .pn-editor
                     .pn-rapido .pn-sim .pn-detalhe .pn-acoes .pn-acoes-nota .pn-status .pn-aviso-piso .pn-sim-lista
                     .pn-sim-rota .pn-sim-valores .pn-sim-vazio .pn-livre .pn-dias .pn-colunas .pn-dl .pn-grade-botoes
                     .pn-desfecho .pn-contato .pn-pedido .pn-pedido-titulo .pn-url .pn-url-campo .pn-selos
                     .pn-qr > svg.pn-qr-svg .pn-cartao (F6) .pn-parceiros (F12)
   Admin (adm-) .... .adm-nav .adm-dados .adm-qr > svg.adm-qr-svg ol.adm-codigos .btn.adm-btn-perigo .selo.adm-selo-erro .adm-pre */

/* ===== tokens ===== */
:root{
  --navy-900:#04162a; --navy-800:#0a2340; --navy-100:#dbe4ef;
  --blue:#0160A2; --blue-hi:#4ea1e6;
  /* Laranja do BuscaCargas Express (#E8730C, decisão de 05/10/2026). --laranja-texto e --primario passam no contraste AA. */
  --laranja:#E8730C; --laranja-escuro:#A64E00; --laranja-claro:#FFA552; --laranja-texto:#A64E00;
  --bg:#f3f6fa; --surface:#ffffff; --surface-2:#e9eef5; --line:#cfd9e6;
  --ink:#0f2035; --ink-2:#3c4d63; --muted:#556677;
  --hero-bg:#04162a; --hero-ink:#f2f6fb; --hero-muted:#a9b9cc; --hero-line:rgba(255,255,255,.14);
  --band-bg:#0a2340; --band-ink:#eef3f9; --band-muted:#9fb1c6; --band-li:#d7e1ec;
  --wa:#128047; --wa-ink:#ffffff;
  --ph-bg:#fff2a8; --ph-ink:#4a3b00;
  --focus:#2563eb; --focus-escuro:#60a5fa;
  --link:#0160A2;
  --primario:#E8730C; --primario-hover:#F08A2E; --primario-ink:#111111;
  --ok:#146c3a; --ok-bg:#e3f4ea; --ok-line:#9fd4b4;
  --aviso:#5c4400; --aviso-bg:#fff4cc; --aviso-line:#e8cf70;
  --erro:#9b0f1a; --erro-bg:#fde8ea; --erro-line:#f1a9b0;
  --info:#0b4f84; --info-bg:#e3eef8; --info-line:#a9c9e6;
  --shadow:0 1px 2px rgba(4,22,42,.08), 0 8px 24px rgba(4,22,42,.08);
  --raio:4px;
  --f-display:"Barlow Semi Condensed","Arial Narrow","Roboto Condensed",system-ui,sans-serif;
  --f-body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#081a2e; --surface:#0d2340; --surface-2:#122c4d; --line:#23405f;
    --ink:#e8eef6; --ink-2:#b9c7d8; --muted:#8ea1b8; --navy-100:#1a3a5e;
    --blue:#4ea1e6; --laranja:#E8730C; --laranja-escuro:#E8730C; --laranja-texto:#FFB066;
    --band-bg:#061a30; --ph-bg:#5a4a00; --ph-ink:#fff2a8;
    --focus:#60a5fa; --link:#7fbdf0;
    --ok:#8fe0b3; --ok-bg:#0f2e22; --ok-line:#1f5a3e;
    --aviso:#ffe08a; --aviso-bg:#3a2f00; --aviso-line:#6b5700;
    --erro:#ffb3ba; --erro-bg:#3b0f16; --erro-line:#7a2530;
    --info:#9ccbf2; --info-bg:#0f2a48; --info-line:#2a5580;
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#081a2e; --surface:#0d2340; --surface-2:#122c4d; --line:#23405f;
  --ink:#e8eef6; --ink-2:#b9c7d8; --muted:#8ea1b8; --navy-100:#1a3a5e;
  --blue:#4ea1e6; --laranja:#E8730C; --laranja-escuro:#E8730C; --laranja-texto:#FFB066;
  --band-bg:#061a30; --ph-bg:#5a4a00; --ph-ink:#fff2a8;
  --focus:#60a5fa; --link:#7fbdf0;
  --ok:#8fe0b3; --ok-bg:#0f2e22; --ok-line:#1f5a3e;
  --aviso:#ffe08a; --aviso-bg:#3a2f00; --aviso-line:#6b5700;
  --erro:#ffb3ba; --erro-bg:#3b0f16; --erro-line:#7a2530;
  --info:#9ccbf2; --info-bg:#0f2a48; --info-line:#2a5580;
  --shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px rgba(0,0,0,.35);
  color-scheme:dark;
}

/* ===== base ===== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:1rem;line-height:1.55;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}
@media (min-width:720px){body{font-size:1.0625rem}}
main{flex:1 0 auto}
img,svg,video{max-width:100%;height:auto}
img,svg{display:block}
a{color:var(--link);text-underline-offset:.15em}
a:hover{text-decoration-thickness:2px}
h1,h2,h3,h4{font-family:var(--f-display);line-height:1.1;margin:0;text-wrap:balance;letter-spacing:-.005em}
h1{font-size:clamp(2rem,6vw,3.25rem);font-weight:800}
h2{font-size:clamp(1.5rem,4vw,2.2rem);font-weight:700}
h3{font-size:1.2rem;font-weight:700}
h4{font-size:1rem;font-weight:700}
p,ul,ol,dl,dd,figure,blockquote{margin:0}
ul,ol{padding-left:1.25rem}
hr{border:0;border-top:1px solid var(--line);margin:0}
code,kbd,samp,pre{font-family:var(--f-mono);font-size:.92em}
pre{overflow-x:auto;max-width:100%}
table{border-collapse:collapse}
button,input,select,textarea{font:inherit;color:inherit}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.top :focus-visible{outline-color:#2563eb}
.faixa :focus-visible,footer.foot :focus-visible,.hero :focus-visible,.facts :focus-visible,.carriers :focus-visible{outline-color:var(--focus-escuro)}

/* ===== estrutura ===== */
.wrap{width:100%;max-width:1140px;margin-inline:auto;padding-inline:clamp(16px,5vw,48px)}
.wrap-estreita{max-width:calc(680px + 2 * clamp(16px,5vw,48px))}
.pagina{padding-block:clamp(24px,5vw,56px);display:grid;gap:clamp(20px,3vw,32px);align-content:start}
.pagina>*,.pilha>*{min-width:0}
.sec{padding-block:clamp(48px,8vw,104px)}
.sec-head{display:grid;gap:14px;max-width:70ch;margin-bottom:clamp(24px,4vw,48px)}
.midcta{margin-top:28px}
.pilha{display:grid;gap:16px;align-content:start}
.pilha-p{gap:8px}
.pilha-g{gap:32px}
.linha{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.linha-entre{justify-content:space-between}
.grade{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}
.grade-2,.grade-3{display:grid;gap:clamp(16px,3vw,32px)}
.grade>*,.grade-2>*,.grade-3>*{min-width:0}
@media (min-width:760px){.grade-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:900px){.grade-3{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ===== topo, faixa e rodapé (layout.js) ===== */
.pular{position:absolute;left:8px;top:-200px;z-index:100;background:var(--surface);color:var(--ink);padding:.6rem .9rem;border-radius:var(--raio);box-shadow:var(--shadow)}
.pular:focus{top:8px}
.top{background:#ffffff;color:#0f2035;border-bottom:1px solid #e3e8ef}
.top .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 16px;padding-block:10px;min-height:64px}
.brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:inherit;font-family:var(--f-display)}
.brand .logo{width:auto;height:44px;flex:none}
@media (max-width:480px){.brand .logo{height:36px}}
.nav{display:flex;flex-wrap:wrap;gap:0 18px;font-size:.95rem}
.nav a{display:inline-block;padding:.55rem 0;color:#3c4d63;text-decoration:none}
.nav a:hover,.nav a[aria-current="page"]{color:#0f2035}
.nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--laranja)}
.faixa{background:var(--band-bg);color:var(--band-ink);border-bottom:1px solid var(--hero-line);font-size:.9rem;line-height:1.4}
.faixa .wrap{padding-block:9px}
.faixa p{position:relative;padding-left:20px}
.faixa p::before{content:"";position:absolute;left:0;top:.6em;width:12px;height:2px;background:var(--laranja)}
.faixa a{color:inherit}
footer.foot{background:var(--hero-bg);color:var(--hero-muted);font-size:.9rem;padding-block:32px;margin-top:clamp(24px,5vw,56px)}
footer.foot .wrap{display:grid;gap:18px}
footer.foot a{color:var(--hero-muted);text-decoration:none}
footer.foot a:hover{color:var(--hero-ink);text-decoration:underline}
footer.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 18px}
footer.foot li a{display:inline-block;padding:.25rem 0}
footer.foot nav>p{margin:0 0 4px;color:var(--hero-ink);font-weight:600}
footer.foot .so-aproxima{color:var(--hero-ink);position:relative;padding-left:20px;max-width:80ch}
footer.foot .so-aproxima::before{content:"";position:absolute;left:0;top:.7em;width:12px;height:2px;background:var(--laranja)}
footer.foot .legal{border-top:1px solid var(--hero-line);padding-top:16px;font-size:.8rem}
.avisos{display:grid;gap:10px}

/* ===== texto ===== */
.eyebrow{font-family:var(--f-display);font-weight:600;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--laranja-texto)}
.lede{font-size:1.1rem;color:var(--ink-2);max-width:62ch}
.muted{color:var(--muted)}
.pequeno{font-size:.875rem}
.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.src{font-size:.8rem;color:var(--muted)}
.ph{background:var(--ph-bg);color:var(--ph-ink);padding:0 .3em;border-radius:2px;font-style:normal}
.centro{text-align:center}
.nowrap{white-space:nowrap}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.texto{display:grid;gap:14px;max-width:72ch;overflow-wrap:anywhere}
.texto h2{margin-top:18px}
.texto h3{margin-top:8px}
.texto ul,.texto ol{display:grid;gap:6px}
.texto li::marker{color:var(--laranja-texto)}
.texto blockquote{padding:8px 16px;border-left:3px solid var(--line);color:var(--ink-2)}
.codigo{display:block;font-family:var(--f-mono);font-size:clamp(1.25rem,6vw,2rem);font-weight:600;letter-spacing:.12em;text-align:center;padding:14px 16px;background:var(--surface-2);border:1px dashed var(--line);border-radius:var(--raio);overflow-wrap:anywhere;user-select:all}

/* ===== botões ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;max-width:100%;padding:.7rem 1.15rem;border:2px solid var(--line);border-radius:3px;background:var(--surface-2);color:var(--ink);font-family:var(--f-display);font-weight:700;font-size:1rem;letter-spacing:.02em;line-height:1.1;text-transform:uppercase;text-align:center;text-decoration:none;cursor:pointer}
.btn svg{width:20px;height:20px;flex:none}
.btn-primario{background:var(--primario);border-color:var(--primario);color:var(--primario-ink)}
.btn-primario:hover{background:var(--primario-hover);border-color:var(--primario-hover)}
.btn-wa{background:var(--wa);border-color:var(--wa);color:var(--wa-ink)}
.btn-wa:hover{filter:brightness(1.1)}
.btn-sec{background:var(--surface);border-color:var(--line);color:var(--ink)}
.btn-sec:hover{border-color:var(--ink-2)}
.btn-ghost{background:transparent;border-color:currentColor;color:inherit}
.btn-ghost:hover{background:rgba(127,127,127,.12)}
.btn-link{display:inline;min-height:0;padding:0;border:0;background:none;color:var(--link);font:inherit;text-transform:none;letter-spacing:normal;text-decoration:underline;cursor:pointer}
.btn-pequeno{min-height:36px;padding:.45rem .8rem;font-size:.85rem}
.btn-bloco{display:flex;width:100%}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.55;cursor:not-allowed;filter:none}
.acoes{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
form.inline{display:inline}

/* ===== formulários ===== */
.form{display:grid;gap:16px;min-width:0;padding:clamp(16px,3vw,28px);background:var(--surface);border:1px solid var(--line);border-radius:var(--raio);color:var(--ink)}
.form .sub{color:var(--ink-2);font-size:.95rem}
.row{display:grid;gap:16px}
@media (min-width:560px){.row{grid-template-columns:repeat(2,minmax(0,1fr))}}
.field{display:grid;gap:6px;min-width:0}
.field>label,.opcoes>legend{font-family:var(--f-display);font-weight:600;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
:where(input:not([type=checkbox],[type=radio],[type=hidden],[type=submit],[type=button],[type=reset],[type=range],[type=color],[type=file])),:where(select,textarea){width:100%;min-width:0;min-height:44px;padding:.65rem .75rem;font-size:1rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:3px}
textarea{min-height:6.5rem;resize:vertical}
::placeholder{color:var(--muted);opacity:1}
[aria-invalid="true"]{border-color:var(--erro)!important;box-shadow:inset 0 0 0 1px var(--erro)}
input[type=checkbox],input[type=radio]{width:1.15rem;height:1.15rem;margin:0;flex:none;accent-color:var(--primario)}
.check{display:flex;gap:.6rem;align-items:flex-start;line-height:1.4;cursor:pointer}
.check input{margin-top:.2rem}
.opcoes{display:grid;gap:10px;min-width:0;margin:0;padding:0;border:0}
.opcoes>legend{padding:0;margin-bottom:6px}
.ajuda{font-size:.875rem;color:var(--muted)}
.erro-campo{font-size:.875rem;font-weight:500;color:var(--erro)}
.contador{font-size:.8rem;color:var(--muted);text-align:right}
.isca{position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}

/* ===== avisos ===== */
.alerta{padding:12px 14px;border:1px solid var(--info-line);border-left-width:4px;border-radius:var(--raio);background:var(--info-bg);color:var(--info)}
.alerta>*+*{margin-top:6px}
.alerta a{color:inherit;font-weight:600}
.alerta-ok{border-color:var(--ok-line);background:var(--ok-bg);color:var(--ok)}
.alerta-erro{border-color:var(--erro-line);background:var(--erro-bg);color:var(--erro)}
.alerta-aviso{border-color:var(--aviso-line);background:var(--aviso-bg);color:var(--aviso)}
.alerta-info{border-color:var(--info-line);background:var(--info-bg);color:var(--info)}

/* ===== cartões e listas ===== */
.card{display:grid;gap:10px;min-width:0;padding:clamp(14px,3vw,20px);background:var(--surface);border:1px solid var(--line);border-radius:var(--raio);overflow-wrap:anywhere}
.card-destaque{border-color:var(--blue);box-shadow:var(--shadow)}
.cards{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lista-limpa{list-style:none;margin:0;padding:0}
.lista-linhas{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.lista-linhas>li{display:grid;gap:6px;min-width:0;padding:12px 0;border-bottom:1px solid var(--line)}
.vazio{display:grid;gap:12px;justify-items:center;padding:24px 16px;border:1px dashed var(--line);border-radius:var(--raio);color:var(--ink-2);text-align:center}
.kpis{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr))}
.kpi{display:grid;gap:4px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--raio)}
.kpi .n{font-family:var(--f-mono);font-size:1.6rem;font-weight:600;font-variant-numeric:tabular-nums}
.kpi .l{font-size:.875rem;color:var(--muted)}

/* ===== preço e selos ===== */
.valor{font-family:var(--f-mono);font-weight:600;font-size:1.5rem;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.1}
.valor-grande{font-size:clamp(1.7rem,6vw,2.3rem)}
.selos{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.selo{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .5rem;border:1px solid var(--line);border-radius:2px;background:var(--surface-2);color:var(--ink-2);font-size:.8rem;line-height:1.3}
.selo-ok{background:var(--ok-bg);border-color:var(--ok-line);color:var(--ok)}
.selo-aviso{background:var(--aviso-bg);border-color:var(--aviso-line);color:var(--aviso)}
.nota{font-family:var(--f-mono);font-weight:600}

/* ===== detalhes ('Ver cálculo') ===== */
details.detalhes{border-top:1px solid var(--line)}
details.detalhes>summary{position:relative;padding:10px 28px 10px 0;font-weight:600;color:var(--link);list-style:none;cursor:pointer}
details.detalhes>summary::-webkit-details-marker{display:none}
details.detalhes>summary::after{content:"+";content:"+" / "";position:absolute;right:4px;top:6px;font-family:var(--f-mono);font-size:1.2rem;color:var(--laranja-texto)}
details.detalhes[open]>summary::after{content:"\2013";content:"\2013" / ""}
details.detalhes>:not(summary){margin-bottom:12px}
.memoria{width:100%;font-family:var(--f-mono);font-size:.875rem;font-variant-numeric:tabular-nums}
.memoria th,.memoria td{padding:6px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.memoria th:last-child,.memoria td:last-child{padding-left:12px;text-align:right;white-space:nowrap}
.memoria tfoot td{font-weight:600;border-bottom:0}

/* ===== tabelas ===== */
.rolagem{overflow-x:auto;max-width:100%;background:var(--surface);border:1px solid var(--line);border-radius:var(--raio)}
.tabela{width:100%;font-size:.95rem}
.tabela th,.tabela td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tabela th{font-family:var(--f-display);font-weight:600;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--surface-2)}
.tabela tr:last-child td{border-bottom:0}
.tabela .num{font-family:var(--f-mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}

/* ===== progresso e paginação ===== */
.etapas{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px}
.etapas li{height:6px;overflow:hidden;border-radius:3px;background:var(--line);color:transparent;font-size:0}
.etapas li.feita{background:var(--blue)}
.etapas li[aria-current="step"]{background:var(--primario)}
.paginacao{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}
.paginacao a,.paginacao span{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 .75rem;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:3px;text-decoration:none}
.paginacao [aria-current="page"]{background:var(--ink);color:var(--surface);border-color:var(--ink)}

/* ===== home (seções herdadas da landing) ===== */
.hero{background:var(--hero-bg);color:var(--hero-ink);padding-block:clamp(40px,7vw,96px)}
.hero .wrap{display:grid;gap:clamp(28px,5vw,64px);align-items:center}
@media (min-width:880px){.hero .wrap{grid-template-columns:1.05fr .95fr}}
.hero .eyebrow{color:var(--laranja-claro)}
.hero h1{margin-top:14px;max-width:18ch;font-size:clamp(2.2rem,5.2vw,4.25rem)}
.hero .lede{margin-top:18px;color:var(--hero-muted)}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero .proof{position:relative;max-width:56ch;margin-top:22px;padding-left:32px;font-size:.92rem;color:var(--hero-muted)}
.hero .proof::before{content:"";position:absolute;left:0;top:.7em;width:22px;height:2px;background:var(--laranja)}
.hero a:not(.btn){color:var(--hero-ink)}
.hero .form{margin-top:24px}
.hero .form a:not(.btn){color:var(--link)}
.map{padding:14px;border:1px solid var(--hero-line);border-radius:var(--raio);background:rgba(255,255,255,.03)}
.map svg{width:100%;height:auto}
.map .cap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:8px;font-family:var(--f-mono);font-size:.72rem;letter-spacing:.04em;color:var(--hero-muted)}
.facts{background:var(--band-bg);color:var(--band-ink);border-top:1px solid var(--hero-line)}
.facts .wrap{display:grid}
.fact{display:grid;gap:4px;align-content:start;padding:18px 0;border-bottom:1px solid var(--hero-line)}
.fact:last-child{border-bottom:0}
.fact .n{font-family:var(--f-mono);font-size:1.7rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.fact .l{font-size:.92rem;color:var(--band-muted)}
.fact .s{font-size:.72rem;color:var(--band-muted)}
.facts a{color:var(--band-ink)}
@media (min-width:760px){.facts .wrap{grid-template-columns:repeat(3,1fr)}.fact{padding:22px 24px 22px 0;border-bottom:0;border-right:1px solid var(--hero-line)}.fact+.fact{padding-left:24px}.fact:last-child{border-right:0}}
.who{background:var(--surface);border-block:1px solid var(--line)}
.who .wrap{display:grid;gap:clamp(24px,4vw,56px)}
@media (min-width:720px){.who .wrap{grid-template-columns:1fr 1fr}}
.who h3{margin-bottom:12px}
.who ul{margin:0;padding:0;list-style:none}
.who li{position:relative;padding:10px 0 10px 24px;border-top:1px solid var(--line);color:var(--ink-2)}
.who li:last-child{border-bottom:1px solid var(--line)}
.who .yes li::before{content:"";position:absolute;left:0;top:19px;width:10px;height:10px;border-radius:50%;background:var(--blue)}
.who .no li::before{content:"";position:absolute;left:0;top:23px;width:12px;height:2px;background:var(--laranja)}
.steps ol{margin:0;padding:0;list-style:none;display:grid;counter-reset:s}
.steps li{display:grid;gap:10px;align-content:start;padding:20px 0;border-top:1px solid var(--line)}
.steps li:first-child{border-top:0}
.steps li::before{counter-increment:s;content:"0" counter(s);font-family:var(--f-mono);font-size:.8rem;letter-spacing:.1em;color:var(--laranja-texto)}
.steps h3{font-size:1.2rem}
.steps p{font-size:.98rem;color:var(--ink-2)}
@media (min-width:760px){.steps ol{grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}.steps li{padding:22px 22px 22px 0;border-top:0;border-right:1px solid var(--line)}.steps li+li{padding-left:22px}.steps li:last-child{border-right:0}}
.veh .tbl{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--raio)}
.veh table{width:100%;min-width:640px}
.veh th,.veh td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.veh th{font-family:var(--f-display);font-weight:600;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--surface-2)}
.veh tr:last-child td{border-bottom:0}
.veh td.n{font-family:var(--f-display);font-weight:700;font-size:1.1rem;white-space:nowrap}
.veh td.c{font-family:var(--f-mono);font-size:.9rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.veh td.u{color:var(--ink-2)}
.veh p.foot{max-width:76ch;margin-top:12px;font-size:.88rem;color:var(--muted)}
.cov{background:var(--surface);border-block:1px solid var(--line)}
.cov .grid{display:grid;gap:clamp(28px,5vw,64px)}
@media (min-width:760px){.cov .grid{grid-template-columns:1fr 1fr}}
.cov .col h3{margin-bottom:10px}
.cov .origins{margin:0;padding:0;list-style:none}
.cov .origins li{display:grid;grid-template-columns:5.5ch 1fr;gap:12px;align-items:baseline;padding:10px 0;border-top:1px solid var(--line)}
.cov .origins li:last-child{border-bottom:1px solid var(--line)}
.cov .origins .km{font-family:var(--f-mono);font-size:.76rem;letter-spacing:.04em;color:var(--laranja-texto)}
.cov .origins small{display:block;font-size:.88rem;color:var(--muted)}
.cov .dest{color:var(--ink-2)}
.cov .pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.cov .pill{display:inline-block;padding:.3rem .6rem;border:1px solid var(--line);border-radius:2px;font-size:.9rem}
.cov .why{max-width:78ch;margin-top:28px;padding-top:22px;border-top:1px solid var(--line);color:var(--ink-2)}
.carriers{background:var(--band-bg);color:var(--band-ink)}
.carriers .wrap{display:grid;gap:clamp(28px,5vw,64px);align-items:start}
@media (min-width:800px){.carriers .wrap{grid-template-columns:1.1fr .9fr}}
.carriers .eyebrow{color:var(--laranja-claro)}
.carriers .lede{color:var(--band-muted)}
.carriers ul{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}
.carriers li{position:relative;padding-left:22px;color:var(--band-li)}
.carriers li::before{content:"";position:absolute;left:0;top:.6em;width:10px;height:2px;background:var(--laranja)}
.carriers .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.carriers a:not(.btn){color:var(--band-ink)}
.carriers .card{padding:20px;background:rgba(255,255,255,.03);border:1px solid var(--hero-line);color:inherit}
.carriers .card+.card{margin-top:12px}
.carriers .card .k{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--band-muted)}
.carriers .card .v{margin-top:4px;font-family:var(--f-display);font-weight:700;font-size:1.3rem;line-height:1.15}
.carriers .card .s{margin-top:6px;font-size:.76rem;color:var(--band-muted)}
.faq .list{display:grid;max-width:78ch}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{position:relative;padding:18px 40px 18px 0;font-family:var(--f-display);font-weight:700;font-size:1.15rem;list-style:none;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";content:"+" / "";position:absolute;right:4px;top:14px;font-family:var(--f-mono);font-size:1.4rem;color:var(--laranja-texto)}
.faq details[open] summary::after{content:"\2013";content:"\2013" / ""}
.faq .a{max-width:70ch;padding:0 0 20px;color:var(--ink-2)}

/* ===== títulos auxiliares ===== */
.h-pequeno{font-size:1.15rem}
.h-card,.pn-pedido-titulo{font-size:1.2rem}
.h-banda{margin-top:12px}

/* ===== home: hero com formulário ===== */
.hero-texto{display:grid;gap:18px;min-width:0}
.hero-texto h1{margin-top:6px}
.hero-pontos{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:8px;max-width:60ch}
.hero-pontos li{position:relative;padding-left:28px;color:var(--hero-muted);line-height:1.45}
.hero-pontos li strong{color:var(--hero-ink);font-weight:600}
.hero-pontos li::before{content:"";position:absolute;left:2px;top:.35em;width:14px;height:8px;border-left:3px solid var(--laranja);border-bottom:3px solid var(--laranja);transform:rotate(-45deg)}
.hero-form{display:grid;gap:12px;min-width:0;align-self:start}
.hero .hero-form .form{margin-top:0;box-shadow:var(--shadow)}
.hero .hero-form .alerta{font-size:.92rem}
.hero .hero-form .alerta a{color:inherit}
.hero .hero-form .alerta :focus-visible,.hero .hero-form .form :focus-visible{outline-color:var(--focus)}
.hero-transp{font-size:.95rem;color:var(--hero-muted)}
@media (min-width:880px){.hero .wrap{align-items:start}.hero h1{font-size:clamp(2.2rem,4.2vw,3.6rem)}}
/* F4: no HTML o formulário vem logo depois do título (1ª tela do celular); no computador volta para a coluna da direita */
.hero-topo{min-width:0}
.hero .hero-topo h1{margin-top:6px;font-size:clamp(1.7rem,7.4vw,2.2rem);max-width:22ch}
.hero-sub{margin-top:10px;color:var(--hero-ink);font-weight:600}
.hero .hero-grade{gap:20px}
.hero-prova{display:grid;gap:4px;font-size:.85rem;color:var(--hero-muted)}
@media (min-width:880px){
  .hero .hero-grade{grid-template-columns:1.05fr .95fr;grid-template-areas:"topo form" "texto form";grid-template-rows:auto 1fr;column-gap:clamp(28px,5vw,64px);row-gap:22px}
  .hero-topo{grid-area:topo}.hero-form{grid-area:form}.hero-texto{grid-area:texto;align-self:start}
  .hero .hero-topo h1{font-size:clamp(2.2rem,4.2vw,3.6rem);max-width:18ch}
}
.facts .facts-cab{display:block;padding-top:24px}
.facts .facts-cab .pequeno{margin-top:4px;color:var(--band-muted)}
.faixa-curta{display:none}
@media (max-width:559px){.faixa .faixa-longa{display:none}.faixa .faixa-curta{display:inline}}
/* mapa do corredor dentro da cobertura (SVG claro sobre fundo escuro nos dois temas) */
.mapa-bloco{margin-bottom:clamp(24px,4vw,40px);padding:clamp(8px,2vw,16px);background:var(--hero-bg);color:var(--hero-ink);border-radius:var(--raio)}
.mapa-bloco .map{max-width:760px;margin-inline:auto;border-color:var(--hero-line)}
.mapa-bloco .map .cap{font-size:.75rem}
.aproxima{background:var(--bg)}
.bloco-aproxima{display:grid;gap:14px;max-width:78ch;padding:clamp(18px,4vw,32px);background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--laranja);border-radius:var(--raio)}
.bloco-aproxima .lede{color:var(--ink)}
.final{background:var(--surface);border-top:1px solid var(--line)}
.final .wrap{max-width:calc(760px + 2 * clamp(16px,5vw,48px))}
.cov ul.pills{list-style:none;margin:12px 0 0;padding:0}
.cov .col .pequeno{margin-top:14px}
/* tabelas empilhadas no celular (veículos da home e .tabela-empilha) */
@media (max-width:639px){
  .veh table{min-width:0}
  .veh thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .veh table,.veh tbody,.veh tr,.veh td{display:block;width:100%}
  .veh tr{padding:12px 16px;border-bottom:1px solid var(--line)}
  .veh tr:last-child{border-bottom:0}
  .veh td{padding:4px 0;border:0}
  .veh td.c{white-space:normal}
  .veh td.c::before{content:attr(data-rotulo) ": ";font-family:var(--f-body);color:var(--muted)}
}
@media (max-width:559px){
  .tabela-empilha thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .tabela-empilha,.tabela-empilha tbody,.tabela-empilha tr,.tabela-empilha th,.tabela-empilha td{display:block;width:100%}
  .tabela-empilha tr{padding:10px 12px;border-bottom:1px solid var(--line)}
  .tabela-empilha tr:last-child{border-bottom:0}
  .tabela-empilha th,.tabela-empilha td{padding:3px 0;border:0;background:none;text-align:left}
  .tabela-empilha .num{text-align:left;white-space:normal}
  .tabela-empilha td[data-rotulo]::before{content:attr(data-rotulo) ": ";font-family:var(--f-body);color:var(--muted)}
}

/* ===== formulários das páginas ===== */
.form-cotacao .ajuda a{color:var(--link)}
.form-cotacao>.opcoes>legend{font-size:1rem;letter-spacing:.04em;color:var(--ink)}
.form-cotacao>.opcoes+.opcoes{padding-top:16px;border-top:1px solid var(--line)}
.cep-info{min-height:1.2em}
.cep-info:empty{display:none}
.check-alto,.check.alvo,.check.pn-alvo{min-height:44px;align-items:center}
.check-alto input,.check.alvo input,.check.pn-alvo input{margin-top:0}
.opcoes-linha{display:flex;flex-wrap:wrap;gap:0 4px}
.opcoes-linha .check{min-height:44px;min-width:56px;align-items:center;padding:0 8px 0 0}
.opcoes-linha .check input{margin-top:0}
.filtros .row{align-items:end}
.em-formacao p+p{margin-top:6px}
.escolhas{display:flex;flex-wrap:wrap;gap:8px}
.escolhas-coluna{flex-direction:column}
.escolha{display:flex;align-items:center;gap:.6rem;min-height:44px;padding:.6rem .85rem;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--raio);line-height:1.35;cursor:pointer}
.escolha input{margin:0}
.escolha:has(small){align-items:flex-start}
.escolha:has(small) input{margin-top:.2rem}
.escolha b{display:block;font-weight:600}
.escolha small{display:block;margin-top:2px;font-size:.875rem;color:var(--muted)}
.escolha:hover{border-color:var(--ink-2)}
.escolha:has(input:checked){border-color:var(--primario);box-shadow:inset 0 0 0 1px var(--primario)}
.escolha:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}
.opcoes[aria-describedby] .escolha{border-color:var(--erro)}
.opcoes>legend.pergunta{font-family:var(--f-display);font-size:1.15rem;font-weight:700;letter-spacing:0;text-transform:none;color:var(--ink);line-height:1.25}
.entrada-codigo{font-family:var(--f-mono);font-size:1.5rem;font-weight:600;letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums}
.qtd{max-width:8rem}
.campo-botao{display:flex;flex-wrap:wrap;gap:8px}
.campo-botao>input{flex:1 1 11rem;width:auto}
/* links soltos com alvo de 44 px */
.link-alvo,.lista-alvos a,.link-acao,.atalhos a,.item-titulo>a{display:inline-flex;align-items:center;min-height:44px}
.lista-alvos{margin:0}
.link-acao{padding:0 .2rem;color:var(--link);text-decoration:underline;text-underline-offset:.15em}
.atalhos{display:flex;flex-wrap:wrap;gap:0 18px;border-block:1px solid var(--line)}

/* ===== resultado e contato ===== */
.resumo-pedido{display:grid;grid-template-columns:minmax(5.5rem,auto) 1fr;gap:6px 14px;margin:0;padding:14px 16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--raio)}
.resumo-pedido dt{font-family:var(--f-display);font-weight:600;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:.15em}
.resumo-pedido dd{margin:0;min-width:0}
.rotulo-fixo{font-size:.95rem;color:var(--ink-2)}
.card-resultado{gap:12px}
.card-cab{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 16px}
.card-cab>*{min-width:0}
.card-cab h3 a,.card-cab h2 a{color:inherit;text-decoration-thickness:1px}
.card-preco{display:grid;gap:2px;justify-items:start}
@media (min-width:560px){.card-preco{justify-items:end;text-align:right}}
.preco-oculto{font-weight:600}
.lista-info{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:.95rem;color:var(--ink-2)}
.lista-info li{position:relative;padding-left:16px}
.lista-info li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:2px;background:var(--laranja)}
.grupo-recolhido>summary{color:var(--ink)}
.grupo-recolhido .cards{margin-top:8px}
.continuar h2{font-size:1.3rem}
.form-chamar{margin:0}
.memoria tr.subtotal td{font-weight:600}
.memoria caption{caption-side:top}
.mensagem-wa{min-height:14rem;font-family:var(--f-mono);font-size:.9rem;line-height:1.5;white-space:pre-wrap}
.so-aproxima-texto{padding-left:14px;border-left:3px solid var(--laranja);color:var(--ink-2)}

/* ===== perfil, avaliações e textos ===== */
.pilulas{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.pilula{display:inline-block;padding:.3rem .6rem;border:1px solid var(--line);border-radius:2px;background:var(--surface);font-size:.9rem}
.resposta{margin-top:6px;padding:8px 12px;border-left:3px solid var(--line);background:var(--surface-2);border-radius:0 var(--raio) var(--raio) 0}
.resposta-avaliacao{padding-left:12px;border-left:3px solid var(--line)}
.texto mark.ph{background:var(--ph-bg);color:var(--ph-ink);padding:0 .3em;border-radius:2px}
.texto a{overflow-wrap:anywhere}

/* ===== conta e empresa ===== */
.dados{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;margin:0}
.dados dt{font-weight:600;font-size:.875rem;color:var(--muted)}
.dados dd{margin:0 0 10px;min-width:0;overflow-wrap:anywhere}
@media (min-width:560px){.dados{grid-template-columns:minmax(8rem,11rem) minmax(0,1fr);gap:8px 16px}.dados dd{margin:0}}
.nao-lida{border-left:4px solid var(--blue);padding-left:12px}

/* ===== painel da transportadora (pn-) ===== */
.pn{display:grid;gap:clamp(20px,3vw,32px);align-content:start;min-width:0}
.pn>*{min-width:0}
.pn .btn-pequeno{min-height:44px}
.pn-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr))}
.pn-nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:.4rem .75rem;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);font-weight:500;line-height:1.2;text-align:center;text-decoration:none}
.pn-nav a:hover,.pn-subnav a:hover{border-color:var(--ink-2)}
.pn-nav a[aria-current="page"]{background:var(--ink);border-color:var(--ink);color:var(--surface);font-weight:600}
@media (min-width:900px){.pn-nav ul{grid-template-columns:repeat(6,minmax(0,1fr))}}
.pn-subnav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pn-subnav a{display:inline-flex;align-items:center;min-height:44px;padding:.35rem .8rem;border:1px solid var(--line);border-radius:3px;color:var(--ink);font-size:.95rem;text-decoration:none}
.pn-subnav a[aria-current="page"]{border-color:var(--blue);box-shadow:inset 0 -3px 0 var(--blue);font-weight:600}
.pn-cabeca h1,.pn-contato h3,.pn-pedido h2{overflow-wrap:anywhere}
/* checklist: texto 'Pronto'/'Falta' visível, a marca é só reforço */
.pn-checklist{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.pn-checklist li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start}
.pn-checklist li .btn{margin-top:6px}
.pn-marca{position:relative;width:22px;height:22px;margin-top:.1rem;border:2px solid var(--line);border-radius:50%}
.pn-feito .pn-marca{background:var(--ok);border-color:var(--ok)}
.pn-feito .pn-marca::after{content:"";position:absolute;left:5px;top:1px;width:6px;height:11px;border:solid var(--ok-bg);border-width:0 2px 2px 0;transform:rotate(45deg)}
.pn-falta .pn-marca{background:var(--aviso-bg);border-color:var(--aviso-line)}
/* editor de tabela: uma coluna no celular; prévia fixa ao lado no computador */
.pn-editor{display:grid;gap:clamp(16px,3vw,24px);min-width:0}
.pn-editor>*{min-width:0}
@media (min-width:960px){
  .pn-editor{grid-template-columns:minmax(0,1fr) minmax(0,400px);align-items:start}
  .pn-rapido,.pn-detalhe,.pn-acoes,.pn-acoes-nota{grid-column:1}
  .pn-sim{grid-column:2;grid-row:1 / span 4;position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto}
}
.pn-detalhe>summary{font-size:1.05rem}
.pn-detalhe .form{margin-top:4px}
.pn-status form{margin-top:4px}
.pn-acoes .btn{flex:1 1 200px}
.pn-sim{align-content:start}
.pn-sim-lista>li,.pn-sim-rota{gap:4px}
.pn-aviso-piso{margin:0}
.pn-sim-valores{display:flex;flex-wrap:wrap;gap:4px 16px}
.pn-sim-valores b{font-size:1.1rem}
.pn-sim-vazio{padding:12px;border:1px dashed var(--line);border-radius:var(--raio);color:var(--ink-2)}
.pn-livre{padding-top:14px;border-top:1px solid var(--line)}
.pn-dias{display:flex;flex-wrap:wrap;gap:0 16px}
.pn-dias>.ajuda,.pn-dias>.erro-campo{flex-basis:100%}
.pn-colunas{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));column-gap:16px;row-gap:0}
.pn-colunas>.ajuda,.pn-colunas>.erro-campo{grid-column:1 / -1}
.pn-dl{display:grid;grid-template-columns:fit-content(45%) minmax(0,1fr);gap:4px 12px;margin:0}
.pn-dl dt{padding-top:.1rem;color:var(--muted);font-size:.875rem}
.pn-dl dd{margin:0;min-width:0;overflow-wrap:anywhere}
@media (max-width:359px){.pn-dl{grid-template-columns:minmax(0,1fr)}.pn-dl dd{margin-bottom:6px}}
.pn-grade-botoes{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.pn-grade-botoes .btn{min-height:44px;text-transform:none;letter-spacing:0}
.pn-desfecho .opcoes>legend{margin-bottom:8px}
.pn-url{padding:10px 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:3px;font-size:.95rem;overflow-wrap:anywhere}
.pn-url-campo input{font-family:var(--f-mono);font-size:.9rem}
.pn-selos>li{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;justify-content:space-between}
.pn-selos .selo{font-size:.85rem;padding:.3rem .55rem}
.pn-qr{display:grid;justify-items:center;width:100%;max-width:280px;padding:12px;background:#ffffff;border:1px solid var(--line);border-radius:var(--raio)}
.pn-qr-svg{display:block;width:100%;max-width:240px;height:auto}
.pn-cartao{display:block;width:100%;max-width:360px;height:auto;border:1px solid var(--line);border-radius:var(--raio)}
.pn-parceiros{border-style:dashed}

/* ===== administração (adm-) ===== */
.adm-nav{padding-bottom:14px;border-bottom:1px solid var(--line)}
.adm-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.adm-nav li{min-width:0}
.adm-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:3px;font-size:.92rem;line-height:1.2;text-decoration:none}
.adm-nav a:hover{border-color:var(--ink-2)}
.adm-nav a[aria-current="page"]{background:var(--ink);color:var(--surface);border-color:var(--ink);font-weight:600}
.adm-dados{display:grid;gap:2px 16px;margin:0}
.adm-dados dt{font-weight:600;color:var(--ink-2)}
.adm-dados dd{min-width:0;margin:0 0 10px;overflow-wrap:anywhere}
.adm-dados dd .btn{margin-top:6px}
@media (min-width:560px){.adm-dados{grid-template-columns:minmax(9rem,max-content) minmax(0,1fr);row-gap:10px}.adm-dados dd{margin:0}}
/* QR do TOTP: fundo branco nos dois temas (leitura pela câmera) */
.adm-qr{display:grid;justify-items:center;width:100%;max-width:320px;margin-inline:auto;padding:12px;background:#ffffff;border:1px solid var(--line);border-radius:var(--raio)}
.adm-qr-svg{display:block;width:100%;max-width:264px;height:auto}
.adm-codigos{list-style:none;margin:0;padding:0;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr))}
.adm-codigos li{min-width:0}
.adm-codigos code{display:block;padding:10px 12px;background:var(--surface-2);border:1px dashed var(--line);border-radius:var(--raio);font-size:1.1rem;letter-spacing:.06em;text-align:center;user-select:all;overflow-wrap:anywhere}
.btn.adm-btn-perigo,.selo.adm-selo-erro{background:var(--erro-bg);border-color:var(--erro-line);color:var(--erro)}
.btn.adm-btn-perigo:hover{border-color:var(--erro)}
.adm-pre{white-space:pre-wrap;overflow-wrap:anywhere}

/* ===== impressão ===== */
.so-impressao{display:none}
@media print{
  .top,.faixa,footer.foot,.pular,.btn,.acoes,.so-tela,.adm-nav{display:none!important}
  .so-impressao{display:block!important}
  body{background:#fff;color:#000}
  .card,.codigo{border-color:#000;background:#fff}
}
