:root{
  --bg:#080d1a;--bg2:#0e1630;--txt:#f1f4fb;--mut:#8d99b5;--line:rgba(255,255,255,.09);
  --l:#ff3b52;--f:#009c3b;--gold:#ffc83d;
  --live:#3ddc84;--live-bg:rgba(61,220,132,.14);--gold-bg:rgba(255,200,61,.14);
  --foto-l1:#6b0f1c;--foto-l2:#2a0a14;--foto-f1:#0b4a25;--foto-f2:#06210f;
  --cinza-1:#c4cde2;--cinza-n:#2a3350;--mapa-vazio:#2a343b;--card:rgba(255,255,255,.04);
  --disp:'Big Shoulders Display','Arial Narrow',Impact,sans-serif;--body:'Instrument Sans',system-ui,sans-serif}
*{box-sizing:border-box;margin:0}
body{background:radial-gradient(1200px 700px at 0% 0%,rgba(255,59,82,.14),transparent 60%),radial-gradient(1200px 700px at 100% 100%,rgba(0,156,59,.16),transparent 60%),var(--bg);
  color:var(--txt);font-family:var(--body);min-height:100vh}
#app{display:grid;grid-template-columns:minmax(420px,520px) 1fr;gap:28px;max-width:1600px;margin:0 auto;padding:24px}
#painel{display:flex;flex-direction:column;gap:18px}
.topo{display:flex;justify-content:space-between;align-items:center}
.marca{font:700 26px var(--disp);letter-spacing:.02em;color:var(--mut)}.marca b{color:var(--txt);font-weight:900}
.status{display:flex;gap:12px;align-items:center}
.tag{font:800 15px var(--disp);letter-spacing:.08em;padding:5px 12px 4px;border-radius:99px;background:var(--live-bg);color:var(--live)}
.tag::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;margin-right:8px;animation:pulso 1.6s infinite}
.tag.off{background:var(--gold-bg);color:var(--gold)}
@keyframes pulso{50%{opacity:.25}}
.hora{font:700 22px var(--disp);color:var(--mut);font-variant-numeric:tabular-nums}
.secoes-t{display:flex;align-items:baseline;gap:10px}.secoes-t b{font:900 46px/1 var(--disp)}.secoes-t span{color:var(--mut)}.secoes-t em{margin-left:auto;font-style:normal;color:var(--mut);font-size:13px}
.trilho{height:6px;background:var(--line);border-radius:3px;margin-top:8px;overflow:hidden}.trilho i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--l),var(--gold),var(--f));transition:width 1.2s}

.duelo{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cand{display:flex;flex-direction:column;gap:10px}.cand.f{text-align:right;align-items:flex-end}
.foto{position:relative;overflow:hidden;border-radius:22px;aspect-ratio:1/1.05;width:100%;display:grid;place-items:center;font:900 120px var(--disp);color:rgba(255,255,255,.25)}
.cand.l .foto,.pl.l .foto{background:linear-gradient(160deg,var(--foto-l1),var(--foto-l2));box-shadow:inset 0 -8px 0 var(--l)}
.cand.f .foto,.pl.f .foto{background:linear-gradient(200deg,var(--foto-f1),var(--foto-f2));box-shadow:inset 0 -8px 0 var(--f)}
.foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;z-index:1}
.nome{font:900 40px/1 var(--disp)}.sub{color:var(--mut);font-size:14px;margin-top:2px}

.medidor{margin-top:-4px}#gauge{width:100%;display:block}
.gt{fill:var(--mut);font:600 12px var(--body)}
#agulha{transition:transform 1.2s cubic-bezier(.25,1.5,.4,1);transform-origin:200px 205px}
.legenda-proj{text-align:center;color:var(--mut);font-size:12px;margin-top:-6px}

.proj-par{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.proj .rot,.oficial .rot{font-size:13px;color:var(--mut);display:block}
.proj .big{font:900 82px/.95 var(--disp);font-variant-numeric:tabular-nums}
.proj.l .big{color:var(--l)}.proj.f .big{color:var(--f);text-align:right}.proj.f{text-align:right}
.v{color:var(--mut);font-size:14px;margin-top:4px}
.oficial{display:grid;grid-template-columns:1fr 1fr;gap:14px;border-top:1px solid var(--line);padding-top:12px}
.oficial b{font:800 34px var(--disp);color:var(--cinza-1);display:block}.oficial i{font-style:normal;color:var(--mut);font-size:13px}.oficial .r{text-align:right}
.aviso{font-size:12px;color:var(--mut);min-height:16px}

#palco{display:flex;flex-direction:column;gap:24px}
.slide{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border:1px solid var(--line);border-radius:28px;padding:30px}
.slide-t h2{font:900 56px/1 var(--disp)}.slide-t p{color:var(--mut);margin:8px 0 10px;max-width:60ch}
#mapa svg{width:100%;max-height:660px;filter:drop-shadow(0 20px 40px rgba(0,0,0,.45))}
#mapa path{stroke:var(--bg);stroke-width:1;transition:fill .8s}
#mapa text{fill:#fff;font:800 15px var(--disp);text-anchor:middle;pointer-events:none;opacity:.85;paint-order:stroke;stroke:rgba(0,0,0,.45);stroke-width:3px}
.chave{display:flex;gap:10px;align-items:center;color:var(--mut);font-size:14px}.chave i{width:14px;height:14px;border-radius:4px;display:inline-block;margin-left:12px}
.chave .l{background:var(--l)}.chave .f{background:var(--f)}.chave .n{background:var(--cinza-n)}
.poly{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:18px}
.pl .foto{aspect-ratio:1/.62;font-size:90px;margin-bottom:12px}
.pn{font:800 38px var(--disp)}.pp{font:900 130px/1 var(--disp);font-variant-numeric:tabular-nums}
.pl.l .pp{color:var(--l)}.pl.f .pp{color:var(--f)}
.barra{height:14px;background:var(--line);border-radius:7px;overflow:hidden;margin-top:8px}.barra i{display:block;height:100%;width:0;background:var(--l);transition:width 1.2s}.pl.f .barra i{background:var(--f)}
.nota{color:var(--mut)}
#patro{display:grid;place-items:center;min-height:380px}#patro img,#patro video{max-width:90%;max-height:520px;object-fit:contain}
@media(max-width:960px){#app{grid-template-columns:1fr}.foto{font-size:70px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ===== MODO TV (?tv=1): 1920x1080 ===== */
body.tv{overflow:hidden;cursor:none;height:100vh}
.tv #app{max-width:none;height:100vh;padding:28px;grid-template-columns:700px 1fr;gap:32px}
.tv #painel{justify-content:space-between;gap:0}
.tv .foto{aspect-ratio:1/.78;border-radius:26px}
.tv .nome{font-size:54px}.tv .sub{font-size:18px}.tv .marca{font-size:32px}.tv .secoes-t b{font-size:60px}
.tv .proj .big{font-size:118px}.tv .proj .rot,.tv .oficial .rot{font-size:16px}.tv .v{font-size:18px}
.tv .oficial b{font-size:50px}.tv .oficial i{font-size:16px}.tv .aviso{font-size:15px}
.tv #palco{display:block;position:relative}
.tv .slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .9s;display:flex;flex-direction:column;padding:44px}
.tv .slide.on{opacity:1}
.tv .slide-t h2{font-size:84px}.tv .slide-t p{font-size:22px}
.tv #mapa{flex:1;display:grid;place-items:center;min-height:0}.tv #mapa svg{max-height:74vh}
.tv .poly{flex:1;align-content:center}.tv .pp{font-size:230px}.tv .pn{font-size:64px}.tv .pl .foto{aspect-ratio:1/.5}
.tv .barra{height:22px}.tv .chave{font-size:18px}
.tv #patro{flex:1}.tv #patro img,.tv #patro video{max-height:70vh;max-width:95%}
.creditos{font-size:10px;color:var(--mut);opacity:.7}
.tv .foto{aspect-ratio:1/.58}.tv .nome{font-size:44px}.tv .proj .big{font-size:96px}.tv .oficial b{font-size:40px}.tv #gauge{max-height:250px}
.tv #painel{gap:6px}.tv .medidor{margin-top:0}
.cand.f .foto img,.pl.f .foto img{object-position:62% 25%}

/* ===== contagem, linha do tempo, regiões, rodapé ===== */
.mini-ct{font-size:13px;color:var(--mut);border-top:1px solid var(--line);padding-top:8px;font-variant-numeric:tabular-nums}.mini-ct b{color:var(--txt);font-weight:600}
.transp{font-size:12px;color:var(--mut);line-height:1.5}
.ct{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:14px;min-height:300px}
.ct .ct-rot{font:800 34px var(--disp);letter-spacing:.06em;color:var(--mut);text-transform:uppercase}
.ct .ct-big{font:900 clamp(80px,12vw,200px)/1 var(--disp);font-variant-numeric:tabular-nums;color:var(--txt)}
.ct .ct-big.live{color:var(--live)}
.ct .ct-sub{color:var(--mut);font-size:20px;max-width:46ch}
.ct .ct-meta{display:flex;gap:28px;flex-wrap:wrap;justify-content:center;color:var(--cinza-1);font-size:18px}
#tempo{flex:1;min-height:0;display:flex;flex-direction:column}
#tempo svg{width:100%;flex:1;min-height:0;max-height:640px;display:block}
.vazio{flex:1;display:grid;place-items:center;color:var(--mut);font-size:22px;text-align:center;min-height:240px}
.gx{stroke:var(--line);stroke-width:1}.g50{stroke:var(--gold);stroke-width:1.5;stroke-dasharray:6 6;opacity:.8}
.gl-l{stroke:var(--l)}.gl-f{stroke:var(--f)}.gl-l,.gl-f{fill:none;stroke-width:4;stroke-linejoin:round;stroke-linecap:round}
.gtx{fill:var(--mut);font:500 15px var(--body)}.gtl{fill:var(--l);font:900 26px var(--disp)}.gtf{fill:var(--f);font:900 26px var(--disp)}
.gmk{stroke:var(--cinza-1);stroke-width:1;stroke-dasharray:2 4;opacity:.6}.gmt{fill:var(--cinza-1);font:600 14px var(--body);text-anchor:middle}
.gtr-bg{fill:var(--line)}.gtr{fill:var(--live);opacity:.85}
.chave-t{display:flex;gap:18px;flex-wrap:wrap;color:var(--mut);font-size:15px;margin-top:6px}.chave-t i{display:inline-block;width:22px;height:4px;border-radius:2px;margin-right:6px;vertical-align:middle}
.part{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:8px 0 18px}
.part div{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px 14px}
.part span{display:block;color:var(--mut);font-size:14px}.part b{font:900 44px/1.1 var(--disp);font-variant-numeric:tabular-nums}
.reg{display:grid;gap:12px}.reg-r{display:grid;grid-template-columns:150px 1fr 260px;gap:14px;align-items:center}
.reg-n{font:800 28px var(--disp)}.reg-b{height:18px;background:var(--line);border-radius:9px;overflow:hidden}.reg-b i{display:block;height:100%;background:var(--cinza-n);transition:width 1.2s}
.reg-b i.l{background:var(--l)}.reg-b i.f{background:var(--f)}
.reg-l{font-size:16px;color:var(--mut);text-align:right;font-variant-numeric:tabular-nums}.reg-l b{color:var(--txt);font-weight:600}
.tv .mini-ct{font-size:16px}.tv .transp{font-size:14px}
.tv .ct .ct-big{font-size:230px}.tv .ct .ct-rot{font-size:46px}.tv .ct .ct-sub{font-size:26px}.tv .ct .ct-meta{font-size:22px}
.tv #tempo svg{max-height:none}.tv .part b{font-size:56px}.tv .part span{font-size:17px}.tv .reg-n{font-size:36px}.tv .reg-l{font-size:20px}.tv .reg-b{height:24px}.tv .reg-r{grid-template-columns:200px 1fr 340px}
@media(max-width:1300px){body:not(.tv) .part{grid-template-columns:repeat(2,1fr)}body:not(.tv) .reg-r{grid-template-columns:100px 1fr}body:not(.tv) .reg-l{grid-column:1/-1;text-align:left}}
.tv .pp{font-size:200px}.tv .poly{gap:16px}.tv .pl{min-width:0}
.sobre{font-size:11px;color:var(--mut)}.tv .sobre{display:none}

/* ===== PAINEL (referência apuralogo: foto redonda ao lado do medidor) ===== */
#painel{gap:12px}
.p-top{display:flex;justify-content:space-between;align-items:center}
.p-secoes{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.p-secoes b{font:900 44px/1 var(--disp)}.p-secoes span{color:var(--mut)}
.tag-ext{margin-left:auto;font:800 14px var(--disp);letter-spacing:.06em;font-style:normal;padding:4px 10px 3px;border-radius:6px;background:rgba(255,200,61,.14);color:var(--gold)}
.tag-ext[hidden]{display:none}
.p-nomes{display:flex;justify-content:space-between;align-items:flex-end}
.p-nomes .n.f{text-align:right}.p-nomes .nome{font:900 40px/1 var(--disp)}.p-nomes .sub{color:var(--mut);font-size:14px;margin-top:2px}
.p-medidor{display:grid;grid-template-columns:76px 1fr 76px;align-items:center;gap:8px}
.av{position:relative;width:76px;height:76px;border-radius:50%;overflow:hidden;border:4px solid;display:grid;place-items:center;font:900 34px var(--disp);color:rgba(255,255,255,.3)}
.av.l{border-color:var(--l);background:#3a0f18}.av.f{border-color:var(--f);background:#08331a}
.av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.av.f img{object-position:62% 25%}
.p-medidor #gauge{width:100%}
.proj{border:3px solid;border-radius:14px;padding:12px 16px}
.proj.l{border-color:var(--l)}.proj.f{border-color:var(--f)}
.proj .rot{font-weight:600;font-size:14px}.proj.l .rot{color:var(--l)}.proj.f .rot{color:var(--f)}
.proj .big{font-size:68px}
.oficial{border-top:0;padding-top:0}
.oficial .of{background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:14px;padding:12px 16px}
.oficial b{color:#aab4c9;font-size:40px}
.dist-t{font-size:13px;color:var(--mut);margin-bottom:5px}
.dist-b{display:flex;height:12px;border-radius:6px;overflow:hidden;background:var(--line)}
.dist-b i{display:block;height:100%;transition:width 1s}.dist-b .l{background:var(--l);width:50%}.dist-b .f{background:var(--f);width:50%}
.tv #painel{justify-content:flex-start;gap:12px}
.tv .p-secoes b{font-size:58px}.tv .p-nomes .nome{font-size:50px}.tv .p-nomes .sub{font-size:18px}
.tv .p-medidor{grid-template-columns:96px 1fr 96px}.tv .av{width:96px;height:96px;font-size:42px}
.tv .proj .big{font-size:96px}.tv .proj .rot{font-size:17px}.tv .oficial b{font-size:50px}.tv .oficial .rot{font-size:15px}
.tv .oficial i{font-size:16px}.tv .legenda-proj{font-size:16px}
.p-titulo{font:900 34px/1 var(--disp);margin:0;letter-spacing:.01em}.tv .p-titulo{font-size:46px}
.tv #painel{gap:8px}.tv .p-titulo{font-size:40px}.tv .proj .big{font-size:84px}.tv .oficial b{font-size:42px}.tv .proj{padding:8px 16px}.tv .oficial .of{padding:8px 16px}
#prox{display:none}
.tv #prox{display:flex;align-items:center;gap:16px;position:absolute;left:0;right:0;bottom:0;height:40px;color:var(--mut);font-size:16px}
.tv .prox-b{flex:1;height:8px;background:var(--line);border-radius:4px;overflow:hidden}
.tv .prox-b i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--l),var(--gold),var(--f));border-radius:4px}
.tv .slide{bottom:52px}
#nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:10px 12px;position:sticky;top:0;z-index:20;background:rgba(8,13,26,.88);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
#nav button{font:600 14px var(--body);color:var(--txt);background:rgba(255,255,255,.07);border:1px solid var(--line);border-radius:99px;padding:7px 16px;cursor:pointer}
#nav button:hover,#nav button:focus-visible{background:rgba(255,255,255,.16);outline:2px solid var(--gold);outline-offset:1px}
.tv #nav{position:fixed;left:50%;top:10px;transform:translate(-50%,-140%);opacity:0;transition:opacity .25s,transform .25s;border:1px solid var(--line);border-radius:99px;pointer-events:none;width:auto;z-index:50}
.tv #nav.vis{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.rodape{font-size:11px;line-height:1.35;color:var(--mut);opacity:.8}.rod-longo{display:inline}.rod-curto{display:none}
.tv .rod-longo{display:none}.tv .rod-curto{display:inline}.tv .creditos{display:none}
.tv .rodape{display:none}.tv .creditos{display:block}
.rodape{margin-top:6px}
.mapa-faixa{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;margin:10px 0 6px}
.mf-t{display:flex;align-items:baseline;gap:10px}.mf-t b{font:900 48px/1 var(--disp)}.mf-t span{color:var(--mut)}
.mf-rel{text-align:right}.mf-rel span{display:block;color:var(--mut);font-size:15px}.mf-rel b{font:900 54px/1 var(--disp);font-variant-numeric:tabular-nums;color:var(--gold)}.mf-rel small{display:block;color:var(--mut);font-size:13px}
.tv .mf-t b{font-size:68px}.tv .mf-rel b{font-size:84px}.tv .mf-rel span{font-size:20px}.tv .mf-rel small{font-size:16px}.tv .mapa-faixa .trilho{height:14px;margin-top:10px}
.tv #mapa svg{max-height:60vh}
.tv #mapa svg{max-height:54vh}
.p-top .p-titulo{font-size:34px}.tv .p-top .p-titulo{font-size:44px}.p-top{gap:12px}
#noticia{display:none}
.tv #noticia{display:block;position:absolute;right:24px;bottom:64px;width:min(760px,70%);padding:20px 26px;border-radius:18px;background:rgba(14,22,48,.96);border:1px solid var(--line);border-left:8px solid var(--gold);box-shadow:0 20px 60px rgba(0,0,0,.55);transform:translateY(30px);opacity:0;pointer-events:none;transition:opacity .5s,transform .5s;z-index:30}
.tv #noticia.on{opacity:1;transform:none}
.nt-fonte{font:800 20px var(--disp);letter-spacing:.06em;color:var(--gold);text-transform:uppercase}
.nt-titulo{font:700 34px/1.18 var(--disp);margin:6px 0 8px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nt-meta{font-size:15px;color:var(--mut)}
@media(prefers-reduced-motion:reduce){#noticia{transition:none}}

/* ---- linha do tempo (tl-) ---- */
.tl-gx{stroke:var(--line);stroke-width:1}.tl-gv{stroke:var(--line);stroke-width:1;opacity:.45}
.tl-g50{stroke:var(--gold);stroke-width:1.5;stroke-dasharray:2 6;stroke-linecap:round;opacity:.85}
.tl-tx{fill:var(--mut);font:500 15px var(--body)}
.tl-ol,.tl-of,.tl-pl,.tl-pg{fill:none;stroke-linejoin:round;stroke-linecap:round;transition:d .8s ease}
.tl-ol{stroke:var(--l);stroke-width:4}.tl-of{stroke:var(--f);stroke-width:4}
.tl-pl{stroke:#fff;stroke-width:4.5}.tl-pg{stroke:#fff;stroke-width:10;opacity:.22;filter:blur(3px)}
.tl-pd{stroke:#fff;stroke-width:3;stroke-dasharray:3 9;stroke-linecap:round;opacity:.9;filter:drop-shadow(0 0 3px rgba(255,255,255,.7));transition:all .8s ease}
.tl-dot{fill:#fff;filter:drop-shadow(0 0 6px rgba(255,255,255,.9));transition:cx .8s,cy .8s}
.tl-ring{fill:none;stroke:#fff;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:tl-pulse 2s ease-out infinite;transition:cx .8s,cy .8s}
.tl-dl{fill:var(--l)}.tl-df{fill:var(--f)}.tl-dl,.tl-df{transition:cx .8s,cy .8s}
@keyframes tl-pulse{0%{transform:scale(.8);opacity:.9}100%{transform:scale(3);opacity:0}}
@media (prefers-reduced-motion:reduce){.tl-ring{animation:none;opacity:.5}.tl-ol,.tl-of,.tl-pl,.tl-pg,.tl-pd,.tl-dot{transition:none}}
.tl-pt{fill:#fff;font:800 22px var(--disp)}
.tl-lp,.tl-ll,.tl-lf{font:900 26px var(--disp)}.tl-lp{fill:#fff}.tl-ll{fill:var(--l)}.tl-lf{fill:var(--f)}
.tl-trbg{fill:var(--line)}.tl-tr{fill:var(--live);opacity:.85}
.tl-k-p{background:#fff;box-shadow:0 0 6px rgba(255,255,255,.8)}.tl-k-5{background:repeating-linear-gradient(90deg,var(--gold) 0 3px,transparent 3px 7px)}

/* fotos 600x720 (5:6): nunca cortar cabeça — avatares com foco no rosto; slide Polymarket mostra a foto inteira */
.av img{object-fit:cover;object-position:50% 18%}
.av.f img{object-position:50% 20%}
.cand.l .foto img,.cand.f .foto img{object-position:50% 20%}
.pl .foto img{object-fit:contain;object-position:50% 50%}
.tv #noticia{right:auto;left:24px;width:min(640px,60%);padding:16px 22px}.tv .nt-titulo{font-size:30px;-webkit-line-clamp:2}

/* ===== TV 2026-10-25 (noite): faixa de notícias, tabela do mapa, Polymarket com líder, linha do tempo nova, partículas ===== */
#fx{display:none}
.tv #fx{display:block;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:5}
/* notícias: faixa fixa no rodapé do palco, acima da barra "próxima tela"; slides terminam acima dela */
#ntv{display:none}
.tv.tv-nt .slide{bottom:144px}
.tv #ntv{display:block;position:absolute;left:0;bottom:50px;height:84px;width:min(900px,80%);z-index:30;opacity:0;transform:translateY(10px);transition:opacity .6s,transform .6s;pointer-events:none}
.tv #ntv.on{opacity:1;transform:none}
.ntv-in{height:100%;display:grid;grid-template-columns:200px minmax(0,1fr);gap:18px;align-items:center;padding:0 22px 0 0;background:rgba(14,22,48,.94);border:1px solid var(--line);border-left:6px solid var(--gold);border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.ntv-lado{display:flex;flex-direction:column;justify-content:center;gap:3px;height:100%;padding-left:16px;border-right:1px solid var(--line);min-width:0}
.ntv-fonte{font:800 20px/1.05 var(--disp);letter-spacing:.06em;text-transform:uppercase;color:var(--gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ntv-idade{font-size:15px;color:var(--mut)}
.ntv-pos{display:flex;gap:5px;margin-top:3px}.ntv-pos i{width:20px;height:3px;border-radius:2px;background:rgba(255,255,255,.18)}.ntv-pos i.on{background:var(--gold)}
.ntv-titulo{font:700 27px/1.1 var(--disp);letter-spacing:.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ntv-lado,.ntv-titulo{transition:opacity .45s,transform .45s}
.tv #ntv.troca .ntv-lado,.tv #ntv.troca .ntv-titulo{opacity:0;transform:translateY(-8px)}

/* slide do mapa: título + relógio na 1ª linha, % apurado, mapa menor e tabela por UF abaixo */
.tv .slide[data-slide="mapa"]{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto minmax(0,1fr) auto;column-gap:24px;row-gap:6px;padding:26px 36px 22px}
.tv .slide[data-slide="mapa"] .slide-t{grid-column:1;grid-row:1}
.tv .slide[data-slide="mapa"] .slide-t h2{font-size:64px}
.tv .slide[data-slide="mapa"] .slide-t p{font-size:18px;margin:4px 0 0}
.tv .slide[data-slide="mapa"] .mapa-faixa{display:contents}
.tv .slide[data-slide="mapa"] .mf-rel{grid-column:2;grid-row:1;align-self:center}
.tv .slide[data-slide="mapa"] .mf-rel b{font-size:66px}.tv .slide[data-slide="mapa"] .mf-rel span{font-size:17px}.tv .slide[data-slide="mapa"] .mf-rel small{font-size:14px}
.tv .slide[data-slide="mapa"] .mf-barra{grid-column:1/-1;grid-row:2}
.tv .slide[data-slide="mapa"] .mf-t b{font-size:46px}
.tv .slide[data-slide="mapa"] .mapa-faixa .trilho{height:10px;margin-top:6px}
.tv .slide[data-slide="mapa"] #mapa{grid-column:1/-1;grid-row:3;min-height:0;height:100%;display:block}
.tv .slide[data-slide="mapa"] #mapa svg{width:100%;height:100%;max-height:none;display:block;filter:drop-shadow(0 12px 24px rgba(0,0,0,.4))}
.tv .slide[data-slide="mapa"] .chave{display:none}
.mt{grid-column:1/-1;grid-row:4;min-width:0}
.mt-h{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font:800 18px var(--disp);letter-spacing:.05em;text-transform:uppercase;color:var(--mut);margin-bottom:4px}
.mt-k{display:flex;align-items:center;gap:6px;text-transform:none;letter-spacing:0;font:500 15px var(--body);color:var(--cinza-1)}
.mt-k i{display:inline-block;width:12px;height:12px;border-radius:3px}.mt-k i.l{background:var(--l)}.mt-k i.f{background:var(--f);margin-left:10px}.mt-k b{font-weight:500;color:var(--mut);margin-left:14px}
.mt-l{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(var(--mt-rows,10),auto);grid-auto-flow:column;column-gap:24px;row-gap:2px}
.mt-l li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"n v s" "b b b";column-gap:10px;row-gap:2px;align-items:baseline;font-size:16px;line-height:1.2;min-width:0}
.mt-l .n{grid-area:n;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mt-l .v{grid-area:v;display:flex;gap:8px;white-space:nowrap;font-variant-numeric:tabular-nums}
.mt-l em{font-style:normal;font-weight:600;min-width:46px;text-align:right}.mt-l em.l{color:#ff6b7c}.mt-l em.f{color:#2fcf6a}
.mt-l .s{grid-area:s;color:var(--mut);font-variant-numeric:tabular-nums;min-width:50px;text-align:right;white-space:nowrap}
.mt-l .b{grid-area:b;display:flex;height:6px;border-radius:3px;overflow:hidden;background:var(--line)}
.mt-l .b i{display:block;height:100%;width:0;transition:width 1s ease}.mt-l .b .l{background:var(--l)}.mt-l .b .f{background:var(--f)}
.mt-l li.sem .n,.mt-l li.sem em{color:var(--mut)}

/* Polymarket: líder em cima e destacado; números nunca cortados */
.pv .pp{white-space:nowrap}
.pv-lider{display:none;width:max-content;font:800 15px/1 var(--disp);letter-spacing:.08em;text-transform:uppercase;padding:5px 8px 4px;border-radius:4px;color:#fff;margin-bottom:6px}
.pv .pl.lider .pv-lider{display:block}
.pv .pl.l .pv-lider{background:var(--l)}.pv .pl.f .pv-lider{background:var(--f)}
.pv .pl.l.lider{border:2px solid var(--l);background:rgba(255,59,82,.08)}
.pv .pl.f.lider{border:2px solid var(--f);background:rgba(0,156,59,.10)}
.pv .pl{transition:background .6s,border-color .6s}
.tv .pv .pl.lider{flex:1.3}.tv .pv .pl:not(.lider){opacity:.92}
.tv .pv .pl.lider .pp{font-size:96px}
.pv-lk{stroke:var(--mut);stroke-width:1}

/* linha do tempo (estilo do print de referência) */
.tv #tempo{position:relative;flex:1;min-height:0;display:block;margin-top:6px}
.tv #tempo svg{position:absolute;inset:0;width:100%;height:100%;max-height:none}
.tlx-zh{fill:rgba(255,255,255,.035)}.tlx-zp{fill:rgba(255,255,255,.09)}
.tlx-cx{fill:var(--txt)}.tlx-cxt{fill:var(--bg);font:700 19px var(--body)}
.tlx-50{stroke:var(--gold);stroke-width:1;stroke-dasharray:2 6;opacity:.55}
.tlx-ax{stroke:rgba(255,255,255,.55);stroke-width:1}.tlx-tk{stroke:rgba(255,255,255,.45);stroke-width:1}
.tlx-tx{fill:var(--mut);font:600 17px var(--body)}.tlx-tx.b{fill:var(--txt)}
.tlx-ln,.tlx-pj{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.tlx-pj{stroke-dasharray:7 7;opacity:.85}
.tlx-ln.tlx-l,.tlx-pj.tlx-l{stroke:var(--l)}.tlx-ln.tlx-f,.tlx-pj.tlx-f{stroke:var(--f)}
.tlx-mk{stroke:var(--bg);stroke-width:1.5}.tlx-ml{fill:#ff6b7c}.tlx-mf{fill:#2fcf6a}
.tlx-v{font:800 21px var(--disp)}.tlx-vl{fill:#ff8796}.tlx-vf{fill:#46dd82}
.tlx-fim{fill:#fff;stroke-width:3}.tlx-fim.tlx-l{stroke:var(--l)}.tlx-fim.tlx-f{stroke:var(--f)}
.tlx-e{fill:#fff;font:900 30px var(--disp)}
.tlx-dot{fill:none;stroke:#fff;stroke-width:1.6;stroke-dasharray:1.5 5;stroke-linecap:round;opacity:.8}
.tlx-tag.tlx-l{fill:var(--l)}.tlx-tag.tlx-f{fill:var(--f)}
.tlx-tt{fill:#fff;font:700 18px var(--body)}
@media(prefers-reduced-motion:reduce){.tv #ntv,.ntv-lado,.ntv-titulo,.mt-l .b i{transition:none}}
.mt-l{row-gap:3px}.mt-l li{line-height:1.1;row-gap:3px;font-size:16px}.mt-l .v{line-height:1.1}
.tv .slide[data-slide="mapa"] .slide-t h2{font-size:58px}
.tv .slide[data-slide="mapa"] .mf-barra{grid-column:1;grid-row:3;align-self:start;width:330px;position:relative;z-index:1}
.tv .slide[data-slide="mapa"] .mf-t{flex-wrap:wrap;column-gap:10px;row-gap:0}.tv .slide[data-slide="mapa"] .mf-t span{font-size:15px}
.tv .poly.pv{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}
.tv .pv .pl{grid-template-columns:34% minmax(0,1fr)}
/* TV: palco fixo 1920x1080, escalado por JS (tvEscala) quando a tela real é outra */
.tv #app{width:1920px;height:1080px;transform-origin:0 0}
body.tv{width:100vw;height:100vh;overflow:hidden}
.pv .pn{white-space:nowrap;overflow:hidden}
.tv .pv .pn{font-size:28px}
.pv-t{min-width:0;overflow:hidden}
/* exterior na TV com a faixa de notícias: mapa e números um pouco menores para caber sem corte */
.tv.tv-nt .slide[data-slide="exterior"]{padding:24px 40px 20px}
.tv.tv-nt .slide[data-slide="exterior"] .slide-t h2{font-size:58px;margin-bottom:4px}
.tv.tv-nt .ex-mapa{max-height:228px}
.tv.tv-nt .ex-kpi b{font-size:40px}.tv.tv-nt .ex-kpi .r{font-size:17px}.tv.tv-nt .ex-kpi small{font-size:14px}
.tv.tv-nt .ex-lista li{font-size:17px}

/* TV: faixa de replay no topo (dentro do respiro de 28px do palco) */
#rp-bar{display:none}
.tv #rp-bar{display:flex;align-items:center;gap:8px;position:absolute;top:2px;left:760px;right:28px;height:24px;z-index:30;color:var(--mut);font:600 14px var(--body);opacity:.6;transition:opacity .25s}
.tv #rp-bar:hover,.tv.rp-on #rp-bar{opacity:1}
.tv #rp-bar button{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:22px;min-width:26px;padding:0 6px;font:700 13px var(--body);color:var(--txt);background:rgba(255,255,255,.08);border:1px solid var(--line);border-radius:4px;cursor:pointer}
.tv #rp-bar button:hover,.tv #rp-bar button:focus-visible{background:rgba(255,255,255,.18);outline:2px solid var(--gold);outline-offset:1px}
.tv #rp-bar button:disabled{opacity:.4;cursor:default}
.tv #rp-bar svg{width:14px;height:14px;fill:currentColor}
.tv #rp-bar input{flex:1;min-width:0;height:4px;accent-color:#fff;cursor:pointer}
.tv #rp-bar #rpRot{min-width:130px;text-align:right;font-variant-numeric:tabular-nums}
.tv #rp-bar .rp-ao{color:#0b1020;background:var(--f);border-color:var(--f)}
.tv #rp-bar .rp-ao[hidden]{display:none}
.tv #app{position:relative}
