/* Elections is scoped to its own page and homepage card; the town shell is unchanged. */
#electionsPage,.el-home{--el-red:#ee3348;--el-blue:#1ca1ff;--el-border:#214356;--el-muted:#a8bdce;color:#f1f6fd;font-family:inherit;min-width:0}
.elections-main .detail-grid{display:block!important}.elections-main #detailContent{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
#electionsPage *,.el-home *{box-sizing:border-box}#electionsPage h1,#electionsPage h2,#electionsPage h3,#electionsPage p,.el-home p{margin:0}#electionsPage a,.el-home a{color:inherit}#electionsPage :is(button,select,input),.el-home button{font:inherit}#electionsPage :focus-visible,.el-home :focus-visible{outline:2px solid #7de1ff;outline-offset:3px}#electionsPage section[id]{scroll-margin-top:76px}
.el-hero{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:28px;border-radius:12px;border:1px solid var(--el-border);background:linear-gradient(90deg,#041324f2,#04132490),var(--el-hero,linear-gradient(120deg,#0f3452,#071a2b));background-position:center;background-size:cover;min-height:210px;overflow:hidden}.el-hero-copy{display:flex;align-items:center;gap:22px}.el-ballot{width:86px;height:86px;flex-shrink:0;color:#fff;filter:drop-shadow(0 5px 15px #0005)}.el-eyebrow{display:block;font-size:10px;letter-spacing:2px;color:#85d0ef;margin-bottom:9px}.el-hero h1{font-size:clamp(27px,3.2vw,43px);line-height:1.08;letter-spacing:-.7px}.el-hero h1 span{display:block;font-size:.65em;color:#eaf4ff;margin-top:9px}.el-hero p{color:#cadce9;font-size:13px;margin-top:12px!important}.el-date{flex-shrink:0;width:250px;padding:18px;background:#031425df;border:1px solid #456274;border-radius:10px;box-shadow:0 3px 20px #0004;text-align:center}.el-date>small{font-size:10px;color:#c1d8e8;display:block}.el-date>strong{display:block;font-size:20px;margin:5px 0 10px}.el-date a{font-size:9px;color:#a7c8de!important;text-decoration:underline!important;text-underline-offset:3px}.el-countdown{display:flex;justify-content:center;gap:16px;margin:10px 0}.el-countdown span{display:flex;flex-direction:column;min-width:26px}.el-countdown b{font-size:24px;line-height:1.1}.el-countdown small{font-size:9px;color:#b3cada;margin-top:4px}.el-phase{font-size:10px;border:1px solid #388868;border-radius:14px;padding:3px 9px;display:inline-block;color:#9be7bf;background:#12603b44}
.el-nav{display:flex;gap:4px;overflow:auto;background:#071b2d;border:1px solid var(--el-border);border-radius:9px;padding:7px;margin:11px 0}.el-nav a{white-space:nowrap;padding:10px 15px;font-size:12px;display:flex;align-items:center;gap:7px;border-radius:6px}.el-nav svg{width:15px;height:15px}.el-nav a:first-child,.el-nav a:hover{background:linear-gradient(110deg,#de182e,#a90e2a)}.el-context{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#a9c1d3;font-size:10px;padding:0 2px;margin:10px 0 13px!important}.el-context a{text-decoration:underline!important}
.el-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:12px}.el-card{min-width:0;overflow:hidden;border:1px solid var(--el-border);border-radius:10px;background:linear-gradient(145deg,#0b2235,#041421 85%);box-shadow:0 3px 14px #0002}.el-stat{display:flex;align-items:center;gap:14px;padding:18px 15px;min-height:112px;position:relative}.el-stat:before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:var(--el-stat-color,#259af6)}.el-stat>svg{width:35px;height:35px;color:var(--el-stat-color,#259af6);flex-shrink:0}.el-stat small{color:#d9e6f1;font-size:11px;display:block}.el-stat b{font-size:30px;display:block;line-height:1.25;letter-spacing:-.4px}.el-stat em{font-style:normal;font-size:10px;color:#9fbdd0;display:block;margin-top:5px}
.el-main-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.85fr) minmax(300px,1fr);gap:12px;margin-bottom:12px}.el-head{display:flex;align-items:start;justify-content:space-between;gap:10px;padding:15px 16px 12px}.el-head h2{font-size:15px;font-weight:650;display:flex;align-items:center;gap:8px}.el-head h2 svg{width:18px;height:18px;color:#64bdf2}.el-head p{font-size:10px;line-height:1.6;color:var(--el-muted);margin-top:5px!important}.el-head>a{font-size:10px;color:#92c6e5!important;white-space:nowrap}.el-tag{font-size:9px;border:1px solid #34546b;border-radius:14px;padding:3px 7px;color:#b6d3e6;white-space:nowrap}.el-map-card{display:flex;flex-direction:column}.el-map-tools{display:flex;align-items:center;gap:7px;padding:0 15px 11px;flex-wrap:wrap}.el-map-tools label{font-size:10px;color:#acc6d9;display:flex;align-items:center;gap:6px}.el-map-tools select,#electionsPage .el-map-tools button{background:#092b44;border:1px solid #2b536b;color:#d9eefd;border-radius:5px;padding:5px 9px;font-size:11px}.el-map-tools button[aria-pressed=true]{border-color:#ee3b50!important;background:#7d1e34!important}.el-map{height:415px;min-height:330px;flex:1;background:#102b3b}.el-map .leaflet-container{height:100%;width:100%;background:#102b3b}.el-map .leaflet-control{color:#18354d}.el-map .leaflet-control-attribution a{color:#1c5d8c!important}.el-map .leaflet-control-attribution{font-size:8px}.el-ward-marker{background:#061a31;border:1px solid #d6e8f9;border-radius:50%;display:grid;place-content:center;width:23px;height:23px;color:#fff;font-size:11px;font-weight:700;box-shadow:0 2px 7px #0008}.el-map-empty{padding:70px 25px;text-align:center;color:#bbd4e4;font-size:12px;line-height:1.8}.el-note{padding:10px 16px 13px!important;color:#a3bbce;font-size:10px;line-height:1.7}.el-note a{color:#8bd0ff!important;text-decoration:underline!important}.el-selected-image{height:145px;position:relative;background:linear-gradient(145deg,#133853,#0a2037);background-size:cover;background-position:center}.el-selected-image>span{position:absolute;bottom:12px;left:14px;font-size:10px;background:#031424d9;padding:5px 8px;border-radius:5px}.el-details{padding:12px 15px}.el-details dl{margin:0}.el-details dl>div{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid #17364d;padding:10px 0;font-size:11px}.el-details dt{color:#93b4cc}.el-details dd{margin:0;text-align:right;max-width:65%}.el-details p{font-size:10px;color:#aec8da;line-height:1.8;margin-top:12px!important}.el-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #3b617c;border-radius:6px;padding:8px 12px;font-size:11px;margin-top:13px}.el-button:hover{background:#0b3b5b}.el-button-red{background:#c51d35;border-color:#ef4054}.el-stack{display:grid;gap:12px}.el-donut-layout{display:flex;align-items:center;gap:20px;padding:8px 16px 18px}.el-donut{width:128px;height:128px;border-radius:50%;position:relative;flex-shrink:0}.el-donut:before{content:'';position:absolute;inset:20px;border-radius:50%;background:#061b2c}.el-donut>span{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.el-donut b{font-size:29px}.el-donut small{font-size:10px;color:#a1bfd3}.el-key{flex:1;display:grid;gap:8px;font-size:10px;min-width:90px}.el-key>div{display:flex;justify-content:space-between;gap:10px}.el-dot{display:inline-block;height:8px;width:8px;background:var(--party,#71879e);border-radius:2px;margin-right:6px}.el-year-tabs{display:flex;gap:5px;padding:0 16px 10px}.el-year-tabs button{background:#102b43;color:#e1effb;border:1px solid #31516a;border-radius:5px;padding:4px 10px;font-size:11px}.el-year-tabs button[aria-pressed=true]{background:#c72039;border-color:#ee4256}.el-chart{width:100%;height:auto;display:block;padding:0 12px}.el-chart text{font-family:inherit;font-size:10px;fill:#a9c4d8}.el-chart .el-value{fill:#eef6fd}.el-chart-grid{stroke:#254255;stroke-width:1}.el-three{display:grid;grid-template-columns:1.05fr 1.15fr 1fr;gap:12px;margin-bottom:12px}.el-two{display:grid;grid-template-columns:1.5fr 1fr;gap:12px;margin-bottom:12px}.el-key-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px 16px 18px;text-align:center}.el-key-stats b{font-size:24px;display:block;color:#eaf3fd}.el-key-stats small{color:#9dbbd1;font-size:10px;display:block;margin-top:7px;line-height:1.7}.el-key-stats>div{border-right:1px solid #244356}.el-key-stats>div:last-child{border:0}.el-resources{padding:0 14px 14px;display:grid;gap:8px}.el-resource{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #22465d;border-radius:7px;background:#0c2a4144}.el-resource:hover{background:#123952}.el-resource svg{width:20px;height:20px;flex-shrink:0;color:#78c7ed}.el-resource>span{flex:1}.el-resource b{display:block;font-size:11px;font-weight:600}.el-resource small{color:#9bb8cf;font-size:10px;margin-top:4px;display:block}.el-resource em{font-style:normal;color:#91c5e7}.el-notice{padding:12px 14px;border:1px solid #8b563b;border-radius:7px;background:#6446211f;color:#ddc7a2;font-size:11px;line-height:1.8;margin:0 15px 15px!important}.el-links-inline{display:flex;gap:8px;flex-wrap:wrap}.el-table-wrap{padding:0 15px 15px;overflow:auto}.el-table{width:100%;border-collapse:collapse;font-size:11px}.el-table caption{font-size:10px;text-align:left;color:#9fbdd2;margin-bottom:10px}.el-table th,.el-table td{text-align:right;border-bottom:1px solid #1e3c52;padding:10px 8px}.el-table th:first-child,.el-table td:first-child{text-align:left;min-width:190px}.el-table th{color:#9ebed4;font-weight:500;white-space:nowrap}.el-table td:first-child{color:#eaf3ff}.el-search{margin:0 15px 12px;display:block;width:calc(100% - 30px);background:#08243a;border:1px solid #2a526c;border-radius:6px;padding:9px 11px;color:#e2f1ff;font-size:11px}.el-news{padding:0 15px 10px}.el-news>a{display:block;padding:12px 0;border-bottom:1px solid #1e3b51}.el-news h3{font-size:12px;line-height:1.6;font-weight:600}.el-news small{display:block;font-size:10px;color:#9ab9cf;margin-top:6px}.el-empty{color:#b3cbdc;padding:18px 16px;font-size:12px;line-height:1.8}.el-source-footer{background:transparent!important;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:10px;line-height:1.8;padding:13px 2px;color:#98b6cc}.el-source-footer a{color:#8fcaf4!important;text-decoration:underline!important}.el-disclaimer{font-size:10px;color:#9eb6ca;margin:10px 2px!important;line-height:1.7}
.el-home{display:flex;flex-direction:column;gap:10px;padding:12px;height:100%;min-height:220px;background:linear-gradient(130deg,#0c2b48,#06172a);border-radius:8px;overflow:hidden}.el-home-banner{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid #2d4e66}.el-home-banner svg{width:37px;height:37px;color:#ff5669;flex-shrink:0}.el-home-banner b{display:block;font-size:16px;line-height:1.25}.el-home-banner small{display:block;font-size:10px;color:#a6c8df;margin-top:4px}.el-home-date{display:flex;justify-content:space-between;align-items:center;gap:12px}.el-home-date strong{font-size:16px}.el-home-date span{font-size:10px;color:#f4b6bd;background:#6a213344;border:1px solid #a83c4c;border-radius:12px;padding:4px 8px}.el-home-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.el-home-metrics b{display:block;font-size:20px}.el-home-metrics small{display:block;font-size:9px;color:#a7c1d7;margin-top:3px}.el-home-note{font-size:9px;color:#9fbbd1;line-height:1.6}.el-home>a{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border:1px solid #536779;border-radius:5px;padding:8px 10px;font-size:11px;color:#e8f4ff!important}.el-home>a:hover{background:#803145}
@media(max-width:1400px){.el-main-grid{grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr)}.el-main-grid>.el-stack{grid-column:1/-1;grid-template-columns:1fr 1fr}.el-map{height:380px}.el-donut-layout{justify-content:center}.el-three{grid-template-columns:1fr 1fr}.el-three>.el-card:last-child{grid-column:1/-1}.el-hero{padding:24px}.el-ballot{width:67px;height:67px}}
@media(max-width:950px){.el-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.el-hero-copy{gap:14px}.el-date{width:215px;padding:14px}.el-hero{gap:15px}.el-two{grid-template-columns:1fr}.el-hero h1{font-size:30px}}
@media(max-width:700px){.el-hero{display:block;padding:22px 17px}.el-hero-copy{align-items:start}.el-ballot{width:48px;height:48px}.el-hero h1{font-size:27px}.el-hero p{font-size:12px}.el-date{width:100%;margin-top:20px;padding:13px}.el-countdown{gap:30px}.el-hero h1 span{font-size:.72em}.el-main-grid,.el-three{grid-template-columns:1fr}.el-main-grid>.el-stack{grid-column:auto;grid-template-columns:1fr}.el-three>.el-card:last-child{grid-column:auto}.el-stat{padding:15px 12px;gap:9px}.el-stat>svg{width:25px;height:25px}.el-stat b{font-size:25px}.el-stat small{font-size:10px}.el-stat em{font-size:9px}.el-map{height:340px;flex:none}.el-nav a{padding:9px 12px}.el-head{padding:14px}.el-head h2{font-size:14px}.el-donut-layout{justify-content:start}.el-stat{min-height:105px}.el-context{line-height:1.8}}
