:root{--red:#d71920;--blue:#0057b8;--ink:#132238;--muted:#667085;--bg:#f5f7fb;--card:#fff;--line:#e6eaf0}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,Segoe UI,Arial;background:var(--bg);color:var(--ink)}a{color:var(--blue);text-decoration:none}
header{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 3vw;position:sticky;top:0;z-index:20}
.brand{display:flex;align-items:center;gap:12px}.brand .mark{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,var(--red) 0 50%,var(--blue) 50%)}.brand b{display:block;color:var(--red);letter-spacing:.8px}.brand small{display:block;color:var(--blue);font-weight:700}
nav{display:flex;gap:18px;flex-wrap:wrap}nav a{font-weight:700;color:#344054}
main{max-width:1400px;margin:0 auto;padding:28px 3vw 60px}h1{font-size:clamp(26px,4vw,44px);margin:0 0 22px}h2{margin-top:0}
.card,.stat,.winner{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(16,24,40,.06);padding:22px;margin-bottom:20px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:22px}.stat b{display:block;font-size:34px;color:var(--blue)}.stat span{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.two{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
label{display:block;font-weight:700;margin:12px 0}input,select,textarea{width:100%;padding:12px 13px;border:1px solid #cfd6e2;border-radius:10px;margin-top:6px;font:inherit}
button,.btn{display:inline-block;border:0;border-radius:10px;padding:11px 16px;background:var(--blue);color:#fff;font-weight:800;cursor:pointer}.danger{background:var(--red)}button:disabled{opacity:.5}.inline{display:flex;gap:8px}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line);vertical-align:top}td small{display:block;color:var(--muted)}
.hero,.broadcast{min-height:260px;border-radius:24px;padding:42px;background:linear-gradient(120deg,#071a3b,#0057b8 65%,#d71920);color:#fff;margin-bottom:24px;display:flex;align-items:center}.broadcast{min-height:180px}.live{background:var(--red);padding:7px 12px;border-radius:999px;font-weight:900;letter-spacing:1px}
.winner{position:relative;overflow:hidden}.winner:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(var(--red),var(--blue))}.winner h2{font-size:28px;margin:18px 0 6px}.badge{background:#eef5ff;color:var(--blue);padding:6px 10px;border-radius:999px;font-weight:900}.bar{height:10px;background:#e8edf4;border-radius:99px;margin:14px 0}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--red));border-radius:99px}
.vote-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:8px 0}.vote-row input{width:130px}.activity{list-style:none;padding:0}.activity li{padding:12px 0;border-bottom:1px solid var(--line)}.activity span{display:block;color:var(--muted);margin-top:4px}
.auth{min-height:70vh;display:grid;place-items:center}.auth .card{width:min(430px,100%)}.flash{max-width:1400px;margin:16px auto 0;padding:12px 3vw;border-radius:10px}.flash.success{background:#e9f9ef;color:#08783e}.flash.error{background:#fff0f0;color:#a10f15}
@media(max-width:900px){header{height:auto;align-items:flex-start;gap:16px;padding-top:16px;padding-bottom:16px;flex-direction:column}.stats,.grid,.two,.three{grid-template-columns:1fr 1fr}nav{gap:12px}table{display:block;overflow-x:auto}}
@media(max-width:600px){.stats,.grid,.two,.three{grid-template-columns:1fr}.hero{padding:28px}.vote-row{align-items:flex-start;flex-direction:column}.vote-row input{width:100%}}
@media print{header,button,.btn{display:none!important}body{background:#fff}.card,.winner{box-shadow:none}}
