/* Layout: interface monocromática; cor só no dado (partido/candidato). Um lugar (Brasil ou UF) no alto, seis abas, seletor compacto de cargo/modo, páginas por hash. */
:root{
  --bg:#f3f4f6; --surface:#ffffff; --surface-2:#eceef2; --line:#dde1e7;
  --fg:#10151c; --fg-2:#454e5c; --muted:#6a7381;
  --live:#d03b3b; --good:#0ca30c; --warn:#b97a00;
  --s1:#2a78d6; --s2:#eb6834; --s3:#1baf7a; --s4:#eda100; --s5:#e87ba4; --s6:#008300; --s7:#4a3aa7; --s8:#e34948; --other:#a3a9b2;
  --map-bg:#e9ecef;
  --font:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --r:8px; color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#111316; --surface:#191c20; --surface-2:#22262b; --line:#2d3238;
  --fg:#f1f3f5; --fg-2:#b8bec7; --muted:#8a919b;
  --live:#e66767; --good:#2fbf2f; --warn:#fab219;
  --s1:#3987e5; --s2:#d95926; --s3:#199e70; --s4:#c98500; --s5:#d55181; --s6:#2a9a2a; --s7:#9085e9; --s8:#e66767; --other:#5b626b;
  --map-bg:#1d2126; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#111316; --surface:#191c20; --surface-2:#22262b; --line:#2d3238;
  --fg:#f1f3f5; --fg-2:#b8bec7; --muted:#8a919b;
  --live:#e66767; --good:#2fbf2f; --warn:#fab219;
  --s1:#3987e5; --s2:#d95926; --s3:#199e70; --s4:#c98500; --s5:#d55181; --s6:#2a9a2a; --s7:#9085e9; --s8:#e66767; --other:#5b626b;
  --map-bg:#1d2126; color-scheme:dark}

/* Leaflet 1.9.4 (CSS embutido; CSP do Artifact não aceita stylesheet de CDN) */
.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:none;display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-bottom,.leaflet-top{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-container{font-family:"Helvetica Neue",Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:bold 18px 'Lucida Console',Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:none;width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:none;background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:none}.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.8);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255,255,255,.8);text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:17px 0;margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:0 0}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{position:absolute;pointer-events:none;border:6px solid transparent;background:0 0;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--fg);font-family:var(--font);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}
img{max-width:100%}
[hidden]{display:none!important}
.wrap{max-width:1240px;margin:0 auto;padding-inline:16px;padding-block:0 40px}
button,input,select{font:inherit;color:inherit}
table{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--fg);outline-offset:2px}
.num{font-variant-numeric:tabular-nums}
h1,h2,h3,h4{margin:0;text-wrap:balance}
a{color:inherit}

/* topo */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:1000;background:var(--bg);margin-inline:-16px;padding-inline:16px;border-bottom:1px solid var(--line)}
.top-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;padding-block:12px 8px}
.brand{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.eyebrow{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}
h1{font-size:22px;font-weight:800;letter-spacing:-.02em}
.top-right{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap}
.pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 8px;border-radius:4px;background:var(--surface);border:1px solid var(--line)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--good)}
.pill.live .dot{background:var(--live);animation:pulse 1.6s infinite}
@keyframes pulse{50%{opacity:.25}}
@media (prefers-reduced-motion:reduce){.pill.live .dot{animation:none}}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--surface)}
.seg button{background:var(--surface);border:0;padding:7px 12px;font-size:13px;font-weight:600;cursor:pointer;color:var(--fg-2)}
.seg button+button{border-left:1px solid var(--line)}
.seg button[aria-pressed="true"]{background:var(--fg);color:var(--bg)}
.seg.big button{padding:8px 18px;font-size:14px;font-weight:700}
.tabs{display:flex;gap:2px;margin-bottom:-1px;overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
/* sem min-width:0: num aparelho mais estreito que o previsto a barra rola, em vez de encavalar os rótulos */
.tab{flex:0 0 auto;background:none;border:0;border-bottom:2px solid transparent;padding:10px 14px;font-weight:600;font-size:14px;color:var(--fg-2);cursor:pointer;white-space:nowrap;text-align:center}
.tab:hover{color:var(--fg)}
.tab[aria-selected="true"]{color:var(--fg);border-bottom-color:var(--fg)}

/* lugar: botão no topo e painel de escolha (Brasil ou UF, com busca) */
.lugar{position:relative;display:flex;align-items:stretch;gap:6px}
.lugar-rn{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:6px 10px;cursor:pointer;font-size:14px;font-weight:700;color:var(--fg)}
.lugar-rn:hover{border-color:var(--fg-2)}
.lugar-rn[aria-pressed="true"]{background:var(--fg);border-color:var(--fg);color:var(--bg)}
.lugar-btn{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:6px 10px;cursor:pointer;font-size:14px;color:var(--fg);max-width:100%}
.lugar-btn:hover{border-color:var(--fg-2)}
.lugar-btn b{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}
.lugar-rot{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.lugar-btn svg{width:12px;height:12px;flex:none;color:var(--muted)}
.lugar-btn[aria-expanded="true"] svg{transform:rotate(180deg)}
.lugar-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:1100;width:min(340px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:10px;box-shadow:0 6px 24px rgba(0,0,0,.14)}
.lugar-pop[hidden]{display:none}
.lugar-q{margin-bottom:8px;display:flex}
.lugar-ops{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.lugar-op{display:flex;justify-content:space-between;align-items:baseline;gap:6px;text-align:left;background:none;border:1px solid transparent;border-radius:4px;padding:7px 8px;font-size:14px;font-weight:600;cursor:pointer;color:var(--fg)}
.lugar-op small{font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap}
.lugar-op:hover{background:var(--surface-2)}
.lugar-op[aria-selected="true"]{background:var(--fg);color:var(--bg)}
.lugar-op[aria-selected="true"] small{color:inherit;opacity:.75}
.lugar-ops .empty{grid-column:1/-1}
.lugar-pop .pager{margin-top:8px}
/* cargo/modo: botões no desktop, seletor no celular */
.subnav{padding-block:12px 0;display:flex;flex-wrap:wrap;gap:8px}
.subnav[hidden]{display:none}
.subnav .subsel{display:none;min-width:0;flex:1 1 auto}
.subseg{flex-wrap:wrap}
.subseg button{white-space:nowrap}

.vg-sec .head h3{font-size:18px;font-weight:800}
.lrow.sen-uf{grid-template-columns:minmax(0,140px) minmax(0,1fr) minmax(0,1fr)}
.lrow .nm .clk{white-space:normal;text-align:left;max-width:100%;overflow-wrap:anywhere}
@media (max-width:680px){.lrow.sen-uf{grid-template-columns:minmax(0,1fr)}}

/* avisos e estrutura */
.aviso{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:16px;padding:10px 14px;border:1px solid var(--line);background:var(--surface);border-radius:var(--r);font-size:14px;color:var(--fg-2)}
.aviso strong{color:var(--fg)}
main{margin-top:20px;min-width:0}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}
.span-12{grid-column:span 12}.span-8{grid-column:span 8}.span-7{grid-column:span 7}.span-6{grid-column:span 6}.span-5{grid-column:span 5}.span-4{grid-column:span 4}.span-3{grid-column:span 3}
@media (max-width:980px){.span-8,.span-7,.span-6,.span-5,.span-4,.span-3{grid-column:span 6}}
@media (max-width:680px){.grid>*{grid-column:1/-1!important}}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;min-width:0}
.ph{display:flex;align-items:baseline;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;margin-bottom:12px}
.ph h3{font-size:15px;font-weight:700}
.ph .meta,.meta{font-size:12px;color:var(--muted)}
.link{background:none;border:0;padding:0;color:var(--fg-2);font-size:13px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-align:left}
.link:hover{color:var(--fg)}
.btn{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:7px 12px;font-size:13px;font-weight:600;cursor:pointer;color:var(--fg)}
.btn:hover{border-color:var(--fg-2)}
.btn svg{width:14px;height:14px}
.head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:8px 16px;margin-bottom:16px}
.head h2{font-size:22px;font-weight:800;letter-spacing:-.01em}
.head p{margin:2px 0 0;color:var(--fg-2);font-size:14px;max-width:72ch}
.crumb{display:flex;flex-wrap:wrap;gap:4px 6px;font-size:13px;color:var(--muted);margin-bottom:8px;align-items:center}
.crumb .link{font-size:13px;font-weight:500}
.crumb svg{width:12px;height:12px;color:var(--muted)}
.real{display:inline-flex;align-items:center;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:4px;border:1px solid var(--line);color:var(--muted);white-space:nowrap;vertical-align:middle}
.note{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.5}
.empty{padding:24px 12px;text-align:center;color:var(--muted);font-size:14px}

/* fatos e composição */
.facts{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:4px}
.facts div{font-size:12px;color:var(--muted)}
.facts b{display:block;font-size:18px;color:var(--fg);font-weight:700}
.comp{display:flex;height:14px;gap:2px;margin-block:8px 12px}
.comp>i{display:block;height:100%;min-width:2px}
.comp>i:first-child{border-radius:4px 0 0 4px}.comp>i:last-child{border-radius:0 4px 4px 0}
.kv{display:grid;grid-template-columns:auto 1fr auto auto;gap:6px 10px;font-size:14px;align-items:center}
.kv .sw{width:10px;height:10px;border-radius:2px}
.kv .r{text-align:right}.kv .m{color:var(--muted);text-align:right}

/* lista de candidatos */
.cands{display:flex;flex-direction:column;gap:14px}
.cand{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:4px 10px;align-items:center}
.pos{font-size:13px;font-weight:700;color:var(--muted);text-align:center}
.cname{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.cname .clk{background:none;border:0;padding:0;font-weight:700;cursor:pointer;text-align:left;color:var(--fg)}
.cname .clk:hover{text-decoration:underline;text-underline-offset:3px}
.pchip{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--fg-2);white-space:nowrap}
.pchip i{width:10px;height:10px;border-radius:2px;flex:none}
.cval{text-align:right;font-weight:700;font-size:17px;grid-row:span 2;font-variant-numeric:tabular-nums}
.cval small{display:block;font-size:12px;font-weight:500;color:var(--muted)}
.track{grid-column:2/3;position:relative;height:10px;background:var(--surface-2);border-radius:0 4px 4px 0}
.track>i{position:absolute;left:0;top:0;bottom:0;border-radius:0 4px 4px 0}
.track .half{position:absolute;left:50%;top:-4px;bottom:-4px;width:1px;background:var(--fg-2)}
.chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:2px 6px;border-radius:4px;border:1px solid var(--line);color:var(--fg-2);white-space:nowrap}
.chip svg{width:11px;height:11px}
.chip.ok{color:var(--fg);border-color:var(--good)}.chip.ok svg{color:var(--good)}
.chip.t2{color:var(--fg);border-color:var(--warn)}.chip.t2 svg{color:var(--warn)}

/* listas em linhas (tabela que vira lista no celular) */
.lst{display:flex;flex-direction:column;min-width:0}
.lrow{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) auto auto;gap:4px 12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px;min-width:0}
.lrow:last-child{border-bottom:0}
.lrow.hd{padding:4px 0 6px;font-size:12px;color:var(--muted);font-weight:600}
.lrow.hd .mini{visibility:hidden}
.lrow .nm{min-width:0;display:flex;flex-direction:column;gap:1px}
.lrow .nm b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lrow .nm small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lrow .v{text-align:right;font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}
.lrow .p{text-align:right;font-variant-numeric:tabular-nums;color:var(--fg-2);white-space:nowrap;min-width:52px}
.lrow.click{cursor:pointer}
.lrow.click:hover{background:color-mix(in srgb,var(--surface-2) 70%,transparent)}
.mini{position:relative;height:8px;background:var(--surface-2);border-radius:0 4px 4px 0;overflow:hidden}
.mini>i{position:absolute;left:0;top:0;bottom:0}
@media (max-width:680px){.lrow{grid-template-columns:minmax(0,1fr) auto auto}.lrow .mini{grid-column:1/-1;height:6px;margin-top:-2px}.lrow.hd .mini{display:none}}
.lst.c3 .lrow{grid-template-columns:minmax(0,1fr) auto auto}
.lst.c2 .lrow{grid-template-columns:minmax(0,1fr) auto}
.tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.search{flex:1 1 200px;min-width:0;padding:8px 10px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font-size:14px}
select.sel{padding:7px 10px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font-size:13px;font-weight:600;max-width:100%}
.pager{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:12px;font-size:13px;color:var(--fg-2)}

/* tabela estreita (boletim) */
.tw{overflow-x:auto;min-width:0}
table{width:100%;border-collapse:collapse;font-size:14px}
th{text-align:left;font-size:12px;font-weight:600;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--line);white-space:nowrap}
td{padding:7px 8px;border-bottom:1px solid var(--line);vertical-align:middle}
tr:last-child td{border-bottom:0}
td.r,th.r{text-align:right}
td.n{font-variant-numeric:tabular-nums;white-space:nowrap}
tr.tot td{font-weight:700;border-top:2px solid var(--line)}
tr.sub td{color:var(--fg-2)}

/* cartograma de UFs */
.carto{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;max-width:560px}
.uf{position:relative;aspect-ratio:1/1;border:1px solid var(--line);border-radius:4px;background:var(--surface-2);padding:5px 5px 6px;text-align:left;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;min-width:0;color:var(--fg)}
.uf b{font-size:13px;font-weight:800;letter-spacing:.02em}
.uf small{font-size:10.5px;color:var(--fg-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
.uf.win{color:var(--ink,#fff)}.uf.win small{color:inherit;opacity:.9}
.uf[aria-pressed="true"]{outline:2px solid var(--fg);outline-offset:1px}
.leg{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--fg-2);margin-top:10px;align-items:center}
.leg i{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px;margin-right:5px}
.leg i.dot{border-radius:50%}

/* cartões de UF (governadores) */
.ufcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.ufc{border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;background:var(--surface);display:flex;flex-direction:column;gap:6px;min-width:0}
.ufc .ufh{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.ufc .ufh b{font-size:14px}
.ufc .ufh small{font-size:12px;color:var(--muted)}
.ufc .row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;font-size:13px}
.ufc .row i{width:10px;height:10px;border-radius:2px}
.ufc .row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ufc .row .pv{font-variant-numeric:tabular-nums;font-weight:600}

/* bancadas */
.banc{display:flex;flex-direction:column;gap:8px}
.banc .brow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center;font-size:14px}
.banc .bbar{display:flex;height:22px;gap:2px;border-radius:4px;overflow:hidden}
.banc .bbar i{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;min-width:0}
.hemi{display:flex;flex-wrap:wrap;gap:3px;max-width:420px}
.hemi i{width:14px;height:14px;border-radius:3px;display:block}

/* mapa */
.map{height:min(70vh,560px);min-height:320px;border-radius:var(--r);border:1px solid var(--line);background:var(--map-bg);overflow:hidden;position:relative;z-index:0}
.map.mini-map{height:220px;min-height:220px}
.mapcap{position:absolute;left:8px;bottom:8px;z-index:500;font-size:11px;color:var(--fg-2);background:color-mix(in srgb,var(--surface) 88%,transparent);padding:3px 6px;border-radius:4px;max-width:calc(100% - 16px)}
.leaflet-container{background:var(--map-bg);font-family:var(--font)}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--surface);color:var(--fg);box-shadow:0 2px 10px rgba(0,0,0,.18);border-radius:var(--r)}
.leaflet-popup-content{margin:12px 14px;font-size:13px;line-height:1.4}
.leaflet-popup-content b{font-size:14px}
.leaflet-container a.leaflet-popup-close-button{color:var(--muted)}
.leaflet-bar a{background:var(--surface);color:var(--fg);border-bottom-color:var(--line)}
.leaflet-bar a:hover{background:var(--surface-2)}
.leaflet-control-attribution{background:color-mix(in srgb,var(--surface) 80%,transparent)!important;color:var(--muted)!important;font-size:10px}
.leaflet-control-attribution a{color:var(--fg-2)!important}
.mapwrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px}
@media (max-width:900px){.mapwrap{grid-template-columns:1fr}}
.side{display:flex;flex-direction:column;gap:12px;min-width:0}

/* seções e locais */
.secs{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.sec{border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;background:var(--surface);cursor:pointer;text-align:left;color:var(--fg);display:flex;flex-direction:column;gap:6px;min-width:0}
.sec:hover{border-color:var(--fg-2)}
.sec .sh{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.sec .sh b{font-size:15px}
.sec .sh small{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.sec .sm{display:flex;gap:4px 12px;flex-wrap:wrap;font-size:12px;color:var(--fg-2);font-variant-numeric:tabular-nums}
.sec .sm b{color:var(--fg);font-weight:600}
.sec.last{border-color:var(--warn)}
.bu-head{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px 16px;font-size:12px;color:var(--muted)}
.bu-head b{display:block;font-size:16px;color:var(--fg);font-weight:700;font-variant-numeric:tabular-nums}
.bu-head small{display:block;font-size:12px;color:var(--fg-2)}
.stack{display:flex;flex-direction:column;gap:16px;min-width:0}

/* perfil */
.perf{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.perf h4{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px}
.hbar{display:grid;grid-template-columns:minmax(0,110px) 1fr auto;gap:4px 8px;align-items:center;font-size:13px}
.hbar span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg-2)}
.hbar .b{height:10px;background:var(--surface-2);border-radius:0 3px 3px 0;overflow:hidden}
.hbar .b i{display:block;height:100%;background:var(--fg-2)}
.hbar .n{font-variant-numeric:tabular-nums;text-align:right;min-width:40px}

/* cruzamento */
.cruz{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;align-items:start}
.flow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px}
.heat{display:grid;gap:3px;font-size:12px}
.heat .cell{padding:6px 4px;text-align:center;border-radius:3px;font-variant-numeric:tabular-nums;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.heat .rh{text-align:left;font-weight:600;color:var(--fg-2);padding-left:0}
.heat .ch{font-weight:600;color:var(--muted);white-space:normal;line-height:1.2}

/* 2º turno (prévia) */
.duel{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:end}
.duel .side-a,.duel .side-b{min-width:0}
.duel .side-b{text-align:right}
.duel .nmv{font-weight:800;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.duel .big{font-size:28px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}
.duel .vs{font-size:12px;color:var(--muted);padding-bottom:6px}
.duelbar{display:flex;height:12px;gap:2px;margin-top:8px;border-radius:4px;overflow:hidden;background:var(--surface-2)}
.duelbar i{display:block;height:100%}

footer{margin-top:32px;font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:4px}
@media (max-width:640px){.top .seg.theme,.top .pill{display:none}h1{font-size:19px}.top-row{padding-block:8px 6px;gap:6px 12px;flex-wrap:nowrap}.top .eyebrow{display:none}.top-right{flex:none;min-width:0}.top h1{white-space:nowrap}.lugar-rot{display:none}.lugar-btn b{max-width:104px}.lugar-rn{padding-inline:8px}
  .tabs{margin-inline:-16px;gap:0}.tab{flex:1 1 auto;padding:10px 2px;font-size:12px;letter-spacing:-.01em}
  .subseg{display:none}.subnav .subsel{display:block}.lugar-pop{right:-4px}.head h2{font-size:19px}}

/* marcas de honestidade dos dados */
.chip.calc{border-style:dashed}
.chip.parc{color:var(--fg);border-color:var(--warn)}
.marca{display:inline-block;font-size:12px;color:var(--fg-2);border-left:2px solid var(--warn);padding-left:8px;margin-top:8px}
.aviso.dados{margin-top:0;margin-bottom:16px;border-left:3px solid var(--warn)}
.carregando{padding:48px 12px;text-align:center;color:var(--muted)}
.cur{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.cur .panel{display:flex;flex-direction:column;gap:10px}
.cur .big{font-size:28px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}
.cur .big small{font-size:13px;font-weight:500;color:var(--muted);letter-spacing:0;margin-left:6px}
.cur p{margin:0;color:var(--fg-2);font-size:14px}
.cur .fonte{font-size:12px;color:var(--muted);margin-top:auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lrow .p svg,.lrow .v svg{width:12px;height:12px;color:var(--muted);vertical-align:-1px}

/* ---------- lista longa: busca + páginas (comum/lista.js) ---------- */
.lista{scroll-margin-top:110px}
.pager.pager-n{flex-wrap:wrap;justify-content:space-between}
.pager-b{display:flex;gap:4px;flex-wrap:wrap;align-items:center}
.btn.pgn{padding:6px 10px;min-width:36px;min-height:36px;justify-content:center}
.btn.pgn[disabled]{opacity:.55;cursor:default}
.btn.pgn[aria-current="page"]{background:var(--fg);color:var(--bg);opacity:1}

/* ---------- mapa base: tema escuro igual em todo mapa (comum/mapa.js põe .mapa-base no contêiner) ---------- */
:root[data-theme="dark"] .mapa-base .leaflet-tile-pane{filter:invert(.92) hue-rotate(180deg) brightness(.85) contrast(.9)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .mapa-base .leaflet-tile-pane{filter:invert(.92) hue-rotate(180deg) brightness(.85) contrast(.9)}}
/* mapa de pontos: base em tons de cinza, para a cor dos candidatos aparecer */
.mapa-pontos .leaflet-tile-pane{filter:grayscale(1) brightness(1.06) contrast(.85)}
:root[data-theme="dark"] .mapa-pontos .leaflet-tile-pane{filter:invert(.92) hue-rotate(180deg) grayscale(1) brightness(.85) contrast(.9)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .mapa-pontos .leaflet-tile-pane{filter:invert(.92) hue-rotate(180deg) grayscale(1) brightness(.85) contrast(.9)}}

/* ---------- Reprise, Minha urna, Recordes e cartão de compartilhar ---------- */
/* recordes */
.recs{display:flex;flex-direction:column}
.rec{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--line);align-items:start}
.rec:last-child{border-bottom:0}
.rec h4{font-size:14px;font-weight:600;line-height:1.35}
.rec .onde{grid-column:1/2;font-size:13px;color:var(--fg-2);display:flex;flex-wrap:wrap;gap:2px 10px;align-items:center}
.rec .val{grid-row:1/3;grid-column:2;text-align:right;font-size:20px;font-weight:800;letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap}
.rec .val small{display:block;font-size:12px;font-weight:500;color:var(--muted);letter-spacing:0}
.rec .nota{grid-column:1/-1;font-size:12px;color:var(--muted)}
@media (max-width:420px){.rec{grid-template-columns:1fr}.rec .val{grid-row:auto;grid-column:1;text-align:left}}

/* minha urna */
.urna-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end}
.urna-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;color:var(--muted);min-width:0}
.urna-form input,.urna-form select{padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--fg);font-size:16px;width:100%;min-width:0}
.urna-acoes{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.btn.forte{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.btn.forte:hover{border-color:var(--fg)}
.btn.grande{padding:11px 16px;font-size:14px}
.aviso-urna{margin-top:12px;font-size:13px;color:var(--fg-2);min-height:1.2em}
.aviso-urna.erro{color:var(--live)}
.vizinhas{display:flex;flex-wrap:wrap;gap:6px}
.vizinhas .btn{padding:6px 10px;font-variant-numeric:tabular-nums;min-width:44px;justify-content:center}
.vizinhas .btn[aria-current="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}
@media (max-width:520px){.urna-form{grid-template-columns:1fr 1fr}.urna-form label.mun{grid-column:1/-1}}

/* reprise */
.rp-bar{position:sticky;top:var(--topo,96px);z-index:900;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;display:flex;flex-direction:column;gap:10px;margin-bottom:16px}
.rp-linha{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap}
.rp-relogio{font-size:26px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1}
.rp-relogio small{font-size:12px;font-weight:600;color:var(--muted);letter-spacing:0;margin-left:6px}
.rp-prog{flex:1 1 140px;min-width:120px}
.rp-prog b{font-size:14px;font-variant-numeric:tabular-nums}
.rp-prog .mini{height:6px;margin-top:4px}
.rp-range{width:100%;margin:0;accent-color:var(--fg);height:28px}
.rp-faixas{display:flex;flex-direction:column;gap:3px;margin-top:-4px}
.rp-faixa{position:relative;height:12px;display:flex;align-items:center}
.rp-faixa>span.rot{position:absolute;left:0;top:-1px;font-size:10px;line-height:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;pointer-events:none;background:var(--surface);padding-right:3px;z-index:1}
.rp-faixa .linha{position:absolute;left:0;right:0;top:5px;height:2px;background:var(--surface-2)}
.rp-faixa button{position:absolute;top:0;width:12px;height:12px;margin-left:-6px;border:0;padding:0;background:none;cursor:pointer}
.rp-faixa button::after{content:"";position:absolute;left:5px;top:0;width:2px;height:12px;background:var(--fg-2)}
.rp-faixa button:hover::after,.rp-faixa button:focus-visible::after{background:var(--fg);width:3px;left:4.5px}
.rp-btn{min-width:44px;min-height:40px;justify-content:center}
.rp-btn svg{width:18px;height:18px}
.rp-placares{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.rp-cand{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center;font-size:14px;padding:5px 0}
.rp-cand .nm{display:flex;gap:8px;align-items:center;min-width:0;flex-wrap:wrap}
.rp-cand .nm b{font-weight:600}
.rp-cand .v{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.rp-cand .v small{display:block;font-size:12px;font-weight:500;color:var(--muted)}
.rp-cand .track{grid-column:1/-1;height:8px}
.rp-cand.fora{opacity:.55}
.rp-sep{border-top:1px dashed var(--line);margin:6px 0;font-size:11px;color:var(--muted);padding-top:4px}
.rp-viradas{display:flex;flex-direction:column}
.rp-vir{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;padding:9px 0;border-bottom:1px solid var(--line);text-align:left;background:none;border-left:0;border-right:0;border-top:0;cursor:pointer;color:var(--fg);font-size:14px;width:100%}
.rp-vir:last-child{border-bottom:0}
.rp-vir:hover{background:color-mix(in srgb,var(--surface-2) 70%,transparent)}
.rp-vir time{font-weight:700;font-variant-numeric:tabular-nums}
.rp-vir small{display:block;color:var(--muted);font-size:12px}
.rp-vir[aria-current="true"]{box-shadow:inset 3px 0 0 var(--fg);padding-left:8px}
.rp-mapa{height:min(60vh,520px);min-height:300px}
.rp-leg{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:12px;color:var(--fg-2);margin-top:8px}
@media (max-width:700px){.rp-bar{position:static}.rp-relogio{font-size:22px}}

/* diálogo do cartão */
.cartao-msg{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:3000;background:var(--fg);color:var(--bg);padding:10px 14px;border-radius:8px;font-size:14px;font-weight:600;max-width:calc(100vw - 32px)}

.texto-mun{margin:0 0 16px;font-size:15px;line-height:1.55;color:var(--fg-2);max-width:78ch}

/* ---------- histórico, custo por voto e afinidade ---------- */
.h-lin{display:grid;grid-template-columns:64px minmax(0,1fr);gap:4px 12px;padding:10px 0;border-bottom:1px solid var(--line)}
.h-lin:last-child{border-bottom:0}
.h-ano{font-weight:700;font-size:14px;font-variant-numeric:tabular-nums}
.h-ano small{display:block;font-weight:500;font-size:12px;color:var(--muted)}
.h-bar{display:flex;height:12px;gap:2px;border-radius:4px;overflow:hidden;background:var(--surface-2)}
.h-bar i{display:block;height:100%;min-width:2px}
.h-bar i.out{background:color-mix(in srgb,var(--muted) 45%,transparent)}
.h-leg{display:flex;flex-wrap:wrap;gap:2px 12px;margin-top:6px;font-size:13px;color:var(--fg-2);min-width:0}
.h-leg span{display:inline-flex;align-items:center;gap:5px;min-width:0}
.h-leg i{width:10px;height:10px;border-radius:2px;flex:none}
.h-leg i.out{background:color-mix(in srgb,var(--muted) 45%,transparent)}
.h-leg b{color:var(--fg);font-weight:600;font-variant-numeric:tabular-nums}
.h-vazio{font-size:13px;color:var(--muted)}
.h-parc{margin-top:6px}
.h-nota{font-size:12px;color:var(--muted);margin:12px 0 0;line-height:1.5}
.h-ctl{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:12px}
.h-mun{font-size:13px;font-weight:600;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px}
.h-el{padding:12px 0;border-bottom:1px solid var(--line)}
.h-el:last-child{border-bottom:0}
.h-el>h4{font-size:14px;font-weight:700;margin:0 0 8px;font-variant-numeric:tabular-nums}
.h-el>h4 small{font-weight:500;color:var(--muted);font-size:12px;margin-left:6px}
.h-el .h-mun+.h-bar{margin-bottom:0}
.h-el .h-bloco{margin-top:10px}
.h-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:12px}
.h-pick label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted);font-weight:600;min-width:0}
.h-pick select.sel{width:100%}
/* custo por voto */
.c-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:10px 0;border-bottom:1px solid var(--line);align-items:start}
.c-row:last-child{border-bottom:0}
.c-nm{min-width:0;display:flex;flex-direction:column;gap:2px}
.c-nm b{font-weight:600;font-size:14px;overflow-wrap:anywhere}
.c-nm button.clk{background:none;border:0;padding:0;font:inherit;font-weight:600;cursor:pointer;color:var(--fg);text-align:left;overflow-wrap:anywhere}
.c-nm button.clk:hover{text-decoration:underline;text-underline-offset:3px}
.c-nm small{font-size:12px;color:var(--muted)}
.c-v{text-align:right;font-weight:700;font-size:15px;font-variant-numeric:tabular-nums;max-width:150px}
.c-v small{display:block;font-weight:500;font-size:12px;color:var(--muted)}
.c-v.sem{font-weight:500;font-size:12px;color:var(--muted)}
.c-bar{grid-column:1/-1;height:6px;background:var(--surface-2);border-radius:0 4px 4px 0;overflow:hidden}
.c-bar i{display:block;height:100%;background:var(--fg-2)}
.c-car{padding:10px 0;border-bottom:1px solid var(--line)}
.c-car:last-child{border-bottom:0}
.c-car h4{font-size:13px;font-weight:700;margin:0 0 4px}
.c-par{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:2px 8px;font-size:13px;align-items:baseline}
.c-par .t{color:var(--muted);font-size:12px}
.c-par .n{overflow-wrap:anywhere}
.c-par .r{font-weight:700;font-variant-numeric:tabular-nums;text-align:right}
.c-fatos{display:flex;flex-wrap:wrap;gap:8px 24px}
.c-fatos div{font-size:12px;color:var(--muted)}
.c-fatos b{display:block;font-size:18px;color:var(--fg);font-weight:700;font-variant-numeric:tabular-nums}
@media (max-width:680px){.h-lin{grid-template-columns:56px minmax(0,1fr);gap:4px 10px}}
.lrow.c3{grid-template-columns:minmax(0,1fr) auto auto}
/* afinidade: duas barras por candidato, na mesma escala */
.a-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:start;padding:12px 0;border-bottom:1px solid var(--line)}
.a-lista>.a-row:last-child,.panel .a-row:last-child{border-bottom:0}
.a-row .nm{min-width:0;display:flex;flex-direction:column;gap:2px}
.a-row .nm b{font-weight:600;font-size:14px}
.a-row .nm small{font-size:12px;color:var(--muted)}
.a-row .df{text-align:right;display:flex;flex-direction:column;gap:1px;white-space:nowrap}
.a-row .df b{font-size:15px;color:var(--fg)}
.a-row .df span{font-size:12px;color:var(--muted)}
.a-bars{grid-column:1/-1;display:flex;flex-direction:column;gap:4px}
.a-bl{display:grid;grid-template-columns:minmax(0,13em) minmax(0,1fr) 3.4em;gap:8px;align-items:center;font-size:12px;color:var(--fg-2)}
.a-rot{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.a-bar{display:block;height:8px;background:var(--line);border-radius:4px;overflow:hidden}
.a-bar i{display:block;height:100%;border-radius:4px}
.a-bl.pior .a-bar i{opacity:.45}
.a-bl b{text-align:right;color:var(--fg);font-size:13px}
.a-aviso{font-size:13px;color:var(--muted);margin:0 0 16px;max-width:68ch}
.como-p{margin-top:16px}.grid>.como-p{margin-top:0}
.como summary,.a-como summary{cursor:pointer;font-weight:700;font-size:15px}
.como p,.como li,.a-como p{font-size:14px;color:var(--fg-2);line-height:1.55;max-width:68ch;margin:10px 0 0}
.como h4,.a-como h4{margin:16px 0 0;font-size:13px}
.a-leg{font-size:12px!important;color:var(--muted)!important}
.a-curva{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;align-items:end;padding:6px 0;border-bottom:1px solid var(--line);font-size:13px}
.a-curva .num{grid-column:1/-1;font-size:12px;color:var(--muted)}
.a-mini{display:inline-flex;align-items:flex-end;gap:2px;width:46px;height:26px}
.a-mini i{flex:1;background:var(--fg-2);border-radius:1px 1px 0 0;min-height:2px}
@media (max-width:420px){.a-bl{grid-template-columns:minmax(0,11.5em) minmax(0,1fr) 3.2em;gap:6px}}
.a-sug{margin-top:12px}.a-sug h4{margin:0 0 4px;font-size:13px;font-weight:700}
.a-frase{font-size:17px;font-weight:700;line-height:1.35;margin:0 0 6px;text-wrap:balance}
.a-sel{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:8px}
.a-sel b{font-size:14px;overflow-wrap:anywhere;min-width:0}

/* ---------- telas da onda 3: calculadora de vagas, perfil × voto, mapa de pontos, cartograma, setas ---------- */
.o3 .tools label.meta{margin-left:4px}
.o3-aviso{margin:0 0 16px;padding:10px 14px;border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:var(--r);background:var(--surface);font-size:14px;color:var(--fg-2)}
.o3-aviso strong{color:var(--fg)}
.o3-txt{font-size:14px;color:var(--fg-2);line-height:1.55;margin:0 0 10px;max-width:68ch}
.o3-txt b{color:var(--fg);font-variant-numeric:tabular-nums}
.o3 .num,.o3 b,.o3 td{font-variant-numeric:tabular-nums}

/* calculadora de vagas */
.vg-estado{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px}
.vg-estado .btn[hidden]{display:none}
.vg-chip-of{border-color:var(--good);color:var(--fg)}
.vg-chip-alt{border-color:var(--warn);color:var(--fg)}
.vg-nums{display:flex;flex-wrap:wrap;gap:8px 28px;margin:12px 0 4px}
.vg-nums div{font-size:12px;color:var(--muted)}
.vg-nums b{display:block;font-size:20px;color:var(--fg);font-weight:700}
.vg-mud{display:flex;flex-direction:column;gap:4px;margin:10px 0 0;padding:0;list-style:none;font-size:14px}
.vg-mud li{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.vg-mud .e{font-weight:700;font-size:11px;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:4px;border:1px solid var(--line);white-space:nowrap}
.vg-mud .e.in{border-color:var(--good)}.vg-mud .e.out{border-color:var(--s8)}
.vg-p{border-bottom:1px solid var(--line)}
.vg-p:last-child{border-bottom:0}
.vg-p>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:4px 12px;align-items:center;padding:9px 0;font-size:14px}
.vg-p>summary::-webkit-details-marker{display:none}
.vg-p>summary:hover{background:color-mix(in srgb,var(--surface-2) 60%,transparent)}
.vg-p .pn{min-width:0;display:flex;flex-direction:column;gap:1px}
.vg-p .pn b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}
.vg-p .pn b i{width:10px;height:10px;border-radius:2px;flex:none}
.vg-p .pn small{font-size:12px;color:var(--muted)}
.vg-p .pv{text-align:right;white-space:nowrap;font-weight:600}
.vg-p .pv small{display:block;font-size:12px;font-weight:500;color:var(--muted)}
.vg-p .dl{font-size:11px;font-weight:700;margin-left:4px;padding:1px 5px;border-radius:4px;border:1px solid var(--line)}
.vg-p .dl.up{border-color:var(--good)}.vg-p .dl.dn{border-color:var(--s8)}
.vg-corpo{padding:4px 0 14px}
.vg-leg{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin-bottom:8px;font-size:13px;color:var(--fg-2)}
.vg-c{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:7px 0;border-top:1px solid var(--line);font-size:14px}
.vg-c .cn{min-width:0;display:flex;flex-direction:column}
.vg-c .cn b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vg-c .cn small{font-size:12px;color:var(--muted)}
.vg-ed{display:inline-flex;align-items:stretch;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--surface)}
.vg-ed button{border:0;background:var(--surface-2);padding:0 10px;font-size:15px;font-weight:700;cursor:pointer;min-width:36px;min-height:36px}
.vg-ed button:hover{background:var(--line)}
.vg-ed input{border:0;width:92px;padding:6px 8px;text-align:right;font-size:14px;background:var(--surface);font-variant-numeric:tabular-nums;min-width:0}
.vg-tag{font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:2px 6px;border-radius:4px;border:1px solid var(--line);color:var(--fg-2);white-space:nowrap;margin-left:6px}
.vg-tag.on{border-color:var(--good);color:var(--fg)}
.vg-tag.alt{border-color:var(--warn)}
.vg-busca{display:flex;flex-direction:column;gap:6px}
.vg-el{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:7px 0;border-bottom:1px solid var(--line);font-size:14px}
.vg-el:last-child{border-bottom:0}
.vg-el small{color:var(--muted);font-size:12px}
.vg-el .v{text-align:right;font-weight:600;white-space:nowrap}
.vg-ref{display:inline-block;font-size:12px;color:var(--fg-2);border-left:2px solid var(--good);padding-left:8px;margin-top:6px}
.vg-ref.x{border-left-color:var(--warn)}
@media (max-width:420px){.vg-ed input{width:76px}.vg-c{grid-template-columns:1fr}}

/* gráficos em canvas e mapas */
.o3-plot{position:relative;height:min(62vh,460px);min-height:300px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow:hidden;touch-action:manipulation}
.o3-plot canvas{cursor:crosshair}
.o3-dica{position:absolute;pointer-events:none;z-index:3;max-width:220px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);color:var(--fg);font-size:12px;line-height:1.35;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.o3-sel{margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);font-size:13px;min-height:44px;color:var(--fg-2)}
.o3-sel b{color:var(--fg)}
.o3-mapa{height:min(72vh,600px);min-height:340px}
.o3-chips{display:flex;flex-wrap:wrap;gap:6px}
.o3-chips button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:4px;background:var(--surface);padding:5px 9px;font-size:12px;font-weight:600;color:var(--fg-2);cursor:pointer}
.o3-chips button i{width:10px;height:10px;border-radius:2px;flex:none}
.o3-chips button[aria-pressed="false"]{opacity:.45}
.o3-chips button[aria-pressed="true"]{color:var(--fg);border-color:var(--fg-2)}
.o3-canvas-map{position:absolute;left:0;top:0;pointer-events:none;z-index:450}

/* cartograma */
.carto-rn{display:block;width:100%;height:auto;max-width:720px}
.carto-rn .bl{cursor:pointer;stroke:var(--bg);stroke-width:1}
.carto-rn .bl:hover,.carto-rn .bl:focus-visible{stroke:var(--fg);stroke-width:2;outline:none}
.carto-rn .bl.sem{fill:var(--surface-2)}

/* setas da virada */
.sv-leg{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--fg-2);margin-top:10px;align-items:center}
.sv-leg svg{width:34px;height:12px;vertical-align:-2px;margin-right:4px}
.sv-fora summary{cursor:pointer;font-weight:600;font-size:14px}
.sv-fora ul{margin:8px 0 0;padding-left:18px;font-size:13px;color:var(--fg-2);max-height:320px;overflow:auto}
.sv-fora li{margin:2px 0}

/* nome de candidato que leva à página dele, em qualquer lista */
button.clk{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left;overflow-wrap:anywhere}
button.clk:hover{text-decoration:underline;text-underline-offset:3px}
.vg-busca .search{flex:none}
/* ---------- 2º turno ao vivo (telas/t2.js) ---------- */
.t2-bloco{margin-top:16px}
.t2-chip{display:inline-flex;align-items:center;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:4px;white-space:nowrap;vertical-align:middle}
.t2-chip.proj{border:1px dashed var(--fg-2);color:var(--fg-2)}
.t2-chip.of{border:1px solid var(--fg);color:var(--fg);background:var(--surface-2)}
.t2-estado{align-items:center}
.t2-estado.t2-live{border-color:var(--live)}
.t2-aviso{border-left:3px solid var(--line)}
.t2-aviso.forte{border-left-color:var(--warn);color:var(--fg)}
.t2-ensaio{border:1px solid var(--warn);color:var(--fg)}
.t2-escala{margin:18px 0 8px}
.t2-trilho{position:relative;height:46px;border:1px solid var(--line);border-radius:var(--r);overflow:visible;margin-top:26px}
.t2-trilho>i{position:absolute;display:block}
.t2-lado{top:0;bottom:0}
.t2-lado:first-child{border-radius:var(--r) 0 0 var(--r)}
.t2-meio{left:50%;top:-4px;bottom:-4px;width:2px;background:var(--fg-2)}
.t2-b95{top:19px;height:8px;background:var(--fg-2);opacity:.45;border-radius:4px}
.t2-b80{top:14px;height:18px;background:var(--fg);opacity:.55;border-radius:4px}
.t2-ag{top:-8px;bottom:-8px;width:3px;margin-left:-1px;background:var(--fg)}
.t2-ag-r{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:4px;white-space:nowrap}
.t2-ag-r .t2-chip{background:var(--fg);color:var(--bg);border:0;font-size:12px;font-variant-numeric:tabular-nums}
.t2-of{top:calc(100% - 1px);width:11px;height:11px;margin-left:-5px;background:var(--surface);border:2px solid var(--fg);transform:rotate(45deg) translateY(2px)}
.t2-eixo{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:8px;font-variant-numeric:tabular-nums}
.t2-leg{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12px;color:var(--fg-2);margin-top:10px}
.t2-k{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:6px;vertical-align:-2px;background:var(--fg)}
.t2-k.b80{opacity:.55}.t2-k.b95{height:6px;opacity:.45;vertical-align:1px;background:var(--fg-2)}
.t2-k.ag{width:3px}
.t2-k.of{background:var(--surface);border:2px solid var(--fg);width:10px;height:10px;transform:rotate(45deg)}
.t2-k.vazio{background:var(--surface-2);border:1px solid var(--line)}
.t2-lados{display:flex;justify-content:space-between;gap:12px;margin:12px 0 4px;font-size:13px}
.t2-lados>div{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}
.t2-lados>div.r{justify-content:flex-end;text-align:right}
.t2-lados i{width:10px;height:10px;border-radius:2px;flex:none}
.t2-nums{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin-top:10px}
.t2-nums>div{display:flex;flex-direction:column;gap:2px}
.t2-nums b{font-size:17px}
@media (max-width:680px){.t2-nums{grid-template-columns:1fr}.t2-lados>div .meta{display:none}}
.t2-cand{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:12px}
.t2-cand>i{width:10px;height:36px;border-radius:2px}
.t2-cand .r{text-align:right;display:flex;flex-direction:column}
.t2-cand .r b{font-size:20px}
.t2-barra{height:8px;background:var(--surface-2);border-radius:4px;margin-top:6px;overflow:hidden}
.t2-barra>i{display:block;height:100%}
.t2-prog{height:6px;background:var(--surface-2);border-radius:4px;margin-top:12px;overflow:hidden}
.t2-prog>i{display:block;height:100%;background:var(--fg)}
.t2-mapa{min-height:360px}
.t2-frase{font-size:16px;line-height:1.5;margin:8px 0 12px;max-width:68ch}
.t2-tls{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.t2-tl .nm small{display:block;white-space:normal}
.t2-emp{display:flex;height:10px;margin-top:6px;border-radius:4px;overflow:hidden;border:1px solid var(--line)}
.t2-emp>i{display:block;height:100%}
.t2-escolhidas{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.t2-ch{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:4px;padding:4px 8px;font-size:13px;font-weight:600;background:var(--surface-2)}
.t2-ch small{color:var(--muted);font-weight:500}
.t2-reg .p{min-width:112px}
.t2-vir .v small{font-weight:400}
/* Setas da virada */
.sv-frase{font-size:17px;line-height:1.4;margin:0 0 12px;font-weight:600;color:var(--fg)}
.sv-frase span{font-weight:400;color:var(--fg-2);font-size:15px}
.sv-esc{margin-top:12px}
.sv-esc-t{font-size:12px;color:var(--fg-2);margin-bottom:6px}
.sv-esc-b{display:grid;grid-template-columns:repeat(7,1fr);height:12px;border:1px solid var(--line);border-radius:4px;overflow:hidden}
.sv-esc-b i{display:block}
.sv-esc-n{position:relative;height:16px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.sv-esc-n span{position:absolute;transform:translateX(-50%);top:2px}
.sv-esc-e{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:var(--fg-2);margin-top:2px}
.sv-cinza{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--fg-2);margin-top:8px}
.sv-cinza i{display:block;width:18px;height:12px;border:1px solid var(--line);border-radius:4px;opacity:.7}
.sv-pop{margin:6px 0 8px;line-height:1.45}
.sv-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}
.sv-row:last-child{border-bottom:0}
.sv-v{text-align:right;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.sv-v small{display:block;font-weight:400;white-space:normal;max-width:130px;margin-left:auto}
.sv-leg svg{height:18px}

/* uma linha de aviso de honestidade, logo abaixo do título (no lugar de caixas empilhadas) */
.linha-aviso{font-size:13px;color:var(--muted);margin:-6px 0 16px;max-width:72ch;line-height:1.45}
.linha-aviso b{color:var(--fg-2);font-weight:600}
.como ul{margin:8px 0 0;padding-left:18px;max-width:68ch}
.como dl{margin:10px 0 0;max-width:68ch;font-size:14px;line-height:1.5;color:var(--fg-2)}
.como dt{font-weight:700;color:var(--fg);margin-top:10px}
.como dd{margin:2px 0 0}
/* glossário no rodapé */
footer .glos{margin:6px 0 2px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r);background:var(--surface);color:var(--fg-2)}
footer .glos summary{cursor:pointer;font-weight:700;font-size:14px;color:var(--fg)}
footer .glos dl{font-size:13px}

/* lista de municípios com os cabeçalhos «Aptos» e «Foram votar» alinhados com as linhas */
.col-comp .lrow .v{min-width:60px}.col-comp .lrow .p{min-width:74px}

/* frente A: cabeçalho e navegação */
/* busca única no topo: campo no computador; lupa que abre o campo no celular */
.busca{position:relative}
.busca-btn{display:none;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:4px;color:var(--fg);cursor:pointer}
.busca-btn:hover{border-color:var(--fg-2)}
.busca-btn svg,.busca-lupa{width:16px;height:16px;flex:none}
.busca-box{position:relative;display:flex;align-items:center;width:240px}
.busca-lupa{position:absolute;left:10px;top:50%;margin-top:-8px;color:var(--muted);pointer-events:none}
.busca-q{width:100%;min-width:0;height:34px;padding:0 10px 0 32px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--fg);font:inherit;font-size:14px}
.busca-q::placeholder{color:var(--muted)}
.busca-fecha{display:none}
.busca-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:1100;width:min(520px,calc(100vw - 32px));max-height:min(70vh,640px);overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:8px;box-shadow:0 6px 24px rgba(0,0,0,.14)}
.busca-pop[hidden]{display:none}
.busca-dica{margin:0;padding:8px;font-size:13px;line-height:1.5;color:var(--muted)}
.busca-ops{display:flex;flex-direction:column;gap:2px}
.busca-op{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:baseline;text-align:left;background:none;border:0;border-left:2px solid transparent;border-radius:4px;padding:8px 8px;color:var(--fg);cursor:pointer;font:inherit;min-width:0}
.busca-op:hover,.busca-op[aria-selected="true"]{background:var(--surface-2)}
.busca-op[aria-selected="true"]{border-left-color:var(--fg)}
.busca-nm{grid-column:1;font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.busca-tipo{grid-column:2;grid-row:1;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.busca-op small{grid-column:1/-1;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.busca-pop .pager{margin-top:8px}
.busca-pop .empty{padding:16px 8px}

/* abas: a barra rola e as bordas mostram, em degradê, que há mais para o lado */
.tabs-wrap{position:relative}
.tabs{position:relative}
.tabs-wrap::before,.tabs-wrap::after{content:"";position:absolute;top:0;bottom:1px;width:32px;z-index:2;pointer-events:none;opacity:0;transition:opacity .15s}
.tabs-wrap::before{left:0;background:linear-gradient(to right,var(--bg),transparent)}
.tabs-wrap::after{right:0;background:linear-gradient(to left,var(--bg),transparent)}
.tabs-wrap.tem-esq::before,.tabs-wrap.tem-dir::after{opacity:1}
@media (prefers-reduced-motion:reduce){.tabs-wrap::before,.tabs-wrap::after{transition:none}}

/* «Como ler esta tela»: uma linha discreta com «?», sem moldura de painel */
.como-leve{margin-top:8px}
.como-leve .como summary{display:inline-flex;align-items:center;gap:8px;list-style:none;padding:10px 0;font-size:13px;font-weight:600;color:var(--muted)}
.como-leve .como summary::-webkit-details-marker{display:none}
.como-leve .como summary:hover{color:var(--fg)}
.como-i{display:inline-grid;place-items:center;width:18px;height:18px;flex:none;border:1.5px solid currentColor;border-radius:50%;font-size:11px;font-weight:800;line-height:1}
.como-leve .como[open] summary{color:var(--fg)}
.como-leve .como[open]>:not(summary){margin-left:8px;padding-left:16px;border-left:2px solid var(--line)}

/* tema: um seletor só em cada tamanho (no alto no computador, no rodapé no celular) */
.tema-rodape{align-self:flex-start;margin-top:6px}
@media (min-width:641px){.tema-rodape{display:none}}

@media (max-width:640px){
  h1{font-size:17px}
  .top-right{gap:6px}
  .lugar-btn b{max-width:72px}
  .busca{position:static}
  .busca-btn{display:inline-flex}
  .busca-box{display:none}
  .busca.aberta .busca-box{display:flex;position:absolute;left:0;right:0;top:0;width:auto;z-index:1200;gap:8px;padding:8px 16px;background:var(--bg);border-bottom:1px solid var(--line);height:52px}
  .busca-lupa{display:none}
  .busca-q{padding-left:10px;height:36px;font-size:16px}
  .busca-fecha{display:inline-block;flex:none;height:36px;padding:0 10px;background:none;border:0;color:var(--fg-2);font:inherit;font-size:14px;font-weight:600;cursor:pointer}
  .busca-pop{position:fixed;left:0;right:0;top:calc(env(safe-area-inset-top,0px) + 53px);width:auto;max-height:calc(100dvh - 53px - env(safe-area-inset-top,0px));border-radius:0;border-inline:0}
  .tabs-wrap{margin-inline:-16px}
  .tabs{margin-inline:0;padding-inline:12px;gap:0}
  .tab{flex:0 0 auto;padding:10px 12px;font-size:13px;letter-spacing:0}
}
/* frente C: município */
.mun-acoes{display:flex;gap:8px;flex-wrap:wrap}
.texto-mun{margin:0 0 16px;max-width:68ch}
/* cartão «quem ganhou aqui» */
.mc-card{display:flex;flex-direction:column;gap:6px}
.mc-card .ph{margin-bottom:0}
.mc-quem{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;min-width:0}
.mc-quem .clk{font-weight:700;font-size:16px;color:var(--fg)}
.mc-pct{font-size:26px;font-weight:800;letter-spacing:-.01em;line-height:1.1;color:var(--fg)}
.mc-pct small{font-size:12px;font-weight:500;color:var(--muted);margin-left:6px;letter-spacing:0}
.mc-bar{height:10px;background:var(--surface-2);border-radius:0 4px 4px 0;position:relative;overflow:hidden}
.mc-bar>i{position:absolute;left:0;top:0;bottom:0;border-radius:0 4px 4px 0}
.mc-2{margin:2px 0 0;font-size:13px;color:var(--fg-2);display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px}
.mc-2 .clk{font-weight:600}
/* «Esta é a minha cidade» */
.minha-cidade[aria-pressed="true"]{background:var(--fg);color:var(--bg);border-color:var(--fg)}
.minha-cidade[aria-pressed="true"]:hover{border-color:var(--fg)}
.minha-cidade:focus-visible{outline:2px solid var(--fg);outline-offset:2px}
/* blocos recolhidos (deputados, histórico, locais de votação) */
.mun-det{padding:0}
.mun-det>summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 12px;padding:14px 16px;min-height:48px}
.mun-det>summary::-webkit-details-marker{display:none}
.mun-det>summary::after{content:"+";flex:none;margin-left:auto;font-weight:700;font-size:18px;line-height:1;color:var(--fg-2)}
.mun-det[open]>summary::after{content:"\2212"}
.mun-det>summary:hover{background:color-mix(in srgb,var(--surface-2) 60%,transparent)}
.mun-det>summary:focus-visible{outline:2px solid var(--fg);outline-offset:-2px}
.mun-det-t{font-size:15px;font-weight:700}
.mun-det>.chip{margin:0 16px 8px}
.mun-det-c{padding:0 16px 16px}
/* comparar duas cidades */
.par{padding:0}
.par-lin{padding:14px 16px;border-top:1px solid var(--line)}
.par-lin:first-child{border-top:0}
.par-cab{position:sticky;top:0;background:var(--surface);z-index:1;border-radius:var(--r) var(--r) 0 0}
.par-t{font-size:14px;font-weight:700;margin:0 0 8px}
.par-g,.par-h{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.par-n .clk{font-weight:800;font-size:16px;color:var(--fg)}
.par-n small{display:block;font-weight:500;font-size:12px;color:var(--muted)}
.par-c{min-width:0;display:flex;flex-direction:column;gap:5px}
.par-q{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;font-size:14px;min-width:0}
.par-q .clk{font-weight:700;color:var(--fg)}
.par-p{font-size:22px;font-weight:800;line-height:1.1;color:var(--fg)}
.par-2{font-size:12px;color:var(--fg-2);display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;overflow-wrap:anywhere}
.par-h .h-bloco{margin-top:0;min-width:0}
.par-h .h-leg{flex-wrap:wrap}
@media (max-width:680px){
  .mun-acoes .btn{flex:1 1 auto;justify-content:center}
  .mc-pct{font-size:24px}
  .par-lin{padding:12px}
  .par-g,.par-h{gap:10px 12px}
  .par-p{font-size:19px}
  .mun-det>summary{padding:12px}
  .mun-det-c{padding:0 12px 12px}
}
/* frente E: compartilhar */
/* o botão é o mesmo em toda tela: rótulo, ícone e estilo vêm daqui, não da tela que o usa */
.btn.btn-compartilhar{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:600;line-height:1.2;white-space:nowrap;border-radius:4px}
.btn.btn-compartilhar svg{width:14px;height:14px;flex:none}
.btn.btn-compartilhar[hidden]{display:none}
.btn.btn-compartilhar[disabled]{opacity:.55;cursor:default}
/* frente B: Início */
.ini-ls,.ini-ts{display:flex;flex-direction:column;gap:6px}
.ini-l,.ini-t{display:grid;gap:2px 10px;width:100%;min-width:0;text-align:left;font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:10px 12px;cursor:pointer}
.ini-l:hover,.ini-t:hover,.ini-mapa:hover{border-color:var(--fg-2)}
.ini-l{grid-template-columns:minmax(0,1fr) auto}
.ini-l .ini-c,.ini-t .ini-c{grid-column:1/-1;font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.ini-n{min-width:0;overflow-wrap:anywhere;font-size:14px}
.ini-sen{display:block}
.ini-v{font-weight:800;font-size:15px;text-align:right;white-space:nowrap}
.ini-v small{font-size:11px;font-weight:600;color:var(--muted)}
.ini-s{grid-column:1/-1;font-size:12px;color:var(--muted);line-height:1.4}
.ini-b{grid-column:1/-1;display:flex;height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden;margin-top:4px}
.ini-b i{display:block;height:100%}
.ini-t{grid-template-columns:minmax(0,1fr)}
.ini-vs{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:start;font-size:14px}
.ini-vs>b{grid-column:1/-1}
.ini-lado{display:flex;flex-direction:column;gap:4px;min-width:0;overflow-wrap:anywhere}
.ini-pc{font-weight:800;font-size:18px}
.ini-bar{display:block;height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden}
.ini-bar i{display:block;height:100%}
.ini-x{color:var(--muted);font-weight:700;padding-top:2px}
.ini-cid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;padding:8px 0;border-top:1px solid var(--line)}
.ini-cid .ini-c{grid-column:1/-1;font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.ini-cid>span:nth-child(2){min-width:0;overflow-wrap:anywhere;font-size:14px}
.ini-cid .ini-b{grid-column:1/-1}
.ini-mapa{display:block;width:100%;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:4px;cursor:pointer;color:inherit}
.ini-grade{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:30px;gap:3px}
.ini-uf{display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:11px;font-weight:800}
.ini-svg{display:block;font-size:12px;color:var(--muted)}
.ini-svg svg{display:block;width:100%;height:auto;max-height:260px}
.ini-at{display:flex;flex-wrap:wrap;gap:8px}
.ini-at .btn{flex:1 1 140px;justify-content:center;padding:10px 12px}
.cur-sec{margin-top:16px}
.cur-sec:first-child{margin-top:0}
@media (max-width:680px){.ini-pc{font-size:16px}}
/* frente D: 2º turno */
.t2p-falta .t2p-tempo{font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.15;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.t2p-frase{font-size:15px;line-height:1.5;margin:12px 0 0;max-width:68ch}
.t2p-sub{font-size:14px;font-weight:700;margin:16px 0 8px;color:var(--fg)}
.t2p-els{display:flex;flex-direction:column;gap:10px}
.t2p-el{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"nm r" "barra barra";gap:4px 12px;align-items:end}
.t2p-el .nm{grid-area:nm;min-width:0}
.t2p-el .nm b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.t2p-el .nm small{color:var(--muted);font-size:12px}
.t2p-el .r{grid-area:r;text-align:right;display:flex;flex-direction:column}
.t2p-el .r small{color:var(--muted);font-size:12px}
.t2p-barra{grid-area:barra;height:8px;background:var(--surface-2);border-radius:4px;overflow:hidden}
.t2p-barra>i{display:block;height:100%}
.t2p-cid-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.t2p-cid-b{min-width:0}
.t2p-cid-b .t2p-sub{margin-top:0}
.t2p-disp .note{overflow-wrap:anywhere}
@media (max-width:680px){.t2p-cid-g{grid-template-columns:minmax(0,1fr)}.t2p-falta .t2p-tempo{font-size:24px}}
/* tela de domingo: 1º × 2º turno (telas/domingo.js) */
.dg-sel{max-width:100%}
.dg-mapas{margin-top:16px}
.dg-par{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dg-lado{min-width:0;display:flex;flex-direction:column;gap:8px}
.dg-map.map{height:min(62vh,480px);min-height:300px}
.dg-cap-t{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 10px}
.dg-cap-t b{font-size:15px}
.dg-duelo{display:flex;justify-content:space-between;gap:10px;font-size:14px;margin-top:4px}
.dg-duelo span{display:inline-flex;align-items:center;gap:6px;min-width:0}
.dg-duelo i{display:inline-block;width:10px;height:10px;border-radius:2px;flex:0 0 auto}
.dg-duelo b{font-size:18px}
.dg-duelo.vazio{min-height:22px}
.dg-lado .duelbar{margin-top:2px;height:8px}
.dg-vis{display:none;margin-bottom:10px}
.dg-cam{align-self:flex-start}
.dg-barra{display:flex;align-items:center;gap:10px}
.dg-par[data-comp=urnas] .dg-barra{display:none}
.dg-comp{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-bottom:12px}
.dg-comp .note{margin:0}
.dg-barra .rp-btn{flex:0 0 auto;min-height:36px}
.dg-barra-t{margin:-4px 0 0;min-height:1.5em}
.dg-sinc{padding:2px 10px;min-height:28px;font-size:13px;margin-left:4px}
.dg-frase{font-size:15px;line-height:1.5;margin:0 0 8px;max-width:72ch}
.dg-proj{display:flex;flex-wrap:wrap;gap:8px 28px;margin:0 0 10px}
.dg-proj div{display:flex;flex-direction:column;min-width:0}
.dg-proj b{font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1.15}
.dg-proj div:last-child b{font-size:18px;color:var(--fg)}
.dg-curva{width:100%;height:auto;display:block}
.dg-eixo{font-size:11px;fill:var(--muted);font-variant-numeric:tabular-nums}
.dg-listas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.dg-listas>div{min-width:0}
.dg-sub{font-size:14px;font-weight:700;margin:0 0 8px}
.lrow.dg-lin{grid-template-columns:minmax(0,1fr) auto auto}
.lrow.dg-lin .v{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;min-width:84px}
.lrow.dg-lin.l2{grid-template-columns:minmax(0,1fr) auto}
.lrow.dg-lin.l2 .nm small{white-space:normal}
@media (max-width:680px){
  .dg-par{grid-template-columns:minmax(0,1fr)}
  .dg-vis{display:inline-flex}
  .dg-vis button{flex:1 1 0;white-space:nowrap}
  .dg-par[data-vis="1"] .dg-l2,.dg-par[data-vis="2"] .dg-l1{display:none}
  .dg-map.map{height:min(58vh,420px);min-height:280px}
  .dg-listas{grid-template-columns:minmax(0,1fr)}
  .dg-proj b{font-size:22px}
  .lrow.dg-lin .v{min-width:0}
}

/* ---------- site do 2º turno (22/10): cabeçalho sem busca nem seletor de lugar ---------- */
#busca[hidden],#lugar[hidden]{display:none!important}

/* ---------- tela «Municípios do RN» (telas/municipios-2t.js) ---------- */
.mu-lst{display:flex;flex-direction:column}
.mu-lin{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,1.4fr) minmax(0,1.4fr);gap:8px 16px;align-items:start;padding:10px 0;border-bottom:1px solid var(--line)}
.mu-lin:last-child{border-bottom:0}
.mu-nm{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:15px}
.mu-nm .t2-chip{background:var(--fg);color:var(--bg)}
.mu-d{min-width:0}
.mu-t{display:flex;justify-content:space-between;gap:8px;font-size:12px}
.mu-t b{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.mu-n{display:flex;justify-content:space-between;gap:8px;font-size:14px;margin-top:2px}
.mu-bar{height:8px;margin-top:4px}
.mu-bar.mu-1t{opacity:.45}
.mu-r{display:flex;justify-content:space-between;gap:8px;color:var(--muted);margin-top:2px}
@media (max-width:640px){.mu-lin{grid-template-columns:1fr 1fr}.mu-nm{grid-column:1/-1}}
@media (max-width:420px){.mu-lin{grid-template-columns:1fr}}

/* ---------- painéis Brasil e RN (telas/painel.js) ---------- */
.pn-frase{font-size:17px;max-width:70ch;color:var(--fg)}
.pn-placar{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px;margin-bottom:16px}
.pn-tile{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--pn-c,var(--line));border-radius:var(--r);padding:12px 14px;display:flex;flex-direction:column;gap:2px;min-width:0}
.pn-tile .k{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pn-tile .v{font-size:28px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.15;color:var(--pn-c,var(--fg))}
.pn-tile .s{font-size:12px;color:var(--muted)}
.pn-grid{align-items:start}
.pn-barlab{display:flex;justify-content:space-between;font-weight:700;font-size:15px;margin-bottom:4px}
.pn-bar{display:flex;height:14px;gap:2px;border-radius:4px;overflow:hidden;background:var(--surface-2)}
.pn-bar i{display:block;height:100%;transition:width .3s}
.pn-leits{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,130px),1fr));gap:8px;margin-top:12px}
.pn-leit{border:1px solid var(--line);border-radius:var(--r);padding:8px 10px;display:flex;flex-direction:column;gap:2px}
.pn-leit.on{border-color:var(--fg);box-shadow:inset 0 0 0 1px var(--fg)}
.pn-leit .n{font-size:24px;font-weight:800;font-variant-numeric:tabular-nums}
.pn-leit .t{font-size:12px;color:var(--muted)}
.pn-ctls{display:grid;gap:14px}
.pn-ctl{display:flex;flex-direction:column;gap:4px}
.pn-ctl label{display:flex;justify-content:space-between;gap:8px;font-weight:600;font-size:14px}
.pn-ctl output{font-variant-numeric:tabular-nums}
.pn-ctl input[type=range]{width:100%;accent-color:var(--fg)}
.pn-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.pn-chip{font:inherit;font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--fg-2);cursor:pointer}
.pn-chip[aria-pressed=true]{background:var(--fg);border-color:var(--fg);color:var(--bg)}
.pn-sout{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.pn-srow{display:grid;grid-template-columns:minmax(90px,150px) 1fr 64px;gap:10px;align-items:center;font-size:13px}
.pn-sbar{position:relative;display:flex;height:16px;gap:2px;border-radius:4px;overflow:hidden;background:var(--surface-2)}
.pn-sbar i{display:block;height:100%;transition:width .25s}
.pn-meio{position:absolute;left:50%;top:-2px;bottom:-2px;width:2px;background:var(--fg);opacity:.5}
.pn-sval{text-align:right;font-weight:800;font-size:16px;font-variant-numeric:tabular-nums}
.pn-sfrase{margin:0;font-size:15px}
.pn-leg{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--muted);margin:4px 0 8px;align-items:center}
.pn-leg i{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:-1px;margin-right:4px}
.pn-ramp{display:inline-block;width:140px;height:10px;border-radius:5px}
.pn-chart,.pn-map{position:relative}
.pn-chart svg,.pn-map svg{display:block}
.pn-grade{stroke:var(--line);stroke-width:1}
.pn-ref{stroke:var(--fg-2);stroke-dasharray:4 3;stroke-width:1}
.pn-urna{stroke:var(--muted);stroke-width:1}
.pn-eixo{font-size:11px;fill:var(--muted)}
.pn-rot{font-size:11px;font-weight:700}
.pn-pt{fill:var(--fg-2);stroke:var(--surface);stroke-width:1.2;cursor:pointer}
.pn-pt.fora{fill:var(--other)}
.pn-pt.on{fill:var(--fg);r:6.5}
.pn-area{stroke:var(--surface);stroke-width:.6;cursor:pointer}
.pn-area:hover{stroke:var(--fg);stroke-width:1.2}
.pn-tip{position:absolute;z-index:5;max-width:230px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 6px 24px rgba(0,0,0,.14);padding:8px 10px;font-size:12px;line-height:1.45;pointer-events:none}
.pn-seg{margin-bottom:8px;flex-wrap:wrap}
.pn-lrow{grid-template-columns:1fr auto auto}
.pn-ilst{display:flex;flex-direction:column;gap:5px}
.pn-irow{display:grid;grid-template-columns:minmax(90px,130px) 1fr 44px;gap:8px;align-items:center;font-size:12px}
.pn-inm small{color:var(--muted)}
.pn-itr{position:relative;height:14px}
.pn-iic{position:absolute;top:6px;height:2px;background:var(--muted);opacity:.6}
.pn-ibar{position:absolute;top:2px;height:10px;border-radius:2px}
.pn-i0{position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:var(--fg-2)}
.pn-ix{position:absolute;top:-3px;transform:translateX(-50%);font-style:normal;font-weight:800;font-size:14px;color:var(--fg)}
.pn-iv{text-align:right;font-weight:700}
.pn-tw{overflow-x:auto}
.pn-tab{width:100%;border-collapse:collapse;font-size:13px}
.pn-tab th{text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--line)}
.pn-tab td{padding:7px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.pn-tab .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.pn-tab tr.click{cursor:pointer}.pn-tab tr.click:hover td{background:var(--surface-2)}
.pn-flow{display:flex;flex-direction:column;gap:8px}
.pn-frow{display:grid;grid-template-columns:minmax(120px,220px) 1fr 52px;gap:10px;align-items:center;font-size:13px}
.pn-ftr{position:relative;height:12px;background:var(--surface-2);border-radius:6px}
.pn-ftr i{position:absolute;inset:0 auto 0 0;border-radius:6px;background:var(--other)}
.pn-frow.on .pn-ftr i{background:var(--fg)}
.pn-ftr b{position:absolute;left:50%;top:-3px;bottom:-3px;width:1px;background:var(--fg-2)}
.pn-frow .num{text-align:right;font-weight:700}
@media (max-width:640px){.pn-srow{grid-template-columns:1fr 56px}.pn-srow .pn-sbar{grid-column:1/-1;grid-row:2}.pn-frow{grid-template-columns:1fr 48px}.pn-frow .pn-ftr{grid-column:1/-1;grid-row:2}}

/* ---------- tela «Pesquisas» (telas/pesquisas.js) ---------- */
.pq-lin{grid-template-columns:1fr auto}
.pq-lin .nm small{overflow-wrap:anywhere}
.pq-tit{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}
.pq-res{display:flex;flex-direction:column;align-items:flex-end;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.pq-res small{font-weight:400;color:var(--muted)}
.pq-alto{background:color-mix(in oklab,var(--s8) 18%,var(--surface));color:var(--s8)}
.pq-medio{background:color-mix(in oklab,var(--s4) 22%,var(--surface));color:color-mix(in oklab,var(--s4) 70%,var(--fg))}
.pq-info{background:var(--surface-2);color:var(--fg-2)}
.pq-fora{background:var(--surface-2);color:var(--muted)}
.pq-als{display:flex;flex-direction:column;gap:8px}
.pq-al{display:flex;gap:8px;align-items:flex-start;font-size:14px;padding:8px 10px;border-radius:var(--r);background:var(--surface-2)}
.pq-al.pq-alto,.pq-al.pq-medio{background:none;border:1px solid var(--line);color:var(--fg)}
.pq-dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px 16px;margin:0}
.pq-dl dt{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pq-dl dd{margin:2px 0 0;font-size:14px;overflow-wrap:anywhere}
.pq-txt{margin-top:10px;font-size:13px}
.pq-txt summary{cursor:pointer;font-weight:600}
.pq-txt p{white-space:pre-wrap;color:var(--fg-2);max-height:320px;overflow:auto;margin:6px 0 0}
.pq-cota h4{margin:10px 0 4px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pq-crow{display:grid;grid-template-columns:minmax(80px,120px) 1fr minmax(96px,auto);gap:8px;align-items:center;font-size:12px;margin:3px 0}
.pq-cbars{display:flex;flex-direction:column;gap:2px}
.pq-cbars i{display:block;height:6px;border-radius:3px}
.pq-cbars .pl,.pq-kpl{background:var(--fg-2)}
.pq-cbars .el,.pq-kel{background:var(--other)}
.pq-cv{text-align:right;white-space:nowrap}
.pq-cv small{color:var(--muted)}
.pq-d5{color:var(--s8)}
.pn-leg .pq-kpl,.pn-leg .pq-kel{display:inline-block;width:14px;height:6px;border-radius:3px;margin-right:4px;vertical-align:1px}

/* ---------- cabeçalho sem marca (MARCA.md): o título leva ao início; cor só nos candidatos ---------- */
.inicio{color:var(--fg);text-decoration:none;min-width:0}
@media (max-width:640px){.h1-resto{display:none}} /* no celular, «Apuração 2026» cabe ao lado do seletor de lugar */

/* ---------- quadros que rolam (lista {rola:true} e tabelas longas) ----------
   O quadro tem altura fixa e rola por dentro; a busca e os filtros ficam parados em cima.
   .pn-par: o quadro da direita pega a altura do vizinho da esquerda (mapa, viés), em vez de esticar a linha. */
.lista.rola .rola-c{max-height:var(--rola-h,560px);overflow:auto;overscroll-behavior:contain;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lista.rola .pager{padding-top:8px}
.pn-col{display:flex;flex-direction:column;gap:16px}
.pn-rola{max-height:var(--rola-h,560px);overflow:auto;overscroll-behavior:contain}
.pn-rola thead th{position:sticky;top:0;background:var(--surface);z-index:1}
@media (min-width:681px){
  .pn-par{position:relative;min-height:420px;align-self:stretch}
  .pn-par>.panel{position:absolute;inset:0;display:flex;flex-direction:column;overflow:hidden}
  .pn-par>.panel>.lista{flex:1;min-height:0;display:flex;flex-direction:column}
  .pn-par .lista.rola .rola-c,.pn-par .pn-rola{flex:1;min-height:0;max-height:none}
}
@media (max-width:680px){.lista.rola .rola-c,.pn-rola{--rola-h:50vh;overscroll-behavior:auto}} /* no celular, ao fim da lista o dedo segue rolando a página */
.rola-alta{--rola-h:max(420px,calc(100vh - 330px))}
.pq-duo{display:flex;align-items:baseline;gap:6px}

/* ---------- a cara do Leleu (MARCA.md): só em apuracao.leleufontes.com.br, onde o servidor põe class="marca-leleu" no <html> ----------
   Paleta do site dele (leleufontes.com.br): laranja #D87C14 → #F4A64E em degradê, títulos em azul-marinho #00234B, fonte Inter,
   cantos de 12 px. O laranja veste a interface; os dados seguem com as cores dos candidatos (comum/cores.js). No site limpo, nada disto aparece. */
.nl-logo,.nl-faixa{display:none}
:root.marca-leleu{--font:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--r:12px;--nl:#d87c14;--nl-2:#f4a64e;--nl-t:#a65c08;--nl-navy:#00234b;
  --nl-grad:linear-gradient(90deg,#d87c14 0%,#e8932f 55%,#f4a64e 100%);--fg:#00234b;--fg-2:#3d4f66;--muted:#767689;--line:#e6e9ed;--bg:#ffffff;--surface-2:#f7f8fa}
:root.marca-leleu[data-theme="dark"]{--fg:#f1f3f5;--fg-2:#b8bec7;--muted:#8a919b;--line:#2d3238;--bg:#111316;--nl-t:#f4a64e}
@media (prefers-color-scheme:dark){:root.marca-leleu:not([data-theme="light"]){--fg:#f1f3f5;--fg-2:#b8bec7;--muted:#8a919b;--line:#2d3238;--bg:#111316;--nl-t:#f4a64e}}
/* faixa do topo, como a do site dele: lema e botão do portal */
.marca-leleu .nl-faixa{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-inline:-16px;padding:6px 16px;background:var(--nl-grad);
  border-image:var(--nl-grad) fill 0 / 0 / 0 100vmax; /* a faixa vai de ponta a ponta da tela sem criar rolagem lateral */color:#fff;font-size:12.5px;font-weight:700;letter-spacing:.01em}
.marca-leleu .nl-faixa-btn{color:#fff;text-decoration:none;font-weight:700;padding:3px 12px;border-radius:48px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.55);white-space:nowrap}
.marca-leleu .nl-faixa-btn:hover{background:rgba(255,255,255,.3)}
/* cabeçalho: logo + título */
.marca-leleu .top{background:var(--surface)}
.marca-leleu .inicio{display:flex;align-items:center;gap:14px}
.marca-leleu .nl-logo.claro{display:block;height:46px;width:auto}
:root.marca-leleu[data-theme="dark"] .nl-logo.claro{display:none}:root.marca-leleu[data-theme="dark"] .nl-logo.escuro{display:block;height:46px;width:auto}
@media (prefers-color-scheme:dark){:root.marca-leleu:not([data-theme="light"]) .nl-logo.claro{display:none}:root.marca-leleu:not([data-theme="light"]) .nl-logo.escuro{display:block;height:46px;width:auto}}
.marca-leleu .inicio h1{font-size:15px;font-weight:700;letter-spacing:-.01em;margin:0;padding-left:14px;border-left:1px solid var(--line);color:var(--fg-2);white-space:nowrap}
.marca-leleu h1,.marca-leleu h2,.marca-leleu h3{color:var(--fg)}
/* abas e botões em pílula laranja, como as abas da «Trajetória» no site dele */
.marca-leleu .tabs{gap:6px;padding-block:4px 8px}
.marca-leleu .tab{border-radius:48px;border-bottom:0;padding:7px 16px}
.marca-leleu .tab:hover{color:var(--nl-t)}
.marca-leleu .tab[aria-selected="true"]{background:var(--nl-grad);color:#fff;box-shadow:0 4px 12px rgba(216,124,20,.3)}
.marca-leleu .seg{border-radius:48px}
.marca-leleu .seg button[aria-pressed="true"]{background:var(--nl);color:#fff}
.marca-leleu .btn{border-radius:48px}
.marca-leleu .pill{border-radius:48px}
.marca-leleu .inicio,.marca-leleu .inicio h1{color:var(--fg-2)}
/* rodapé: o azul-marinho da paleta dele com a faixa laranja no alto (texto branco sobre o laranja dele ficaria ilegível) */
.marca-leleu footer{position:relative;margin-inline:-16px;padding:27px 16px 28px;background:var(--nl-navy);color:#d7dde6;
  box-shadow:0 0 0 100vmax var(--nl-navy);clip-path:inset(0 -100vmax)} /* de ponta a ponta da tela */
.marca-leleu footer::before{content:"";position:absolute;top:0;left:-100vmax;right:-100vmax;height:5px;background:var(--nl-grad)}
.marca-leleu footer b{color:#fff}
.marca-leleu footer .glos{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15);color:#d7dde6}
.marca-leleu footer .glos summary,.marca-leleu footer .glos dt{color:#fff}
.marca-leleu .nl-lema{font-weight:700;color:var(--nl-2)}
.marca-leleu a.nl-portal{color:var(--nl-2);font-weight:600}
.marca-leleu footer .seg button{background:transparent;color:#d7dde6}
.marca-leleu footer .seg button[aria-pressed="true"]{background:var(--nl);color:#fff}
.marca-leleu .wrap{padding-bottom:0}
@media (max-width:640px){.marca-leleu .nl-logo.claro,.marca-leleu .nl-logo.escuro{height:34px!important}.marca-leleu .inicio h1{display:none}
  .marca-leleu .nl-faixa{font-size:11.5px;padding-block:5px}.marca-leleu .tab{padding:6px 10px}}

