.victory-panel,.victory-awaiting{margin-top:18px;min-width:0}.app section.victory-panel{padding:0;border:0;margin-bottom:0;background:transparent;box-shadow:none}.victory-awaiting{padding:12px 14px;border:1px solid #dce5f1;border-radius:9px;background:#f7faff;color:#52627c;font-size:.78rem}.victory-awaiting p{margin:5px 0 0}.victory-context{margin:0 0 10px;color:#52627c;font-size:.8rem;overflow-wrap:anywhere}.victory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.victory-card{min-width:0;padding:18px;border:1px solid #d1dff2;border-radius:10px;background:#fff}.victory-card.victory-projection{background:#f2f7ff;border-color:#b8d2ff}.victory-card header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:16px}.victory-card h3{margin:0;color:var(--brand-navy,#102342);font-size:1rem;letter-spacing:-.025em}.victory-badge{display:inline-block;padding:4px 7px;border-radius:6px;background:#e1edff;color:#1e56b7;font-size:.65rem;font-weight:700}.victory-badge.victory-open{background:#fff3d7;color:#915b00}.victory-badge.victory-secure{background:#e1f5e9;color:#166534}.victory-card p{margin:6px 0;font-size:.82rem;color:#415777;line-height:1.5}.victory-card .victory-number{display:block;color:var(--brand-blue,#2563eb);font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.3;font-weight:800;overflow-wrap:anywhere}.victory-number small{font-size:.85rem;font-weight:600}.victory-card .victory-condition{color:#65758e;font-size:.74rem}.victory-card dl{margin:16px 0 12px;border-top:1px solid #dce5f1}.victory-card dl>div{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:5px 12px;padding:10px 0;border-bottom:1px solid #dce5f1}.victory-card dt{color:#52627c;font-size:.75rem}.victory-card dd{margin:0;font-size:.85rem;font-weight:750;color:var(--brand-navy,#102342)}.victory-panel .victory-note{margin:10px 0 0;color:#65758e;font-size:.7rem;line-height:1.5}.victory-card details{margin-top:14px}.victory-card summary{color:var(--brand-blue,#2563eb);font-size:.75rem;cursor:pointer}.victory-card details p{font-size:.74rem}.victory-card .victory-empty{min-height:100px;display:flex;align-items:center}.victory-card.victory-target{position:relative}.victory-target header{min-height:32px;padding-left:40px}.victory-card .victory-switch{position:absolute;top:18px;left:18px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-height:30px;min-width:0;padding:0;border:1px solid #bfd0e8;border-radius:50%;color:#285da8;background:#f7faff;cursor:pointer}.victory-card .victory-switch:hover{background:#e1edff;border-color:#7ea6dc}.victory-card .victory-switch:focus-visible{outline:3px solid #2563eb;outline-offset:3px}.victory-card .victory-outcome{margin:10px 0;color:var(--brand-blue,#2563eb);font-size:1.5rem;line-height:1.3;font-weight:750}.victory-card .victory-outcome-elected{color:#166534}.victory-card .victory-outcome-defeated{color:#8d3131}.victory-badge.victory-defeated{background:#fbe9e9;color:#8d3131}.victory-candidates{list-style:none;margin:12px 0 16px;padding:0}.victory-candidates li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:13px 0;border-bottom:1px solid #dce5f1}.victory-candidate-name{align-self:center;color:var(--brand-navy,#102342);font-size:.82rem;font-weight:700;overflow-wrap:anywhere}.victory-candidate-percent{color:var(--brand-blue,#2563eb);font-size:1.25rem;font-weight:800}.victory-candidate-votes{grid-column:1/-1;color:#52627c;font-size:.76rem}@media(max-width:700px){.victory-grid{grid-template-columns:minmax(0,1fr)}.victory-card{padding:14px}.victory-card .victory-empty{min-height:0}}@media(max-width:700px){.victory-card .victory-switch{top:14px;left:14px}}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-navy: #0D1B3D;--brand-blue: #2563EB;--brand-green: #16A34A;--brand-amber: #F59E0B;--brand-gray: #E5E7EB;--white: #FFFFFF;--navy-700: #22345F;--blue-700: #1D4ED8;--blue-100: #DBE6FE;--blue-50: #EFF4FF;--green-700: #15803D;--green-50: #ECFDF3;--amber-700: #B45309;--amber-50: #FFF7E6;--red-700: #B91C1C;--red-50: #FEF2F2;--gray-25: #FAFBFC;--gray-50: #F5F7FA;--gray-100: #EEF0F3;--gray-200: #E5E7EB;--gray-300: #D1D5DB;--gray-400: #9CA3AF;--gray-500: #6B7280;--gray-600: #4B5563;--gray-700: #374151;--bg-page: var(--gray-50);--bg-surface: var(--white);--bg-subtle: var(--gray-25);--bg-sunken: var(--gray-100);--border-subtle: var(--gray-200);--border-strong: var(--gray-300);--text-primary: var(--brand-navy);--text-secondary: var(--gray-600);--text-muted: var(--gray-500);--text-link: var(--blue-700);--focus-ring: 0 0 0 3px rgba(37, 99, 235, .4);--c1: #0E7490;--c2: #B45309;--c3: #6D28D9;--c4: #BE185D;--c5: #4D7C0F;--c6: #475569;--c7: #0369A1;--c8: #A16207;--ref-2022: #9CA3AF;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--s8: 64px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-pill: 999px;--shadow-1: 0 1px 2px rgba(13, 27, 61, .06), 0 1px 1px rgba(13, 27, 61, .04);--shadow-2: 0 4px 16px rgba(13, 27, 61, .08);--font: "Inter Variable", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fs-h1: clamp(1.5rem, 1.2rem + 1vw, 2rem);--fs-h2: clamp(1.125rem, 1rem + .5vw, 1.375rem);--fs-body: .9375rem;--fs-small: .8125rem;--fs-caption: .75rem;font-family:var(--font);color:var(--text-primary);background:var(--bg-page);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;font-size:var(--fs-body)}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}.num,td,.votes,.pct,.cand-val,.coverage,.chart text{font-variant-numeric:tabular-nums}.error{color:var(--red-700)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.app{min-height:100vh}.app h1,.app h2,.app h3,.app h4{margin:0;letter-spacing:-.01em}.app h2{font-size:var(--fs-h2);font-weight:700}.app h3{font-size:1rem;font-weight:700}.app h4{font-size:.9375rem;font-weight:700;margin-top:var(--s4)}.app p{margin:var(--s2) 0}.app a{color:var(--text-link);font-weight:600;text-decoration:none}.app a:hover{text-decoration:underline}.app button,.app select{font:inherit;font-size:.875rem;font-weight:600;min-height:40px;padding:0 14px;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--white);color:var(--text-primary);cursor:pointer}.app button:hover{border-color:var(--brand-blue);color:var(--blue-700)}.app select{padding-right:32px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%234B5563' stroke-width='1.8'/%3E%3C/svg%3E") no-repeat right 12px center}.app select:disabled{opacity:.6;cursor:not-allowed}.app section{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);box-shadow:var(--shadow-1);padding:var(--s4) var(--s5);margin-bottom:var(--s4);min-width:0}.app section section{box-shadow:none}.app small{color:var(--text-muted)}.app pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:20rem;overflow:auto;background:var(--bg-sunken);border-radius:var(--r-md);padding:var(--s3);font-size:.8rem}.app [role=alert]{border-radius:var(--r-md)}.app p.error,.app [role=alert]>p.error{background:var(--red-50);color:var(--red-700);padding:var(--s2) var(--s3);border-radius:var(--r-md);font-weight:600}.app table{border-collapse:collapse;min-width:38rem;width:100%;font-size:.875rem}.app th{text-align:left;font-size:var(--fs-caption);font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:10px 12px;border-bottom:1px solid var(--border-subtle);background:var(--bg-subtle);white-space:nowrap}.app td{padding:10px 12px;border-bottom:1px solid var(--gray-100)}.checkpoint-scroll{overflow-x:auto}.app-header{position:sticky;top:0;z-index:30;background:var(--white);border-bottom:1px solid var(--border-subtle)}.app-header .inner{max-width:1280px;margin:0 auto;padding:0 var(--s6);height:64px;display:flex;align-items:center;gap:var(--s6)}.brand{display:flex;align-items:center;flex:none}.brand img{height:42px;width:auto;display:block}.header-tools{margin-left:auto;display:flex;align-items:center;gap:var(--s3);min-width:0}.header-meta{font-size:var(--fs-small);color:var(--text-secondary);font-weight:600;white-space:nowrap}.access-account{position:relative;display:flex;align-items:center;gap:var(--s2);min-width:0}.access-user{max-width:11rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-small);font-weight:600;color:var(--text-secondary)}.app .access-toggle{min-height:36px;padding:0 12px;font-size:.8125rem}.access-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:45;width:min(22rem,calc(100vw - 2rem));display:grid;gap:var(--s3);margin:0;padding:var(--s4);background:var(--white);border:1px solid var(--border-subtle);border-radius:var(--r-lg);box-shadow:var(--shadow-2)}.access-popover h2{font-size:1rem}.access-popover p{margin:0;color:var(--text-secondary);font-size:var(--fs-small);font-weight:500}.access-popover label{display:grid;gap:4px;font-size:var(--fs-caption);font-weight:600;color:var(--text-secondary)}.access-popover input{font:inherit;font-size:.9375rem;font-weight:500;min-height:44px;padding:0 12px;border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text-primary);background:var(--white);width:100%}.access-popover [role=alert],.access-error{margin:0;color:var(--red-700);font-size:var(--fs-small);font-weight:600}.access-error{position:absolute;top:calc(100% + 8px);right:0;width:min(22rem,calc(100vw - 2rem));padding:var(--s2) var(--s3);background:var(--red-50);border-radius:var(--r-md)}.app .access-popover>button{width:100%}.app-nav{display:flex;gap:var(--s1);height:100%}.app .app-nav button{height:100%;min-height:0;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;padding:0 var(--s4);color:var(--text-secondary);font-size:.9375rem}.app .app-nav button:hover{color:var(--text-primary)}.app .app-nav button.active{color:var(--text-primary);border-bottom-color:var(--brand-blue)}.app-nav button:before{content:none}.page{max-width:1280px;margin:0 auto;padding:var(--s5) var(--s6) var(--s7)}.uf-loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:var(--s4);background:#f5f7fab8;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);pointer-events:auto}.uf-loading-content{display:grid;justify-items:center;gap:var(--s3);max-width:100%;color:var(--text-primary)}.uf-loading-content img{display:block;width:min(220px,70vw);height:auto}.uf-loading-content p{margin:0;font-weight:600;text-align:center;overflow-wrap:anywhere}.uf-loading-progress{width:min(208px,65vw);height:4px;overflow:hidden;border-radius:var(--r-pill);background:var(--gray-300)}.uf-loading-progress span{display:block;width:42%;height:100%;border-radius:inherit;background:var(--brand-blue);animation:uf-loading-slide 1.5s ease-in-out infinite}@keyframes uf-loading-slide{0%{transform:translate(-100%)}to{transform:translate(240%)}}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s3) var(--s5);margin-bottom:var(--s4)}.page-head h1{font-size:var(--fs-h1);font-weight:750;letter-spacing:-.02em;line-height:1.2}.kicker,.dashboard-kicker{font-size:var(--fs-caption);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 0 var(--s1)}.lead{color:var(--text-secondary);font-size:var(--fs-small);margin:var(--s1) 0 0}.mode-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin-bottom:var(--s4)}.mode-switch{display:inline-flex;padding:3px;background:var(--bg-sunken);border-radius:var(--r-md);gap:2px}.app .mode-switch button,.app .senate-tabs button{border:0;background:transparent;min-height:40px;padding:0 16px;border-radius:8px;color:var(--text-secondary);white-space:nowrap}.app .mode-switch button:hover,.app .senate-tabs button:hover{color:var(--text-primary)}.app .mode-switch button.active,.app .senate-tabs button.active{background:var(--white);color:var(--text-primary);box-shadow:var(--shadow-1)}.app .mode-switch button.active:last-child,.app .senate-tabs button.active:last-child{color:var(--blue-700);outline:1.5px dashed var(--brand-blue);outline-offset:-1.5px}.mode-note,.dashboard-mode{display:flex;align-items:center;gap:var(--s2);margin:0;font-size:var(--fs-small);color:var(--text-secondary)}.mode-note.projection,.dashboard[data-mode=projection] .dashboard-mode{flex:1 1 18rem;background:var(--blue-50);color:#1e3a8a;border:1px dashed var(--brand-blue);border-radius:var(--r-md);padding:var(--s2) var(--s3);font-weight:600}.mode-badge{display:inline-flex;align-items:center;gap:6px;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:var(--r-sm);white-space:nowrap}.mode-badge.official{background:var(--brand-navy);color:var(--white)}.mode-badge.projection{background:var(--white);color:var(--blue-700);border:1.5px dashed var(--brand-blue)}.approx{color:var(--blue-700);font-weight:700;margin-right:1px}.chip{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-caption);font-weight:600;padding:3px 9px;border-radius:var(--r-pill);background:var(--bg-sunken);color:var(--text-secondary);white-space:nowrap}.chip.live{background:var(--green-50);color:var(--green-700)}.chip.stale{background:var(--amber-50);color:var(--amber-700)}.chip.error{background:var(--red-50);color:var(--red-700)}.chip.info{background:var(--blue-50);color:var(--blue-700)}.chip.history{background:var(--white);color:var(--gray-600);border:1px dashed var(--gray-400)}.dot{width:8px;height:8px;border-radius:50%;background:var(--gray-400);flex:none}.chip.live .dot{background:var(--brand-green);box-shadow:0 0 0 3px #16a34a2e}.chip.stale .dot{background:var(--brand-amber)}.chip.error .dot{background:var(--red-700)}.status-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s4);padding:var(--s3) var(--s4);margin-bottom:var(--s4);background:var(--white);border:1px solid var(--border-subtle);border-radius:var(--r-lg);font-size:var(--fs-small);color:var(--text-secondary)}.status-bar .where{color:var(--text-primary);font-weight:700}.status-code{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.coverage{display:grid;gap:6px;margin:var(--s3) 0 var(--s2)}.coverage-label{display:flex;justify-content:space-between;gap:var(--s2);font-size:var(--fs-small);color:var(--text-secondary)}.coverage-label strong{color:var(--text-primary)}.bar{height:6px;border-radius:99px;background:var(--gray-200);overflow:hidden}.bar>i{display:block;height:100%;background:var(--brand-navy);border-radius:99px;transition:width .6s ease}[data-mode=projection] .bar>i,.bar.proj>i{background:repeating-linear-gradient(135deg,var(--brand-blue) 0 6px,#5B8DEF 6px 10px)}.selectors{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s4);margin-bottom:var(--s4);align-items:flex-end}.selectors label,.field{display:grid;gap:4px;min-width:12rem;font-size:var(--fs-caption);font-weight:600;color:var(--text-secondary)}.selectors label select,.field select{min-height:44px;font-size:.9375rem;color:var(--text-primary)}.selectors small{font-weight:500}.dashboard{display:block}.dashboard-president{margin-bottom:var(--s5)}.app .dashboard-president,.app .dashboard-state{padding:var(--s5)}.president-round-switch{display:inline-flex;gap:2px;margin-top:var(--s2);padding:3px;background:var(--bg-sunken);border-radius:var(--r-md)}.app .president-round-switch button{min-height:36px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:var(--fs-small)}.app .president-round-switch button.active{background:var(--white);color:var(--brand-navy);font-weight:700;box-shadow:var(--shadow-1)}.app .president-round-switch button:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}.dashboard-president>h2,.dashboard-state>h2{margin-bottom:var(--s3)}.dashboard[data-mode=projection] .dashboard-president,.dashboard[data-mode=projection] .dashboard-card{border:1.5px dashed rgba(37,99,235,.55)}.dashboard-state-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s3);margin-bottom:var(--s4)}.dashboard-state-head .field{min-width:14rem}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4)}.dashboard-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:var(--s4);background:var(--white)}.dashboard-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s2);margin-bottom:var(--s2)}.dashboard-card-head h3{line-height:1.3}.dashboard-card .seats{margin:0;font-size:var(--fs-small);color:var(--text-muted)}.dashboard-card ol,.president-leaders{list-style:none;padding:0;margin:var(--s2) 0}.dashboard-card li,.president-leaders li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px var(--s3);align-items:baseline;padding:7px 0;border-top:1px solid var(--gray-100)}.dashboard-card li:first-child,.president-leaders li:first-child{border-top:0}.dashboard-card li span,.president-leaders li span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.dashboard-card li .bar,.president-leaders li .bar{grid-column:1 / -1;height:4px}.dashboard-card li .bar>i,.president-leaders li .bar>i{background:var(--gray-500)}.dashboard-card .cut-line,.cut-line{position:relative;border-top:2px dashed var(--brand-amber)!important}.dashboard-card .cut-line:before{content:"linha das vagas";position:absolute;right:0;top:-.65rem;background:var(--white);color:var(--amber-700);font-size:.6875rem;font-weight:700;padding:0 4px}.dashboard-card-foot{margin-top:auto;padding-top:var(--s3);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s2);border-top:1px solid var(--gray-100);font-size:var(--fs-caption);color:var(--text-muted)}.dashboard-card .state-message{margin:var(--s3) 0;padding:var(--s3);background:var(--bg-subtle);border:1px dashed var(--border-strong);border-radius:var(--r-md);color:var(--text-secondary);font-size:var(--fs-small);text-align:center}.dashboard-note{font-size:var(--fs-caption);color:var(--blue-700);font-weight:600;margin:0}.dashboard-senate-link{margin-top:var(--s4)}@media(min-width:1180px){.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:700px){.dashboard-grid{grid-template-columns:1fr}}.app .president-map{padding:var(--s5)}.dashboard[data-mode=projection] .president-map{border:1.5px dashed rgba(37,99,235,.55)}.president-map-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s3)}.president-map-heading .dashboard-kicker{margin:0 0 var(--s1)}.president-map-intro,.president-map-note{color:var(--text-secondary);font-size:var(--fs-small)}.president-map-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.52fr);gap:var(--s5);align-items:center}.president-map-canvas{position:relative;min-width:0}.president-map-canvas svg{display:block;width:100%;max-height:620px}.president-map-canvas .president-map-state{stroke:var(--white);stroke-width:1.3;cursor:pointer;transition:fill .18s ease}.president-map-canvas .president-map-state:focus{outline:none}.president-map-canvas .president-map-outline{fill:none;stroke:var(--brand-navy);stroke-width:2.8;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke;pointer-events:none}.president-map-popup{grid-column:2;grid-row:1;align-self:center;background:var(--white);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:var(--shadow-2);padding:var(--s4);font-size:var(--fs-small)}.president-map-popup-head{display:flex;justify-content:space-between;align-items:center;gap:var(--s2);font-size:1rem}.app .president-map-popup-head button{min-height:28px;width:28px;padding:0;font-size:1.2rem;line-height:1}.president-map-popup p{margin:var(--s2) 0}.president-map-vote-row{margin:var(--s3) 0}.president-map-vote-label{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:0 var(--s2)}.president-map-vote-label strong{color:var(--text-primary);font-variant-numeric:tabular-nums}.president-map-vote-track{height:8px;margin-top:var(--s1);overflow:hidden;background:var(--bg-sunken);border-radius:var(--r-pill)}.president-map-vote-fill{height:100%;border-radius:var(--r-pill)}.president-map-vote-fill.lula{background:#b91c1c}.president-map-vote-fill.bolsonaro{background:var(--blue-700)}.president-map-history{border-top:1px solid var(--border-subtle);padding-top:var(--s3);margin-top:var(--s3)}.president-map-history strong{color:var(--text-primary)}.president-map-legend{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);margin-top:var(--s3);font-size:var(--fs-caption);color:var(--text-secondary)}.president-map-legend span{display:inline-flex;align-items:center;gap:var(--s2)}.map-swatch{display:inline-block;width:24px;height:13px;border-radius:3px;border:1px solid rgba(13,27,61,.12)}.map-swatch.lula{background:linear-gradient(90deg,#fee2e2,#b91c1c);width:48px}.map-swatch.flavio{background:linear-gradient(90deg,#dbeafe,#1d4ed8);width:48px}.map-swatch.tie{background:var(--gray-200)}.map-swatch.no-data{background:var(--gray-300)}@media(max-width:800px){.president-map-content{display:block}.president-map-canvas svg{max-height:none}.president-map-popup{margin-top:var(--s3)}}.app .president-compare{padding:var(--s5)}.app .president-compare.compact{padding:0;border:0;box-shadow:none;margin:0;background:transparent}.president-compare [role=tablist],.president-compare [role=group]{display:inline-flex;padding:3px;background:var(--bg-sunken);border-radius:var(--r-md);gap:2px;margin:var(--s2) var(--s2) var(--s2) 0}.app .president-compare [role=tablist] button,.app .president-compare [role=group] button{border:0;background:transparent;min-height:36px;padding:0 12px;border-radius:8px;color:var(--text-secondary);font-size:.8125rem}.app .president-compare [aria-pressed=true],.app .president-compare [aria-selected=true]{background:var(--white)!important;color:var(--text-primary)!important;box-shadow:var(--shadow-1)}.president-meta{display:flex;flex-wrap:wrap;gap:var(--s2);margin:var(--s2) 0}.president-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s4)}.president-layout.with-leaders{grid-template-columns:minmax(0,2fr) minmax(15rem,1fr)}.president-leaders-box h3{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);margin-bottom:var(--s2)}.president-leaders-box .history-note{font-size:var(--fs-caption);color:var(--text-muted);margin:0 0 var(--s2)}.compare-chart{margin:var(--s2) 0 0}.compare-chart svg{width:100%;height:auto;display:block;background:var(--white);touch-action:pan-y}.compare-chart .grid line{stroke:var(--gray-200)}.compare-chart .axis line{stroke:var(--gray-300)}.compare-chart text{font-family:var(--font);font-size:11px;fill:var(--gray-500)}.compare-chart text.direct{fill:var(--text-primary);font-weight:650;font-size:11.5px}@media(max-width:767px){.compare-chart text.direct{font-size:10.5px}.compare-chart text{font-size:10px}}.compare-chart text.direct tspan{fill:var(--gray-600);font-weight:500}.compare-chart text.axis-title{font-weight:600;fill:var(--gray-600)}.compare-legend{display:flex;flex-wrap:wrap;gap:6px 16px;padding:0;margin:var(--s3) 0 0;list-style:none;font-size:var(--fs-caption);color:var(--text-secondary)}.compare-legend li{display:flex;gap:6px;align-items:center}.compare-legend span{width:22px;border-top:3px solid}.compare-legend .dashed{border-top-style:dashed;border-top-width:2px}.compare-readout{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--s1) var(--s4);margin-top:var(--s3);padding:var(--s3);background:var(--bg-subtle);border-radius:var(--r-md);font-size:var(--fs-small)}.compare-readout>strong{grid-column:1 / -1}.compare-readout p{margin:2px 0}.compare-readout .year{font-weight:700;color:var(--text-muted);font-size:var(--fs-caption);text-transform:uppercase;letter-spacing:.06em}@media(max-width:900px){.president-layout.with-leaders{grid-template-columns:1fr}}.contest-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s3) var(--s5);align-items:end}.contest-summary h2{grid-column:1 / -1}.contest-summary .big{font-size:1.75rem;font-weight:750;letter-spacing:-.02em;line-height:1.1}.contest-summary p{margin:0;color:var(--text-secondary);font-size:var(--fs-small)}.official-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:0 var(--s5);align-items:start}.official-layout.has-detail{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.candidate-list{margin-top:var(--s3)}.candidate-search{display:grid;gap:4px;max-width:22rem;margin-top:var(--s3);font-size:var(--fs-caption);font-weight:600;color:var(--text-secondary)}.candidate-search input{font:inherit;font-size:.9375rem;font-weight:500;min-height:44px;width:100%;padding:0 12px;border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text-primary);background:var(--white)}.candidate-title{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s2);min-width:0}.candidate-title>.candidate-name{overflow-wrap:anywhere}.official-candidate-status{flex:none}.candidate{display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto auto;gap:var(--s1) var(--s3);align-items:center;padding:var(--s3) var(--s2);border-top:1px solid var(--gray-100)}.candidate:first-child{border-top:0}.candidate>span:first-child{font-size:var(--fs-small);font-weight:700;color:var(--text-muted);text-align:right}.candidate small{display:block;color:var(--text-secondary);font-size:var(--fs-small)}.candidate .votes{text-align:right}.candidate .votes strong{font-size:1rem}.candidate .mini{grid-column:2 / 4;height:4px;border-radius:99px;background:var(--gray-200);overflow:hidden}.candidate .mini>i{display:block;height:100%;background:var(--gray-500);border-radius:99px}.app .candidate button{min-height:40px;min-width:40px;padding:0;font-size:1.25rem;line-height:1;color:var(--amber-700);border-color:transparent;background:transparent}.app .candidate .candidate-name{min-height:0;min-width:0;padding:0;border:0;background:transparent;color:inherit;font-size:.9375rem;line-height:1.3;font-weight:650;text-align:left}.app .candidate .candidate-name:hover{text-decoration:underline;color:var(--blue-700)}.watchlist-chips{display:flex;flex-wrap:wrap;gap:var(--s2)}.app section>button{margin:var(--s1) var(--s1) var(--s1) 0}.app .candidate-detail{border-left:3px solid var(--brand-blue)}.candidate-detail{scroll-margin-top:8rem}.candidate-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s3)}.candidate-detail-head h3{overflow-wrap:anywhere}.candidate-detail-head button{flex:none}.candidate.is-selected,.projection-row.is-selected{background:var(--blue-50);box-shadow:inset 3px 0 var(--brand-blue);border-radius:var(--r-sm)}.detail-close-mobile{display:none}.candidate-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:var(--s3);margin:var(--s4) 0;padding:var(--s3);background:var(--bg-subtle);border-radius:var(--r-md)}.candidate-metrics dt,.candidate-facts dt{color:var(--text-secondary);font-size:var(--fs-small)}.candidate-metrics dd{margin:var(--s1) 0 0;font-size:1.25rem;font-weight:750;font-variant-numeric:tabular-nums}.candidate-facts{display:grid;gap:var(--s3);margin:var(--s3) 0}.candidate-facts dd{margin:var(--s1) 0 0;font-weight:650}.candidate-situation{padding:var(--s3);background:var(--bg-subtle);border-left:3px solid var(--brand-navy);border-radius:var(--r-sm)}.data-details{margin:var(--s4) 0;border-top:1px solid var(--border-subtle);padding-top:var(--s3);color:var(--text-secondary);font-size:var(--fs-small)}.data-details summary{cursor:pointer;color:var(--text-primary);font-weight:650;min-height:40px;align-content:center}.projection-identity{overflow-wrap:anywhere}.app .candidate-history{min-width:0;table-layout:fixed}.app .candidate-history th{white-space:normal;font-size:var(--fs-small);letter-spacing:0;text-transform:none}.app .candidate-history td{overflow-wrap:anywhere}.candidate-detail h4{color:var(--text-primary)}.candidate-detail ol{padding-left:1.5rem}.candidate-detail li{padding:.2rem}.seat-band{list-style:none;padding:0;max-width:28rem}.seat-band li{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;gap:.5rem;padding:.3rem 0}.seat-band .watched{font-weight:700;background:var(--blue-50)}.seat-band .cut{border-top:2px dashed var(--brand-amber)}.seat-note{color:var(--text-secondary);font-size:var(--fs-small)}.deputy-watch{margin-top:var(--s3)}.deputy-watch img{max-width:96px;border-radius:var(--r-md)}@media(max-width:1023px){.official-layout.has-detail,.projection-layout.has-detail{grid-template-columns:1fr}.official-layout.has-detail .candidate-results,.projection-layout.has-detail .projection-list-panel,.official-watchlist.has-detail,.projection-watchlist.has-detail,.detail-close-desktop{display:none}.detail-close-mobile{display:inline}}.app .projection-panel{border:1.5px dashed rgba(37,99,235,.55)}.projection-panel>h2{display:inline-flex;color:var(--blue-700);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;border:1.5px dashed var(--brand-blue);padding:3px 8px;border-radius:var(--r-sm)}.projection-hypothesis{background:var(--blue-50);color:#1e3a8a;padding:var(--s3);border-radius:var(--r-md);font-weight:600;font-size:var(--fs-small)}.projection-identity{font-size:var(--fs-caption);color:var(--text-muted)}.projection-coverage{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);padding:var(--s3);margin:var(--s3) 0;background:var(--bg-subtle);border-radius:var(--r-md);font-size:var(--fs-small);color:var(--text-secondary)}.projection-coverage>*{display:block}.projection-coverage strong{color:var(--text-primary);width:100%}.projection-summary{padding:var(--s4) 0;margin-bottom:var(--s4);border-bottom:1px solid var(--border-subtle)}.projection-summary h3,.projection-summary>p{grid-column:1 / -1}.projection-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5);align-items:start}.projection-layout.has-detail{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.projection-list-panel{min-width:0}.projection-list-head,.projection-row{display:grid;grid-template-columns:3rem minmax(0,1fr) 8rem 5.5rem;gap:var(--s2);align-items:center;padding:var(--s3) var(--s2);border-top:1px solid var(--gray-100)}.projection-list-head{font-size:var(--fs-caption);font-weight:700;letter-spacing:.04em;color:var(--text-muted);background:var(--bg-subtle);border-radius:var(--r-sm);border-top:0}.projection-list-head small{display:block;font-size:var(--fs-caption);font-weight:500;letter-spacing:0}.projection-list-head>span:nth-child(3){text-align:right}.projection-row small{display:block;color:var(--text-secondary);font-size:var(--fs-small)}.app .projection-row .candidate-name{min-height:40px;border:0;padding:0;background:transparent;text-align:left;font-size:var(--fs-body);color:var(--text-primary);line-height:1.4}.app .projection-row .candidate-name:hover{color:var(--blue-700);text-decoration:underline}.projection-rank{color:var(--text-muted);font-size:var(--fs-small);font-weight:700}.projection-row .votes{text-align:right}.app .projection-row .watch-action{min-width:40px;padding:0;font-size:1.25rem;color:var(--amber-700);border-color:transparent;background:transparent}.projection-row>div:nth-child(3) strong{color:var(--blue-700)}.projection-watchlist{margin:0 0 var(--s4)}.projection-watchlist button{margin:var(--s1)}@media(max-width:1023px){.projection-layout.has-detail{grid-template-columns:1fr}}@media(max-width:700px){.projection-list-head{display:none}.projection-row{grid-template-columns:2rem minmax(0,1fr) auto}.projection-rank{grid-column:1;grid-row:1}.projection-row>div:first-of-type{grid-column:2;grid-row:1}.projection-row>button{grid-column:3;grid-row:1 / 3}.projection-row .votes{grid-column:2;text-align:left}}.national-intro{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s3);margin-bottom:var(--s4)}.national-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:var(--s3)}.national-card{display:flex;flex-direction:column;border:1.5px dashed rgba(37,99,235,.45);border-radius:var(--r-lg);padding:var(--s4);background:var(--white);min-width:0}.national-card.is-waiting{border:1px solid var(--border-subtle);background:var(--bg-subtle)}.national-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s2);margin-bottom:var(--s2)}.national-card h3{margin:0;font-size:.9375rem}.national-card ol{list-style:none;padding:0;margin:var(--s2) 0}.national-card li{padding:6px 0;border-top:1px solid var(--gray-100);font-size:var(--fs-small)}.national-card li:first-child{border-top:0}.national-card li strong{display:block;color:var(--blue-700)}.national-card ul{padding-left:1.1rem;font-size:var(--fs-small)}.national-card>p,.national-card>small{font-size:var(--fs-small);color:var(--text-secondary);margin:4px 0}.national-card .waiting{color:var(--text-muted)}.senate-panel{background:var(--white);border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:var(--s5)}.senate-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;align-items:flex-start;background:transparent;border:0;padding:0;margin:0 0 var(--s4)}.senate-heading-titles{line-height:1.25}.senate-heading h2{margin:0}.senate-heading-sub{margin:0;font-size:var(--fs-h2);font-weight:400;font-style:italic;color:var(--text-secondary);letter-spacing:-.01em}.senate-tabs{display:inline-flex;padding:3px;background:var(--bg-sunken);border-radius:var(--r-md);gap:2px}.senate-overview{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:var(--s5);align-items:center;margin-bottom:var(--s5)}.senate-gauge{text-align:center}.senate-gauge svg{width:100%;height:auto;max-width:34rem;display:block;margin:0 auto}.senate-seat{transition:fill .5s ease}.senate-seat.is-favor{fill:var(--brand-navy)}.senate-seat.is-other{fill:var(--gray-400)}.senate-seat.is-open{fill:var(--white);stroke:var(--gray-400);stroke-width:1;stroke-dasharray:2 2}.senate-tick{stroke:var(--brand-amber);stroke-width:2.5}.senate-fraction{font-size:13px;fill:var(--text-primary);font-weight:700}.senate-big{font-size:48px;font-weight:800;fill:var(--text-primary);letter-spacing:-2px}.senate-big-label{font-size:14px;font-weight:600;fill:var(--text-primary)}.senate-big-sub{font-size:12px;fill:var(--gray-500)}.senate-favor{font-size:1.5rem;font-weight:750;margin:0 0 var(--s1)}.senate-coverage,.senate-pending{color:var(--text-secondary);margin:2px 0;font-size:var(--fs-small)}.senate-legend{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);list-style:none;padding:0;margin:var(--s3) 0;font-size:var(--fs-small);color:var(--text-secondary)}.senate-legend li{display:flex;align-items:center;gap:6px}.senate-legend i{width:12px;height:12px;border-radius:3px;display:inline-block}.senate-legend .favor{background:var(--brand-navy)}.senate-legend .other{background:var(--gray-400)}.senate-legend .open{background:var(--white);border:1px dashed var(--gray-500)}.senate-marks{display:grid;gap:var(--s2);padding:0;margin:var(--s3) 0 0;list-style:none}.senate-marks li{display:grid;grid-template-columns:2.5rem 2.5rem minmax(0,1fr);align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);background:var(--bg-subtle);border-left:3px solid var(--brand-amber);border-radius:var(--r-sm);font-size:var(--fs-small)}.senate-marks strong{font-size:1rem}.senate-marks span{color:var(--amber-700);font-weight:700}.senate-note,.senate-references{color:var(--text-secondary);font-size:var(--fs-small)}.senate-references a{margin-right:.8rem}.senate-filter{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s3);margin:var(--s5) 0 var(--s3)}.senate-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3)}.senate-cards article{border:1px solid var(--border-subtle);border-radius:var(--r-lg);padding:var(--s4);background:var(--white);min-width:0}.senate-panel[data-mode=projection] .senate-cards article{border:1.5px dashed rgba(37,99,235,.45)}.senate-card-head{display:flex;justify-content:space-between;align-items:center;gap:var(--s2)}.senate-cards h3{margin:0}.senate-cards p{margin:4px 0;font-size:var(--fs-small)}.senate-state-status{color:var(--text-muted)}.senate-continuing,.senate-candidates li{display:grid;gap:2px}.senate-continuing{padding:var(--s2) var(--s3);background:var(--bg-subtle);border-radius:var(--r-md)}.senate-candidates{list-style:none;margin:var(--s2) 0 0;padding:0}.senate-candidates li{border-top:1px solid var(--gray-100);padding:var(--s2) 0 var(--s2) var(--s2);font-size:var(--fs-small)}.senate-candidates li.is-occupying{border-left:3px solid var(--brand-navy);background:var(--gray-25)}.senate-class{display:inline-block;width:fit-content;border-radius:var(--r-pill);padding:1px 8px;font-size:.72rem;font-weight:700}.senate-class-favor{background:var(--brand-navy);color:var(--white)}.senate-class-contra{background:var(--gray-500);color:var(--white)}.senate-class-unclassified{background:var(--white);color:var(--gray-600);border:1px dashed var(--gray-400)}.senate-candidates small,.senate-continuing small{color:var(--text-muted)}.app .senate-more{width:100%;margin-top:var(--s2);min-height:36px;font-size:.8125rem;color:var(--text-link)}@media(min-width:900px){.senate-gauge{max-width:36rem}.senate-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1023px){.senate-overview{grid-template-columns:1fr}.senate-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.senate-cards{grid-template-columns:1fr}.senate-favor{font-size:1.3rem}.senate-heading{align-items:stretch}}@media(max-width:1023px){.app-header .inner{padding:0 var(--s5);gap:var(--s4)}.page{padding:var(--s4) var(--s5) var(--s7)}.header-meta{display:none}.app .app-nav button{padding:0 var(--s3)}}@media(max-width:767px){.candidate-detail{scroll-margin-top:14rem}.app-header .inner{height:56px;padding:0 var(--s4)}.brand img{height:34px}.access-user{max-width:7rem}.candidate-search{max-width:none}.app-nav{position:fixed;left:0;right:0;bottom:0;height:auto;z-index:40;background:var(--white);border-top:1px solid var(--border-subtle);display:grid;grid-template-columns:repeat(3,1fr);padding:4px 4px calc(4px + env(safe-area-inset-bottom));box-shadow:0 -2px 10px #0d1b3d0f}.app .app-nav button{height:auto;min-height:52px;display:grid;justify-items:center;align-content:center;gap:2px;padding:4px 2px;font-size:.6875rem;border:0;color:var(--text-muted)}.app .app-nav button.active{color:var(--brand-blue);border:0}.app-nav button:before{content:"";width:22px;height:22px;background:currentColor;-webkit-mask:var(--icon) center / contain no-repeat;mask:var(--icon) center / contain no-repeat}.app-nav button[data-icon=home]{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M3 10.5 12 3l9 7.5V21h-6v-6H9v6H3z'/%3E%3C/svg%3E")}.app-nav button[data-icon=official]{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M4 20V10M10 20V4M16 20v-7M22 20H2'/%3E%3C/svg%3E")}.app-nav button[data-icon=senate]{--icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M3 18a9 9 0 0 1 18 0M7 18a5 5 0 0 1 10 0M3 21h18'/%3E%3C/svg%3E")}.page{padding:var(--s3) var(--s3) calc(88px + env(safe-area-inset-bottom))}.app section,.app .dashboard-president,.app .dashboard-state,.app .president-compare,.senate-panel{padding:var(--s4);border-radius:var(--r-md)}.mode-bar{position:sticky;top:56px;z-index:20;margin:0 calc(-1 * var(--s3)) var(--s3);padding:var(--s2) var(--s3);background:#f5f7faf5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--border-subtle)}.mode-switch{display:flex;width:100%}.app .mode-switch button{flex:1}.mode-note.projection,.dashboard[data-mode=projection] .dashboard-mode{flex-basis:100%}.mode-note.official,.dashboard[data-mode=official] .dashboard-mode{display:none}.selectors label{min-width:0;flex:1 1 calc(50% - var(--s3))}.selectors label select{box-sizing:border-box;width:100%;min-width:0}.field{min-width:0;flex:1 1 100%}.uf-loading-content{transform:translateY(-8vh);transform:translateY(-8dvh)}.contest-summary{grid-template-columns:1fr}.page-head h1{font-size:1.375rem}}@media(max-width:600px){.candidate{grid-template-columns:1.75rem minmax(0,1fr) auto}.candidate .votes{grid-column:2;text-align:left;display:flex;align-items:baseline;gap:var(--s2)}.candidate>button{grid-column:3;grid-row:1 / 3}.seat-band{max-width:100%}.candidate-detail-head{flex-wrap:wrap}.candidate-detail-head button{order:-1}.candidate-detail-head h3{flex-basis:100%}.app .candidate-history th,.app .candidate-history td{padding:var(--s2) var(--s1)}}@media(max-width:380px){.brand img{height:30px}.header-meta{display:none}}.source-check-spinner{display:inline-block;width:.75em;height:.75em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:source-check-spin .8s linear infinite}@keyframes source-check-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.source-check-spinner{animation:none}}.official-vote-totals{display:flex;flex-wrap:wrap;gap:1rem 2rem;font-size:.8rem}.official-vote-totals dt{color:#52617b}.official-vote-totals dd{margin:0;font-weight:600}.commercial-footer{padding:0 24px 32px;margin:24px auto 0;max-width:1280px}.commercial-footer-inner{display:grid;grid-template-columns:repeat(2,minmax(0,556px));justify-content:center;gap:24px}.commercial{min-width:0;margin:0}.commercial-art-link{display:block;min-height:48px;border-radius:12px;overflow:hidden}.commercial img{display:block;width:100%;height:auto;aspect-ratio:556 / 327}.commercial-art-link:focus-visible{outline:3px solid #2563EB;outline-offset:4px}.commercial-footer-note{text-align:center;font-size:12px;color:#52617b;margin:16px 0 0}.commercial-credit{font-size:12px;color:#6b7280;line-height:1.35;max-width:110px}.commercial-credit strong{display:block}.commercial-contact-unavailable{display:block;padding:10px;color:#52617b}@media(max-width:767px){.commercial-footer{padding:0 12px calc(88px + env(safe-area-inset-bottom));margin-top:16px}.commercial-footer-inner{grid-template-columns:minmax(0,556px);gap:16px}.commercial-credit{display:none}}.admin-shell{max-width:1180px;margin:0 auto;padding:32px 24px;color:#182538}.admin-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.admin-header small{letter-spacing:.12em;color:#52677e}.admin-header h1{font-size:28px;margin:8px 0 22px}.admin-nav{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.admin-nav a,.admin-button{padding:10px 14px;border-radius:8px;background:#e8eef6;color:#16456c;text-decoration:none;display:inline-block}.admin-note{color:#52677e;font-size:14px;line-height:1.6}.admin-card,.admin-login{background:#fff;border:1px solid #dce4ee;border-radius:14px;padding:24px;margin:20px 0;box-shadow:0 3px 12px #172c4610}.admin-card h2{margin:0 0 16px;font-size:21px}.admin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.admin-metrics div{padding:12px;background:#f5f7fa;border-radius:8px;min-width:0}.admin-metrics dt{font-size:13px;color:#52677e;margin-bottom:8px}.admin-metrics dd{margin:0;font-weight:600;font-size:15px;overflow-wrap:anywhere;white-space:pre-wrap}.admin-ok{color:#127348}.admin-error,.admin-alert{color:#a52727}.admin-alert{padding:14px;background:#fff0ef;border-radius:8px}.admin-login{max-width:400px;margin:50px auto;display:grid;gap:16px}.admin-shell button,.admin-shell select,.admin-shell input{padding:11px;border:1px solid #acbdd0;border-radius:8px;font:inherit}.admin-shell button{cursor:pointer;background:#173f64;color:#fff}.admin-preview-banner{padding:16px;background:#fff1cc;border-left:4px solid #ad7400;font-weight:700}.admin-table-scroll{overflow:auto;margin:18px 0}.admin-shell table{width:100%;border-collapse:collapse}.admin-shell th,.admin-shell td{text-align:left;padding:12px;border-bottom:1px solid #dce4ee;white-space:nowrap}@media(max-width:760px){.admin-shell{padding:16px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-card{padding:16px}.admin-header h1{font-size:23px}}@media(max-width:420px){.admin-metrics{grid-template-columns:1fr}}.simulator-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:1rem 0}.simulator-timeline{display:block}.simulator-timeline input{display:block;width:100%;margin:.8rem 0}.election-simulator .selectors{display:flex;flex-wrap:wrap;gap:1rem}.election-simulator .selectors label{display:grid;gap:.4rem;min-width:12rem}.election-simulator .candidate-name{color:inherit}.election-simulator>.admin-preview-banner{position:sticky;top:.5rem;z-index:5}.access-panel{max-width:520px;margin:8vh auto;padding:24px;background:var(--surface, #fff);border:1px solid #cbd5e1;border-radius:12px}.access-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:10px 24px;background:var(--surface, #fff);border-bottom:1px solid #cbd5e1}.access-form{display:flex;flex-wrap:wrap;gap:12px;align-items:end;width:100%;margin:12px 0}.access-form h2,.access-form h3,.access-form p{width:100%;margin:0}.access-form label{display:flex;flex-direction:column;gap:6px}.access-form label:has(input[type=checkbox]){flex-direction:row;align-items:center}.access-form input:not([type=checkbox]){min-height:36px;padding:6px 10px;border:1px solid #94a3b8;border-radius:6px;max-width:100%}.access-panel button,.access-bar button{padding:8px 14px;cursor:pointer}.access-recovery{margin:0;padding:10px 24px;border-bottom:1px solid #edca77;background:#fff9e8;color:#694b0f;font-size:.8rem}.access-panel [role=alert],.access-bar [role=alert]{color:#b91c1c;width:100%}@media(max-width:600px){.access-panel{margin:24px 12px}.access-form label{width:100%}}.access-wait{min-height:100dvh;padding:48px 20px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at top,var(--blue-50),transparent 65%),var(--bg-page)}.access-brand{font-size:34px;font-weight:800;letter-spacing:-1.5px;color:var(--brand-navy);text-align:center}.access-brand>span{color:var(--brand-blue)}.access-brand>img{display:block;width:200px;height:auto;margin:auto}.access-brand small{display:block;color:var(--text-muted);font-size:10px;font-weight:600;letter-spacing:2px;margin-top:5px}.access-wait .access-panel{width:100%;max-width:560px;margin:32px 0;padding:36px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--r-lg);box-shadow:var(--shadow-2);text-align:center}.access-wait-icon{display:grid;place-items:center;margin:0 auto 20px;width:64px;height:64px;border-radius:18px;background:var(--blue-50);color:var(--brand-blue);font-size:38px}.access-eyebrow{color:var(--blue-700);font-size:11px;font-weight:700;letter-spacing:1.8px}.access-wait h1{margin:10px 0;font-size:clamp(25px,5vw,32px);letter-spacing:-.8px}.access-wait p{color:var(--text-secondary)}.access-wait .access-eyebrow{color:var(--blue-700)}.access-wait-status{padding:14px;background:var(--bg-subtle);border-radius:var(--r-md);font-size:12px}.access-wait-status>span{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--brand-green)}.access-wait-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:24px}.access-wait button{min-height:44px;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--bg-surface);color:var(--brand-navy);font:inherit;font-size:13px;font-weight:600}.access-wait-actions>button:first-child,.access-wait .access-form button{background:var(--brand-blue);color:var(--white);border-color:var(--brand-blue)}.access-wait button:disabled{opacity:.55;cursor:wait}.access-wait .access-wait-note,.access-wait-footer{font-size:12px;color:var(--text-muted)}.access-wait .access-form{text-align:left;border-top:1px solid var(--border-subtle);padding-top:20px}.access-wait .access-form label{flex:1;min-width:0}.access-wait .access-form input{width:100%;font:inherit}.access-wait .access-form button{width:100%}.access-policy-controls{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin:20px 0}.access-policy-controls label{display:flex;gap:8px;align-items:center}.access-policy-controls input[type=number]{width:110px}.access-performance-summary{display:flex;flex-wrap:wrap;gap:12px}.access-performance-summary>div{flex:1;min-width:130px;background:var(--bg-subtle);padding:16px;border-radius:var(--r-md)}.access-performance-summary strong{display:block;font-size:24px}.access-performance-history{max-height:480px;overflow:auto;margin-top:16px}.access-performance-history caption{text-align:left;padding:12px 0;color:var(--text-muted)}.access-visit-filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:20px 0}.access-visit-filters label{display:flex;flex-direction:column;gap:6px;min-width:0}.access-visit-filters input{max-width:100%;min-width:0}.access-visit-filters input[type=number]{width:130px}.access-visit-pages{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.access-internal-ip{display:block;color:var(--amber-700, #92400e)}.access-ip-warning{padding:12px;border-radius:8px;background:var(--amber-50, #fffbeb);color:var(--amber-700, #92400e)}@media(max-width:600px){.access-visit-filters label,.access-visit-filters input{width:100%}}@media(max-width:600px){.access-wait{padding:24px 16px}.access-wait .access-panel{padding:24px 20px}.access-wait-actions>button{width:100%}}:root{--party-pt:#E84040;--party-pl:#5D7EE9}.app{background:linear-gradient(135deg,#f0f6fc 0,#f7f9fc 45%,#f1f6fc)}.app .page{max-width:1180px;padding:26px 24px 8px}.app[data-area=home] .page{padding-bottom:0}.app[data-area=home] .commercial-footer{max-width:1180px;padding-inline:24px;margin-top:0}.app .page-head{margin-bottom:14px}.app .page-head h1{font-size:clamp(1.65rem,2.5vw,2rem);letter-spacing:-.045em;line-height:1.15;font-weight:800}.app h2,.admin-shell h1,.admin-shell h2{letter-spacing:-.035em}.app .page-subtitle{margin:5px 0 0;font-size:.85rem;color:var(--text-secondary)}.app .app-header .inner{height:68px;max-width:1180px}.app .brand img{height:42px}.app .mode-switch,.app .senate-tabs,.app .turn-toggle{display:inline-flex;padding:3px;border:1px solid var(--border-subtle);border-radius:8px;background:#f2f6fc;gap:3px}.app .mode-switch button,.app .senate-tabs button,.app .turn-toggle button{background:transparent;border:0;border-radius:6px;box-shadow:none;white-space:nowrap}.app .mode-switch button.active,.app .mode-switch button[aria-pressed=true],.app .senate-tabs button.active,.app .president-round-switch button.active,.app .turn-toggle button[aria-pressed=true]{background:var(--brand-blue);color:#fff}.app .mode-bar{position:static;padding:0;border:0;margin:0 0 16px;background:transparent;box-shadow:none;min-height:0;gap:8px}.app .mode-note{font-size:.75rem;margin:4px 0}.app .selectors{display:flex;flex-wrap:wrap;gap:14px;padding:0;border:0;background:transparent;box-shadow:none;margin-bottom:18px;align-items:flex-end}.app .selectors>label{flex:1;min-width:145px;font-size:.75rem;gap:5px}.app .selectors select{width:100%;min-width:0;background:#fff;min-height:38px;padding:8px 10px;border-radius:7px}.app .selectors>.mode-bar{flex:1.15;align-self:flex-end;margin:0}.app .selectors .mode-note,.app .selectors .mode-source{flex-basis:100%;font-size:.68rem}.filters-toggle{display:none}.app .bar>i{background:var(--brand-blue)}.app .dashboard-president,.app .dashboard-state,.app .dashboard-comparison,.app .president-map,.app .official-results-surface,.app .projection-panel{background:#fff;border:1px solid #dce5f1;border-radius:12px;padding:20px;box-shadow:0 2px 5px #0d1b3d04}.app .dashboard-page{gap:18px}.app .dashboard-modebar{margin-bottom:16px;padding:0;border:0;box-shadow:none;background:transparent;align-items:center;gap:12px;flex-wrap:wrap}.app .dashboard-connection{margin-left:auto;font-size:.68rem}.app .dashboard-connection>*{margin:0}.app .dashboard-president{position:relative}.app .dashboard-president>.turn-toggle{position:absolute;right:20px;top:20px}.app .dashboard-kicker{font-size:.65rem;letter-spacing:.08em;color:#62718c;margin:0 0 5px}.app .dashboard-president h2,.app .dashboard-state h2,.app .president-map h2{font-size:1.2rem;margin:0 0 10px;font-weight:750}.app .president-leaders{display:grid;grid-template-columns:1fr;margin:12px 0;gap:0;padding:0}.app .president-leaders li{display:grid;grid-template-columns:minmax(150px,1fr) minmax(80px,1.3fr) auto;align-items:center;padding:11px 0;gap:8px 20px;border-bottom:1px solid #edf1f7}.app .president-leaders li>.bar{grid-column:2;grid-row:1;margin:0;height:7px}.app .president-leaders li>strong{grid-column:3;grid-row:1;font-size:1.3rem;letter-spacing:-.025em;min-width:80px;text-align:right}.app .president-leaders li>div:first-child{min-width:0}.app .president-leaders li span{overflow:visible;white-space:normal;text-overflow:clip}.app .candidate-party{display:block;color:var(--candidate-color,var(--text-muted));font-size:.72rem;font-weight:600;margin-top:3px}.app .president-leaders .candidate-party{color:var(--candidate-color)}.app .dashboard-president>.coverage{margin:12px 0 0}.app .dashboard-president .last-result-received{font-size:.68rem;margin:5px 0 0}.app .president-more{display:block;margin:13px 0 0 auto;padding:5px 0;border:0;color:var(--brand-blue);background:transparent;font-size:.75rem}.app .dashboard-comparison{margin:0}.app .dashboard-comparison .president-compare{border:0;padding:0;box-shadow:none;margin:0}.app .president-compare h2{font-size:1.2rem}.app .president-compare header{gap:10px;align-items:center}.app .president-compare [aria-label=Eixo]{display:inline-flex;gap:3px;padding:3px;border-radius:7px;background:#f1f5fb}.app .president-compare [aria-label=Eixo] button{border:0;background:transparent;border-radius:5px;font-size:.72rem;padding:6px 9px}.app .president-compare [aria-label=Eixo] button[aria-pressed=true]{color:#fff;background:var(--brand-blue)}.app .compare-chart{margin:12px 0 0;position:relative}.app .compare-chart svg{display:block;width:100%;height:auto}.app .compare-legend{gap:6px 16px;font-size:.66rem}.app .compare-readout{display:block;position:static;margin-top:16px;padding:14px;background:#f4f8ff;border:1px solid #dce5f1;border-radius:8px;font-size:.75rem}.app .compare-readout-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 12px;margin-bottom:12px}.app .compare-readout-header h3{margin:0;font-size:.9rem;letter-spacing:-.025em}.app .compare-readout-header p{grid-column:1/-1;margin:0;color:#75839b;font-size:.7rem}.app .compare-readout-position{padding:5px 9px;border:1px solid #c9dbff;border-radius:7px;color:var(--brand-blue);white-space:nowrap;font-size:.7rem}.app .compare-readout-years{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.app .compare-readout-years[data-columns="1"]{grid-template-columns:minmax(0,1fr)}.app .compare-readout-year{min-width:0}.app .compare-readout-year+.compare-readout-year{border-left:1px solid #dce5f1;padding-left:18px}.app .compare-readout .year{margin:0 0 6px;color:var(--brand-navy);font-size:.8rem;letter-spacing:0;text-transform:none}.app .compare-readout-year ul{list-style:none;margin:0;padding:0}.app .compare-readout-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:32px;padding:4px 6px;background:#ffffffb3;border-bottom:1px solid #edf1f7}.app .compare-readout-name{overflow-wrap:anywhere;line-height:1.4}.app .compare-readout-row>strong{font-size:.8rem;white-space:nowrap}.app .compare-readout-swatch{width:22px;border-top:3px solid}.app .compare-readout-swatch.dashed{border-top-style:dashed;border-top-width:2px}.app .compare-readout-scope{margin:4px 0;color:var(--text-secondary)}.app .dashboard-lower{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}.app .dashboard-lower>*{min-width:0;margin:0}.app .dashboard-state-head{gap:10px;align-items:center;margin-bottom:12px}.app .dashboard-state-head .field{min-width:145px;max-width:190px;font-size:.7rem}.app .dashboard-state-head .field select{width:100%;min-width:0}.app .dashboard-lower .dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.app .dashboard-card{padding:13px;min-width:0;border-radius:9px;display:flex;flex-direction:column;gap:0}.app .dashboard-card-head{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-height:0;margin-bottom:5px}.app .dashboard-card-head h3{font-size:.86rem;line-height:1.3;overflow-wrap:anywhere;margin:0}.app .dashboard-card-head .dashboard-note{font-size:.64rem;margin:3px 0}.app .dashboard-office-status{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.app .dashboard-office-status .chip{position:static;font-size:.58rem;padding:3px 6px;white-space:normal}.app .dashboard-card ol{margin:6px 0 10px}.app .dashboard-card li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 7px;padding:8px 0}.app .dashboard-card .state-candidate-name{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3;font-size:.75rem;overflow-wrap:anywhere}.app .dashboard-card li>div:first-child{grid-column:1;min-width:0}.app .dashboard-card li>strong{grid-column:2;grid-row:1;align-self:center;font-size:.85rem}.app .dashboard-card li .bar{grid-column:1/-1;height:4px;margin:2px 0 0}.app .dashboard-card .coverage{font-size:.66rem;margin-top:auto}.app .dashboard-card .waiting{border:0;background:#f3f6fb;padding:9px;font-size:.7rem;margin:6px 0;border-radius:6px}.app .dashboard-card-foot{display:flex;flex-direction:column;align-items:flex-start;margin-top:10px;padding-top:8px;gap:7px;border-top:1px solid #edf1f7}.app .dashboard-card-time{color:#75839b;font-size:.61rem}.app .dashboard-card-foot button{font-size:.68rem;padding:0;border:0;background:transparent;color:var(--brand-blue);text-align:left}.app .dashboard-senate-link{margin-top:12px}.app .dashboard-senate-link button{font-size:.74rem}.app .president-map-content{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:24px}.app .president-map-canvas{width:100%;min-width:0;max-width:380px;margin:0 auto}.app .president-map-canvas svg{display:block;width:100%;height:auto;min-height:200px}.app .president-map-popup{grid-column:auto;grid-row:auto;position:static;min-width:0;padding:12px;border-radius:8px;font-size:.72rem;box-shadow:none}.app .president-map-popup h3{font-size:.95rem}.app .map-state-select{display:grid;gap:4px;margin-bottom:10px;font-size:.68rem}.app .map-state-select select{width:100%;min-width:0}.app .president-map-legend{flex-wrap:wrap;font-size:.63rem;margin-top:12px;gap:8px}.app .president-map-note{font-size:.65rem}.app .map-details{padding-top:12px;margin-top:12px;border-top:1px solid #edf1f7;font-size:.68rem;color:var(--text-secondary)}.app .president-map-vote-fill.lula{background:var(--party-pt)}.app .president-map-vote-fill.bolsonaro{background:var(--party-pl)}.app .map-swatch.lula{background:var(--party-pt)}.app .map-swatch.bolsonaro{background:var(--party-pl)}.app .official-results-surface{padding:18px 20px}.app .official-results-surface .contest-summary{border:0;border-bottom:1px solid #e4ebf4;border-radius:0;box-shadow:none;margin:0 0 8px;padding:0 0 12px;display:grid;grid-template-columns:160px minmax(0,1fr) auto;align-items:center;gap:12px}.app .contest-summary h2{display:none}.app .contest-summary p{font-size:.7rem;margin:3px 0}.app .contest-summary .big{font-size:1.3rem;line-height:1.2}.app .contest-summary .coverage{margin:0}.app .official-counting-status{font-size:.68rem;color:var(--text-secondary)}.app .senate-contest-note{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:9px 12px;margin:0 0 10px;background:#eaf3ff;border-radius:6px;color:#24559a;font-size:.72rem}.app .senate-contest-note button{margin-left:auto;border:0;background:transparent;color:var(--brand-blue);padding:0;font-size:.68rem}.app .official-layout{margin:0}.app .candidate-results{min-width:0;padding:0;border:0;box-shadow:none;background:transparent}.app .candidate-results>h2{display:none}.app .candidate-results>.lead{font-size:.65rem;margin:4px 0 8px;color:#8390a6}.candidate-list-head,.candidate-list .candidate{display:grid;align-items:center;gap:14px}.candidate-list-head{padding:8px 0;border-bottom:1px solid #dce5f1;color:#7a8aa2;font-size:.6rem;text-transform:uppercase;letter-spacing:.04em}.majority-list .candidate-list-head,.candidate-list.majority-list .candidate{grid-template-columns:38px minmax(155px,1fr) minmax(80px,1.3fr) 90px 104px}.proportional-list .candidate-list-head,.candidate-list.proportional-list .candidate{grid-template-columns:38px minmax(140px,1fr) 100px 65px 145px 30px}.app .candidate-list .candidate,.admin-shell .candidate-list .candidate{padding:12px 0;border-bottom:1px solid #e9eef6;position:relative}.candidate-identity{min-width:0}.app .candidate-name,.admin-shell .candidate-name{color:#0d1b3d;font-weight:700;text-align:left;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;font-size:.82rem;padding:0;background:transparent;border:0;border-radius:0}.candidate-rank{width:28px;height:25px;display:grid;place-items:center;background:#f0f3f8;color:#60718d;border-radius:5px;font-size:.7rem}.candidate.senate-leading{border-left:3px solid var(--brand-blue);padding-left:8px!important}.candidate.senate-leading .candidate-rank{background:#eaf3ff;color:var(--brand-blue)}.candidate-list .candidate-share{grid-column:auto;grid-row:auto;font-size:1.2rem;color:#0d1b3d;text-align:right;font-weight:750;white-space:nowrap}.candidate-list .votes{grid-column:auto;grid-row:auto;display:grid;text-align:right;gap:3px}.candidate-list .votes strong{font-size:.8rem;font-weight:600;color:#4b5e7c}.candidate-list .votes small{font-size:.6rem;color:#7b8ca5}.candidate-list .candidate-vote-bar{grid-column:auto;grid-row:auto;height:7px;margin:0}.candidate-vote-bar,.party-bar{background:#e8edf5;border-radius:99px;min-width:0}.candidate-vote-bar>i,.party-bar>i{display:block;height:100%;border-radius:inherit;background:var(--candidate-color,#2563eb)}.candidate-list .official-candidate-status{font-size:.6rem}.candidate-identity>.official-candidate-status{display:inline-flex;margin-left:6px}.candidate-list .vote-destination{font-size:.65rem}.candidate-list .watch-action{grid-column:auto;grid-row:auto;padding:4px;border:0;background:transparent;color:#9aa7ba;font-size:1.3rem}.candidate-list .watch-action[aria-pressed=true]{color:#2563eb}.candidate-list .senate-seat-line{grid-column:1/-1;border-top:1px dashed #b7c9e3;text-align:center;font-size:.6rem;color:#8091ac;margin:2px 0 0;padding:6px 0 0}.app .candidate-controls{margin:12px 0}.app .candidate-filter-row{display:flex;gap:12px;align-items:end}.app .candidate-search{flex:1;max-width:none;margin:0}.app .candidate-party-filter{display:grid;gap:5px;font-size:.72rem;min-width:160px}.app .candidate-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.app .candidate-tabs button{padding:7px 12px;border-radius:6px;font-size:.72rem}.app .candidate-tabs button.active{background:#2563eb;border-color:#2563eb;color:#fff}.app .candidate-pagination{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding-top:15px;font-size:.72rem;color:#70809a}.app .candidate-pagination>div{display:flex;align-items:center;gap:10px}.app .official-layout.has-detail,.app .projection-layout.has-detail{grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:20px}.app .official-layout.has-detail .majority-list .candidate{grid-template-columns:30px minmax(130px,1fr) 70px 80px;gap:8px}.app .official-layout.has-detail .majority-list .candidate-vote-bar{grid-column:2/-1;grid-row:2}.app .official-layout.has-detail .majority-list .candidate-list-head{display:none}.app .official-layout.has-detail .proportional-list .candidate{grid-template-columns:28px minmax(90px,1fr) 80px 55px 30px;gap:8px}.app .official-layout.has-detail .proportional-list .candidate>.official-candidate-status{grid-column:2/-1;grid-row:2}.app .official-layout.has-detail .proportional-list .candidate-list-head{display:none}.app .candidate-detail{align-self:start;padding:18px;background:#f9fbff;border:1px solid #dce5f1;border-radius:10px;box-shadow:none}.app .candidate-detail h3{font-size:1.05rem}.app .candidate-metrics dd{font-size:1.35rem;letter-spacing:-.03em}.app .voting-summary{border:0;border-top:1px solid #e4ebf4;border-radius:0;box-shadow:none;margin:15px 0 0;padding:14px 0 0;background:transparent}.app .voting-summary h3{display:flex;gap:7px;margin:0 0 12px;font-size:.95rem;font-weight:650}.app .voting-summary h3 span{color:#8da0bf}.app .voting-metrics{display:grid;grid-template-columns:1.3fr 1.1fr 1fr 1fr;gap:16px}.app .voting-metrics>div{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px}.app .voting-metrics>div+div{border-left:1px solid #e1e9f4;padding-left:16px}.app .voting-metrics span{font-size:.67rem;color:#647695}.app .voting-metrics strong{font-size:1.45rem;letter-spacing:-.03em;line-height:1.1}.app .voting-metrics small{font-size:.62rem;color:#7a8ca5;line-height:1.4}.app .voting-metrics .participation-bar{width:100%;height:5px;margin:4px 0}.app .metric-caption{font-size:.6rem;color:#8292aa;margin:8px 0 0}.app .vote-conditions{font-size:.65rem;color:#6b7b94;margin:8px 0 0}.app .senate-panel{border:0;padding:0;background:transparent;box-shadow:none}.app .senate-heading{margin-bottom:12px}.app .senate-heading h2{display:none}.app .senate-heading-sub{font-size:.85rem;margin:0}.app .senate-overview{background:#fff;border:1px solid #dce5f1;padding:20px;border-radius:12px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:26px;align-items:center}.app .senate-gauge svg{width:100%;max-height:300px}.app .senate-seat.is-favor{fill:#2563eb;stroke:#2563eb;stroke-width:1}.app .senate-seat.is-other{fill:#cbd5e1;stroke:#cbd5e1;stroke-width:1}.app .senate-seat.is-open{fill:#fff;stroke:#aab8ce;stroke-width:1.3}.app .senate-overview h3{font-size:.95rem;margin:0 0 10px}.app .senate-favor{font-size:1.05rem;font-weight:700}.app .senate-marks{padding:0;margin:14px 0 0;display:grid;gap:12px;list-style:none}.app .senate-marks li{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:3px 10px;font-size:.7rem}.app .senate-marks li>strong{grid-column:1;grid-row:1/4;font-size:1.4rem;color:#0d1b3d}.app .senate-marks li>.bar{grid-column:2;grid-row:2;width:100%;height:6px;margin:3px 0}.app .senate-legend{justify-content:center;gap:10px;font-size:.66rem}.app .senate-note{font-size:.72rem;padding:10px 0;margin:0}.app .senate-criteria{font-size:.72rem;color:#547198;border-top:1px solid #dce5f1;padding:10px 0}.app .senate-filter{display:flex;gap:12px;align-items:end;margin:16px 0}.app .senate-filter h3{margin-right:auto;font-size:1.05rem}.app .senate-filter .field{font-size:.7rem;width:190px}.app .senate-filter input,.app .senate-filter select{width:100%}.app .senate-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.app .senate-cards article{padding:16px;border:1px solid #dce5f1;border-radius:10px}.app .senate-card-head{align-items:flex-start;flex-wrap:wrap;gap:6px}.app .senate-card-head h3{font-size:.95rem}.app .senate-cards p{font-size:.68rem}.app .senate-state-status{color:#8291a6}.app .senate-seat-heading{font-size:.62rem;text-transform:uppercase;color:#8391a7;letter-spacing:.04em;margin:12px 0 5px}.app .senate-continuing{background:#f4f7fb;padding:10px;border-radius:7px;border:0;margin:0}.app .senate-candidates li{padding:9px 0;font-size:.74rem}.app .senate-candidates .num{font-size:.68rem;color:#697d9c}.app .senate-class{border-radius:5px;font-size:.58rem}.app .senate-more{border:0;padding:5px 0;background:transparent;color:#2563eb;font-size:.7rem}.app .projection-panel>h2{font-size:1rem;margin:0}.app .projection-panel>p{font-size:.72rem;margin:8px 0}.app .projection-notice{background:#edf4ff;padding:10px 12px;border-radius:7px;color:#315b98}.app .projection-panel .projection-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0;padding:14px 0;border:0;border-top:1px solid #e1e9f4;border-bottom:1px solid #e1e9f4;border-radius:0;box-shadow:none}.app .projection-summary h3{display:none}.app .projection-summary>div{padding:0 12px 0 0;border-right:1px solid #e1e9f4;min-width:0}.app .projection-summary>div:last-child{border:0}.app .projection-summary strong.big{font-size:1.3rem;display:block}.app .projection-summary small{display:block;color:#7a8ca5;font-size:.65rem}.app .projection-summary p{margin:2px 0;font-size:.67rem}.app .projection-summary .coverage-label{font-size:.7rem}.app .projection-list-panel{padding:0;border:0;box-shadow:none}.app .projection-list-panel h3{font-size:.85rem;margin:0}.app .projection-list-panel>.lead{font-size:.65rem;margin:4px 0 10px}.app .projection-list-head,.app .projection-row{display:grid;grid-template-columns:35px minmax(160px,1fr) 110px 110px 95px 70px;gap:12px;align-items:center}.app .projection-list.is-complete .projection-list-head,.app .projection-list.is-complete .projection-row{grid-template-columns:35px minmax(160px,1fr) 110px 95px 70px}.app .projection-list-head{font-size:.6rem;color:#8292ab;text-transform:uppercase;padding:10px 0;border-bottom:1px solid #dce5f1}.app .projection-row{padding:14px 0;border-bottom:1px solid #e9eef6}.app .projection-row .candidate-vote-bar{height:5px;margin-top:7px}.app .projection-row .votes,.app .projection-row .observed-votes{text-align:right;display:grid;font-size:.85rem}.app .projection-row .votes small,.app .projection-row .observed-votes small,.app .projection-row .projected-share small{display:none}.app .projection-row .projected-share{text-align:right;font-size:1.05rem}.app .projection-row .projection-rank{color:#8797ad;font-size:.72rem}.app .projection-row>button{grid-column:auto;grid-row:auto;padding:6px;font-size:.68rem}.app .projection-row .candidate-party{font-size:.68rem}.app .projection-explanation{margin:18px 0 12px;padding:12px;background:#f0f5ff;border-radius:8px}.app .projection-explanation h3{font-size:.8rem;margin:0 0 5px}.app .projection-hypothesis{margin:0;color:#5d7294;font-size:.72rem}.app .projection-layout.has-detail .projection-list-head{display:none}.app .projection-layout.has-detail .projection-row{grid-template-columns:25px minmax(0,1fr) auto;gap:7px}.app .projection-layout.has-detail .projection-row .projection-identity-cell{grid-column:2/-1}.app .projection-layout.has-detail .projection-row .observed-votes{grid-column:2}.app .projection-layout.has-detail .projection-row .votes{grid-column:3}.app .projection-layout.has-detail .projection-row .projected-share{grid-column:2;text-align:left}.app .projection-layout.has-detail .projection-row>button{grid-column:3}.app .projection-layout.has-detail .projection-row .votes small,.app .projection-layout.has-detail .projection-row .observed-votes small{display:block;font-size:.6rem;color:#8292ab}.access-popover{border-radius:12px;box-shadow:0 12px 36px #0d1b3d24;z-index:80}.access-popover button[type=submit]{background:#2563eb;border-color:#2563eb;color:#fff}.admin-shell{max-width:1440px;margin:0 auto;padding:0 20px 20px;color:#0d1b3d;background:#f4f7fc}.admin-shell.is-authenticated{display:grid;grid-template-columns:210px minmax(0,1fr);column-gap:24px}.admin-shell .admin-header{grid-column:2;margin:0;min-height:76px;padding:14px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce5f1}.admin-header .admin-brand{display:inline-block;margin:0 16px 0 0;vertical-align:middle}.admin-brand img{height:38px;width:auto}.admin-header small{font-size:.64rem;color:#8290a8}.admin-shell .admin-workspace{display:contents}.admin-shell .admin-sidebar{grid-column:1;grid-row:1/4;position:sticky;top:0;align-self:start;display:flex;flex-direction:column;gap:5px;min-height:calc(100vh - 20px);padding:18px 12px;margin:0;background:#0d1b3d;border-radius:0 0 12px 12px}.admin-sidebar .admin-sidebar-brand{padding:5px;background:transparent;margin-bottom:14px}.admin-sidebar-brand img{width:100%;padding:7px;background:#fff;border-radius:7px}.admin-sidebar>small{color:#94a6c5;letter-spacing:.08em;padding:0 10px 10px;font-size:.6rem}.admin-sidebar a{color:#d5dfef;padding:10px;border-radius:6px;text-decoration:none;font-size:.75rem;background:transparent}.admin-sidebar a:hover,.admin-sidebar a[aria-current=page]{background:#2563eb;color:#fff}.admin-shell .admin-content{grid-column:2;min-width:0}.admin-page-head{padding:24px 0 14px}.admin-page-head small{font-size:.6rem;color:#7184a4;letter-spacing:.08em}.admin-page-head h1{margin:5px 0;font-size:1.8rem;font-weight:800}.admin-page-head p{margin:0;font-size:.78rem;color:#7485a0}.admin-shell>.admin-alert{grid-column:2}.admin-data-note{font-size:.7rem;margin:10px 0;color:#677b99}.admin-data-note summary{cursor:pointer}.admin-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.admin-kpis>article{padding:16px;display:grid;gap:8px;border:1px solid #dce5f1;border-radius:10px;background:#fff;min-width:0}.admin-kpis small{font-size:.67rem;color:#7a8aa2}.admin-kpis strong{font-size:1.6rem;letter-spacing:-.035em;overflow-wrap:anywhere}.admin-kpis.preview-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-kpis .preview-date{font-size:1rem;line-height:1.4}.admin-attention{margin:14px 0;padding:14px 18px;background:#fff9e9;border:1px solid #f3e7bd;border-radius:10px;color:#77602f}.admin-attention h2{margin:0 0 7px;font-size:.9rem}.admin-attention ul{margin:0;padding-left:18px;font-size:.75rem;line-height:1.7}.admin-shell .admin-card{margin:14px 0;padding:18px;background:#fff;border:1px solid #dce5f1;border-radius:10px;box-shadow:none;min-width:0}.admin-shell .admin-card h2{font-size:1.05rem;margin:0 0 12px}.admin-shell .admin-card p{font-size:.73rem;color:#687c99}.admin-operation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-shell .admin-metrics{gap:8px}.admin-shell .admin-metrics>div{padding:10px;background:#f6f9fd;border:0;border-radius:6px;min-width:0}.admin-shell .admin-metrics dt{font-size:.64rem;color:#7385a2}.admin-shell .admin-metrics dd{font-size:.85rem;margin-top:5px;overflow-wrap:anywhere}.admin-shell .admin-preview-banner{background:#edf4ff;border-left-color:#2563eb;border-radius:7px;color:#315d9c;font-size:.75rem;padding:12px 14px}.admin-shell select{min-height:38px;border:1px solid #cfdaea;border-radius:7px;background:#fff;padding:8px 10px;max-width:100%}.admin-shell #admin-run{display:block;width:100%;margin:7px 0 14px}.admin-shell table{font-size:.73rem;width:100%}.admin-shell th{color:#8291a9;font-size:.63rem;text-transform:uppercase;background:#f7f9fd}.admin-shell td,.admin-shell th{padding:12px;border-bottom:1px solid #e9eef5}.admin-shell .candidate-party{color:var(--candidate-color,#7c8ba3);font-size:.68rem;font-weight:600;display:block}.admin-shell td .candidate-vote-bar{height:5px;margin-top:7px;max-width:250px}.empty-state{text-align:center;border:1px dashed #cbd7e9;border-radius:9px;padding:32px 18px;background:#f7faff;margin:16px 0;color:#7285a1;font-size:.8rem}.empty-state h3{color:#4a6182;font-size:1rem}.admin-shell .national-intro{display:flex;align-items:end;justify-content:space-between;gap:14px}.admin-shell .national-intro h2{font-size:1.15rem}.national-status-tabs{display:flex;gap:5px;flex-wrap:wrap;margin:15px 0}.national-status-tabs button{border:0;background:transparent;color:#6e809a;font-size:.73rem;padding:8px 12px;border-radius:7px}.national-status-tabs button[aria-pressed=true]{background:#e6efff;color:#2563eb}.admin-shell .national-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-shell .national-card{padding:16px;background:#fff;border:1px solid #dce5f1;border-radius:10px;min-width:0}.admin-shell .national-card-head{display:flex;justify-content:space-between;align-items:start;gap:8px}.admin-shell .national-card-head h3{margin:0;display:grid;gap:3px}.admin-shell .national-card-head h3>strong{font-size:1.35rem}.admin-shell .national-card-head h3>small{font-size:.68rem;font-weight:400;color:#72839f}.admin-shell .national-card-head .chip{font-size:.56rem;white-space:normal;border-radius:5px;padding:4px 6px}.admin-shell .national-card ol{padding:0;list-style:none;margin:15px 0}.admin-shell .national-card li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:10px 0;border-bottom:1px solid #edf1f7;font-size:.75rem}.admin-shell .national-card li>span{grid-column:1;overflow-wrap:anywhere;font-weight:600}.admin-shell .national-card li>.candidate-party{grid-column:1;grid-row:2}.admin-shell .national-card .national-share{grid-column:2;grid-row:1/3;align-self:center}.admin-shell .national-card li>small.num{grid-column:1/-1;font-size:.6rem;color:#7a8aa3}.admin-shell .national-card li>.candidate-vote-bar{grid-column:1/-1;height:5px}.admin-shell .national-card .waiting{margin:18px 0 0;padding:16px 10px;font-size:.72rem;line-height:1.6;background:#f5f8fc;border-radius:6px;color:#8b9ab0;border:0}.admin-shell .national-card .coverage{margin-top:14px;font-size:.68rem}.admin-shell .national-card p,.admin-shell .national-card>small{font-size:.65rem;color:#7a8ca7}.admin-shell .selectors{display:flex;flex-wrap:wrap;gap:12px;padding:14px;background:#fff;border:1px solid #dce5f1;border-radius:10px 10px 0 0;margin:14px 0 0}.admin-shell .selectors label{display:grid;flex:1;gap:5px;font-size:.7rem;min-width:130px}.admin-shell .selectors select{width:100%}.admin-shell .simulator-controls{display:flex;flex-wrap:wrap;gap:7px;padding:14px;background:#fff;border:1px solid #dce5f1;border-top:0;border-radius:0 0 10px 10px}.admin-shell .simulator-controls button{background:#fff;color:#486180;border:1px solid #d3deec;font-size:.65rem;padding:8px 10px;border-radius:6px}.admin-shell .simulator-controls button:first-child{background:#2563eb;border-color:#2563eb;color:#fff}.admin-shell .simulator-controls button:disabled{opacity:.4}.admin-shell .simulator-controls label{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:.7rem}.admin-shell .simulator-timeline{display:block;padding:16px;background:#fff;border:1px solid #dce5f1;border-radius:10px;margin:14px 0 0;color:#6580a4;font-size:.7rem}.admin-shell .simulator-timeline input{display:block;width:100%;margin-top:10px;accent-color:#2563eb}.admin-shell .simulator-clock{display:flex;flex-wrap:wrap;justify-content:space-between;font-size:.63rem;color:#8695ab;gap:6px}.admin-shell .simulator-result h2{font-size:.7rem;text-transform:uppercase;color:#637b9e}.admin-shell .simulator-result h3{font-size:1.05rem}.admin-shell .simulator-result.is-projection{background:#f4f8ff}.admin-shell .commercial-footer{grid-column:1/-1}@media(max-width:1100px){.app .dashboard-lower .dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app .official-layout.has-detail,.app .projection-layout.has-detail{grid-template-columns:1fr}.app .senate-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-shell.is-authenticated{grid-template-columns:180px minmax(0,1fr);column-gap:16px}.admin-kpis,.admin-shell .national-board{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-operation-grid{grid-template-columns:1fr}.admin-shell .majority-list .candidate-list-head,.admin-shell .candidate-list.majority-list .candidate{grid-template-columns:28px minmax(100px,1fr) minmax(50px,.7fr) 70px 75px;gap:8px}}@media(max-width:767px){.app .page{padding:18px 14px 8px}.app[data-area=home] .commercial-footer{padding-inline:14px}.app .page-head h1{font-size:1.6rem}.app .app-header .inner{height:60px}.app .brand img{height:34px}.app .selectors{display:none;margin:12px 0}.app .selectors.is-open{display:flex}.app .filters-toggle{display:block;width:100%;margin:12px 0;text-align:left;background:#fff;border:1px solid #dce5f1;border-radius:7px}.app .dashboard-president,.app .dashboard-state,.app .dashboard-comparison,.app .president-map,.app .official-results-surface,.app .projection-panel{padding:15px}.app .dashboard-president>.turn-toggle{position:static;margin:4px 0}.app .president-leaders li{grid-template-columns:minmax(0,1fr) auto;gap:6px}.app .president-leaders li>strong{grid-column:2;font-size:1.2rem;min-width:65px}.app .president-leaders li>.bar{grid-column:1/-1;grid-row:2;height:5px}.app .dashboard-connection{margin-left:0}.app .dashboard-lower .dashboard-grid{grid-template-columns:1fr}.app .dashboard-state-head{flex-wrap:wrap}.app .president-map-content{grid-template-columns:1fr}.app .president-map-canvas{max-width:340px}.app .official-results-surface .contest-summary{grid-template-columns:1fr 1.4fr}.app .official-results-surface .contest-summary>.official-counting-status{grid-column:1/-1}.candidate-list-head{display:none}.candidate-list.majority-list .candidate,.admin-shell .candidate-list.majority-list .candidate,.app .official-layout.has-detail .majority-list .candidate{grid-template-columns:25px minmax(0,1fr) 80px;gap:6px 10px;padding:13px 0}.candidate-list .candidate-identity{grid-column:2;grid-row:1}.candidate-list .candidate-share{grid-column:3;grid-row:1;font-size:1.1rem}.candidate-list .candidate-vote-bar,.app .official-layout.has-detail .majority-list .candidate-vote-bar{grid-column:2/-1;grid-row:2;height:5px}.candidate-list .votes{grid-column:2/-1;grid-row:3;display:flex;gap:4px;justify-content:flex-end}.candidate-list .votes strong{font-size:.7rem}.candidate-list .candidate-name{font-size:.8rem}.candidate-list .candidate-rank{grid-column:1;grid-row:1;width:24px}.candidate-list.proportional-list .candidate,.app .official-layout.has-detail .proportional-list .candidate{grid-template-columns:25px minmax(0,1fr) 80px 25px;gap:7px}.candidate-list.proportional-list .votes{grid-column:3;grid-row:1;display:grid}.candidate-list.proportional-list .candidate-share{grid-column:3;grid-row:2;font-size:.75rem}.candidate-list.proportional-list .candidate>.official-candidate-status{grid-column:2;grid-row:2;font-size:.6rem}.candidate-list.proportional-list .watch-action{grid-column:4;grid-row:1}.app .candidate-filter-row{flex-direction:column;align-items:stretch}.app .candidate-party-filter{min-width:0}.app .voting-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.app .voting-metrics>div:nth-child(3){border-left:0;padding-left:0}.app .voting-metrics strong{font-size:1.35rem}.app .senate-overview{grid-template-columns:1fr;gap:16px;padding:15px}.app .senate-heading{flex-wrap:wrap;gap:10px}.app .senate-cards{grid-template-columns:1fr}.app .senate-filter{flex-wrap:wrap}.app .senate-filter h3{width:100%;margin:0}.app .senate-filter .field{width:auto;flex:1;min-width:120px}.app .projection-panel .projection-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.app .projection-summary>div:nth-child(2){border:0}.app .projection-list-head{display:none}.app .projection-row,.app .projection-list.is-complete .projection-row{grid-template-columns:25px minmax(0,1fr) auto;gap:9px}.app .projection-row .projection-identity-cell{grid-column:2/-1}.app .projection-row .observed-votes{grid-column:2;text-align:left}.app .projection-row .votes{grid-column:3}.app .projection-row .projected-share{grid-column:2;text-align:left;font-size:.85rem}.app .projection-row>button{grid-column:3}.app .projection-row .votes small,.app .projection-row .observed-votes small,.app .projection-row .projected-share small{display:block;font-size:.6rem;color:#8292ab;margin-bottom:3px}.admin-shell,.admin-shell.is-authenticated{display:block;padding:0 12px 12px}.admin-shell .admin-workspace{display:block}.admin-shell .admin-sidebar{position:static;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:10px;margin-top:12px;border-radius:10px}.admin-sidebar .admin-sidebar-brand,.admin-sidebar>small{display:none}.admin-sidebar a{font-size:.7rem;padding:8px}.admin-header small{display:none}.admin-page-head{padding:18px 0 10px}.admin-page-head h1{font-size:1.6rem}.admin-kpis{gap:10px}.admin-kpis>article{padding:12px}.admin-kpis strong{font-size:1.3rem}.admin-kpis.preview-kpis,.admin-shell .national-board{grid-template-columns:1fr}.admin-shell .national-intro{flex-wrap:wrap}.admin-shell .simulator-controls label{margin-left:0}.app .compare-readout-header{grid-template-columns:minmax(0,1fr)}.app .compare-readout-position{justify-self:start}.app .compare-readout-years{grid-template-columns:minmax(0,1fr);gap:14px}.app .compare-readout-year+.compare-readout-year{border-left:0;border-top:1px solid #dce5f1;padding:12px 0 0}.app .compare-readout-row{min-height:44px}}.app .dashboard>.mode-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}.app .dashboard-mode{flex-basis:100%;font-size:.68rem;margin:0;color:#7a8ba5}.app .dashboard>section,.app .dashboard>.dashboard-lower{margin-bottom:18px}.app .dashboard-president>.dashboard-card-head{display:block}.app .dashboard-president>.dashboard-card-head>.chip{position:absolute;right:20px;bottom:20px;font-size:.6rem}.app .president-round-switch{position:absolute;top:17px;right:20px;margin:0;padding:3px}.app .president-round-switch button{min-height:30px;font-size:.7rem}.app .president-expand{display:block;margin:11px 0 0 auto;border:0;padding:5px 0;background:transparent;color:#2563eb;font-size:.73rem}.app .president-leaders li .party-bar>i,.app .dashboard-card li .party-bar>i{background:var(--candidate-color,#2563eb)}.app .official-results-surface .contest-summary{grid-template-columns:180px minmax(0,1fr)}.app .official-results-surface .contest-summary>p{grid-column:1/-1;order:3;margin:0}.app .status-bar{background:transparent;border:0;padding:0;margin:0 0 12px;box-shadow:none;font-size:.68rem;gap:7px 14px}.app .participation-bar{height:5px;margin:10px 0 0;max-width:27%}.app .map-swatch.flavio{background:var(--party-pl)}.admin-shell td:first-child{white-space:normal;min-width:150px}.admin-shell .candidate-list .candidate-name{min-height:0;color:#0d1b3d;background:transparent;border:0;padding:0}.admin-shell .candidate-list .candidate-share{color:#0d1b3d}.admin-shell .candidate-list .senate-seat-line{color:#8796ad}.admin-shell .national-card .chip{color:#72839f;background:#edf2f8;border:0}@media(max-width:767px){.app .president-round-switch{position:static;margin:0 0 6px}.app .dashboard-president>.dashboard-card-head>.chip{position:static;margin-top:4px}.app .official-results-surface .contest-summary{grid-template-columns:1fr 1.4fr}.app .participation-bar{max-width:45%}}.app .candidate-vote-bar>i,.admin-shell .candidate-vote-bar>i{background:var(--candidate-color,#2563eb)}.app .candidate-party-label{display:block;color:#7a8aa3;font-size:.68rem;margin-top:3px}.app .candidate-title{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.app .dashboard-card .state-message{font-size:.72rem;color:#8a99ae;line-height:1.5;padding:14px 10px;margin:10px 0;background:#f4f7fc;border-radius:7px}.app .dashboard-card .seats{font-size:.65rem;margin:3px 0;color:#7b8ca5}.app .dashboard-card .coverage-label{margin:0 0 5px;font-size:.65rem}.app .dashboard-card .coverage{padding:0}.app .dashboard-president>.dashboard-card-head>.chip{display:none}.app .president-meta{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.app .president-meta .mode-badge{max-width:100%;white-space:normal}.app .president-meta .chip{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.5;font-size:.6rem;padding:3px 6px;background:#f3f6fc;color:#7185a4}.app .president-compare>h2{margin:0 0 9px}.app .president-compare>[aria-label=Eixo]{float:right;margin-top:-31px}.app .president-compare>button{padding:5px 0;border:0;color:#2563eb;background:transparent;font-size:.7rem}.app .president-layout{margin:0}.app .president-leaders{margin:8px 0}.app .president-leaders li{padding:8px 0;border-top:0}.app .dashboard-card-foot{padding-bottom:0}.app .voting-summary-compact .voting-metrics strong{font-size:1.3rem}.app .voting-summary-compact .voting-metrics small{font-size:.6rem}@media(max-width:767px){.app .candidate-list.proportional-list .candidate-official-status,.app .official-layout.has-detail .proportional-list .candidate-official-status{grid-column:2;grid-row:2}.app .president-compare>[aria-label=Eixo]{float:none;margin:0}.app .president-leaders li{padding:10px 0}}@media(min-width:768px){.app .official-layout.has-detail .proportional-list .candidate-official-status{grid-column:2/-1;grid-row:2}}.admin-preview-selectors{display:grid;grid-template-columns:.75fr .75fr 1.5fr;gap:12px;align-items:end;margin:14px 0}.admin-preview-selectors label{display:grid;gap:6px;font-size:.7rem;min-width:0}.admin-preview-selectors select{width:100%;min-width:0}.admin-shell .admin-preview-selectors #admin-run{margin:0}.admin-shell .admin-card>summary{color:#4c668a;font-size:.85rem;cursor:pointer;font-weight:600}@media(max-width:767px){.admin-preview-selectors{grid-template-columns:1fr}}.app .senate-heading-sub{font-style:normal}.app .senate-marks li{border:0;background:transparent;padding:0;border-radius:0}.app .senate-marks li>span{color:#637da3}.app .senate-legend .favor{background:#2563eb}.app .senate-legend .other{background:#cbd5e1}.candidate-list .candidate-action{grid-column:auto;grid-row:auto;text-align:center}.app .candidate-list .candidate-action button{min-height:28px;min-width:26px;padding:0;background:transparent;border:0;font-size:1.2rem;color:#9aa7ba}.app .candidate-list .candidate-action button[aria-pressed=true],.app .projection-row .watch-action[aria-pressed=true]{color:#2563eb}.app .projection-row .watch-action{color:#9aa7ba}@media(max-width:767px){.candidate-list .candidate-action{grid-column:4;grid-row:1}}@media(min-width:768px){.app .official-layout.has-detail .proportional-list .candidate-action{grid-column:5;grid-row:1}}.app .mode-switch button.active:last-child,.app .senate-tabs button.active:last-child{color:#fff;outline:none}@media(min-width:768px){.app .president-leaders-box .president-leaders li{grid-template-columns:minmax(0,1fr) minmax(40px,.6fr) max-content;column-gap:12px}.app .president-leaders-box .president-leaders li>strong{min-width:0;white-space:nowrap}}
