/* Voting shares the site and Loyalty Vault's palette and typography. */
:root {
  --vote-bg:#0a0a0f; --vote-panel:#12121a; --vote-gold:#c9a227;
  --vote-gold-bright:#e8d78a; --vote-text:#e8e6e3; --vote-muted:#aaa3b2;
  --vote-line:rgba(201,162,39,.24); --vote-display:Cinzel,Georgia,serif;
  --vote-prose:'Crimson Pro',Georgia,serif; --vote-mono:'JetBrains Mono',monospace;
}
[data-tier="kobold"]{--tier-ink:#f59e0b;--tier-light:#ffbf51}
[data-tier="elf"]{--tier-ink:#22c55e;--tier-light:#69e492}
[data-tier="dwarf"]{--tier-ink:#3b82f6;--tier-light:#82b2ff}
[data-tier="dragonborn"]{--tier-ink:#a855f7;--tier-light:#cb98ff}
[data-tier="demigod"]{--tier-ink:#ef4444;--tier-light:#ff8989}
.voting-hub,.draft-page{
  background:radial-gradient(ellipse at 76% 12%,#57328b21,transparent 46%),radial-gradient(ellipse at 10% 38%,#a3711910,transparent 44%),linear-gradient(180deg,#08080c,#100c1e 55%,#0a0a0f) fixed;
  color:var(--vote-text);
  background-color:var(--vote-bg);
}
.voting-hub [hidden]{display:none!important}
.voting-hub :focus-visible{outline:2px solid var(--vote-gold-bright);outline-offset:5px}
.vote-kicker{font:500 10px/1.5 var(--vote-mono);letter-spacing:.17em;text-transform:uppercase;color:var(--vote-gold-bright)}
.vote-gold{color:var(--vote-gold-bright)}
.vote-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:46px;padding:12px 22px;background:linear-gradient(135deg,#eadc96,#bd9627);border:1px solid #f5e5a5;border-radius:2px;color:#17101e;text-decoration:none;font:600 13px var(--vote-display);cursor:pointer;transition:box-shadow .2s,transform .2s}
.vote-button:hover{color:#17101e;box-shadow:0 0 28px #c9a22730;transform:translateY(-2px)}
.vote-link{color:var(--vote-gold-bright);text-underline-offset:5px;text-decoration-thickness:1px}

/* The event stays focused on voting, with the same visual identity as the hub. */
body.draft-page{--bg:var(--vote-bg);--panel:var(--vote-panel);--text:var(--vote-text);--muted:var(--vote-muted);--gold:var(--vote-gold-bright);--line:var(--vote-line);--a:#d2acfa;--b:#82b2ff;--body:var(--vote-prose);--display:var(--vote-display);font-size:17px;background:radial-gradient(ellipse at 76% 12%,#57328b21,transparent 46%),linear-gradient(180deg,#08080c,#100c1e 55%,#0a0a0f) fixed;background-color:var(--vote-bg)}
.draft-page::before{background:radial-gradient(ellipse at 10% 35%,#a3711910,transparent 44%)}
.draft-page nav{border-color:var(--vote-line)}
.draft-page .brand{color:var(--gold);font-size:22px;letter-spacing:.06em}
.draft-page .brand-mark{display:none}
.draft-page .nav-end{align-items:center;font:10px var(--vote-mono);letter-spacing:.04em}
.draft-page .nav-end a:hover{color:var(--gold)}
.draft-page .nav-action{font:11px var(--vote-mono);min-height:44px}
.draft-page .hero{padding-top:9px}
.draft-page .hero h1{font-weight:600;letter-spacing:-.025em}
.draft-page .hero h1 span{color:var(--gold)}
.draft-page .hero p{font-size:20px;color:#b9b2c1;line-height:1.45}
.draft-page .eyebrow,.draft-page .section-kicker,.draft-page .round-label{font-family:var(--vote-mono);color:var(--gold)}
.draft-page .hero-aside .matchup-guide{background:radial-gradient(ellipse at 0 35%,#a855f720,transparent 60%),radial-gradient(ellipse at 100% 35%,#3b82f61a,transparent 60%),#12121a;border-color:#c9a22759;border-radius:2px}
.draft-page .matchup-side{color:var(--a)}.draft-page .matchup-side-b{color:var(--b)}
.draft-page .matchup-guide-title,.draft-page .matchup-side-label{font-family:var(--vote-mono)}
.draft-page .matchup-guide-subtitle{color:var(--muted);font-size:13px}
.draft-page .matchup-guide-link{font:11px var(--vote-mono)}
.draft-page .event-strip b{font-size:17px}.draft-page .event-strip small{font:10px var(--vote-mono)}
.draft-page .help-button{font:11px var(--vote-mono);border-color:var(--vote-line);border-radius:2px}
.draft-page .access-panel{display:grid;grid-template-columns:minmax(230px,1fr) minmax(300px,420px) auto;gap:24px;padding:23px;background:linear-gradient(115deg,#21173088,#12121a);border-color:var(--vote-line);border-radius:2px}
.draft-page .access-panel h2{font:600 18px/1.35 var(--body)}
.draft-page .access-panel p{font:16px/1.4 var(--body);color:var(--muted)}
.draft-page .access-actions{flex-direction:column;align-items:stretch;gap:5px}
.draft-page .access-actions .quiet-btn{font-size:13px;min-height:44px}
.draft-page .vote-power{min-width:0;width:100%}
.draft-page .power-blocks{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:4px;max-width:none;width:100%;margin:0 0 12px;flex-wrap:nowrap}
.draft-page .power-blocks span{display:block;width:auto;height:22px;border-radius:2px;border:1px solid #ffffff20;background:#ffffff06}
.draft-page .power-blocks .is-filled{background:linear-gradient(155deg,var(--tier-light),var(--tier-ink));border-color:var(--tier-light);box-shadow:0 0 12px color-mix(in srgb,var(--tier-ink) 22%,transparent)}
.tier-key{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
.tier-key>span{text-align:center;position:relative;border-top:2px solid color-mix(in srgb,var(--tier-ink) 50%,transparent);padding:7px 0 0;color:var(--tier-light)}
.tier-key b{font:500 14px/1.2 var(--vote-mono);display:block}.tier-key small{font:11px/1.4 var(--vote-prose);display:block;margin-top:3px}
.tier-key .is-current{border-color:var(--tier-ink);background:linear-gradient(color-mix(in srgb,var(--tier-ink) 13%,transparent),transparent)}
.draft-page .team{background:linear-gradient(120deg,#a855f70a,#12121a);border-color:#a855f742;border-radius:2px}
.draft-page .team-b{background:linear-gradient(250deg,#3b82f60b,#12121a);border-color:#3b82f647}
.draft-page .team.active{border-color:var(--a);box-shadow:0 0 30px #a855f718}.draft-page .team-b.active{border-color:var(--b);box-shadow:0 0 30px #3b82f618}
.draft-page .slot b{font-size:14px}.draft-page .slot small,.draft-page .team-status{font-family:var(--vote-mono)}
.draft-page .progress{margin-bottom:0;border-bottom:0}.draft-page .progress li{font:12px/1.4 var(--body);color:#b8b1c2}
.draft-page .progress li small{font:10px var(--vote-mono);margin-top:5px}.draft-page .progress .num{font-family:var(--vote-mono)}
.draft-page .progress li.current{color:var(--gold)}.draft-page .progress li.current::after{display:none}
.draft-page .progress li.done .num{color:var(--b);border-color:#3b82f66b}
.draft-timing{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;background:#15121ea6;border:1px solid var(--line);padding:17px 20px 20px;margin:4px 0 32px;border-radius:2px}
.timing-copy{display:grid;gap:3px;min-width:0}.timing-copy .section-kicker{font-size:8px;margin:0 0 3px}
.timing-copy>strong{font:500 17px/1.35 var(--body)}.timing-copy>span:last-child{color:var(--muted);font-size:14px}
.draft-timing .timer strong{font:500 28px/1.5 var(--vote-mono);color:var(--gold);letter-spacing:-.05em}
.draft-timing .timer-label{font:9px/1.5 var(--vote-mono);letter-spacing:.04em}.draft-timing .timer small{font:10px var(--body)}
.timeline-track{height:7px;position:relative;grid-column:1/-1;background:#ffffff0b;border-radius:1px;overflow:hidden}
.timeline-track>span{height:100%;position:absolute;left:0;top:0;background:linear-gradient(90deg,#806321,#c9a227 60%,#efdfa0);box-shadow:0 0 18px #c9a22777;transition:width .5s linear}
.timeline-track i{height:100%;position:absolute;border-left:2px solid #100d19;left:20%}.timeline-track i:nth-of-type(2){left:40%}.timeline-track i:nth-of-type(3){left:60%}.timeline-track i:nth-of-type(4){left:80%}
.draft-page .candidate{background:#12121a;border-color:#c9a22740;border-radius:2px;box-shadow:0 10px 30px #0006}
.draft-page .candidate::before{content:'';position:absolute;inset:0;pointer-events:none;border:1px solid transparent;border-image:linear-gradient(140deg,#e8d78a66,transparent 20%,transparent 80%,#e8d78a66) 1;z-index:2}
.draft-page .candidate .portrait{background:#12121a}.draft-page .candidate .portrait::after{background:linear-gradient(180deg,transparent 78%,#12121a)}
.draft-page .candidate h3{font-weight:600;font-size:18px}.draft-page .candidate .subtitle{font-size:13px;color:var(--muted)}
.draft-page .round-copy{font-size:17px;max-width:none}.draft-page .ballot-bottom{background:#171320f5;border-color:var(--vote-line)}
.draft-page .ballot-message strong{font-size:17px}.draft-page .ballot-message small{font-size:14px;color:var(--muted)}
.draft-page .cta{font:500 12px var(--vote-mono);background:linear-gradient(135deg,#e8d78a,#c9a227);border-color:#e8d78a;color:#17101e;border-radius:2px}
.draft-page .support-row{font-size:15px}.draft-page .support-row p{line-height:1.5}
.draft-page .info-dialog,.draft-page .round-history details{background:#14111e;border-color:var(--vote-line);border-radius:3px}
.draft-page .dialog-head{background:#191423}.draft-page .dialog-body p,.draft-page .dialog-body li{font-size:17px;color:#bab3c4}
.draft-page .dialog-body h3{font-size:18px}.draft-page .dialog-table{font-size:15px}.draft-page .dialog-table th{font:10px var(--vote-mono)}
.draft-page .mini-blocks{flex-wrap:nowrap;max-width:none}.draft-page .mini-blocks i{background:var(--tier-ink,var(--gold));flex-shrink:0}
.draft-page .dialog-table tr[data-tier]>td:first-child{color:var(--tier-light)}
.draft-page .footer{border-top:1px solid var(--line);padding-top:23px;color:var(--muted);font:9px/1.6 var(--vote-mono)}
.draft-page .footer a{color:var(--gold);text-decoration:none}
.draft-page .final{background:linear-gradient(115deg,#a855f70c,#3b82f60b);border-color:var(--line)}
.draft-page .showcase-fighter,.draft-page .prepare-panel{background:#14111e;border-color:var(--line)}
@media(max-width:1150px){.draft-page .access-panel{grid-template-columns:1fr minmax(280px,390px)}.draft-page .access-actions{grid-column:1/-1;flex-direction:row;align-items:center}.draft-page .access-actions .cta{width:auto}.draft-page .access-actions .quiet-btn{margin-left:auto}}
@media(max-width:660px){
 .draft-page nav{padding:0 18px}.draft-page .brand{font-size:17px}.draft-page .nav-end{gap:12px;font-size:10px}.draft-page .nav-end a:first-child{display:block}.draft-page .nav-end a:nth-child(2){display:none}.draft-page .nav-action{font-size:10px;padding:9px}
 .draft-page .hero h1{font-size:clamp(30px,8.8vw,43px)}.draft-page .hero p{font-size:18px}.draft-page .eyebrow{font-size:8px;letter-spacing:.09em}
 .draft-page .access-panel{display:flex;flex-direction:column;align-items:stretch;padding:16px;gap:17px}.draft-page .access-actions{flex-direction:column;align-items:stretch}.draft-page .access-actions .cta{width:100%}.draft-page .access-actions .quiet-btn{margin:0}
 .draft-page .power-blocks{gap:3px}.draft-page .power-blocks span{height:20px}.tier-key small{font-size:10px}.tier-key b{font-size:13px}
 .draft-page .progress li{font-size:11px;gap:5px}.draft-page .progress li small{font-size:9px}.draft-page .progress{gap:0 5px}
 .draft-timing{padding:14px 13px 16px;gap:12px;margin-bottom:27px}.timing-copy>strong{font-size:15px}.timing-copy>span:last-child{font-size:12px}.draft-timing .timer strong{font-size:23px}.draft-timing .timer-label{font-size:8px;max-width:125px;display:block}.draft-timing .timer small{font-size:10px}
 .draft-page .slot b{font-size:12px}.draft-page .slot small{font-size:7px}.draft-page .team-status{font-size:7px;letter-spacing:.03em}
 .draft-page .round-top h2{max-width:none;font-size:25px}.draft-page .round-copy{font-size:16px;max-width:none}.draft-page .round-top{display:block}
 .draft-page .candidate h3{font-size:17px}.draft-page .candidate .subtitle{font-size:12px}.draft-page .ballot-message strong{font-size:16px}.draft-page .ballot-message small{font-size:13px}.draft-page .support-row{font-size:14px}
 .draft-page .dialog-body p,.draft-page .dialog-body li{font-size:16px}.draft-page .dialog-table td{font-size:13px}.draft-page .mini-blocks{gap:2px}.draft-page .mini-blocks i{width:4px}.draft-page .footer{font-size:8px;flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.timeline-track>span,.vote-button{transition:none}.vote-button:hover{transform:none}}
