:root{
  --bg:#f3f5f8; --card:#ffffff; --card2:#f6f8fb; --ink:#111827; --mut:#667085; --line:#dfe4ec;
  --acc:#15803d; --acc2:#facc15; --accink:#ffffff; --blue:#1d4ed8; --red:#dc2626; --warn:#b45309; --ok:#15803d; --hard:#0f2a1a;
  --shadow:0 2px 0 rgba(16,24,40,.08);
  --hdr:linear-gradient(135deg,#14532d,#15803d 70%);
  --urna:#d9dbd6; --tela:#eef0e4;
  --disp:"Arial Black","Segoe UI Black","Avenir Next Heavy","Helvetica Neue",system-ui,sans-serif;
}
:root[data-theme="dark"]{
  --bg:#0b1020; --card:#131a2e; --card2:#18213a; --ink:#e7eaf3; --mut:#97a1b8; --line:#26304d;
  --acc:#22c55e; --acc2:#facc15; --accink:#04210f; --blue:#60a5fa; --red:#f87171; --warn:#fbbf24; --ok:#22c55e; --hard:#02060f;
  --shadow:0 2px 0 rgba(0,0,0,.35);
  --hdr:linear-gradient(135deg,#052e16,#14532d 70%);
  --urna:#2a3040; --tela:#c9d1b8;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
button{font:inherit;color:inherit;cursor:pointer}
h1,h2,h3{margin:0;line-height:1.2}
.hide{display:none!important}
.mut{color:var(--mut)} .sm{font-size:13px} .xs{font-size:12px}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.grow{flex:1}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:16px}
.btn{border:1px solid var(--line);background:var(--card2);padding:9px 14px;border-radius:10px;font-weight:600}
.btn:hover{border-color:var(--acc)}
.btn.pri{background:var(--acc);color:var(--accink);border-color:var(--acc)}
.btn.pri:hover{filter:brightness(1.07)}
.btn.big{padding:13px 22px;font-size:16px;border-radius:12px}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.btn.ghost{background:transparent}
.tag{display:inline-block;padding:2px 8px;border-radius:99px;font-size:12px;font-weight:700;background:var(--card2);border:1px solid var(--line)}
.av{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:800;flex:none;text-shadow:0 1px 2px rgba(0,0,0,.3)}
.bar{height:8px;border-radius:99px;background:var(--line);overflow:hidden}
.bar>i{display:block;height:100%;border-radius:99px;background:var(--acc);transition:width .4s}
input,select{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:9px 11px;max-width:100%}
input:focus,select:focus{outline:2px solid var(--acc);outline-offset:1px}

/* topo */
#topo{background:var(--hdr);color:#fff;padding:12px 16px;position:sticky;top:0;z-index:30;box-shadow:0 2px 12px rgba(0,0,0,.25)}
#topo .in{max-width:1100px;margin:auto;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
#topo .logo{font-weight:900;letter-spacing:.2px;font-size:18px}
#topo .logo b{color:var(--acc2)}
#topo .info{font-size:13px;opacity:.95}
.iconbtn{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:7px 10px;font-weight:700}
.iconbtn:hover{background:rgba(255,255,255,.28)}
#app{max-width:1100px;margin:0 auto;padding:16px}

/* título */
.hero{text-align:center;padding:42px 18px 28px}
.hero h1{font-size:clamp(30px,6vw,52px);font-weight:900}
.hero h1 b{color:var(--acc)}
.hero p{max-width:620px;margin:14px auto;color:var(--mut)}
.stripe{height:6px;border-radius:6px;background:linear-gradient(90deg,#16a34a 0 33%,#facc15 33% 66%,#2563eb 66%);max-width:240px;margin:0 auto 18px}
.disc{max-width:640px;margin:22px auto 0;font-size:12.5px;color:var(--mut)}

/* HUD */
.hud{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:12px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;box-shadow:var(--shadow)}
.stat .l{font-size:12px;color:var(--mut);font-weight:600}
.stat .v{font-size:19px;font-weight:800}
.stat .bar{margin-top:6px}
.next{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:space-between;margin-bottom:12px;border-left:5px solid var(--acc2)}
.tabs{display:flex;gap:6px;overflow:auto;margin:6px 0 12px;border-bottom:1px solid var(--line)}
.tab{background:none;border:none;border-bottom:3px solid transparent;padding:10px 14px;font-weight:700;color:var(--mut);white-space:nowrap}
.tab.on{color:var(--ink);border-bottom-color:var(--acc)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:760px){.grid2{grid-template-columns:1fr}}
.acao{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--card);margin-bottom:8px;flex-wrap:wrap}
.acao .t{font-weight:700}
.acao select{max-width:220px}
.seg{display:grid;grid-template-columns:150px 1fr auto;gap:8px;align-items:center;margin:6px 0;font-size:13px}
.log li{padding:6px 0;border-bottom:1px dashed var(--line);list-style:none}
.log{padding:0;margin:0}
table{border-collapse:collapse;width:100%}
th,td{padding:7px 8px;text-align:left;border-bottom:1px solid var(--line);font-size:14px}
th{font-size:12px;color:var(--mut);text-transform:uppercase;letter-spacing:.4px}
td.n,th.n{text-align:right;font-variant-numeric:tabular-nums}
.up{color:var(--ok);font-weight:700}.dn{color:var(--red);font-weight:700}

/* modal */
#veu{position:fixed;inset:0;background:rgba(5,10,25,.62);z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:4vh 12px;overflow:auto;backdrop-filter:blur(3px)}
#modal{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.45);width:min(640px,100%);padding:22px;animation:pop .22s ease}
#modal.wide{width:min(960px,100%)}
@keyframes pop{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}
#modal h2{font-size:21px;margin-bottom:6px}
.opt{display:block;width:100%;text-align:left;padding:12px 14px;margin:8px 0;border-radius:12px;border:1px solid var(--line);background:var(--card2);font-weight:600}
.opt:hover{border-color:var(--acc)}
.opt.sel{border-color:var(--acc);box-shadow:0 0 0 2px var(--acc) inset;background:color-mix(in srgb,var(--acc) 10%,var(--card))}
.opt.dis{opacity:.5;cursor:not-allowed}
.opt small{display:block;font-weight:400;color:var(--mut);margin-top:2px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{padding:8px 12px;border-radius:99px;border:1px solid var(--line);background:var(--card2);font-weight:600}
.chip.sel{background:var(--acc);color:var(--accink);border-color:var(--acc)}
.res{padding:10px 12px;border-radius:10px;margin:10px 0;background:var(--card2);border-left:4px solid var(--acc2)}
.res.ok{border-left-color:var(--acc)}.res.ruim{border-left-color:var(--red)}

/* criação */
.orig{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.attr{display:grid;grid-template-columns:130px 1fr 36px 36px 36px;gap:8px;align-items:center;margin:8px 0}
.attr .sq{width:36px;height:36px;border-radius:8px}
.sw{width:30px;height:30px;border-radius:50%;border:3px solid transparent;cursor:pointer}
.sw.sel{border-color:var(--ink)}
.res-real{max-height:210px;overflow:auto;border:1px solid var(--line);border-radius:10px;margin-top:6px}
.res-real div{padding:8px 10px;border-bottom:1px solid var(--line);cursor:pointer}
.res-real div:hover{background:var(--card2)}

/* gráficos */
.lc{width:100%;height:auto;display:block}
.lc text{fill:var(--mut);font-size:11px;font-family:inherit}
.lc .grid{stroke:var(--line);stroke-width:1}
.lc .ln{fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.6s ease-out forwards}
.lc .dt{opacity:0;animation:fade .3s 1.5s forwards}
.lc .lab{font-weight:800;font-size:12px;opacity:0;animation:fade .3s 1.5s forwards}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fade{to{opacity:1}}
.legend{display:flex;gap:14px;flex-wrap:wrap;margin:6px 0 2px;font-size:13px}
.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}

/* urna */
.urna{display:grid;grid-template-columns:1fr 210px;gap:14px;background:var(--urna);border-radius:16px;padding:16px;border:2px solid var(--line)}
@media(max-width:620px){.urna{grid-template-columns:1fr}}
.tela{background:var(--tela);color:#1a1f14;border:3px solid #7d8470;border-radius:8px;padding:14px 16px;min-height:320px;position:relative;font-family:"Courier New",monospace}
.tela .cab{font-size:12px;text-transform:uppercase;letter-spacing:.6px}
.tela .seu{font-size:13px;margin-top:6px}
.tela .cargo{font-size:20px;font-weight:900;margin:6px 0 12px}
.digs{display:flex;gap:6px;margin:10px 0}
.dg{width:38px;height:46px;border:2px solid #1a1f14;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:900;background:#f8faee}
.tela{display:flex;flex-direction:column}
.tela .corpo{flex:1;display:flex;gap:12px;justify-content:space-between}
.tela .esq{flex:1;min-width:0}
.tela .dir{width:92px;flex:none}
.tela .info{margin-top:10px;font-size:14px;line-height:1.5}
.tela .foto{width:90px;height:114px;border:2px solid #1a1f14;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:900;color:#fff;background-size:cover}
.tela .rod{margin-top:12px;border-top:1px solid #1a1f14;padding-top:6px;font-size:11.5px}
.teclado{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-content:start}
.tk{background:#2b2f36;color:#fff;border:none;border-bottom:4px solid #111;border-radius:6px;padding:12px 0;font-size:20px;font-weight:800}
.tk:active{transform:translateY(2px);border-bottom-width:2px}
.tk.br{background:#f4f4f4;color:#222;font-size:12px;grid-column:span 1;border-bottom-color:#aaa}
.tk.co{background:#f08a24;color:#111;font-size:12px;border-bottom-color:#a55a0f}
.tk.ok{background:#1faa4b;color:#fff;font-size:12px;border-bottom-color:#127332;grid-column:span 1}

/* apuração */
.apu-top{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;align-items:flex-start}
.pctApu{font-size:34px;font-weight:900;line-height:1}
.cands{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;margin:12px 0}
.cd{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--card);position:relative;overflow:hidden}
.cd.win{outline:3px solid var(--acc2)}
.cd .pc{font-size:26px;font-weight:900;font-variant-numeric:tabular-nums}
.cd .bar{margin-top:6px}
.cd .bar>i{background:var(--c)}
.speed .btn.sel{background:var(--acc);color:var(--accink);border-color:var(--acc)}
#mapa svg{width:100%;height:auto;max-height:430px}
#mapa path{stroke:var(--card);stroke-width:1.2;transition:fill .4s}
.eleito{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;flex-direction:column;background:rgba(5,10,25,.55);color:#fff;text-align:center;animation:fade2 .4s}
@keyframes fade2{from{opacity:0}to{opacity:1}}
.eleito h1{font-size:clamp(40px,10vw,90px);font-weight:900;text-shadow:0 4px 24px rgba(0,0,0,.6);margin:12px 0 4px}
.eleito .sub{font-size:20px}
#fogos{position:fixed;inset:0;z-index:91;pointer-events:none}
.pill{display:inline-block;background:var(--acc2);color:#111;font-weight:900;border-radius:8px;padding:2px 8px;font-size:12px}
.toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:12px;z-index:80;font-weight:600;box-shadow:var(--shadow)}
.kpi{display:flex;gap:18px;flex-wrap:wrap}
.kpi div b{display:block;font-size:20px}

.lc.static .ln{animation:none;stroke-dashoffset:0}.lc.static .dt,.lc.static .lab{animation:none;opacity:1}
@media(max-width:600px){#topo .info{order:5;flex-basis:100%;font-size:12px}#topo .logo{font-size:16px}.iconbtn{padding:6px 8px;font-size:13px}}

.hoje{display:grid;grid-template-columns:auto 1fr minmax(210px,260px);gap:20px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:16px 20px;margin-bottom:12px;border-top:5px solid var(--acc2)}
.hoje .hdt{display:block;text-align:center;padding-right:20px;border-right:2px solid var(--line);min-width:120px;width:auto;height:auto;border-radius:0;margin:0}
.hoje .sem{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--mut);font-weight:700}
.hoje .dia{font-size:52px;line-height:1.05;font-weight:900;margin:2px 0}
.hoje .mes{font-size:17px;line-height:1.2;font-weight:800;text-transform:capitalize}
.hoje .ano{font-size:20px;line-height:1.2;font-weight:900;color:var(--acc)}
.hoje .faseb{display:inline-flex;gap:8px;align-items:center;font-size:19px;font-weight:800;border-left:5px solid var(--c);padding-left:10px}
.hoje .chips{display:flex;gap:8px;flex-wrap:wrap}
.hoje .chip{background:var(--card2);border:1px solid var(--line);border-radius:999px;padding:4px 11px;font-size:13px}
.hoje .go{background:var(--card2);border:1px solid var(--line);border-radius:14px;padding:12px}
.hoje .pp{font-size:17px;font-weight:800}
@media(max-width:760px){.hoje{grid-template-columns:1fr;gap:12px}.hoje .hdt{border-right:0;border-bottom:2px solid var(--line);padding:0 0 10px;display:flex;gap:12px;align-items:baseline;justify-content:center;flex-wrap:wrap}.hoje .dia{font-size:40px}}

.banner{display:flex;align-items:center;gap:18px;border-radius:14px;padding:16px 20px;margin:12px 0;color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.18)}
.banner .bn{font-weight:900;font-size:30px;line-height:1;letter-spacing:1px;white-space:nowrap}.banner .bn small{display:block;font-size:12px;opacity:.85;letter-spacing:2px;margin-bottom:4px}
.banner .bs{font-size:20px;font-weight:700;line-height:1.25;border-left:3px solid rgba(255,255,255,.55);padding-left:18px}.banner .bs small{display:block;font-size:12px;font-weight:500;opacity:.85;margin-top:4px}
.manch{margin-bottom:10px;background:repeating-linear-gradient(180deg,transparent 0 27px,color-mix(in srgb,var(--mut,#888) 10%,transparent) 27px 28px)}
.manch .mh{padding:7px 0;border-bottom:1px dotted color-mix(in srgb,var(--mut,#888) 40%,transparent)}.manch .mh:last-child{border:0}
.manch .jn{display:block;font:italic 700 12px Georgia,serif;opacity:.7;margin-bottom:1px}.manch .mh b{font:700 15px Georgia,serif}
@media(max-width:640px){.banner{flex-direction:column;align-items:flex-start;gap:8px}.banner .bs{border-left:0;padding-left:0;font-size:17px}}
.hemi{width:100%;max-width:560px;display:block;margin:0 auto;color:var(--ink)}
.dt{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px;vertical-align:middle}
.hp{width:100%;font-size:13px;margin-top:6px}.hp td,.hp th{padding:3px 6px}
.hbar{display:flex;height:10px;border-radius:5px;overflow:hidden;min-width:90px;background:var(--line)}
.stt{color:#fff;font-weight:800;font-size:12px;padding:3px 10px;border-radius:99px;white-space:nowrap}
.tram{margin-top:10px}
.etapas{display:flex;gap:4px;margin-top:10px;flex-wrap:wrap}
.et{flex:1;min-width:92px;text-align:center;font-size:11px;color:var(--mut)}
.et i{display:block;height:6px;border-radius:3px;background:var(--line);margin-bottom:4px}
.et.ok i{background:var(--acc)}.et.at i{background:var(--blue)}.et.x i{background:var(--red)}
.et.ok,.et.at{color:var(--ink);font-weight:700}
.post{display:flex;gap:10px;padding:10px 0;border-top:1px solid var(--line)}
.av2{width:34px;height:34px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex:none}

/* ===== CELULAR ===== */
html{-webkit-text-size-adjust:100%}
button,.btn,.opt,.tab{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
@media(max-width:600px){
  body{overflow-x:hidden}
  #topo{padding:6px 10px;padding-top:max(6px,env(safe-area-inset-top))}
  #topo .in{gap:6px;flex-wrap:wrap}
  #topo .logo{font-size:15px;flex:1 1 auto}
  #topo .info{order:5;flex-basis:100%;font-size:11.5px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .iconbtn{padding:5px 8px;font-size:12px;min-height:32px}
  #btnTema,#btnSom{font-size:0;padding:5px 9px}
  #btnTema::first-letter,#btnSom::first-letter{font-size:15px}
  #app{padding:10px 10px calc(16px + env(safe-area-inset-bottom))}
  .card{padding:12px;border-radius:12px}
  .hero{padding:24px 6px 18px}
  .attr{grid-template-columns:1fr 38px 34px 38px;row-gap:2px}
  .attr>:nth-child(2){grid-column:1/-1;grid-row:2;order:5}
  .attr .sq{width:38px;height:38px}
  .seg{grid-template-columns:1fr auto;row-gap:2px}
  .seg>:nth-child(2){grid-column:1/-1;grid-row:2}
  .btn{min-height:40px}
  .btn.big{padding:12px 16px}
  .tab{padding:11px 12px}
  .tabs{margin-left:-2px;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  input,select,textarea{font-size:16px}
  table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  #veu{padding:0;align-items:flex-end}
  #modal,#modal.wide{width:100%;max-height:92vh;max-height:92dvh;overflow-y:auto;border-radius:18px 18px 0 0;padding:16px 14px calc(18px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}
  #modal h2{font-size:18px}
  .hud{grid-template-columns:repeat(2,1fr);gap:8px}
  .orig,.cands{grid-template-columns:1fr}
  .speed{flex-wrap:wrap}
  .row{flex-wrap:wrap}
  input,select{max-width:100%;min-width:0}
  .row>.grow,.row>div{min-width:0}
  .hud .stat,.hud>div{padding:10px 12px}
  .hud .v{font-size:22px}
}

/* ---- painel "O que importa agora" ---- */
.agora{margin-bottom:12px;border:1px solid var(--line);border-radius:14px;background:var(--card);overflow:hidden}
.agora .ag-t{font-weight:800;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--mut);padding:10px 14px 4px}
.agora .ag-i{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:transparent;border:0;border-top:1px solid var(--line);padding:10px 14px;color:inherit;font:inherit;cursor:pointer}
.agora .ag-i:hover{background:color-mix(in srgb,var(--acc) 8%,transparent)}
.agora .ag-i.urg{border-left:4px solid var(--red)}
.agora .ag-ic{font-size:18px}.agora .ag-x{flex:1;font-size:14px}.agora .ag-go{opacity:.5;font-size:20px}

/* ---- linha do tempo ---- */
.tl{position:relative;margin:8px 0 0 6px;padding-left:18px;border-left:2px solid var(--line)}
.tli{display:flex;align-items:baseline;gap:8px;margin:0 0 12px;position:relative}
.tli::before{content:"";position:absolute;left:-25px;top:6px;width:10px;height:10px;border-radius:50%;background:var(--mut,#888)}
.tli.ok::before{background:var(--acc2)}.tli.no::before{background:var(--red)}
.tla{font-weight:800;min-width:42px}.tld{font-size:16px}.tlt{flex:1}
/* ---- variações no painel ---- */
.hud .stat{position:relative}
.dlt{position:absolute;right:10px;top:6px;font-weight:800;font-size:13px;animation:dltup 1.8s ease forwards;pointer-events:none}
.dlt.up{color:var(--acc2)}.dlt.dn{color:var(--red)}
@keyframes dltup{0%{opacity:0;transform:translateY(6px)}15%{opacity:1}100%{opacity:0;transform:translateY(-12px)}}
/* ---- movimento e foco ---- */
@keyframes cardin{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.bar>i{transition:width .5s ease}
button:focus-visible,select:focus-visible,.tab:focus-visible,.opt:focus-visible{outline:3px solid var(--acc2);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* ---- celular: abas fixas embaixo ---- */
@media (max-width:700px){
  .tabs{position:fixed;left:0;right:0;bottom:0;z-index:40;margin:0;padding:4px 6px calc(4px + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line);border-bottom:0;justify-content:space-around;overflow-x:auto;gap:2px}
  .tab{flex:1;padding:8px 6px;font-size:12px;border-bottom:0;border-top:3px solid transparent;text-align:center}
  .tab.on{border-top-color:var(--acc2);color:var(--acc2)}
  #app{padding-bottom:72px}
}

.agora .ag-i.aqui{cursor:default}.agora .ag-i.aqui:hover{background:transparent}

.orc-bar{display:flex;height:30px;border-radius:10px;overflow:hidden;margin:10px 0 6px;background:var(--line)}
.orc-bar i{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;font-style:normal;transition:width .25s}
.orc-leg{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--mut)}.orc-leg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px}
.orc-res{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--acc) 7%,transparent);border:1px solid var(--line)}
.orc-l{margin:16px 0 0}.orc-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.orc-v{font-weight:800}.orc-v small{font-weight:500;color:var(--mut)}
.orc-s{position:relative;height:30px;display:flex;align-items:center}
.orc-s input{width:100%;margin:0;-webkit-appearance:none;appearance:none;height:8px;border-radius:99px;outline:0;cursor:pointer;
 background:linear-gradient(to right,var(--cor) 0,var(--cor) calc(var(--v,0%)),var(--line) calc(var(--v,0%)),var(--line) 100%)}
.orc-s input::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:3px solid var(--cor);box-shadow:0 1px 4px rgba(0,0,0,.35)}
.orc-s input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:3px solid var(--cor)}
.orc-m{position:absolute;left:var(--rec);top:3px;bottom:3px;width:3px;margin-left:-1px;background:var(--txt,currentColor);opacity:.55;border-radius:2px;pointer-events:none}
.orc-s input:focus-visible{outline:2px solid var(--cor);outline-offset:4px}

#apCorpo *,#apCorpo .lc .ln,#apCorpo .lc .dt,#apCorpo .lc .lab{animation:none!important}#apCorpo .lc .ln{stroke-dashoffset:0}#apCorpo .lc .dt,#apCorpo .lc .lab{opacity:1}

/* =====================================================================
   IDENTIDADE: Palanque. Botões como teclas de urna, bandeirolas, santinho.
   ===================================================================== */
h1,h2,h3{font-family:var(--disp);letter-spacing:-.01em}
h3{font-size:17px}
.ic{flex:none;vertical-align:-4px}
.lb{display:block;font-weight:800;font-size:14px;margin:14px 0 6px}
.card{border:2px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:2px solid var(--hard);background:var(--card);border-radius:12px;font-weight:800;box-shadow:0 3px 0 var(--hard);transition:transform .08s,box-shadow .08s}
.btn:hover{border-color:var(--hard);filter:brightness(1.04)}
.btn:active{transform:translateY(3px);box-shadow:0 0 0 var(--hard)}
.btn.pri{background:var(--acc);color:var(--accink);border-color:var(--hard)}
.btn.ghost{background:transparent;box-shadow:none;border-color:var(--line)}
.btn.ghost:hover{border-color:var(--ink)}
.btn.sq{padding:0}.btn.sm{padding:6px 10px;font-size:13px;box-shadow:0 2px 0 var(--hard)}
.btn[disabled]{box-shadow:none}
.chip{border:2px solid var(--line);font-weight:700}
.chip.sel{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.tag{border:1.5px solid var(--line)}
input,select{border:2px solid var(--line);border-radius:12px}
input:focus,select:focus{outline:3px solid var(--acc2);outline-offset:0;border-color:var(--ink)}
.res{border-left-width:6px;border-radius:12px}

/* topo: faixa de bandeirolas */
#topo{background:var(--hdr);padding:10px 16px;box-shadow:none;position:sticky}
#topo .logo{display:flex;align-items:center;gap:10px;font-family:var(--disp);font-size:21px;letter-spacing:-.02em;cursor:default}
#topo .lgm{display:inline-flex;width:36px;height:36px;border-radius:9px;overflow:hidden;background:#fff}#topo .lgm svg{width:100%;height:100%}
#topo .info{font-size:13px}
.iconbtn{display:inline-flex;align-items:center;gap:6px;border-radius:10px;background:rgba(255,255,255,.1);border:2px solid rgba(255,255,255,.28);font-weight:800}
.iconbtn:hover{background:rgba(255,255,255,.2)}
.iconbtn:focus-visible{outline:3px solid var(--acc2);outline-offset:2px}

/* título */
.hero{max-width:820px;margin:0 auto;padding:6px 0 24px;text-align:center}
.palco{border:3px solid var(--hard);border-radius:22px;overflow:hidden;box-shadow:0 8px 0 var(--hard);background:#1d4ed8;line-height:0}
.palco-svg{width:100%;height:auto;max-height:46vh;display:block}
.flags{transform-origin:50% 0;animation:sway 6s ease-in-out infinite alternate}
@keyframes sway{from{transform:rotate(-.5deg)}to{transform:rotate(.5deg)}}
.hero h1.marca{font-size:clamp(46px,11vw,92px);margin:48px 0 4px;letter-spacing:-.04em;line-height:.95;text-shadow:4px 4px 0 var(--acc2)}
:root[data-theme="dark"] .hero h1.marca{text-shadow:4px 4px 0 #15803d}
.hero .lema{font-family:var(--disp);font-size:clamp(18px,3.4vw,24px);margin:10px auto 6px;color:var(--ink);max-width:none}
.hero .sub{max-width:520px;margin:6px auto 0;color:var(--mut)}
.hero-btn{justify-content:center;margin-top:22px;gap:14px}
.escada{display:flex;align-items:flex-end;gap:6px;max-width:560px;margin:34px auto 0}
.deg{flex:1;height:var(--h);background:var(--c);border:2.5px solid var(--hard);border-radius:10px 10px 0 0;display:flex;align-items:flex-end;justify-content:center;padding:0 2px 6px;box-shadow:0 3px 0 var(--hard);color:#14301f}
.deg{color:#fff}.deg:nth-child(3){color:#14301f}
.deg span{font-weight:800;font-size:11.5px;line-height:1.1;display:flex;flex-direction:column;align-items:center;gap:2px}
.disc{max-width:620px;margin:26px auto 0;font-size:12px;color:var(--mut)}

/* abas */
.tabs{gap:6px;border-bottom:0;margin:10px 0 14px;padding-bottom:2px}
.tab{display:inline-flex;align-items:center;gap:7px;border:2px solid transparent;border-radius:12px;padding:8px 13px;color:var(--mut);font-weight:800}
.tab:hover{color:var(--ink);background:var(--card)}
.tab.on{background:var(--ink);color:var(--bg);border-color:var(--ink);border-bottom-color:var(--ink)}
.tab .ic{width:18px;height:18px}

/* painel */
.stat{border:2px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.stat .v{font-family:var(--disp);font-size:20px}
.hoje{border:2px solid var(--hard);border-top:6px solid var(--acc2);border-radius:18px;box-shadow:0 5px 0 var(--hard)}
.hoje .dia{font-family:var(--disp)}
.next{border-left-width:6px}

/* criação em passos */
.wz{max-width:700px;margin:0 auto}
.wz-prog{display:flex;list-style:none;margin:6px 0 16px;padding:0;gap:6px}
.wz-prog li{flex:1;min-width:0}
.wz-prog button{width:100%;display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:0;padding:0;color:var(--mut);font-weight:700;font-size:12px}
.wz-prog i{width:32px;height:32px;border-radius:50%;border:2px solid var(--line);background:var(--card);display:flex;align-items:center;justify-content:center;font-style:normal;font-weight:900;font-size:14px}
.wz-prog li.at i{background:var(--acc2);border-color:var(--hard);color:#14301f;box-shadow:0 3px 0 var(--hard)}
.wz-prog li.ok i{background:var(--ok);border-color:var(--ok);color:#fff}
.wz-prog li.at button{color:var(--ink)}
.wz-prog button:not([disabled]){cursor:pointer}
.wz-prog span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.wz-card{padding:22px 22px 24px}
.wz-h{font-size:clamp(24px,5vw,32px);line-height:1.05}
.wz-s{margin:8px 0 18px;color:var(--mut)}
.wz-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 8px}
.wz-id{display:flex;gap:20px;align-items:center}
.foto-btn{position:relative;cursor:pointer;flex:none}
.foto-btn .av{border:3px solid var(--hard);box-shadow:0 4px 0 var(--hard)}
.foto-cam{position:absolute;right:-4px;bottom:-2px;width:34px;height:34px;border-radius:50%;background:var(--acc2);color:#14301f;border:2px solid var(--hard);display:flex;align-items:center;justify-content:center}
.big-in{width:100%;font-size:20px;font-weight:800;padding:12px 14px}
.wz-id select{width:100%}
.wz-linha{margin-top:10px}
.sw{border:3px solid transparent;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55)}
.sw.sel{border-color:var(--ink);transform:scale(1.12)}
.oc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}
.oc{padding:11px 12px;text-align:left;border:2px solid var(--line);background:var(--card);border-radius:12px;font-weight:800}
.oc:hover{border-color:var(--ink)}
.oc.sel{background:var(--ink);color:var(--bg);border-color:var(--ink);box-shadow:0 3px 0 var(--acc2)}
.pontos{font-weight:900;font-size:13px;padding:4px 10px;border-radius:99px;background:var(--acc2);color:#14301f;border:2px solid var(--hard)}
.pontos.zero{background:var(--ok);color:#fff;border-color:var(--ok)}
.at-l{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 0;border-top:2px dashed var(--line)}
.at-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.at-c{display:flex;align-items:center;gap:8px;flex:none}
.at-c .btn.sq{width:34px;height:34px;font-size:18px}
.pips{display:flex;gap:3px}.pips i{width:9px;height:18px;border-radius:3px;background:var(--line)}.pips i.on{background:var(--acc)}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.tiles div{border:2px solid var(--line);border-radius:14px;padding:12px;background:var(--card2);display:flex;flex-direction:column;gap:2px}
.tiles b{font-family:var(--disp);font-size:clamp(17px,4vw,24px)}.tiles span{font-size:12px;color:var(--mut)}
.qz-top{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.qz-q{font-family:var(--disp);font-size:clamp(20px,4.6vw,26px);line-height:1.2;margin:4px 0 16px}
.qz-r{display:grid;gap:8px}
.qa{padding:13px 14px;border:2px solid var(--hard);border-radius:12px;background:var(--card);font-weight:800;text-align:left;box-shadow:0 3px 0 var(--hard);transition:transform .08s,box-shadow .08s}
.qa:hover{background:var(--card2)}.qa:active{transform:translateY(3px);box-shadow:none}
.qa.sel{background:var(--acc);color:var(--accink)}
.sug{display:grid;gap:8px}
.sg{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:12px 14px;border:2px solid var(--line);border-radius:14px;background:var(--card)}
.sg:hover{border-color:var(--ink)}.sg.sel{border-color:var(--ink);box-shadow:0 3px 0 var(--ink)}
.stz{display:flex;gap:16px;align-items:center;padding:16px;border:3px solid var(--hard);border-radius:18px;background:var(--card2);box-shadow:0 6px 0 var(--hard);border-left:16px solid var(--c);transform:rotate(-.6deg)}
.stz-ft .av{border:3px solid var(--hard)}
.stz-n{font-family:var(--disp);font-size:clamp(20px,5vw,28px);line-height:1.05}
.stz-p{font-weight:700;margin:4px 0 8px;color:var(--mut)}
.stz-dg{display:flex;gap:5px}.stz-dg i{width:34px;height:42px;border:2.5px solid var(--hard);background:#f8faee;color:#14301f;font-style:normal;font-weight:900;font-size:24px;display:flex;align-items:center;justify-content:center;font-family:"Courier New",monospace}
.stz-l{margin-top:8px;font-size:13px;font-weight:700}

@media(max-width:600px){
  #topo{padding:8px 10px}
  #topo .logo{font-size:18px}
  #topo .lgm{width:30px;height:30px}
  .iconbtn .bl{display:none}
  .iconbtn,#btnTema,#btnSom{font-size:0;padding:6px 9px;min-height:34px}
  .wz-card{padding:16px 14px 18px}
  .wz-prog span{display:none}
  .wz-prog li.at span{display:block}
  .wz-id{flex-direction:column;align-items:stretch;text-align:left}
  .foto-btn{align-self:center}
  .oc-grid{grid-template-columns:1fr 1fr}
  .at-l{flex-wrap:wrap}
  .pips i{width:8px}
  .stz{padding:12px;gap:12px}
  .stz-dg i{width:28px;height:36px;font-size:20px}
  .tiles div{padding:9px}
  .escada .deg span{font-size:9.5px}
}
@media(max-width:700px){
  .tabs{background:var(--card);border-top:3px solid var(--hard);padding:4px 4px calc(4px + env(safe-area-inset-bottom))}
  .tab{flex-direction:column;gap:2px;font-size:11px;padding:6px 4px;border-radius:10px;border:0;border-top:0}
  .tab.on{background:var(--acc2);color:#14301f}
  .tab .ic{width:20px;height:20px}
}


/* ===== Central política / gabinete ===== */
.centro-pol{margin:0 0 14px;border:2px solid var(--hard);border-radius:22px;overflow:hidden;box-shadow:0 6px 0 var(--hard);background:linear-gradient(180deg,#f7faf4 0%,#eef5ed 100%)}
.cp-wrap{display:grid;grid-template-columns:minmax(320px,1.15fr) minmax(260px,.85fr);min-height:320px}
.cp-main{position:relative;padding:22px 22px 18px;background:linear-gradient(135deg,rgba(22,132,71,.06),rgba(245,197,24,.08));border-right:2px solid var(--line)}
.cp-tag{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1.5px solid rgba(22,132,71,.28);border-radius:999px;background:rgba(255,255,255,.75);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#0f6d5b}
.cp-title{font-family:var(--disp);font-size:clamp(28px,5vw,44px);line-height:.95;margin:14px 0 8px;letter-spacing:-.03em;color:#0f3d59}
.cp-sub{font-size:clamp(16px,2vw,20px);font-weight:800;color:#127f86;margin:0 0 6px}
.cp-desc{max-width:520px;color:#466072;line-height:1.5;margin:0 0 16px}
.cp-badges{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 16px}
.cp-badges .chip{background:#fff}
.cp-scene{position:relative;height:148px;border:2px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#d9ebe8 0%,#d3e7dd 54%,#bdd9c0 54%,#b0d0b7 100%);overflow:hidden;box-shadow:inset 0 -10px 0 rgba(15,61,89,.06)}
.cp-sun{position:absolute;right:28px;top:16px;width:62px;height:62px;border-radius:50%;background:rgba(245,197,24,.65)}
.cp-window{position:absolute;left:28px;top:18px;width:138px;height:76px;border:5px solid #2c6982;border-bottom-width:7px;background:linear-gradient(180deg,#cfe8f1 0%,#eaf6ff 100%);box-shadow:inset 0 -14px 0 rgba(22,104,178,.12)}
.cp-window:before,.cp-window:after{content:"";position:absolute;background:#2c6982}
.cp-window:before{left:50%;top:0;bottom:0;width:4px;transform:translateX(-50%)}
.cp-window:after{left:0;right:0;top:50%;height:4px;transform:translateY(-50%)}
.cp-city{position:absolute;left:18px;right:18px;bottom:57px;height:70px;display:flex;align-items:flex-end;gap:10px;opacity:.55}
.cp-city i{display:block;background:#8fb2b8;border-radius:5px 5px 0 0;flex:1}
.cp-city i:nth-child(1){height:42px}.cp-city i:nth-child(2){height:64px}.cp-city i:nth-child(3){height:50px}.cp-city i:nth-child(4){height:78px}.cp-city i:nth-child(5){height:46px}.cp-city i:nth-child(6){height:58px}
.cp-desk{position:absolute;left:18px;right:18px;bottom:18px;height:36px;border-radius:16px 16px 8px 8px;background:#19506b;box-shadow:0 10px 0 #0f3d59}
.cp-desk:before{content:"";position:absolute;left:26px;right:26px;top:-14px;height:16px;border-radius:10px 10px 2px 2px;background:#1f7185}
.cp-flag{position:absolute;right:118px;bottom:58px;width:54px;height:54px}
.cp-flag:before{content:"";position:absolute;left:8px;bottom:0;width:5px;height:54px;background:#0f3d59;border-radius:4px}
.cp-flag:after{content:"";position:absolute;left:13px;top:4px;width:34px;height:22px;background:#1f9d4a;clip-path:polygon(0 0,100% 18%,82% 100%,0 84%);border-radius:2px}
.cp-pessoas{position:absolute;right:20px;bottom:16px;display:flex;gap:10px;align-items:flex-end}
.cp-pessoas b{display:block;width:14px;height:14px;border-radius:50%;background:#f1c39f;margin:0 auto 2px}
.cp-pessoas span{display:block;width:34px;height:52px;border-radius:18px 18px 6px 6px;background:#e1b14a}.cp-pessoas span:nth-child(2){background:#1f9d4a}.cp-pessoas span:nth-child(3){background:#2c6982}
.cp-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.cp-actions .btn{min-width:160px}
.cp-side{padding:22px 18px 18px;background:rgba(255,255,255,.72)}
.cp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:14px}
.cp-head .xs{letter-spacing:.08em;text-transform:uppercase;font-weight:900;color:#6b7f86}
.cp-head b{display:block;font-family:var(--disp);font-size:23px;line-height:1;color:#0f3d59;margin-top:4px}
.cp-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.cp-stat{border:2px solid var(--line);border-radius:16px;padding:12px 12px 10px;background:#f9fbf8;box-shadow:0 3px 0 rgba(15,61,89,.08)}
.cp-stat .lb{margin:0 0 4px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#6b7f86}
.cp-stat .vv{font-family:var(--disp);font-size:25px;line-height:1;color:#0f3d59}
.cp-stat .sm{color:#6b7f86}
.cp-alerts{display:grid;gap:10px}
.cp-alert{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:12px;border:2px solid var(--line);border-radius:16px;background:#fff;cursor:pointer;box-shadow:0 3px 0 rgba(15,61,89,.07)}
.cp-alert:hover{border-color:#1f7185;transform:translateY(-1px)}
.cp-alert.aqui{cursor:default}
.cp-alert.aqui:hover{transform:none}
.cp-ico{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eaf3ee;font-size:18px}
.cp-tx b{display:block;font-size:14px;line-height:1.25;color:#13384c}
.cp-tx small{display:block;color:#6b7f86;margin-top:2px}
.cp-go{font-size:22px;color:#7b8d94}
.cp-foot{margin-top:12px;padding:12px;border-radius:16px;background:rgba(31,157,74,.08);border:1px dashed rgba(22,132,71,.35);color:#30535a}
.cp-foot b{color:#0f3d59}
@media(max-width:980px){.cp-wrap{grid-template-columns:1fr}.cp-main{border-right:0;border-bottom:2px solid var(--line)}}
@media(max-width:700px){.cp-main,.cp-side{padding:16px 14px}.cp-title{font-size:34px}.cp-scene{height:130px}.cp-window{width:110px;height:62px}.cp-mini{grid-template-columns:1fr 1fr}.cp-actions .btn{min-width:0;flex:1}}
@media(max-width:460px){.cp-mini{grid-template-columns:1fr}.cp-actions{flex-direction:column}.cp-actions .btn{width:100%}}

@media (prefers-reduced-motion:reduce){.flags{animation:none}}
.qz-q,.stz-n,.hero .lema,.tiles b{font-weight:900}
.stz{transform:none}

/* urna eletrônica (modelo do TSE) */
.urna{display:block;background:linear-gradient(#ececE8,#dcdcd6);border:2px solid #b3b3ac;border-radius:20px 20px 12px 12px;padding:16px 16px 20px;box-shadow:0 6px 0 #9d9d96;color:#1a1a1a}
.urna .moldura{background:#0b0b0b;border-radius:8px;padding:9px;box-shadow:inset 0 0 0 2px #333}
.urna .tela{background:#eaf1f7;color:#0f1a24;border:0;border-radius:3px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;min-height:280px}
.urna .tela .rod{border-top-color:#0f1a24}
.urna .dg{background:#fff;border-color:#0f1a24}
.urna .teclado{display:flex;gap:22px;justify-content:center;align-items:flex-start;margin-top:18px}
.urna .nums{display:grid;grid-template-columns:repeat(3,56px);gap:9px}
.urna .acoes{display:flex;flex-direction:column;gap:9px;width:104px}
.urna .tk{height:40px;padding:0;background:#2b2b2b;color:#fff;border:0;border-bottom:4px solid #0d0d0d;border-radius:6px;font-size:18px;font-weight:800;position:relative}
.urna .tk.t5::after{content:"";position:absolute;left:50%;bottom:5px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:#9a9a9a}
.urna .tk.br{background:#fff;color:#111;font-size:12px;border-bottom-color:#a9a9a9;border:1px solid #bbb;border-bottom-width:4px}
.urna .tk.co{background:#f28a1f;color:#111;font-size:12px;border-bottom-color:#a35a0c}
.urna .tk.ok{background:#1f9d4a;color:#fff;font-size:12px;height:64px;border-bottom-color:#126b30}
.urna .tk:active{transform:translateY(2px);border-bottom-width:2px}
@media(max-width:420px){.urna .nums{grid-template-columns:repeat(3,48px)}.urna .acoes{width:92px}.urna .teclado{gap:14px}}
.qv{margin-top:8px}.qv summary{cursor:pointer}
.meta{background:var(--card);border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:14px;padding:10px 14px;margin-bottom:12px}
.meta .mt{display:flex;gap:10px;align-items:center}.meta .mi{color:var(--blue);display:flex}.meta .mm{margin-top:6px;display:flex;gap:6px;flex-wrap:wrap}.meta .mf{margin-top:6px}
.tut{background:var(--card);border:2px dashed var(--acc);border-radius:14px;padding:12px 14px;margin-bottom:12px}
table.resumo{width:100%}.resumo .up{color:var(--ok);font-weight:800}.resumo .dn{color:var(--red);font-weight:800}
.ao-vivo{display:inline-flex;align-items:center;gap:6px;background:#b91c1c;color:#fff;font-weight:900;font-size:12px;letter-spacing:.08em;padding:3px 10px;border-radius:6px}
.ao-vivo .rec{width:8px;height:8px;border-radius:50%;background:#fff;animation:pisca 1s infinite}
@keyframes pisca{50%{opacity:.2}}
.eleito.cena{animation:fade2 .4s}.eleito.cena h1{font-size:clamp(32px,8vw,64px)}
.hemi.plen .lz{fill:#334155;transition:fill .15s}
:root[data-theme="light"] .hemi.plen .lz,:root:not([data-theme="dark"]) .hemi.plen .lz{fill:#cbd5e1}
.hemi.plen .on-s{fill:#22c55e;stroke:#22c55e;stroke-width:3.2}
.hemi.plen .on-n{fill:#ef4444;stroke:#dc2626;stroke-width:3.2}
.hemi.plen .on-a{fill:#f59e0b;stroke:#f59e0b;stroke-width:3.2}
.hemi.plen .voce{stroke:#facc15;stroke-width:2}
.plc{display:flex;gap:10px;justify-content:center;margin-top:6px}
.plc div{text-align:center;font-size:11px;font-weight:800;letter-spacing:.04em;padding:6px 14px;border-radius:10px;background:var(--bg);border:1px solid var(--line)}
.plc b{display:block;font-size:26px;font-family:var(--disp)}
.plc .s b{color:#16a34a}.plc .n b{color:#dc2626}.plc .a b{color:#d97706}

/* ===== urna 3D ===== */
.u3d{perspective:1300px;perspective-origin:50% 40%;padding:22px 26px 30px 8px;margin:4px 0}
.u3d .urna{position:relative;transform-style:preserve-3d;transform:rotateX(-7deg) rotateY(-17deg);transition:transform .12s ease-out;
  background:none;border:0;padding:0;box-shadow:none;border-radius:0;display:block;--D:46px}
.u3d .frente{position:relative;background:linear-gradient(165deg,#ecece8 0%,#dcdcd6 55%,#cfcfc8 100%);border-radius:18px 18px 10px 10px;padding:18px 18px 20px;
  box-shadow:inset 0 2px 0 #fff,inset 0 -3px 6px rgba(0,0,0,.12),0 0 0 1px #aaa9a2;color:#1a1a1a}
.u3d .fc{position:absolute;display:block;background:#bdbdb5}
.u3d .lado{left:100%;top:6px;width:var(--D);height:calc(100% - 6px);transform-origin:left center;transform:rotateY(90deg);
  background:linear-gradient(90deg,#c9c9c2,#a4a49c);border-radius:0 0 8px 0}
.u3d .topo{left:14px;right:0;bottom:100%;height:var(--D);transform-origin:center bottom;transform:rotateX(90deg);
  background:linear-gradient(0deg,#e2e2dc,#f2f2ee);border-radius:14px 14px 0 0}
.u3d::after{content:"";display:block;height:18px;margin:-10px 6% 0 4%;background:radial-gradient(ellipse at center,rgba(0,0,0,.35),transparent 70%);filter:blur(4px)}
.u3d .moldura{position:relative;background:#050505;padding:11px;border-radius:7px;box-shadow:inset 0 0 0 2px #2a2a2a,0 1px 0 #fff}
.u3d .moldura::after{content:"";position:absolute;inset:11px;border-radius:3px;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,.16) 0%,rgba(255,255,255,0) 38%)}
.u3d .teclado{display:flex;align-items:flex-end;justify-content:center;gap:34px;margin-top:20px}
.u3d .logoje{display:flex;flex-direction:column;align-items:flex-start;color:#c3c3bb;text-shadow:0 1px 0 #fff,0 -1px 0 rgba(0,0,0,.18);min-width:96px}
.u3d .logoje svg{filter:drop-shadow(0 1px 0 #fff)}
.u3d .logoje b{font-size:13px;line-height:1.05;margin-top:2px;color:#b9b9b1}
.u3d .logoje span{font-size:12px;font-weight:700;border:1px solid #c1c1b9;border-radius:3px;padding:1px 6px;margin-top:8px;color:#b4b4ac}
.u3d .nums{grid-template-columns:repeat(3,52px);gap:9px}
.u3d .acoes{width:100px;gap:9px}
.u3d .tk{height:38px;background:linear-gradient(#3a3a3a,#1f1f1f);border:0;border-bottom:5px solid #0a0a0a;border-radius:7px;box-shadow:0 2px 3px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.14);color:#f1f1f1;font-size:17px}
.u3d .tk.t5::after{content:"";position:absolute;left:50%;bottom:6px;width:10px;height:2px;margin-left:-5px;border-radius:2px;background:#8a8a8a}
.u3d .tk.br{background:linear-gradient(#fff,#ececec);color:#222;border:1px solid #c8c8c8;border-bottom:5px solid #9b9b9b;font-size:11px;letter-spacing:.02em}
.u3d .tk.co{background:linear-gradient(#f6963a,#e57b14);color:#1a1a1a;border-bottom:5px solid #8f4c08;font-size:11px}
.u3d .tk.ok{background:linear-gradient(#3fb866,#238a46);color:#0e2a18;border-bottom:5px solid #146030;font-size:11px;height:60px}
.u3d .tk.ok,.u3d .tk.co,.u3d .tk.br{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-weight:800}
.u3d .bra{display:block;width:30px;height:5px;background:radial-gradient(circle,rgba(0,0,0,.45) 1.1px,transparent 1.6px) 0 0/6px 5px repeat-x;opacity:.8}
.u3d .tk:active{transform:translateY(3px);border-bottom-width:2px}
@media(max-width:520px){.u3d{padding:12px 14px 22px 4px}.u3d .urna{--D:26px}.u3d .frente{padding:12px 12px 14px}.u3d .logoje{display:none}.u3d .teclado{justify-content:center;gap:14px}.u3d .nums{grid-template-columns:repeat(3,46px);gap:8px}.u3d .acoes{width:92px}.u3d .tela{min-height:240px}}
@media(prefers-reduced-motion:reduce){.u3d .urna{transition:none}}
.u3d{perspective:1800px;max-width:680px;margin-left:auto;margin-right:auto}
.u3d .urna{--D:62px}
.u3d .urna{transition:none;--D:70px}
.u3d .frente{background:linear-gradient(160deg,#e4e4e0 0%,#d3d3ce 60%,#c6c6c0 100%);box-shadow:inset 0 2px 0 #f4f4f1,inset 0 -4px 8px rgba(0,0,0,.14),0 0 0 1px #9c9b94}
.u3d .lado{background:linear-gradient(90deg,#b4b4ad,#8f8f88)}
.u3d .topo{background:linear-gradient(0deg,#cfcfc9,#e8e8e3)}
.u3d .moldura{padding:16px;background:#0a0a0a}
.u3d .moldura::after{inset:16px}
.u3d .teclado{justify-content:flex-end;gap:26px;padding-right:4%}
.u3d .nums{grid-template-columns:repeat(3,56px);gap:10px}
.u3d .tk{height:42px}
.u3d .acoes{width:108px}
@media(max-width:520px){.u3d .urna{--D:34px}.u3d .teclado{justify-content:center;padding-right:0}.u3d .nums{grid-template-columns:repeat(3,46px)}.u3d .tk{height:38px}.u3d .acoes{width:92px}}
.qa.lk{pointer-events:none}
.qa.sel{animation:qaPop .25s ease-out}
@keyframes qaPop{0%{transform:scale(.96)}60%{transform:scale(1.03)}100%{transform:scale(1)}}
.intro-bar{height:6px;border-radius:4px;background:var(--line);overflow:hidden;margin-top:10px}
.intro-bar i{display:block;height:100%;width:100%;background:var(--acc);transform-origin:left;animation:introb 6.5s linear forwards}
@keyframes introb{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* tour guiado */
#tour{position:fixed;inset:0;z-index:150}
#tour .th{position:fixed;border:3px solid var(--acc2,#f5c518);border-radius:12px;box-shadow:0 0 0 100vmax rgba(8,12,10,.55);pointer-events:none;transition:all .2s}
#tour.sem{background:rgba(8,12,10,.62)}
#tour .tc{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(380px,calc(100vw - 24px));background:var(--card);color:var(--fg,inherit);border-radius:14px;padding:14px 16px;box-shadow:0 10px 40px rgba(0,0,0,.45);max-height:calc(100vh - 24px);overflow:auto}
#tour .tc[style*="left"]{transform:none}
#tour .tc h3{margin:2px 0 6px}
#tour .tb{margin-top:12px;gap:8px;align-items:center;flex-wrap:wrap}

.mt2{display:grid;grid-template-columns:minmax(120px,170px) 1fr minmax(90px,auto);gap:8px;align-items:center;padding:4px 0;cursor:pointer;font-size:13px}
.mt2.ok{color:var(--acc)}.mt2 .bar{height:7px}
@media(max-width:600px){.mt2{grid-template-columns:1fr 1fr}.mt2 .bar{grid-column:1/3;order:3}}

.clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;cursor:pointer}
.acao.fraca{opacity:.62}
.acao.fraca:hover{opacity:1}
.tag.mute{background:var(--card2);color:var(--mut)}
.prio{border-left:5px solid var(--acc2)}
.prio .acao{margin:8px 0 0}
.dchip{display:inline-block;padding:1px 8px;border-radius:99px;font-size:12px;font-weight:700;margin:3px 4px 0 0;background:var(--card2)}
.dchip.good{color:var(--acc)}
.dchip.bad{color:var(--red)}
.rel-i{padding:8px 0;border-bottom:1px dashed var(--line)}
.rel-i:last-child{border-bottom:0}

/* MEU MANDATO — ESTÚDIO ELEITORAL (reforma exclusivamente visual) */
#modal.mm-apuracao{width:min(1080px,100%);padding:0;overflow:hidden;background:#0d1727;color:#eef4ff;border:1px solid #33465d;box-shadow:0 30px 90px #0009}
.mm-apuracao .ap-broadcast{background:radial-gradient(circle at 80% -30%,#315d80 0%,transparent 55%),linear-gradient(120deg,#101b30,#182c45);padding:24px 26px 20px;border-bottom:1px solid #34506b}
.mm-apuracao .ap-kicker{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#c1d0e2;text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:900}
.mm-apuracao .ap-live{background:#e93245;color:white;padding:5px 10px;border-radius:5px;letter-spacing:.09em;display:inline-flex;align-items:center;gap:6px}
.mm-apuracao .ap-dot{height:7px;width:7px;border-radius:50%;background:white;animation:pisca 1.3s infinite}
.mm-apuracao .apu-top{align-items:center;gap:20px;margin-top:15px}
.mm-apuracao .apu-top h2{font-family:system-ui,sans-serif;font-size:clamp(23px,3vw,38px);font-weight:850;letter-spacing:-.045em;color:#fff;margin:0 0 7px}
.mm-apuracao .apu-top .mut{color:#afc1d7}
.mm-apuracao .ap-progress{text-align:right;min-width:180px}
.mm-apuracao .ap-progress .pctApu{font-size:clamp(30px,4vw,48px);font-weight:900;letter-spacing:-.05em;color:#f9c94b}
.mm-apuracao .ap-progress .xs{color:#c1d0e2}
.mm-apuracao .ap-track{height:7px;overflow:hidden;border-radius:99px;background:#33475e;margin-top:17px}
.mm-apuracao .ap-track>i{display:block;height:100%;width:0;background:linear-gradient(90deg,#e6b736,#ffe17c);transition:width .3s}
.mm-apuracao .ap-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:14px 26px;background:#111e32;border-bottom:1px solid #2c4059}
.mm-apuracao .ap-controls .ap-caption{color:#91abc5;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;margin-right:6px}
.mm-apuracao .ap-controls .btn{background:#263850;color:#eaf2fd;border:1px solid #3b526c;box-shadow:none;padding:8px 13px;min-height:36px;border-radius:8px}
.mm-apuracao .ap-controls .btn.sel{background:#f4cc57;color:#152236;border-color:#f4cc57}
.mm-apuracao .ap-controls .ap-skip{margin-left:auto;background:#324b65}
.mm-apuracao #apCorpo,.mm-apuracao #apRod{padding:20px 26px 10px}
.mm-apuracao #apCorpo .cands{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 20px}
.mm-apuracao #apCorpo .cd{background:#192b42;border:1px solid #34506d;border-radius:14px;padding:16px;color:#f5f8fe;box-shadow:inset 4px 0 0 var(--c)}
.mm-apuracao #apCorpo .cd:first-child{background:linear-gradient(135deg,#243d57,#1b2d45);border-color:#d7b453}
.mm-apuracao #apCorpo .cd.win{outline:2px solid #f6cb51}
.mm-apuracao #apCorpo .cd .mut{color:#a9bbd0}
.mm-apuracao #apCorpo .cd .pc{font-size:clamp(24px,3.5vw,36px);letter-spacing:-.04em;white-space:nowrap}
.mm-apuracao #apCorpo .cd .bar{height:9px;background:#3c5067;margin-top:11px}
.mm-apuracao #apCorpo .card,.mm-apuracao #apRod .card{background:#18283d;color:#ebf3fc;border:1px solid #324860;box-shadow:none;border-radius:14px;padding:18px;min-width:0}
.mm-apuracao #apCorpo h3,.mm-apuracao #apRod h3{font:800 16px system-ui,sans-serif;letter-spacing:0;margin-bottom:12px;color:#ecf3fe}
.mm-apuracao #apCorpo .grid2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.mm-apuracao #apCorpo .lc text{fill:#abc0d8}
.mm-apuracao #apCorpo .lc .grid{stroke:#37506b}
.mm-apuracao #apCorpo table th,.mm-apuracao #apRod table th{color:#a9c1da}
.mm-apuracao #apCorpo table td,.mm-apuracao #apRod table td{border-color:#324960}
.mm-apuracao #apCorpo .pill{background:#efc94f;color:#192331}
.mm-apuracao #apCorpo .legend{color:#ced9e7}
.mm-apuracao #mapa path{stroke:#122033;stroke-width:1.4}
.mm-apuracao #mapa path:hover{filter:brightness(1.3);stroke:#f4cf64;stroke-width:2}
.mm-apuracao #apRod{padding-bottom:26px}
.mm-apuracao #apRod .res{background:#253c50;color:#fff;border-color:#e6c253}
.mm-apuracao #apRod .btn{background:#f4cc57;color:#142138;border-color:#f4cc57;box-shadow:none}
@media(max-width:700px){#modal.mm-apuracao{width:100%;max-height:95dvh;overflow-y:auto;border-radius:18px 18px 0 0}.mm-apuracao .ap-broadcast{padding:17px 15px}.mm-apuracao .apu-top{align-items:flex-start}.mm-apuracao .ap-progress{min-width:120px;text-align:left}.mm-apuracao .ap-controls{padding:12px 15px}.mm-apuracao .ap-controls .ap-skip{margin-left:0}.mm-apuracao #apCorpo,.mm-apuracao #apRod{padding:15px}.mm-apuracao #apCorpo .cands,.mm-apuracao #apCorpo .grid2{grid-template-columns:1fr}.mm-apuracao #apCorpo .cd{padding:12px}.mm-apuracao #apCorpo .cd .pc{font-size:25px}}
@media(prefers-reduced-motion:reduce){.mm-apuracao .ap-dot{animation:none}}

/* V2: HUD de jogo estratégico / apuração — sem alterar motor eleitoral */
#modal.mm-apuracao{width:min(1380px,calc(100vw - 32px));max-height:95vh;max-height:95dvh;overflow-y:auto;border:2px solid #6179a2;border-radius:12px;background:#071122;color:#f4f7ff;box-shadow:0 0 0 6px #030b19,0 28px 90px #000c}
.mm-apuracao .ap-broadcast{position:relative;padding:15px 22px 14px;background:linear-gradient(108deg,#172c54 0%,#09162c 55%,#152c50 100%);border-bottom:2px solid #365b8a;overflow:hidden}
.mm-apuracao .ap-broadcast:before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(130deg,transparent 0 30px,#fff1 31px 32px);opacity:.12}
.mm-apuracao .ap-kicker{font-size:11px;letter-spacing:.17em;color:#9fbcdb}
.mm-apuracao .ap-live{border-radius:3px;box-shadow:0 0 20px #f43f5e77}
.mm-apuracao .apu-top{margin-top:5px}
.mm-apuracao .apu-top h2{font-family:var(--disp);font-weight:950;text-transform:uppercase;font-size:clamp(25px,3vw,36px);color:#fff}
.mm-apuracao .ap-progress .pctApu{font-family:var(--disp);font-size:clamp(38px,4.5vw,56px);color:#ffd24d;text-shadow:0 3px 0 #5e420a}
.mm-apuracao .ap-track{margin-top:10px;height:10px;border-radius:2px;background:#273d5a;border:1px solid #56749b}
.mm-apuracao .ap-track>i{border-radius:0;background:repeating-linear-gradient(100deg,#e9b22e 0 16px,#ffdb60 16px 20px)}
.mm-apuracao .ap-controls{padding:10px 22px;background:#0b1931;border-bottom:1px solid #38577b}
.mm-apuracao .ap-controls .btn{border-radius:5px;font-family:var(--disp)}
.mm-apuracao #apCorpo{padding:0}
.mm-apuracao .mm-game-stage{padding:15px 20px 22px;background:radial-gradient(ellipse at 45% 35%,#20375b 0,#0a172b 56%,#06101f 100%)}
.mm-apuracao .mm-section-label{display:flex;align-items:center;gap:10px;letter-spacing:.13em;font:900 12px system-ui,sans-serif;color:#e4efff;margin-bottom:10px}
.mm-apuracao .mm-section-label small{font-size:10px;color:#88a3c2;font-weight:800;letter-spacing:.1em}
.mm-apuracao .mm-stamp{background:#f5bf37;color:#182138;padding:3px 7px;transform:skew(-9deg);font-size:12px}
.mm-apuracao .mm-label-line{flex:1;height:1px;background:linear-gradient(90deg,#53769f,transparent)}
.mm-apuracao .mm-duel{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:9px;align-items:stretch;margin-bottom:18px}
.mm-apuracao .mm-candidate{display:flex;gap:12px;align-items:center;position:relative;background:linear-gradient(120deg,#1b3154,#122441);border:1px solid #4a6a91;border-left:5px solid var(--c);padding:14px;min-width:0;clip-path:polygon(0 0,calc(100% - 13px) 0,100% 13px,100% 100%,0 100%)}
.mm-apuracao .mm-candidate.my-candidate{background:linear-gradient(120deg,#38294d,#172945);border-color:#d85b8b}
.mm-apuracao .mm-candidate.elected{box-shadow:inset 0 0 25px #eabb3470;border-color:#f3d26d}
.mm-apuracao .mm-rank{font:900 24px var(--disp);color:#597497;min-width:28px}
.mm-apuracao .mm-cdetail{flex:1;min-width:0}
.mm-apuracao .mm-cname{font-weight:900;font-size:clamp(14px,1.55vw,19px);line-height:1.15;overflow-wrap:anywhere}
.mm-apuracao .mm-csub{font-size:11px;color:#a6bdd7;margin-top:4px}
.mm-apuracao .mm-bar{height:7px;background:#354d6b;margin-top:10px;border-radius:1px;overflow:hidden}
.mm-apuracao .mm-bar>i{display:block;height:100%;background:var(--c);box-shadow:0 0 14px var(--c);transition:width .3s}
.mm-apuracao .mm-cpercent{font:900 clamp(22px,3vw,41px) var(--disp);white-space:nowrap;letter-spacing:-.05em;text-shadow:0 2px 1px #0004}
.mm-apuracao .mm-cpercent small{font-size:.48em;color:#b1c6e0}
.mm-apuracao .mm-me{display:inline-block;background:#ffcc41;color:#172239;font-size:10px;padding:2px 6px;border-radius:2px;vertical-align:middle}
.mm-apuracao .mm-elected{position:absolute;right:9px;top:0;background:#ffce44;color:#192237;font-weight:900;font-size:9px;padding:2px 6px}
.mm-apuracao .mm-versus{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#849fc2;font-size:8px;font-weight:900;text-align:center}
.mm-apuracao .mm-versus strong{font:1000 30px var(--disp);color:#ffcb43;text-shadow:0 0 20px #f2a83d99;transform:skew(-7deg)}
.mm-apuracao .mm-main-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr);gap:14px}
.mm-apuracao .mm-region-stage,.mm-apuracao .mm-standings,.mm-apuracao .mm-trends{background:#0c1e39;border:1px solid #436187;box-shadow:inset 0 1px #ffffff12;padding:15px;min-width:0;position:relative}
.mm-apuracao .mm-region-stage{background:radial-gradient(ellipse at center,#193a65,#0c1d39 75%)}
.mm-apuracao .mm-district-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-height:330px;align-content:center}
.mm-apuracao .mm-district{position:relative;min-height:90px;padding:10px;background:linear-gradient(145deg,color-mix(in srgb,var(--regcolor) 45%,#10213c),#10213c);border:1px solid var(--regcolor);border-bottom:3px solid var(--regcolor);clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);display:flex;flex-direction:column;justify-content:flex-end;box-shadow:inset 0 0 15px #0006;transition:filter .2s,transform .2s}
.mm-apuracao .mm-district:hover{filter:brightness(1.35);transform:translateY(-2px)}
.mm-apuracao .mm-district-top{display:flex;justify-content:space-between;font:800 10px system-ui;color:#bed3ec;margin-bottom:auto}
.mm-apuracao .mm-district-dot{width:7px;height:7px;border-radius:50%;background:var(--regcolor);box-shadow:0 0 9px var(--regcolor)}
.mm-apuracao .mm-district strong{font-size:13px;line-height:1.2;overflow-wrap:anywhere}
.mm-apuracao .mm-district small{font-size:10px;color:#c6d2e4;margin-top:2px}
.mm-apuracao .mm-reg-bar{height:3px;background:#314461;margin-top:7px}.mm-apuracao .mm-reg-bar i{display:block;height:100%;background:#fbd14f}
.mm-apuracao .mm-region-note{font-size:11px;color:#a3bbd6;margin-top:10px}
.mm-apuracao .mm-map-surface svg{height:330px;max-height:330px;width:100%;filter:drop-shadow(0 6px 10px #0008)}
.mm-apuracao .mm-map-surface .legend{font-size:11px}
.mm-apuracao .mm-map-footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #456284;margin-top:12px;padding-top:10px;font:900 10px system-ui;letter-spacing:.05em;color:#b6cdea}
.mm-apuracao .mm-pulse{width:7px;height:7px;background:#28d796;display:inline-block;border-radius:50%;box-shadow:0 0 9px #28d796}
.mm-apuracao .mm-standings-list{display:flex;flex-direction:column;gap:6px;max-height:405px;overflow:auto;padding-right:3px}
.mm-apuracao .mm-candidate.compact{clip-path:none;border-left-width:4px;padding:8px;gap:7px;background:#142946;min-height:66px}
.mm-apuracao .compact .mm-rank{font-size:16px;min-width:20px}
.mm-apuracao .compact .mm-cname{font-size:13px}
.mm-apuracao .compact .mm-csub{font-size:10px;margin-top:1px}
.mm-apuracao .compact .mm-bar{height:4px;margin-top:5px}
.mm-apuracao .compact .mm-cpercent{font-size:19px}
.mm-apuracao .mm-trends{margin-top:14px}
.mm-apuracao .mm-trends .lc{max-height:230px}
.mm-apuracao .mm-trends .lc text{fill:#aac3df}
.mm-apuracao #apRod{padding-top:10px}
@media(max-width:900px){.mm-apuracao .mm-main-grid{grid-template-columns:1fr}.mm-apuracao .mm-district-grid{min-height:0}.mm-apuracao .mm-standings-list{max-height:330px}}
@media(max-width:640px){#modal.mm-apuracao{width:100%;max-height:96dvh;border-radius:12px 12px 0 0}.mm-apuracao .mm-game-stage{padding:10px}.mm-apuracao .mm-duel{grid-template-columns:1fr;gap:5px}.mm-apuracao .mm-versus{flex-direction:row}.mm-apuracao .mm-versus strong{font-size:20px}.mm-apuracao .mm-candidate{padding:9px;gap:8px}.mm-apuracao .mm-candidate .av{width:42px!important;height:42px!important}.mm-apuracao .mm-cpercent{font-size:26px}.mm-apuracao .mm-district-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mm-apuracao .mm-map-surface svg{height:auto}.mm-apuracao .mm-section-label{font-size:10px}.mm-apuracao .mm-section-label small{font-size:9px}.mm-apuracao .mm-region-stage,.mm-apuracao .mm-standings,.mm-apuracao .mm-trends{padding:10px}}


/* ==== V3 - APURACAO CARTOGRAFICA / MODO CLARO ==== */
#modal.mm-apuracao{background:#eef3f5!important;color:#173648!important;border:1px solid #c6d5dc!important}
.mm-apuracao .ap-broadcast{background:linear-gradient(125deg,#f7fbfc,#e1f0ef)!important;color:#124b58!important;border-color:#bad6d5!important}
.mm-apuracao .ap-kicker{color:#256978!important}.mm-apuracao .ap-progress,.mm-apuracao .apu-top{color:#154d55!important}
.mm-apuracao .ap-controls{background:#e6eff2!important;border-color:#b9cdd4!important;color:#21465a!important}
.mm-apuracao .ap-controls .btn{background:#fff!important;color:#205362!important;border-color:#9fbac6!important;box-shadow:none!important}
.mm-apuracao .ap-controls .btn.sel{background:#0d838a!important;color:white!important}
.mm-apuracao .ap-controls .ap-skip{background:#176977!important;color:white!important}
.mm-apuracao .ap-track{background:#cee0e3!important}.mm-apuracao .ap-track>i{background:linear-gradient(90deg,#087f88,#39a8a4)!important}
.mm-apuracao .mm-game-stage{background:#eef3f5!important;padding:17px!important}
.mm-apuracao .mm-section-label{color:#17636c!important}.mm-apuracao .mm-section-label small{color:#64818a!important}
.mm-apuracao .mm-stamp{background:#168e94!important;color:white!important}.mm-apuracao .mm-label-line{background:#bbd1d5!important}
.mm-apuracao .mm-region-stage,.mm-apuracao .mm-standings,.mm-apuracao .mm-trends,.mm-apuracao .mm-battle{background:#fff!important;border:1px solid #c7dade!important;border-radius:13px!important;box-shadow:0 4px 20px #21465a0b!important;padding:17px!important}
.mm-apuracao .mm-battle{margin-bottom:14px!important}.mm-apuracao .mm-candidate,.mm-apuracao .mm-candidate.compact{background:#f6fafb!important;border:1px solid #cbdde1!important;border-left:5px solid var(--c)!important;color:#193a4b!important;clip-path:none!important;border-radius:10px!important}
.mm-apuracao .mm-candidate.my-candidate{background:#fff8ec!important}.mm-apuracao .mm-cname,.mm-apuracao .mm-cpercent{color:#173c4c!important;text-shadow:none!important}.mm-apuracao .mm-csub{color:#667e8a!important}.mm-apuracao .mm-rank{color:#6b8992!important}.mm-apuracao .mm-bar{background:#dfebee!important}.mm-apuracao .mm-versus{color:#678793!important}.mm-apuracao .mm-versus strong{color:#16848d!important;text-shadow:none!important}
.mm-apuracao .mm-main-grid{grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr)!important}
.mm-apuracao .mm-region-stage{background:#fff!important}.mm-apuracao .mm-map-footer{border-color:#c4d9da!important;color:#587b83!important}.mm-apuracao .mm-region-note{color:#607c87!important}.mm-apuracao .mm-pulse{background:#0da996!important}
.mm-apuracao .mm-candidate.compact{min-height:63px!important}.mm-apuracao .compact .mm-cpercent{font-size:19px!important}
.mm-apuracao .mm-map-surface svg{height:auto!important;max-height:425px!important;filter:none!important}
.mm-apuracao .mm-trends .lc text{fill:#567581!important}
.mm-apuracao .mm-geo-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(175px,215px);gap:13px;align-items:stretch}
.mm-apuracao .mm-geo-map{background:linear-gradient(145deg,#f7fbfb,#e9f3f3);border-radius:12px;min-width:0;min-height:340px;display:flex;justify-content:center;align-items:center;position:relative;padding:9px;border:1px solid #d3e4e4}
.mm-apuracao .mm-geo-map svg{width:100%;height:auto;max-height:410px;display:block}
.mm-apuracao .mm-geo-map path{stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .25s,opacity .25s,stroke .25s;outline:none}
.mm-apuracao .mm-geo-map path:hover,.mm-apuracao .mm-geo-map path:focus{stroke:#174955;stroke-width:3.2;filter:brightness(1.04)}
.mm-apuracao .mm-geo-map path.mm-selected{stroke:#092c3c;stroke-width:4;filter:drop-shadow(0 2px 3px #143b4b55)}
.mm-apuracao .mm-geo-map text{pointer-events:none;font:800 15px system-ui;fill:#153c47;paint-order:stroke;stroke:#ffffffbb;stroke-width:2px}
.mm-apuracao .mm-geo-map .mm-geo-title{position:absolute;top:12px;left:14px;color:#3a6970;font-size:11px;letter-spacing:.07em;font-weight:800}
.mm-apuracao .mm-geo-detail{background:#f6fafb;border:1px solid #d1e3e5;padding:13px;border-radius:11px;min-width:0;color:#174456}
.mm-apuracao .mm-geo-detail h3{font:900 18px system-ui;line-height:1.15;margin-bottom:9px}
.mm-apuracao .mm-geo-detail .mm-geo-amount{font-size:24px;font-weight:900;color:#087e87}
.mm-apuracao .mm-geo-detail .mm-geo-small{font-size:11px;color:#6a828b;line-height:1.35}
.mm-apuracao .mm-geo-pick{display:flex;align-items:center;gap:6px;padding:7px 0;border-top:1px solid #dbe8eb;font-size:12px}
.mm-apuracao .mm-geo-pick b{margin-left:auto}
.mm-apuracao .mm-map-legend{display:flex;flex-wrap:wrap;gap:6px 13px;font-size:11px;padding:9px 0;color:#4a6c76}
.mm-apuracao .mm-map-legend i{width:9px;height:9px;display:inline-block;border-radius:3px;margin-right:4px}
.mm-apuracao .mm-geo-warning{font-size:10px;color:#798e96;margin-top:5px}
@media(max-width:1060px){.mm-apuracao .mm-main-grid{grid-template-columns:1fr!important}}
@media(max-width:680px){.mm-apuracao .mm-geo-shell{grid-template-columns:1fr}.mm-apuracao .mm-geo-map{min-height:230px}.mm-apuracao .mm-game-stage{padding:8px!important}.mm-apuracao .mm-geo-map text{font-size:12px}}


/* ==== V4: LISTA COMPLETA A ESQUERDA, MAPA A DIREITA, CONTRASTE ACESSIVEL ==== */
#modal.mm-apuracao .ap-broadcast .apu-top h2{color:#123b49!important;text-shadow:none!important;font-size:clamp(24px,2.6vw,36px)}
#modal.mm-apuracao .ap-broadcast .apu-top .mut{color:#395d6d!important;font-weight:600}
#modal.mm-apuracao .ap-broadcast .ap-progress .xs{color:#426575!important;font-weight:750}
#modal.mm-apuracao .ap-broadcast .ap-progress .pctApu{color:#087d88!important;text-shadow:none!important}
#modal.mm-apuracao .ap-controls .ap-caption{color:#305869!important}
#modal.mm-apuracao .ap-broadcast .ap-kicker{color:#176775!important}
#modal.mm-apuracao .mm-v4-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:16px;align-items:start}
#modal.mm-apuracao .mm-v4-candidates,#modal.mm-apuracao .mm-v4-map{margin:0!important;min-width:0}
#modal.mm-apuracao .mm-v4-caption{font-size:12px;font-weight:600;color:#516e7b;margin:0 0 12px}
#modal.mm-apuracao .mm-v4-all-candidates{max-height:none!important;overflow:visible!important;gap:9px!important;padding-right:0!important}
#modal.mm-apuracao .mm-v4-all-candidates .mm-candidate{min-height:94px!important;padding:12px!important;gap:12px!important;background:#f8fbfc!important;border-radius:11px!important}
#modal.mm-apuracao .mm-v4-all-candidates .mm-rank{font-size:20px!important;min-width:30px!important;color:#53727c!important}
#modal.mm-apuracao .mm-v4-all-candidates .mm-cname{font-size:clamp(14px,1.35vw,19px)!important;color:#173b49!important}
#modal.mm-apuracao .mm-v4-all-candidates .mm-csub{font-size:12px!important;color:#41616f!important}
#modal.mm-apuracao .mm-v4-all-candidates .mm-cpercent{font-size:clamp(23px,2.5vw,37px)!important;color:#0d5965!important}
#modal.mm-apuracao .mm-v4-all-candidates .mm-cpercent small{color:#35616b!important}
#modal.mm-apuracao .mm-v4-all-candidates .mm-bar{height:8px!important;background:#deeaed!important}
#modal.mm-apuracao .mm-v4-map .mm-geo-shell{grid-template-columns:1fr!important;gap:12px}
#modal.mm-apuracao .mm-v4-map .mm-geo-map{min-height:300px}
#modal.mm-apuracao .mm-v4-map .mm-geo-detail{padding:14px}
#modal.mm-apuracao .mm-v4-map .mm-geo-detail .mm-geo-small{color:#426573!important}
#modal.mm-apuracao .mm-v4-map .mm-geo-detail h3{color:#153f50!important}
#modal.mm-apuracao .mm-trends{margin-top:16px!important}
@media(max-width:940px){#modal.mm-apuracao .mm-v4-layout{grid-template-columns:1fr}#modal.mm-apuracao .mm-v4-all-candidates{max-height:none!important}#modal.mm-apuracao .mm-v4-map .mm-geo-shell{grid-template-columns:minmax(0,1fr) minmax(175px,220px)!important}}
@media(max-width:610px){#modal.mm-apuracao .mm-v4-map .mm-geo-shell{grid-template-columns:1fr!important}#modal.mm-apuracao .mm-v4-all-candidates .mm-candidate{min-height:75px!important;padding:9px!important;gap:8px!important}#modal.mm-apuracao .mm-v4-all-candidates .mm-rank{font-size:15px!important;min-width:22px!important}#modal.mm-apuracao .mm-v4-all-candidates .mm-cpercent{font-size:23px!important}}
#modal.mm-apuracao .mm-geo-map svg path[data-area]{stroke:#f9ffff;stroke-width:.65;vector-effect:non-scaling-stroke;cursor:pointer}
#modal.mm-apuracao .mm-geo-map svg path[data-area]:hover{stroke:#052b42;stroke-width:2.2}
#modal.mm-apuracao .mm-geo-map svg path[data-area].mm-selected{stroke:#071e32;stroke-width:3}

/* V7 — identidade de jogo para abertura e criacao, sem alterar regras */
#app:has(.mm-home){max-width:1440px;padding:16px 22px 40px}
.mm-home{color:#14301f;font-family:system-ui,-apple-system,'Segoe UI',sans-serif}
.mm-home .mm-banner{position:relative;isolation:isolate;min-height:460px;display:grid;grid-template-columns:minmax(300px,0.9fr) minmax(420px,1.1fr);align-items:center;gap:18px;overflow:hidden;border-radius:26px;border:2px solid #14301f;background:linear-gradient(112deg,#f8fbf7 0%,#f0f8e9 49%,#e4edfb 100%);box-shadow:0 9px 0 #14301f,0 24px 44px rgba(20,48,31,.14)}
.mm-home .mm-banner:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 72% 35%,rgba(250,204,21,.15),transparent 45%),linear-gradient(160deg,transparent 68%,rgba(22,163,74,.09));pointer-events:none}
.mm-home .mm-copy{z-index:2;padding:46px 12px 48px 44px;text-align:left}
.mm-eyebrow{display:inline-flex;gap:8px;align-items:center;padding:7px 12px;border-radius:100px;background:#e5f4dc;border:1px solid #bfd7b7;color:#14532d;font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:900}
.mm-home .mm-brand{margin:18px 0 12px;line-height:.88;color:#14301f;font-size:clamp(58px,6.6vw,104px);letter-spacing:-.065em;text-shadow:4px 5px 0 #facc15}
.mm-home .mm-brand span{display:block;color:#15803d}
.mm-home .mm-lead{font-size:clamp(18px,2.1vw,27px);font-weight:900;color:#1b4430;max-width:520px;line-height:1.2;margin:24px 0 12px}
.mm-home .mm-desc{font-size:15px;line-height:1.6;max-width:490px;color:#526759;margin:0 0 26px}
.mm-home .mm-actions{display:flex;gap:10px;flex-wrap:wrap}
.mm-home .mm-actions .btn{min-height:53px}
.mm-home .mm-actions .btn.pri{background:#15803d;border-color:#14301f;color:#fff}
.mm-home .mm-scene{position:relative;align-self:stretch;min-height:430px;z-index:1;overflow:hidden}
.mm-home .mm-scene svg{position:absolute;inset:0;width:100%;height:100%}
.mm-home .mm-live{position:absolute;right:22px;top:20px;background:#fffdf4;border:1px solid #c3d8b9;color:#14532d;padding:10px 14px;border-radius:12px;box-shadow:0 6px 22px #14301f22;font-weight:900;font-size:13px}
.mm-home .mm-strips{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0 0}
.mm-home .mm-feature{padding:16px 18px;background:#fff;border:1.5px solid #d1dfd0;border-radius:17px;display:flex;gap:11px;align-items:center;box-shadow:0 3px 0 #dbe8d5}
.mm-home .mm-feature strong{display:block;color:#14301f;font-size:14px}
.mm-home .mm-feature small{display:block;color:#536b5a;font-size:12px;margin-top:2px}
.mm-home .mm-feature .mm-num{font-size:25px;font-weight:1000;color:#15803d}
.mm-home .disc{font-size:12px;line-height:1.6;max-width:900px;margin:25px auto 0}
#app:has(.mm-create){max-width:1320px}
.mm-create{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:24px;align-items:start}
.mm-create-main{min-width:0}
.mm-create .wz{max-width:none}
.mm-create .wz-card{background:#fff;border:1px solid #d5dfd4;border-top:6px solid #15803d;box-shadow:0 7px 0 #e0e9d8;border-radius:18px;padding:26px 28px}
.mm-create .wz-h{font-size:clamp(26px,3vw,37px);color:#14301f}
.mm-create .wz-s{color:#63736a}
.mm-create-kicker{color:#166534;text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:900;margin:0 0 9px}
.mm-create .wz-prog{margin:12px 0 20px;gap:9px}
.mm-create .wz-prog li{background:#f4f8f0;border:1px solid #cbdcc7;padding:10px 5px;border-radius:12px}
.mm-create .wz-prog li.at{border-color:#15803d;background:#e1f4da}
.mm-create .wz-prog i{border-color:#b5d0ae}
.mm-create .wz-nav{margin:22px 0}
.mm-create-aside{border:1.5px solid #c4d7bf;border-radius:20px;background:linear-gradient(180deg,#f0f8ed,#fff);padding:21px;position:sticky;top:80px;box-shadow:0 5px 0 #dfe9db}
.mm-create-aside .mm-aside-eyebrow{font-weight:900;letter-spacing:.13em;font-size:11px;color:#166534}
.mm-create-aside .mm-person{width:104px;height:104px;border-radius:50%;display:grid;place-items:center;margin:17px auto 12px;background:linear-gradient(145deg,#15803d,#1d4ed8);color:#fff;font-size:42px;font-weight:1000;border:5px solid #fff;box-shadow:0 0 0 2px #bdd7b7;overflow:hidden}
.mm-create-aside .mm-person img{width:100%;height:100%;object-fit:cover}
.mm-create-aside .mm-name{text-align:center;font-size:21px;font-weight:1000;color:#14301f;overflow-wrap:anywhere}
.mm-create-aside .mm-info{text-align:center;font-size:12px;color:#61766a;margin:5px 0 19px}
.mm-create-aside .mm-fact{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-top:1px solid #d7e4d7;font-size:12px}
.mm-create-aside .mm-fact b{color:#14301f;text-align:right}
.mm-create-aside .mm-aside-foot{margin-top:16px;background:#e7f5df;color:#166534;padding:11px;border-radius:10px;font-size:12px;line-height:1.5}
@media(max-width:1000px){.mm-home .mm-banner{grid-template-columns:1fr}.mm-home .mm-copy{padding:34px 28px 0}.mm-home .mm-scene{min-height:320px}.mm-create{grid-template-columns:1fr}.mm-create-aside{display:none}}
@media(max-width:650px){#app:has(.mm-home){padding:10px}.mm-home .mm-banner{border-radius:18px;min-height:0}.mm-home .mm-copy{padding:25px 19px 0}.mm-home .mm-brand{font-size:60px}.mm-home .mm-scene{min-height:230px}.mm-home .mm-strips{grid-template-columns:1fr;gap:8px}.mm-home .mm-actions .btn{width:100%}.mm-create .wz-card{padding:18px 14px}.mm-create .wz-prog li{padding:6px 2px}}


/* V8 — cores originais somente na abertura e criacao, sem afetar a apuracao */
.mm-home .mm-scene{display:flex;align-items:stretch;justify-content:center}
.mm-home .mm-scene svg{display:block}
.mm-home .mm-live{z-index:2;max-width:calc(100% - 44px)}
.mm-create .wz-prog li.ok{background:#e7f6e5;border-color:#b4d4ab}
.mm-create .wz-prog li.at{background:#fff4c5;border-color:#e6c54a}
.mm-create .wz-prog li.at i{background:#facc15;border-color:#14301f;color:#14301f}
.mm-create .wz-card{border-top-color:#15803d}
.mm-create-aside .mm-person{background:linear-gradient(145deg,#15803d,#1d4ed8)}

/* ===== central eleitoral / urna imersiva V13 ===== */
.elx-intro{display:grid;gap:16px}
.elx-hero{display:grid;grid-template-columns:1.45fr .95fr;gap:16px;background:linear-gradient(135deg,#071725 0%,#0d2d42 44%,#123d57 100%);border-radius:26px;padding:24px;border:1px solid rgba(111,193,255,.18);color:#f8fbff;box-shadow:0 22px 60px rgba(5,16,28,.35)}
.elx-copy h2{margin:6px 0 10px;font-size:clamp(30px,4vw,46px);line-height:1.02}
.elx-kicker{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(250,204,21,.38);background:rgba(250,204,21,.08);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.08em;color:#fde68a}
.elx-sub{font-size:16px;max-width:58ch;color:#d8ebf8;margin:0 0 14px}
.elx-meta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.elx-meta span{background:rgba(255,255,255,.09);padding:8px 12px;border-radius:999px;font-size:13px;font-weight:700}
.elx-chip-row{display:flex;flex-wrap:wrap;gap:10px}.elx-pill{background:rgba(8,12,20,.38);border:1px solid rgba(255,255,255,.15);padding:11px 14px;border-radius:15px;font-size:14px}
.elx-note{margin-top:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:12px 14px;border-radius:16px;color:#f3f7fb;font-size:14px}
.elx-panel{background:linear-gradient(180deg,rgba(10,21,37,.94),rgba(15,34,52,.88));border:1px solid rgba(120,189,255,.22);border-radius:22px;padding:18px 18px 14px;backdrop-filter:blur(10px)}
.elx-panel-title{font-size:14px;font-weight:900;letter-spacing:.08em;color:#95d6ff;margin-bottom:12px}
.elx-step{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:10px 12px;margin-bottom:10px}
.elx-step span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#facc15,#f59e0b);color:#15263a;font-weight:900}.elx-step b{font-size:14px}
.elx-panel-foot{margin-top:4px;color:#d4e7f5;font-size:13px}
.elx-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.elx-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;line-height:1.55;box-shadow:0 10px 24px rgba(2,8,23,.05)}
.elx-card-top{font-size:12px;font-weight:900;letter-spacing:.08em;color:var(--blue);margin-bottom:10px}
.elx-actions{display:flex;justify-content:flex-start}.elx-actions .btn.big{padding:16px 22px}
@media(max-width:820px){.elx-hero{grid-template-columns:1fr}.elx-cards{grid-template-columns:1fr}}

.elx-urna-shell{display:grid;gap:16px}.elx-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.elx-toolbar h2{margin:4px 0 0}.elx-urna-layout{display:grid;grid-template-columns:300px 1fr;gap:18px;align-items:start}
.elx-side{display:grid;gap:12px}.elx-side-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px 14px 16px;box-shadow:0 10px 24px rgba(15,23,42,.06)}
.elx-side-title{font-size:12px;font-weight:900;letter-spacing:.08em;color:var(--blue);text-transform:uppercase;margin-bottom:10px}
.elx-side-list{display:grid;gap:8px}.up-item{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;padding:9px 10px}.up-item span{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#e2e8f0;color:#334155;font-weight:900;font-size:12px}.up-item.now{border-color:#facc15;background:#fffaf0}.up-item.now span{background:#facc15;color:#172033}.up-item.done{border-color:#bbf7d0;background:#f0fdf4}.up-item.done span{background:#16a34a;color:#fff}.up-item b{font-size:13px}
.elx-side-current{display:grid;gap:4px}.elx-side-current span{color:#64748b;font-size:13px}.elx-side-note{margin-top:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.45}.elx-side-note.ok{background:#f0fdf4;border-color:#bbf7d0}
@media(max-width:980px){.elx-urna-layout{grid-template-columns:1fr}.elx-side{order:2}}

.u3d{max-width:820px}
.u3d .urna{position:relative;transform-style:preserve-3d;transform:rotateX(-8deg) rotateY(-17deg);background:none;border:0;padding:0;box-shadow:none;--D:82px}
.u3d .frente{position:relative;background:linear-gradient(160deg,#ecebe7 0%,#d5d4cf 58%,#c6c4bd 100%);border-radius:20px 20px 12px 12px;padding:22px 22px 22px;box-shadow:inset 0 2px 0 rgba(255,255,255,.94),inset 0 -7px 12px rgba(0,0,0,.12),0 26px 60px rgba(0,0,0,.26),0 0 0 1px #9b9991}
.u3d .fc{position:absolute;display:block}.u3d .lado{left:100%;top:10px;width:var(--D);height:calc(100% - 10px);transform-origin:left center;transform:rotateY(90deg);background:linear-gradient(90deg,#b2b1aa,#8f8e88);border-radius:0 0 10px 0;box-shadow:inset -4px 0 10px rgba(255,255,255,.18)}
.u3d .topo{left:20px;right:0;bottom:100%;height:var(--D);transform-origin:center bottom;transform:rotateX(90deg);background:linear-gradient(0deg,#cfcfc9,#ecebe7);border-radius:16px 16px 0 0;box-shadow:inset 0 -4px 8px rgba(0,0,0,.06)}
.u3d::after{content:"";display:block;height:22px;margin:-6px 8% 0 4%;background:radial-gradient(ellipse at center,rgba(0,0,0,.34),transparent 72%);filter:blur(6px)}
.u3d .moldura{position:relative;background:#080808;padding:18px;border-radius:9px;box-shadow:inset 0 0 0 2px #2a2a2a,0 1px 0 rgba(255,255,255,.9)}
.u3d .moldura::after{content:"";position:absolute;inset:18px;border-radius:4px;background:linear-gradient(115deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,0) 36%);pointer-events:none}
.u3d .tela{background:linear-gradient(180deg,#f3f5ef,#dde6d0);color:#0f1720;border:0;border-radius:4px;min-height:330px;padding:18px 20px;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;display:block;box-shadow:inset 0 0 0 1px rgba(69,86,50,.45)}
.u3d .teclado{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;margin-top:20px;padding-right:1%}
.u3d .logoje{display:flex;flex-direction:column;align-items:flex-start;min-width:104px;color:#8f8f88}.u3d .logoje b{font-size:14px;line-height:1.02;color:#a7a79f;text-shadow:0 1px 0 #fff}.u3d .logoje span{margin-top:8px;padding:2px 7px;border-radius:4px;border:1px solid #b9b8b0;font-size:12px;font-weight:800;color:#989890}
.u3d .nums{display:grid;grid-template-columns:repeat(3,58px);gap:10px}.u3d .acoes{display:flex;flex-direction:column;gap:10px;width:112px}.u3d .tk{height:44px;background:linear-gradient(#383838,#1b1b1b);border:0;border-bottom:6px solid #090909;border-radius:8px;box-shadow:0 3px 5px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.16);color:#f8fafc;font-size:18px;font-weight:900;position:relative}.u3d .tk.t5::after{content:"";position:absolute;left:50%;bottom:7px;width:11px;height:2px;margin-left:-5px;border-radius:999px;background:#8a8a8a}.u3d .tk.br{background:linear-gradient(#fff,#ededed);color:#161616;border:1px solid #cbcbc6;border-bottom:6px solid #989892;font-size:11px}.u3d .tk.co{background:linear-gradient(#f6a041,#e47812);color:#1f1f1f;border-bottom:6px solid #8e4b09;font-size:11px}.u3d .tk.ok{background:linear-gradient(#43be6d,#238745);color:#f6fff8;border-bottom:6px solid #145e2f;font-size:11px;height:66px}.u3d .tk.ok,.u3d .tk.co,.u3d .tk.br{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.u3d .tk:active{transform:translateY(3px);border-bottom-width:2px}.u3d .bra{display:block;width:34px;height:5px;background:radial-gradient(circle,rgba(0,0,0,.46) 1.1px,transparent 1.5px) 0 0/6px 5px repeat-x;opacity:.8}
@media(max-width:620px){.u3d{padding:0}.u3d .urna{--D:38px;transform:none}.u3d .frente{padding:14px}.u3d .teclado{gap:16px;justify-content:center}.u3d .logoje{display:none}.u3d .nums{grid-template-columns:repeat(3,46px);gap:8px}.u3d .acoes{width:92px}.u3d .tk{height:38px}.u3d .tk.ok{height:60px}.u3d .tela{min-height:275px;padding:14px}}

.u-start,.u-end{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.u-seal{display:inline-flex;padding:6px 10px;border-radius:999px;background:#163b52;color:#d7f2ff;font-size:11px;font-weight:900;letter-spacing:.08em}.u-start-title,.u-end-main{font-size:clamp(34px,6vw,58px);font-weight:1000;letter-spacing:.02em;margin-top:12px}.u-start-sub,.u-end-sub{font-size:20px;font-weight:700;margin-top:6px}.u-start-box{margin-top:16px;padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px solid #dbe5ea;max-width:440px;font-size:14px;line-height:1.55}.u-start-tip,.u-end-note{margin-top:14px;color:#334155;font-size:13px}
.u-screen{display:flex;flex-direction:column;min-height:286px}.u-top-brand{font-size:12px;letter-spacing:.08em;color:#475569;font-weight:900}.u-vote-for{font-size:14px;margin-top:5px}.u-office{font-size:24px;font-weight:1000;letter-spacing:.02em;margin:6px 0 12px}.u-main{display:grid;grid-template-columns:1fr 148px;gap:14px;flex:1;min-height:0}.u-left{min-width:0}.u-right{display:flex;justify-content:flex-end}.u-numbers-title{font-size:13px;color:#475569;margin-bottom:6px}.u-screen .digs{display:flex;gap:8px;margin:0 0 14px}.u-screen .dg{width:42px;height:52px;border:2px solid #111827;background:#fff;display:grid;place-items:center;font-size:28px;font-weight:900;font-family:"Courier New",monospace}.u-screen .dg.on{box-shadow:0 0 0 3px rgba(37,99,235,.1)}.u-fields{display:grid;gap:10px}.u-field{display:grid;gap:2px}.u-field span{font-size:12px;color:#475569;font-weight:800;letter-spacing:.06em}.u-field b{font-size:18px}.u-self{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;font-size:13px;font-weight:700;width:max-content}.u-help-line{font-size:14px;color:#475569}.u-big-white,.u-null{font-size:28px;font-weight:1000;line-height:1.1;margin-top:12px}.u-null{color:#7f1d1d}.u-portrait{width:136px;margin-left:auto;border:2px solid #111827;background:#fff}.u-photo{height:154px;display:flex;align-items:center;justify-content:center;background:#64748b;color:#fff;font-size:36px;font-weight:1000}.u-photo.empty{background:#e2e8f0;color:#334155;font-size:22px}.u-portrait-label{padding:6px 8px;border-top:2px solid #111827;font-size:12px;text-align:center;font-weight:800;background:#f8fafc}.u-rodape{margin-top:14px;padding-top:8px;border-top:1px solid #0f1720;font-size:12px;line-height:1.45}.u-end-main{font-size:72px}.u-end-sub{font-size:22px}
@media(max-width:620px){.u-main{grid-template-columns:1fr 112px;gap:10px}.u-portrait{width:104px}.u-photo{height:122px;font-size:28px}.u-screen .digs{gap:6px}.u-screen .dg{width:34px;height:44px;font-size:24px}.u-field b{font-size:16px}.u-big-white,.u-null{font-size:23px}}


/* --- Plenário V17 --- */
.pl17-intro{display:grid;gap:16px}.pl17-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;background:linear-gradient(135deg,#071a2d 0%,#10263f 42%,#162f4d 100%);border-radius:28px;padding:22px;border:1px solid rgba(96,165,250,.16);box-shadow:0 26px 60px rgba(2,6,23,.24);color:#f8fafc}.pl17-left h2{margin:8px 0 10px;font-size:clamp(28px,4vw,44px);line-height:1.03}.pl17-kicker{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(250,204,21,.35);background:rgba(250,204,21,.08);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.08em;color:#fde68a}.pl17-sub{font-size:16px;color:#dbeafe;line-height:1.6}.pl17-chiprow{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.pl17-chiprow .chip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#fff}.pl17-preview{position:relative;min-height:280px;border-radius:24px;background:radial-gradient(circle at 50% 12%, rgba(248,250,252,.28), transparent 28%),linear-gradient(180deg,#101b2a 0%,#0b1321 100%);overflow:hidden;border:1px solid rgba(255,255,255,.08)}.pl17-wall{position:absolute;left:50%;top:18px;width:34%;height:120px;transform:translateX(-50%);background:repeating-linear-gradient(90deg,#3a495a 0 3px,transparent 3px 13px)}.pl17-wall::before,.pl17-wall::after{content:"";position:absolute;top:18px;width:8px;height:14px;background:#22c55e;box-shadow:0 26px 0 #facc15,0 52px 0 #34d399}.pl17-wall::before{left:22%}.pl17-wall::after{right:22%}.pl17-dais{position:absolute;left:50%;top:134px;transform:translateX(-50%);display:flex;gap:8px}.pl17-dais i{display:block;width:36px;height:20px;border-radius:6px;background:#8b5e3c}.pl17-screen{position:absolute;top:92px;width:96px;height:64px;border-radius:8px;background:#0f172a;box-shadow:inset 0 0 0 2px rgba(255,255,255,.07)}.pl17-screen.left{left:28px}.pl17-screen.right{right:28px}.pl17-screen::after{content:"SIM\A NÃO\A ABS";white-space:pre;display:block;color:#cbd5e1;font-weight:800;font-size:12px;line-height:1.4;text-align:center;padding-top:10px}.pl17-seats{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);border:3px solid rgba(217,119,6,.55);border-top:none;border-radius:0 0 220px 220px}.pl17-seats.a{width:78%;height:126px}.pl17-seats.b{width:60%;height:98px;bottom:38px}.pl17-seats.c{width:42%;height:72px;bottom:56px}
.pl17-cardgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.pl17-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;line-height:1.55;box-shadow:0 10px 24px rgba(2,8,23,.05)}.pl17-card .tt{font-size:12px;font-weight:900;letter-spacing:.08em;color:var(--blue);margin-bottom:10px}
.pl17-seuvoto{margin-top:14px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);display:grid;gap:4px}.pl17-seuvoto .lb{font-size:11px;font-weight:900;letter-spacing:.08em;color:#bfdbfe}.pl17-seuvoto b{font-size:28px;line-height:1}.pl17-seuvoto span{font-size:13px;color:#dbeafe}.pl17-seuvoto.ok b{color:#86efac}.pl17-seuvoto.no b{color:#fca5a5}.pl17-seuvoto.abs b{color:#fcd34d}
.pl17-wrap{display:grid;gap:14px}.pl17-header{display:grid;gap:8px}.pl17-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.pl17-top h2{margin:6px 0 4px;font-size:clamp(26px,3.4vw,38px)}.pl17-badge{background:#b91c1c;color:#fff;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.08em}.pl17-room{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;align-items:start}.pl17-stage{background:linear-gradient(180deg,#f8f5ef 0%,#efe7d5 100%);border:1px solid #e5dcc8;border-radius:26px;padding:12px 12px 6px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 16px 30px rgba(15,23,42,.08)}.pl17-sidebar{display:grid;gap:12px}.pl17-board,.pl17-miniinfo{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:16px;box-shadow:0 10px 24px rgba(15,23,42,.06)}.pl17-board-head{font-size:11px;font-weight:900;letter-spacing:.08em;color:var(--blue);margin-bottom:6px}.pl17-board-title{font-weight:900;line-height:1.3;font-size:20px}.pl17-board-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.pl17-board-meta span{background:#f8fafc;border:1px solid #e2e8f0;padding:7px 10px;border-radius:999px;font-size:12px}.pl17-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.pl17-counts div{border-radius:18px;padding:12px 10px;text-align:center;font-weight:900}.pl17-counts span{display:block;font-size:11px;letter-spacing:.08em;margin-bottom:6px}.pl17-counts b{display:block;font-size:34px;font-family:var(--disp)}.pl17-counts .yes{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.pl17-counts .no{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.pl17-counts .abs{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.pl17-total{margin-top:12px;text-align:center;font-size:18px;font-weight:900;color:var(--ink)}.pl17-miniinfo .tt{font-size:12px;font-weight:900;letter-spacing:.08em;color:var(--blue);margin-bottom:8px}.pl17-miniinfo .tx{font-size:14px;color:var(--mut);line-height:1.5;margin-bottom:8px}
.pl17-hemi{max-width:none;width:100%;display:block}.hemi.plen.pl17-hemi .lz{fill:#475569;transition:fill .15s,transform .15s;stroke:rgba(255,255,255,.36);stroke-width:1.6}.hemi.plen.pl17-hemi .voce{stroke:#facc15;stroke-width:4}.hemi.plen.pl17-hemi .on-s{fill:#22c55e;stroke:#166534;stroke-width:3.2}.hemi.plen.pl17-hemi .on-n{fill:#ef4444;stroke:#991b1b;stroke-width:3.2}.hemi.plen.pl17-hemi .on-a{fill:#f59e0b;stroke:#b45309;stroke-width:3.2}
@media(max-width:980px){.pl17-hero,.pl17-room,.pl17-cardgrid{grid-template-columns:1fr}.pl17-preview{min-height:240px}.pl17-top{flex-direction:column}.pl17-counts b{font-size:28px}}
