/* Tema profissional: Calibri, azul institucional, tabelas e cartões sóbrios */
:root{
  --bg:#edf0f4;--panel:#fff;--panel2:#f3f5f8;--ink:#12202f;--muted:#566474;--line:#d5dbe4;
  --navy:#0e2a4d;--navy2:#173a68;--hdr:#0e2a4d;
  --f:#1d4ed8;--f-l:#a9c0f5;--l:#c0262d;--l-l:#f0b0b3;
  --glass:#fff;--shadow:0 1px 2px rgba(14,42,77,.07);
  --font:Calibri,Carlito,Arial,"Helvetica Neue",Helvetica,sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0c1118;--panel:#141b25;--panel2:#1a2330;--ink:#e8edf3;--muted:#98a5b6;--line:#2a3646;--navy:#8fb1e6;--navy2:#a9c3ee;--hdr:#0a1a30;--f:#6e97f2;--l:#ef6b72;--shadow:none}}
:root[data-theme="dark"]{--bg:#0c1118;--panel:#141b25;--panel2:#1a2330;--ink:#e8edf3;--muted:#98a5b6;--line:#2a3646;--navy:#8fb1e6;--navy2:#a9c3ee;--hdr:#0a1a30;--f:#6e97f2;--l:#ef6b72;--shadow:none}
html{font-size:17px}
body,button,input,select,textarea{font-family:var(--font)}
body{background:var(--bg);color:var(--ink);font-size:1rem;line-height:1.45}
h1,h2,h3{font-family:var(--font);letter-spacing:0}
/* cabeçalho */
.hdr{background:var(--hdr);color:#fff;border-bottom:3px solid var(--navy2)}
.hdr::after{display:none}
.hdr .wrap.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;padding-bottom:16px}
.brand{display:flex;align-items:center;gap:14px}
.logo{width:44px;height:44px;color:#fff;flex:none}
.hdr h1{font-size:1.65rem;font-weight:700;line-height:1.1;margin:0}
.hdr .upd{font-size:.88rem;opacity:.8;margin-top:2px}
.hdr .btn{border-radius:6px;font-weight:600}
.hdr .btn.pri{background:#fff;color:var(--hdr)}
/* navegação */
.nav{background:var(--panel);border-bottom:1px solid var(--line);backdrop-filter:none}
.nav .wrap{gap:2px;padding-top:0;padding-bottom:0}
.nav a{border-radius:0;min-height:48px;padding:0 16px;font-weight:600;font-size:.98rem;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-1px}
.nav a:hover{color:var(--ink)}
.nav a[aria-current="page"]{background:transparent;color:var(--navy);border-bottom-color:var(--navy)}
/* seções */
main{padding:26px 0 48px}
section.blk{margin-top:30px}
.blk>h2{font-size:1.45rem;font-weight:700;color:var(--ink);margin-bottom:4px}
.blk>h2::after{content:"";display:block;width:44px;height:3px;background:var(--navy);margin:8px auto 0;border-radius:2px}
.blk>.sub{font-size:.98rem;color:var(--muted);margin:8px auto 14px;max-width:880px}
/* cartões */
.card{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:18px}
.kpi .lbl{font-size:.78rem;letter-spacing:.07em;font-weight:700;color:var(--muted)}
.kpi .val{font-size:clamp(1.5rem,3vw,1.95rem);font-weight:700;color:var(--ink)}
.kpi .note{font-size:.88rem;color:var(--muted)}
.btn{border-radius:6px;min-height:42px;font-weight:600}
.seg{border-radius:8px;background:var(--panel2);border:1px solid var(--line)}
.seg button{border-radius:6px;font-weight:600;font-size:.92rem}
.seg button[aria-pressed="true"]{background:var(--navy);color:#fff;box-shadow:none}
:root[data-theme="dark"] .seg button[aria-pressed="true"]{color:#0b1a30}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .seg button[aria-pressed="true"]{color:#0b1a30}}
input[type=date],input[type=search],select{border-radius:6px;min-height:42px;font-size:.95rem}
.tag{border-radius:5px;font-weight:700;font-size:.78rem;letter-spacing:.02em}
.pill{border-radius:6px;box-shadow:none;background:var(--panel2);backdrop-filter:none}
.cg>span{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700}
/* tabelas: primeira coluna alinhada à esquerda, números centralizados */
.tbl{font-size:.97rem}
.tbl thead th{background:var(--panel2);color:var(--muted);font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--line);padding:12px 12px}
.tbl td{padding:12px 12px;border-bottom:1px solid var(--line)}
.tbl tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--panel2) 55%,transparent)}
.tbl tbody tr:hover td{background:color-mix(in srgb,var(--navy) 7%,transparent)}
.tbl td.first,.tbl th:first-child{text-align:left}
.tbl td.first .inst{justify-content:flex-start}
.tbl tr.tot td{background:var(--panel2);font-weight:700}
.tbig{border-radius:8px}
.tbig .tbl th{background:var(--panel2)}
/* instituto: monograma e nome na mesma linha, alinhados à esquerda */
.inst{display:flex;align-items:center;gap:10px;justify-content:flex-start;white-space:nowrap}
.mono{border-radius:6px;width:30px;height:30px;font-size:.72rem}
/* chips de instituto numa única linha */
.chips{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:6px;scrollbar-width:thin;margin:6px 0 14px}
.chip{flex:none;border-radius:6px;min-height:38px;font-size:.92rem}
.chip .mono{border-radius:5px}
.chip[aria-pressed="true"]{background:var(--navy);color:#fff;border-color:var(--navy)}
:root[data-theme="dark"] .chip[aria-pressed="true"]{color:#0b1a30}
/* cabeçalho de blocos dentro de cartão */
.evhead{justify-content:space-between;text-align:left;align-items:flex-start}
.evhead p{margin:0}
.evhead h2{margin:0 0 4px}
/* medidores e candidatos */
.gcard,.cand{border-radius:8px}
.gcard .gh .nm{font-size:1.1rem}
/* mapas */
.map path{stroke:var(--panel)}
/* rodapé */
footer{background:var(--hdr);color:#cdd7e6;border-top:3px solid var(--navy2);margin-top:40px}
footer .wrap.foot{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.6fr;gap:28px;padding-top:28px;padding-bottom:30px;font-size:.92rem;color:#cdd7e6}
footer .fcol{display:flex;flex-direction:column;gap:6px}
footer .fcol b{color:#fff;font-size:1rem}
footer a{color:#cdd7e6;text-decoration:none}footer a:hover{text-decoration:underline}
@media(max-width:900px){footer .wrap.foot{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){footer .wrap.foot{grid-template-columns:minmax(0,1fr)}.hdr .wrap.hdr-in{flex-direction:column;align-items:flex-start}.hdr-actions{width:100%}.hdr-actions .btn{flex:1}.brand h1{font-size:1.4rem}}
/* gênero */
.gen-ctl{display:flex;justify-content:center;margin-bottom:12px}
.tbig .tbl{font-size:.9rem}.tbig .tbl th,.tbig .tbl td{padding:11px 7px}.tbig .tbl th{font-size:.7rem;letter-spacing:.04em}
.tbig .tbl td:first-child,.tbig .tbl th:first-child{padding-left:14px}
.tbl th.lft{text-align:left}
/* painel de presidente, mapa de cidades e evolução */
.mp-wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:14px;align-items:start}
@media(max-width:1000px){.mp-wrap{grid-template-columns:minmax(0,1fr)}}
.mp-map{position:relative;padding:12px}
.mp-map svg{width:100%;height:auto;max-height:78vh;display:block}
.mp-map svg.nac path,.mp-map svg.city path{stroke:var(--panel);stroke-width:.25;vector-effect:non-scaling-stroke}
.mp-map svg.nac path.uf-line{stroke:var(--ink);stroke-width:.9;opacity:.65;pointer-events:none}
.mp-map svg.nac text.uf-lbl{font-size:13px;font-weight:700;fill:var(--ink);paint-order:stroke;stroke:var(--panel);stroke-width:3px;pointer-events:none}
.mp-map svg.city path.sel{stroke:var(--ink);stroke-width:1.6}
.mp-back{position:absolute;top:10px;left:10px;z-index:2;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--panel);color:var(--ink);font-size:1.3rem;cursor:pointer;box-shadow:var(--shadow)}
.mp-title{text-align:center;font-weight:700;font-size:1.1rem;margin-bottom:4px}
.mp-hint,.mp-note{text-align:center;color:var(--muted);font-size:.88rem;margin:6px 0}
.pr-wrap{position:sticky;top:64px}
.pr-card{padding:16px}
.pr-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.pr-head h3{font-size:1.15rem}
.pr-row{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--line);text-align:left}
.pr-av{border-radius:50%;object-fit:cover;object-position:top;border:2px solid var(--line);flex:none}
.pr-mono{display:grid;place-items:center;background:hsl(var(--h) 60% 50%/.16);color:hsl(var(--h) 55% 32%);font-weight:700;font-size:1.05rem}
.pr-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.pr-nm{font-weight:700}.pr-nm i{font-style:normal;color:var(--muted);font-weight:600}
.ptag{display:inline-block;color:#fff;font-weight:800;font-size:.72rem;padding:2px 8px;border-radius:5px;letter-spacing:.03em}
.pr-bar{height:5px;background:var(--panel2);border-radius:3px;margin:8px 0 6px;overflow:hidden}.pr-bar i{display:block;height:100%}
.pr-bot{display:flex;justify-content:space-between;align-items:center;gap:8px}.pr-bot b{font-size:1.1rem;font-variant-numeric:tabular-nums}.pr-bot small{color:var(--muted)}
.bd2{font-style:normal;background:#1c6b34;color:#fff;font-weight:700;font-size:.72rem;padding:2px 8px;border-radius:5px;margin-left:8px}.bd2.ok{background:#2e9d5b}.bd2.re{background:#2f6fd0}
:root[data-theme="dark"] .bd2.ok{color:#06210f}
.pr-all{display:flex;margin:12px auto 4px;border-color:#c0262d;color:#c0262d;background:transparent}
.pr-tots{margin-top:12px;display:flex;flex-direction:column;gap:12px}
.pr-t2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pr-t3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid var(--line);padding-top:12px}
.pr-tot{text-align:center;display:flex;flex-direction:column}.pr-tot span{font-size:.82rem;color:var(--muted)}.pr-tot b{font-size:1.05rem;font-variant-numeric:tabular-nums}.pr-tot.big b{font-size:1.3rem}.pr-tot small{color:var(--muted)}
.tip .evl{margin:4px 0}.tip .evl .ptag{margin-right:8px}
/* controles minimalistas */
.seg.mini{background:transparent;border:0;padding:0;gap:4px;border-radius:0;flex-wrap:wrap;justify-content:center}
.seg.mini button{background:transparent;border-radius:0;padding:6px 10px;min-height:34px;color:var(--muted);font-weight:600;border-bottom:2px solid transparent}
.seg.mini button[aria-pressed="true"]{background:transparent;color:var(--ink);border-bottom-color:var(--navy);box-shadow:none}
:root[data-theme="dark"] .seg.mini button[aria-pressed="true"]{color:var(--ink)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .seg.mini button[aria-pressed="true"]{color:var(--ink)}}
.basebar{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin:2px 0 12px;font-size:.85rem;color:var(--muted);flex-wrap:wrap}
.basebar>span{text-transform:uppercase;letter-spacing:.06em;font-weight:700;font-size:.74rem}
@media(max-width:700px){.basebar{justify-content:center}}
/* três mapas alinhados */
.maps3{align-items:stretch}
.mapcard{display:flex;flex-direction:column}
.mapcard .mapbox{flex:1;display:flex;align-items:center;justify-content:center}
.mapcard .mapbox .map{width:100%}
.mapcard .legend{margin-top:auto;padding-top:8px}
.map.reg path{stroke:var(--panel);stroke-width:2}.map.reg path.sel{stroke:var(--ink);stroke-width:2.6}
.map.reg text{font-size:13px}
/* mapa de votos e painel com a mesma altura */
.mp-wrap{align-items:stretch}
.mp-map{display:flex;flex-direction:column}
.mp-bar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;margin-bottom:6px}
.mp-sp{display:block;width:44px}
.mp-back{position:static;box-shadow:none}
.mp-svg{flex:1;display:flex;align-items:center;justify-content:center;min-height:0}
.mp-svg>svg,.mp-svg>.map,.mp-svg>.empty{margin:auto}
.mp-svg>svg{max-height:70vh}
.pr-wrap{position:static;display:flex}.pr-wrap>.pr-card{width:100%}
/* rosca */
.rc-filtro{display:flex;justify-content:center;margin-bottom:10px}
.rosca{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;align-items:center}
@media(max-width:800px){.rosca{grid-template-columns:minmax(0,1fr)}}
.rc-chart svg{width:100%;max-width:420px;display:block;margin:0 auto}
.rc-chart .slice{transition:transform .15s;transform-origin:110px 110px;cursor:pointer}.rc-chart .slice:hover{transform:scale(1.03);opacity:.92}
.rc-big{font-size:20px;font-weight:700;fill:var(--ink)}.rc-sm{font-size:11px;fill:var(--muted)}
.rc-row{display:grid;grid-template-columns:10px 30px minmax(0,1fr) auto 64px;gap:10px;align-items:center;padding:7px 8px;border-bottom:1px solid var(--line);border-radius:6px;text-align:left}
.rc-row.on{background:var(--panel2)}
.rc-row .sw{width:10px;height:10px;border-radius:3px}.rc-nm small{display:block;color:var(--muted);line-height:1.1}.rc-v{font-variant-numeric:tabular-nums}.rc-p{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}
.rc-row .pr-av{width:30px;height:30px;font-size:.7rem;border-width:1px}
.dgrid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1000px){.dgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* zoom do mapa */
.mp-zoom{display:flex;justify-content:flex-end;gap:4px}
.zbtn{width:34px;height:34px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:6px;font-size:1.05rem;cursor:pointer;line-height:1}
.zbtn:hover{background:var(--panel2)}
.mp-bar{grid-template-columns:90px 1fr 120px}
.mp-sp{width:90px}
/* bandeiras */
img.flag{height:22px;width:auto;border:1px solid var(--line);border-radius:3px;vertical-align:middle;margin-right:8px;background:var(--panel2)}
.ufcell{display:inline-flex;align-items:center}
h3.ufh{display:flex;align-items:center;justify-content:center}
.mp-title{display:flex;align-items:center;justify-content:center}
.thc{display:inline-flex;align-items:center;gap:6px}.thc .pr-av{border-width:1px}
/* resultado nacional: 1º ao 4º lugar */
.rk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media(max-width:1100px){.rk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.rk-grid{grid-template-columns:minmax(0,1fr)}}
.rk-card{position:relative;display:flex;align-items:center;gap:14px;text-align:left;padding:18px 16px}
.rk-card .pr-av{flex:none}
.rk-pos{position:absolute;top:10px;right:14px;font-size:.76rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.rk-in{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.rk-nm{font-weight:700;font-size:1.05rem;line-height:1.2}
.rk-pct{font-size:1.9rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.1}
.rk-v{font-size:.88rem;color:var(--muted)}
.finalista{background:color-mix(in srgb,var(--cor) 6%,var(--panel));border-color:color-mix(in srgb,var(--cor) 50%,var(--line))}
.rk-in .bd2{margin-left:0;margin-bottom:2px}
/* rosca: mais espaço no filtro */
.rosca-card{padding-top:26px}
.rc-filtro{margin-bottom:26px}
.rc-filtro .seg.mini{gap:14px}
.ufcell{display:flex;align-items:center;min-height:30px}.ufcell img.flag{margin-right:10px}
/* governadores */
.gv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(max-width:900px){.gv-grid{grid-template-columns:minmax(0,1fr)}}
.gv-card{display:flex;flex-direction:column;text-align:left;padding:16px}
.gv-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.gv-h h3{font-size:1.1rem}
.gv-c{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;padding:10px 6px;border-bottom:1px solid var(--line);border-radius:6px}
.gv-c.ele{background:color-mix(in srgb,var(--ok) 7%,transparent)}
.gv-cn{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gv-cn .bd2{margin-left:0}
.gv-cm .pr-bar{margin:6px 0 4px}
.gv-more{align-self:center;margin-top:10px;border:0;background:transparent;color:#c0262d;font-weight:700;cursor:pointer;padding:6px 10px}
.gv-f{margin-top:6px;text-align:right;color:var(--muted);font-size:.85rem}
.gv-li{border-bottom:1px solid var(--line)}.gv-li .pr-row{border:0;padding-top:4px}.gv-uf{display:flex;align-items:center;font-size:.8rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding-top:10px}

/* Animações discretas (respeitam prefers-reduced-motion) */
@media (prefers-reduced-motion:no-preference){
  .anim .rv{opacity:0;transform:translateY(10px);transition:opacity .5s ease var(--d,0ms),transform .5s ease var(--d,0ms)}
  .anim .rv.in{opacity:1;transform:none}
  .anim .rv.in .bar i,.anim .rv.in .pr-bar i{transform-origin:left center;animation:grow .8s cubic-bezier(.2,.7,.2,1) both .15s}
  .anim .rv.in path.draw{stroke-dasharray:1;stroke-dashoffset:1;animation:dash 1.2s ease-out forwards .1s}
  .card,.kpi,.rk-card,.gv-card{transition:transform .2s ease,box-shadow .2s ease,opacity .5s ease var(--d,0ms)}
  .anim .rv.in.gv-card:hover,.anim .rv.in.rk-card:hover,.anim .rv.in.kpi:hover{transform:translateY(-2px)}
  .seg button,.nav a,.btn{transition:background-color .2s,color .2s,border-color .2s}
  svg path[role=button]{transition:opacity .15s,filter .15s}
  @keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
  @keyframes dash{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
}

/* Contorno da foto: verde = eleito, azul = reeleito */
.pr-av.ring-eleito{border-color:#2e9d5b;border-width:3px}
.pr-av.ring-reeleito{border-color:#2f6fd0;border-width:3px}
.ring-leg{display:flex;gap:14px;justify-content:center;font-size:.82rem;color:var(--muted);margin:0 0 10px}
.ring-leg i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:5px;vertical-align:-1px;border:2px solid}
.ring-leg .e{border-color:#2e9d5b}.ring-leg .r{border-color:#2f6fd0}
.ev-head{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px;font-size:.85rem;color:var(--muted)}

/* Senado: composição e hemiciclo */
.sn-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:20px;align-items:center}
.sn-num{font-size:3rem;font-weight:700;line-height:1;color:var(--ink)}.sn-sub{color:var(--muted);font-size:.9rem;margin-top:6px}
.sn-semi svg{width:100%;height:auto;display:block}
.sn-chips{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 8px;margin:10px 0}
.sn-chip{flex:none;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:8px;padding:6px 10px;font-weight:700;font-size:.82rem;cursor:pointer;font-family:inherit;transition:border-color .2s,transform .2s}
.sn-chip:hover{border-color:var(--navy);transform:translateY(-1px)}.sn-chip .flag{height:14px;width:auto}
.sn-comp{display:flex;flex-direction:column}.sn-p{border-bottom:1px solid var(--line)}
.sn-ph{display:grid;grid-template-columns:90px minmax(0,1fr) 70px 18px;gap:12px;align-items:center;padding:10px 4px;cursor:pointer;text-align:left;background:none;border:0;width:100%;font-family:inherit;color:var(--ink);font-size:.95rem}
.sn-ph .bar{height:6px}.sn-ph .pc{text-align:right;font-weight:700}
.sn-pl{padding:2px 6px 12px 12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px 14px;font-size:.88rem;text-align:left}
.sn-pl small{color:var(--muted)}
.sn-ab{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:14px;align-items:center;background:var(--panel2);border-radius:10px;padding:18px 10px 10px}
.sn-ab .lbl{text-align:center;color:var(--muted);font-weight:700;font-size:.9rem;margin-top:6px}.sn-ar{color:var(--muted);font-size:1.3rem}
.sn-t{width:100%;border-collapse:collapse;margin-top:14px}.sn-t th{font-size:.82rem;color:var(--muted);text-align:center;padding:10px 8px;border-bottom:1px solid var(--line)}
.sn-t td{padding:9px 8px;text-align:center;border-bottom:1px solid var(--line)}.sn-t th:first-child,.sn-t td:first-child{text-align:left}
.sn-t .up{color:#1c8c4a;font-weight:700}.sn-t .dn{color:#c0392b;font-weight:700}.sn-t .z{font-weight:700}
.ev-pill{font-weight:700}
@media(max-width:720px){.sn-top{grid-template-columns:1fr}.sn-ab{grid-template-columns:1fr}.sn-ar{display:none}.sn-ph{grid-template-columns:78px minmax(0,1fr) 56px 14px}}

/* Ficha do candidato (popup) */
.av-btn{padding:0;border:0;background:none;border-radius:50%;cursor:pointer;line-height:0;flex:none;align-self:start;transition:transform .2s,box-shadow .2s}
.av-btn:hover,.av-btn:focus-visible{transform:scale(1.05);box-shadow:0 0 0 3px color-mix(in srgb,var(--navy) 22%,transparent);outline:0}
.fc-lock{overflow:hidden}
.fc-ov{position:fixed;inset:0;z-index:100;background:rgba(8,16,32,.5);display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;transition:opacity .2s}
.fc-ov.on{opacity:1}
.fc-box{position:relative;background:var(--panel);color:var(--ink);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.35);width:100%;max-width:460px;max-height:calc(100vh - 32px);overflow:auto;padding:22px;text-align:left;transform:translateY(10px);transition:transform .25s}
.fc-ov.on .fc-box{transform:none}
.fc-x{position:absolute;top:10px;right:12px;border:0;background:none;font-size:1.7rem;line-height:1;color:var(--muted);cursor:pointer;padding:2px 8px;border-radius:6px}.fc-x:hover{background:var(--panel2);color:var(--ink)}
.fc-hd{display:flex;gap:16px;align-items:center;padding-right:24px}.fc-hd h2{margin:0;font-size:1.2rem;line-height:1.25;text-align:left}
.fc-hd h2::after{display:none}
.fc-sub{color:var(--muted);font-size:.88rem;margin:3px 0 8px}.fc-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.fc-tags .bd2{margin-left:0}.fc-n{font-weight:700;color:var(--muted);font-size:.9rem}
.bd2.no{background:var(--panel2);color:var(--muted)}
.fc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:18px 0 14px}
.fc-st{background:var(--panel);padding:11px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}.fc-st span{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}
.fc-st b{font-size:1.02rem;overflow-wrap:anywhere}.fc-st small{color:var(--muted);font-size:.78rem}
.fc-info{margin:0;display:grid;gap:6px}.fc-info div{display:flex;justify-content:space-between;gap:12px;font-size:.9rem;border-bottom:1px solid var(--line);padding:5px 0}.fc-info dt{color:var(--muted)}.fc-info dd{margin:0;font-weight:600;text-align:right}
.fc-fonte{color:var(--muted);font-size:.74rem;margin:12px 0 0}
@media(max-width:480px){.fc-hd{flex-direction:column;align-items:flex-start}.fc-grid{grid-template-columns:1fr}}
/* abas 1º/2º turno e "Em Breve" */
.turnos-bar{display:flex;justify-content:center;margin:2px 0 14px}.turnos button{padding:8px 26px}
.bv{padding:46px 16px;text-align:center}.bv-t{font-size:clamp(2rem,6vw,3rem);font-weight:700;color:var(--ink)}.bv-s{color:var(--muted);margin:6px 0 22px}
.bv-cd{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.bv-cd div{min-width:76px;border:1px solid var(--line);background:var(--panel2);border-radius:10px;padding:12px 8px;display:flex;flex-direction:column}
.bv-cd b{font-size:1.9rem;font-variant-numeric:tabular-nums}.bv-cd small{color:var(--muted);font-size:.78rem}
/* Câmara: mapa e painel */
.cm-fil{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0 12px}.cm-fil select{width:100%;min-width:0}
.cm-par{display:grid;gap:6px;margin-bottom:12px}.cm-pr{display:grid;grid-template-columns:96px minmax(0,1fr) 28px;gap:10px;align-items:center}.cm-pr .pr-bar{margin:0}.cm-pr span{text-align:right;font-weight:700}
.cm-dh{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;border-top:1px solid var(--line);padding-top:10px}
.cm-dl{max-height:340px;overflow:auto;margin-top:4px}.cm-d{display:grid;grid-template-columns:minmax(0,1fr) auto 86px;gap:8px;align-items:center;padding:6px 2px;border-bottom:1px solid var(--line);font-size:.9rem}.cm-d small{color:var(--muted);text-align:right}
.mp-cap{font-weight:700;color:var(--muted);font-size:.85rem}
.fc-st:last-child:nth-child(odd){grid-column:1/-1}
.cm-tab{display:flex;justify-content:flex-start;margin:4px 0 12px}
.cm-dl{max-height:560px;overflow:auto;margin-top:0;padding-right:4px}.cm-dl .gv-c{border-bottom:1px solid var(--line)}
.gv-c .av-btn{align-self:center}

/* Pesquisa Eleitoral */
.lg{display:inline-flex;align-items:center;justify-content:center;flex:none;border-radius:7px;overflow:hidden;background:var(--panel2)}
.lg img{width:100%;height:100%;object-fit:contain;display:block}
.lg-m{font-weight:800;color:hsl(var(--h) 55% 28%);background:hsl(var(--h) 70% 90%);letter-spacing:.02em}
:root[data-theme="dark"] .lg-m{color:hsl(var(--h) 70% 86%);background:hsl(var(--h) 38% 24%)}
.pq-sticky{position:sticky;top:46px;z-index:20;background:var(--bg);padding:6px 0 8px;margin-bottom:8px}
.pq-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 12px}
.pq-dt{display:flex;align-items:center;gap:6px}.pq-dt input{width:136px;min-height:34px;padding:2px 8px;font-size:.88rem}
.pq-dd{position:relative}.pq-dd summary{list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:6px;padding:7px 12px;font-weight:600;font-size:.88rem;background:var(--panel)}.pq-dd summary::-webkit-details-marker{display:none}
.pq-dl{position:absolute;z-index:30;top:calc(100% + 6px);left:0;min-width:270px;max-height:340px;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.18);padding:6px;text-align:left}
.pq-it{display:grid;grid-template-columns:18px 22px 1fr auto;gap:8px;align-items:center;padding:6px 8px;border-radius:6px;font-size:.9rem;cursor:pointer}.pq-it:hover{background:var(--panel2)}.pq-it small{color:var(--muted)}
.pq-clr{width:100%;text-align:left;border:0;background:none;padding:7px 8px;font-weight:700;color:var(--muted);cursor:pointer;font-family:inherit}
.pq-lim{min-height:34px;padding:0 14px;font-size:.86rem}
.pq-g2{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:14px;align-items:stretch}
.pq-g2 .card{padding:14px}.pq-g2 .chartbox svg{max-height:300px}
.pq-dons{display:grid;grid-template-columns:1fr 1fr;gap:6px}.pq-dons svg{width:100%;max-width:190px;margin:0 auto;display:block}.pq-dt2{font-weight:700;font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.dn-c{font-size:17px;font-weight:700;fill:var(--ink)}.dn-sub{font-size:14px;fill:var(--muted)}.dn-s{transition:opacity .15s}.dn-s:hover{opacity:.8}
.pq-hd{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px}
.pq-cds{display:flex;align-items:center;gap:14px}.pq-cd{display:flex;align-items:center;gap:10px}.pq-cd img{border-radius:50%;object-fit:cover;object-position:top;border:3px solid}.pq-cd.f img{border-color:var(--f)}.pq-cd.l img{border-color:var(--l)}
.pq-cd .nm{font-weight:700;font-size:.9rem;color:var(--muted)}.pq-cd .pct{font-size:1.8rem;font-weight:700;line-height:1.1}.pq-cd.f .pct{color:var(--f)}.pq-cd.l .pct{color:var(--l)}.pq-cds .x{color:var(--muted);font-weight:700}
.pq-ld{text-align:right}.pq-ld b{display:block;font-size:1.25rem}.pq-ld small{color:var(--muted)}
.cf{color:var(--f);font-weight:700}.cl{color:var(--l);font-weight:700}
.pq-t{width:100%;border-collapse:collapse;font-size:.92rem}.pq-t th,.pq-t td{padding:9px 10px;border-top:1px solid var(--line);text-align:center}.pq-t thead th{border-top:0;font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.pq-t tbody th{text-align:left;font-weight:600;color:var(--ink);cursor:help}.pq-t td{font-variant-numeric:tabular-nums}
.pq-met{margin-top:10px;font-size:.86rem;color:var(--muted);text-align:left}.pq-met summary{cursor:pointer;font-weight:700}.pq-met ul{margin:8px 0 0;padding-left:18px;display:grid;gap:4px}
.pq-tb td small{color:var(--muted)}.ef{display:inline-flex;align-items:center;gap:6px;justify-content:flex-end}.ef i{display:inline-block;height:6px;border-radius:3px}.ef i.f{background:var(--f)}.ef i.l{background:var(--l)}
.pq-tb-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-bottom:10px}.pq-tb-bar input{flex:1;min-width:200px;max-width:340px}.pq-cnt{color:var(--muted);font-size:.85rem}
@media(max-width:900px){.pq-g2{grid-template-columns:1fr}.pq-ld{text-align:left}.pq-sticky{position:static}}
.pq-g2 .chartbox svg{width:100%;min-width:0}

/* foto com iniciais por baixo (carrega por cima) */
.pr-ph{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}
.pr-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;border-radius:50%;opacity:0;transition:opacity .25s;border:0}
.pr-ph img.ok{opacity:1}
.tc-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}.tc-bar input{flex:1;min-width:220px}.tc-bar select{min-width:150px;max-width:210px}.tc-r{cursor:pointer}.tc-r:hover td{background:color-mix(in srgb,var(--navy) 6%,transparent)}

/* Pesquisa espontânea */
.enq-ov{position:fixed;inset:0;z-index:120;background:rgba(8,16,32,.58);display:flex;align-items:center;justify-content:center;padding:14px;opacity:0;transition:opacity .2s;overflow:auto}
.enq-ov.on{opacity:1}
.enq-box{position:relative;background:var(--panel);color:var(--ink);border-radius:14px;box-shadow:0 24px 70px rgba(0,0,0,.4);width:100%;max-width:520px;padding:24px 22px 18px;text-align:center;transform:translateY(12px);transition:transform .25s;margin:auto}
.enq-ov.on .enq-box{transform:none}
.enq-tag{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.12em;color:#fff;background:var(--navy);padding:4px 12px;border-radius:5px;margin-bottom:10px}
.enq-box h2{margin:0 0 14px;font-size:1.3rem}.enq-box h2::after{display:none}
.enq-cs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.enq-c{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;border:2px solid var(--line);border-radius:12px;padding:14px 8px 12px;cursor:pointer;transition:border-color .2s,background .2s,transform .2s}
.enq-c:hover{transform:translateY(-2px)}.enq-c input{position:absolute;opacity:0;pointer-events:none}
.enq-c img{border-radius:50%;object-fit:cover;object-position:top;border:3px solid var(--line)}
.enq-c.flavio:has(input:checked){border-color:var(--f);background:color-mix(in srgb,var(--f) 8%,var(--panel))}.enq-c.flavio:has(input:checked) img{border-color:var(--f)}
.enq-c.lula:has(input:checked){border-color:var(--l);background:color-mix(in srgb,var(--l) 8%,var(--panel))}.enq-c.lula:has(input:checked) img{border-color:var(--l)}
.enq-c:has(input:focus-visible){outline:2px solid var(--navy);outline-offset:2px}
.enq-c small{color:var(--muted)}
.enq-l{display:flex;flex-direction:column;gap:4px;text-align:left;font-size:.8rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}
.enq-l input{font-size:1rem;text-transform:none;letter-spacing:0;font-weight:400;color:var(--ink);min-height:42px}
.enq-iso{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.enq-ck{display:flex;gap:10px;align-items:flex-start;text-align:left;font-size:.84rem;color:var(--muted);margin:4px 0 8px}.enq-ck input{margin-top:3px;flex:none}
.enq-err{min-height:20px;color:var(--l);font-size:.88rem;font-weight:600;margin:4px 0}
.enq-b{display:flex;gap:10px;justify-content:space-between}.enq-go{min-width:130px}
.enq-nt{font-size:.74rem;color:var(--muted);margin:12px 0 0}
.enq-done{padding:18px 6px}.enq-ico{width:56px;height:56px;border-radius:50%;background:#2e9d5b;color:#fff;font-size:1.8rem;display:grid;place-items:center;margin:0 auto 10px}
/* aviso de cookies */
.ck{position:fixed;left:16px;bottom:16px;z-index:130;max-width:360px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 40px rgba(0,0,0,.28);padding:16px;text-align:left;opacity:0;transform:translateY(14px);transition:opacity .25s,transform .25s}
.ck.on{opacity:1;transform:none}.ck h3{margin:0 0 6px;font-size:1rem}.ck p{margin:0 0 8px;font-size:.84rem;color:var(--muted)}.ck a{color:var(--ink);text-decoration:underline}
.ck-ant{font-weight:600}.ck-b{display:flex;gap:8px;justify-content:flex-end}.ck-b .btn{min-height:36px;padding:0 14px;font-size:.86rem}
@media(max-width:480px){.ck{left:8px;right:8px;bottom:8px;max-width:none}}
/* páginas legais */
.legal{max-width:820px;margin:8px auto 30px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:26px 28px;text-align:left}
.legal h1{font-size:1.7rem;margin:0 0 4px;text-align:left}.legal h1::after{display:none}.legal-up{color:var(--muted);font-size:.85rem;margin:0 0 14px}
.legal h2{font-size:1.1rem;margin:22px 0 6px;text-align:left}.legal h2::after{display:none}.legal p,.legal li{font-size:.96rem;line-height:1.6}.legal ul{padding-left:20px;display:grid;gap:6px}
.legal .ph{background:#fff3bf;color:#5b4a00;padding:0 4px;border-radius:3px}.legal code{background:var(--panel2);padding:1px 6px;border-radius:4px}
.foot-legal{display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:center;border-top:1px solid rgba(255,255,255,.14);margin-top:18px;padding-top:14px;font-size:.88rem}.foot-legal a{color:inherit;opacity:.85}
.ck .btn.pri,.enq-box .btn.pri{background:var(--navy);color:#fff;border-color:var(--navy)}:root[data-theme="dark"] .ck .btn.pri,:root[data-theme="dark"] .enq-box .btn.pri{color:#0b1a30}.enq-box .btn:disabled{opacity:.6}
.enq-ov{backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);background:rgba(8,16,32,.72)}
.enq-cs{grid-template-columns:repeat(3,1fr);gap:10px}.enq-box{max-width:600px}
.enq-c img,.enq-bn{width:78px;height:78px}.enq-bn{display:grid;place-items:center;border-radius:50%;border:3px solid var(--line);font-size:2.2rem;color:var(--muted);background:var(--panel2)}
.enq-c.branco:has(input:checked){border-color:var(--muted);background:var(--panel2)}.enq-c.branco:has(input:checked) .enq-bn{border-color:var(--muted);color:var(--ink)}
.enq-c b{font-size:.92rem;text-align:center}.enq-c small{text-align:center;font-size:.76rem}
.enq-l input{background:#fff!important;color:#14171c!important;border:1px solid #c9d0db;border-radius:8px;padding:0 12px}
.enq-l input::placeholder{color:#8a93a3}
@media(max-width:520px){.enq-cs{grid-template-columns:1fr 1fr 1fr;gap:6px}.enq-c{padding:10px 4px}.enq-c img,.enq-bn{width:56px;height:56px}.enq-box{padding:18px 14px 14px}.enq-box h2{font-size:1.1rem}}

/* Pesquisa Eleitoral: blocos, barras e lista de pesquisas */
.pq-dons{grid-template-columns:1fr 1fr;gap:20px;max-width:720px;margin:0 auto}.pq-dn{text-align:center}.pq-dn svg{max-width:230px}.pq-dn>small{display:block;color:var(--muted);font-size:.8rem;margin-bottom:6px}
.pq-lg{list-style:none;margin:8px auto 0;padding:0;display:grid;gap:5px;max-width:260px;text-align:left}.pq-lg li{display:grid;grid-template-columns:12px 1fr auto;gap:8px;align-items:center;font-size:.9rem}.pq-lg i{width:11px;height:11px;border-radius:50%;display:block}
.pq-bls{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}
.pq-bl{padding:16px;text-align:left}.pq-bh{display:flex;align-items:center;gap:10px;margin-bottom:4px}.pq-bh h3{margin:0;font-size:1.05rem;text-align:left}
.pq-n{width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700;font-size:.8rem;display:grid;place-items:center;flex:none}:root[data-theme="dark"] .pq-n{color:#0b1a30}
.pq-ex{color:var(--muted);font-size:.86rem;margin:0 0 12px;line-height:1.45}
.pq-split{display:flex;height:26px;border-radius:7px;overflow:hidden;background:var(--panel2);margin:5px 0;font-size:.78rem;font-weight:700}.pq-split span{display:grid;place-items:center;white-space:nowrap;overflow:hidden;min-width:0}
.pq-two{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:8px;text-align:center;margin-bottom:6px}.pq-two small{display:block;color:var(--muted);font-size:.78rem;font-weight:600}.pq-two b{font-size:1.7rem;line-height:1.1}.pq-ld2 b{font-size:1.1rem}
.pq-sub{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin:12px 0 2px}.pq-lab{display:flex;justify-content:space-between;gap:6px;font-size:.78rem;color:var(--muted);flex-wrap:wrap}
.pq-mr{display:grid;grid-template-columns:78px minmax(0,1fr);gap:8px;align-items:center;font-size:.82rem;color:var(--muted)}
.pq-tls{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;margin-top:12px}.pq-tl{background:var(--panel2);border-radius:8px;padding:9px 10px;display:flex;flex-direction:column;gap:1px;min-width:0}.pq-tl span{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700}.pq-tl b{font-size:1.05rem;overflow-wrap:anywhere}.pq-tl small{font-size:.74rem;color:var(--muted)}
.pq-svg{width:100%;height:auto;display:block}.pq-ax{font-size:10px;fill:var(--muted)}
.pq-cps{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pq-cp{display:grid;gap:5px}.pq-cp b{font-size:1rem}.pq-cp small{color:var(--muted)}
.pq-list{display:grid;gap:8px}.pq-hd3{display:grid;grid-template-columns:minmax(190px,1.3fr) 118px minmax(150px,1.2fr) minmax(150px,1.2fr) 64px 22px;gap:12px;padding:0 12px 8px;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;border-bottom:1px solid var(--line);margin-bottom:8px}.pq-hd3 .r{text-align:right}
.pq-r{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden;transition:border-color .2s,box-shadow .2s}.pq-r:hover{border-color:color-mix(in srgb,var(--navy) 40%,var(--line))}.pq-r.open{box-shadow:0 4px 18px rgba(0,0,0,.08)}.pq-r.ag{background:var(--panel2);opacity:.85}
.pq-main{display:grid;grid-template-columns:minmax(190px,1.3fr) 118px minmax(150px,1.2fr) minmax(150px,1.2fr) 64px 22px;gap:12px;align-items:center;padding:10px 12px;cursor:pointer;text-align:left}.pq-main:focus-visible{outline:2px solid var(--navy);outline-offset:-2px}
.pq-c{min-width:0}.pq-c.i{display:flex;gap:10px;align-items:center}.pq-c small{display:block;color:var(--muted);font-size:.76rem}.pq-c.d b{display:block}.pq-c.f{text-align:right}.pq-cl{display:none!important}
.pq-df{font-weight:700;font-size:.95rem}.pq-ch{color:var(--muted);text-align:center}.pq-ag{color:var(--muted);font-size:.84rem}
.pq-dt3{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 16px;padding:12px 14px 14px;border-top:1px dashed var(--line);background:var(--panel2);text-align:left}.pq-dt3 div{display:flex;flex-direction:column;gap:2px;font-size:.88rem}.pq-dt3 span{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.pq-obs{grid-column:1/-1}.pq-obs em{font-style:normal;color:var(--muted)}
.pq-tb-bar select{max-width:230px}
@media(max-width:900px){.pq-bls,.pq-cps{grid-template-columns:1fr}}
@media(max-width:980px){
  .pq-hd3{display:none}
  .pq-main{grid-template-columns:minmax(0,1fr) auto 22px;grid-template-areas:"i f ch" "d d d" "t t t" "v v v";gap:8px 10px}
  .pq-c.i{grid-area:i}.pq-c.d{grid-area:d;display:flex;gap:8px;align-items:baseline}.pq-c.t{grid-area:t}.pq-c.v{grid-area:v}.pq-c.f{grid-area:f}.pq-ch{grid-area:ch}
  .pq-cl{display:block!important;margin-bottom:2px}
}
@media(max-width:760px){.pq-dons{grid-template-columns:1fr;gap:26px}}
@media(max-width:480px){.pq-two b{font-size:1.4rem}.pq-mr{grid-template-columns:64px minmax(0,1fr)}}
.gv-mb{display:flex;gap:8px;flex-wrap:wrap}.gv-mb .gv-more{flex:1;min-width:150px}.gv-rec{color:var(--muted)!important;border-color:var(--line)!important;flex:0 0 auto!important;min-width:0!important}
.rs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.rs-c{padding:14px;text-align:center}.rs-c svg{width:100%;max-width:190px;margin:4px auto 0;display:block}.rs-c .pq-lg{max-width:none}.rs-mais{color:var(--muted)}
@media(max-width:900px){.tbl th,.tbl td{padding:8px 6px;font-size:.86rem}.tbl .inst .lg{width:22px!important;height:22px!important}}
@media(max-width:900px){
  .tbl.stk thead{display:none}
  .tbl.stk,.tbl.stk tbody,.tbl.stk tr,.tbl.stk td{display:block;width:100%}
  .tbl.stk tr{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:10px;background:var(--panel)}
  .tbl.stk td{border:0!important;padding:5px 0!important;display:flex;justify-content:space-between;gap:12px;text-align:right;background:none!important;font-size:.92rem}
  .tbl.stk td::before{content:attr(data-l);color:var(--muted);font-size:.78rem;text-align:left;flex:none}
  .tbl.stk td.first{font-size:1rem;justify-content:flex-start;padding-bottom:7px!important}.tbl.stk td.first::before{content:none}
  .tbl.stk tr.tot{background:var(--panel2)}
}
@media(max-width:720px){.nav .wrap{flex-wrap:wrap;justify-content:center;gap:2px 4px;overflow:visible}.nav .wrap a{padding:7px 10px;font-size:.88rem}}
.sem-kpi .grid.g4{display:none}.sem-kpi .ctl{margin-top:0}
.ctl .mini-sel{border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;font-weight:600;font-size:.9rem;padding:5px 22px 5px 4px;min-height:0;color:var(--ink);cursor:pointer}
.ctl .mini-sel:focus{outline:0;border-bottom-color:var(--navy)}

/* Cabeçalho e rodapé minimalistas */
.sh{position:sticky;top:0;z-index:60;background:var(--panel);border-bottom:1px solid var(--line)}
.sh-in{display:flex;align-items:center;gap:22px;min-height:62px}
.sh-brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:700;font-size:1.08rem;white-space:nowrap}
.sh-brand img{border-radius:50%;display:block;box-shadow:0 0 0 1px var(--line)}.sh-brand b{color:var(--muted);font-weight:700}
.sh-nav{display:flex;gap:2px;margin-left:8px;flex-wrap:nowrap;overflow:visible}
.sh-nav a{color:var(--muted);text-decoration:none;font-weight:600;font-size:.92rem;padding:8px 11px;border-radius:7px;position:relative;white-space:nowrap;transition:color .2s,background .2s}
.sh-nav a:hover{color:var(--ink);background:var(--panel2)}
.sh-nav a[aria-current="page"]{color:var(--ink)}.sh-nav a[aria-current="page"]::after{content:"";position:absolute;left:11px;right:11px;bottom:-12px;height:2px;background:var(--navy);border-radius:2px}
:root[data-theme="dark"] .sh-nav a[aria-current="page"]::after{background:#cdd7e6}
.sh-act{margin-left:auto;display:flex;gap:6px}
.sh-ic{width:38px;height:38px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:8px;font-size:1.05rem;cursor:pointer;display:grid;place-items:center;transition:background .2s}.sh-ic:hover{background:var(--panel2)}
.sh-burger{display:none}
@media(max-width:1080px){
  .sh-burger{display:grid}
  .sh-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--panel);border-bottom:1px solid var(--line);box-shadow:0 14px 30px rgba(0,0,0,.14);flex-direction:column;gap:0;margin:0;padding:6px 16px 12px}
  .sh.open .sh-nav{display:flex}
  .sh-nav a{padding:13px 8px;font-size:1rem;border-bottom:1px solid var(--line);border-radius:0}.sh-nav a:last-child{border-bottom:0}
  .sh-nav a[aria-current="page"]::after{left:8px;right:auto;width:28px;bottom:6px}
}
@media(max-width:380px){.sh-brand span{font-size:.98rem}}
.sf{background:var(--panel);color:var(--muted);border-top:1px solid var(--line);margin-top:40px}
.sf-in{display:grid;gap:14px;padding-top:26px;padding-bottom:calc(26px + env(safe-area-inset-bottom));text-align:left}
.sf-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.sf-brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.sf-brand img{border-radius:50%}
.sf-links,.sf-legal{display:flex;flex-wrap:wrap;gap:6px 18px}
.sf a{color:var(--muted);text-decoration:none;font-size:.9rem}.sf a:hover{color:var(--ink);text-decoration:underline}
.sf-nt{margin:0;font-size:.84rem;line-height:1.5;max-width:900px}.sf-legal{border-top:1px solid var(--line);padding-top:12px}.sf-legal a{font-size:.84rem}
.pq-sticky{top:63px}
html{scroll-padding-top:74px}

/* filtros da tabela no canto + calendário */
.pq-tb-bar{justify-content:space-between}.pq-tb-bar input{flex:0 1 300px;min-width:160px}
.pq-fr{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:flex-end;margin-left:auto}
.pq-calw{position:relative}.pq-calbtn{white-space:nowrap}
.pq-cal{position:absolute;right:0;top:calc(100% + 6px);z-index:60;width:292px;max-width:calc(100vw - 32px);background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.18);padding:12px}
.pq-cal[hidden]{display:none}
.cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cal-h .btn{min-width:34px;padding:4px 8px}
.cal-w,.cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}.cal-w span{font-size:.7rem;color:var(--muted);font-weight:700;padding:2px 0}
.cd{position:relative;display:flex;align-items:center;justify-content:center;height:36px;border-radius:8px;font-size:.88rem;border:0;background:none;color:var(--muted);opacity:.45}
.cd.on{opacity:1;color:var(--ink);font-weight:700;background:color-mix(in srgb,var(--navy) 10%,var(--panel));cursor:pointer}.cd.on:hover{background:color-mix(in srgb,var(--navy) 22%,var(--panel))}
.cd.on.sel{background:var(--navy);color:#fff}.cd.hj{outline:2px solid var(--navy);outline-offset:-2px}
.cd i{position:absolute;right:3px;top:1px;font-style:normal;font-size:.58rem;font-weight:700;opacity:.75}
.cal-f{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.cal-f small{color:var(--muted)}
@media(max-width:760px){.pq-tb-bar input{flex:1 1 100%;max-width:none}.pq-fr{width:100%;justify-content:space-between;margin-left:0}.pq-calw{position:static}.pq-cal{left:0;right:0;width:auto;max-width:none;top:auto;margin-top:6px}.pq-tb-bar{position:relative}}

/* Senado: composição com abas */
.sc{padding:14px}.sc-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.sc-tab{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:999px;padding:9px 18px;font:inherit;font-size:.9rem;cursor:pointer;white-space:nowrap}.sc-tab:hover{border-color:var(--navy)}
.sc-tab.on{background:#0e1626;color:#fff;border-color:#0e1626;font-weight:700}
.sc-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:16px;align-items:start}
.sc-pane{min-width:0}.sc-bar{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;margin-bottom:10px}
.sc-cap{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:700}
.sc-leg{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.82rem;color:var(--muted)}.sc-leg span{display:inline-flex;align-items:center;gap:6px}.sc-leg i,.sc-apk i,.sc-rn i{display:inline-block;width:10px;height:10px;border-radius:50%}
.sc-sw{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;cursor:pointer}
.sc-nt{font-size:.8rem;color:var(--muted);margin:10px 0 0;line-height:1.45}
.sc-hemi{width:100%;height:auto;display:block}.sc-ch{cursor:pointer;outline:0}.sc-ch circle{stroke:var(--panel);stroke-width:2;transition:transform .15s,opacity .15s;transform-box:fill-box;transform-origin:center}
.sc-ch:hover circle,.sc-ch:focus-visible circle,.sc-ch.on circle{transform:scale(1.18);stroke:var(--ink)}
.sc-ch.m31 circle{opacity:.42}.sc-hemi.so26 .sc-ch.m31{opacity:.18}
.sc-det{margin-top:8px;border:1px dashed var(--line);border-radius:10px;padding:12px;display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;min-height:56px}.sc-det:empty::before{content:'Toque numa cadeira para ver os detalhes.';color:var(--muted);font-size:.86rem}
.sc-det p{margin:0;font-size:.9rem;flex:1 1 200px}.sc-dh{display:flex;gap:10px;align-items:center}.sc-dh small{display:block;color:var(--muted)}.sc-dh .flag{height:24px;width:auto}
.sc-tags{display:flex;flex-wrap:wrap;gap:6px}.sc-tag{font-size:.72rem;font-weight:700;border-radius:6px;padding:3px 8px;background:var(--panel2);color:var(--muted);border:1px solid var(--line)}
.sc-tag.m{background:#ececf0;color:#555b66}.sc-tag.ok{background:#e1f4e8;color:#17803d;border-color:#bfe5cc}.sc-tag.re{background:#e3e8fb;color:#2848b4;border-color:#c5cef3}
.sc-tag.e{background:color-mix(in srgb,var(--c) 14%,var(--panel));color:var(--c);border-color:color-mix(in srgb,var(--c) 40%,var(--panel))}
.sc-tag.a.lula{background:#fde8ea;color:#b4182c;border-color:#f6c4ca}.sc-tag.a.flavio{background:#e2ecfb;color:#1d4ed8;border-color:#c3d5f6}.sc-tag.a.outros{background:#eceef1;color:#555b66}
:root[data-theme=dark] .sc-tag.m,:root[data-theme=dark] .sc-tag.ok,:root[data-theme=dark] .sc-tag.re,:root[data-theme=dark] .sc-tag.a{background:var(--panel2);color:var(--ink)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .sc-tag.m,:root:not([data-theme=light]) .sc-tag.ok,:root:not([data-theme=light]) .sc-tag.re,:root:not([data-theme=light]) .sc-tag.a{background:var(--panel2);color:var(--ink)}}
.sc-side{display:flex;flex-direction:column;gap:10px}.sc-gc{border:1px solid var(--line);border-radius:12px;padding:10px 12px 4px;text-align:center}.sc-gc h4{margin:0 0 2px;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);text-align:left}.sc-g{width:100%;max-width:230px;height:auto}
.sc-t{margin:0 0 4px;font-size:1.15rem;text-align:left}.sc-aps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.sc-ap{border:1px solid var(--line);border-radius:12px;padding:12px;text-align:center}.sc-aph b{display:block;font-size:.92rem}.sc-apn{font-size:2.4rem;font-weight:800;line-height:1.1}.sc-apn small{font-size:.8rem;font-weight:600;color:var(--muted)}
.sc-tubo{width:100%;max-width:230px;height:auto}.sc-apk{display:flex;flex-direction:column;gap:4px;font-size:.84rem;text-align:left;margin:6px 0 10px}.sc-apk i{margin-right:6px}
.sc-ls{max-height:240px;overflow:auto;text-align:left;font-size:.84rem;margin-top:8px;display:grid;gap:4px}.sc-ls small{color:var(--muted)}
.sc-pw{position:relative;padding-top:26px}.sc-pbar{display:flex;height:42px;border-radius:6px;overflow:hidden}.sc-pbar div{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;border-right:2px solid var(--panel);min-width:0}
.sc-mk{position:absolute;inset:0 0 auto 0;height:26px}.sc-mk span{position:absolute;top:0;font-size:.68rem;font-weight:700;color:var(--ink);white-space:nowrap;padding-right:5px;transform:translateX(0)}.sc-mk i{position:absolute;right:0;top:15px;height:55px;border-right:2px dashed var(--ink)}
.sc-lg2{display:flex;justify-content:space-between;gap:8px;font-size:.78rem;color:var(--muted);margin:6px 0 12px}
.sc-rows{display:flex;flex-direction:column;gap:10px}.sc-row{border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.sc-rh{width:100%;display:grid;grid-template-columns:150px 110px minmax(0,1fr) 20px;gap:12px;align-items:center;padding:12px 14px;background:none;border:0;font:inherit;color:var(--ink);cursor:pointer;text-align:left}
.sc-rn{display:flex;align-items:center;gap:10px;font-weight:800;text-transform:uppercase;font-size:.85rem}.sc-rn i{width:12px;height:22px;border-radius:3px}
.sc-rc{font-size:1.7rem;font-weight:800;line-height:1}.sc-rc small{font-size:.72rem;font-weight:600;color:var(--muted)}
.sc-rp{display:flex;flex-wrap:wrap;gap:6px}.sc-pc{display:inline-flex;align-items:center;gap:6px;background:var(--panel2);border-radius:999px;padding:4px 10px 4px 4px;font-weight:700;font-size:.82rem}.sc-ar{color:var(--muted)}
.sc-rl{padding:4px 14px 14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 18px;border-top:1px dashed var(--line);padding-top:12px;font-size:.86rem}.sc-rl small{color:var(--muted)}
.sc-rl em,.sc-dl em{font-style:normal;display:block;font-size:.72rem;font-weight:700;color:var(--ok)}.sc-rl em.m{color:var(--muted)}
.sc-chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 14px}.sc-uf{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:8px;padding:6px 10px;font:inherit;font-size:.84rem;cursor:pointer}
.sc-uf .flag{height:14px;width:auto}.sc-uf.on{background:#0e1626;color:#fff;border-color:#0e1626}.sc-dots{display:inline-flex;gap:3px}.sc-dots i{width:14px;height:3px;border-radius:2px;display:block}
.sc-bar input{max-width:260px;flex:1 1 200px}
.sc-est{border:1px solid var(--line);border-radius:12px;padding:14px}.sc-eh{display:flex;align-items:center;gap:12px;margin-bottom:12px}.sc-eh h3{margin:0}.sc-eh .flag{height:30px;width:auto}.sc-eh small{color:var(--muted);margin-left:auto}
.sc-cds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sc-cd{border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px}.sc-cd.m31{background:var(--panel2)}
.sc-ch2{display:flex;gap:10px;align-items:center}.sc-ch2 b:first-child{display:block}
.sc-m31{background:var(--panel2);border-radius:8px;padding:12px}.sc-cd.m31 .sc-m31{background:color-mix(in srgb,var(--muted) 14%,var(--panel))}.sc-m31 b{display:block;font-size:1rem}.sc-m31 small{text-transform:uppercase;font-size:.68rem;letter-spacing:.04em;color:var(--muted);font-weight:700}
.sc-vt{background:color-mix(in srgb,var(--f) 7%,var(--panel));border-radius:8px;padding:10px 12px}.sc-vn{font-size:1.5rem;font-weight:800;line-height:1.1}.sc-vn small{font-size:.75rem;font-weight:600;color:var(--muted)}.sc-vp{font-size:.8rem;color:var(--muted);margin:2px 0 6px}
.sc-dem{margin-top:12px;border:1px solid var(--line);border-radius:10px}.sc-dh2{width:100%;display:flex;gap:10px;align-items:center;justify-content:space-between;background:none;border:0;padding:10px 14px;font:inherit;font-weight:700;color:var(--ink);cursor:pointer}.sc-dh2 em{font-style:normal;margin-left:auto;font-size:.78rem;background:color-mix(in srgb,var(--f) 14%,var(--panel));color:var(--f);padding:2px 10px;border-radius:999px}
.sc-dl{padding:2px 14px 12px;display:grid;gap:6px;font-size:.88rem}.sc-dl>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--line);padding:4px 0}.sc-dl small{color:var(--muted)}
@media(max-width:1000px){.sc-grid{grid-template-columns:1fr}.sc-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.sc-side .sc-nt{grid-column:1/-1}}
@media(max-width:760px){.sc{padding:10px}.sc-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.sc-aps,.sc-cds{grid-template-columns:1fr}.sc-side{grid-template-columns:1fr}.sc-rh{grid-template-columns:minmax(0,1fr) auto 18px;grid-template-areas:"n c a" "p p p"}.sc-rn{grid-area:n}.sc-rc{grid-area:c}.sc-ar{grid-area:a}.sc-rp{grid-area:p}}

.sc-rl,.sc-ls,.sc-dl,.sc-cd,.sc-est,.sc-det{text-align:left}.sc-hemi text{font-family:inherit}
@media(max-width:760px){.sc-side{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.sc-gc{padding:6px 6px 0}.sc-gc h4{font-size:.58rem}.sc-side .sc-nt{grid-column:1/-1}}
@media(max-width:480px){.sc-side{grid-template-columns:1fr}}

/* =====================================================================
   Sistema de design v3: tom jornalístico (serifa nos títulos, filetes,
   margens laterais), cabeçalho/rodapé editoriais, barra de estatísticas e movimento
   ===================================================================== */
:root{
  --serif:var(--font);
  --gut:clamp(16px,4.2vw,56px);--maxw:1320px;
  --ease-out:cubic-bezier(.22,1,.36,1);--ease-move:cubic-bezier(.25,1,.5,1);
  --accent:#b3261e;--paper:var(--bg);
}
:root[data-theme="dark"]{--accent:#ff6b62}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--accent:#ff6b62}}
html{-webkit-text-size-adjust:100%}
.wrap{max-width:var(--maxw);padding-left:max(var(--gut),env(safe-area-inset-left));padding-right:max(var(--gut),env(safe-area-inset-right))}
:focus-visible{outline:2px solid var(--navy);outline-offset:2px}

/* títulos de seção: alinhados à esquerda, serifa, filete superior */
main h2,.blk>h2{text-align:left}
.blk>h2{font-family:var(--serif);font-size:clamp(1.35rem,1.1rem + 1.2vw,1.9rem);font-weight:700;letter-spacing:-.01em;line-height:1.15;margin:0 0 14px;padding-top:12px;border-top:3px solid var(--ink)}
.blk>h2::after{display:none}
.blk>.sub{text-align:left;margin:-6px 0 14px;max-width:70ch}
section.blk{margin-top:clamp(30px,5vw,52px)}
main{padding:clamp(14px,2.4vw,26px) 0 56px}
.card{border-radius:12px;box-shadow:0 1px 2px rgba(14,42,77,.06),0 6px 20px -12px rgba(14,42,77,.18)}
:root[data-theme="dark"] .card{box-shadow:none}
.card h3{font-family:var(--serif)}

/* cabeçalho editorial */
.sh{background:var(--panel);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:60}
.sh-top{background:var(--ink);color:var(--panel);font-size:.78rem;letter-spacing:.02em}
:root[data-theme="dark"] .sh-top{background:#0a0f16;color:var(--muted)}
.sh-top-in{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:30px;padding-top:4px;padding-bottom:4px}
.sh-date{opacity:.85}.sh-cd{font-weight:700;display:inline-flex;align-items:center;gap:8px}
.sh-cd::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 var(--accent);animation:pulso 2s infinite}
@keyframes pulso{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent) 60%,transparent)}70%,100%{box-shadow:0 0 0 8px transparent}}
.sh-in{min-height:64px;gap:20px}
.sh-wm{font-family:var(--serif);font-weight:800;font-size:1.28rem;letter-spacing:-.015em;color:var(--ink)}.sh-wm em{font-style:italic;font-weight:600;color:var(--accent)}
.sh-brand{font-size:inherit}.sh-brand img{transition:transform .5s var(--ease-out)}
@media (hover:hover) and (pointer:fine){.sh-brand:hover img{transform:rotate(-8deg) scale(1.06)}}
.sh-nav a{font-size:.9rem;font-weight:600;letter-spacing:.005em;padding:8px 11px}
.sh-nav a::after{content:"";position:absolute;left:11px;right:11px;bottom:-14px;height:3px;background:var(--accent);border-radius:2px 2px 0 0;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-out)}
.sh-nav a[aria-current="page"]::after{transform:scaleX(1);background:var(--accent)}
@media (hover:hover) and (pointer:fine){.sh-nav a:hover::after{transform:scaleX(1)}}
.sh-ic{transition:transform .12s var(--ease-out),background-color .2s,border-color .2s;touch-action:manipulation}.sh-ic:active{transform:scale(.94)}
.sh-burger .bg,.sh-burger .bg::before,.sh-burger .bg::after{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s var(--ease-out),background-color .2s}
.sh-burger .bg{position:relative}.sh-burger .bg::before,.sh-burger .bg::after{content:"";position:absolute;left:0}.sh-burger .bg::before{top:-6px}.sh-burger .bg::after{top:6px}
.sh.open .sh-burger .bg{background:transparent}.sh.open .sh-burger .bg::before{transform:translateY(6px) rotate(45deg)}.sh.open .sh-burger .bg::after{transform:translateY(-6px) rotate(-45deg)}

/* barra de estatísticas */
.statbar{background:var(--panel);border-bottom:1px solid var(--line)}
.statgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.st{display:flex;flex-direction:column;gap:2px;padding:12px 16px;border-left:1px solid var(--line);color:var(--ink);text-decoration:none;min-width:0;animation:subir .5s var(--ease-out) backwards;animation-delay:calc(var(--i)*60ms)}
.st:first-child{border-left:0;padding-left:0}
.st small{font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:700}
.st b{font-family:var(--serif);font-size:clamp(1.05rem,.9rem + .8vw,1.5rem);line-height:1.15;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.st span{font-size:.78rem;color:var(--muted)}
@media (hover:hover) and (pointer:fine){.st{transition:background-color .2s}.st:hover{background:var(--panel2)}}
@media(max-width:760px){.statgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.st{padding:10px 12px;border-left:0;border-top:1px solid var(--line)}.st:nth-child(-n+2){border-top:0}.st:nth-child(odd){padding-left:0;border-right:1px solid var(--line)}.sh-top-in{font-size:.72rem}.sh-date{max-width:56%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* rodapé editorial */
.sf{background:var(--ink);color:#c7d0dc;border-top:0;margin-top:56px}
:root[data-theme="dark"] .sf{background:#0a0f16}
.sf-in{padding-top:40px;padding-bottom:calc(30px + env(safe-area-inset-bottom));display:grid;gap:26px}
.sf-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:28px 36px}
.sf-col{display:flex;flex-direction:column;gap:8px;min-width:0}
.sf-col h3{font-family:var(--font);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin:0 0 4px;opacity:.7}
.sf a{color:#c7d0dc;text-decoration:none;font-size:.92rem;width:fit-content;background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .3s var(--ease-out),color .2s}
@media (hover:hover) and (pointer:fine){.sf a:hover{color:#fff;background-size:100% 1px;text-decoration:none}}
.sf-brand{display:flex;align-items:center;gap:10px;color:#fff!important;font-family:var(--serif);font-size:1.15rem}.sf-brand img{border-radius:50%}
.sf-about p{margin:6px 0 0;font-size:.9rem;line-height:1.55;max-width:42ch}.sf-upd{opacity:.7;font-size:.82rem!important}
.sf-nt{margin:0;padding-top:18px;border-top:1px solid rgba(255,255,255,.16);font-size:.8rem;line-height:1.55;color:#9aa7b8;max-width:none}
@media(max-width:900px){.sf-grid{grid-template-columns:1fr 1fr}.sf-about{grid-column:1/-1}}
@media(max-width:480px){.sf-grid{grid-template-columns:1fr 1fr;gap:22px 16px}}

/* movimento (ui-animation): entrada de página, press feedback, hover só em ponteiro fino */
@keyframes subir{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.btn,.seg button,.sc-tab,.sc-uf,.pq-calbtn,button.sn-chip{touch-action:manipulation;transition:transform .12s var(--ease-out),background-color .2s,border-color .2s,color .2s,box-shadow .2s}
.btn:active,.seg button:active,.sc-tab:active,.sc-uf:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){
  .card{transition:box-shadow .25s var(--ease-out),transform .25s var(--ease-out)}
  .gv-card:hover,.rk-card:hover,.kpi:hover{transform:translateY(-2px);box-shadow:0 10px 28px -14px rgba(14,42,77,.35)}
  .pq-main:hover{background:var(--panel2)}
}
.sc-pane{animation:subir .35s var(--ease-out) backwards}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ajustes de estrutura para telas pequenas */
@media(max-width:760px){
  .sh-in{min-height:58px;gap:10px}.sh-wm{font-size:1.1rem}
  .blk>h2{font-size:1.35rem}
  .card{padding:14px}
  table{max-width:100%}
  img,svg,canvas,video{max-width:100%}
}
@media(max-width:380px){.sh-wm{font-size:1rem}.sh-top-in .sh-date{display:none}}

.kpi .val{font-family:var(--serif);overflow-wrap:anywhere;line-height:1.1}
@media(max-width:560px){.sh-date{display:none}.sh-top-in{justify-content:center}.kpi .val{font-size:clamp(1.25rem,6vw,1.6rem)}}
.sf-about p{color:#c7d0dc}.sf-about .sf-upd{color:#9aa7b8;opacity:1}.sf-col h3{opacity:1;color:#9aa7b8}

/* ===== traços finos e suaves (minimalismo) ===== */
:root{--line:color-mix(in srgb,var(--ink) 11%,var(--panel));--hair:1px}
:root[data-theme="dark"]{--line:#232d3b}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--line:#232d3b}}
.blk>h2{border-top:1px solid var(--line);font-weight:700;letter-spacing:0;padding-top:14px}
.sh-wm em{font-style:normal;font-weight:800}
.sh-nav a::after,.sh-nav a[aria-current="page"]::after{height:2px;bottom:-13px}
.hdr,.sh,.statbar,.sf-nt{border-bottom-width:1px}
.card{box-shadow:0 1px 1px rgba(14,42,77,.04),0 8px 24px -16px rgba(14,42,77,.14);border-color:var(--line)}
.tbl th,.tbl td,.rc-row,.sc-dl>div,.sc-rl,.sn-t td,.sn-t th{border-color:var(--line)}
.rc-row{border-bottom-width:1px}
.pr-av,.enq-c{border-width:1px}
.card.kpi,.rk-card{border-width:1px}
.sc-tab.on,.sc-uf.on{border-width:1px}
.ring-eleito,.ring-reeleito{box-shadow:none}
/* gráficos: linhas e arcos mais finos */
svg path[stroke-width="2"],svg path[stroke-width="2.2"],svg polyline[stroke-width="2"],svg polyline[stroke-width="2.2"]{stroke-width:1.5px}
svg path[stroke-width="1.5"]{stroke-width:1.2px}
svg path[stroke-width="18"],svg circle[stroke-width="18"]{stroke-width:11px}
svg path[stroke-width="20"]{stroke-width:12px}
svg line[stroke-width="1.3"],svg line[stroke-width="1.4"]{stroke-width:.8px}
svg circle[stroke-width="2"]{stroke-width:1.2px}
.bar{height:5px}.bar i{border-radius:3px}
/* rosca: anel fino, compacta e centralizada */
.rosca{gap:18px 36px;align-items:center}
.rc-chart svg{max-width:300px}
.rc-chart .slice{transform-origin:110px 110px}.rc-chart .slice:hover{transform:scale(1.02)}
.rc-big{font-size:17px;font-weight:700;letter-spacing:0}.rc-sm{font-size:9.5px}
.rosca-card{padding-top:18px}.rc-filtro{margin-bottom:14px}.rc-filtro .seg.mini{gap:6px 14px;flex-wrap:wrap;justify-content:center}
.rc-row{padding:8px 4px}
@media(max-width:800px){.rc-chart svg{max-width:260px}}
svg path[stroke-width="2.6"]{stroke-width:1.8px}

/* institutos: logos e painel de análise */
.lg img{background:#fff;padding:2px}.lg-w{width:auto!important;background:transparent}.lg-w img{width:auto;height:100%;max-width:100%;padding:0;background:transparent}
.ins-dica{margin:0 0 10px;font-size:.84rem;color:var(--muted)}
.ins-r{cursor:pointer;transition:background-color .2s}.ins-r:focus-visible{outline:2px solid var(--navy);outline-offset:-2px}.ins-r.open{background:var(--panel2)}
@media (hover:hover) and (pointer:fine){.ins-r:hover{background:var(--panel2)}}
.ins-ch{margin-left:auto;color:var(--muted);font-style:normal;font-size:.8rem;padding-left:8px}.tbl .inst{display:flex;align-items:center;gap:10px}
.ins-det>td{padding:0!important;background:var(--panel2);border-bottom:1px solid var(--line)}
.ins-d{padding:18px;animation:subir .3s var(--ease-out) backwards;text-align:left}
.ins-hd{display:flex;gap:16px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.ins-hd h3{margin:0 0 4px;font-size:1.2rem}.ins-hd p{margin:0;color:var(--muted);font-size:.92rem;max-width:70ch;line-height:1.5}
.ins-kp{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px}
.ik{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}
.ik small{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:700}.ik b{font-size:1.2rem;line-height:1.2;font-variant-numeric:tabular-nums}.ik span{font-size:.78rem;color:var(--muted)}
.ik b.gan,.pil.gan{color:#17803d}.ik b.per,.pil.per{color:#c0262d}.ik b.neu,.pil.neu{color:var(--muted)}
.pil{font-weight:700;font-size:.84rem;white-space:nowrap}
.ins-ch2{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px;margin-bottom:16px}.ins-ch2 h4,.ins-t{margin:0 0 6px;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.ins-svg{width:100%;height:auto;display:block}.ins-t{margin:4px 0 8px}
.ins-lst td,.ins-lst th{font-size:.88rem}.ins-lst small{color:var(--muted)}
@media(max-width:900px){
  .tbl.stk tr.ins-det{padding:0;border:0;background:none;margin-bottom:12px}.tbl.stk tr.ins-det>td{display:block!important;padding:0!important}
  .ins-d{padding:12px 4px}.ins-kp{grid-template-columns:1fr 1fr}.tbl.ins-lst tr{background:var(--panel)}.tbl.stk td>span.v{text-align:right}
  .tbl.stk .ins-ch{margin-left:auto}.tbl.stk tr.ins-r td.first .inst{width:100%}
}

/* ícones do cabeçalho em SVG (renderizam em qualquer aparelho) */
.sh-ic{color:var(--ink);font-size:0;line-height:0}.sh-ic svg{display:block}
.sh-burger .ic-close{display:none}.sh.open .sh-burger .ic-open{display:none}.sh.open .sh-burger .ic-close{display:block}
html,body{max-width:100%}
@media(max-width:1080px){.sh-nav a::after,.sh-nav a[aria-current="page"]::after{left:8px;right:auto;width:28px;bottom:6px;height:2px}.sh-nav a:not([aria-current="page"])::after{transform:scaleX(0)}}
.gv-lote{grid-column:1/-1;width:100%;margin-top:4px}
