:root{--ink: #0b0d16;--panel: #12141f;--panel-2: #181b29;--line: #26283a;--line-strong: #3a3d52;--text: #e8e4d8;--dim: #8d8877;--gold: #c9a45c;--gold-bright: #f5b841;--phosphor: #9bb489;--red: #d96b5d;--font-display: "VT323", monospace;--font-body: "IBM Plex Sans", sans-serif;--font-mono: "IBM Plex Mono", monospace}*{box-sizing:border-box;margin:0}body{background:var(--ink);background-image:radial-gradient(ellipse 70% 45% at 50% -8%,#161a2b 0%,transparent 60%);color:var(--text);font-family:var(--font-body);min-height:100vh;position:relative}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(232,228,216,.022) 0px,rgba(232,228,216,.022) 1px,transparent 1px,transparent 3px);z-index:999}.shell{max-width:1040px;margin:0 auto;padding:0 24px 96px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid var(--line);gap:16px}.brand{font-family:var(--font-display);font-size:26px;letter-spacing:.14em;color:var(--text)}.brand-mark{color:var(--gold);margin-right:2px}nav{display:flex;gap:18px}.eyebrow{font-family:var(--font-display);font-size:17px;letter-spacing:.42em;color:var(--dim);margin-bottom:14px}.gold-eyebrow{color:var(--gold)}.btn{font-family:var(--font-display);letter-spacing:.08em;background:var(--panel-2);color:var(--text);border:1px solid var(--line-strong);border-radius:3px;padding:11px 20px;cursor:pointer;font-size:14px;transition:border-color .14s ease,background .14s ease}.btn:hover{border-color:var(--gold)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default}.btn{font-size:18px}.btn.big{font-size:24px;padding:14px 34px}.btn.warn{border-color:var(--red);color:var(--red)}.gold-btn{background:var(--gold-bright);color:#221703;border-color:var(--gold-bright);font-weight:600}.gold-btn:hover{border-color:#ffd77e;background:#ffcf66}.link{background:none;border:none;color:var(--dim);cursor:pointer;font-family:var(--font-display);font-size:18px;letter-spacing:.06em;text-decoration:none;padding:4px 2px}.link:hover{color:var(--text)}.landing{padding:88px 0 40px;text-align:center}.landing .sub{margin:0 auto 8px}.landing .countdown{padding:72px 0 40px}.landing .entry{text-align:left}h1,.page-title{font-family:var(--font-display);font-weight:400;font-size:54px;line-height:1.05;letter-spacing:.02em;margin:0 0 18px}.page-title.gold,.gold{color:var(--gold)}.sub{color:var(--dim);font-size:17px;line-height:1.7;max-width:52ch}.mono{font-family:var(--font-mono)}.dim{color:var(--dim)}.countdown{text-align:center;padding:96px 0 48px}.countdown-label{font-family:var(--font-display);letter-spacing:.5em;font-size:17px;color:var(--dim);margin-bottom:16px}.countdown-digits{font-family:var(--font-display);font-weight:400;font-size:clamp(64px,13vw,148px);line-height:1;display:flex;justify-content:center;gap:.22em;color:var(--text)}.countdown-digits em{font-style:normal;font-size:.3em;color:var(--dim);margin-left:.08em;align-self:flex-end;padding-bottom:.14em}.entry{max-width:680px;margin:0 auto;padding-top:16px}.entry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:4px;overflow:hidden}.stat{background:var(--panel);padding:20px 18px}.stat-label{font-family:var(--font-display);font-size:15px;color:var(--dim);letter-spacing:.16em;text-transform:uppercase}.stat-value{font-family:var(--font-mono);font-size:21px;font-weight:600;margin-top:8px}.stat-value.gold{color:var(--gold)}.stat-value.dim{color:var(--dim)}.entry-note{color:var(--dim);font-size:14px;line-height:1.7;margin:22px 0}.entry .btn.big{width:100%}.banner{background:var(--panel);border:1px solid var(--line);border-radius:3px;padding:14px 18px;margin:18px 0;font-size:15px;line-height:1.55}.banner.ok{border-color:var(--phosphor)}.banner.error{border-color:var(--red);color:#e9b3aa}.banner.warn{border-color:var(--gold)}.live-badge{display:inline-block;font-family:var(--font-display);font-size:22px;color:var(--phosphor);letter-spacing:.3em;margin-top:28px;animation:pulse 2.2s ease-in-out infinite}@keyframes pulse{50%{opacity:.4}}@media (prefers-reduced-motion: reduce){.live-badge{animation:none}.champion{animation:none!important}}.play-cta{text-align:center;padding:28px 0}.play-cta p{color:var(--dim);margin-bottom:22px;max-width:46ch;margin-inline:auto}.game-stage{display:flex;flex-direction:column;align-items:center;padding:28px 0;position:relative}.start-gate{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-display);font-size:56px;letter-spacing:.4em;color:var(--phosphor);z-index:2;background:#0b0d16b8}.tr-wrap{width:min(720px,92vw)}.tr-hud{display:flex;justify-content:space-between;align-items:baseline;padding:8px 4px}.tr-score{font-family:var(--font-display);font-size:42px;color:var(--gold)}.tr-hint{color:var(--dim);font-size:14px}.tr-canvas{width:100%;aspect-ratio:1;background:var(--panel);border:1px solid var(--line-strong);border-radius:4px}.results-stage{padding-top:48px}.champion{text-align:center;padding:56px 0 40px;animation:settle 1.4s ease-out both}@keyframes settle{0%{opacity:0}to{opacity:1}}.pedestal-svg{width:min(340px,70vw);display:block;margin:0 auto 28px}.hero-pedestal{width:min(440px,88vw);margin:40px auto 36px;display:block}.champion-address{color:var(--text);font-size:18px;margin:10px 0 4px}.champion-score{font-family:var(--font-display);font-size:58px;color:var(--gold);margin:6px 0 26px}.results-stage .sub{margin-bottom:24px}.board{width:100%;max-width:640px;margin:48px auto 0;border-collapse:collapse}.board th,.board td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line)}.board th{font-family:var(--font-display);color:var(--dim);font-size:15px;letter-spacing:.2em;text-transform:uppercase;font-weight:400}.board tr.first td{color:var(--gold);font-weight:600}.faq{max-width:640px;margin:0 auto;padding-top:64px}.faq .page-title{margin-bottom:40px}.faq-section{margin-bottom:44px}.faq-section h2{font-family:var(--font-display);font-weight:400;font-size:26px;letter-spacing:.04em;margin-bottom:12px;padding-top:18px;border-top:1px solid var(--line)}.faq-section p{color:var(--dim);font-size:15.5px;line-height:1.75;margin-bottom:12px}.faq-section p b{color:var(--text);font-weight:600}.faq-warning{border-left:2px solid var(--gold);padding-left:14px;color:var(--text)!important}.faq-disclaimer{color:var(--dim);font-size:13px;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.admin .panel{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:24px;margin:24px 0}.admin h2{font-family:var(--font-display);font-size:24px;letter-spacing:.1em;margin-bottom:12px;font-weight:400}.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.form-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.form-row input,.form-row select{background:var(--panel-2);border:1px solid var(--line-strong);color:var(--text);border-radius:3px;padding:10px 12px;font-family:var(--font-mono);font-size:13px}.approve-zone{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.replay-panel{margin-top:20px}.replay-canvas{width:min(640px,100%);aspect-ratio:1;background:var(--panel-2);border:1px solid var(--line-strong);border-radius:4px}.replay-controls{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}.replay-controls input[type=range]{flex:1;min-width:200px;accent-color:var(--phosphor)}.replay-meta{font-family:var(--font-mono);font-size:13px;color:var(--dim)}.replay-flags{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.flag{font-size:14px;padding:8px 12px;border-radius:3px;border:1px solid var(--line)}.flag.ok{border-color:var(--phosphor);color:var(--phosphor)}.flag.bad{border-color:var(--red);color:#e9b3aa}.replay-final{margin-top:12px;font-size:16px}.foot{margin-top:120px;padding-top:26px;border-top:1px solid var(--line);color:var(--dim);font-size:13px;line-height:1.8;max-width:680px}@media (max-width: 640px){h1,.page-title{font-size:38px}.hero{padding:88px 0 72px}.topbar{flex-wrap:wrap}.champion-score{font-size:44px}}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
