/* ECI Results Desk / editorial minimalism — scoped, no site-wide overrides */
body[data-desk="eci-results"]{font-family:Geist,Inter,system-ui,sans-serif;color:#171717;background:#fff}
.eci-main{max-width:1160px;padding-bottom:112px}
.eci-main a{text-underline-offset:3px}
.eci-breadcrumb{display:flex;align-items:center;gap:12px;padding:34px 0 8px;font-size:12px;color:#757575}
.eci-breadcrumb a:hover,.eci-source-link:hover,.eci-method a:hover{text-decoration:underline}
.eci-eyebrow{font:500 10px/1.5 Geist,Inter,sans-serif;letter-spacing:.15em;color:#777;margin:0 0 17px;text-transform:uppercase}
.eci-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.65fr);gap:8vw;align-items:end;padding:49px 0 55px}
.eci-hero h1{font:400 clamp(58px,7.9vw,112px)/.95 'Instrument Serif',Georgia,serif;letter-spacing:-.035em;margin:0 0 24px}
.eci-point{color:#bf1f2e;margin-left:-.02em}
.eci-standfirst{font-size:clamp(17px,2vw,22px);line-height:1.5;max-width:540px;margin:0;letter-spacing:-.025em}
.eci-label{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#777}
.eci-hero-side{max-width:290px;padding-bottom:5px}
.eci-hero-side p{color:#565656;line-height:1.8;font-size:13px;margin:12px 0 0}
.eci-rule{height:1px;background:#e9e9e9}
.eci-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 0 21px}
.eci-source{display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.eci-pip{height:6px;width:6px;border-radius:50%;background:#555;flex-shrink:0}
.eci-pill{font-weight:600;font-size:12px}
.eci-pill-live{color:#c51e30}
.eci-updated{color:#858585;font-size:11px}
.eci-official{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;white-space:nowrap}
.eci-official:hover{opacity:.6}
.eci-overview{padding:33px 0 42px}
.eci-overview-head{display:flex;align-items:center;justify-content:space-between;gap:20px}
.eci-overview h2,.eci-section-title h2,.eci-panel h2,.eci-context h2,.eci-method h2{font-weight:500;letter-spacing:-.04em}
.eci-overview h2{font-size:clamp(26px,3.2vw,39px);line-height:1.15;margin:0}
.eci-overview .eci-eyebrow{margin-bottom:11px}
.eci-refresh{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #e6e6e6;padding:9px 13px;border-radius:8px;font-size:12px;color:#353535;white-space:nowrap}
.eci-refresh:hover,.eci-refresh:focus-visible{background:#f9f9f9;border-color:#cfcfcf}
.eci-snapshot-state{font-size:11px;color:#898989;margin:18px 0 22px;min-height:17px}
.eci-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.eci-stat{border:1px solid #ececec;border-radius:10px;padding:20px 21px;min-height:143px;display:flex;flex-direction:column;gap:2px}
.eci-stat>span{color:#fff;font-size:12px;font-weight:600;letter-spacing:-.005em}
.eci-stat strong{color:#fff;font-size:clamp(31px,3.6vw,47px);line-height:1.17;letter-spacing:-.055em;font-weight:650;margin:7px 0 2px}
.eci-stat small{color:#fff;font-size:11.5px;line-height:1.45;opacity:.9}
.eci-columns{display:grid;grid-template-columns:1.35fr 1fr;gap:24px}
.eci-panel,.eci-context{border-radius:10px;padding:27px 28px 24px}
.eci-panel{border:1px solid #ececec}
.eci-panel .eci-eyebrow{margin-bottom:10px}
.eci-panel h2{font-size:25px;margin:0 0 28px}
.eci-party-list{display:grid;gap:22px}
.eci-party-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-bottom:8px}
.eci-party-name{font-size:13px;font-weight:500}
.eci-party-count{font-size:20px;font-variant-numeric:tabular-nums;font-weight:500}
.eci-track{height:6px;border-radius:10px;background:#f1f1f1;overflow:hidden}
.eci-track-fill{display:block;height:100%;border-radius:10px;background:#212121;transition:width .28s ease}
.eci-party-foot{font-size:11px;color:#888;display:block;margin-top:8px}
.eci-fine{color:#8b8b8b;font-size:11px;line-height:1.65;margin:24px 0 0}
.eci-context{background:#f9f9f9;display:flex;flex-direction:column;justify-content:flex-start}
.eci-context .eci-eyebrow{margin-bottom:35px}
.eci-context h2{font:400 clamp(30px,3.2vw,48px)/1.12 'Instrument Serif',Georgia,serif;letter-spacing:-.02em;margin:0 0 15px;max-width:300px}
.eci-context p:not(.eci-eyebrow){font-size:13px;line-height:1.8;color:#656565;margin:0 0 22px;max-width:350px}
.eci-context strong{font-weight:600;color:#333}
.eci-context a{font-size:12px;font-weight:500;margin-top:auto}
.eci-context a:hover{text-decoration:underline}
.eci-explorer{padding:76px 0 59px}
.eci-section-title{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}
.eci-section-title h2{font-size:clamp(27px,3.3vw,39px);margin:0;line-height:1.12}
.eci-section-title .eci-eyebrow{margin-bottom:12px}
.eci-counter{font-size:12px;color:#999;white-space:nowrap}
.eci-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:11px;margin-bottom:20px}
.eci-filters label{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#555}
.eci-filters input,.eci-filters select{width:100%;min-width:0;background:#fff;border:1px solid #e5e5e5;border-radius:8px;font:400 13px/1.4 Geist,Inter,sans-serif;min-height:45px;padding:12px 13px;color:#242424}
.eci-filters input:focus,.eci-filters select:focus{outline:2px solid #333;outline-offset:1px}
.eci-filters input::placeholder{color:#aaa}
.eci-table-scroll{width:100%;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#dadada transparent}
.eci-table{border-collapse:collapse;width:100%;min-width:820px;table-layout:auto}
.eci-table th{text-align:left;font-size:10px;letter-spacing:.055em;text-transform:uppercase;color:#999;font-weight:500;padding:16px 13px;border-bottom:1px solid #e5e5e5}
.eci-table td{font-size:12px;vertical-align:middle;padding:20px 13px;border-bottom:1px solid #f0f0f0}
.eci-table tbody tr:hover{background:#f9f9f9}
.eci-table th:first-child,.eci-table td:first-child{padding-left:0}
.eci-seat-name{display:block;font-size:13px;font-weight:500;white-space:nowrap}
.eci-seat-meta{display:block;color:#8b8b8b;font-size:10px;margin-top:5px;white-space:nowrap}
.eci-candidate{font-weight:500}
.eci-party-cell{color:#606060}
.eci-num{text-align:right!important;font-variant-numeric:tabular-nums}
.eci-result{font-size:11px;display:inline-block;border-radius:5px;padding:4px 8px;background:#f2f2f2;color:#333;white-space:nowrap}
.eci-leading{background:#f9f6f0}
.eci-source-link{font-size:11px;font-weight:500;white-space:nowrap;text-decoration:underline;text-decoration-color:#ddd}
.eci-no-results{padding:24px!important;text-align:center;color:#868686}
.eci-method{border-top:1px solid #e8e8e8;display:grid;grid-template-columns:1fr 1.7fr;gap:70px;padding-top:33px}
.eci-method .eci-eyebrow{margin-bottom:14px}
.eci-method h2{font:400 clamp(30px,3.8vw,46px)/1.1 'Instrument Serif',Georgia,serif;margin:0}
.eci-method-body p{font-size:13px;line-height:1.85;color:#636363;margin:0 0 16px}
.eci-method-body a{text-decoration:underline}
.eci-empty{font-size:12px;color:#888}
@media (max-width:800px){.eci-main{width:min(calc(100% - 38px),1160px)}.eci-hero{grid-template-columns:1fr;padding:34px 0;gap:23px}.eci-hero h1{font-size:clamp(52px,11vw,78px);margin-bottom:18px}.eci-hero-side{max-width:500px}.eci-hero-side p{margin-top:7px}.eci-columns{grid-template-columns:1fr;gap:13px}.eci-method{grid-template-columns:1fr;gap:17px}.eci-explorer{padding-top:62px}.eci-filters{grid-template-columns:1fr 1fr}.eci-search-label{grid-column:1/-1}}
@media (max-width:520px){.eci-breadcrumb{padding-top:22px}.eci-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.eci-updated{width:100%;padding-left:17px}.eci-overview{padding:24px 0 30px}.eci-overview-head{align-items:flex-start}.eci-overview h2{font-size:28px}.eci-stats{gap:8px}.eci-stat{min-height:124px;padding:14px 11px}.eci-stat>span{font-size:10px}.eci-stat strong{font-size:35px}.eci-stat small{font-size:9px;line-height:1.5}.eci-panel,.eci-context{padding:22px}.eci-section-title{align-items:start;flex-direction:column;gap:12px}.eci-section-title h2{font-size:31px}.eci-filters{gap:9px}.eci-filters input,.eci-filters select{font-size:12px}.eci-main{padding-bottom:72px}}
@media (prefers-reduced-motion:reduce){.eci-track-fill{transition:none}}


/* Party-aware election results / Nov 2026 refinement.
   Coloured cues are supplemental; every number and status is also written in text. */
body[data-desk="eci-results"]{color:#141414}
.eci-main{--eci-ink:#141414;--eci-secondary:#454545;--eci-muted:#565656}
.eci-tone--bjp{--eci-party-color:#EF6200}
.eci-tone--tvk{--eci-party-color:#9D1641}
.eci-tone--ainrc{--eci-party-color:#178547}
.eci-tone--neutral{--eci-party-color:#50565E}

.eci-breadcrumb{color:#525252}
.eci-breadcrumb a{color:#303030;font-weight:500}
.eci-eyebrow{color:#595959;letter-spacing:.12em;font-weight:600}
.eci-hero-side p,.eci-context p:not(.eci-eyebrow),.eci-method-body p{color:#454545;font-size:14px;line-height:1.75}
.eci-hero-side .eci-label{color:#444;font-weight:600}
.eci-standfirst{color:#252525}
.eci-updated,.eci-snapshot-state,.eci-counter,.eci-party-foot,.eci-fine{color:#515151;font-size:12px;line-height:1.65}
.eci-updated{font-weight:500}
.eci-pill{color:#273943;font-weight:650}
.eci-pill-live{color:#B01831}
.eci-source-link,.eci-official,.eci-context a{color:#242424;font-weight:600}
.eci-source-link{text-decoration:underline;text-decoration-color:#a8a8a8}
.eci-refresh{font-weight:600;color:#202020}
.eci-overview h2{font-weight:550;letter-spacing:-.035em}
.eci-overview{padding-top:32px;padding-bottom:39px}
.eci-overview .eci-eyebrow{margin-bottom:10px}
.eci-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.eci-stat{position:relative;overflow:hidden;min-height:144px;border:0;border-radius:8px;padding:22px 20px 18px;background:#203650;gap:4px;color:#fff}
.eci-stat::before{display:none;content:none}
.eci-stat:nth-child(2){background:#176448}
.eci-stat:nth-child(3){background:#85501F}
.eci-stat:nth-child(4){background:#514476}
.eci-stat>span{color:#fff;font-size:12px;font-weight:600;letter-spacing:-.005em}
.eci-stat strong{color:#fff;font-size:clamp(31px,3.6vw,47px);line-height:1.17;letter-spacing:-.055em;font-weight:650;margin:7px 0 2px}
.eci-stat small{color:#fff;font-size:11.5px;line-height:1.45;opacity:.9}
.eci-columns{grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:16px}
.eci-panel{border:1px solid #E4E6E9;padding:28px 28px 25px}
.eci-panel h2{font-size:27px;font-weight:550;margin-bottom:18px}
.eci-context{background:#F8F8F8}
.eci-context .eci-eyebrow{margin-bottom:28px}
.eci-context h2{color:#151515}
.eci-distribution{margin:8px 0 26px}
.eci-share{height:11px;background:#EBEBEB;display:flex;overflow:hidden;border-radius:999px;gap:2px}
.eci-share-segment{display:block;flex:0 0 auto;height:100%;min-width:0;background:var(--eci-party-color,#747B86)}
.eci-party-list{gap:7px}
.eci-party{border-radius:10px;padding:13px 13px 12px;margin:0 -13px;background:#fff;transition:background .14s ease}
.eci-party:hover{background:#FAFAFA}
.eci-party-top{align-items:center;margin-bottom:9px;gap:15px}
.eci-party-identity{display:inline-flex;align-items:center;min-width:0;gap:11px;color:#171717}
.eci-party-symbol{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:8px;background:#fff;border:2px solid var(--eci-party-color,#50565E)}
.eci-party-symbol img{display:block;width:29px;height:29px;object-fit:contain}
.eci-party-symbol-fallback{display:grid;place-items:center;font-size:12px;font-weight:750;color:#191919}
.eci-party-details{display:flex;flex-direction:column;gap:2px;min-width:0}
.eci-party-short{display:block;color:#171717;font-size:14px;font-weight:750;line-height:1.2;letter-spacing:.01em}
.eci-party-name{display:block;color:#404040;font-size:11.5px;font-weight:500;line-height:1.4}
.eci-party-count{font-size:26px;color:#151515;font-weight:700;line-height:1;flex-shrink:0}
.eci-track{height:7px;background:#E9EBED;border-radius:99px;overflow:hidden}
.eci-track-fill{display:block;height:100%;background:var(--eci-party-color,#747B86);border-radius:99px}
.eci-party-foot{display:block;font-size:11.5px;font-weight:550;margin-top:8px;color:#515151}
.eci-fine{margin-top:22px}
.eci-section-title h2{font-weight:550}
.eci-filters{gap:12px}
.eci-filters label{color:#414141;font-size:12px;font-weight:600}
.eci-filters input,.eci-filters select{background:#fff;border:1px solid #D4D7DA;color:#141414;font-size:13px;font-weight:500;padding:12px 14px;border-radius:9px;min-height:48px}
.eci-filters input::placeholder{color:#696969}
.eci-filters input:hover,.eci-filters select:hover{border-color:#A6ABB1}
.eci-table{border-collapse:separate;border-spacing:0;width:100%}
.eci-table th{font-size:11px;letter-spacing:.035em;color:#505050;font-weight:700;background:#FAFAFA;border-block:1px solid #E5E5E5;padding-block:17px}
.eci-table td{font-size:13px;font-weight:500;color:#242424;padding-block:18px;border-bottom:1px solid #E9EAEC}
.eci-table tbody tr:hover{background:#FBFBFB}
.eci-table th:first-child{padding-left:12px;border-top-left-radius:8px}
.eci-table th:last-child{border-top-right-radius:8px}
.eci-table td:first-child{position:relative;padding-left:17px}
.eci-result-row td:first-child::before{content:none;display:none}
.eci-seat-name{font-size:14px;font-weight:650;color:#1A1A1A}
.eci-seat-meta{font-size:11.5px;color:#535353;font-weight:500}
.eci-candidate{font-weight:600;color:#202020}
.eci-party-cell .eci-party-symbol{flex-basis:34px;width:34px;height:34px;border-radius:7px}
.eci-party-cell .eci-party-symbol img{width:24px;height:24px}
.eci-party-cell .eci-party-identity{gap:8px}
.eci-party-cell .eci-party-short{font-size:12px}
.eci-party-cell .eci-party-name{font-size:11px;max-width:135px}
.eci-table td.eci-num{font-weight:700;font-size:14px;color:#141414;white-space:nowrap}
.eci-result{border-radius:6px;padding:6px 10px;font-size:11px;font-weight:700}
.eci-won{color:#fff;background:#167546}
.eci-leading{color:#fff;background:#A65C00}
.eci-no-results{color:#414141}
.eci-method-body a{font-weight:600;color:#262626}
@media(max-width:1000px){
 .eci-stats{gap:9px}
 .eci-stat{padding:19px 14px;min-height:132px}
 .eci-stat>span{font-size:11px}
 .eci-stat small{font-size:10.5px}
 .eci-party-name{font-size:11px}
}
@media(max-width:800px){
 .eci-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .eci-columns{grid-template-columns:1fr;gap:16px}
 .eci-panel,.eci-context{padding:24px}
 .eci-panel h2{margin-bottom:17px}
 .eci-distribution{margin-bottom:20px}
}
@media(max-width:680px){
 .eci-main{width:min(calc(100% - 32px),1160px)}
 .eci-overview h2{font-size:27px}
 .eci-hero{padding-block:31px}
 .eci-hero h1{font-size:clamp(52px,12vw,76px)}
 .eci-stat{padding:20px 17px;min-height:130px}
 .eci-stat strong{font-size:40px}
 .eci-stat>span{font-size:12px}
 .eci-stat small{font-size:11px}
 .eci-explorer{padding-top:52px}
 .eci-table-scroll{overflow:visible}
 .eci-table{min-width:0;display:block}
 .eci-table thead{display:none}
 .eci-table tbody{display:grid;gap:12px}
 .eci-table .eci-result-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid #E2E3E6;border-radius:11px;overflow:hidden;background:#fff}
 .eci-table tbody .eci-result-row:hover{background:#fff}
 .eci-result-row td{min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;padding:12px 15px;border-bottom:1px solid #F0F0F0}
 .eci-result-row td::before{content:attr(data-label);display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.045em;color:#616161}
 .eci-result-row td:first-child{grid-column:1/-1;background:#F9F9F9;padding:15px 18px}
 .eci-result-row td:first-child::before{display:none}
 .eci-result-row td:first-child::after{content:none;display:none}
 .eci-result-row td:first-child .eci-seat-name{font-size:17px}
 .eci-result-row td:nth-child(2),.eci-result-row td:nth-child(3){grid-column:1/-1}
 .eci-result-row td:nth-child(3){padding-block:14px}
 .eci-result-row td:nth-child(4),.eci-result-row td:nth-child(5){background:#FCFCFC}
 .eci-result-row td:nth-child(6),.eci-result-row td:nth-child(7){border-bottom:0}
 .eci-table td.eci-num{text-align:left!important;font-size:18px;font-weight:750}
 .eci-party-cell .eci-party-name{max-width:none;font-size:12px}
 .eci-party-cell .eci-party-short{font-size:13px}
 .eci-party-cell .eci-party-symbol{flex-basis:38px;width:38px;height:38px}
 .eci-party-cell .eci-party-symbol img{width:27px;height:27px}
 .eci-source-link{font-size:12px}
 .eci-filters{gap:10px}
 .eci-filters label{font-size:11.5px}
}
@media(max-width:420px){
 .eci-stat{padding:18px 14px}
 .eci-stat strong{font-size:36px}
 .eci-refresh{font-size:11px}
 .eci-party-symbol{flex-basis:40px;width:40px;height:40px}
 .eci-panel,.eci-context{padding:21px}
}
@media(prefers-reduced-motion:reduce){.eci-party{transition:none}}

/* Major-party symbol archive: archival artworks on neutral surfaces, solid accents only. */
.eci-library{margin:65px 0 55px;padding:34px 0 0;border-top:1px solid #e8e8e8}
.eci-library-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}
.eci-library-heading h2{margin:0;font-size:clamp(27px,3.4vw,43px);line-height:1.1;font-weight:600;letter-spacing:-.045em}
.eci-library-heading .eci-eyebrow{margin:0 0 10px}
.eci-library-heading>p{font-size:13px;line-height:1.7;color:#515151;max-width:320px;margin:0}
.eci-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.eci-library-card{display:grid;grid-template-columns:49px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;border:1px solid #e8e8e8;border-left:1px solid #e8e8e8;border-radius:8px;padding:14px 12px 12px;background:#fff;min-height:100px}
.eci-library-icon{grid-row:1/3;width:49px;height:49px;border-radius:8px;border:1px solid #dedede;display:grid;place-items:center;background:#fff}
.eci-library-icon img{width:38px;height:38px;object-fit:contain}
.eci-library-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.eci-library-copy strong{font-size:13px;font-weight:800;color:#181818}
.eci-library-copy span{font-size:11px;line-height:1.4;color:#333}
.eci-library-copy small{font-size:10px;line-height:1.4;color:#616161}
.eci-library-source{grid-column:2;justify-self:start;font-size:10px!important;color:#353535!important;text-decoration:underline;text-underline-offset:3px;margin-top:8px}
.eci-library .eci-fine a{color:#222;text-decoration:underline}
@media(max-width:680px){.eci-library{margin-top:48px;padding-top:25px}.eci-library-heading{align-items:start;flex-direction:column;gap:8px}.eci-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.eci-library-card{padding:12px 9px;grid-template-columns:42px minmax(0,1fr);column-gap:9px}.eci-library-icon{width:42px;height:42px}.eci-library-icon img{width:32px;height:32px}}
@media(max-width:380px){.eci-library-grid{grid-template-columns:1fr}}


/* Election desk restraint: no side ribbons, edge bars or pastel callouts. */
body[data-desk="eci-results"] .eci-hero{grid-template-columns:1fr;gap:0;padding-block:36px 30px}
body[data-desk="eci-results"] .eci-hero-copy{max-width:800px}
body[data-desk="eci-results"] .eci-hero h1{font-family:Manrope,Geist,system-ui,sans-serif;font-weight:650;font-size:clamp(42px,6.5vw,80px);letter-spacing:-.068em}
body[data-desk="eci-results"] .eci-overview-head{margin-bottom:14px}
body[data-desk="eci-results"] .eci-snapshot-state:empty{display:none}
body[data-desk="eci-results"] .eci-result-row td:first-child::before,
body[data-desk="eci-results"] .eci-result-row td:first-child::after{content:none!important;display:none!important}
body[data-desk="eci-results"] .eci-library-card{border:1px solid #e8e8e8;background:#fff}
body[data-desk="eci-results"] .eci-party-symbol{border-width:1px}
body[data-desk="eci-results"] .eci-context{background:#f9f9f9}
.eci-state-links{padding:25px 0 19px;border-bottom:1px solid #e6e6e6}
.eci-state-links h2{font:650 19px/1.2 Manrope,Geist,sans-serif;letter-spacing:-.045em;margin:0 0 18px}
.eci-state-links nav{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
.eci-state-links a{font:600 12px/1.3 Manrope,Geist,sans-serif;padding:10px 15px;background:#f9f9f9;color:#161616;border:1px solid #eaeaea;border-radius:8px;transition:background .15s ease}
.eci-state-links a:hover{background:#eaeaea}
.eci-state-links .eci-all-states{background:#1d1d1f;color:#fff;border-color:#1d1d1f}
.eci-state-links .eci-all-states:hover{background:#38383b}
@media(max-width:680px){.eci-state-links nav{gap:7px}.eci-state-links a{font-size:11px;padding:9px 11px}}

/* Evergreen state and constituency election results pages. */
body[data-desk="elections"]{font-family:Manrope,Geist,system-ui,sans-serif;color:#191919;background:#fff}
.elections-main{max-width:1120px;margin:0 auto;padding-bottom:100px}
.elections-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:33px 0 26px;font-size:12px;color:#575757}
.elections-breadcrumb a{color:#393939;text-decoration:none}
.elections-breadcrumb a:hover{text-decoration:underline}
.elections-hero{padding:37px 0 37px;max-width:930px}
.elections-hero h1{font-size:clamp(34px,5.8vw,68px);font-weight:650;line-height:1.08;letter-spacing:-.066em;margin:0 0 20px;overflow-wrap:anywhere}
.elections-hero p{font-size:clamp(14px,1.8vw,18px);line-height:1.65;color:#464646;max-width:740px;margin:0}
.elections-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-top:1px solid #ededed;padding-top:25px}
.elections-state-card{display:flex;justify-content:space-between;align-items:flex-start;flex-direction:column;gap:17px;background:#f9f9f9;border:1px solid #ededed;border-radius:8px;min-height:118px;padding:21px;text-decoration:none;color:#171717}
.elections-state-card:hover{filter:brightness(1.09)}
.elections-state-card strong{font-size:21px;font-weight:650;letter-spacing:-.05em}
.elections-state-card span{font-size:12px;color:#555}
.elections-event-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 0;border-top:1px solid #e9e9e9}
.elections-event-summary h2{font-size:20px;font-weight:620;letter-spacing:-.04em;line-height:1.3;margin:0 0 8px}
.elections-event-summary h2 a{color:inherit}
.elections-event-summary p{margin:0;color:#595959;font-size:12px;line-height:1.6}
.elections-text-link{font-size:12px;font-weight:650;text-decoration:underline;text-underline-offset:3px;color:#242424;white-space:nowrap}
.elections-empty{padding:29px;border-radius:8px;background:#f9f9f9;max-width:780px}
.elections-empty h2{font-size:21px;font-weight:650;letter-spacing:-.045em;margin:0 0 15px}
.elections-empty p{font-size:14px;line-height:1.8;color:#454545;margin:0 0 10px}
.elections-seat-list{border-top:1px solid #e9e9e9}
.elections-seat{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1.3fr) 80px 70px;gap:16px;align-items:center;padding:19px 6px;border-bottom:1px solid #ebebeb}
.elections-seat-title{font-size:17px;font-weight:650;letter-spacing:-.045em;color:#1b1b1b;text-decoration:none}
.elections-seat-title:hover{text-decoration:underline}
.elections-seat p{font-size:12px;color:#4b4b4b;margin:5px 0 0}
.elections-seat-party .eci-party-identity{max-width:100%}
.elections-seat-status{display:inline-block;padding:6px 10px;background:#252525;color:#fff;border-radius:6px;font-size:11px;font-weight:700;width:max-content}
.elections-seat-open{justify-self:end;color:#222;text-decoration:underline;text-underline-offset:3px;font-size:12px;font-weight:600}
.elections-winner{padding:28px;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:25px;border:1px solid #e6e6e6;border-radius:8px;background:#f9f9f9}
.elections-winner-name{font-size:clamp(20px,3.4vw,35px);font-weight:650;line-height:1.35;letter-spacing:-.045em;margin:0 0 18px}
.elections-winner dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:0}
.elections-winner dl div{display:flex;flex-direction:column;border-bottom:1px solid #dadada;gap:8px;padding-bottom:13px}
.elections-winner dt{color:#555;font-size:11px;font-weight:600}
.elections-winner dd{color:#171717;font-size:24px;font-weight:700;letter-spacing:-.05em;margin:0;font-variant-numeric:tabular-nums}
.elections-data-date{font-size:12px;line-height:1.65;color:#555;margin:24px 0}
.elections-data-date a{color:#222;text-decoration:underline;text-underline-offset:3px}
.elections-source-note{font-size:11px;line-height:1.75;color:#686868;border-top:1px solid #eaeaea;margin-top:54px;padding-top:18px}
.elections-source-note a{color:#323232;text-decoration:underline;text-underline-offset:3px}
@media(max-width:850px){.elections-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.elections-seat{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.elections-seat-status{justify-self:start}.elections-seat-open{justify-self:end}}
@media(max-width:620px){.elections-main{width:min(calc(100% - 34px),1120px)}.elections-breadcrumb{padding:20px 0 15px}.elections-hero{padding:26px 0}.elections-index-grid{grid-template-columns:1fr}.elections-state-card{min-height:92px;padding:19px}.elections-event-summary{align-items:flex-start;flex-direction:column}.elections-seat{grid-template-columns:1fr;gap:10px}.elections-seat-party{padding:6px 0}.elections-seat-status,.elections-seat-open{justify-self:start}.elections-winner{grid-template-columns:1fr;padding:20px}.elections-winner dl{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Breadcrumb and election bento polish — one clean visual language. */
.elections-breadcrumb{gap:9px;font-size:12px;font-weight:500}
.elections-crumb-separator{font-size:17px;line-height:1;color:#a0a4aa;user-select:none}
.elections-breadcrumb [aria-current="page"]{color:#15171b;font-weight:650}
.elections-state-card{color:#fff;background:#203650;border:0;border-radius:8px;transition:filter .18s ease,transform .18s ease}
.elections-state-card strong{color:#fff;font-weight:700}
.elections-state-card span{color:#fff;opacity:.92;font-weight:500}
.elections-state--west-bengal{background:#174A74}
.elections-state--bihar{background:#723756}
.elections-state--tamil-nadu{background:#89472B}
.elections-state--puducherry{background:#1C6053}
.elections-state-card:focus-visible{outline:3px solid #171717;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.elections-state-card{transition:none}}
