.electorate-page{max-width:1040px;margin-inline:auto}.electorate-place{font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.electorate-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.electorate-tile{padding:14px 16px;border-radius:var(--vb-radius-md);background:var(--vb-card-bg);box-shadow:var(--vb-shadow-sm)}.electorate-tile dt{font-size:.75rem;color:var(--vb-text-secondary)}.electorate-tile dd{display:flex;flex-direction:column;margin:2px 0 0}.electorate-tile strong{font-size:1.4rem;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--vb-blue-deep)}.electorate-tile dd span{font-size:.75rem;color:var(--vb-text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.electorate-card{display:flex;flex-direction:column;gap:10px;margin:0;padding:18px;border-radius:var(--vb-radius-lg);background:var(--vb-card-bg);box-shadow:var(--vb-shadow-sm)}.electorate-card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.electorate-pair{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px}.electorate-legend{display:flex;gap:16px;list-style:none;font-size:.8125rem}.electorate-legend li{display:flex;align-items:center;gap:6px}.swatch{width:12px;height:12px;border-radius:3px}.pyramid-men,.swatch.men{background:#0B8F6A;fill:#0B8F6A}.pyramid-women,.swatch.women{background:#7A4FB5;fill:#7A4FB5}.pyramid{width:100%;max-width:520px;height:auto;margin-inline:auto}.pyramid text{font-size:11px;fill:var(--vb-text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pyramid-age{font-weight:600;fill:var(--vb-text-secondary)}.bar-list{list-style:none;display:flex;flex-direction:column;gap:10px}.bar-list li{display:grid;grid-template-columns:minmax(110px,38%) 1fr auto;align-items:center;grid-gap:10px;gap:10px;font-size:.8125rem}.bar-track{height:10px;border-radius:5px;background:var(--vb-bar-bg);overflow:hidden}.bar-fill{display:block;height:100%;border-radius:5px;background:#5B6B8C}.bar-value{display:flex;flex-direction:column;align-items:flex-end;min-width:68px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bar-value small{color:var(--vb-text-muted);font-size:.6875rem}.electorate-sparks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.electorate-spark{margin:0}.electorate-spark figcaption{font-size:.8125rem;font-weight:600}.electorate-spark svg{width:100%;height:auto}.spark-line{fill:none;stroke:#5B6B8C;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.spark-dot{fill:#5B6B8C;stroke:var(--vb-card-bg);stroke-width:2}.spark-label{font-size:11px;font-weight:600;fill:var(--vb-text-primary)}.spark-year{font-size:10px;fill:var(--vb-text-muted)}.electorate-search{min-height:44px;padding:0 14px;border:none;border-radius:var(--vb-radius-sm);background:var(--vb-surface-2);font:inherit;font-size:16px}.electorate-table-wrap{max-height:480px;overflow:auto;border-radius:var(--vb-radius-sm)}.electorate-table{width:100%;border-collapse:collapse;font-size:.8125rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.electorate-table td,.electorate-table th{padding:10px 8px;text-align:right;border-bottom:.5px solid var(--vb-separator);white-space:nowrap}.electorate-table thead th{position:-webkit-sticky;position:sticky;top:0;background:var(--vb-card-bg);font-size:.75rem;color:var(--vb-text-secondary)}.electorate-table th:first-child{text-align:left}.electorate-table button{border:none;background:none;font:inherit;color:inherit;font-weight:inherit;cursor:pointer;padding:0}.electorate-table tbody th button{color:var(--vb-blue)}.electorate-table tr.active{background:rgba(31,95,191,.07)}.electorate-table [aria-sort] button:after{content:" ↓"}.electorate-table [aria-sort=ascending] button:after{content:" ↑"}@media (min-width:768px){.electorate-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.electorate-pair{grid-template-columns:1fr 1fr}.electorate-sparks{grid-template-columns:repeat(4,minmax(0,1fr))}}.learn-page{width:100%;min-width:0;max-width:880px;margin-inline:auto}.learn-page>section{min-width:0;max-width:100%}.glossary,.sim{width:100%;min-width:0;gap:14px}.glossary,.glossary-group,.sim{display:flex;flex-direction:column}.glossary-group{gap:6px;padding:18px;border-radius:var(--vb-radius-lg);background:var(--vb-card-bg);box-shadow:var(--vb-shadow-sm)}.glossary-term{padding:12px 0;border-top:.5px solid var(--vb-separator);scroll-margin-top:80px}.glossary-term:first-child{border-top:none}.glossary-term dt{font-weight:600;letter-spacing:-.01em}.glossary-term dd{margin:4px 0 0;color:var(--vb-text-secondary);font-size:.9rem;line-height:1.5}.glossary-term:target{background:var(--vb-yellow-light);border-radius:var(--vb-radius-sm);padding-inline:10px}.sim-seats input{max-width:140px}.sim-totals{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.sim-totals div{padding:14px 16px;border-radius:var(--vb-radius-md);background:var(--vb-card-bg);box-shadow:var(--vb-shadow-sm)}.sim-totals dt{font-size:.75rem;color:var(--vb-text-secondary)}.sim-totals dd{margin:2px 0 0;font-size:1.3rem;font-weight:700;color:var(--vb-blue-deep);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sim-badge{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:12px 14px;border-radius:var(--vb-radius-sm);font-size:.875rem;font-weight:500}.sim-badge.ok{background:rgba(10,143,74,.1);color:#087443}.sim-badge.edited,.sim-badge.warn{background:var(--vb-yellow-light);color:#7A5B00}.sim-badge .link-btn{display:inline-flex;align-items:center;gap:4px;min-height:32px}.sim-table-wrap{width:100%;min-width:0;max-width:100%;display:flex;flex-direction:column;gap:10px;overflow:auto;padding:0;isolation:isolate;border-radius:var(--vb-radius-lg);background:var(--vb-card-bg);box-shadow:var(--vb-shadow-sm)}.sim-table{width:100%;border-collapse:collapse;font-size:.8125rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sim-table td,.sim-table th{padding:8px 6px;text-align:right;border-bottom:.5px solid var(--vb-separator);white-space:nowrap}.sim-table th:first-child{text-align:left;font-weight:600}.sim-table thead th{font-size:.6875rem;color:var(--vb-text-secondary);font-weight:500}.sim-table tr.seated td strong,.sim-table tr.seated th:first-child{color:var(--vb-blue-deep)}.sim-table td.match{color:#087443}.sim-table td.match svg{margin-left:4px;vertical-align:-2px}.sim-table td.diff{color:#B42318;font-weight:600}.sim-name,.sim-votes{width:100%;min-width:88px;padding:6px 8px;border:none;border-radius:8px;background:var(--vb-surface-2);font:inherit;text-align:right;font-size:16px}.sim-name{min-width:110px;text-align:left}.sim-remove{width:32px;height:32px}.sim-card{gap:10px;padding:18px;border-radius:var(--vb-radius-lg);background:var(--vb-card-bg);box-shadow:var(--vb-shadow-sm)}.sim-card,.sim-how,.sim-steps{display:flex;flex-direction:column}.sim-how,.sim-steps{padding-left:20px;gap:8px;font-size:.875rem;line-height:1.5}.sim-how{list-style:none;padding-left:0}.sim-steps small{margin-left:8px;color:var(--vb-text-muted)}@media (max-width:767px){.sim>.text-secondary{overflow-wrap:anywhere}.sim-totals{grid-template-columns:minmax(0,1fr)}.sim-table{min-width:640px;border-collapse:separate;border-spacing:0}.sim-table th:first-child{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:var(--vb-card-bg);box-shadow:1px 0 var(--vb-separator)}.sim-table .sim-votes{width:120px}}@media (max-width:599px){.sim>.pill-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.sim>.pill-selector .pill-item{min-width:0;white-space:normal;min-height:44px;padding:8px}.sim .filters{display:grid;grid-template-columns:minmax(0,1fr)}.sim .field input,.sim .field select{width:100%;min-width:0}}.comparison-entry{width:max-content;min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:0 16px;border-radius:var(--vb-radius-sm);background:var(--vb-tint);color:#fff;font-weight:600}.comparison-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:20px;gap:20px;align-items:start}.comparison-panel{min-width:0;padding:18px;border:.5px solid var(--vb-card-border);border-radius:var(--vb-radius-lg);background:var(--vb-card-bg);box-shadow:var(--vb-shadow-sm)}.comparison-panel>h2{margin-bottom:14px;color:var(--vb-blue-deep);font-size:1rem}.comparison-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.comparison-options{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0 16px}.comparison-options .map-layer-toggle,.comparison-options .pill-selector{width:max-content;max-width:100%}.comparison-options button:disabled{opacity:.4;cursor:not-allowed}.comparison-map{min-width:0}.comparison-map .municipal-canvas,.comparison-map .uf-map{width:100%;max-width:none}.comparison-map .municipal-panel>.field{max-width:100%}.comparison-summary{display:grid;grid-gap:12px;gap:12px;margin-top:18px;padding-top:16px;border-top:.5px solid var(--vb-separator)}.comparison-summary>h3{font-size:1rem}.comparison-gap{display:flex;flex-direction:column;gap:2px;padding:12px;border-radius:var(--vb-radius-sm);background:rgba(31,95,191,.08);color:var(--vb-text-secondary)}.comparison-gap strong{color:var(--vb-blue-deep);font-size:1.05rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.comparison-gap small{overflow-wrap:anywhere}.comparison-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.comparison-stats>div{padding:10px;border-radius:12px;background:rgba(118,118,128,.08)}.comparison-stats dt{color:var(--vb-text-muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.comparison-stats dd{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.comparison-stats small{color:var(--vb-text-secondary)}@media (min-width:1100px){.comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,2vw,30px)}.comparison-panel{padding:clamp(18px,1.6vw,26px)}}@media (max-width:560px){.comparison-controls{grid-template-columns:1fr}.comparison-panel{padding:14px}}.candidate-card:has(.winner-open){position:relative}.winner-open{border:0;background:transparent;color:var(--vb-blue);font:inherit;font-size:.8rem;font-weight:600;padding:8px 0 0;cursor:pointer;text-align:left}.winner-open:after{content:"";position:absolute;inset:0;border-radius:inherit}.candidate-card:has(.winner-open:focus-visible){outline:2px solid var(--vb-blue);outline-offset:3px}.winner-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#EEF1F6;color:var(--vb-text-primary)}.winner-dialog::-webkit-backdrop{background:#EEF1F6}.winner-dialog::backdrop{background:#EEF1F6}.winner-screen{min-height:100%;display:grid;grid-template-rows:auto 1fr auto;grid-gap:10px;gap:10px;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}.winner-tools{align-items:center;justify-content:space-between;flex-wrap:wrap;width:min(100%,900px);margin-inline:auto}.winner-tools,.winner-tools>div{display:flex;gap:8px}.winner-tools button{display:inline-flex;gap:6px;padding-inline:12px;font-size:.8rem}.winner-stage,.winner-tools button{align-items:center;justify-content:center}.winner-stage{display:flex;min-height:0}.winner-poster{width:auto;height:auto;max-width:min(100%,560px);max-height:calc(100dvh - 120px - env(safe-area-inset-top) - env(safe-area-inset-bottom));object-fit:contain;border-radius:16px;box-shadow:0 12px 40px rgba(18,61,135,.12)}.winner-hint{text-align:center;font-size:.72rem;color:var(--vb-text-secondary)}@media (max-width:380px){.winner-tools button{padding-inline:8px;font-size:.72rem}.winner-tools>div{gap:4px}}.world-map{display:block;width:100%;aspect-ratio:900/460;height:auto;overflow:hidden}.world-country{cursor:pointer}.world-country path{transition:opacity .2s ease}.world-country:focus-visible path,.world-country:hover path{stroke:var(--vb-tint);stroke-width:2;opacity:1}.world-country:focus,.world-country:focus-visible{outline:none}.exterior-panel .field{flex:none;margin:8px 0}.exterior-panel .world-map{margin:8px 0 12px}.results-columns:has(.exterior-panel){display:flex;flex-direction:column;align-items:stretch}.exterior-panel{position:static;width:100%}@media (min-width:768px){.exterior-panel .field{width:min(100%,440px)}.exterior-panel .world-map{max-height:560px}}.results-columns:has(.exterior-panel)>.results-main{width:100%;max-width:920px;margin-inline:auto}.exterior-panel>p{text-align:center}@media (max-width:767px){.exterior-panel .world-map{width:calc(100% + 32px);max-width:none;margin:0 -16px}}.header-summary{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:38px;padding:0 12px;border-radius:999px;background:#e7eef9;color:var(--vb-blue-deep);font-size:.8rem;font-weight:650}.header-summary[aria-current]{background:var(--vb-blue);color:white}@media (max-width:560px){.header-compare span{display:none}}.summary-page{gap:24px;padding-bottom:30px}.summary-page,.summary-toolbar{display:flex;flex-direction:column}.summary-toolbar{gap:18px}.summary-intro{padding:10px 0 2px}.summary-intro h1{margin:10px 0;font-size:clamp(1.9rem,5vw,2.7rem);max-width:680px}.summary-eyebrow{display:flex;align-items:center;gap:7px;color:var(--vb-blue);font-size:.76rem;font-weight:650}.summary-filters{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.summary-filters .field{min-width:0}.summary-filters select{width:100%;min-width:0;text-overflow:ellipsis}.summary-segments{display:inline-flex;gap:4px;padding:4px;background:#e8e9ee;border-radius:14px}.summary-segments button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:none;border-radius:11px;background:transparent;color:var(--vb-text-secondary);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.summary-segments button[aria-pressed=true]{background:white;color:var(--vb-blue-deep);box-shadow:var(--vb-shadow-sm)}.summary-view-tabs{align-self:flex-start}.summary-status{font-size:.76rem;color:var(--vb-text-secondary);border-left:3px solid #bdcfe8;padding-left:12px}.summary-status p+p{margin-top:4px}.summary-note a,.summary-status a{color:var(--vb-blue);text-decoration:underline}.summary-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.summary-stats button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:20px;border:1px solid var(--vb-card-border);border-radius:20px;background:white;text-align:left;color:inherit;cursor:pointer;font:inherit}.summary-stats button[aria-pressed=true]{border-color:var(--vb-blue);background:#edf3fc}.summary-stats span{font-size:.85rem;font-weight:600}.summary-stats strong{font-size:2.2rem;line-height:1.15;color:var(--vb-blue-deep)}.summary-stats small{color:var(--vb-text-secondary);font-size:.7rem}.summary-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.summary-clear{border:none;background:transparent;color:var(--vb-blue);cursor:pointer;font:inherit;font-size:.8rem;padding:10px 0}.summary-table-wrap{overflow-x:auto}.summary-table{width:100%;border-collapse:collapse;font-size:.88rem}.summary-table td,.summary-table th{padding:10px 8px;border-bottom:1px solid var(--vb-separator)}.summary-table thead th{font-size:.7rem;color:var(--vb-text-secondary);font-weight:500;text-align:center}.summary-table th:first-child{text-align:left}.summary-table td{text-align:center;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.summary-table th button{display:flex;align-items:center;gap:12px;min-height:44px;border:none;background:transparent;cursor:pointer;font:inherit;font-weight:650;color:inherit}.summary-table tr[data-selected=true]{background:#edf3fc}.summary-table tbody tr:last-child>*{border-bottom:none}.summary-party-logo{width:48px;height:38px;padding:4px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:white;border-radius:7px}.summary-party-logo img{width:100%;height:100%;object-fit:contain}.summary-party-logo span{font-size:.55rem;overflow-wrap:anywhere;text-align:center;color:#5a626e}.summary-people{display:flex;flex-direction:column;gap:16px}.presidential-summary .summary-section-heading{flex-wrap:wrap}.presidential-summary>.summary-note{margin:8px 0 16px}.summary-candidates{list-style:none;display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.summary-candidate{display:flex;gap:12px;align-items:center;min-width:0;background:white;border:1px solid var(--vb-card-border);border-radius:18px;padding:16px}.summary-portrait{width:64px;height:76px;flex-shrink:0;background:#edf0f4;color:#8d96a4;border-radius:12px;overflow:hidden;display:grid;place-items:center}.summary-portrait img{width:100%;height:100%;object-fit:cover;object-position:top}.summary-candidate-info{flex:1 1;min-width:0}.summary-candidate h3{font-size:.88rem;line-height:1.25;margin:5px 0;overflow-wrap:anywhere}.summary-candidate p{font-size:.73rem;color:var(--vb-text-secondary)}.summary-outcome{font-size:.65rem;font-weight:650;color:var(--vb-green-dark)}.summary-outcome.runoff{color:var(--vb-blue)}.summary-list-filter{display:flex;gap:12px;justify-content:space-between;align-items:center;font-size:.8rem;color:var(--vb-text-secondary);margin-bottom:-12px}.summary-note{font-size:.74rem}.summary-empty,.summary-note{color:var(--vb-text-secondary);line-height:1.6}.summary-empty{padding:22px 4px;font-size:.88rem}.summary-notice{padding:28px;border-radius:20px;background:white;display:flex;align-items:center;gap:16px;font-size:.88rem;flex-wrap:wrap}.header-summary:focus-visible,.summary-page button:focus-visible{outline:3px solid #73a6e6;outline-offset:3px}@media (max-width:700px){.summary-candidates{grid-template-columns:1fr}.summary-page{gap:20px}.summary-stats{gap:8px}.summary-stats button{padding:13px 10px;border-radius:16px}.summary-stats span{font-size:.74rem;min-height:34px}.summary-stats strong{font-size:1.8rem}.summary-parties{padding:16px 12px}.summary-table td,.summary-table th{padding:8px 4px}.summary-table th button{gap:7px;font-size:.76rem}.summary-table .summary-party-logo{width:38px}}@media (min-width:768px){.summary-toolbar{flex-direction:row;align-items:center;justify-content:space-between;gap:32px}.summary-view-tabs{flex:0 0 auto}.summary-filters{display:flex;align-items:flex-end}.summary-filters .field{flex:0 1 280px;width:280px}.presidential-summary .summary-section-heading .field{width:260px;flex:0 1 260px}.summary-people>.pill-btn{align-self:flex-start;width:auto}}@media (min-width:1024px){.is-summary .header-inner,.is-summary .main-content{max-width:1600px;padding-inline:clamp(24px,3vw,56px)}.is-summary .presidential-summary .candidate-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.is-summary .summary-candidates{grid-template-columns:repeat(3,minmax(0,1fr))}.is-summary .summary-hemicycle{max-width:900px}}@media (max-width:390px){.header-summary{padding:0 8px;font-size:.73rem}.header-summary span{display:none}.header-actions{gap:3px}.header-inner{gap:6px;padding-inline:12px}.summary-candidate{padding:12px;gap:9px}.summary-view-tabs{align-self:stretch}.summary-view-tabs button{flex:1 1;padding:10px 7px;font-size:.78rem}}.summary-chamber{gap:18px}.summary-chamber .summary-eyebrow{margin-bottom:5px}.summary-election-scope{color:var(--vb-text-secondary);font-size:.88rem;margin-top:-10px}.summary-seat-overview{display:flex;flex-direction:column;gap:12px}.summary-senate-total{font-size:.88rem;font-weight:600;color:var(--vb-blue-deep)}.summary-seat-totals{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.summary-seat-totals>div{display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding:16px;border-radius:15px;background:var(--vb-surface-2)}.summary-seat-totals dt{font-size:.78rem;line-height:1.35;color:var(--vb-text-secondary)}.summary-seat-totals dd{font-size:1.85rem;font-weight:700;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.summary-seat-totals>div:nth-child(2){background:#edf3fc}.summary-seat-totals>div:nth-child(2) dd{color:var(--vb-blue-deep)}.summary-year{padding:6px 10px;border:1px solid var(--vb-card-border);border-radius:9px;font-size:.75rem;font-weight:600;color:var(--vb-text-secondary)}.summary-chart-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.summary-check{display:flex;gap:8px;align-items:center;font-size:.78rem;cursor:pointer;min-height:44px}.summary-check input{accent-color:var(--vb-blue);width:16px;height:16px}.summary-hemicycle{width:100%;max-width:740px;margin:0 auto}.summary-hemicycle svg{display:block;width:100%;height:auto;overflow:visible}.summary-chart-number{fill:var(--vb-blue-deep);font-size:32px;font-weight:700}.summary-chart-label{fill:var(--vb-text-secondary);font-size:8px}.summary-hemicycle figcaption{text-align:center;font-size:.82rem;color:var(--vb-text-secondary)}.summary-chart-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 18px}.summary-chart-legend span{display:inline-flex;align-items:center;gap:6px;font-size:.74rem;color:var(--vb-text-secondary)}.summary-chart-legend i{display:inline-block;width:10px;height:10px;border-radius:50%}.summary-dot-pending{border:1px solid #a6aeb9;background:white}.summary-dot-new{background:var(--vb-blue);border:1px solid #263446;box-shadow:inset 0 0 0 1px white}.summary-dot-retained{background:#fff;border:1px dashed #536071;box-shadow:inset 0 0 0 2px #dce4ef}.summary-party-chips{display:flex;gap:8px;flex-wrap:wrap;padding-top:8px;border-top:1px solid var(--vb-separator)}.summary-party-chips button{display:flex;align-items:center;gap:7px;min-height:44px;padding:4px 10px 4px 4px;border:1px solid var(--vb-card-border);border-radius:12px;background:white;font:inherit;font-size:.75rem;cursor:pointer;color:inherit}.summary-party-chips button[aria-pressed=true]{background:#edf3fc;border-color:var(--vb-blue)}.summary-party-chips .summary-party-logo{width:32px;height:28px}.summary-party-chips strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--vb-blue-deep)}.summary-method{border-top:1px solid var(--vb-separator);padding-top:12px;font-size:.75rem;color:var(--vb-text-secondary)}.summary-method summary{cursor:pointer;padding:6px 0;color:var(--vb-blue)}.summary-method p{margin-top:8px;line-height:1.65;max-width:800px}.summary-method a{text-decoration:underline;color:var(--vb-blue)}.summary-asset-links{display:flex;flex-wrap:wrap;gap:12px 18px;padding:16px 0}.summary-chart-waiting{min-height:200px;display:flex;align-items:center;justify-content:center;text-align:center;max-width:440px;margin:auto}@media (max-width:480px){.summary-seat-totals{gap:7px}.summary-seat-totals>div{padding:12px 9px}.summary-seat-totals dt{font-size:.7rem}.summary-seat-totals dd{font-size:1.6rem}.summary-chamber{padding:18px 12px}.summary-chart-tools .summary-segments{width:100%}.summary-chart-tools .summary-segments button{flex:1 1;padding-inline:7px;font-size:.75rem}.summary-chart-legend{gap:8px 12px}}.summary-dot-reserved{background:rgba(31,95,191,.38);box-shadow:inset 0 0 0 1.2px var(--vb-blue)}.summary-reserved{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:var(--vb-radius-md);background:var(--vb-surface-2)}.summary-reserved h3{font-size:.9rem;font-weight:600}.summary-reserved ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px 14px}.summary-reserved li{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem}.summary-reserved li i{width:10px;height:10px;border-radius:50%;opacity:.6}.summary-reserved li strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.summary-seat-continuing:focus{outline:none}.summary-continuing-details{border-top:1px solid var(--vb-separator);padding-top:12px}.summary-continuing-details>summary{color:var(--vb-blue-deep);font-size:.88rem;font-weight:700;cursor:pointer;padding:8px 0}.summary-continuing-details>p{color:var(--vb-text-secondary);font-size:.76rem;line-height:1.55;margin:2px 0 12px}.summary-senate-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.summary-senate-tools label{flex:1 1;max-width:360px}.summary-senate-tools input{width:100%;min-height:44px;padding:0 14px;border:1px solid var(--vb-card-border);border-radius:12px;background:white;color:inherit;font:inherit;font-size:.78rem}.summary-senate-tools input:focus{border-color:var(--vb-blue);outline:3px solid rgba(31,95,191,.16)}.summary-senate-tools .summary-segments button{min-height:44px;font-size:.72rem}.summary-continuing-details ul{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:0 22px;gap:0 22px}.summary-continuing-details li{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;grid-gap:6px 10px;gap:6px 10px;min-height:64px;border-bottom:1px solid var(--vb-separator);padding:8px 0}.summary-continuing-details li>a,.summary-senator-name{display:flex;min-width:0;gap:6px;align-items:baseline;color:inherit;text-decoration:none}.summary-continuing-details li>a:hover strong{color:var(--vb-blue);text-decoration:underline}.summary-continuing-details li strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.summary-continuing-details li small{color:var(--vb-text-secondary);font-size:.68rem}.summary-continuing-party{display:flex;align-items:center;gap:5px;min-width:0;font-size:.7rem;font-weight:600}.summary-continuing-party .summary-party-logo{width:28px;height:24px;flex:0 0 28px}.summary-senator-meta{grid-column:1/-1;display:flex;align-items:center;gap:10px}.summary-seat-status{font-size:.65rem;font-style:normal;font-weight:650;color:var(--vb-blue-deep)}.summary-position,.summary-seat-status.continuing{color:var(--vb-text-secondary)}.summary-position{display:inline-flex;align-items:center;gap:5px;font-size:.68rem}.summary-position i{width:8px;height:8px;border-radius:50%}.summary-continuing-source{display:block;color:var(--vb-text-secondary);font-size:.7rem;line-height:1.5;padding-top:12px}.summary-continuing-source a{color:var(--vb-blue);text-decoration:underline}@media (max-width:900px){.summary-continuing-details ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.summary-senate-tools{align-items:stretch;flex-direction:column}.summary-senate-tools .summary-segments,.summary-senate-tools label{width:100%;max-width:none}.summary-senate-tools .summary-segments button{flex:1 1;padding-inline:6px}.summary-continuing-details ul{grid-template-columns:1fr}.summary-continuing-details li{min-height:58px}}.results-toolbar{display:flex;flex-direction:column;flex-wrap:wrap;gap:16px;min-width:0}.is-results .results-mode{flex-wrap:wrap;min-width:0;overflow:visible}.is-results .results-mode .pill-item{white-space:normal;overflow-wrap:anywhere}@media (min-width:768px){.results-toolbar{flex-direction:row;align-items:center;justify-content:space-between;gap:24px}.is-results .results-mode{align-self:flex-start;width:max-content;max-width:100%;flex:0 0 auto}.is-results .results-mode .pill-item{flex:0 0 auto;min-width:100px;min-height:40px}.is-results .results-layout>.filters>.field{flex:0 1 260px}.is-results .evolution-button{align-self:flex-start;width:max-content;max-width:100%}.is-results .evolution-button>span{flex:initial}.is-results .list-tools .search-field{max-width:420px}.is-results .municipal-panel>.field{max-width:380px}}@media (min-width:1024px){.is-results .header-inner,.is-results .main-content{max-width:1600px;padding-inline:clamp(24px,3vw,56px)}.is-results .results-columns{grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);gap:clamp(24px,2.5vw,40px)}.is-results .results-columns .map-panel .uf-map,.is-results .results-columns .municipal-canvas,.is-results .results-columns .municipal-placeholder{max-width:640px}}.studies-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;min-width:0}.studies-mode{flex-wrap:wrap;max-width:100%;overflow:visible}.studies-mode .pill-item{min-height:44px;white-space:normal;padding:8px 12px}.studies-page,.studies-page>.results-layout{min-width:0;width:100%}@media (max-width:599px){.studies-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.studies-mode .pill-item{min-width:0}.studies-mode .pill-item:first-child{grid-column:1/-1;min-height:48px;font-weight:600}}.fin-list{list-style:none;background:var(--vb-card-bg);border-radius:var(--vb-radius-lg);box-shadow:var(--vb-shadow-md);overflow:hidden}.fin-card+.fin-card{border-top:.5px solid var(--vb-separator)}.fin-head{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px;padding:12px 16px;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;min-height:64px}.fin-head .candidate-avatar{width:48px;height:48px}.fin-names{display:flex;flex-direction:column;min-width:0}.fin-names strong{font-size:.95rem;letter-spacing:-.01em}.fin-names span,.fin-names strong{overflow:hidden;text-overflow:ellipsis}.fin-names span{font-size:.8125rem;color:var(--vb-text-secondary);white-space:nowrap}.fin-amounts{display:flex;flex-direction:column;align-items:flex-end}.fin-amounts strong{font-size:1.05rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fin-amounts span{font-size:.6875rem;color:var(--vb-text-muted);text-transform:uppercase;letter-spacing:.06em}.fin-detail{padding:4px 16px 16px;display:flex;flex-direction:column;gap:10px}.fin-detail h4{font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--vb-text-secondary);margin-top:6px}.fin-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px 16px;gap:10px 16px}.fin-totals dt{font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--vb-text-muted)}.fin-totals dd{font-size:1.05rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fin-origins{list-style:none;display:flex;flex-direction:column;gap:10px}.fin-origins li{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:4px 12px;gap:4px 12px;align-items:center}.origin-name{font-size:.875rem}.origin-value{font-size:.8125rem;color:var(--vb-text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.origin-bar{grid-column:1/-1;height:6px;border-radius:3px;background:var(--vb-bar-bg);overflow:hidden}.origin-bar span{display:block;height:100%;border-radius:3px;background:var(--vb-blue)}.fin-status{align-self:flex-start;padding:3px 10px;border-radius:var(--vb-radius-full);background:var(--vb-yellow-light);color:#7A5200;font-size:.75rem;font-weight:600}.fin-status.final{background:rgba(10,143,74,.12);color:var(--vb-green-dark)}.party-logo{background:#fff;box-shadow:inset 0 0 0 .5px var(--vb-card-border)}.party-logo img{object-fit:contain;padding:6px}.fin-list.fin-integrated{gap:0 32px}.fin-list.fin-integrated,.fin-list.fin-integrated>.fin-card{background:transparent;border-radius:0;box-shadow:none;overflow:visible}.fin-list.fin-integrated>.fin-card{min-width:0;border-top:0;border-bottom:1px solid var(--vb-separator)}.fin-integrated .fin-head{padding:20px 0;min-height:100px}.fin-integrated .fin-names strong{overflow:visible;overflow-wrap:anywhere}.fin-integrated .fin-amounts strong{white-space:nowrap}.fin-integrated .fin-detail{padding:0 0 24px 60px}@media (max-width:480px){.fin-integrated .fin-head{grid-template-columns:48px minmax(0,1fr);gap:8px 12px}.fin-integrated .fin-amounts{grid-column:2;align-items:flex-start}.fin-integrated .fin-detail{padding-left:0}}.search-box{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 14px;border-radius:var(--vb-radius-full);background:rgba(118,118,128,.12);color:var(--vb-text-muted)}.search-box input{flex:1 1;min-width:0;height:52px;border:none;background:transparent;color:var(--vb-text-primary);font:inherit;font-size:1rem;outline:none}.search-box:focus-within{box-shadow:0 0 0 3px rgba(31,95,191,.35)}.search-clear{width:32px;height:32px;border:none;border-radius:50%;background:rgba(118,118,128,.25);color:inherit;display:flex;align-items:center;justify-content:center;cursor:pointer}.chip-active{background:var(--vb-blue-deep);color:#fff}.search-party{display:flex;flex-direction:column;gap:14px}.search-party-head{display:flex;align-items:center;gap:14px}.search-office h3{display:flex;justify-content:space-between;align-items:baseline;font-size:.8125rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--vb-text-secondary);padding:8px 0;border-bottom:.5px solid var(--vb-separator)}.search-office h3 span{font-weight:500;color:var(--vb-text-muted)}.search-list,.search-office ul{list-style:none}.search-list>li:not(.live-card),.search-office ul:not(.live-list)>li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;padding:10px 0;border-bottom:.5px solid var(--vb-separator)}.search-year{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--vb-blue-deep)}.search-name{display:flex;flex-direction:column;min-width:0}.search-name strong{font-size:.95rem;letter-spacing:-.01em}.search-name span,.search-votes{font-size:.8125rem;color:var(--vb-text-secondary)}.search-votes{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.search-chip{padding:3px 10px;border-radius:var(--vb-radius-full);background:var(--vb-surface-2);font-size:.75rem;font-weight:600;color:var(--vb-text-secondary);white-space:nowrap}.search-chip.elected{background:rgba(10,143,74,.12);color:var(--vb-green-dark)}.search-names{gap:10px}.search-live,.search-names{display:flex;flex-direction:column}.search-live{gap:14px}.live-list{list-style:none;display:flex;flex-direction:column;gap:10px}.live-card{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;grid-gap:14px;gap:14px;padding:14px 16px;border-radius:var(--vb-radius-md);background:var(--vb-card-bg);box-shadow:var(--vb-shadow-sm);min-width:0}.live-card.elected{box-shadow:var(--vb-shadow-sm),inset 4px 0 0 var(--cand-color)}.live-card .candidate-avatar{width:68px;height:68px;box-shadow:0 0 0 2px var(--vb-card-bg),0 0 0 4px var(--cand-color,var(--vb-card-border))}.live-card .candidate-avatar img{object-position:center 18%}.live-body{display:flex;flex-direction:column;gap:1px;min-width:0}.live-body strong{font-size:.95rem;line-height:1.25;letter-spacing:-.01em;overflow-wrap:anywhere}.live-sub{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;line-height:1.3;color:var(--vb-text-secondary)}.live-sub .party-logo{box-shadow:none}.live-result{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right;white-space:nowrap}.live-result strong{font-size:1.15rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.live-result>span:not(.search-chip){font-size:.75rem;color:var(--vb-text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:480px){.live-card{grid-template-columns:60px minmax(0,1fr);grid-template-areas:"photo body" "result result";gap:8px 12px}.live-card .candidate-avatar{grid-area:photo;width:60px;height:60px}.live-body{grid-area:body}.live-result{grid-area:result;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;padding-top:8px;border-top:.5px solid var(--vb-separator)}}.avatar-fallback.initials{font-size:1.25rem;font-weight:700;letter-spacing:.02em;color:var(--vb-text-secondary)}.logo-credits summary{color:var(--vb-tint);font-size:.875rem;font-weight:500;cursor:pointer;margin-top:6px}.logo-credits ul{list-style:none;margin-top:8px;display:flex;flex-direction:column;gap:4px;font-size:.75rem;color:var(--vb-text-secondary)}.logo-credits a{color:var(--vb-tint);overflow-wrap:anywhere}@media (min-width:768px){.search-box{max-width:640px}.field.search-field{flex:0 1 360px}.results-layout>.pill-btn,.search-names>.pill-btn,.search-office>.link-btn{align-self:flex-start;width:auto;min-width:160px}.pollster-chips{max-width:900px}.notice-card{max-width:760px}.live-list,.search-list,.search-office>ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-column-gap:28px;column-gap:28px;grid-row-gap:8px;row-gap:8px;align-items:start}.live-list{column-gap:12px}.fin-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));grid-gap:12px;gap:12px;align-items:start;background:transparent;box-shadow:none;border-radius:0;overflow:visible}.fin-list>.fin-card{background:var(--vb-card-bg);border-radius:var(--vb-radius-lg);box-shadow:var(--vb-shadow-md);border-top:none;overflow:hidden}.fin-card+.fin-card{border-top:none}}@media (min-width:1024px){.is-wide .header-inner,.is-wide .main-content{max-width:1600px;padding-inline:clamp(24px,3vw,56px)}}@media (min-width:1200px){.search-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-gap:clamp(28px,3vw,56px);gap:clamp(28px,3vw,56px);align-items:start}.search-split .live-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.search-split .search-office>ul:not(.live-list){grid-template-columns:1fr}}.status-glass{--fade:34px;position:fixed;top:0;left:0;right:0;height:calc(env(safe-area-inset-top, 0px) + var(--fade));z-index:45;pointer-events:none}.status-glass:before{content:"";position:absolute;inset:0;backdrop-filter:saturate(160%) blur(14px);-webkit-backdrop-filter:saturate(160%) blur(14px);mask-image:linear-gradient(180deg,#000 0,#000 45%,transparent);-webkit-mask-image:linear-gradient(180deg,#000 0,#000 45%,transparent)}.status-glass:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.72) 0,rgba(255,255,255,.5) 45%,rgba(255,255,255,0))}@media (display-mode:window-controls-overlay){.app-header{padding-top:calc(env(titlebar-area-height, 0px) + 6px);app-region:drag;-webkit-app-region:drag}.app-header a,.app-header button{app-region:no-drag;-webkit-app-region:no-drag}.app-header:before{opacity:1}}@media print{.status-glass{display:none!important}}.logo-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:160px;padding:24px 0;color:var(--vb-text-secondary);text-align:center}.logo-loader-mark{position:relative;display:block;width:76px;height:76px}.logo-loader-mark img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.logo-loader-gray{filter:grayscale(1);opacity:.32}.logo-loader-color{-webkit-clip-path:inset(100% 0 0 0);clip-path:inset(100% 0 0 0);animation:logo-fill 1.8s cubic-bezier(.4,0,.2,1) infinite}.logo-loader-label{font-size:.875rem}.logo-loader.compact{flex-direction:row;min-height:0;padding:6px 0}.logo-loader.compact .logo-loader-mark{width:28px;height:28px}@keyframes logo-fill{0%{-webkit-clip-path:inset(100% 0 0 0);clip-path:inset(100% 0 0 0);opacity:1}70%{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);opacity:1}84%{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);opacity:1}to{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);opacity:0}}@media (prefers-reduced-motion:reduce){.logo-loader-color{animation:none;-webkit-clip-path:inset(45% 0 0 0);clip-path:inset(45% 0 0 0)}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.exterior-panel .logo-loader{min-height:340px}.project-promo{position:fixed;right:24px;bottom:24px;z-index:68;display:grid;grid-template-columns:42px minmax(0,1fr) 44px;grid-gap:10px;gap:10px;align-items:center;width:min(360px,calc(100vw - 32px));padding:10px 8px 10px 12px;border:1px solid rgba(20,78,155,.14);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 14px 38px rgba(15,39,76,.18);opacity:0;transform:translateY(28px);pointer-events:none;transition:opacity .28s ease,transform .28s ease}.project-promo.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.project-promo>img{width:38px;height:44px;object-fit:contain}.project-promo-copy{display:grid;grid-gap:2px;gap:2px;min-width:0;color:var(--vb-text-primary)}.project-promo-copy strong{font-size:.88rem;line-height:1.2}.project-promo-copy a,.project-promo-copy span{overflow:hidden;font-size:.74rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.project-promo-copy span{color:var(--vb-text-secondary)}.project-promo-copy a{color:var(--vb-blue)}.project-promo>button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:50%;color:var(--vb-text-secondary);background:transparent;cursor:pointer}.project-promo>button:hover{background:var(--vb-surface-soft)}@media (max-width:1279px){.project-promo{right:12px;bottom:calc(92px + env(safe-area-inset-bottom));width:min(350px,calc(100vw - 24px))}}@media (max-width:420px){.project-promo{grid-template-columns:38px minmax(0,1fr) 44px}.project-promo>img{width:34px}}@media (prefers-reduced-motion:reduce){.project-promo{transition:none}}.app-footer{display:grid;grid-template-columns:.9fr 1fr 1.15fr auto;grid-gap:28px;gap:28px;align-items:center;width:100%;max-width:1080px;margin:0 auto;padding:24px 16px calc(32px + env(safe-area-inset-bottom, 0px));border-top:1px solid var(--vb-separator);color:var(--vb-text-muted);font-size:.75rem}.footer-contact,.footer-institutional,.footer-support{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.footer-contact strong,.footer-support strong{color:var(--vb-text-primary);font-size:.8rem}.footer-pix{overflow-wrap:anywhere;color:var(--vb-text-secondary);font-size:.7rem}.footer-links{display:flex;flex-wrap:wrap;gap:6px 14px}.footer-contact a{overflow-wrap:anywhere}.app-footer a{color:var(--vb-tint);font-weight:500}.developer-signature{display:inline-flex;align-items:center;gap:8px;color:var(--vb-text-muted);font-size:.7rem;line-height:1.25}.developer-signature img{flex:0 0 auto;width:28px;height:35px;object-fit:contain}.developer-signature strong{display:block;color:var(--vb-text-secondary);font-weight:600}@media (max-width:699px){.app-footer{grid-template-columns:1fr;gap:18px;padding:28px 20px calc(118px + env(safe-area-inset-bottom, 0px));text-align:left}.app-footer>*+*{padding-top:16px;border-top:1px solid var(--vb-separator)}.footer-links{justify-content:flex-start}}