.voting-hub{--font-body:var(--vote-prose)}
.voting-hub .hub-main{max-width:1280px;margin:0 auto;padding:142px 36px 70px}
.hub-skip{position:fixed;top:-100px;left:20px;z-index:1001;background:var(--vote-gold-bright);color:#111;padding:12px}.hub-skip:focus{top:10px}
.hub-hero{display:grid;grid-template-columns:1fr 240px;align-items:center;gap:50px;padding:10px 0 34px}
.hub-hero h1{font:600 clamp(35px,4.3vw,62px)/1.1 var(--vote-display);letter-spacing:-.025em;color:var(--vote-text);margin:14px 0 19px;text-transform:none}
.hub-hero h1 span{color:var(--vote-gold-bright)}
.hub-hero p:not(.vote-kicker){font:22px/1.45 var(--vote-prose);color:#b4adbf;max-width:670px;margin:0 0 20px}
.hub-hero .vote-link{font:12px var(--vote-mono);display:inline-flex;gap:10px;align-items:center;min-height:44px}
.hub-question{display:grid;place-items:center;width:23px;height:23px;border:1px solid var(--vote-line);border-radius:50%;font:12px var(--vote-mono)}
.hub-sigil{position:relative;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--vote-gold-bright);background:radial-gradient(circle,#a855f710,transparent 70%)}
.hub-sigil::before,.hub-sigil::after{content:'';position:absolute;inset:17px;border:1px solid #c9a22744;transform:rotate(45deg);pointer-events:none}
.hub-sigil::after{inset:2px;border-radius:50%;transform:none;border-style:dashed;border-color:#c9a22730}
.hub-sigil svg{width:50px;height:50px;margin-bottom:15px;filter:drop-shadow(0 0 15px #c9a22755)}
.hub-sigil>span{font:500 9px/1.8 var(--vote-mono);letter-spacing:.13em;text-transform:uppercase}
.sigil-gems{display:flex;gap:13px;margin-top:21px}.sigil-gems i{width:7px;height:7px;background:var(--tier-ink);transform:rotate(45deg);box-shadow:0 0 12px var(--tier-ink)}
.hub-jumps{display:flex;border-top:1px solid var(--vote-line);border-bottom:1px solid var(--vote-line);gap:34px;padding:0;margin:12px 0 34px;overflow:auto}
.hub-jumps a{display:flex;align-items:center;gap:10px;white-space:nowrap;padding:18px 0;color:#bab3c3;text-decoration:none;font:11px var(--vote-mono);min-height:54px}
.hub-jumps a:hover{color:var(--vote-gold-bright)}.hub-jumps b{font-size:10px;font-weight:400;display:grid;place-items:center;min-width:19px;height:19px;border:1px solid #c9a22738;border-radius:50%;color:var(--vote-gold-bright)}
.hub-status{font:16px/1.5 var(--vote-prose);color:var(--vote-muted);margin:0 0 20px}
.hub-retry{background:transparent;border:1px solid var(--vote-line);padding:9px 15px;color:var(--vote-gold-bright);min-height:44px;cursor:pointer;margin-left:12px;font:11px var(--vote-mono)}
.hub-section{scroll-margin-top:115px;margin-bottom:34px}.hub-section-head{display:flex;align-items:center;gap:13px;margin-bottom:16px}
.hub-section-head h2{font:500 19px/1.3 var(--vote-display);color:var(--vote-text);text-transform:none;margin:0;letter-spacing:.01em}
.hub-section-head::after{content:'';height:1px;background:linear-gradient(90deg,#c9a22730,transparent);flex:1;margin-left:7px}
.hub-section-head .status-gem{width:8px;height:8px;transform:rotate(45deg);background:var(--section-accent);box-shadow:0 0 14px color-mix(in srgb,var(--section-accent) 45%,transparent)}
#in-progress{--section-accent:#22c55e}#coming-up{--section-accent:#a855f7}#concluded{--section-accent:#c9a227}#event-updates{--section-accent:#9ca3af}
.hub-empty{font:17px/1.5 var(--vote-prose);color:#a69dae;padding:5px 0 8px;margin:0}
.hub-event{display:grid;grid-template-columns:1.2fr 1fr;position:relative;border:1px solid #c9a22755;background:linear-gradient(135deg,#1e162c,#12121a 65%);box-shadow:0 15px 55px #0004;margin:0 0 20px;overflow:hidden}
.hub-event::before,.hub-event::after{content:'';position:absolute;width:26px;height:26px;border:solid var(--vote-gold-bright);pointer-events:none;z-index:2;opacity:.65}
.hub-event::before{top:0;left:0;border-width:2px 0 0 2px}.hub-event::after{bottom:0;right:0;border-width:0 2px 2px 0}
.hub-event-art{min-width:0;position:relative;padding:32px 24px 28px;display:flex;align-items:center;background:radial-gradient(ellipse at 30% 20%,#a855f719,transparent 70%),radial-gradient(ellipse at 90% 90%,#3b82f61f,transparent 60%),#0e0c15}
.hub-portraits{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;width:100%;padding:0 9px}
.hub-portrait{min-width:0;border:1px solid #c9a22744;position:relative;margin:0;background:#17121f;box-shadow:0 7px 20px #0008}
.hub-portrait img{display:block;width:100%;aspect-ratio:3/4;object-fit:contain}
.hub-portrait figcaption{font:500 10px var(--vote-display);text-align:center;color:#e3d6be;background:#121019;padding:7px 2px}
.hub-portrait:nth-child(3n+2){transform:translateY(-8px)}
.hub-event-copy{padding:35px 32px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;border-left:1px solid #c9a22725}
.hub-event-badge{font:500 9px var(--vote-mono);letter-spacing:.11em;text-transform:uppercase;border:1px solid color-mix(in srgb,var(--section-accent) 40%,transparent);background:color-mix(in srgb,var(--section-accent) 9%,transparent);color:color-mix(in srgb,var(--section-accent) 65%,white);padding:7px 10px;margin-bottom:15px}
.hub-event h3{font:600 clamp(24px,2.7vw,35px)/1.2 var(--vote-display);text-transform:none;color:var(--vote-text);margin:0 0 14px}
.hub-event h3 span{color:var(--vote-gold-bright);display:block;margin-top:3px}
.hub-event-description{font:20px/1.45 var(--vote-prose);color:#bab3c4;margin:0 0 18px}
.hub-event-meta{display:flex;flex-wrap:wrap;gap:7px 15px;font:10px/1.7 var(--vote-mono);color:#b9adca;border-top:1px solid var(--vote-line);padding-top:17px;margin:0 0 20px}
.hub-event-next{font:15px/1.5 var(--vote-prose);color:var(--vote-gold-bright);margin:0 0 22px}
.hub-event-next time{font-family:var(--vote-mono);font-size:13px}
.hub-event-link{width:100%;justify-content:space-between}.hub-event-note{font:14px/1.5 var(--vote-prose);color:var(--vote-muted);margin:11px 0 0}
.hub-about{scroll-margin-top:110px;position:relative;margin-top:60px;padding:36px;border:1px solid var(--vote-line);background:radial-gradient(ellipse at 90% 0,#a855f717,transparent 70%),#111019}
.hub-about::before{content:'✦';position:absolute;top:-14px;left:calc(50% - 20px);width:40px;text-align:center;background:#0e0b16;color:var(--vote-gold-bright);font-size:23px}
.hub-about-heading{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px}
.hub-about h2{font:500 31px/1.25 var(--vote-display);text-transform:none;color:var(--vote-text);margin:9px 0 0}
.hub-about-intro{font:20px/1.5 var(--vote-prose);color:#bbb3c5;margin:0}
.hub-how{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;padding:29px 0 0;margin:28px 0 0;border-top:1px solid var(--vote-line);list-style:none;counter-reset:how}
.hub-how li{counter-increment:how}.hub-how li::before{content:'0' counter(how);font:10px var(--vote-mono);color:var(--vote-gold-bright)}
.hub-how h3{font:500 15px var(--vote-display);text-transform:none;color:var(--vote-text);margin:10px 0}
.hub-how p{font:17px/1.45 var(--vote-prose);color:#aea5bb;margin:0}
.hub-membership{margin-top:40px;scroll-margin-top:110px}.hub-membership-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:23px}
.hub-membership h2{font:500 23px var(--vote-display);text-transform:none;color:var(--vote-text);margin:9px 0 0}
.hub-membership-heading>p{font:17px/1.5 var(--vote-prose);color:var(--vote-muted);max-width:500px;margin:0}
.hub-tiers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}
.hub-tier{position:relative;min-width:0;text-align:center;padding:21px 8px 15px;border:1px solid color-mix(in srgb,var(--tier-ink) 40%,transparent);background:radial-gradient(ellipse at 50% 0,color-mix(in srgb,var(--tier-ink) 13%,transparent),transparent 75%),#111019}
.hub-tier img{display:block;width:85px;height:85px;object-fit:contain;margin:0 auto 11px;filter:drop-shadow(0 3px 15px color-mix(in srgb,var(--tier-ink) 20%,transparent))}
.hub-tier h3{font:500 11px/1.5 var(--vote-display);text-transform:none;color:var(--tier-light);margin:0 0 10px}
.hub-tier b{font:500 24px/1.4 var(--vote-mono);color:var(--tier-light)}.hub-tier small{font:13px var(--vote-prose);color:var(--vote-muted);display:block}
.hub-membership-note{font:16px/1.5 var(--vote-prose);color:var(--vote-muted);margin-top:16px}
.hub-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;margin-top:48px;padding-top:25px;border-top:1px solid var(--vote-line);font:10px/1.6 var(--vote-mono);color:var(--vote-muted)}.hub-footer a{color:var(--vote-gold-bright);text-decoration:none}
@media(min-width:1500px){.hub-event-art{padding:33px 40px}.hub-portraits{gap:12px}}
@media(max-width:900px){.hub-hero{grid-template-columns:1fr 160px;gap:35px}.hub-sigil{font-size:10px}.hub-sigil::before{inset:13px}.hub-sigil>span{font-size:7px}.hub-sigil svg{width:33px;height:33px;margin-bottom:10px}.sigil-gems{gap:10px;margin-top:13px}.hub-event-copy{padding:25px}.hub-event-art{padding:22px 12px}.hub-portrait figcaption{font-size:8px}.hub-tiers{gap:8px}.hub-tier h3{font-size:10px}.hub-tier img{width:65px;height:65px}}
@media(max-width:660px){
 .voting-hub .hub-main{padding:106px 20px 40px}.hub-hero{display:block;padding:0 0 17px}.hub-sigil{display:none}.hub-hero h1{font-size:clamp(33px,9vw,47px)}.hub-hero p:not(.vote-kicker){font-size:20px}.vote-kicker{font-size:9px}.hub-jumps{gap:0;justify-content:space-between;margin-bottom:25px}.hub-jumps a{font-size:9px;gap:6px;padding:16px 0}.hub-jumps b{font-size:9px;min-width:16px;height:16px}
 .hub-section{margin-bottom:27px}.hub-section-head h2{font-size:17px}.hub-empty{font-size:16px}.hub-event{grid-template-columns:1fr}.hub-event-art{padding:23px 15px 17px}.hub-portraits{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;padding:0}.hub-portrait figcaption{font-size:7px;padding:6px 0;letter-spacing:-.04em}.hub-portrait:nth-child(3n+2){transform:none}.hub-portrait:nth-child(even){transform:translateY(-5px)}.hub-event-copy{border:0;border-top:1px solid #c9a22725;padding:24px}.hub-event h3{font-size:30px}.hub-event-description{font-size:19px}.hub-event-meta{font-size:9px}.hub-event-next{margin-bottom:18px}
 .hub-about{padding:27px 22px;margin-top:48px}.hub-about-heading{grid-template-columns:1fr;gap:18px}.hub-about h2{font-size:27px}.hub-about-intro{font-size:19px}.hub-how{grid-template-columns:1fr;gap:24px;margin-top:24px;padding-top:24px}.hub-how h3{margin:5px 0}.hub-how p{font-size:17px}
 .hub-membership-heading{display:block}.hub-membership-heading>p{margin-top:13px}.hub-tiers{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.hub-tier{padding:11px 2px}.hub-tier img{width:44px;height:44px;max-width:100%;margin-bottom:8px}.hub-tier h3{font-size:8px;letter-spacing:-.03em;line-height:1.4;min-height:25px}.hub-tier b{font-size:19px}.hub-tier small{font-size:11px}.hub-membership-note{font-size:15px}.hub-footer{font-size:8px}
}
@media(max-width:360px){.voting-hub .hub-main{padding-left:16px;padding-right:16px}.hub-event-copy{padding:20px}.hub-event h3{font-size:27px}.hub-jumps a{font-size:8px}.hub-portrait figcaption{font-size:6px}.hub-tier h3{font-size:7px}.hub-about{padding:25px 18px}}

.hub-event--prediction{border-color:#88c9a14a}.hub-event--prediction .hub-event-art{position:relative}.hub-prediction-reward{position:absolute;left:20px;right:20px;bottom:20px;text-align:center;padding:12px;background:#102018ed;border:1px solid #a1d8b353;color:#c5ebcd;font:10px var(--vote-mono);letter-spacing:.08em}.hub-event--prediction .hub-event-badge{color:#b7dfc0}
