:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#f2f7f5;background:#080b0b;font-synthesis:none;--panel:#121818;--border:#293231;--muted:#91a29e;--accent:#78f0a4;--accent-soft:#163c2c}
*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 80% 4%,#153026 0%,transparent 37%),radial-gradient(ellipse at 5% 40%,#15211d 0%,transparent 30%),#080b0b}button,select{font:inherit}a{color:var(--accent)}.wrap{max-width:1480px;margin:auto;padding:0 30px 36px}
header{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #28312d}.brand{font-size:18px;font-weight:850;letter-spacing:-.5px;display:flex;align-items:center;gap:10px}.edition{color:var(--accent)}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 7px #78f0a412}.head-right{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.tag,.subtag{border:1px solid #48694f;background:#1a2b20;color:#b9f6c8;border-radius:999px;padding:9px 13px;font-weight:800;font-size:11px;letter-spacing:.55px;white-space:nowrap}.health{font-size:12px;color:#b3c5bc}
.hero{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,.68fr);gap:18px;margin:26px 0 18px}.hero>div:first-child,.timebox,.stats article,.panel{border:1px solid var(--border);background:linear-gradient(145deg,#141b19 0%,#101614 100%);border-radius:19px}.hero>div:first-child{padding:37px 40px;position:relative;overflow:hidden;background:radial-gradient(circle at 95% 10%,#1c4e37 0%,transparent 38%),linear-gradient(140deg,#151f1a,#101513)}.eyebrow{color:var(--accent);font-size:11px;letter-spacing:2px;font-weight:850;margin:0 0 14px;text-transform:uppercase}h1{font-size:clamp(39px,4.8vw,69px);line-height:1.03;letter-spacing:-2.8px;margin:0 0 18px;font-weight:850}h1 em{font-style:normal;color:var(--accent)}.hero p:not(.eyebrow){max-width:720px;color:#aec0b8;font-size:15px;line-height:1.65;margin:0 0 12px}.hero label{display:inline-block;margin-top:14px;margin-right:10px;color:#bdccc4;font-size:13px;font-weight:700}#round-select{background:#182820;border:1px solid #365542;color:#e6fff0;border-radius:10px;padding:11px 38px 11px 13px;min-height:42px;cursor:pointer;max-width:100%}#round-select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.timebox{padding:30px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.timebox:before{content:"";position:absolute;width:210px;height:210px;right:-110px;top:-100px;border-radius:50%;background:#2f8e5440;filter:blur(24px)}.small{font-size:11px;font-weight:850;color:#98b1a2;letter-spacing:1.6px}.timebox strong{font-size:clamp(36px,4vw,55px);margin:15px 0 12px;letter-spacing:-2px;line-height:1}.muted{color:var(--muted);font-size:12px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.stats article{min-height:154px;padding:23px 24px;position:relative;overflow:hidden}.stats article:after{content:"";position:absolute;right:-26px;bottom:-26px;width:98px;height:98px;background:radial-gradient(circle,#78f0a411,transparent 70%)}.stats label{display:block;color:#a4b6ab;font-size:13px;margin-bottom:15px}.stats strong{display:block;font-size:clamp(25px,2.8vw,37px);letter-spacing:-1.3px;font-weight:800;line-height:1.1;margin-bottom:10px}.stats small{color:#8c9f94;font-size:12px}
.columns{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,.85fr);gap:18px;align-items:start}.panel{padding:25px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:21px;margin-bottom:14px;border-bottom:1px solid var(--border)}.panel-head .eyebrow{margin-bottom:8px}h2{font-size:24px;letter-spacing:-.9px;margin:0}h3{font-size:16px;letter-spacing:-.4px;margin:0 0 19px}.candidates{display:grid;gap:12px}.candidate{background:#19221e;border:1px solid #2d3931;border-radius:14px;padding:18px;transition:border-color .15s,transform .15s}.candidate:hover{border-color:#4c8862;transform:translateY(-1px)}.cand-top{display:flex;align-items:center;justify-content:space-between;gap:14px}.person{display:flex;align-items:center;gap:13px;min-width:0}.avatar{display:grid;place-items:center;border-radius:12px;width:48px;height:48px;flex:none;background:#234a35;border:1px solid #386f4b;color:#9bf7bd;font-size:17px;font-weight:850}.person strong{display:block;overflow-wrap:anywhere;font-size:15px;line-height:1.25}.person small{display:block;color:#92aaa0;font-size:12px;margin-top:5px}.votes{text-align:right;white-space:nowrap}.votes strong{font-size:22px;letter-spacing:-.7px}.votes small{display:block;color:#9aac9f;font-size:12px;margin-top:5px}.bar{height:8px;margin-top:16px;background:#2b3530;border-radius:30px;overflow:hidden}.bar span{display:block;height:100%;border-radius:30px;background:linear-gradient(90deg,#2eb56e,#94fcb7);transition:width .3s}.side{display:flex;flex-direction:column;gap:18px}.status-line{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid #29342d;font-size:12px;color:#9daea4}.status-line b{color:#e2f5e8;text-align:right}.history{max-height:320px;overflow-y:auto}.history-item{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #29342d;font-size:12px}.info p{color:#b1c2b7;font-size:13px;line-height:1.75}.info a{color:var(--accent);font-size:12px;text-decoration:none}.error{margin-top:16px;background:#402323;color:#ffbdbd;padding:14px;border-radius:10px;overflow-wrap:anywhere;font-size:12px;line-height:1.5}.empty{color:#9aafa1;text-align:center;padding:60px 10px;font-size:14px}footer{text-align:center;font-size:11px;color:#85998d;padding:34px 0}
@media(max-width:1100px){.columns{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.wrap{padding:0 16px 24px}header{padding:15px 0;flex-wrap:wrap}.hero{grid-template-columns:1fr}.hero>div:first-child{padding:28px 23px}.timebox{padding:24px}h1{letter-spacing:-1.9px}}@media(max-width:480px){.stats{gap:10px}.stats article{padding:17px;min-height:135px}.stats strong{font-size:25px}.panel{padding:18px}.brand{font-size:15px}.head-right{gap:8px}.tag{font-size:10px}.cand-top{align-items:flex-start}.votes strong{font-size:18px}.person strong{font-size:13px}#round-select{display:block;width:100%;margin-top:8px}}
/* Official candidate portraits: photo with safe number fallback */
.avatar{width:62px;height:62px;min-width:62px;overflow:hidden;border-radius:16px;background:#243b2e;box-shadow:0 0 0 1px #4b6654}
.candidate-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%;border-radius:inherit;background:#1a2720}
.candidate .person{align-items:center;gap:16px}
@media(max-width:480px){.avatar{width:52px;height:52px;min-width:52px;border-radius:13px}}

/* Observed election history charts */
.trend-panel{margin-bottom:18px}.trend-note,.trend-summary{color:#99afa2;font-size:12px;line-height:1.65}
.trend-note{margin:-2px 0 22px}.trend-summary{margin:18px 0 0}
.trend-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:28px}.trend-layout>div{min-width:0}
.trend-layout h3{margin:0 0 14px;font-size:14px;color:#d3e6d8}
.trend-chart{height:240px;background:#0e1713;border:1px solid #304239;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.trend-chart svg{display:block;width:100%;height:100%}.trend-empty{padding:25px;color:#a3b7aa;text-align:center;font-size:13px;line-height:1.6}
.trend-legend{min-height:35px;display:flex;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.trend-legend-item{display:inline-flex;gap:7px;align-items:center;font-size:12px;color:#c6d8cb}
.trend-swatch{display:inline-block;width:9px;height:9px;border-radius:50%}
@media(max-width:900px){.trend-layout{grid-template-columns:1fr}}

/* Editorial news feed sidebar */
.news-panel{padding:23px}.news-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:13px}.news-heading h3{margin:0;font-size:18px}.news-heading .eyebrow{margin-bottom:7px;font-size:10px}.news-live{font-size:10px;color:#a9eac0;background:#1a3928;border:1px solid #2c553a;border-radius:30px;padding:6px 9px;white-space:nowrap}.news-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#79e8a6;margin-right:5px}.news-feed{max-height:650px;overflow-y:auto;scrollbar-color:#365a42 transparent;scrollbar-width:thin}.news-item{display:flex;gap:11px;padding:16px 1px;border-bottom:1px solid #2c3831;text-decoration:none;color:inherit;transition:background .15s}.news-item:last-child{border-bottom:0}.news-item:hover .news-body strong{color:#89f5b0}.news-icon{width:31px;height:31px;flex:0 0 31px;border:1px solid #40573f;border-radius:9px;background:#21382a;color:#8ff7b0;display:grid;place-items:center;font-size:16px}.news-body{min-width:0;display:grid;gap:9px}.news-body strong{font-size:12px;font-weight:650;line-height:1.45;color:#e8f3eb;transition:color .15s}.news-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:10px;color:#92a89b}.news-meta span{color:#a5e5bd;font-weight:650}.news-footer{padding-top:15px;display:flex;justify-content:space-between;gap:9px;align-items:center;font-size:10px;color:#839a8a}.news-footer a{text-decoration:none;color:#b4eec7;white-space:nowrap}.news-state{font-size:12px;color:#9fb0a4;padding:24px 2px;text-align:center}

/* Ranked editorial Top 10 */
.news-rank{font-size:13px;font-weight:850;font-variant-numeric:tabular-nums;color:#8cf2ad;letter-spacing:-.5px;background:#182f22;border:1px solid #365744;border-radius:9px;width:34px;height:34px;flex-basis:34px}
.news-item:nth-child(-n+3) .news-rank{color:#0b2115;background:#88ecae;border-color:#a9f2c5}
.news-item{align-items:flex-start}.news-feed{max-height:720px}

/* Live activity indicator for the news feed */
.news-live{display:inline-flex;align-items:center;gap:8px;position:relative;overflow:visible;font-size:11px;font-weight:750;letter-spacing:.45px;color:#d9ffe7;background:#163725;border:1px solid #2f6a45;border-radius:999px;padding:8px 12px;white-space:nowrap}
.news-pulse{display:inline-block;position:relative;flex:none;width:9px;height:9px;margin-right:0;border-radius:50%;background:#5cff98;box-shadow:0 0 10px rgba(92,255,152,.65);animation:newsPulse 1.2s ease-in-out infinite}
.news-pulse::after{content:"";position:absolute;inset:-5px;border:1px solid rgba(92,255,152,.55);border-radius:50%;animation:newsPulseRing 1.2s ease-out infinite}
@keyframes newsPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}
@keyframes newsPulseRing{0%{transform:scale(.65);opacity:.9}100%{transform:scale(1.7);opacity:0}}
@media(prefers-reduced-motion:reduce){.news-pulse,.news-pulse::after{animation:none}}

/* Two rigorously attributed poll snapshots, separate from actual vote totals */
[hidden]{display:none!important}
.polls-panel{margin-bottom:18px}.polls-description,.polls-disclaimer{color:#9eafa4;font-size:12px;line-height:1.65}
.polls-description{margin:0 0 20px}.polls-disclaimer{margin:19px 0 0}
.polls-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.poll-card{background:#17201b;border:1px solid #354239;border-radius:15px;padding:22px}
.poll-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}
.poll-top strong{font-size:16px}.poll-top>span{color:#a0b2a5;font-size:11px;text-align:right}
.poll-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:#dae5dd;margin:13px 0 7px}
.poll-row b{font-size:16px;color:#edf4ef;font-variant-numeric:tabular-nums}
.poll-other{font-size:12px}.poll-track{background:#2d3731;border-radius:20px;height:10px;overflow:hidden}
.poll-track>span{height:100%;display:block;border-radius:20px}
.poll-meta{font-size:11px;line-height:1.65;color:#99ab9e;margin:20px 0 8px}
.poll-card>a{font-size:12px;text-decoration:none;color:#8bf0ab}
@media(max-width:800px){.polls-grid{grid-template-columns:1fr}}

/* Presidential second-round voting countdown */
[hidden]{display:none!important}
.election-countdown{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:18px;background:radial-gradient(circle at 90% 10%,#1e5334 0%,transparent 36%),linear-gradient(120deg,#12231a,#111814)!important;border-color:#355743!important}
.countdown-info h2{font-size:clamp(20px,2.4vw,28px);margin:0 0 9px;letter-spacing:-.7px}
.countdown-info .eyebrow{margin-bottom:12px}
.countdown-info p:last-child{margin:0;font-size:12px;color:#a4bcae;line-height:1.6}
.countdown-units{display:grid;grid-template-columns:repeat(4,minmax(65px,1fr));gap:9px;min-width:min(490px,100%)}
.countdown-units>div{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:92px;border:1px solid #375c45;border-radius:13px;background:#152b1d;padding:12px 6px}
.countdown-units strong{font-size:clamp(24px,3vw,39px);line-height:1.15;color:#89f4b2;font-variant-numeric:tabular-nums;letter-spacing:-1px}
.countdown-units span{font-size:10px;color:#b3c8b9;margin-top:9px;text-transform:uppercase;letter-spacing:1px}
.countdown-finished .countdown-units{opacity:.55}
@media(max-width:820px){.election-countdown{flex-direction:column;align-items:stretch}.countdown-units{min-width:0}}
@media(max-width:420px){.countdown-units{gap:6px;grid-template-columns:repeat(4,minmax(0,1fr))}.countdown-units>div{padding:12px 3px}.countdown-units strong{font-size:24px}.countdown-units span{font-size:9px;letter-spacing:0}}

/* Election-day phase transitions: informational clock versus observed TSE counting */
.election-countdown[data-phase="voting"]{border-color:#5f7348!important;background:linear-gradient(120deg,#182418,#222719)!important}
.election-countdown[data-phase="awaiting"]{border-color:#5b5443!important;background:linear-gradient(120deg,#1d211a,#24231c)!important}
.election-countdown[data-phase="counting"]{border-color:#388453!important;background:linear-gradient(120deg,#132d20,#102018)!important}
.election-countdown[data-phase="counting"] .eyebrow{color:#91f2b2}
.election-countdown[data-phase="voting"] .eyebrow{color:#d8eb96}
.election-countdown[data-phase="awaiting"] .eyebrow{color:#e7d09b}

/* ApuraçãoAgora official blue + green brand identity */
:root{--accent:#00E676;--accent-soft:#103b34;--border:#214264;--panel:#0d1a2d;--muted:#a9bdce}
body{background:radial-gradient(ellipse at 86% 2%,#113759 0%,transparent 37%),radial-gradient(ellipse at 5% 45%,#102a44 0%,transparent 32%),#061322}
.brand-logo{display:inline-flex;align-items:center;min-width:0;text-decoration:none}
.brand-logo img{display:block;width:clamp(175px,19vw,238px);height:auto;aspect-ratio:1210/360;border-radius:9px}
.hero>div:first-child{background:radial-gradient(circle at 95% 5%,#134b48 0%,transparent 38%),linear-gradient(145deg,#0e2948,#0b1b2b)}
.hero>div:first-child,.timebox,.stats article,.panel{border-color:#294b63;background-color:#0d1d31}
.eyebrow,h1 em,.edition{color:#00E676}
.tag,.subtag,.news-live{background:#103340;border-color:#285f5a;color:#acffd0}
.candidate{background:#10283a;border-color:#2a4858}.candidate:hover{border-color:#00E676}
.avatar,.news-icon{background:#0d3150;border-color:#2b5d72}
.bar span{background:linear-gradient(90deg,#00a4a6,#00E676)}
.election-countdown{background:radial-gradient(circle at 92% 0%,#0c5b4a 0%,transparent 38%),linear-gradient(120deg,#0e2b4e,#0c1b32)!important;border-color:#2b6b67!important}
.countdown-units>div{background:#103149;border-color:#236d64}.countdown-units strong{color:#00E676}
.poll-card{background:#0c283c;border-color:#275063}
.news-rank{background:#0d354b;border-color:#235b6b;color:#00E676}
.news-item:nth-child(-n+3) .news-rank{background:#00E676;border-color:#00E676;color:#06223a}
@media(max-width:510px){.brand-logo img{width:190px}}

/* Transparent ApuraçãoAgora brand mark in header */
header .brand-logo{display:inline-flex;align-items:center;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;text-decoration:none;min-width:0}
header .brand-logo img{display:block;width:clamp(185px,19vw,245px);height:auto;aspect-ratio:1210/360;max-width:100%;background:transparent!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
@media(max-width:510px){header .brand-logo img{width:195px}}

/* Featured election countdown — clear hierarchy and stronger presence */
.election-countdown{
 position:relative;isolation:isolate;overflow:hidden;
 padding:clamp(26px,3vw,42px)!important;min-height:208px;
 border:1px solid #168975!important;border-radius:23px!important;
 background:radial-gradient(ellipse at 84% -20%,rgba(0,230,118,.19),transparent 52%),linear-gradient(118deg,#092344 0%,#103c4b 52%,#073e32 100%)!important;
 box-shadow:0 0 0 1px rgba(0,230,118,.11),0 16px 48px rgba(0,0,0,.22),inset 0 1px 0 rgba(124,255,195,.12);
 gap:clamp(22px,3vw,52px);
}
.election-countdown::before{
 content:"";position:absolute;inset:0 0 auto;height:3px;
 background:linear-gradient(90deg,transparent,#00E676 32%,#6fffc3 65%,transparent);
 opacity:.85;pointer-events:none
}
.election-countdown .countdown-info{flex:1 1 260px;min-width:0}
.election-countdown .countdown-info .eyebrow{font-size:12px;line-height:1.5;letter-spacing:1.6px;margin-bottom:12px}
.election-countdown .countdown-info h2{font-size:clamp(24px,2.5vw,36px);letter-spacing:-1.1px;line-height:1.12;margin-bottom:13px}
.election-countdown .countdown-info p:last-child{font-size:13px;color:#c1d9d8;max-width:350px}
.election-countdown .countdown-units{
 flex:1.65 1 520px;min-width:0;max-width:730px;
 grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,1vw,14px)
}
.election-countdown .countdown-units>div{
 min-height:122px;background:linear-gradient(160deg,rgba(11,45,70,.96),rgba(10,44,55,.9));
 border:1px solid #287c79;border-radius:16px;
 box-shadow:inset 0 1px 0 rgba(180,255,232,.08),0 6px 18px rgba(1,12,23,.14)
}
.election-countdown .countdown-units strong{
 font-size:clamp(32px,3.5vw,55px);font-weight:850;letter-spacing:-1.8px;
 color:#00F58C;text-shadow:0 0 22px rgba(0,230,118,.19)
}
.election-countdown .countdown-units span{font-size:11px;letter-spacing:1.25px;color:#c0d8d9;font-weight:650}
.election-countdown[data-phase="voting"],.election-countdown[data-phase="awaiting"],.election-countdown[data-phase="counting"]{
 min-height:150px
}
@media(max-width:920px){
 .election-countdown{flex-direction:column;align-items:stretch;padding:25px!important;gap:21px}
 .election-countdown .countdown-info,.election-countdown .countdown-units{flex:none;width:100%;max-width:none}
 .election-countdown .countdown-units>div{min-height:104px}
}
@media(max-width:480px){
 .election-countdown{padding:20px 14px!important;border-radius:17px!important}
 .election-countdown .countdown-info h2{font-size:26px}
 .election-countdown .countdown-units{gap:7px}
 .election-countdown .countdown-units>div{min-height:89px;border-radius:11px;padding:12px 2px}
 .election-countdown .countdown-units strong{font-size:clamp(27px,7vw,37px);letter-spacing:-1px}
 .election-countdown .countdown-units span{font-size:9px;letter-spacing:.3px}
}

/* Full-width election timer: transparent numerals, no individual digit cards */
.election-countdown.countdown-full{display:block;min-height:0;padding:clamp(26px,3vw,42px)!important;background:radial-gradient(circle at 78% -10%,rgba(0,230,118,.12),transparent 48%),linear-gradient(120deg,#08254b,#0a2837 62%,#103b32)!important;border:1px solid rgba(0,230,118,.35)!important}
.countdown-full .countdown-full-head{margin-bottom:clamp(20px,3vw,36px)}
.countdown-full .countdown-full-head h2{font-size:clamp(24px,3vw,38px);margin:0 0 8px}
.countdown-full .countdown-full-head p:last-child{max-width:none;color:#bcd5df}
.countdown-full .countdown-full-clock{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(4px,1vw,16px);width:100%;max-width:none;min-width:0}
.countdown-full .countdown-full-clock .countdown-block{min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;min-width:0}
.countdown-full .countdown-full-clock .countdown-block strong{font-family:Inter,ui-sans-serif,system-ui,sans-serif;display:block;font-size:clamp(45px,9vw,148px);font-weight:900;letter-spacing:-.075em;line-height:.9;color:#00E676;text-shadow:0 0 32px rgba(0,230,118,.13);font-variant-numeric:tabular-nums}
.countdown-full .countdown-full-clock .countdown-block span{margin-top:15px;font-size:11px;font-weight:800;letter-spacing:2px;color:#b3c8c9;text-transform:uppercase}
.countdown-full .countdown-separator{align-self:center;margin-top:-20px;font-size:clamp(34px,5vw,82px);font-weight:900;color:rgba(0,230,118,.25);line-height:1}
@media(max-width:900px){.countdown-full .countdown-full-clock .countdown-block strong{font-size:clamp(38px,9.4vw,85px)}.countdown-full .countdown-separator{font-size:clamp(28px,5vw,54px)}}
@media(max-width:600px){.election-countdown.countdown-full{padding:22px 12px!important}.countdown-full .countdown-full-head{padding:0 7px}.countdown-full .countdown-full-clock{gap:2px}.countdown-full .countdown-full-clock .countdown-block strong{font-size:clamp(26px,9.4vw,54px);letter-spacing:-.07em}.countdown-full .countdown-separator{font-size:clamp(18px,4vw,32px);margin-top:-14px}.countdown-full .countdown-full-clock .countdown-block span{font-size:8px;letter-spacing:.45px;margin-top:9px}}

/* Legal footer and accessible static policy pages */
.site-footer{border-top:1px solid #285169;margin-top:34px;padding:27px 10px 16px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
.site-footer .footer-source{font-size:11px;color:#9db4c6}
.site-footer .footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px}
.site-footer .footer-links a{font-size:12px;font-weight:650;color:#9cfac6;text-decoration:none}
.site-footer .footer-links a:hover{text-decoration:underline}
.site-footer .footer-company{font-size:11px;color:#90a5b6;line-height:1.65}
.legal-header{padding:22px 0;border-bottom:1px solid #294b63;display:flex;align-items:center;justify-content:space-between;gap:16px}
.legal-header .brand-logo img{max-width:220px}
.legal-header>a:last-child{color:#9cfac6;text-decoration:none;font-weight:650;font-size:13px}
.legal-container{max-width:850px;margin:38px auto 60px;padding:0 20px}
.legal-container h1{font-size:clamp(32px,4vw,48px);line-height:1.1;letter-spacing:-1.5px}
.legal-container h2{font-size:21px;margin:34px 0 12px;color:#d5f8e6}
.legal-container p,.legal-container li{font-size:15px;line-height:1.8;color:#b7c8d4}
.legal-container ul{padding-left:22px}.legal-container .legal-lead{color:#d2e3ee;font-size:16px}
.legal-container a{color:#87edb2}.legal-container .legal-note{border-left:3px solid #00e676;padding:12px 16px;background:#102b40;border-radius:0 8px 8px 0}
@media(max-width:600px){.legal-header{flex-wrap:wrap}.legal-container{margin:28px auto 42px}}

/* Unified Inter typography, served using Google Fonts with display=swap */
html,body,button,input,select,textarea{font-family:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}

/* Brazil UF map */
.uf-panel{margin:18px 0;padding:clamp(22px,3vw,36px)}
.uf-intro{color:#abc3cf;font-size:14px;max-width:860px;line-height:1.6}
.uf-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);gap:28px;align-items:start;margin-top:20px}
.uf-map-wrap{min-width:0}.uf-map-wrap svg{display:block;width:100%;height:auto;max-height:620px}
.uf-state{stroke:#07182b;stroke-width:1.4;fill:#344b5e;cursor:pointer;transition:fill .2s,stroke .2s,filter .2s;outline:none}
.uf-state:hover,.uf-state:focus-visible{stroke:#fff;stroke-width:2.5;filter:brightness(1.22)}
.uf-state.uf-selected{stroke:#fff;stroke-width:3;filter:drop-shadow(0 0 4px rgba(0,230,118,.35))}
.uf-details{background:#09243b;border:1px solid #2a5266;border-radius:18px;padding:22px;min-height:200px}
.uf-details h3{font-size:20px;margin:0 0 12px;color:#f0fff9}.uf-details p{color:#a6c0cf;font-size:13px;line-height:1.65}
.uf-candidate{padding:12px 0;border-bottom:1px solid #25475b;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px}
.uf-candidate strong{color:#e0f6eb}.uf-candidate span{color:#95d9bc;text-align:right}
.uf-legend{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:12px;color:#bcd6e0;padding:8px 0}
.uf-legend>span{display:inline-flex;align-items:center;gap:6px}.uf-legend i{width:11px;height:11px;border-radius:4px;display:inline-block}
.uf-source{font-size:11px;color:#8ca9bb;line-height:1.6}.uf-source a{color:#76eab1}
@media(max-width:850px){.uf-layout{grid-template-columns:1fr}.uf-map-wrap svg{max-height:530px}.uf-candidate{font-size:12px}}

/* Social sharing */
.share-trigger,.share-state{background:#00e676;color:#062b35;border:0;border-radius:10px;padding:10px 14px;font-size:12px;font-weight:800;cursor:pointer}
.share-state{margin:12px 0}.share-trigger:hover,.share-state:hover{background:#8affc0}
.share-dialog{width:min(480px,calc(100vw - 28px));max-width:none;border:1px solid #347b77;border-radius:20px;padding:24px;background:#0a243b;color:#e8fff5;box-shadow:0 22px 85px #0009}
.share-dialog::backdrop{background:#030e1bba}
.share-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.share-head h2{margin:3px 0 12px;font-size:24px}
.share-close{border:0;background:#1a4153;color:#fff;border-radius:8px;cursor:pointer;font-size:22px;width:34px;height:34px}
.share-dialog>p{color:#b4cbd8;line-height:1.6;font-size:13px}
.share-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}
.share-actions a,.share-actions button{font:700 13px Inter,system-ui,sans-serif;text-decoration:none;text-align:center;cursor:pointer;border:1px solid #3b6677;background:#123951;color:#e6fff4;padding:13px 8px;border-radius:10px}
.share-actions a:hover,.share-actions button:hover{background:#195a63;border-color:#00e676}
#share-feedback{min-height:18px;color:#8cffba}


/* ApuraçãoAgora UI 2.0 — spacious editorial SaaS direction */
:root{--page:#071421;--layer:#0b1e2d;--layer-soft:#102639;--stroke:rgba(159,202,226,.13);--brand:#00e676;--brand-ink:#062b25;--headline:#f3faf9;--body:#9fb8c9;--round:23px;--accent:#00e676;--border:#213c4a}
html{scroll-behavior:smooth}body{color:var(--headline);background:radial-gradient(ellipse 70% 32% at 55% -10%,rgba(0,230,118,.12),transparent 80%),radial-gradient(ellipse 50% 48% at 105% 45%,rgba(11,72,101,.17),transparent 85%),var(--page)}
.wrap{max-width:1480px;padding:0 clamp(18px,4.3vw,74px) 60px}
header{min-height:90px;padding:17px 0;border-bottom:1px solid var(--stroke);gap:25px}
.head-right{gap:13px}.tag,.subtag{border:1px solid rgba(0,230,118,.2);background:rgba(0,230,118,.075);color:#8afdc1;font-size:10px;font-weight:750;letter-spacing:1px;padding:9px 13px}
.health{color:#a1bbca}
.hero{grid-template-columns:minmax(0,1.95fr) minmax(250px,.58fr);gap:24px;margin:38px 0 22px}
.hero>div:first-child{background:transparent!important;border:0;border-radius:0;box-shadow:none;padding:clamp(28px,3vw,55px) 0;overflow:visible}
.hero .eyebrow{font-size:11px;letter-spacing:2.6px}
.hero h1{max-width:940px;font-size:clamp(48px,6.15vw,100px);font-weight:750;letter-spacing:-.067em;line-height:1.04;margin:0 0 25px}
.hero h1 em{color:var(--brand);font-weight:750}
.hero p:not(.eyebrow){font-size:clamp(14px,1.3vw,17px);line-height:1.75;color:#b1c6d2}
.hero label{margin-top:24px;color:#c7dee5}
#round-select{background:#112838;color:#e5f9ee;border:1px solid rgba(0,230,118,.34);border-radius:999px;padding:13px 45px 13px 20px;font-weight:700}
.timebox{border:1px solid var(--stroke)!important;border-radius:24px!important;background:linear-gradient(160deg,rgba(15,48,60,.9),rgba(9,28,44,.95))!important;padding:34px 28px}
.timebox:before{width:160px;height:160px;background:rgba(0,230,118,.12);right:-60px;top:-65px;filter:blur(36px)}
.timebox strong{font-size:clamp(30px,3.4vw,48px);color:var(--brand);font-weight:750}
.stats{gap:14px;margin:22px 0 30px}
.stats article{min-height:164px;padding:28px;border:1px solid var(--stroke)!important;border-radius:21px!important;background:linear-gradient(160deg,#0d2232,#091c2a)!important}
.stats article:nth-child(1){background:linear-gradient(138deg,#00db73,#00ab7e)!important;color:#052b2d;border-color:transparent!important}
.stats article:nth-child(1) label,.stats article:nth-child(1) strong,.stats article:nth-child(1) small{color:#052b2d}
.stats label{font-size:12px;color:#a1bccc;letter-spacing:.2px}
.stats strong{font-size:clamp(30px,3vw,46px);letter-spacing:-1.9px;font-weight:750}
.panel{border:1px solid var(--stroke)!important;border-radius:24px!important;background:linear-gradient(160deg,rgba(13,33,48,.97),rgba(9,26,39,.97))!important;padding:clamp(23px,2.7vw,38px)}
.panel-head{border-bottom:1px solid var(--stroke);margin-bottom:24px;padding-bottom:23px}
.panel-head h2,h2{font-size:clamp(23px,2.35vw,34px);font-weight:650;letter-spacing:-.045em}
.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:800;color:var(--brand)}
.columns{grid-template-columns:minmax(0,1.7fr) minmax(320px,.78fr);gap:22px}
.side{gap:22px}
.candidates{gap:0}
.candidate{padding:22px 3px;border:0;border-bottom:1px solid var(--stroke);border-radius:0;background:transparent!important;transition:background .2s}
.candidate:last-child{border-bottom:0}.candidate:hover{transform:none;border-color:rgba(0,230,118,.36);background:rgba(0,230,118,.02)!important}
.person strong{font-size:16px;font-weight:700}.person small,.votes small{color:var(--body)}
.avatar{border-radius:50%;background:#173a45;box-shadow:none;border:1px solid rgba(0,230,118,.2);width:65px;height:65px;min-width:65px}.candidate-photo{border-radius:50%}
.votes strong{font-size:clamp(23px,2.4vw,34px);font-weight:700;letter-spacing:-.05em}
.bar{height:7px;background:#223846;border-radius:999px}.bar span{background:linear-gradient(90deg,#007faf,#00e676)}
.trend-panel,.uf-panel{margin:24px 0}
.trend-layout{gap:22px}.trend-layout>div{border:1px solid var(--stroke);border-radius:18px;background:rgba(2,12,24,.26);padding:20px}
.trend-layout h3{font-weight:650;font-size:14px;color:#d4e7f0}
.trend-chart{height:clamp(210px,22vw,300px);background:transparent;border:0;border-radius:0;overflow:hidden}
.trend-chart svg{width:100%;height:100%;overflow:visible}
.trend-legend-item{color:#d3e6e9}
.trend-note,.trend-summary{color:var(--body)}
.uf-layout{gap:30px}.uf-map-wrap{padding:10px;background:radial-gradient(circle at 50% 40%,rgba(0,230,118,.085),transparent 60%);border-radius:22px}
.uf-state{stroke:#071726;stroke-width:1.4;transition:fill .16s ease,filter .16s ease}
.uf-details{background:rgba(3,17,29,.5);border-color:var(--stroke);border-radius:20px;padding:25px}
.uf-details h3{font-size:25px;letter-spacing:-.045em}
.uf-candidate{border-color:var(--stroke)}.uf-legend{gap:12px 18px}
.news-panel{padding:clamp(22px,2.5vw,32px)}.news-feed{max-height:720px}
.news-item{padding:17px 0;border-color:var(--stroke);gap:14px}
.news-body strong{font-size:13px;font-weight:600;line-height:1.55;color:#e9f2f4}
.news-rank{border:0!important;border-radius:10px!important;background:rgba(0,230,118,.08)!important;color:#67f5aa!important}
.news-item:nth-child(-n+3) .news-rank{background:#00e676!important;color:#092d2e!important}
.news-live{background:rgba(0,230,118,.07)!important;border-color:rgba(0,230,118,.25)!important}
.poll-card{background:rgba(2,14,29,.34)!important;border:1px solid var(--stroke)!important;border-radius:18px!important;padding:24px}
.poll-track{height:8px;border-radius:99px;overflow:hidden;background:#213846}
.status-line,.history-item{border-color:var(--stroke)}
.share-trigger,.share-state{border-radius:999px;padding:13px 20px;box-shadow:0 5px 26px rgba(0,230,118,.13);transition:transform .18s,background .18s}
.share-trigger:hover,.share-state:hover{transform:translateY(-2px)}
.site-footer{margin-top:50px;border-color:var(--stroke)}
.election-countdown.countdown-full{border-radius:26px!important;background:radial-gradient(ellipse at 50% 100%,rgba(0,230,118,.1),transparent 60%),linear-gradient(120deg,#0a2a3d,#0b2839 62%,#093b33)!important;box-shadow:0 20px 55px rgba(0,0,0,.15)!important}
.countdown-full .countdown-full-clock .countdown-block strong{font-weight:800;letter-spacing:-.065em}
@media(max-width:1100px){.columns{grid-template-columns:1fr}.hero h1{font-size:clamp(46px,7vw,78px)}}
@media(max-width:780px){.wrap{padding:0 20px 36px}.hero{grid-template-columns:1fr;margin-top:24px;gap:12px}.hero>div:first-child{padding:22px 0}.hero h1{font-size:clamp(42px,9vw,69px)}.timebox{padding:22px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats article{min-height:140px;padding:20px}}
@media(max-width:480px){.wrap{padding:0 14px 28px}.hero h1{font-size:clamp(38px,10vw,52px)}.stats{gap:10px}.stats article{padding:17px;min-height:130px}.stats strong{font-size:27px}.panel{padding:20px}.trend-layout>div{padding:13px}.avatar{width:52px;height:52px;min-width:52px}.head-right{width:100%;justify-content:space-between}.share-trigger{padding:10px 14px}.hero label{margin-top:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Hero refinement: useful sharing action, no oversized empty collection card */
.hero{grid-template-columns:minmax(0,1.8fr) minmax(285px,.75fr);align-items:stretch;gap:clamp(28px,4vw,64px)}
.hero-aside{display:flex;flex-direction:column;justify-content:center;gap:22px;padding:26px 0;min-width:0}
.hero-aside-intro h2{font-size:clamp(25px,2.5vw,38px);letter-spacing:-.05em;font-weight:650;line-height:1.17;max-width:390px}
.hero-aside-intro p:not(.eyebrow){font-size:14px;line-height:1.7;color:#a8c2d0;margin:14px 0 0;max-width:360px}
.hero-share{width:100%;min-height:54px;font-size:14px;text-align:center;border-radius:14px;padding:16px 22px}
.hero-aside .timebox{min-height:0;display:block;padding:20px 23px;background:rgba(14,40,56,.72)!important;border:1px solid rgba(164,202,217,.14)!important;border-radius:17px!important;box-shadow:none}
.hero-aside .timebox:before{display:none}
.hero-aside .timebox .small{font-size:10px;letter-spacing:1.3px}
.hero-aside .timebox strong{display:block;font-size:clamp(25px,2.5vw,36px);letter-spacing:-1px;margin:9px 0 5px;line-height:1.2}
.hero-aside .timebox .muted{font-size:11px;line-height:1.5}
header .head-right{gap:16px}
@media(max-width:1050px){.hero{grid-template-columns:minmax(0,1.4fr) minmax(270px,.7fr);gap:24px}.hero-aside{gap:17px}.hero-aside-intro h2{font-size:27px}}
@media(max-width:780px){.hero{grid-template-columns:1fr;gap:8px}.hero-aside{padding:0 0 18px;display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}.hero-aside-intro{grid-column:1/-1}.hero-aside-intro h2{font-size:26px;max-width:none}.hero-aside-intro p:not(.eyebrow){margin:8px 0 0;max-width:none}.hero-share{height:100%;min-height:82px}.hero-aside .timebox{padding:16px;display:flex;flex-direction:column;justify-content:center}.hero-aside .timebox strong{font-size:28px}}
@media(max-width:480px){.hero-aside{grid-template-columns:1fr}.hero-aside-intro h2{font-size:25px}.hero-share{min-height:52px}.hero-aside .timebox{min-height:92px}.hero-aside .timebox strong{font-size:29px}}
