/* Radar Omni · parques e museus do Brasil em 3D (r73) */
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-display:swap;font-weight:200 800;src:url(fonts/bricolage-grotesque-latin-opsz-normal.woff2) format('woff2-variations'),url(fonts/bricolage-grotesque-latin-opsz-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-display:swap;font-weight:400 700;src:url(fonts/instrument-sans-latin-wght-normal.woff2) format('woff2-variations'),url(fonts/instrument-sans-latin-wght-normal.woff2) format('woff2')}

:root{
  --bg:#07110f; --vidro:rgba(7,17,16,.76); --vidro2:rgba(11,24,22,.92); --linha:rgba(196,232,214,.13); --linha2:rgba(196,232,214,.26);
  --tx:#eef5f1; --tx2:#a8bcb3; --tx3:#71857c;
  --pq:#8ff0b6; --pqe:#3fc6a2; --mu:#f4c35a; --fogo:#ff5b3a; --clima:#8cc8ff; --din:#c9a7ff; --alerta:#ffb547;
  --esq:340px; --dir:372px; --topo:68px; --r:16px;
  --sans:'Instrument Sans',system-ui,-apple-system,'Segoe UI',sans-serif; --disp:'Bricolage Grotesque','Instrument Sans',system-ui,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body.rd{background:var(--bg);color:var(--tx);font:14px/1.5 var(--sans);overflow:hidden;-webkit-font-smoothing:antialiased}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--pq);outline-offset:2px}
.rd-map{position:fixed;inset:0;background:radial-gradient(120% 90% at 50% 20%,#123029 0%,#07110f 62%)}
.rd-map.sem-mapa::after{content:"O mapa 3D precisa de WebGL. Os termômetros e as listas continuam funcionando.";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:var(--tx2);max-width:320px;text-align:center}
.maplibregl-ctrl-group{background:var(--vidro)!important;backdrop-filter:blur(12px);border:1px solid var(--linha);box-shadow:none!important}
.maplibregl-ctrl-group button span{filter:invert(1) brightness(1.4)}
.maplibregl-ctrl-attrib{background:rgba(7,17,16,.6)!important;color:var(--tx3)}
.maplibregl-ctrl-attrib a{color:var(--tx2)}
.maplibregl-popup-content{background:var(--vidro2);color:var(--tx);border:1px solid var(--linha2);border-radius:12px;padding:10px 12px;font:13px/1.4 var(--sans);box-shadow:0 18px 40px rgba(0,0,0,.45)}
.maplibregl-popup-tip{display:none}
.maplibregl-popup-content b{font-family:var(--disp);font-weight:600}
.maplibregl-popup-content small{display:block;color:var(--tx2)}

/* varredura de abertura: o único movimento que não responde ao leitor */
.rd-varredura{position:fixed;inset:0;pointer-events:none;z-index:4;opacity:0}
.rd-varredura.on{opacity:1;transition:opacity .25s}
.rd-varredura.fim{opacity:0;transition:opacity .9s ease}
.rd-varredura i{position:absolute;left:var(--cx,50%);top:var(--cy,50%);width:220vmax;height:220vmax;transform:translate(-50%,-50%) rotate(0deg);border-radius:50%;
  background:conic-gradient(from 0deg,rgba(143,240,182,0) 0deg,rgba(143,240,182,0) 300deg,rgba(143,240,182,.18) 350deg,rgba(220,255,236,.38) 360deg);
  mask:radial-gradient(circle,#000 0 34%,transparent 34.2%);-webkit-mask:radial-gradient(circle,#000 0 34%,transparent 34.2%)}
.rd-varredura.on i{animation:rd-gira 2.4s cubic-bezier(.45,.05,.3,1) forwards}
@keyframes rd-gira{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* topo */
.rd-top{position:fixed;left:12px;right:12px;top:10px;height:var(--topo);z-index:10;display:grid;grid-template-columns:auto auto 1fr minmax(260px,420px) auto;align-items:center;gap:14px;
  padding:0 14px;border-radius:18px;background:var(--vidro);border:1px solid var(--linha);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.rd-back-site{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 12px 0 8px;border-radius:12px;border:1px solid var(--linha);color:var(--tx2);text-decoration:none;font-size:13px}
.rd-back-site svg,.rd-voltar svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (hover:hover){.rd-back-site:hover{color:var(--tx);border-color:var(--linha2)}}
.rd-marca{display:flex;align-items:center;gap:10px;min-width:0}
.rd-glifo{width:38px;height:38px;flex:none}
.rd-glifo circle{fill:none;stroke:var(--pq);stroke-opacity:.5;stroke-width:1.2}
.rd-glifo-v{fill:var(--pq);opacity:.55;transform-origin:20px 20px;animation:rd-glifo 6s linear infinite}
@keyframes rd-glifo{to{transform:rotate(360deg)}}
.rd-marca h1{margin:0;font:600 21px/1 var(--disp);letter-spacing:-.01em}
.rd-marca p{margin:3px 0 0;color:var(--tx2);font-size:12.5px;white-space:nowrap}
.rd-filtro{justify-self:center;display:inline-flex;padding:4px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--linha)}
.rd-filtro button{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--tx2);font-weight:600;font-size:13px}
.rd-filtro button.on{background:rgba(255,255,255,.1);color:var(--tx)}
.pt{width:9px;height:9px;border-radius:50%;display:inline-block}
.pt.pq{background:var(--pq);box-shadow:0 0 8px var(--pq)}
.pt.mu{background:var(--mu);box-shadow:0 0 8px var(--mu)}
.rd-busca{position:relative;display:flex;align-items:center;height:40px;border-radius:12px;border:1px solid var(--linha);background:rgba(255,255,255,.04);padding:0 10px}
.rd-busca:focus-within{border-color:var(--linha2)}
.rd-busca svg{width:17px;height:17px;fill:none;stroke:var(--tx3);stroke-width:2;stroke-linecap:round;flex:none}
.rd-busca input{flex:1;min-width:0;height:100%;border:0;background:transparent;color:var(--tx);font:14px var(--sans);padding:0 8px;outline:none}
.rd-busca input::placeholder{color:var(--tx3)}
.rd-busca-lista{position:absolute;left:0;right:0;top:46px;margin:0;padding:6px;list-style:none;max-height:360px;overflow:auto;border-radius:14px;background:var(--vidro2);border:1px solid var(--linha2);box-shadow:0 18px 40px rgba(0,0,0,.5)}
.rd-busca-lista li{display:grid;grid-template-columns:12px 1fr auto;gap:10px;align-items:center;padding:8px 10px;border-radius:9px;cursor:pointer}
.rd-busca-lista li[aria-selected="true"],.rd-busca-lista li:hover{background:rgba(255,255,255,.07)}
.rd-busca-lista li small{color:var(--tx3);font-size:12px}
.rd-busca-lista .pt.uf{background:#d7e6df}
.rd-relogio{display:grid;justify-items:end;line-height:1.1}
.rd-live{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.06em;color:var(--fogo)}
.rd-live i{width:7px;height:7px;border-radius:50%;background:var(--fogo);animation:rd-pisca 1.6s ease-in-out infinite}
@keyframes rd-pisca{50%{opacity:.25}}
.rd-relogio b{font:600 20px/1.1 var(--disp);font-variant-numeric:tabular-nums}
.rd-relogio small{color:var(--tx3);font-size:11.5px}

/* trilha e botão voltar */
.rd-trilha{position:fixed;z-index:9;left:calc(var(--esq) + 28px);top:calc(var(--topo) + 22px);display:flex;align-items:center;gap:4px;font-size:13px}
.rd-trilha button{border:0;background:var(--vidro);backdrop-filter:blur(12px);border:1px solid var(--linha);border-radius:999px;padding:5px 12px;color:var(--tx2);max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rd-trilha button:last-child{color:var(--tx);border-color:var(--linha2)}
.rd-trilha span{color:var(--tx3)}
.rd-voltar{position:fixed;z-index:9;left:50%;bottom:72px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 20px 0 14px;border-radius:999px;
  border:1px solid rgba(143,240,182,.45);background:rgba(7,17,16,.86);backdrop-filter:blur(14px);color:var(--tx);font-weight:600;box-shadow:0 12px 30px rgba(0,0,0,.45),0 0 0 6px rgba(143,240,182,.08)}
.rd-voltar[hidden]{display:none}
@media (hover:hover){.rd-voltar:hover{border-color:var(--pq)}}

/* painéis */
.rd-painel{position:fixed;z-index:8;top:calc(var(--topo) + 22px);bottom:58px;border-radius:var(--r);background:var(--vidro);border:1px solid var(--linha);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;flex-direction:column;overflow:hidden}
.rd-esq{left:12px;width:var(--esq)}
.rd-dir{right:12px;width:var(--dir)}
.rd-tit{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:14px 16px 8px}
.rd-tit h2{margin:0;font:600 17px/1.2 var(--disp)}
.rd-tit span{color:var(--tx3);font-size:12px;text-align:right}
.rd-termos{overflow:auto;padding:0 12px 14px;display:grid;gap:10px;align-content:start}
.sk{height:118px;border-radius:12px;background:linear-gradient(90deg,rgba(255,255,255,.03),rgba(255,255,255,.07),rgba(255,255,255,.03));background-size:200% 100%;animation:rd-sk 1.4s linear infinite}
@keyframes rd-sk{to{background-position:-200% 0}}
.tm{border:1px solid var(--linha);border-radius:12px;padding:12px 13px;background:rgba(255,255,255,.025)}
.tm h3{margin:0 0 6px;font:600 13px/1.3 var(--sans);color:var(--tx2);display:flex;align-items:center;gap:8px}
.tm h3 .pt{width:8px;height:8px}
.tm .v{font:600 28px/1.05 var(--disp);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.tm .v small{font:500 13px var(--sans);color:var(--tx2);margin-left:4px}
.tm p{margin:6px 0 0;color:var(--tx2);font-size:12.5px}
.tm .f{margin-top:8px;color:var(--tx3);font-size:11px}
.tm .grade{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin-top:8px}
.tm .grade div{display:grid}
.tm .grade b{font:600 16px/1.2 var(--disp);font-variant-numeric:tabular-nums}
.tm .grade span{color:var(--tx3);font-size:11.5px}
.barra{position:relative;height:9px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden;margin-top:9px;display:flex}
.barra i{display:block;height:100%}
.leg{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:6px;color:var(--tx3);font-size:11.5px}
.leg span{display:inline-flex;align-items:center;gap:5px}
.leg i{width:8px;height:8px;border-radius:2px;display:inline-block}
.spark{display:block;width:100%;height:40px;margin-top:8px}
.spark path.l{fill:none;stroke-width:1.6}
.indisp{color:var(--tx3);font-size:12.5px}

.rd-agora{display:flex;flex-direction:column;min-height:0;flex:1}
.rd-agora[hidden]{display:none}
.rd-tabs{display:flex;gap:4px;padding:0 12px 8px}
.rd-tabs button{flex:1;height:32px;border-radius:9px;border:1px solid var(--linha);background:transparent;color:var(--tx2);font-size:12.5px;font-weight:600}
.rd-tabs button.on{background:rgba(255,255,255,.08);color:var(--tx);border-color:var(--linha2)}
.rd-lista{list-style:none;margin:0;padding:0 8px 12px;overflow:auto;flex:1}
.rd-lista li button{width:100%;display:grid;grid-template-columns:1fr auto;gap:2px 10px;text-align:left;border:0;background:transparent;padding:9px 8px;border-radius:10px}
@media (hover:hover){.rd-lista li button:hover{background:rgba(255,255,255,.05)}}
.rd-lista b{font-weight:600;font-size:13.5px}
.rd-lista small{color:var(--tx3);font-size:12px;grid-column:1}
.rd-lista em{font-style:normal;font:600 15px var(--disp);grid-row:1/span 2;grid-column:2;align-self:center;font-variant-numeric:tabular-nums}
.rd-lista .vazio{padding:16px 10px;color:var(--tx3)}

.rd-ficha{overflow:auto;padding:0 0 16px;flex:1}
.rd-ficha[hidden]{display:none}
.fx-cab{position:sticky;top:0;z-index:1;padding:14px 16px 12px;background:linear-gradient(var(--vidro2) 82%,transparent)}
.fx-fechar{float:right;width:30px;height:30px;border-radius:9px;border:1px solid var(--linha);background:transparent;color:var(--tx2);font-size:18px;line-height:1}
.fx-tipo{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;letter-spacing:.04em;color:var(--pq)}
.fx-tipo.mu{color:var(--mu)}
.fx-cab h2{margin:6px 0 2px;font:600 20px/1.2 var(--disp)}
.fx-cab p{margin:0;color:var(--tx2);font-size:12.5px}
.fx-sec{padding:4px 16px 10px}
.fx-sec h3{margin:10px 0 6px;font:600 13px var(--sans);color:var(--tx2)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:99px;font-size:12px;border:1px solid var(--linha);color:var(--tx2)}
.chip.sim{border-color:rgba(143,240,182,.4);color:var(--pq)}
.chip.nao{border-color:rgba(255,181,71,.4);color:var(--alerta)}
.nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.nums div{border:1px solid var(--linha);border-radius:10px;padding:8px 9px;display:grid;min-width:0;align-content:start}
.nums b{font:600 17px/1.15 var(--disp);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nums b.txt{font-size:14px;white-space:normal;overflow-wrap:anywhere}
.nums span{color:var(--tx3);font-size:11px}
.fx-not{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.fx-not a{display:block;padding:8px 10px;border-radius:10px;border:1px solid var(--linha);color:var(--tx);text-decoration:none;font-size:13px}
.fx-not small{display:block;color:var(--tx3);font-size:11.5px;margin-top:2px}
@media (hover:hover){.fx-not a:hover{border-color:var(--linha2)}}
.fx-nota{color:var(--tx3);font-size:11.5px;margin-top:6px}

.rd-abas{display:none}
.rd .maplibregl-ctrl-bottom-right{right:calc(var(--dir) + 20px);bottom:62px}
.rd-rodape{position:fixed;z-index:7;left:calc(var(--esq) + 28px);right:calc(var(--dir) + 28px);bottom:10px;color:var(--tx3);font-size:11px;text-align:center;text-shadow:0 1px 3px #000;pointer-events:none}

/* tablet: painéis mais estreitos */
@media (max-width:1280px){:root{--esq:300px;--dir:330px}.rd-marca p{display:none}.rd-top{grid-template-columns:auto auto 1fr minmax(200px,320px) auto}}
@media (max-width:1060px){.rd-relogio{display:none}.rd-top{grid-template-columns:auto auto 1fr minmax(180px,280px)}}

/* celular: mapa em cima, abas embaixo */
@media (max-width:820px){
  :root{--topo:auto}
  body.rd{overflow:auto;display:flex;flex-direction:column;height:auto;min-height:100%}
  body.rd>*{flex-shrink:0}
  .rd-top{order:1}.rd-map{order:2}.rd-trilha{order:3}.rd-abas{order:4}.rd-esq{order:5}.rd-dir{order:6}.rd-rodape{order:7}
  .rd-map{position:relative;height:58vh;min-height:360px}
  .rd-top{position:sticky;top:0;left:0;right:0;margin:0;border-radius:0;height:auto;padding:10px 12px;grid-template-columns:1fr auto;grid-template-areas:"marca busca" "filtro filtro"}
  .rd-back-site{display:none}
  .rd-marca{grid-area:marca}
  .rd-marca h1{font-size:19px}
  .rd-busca{grid-column:1/-1;grid-row:3}
  .rd-filtro{grid-area:filtro;justify-self:stretch;display:flex}
  .rd-filtro button{flex:1;justify-content:center}
  .rd-relogio{display:none}
  .rd-trilha{position:static;margin:0;padding:8px 12px 0;flex-wrap:wrap}
  .rd-voltar{position:fixed;bottom:16px;white-space:nowrap;max-width:calc(100% - 24px)}
  .rd-abas{display:flex;gap:6px;padding:10px 12px;position:sticky;top:0;z-index:5;background:var(--bg)}
  .rd-abas button{flex:1;height:38px;border-radius:10px;border:1px solid var(--linha);background:transparent;color:var(--tx2);font-weight:600}
  .rd-abas button.on{background:rgba(255,255,255,.08);color:var(--tx)}
  .rd-painel{position:static;width:auto;margin:0 12px 12px;max-height:none;backdrop-filter:none;background:var(--vidro2)}
  .rd-esq,.rd-dir{width:auto}
  .rd-painel.oculto{display:none}
  .rd .maplibregl-ctrl-bottom-right{right:0;bottom:0}
  .rd-rodape{position:static;margin:4px 16px 90px;text-align:left;text-shadow:none}
  .rd-termos{overflow:visible}
  .rd-lista{overflow:visible}
}
@media (prefers-reduced-motion:reduce){.rd-glifo-v,.rd-live i,.sk{animation:none}.rd-varredura{display:none}}
