:root{--bg:#12141b;--panel:#1a1d27;--line:#2a2e3b;--ink:#e9e9ef;--dim:#8d93a3;--esq:#d8455f;--cen:#eab13a;--dir:#3a7bd5;--grey:#6f7686;--cen-text:var(--cen);--grn:#4fb37f;--trough:#0f1117;--bg-accent:#1c2130;--shadow:#0009}:root[data-theme=light]{--bg:#f6f5f2;--panel:#fff;--line:#e3e1da;--ink:#1b1c22;--dim:#686c76;--cen-text:#8a6116;--grn:#1f8a53;--trough:#eef0f4;--bg-accent:#eceef7;--shadow:#1e1e2829}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(ellipse at 25% -10%, var(--bg-accent) 0%, transparent 60%), var(--bg);color:var(--ink);padding:40px 24px 70px;font-family:Inter,sans-serif;transition:background-color .2s,color .2s}.wrap{max-width:1200px;margin:0 auto}.tabs-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;display:flex}.tabs{gap:4px;display:flex}.tab{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);border:1px solid #0000;border-bottom-width:2px;border-radius:9px 9px 0 0;padding:9px 16px;font-family:IBM Plex Mono,monospace;font-size:11.5px;text-decoration:none;transition:all .15s}.tab:hover{color:var(--ink)}.tab.active{color:var(--ink);background:var(--panel);border-color:var(--line);border-bottom-color:var(--cen)}.theme-toggle{color:var(--dim);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:15px;line-height:1;transition:all .15s;display:flex}.theme-toggle:hover{color:var(--ink);border-color:var(--dim)}.theme-toggle:focus-visible{outline:2px solid var(--grn);outline-offset:1px}header{border-bottom:1px solid var(--line);margin-bottom:26px;padding-bottom:26px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin-bottom:12px;font-family:IBM Plex Mono,monospace;font-size:11.5px}.eyebrow span{color:var(--cen-text)}h1{letter-spacing:-.01em;margin:0 0 12px;font-family:Fraunces,serif;font-size:clamp(30px,4.3vw,50px);font-weight:600;line-height:1.04}h1 em{background:linear-gradient(90deg, var(--esq), var(--cen) 50%, var(--dir));color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic;font-weight:500}.sub{max-width:640px;color:var(--dim);font-size:14.5px;line-height:1.6}.tally{background:var(--panel);border:1px solid var(--line);border-radius:18px;margin-bottom:22px;padding:22px 24px 24px}.tally-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:20px;display:flex}.tally-head h2{letter-spacing:-.01em;margin:0;font-family:Fraunces,serif;font-size:19px;font-weight:600}.tally-head .note{color:var(--dim);letter-spacing:.09em;text-transform:uppercase;font-family:IBM Plex Mono,monospace;font-size:10px}.plenary-keys{margin-bottom:7px;display:flex}.pk{color:var(--dim);white-space:nowrap;font-size:11.5px;overflow:hidden}.pk b{font-family:IBM Plex Mono,monospace;font-size:12.5px;font-weight:600}.plenary-wrap{padding:9px 0 24px;position:relative}.plenary{background:var(--trough);border-radius:6px;height:34px;display:flex;overflow:hidden}.seg-blk{min-width:0;display:flex}.sg{min-width:0;height:100%}.sg.mantido{background-image:repeating-linear-gradient(45deg,#0000 0 4px,#00000057 4px 7px)}.majority{pointer-events:none;width:0;position:absolute;top:0;bottom:0}.majority .stem{background:var(--ink);opacity:.8;width:2px;position:absolute;top:4px;bottom:18px;left:-1px}.majority .cap{border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0;position:absolute;left:-5px}.majority .cap.top{border-top:6px solid var(--ink);top:-2px}.majority .cap.bot{border-bottom:6px solid var(--ink);bottom:16px}.majority .mlab{color:var(--ink);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;font-family:IBM Plex Mono,monospace;font-size:9.5px;position:absolute;bottom:0;left:0;transform:translate(-50%)}.rows{border-top:1px solid var(--line);margin-top:4px;padding-top:18px}.trow{grid-template-columns:82px minmax(0,1fr) 30px;align-items:center;gap:12px;margin-bottom:9px;display:grid}.trow:last-child{margin-bottom:0}.rname{align-items:center;gap:7px;font-size:12.5px;display:flex}.rname .pip{border-radius:50%;flex:none;width:9px;height:9px}.track{background:var(--trough);border-radius:4px;height:19px;display:flex;overflow:hidden}.tot{text-align:right;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600}.class-key{border-top:1px solid var(--line);flex-wrap:wrap;gap:14px;margin-top:16px;padding-top:14px;display:flex}.ck{color:var(--dim);align-items:center;gap:7px;font-size:11.5px;display:flex}.ck .box{background:#5b6272;border-radius:3px;flex:none;width:17px;height:11px}.ck .box.mantido{background-image:repeating-linear-gradient(45deg,#0000 0 4px,#00000057 4px 7px)}.candlist{border-top:1px solid var(--line);margin-top:4px}.candrow{border-bottom:1px solid var(--line);grid-template-columns:22px minmax(0,1fr) 62px;align-items:center;gap:14px;padding:13px 0;display:grid}.candrow:last-child{border-bottom:none}.candrank{color:var(--dim);text-align:right;font-family:IBM Plex Mono,monospace;font-size:12px}.candmain{min-width:0}.candname-row{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:7px;display:flex}.candname-row .pip{border-radius:50%;flex:none;align-self:center;width:9px;height:9px}.candname{font-family:Fraunces,serif;font-size:15px;font-weight:600}.candparty{color:var(--dim);font-family:IBM Plex Mono,monospace;font-size:11px}.candnote{color:var(--cen-text);font-size:11px}.candbar-track{background:var(--trough);border-radius:4px;height:8px;margin-bottom:7px;overflow:hidden}.candbar-fill{border-radius:4px;height:100%}.candbreakdown{color:var(--dim);font-family:IBM Plex Mono,monospace;font-size:10.5px;line-height:1.6}.candpct{text-align:right;font-family:IBM Plex Mono,monospace;font-size:16px;font-weight:600}.layout{grid-template-columns:minmax(0,1fr) 296px;align-items:start;gap:32px;display:grid}.mapbox{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:18px;position:sticky;top:24px}svg{width:100%;height:auto;display:block}.uf{stroke:var(--panel);stroke-width:1.1px;transition:filter .15s}.uf:hover{filter:brightness(1.32)saturate(1.12)}.lbl{fill:#fff;paint-order:stroke;stroke:#0009;stroke-width:2.6px;stroke-linejoin:round;pointer-events:none;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:600}.lbl.dark{fill:#22252f;stroke:#ffffff8c}.lbl.out{fill:var(--ink);stroke:none;font-size:12px}.leader{stroke:var(--dim);stroke-width:.8px;opacity:.55}.loading{text-align:center;color:var(--dim);padding:60px 0;font-size:13px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;margin-bottom:16px;padding:18px}.card h3{letter-spacing:.14em;text-transform:uppercase;color:var(--dim);justify-content:space-between;align-items:center;margin:0 0 13px;font-family:IBM Plex Mono,monospace;font-size:10.5px;display:flex}.lrow{align-items:center;gap:10px;margin-bottom:8px;font-size:13.5px;display:flex}.sw{border-radius:4px;flex:none;width:16px;height:16px}.split-demo{background:linear-gradient(90deg, var(--esq) 0 50%, var(--dir) 50% 100%);border-radius:4px;flex:none;width:34px;height:16px}.ramp{gap:4px;margin-bottom:10px;display:flex}.ramp .st{border-radius:3px;flex:1;height:14px}.ramp-lbl{color:var(--dim);letter-spacing:.04em;justify-content:space-between;margin-bottom:14px;font-family:IBM Plex Mono,monospace;font-size:9.5px;display:flex}.reset{letter-spacing:0;text-transform:none;color:var(--dim);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:6px;padding:3px 8px;font-family:Inter,sans-serif;font-size:10.5px;transition:all .15s}.reset:hover{color:var(--ink);border-color:var(--dim)}.reset:disabled{opacity:.35;cursor:default}.phint{color:var(--dim);margin:-4px 0 13px;font-size:11.5px;line-height:1.5}.prow{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.pname{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.pname.moved{color:var(--grn);font-weight:500}.seg{flex:none;gap:3px;display:flex}.seg button{border:1px solid var(--line);width:26px;height:22px;color:var(--dim);cursor:pointer;background:0 0;border-radius:5px;padding:0;font-family:IBM Plex Mono,monospace;font-size:10.5px;font-weight:600;transition:all .13s}.seg button:hover{border-color:var(--dim);color:var(--ink)}.seg button[data-e=Esquerda][aria-pressed=true]{background:var(--esq);color:#fff;border-color:#0000}.seg button[data-e=Centro][aria-pressed=true]{background:var(--cen);color:#12141b;border-color:#0000}.seg button[data-e=Direita][aria-pressed=true]{background:var(--dir);color:#fff;border-color:#0000}.seg button:focus-visible{outline:2px solid var(--grn);outline-offset:1px}.tooltip{pointer-events:none;background:var(--panel);border:1px solid var(--line);width:272px;box-shadow:0 14px 32px var(--shadow);opacity:0;z-index:50;border-radius:11px;padding:13px 15px;font-size:12.5px;line-height:1.45;transition:opacity .12s,transform .12s;position:fixed;transform:translateY(4px)}.tooltip.show{opacity:1;transform:translateY(0)}.tooltip .nm{color:var(--ink);margin-bottom:2px;font-family:Fraunces,serif;font-size:15.5px;font-weight:600}.tooltip .src{color:var(--dim);letter-spacing:.05em;text-transform:uppercase;margin-bottom:11px;font-family:IBM Plex Mono,monospace;font-size:10px}.tv{align-items:flex-start;gap:9px;margin-bottom:8px;display:flex}.tv.minor{opacity:.62}.rank{color:var(--dim);text-align:right;flex:none;width:12px;margin-top:3px;font-family:IBM Plex Mono,monospace;font-size:10px}.dot{border-radius:50%;flex:none;width:9px;height:9px;margin-top:4.5px}.tv .body{flex:1;min-width:0}.tv b{color:var(--ink);font-weight:600}.tag{color:var(--dim);font-family:IBM Plex Mono,monospace;font-size:10px}.divider{background:var(--line);height:1px;margin:4px 0 9px}.vagas-note{color:var(--dim);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-family:IBM Plex Mono,monospace;font-size:9.5px}footer{border-top:1px solid var(--line);color:var(--dim);margin-top:28px;padding-top:18px;font-size:11.5px;line-height:1.7}footer b{color:var(--ink)}@media (max-width:900px){.layout{grid-template-columns:1fr}.mapbox{position:static}}@media (max-width:620px){.trow{grid-template-columns:66px minmax(0,1fr) 28px;gap:9px}.pk{font-size:10.5px}}
