/* 2026 election + 120th preview (mockup) */
.el-asof{font-family:var(--mono);font-size:12px;color:var(--chrome);margin:6px 0 18px;display:flex;align-items:center;gap:8px}
.el-dot{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.18)}
.el-tallies{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:22px}
.el-tnums{display:flex;justify-content:space-between;font-family:var(--mono);font-size:12px;color:var(--chrome)}
.el-tnums b{font-size:30px;color:#fff;font-family:var(--head);margin-right:4px}
.el-tbar{position:relative;display:flex;height:16px;border:1px solid var(--rule);margin:10px 0 8px;background:#0b0c10}
.el-tbar i{display:block;height:100%}
.pD{background:var(--d)}.pR{background:var(--r)}.pI,.pO{background:var(--i)}
.pp,.sq.pend{background:repeating-linear-gradient(45deg,#2a2d35 0 4px,#14161b 4px 8px)}
.el-need{position:absolute;top:-5px;bottom:-5px;width:2px;background:#fff}
.el-tleg{font-family:var(--mono);font-size:11px;color:var(--chrome)}
.el-pend{color:#cfd4dc}
.el-tabs{display:flex;border:1px solid var(--rule);margin-bottom:12px}
.el-tabs button{flex:1;background:none;border:0;border-right:1px solid var(--rule);color:var(--chrome);padding:12px;font:600 15px var(--head);cursor:pointer}
.el-tabs button:last-child{border-right:0}
.el-tabs button[aria-selected=true]{background:#fff;color:#050507}
.el-tabs small{font-family:var(--mono);font-weight:400;font-size:11px;opacity:.7}
.el-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:14px}
.el-chips{display:flex;gap:6px;flex-wrap:wrap}
.el-chips button{background:none;border:1px solid var(--rule);color:#fff;padding:6px 12px;font:12px var(--mono);cursor:pointer}
.el-chips button.on{background:#fff;color:#050507}
.el-state{font:12px var(--mono);color:var(--chrome)}
.el-state select,#el-q{background:#0b0c10;color:#fff;border:1px solid var(--rule);padding:6px 8px;font:12px var(--mono)}
#el-q{flex:1;min-width:180px}
.el-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}
.el-side{display:grid;gap:16px}
.el-lhead{display:flex;justify-content:space-between;font:12px var(--mono);color:var(--chrome);padding:8px 0;border-bottom:1px solid var(--rule)}
.el-lhead b{color:#fff;font-family:var(--head);font-size:15px}
.el-row{display:grid;grid-template-columns:170px 1fr 230px;gap:14px;padding:12px 10px;border-bottom:1px solid var(--rule);border-left:4px solid #2a2d35;align-items:center}
.el-row.is-called.el-pD{border-left-color:var(--d)}.el-row.is-called.el-pR{border-left-color:var(--r)}.el-row.is-called.el-pI{border-left-color:var(--i)}
.el-seat b{display:block;font:700 15px var(--head)}
.el-seat small,.el-stat small{display:block;font:11px var(--mono);color:var(--chrome);margin-top:3px}
.el-stat small a{color:#fff}
.el-cands{list-style:none;margin:0;padding:0;font-size:14px;display:grid;gap:3px}
.el-cands li{color:var(--chrome)}.el-cands li.won{color:#fff;font-weight:700}
.el-check{display:inline-block;width:16px;color:#fff}
.el-badge{display:inline-block;font:700 10px var(--mono);letter-spacing:.08em;padding:3px 7px;text-transform:uppercase;margin-right:6px}
.el-badge.called{background:#fff;color:#050507}
.el-badge.pend{border:1px dashed var(--chrome);color:var(--chrome)}
.el-row .rk{position:static;font-size:10px}
.el-promo{display:block;border:2px solid #fff;padding:14px 16px;margin:18px 0;text-decoration:none;color:#fff;background:linear-gradient(115deg,#14161b,#050507)}
.el-promo b{display:block;font:700 18px var(--head)}.el-promo span{font:12px var(--mono);color:var(--chrome)}
.el-h2{font:700 24px var(--head);margin:34px 0 6px}
.el-rkn b{font:700 28px var(--head)}
.el-rookies{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.rc{--pc:#9AA3B2;position:relative;background:#050507;border:2px solid #fff;box-shadow:0 0 0 4px var(--pc),0 10px 30px rgba(0,0,0,.5);color:#fff;margin:4px}
.rc[data-party=R]{--pc:#FF1F3D}.rc[data-party=D]{--pc:#2E6BFF}
.rc .rk{position:absolute;top:10px;right:8px;z-index:2;font-size:10px}
.rc .ph{height:240px;background:#14161b;overflow:hidden}
.rc .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;display:block}
.rc-ph-none{height:100%;display:flex;align-items:center;justify-content:center;text-align:center;font:12px var(--mono);color:var(--chrome);background:repeating-linear-gradient(45deg,#1b1d23 0 6px,#14161b 6px 12px)}
.rc-band{display:flex;justify-content:space-between;background:var(--pc);color:#fff;font:700 11px var(--mono);padding:5px 8px;text-transform:uppercase}
.rc-body{padding:10px 10px 12px}
.rc .mini-name{font:700 18px var(--head);margin-bottom:6px}
.rc-facts{margin:0;display:grid;gap:3px;font-size:12px}
.rc-facts div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dotted var(--rule);padding-bottom:2px}
.rc-facts dt{color:var(--chrome);font-family:var(--mono);font-size:10px;text-transform:uppercase}
.rc-facts dd{margin:0;text-align:right}.rc-facts a{color:#fff}
.rc-stat{margin-top:8px;font:700 11px var(--mono);border:1px dashed var(--chrome);padding:5px;text-align:center;color:#cfd4dc}
.rc-credit{margin-top:6px;font:10px var(--mono);color:var(--chrome)}.rc-credit a{color:var(--chrome)}
.el-seats{display:flex;flex-wrap:wrap;gap:3px}
.sq{width:14px;height:14px;display:inline-block}.sq.new{outline:2px solid #fff;outline-offset:-2px}
.el-seats .v54-note{width:100%}
@media (max-width:900px){.el-layout{grid-template-columns:1fr}.el-row{grid-template-columns:1fr;gap:6px}}

.rc-prior{margin-top:10px;border-top:1px dashed currentColor;padding-top:8px;font-size:11px}
.rc-prior-note{font-weight:700;margin-bottom:6px;line-height:1.35}
.rc-st{width:100%;border-collapse:collapse;font-family:ui-monospace,Menlo,monospace;font-size:10.5px;margin:4px 0 8px}
.rc-st th,.rc-st td{text-align:right;padding:2px 4px;border-bottom:1px solid rgba(127,127,127,.25)}
.rc-st th:first-child,.rc-st td:first-child{text-align:left}
.rc-st th{text-transform:uppercase;letter-spacing:.04em;opacity:.75;font-weight:600}
.rc-prior-fn,.rc-prior-src{opacity:.75;line-height:1.35;margin:4px 0;font-size:10px}
