:root{--noite:#050D1A;--painel:#0A1A2C;--linha:#1C3550;--txt:#E9EEF5;--mut:#8FA9BF;--F:#2F6BFF;--L:#FF4D36;--neutro:#2B3A4D;--ouro:#F2C230;--verde:#00A65A}
*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--noite);color:var(--txt);font-family:Archivo,"Segoe UI",Arial,sans-serif;overflow:hidden}
body.idle{cursor:none}
.mv{display:grid;grid-template-columns:minmax(0,1fr) 400px;grid-template-rows:auto minmax(0,1fr) auto;height:100vh;background:radial-gradient(1200px 800px at 38% 45%,#0F2C47 0%,#081A2D 45%,#050D1A 100%)}
.mv-top{grid-column:1/-1;display:flex;align-items:center;gap:18px;padding:14px 22px;border-bottom:1px solid var(--linha);background:linear-gradient(90deg,rgba(0,166,90,.12),rgba(242,194,48,.06) 40%,transparent 70%)}
.mv-top h1{margin:0;font-size:22px;font-weight:800;letter-spacing:-.01em;white-space:nowrap}.mv-top h1 b{color:var(--ouro)}
.mv-faixa{width:6px;height:30px;border-radius:3px;background:linear-gradient(var(--verde),var(--ouro))}
.mv-st{display:flex;gap:16px;margin-left:auto;align-items:center;font-size:14px;color:var(--mut);flex-wrap:wrap}
.mv-st b{color:var(--txt);font-variant-numeric:tabular-nums}
.mv-dot{width:9px;height:9px;border-radius:5px;background:#ff3b30;display:inline-block;margin-right:6px;animation:mvP 1.6s infinite}@keyframes mvP{50%{opacity:.3}}
.mv-bt{border:1px solid var(--linha);background:#0C2033;color:var(--txt);border-radius:10px;padding:10px 14px;font:600 14px Archivo,Arial,sans-serif;cursor:pointer;min-height:44px}
.mv-bt:hover,.mv-bt:focus-visible{border-color:var(--ouro);outline:none}
.mv-bt.on{background:var(--ouro);color:#121A24;border-color:var(--ouro)}
.mv-palco{position:relative;overflow:hidden}
.mv-palco svg{position:absolute;inset:0;width:100%;height:100%}
.mv-uf{fill:var(--neutro);stroke:#0B1626;stroke-width:.7;transition:fill .9s ease,fill-opacity .9s ease;cursor:pointer}
.mv-uf:hover{stroke:var(--ouro);stroke-width:1.4}
.mv-mun{fill:var(--neutro);stroke:#0B1626;stroke-width:.35;transition:fill .9s ease,fill-opacity .9s ease;cursor:pointer}
.mv-mun:hover,.mv-mun.sel{stroke:var(--ouro);stroke-width:1.6}
.mv-pt{pointer-events:none;transition:r .9s ease,fill .9s ease,opacity .9s ease}
.mv-flash{animation:mvF 2.4s ease}@keyframes mvF{0%,100%{stroke:#0B1626}30%,70%{stroke:#fff;stroke-width:3}}
.mv-lbl{font:700 9px Archivo,Arial,sans-serif;fill:rgba(255,255,255,.75);pointer-events:none;text-anchor:middle}
.mv-voltar{position:absolute;left:18px;top:16px;z-index:3}
.mv-gran{position:absolute;left:18px;bottom:14px;z-index:3;font-size:12.5px;color:var(--mut);background:rgba(5,13,26,.7);border:1px solid var(--linha);border-radius:8px;padding:8px 12px;max-width:520px}
.mv-leg{position:absolute;right:18px;top:16px;z-index:3;display:flex;gap:8px;flex-wrap:wrap}
.mv-leg span{display:flex;align-items:center;gap:6px;font-size:13px;background:rgba(5,13,26,.7);border:1px solid var(--linha);border-radius:8px;padding:6px 10px}
.mv-leg i{width:12px;height:12px;border-radius:3px;display:inline-block}
.mv-cnt{position:absolute;z-index:3;pointer-events:none;font:800 12px Archivo,Arial,sans-serif;background:rgba(5,13,26,.82);border:1px solid var(--linha);border-radius:7px;padding:4px 8px;white-space:nowrap;transform:translate(-50%,-140%)}
.mv-cnt small{display:block;font-weight:600;font-size:10px;color:var(--mut)}
.mv-side{border-left:1px solid var(--linha);background:rgba(10,26,44,.92);overflow:auto;padding:16px;display:flex;flex-direction:column;gap:14px}
.mv-side h2{margin:0;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--ouro)}
.mv-cands{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mv-cand{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px;border:2px solid var(--linha);border-radius:12px;background:#0C2033;color:var(--txt);cursor:pointer;font:700 15px Archivo,Arial,sans-serif}
.mv-cand img{width:64px;height:64px;border-radius:10px;object-fit:cover}
.mv-cand.on.F{border-color:var(--F);box-shadow:0 0 0 3px rgba(47,107,255,.25)}.mv-cand.on.L{border-color:var(--L);box-shadow:0 0 0 3px rgba(255,77,54,.25)}
.mv-busca{position:relative}.mv-busca input{width:100%;min-height:46px;border-radius:10px;border:1px solid var(--linha);background:#0C2033;color:var(--txt);padding:0 14px;font:16px Archivo,Arial,sans-serif}
.mv-res{position:absolute;left:0;right:0;top:50px;z-index:9;background:#0C2033;border:1px solid var(--linha);border-radius:10px;max-height:280px;overflow:auto}
.mv-res button{display:flex;justify-content:space-between;width:100%;border:0;background:none;color:var(--txt);padding:11px 14px;font:15px Archivo,Arial,sans-serif;cursor:pointer;text-align:left}.mv-res button:hover{background:#13324C}
.mv-res small{color:var(--mut)}
.mv-rx{display:flex;flex-direction:column;gap:10px}
.mv-row{border:1px solid var(--linha);border-radius:12px;padding:12px 14px;background:#0B1C30}
.mv-row .t{display:flex;justify-content:space-between;font-size:12px;color:var(--mut);text-transform:uppercase;letter-spacing:.06em}
.mv-row .n{display:flex;align-items:baseline;gap:10px;margin-top:4px}
.mv-row .n b{font-size:30px;font-weight:800;font-variant-numeric:tabular-nums}
.mv-row .n span{font-size:14px;color:var(--mut)}
.mv-row .d{font-size:13.5px;margin-top:4px;color:#C9D7E6}
.mv-bar{height:6px;border-radius:3px;background:#13324C;margin-top:8px;overflow:hidden}.mv-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--verde),var(--ouro));transition:width .9s ease}
.mv-camadas{display:flex;flex-wrap:wrap;gap:8px}
.mv-al{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.mv-al li{font-size:13.5px;border-left:3px solid var(--ouro);padding:6px 10px;background:#0B1C30;border-radius:0 8px 8px 0}
.mv-al li small{display:block;color:var(--mut)}
.mv-info{position:absolute;z-index:6;min-width:240px;max-width:300px;background:rgba(8,22,38,.96);border:1px solid #2E6A84;border-radius:12px;padding:12px 14px;font-size:13.5px;box-shadow:0 18px 40px rgba(0,0,0,.5)}
.mv-info b{font-size:16px}.mv-info dl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;margin:8px 0 0}.mv-info dt{color:var(--mut)}.mv-info dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}
.mv-toast{position:fixed;left:50%;bottom:30px;transform:translateX(-50%);z-index:20;background:#0C2033;border:2px solid var(--ouro);border-radius:14px;padding:14px 20px;font:700 17px Archivo,Arial,sans-serif;box-shadow:0 20px 50px rgba(0,0,0,.6);max-width:90vw}
.mv-toast small{display:block;font-weight:500;font-size:13px;color:var(--mut);margin-top:4px}
.mv-demo{position:fixed;top:70px;left:50%;transform:translateX(-50%);z-index:30;background:#F2C230;color:#121A24;font:800 14px Archivo,Arial,sans-serif;padding:8px 14px;border-radius:8px}
.mv-pe{grid-column:1/-1;padding:8px 22px;font-size:12px;color:var(--mut);border-top:1px solid var(--linha);display:flex;gap:16px;flex-wrap:wrap}
.mv-pe a{color:var(--mut)}
@media (max-width:980px){html,body{overflow:auto}.mv{grid-template-columns:1fr;grid-template-rows:auto 62vh auto auto;height:auto}.mv-side{border-left:0;border-top:1px solid var(--linha)}.mv-top h1{font-size:18px}.mv-st{font-size:12.5px}}
@media (min-width:2400px){html{font-size:150%}.mv{grid-template-columns:minmax(0,1fr) 560px}.mv-row .n b{font-size:44px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.mv-palco svg{transition:opacity .35s ease}
@media (max-width:980px){.mv-top{flex-wrap:wrap;gap:10px;padding:12px 14px}.mv-st{margin-left:0;width:100%;gap:8px 14px;font-size:12.5px}.mv-st .mv-bt{min-height:38px;padding:6px 10px;font-size:13px}
.mv-leg{left:12px;right:12px;top:10px;gap:6px}.mv-leg span{font-size:11.5px;padding:4px 8px}.mv-voltar{top:52px;left:12px}.mv-gran{left:10px;right:10px;bottom:8px;font-size:11.5px}}
/* Brasil real à noite por baixo; estados como vidro colorido com borda dourada */
.mv-noite{pointer-events:none}
.mv-uf{fill:transparent;stroke:rgba(242,194,48,.55);stroke-width:.8;mix-blend-mode:screen}
.mv-uf:hover{stroke:#F2C230;stroke-width:1.8;filter:drop-shadow(0 0 6px rgba(242,194,48,.9))}
#mapa{filter:drop-shadow(0 0 18px rgba(80,150,255,.18))}
/* celular deitado / espelhado na TV: tudo cabe numa tela, sem rolar */
@media (orientation:landscape) and (max-height:520px){html,body{overflow:hidden!important}.mv{grid-template-columns:minmax(0,1fr) 290px!important;grid-template-rows:auto minmax(0,1fr) auto!important;height:100vh!important;height:100dvh!important}
.mv-top{flex-wrap:nowrap!important;gap:10px!important;padding:6px 12px!important}.mv-top h1{font-size:15px!important;white-space:nowrap}
.mv-st{width:auto!important;margin-left:auto!important;flex-wrap:nowrap!important;gap:10px!important;font-size:11.5px!important;white-space:nowrap}
.mv-st .mv-bt{min-height:30px!important;padding:4px 10px!important;font-size:12px!important}
.mv-side{border-left:1px solid var(--linha)!important;border-top:0!important;padding:10px!important;gap:10px!important;font-size:13px}
.mv-gran{display:none!important}.mv-leg{left:auto!important;right:10px!important;top:8px!important;font-size:12px}.mv-leg>*{padding:3px 8px!important}}
@media (orientation:landscape) and (max-height:520px){.mv-st{font-size:10.5px!important;gap:8px!important}.mv-st .mv-bt{font-size:11px!important;padding:3px 8px!important}.mv-top h1{font-size:13px!important}
.mv-pe{padding:3px 12px!important;font-size:10px!important;line-height:1.3!important}.mv-pe p{margin:0!important}}
/* sem barras de rolagem visíveis (a rolagem continua funcionando) */
html,body,body *{scrollbar-width:none!important;-ms-overflow-style:none!important}
html::-webkit-scrollbar,body::-webkit-scrollbar,body *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}

/* dentro da Sala VIP (iframe) */
html.mv-embed,html.mv-embed body{overflow:hidden!important}
html.mv-embed .mv{grid-template-columns:minmax(0,1fr) 270px!important;grid-template-rows:auto minmax(0,1fr)!important;height:100vh!important}
html.mv-embed .mv-top{flex-wrap:nowrap!important;padding:6px 10px!important;gap:8px!important}html.mv-embed .mv-top h1{font-size:14px!important;white-space:nowrap}
html.mv-embed .mv-st{width:auto!important;margin-left:auto!important;font-size:11px!important;flex-wrap:nowrap!important;white-space:nowrap;gap:8px!important}
html.mv-embed .mv-st .mv-bt,html.mv-embed .mv-pe,html.mv-embed .mv-gran{display:none!important}
html.mv-embed .mv-side{border-left:1px solid var(--linha)!important;border-top:0!important;padding:10px!important;gap:10px!important}
@media (max-width:620px){html.mv-embed .mv{grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr) 38%!important}html.mv-embed .mv-side{border-left:0!important;border-top:1px solid var(--linha)!important}html.mv-embed .mv-st{display:none!important}}

.mv-volta{flex:none;display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;background:#FFD34D;color:#0B1B3A!important;font:800 14px Archivo,sans-serif;text-decoration:none!important;white-space:nowrap}
.mv-volta:hover{background:#fff}
@media (orientation:landscape) and (max-height:520px){.mv-volta{padding:5px 10px;font-size:12px}}
@media (max-width:620px){.mv-volta{padding:7px 10px;font-size:12.5px}}

/* fundo mais claro e mapa mais legível (estado e municípios) */
.mv{background:radial-gradient(1200px 800px at 38% 45%,#F3F7FD 0%,#E2EAF6 55%,#CFDBEC 100%)!important}
.mv-palco{background:transparent!important}
.mv-top{background:rgba(255,255,255,.94)!important;border-bottom:1px solid #C9D6E8!important}
.mv-top h1{color:#0B1B3A!important}.mv-st{color:#3A4866!important}.mv-st b{color:#0B1B3A!important}
.mv-st .mv-bt{background:#0B1B3A!important;color:#fff!important;border-color:#0B1B3A!important}
.mv-palco{--neutro:#AEBCD0}
.mv-uf{mix-blend-mode:normal!important;stroke:rgba(255,255,255,.9)!important;stroke-width:1!important}
.mv-uf:hover{stroke:#E0A800!important;stroke-width:2.2!important;filter:none!important}
.mv-mun{stroke:rgba(255,255,255,.9)!important;stroke-width:.55!important}
.mv-mun:hover,.mv-mun.sel{stroke:#0B1B3A!important;stroke-width:2!important}
.mv-lbl{font-size:10.5px!important;fill:#fff!important;paint-order:stroke;stroke:rgba(11,27,58,.8);stroke-width:2.6px;stroke-linejoin:round}
.mv-gran{background:rgba(255,255,255,.92)!important;color:#3A4866!important;border-color:#C9D6E8!important}
.mv-leg span{background:rgba(255,255,255,.92)!important;color:#0B1B3A!important;border-color:#C9D6E8!important}
.mv-voltar{background:#fff!important;color:#0B1B3A!important;border-color:#C9D6E8!important}
.mv-pe{background:#F3F7FD!important;color:#3A4866!important;border-top:1px solid #C9D6E8!important}.mv-pe a{color:#0F62FE!important}

/* YouTube ao vivo dentro do Mapa Vivo */
.mv-yt select{width:100%;margin-top:10px;height:38px;border-radius:10px;border:1px solid var(--linha);background:#0B1B3A;color:#E9EEF5;font:600 14px Archivo,sans-serif;padding:0 10px}
.mv-yt-box{position:relative;margin-top:8px;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#000}
.mv-yt-box iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mv-yt small{display:block;margin-top:6px;font-size:11.5px;color:var(--mut)}

.mv-falta{margin-top:8px;padding:8px 10px;border-radius:8px;background:rgba(242,194,48,.14);border-left:3px solid #F2C230;color:#fff;font-size:13px}
.mv-falta b{color:#FFD34D;font-size:16px}
.mv-cnt{font-weight:800}
/* quantas seções faltam: bem visível */
.mv-falta{margin-top:10px;padding:12px 14px;border-radius:12px;background:linear-gradient(135deg,rgba(242,194,48,.22),rgba(242,194,48,.08));border:1px solid rgba(242,194,48,.55);border-left:5px solid #F2C230;color:#fff;font:700 13px Archivo,sans-serif;letter-spacing:.02em;text-transform:uppercase}
.mv-falta b{display:block;font:900 30px/1 Archivo,sans-serif;color:#FFD34D;margin-bottom:4px;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.mv-cnt{font:800 15px Archivo,sans-serif!important;padding:10px 14px!important;background:rgba(11,27,58,.92)!important;border:2px solid #F2C230!important;border-radius:12px!important;color:#fff!important;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.mv-cnt small{display:block;font:600 11px Archivo,sans-serif;color:#B9CCE0;text-transform:none;letter-spacing:0}

.mv-cid{margin:10px 0 6px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--linha)}
.mv-cid small{display:block;font:700 10.5px Archivo,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin-bottom:6px}
.mv-cid-l{font-size:13.5px;color:#DCE6F5;margin:3px 0}.mv-cid-l b{color:#fff;font-size:15px}
.mv-cid-l span{display:inline-block;min-width:54px;font-weight:800}.mv-cid-l span.F{color:#7FA4FF}.mv-cid-l span.L{color:#FF8F80}
.mv-cid-l.uf{margin-top:6px;padding-top:6px;border-top:1px solid var(--linha);color:#FFD34D}.mv-cid-l.uf span{min-width:0;margin-right:6px}

/* % apurado embaixo da sigla */
.mv-lbl-p{font:800 8.5px Archivo,Arial,sans-serif!important;fill:#FFD34D!important;stroke:rgba(11,27,58,.85);stroke-width:2.4px}
html.mv-embed .mv-lbl-p{font-size:9px!important}

/* legenda com votos do lugar selecionado */
.mv-leg{align-items:stretch!important}
.mv-leg span.lg-F,.mv-leg span.lg-L{display:grid!important;grid-template-columns:12px auto;grid-template-rows:auto auto;column-gap:8px;row-gap:0;padding:8px 12px!important;background:rgba(255,255,255,.94)!important;color:#0B1B3A!important;border:1px solid #C9D6E8!important;min-width:150px;opacity:.75}
.mv-leg span.lg-F i,.mv-leg span.lg-L i{grid-row:1/3;align-self:center;width:12px;height:12px}
.mv-leg em{font:800 12px Archivo,sans-serif;font-style:normal;letter-spacing:.06em;text-transform:uppercase}
.mv-leg b{font:900 19px/1.1 Archivo,sans-serif;font-variant-numeric:tabular-nums}
.mv-leg small{grid-column:2;font:700 12px Archivo,sans-serif;color:#3A4866}
.mv-leg.lidF span.lg-F,.mv-leg.lidL span.lg-L{opacity:1;box-shadow:0 0 0 2px #FFD34D,0 10px 24px rgba(0,0,0,.2)}
.mv-leg.lidF span.lg-F em{color:#1F5EFF}.mv-leg.lidL span.lg-L em{color:#E2401F}
.mv-leg span.lg-onde{align-self:center;font:800 12px Archivo,sans-serif;background:#0B1B3A!important;color:#FFD34D!important;border-color:#0B1B3A!important}
@media (max-width:620px){.mv-leg span.lg-F,.mv-leg span.lg-L{min-width:0;padding:6px 8px!important}.mv-leg b{font-size:15px}}
.mv-leg{top:10px!important;left:12px!important;right:12px!important;justify-content:flex-end}
.mv-voltar{top:60px!important}
html.mv-embed .mv-leg{justify-content:flex-start}

/* diferença de votos no lugar selecionado */
.lg-dif{flex-basis:100%;display:flex;justify-content:flex-end}
.lg-dif:empty{display:none}
.lg-dif em{font-style:normal;font-weight:900}
.lg-dif b{font-weight:900;font-size:18px}
.lg-dif{font:700 14px Archivo,sans-serif;color:#0B1B3A}
.lg-dif.F,.lg-dif.L{color:#fff}
.lg-dif.F em{color:#BFD3FF}.lg-dif.L em{color:#FFC9BF}
#leg .lg-dif{background:#0B1B3A;border-radius:10px;padding:8px 14px;border:2px solid #FFD34D;box-shadow:0 10px 30px rgba(0,0,0,.25)}
#leg .lg-dif.F{background:linear-gradient(90deg,#0B1B3A,#1F4FD0)}#leg .lg-dif.L{background:linear-gradient(90deg,#0B1B3A,#C9361D)}
html.mv-embed .lg-dif{justify-content:flex-start}
@media (max-width:620px){#leg .lg-dif{padding:6px 10px;font-size:12.5px}.lg-dif b{font-size:15px}}
.lg-dif{flex-basis:auto!important;width:auto!important;margin-left:auto}
#leg .lg-dif{display:inline-flex;gap:5px;align-items:baseline;white-space:nowrap}
.lg-dif b{margin-left:2px}

.mv-online{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:rgba(0,166,90,.14);border:1px solid rgba(0,166,90,.6);color:#0B1B3A;font:800 12px Archivo,sans-serif;white-space:nowrap}
.mv-online i{width:8px;height:8px;border-radius:50%;background:#00A65A;box-shadow:0 0 8px #2EE59D;animation:mvP 1.6s infinite}.mv-online b{font-size:14px}
