:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#eaf0f6;background:#101923;font-synthesis:none;line-height:1.5;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:#a9b8c7;text-decoration:none}a:hover{color:#b6ef94}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #b6ef94;outline-offset:4px}header{height:88px;border-bottom:1px solid #29323d;display:flex;align-items:center;gap:40px;padding:0 max(5vw,24px);background:#111c27}.brand{display:flex;align-items:center;color:#fff;font-size:24px;font-weight:750;letter-spacing:-1px;gap:10px}.brand-icon{width:32px;height:32px;border-radius:9px;background:#b6ef94;color:#122526;text-align:center;font-size:23px}.year{font-weight:400;color:#b6ef94;margin-left:-8px}.edition{font-size:10px;letter-spacing:1.8px;color:#95a5b5}.edition span{padding:0 12px;color:#4c6271}.official-link{margin-left:auto;font-size:12px}main{max-width:1160px;margin:auto;padding:42px 32px 24px}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:34px;gap:24px}.eyebrow{display:flex;align-items:center;gap:8px;color:#b6ef94;font-size:10px;letter-spacing:1.8px;font-weight:700}.small-dot{height:6px;width:6px;border-radius:100%;background:#b6ef94}h1{font-size:38px;font-weight:650;letter-spacing:-1.5px;margin:9px 0 5px}p{margin:0;color:#94a6b6;font-size:13px}.modes{display:flex;background:#0b141d;border:1px solid #2a3642;padding:4px;border-radius:9px}.modes button{background:none;color:#95a7b8;border:0;padding:9px 16px;border-radius:6px;font-size:12px}.modes button.selected{background:#283744;color:#edf5f8}.modes button:hover{background:#253341}.workspace{border:1px solid #2b3743;border-radius:14px;background:#15212d;overflow:hidden}.tabs{display:flex;gap:28px;padding:0 28px;border-bottom:1px solid #2b3743}.tabs button{border:0;border-bottom:2px solid transparent;color:#94a7b8;background:none;padding:19px 0;font-size:14px}.tabs button.active{color:#c0efa5;border-color:#b6ef94}.tabs button:hover{color:#fff}.filters{display:flex;gap:14px;padding:24px 28px 8px}label{display:flex;flex-direction:column;gap:7px;color:#8fa3b7;font-size:11px}select{min-width:220px;max-width:100%;border:1px solid #364551;border-radius:7px;padding:10px 35px 10px 12px;color:#dbe5ec;background:#111c27;font-size:13px}select:disabled{opacity:.45}.section-heading{padding:24px 28px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px}h2{font-size:21px;margin:0 0 3px;letter-spacing:-.5px}.section-heading p span{padding:0 6px;color:#576d7f}.connection{display:flex;align-items:center;gap:7px;color:#9fcdb0;font-size:11px;white-space:nowrap}.connection i{background:#94ddb0;width:6px;height:6px;border-radius:100%}.warning{color:#f1c77e!important}.warning i{background:#f1c77e}.status-line{margin:0 28px 18px;padding:10px 0;font-size:11px;color:#a5b8c8;display:flex;justify-content:space-between;gap:10px;border-top:1px solid #253542}#countdown{color:#7d93a5;white-space:nowrap}.progress-panel{display:flex;align-items:center;gap:50px;background:#1a2b36;border:1px solid #344642;border-radius:9px;margin:0 28px 20px;padding:22px 25px}.label{display:block;font-size:9px;letter-spacing:1.5px;color:#a0b4c3;font-weight:600}.progress-panel strong{font-size:34px;font-weight:600;color:#b6ef94;letter-spacing:-1px;display:block;margin-top:5px}.progress-detail{flex:1;color:#afc2ce;font-size:11px}.track{height:6px;border-radius:8px;background:#30444c;overflow:hidden;margin:12px 0}.track div{height:100%;background:#b6ef94;border-radius:8px}.progress-detail small{font-size:10px;color:#8fa5b5}.candidates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 28px 20px}.candidate{border:1px solid #344753;background:#192b36;border-radius:10px;padding:24px}.candidate.c1{background:#1b263a;border-color:#354355}.candidate-top{display:flex;align-items:center;gap:10px}.avatar{width:44px;height:44px;background:#2d4949;color:#b6ef94;border-radius:50%;display:grid;place-items:center;font-size:15px;font-weight:600}.c1 .avatar{color:#b0c3ff;background:#303e59}.ballot{font-size:11px;color:#9db1bf;margin-left:auto}.elected{font-size:10px;padding:4px 8px;border-radius:5px;background:#b6ef94;color:#182722}.candidate h3{margin:19px 0 3px;font-size:21px;line-height:1.3;letter-spacing:-.4px}.candidate p{font-size:11px}.candidate-score{display:flex;align-items:baseline;gap:10px;margin-top:24px;flex-wrap:wrap}.candidate-score strong{font-size:43px;font-weight:650;letter-spacing:-1.8px;color:#b6ef94}.candidate-score span{font-size:10px;color:#99afbe}.c1 .candidate-score strong{color:#b0c3ff}.candidate-track{height:4px;background:#30454e;border-radius:6px;overflow:hidden;margin:11px 0 18px}.candidate-track div{height:100%;background:#b6ef94}.c1 .candidate-track div{background:#b0c3ff}.vote-count{font-size:11px;color:#94aabc}.vote-count strong{color:#e4eef3;font-size:15px;margin-right:6px}.difference{margin:0 28px 24px;border:1px solid #34414e;border-radius:8px;display:flex;align-items:center;justify-content:space-between;padding:16px 22px;gap:12px}.difference strong{display:block;margin-top:7px;font-size:23px;letter-spacing:-.5px}.difference small{font-size:11px;color:#8ca2b3;font-weight:400;letter-spacing:0}.difference>span{font-size:20px;color:#cad7df}.statistics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 28px 28px}.statistics article{padding:0 18px;border-left:1px solid #31404d}.statistics article:first-child{padding-left:0;border:0}.statistics span{font-size:11px;color:#9aafbf;display:block}.statistics strong{font-size:21px;font-weight:500;display:block;margin-top:5px}.statistics small{font-size:9px;color:#8198aa}.footnote{border-top:1px solid #293948;padding:18px 28px;display:flex;gap:12px;background:#121e29}.footnote>span{color:#9bb28e}.footnote p{font-size:10px;line-height:1.8}footer{display:flex;justify-content:space-between;gap:25px;margin:26px 0 0;color:#c5d1da}footer strong{font-size:11px;font-weight:500}footer p{font-size:10px;margin-top:4px}footer>a{font-size:10px;align-self:center}.demo-banner{background:#463621;color:#ffe0a1;text-align:center;padding:9px 20px;font-size:12px;font-weight:600;border-bottom:1px solid #665036}.waiting{text-align:center;padding:40px 24px 54px;min-height:370px;background:radial-gradient(ellipse at center,#1c3036 0%,transparent 65%)}.waiting .eyebrow{justify-content:center;margin-top:24px;color:#8da4b3}.waiting h3{font-size:24px;font-weight:600;margin:13px 0 11px;letter-spacing:-.6px}.waiting p{max-width:480px;margin:auto;line-height:1.9;font-size:12px}.waiting-meta{display:flex;justify-content:center;gap:24px;font-size:10px;color:#96b1ba;margin:24px 0}.demo-cta{padding:11px 16px;border:1px solid #4e625b;background:#22382f;color:#c5efb0;border-radius:7px;font-size:11px}.demo-cta span{padding-left:20px}.demo-cta:hover{background:#314c3f}.waiting-graphic{height:90px;width:120px;position:relative;margin:auto;display:flex;gap:7px;align-items:flex-end;justify-content:center}.waiting-graphic span{background:#30493f;border:1px solid #486251;width:16px;height:34px;border-radius:4px 4px 0 0}.waiting-graphic span:nth-child(2){height:50px}.waiting-graphic span:nth-child(3){height:67px}.waiting-graphic span:nth-child(4){height:83px}.waiting-graphic b{position:absolute;bottom:20px;left:32px;background:#b6ef94;color:#233c34;height:44px;width:44px;border-radius:50%;display:grid;place-items:center;font-size:25px;border:5px solid #1b2e34}button:active{transform:translateY(1px)}@media(max-width:760px){header{height:68px;padding:0 20px;gap:12px}.brand{font-size:21px}.edition{display:none}.official-link{font-size:10px}main{padding:27px 16px 22px}.intro{display:block;margin-bottom:25px}h1{font-size:33px}.intro p{font-size:11px}.modes{display:inline-flex;margin-top:20px}.modes button{padding:8px 14px}.tabs{padding:0 19px;gap:26px}.filters{padding:20px 18px 6px;gap:10px}label{width:50%}select{min-width:0;width:100%;font-size:12px;padding:10px 20px 10px 8px}.section-heading{padding:20px 18px 12px;align-items:flex-start;flex-wrap:wrap}h2{font-size:18px}.section-heading p{font-size:11px}.connection{font-size:10px}.status-line{margin:0 18px 18px;flex-wrap:wrap;font-size:10px}.progress-panel{margin:0 18px 16px;padding:17px;gap:20px}.progress-panel strong{font-size:27px}.label{font-size:8px}.progress-detail,.progress-detail small{font-size:9px}.candidates{margin:0 18px 16px;grid-template-columns:1fr;gap:12px}.candidate{padding:20px}.candidate h3{font-size:21px;margin-top:15px}.candidate-score{margin-top:17px}.candidate-score strong{font-size:41px}.difference{margin:0 18px 22px;padding:16px;align-items:flex-start;flex-direction:column}.difference>span{font-size:17px}.statistics{margin:0 18px 22px;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 0}.statistics article:nth-child(3){padding-left:0;border:0}.statistics strong{font-size:20px}.footnote{padding:16px 18px}.waiting{padding:32px 18px 38px;min-height:340px}.waiting h3{font-size:21px}.waiting-meta{gap:12px;font-size:8px}.waiting p{font-size:11px}footer{display:block}footer>a{display:inline-block;margin-top:12px}.demo-banner{font-size:10px;padding:8px 16px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}.map-panel{margin:0 28px 24px;padding:22px;background:#101c27;border:1px solid #30414f;border-radius:12px}.map-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.map-heading h2{margin-top:8px}.map-heading button{color:#b6ef94;background:transparent;border:1px solid #3c5350;border-radius:7px;padding:9px 13px;white-space:nowrap;font-size:12px}.map-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;align-items:center}.brazil-map{width:100%;max-height:360px;overflow:visible;margin-top:10px}.map-state{cursor:pointer;outline:none}.map-state path,.map-state circle{fill:#344555;stroke:#101c27;stroke-width:1.5;vector-effect:non-scaling-stroke}.map-state.blue path,.map-state.blue circle{fill:#2479e7}.map-state.red path,.map-state.red circle{fill:#df434d}.map-state:hover path,.map-state:focus-visible path,.map-state.chosen path{stroke:#fff;stroke-width:2.5;filter:brightness(1.2)}.map-state:focus-visible circle,.map-state:hover circle{stroke:#fff;stroke-width:2.5}.map-state text{fill:#fff;font-size:11px;font-weight:650;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.map-preview{min-height:130px;border-bottom:1px solid #30414f;padding-bottom:18px}.map-preview h3{margin:8px 0;font-size:24px;letter-spacing:-.6px}.map-preview p{font-size:13px;line-height:1.7}.map-legend{display:flex;flex-direction:column;gap:10px;margin:20px 0;font-size:13px}.map-legend span{display:flex;gap:9px;align-items:center}.map-legend i{display:block;width:12px;height:12px;border-radius:4px;background:#344555}.map-legend i.blue{background:#2479e7}.map-legend i.red{background:#df434d}.map-note{font-size:11px;line-height:1.8}.map-credit{display:inline-block;margin-top:15px;font-size:10px}.candidate.blue,.candidate.red,.candidate.neutral{background:#142333;border-color:#314858}.candidate.blue{border-top:3px solid #2479e7}.candidate.red{border-top:3px solid #df434d}.candidate.blue .avatar{background:#203d62;color:#89bfff}.candidate.red .avatar{background:#482e39;color:#ffa3aa}.candidate.blue .candidate-score strong{color:#89bfff}.candidate.red .candidate-score strong{color:#ffa3aa}.candidate.blue .candidate-track div{background:#2479e7}.candidate.red .candidate-track div{background:#df434d}.candidate.neutral .candidate-score strong{color:#dbe5ec}.candidate.neutral .candidate-track div{background:#8499ab}.waiting{min-height:0;padding:12px 24px 28px;background:none}.waiting-graphic,.waiting-meta{display:none}.waiting .eyebrow{margin-top:0}.waiting h3{font-size:21px}.waiting .demo-cta{margin-top:18px}@media(max-width:760px){.map-panel{margin:0 18px 20px;padding:16px}.map-heading{align-items:flex-start;gap:8px}.map-heading h2{font-size:18px}.map-heading p{font-size:11px}.map-heading .eyebrow{font-size:8px;letter-spacing:1px}.map-heading button{font-size:10px;padding:7px}.map-layout{grid-template-columns:1fr;gap:8px}.brazil-map{max-height:290px}.map-preview{min-height:0;padding-bottom:12px}.map-preview h3{font-size:20px}.map-preview p{font-size:12px}.map-legend{flex-direction:row;flex-wrap:wrap;gap:10px 15px;font-size:11px;margin:14px 0}.map-note{font-size:10px}.waiting{padding:10px 18px 26px}}
