@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

*{box-sizing:border-box}
body{margin:0;background:#07070b;color:#fff;font-family:Inter,Arial,sans-serif}
.bg{position:fixed;inset:0;z-index:-2;background:
radial-gradient(circle at 15% 10%,rgba(226,36,255,.22),transparent 35%),
radial-gradient(circle at 85% 30%,rgba(0,208,255,.16),transparent 30%),
linear-gradient(145deg,#08080d,#11111b 60%,#09090d)}
.topbar{height:70px;border-bottom:1px solid #252532;display:flex;align-items:center;justify-content:space-between;padding:0 6%;backdrop-filter:blur(15px)}
.brand{font-size:23px;font-weight:900;letter-spacing:-1px}.brand span{color:#e73dff}
.live{font-size:12px;color:#bdbdcc}.live:first-letter{color:#ff3b6b}
.container{max-width:1080px;margin:auto;padding:60px 24px 90px}
.hero{text-align:center;padding:30px 0 55px}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:2.5px;color:#dc48ff;margin-bottom:13px}
h1{font-size:clamp(40px,7vw,78px);line-height:.98;margin:0 0 18px;letter-spacing:-4px}
h1 strong{color:#f14aff}
.hero p{color:#b7b7c7;font-size:17px}
.prizes{display:flex;justify-content:center;gap:16px;margin:35px auto;flex-wrap:wrap}
.prizes div{background:rgba(255,255,255,.055);border:1px solid #292936;border-radius:18px;padding:18px 35px;min-width:220px}
.prizes b{display:block;font-size:27px}.prizes span{font-size:12px;color:#a8a8b5}
.countdown{display:flex;justify-content:center;gap:12px}.countdown div{width:88px;padding:14px 5px;background:#15151f;border-radius:13px}.countdown b{display:block;font-size:27px}.countdown span{font-size:10px;color:#8f8f9d;text-transform:uppercase}
.alert{padding:16px 20px;border-radius:13px;margin:0 0 25px;text-align:center;font-size:14px}.success{background:#123b27;border:1px solid #26734b}.error{background:#3b1620;border:1px solid #7a2c40}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.candidate{background:linear-gradient(180deg,#15151e,#101017);border:1px solid #2a2a36;border-radius:22px;overflow:hidden;box-shadow:0 15px 45px #0006}.candidate.winner{border-color:#d63dff}
.photo-wrap{height:300px;position:relative;overflow:hidden;background:#1c1c27}.photo-wrap img{width:100%;height:100%;object-fit:cover}.placeholder{height:100%;display:grid;place-items:center;font-size:100px;font-weight:900;color:#9b35aa;background:linear-gradient(135deg,#24122d,#111827)}
.badge{position:absolute;top:15px;left:15px;background:#ed43ff;color:#fff;padding:8px 11px;border-radius:999px;font-size:9px;font-weight:900}
.candidate-info{padding:23px}.candidate-info small{font-size:10px;color:#8d8d9c;font-weight:800;letter-spacing:1.5px}.candidate h2{font-size:25px;margin:8px 0}.percent{font-size:32px;font-weight:900}.bar{height:6px;background:#2a2a35;border-radius:99px;margin:10px 0 7px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#a92fff,#fa45e9);border-radius:inherit}.vote-count{font-size:12px;color:#9d9daa}.vote-btn,.submit{border:0;width:100%;margin-top:18px;padding:14px;border-radius:12px;background:linear-gradient(90deg,#bc32ff,#f43ce0);color:#fff;font-weight:900;cursor:pointer}.vote-btn:hover,.submit:hover{filter:brightness(1.15)}
.results{margin-top:70px;background:#111119;border:1px solid #292934;border-radius:22px;padding:30px}.results h2{font-size:32px;margin:0 0 8px}.results p{color:#9999a7}.result-row{display:grid;grid-template-columns:35px 1fr 80px 100px;gap:10px;align-items:center;border-top:1px solid #272732;padding:17px 0}.result-row span{font-weight:700}.result-row strong{color:#e847f2}.result-row em{font-size:12px;color:#8d8d9a;font-style:normal;text-align:right}
footer{text-align:center;border-top:1px solid #24242d;padding:40px;color:#777;font-size:12px}
.modal{position:fixed;inset:0;background:#000b;display:none;place-items:center;padding:20px;z-index:20}.modal.open{display:grid}.modal-box{position:relative;background:#11111a;border:1px solid #30303c;border-radius:22px;padding:32px;width:min(500px,100%);box-shadow:0 30px 100px #000}
.close{position:absolute;right:15px;top:10px;border:0;background:none;color:#aaa;font-size:30px;cursor:pointer}.modal h2{font-size:30px;margin:0}.modal h2 span{color:#e845f2}.note{font-size:13px;color:#999}.modal form{margin-top:22px}.modal label{display:block;font-size:12px;color:#aaa;margin:13px 0}.modal input:not([type=checkbox]){display:block;width:100%;margin-top:6px;background:#1a1a25;border:1px solid #343440;border-radius:10px;padding:13px;color:#fff;outline:none}.modal input:focus{border-color:#e244f0}.consent{display:flex!important;gap:9px;align-items:flex-start;line-height:1.45}.consent input{margin-top:2px}.consent span{font-size:11px}
@media(max-width:800px){.cards{grid-template-columns:1fr}.container{padding-top:35px}h1{letter-spacing:-2px}.photo-wrap{height:330px}.result-row{grid-template-columns:30px 1fr 55px}.result-row em{display:none}}
