:root{
  --bg:#f1f3f6;--card:#fff;--line:#dcdfe5;--txt:#1b1b1b;--mut:#5c6370;
  --navy:#0c326f;--blue:#1351b4;--blue2:#dbe8fb;--green:#168821;--green2:#e3f5e1;--yellow:#c58700;--yellow2:#fff5c2;
  --bar:#e6e9ee
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--txt);font:15px/1.45 "Segoe UI",Roboto,Helvetica,Arial,sans-serif;min-height:100vh}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
img{display:block;max-width:100%}
[hidden]{display:none!important}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}

/* topo */
.top{background:var(--navy);color:#fff}
.top .wrap{display:flex;align-items:center;gap:14px;height:56px}
.brand{color:#fff;font-weight:700;font-size:18px;letter-spacing:-.2px;white-space:nowrap}
.brand:hover{text-decoration:none}
.brand span{font-weight:400;opacity:.8;margin-left:6px;font-size:14px}
.live{margin-left:auto;font-size:12px;font-weight:700;display:flex;align-items:center;gap:6px;white-space:nowrap}
.live i{width:8px;height:8px;border-radius:50%;background:#ff5252}
.filtros{background:#fff;border-bottom:1px solid var(--line)}
.filtros .wrap{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;padding-top:12px;padding-bottom:12px}
.filtros label{display:flex;flex-direction:column;font-size:12px;color:var(--mut);font-weight:600;gap:4px;flex:1;min-width:150px;max-width:300px}
.filtros select{font:inherit;font-size:15px;color:var(--txt);background:#fff;border:1px solid #b5bac4;border-radius:4px;padding:8px 10px;height:40px}
.filtros button{height:40px;padding:0 20px;border:0;border-radius:4px;background:var(--blue);color:#fff;font:inherit;font-weight:700;cursor:pointer}

main{padding:18px 0 40px}
.titulo{font-size:22px;font-weight:700;margin-bottom:2px}
.sub{color:var(--mut);font-size:13px;margin-bottom:14px}
.ancoras{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.ancoras a{background:#fff;border:1px solid var(--line);border-radius:4px;padding:6px 12px;font-size:13px;font-weight:600;color:var(--navy)}

.aviso{background:var(--yellow2);border:1px solid #f0d67a;color:#5c4400;border-radius:4px;padding:10px 14px;font-size:14px;margin-bottom:14px}

/* seção de cargo */
.cargo{background:var(--card);border:1px solid var(--line);border-radius:6px;margin-bottom:18px;overflow:hidden}
.cargo-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;padding:14px 16px 10px;border-bottom:1px solid var(--line)}
.cargo-h h2{font-size:19px;font-weight:700;color:var(--txt)}
.cargo-h h2 small{display:block;font-size:13px;font-weight:400;color:var(--mut);margin-top:2px}
.tot{text-align:right;font-size:13px;color:var(--mut);min-width:200px}
.tot b{color:var(--txt);font-size:16px}
.prog{height:6px;background:var(--bar)}
.prog i{display:block;height:100%;width:0;background:var(--green);transition:width .6s}
.resumo{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);font-size:12px}
.resumo div{padding:8px 16px;border-right:1px solid var(--line)}
.resumo div:last-child{border-right:0}
.resumo span{display:block;color:var(--mut)}
.resumo b{font-size:14px}

.cands{list-style:none}
.cand{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;padding:10px 16px;border-bottom:1px solid #eef0f3}
.cand:last-child{border-bottom:0}
.ph{width:48px;height:48px;border-radius:50%;background:var(--bar);overflow:hidden}
.ph img{width:100%;height:100%;object-fit:cover}
.nm{font-weight:700;font-size:15px;text-transform:uppercase;line-height:1.2}
.pt{color:var(--mut);font-size:12.5px;margin-top:1px}
.bar{height:6px;background:var(--bar);border-radius:3px;margin-top:6px;overflow:hidden;max-width:520px}
.bar i{display:block;height:100%;width:0;background:var(--blue);transition:width .6s}
.pc{text-align:right;white-space:nowrap}
.pc b{display:block;font-size:18px}
.pc span{display:block;font-size:12px;color:var(--mut)}
.tag{display:inline-block;font-size:11px;font-weight:700;padding:1px 7px;border-radius:3px;margin-left:6px;vertical-align:1px;text-transform:none}
.tag.el{background:var(--green2);color:var(--green);border:1px solid #9fd69a}
.tag.t2{background:var(--yellow2);color:#7a5600;border:1px solid #f0d67a}
.semfoto .cand{grid-template-columns:28px 1fr auto}
.semfoto .ph{display:none}
.pos{font-size:13px;color:var(--mut);font-weight:700;text-align:center}
.cand .pos{display:none}
.semfoto .cand .pos{display:block}
.busca{display:flex;gap:8px;padding:10px 16px;border-bottom:1px solid var(--line);background:#fafbfc}
.busca input{flex:1;font:inherit;font-size:14px;border:1px solid #b5bac4;border-radius:4px;padding:8px 10px}
.mais{display:block;width:100%;padding:12px;border:0;border-top:1px solid var(--line);background:#fafbfc;color:var(--blue);font:inherit;font-weight:700;cursor:pointer}
.mais:hover{background:var(--blue2)}
.vazio,.erro{padding:14px 16px;color:var(--mut);font-size:14px}
.carregando{padding:22px 16px;color:var(--mut);font-size:14px}
.rodape-cargo{padding:8px 16px;font-size:12.5px;border-top:1px solid var(--line);background:#fafbfc}

.share{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 18px}
.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:4px;font-weight:700;font-size:14px;border:1px solid var(--line);background:#fff;color:var(--txt);cursor:pointer;font-family:inherit}
.btn.wa{background:#1f8f4e;border-color:#1f8f4e;color:#fff}
.btn:hover{text-decoration:none}

h3.grupo{font-size:16px;margin:24px 0 10px}
.ufs{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px}
.ufs a{background:#fff;border:1px solid var(--line);border-radius:4px;padding:9px 12px;font-size:14px;color:var(--txt)}
.ufs a b{color:var(--navy);margin-right:6px}
.ufs a:hover{border-color:var(--blue);text-decoration:none}

.ad{display:none;margin:14px 0;text-align:center}
.ads-on .ad{display:block;min-height:100px}

footer{background:#fff;border-top:1px solid var(--line);color:var(--mut);font-size:12.5px;padding:20px 0 30px}
footer p{margin-bottom:6px}

@media (max-width:640px){
  .brand span{display:none}
  .resumo{grid-template-columns:repeat(2,1fr)}
  .resumo div:nth-child(2){border-right:0}
  .resumo div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .tot{text-align:left;min-width:0}
  .cand{grid-template-columns:42px 1fr auto;gap:10px;padding:10px 12px}
  .ph{width:42px;height:42px}
  .pc b{font-size:16px}
  .filtros label{max-width:none}
}
#priv{padding:16px}
.intro{font-size:15px;margin:0 0 14px;max-width:820px}
.destaque{margin:0 0 14px}
.btn.primario{background:var(--blue);border-color:var(--blue);color:#fff}
.cand.lider{background:#f3f8ff;box-shadow:inset 4px 0 0 var(--blue)}
.rk{display:inline-block;min-width:26px;color:var(--mut);font-weight:700;margin-right:4px}
.sharec{display:inline-block;margin-top:4px;font-size:12px;font-weight:700;color:#1f8f4e;border:1px solid #9fd69a;border-radius:3px;padding:2px 8px;background:#f1faf0}
.sharec:hover{text-decoration:none;background:#e3f5e1}
.navlink{color:#fff;font-weight:600;font-size:14px;margin-left:18px;opacity:.9}
.navlink:hover{color:#fff}
.noticia{background:#fff;border:1px solid var(--line);border-radius:6px;padding:22px 20px;max-width:780px}
.noticia p{margin:0 0 14px;font-size:16.5px;line-height:1.6}
.noticia h2{font-size:19px;margin:22px 0 8px}
.noticia .cat{color:var(--blue);font-weight:700;font-size:13px;text-transform:uppercase;margin-bottom:6px}
.noticia .lead{font-size:17.5px}
.lista-not{list-style:none;background:#fff;border:1px solid var(--line);border-radius:6px}
.lista-not li{padding:10px 14px;border-bottom:1px solid #eef0f3;font-size:15px}
.lista-not li:last-child{border-bottom:0}
@media (max-width:640px){.navlink{margin-left:auto;margin-right:12px}.live{margin-left:0}}
/* AO VIVO piscando */
@keyframes aoVivoPisca{0%,100%{opacity:1}50%{opacity:.25}}
@keyframes aoVivoPulso{0%{box-shadow:0 0 0 0 rgba(255,82,82,.8)}70%{box-shadow:0 0 0 9px rgba(255,82,82,0)}100%{box-shadow:0 0 0 0 rgba(255,82,82,0)}}
.live{animation:aoVivoPisca 1.2s ease-in-out infinite}
.live i{animation:aoVivoPulso 1.2s ease-out infinite}
@media (prefers-reduced-motion:reduce){.live,.live i{animation:none}}
.onde-btn{margin-top:6px;background:none;border:1px solid #b8c6e0;color:var(--blue);font:inherit;font-size:12px;font-weight:700;border-radius:3px;padding:2px 8px;cursor:pointer}
.onde-btn:hover{background:var(--blue2)}
li.onde{list-style:none;background:#f7f9fc;border-bottom:1px solid var(--line);padding:10px 16px 12px}
.onde-t{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:6px}
.onde-l{list-style:decimal;padding-left:22px;font-size:13.5px}
.onde-l li{display:grid;grid-template-columns:minmax(110px,1.3fr) 1fr auto auto;gap:8px;align-items:center;padding:4px 0;border-bottom:1px dashed #e3e7ee}
.onde-l li a{color:var(--txt);font-weight:600}
.ob{height:6px;background:var(--bar);border-radius:3px;overflow:hidden}
.ob i{display:block;height:100%;background:var(--blue)}
.onde-l small{color:var(--mut);white-space:nowrap}
.onde-f{font-size:11.5px;color:var(--mut);margin-top:6px}
.onde .mais{border:1px solid var(--line);margin-top:8px;border-radius:4px}
@media (max-width:640px){.onde-l li{grid-template-columns:1fr auto;row-gap:0}.onde-l .ob{display:none}.onde-l b{text-align:right}.onde-l small{grid-column:1 / -1}}
.onde-r{font-size:12px;color:var(--mut);margin-bottom:6px}
.onde-l li.pend a{color:var(--mut);font-weight:400}
.onde-l li.pend small{font-style:italic}
.par-res{padding:9px 16px;background:#fff8e1;border-bottom:1px solid #f0d67a;font-size:13.5px}
.par-res a{font-weight:700}
.filtros label{min-width:140px}
.tabela{background:#fff;border:1px solid var(--line);border-radius:6px;overflow-x:auto}
.tabela table{width:100%;border-collapse:collapse;font-size:14px}
.tabela th{text-align:left;background:#fafbfc;color:var(--mut);font-size:12px;font-weight:700;padding:8px 12px;border-bottom:1px solid var(--line)}
.tabela td{padding:8px 12px;border-bottom:1px solid #eef0f3;vertical-align:top}
.tabela td.mut{color:var(--mut);font-style:italic}
.tabela tr:last-child td{border-bottom:0}
.abas-reg{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px}
.abas-reg .aba{font:inherit;font-size:14px;font-weight:700;padding:8px 14px;border-radius:4px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer}
.abas-reg .aba.on{background:var(--navy);border-color:var(--navy);color:#fff}
.abas-reg .aba:hover{border-color:var(--blue)}
.mapa-box{background:#fff;border:1px solid var(--line);border-radius:6px;padding:14px 16px 12px;margin:18px 0}
.mapa-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.mapa-h h2{font-size:18px}
.mapa-modo{display:flex;gap:6px}
.mapa-modo .aba{font:inherit;font-size:13px;font-weight:700;padding:6px 12px;border-radius:4px;border:1px solid var(--line);background:#fff;color:var(--navy);cursor:pointer}
.mapa-modo .aba.on{background:var(--navy);border-color:var(--navy);color:#fff}
.mapa-wrap{position:relative;max-width:620px;margin:0 auto}
.mapa-svg{width:100%;height:auto;display:block}
.mapa-svg path.uf{stroke:#fff;stroke-width:1.2;stroke-linejoin:round;cursor:pointer;transition:opacity .15s}
.mapa-svg a:hover path.uf,.mapa-svg a:focus path.uf{opacity:.8;stroke:#1b1b1b;stroke-width:1.6}
.mapa-svg .uf-l{font-size:11px;font-weight:700;fill:#1b1b1b;text-anchor:middle;dominant-baseline:middle;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;pointer-events:none}
.mapa-tip{position:absolute;z-index:5;background:#1b1b1b;color:#fff;font-size:13px;line-height:1.4;padding:8px 10px;border-radius:4px;max-width:220px;pointer-events:none;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.mapa-tip small{color:#c9ced8}
.mapa-leg{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;margin-top:10px;font-size:13px;color:var(--txt)}
.mapa-leg .lg{display:inline-flex;align-items:center;gap:6px}
.mapa-leg .sw{width:12px;height:12px}
.mapa-nota{text-align:center;color:var(--mut);font-size:12px;margin-top:8px}
.faltam-box{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:4px 0 12px}
.faltam-box>div{background:#f7f9fc;border:1px solid var(--line);border-radius:4px;padding:8px 10px}
.faltam-box span{display:block;font-size:11.5px;color:var(--mut)}
.faltam-box b{font-size:16px}
.faltam-nota{grid-column:1/-1;font-size:12.5px;color:var(--mut);margin:0}
.mapa-leg-tab{margin-top:12px}
@media (max-width:640px){.faltam-box{grid-template-columns:1fr 1fr}}
#mapa-uf .mapa-h{align-items:flex-start}
#mapa-uf .mapa-modo{flex-wrap:wrap}
.mapa-wrap-uf{max-width:440px}
.mapa-svg-uf path.mun{stroke:#fff;stroke-width:.6}
.mapa-svg-uf a:hover path.mun{stroke:#1b1b1b;stroke-width:1.2}
.resumo-n{grid-template-columns:repeat(6,1fr)}
.resumo-n small{display:block;color:var(--mut);font-size:11.5px}
@media (max-width:900px){.resumo-n{grid-template-columns:repeat(3,1fr)}.resumo-n div{border-bottom:1px solid var(--line)}}
@media (max-width:640px){.resumo-n{grid-template-columns:repeat(2,1fr)}}
.tab-num td{white-space:nowrap}
.tab-num td small{color:var(--mut)}
.tab-num tr.sub td{background:#f3f6fb;font-weight:700}
.tab-num tr.tot td{background:var(--navy);color:#fff;font-weight:700}
.tab-num tr.tot td small{color:#dbe3f0}
@media (max-width:640px){.navlink{font-size:13px;margin-left:10px}.brand{font-size:15px}}
.lista-el{padding-left:22px;margin:0 0 14px}.lista-el li{margin:4px 0;font-size:16px}.lista-el small{color:var(--mut)}
/* Vai ter 2º turno? */
.t2-box{border:1px solid var(--line);border-left:5px solid var(--yellow);background:#fff;border-radius:4px;padding:12px 14px;margin:6px 0 16px}
.t2-box.el{border-left-color:var(--green)}
.t2-box.ind{border-left-color:var(--blue)}
.t2-h{display:flex;flex-wrap:wrap;align-items:center;gap:6px;justify-content:space-between}
.t2-h b{font-size:16px;color:var(--navy)}
.t2-box p{margin:8px 0}
.t2-bar{position:relative;height:14px;background:var(--bar);border-radius:3px;margin:14px 0 22px}
.t2-bar i{display:block;height:100%;width:0;background:var(--blue);border-radius:3px;transition:width .6s}
.t2-bar em{position:absolute;left:50%;top:-4px;bottom:-4px;width:2px;background:var(--navy)}
.t2-bar span{position:absolute;left:50%;top:18px;transform:translateX(-50%);font-size:11px;color:var(--mut);white-space:nowrap}
.t2-num{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.t2-num>div{background:#f7f9fc;border:1px solid var(--line);border-radius:4px;padding:8px 10px}
.t2-num span,.t2-num small{display:block;font-size:11.5px;color:var(--mut)}
.t2-num b{font-size:16px}
.t2-nota{font-size:12px;color:var(--mut)}
@media (max-width:640px){.t2-num{grid-template-columns:1fr}}
.navlink{white-space:nowrap}
.feed-el li small{display:inline-block;min-width:82px;color:var(--mut);font-variant-numeric:tabular-nums}
.el-cont{grid-template-columns:repeat(4,1fr)}
@media (max-width:640px){.el-cont{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
.top .wrap{flex-wrap:wrap;height:auto;padding-top:8px;padding-bottom:8px;row-gap:6px;column-gap:0}
.top .brand{order:1;flex:1 0 60%}
.top .live{order:2;margin-left:auto}
.top .navlink{order:3;margin:0 14px 0 0!important;font-size:13px}
}
@media (max-width:640px){.top .wrap::after{content:'';order:2;flex-basis:100%;height:0}.top .live{margin-right:0}}
.tag.vg{background:var(--blue2);color:var(--blue);border:1px solid #a9c7f2}
.lista-el .tag{margin-left:4px}
.el-cont{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important}
.tag.el.tse{background:var(--green);color:#fff;border-color:var(--green)}
.tag.elc{background:#fff;color:var(--green);border:1px dashed var(--green)}
.cand.lider:has(.tag.tse){border-left-color:var(--green);background:#eef8ec}
/* Bancadas */
.banc-tiles{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important;margin-bottom:12px}
.banc-graf{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.banc-box{background:#fff;border:1px solid var(--line);border-radius:4px;padding:12px}
.banc-box h3{margin:0 0 6px;font-size:16px;color:var(--navy)}
.banc-hemi svg,.banc-mm svg{width:100%;height:auto;display:block}
.banc-hemi circle{cursor:pointer}
.hemi-n{font-size:34px;font-weight:700;fill:var(--txt)}
.hemi-s{font-size:14px;fill:var(--mut)}
.banc-dica{margin:0 0 4px;font-size:12.5px}
.mm-no{cursor:pointer}
.mm-no:focus{outline:none}
.mm-no:focus circle,.mm-no:hover circle{stroke:var(--navy);stroke-width:3}
.mm-out{cursor:default}
.mm-c1{fill:#fff;font-size:17px;font-weight:700}
.mm-c2{fill:#dbe8fb;font-size:12.5px}
.mm-sg{font-size:13px;font-weight:700;fill:var(--txt)}
.mm-n{font-size:11.5px;fill:var(--mut)}
.lgb{background:#fff;border:1px solid var(--line);border-radius:14px;padding:3px 9px;font:inherit;font-size:12.5px;cursor:pointer;color:var(--txt)}
.lgb.on{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy)}
.banc-filtros{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;background:#fff;border:1px solid var(--line);border-radius:4px;padding:12px;margin:14px 0}
.banc-filtros label{display:flex;flex-direction:column;font-size:12px;color:var(--mut);font-weight:600;gap:4px;flex:1;min-width:150px}
.banc-filtros select{font:inherit;font-size:15px;color:var(--txt);background:#fff;border:1px solid #b5bac4;border-radius:4px;padding:8px 10px;height:40px}
.tabela tr.sel td{background:var(--blue2)}
.banc-par{background:#fff;border:1px solid var(--line);border-radius:4px;margin:6px 0;padding:8px 12px}
.banc-par summary{cursor:pointer}
.banc-par .lista-el{margin:8px 0 0}
@media (max-width:760px){.banc-graf{grid-template-columns:1fr}}
.banc .sw{width:12px;height:12px;display:inline-block;vertical-align:-1px;flex:none}
/* página do candidato */
.cand-top{display:flex;gap:16px;align-items:center;margin:4px 0 10px}
.cand-foto{width:120px;height:150px;object-fit:cover;border-radius:6px;border:1px solid var(--line);background:#fff}
.cand-top .cat{margin:0 0 6px;color:var(--mut);font-weight:600}
.cand-tiles{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important}
.cid-lista a{font-weight:600}
.wg-prev{width:100%;max-width:640px;border:0;display:block;background:#fff}
.wg-cod{width:100%;font:13px/1.4 monospace;padding:10px;border:1px solid #b5bac4;border-radius:4px;background:#fff}
