:root{
  --bg:#070812;--bg2:#101227;--panel:#11152d;--panel2:#171b38;--input:#090b18;
  --line:#39406c;--line-hi:#7784d6;--text:#f7f7ff;--muted:#aab0d2;
  --cyan:#37f3ff;--magenta:#ff4fd8;--yellow:#ffe66d;--green:#5cff9d;--red:#ff5f7a;
  --accent:var(--cyan);--accent2:var(--magenta);--good:var(--green);--bad:var(--red);--gold:var(--yellow);
  --radius:4px;--shadow:8px 8px 0 rgba(0,0,0,.42);--pixel:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",Menlo,monospace;
}
*{box-sizing:border-box}
html{color-scheme:dark;background:var(--bg)}
body{margin:0;color:var(--text);font:15px/1.55 var(--pixel);background:
  radial-gradient(circle at 12% 10%,rgba(55,243,255,.08),transparent 24rem),
  radial-gradient(circle at 90% 18%,rgba(255,79,216,.08),transparent 26rem),
  linear-gradient(180deg,#0b0d1c 0%,#070812 70%);min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.045;background:repeating-linear-gradient(0deg,#fff 0 1px,transparent 1px 4px)}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{width:min(1140px,calc(100% - 32px));margin:auto;padding:24px 0 42px}.narrow{width:min(780px,calc(100% - 24px))}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;min-height:58px;padding:0 2px}.logo{font-weight:1000;font-size:26px;letter-spacing:.08em;text-shadow:3px 3px 0 #000}.logo span{color:var(--cyan);text-shadow:2px 2px 0 #000,0 0 14px rgba(55,243,255,.28)}.logo small{display:inline-block;margin-left:8px;color:var(--yellow);font-size:10px;border:1px solid var(--yellow);padding:4px 7px;border-radius:2px;background:#171426;box-shadow:3px 3px 0 #000}
.button-row,.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.actions{justify-content:center;margin-top:24px}
.card{position:relative;background:linear-gradient(180deg,var(--panel2),var(--panel));border:2px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}
.card:after{content:"";position:absolute;inset:5px;border:1px solid rgba(119,132,214,.14);pointer-events:none}
.hero{display:grid;grid-template-columns:1.08fr .92fr;gap:0;padding:0;overflow:hidden;border-color:#5964a5}.hero-copy{padding:44px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,rgba(55,243,255,.035),transparent 45%)}.hero-panel{padding:30px;background:#0d1023;border-left:2px solid var(--line);display:flex;align-items:center}.hero-panel form{width:100%}.hero h1,.game-card h1,.twitch-hero h1{font-size:clamp(32px,5vw,60px);line-height:1.04;letter-spacing:-.045em;margin:10px 0 16px;text-transform:uppercase;text-shadow:4px 4px 0 #000}.hero h1 em{font-style:normal;color:var(--cyan);text-shadow:3px 3px 0 #000,0 0 18px rgba(55,243,255,.2)}.hero-lead{color:#c2c7e5;font-size:16px;max-width:650px;margin:0 0 22px}.eyebrow{color:var(--yellow);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:900}.muted{color:var(--muted)}.subtle{color:#7d83a7}.center{text-align:center}
.feature-pills{display:flex;gap:8px;flex-wrap:wrap}.feature-pill{padding:7px 9px;border:1px solid #3c4575;border-radius:2px;color:#c8ccef;font-size:11px;background:#0d1124;box-shadow:2px 2px 0 #000}.feature-pill:before{content:"> ";color:var(--magenta)}
.name-form,.stack{display:grid;gap:15px}label{font-size:11px;letter-spacing:.1em;font-weight:900;color:#d9dcf3;text-transform:uppercase}input,select,textarea{width:100%;margin-top:7px;background:var(--input);color:var(--text);border:2px solid #343d6b;border-radius:2px;padding:12px 13px;outline:none;box-shadow:inset 3px 3px 0 rgba(0,0,0,.35)}input:focus,select:focus,textarea:focus{border-color:var(--cyan);box-shadow:inset 3px 3px 0 rgba(0,0,0,.35),0 0 0 2px rgba(55,243,255,.12)}input[type=file]{padding:10px}small{display:block;color:var(--muted);margin-top:5px;letter-spacing:0;font-weight:500;text-transform:none}
.primary,.ghost,.button,.danger{border-radius:2px;padding:11px 15px;font-weight:1000;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;border:2px solid transparent;text-transform:uppercase;letter-spacing:.05em;transition:transform .08s,box-shadow .08s,background .12s}.primary{background:var(--cyan);border-color:#c8fdff;color:#061016;box-shadow:4px 4px 0 #052e34}.primary:hover{background:#7af7ff;transform:translate(-1px,-1px);box-shadow:5px 5px 0 #052e34}.primary:active,.ghost:active,.danger:active{transform:translate(3px,3px);box-shadow:1px 1px 0 #000}.ghost{background:#151a35;border-color:#57618f;color:#e2e5ff;box-shadow:4px 4px 0 #070815}.ghost:hover{border-color:var(--magenta);color:#fff}.danger{background:#3c1428;border-color:var(--red);color:#ffd8df;box-shadow:4px 4px 0 #1a0710}.danger:hover{background:#531833}
.mode-fieldset{border:0;padding:0;margin:3px 0}.mode-fieldset legend{font-size:11px;letter-spacing:.11em;font-weight:900;color:var(--yellow);margin-bottom:10px}.mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.mode-option{position:relative;cursor:pointer;text-transform:none}.mode-option input{position:absolute;opacity:0}.mode-option span{height:68px;display:flex;flex-direction:column;justify-content:center;align-items:center;border:2px solid #3b4679;border-radius:2px;background:#0e1227;box-shadow:3px 3px 0 #050611}.mode-option b{font-size:21px;color:#f8f8ff}.mode-option small{font-size:9px;margin:0;color:#8f97c2;text-transform:uppercase}.mode-option:hover span{border-color:var(--magenta)}.mode-option input:checked+span{border-color:var(--cyan);background:#132539;box-shadow:3px 3px 0 #050611,inset 0 0 0 1px rgba(55,243,255,.22)}.mode-option input:checked+span b{color:var(--cyan);text-shadow:0 0 12px rgba(55,243,255,.35)}.mode-all{grid-column:span 4}.mode-all span{height:54px;flex-direction:row;gap:9px}.mode-all small{margin:0}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.grid3 .card{padding:20px;box-shadow:5px 5px 0 rgba(0,0,0,.35)}.grid3 p{margin:7px 0 0;font-size:13px}.feature-icon{display:grid;place-items:center;width:38px;height:38px;margin-bottom:13px;border:2px solid var(--magenta);border-radius:2px;background:#24122f;color:#fff;font-size:11px;font-weight:1000;box-shadow:3px 3px 0 #000}
.game-shell{width:min(920px,calc(100% - 28px))}.hud{display:flex;gap:9px;flex-wrap:wrap}.hud span{border:2px solid #3d4775;border-radius:2px;padding:7px 10px;color:#8f97c2;font-size:10px;background:#0d1125;box-shadow:3px 3px 0 #000}.hud b{color:var(--yellow);font-size:14px;font-variant-numeric:tabular-nums}.game-card{padding:32px;border-color:#5964a5}.progress,.title-row{display:flex;justify-content:space-between;gap:14px;align-items:center;color:var(--muted);font-size:11px;text-transform:uppercase}.timer-chip,.timer{color:var(--cyan)!important;font-variant-numeric:tabular-nums;text-shadow:0 0 10px rgba(55,243,255,.25)}.meter{height:8px;border:2px solid #30385f;border-radius:0;background:#080a17;overflow:hidden;margin:11px 0 26px;padding:1px}.meter i{display:block;height:100%;background:repeating-linear-gradient(90deg,var(--magenta) 0 14px,#ff85e6 14px 17px);transition:width .3s}.game-card h1{font-size:clamp(26px,4vw,42px);line-height:1.2;margin:8px 0 0;text-transform:none;letter-spacing:-.025em}.choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:25px}.choice{text-align:left;background:#0c1022;color:var(--text);border:2px solid #3c4677;border-radius:2px;padding:14px;min-height:76px;display:flex;gap:13px;align-items:center;cursor:pointer;box-shadow:4px 4px 0 #050611;transition:transform .08s,border-color .12s,background .12s}.choice:hover:not(:disabled){border-color:var(--cyan);background:#111b32;transform:translate(-1px,-1px)}.choice span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:2px;background:#20274c;border:1px solid #5561a2;font-weight:1000;color:var(--yellow)}.choice em{font-style:normal;font-weight:750}.choice.correct{border-color:var(--good);background:#103021;box-shadow:4px 4px 0 #05170e}.choice.correct span{background:var(--good);border-color:#c8ffdc;color:#04140a}.choice.wrong{border-color:var(--bad);background:#351220;box-shadow:4px 4px 0 #16060d}.choice.wrong span{background:var(--bad);border-color:#ffc0cb;color:#22050b}.feedback{margin-top:17px;border-radius:2px;padding:16px;background:#0c1020;border:2px solid #3d4775;box-shadow:4px 4px 0 #050611}.feedback.good,.alert.good{border-color:var(--good);background:#102a1d}.feedback.bad,.alert.bad{border-color:var(--bad);background:#321322}.feedback p{color:#bbc1df;margin:8px 0 0}.hidden{display:none!important}
.result-card{padding:36px;border-color:#5964a5}.result-score-label{color:#9ca4ce;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.result-points{font-size:clamp(42px,7vw,74px);font-weight:1000;letter-spacing:-.05em;color:var(--yellow);text-shadow:4px 4px 0 #000}.result-big{font-size:clamp(58px,10vw,100px);line-height:1;font-weight:1000;color:var(--cyan);letter-spacing:-.06em;text-shadow:4px 4px 0 #000,0 0 18px rgba(55,243,255,.2)}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:22px auto 0;max-width:620px}.result-stat{padding:14px;border:2px solid #3b4679;border-radius:2px;background:#0d1125;box-shadow:3px 3px 0 #050611}.result-stat span{display:block;font-size:9px;text-transform:uppercase;color:#8f97c2}.result-stat b{display:block;font-size:20px;margin-top:4px;color:#fff}
.leaderboard-head{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end;margin-bottom:18px}.leaderboard-head h1,.admin-title h1{font-size:clamp(30px,4vw,48px);letter-spacing:-.04em;margin:5px 0;text-transform:uppercase;text-shadow:3px 3px 0 #000}.tabs,.mode-tabs{display:flex;gap:7px;flex-wrap:wrap}.tabs a,.mode-tabs a{background:#0d1125;border:2px solid #3a4474;border-radius:2px;padding:7px 11px;font-size:11px;font-weight:900;color:#b9bfdf;box-shadow:2px 2px 0 #000}.tabs a:hover,.mode-tabs a:hover{border-color:var(--magenta)}.tabs a.active,.mode-tabs a.active{background:#18243c;color:var(--cyan);border-color:var(--cyan)}.filter-block{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:11px 0 15px}.filter-block>span{font-size:9px;text-transform:uppercase;color:var(--yellow);font-weight:900;letter-spacing:.1em}.table-wrap{overflow:auto;margin-top:16px;border:2px solid #3a4474;border-radius:2px;box-shadow:4px 4px 0 #050611}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 13px;border-bottom:1px solid #2b3155;white-space:nowrap}th{color:var(--yellow);font-size:9px;text-transform:uppercase;background:#0b0f20;letter-spacing:.08em}tbody tr:nth-child(even){background:rgba(255,255,255,.015)}tbody tr:last-child td{border-bottom:0}.rank{width:32px;height:32px;display:grid;place-items:center;border-radius:2px;background:#202746;border:1px solid #4b558b;color:#c2c7e5;font-weight:1000;box-shadow:2px 2px 0 #000}.rank.top1{color:#151000;background:var(--yellow);border-color:#fff3ae}.rank.top2{color:#0b0d13;background:#d5dcff}.rank.top3{color:#190a02;background:#f6a26f}
.alert{padding:14px 15px;border:2px solid #3a4474;background:#0d1125;border-radius:2px;margin:14px 0;color:#d1d5ee;box-shadow:3px 3px 0 #050611}textarea{min-height:280px;font:13px/1.45 var(--pixel)}
.admin-grid{display:grid;grid-template-columns:230px minmax(0,1fr);gap:15px}.side{padding:10px;align-self:start;position:sticky;top:16px;box-shadow:5px 5px 0 #050611}.side:before{content:"SERVICE MENU";display:block;color:var(--yellow);font-size:9px;letter-spacing:.14em;font-weight:1000;padding:8px 10px;border-bottom:1px solid #343d69;margin-bottom:6px}.side a{display:flex;padding:10px;border-radius:2px;color:#b9bfdf;font-size:12px;font-weight:750;border:1px solid transparent}.side a:hover{background:#151b35;border-color:#495381}.side a.active{background:#162638;color:var(--cyan);border-color:var(--cyan)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stat{background:#0d1125;border:2px solid #3a4474;border-radius:2px;padding:16px;box-shadow:3px 3px 0 #050611}.stat span{display:block;color:#8f97c2;font-size:9px;text-transform:uppercase}.stat b{font-size:28px;display:block;margin-top:5px;color:var(--yellow)}.login-card{max-width:520px;margin:8vh auto 0;padding:34px;border-color:#5964a5}.login-mark{width:50px;height:50px;display:grid;place-items:center;border-radius:2px;background:#23112f;color:var(--magenta);border:2px solid var(--magenta);font-weight:1000;margin-bottom:18px;box-shadow:4px 4px 0 #000}footer{padding:26px 4px;color:#777fa6;font-size:10px;text-align:center}
/* Twitch arcade stage */
.twitch-hero{padding:36px;border-color:#6b4a91}.twitch-hero h1{max-width:780px}.button-link{display:inline-flex}.twitch-connect{margin-top:16px}.connected-card{display:flex;flex-direction:column;gap:4px;padding:15px;border:2px solid #4e437b;border-radius:2px;margin:16px 0;background:#121127;box-shadow:3px 3px 0 #000}.connected-card strong{color:var(--magenta)}.connected-card span{color:var(--muted);font-size:12px}.twitch-setup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.twitch-setup label{display:flex;flex-direction:column}.twitch-setup select{margin-top:0}.twitch-setup .check{grid-column:span 2;flex-direction:row;align-items:center;text-transform:none;letter-spacing:0;font-size:12px}.twitch-setup .check input{width:auto;margin:0 9px 0 0}.twitch-setup button{grid-column:span 2}.season-actions{margin-top:15px}.twitch-live-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(290px,.82fr);gap:15px}.question-stage{min-height:500px;padding:32px;border-color:#6b4a91}.stage-head{display:flex;justify-content:space-between;gap:14px}.timer{font-size:32px;font-weight:1000}.question-stage h1{font-size:clamp(29px,4vw,47px);line-height:1.12;margin:18px 0 0;text-shadow:3px 3px 0 #000}.live-choices{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:24px}.live-choice{display:flex;gap:12px;align-items:center;min-height:78px;padding:14px;border:2px solid #463b74;border-radius:2px;background:#0d1022;font-size:15px;font-weight:750;box-shadow:4px 4px 0 #050611}.live-choice b{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:2px;background:#281637;border:1px solid var(--magenta);color:var(--magenta)}.live-choice.correct{border-color:var(--good);background:#103021}.reveal-box{margin-top:16px;padding:14px;border:2px solid var(--good);border-radius:2px;background:#102a1d;box-shadow:3px 3px 0 #050611}.standing-row{display:grid;grid-template-columns:28px 1fr auto;gap:8px;padding:10px 0;border-bottom:1px solid #30375f}.votes{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.votes div{padding:10px 5px;border:2px solid #3c4675;border-radius:2px;text-align:center;background:#0d1125}.control-deck{margin-top:15px}.streamer-answer{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:15px}.streamer-answer button{min-width:42px;border:2px solid #4d5688;background:#151a35;color:var(--yellow);border-radius:2px;padding:8px 11px;font-weight:1000;box-shadow:2px 2px 0 #000}.team-score{font-weight:900;margin-top:14px;color:var(--yellow)}.connection-badge{padding:8px 10px;border:2px solid #3b4679;border-radius:2px;font-size:11px;color:#b9c3df;background:#0d1125}.community-head h1{font-size:clamp(36px,5vw,58px);margin:4px 0;text-transform:uppercase;text-shadow:3px 3px 0 #000}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-panel{border-left:0;border-top:2px solid var(--line)}.admin-grid{grid-template-columns:1fr}.side{position:static;display:flex;overflow:auto}.side:before{display:none}.side a{white-space:nowrap}.twitch-live-grid,.twitch-setup{grid-template-columns:1fr}.twitch-setup .check,.twitch-setup button{grid-column:span 1}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.shell{width:min(100% - 18px,1140px);padding-top:12px}.topbar{align-items:flex-start}.hero-copy,.hero-panel,.card,.game-card,.result-card{padding:20px}.hero h1{font-size:38px}.mode-grid{grid-template-columns:repeat(2,1fr)}.mode-all{grid-column:span 2}.grid3,.result-stats,.stats,.choices,.live-choices{grid-template-columns:1fr}.hud{justify-content:flex-start}.progress,.title-row{align-items:flex-start;flex-direction:column}.leaderboard-head{grid-template-columns:1fr}th,td{padding:10px}.topbar .button-row .ghost{padding:8px 10px;font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}body:before{display:none}}
