/* Fiscaliza Brasil — Verde-amarelo novo.
   As cores do país sem cara de governo: verde-floresta profundo, amarelo vivo, letras arredondadas (Bricolage Grotesque) e texto em Inter.
   Regra de layout: uma ideia por tela. O essencial aparece primeiro; fonte, método e avisos ficam a um toque.
   Papéis de cor (sempre com rótulo ou ícone): amarelo = ação e dinheiro · menta = confirmação e acompanhamento · coral = ao vivo e alertas. */
@font-face{font-family:Bricolage;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(/vendor/fontes/bricolage-grotesque-latin-standard-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Bricolage;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(/vendor/fontes/bricolage-grotesque-latin-ext-standard-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vendor/fontes/inter-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/vendor/fontes/inter-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root,:root[data-theme=dark]{
  /* Floresta (tema padrão) */
  --fundo:#0A3427; --sup:#0E4031; --sup2:#134C3A; --linha:#1E5C47; --texto:#EEF6EF; --texto2:#B9D2C3; --texto3:#8AAD9C;
  /* cor de texto/linha · cor cheia (-s) · texto sobre a cor cheia (-t) · fundo suave (-f) */
  --pri:#FFD23F; --pri-s:#FFD23F; --pri-t:#0B3B2C; --pri-f:rgba(255,210,63,.16);
  --grana:#FFD23F; --grana-s:#FFD23F; --grana-t:#2B2100; --grana-f:rgba(255,210,63,.14);
  --ok:#6BE8B0; --ok-s:#3FD08F; --ok-t:#04291B; --ok-f:rgba(63,208,143,.15);
  --alerta:#FF9486; --alerta-s:#FF5A4E; --alerta-t:#FFFFFF; --alerta-f:rgba(255,90,78,.15);
  --mapa-terra:#15573F; --mapa-borda:#2E8063; --mapa-sel:#22785A; --mapa-fora:#0C3A2C; --arco:#FFD23F;
  --cofre-q:#FFD23F; --cofre-v:rgba(255,210,63,.12); --cofre-chao:#0C3A2C;
  --nota:#3FD08F; --nota-l:#2BB177; --nota-e:#0B5C3F;
  --vidro:rgba(10,52,39,.72); --vidro-b:rgba(238,246,239,.10);
  --sombra:0 22px 60px rgba(0,0,0,.42); --r:20px; --r2:14px; --b:1px;
  --topo:72px; --fh:Bricolage,"Avenir Next",system-ui,sans-serif;
  color-scheme:dark;
}
:root[data-theme=light]{
  /* Claro */
  --fundo:#F2F6F0; --sup:#FFFFFF; --sup2:#E5EFE7; --linha:#D3E2D7; --texto:#0B3B2C; --texto2:#3F6455; --texto3:#5F8071;
  --pri:#0B6B4B; --pri-s:#0B3B2C; --pri-t:#FFFFFF; --pri-f:rgba(11,59,44,.10);
  --grana:#8A6400; --grana-s:#FFD23F; --grana-t:#2B2100; --grana-f:rgba(255,210,63,.24);
  --ok:#0B7A54; --ok-s:#0B7A54; --ok-t:#FFFFFF; --ok-f:rgba(11,122,84,.11);
  --alerta:#C2372C; --alerta-s:#D9402F; --alerta-t:#FFFFFF; --alerta-f:rgba(217,64,47,.10);
  --mapa-terra:#D2E5D7; --mapa-borda:#7EA892; --mapa-sel:#B8DCC6; --mapa-fora:#E8F0EA; --arco:#E0A800;
  --cofre-q:#0B3B2C; --cofre-v:rgba(11,59,44,.08); --cofre-chao:#DCE9DF;
  --vidro:rgba(255,255,255,.78); --vidro-b:rgba(11,59,44,.10);
  --sombra:0 20px 50px rgba(11,59,44,.16);
  color-scheme:light;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--fundo);color:var(--texto);font:400 15px/1.55 Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden}
h1,h2,h3,h4,p{margin:0}
h1,h2{font-family:var(--fh);font-stretch:96%}
h1{font-size:clamp(30px,3.6vw,48px);line-height:1.02;letter-spacing:-.035em;font-weight:800;text-wrap:balance}
h2{font-size:22px;line-height:1.15;letter-spacing:-.025em;font-weight:750}
h3{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--texto2);font-weight:700}
a{color:var(--pri);text-decoration:none;font-weight:550} a:hover{text-decoration:underline;text-underline-offset:3px}
b,strong{font-weight:650}
button,input,select,textarea{font:inherit;color:inherit}
.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}
:focus-visible{outline:3px solid var(--pri-s);outline-offset:2px;border-radius:8px}
.skip{position:absolute;left:-999px;top:8px;background:var(--pri-s);color:var(--pri-t);padding:10px 16px;border-radius:10px;z-index:99;font-weight:700}
.skip:focus{left:8px}
.ic{width:22px;height:22px;flex:none}
.ic.p{width:17px;height:17px}

/* ── Estrutura: topo enxuto + conteúdo; no celular, barra inferior ── */
#app{display:grid;grid-template-rows:var(--topo) 1fr;height:100dvh}
#topo{display:flex;align-items:center;gap:28px;padding:0 28px;z-index:20;min-width:0;background:var(--fundo);border-bottom:var(--b) solid var(--linha)}
#app.imersivo #topo{position:absolute;left:0;right:0;top:0;height:var(--topo);background:linear-gradient(var(--fundo) 0%,transparent 100%);border-bottom-color:transparent}
#app.imersivo{grid-template-rows:1fr}
.marca{display:flex;align-items:center;gap:10px;color:var(--texto)!important;text-decoration:none!important;flex:none}
.marca-simb{width:36px;height:36px;display:block}.marca-simb svg{width:100%;height:100%;display:block}
.marca-txt{font:800 21px/1 var(--fh);letter-spacing:-.035em;white-space:nowrap}
#nav-itens{display:flex;gap:4px;align-items:center}
.nav-i{display:flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:99px;color:var(--texto2);font-size:14.5px;font-weight:600;text-decoration:none!important;border:0;background:none;cursor:pointer;white-space:nowrap}
.nav-i .tile{display:none}
.nav-i:hover{color:var(--texto);background:var(--sup2)}
.nav-i[aria-current=page]{color:var(--texto);background:var(--sup2)}
.nav-i .vivo-ponto{width:8px;height:8px;border-radius:50%;background:var(--alerta-s);box-shadow:0 0 0 0 var(--alerta-s);animation:pulsoV 1.6s infinite}
@keyframes pulsoV{70%{box-shadow:0 0 0 7px transparent}}
.topo-acoes{margin-left:auto;display:flex;gap:8px;align-items:center}
.btn-busca{display:flex;align-items:center;gap:10px;height:42px;padding:0 14px 0 13px;border-radius:99px;border:var(--b) solid var(--linha);background:var(--sup);color:var(--texto2);cursor:pointer;font-size:14px;font-weight:500;min-width:220px}
.btn-busca:hover{color:var(--texto);border-color:var(--texto3)}
.btn-busca kbd{margin-left:auto;font:600 11px ui-monospace,monospace;color:var(--texto3);background:var(--sup2);border-radius:6px;padding:2px 7px}
.btn-ic{width:42px;height:42px;display:grid;place-items:center;border-radius:99px;border:0;background:var(--sup2);cursor:pointer;color:var(--texto2)}
.btn-ic:hover{color:var(--texto);background:var(--linha)}
.chip-loc{display:none}
#conteudo{overflow:auto;position:relative;min-width:0;outline:none;scroll-behavior:smooth}
#inferior{display:none}
/* Busca em camada */
#busca-camada{position:fixed;inset:0;z-index:60;background:rgba(3,20,14,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px}
#busca-camada[hidden]{display:none}
.busca-caixa{width:min(680px,100%);background:var(--sup);border:var(--b) solid var(--linha);border-radius:24px;box-shadow:var(--sombra);overflow:hidden;animation:sobe .22s cubic-bezier(.2,.8,.2,1)}
@keyframes sobe{from{opacity:0;transform:translateY(10px) scale(.985)}}
.busca{position:relative;display:flex;align-items:center;gap:10px;padding:10px 10px 10px 18px;border-bottom:var(--b) solid var(--linha)}
.busca>.ic{color:var(--pri)}
.busca input{flex:1;height:48px;border:0;background:none;outline:none;font-size:18px;font-weight:500;min-width:0}
.busca input::placeholder{color:var(--texto3);font-weight:400}
.busca-caixa .pop{position:static;border:0;border-radius:0;box-shadow:none;max-height:min(60vh,520px)}
.busca-dica{padding:14px 18px 16px;color:var(--texto3);font-size:13.5px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.busca-dica button{border:var(--b) solid var(--linha);background:none;color:var(--texto2);border-radius:99px;padding:4px 12px;cursor:pointer;font-size:13px}
.busca-dica button:hover{color:var(--texto);border-color:var(--texto3)}
.pop{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--sup);border:var(--b) solid var(--linha);border-radius:var(--r);box-shadow:var(--sombra);max-height:min(70vh,580px);overflow:auto;z-index:30;padding:6px}
.res{display:flex;gap:12px;align-items:flex-start;padding:11px 12px;border-radius:12px;cursor:pointer;color:var(--texto);text-decoration:none!important;font-weight:400}
.res:hover,.res[aria-selected=true],.res:focus{background:var(--sup2)}
.res .tipo{flex:none;width:110px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--pri);font-weight:700;padding-top:3px}
.res b{display:block;font-weight:600}.res small{color:var(--texto2);display:block;font-size:13px}
.pop .vazio{padding:16px;color:var(--texto2)}

/* ── Página ── */
.pag{max-width:1220px;margin:0 auto;padding:34px 32px 90px}
.pag-cab{display:flex;gap:18px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin-bottom:26px;padding-bottom:22px;border-bottom:var(--b) solid var(--linha)}
.pag-cab p{color:var(--texto2);max-width:66ch;margin-top:12px;font-size:16.5px;line-height:1.45}
.etq{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--pri);margin-bottom:12px}
.etq .ic{width:18px;height:18px}
.trilha{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:13.5px;color:var(--texto3);margin-bottom:14px;font-weight:500}
.trilha a,.trilha button{color:var(--texto2);background:none;border:0;padding:2px 4px;border-radius:6px;cursor:pointer;font-weight:550}
.trilha a:hover,.trilha button:hover{color:var(--pri);text-decoration:none}
.trilha .at{color:var(--texto);font-weight:750}
.cartao{background:var(--sup);border:var(--b) solid var(--linha);border-radius:var(--r);padding:20px}
.cartao.liso{padding:0;overflow:hidden}
.cartao.bloco-grana{background:var(--grana-s);border-color:var(--grana-s);color:var(--grana-t)}
.cartao.bloco-grana .rot,.cartao.bloco-grana small{color:rgba(23,19,10,.78)}
.cartao.bloco-grana .v.fin{color:var(--grana-t)}
.cartao.bloco-grana .termo{border-bottom-color:rgba(23,19,10,.5)}
.cartao.bloco-pri{background:var(--pri-s);border-color:var(--pri-s);color:var(--pri-t)}
.grade{display:grid;gap:14px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.col-2-1{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:18px;align-items:start}
.pilha{display:flex;flex-direction:column;gap:14px}
.linha{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.entre{justify-content:space-between}
.sec{margin-top:30px}.sec>h2{margin-bottom:14px}
.sub{color:var(--texto2);font-size:14px}
.mini{font-size:12.5px;color:var(--texto3)}
.btn{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px;border-radius:13px;border:0;background:var(--sup2);color:var(--texto);cursor:pointer;font-weight:700;font-size:14.5px;text-decoration:none!important;white-space:nowrap;transition:transform .08s,background .15s}
.btn:hover{background:var(--linha)}
.btn:active{transform:translateY(1px)}
.btn.pri{background:var(--pri-s);color:var(--pri-t)}
.btn.pri:hover{filter:brightness(1.12)}
.btn.seg{background:var(--ok-s);color:var(--ok-t)}
.btn.fino{height:36px;padding:0 13px;font-size:13.5px;border-radius:11px}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:4px 13px;border-radius:11px;border:0;background:var(--sup2);color:var(--texto2);cursor:pointer;font-size:13.5px;font-weight:600;text-decoration:none!important}
.chip:hover{color:var(--texto);background:var(--linha)}
.chip[aria-pressed=true],.chip.at{background:var(--pri-s);color:var(--pri-t)}
.chip b{color:var(--texto)}
.campo{height:44px;border-radius:13px;border:var(--b) solid var(--linha);background:var(--sup);padding:0 14px;min-width:0;outline:none;font-weight:500}
.campo:focus{border-color:var(--pri-s);box-shadow:0 0 0 4px var(--pri-f)}
.filtros{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:18px}
.filtros .campo[type=search]{flex:1;min-width:220px}

.selo{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:2px 9px;border-radius:7px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:var(--sup2);color:var(--texto2);white-space:nowrap}
.selo.pri{background:var(--pri-s);color:var(--pri-t)}
.selo.ok{background:var(--ok-s);color:var(--ok-t)}
.selo.grana{background:var(--grana-s);color:var(--grana-t)}
.selo.alerta{background:var(--alerta-s);color:var(--alerta-t)}
.selo.vivo{background:var(--alerta-s);color:#fff;letter-spacing:.1em}
.selo.vivo i{width:8px;height:8px;border-radius:50%;background:#fff;animation:pulso 1.4s infinite}
.selo .ic{width:14px;height:14px}
@keyframes pulso{0%{box-shadow:0 0 0 0 rgba(255,255,255,.7)}100%{box-shadow:0 0 0 7px rgba(255,255,255,0)}}
.esfera{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--texto3);font-weight:800}

.lista{display:flex;flex-direction:column}
.item{display:flex;gap:14px;align-items:flex-start;padding:16px 20px;border:0;border-bottom:var(--b) solid var(--linha);color:var(--texto);text-decoration:none!important;cursor:pointer;background:none;text-align:left;width:100%;font-weight:400}
.item:last-child{border-bottom:0}
.item:hover{background:var(--sup2)}
.item .corpo{flex:1;min-width:0}
.item .tit{font-weight:700;display:block;overflow-wrap:anywhere;font-size:15.5px;line-height:1.3;color:var(--texto)}
.item .meta{color:var(--texto2);font-size:13px;display:flex;gap:4px 12px;flex-wrap:wrap;margin-top:5px;align-items:center}
.item .meta .ic{width:14px;height:14px;vertical-align:-2px}
.item .dir{text-align:right;flex:none;max-width:42%}
.item .valor{font-weight:800;font-size:17px;color:var(--grana);letter-spacing:-.01em}
.hora{flex:none;width:66px;text-align:center;background:var(--sup2);border-radius:11px;padding:7px 4px}
.hora b{display:block;font-size:17px;font-weight:800;letter-spacing:-.01em;line-height:1.2}.hora small{color:var(--texto2);font-size:10.5px;font-weight:600;display:block;line-height:1.2}
.avatar{width:44px;height:44px;border-radius:12px;object-fit:cover;background:var(--sup2);flex:none;display:grid;place-items:center;color:var(--texto2);font-weight:800;font-size:14px;overflow:hidden}
.avatar.g{width:96px;height:96px;font-size:30px;border-radius:20px}

.kpi{display:flex;flex-direction:column;gap:4px}
.kpi .rot{font-size:12.5px;color:var(--texto2);font-weight:600}
.kpi .v{font-size:26px;font-weight:800;letter-spacing:-.025em;line-height:1.1;overflow-wrap:anywhere}
.kpi .v.fin{color:var(--grana)}
.kpi .v.sem{font-size:15px;color:var(--texto2);font-weight:600;letter-spacing:0}
.kpi small{color:var(--texto3);font-size:12.5px;line-height:1.4}
.proc{display:flex;gap:6px 14px;flex-wrap:wrap;align-items:center;font-size:12.5px;color:var(--texto3);padding-top:14px;margin-top:16px;border-top:var(--b) solid var(--linha)}
.proc:first-child{padding-top:0;margin-top:0;border-top:0}
.proc a{color:var(--texto2);text-decoration:underline;text-decoration-color:var(--linha);text-underline-offset:3px;font-weight:500}
.proc .ic{width:15px;height:15px}
.proc b{color:var(--texto2)}
.estado{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border-radius:var(--r2);color:var(--texto2);background:var(--sup2);font-size:14px}
.estado>.ic{width:36px;height:36px;padding:8px;border-radius:10px;background:var(--linha);color:var(--texto)}
.estado b{color:var(--texto);display:block;font-weight:750;font-size:15px}
.estado.indisponivel>.ic,.estado.erro>.ic,.estado.erro_rede>.ic,.estado.proibido>.ic{background:var(--alerta-s);color:var(--alerta-t)}
.estado.carregando>.ic{background:var(--pri-s);color:var(--pri-t)}
.estado.carregando>.ic path{transform-origin:12px 12px;animation:gira 1.2s linear infinite}
.estado.desatualizado>.ic,.estado.sem_credencial>.ic{background:var(--grana-s);color:var(--grana-t)}
@keyframes gira{to{transform:rotate(360deg)}}
.nota{font-size:13.5px;color:var(--texto2);background:var(--sup2);border-radius:var(--r2);padding:12px 14px;display:flex;gap:10px;align-items:flex-start;line-height:1.45}
.nota .ic{width:18px;height:18px;margin-top:1px;color:var(--texto3)}
.termo{border-bottom:2px dotted var(--texto3);cursor:help;position:relative}
.termo:hover::after,.termo:focus::after{content:attr(data-tip);position:absolute;left:0;top:calc(100% + 8px);width:min(300px,70vw);background:var(--texto);color:var(--fundo);padding:11px 13px;border-radius:11px;font-size:13px;font-weight:500;line-height:1.4;z-index:20;box-shadow:var(--sombra);text-transform:none;letter-spacing:0;white-space:normal}
.abas{display:inline-flex;gap:4px;background:var(--sup2);border-radius:15px;padding:5px;margin-bottom:20px;max-width:100%;overflow-x:auto;scrollbar-width:none}
.aba{padding:9px 16px;border:0;background:none;color:var(--texto2);cursor:pointer;font-weight:700;border-radius:11px;white-space:nowrap;text-decoration:none!important;font-size:14.5px}
.aba:hover{color:var(--texto)}
.aba[aria-selected=true]{background:var(--texto);color:var(--fundo)}
table{border-collapse:collapse;width:100%;font-size:14px}
th{text-align:left;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--texto3);font-weight:800;padding:12px 16px;border-bottom:var(--b) solid var(--linha);white-space:nowrap;background:var(--sup2)}
td{padding:11px 16px;border-bottom:var(--b) solid var(--linha);vertical-align:top}
tr:last-child td{border-bottom:0}
td.n,th.n{text-align:right;font-variant-numeric:tabular-nums}
td.n{font-weight:650}
.tab-rol{overflow-x:auto}
.pagi{display:flex;gap:12px;align-items:center;justify-content:center;padding:18px}
.barras{display:flex;flex-direction:column;gap:4px}
.barra{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center;background:none;border:0;padding:9px 10px;border-radius:12px;cursor:pointer;text-align:left;width:100%}
.barra:hover,.barra[aria-pressed=true]{background:var(--sup2)}
.barra .rot{font-size:14px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.barra .num{font-weight:800}
.barra .tr{grid-column:1/3;height:10px;border-radius:3px;background:var(--sup2);overflow:hidden}
.barra[aria-pressed=true] .tr,.barra:hover .tr{background:var(--linha)}
.barra .tr i{display:block;height:100%;border-radius:3px;background:var(--grana-s)}
.barra .tr i.amb{background:var(--grana-s)}.barra .tr i.cia{background:var(--pri-s)}
.colunas{display:flex;align-items:flex-end;gap:8px;height:130px;padding-top:10px}
.colunas .c{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;height:100%;justify-content:flex-end}
.colunas .c i{width:100%;max-width:52px;border-radius:6px 6px 0 0;background:var(--grana-s);min-height:3px}
.colunas .c small{font-size:11px;color:var(--texto3);white-space:nowrap;font-weight:600}
.linha-tempo{position:relative;padding-left:26px}
.linha-tempo::before{content:"";position:absolute;left:6px;top:8px;bottom:8px;width:3px;background:var(--linha)}
.lt{position:relative;padding:0 0 20px}
.lt::before{content:"";position:absolute;left:-25px;top:5px;width:13px;height:13px;border-radius:50%;background:var(--sup);border:3px solid var(--texto3)}
.lt.marco::before{background:var(--pri-s);border-color:var(--pri-s);border-radius:3px}
.lt time{font-size:12.5px;color:var(--texto3);font-weight:600}
.lt b{display:block;font-weight:700}
.lt p{color:var(--texto2);font-size:14px}
.etapas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.etapa{padding:18px;position:relative;background:var(--sup);border:var(--b) solid var(--linha);border-radius:var(--r)}
.etapa .n{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--texto2);font-weight:800}
.etapa .n::before{content:"";width:12px;height:12px;background:var(--texto3)}
.etapa:nth-child(2) .n::before{border-radius:4px;background:var(--pri-s)}
.etapa:nth-child(3) .n::before{border-radius:50%;background:var(--grana-s)}
.prog{height:14px;border-radius:4px;background:var(--sup2);overflow:hidden}
.prog i{display:block;height:100%;border-radius:4px;background:var(--pri-s)}
.prog.fin i{background:var(--grana-s)}
dl.dados{display:grid;grid-template-columns:minmax(120px,34%) 1fr;gap:11px 16px;margin:0;font-size:14.5px}
dl.dados dt{color:var(--texto2);font-weight:500}dl.dados dd{margin:0;overflow-wrap:anywhere;font-weight:550}
dl.dados dd .mini{font-weight:400}

/* ── Mapa ── */
.mapa-wrap{display:grid;grid-template-columns:minmax(0,2fr) minmax(360px,1fr);height:100%}
.mapa-area{position:relative;overflow:hidden;background:var(--fundo)}
.mapa-area::before{content:"";position:absolute;inset:0;background-image:radial-gradient(var(--linha) 1.2px,transparent 1.2px);background-size:26px 26px;opacity:.55;pointer-events:none}
#mapa-3d{position:absolute;inset:0;touch-action:none}
.dica-3d b{display:block;font-weight:800}
#mapa-svg:active{cursor:grabbing}
.uf-p{fill:var(--mapa-terra);stroke:var(--fundo);stroke-width:2;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .18s}
.uf-p:hover{fill:var(--mapa-sel)}
.uf-p.fora{fill:var(--mapa-fora)}
.mun-p{fill:var(--mapa-terra);stroke:var(--mapa-borda);stroke-width:.8;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .15s}
.mun-p:hover{fill:var(--mapa-sel)}
.mun-p.at{fill:var(--pri-s);stroke:var(--texto);stroke-width:2}
.bolha{cursor:pointer}
.bolha circle{fill:var(--cor);stroke:var(--fundo);stroke-width:2.5;vector-effect:non-scaling-stroke}
.bolha text{fill:var(--cor-t);font-size:11.5px;text-anchor:middle;font-weight:800;pointer-events:none;font-variant-numeric:tabular-nums}
.bolha.vivo circle{stroke:var(--texto)}
.arco{fill:none;stroke:var(--arco);stroke-linecap:round;opacity:.62;vector-effect:non-scaling-stroke;cursor:pointer}
.arco:hover,.arco.at{opacity:1;stroke:var(--texto)}
.arco.apagado{opacity:.1}
.arco-pulso{fill:var(--texto);stroke:var(--grana-s);stroke-width:2;vector-effect:non-scaling-stroke;pointer-events:none}
.arco-dest{fill:var(--grana-s);stroke:var(--fundo);stroke-width:1.5;vector-effect:non-scaling-stroke}
.arco-dest.aprox{fill:var(--fundo);stroke:var(--grana-s);stroke-dasharray:2 2}
.origem{fill:var(--texto);stroke:var(--fundo);stroke-width:2;vector-effect:non-scaling-stroke}
.flut{position:absolute;background:var(--sup);border:var(--b) solid var(--linha);border-radius:var(--r);box-shadow:var(--sombra)}
.mapa-topo{left:18px;top:18px;right:18px;display:flex;gap:8px;align-items:center;padding:8px;flex-wrap:wrap}
.mapa-topo .trilha{margin:0 6px 0 8px;font-size:14.5px}
.camadas{left:18px;bottom:18px;padding:8px;width:276px;display:flex;flex-direction:column;gap:3px}
.camadas>h3{padding:6px 10px 6px}
.camada{display:flex;gap:11px;align-items:center;padding:8px 10px;border-radius:11px;cursor:pointer;border:0;background:none;text-align:left;color:var(--texto2);font-size:14px;font-weight:600;width:100%}
.camada:hover{background:var(--sup2);color:var(--texto)}
.camada[aria-checked=true]{color:var(--pri-t);background:var(--pri-s)}
.camada .gl{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;flex:none;background:var(--sup2)}
.camada[aria-checked=true] .gl{background:rgba(255,255,255,.2)}
.camada .gl svg{width:12px;height:12px;fill:var(--cor)}
.camada[aria-checked=true] .gl svg{fill:#fff}
.camada.sw{margin-top:3px;border-top:var(--b) solid var(--linha);border-radius:0 0 11px 11px;padding-top:11px}
.camada.sw[aria-checked=true]{background:var(--grana-s);color:var(--grana-t)}
.camada.sw[aria-checked=true] .gl svg{fill:var(--grana-t)}
.legenda{font-size:12.5px;color:var(--texto2);border-top:var(--b) solid var(--linha);margin-top:5px;padding:4px 10px 6px;line-height:1.45}
.legenda summary{cursor:pointer;font-weight:750;color:var(--texto);padding:6px 0;list-style-position:inside}
.legenda b{color:var(--texto)}
.zoom-ctl{right:18px;bottom:18px;display:flex;flex-direction:column;padding:5px;gap:2px}
.zoom-ctl button{width:40px;height:40px;border:0;background:none;color:var(--texto2);cursor:pointer;border-radius:11px;display:grid;place-items:center}
.zoom-ctl button:hover{background:var(--sup2);color:var(--texto)}
.tocador{left:312px;right:78px;bottom:18px;padding:9px 14px 9px 9px;display:flex;gap:12px;align-items:center}
.tocador[hidden]{display:none}
.tocador .btn-ic{background:var(--grana-s);color:var(--grana-t)}
.tocador .data{font-weight:800;min-width:104px;font-size:16px}
.tocador input[type=range]{flex:1;accent-color:var(--grana-s);min-width:60px}
.dica-mapa{position:absolute;pointer-events:none;background:var(--texto);color:var(--fundo);border-radius:11px;padding:9px 12px;font-size:13px;font-weight:500;box-shadow:var(--sombra);z-index:6;max-width:290px;transform:translate(14px,14px);line-height:1.35}
.dica-mapa b{display:block;font-weight:800}
.dica-mapa .mini{color:inherit;opacity:.7}
.painel{border-left:var(--b) solid var(--linha);background:var(--sup);overflow:auto;display:flex;flex-direction:column}
.painel-c{padding:26px 24px 70px;display:flex;flex-direction:column;gap:0}
.painel h1{font-size:clamp(28px,2.6vw,38px)}
.painel .bloco{display:flex;flex-direction:column;gap:12px;padding:22px 0;border-top:var(--b) solid var(--linha)}
.painel .bloco:first-child{padding-top:0;border-top:0}
.painel #br-corpo .bloco:first-child{padding-top:22px;border-top:var(--b) solid var(--linha)}
.painel .bloco>h3{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--texto)}
.painel .bloco>h3 a{text-transform:none;letter-spacing:0;font-size:13px;font-weight:700;white-space:nowrap}
.painel .item{padding:11px 0;gap:12px}
.painel .item:hover{background:none}.painel .item:hover .tit{color:var(--pri)}
.painel #fluxo-sel:empty{display:none}
.painel #fluxo-sel{padding-bottom:22px}
.puxador{display:none}
.heroi-busca{position:relative}
.heroi-busca input{width:100%;height:54px;border-radius:15px;border:var(--b) solid var(--linha);background:var(--fundo);padding:0 16px 0 50px;outline:none;font-size:16.5px;font-weight:500}
.heroi-busca input:focus{border-color:var(--pri-s);box-shadow:0 0 0 4px var(--pri-f)}
.heroi-busca>.ic{position:absolute;left:16px;top:16px;color:var(--pri)}
.mapa-lista{padding:96px 20px 20px;overflow:auto;height:100%;position:relative}

/* ── Caixinha de dinheiro (SVG isométrico) ── */
.cofre-wrap{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:26px;align-items:center}
.cofre-cena{display:grid;place-items:center;cursor:pointer;border:0;background:var(--sup2);border-radius:var(--r);width:100%;padding:14px;transition:background .15s}
.cofre-cena:hover{background:var(--pri-f)}
.cofre{width:100%;max-width:270px;height:auto;display:block;overflow:visible}
.cf-chao{fill:var(--cofre-chao)}
.cf-fundo{fill:var(--cofre-v)}
.cf-vidro{fill:var(--cofre-v)}
.cf-brilho{fill:#fff;opacity:.1}
.cf-quadro{fill:none;stroke:var(--cofre-q);stroke-width:6;stroke-linejoin:round;stroke-linecap:round}
.cf-fenda{fill:var(--fundo)}
.cf-nota{fill:var(--nota)}
.cf-nota-l{fill:var(--nota-l)}
.cf-nota-e{fill:none;stroke:var(--nota-e);stroke-width:2}
.cf-pilha{transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.cofre-cena:hover .cf-pilha,.cofre-cena:focus-visible .cf-pilha{transform:translateY(-5px)}
.cf-sobe{opacity:0}
.cofre-cena.abre .cf-sobe{animation:cf-sobe .7s cubic-bezier(.2,.7,.3,1)}
@keyframes cf-sobe{0%{opacity:0;transform:translateY(34px)}25%{opacity:1}100%{opacity:0;transform:translateY(-46px)}}
.voa{position:fixed;left:0;top:0;z-index:60;width:46px;height:24px;border-radius:5px;background:var(--nota);border:2px solid var(--nota-e);pointer-events:none;display:grid;place-items:center}
.voa::after{content:"";width:9px;height:9px;border-radius:50%;border:2px solid var(--nota-e)}
.cofre-valor{font-size:clamp(34px,5vw,56px);font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--texto);overflow-wrap:anywhere}
.cofre-rot{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ok);font-weight:800;display:flex;gap:8px;align-items:center}

/* ── Formas das etapas: o dinheiro muda de forma (previsto ■ → empenhado ▢ → pago ●) ── */
.forma{display:inline-block;width:10px;height:10px;background:currentColor;vertical-align:0;margin-right:2px}
.forma.s{border-radius:3px}.forma.c{border-radius:50%}
/* ── Bloco-herói do painel ── */
.painel .bloco.heroi{background:var(--pri-s);color:var(--pri-t);margin:-26px -24px 0;padding:28px 24px 24px;border:0;gap:14px}
.heroi .etq,.heroi .esfera{color:var(--pri-t);opacity:.85;margin:0}
.heroi .sub{color:var(--pri-t);opacity:.88;font-size:15.5px}
.heroi .btn{background:var(--pri-t);color:var(--pri-s)}
.heroi .btn.seg{background:var(--ok-s);color:var(--ok-t)}
.heroi .heroi-busca input{border-color:transparent;background:var(--fundo);color:var(--texto)}
.painel .heroi + #fluxo-sel:not(:empty){padding-top:22px}
.painel .heroi + #fluxo-sel + .bloco,.painel .heroi + .bloco{border-top:0}
/* ── Mosaico de gastos ── */
.mosaico{position:relative;height:360px}
.mosaico .bl{position:absolute;border:3px solid var(--sup);border-radius:10px;background:var(--grana-s);color:var(--grana-t);padding:10px 12px;text-align:left;cursor:pointer;overflow:hidden;display:flex;flex-direction:column;gap:2px;font-weight:700;font-size:13px;line-height:1.2;transition:filter .12s}
.mosaico .bl:nth-child(3n+2){background:color-mix(in srgb,var(--grana-s) 82%,#fff)}
.mosaico .bl:nth-child(3n){background:color-mix(in srgb,var(--grana-s) 88%,#7a4a00)}
.mosaico .bl:hover,.mosaico .bl:focus-visible{filter:brightness(1.1);z-index:2}
.mosaico .bl span{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.mosaico .bl b{font-size:15px;font-weight:800;margin-top:auto;letter-spacing:-.01em}
.mosaico .bl.g{padding:16px}.mosaico .bl.g span{font-size:16px}.mosaico .bl.g b{font-size:28px;letter-spacing:-.03em}
.mosaico .bl small{font-size:11.5px;opacity:.75;font-weight:700}
/* ── Ilustração do repasse ── */
.rp-arco{fill:none;stroke:var(--pri-s);stroke-width:14}
.rp-origem{fill:var(--texto)}
.rp-dest{fill:var(--grana-s)}
.rp-pulso{fill:var(--texto);stroke:var(--grana-s);stroke-width:4}
.rp-txt{font:700 13px Inter,sans-serif;fill:var(--texto2);text-anchor:middle}

/* ── Vídeo, diálogo, avisos ── */
.video{aspect-ratio:16/9;background:#07070B;border-radius:var(--r);overflow:hidden;display:grid;place-items:center;position:relative}
.video iframe{width:100%;height:100%;border:0}
.video .capa{display:flex;flex-direction:column;gap:12px;align-items:center;color:#D4D3E0;padding:24px;text-align:center}
.video .capa>.ic{width:56px;height:56px;padding:15px;border-radius:16px;background:var(--pri-s);color:#fff}
.video .capa b{font-size:18px;color:#fff}
#mini{position:fixed;right:20px;bottom:20px;width:350px;z-index:40;background:var(--sup);border:var(--b) solid var(--linha);border-radius:var(--r);box-shadow:var(--sombra);overflow:hidden}
#mini .video{border-radius:0}
#mini .mini-b{display:flex;gap:8px;align-items:center;padding:8px 10px;font-size:13px;font-weight:600}
#mini .mini-b span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#dialogo{position:fixed;inset:0;background:rgba(5,5,10,.72);z-index:50;display:grid;place-items:center;padding:18px}
#dialogo[hidden],#mini[hidden]{display:none}
.dlg{background:var(--sup);border:var(--b) solid var(--linha);border-radius:20px;box-shadow:var(--sombra);width:min(580px,100%);max-height:88vh;overflow:auto;padding:24px;display:flex;flex-direction:column;gap:16px}
.dlg.largo{width:min(1180px,100%)}
#avisos{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:70;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}
.aviso{background:var(--texto);color:var(--fundo);padding:12px 18px;border-radius:13px;font-size:14.5px;font-weight:650;box-shadow:var(--sombra);max-width:90vw}
.opt{display:flex;gap:11px;align-items:flex-start;padding:12px 14px;border:var(--b) solid var(--linha);border-radius:13px;cursor:pointer;font-weight:550}
.opt:has(input:checked){border-color:var(--ok-s);background:var(--ok-f)}
.opt.off{opacity:.65;cursor:not-allowed}
.opt input{accent-color:var(--ok-s);margin-top:4px;width:16px;height:16px}
.opt .sub{font-weight:400}
.esq{background:linear-gradient(90deg,var(--sup2),var(--linha),var(--sup2));background-size:200% 100%;animation:esq 1.3s infinite;border-radius:10px;height:18px}
@keyframes esq{to{background-position:-200% 0}}

@media (max-width:1100px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.col-2-1{grid-template-columns:1fr}.cofre-wrap{grid-template-columns:1fr}.cofre-cena{max-width:340px}}
@media (max-width:860px){
  :root{--topo:60px}
  #app{grid-template-rows:var(--topo) 1fr auto}
  #app.imersivo{grid-template-rows:1fr auto}
  #topo{padding:0 14px;gap:10px}
  #nav-itens{display:none}
  .marca-txt{font-size:19px}
  .btn-busca{min-width:0;width:42px;padding:0;justify-content:center;border:0;background:var(--sup2)}
  .btn-busca span,.btn-busca kbd,#tema{display:none}
  #inferior{display:grid;grid-template-columns:repeat(5,1fr);background:var(--vidro);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:var(--b) solid var(--vidro-b);padding:6px 4px calc(6px + env(safe-area-inset-bottom));z-index:20}
  #inferior .nav-i{flex-direction:column;gap:3px;height:auto;padding:4px 0;font-size:11px;border-radius:14px;background:none}
  #inferior .nav-i .tile{display:grid;place-items:center;width:52px;height:30px;border-radius:99px}
  #inferior .nav-i[aria-current=page]{color:var(--texto)}
  #inferior .nav-i[aria-current=page] .tile{background:var(--pri-s);color:var(--pri-t)}
  #busca-camada{padding:10px}
  .pag{padding:22px 16px 96px}
  .pag-cab{margin-bottom:18px}
  .pag-cab p{font-size:15px}
  .g2,.g3,.g4{grid-template-columns:1fr}.g4.m2,.g3.m2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .etapas{grid-template-columns:1fr}
  .abas{display:flex}
  .mapa-wrap{display:block;position:relative;height:100%}
  .mapa-area{position:absolute;inset:0}
  .painel{position:absolute;left:0;right:0;bottom:0;height:var(--folha,44%);border-left:0;border-top:var(--b) solid var(--linha);border-radius:24px 24px 0 0;box-shadow:0 -14px 44px rgba(0,0,0,.35);z-index:7;transition:height .28s cubic-bezier(.2,.8,.2,1)}
  .painel.arrasta{transition:none}
  .puxador{display:block;position:sticky;top:0;z-index:2;background:var(--sup);padding:10px 0 8px;cursor:grab;touch-action:none;border:0;width:100%;border-radius:24px 24px 0 0}
  .puxador::before{content:"";display:block;width:44px;height:5px;border-radius:3px;background:var(--linha);margin:0 auto}
  .painel-c{padding:8px 18px 40px}
  .mapa-topo{left:8px;right:8px;top:8px;padding:6px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .mapa-topo .trilha{flex-wrap:nowrap;white-space:nowrap}
  .mapa-topo .btn span{display:none}
  .mapa-topo .btn{padding:0 10px}
  .camadas{left:8px;right:8px;top:64px;bottom:auto;width:auto;flex-direction:row;overflow-x:auto;padding:0;scrollbar-width:none;background:none;border:0;box-shadow:none;gap:6px;backdrop-filter:none}
  .camadas>h3,.camadas .legenda{display:none}
  .camada,.camada.sw{width:auto;white-space:nowrap;background:var(--sup);border:var(--b) solid var(--linha);padding:7px 12px 7px 8px;margin:0}
  .zoom-ctl{display:none}
  .tocador{left:8px;right:8px;bottom:calc(var(--folha,44%) + 8px);padding:7px 10px 7px 7px}
  .tocador .data{min-width:92px;font-size:14.5px}
  .item{padding:14px 16px}
  .item .dir{max-width:38%}
  .res .tipo{width:84px;font-size:10px}
  dl.dados{grid-template-columns:1fr;gap:2px 0}dl.dados dd{margin-bottom:10px}
  #mini{left:10px;right:10px;bottom:88px;width:auto}
  .mapa-lista{padding:124px 12px 50vh}
  .dlg{padding:18px}
}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}
/* Apoio ao desenvolvedor */
.btn-apoio{display:flex;align-items:center;gap:8px;height:44px;padding:0 16px 0 13px;border-radius:13px;background:var(--grana-s);color:var(--grana-t);font-weight:750;text-decoration:none!important;white-space:nowrap}
.btn-apoio:hover{filter:brightness(1.06)}
.btn-apoio .ic{width:18px;height:18px}
.nav-i.apoio .tile{background:var(--grana-f);color:var(--grana)}
.nav-i.apoio[aria-current=page] .tile{background:var(--grana-s);color:var(--grana-t)}
.apoio-cab{display:flex;gap:14px;align-items:center;margin-bottom:16px}
.apoio-cab h2{margin:0}
.apoio-selo{width:48px;height:48px;flex:none;border-radius:14px;display:grid;place-items:center;background:var(--grana-s);color:var(--grana-t)}
.apoio-outro{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:650;color:var(--texto2)}
.apoio-outro .campo{height:36px;width:120px;border-radius:11px}
.apoio-qr-linha{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;align-items:center;margin-top:18px}
.apoio-qr{width:220px;aspect-ratio:1;border-radius:16px;background:#fff;padding:8px;border:var(--b) solid var(--linha);display:grid;place-items:center}
.apoio-qr svg{width:100%;height:100%;display:block}
.apoio-chave{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;border-radius:var(--r2);background:var(--sup2)}
.apoio-chave b{font-size:15px;overflow-wrap:anywhere}
.apoio-passos{margin:18px 0 0;padding-left:20px;color:var(--texto2);font-size:14px;line-height:1.7}
.apoio-gastos .item .ic{color:var(--grana);flex:none}
@media (max-width:860px){.btn-apoio{padding:0;width:44px;justify-content:center}.btn-apoio span{display:none}.apoio-qr-linha{grid-template-columns:1fr}.apoio-qr{width:min(240px,100%);margin:0 auto}}
:root[data-anim=off] .cf-pilha{transition:none}
:root[data-anim=off] .cofre-cena.abre .cf-sobe{animation:none}

/* ══ Acabamento Verde-amarelo: menos bordas, mais respiro ══ */
.pag{max-width:1180px;padding:44px 32px 110px}
.pag-cab{border-bottom:0;padding-bottom:0;margin-bottom:28px}
.pag-cab p{font-size:17px}
.etq{color:var(--pri);letter-spacing:.1em;font-weight:700}
.cartao{border-radius:var(--r);border-color:var(--linha)}
.btn{border-radius:99px;font-weight:650}
.btn.fino{border-radius:99px}
.chip{border-radius:99px;font-weight:550}
.campo{border-radius:99px;padding:0 18px}
select.campo{padding-right:34px}
.abas{border-radius:99px;padding:4px}
.aba{border-radius:99px;font-weight:600}
.aba[aria-selected=true]{background:var(--pri-s);color:var(--pri-t)}
.selo{border-radius:99px;font-weight:700}
.estado{padding:14px 16px;border-radius:var(--r2);font-size:14px}
.estado>.ic{width:32px;height:32px;padding:7px;border-radius:99px}
.item{border-bottom-color:var(--linha)}
.item .tit{font-weight:600}
.hora{border-radius:14px}
.flut{background:var(--vidro);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:var(--b) solid var(--vidro-b);border-radius:var(--r)}
.camada[aria-checked=true]{color:var(--pri-t);background:var(--pri-s)}
.camada[aria-checked=true] .gl{background:rgba(11,59,44,.18)}
.camada[aria-checked=true] .gl svg{fill:var(--pri-t)}
.painel{background:var(--sup)}
.painel .bloco.heroi{background:linear-gradient(160deg,var(--sup2),var(--sup));color:var(--texto)}
.heroi .etq,.heroi .esfera{color:var(--pri)}
.heroi .sub{color:var(--texto2)}
.heroi .btn{background:var(--pri-s);color:var(--pri-t)}
/* aviso compacto de fontes atrasadas (em vez de caixas grandes no topo das listas) */
.aviso-fontes{margin:0 0 16px;font-size:13.5px;color:var(--texto2)}
.aviso-fontes summary{display:inline-flex;gap:8px;align-items:center;cursor:pointer;list-style:none;padding:6px 12px 6px 10px;border-radius:99px;background:var(--grana-f);color:var(--texto)}
.aviso-fontes summary::-webkit-details-marker{display:none}
.aviso-fontes summary .ic{color:var(--grana)}
.aviso-fontes summary u{text-decoration:none;color:var(--texto3);font-weight:600}
.aviso-fontes ul{margin:10px 0 0;padding-left:18px;line-height:1.6}
/* procedência recolhida */
details.proc{display:block}
details.proc>summary{display:flex;gap:6px 12px;flex-wrap:wrap;align-items:center;cursor:pointer;list-style:none}
details.proc>summary::-webkit-details-marker{display:none}
details.proc>summary .mais{color:var(--texto3);text-decoration:underline;text-decoration-color:var(--linha);text-underline-offset:3px}
details.proc[open]>summary .mais{display:none}
details.proc .proc-det{display:flex;gap:6px 14px;flex-wrap:wrap;margin-top:8px}
/* entrada suave das telas */
#conteudo>*{animation:entra .38s cubic-bezier(.2,.8,.2,1)}
@keyframes entra{from{opacity:0;transform:translateY(8px)}}
:root[data-anim=off] #conteudo>*{animation:none}

/* ══ Início ══ */
.ini{position:relative;height:100%;min-height:560px;overflow:hidden;isolation:isolate}
.ini-mapa{position:absolute;inset:0;z-index:0}
.ini-mapa.sem-3d{background:radial-gradient(60% 60% at 70% 55%,var(--sup2),transparent)}
.ini-veu{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,var(--fundo) 0%,color-mix(in srgb,var(--fundo) 88%,transparent) 30%,transparent 58%),radial-gradient(120% 70% at 50% 120%,var(--fundo) 10%,transparent 60%)}
.ini-col{position:absolute;z-index:2;left:0;top:0;bottom:0;width:min(600px,48vw);padding:calc(var(--topo) + 5vh) 24px 28px 56px;overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column;align-items:flex-start;pointer-events:none}
.ini-col>*{pointer-events:auto}
.ini-h1{font:800 clamp(56px,6.4vw,108px)/.9 var(--fh);letter-spacing:-.05em;font-stretch:94%;margin-top:14px}
.ini-cap{font-size:clamp(16px,1.25vw,19px);line-height:1.5;color:var(--texto2);max-width:460px;margin-top:20px}
.ini-busca{display:flex;align-items:center;gap:12px;width:min(480px,100%);height:60px;margin-top:28px;padding:0 9px 0 20px;border:0;border-radius:99px;background:var(--texto);color:var(--fundo);cursor:pointer;font-size:15.5px;font-weight:500;text-align:left;box-shadow:0 18px 40px -18px rgba(0,0,0,.6);transition:transform .2s}
.ini-busca:hover{transform:translateY(-1px)}
.ini-busca span{flex:1;opacity:.72}
.ini-busca em{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--pri-s);color:var(--pri-t);font-style:normal}
:root[data-theme=light] .ini-busca em{background:#FFD23F;color:#0B3B2C}
.ini-sub{font:700 12px/1 Inter,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--texto3);margin:36px 0 12px}
.ini-acoes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
.ini-acao{display:flex;gap:12px;align-items:flex-start;padding:12px 14px 12px 12px;border-radius:18px;background:color-mix(in srgb,var(--sup) 70%,transparent);border:var(--b) solid var(--vidro-b);color:var(--texto)!important;text-decoration:none!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .18s,transform .18s;animation:entra .5s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--k) * 60ms + 150ms)}
.ini-acao:hover{background:var(--sup2);transform:translateY(-2px)}
.ini-ic{position:relative;width:38px;height:38px;flex:none;border-radius:12px;display:grid;place-items:center;background:var(--pri-f);color:var(--pri)}
.ini-ic .ic{width:20px;height:20px}
.ini-ic .vivo-ponto{position:absolute;right:-2px;top:-2px;width:10px;height:10px;border-radius:50%;background:var(--alerta-s);border:2px solid var(--sup);animation:pulsoV 1.6s infinite}
.ini-acao b{display:block;font-size:14.5px;font-weight:650;line-height:1.25}
.ini-acao small{display:block;font-size:12.5px;line-height:1.35;color:var(--texto2);margin-top:3px}
.ini-live{display:inline-flex;align-items:center;gap:10px;max-width:100%;height:38px;padding:0 14px 0 12px;border-radius:99px;border:var(--b) solid color-mix(in srgb,var(--alerta-s) 45%,transparent);background:color-mix(in srgb,var(--alerta-s) 16%,transparent);color:var(--texto);cursor:pointer;font-size:13px;text-decoration:none!important}
.ini-live b{font-weight:800;letter-spacing:.08em;font-size:11.5px;color:var(--alerta)}
.ini-live span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:330px}
.ini-live .vivo-ponto{width:9px;height:9px;border-radius:50%;background:var(--alerta-s);flex:none;animation:pulsoV 1.6s infinite}
.ini-live.ag{border-color:var(--vidro-b);background:var(--sup)}.ini-live.ag b{color:var(--pri)}
.ini-camadas{position:absolute;z-index:3;right:28px;bottom:28px;display:flex;gap:6px;padding:6px;border-radius:99px;background:var(--vidro);border:var(--b) solid var(--vidro-b);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.ini-cam{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px 0 10px;border-radius:99px;border:0;background:none;color:var(--texto2);cursor:pointer;font-size:13.5px;font-weight:600;white-space:nowrap;text-decoration:none!important}
.ini-cam:hover{color:var(--texto);background:var(--sup2)}
.ini-cam .gl{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--cor) 22%,transparent)}
.ini-cam .gl svg{width:11px;height:11px;fill:var(--cor)}
.ini-cam[aria-checked=true]{background:var(--cor);color:#0B2A1F}
.ini-cam[aria-checked=true] .gl{background:rgba(11,42,31,.16)}.ini-cam[aria-checked=true] .gl svg{fill:#0B2A1F}
.ini-abrir{color:var(--texto);border-left:var(--b) solid var(--vidro-b);border-radius:0 99px 99px 0;padding-left:14px}
.ini-num{position:absolute;z-index:3;right:34px;bottom:92px;text-align:right;pointer-events:none}
.ini-num small{display:block;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--texto3);font-weight:700}
.ini-num b{font:800 34px/1.1 var(--fh);letter-spacing:-.03em;color:var(--texto)}
@media (max-width:1100px) and (min-width:861px){.ini-col{width:min(560px,56vw)}.ini-acoes{grid-template-columns:1fr}.ini-camadas .ini-cam span:not(.gl){display:none}.ini-camadas .ini-abrir span{display:inline}}
@media (max-width:860px){
  .ini{height:auto;min-height:0;overflow:visible;display:flex;flex-direction:column}
  .ini-veu{display:none}
  .ini-col{display:contents}
  #ini-vivo{order:1;padding:calc(var(--topo) + 6px) 18px 0}
  .ini-h1{order:2;padding:0 18px;font-size:clamp(54px,17vw,84px)}
  .ini-cap{order:3;padding:0 18px;font-size:16px;margin-top:14px}
  .ini-busca{order:4;margin:20px 18px 0;width:auto;height:56px}
  .ini-mapa{order:5;position:relative;inset:auto;height:min(54vh,460px);margin-top:6px;touch-action:pan-y}
  .ini-camadas{order:6;position:relative;right:auto;bottom:auto;margin:-6px 12px 0;overflow-x:auto;scrollbar-width:none;border-radius:99px;max-width:calc(100% - 24px);align-self:center}
  .ini-cam{height:38px;padding:0 12px 0 8px;font-size:13px}
  .ini-num{order:7;position:relative;right:auto;bottom:auto;text-align:center;margin-top:14px}
  .ini-num b{font-size:28px}
  .ini-sub{order:8;padding:0 18px;margin:30px 0 12px}
  .ini-acoes{order:9;grid-template-columns:1fr;padding:0 18px 110px}
}
#app{position:relative}

/* ══ Ao vivo: palco com o player oficial ══ */
.palco{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(260px,1fr);gap:22px;align-items:start}
.palco-tela{border-radius:var(--r);box-shadow:var(--sombra)}
.palco-lado h2{margin-top:12px;font-size:21px}
.palco-op{display:flex;gap:10px;align-items:flex-start;width:100%;padding:10px 12px;border-radius:14px;border:var(--b) solid var(--linha);background:none;cursor:pointer;text-align:left}
.palco-op[aria-pressed=true]{border-color:var(--alerta-s);background:var(--alerta-f)}
.palco-op .vivo-ponto{width:8px;height:8px;border-radius:50%;background:var(--alerta-s);margin-top:7px;flex:none}
.palco-op b{display:block;font-size:14px}.palco-op small{display:block;color:var(--texto2);font-size:12.5px;line-height:1.35}
.palco-vazio{grid-column:1/-1;display:flex;gap:16px;align-items:flex-start;padding:22px;border-radius:var(--r);background:var(--sup);border:var(--b) solid var(--linha)}
.palco-vazio>.ic{width:44px;height:44px;padding:11px;border-radius:50%;background:var(--sup2);color:var(--texto2)}
.palco-vazio b{display:block;font-size:16px;margin-bottom:4px}
.palco-ag{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:12px 14px;border-radius:14px;background:var(--sup2)}
.palco-ag .ic{color:var(--pri);margin-top:2px}.palco-ag small{color:var(--texto2)}
.mais-info{margin-top:22px;color:var(--texto2);font-size:14px}
.mais-info summary{display:inline-flex;gap:8px;align-items:center;cursor:pointer;color:var(--texto3);font-weight:600;list-style:none}
.mais-info summary::-webkit-details-marker{display:none}
.mais-info p{margin-top:10px;max-width:70ch;line-height:1.55}
@media (max-width:860px){.palco{grid-template-columns:1fr}}
.filtros-bt{display:none}
.mais-bloco{border-top:var(--b) solid var(--linha);padding:18px 0 0}
.mais-bloco>summary{cursor:pointer;font-weight:650;color:var(--texto);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:4px 0 14px}
.mais-bloco>summary::-webkit-details-marker{display:none}
.mais-bloco>summary::after{content:"+";font:600 20px/1 Inter;color:var(--pri)}
.mais-bloco[open]>summary::after{content:"–"}
@media (max-width:860px){
  .filtros.recolhivel{flex-wrap:wrap}
  .filtros.recolhivel .filtros-bt{display:inline-flex;order:2}
  .filtros.recolhivel .campo[type=search]{order:1;flex:1 1 60%}
  .filtros.recolhivel select,.filtros.recolhivel>.chip{display:none;order:3;width:100%}
  .filtros.recolhivel.aberto select,.filtros.recolhivel.aberto>.chip{display:flex}
  #inferior .nav-i{position:relative}
  #inferior .nav-i .vivo-ponto{position:absolute;top:3px;left:calc(50% + 12px);width:9px;height:9px;border-radius:50%;border:2px solid var(--fundo)}
}
