.vote-page{position:relative;min-height:100vh;padding:150px 0 105px;overflow:hidden}.vote-page::before{content:"";position:absolute;right:-180px;top:90px;width:650px;height:650px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--category-accent) 18%,transparent),transparent 68%);filter:blur(12px)}.vote-layout{position:relative;display:grid;grid-template-columns:.82fr 1.18fr;gap:46px;align-items:start}.vote-intro{position:sticky;top:130px;padding:35px 0}.vote-intro h1{font-size:clamp(3.2rem,6vw,6rem);margin:23px 0}.vote-intro>p{color:var(--muted);font-size:1.08rem;max-width:570px}.vote-rules-mini{display:grid;gap:12px;margin-top:40px}.vote-rules-mini>div{display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.vote-rules-mini span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--category-accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--category-accent) 24%,transparent);font-size:.7rem;font-weight:950}.vote-rules-mini p{margin:0;color:#a8b4c4;font-size:.82rem}.vote-form-card{position:relative;padding:30px;border:1px solid var(--line-strong);border-radius:28px;background:linear-gradient(145deg,rgba(15,20,31,.94),rgba(7,10,17,.9));box-shadow:var(--shadow);overflow:hidden}.vote-form-card::before{content:"";position:absolute;left:0;top:0;width:120px;height:2px;background:linear-gradient(90deg,var(--category-accent),transparent)}.vote-form-card form{display:grid;gap:28px}.vote-form-card fieldset{margin:0;padding:0;border:0}.vote-form-card legend{width:100%;padding:0 0 14px;margin-bottom:14px;border-bottom:1px solid var(--line);font-size:.76rem;font-weight:950;text-transform:uppercase;letter-spacing:.1em;color:#dfe8f2}.candidate-options{display:grid;gap:10px}.candidate-option{position:relative;display:grid;grid-template-columns:62px 1fr 32px;gap:14px;align-items:center;padding:11px 13px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.022);cursor:pointer;transition:border-color .25s,background .25s,transform .25s}.candidate-option:hover{transform:translateX(4px);border-color:rgba(255,255,255,.18)}.candidate-option input{position:absolute;opacity:0}.candidate-option img{width:58px;height:58px;border-radius:14px;object-fit:cover}.candidate-option span{display:flex;flex-direction:column}.candidate-option strong{font-size:.94rem}.candidate-option small{color:var(--muted);font-size:.7rem;margin-top:3px}.candidate-option i{display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--line-strong);border-radius:50%;font-style:normal;font-size:.72rem;color:transparent;transition:.2s}.candidate-option:has(input:checked){border-color:color-mix(in srgb,var(--category-accent) 52%,white 8%);background:color-mix(in srgb,var(--category-accent) 9%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--category-accent) 7%,transparent)}.candidate-option:has(input:checked) i{background:var(--category-accent);border-color:var(--category-accent);color:#fff;box-shadow:0 0 18px color-mix(in srgb,var(--category-accent) 45%,transparent)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid label>span{display:block;margin-bottom:7px;font-size:.74rem;font-weight:850}.form-grid label>span small{color:var(--muted);font-weight:600}.form-grid input{width:100%;height:51px;padding:0 14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.03);outline:0;transition:border-color .2s,box-shadow .2s}.form-grid input:focus{border-color:color-mix(in srgb,var(--category-accent) 55%,white 5%);box-shadow:0 0 0 4px color-mix(in srgb,var(--category-accent) 8%,transparent)}.consent-check{display:grid;grid-template-columns:22px 1fr;gap:11px;align-items:start;color:#9da9ba;font-size:.76rem;cursor:pointer}.consent-check input{margin-top:3px;width:18px;height:18px;accent-color:var(--category-accent)}.consent-check a{color:#dce7f1;text-decoration:underline;text-underline-offset:3px}.form-footnote{margin:-8px 0 0;color:#69768a;font-size:.7rem;text-align:center}.form-errors{padding:16px 18px;margin-bottom:22px;border:1px solid rgba(255,82,104,.34);border-radius:15px;background:rgba(255,82,104,.075);color:#ffc3cb}.form-errors strong{font-size:.82rem}.form-errors ul{margin:8px 0 0;padding-left:18px;font-size:.78rem}.vote-closed{text-align:center;padding:70px 20px}.vote-closed>span{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 20px;border-radius:22px;background:rgba(255,255,255,.05);border:1px solid var(--line);font-size:2rem}.vote-closed h2{font-size:2rem;margin-bottom:12px}.vote-closed p{color:var(--muted)}.hp-field{position:absolute;left:-9999px}.vote-success{position:relative;max-width:850px;margin:45px auto 0;padding:70px 50px;text-align:center;border:1px solid var(--line-strong);border-radius:32px;background:linear-gradient(145deg,rgba(15,21,32,.94),rgba(7,10,17,.92));box-shadow:var(--shadow);overflow:hidden}.vote-success::before{content:"";position:absolute;inset:-100px;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--category-accent) 18%,transparent),transparent 42%)}.vote-success>*{position:relative}.success-icon{display:grid;place-items:center;width:84px;height:84px;margin:0 auto 24px;border-radius:27px;background:linear-gradient(135deg,var(--success),#14b978);font-size:2.2rem;font-weight:950;box-shadow:0 18px 45px rgba(76,225,161,.23)}.vote-success h1{font-size:clamp(2.8rem,6vw,5.6rem);margin:17px 0}.vote-success>p{max-width:650px;margin:0 auto 29px;color:var(--muted);font-size:1.05rem}.vote-success>small{display:block;margin-top:25px;color:#69768a}.success-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:11px}
@media(max-width:960px){.vote-layout{grid-template-columns:1fr}.vote-intro{position:relative;top:auto;padding-top:10px}.vote-rules-mini{grid-template-columns:repeat(3,1fr)}.vote-rules-mini>div{grid-template-columns:1fr;text-align:center}.vote-rules-mini span{margin:auto}}
@media(max-width:650px){.vote-page{padding:125px 0 75px}.vote-rules-mini{grid-template-columns:1fr}.vote-rules-mini>div{grid-template-columns:44px 1fr;text-align:left}.vote-rules-mini span{margin:0}.vote-form-card{padding:20px 16px;border-radius:22px}.form-grid{grid-template-columns:1fr}.candidate-option{grid-template-columns:54px 1fr 28px}.candidate-option img{width:52px;height:52px}.vote-success{padding:50px 20px}.success-actions{align-items:stretch;flex-direction:column}.success-actions .button{width:100%}}
