:root{--bg:#121417;--surface:#1c1f24;--text:#e8e8e8;--muted:#a3a8b0;--line:#353a42;--accent:#f5c542;--link:#8ab4f8;--for:#4cc26e;--against:#f26b67;--neutral:#9ea3aa;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,sans-serif}:root[data-theme=light]{--bg:#f6f7f9;--surface:#fff;--text:#111;--muted:#5f6368;--line:#d9dce1;--accent:#e8a900;--link:#0b57d0;--for:#1a7f37;--against:#c62828;--neutral:#616161;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--bg);color:var(--text);margin:0}a{color:var(--link)}.banner{border-left:5px solid var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface));border-radius:8px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:14px 16px;display:flex}.banner svg{color:var(--accent);flex:none;margin-top:1px}.scorebar{--dot:8px;--dgap:3px}.scorebar .grids{justify-content:center;align-items:center;display:flex}.scorebar .dots{grid-template-columns:repeat(10, var(--dot));grid-auto-rows:var(--dot);gap:var(--dgap);display:grid}.scorebar .dot{width:var(--dot);height:var(--dot);box-sizing:border-box;border:1px solid var(--line);background:0 0;border-radius:50%;margin:0}.scorebar .dot.for.on{background:var(--for);border-color:var(--for)}.scorebar .dot.against.on{background:var(--against);border-color:var(--against)}.scorebar .rule{background:var(--muted);align-self:stretch;width:1px;margin:0 8px}.scorebar .more{padding:0 4px;font-size:.75rem;font-weight:700}.scorebar .more.for{color:var(--for)}.scorebar .more.against{color:var(--against)}@container (width<=230px){.scorebar{--dot:7px;--dgap:3px}}@container (width<=210px){.scorebar{--dot:6px;--dgap:3px}}@container (width<=190px){.scorebar{--dot:5px;--dgap:2px}.scorebar .rule{margin:0 6px}}.party-page .scorebar{--dot:10px;--dgap:4px;margin:8px 0}.party-page .scorebar .rule{margin:0 12px}.party-page .scorebar .grids{justify-content:flex-start}.scorebar .dot.for.prev{border:2px solid var(--for)}.scorebar .dot.against.prev{border:2px solid var(--against)}.scorebar .era-legend,.scorebar .counts,.party-card>.sources,.party-page>.sources{white-space:nowrap;text-overflow:ellipsis;text-align:center;height:1.3em;line-height:1.3;overflow:hidden}.scorebar .era-legend{margin-top:4px;font-size:.75rem}.scorebar .era-legend>span+span{margin-left:12px}@container (width<=260px){.scorebar .era-legend{font-size:.7rem}.scorebar .era-legend>span+span{margin-left:8px}}.party-page .scorebar .era-legend,.party-page>.sources{text-align:left}.era-legend .dot{box-sizing:border-box;border:2px solid var(--muted);width:8px;height:8px;margin:0}.era-legend .dot.on{background:var(--muted)}.timeline .era-marker{color:var(--muted);align-items:center;gap:8px;margin:8px 0;font-size:.85rem;list-style:none;display:flex}.timeline .era-marker:before,.timeline .era-marker:after{content:"";border-top:1px solid var(--line);flex:1}.leader-since{text-align:center;display:block}.party-page .leader-since{text-align:left}.scorebar .counts{text-align:center;margin-top:6px;font-size:.8rem}.party-page .scorebar .counts{text-align:left}.header{border-bottom:1px solid var(--line);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:8px 16px;display:flex}.header .brand,.header nav{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.header a{color:var(--text);cursor:pointer;text-decoration:none}.header a:hover{text-decoration:underline}.main{overflow-wrap:anywhere;max-width:1400px;margin:0 auto;padding:16px}.card-row{grid-template-columns:minmax(0,1fr);gap:16px;padding-bottom:8px;display:grid}@media (width>=720px){.card-row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1100px){.card-row{grid-template-columns:repeat(5,minmax(0,1fr))}}.party-card{border:1px solid var(--line);background:var(--surface);border-top:6px solid;border-radius:8px;min-width:0;padding:12px;container-type:inline-size}.party-card header{text-align:center;flex-direction:column;align-items:center;gap:6px;margin-bottom:8px;display:flex}.party-card header h3,.party-card .leader>span,.party-card .leader-since{text-align:center;flex:none;justify-content:center;align-items:center;height:2.6em;margin:0;line-height:1.3;display:flex;overflow:hidden}.party-card .leader-since{font-size:.8rem}.party-card header h3 span,.party-card .leader-since span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.party-card .logo{width:120px;max-width:100%;height:48px;color:var(--muted);flex:none;justify-content:center;align-items:center;font-weight:700;display:flex}.party-card .logo img{object-fit:contain;width:100%;height:100%}.party-card .leader{flex-direction:column;align-items:center;gap:4px;display:flex}.party-card .leader img,.party-card .leader .avatar{object-fit:cover;border-radius:50%;flex:none;width:64px;height:64px}.leader .avatar{background:var(--line);color:var(--muted);flex:none;justify-content:center;align-items:center;font-weight:700;display:flex}.party-page header{flex-direction:column;gap:6px;display:flex}.party-page .logo{object-fit:contain;align-self:flex-start;height:40px}.party-page .leader{align-items:center;gap:8px;display:flex}.party-page .leader img,.party-page .leader .avatar{object-fit:cover;border-radius:50%;width:48px;height:48px}.cols{grid-template-columns:1fr 1fr;gap:8px;display:grid}h4.for{color:var(--for)}h4.against{color:var(--against)}@container (width<=300px){.cols{grid-template-columns:1fr}}.claims{margin:0;padding:0;font-size:.9rem;list-style:none}.claim{border-bottom:1px solid var(--line);padding:4px 0}.muted{color:var(--muted);font-size:.85rem}.map-layout{grid-template-areas:"chips""map";gap:12px;display:grid}@media (width>=900px){.map-layout{grid-template-columns:minmax(0,1fr) 320px;grid-template-areas:"map chips";align-items:start}}.map-wrap{grid-area:map;min-width:0;position:relative}.map{width:100%;height:auto;max-height:40vh;display:block}@media (width>=900px){.map{max-height:min(52vh,480px)}}.chips{flex-wrap:wrap;grid-area:chips;gap:8px;margin:0;padding:0;list-style:none;display:flex}@media (width>=900px){.chips{flex-flow:column}.chip{text-align:left;white-space:nowrap;width:100%}}.chip{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999px;padding:8px 12px}.dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.chip.hover{border-color:var(--accent)}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#111;font-weight:600}.district{fill:color-mix(in srgb, var(--text) 22%, var(--surface));stroke:var(--bg);stroke-width:1.5px;cursor:pointer;transform-box:fill-box;transform-origin:50%;transition:transform .15s,filter .15s}.district:focus{outline:none}.district.hover,.district:focus-visible{fill:color-mix(in srgb, var(--accent) 55%, var(--surface));filter:drop-shadow(0 4px 4px #00000059);transform:translateY(-3px)scale(1.01)}.district.selected{fill:var(--accent)}.map-label{background:var(--surface);color:var(--text);pointer-events:none;z-index:1;border-radius:4px;padding:4px 8px;position:absolute;top:8px;left:8px;box-shadow:0 1px 4px #0000004d}@media (prefers-reduced-motion:reduce){.district{transition:none}.district.hover,.district:focus-visible{transform:none}}.cand-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.cand-card{border:1px solid var(--line);background:var(--surface);border-left:6px solid;border-radius:6px;padding:10px}.badge{background:var(--accent);color:#111;border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:700;display:inline-block}p.against{color:var(--against)}.draft{border:1px solid var(--line);border-left:6px solid var(--neutral);background:var(--surface);margin:8px 0;padding:8px}.draft.for{border-left-color:var(--for)}.draft.against{border-left-color:var(--against)}.draft textarea{width:100%;min-height:3em}.toolbar{flex-wrap:wrap;gap:8px;display:flex}.card-actions{grid-template-columns:1fr 1fr;gap:8px;margin:8px 0;display:grid}.responses-btn{box-sizing:border-box;min-width:0;height:36px;font:inherit;white-space:nowrap;cursor:pointer;border:1px solid var(--accent);background:var(--accent);color:#111;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.85rem;font-weight:700;text-decoration:none;display:flex}.responses-btn .label{text-overflow:ellipsis;min-width:0;overflow:hidden}.responses-btn .pill{box-sizing:border-box;text-align:center;min-width:1.4em;color:var(--accent);background:#111;border-radius:999px;flex:none;padding:0 5px;font-size:.75rem;line-height:1.5}.responses-btn.none{border-color:var(--line);color:var(--muted);background:0 0;font-weight:400}.responses-btn.none .pill{background:var(--line);color:var(--muted)}.responses-btn:focus-visible{outline:2px solid var(--link);outline-offset:2px}.platform-btn{color:var(--text);background:0 0}.platform-btn:disabled{border-color:var(--line);color:var(--muted);cursor:default;opacity:.7;font-weight:400}.party-page .card-actions{width:max-content;max-width:100%}@media (width<=420px){.party-page .card-actions{grid-template-columns:1fr;width:auto}}@container (width<=360px){.party-card .card-actions{grid-template-columns:1fr}}.platform-page .platform-toolbar{z-index:2;border:1px solid var(--line);background:var(--surface);border-radius:6px;align-items:center;gap:8px 16px;margin:8px 0;padding:8px 12px;position:sticky;top:0}.platform-page .platform-toolbar select{max-width:min(60vw,360px)}.platform-page .legend{gap:6px;display:inline-flex}.platform-page .doc{max-width:72ch;font-size:1rem;line-height:1.65}.platform-page .doc p{margin:0 0 1em}.platform-page .doc h3{margin:1.4em 0 .5em;font-size:1.05rem;line-height:1.35}.hl{color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:3px;padding:0 2px;scroll-margin-top:96px}.hl.for{background:color-mix(in srgb, var(--for) 22%, transparent);box-shadow:inset 0 -2px var(--for)}.hl.against{background:color-mix(in srgb, var(--against) 22%, transparent);box-shadow:inset 0 -2px var(--against)}.hl.neutral{background:color-mix(in srgb, var(--neutral) 22%, transparent);box-shadow:inset 0 -2px var(--neutral)}.hl.current{outline:2px solid var(--accent)}.responses-modal{border:1px solid var(--line);background:var(--surface);width:min(640px,100vw - 32px);max-height:85vh;color:var(--text);border-radius:8px;padding:0}.responses-modal::backdrop{background:#0009}.responses-modal .inner{padding:16px 20px}.responses-modal h2{margin:0 32px 12px 0;font-size:1.2rem}.responses-modal .close{float:right;color:var(--text);cursor:pointer;background:0 0;border:0;font-size:1.5rem;line-height:1}.responses-modal article{border-top:1px solid var(--line);padding:10px 0}.responses-modal time{color:var(--muted);font-size:.85rem}.responses-modal .text{white-space:pre-line;margin:6px 0}.polls{margin-bottom:12px}.polls .card-row{padding-bottom:0}.polls-header,.polls-footer{margin:0 0 8px}.polls-footer{margin:6px 0 0}.poll-cell{border:1px solid var(--line);background:var(--surface);text-align:center;border-top:3px solid;border-radius:8px;min-width:0;padding:8px 12px}.poll-short{font-size:.75rem;font-weight:700}.poll-vote{font-size:1.6rem;font-weight:700;line-height:1.2}.poll-range{font-size:.75rem}.poll-seats{margin:4px 0;font-size:.9rem}.poll-odds{font-size:.8rem}.bar{background:var(--line);border-radius:2px;height:4px;margin-top:3px;overflow:hidden}.bar>span{height:100%;display:block}.riding-polls{border:1px solid var(--line);background:var(--surface);border-radius:8px;max-width:560px;margin:8px 0 16px;padding:10px 12px}.riding-polls h4{margin:0 0 2px}.riding-polls>p{margin:0 0 8px}.riding-polls table{border-collapse:collapse;width:100%;margin-bottom:6px;font-size:.9rem}.riding-polls th,.riding-polls td{text-align:left;padding:3px 6px 3px 0;font-weight:400}.riding-polls thead th{white-space:nowrap;overflow-wrap:normal;font-size:.75rem}.riding-polls tbody th{white-space:nowrap;font-weight:700}.riding-polls td.vote{width:100%}.riding-polls td.vote .bar{height:6px;margin:0 0 2px}.riding-polls td.odds{text-align:right;white-space:nowrap}.chip-proj{color:var(--muted);font-size:.85em}.chip[aria-pressed=true] .chip-proj{color:inherit}.district.tinted{fill:var(--tint);fill-opacity:var(--tint-opacity)}.district.tinted.hover,.district.tinted:focus-visible{fill:var(--tint);fill-opacity:1}.district.tinted.selected{stroke:var(--accent);stroke-width:4px}
