:root{
--bg:#080a0f;--panel:#10131b;--line:#272d3a;--text:#f7f8fb;--muted:#9299aa;
--accent:#d8b25a;--green:#56d68a;--red:#ff6e78;--shadow:0 20px 60px rgba(0,0,0,.32)
}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at 20% -10%,#202436 0,#080a0f 42%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
main{width:min(1240px,calc(100% - 32px));margin:0 auto 40px}
.topbar{width:min(1240px,calc(100% - 32px));margin:0 auto;padding:28px 0 22px;display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:800;color:var(--accent)}
h1{margin:8px 0 6px;font-size:clamp(25px,4vw,44px);line-height:1.04}
h2{font-size:clamp(28px,4vw,48px);margin:7px 0 8px}
h3{font-size:27px;margin:7px 0 0}.sub,p{color:var(--muted)}
button{font:inherit}
.notify-button,.secondary-button,.ghost-button{border:1px solid var(--line);border-radius:12px;padding:10px 14px;cursor:pointer;font-weight:800}
.notify-button{background:#171a23;color:var(--text)}
.notify-button:hover{border-color:#6b5a2c}
.notify-button.enabled{border-color:#355f47;color:var(--green);background:#0f1b15}
.secondary-button{background:#1c202a;color:var(--text)}
.ghost-button{background:transparent;color:var(--muted)}
.live{border:1px solid #394052;background:#121622;border-radius:999px;padding:10px 14px;font-weight:800;white-space:nowrap}
.live span{display:inline-block;width:8px;height:8px;background:#707786;border-radius:50%;margin-right:7px}
.live.active span{background:var(--green);box-shadow:0 0 14px var(--green)}
.notification-panel{display:grid;grid-template-columns:1fr 300px;gap:20px;margin:8px 0 16px;padding:20px;border:1px solid #3b3728;background:linear-gradient(135deg,#171912,#0f1219);border-radius:20px}
.notification-panel h2{font-size:24px;margin:6px 0}
.notification-panel p{margin:0;line-height:1.5;max-width:760px}
.notification-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}
.notification-options{display:flex;flex-direction:column;gap:10px;justify-content:center;padding:4px}
.notification-options label{display:flex;align-items:center;gap:9px;color:#d9dce5;font-size:13px}
.notification-options input{accent-color:var(--accent);width:17px;height:17px}
.sound-tests{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}
.sound-title{width:100%;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:800}
.sound-button{border:1px solid var(--line);background:#141821;color:#e8eaf0;border-radius:10px;padding:8px 11px;font-size:12px;font-weight:800;cursor:pointer}
.sound-button:hover{border-color:#6b5a2c}
.sound-button.victory-sound{border-color:#5b4c20;color:#f5d987;background:#1b180e}
.hero{display:flex;justify-content:space-between;gap:20px;padding:26px;border:1px solid var(--line);background:linear-gradient(135deg,#161a26,#0e1118);border-radius:24px;box-shadow:var(--shadow)}
.clock{min-width:210px;text-align:right;display:flex;flex-direction:column;justify-content:center}.clock strong{font-size:31px;font-variant-numeric:tabular-nums}.clock span{color:var(--muted);font-size:12px}
.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:14px 0 34px}.stat{padding:18px;border:1px solid var(--line);background:var(--panel);border-radius:16px}.stat span{display:block;color:var(--muted);font-size:12px;margin-bottom:7px}.stat strong{font-size:24px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:28px 0 14px}.last-update{color:var(--muted);font-size:12px}
.ballot{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.slot{border:1px solid var(--line);background:var(--panel);padding:14px;border-radius:15px;min-height:108px}.slot .place{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.slot .number{font-size:25px;font-weight:900;margin:7px 0}.slot .name{font-weight:700}.slot.null{opacity:.62}.slot.watch{border-color:#5b5030;background:linear-gradient(145deg,#181813,#10131b)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:16px;border:1px solid var(--line);background:var(--panel);border-radius:20px;overflow:hidden}.photo{width:120px;height:150px;border-radius:14px;object-fit:cover;object-position:top;background:#202533}.cargo{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.card h4{font-size:22px;margin:5px 0 4px}.party{color:var(--muted);font-size:13px}.big-number{font-size:28px;font-weight:950;margin-top:14px;font-variant-numeric:tabular-nums}.pct{color:var(--accent);font-weight:800}.bar{height:7px;background:#252b37;border-radius:999px;overflow:hidden;margin:12px 0}.bar i{display:block;height:100%;background:var(--accent);width:0%;transition:width .4s}.status{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:900;border:1px solid var(--line);color:#d0d4df}.status.live{border-color:#355f47;color:var(--green);background:transparent}.status.elected{border-color:#5a4b1f;color:#f5d987;background:#221d0d}.status.lose{border-color:#65353a;color:#ff9da3;background:#211115}.status.wait{color:var(--muted)}
.card.special{border-color:#5b4c20;background:radial-gradient(circle at 100% 0,#2b2616 0,#11131a 42%)}.special-copy{font-size:12px;color:var(--muted);margin-top:10px}
.president-section{margin-top:30px}.leader-box{border:1px solid #5b4c20;background:linear-gradient(135deg,#1e1a0e,#11131a);border-radius:20px;padding:20px;font-size:22px;font-weight:900}.leader-box small{display:block;color:var(--muted);font-size:12px;font-weight:500;margin-top:6px}.ranking{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.rank{border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:16px;display:grid;grid-template-columns:48px 1fr;gap:13px;align-items:center}.rank-pos{font-size:25px;font-weight:950;color:var(--accent)}.rank h4{margin:0 0 4px;font-size:18px}.rank p{margin:0;font-size:12px;color:var(--muted)}.rank .votes{font-size:21px;font-weight:900;margin-top:8px}.events{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:16px}.events.empty{color:var(--muted)}.event{display:flex;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.event:last-child{border-bottom:0}.event strong{display:block}.event small{color:var(--muted)}.event.victory{background:linear-gradient(90deg,#211d0b,transparent);padding:18px;border-radius:14px}
footer{display:flex;justify-content:space-between;gap:22px;margin-top:35px;border-top:1px solid var(--line);padding:18px 0;color:var(--muted);font-size:11px;line-height:1.5}
@media(max-width:950px){.cards{grid-template-columns:1fr}.ranking{grid-template-columns:1fr}.ballot{grid-template-columns:repeat(3,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.notification-panel{grid-template-columns:1fr}}
@media(max-width:620px){main,.topbar{width:min(100% - 18px,1240px)}.topbar,.hero{flex-direction:column}.top-actions{justify-content:flex-start}.clock{text-align:left;min-width:0}.ballot{grid-template-columns:repeat(2,1fr)}.card{grid-template-columns:90px 1fr}.photo{width:90px;height:120px}footer{flex-direction:column}}
