:root{color:#f4f8ef;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at top,#598f4138,#0000 40%),linear-gradient(#151a17 0%,#09100c 100%);font-family:Trebuchet MS,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{overscroll-behavior-y:contain;min-height:100svh;overflow-x:hidden}button,canvas{font:inherit}button{cursor:pointer;border:0}.app-shell{align-content:start;justify-items:center;min-height:100svh;padding:16px 14px 24px;display:grid}.game-card{background:#0a110de0;border:1px solid #9adc6f2e;border-radius:28px;gap:14px;width:min(100%,1300px);padding:18px 18px 20px;display:grid;box-shadow:0 32px 80px #0000005c}.hero-copy{text-align:center;justify-items:center;gap:10px;max-width:760px;margin:0 auto;display:grid}.hero-copy h1{letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:clamp(2.2rem,6vw,4.5rem);line-height:.95}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#a0df76;margin:0 0 8px;font-size:.82rem}.lede,.instruction-panel p{color:#f4f8efd6;margin:0;line-height:1.6}.instruction-panel{background:#5d9c3c14;border:1px solid #9adc6f29;border-radius:18px;gap:10px;padding:16px 18px;display:grid}.instruction-panel-bottom{width:var(--board-frame-width);text-align:center;margin:0 auto}.game-stage{--board-frame-width:min(97vw, 860px);--side-rail-width:126px;justify-items:center;gap:8px;width:100%;display:grid}.hud{width:var(--board-frame-width);gap:5px;display:grid}.hud-top{width:var(--board-frame-width)}.status-pill{text-align:center;background:#ffffff0f;border:1px solid #ffffff14;border-radius:16px;align-content:center;justify-items:center;gap:1px;width:100%;min-width:0;padding:7px 9px 8px;display:grid}.status-pill strong{color:#9edf74;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.66rem}.status-pill span{font-size:.94rem;font-weight:700;line-height:1.15}.score-status{align-items:center;gap:8px;display:inline-flex}.status-verified{color:#aaf57d}.status-connecting{color:#ffe17a}.status-practice,.status-rejected{color:#ff9a78}.fuel-track{background:#ffffff14;border-radius:999px;width:100%;height:14px;position:relative;overflow:hidden}.fuel-fill{border-radius:inherit;background:linear-gradient(90deg,#e5ff7a 0%,#8fe26b 55%,#1eba60 100%);transition:width .12s linear;position:absolute;inset:0 auto 0 0}.fuel-fill.low{background:linear-gradient(90deg,#ffdd57 0%,#ff8748 70%,#ff5046 100%)}.verification-note{color:#f4f8efbd;text-align:center;margin:0;font-size:.86rem;line-height:1.4}.hud-inline{justify-content:space-between;align-items:center;gap:12px;display:flex}.beer-status{color:#f4f8efc7;text-align:left;margin:0;font-size:.84rem;line-height:1.4}.beer-status strong{color:#ffe17a}.steering-penalty-label{color:#ffcf72;letter-spacing:.06em;text-transform:uppercase}.pause-toggle{color:#f4f8ef;background:#ffffff0f;border:1px solid #9adc6f2e;border-radius:999px;flex:none;min-width:92px;padding:8px 12px;font-weight:700}.canvas-shell{width:var(--board-frame-width);aspect-ratio:620/720;touch-action:none;overscroll-behavior:contain;-webkit-user-select:none;user-select:none;background:linear-gradient(#31641f 0%,#143015 100%);border:1px solid #ffffff14;border-radius:26px;position:relative;overflow:hidden;box-shadow:0 24px 52px #0000006b}.playfield-layout{grid-template-columns:var(--side-rail-width) minmax(0, var(--board-frame-width)) var(--side-rail-width);justify-content:center;align-items:start;gap:10px;width:100%;display:grid}.canvas-stack{justify-items:center;gap:10px;display:grid}.side-stats{align-content:start;align-self:stretch;gap:8px;display:grid}.side-stats .status-pill{min-height:64px}.game-canvas{width:100%;height:100%;display:block}.canvas-overlay{text-align:center;background:linear-gradient(#09100c2e,#09100cbd);place-items:center;padding:24px;display:grid;position:absolute;inset:0;overflow-y:auto}.overlay-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050907c2;border:1px solid #ffffff14;border-radius:22px;gap:12px;width:min(100%,360px);max-width:360px;max-height:100%;padding:22px 20px;display:grid;overflow-y:auto}.overlay-card::-webkit-scrollbar{width:0;height:0}.canvas-overlay::-webkit-scrollbar{width:0;height:0}.overlay-card h2{margin:0;font-size:clamp(1.6rem,3vw,2rem)}.overlay-card p{color:#f4f8efd1;margin:0;line-height:1.5}.overlay-card .button-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.primary-button,.secondary-button{border-radius:999px;padding:12px 18px;font-weight:700;transition:transform .12s,filter .12s}.primary-button{color:#10200f;background:linear-gradient(135deg,#b0f16a 0%,#59d861 100%)}.secondary-button{color:#f4f8ef;background:#ffffff14}.primary-button:hover,.secondary-button:hover{filter:brightness(1.06);transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled{cursor:wait;opacity:.72;filter:none;transform:none}.leaderboard-card{background:#ffffff0a;border:1px solid #ffffff14;border-radius:20px;gap:8px;width:100%;max-width:100%;padding:12px 14px;display:grid}.leaderboard-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.leaderboard-header h3{margin:0;font-size:1.18rem}.leaderboard-header-copy{gap:0;display:grid}.leaderboard-header-actions{justify-items:end;gap:8px;display:grid}.leaderboard-status{color:#f4f8efad;max-width:28rem;margin:5px 0 0;font-size:.84rem;line-height:1.35}.leaderboard-rank-callout{color:#ffe17a;letter-spacing:.04em;margin:6px 0 0;font-size:.82rem}.leaderboard-cap{color:#f4f8ef9e;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem}.leaderboard-toggle{color:#f4f8ef;background:#ffffff0f;border:1px solid #9adc6f29;border-radius:999px;padding:10px 14px;font-weight:700}.leaderboard-card-collapsed{gap:8px;padding-bottom:12px}.leaderboard-preview{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.leaderboard-preview-chip{background:#0a110d8f;border:1px solid #9adc6f1f;border-radius:999px;align-items:center;gap:10px;min-height:40px;padding:8px 11px;display:inline-flex}.leaderboard-preview-chip-top{background:#93d95e1f;border-color:#c8ff7c47;box-shadow:inset 0 0 0 1px #c8ff7c1a}.leaderboard-preview-rank{color:#a0df76;font-weight:700}.leaderboard-preview-name{letter-spacing:.08em;text-transform:uppercase;font-size:.9rem}.leaderboard-preview-score{color:#f4f8efbd;font-size:.86rem}.leaderboard-preview-empty{color:#f4f8efb8;margin:0;line-height:1.4}.leaderboard-empty{color:#f4f8efb3;margin:0;line-height:1.5}.leaderboard-list{grid-template-rows:repeat(5,auto);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;gap:7px 10px;display:grid}.leaderboard-row{background:#0a110d85;border:1px solid #9adc6f1f;border-radius:14px;align-items:center;gap:10px;padding:8px 10px;display:flex}.leaderboard-row-empty{border-style:dashed;border-color:#9adc6f29}.leaderboard-row-top{background:linear-gradient(#8fe26b29,#0a110dad);border-color:#c8ff7c3d}.leaderboard-rank{color:#a0df76;min-width:36px;font-size:.95rem;font-weight:700}.leaderboard-details{gap:2px;display:grid}.leaderboard-name{letter-spacing:.08em;text-transform:uppercase;font-size:.92rem}.leaderboard-row-empty .leaderboard-name{color:#f4f8ef94}.leaderboard-meta{color:#f4f8efb8;font-size:.82rem}.nickname-panel{gap:10px;display:grid}.nickname-rank{color:#a0df76;font-weight:700}.nickname-input{color:#f4f8ef;text-align:center;text-transform:uppercase;letter-spacing:.08em;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;width:100%;padding:12px 14px}.nickname-input::placeholder{color:#f4f8ef66}.nickname-hint,.nickname-error{margin:0;font-size:.88rem}.nickname-hint{color:#f4f8efad}.nickname-error{color:#ff9a78}.run-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.run-summary-item{background:#ffffff0d;border:1px solid #ffffff0f;border-radius:14px;gap:3px;padding:10px 12px;display:grid}.run-summary-item strong{color:#9edf74;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.run-summary-item span{font-weight:700}.run-summary-note{color:#f4f8efc7;margin:0;font-size:.88rem;line-height:1.45}.touch-controls{width:var(--board-frame-width);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.touch-control{color:#f4f8ef;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:#ffffff0f;border:1px solid #ffffff14;border-radius:18px;align-content:center;justify-items:center;gap:4px;min-height:68px;padding:14px 16px;display:grid}.touch-control strong{letter-spacing:.08em;font-size:1.15rem}.touch-control-label{color:#9edf74;text-transform:uppercase;letter-spacing:.12em;font-size:.82rem}@media (width<=1180px){.game-stage{--board-frame-width:min(96vw, 760px);--side-rail-width:1fr}.playfield-layout{grid-template-columns:1fr;gap:12px}.side-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}.side-stats .status-pill{min-height:0}}@media (width<=680px){.game-card{border-radius:22px;gap:16px;padding:16px}.game-stage{--board-frame-width:min(96vw, 560px);--side-rail-width:1fr}.playfield-layout{grid-template-columns:1fr;gap:12px}.side-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}.side-stats .status-pill{min-height:0}.leaderboard-header{flex-direction:column;align-items:flex-start}.leaderboard-header-actions{justify-items:start;width:100%}.leaderboard-list{grid-template-rows:none;grid-template-columns:1fr;grid-auto-flow:row}.leaderboard-row{gap:10px}.hero-copy{gap:8px}.hero-copy h1{font-size:clamp(2rem,10vw,3.2rem)}.lede,.instruction-panel p,.leaderboard-status,.verification-note,.beer-status{font-size:.95rem;line-height:1.5}.status-pill{padding:9px 10px}.hud-inline{justify-items:center;gap:8px;display:grid}.beer-status{text-align:center}.canvas-overlay{place-items:start center;padding:12px}.overlay-card{gap:8px;width:min(100%,340px);max-width:100%;max-height:100%;padding:14px 12px}.overlay-card h2{font-size:1.45rem}.overlay-card p{font-size:.92rem;line-height:1.35}.overlay-card .button-row{gap:8px}.primary-button,.secondary-button{padding:10px 12px;font-size:.9rem}.run-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.run-summary-item{gap:2px;padding:8px 10px}.run-summary-item strong{font-size:.64rem}.run-summary-item span{font-size:.92rem}.run-summary-note{font-size:.8rem;line-height:1.35}.touch-control{min-height:76px;padding:14px}}@media (width<=480px){.app-shell{padding:12px 10px 20px}.game-card{border-radius:18px;padding:14px}.game-stage{--board-frame-width:min(98vw, 430px)}.leaderboard-card,.instruction-panel{padding:14px}.touch-controls{gap:10px}.side-stats{grid-template-columns:1fr}.run-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overlay-card{width:min(100%,320px)}.overlay-card .button-row{grid-template-columns:1fr;justify-items:stretch;display:grid}.primary-button,.secondary-button{width:100%}.touch-control strong{font-size:1rem}}
