:root{color-scheme:dark;--night:#05080b;--panel:#0a1115;--cyan:#67efff;--coral:#ff9a73;--amber:#ffc968;--mint:#70f0b2;--lav:#c5b7ff;--copper:#ad704d;--text:#f6f0e7;font-family:Avenir Next,Avenir,Inter,system-ui,sans-serif;background:var(--night)}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0}body{overflow:hidden;background:#020304;color:var(--text);overscroll-behavior:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}button{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #fff;outline-offset:3px}.shell{position:relative;width:100%;height:100%;overflow:hidden;background:radial-gradient(circle at 50% 15%,#152a32 0,#071014 38%,#020405)}.lounge-art{position:absolute;inset:0;background:linear-gradient(180deg,#02050833,#02050875),url(./five-after-midnight-arcade.webp) center/cover no-repeat;opacity:.72;filter:saturate(.88)}.hub,.play-screen{position:relative;z-index:1;width:min(100%,580px);height:100%;min-height:600px;margin:auto;padding:max(18px,env(safe-area-inset-top)) 16px max(12px,env(safe-area-inset-bottom));overflow:auto;scrollbar-width:none}.hub::-webkit-scrollbar{display:none}.hub:before,.play-screen:before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,#02050729,#020507d6 58%,#020507f7);pointer-events:none}.brand-block{padding:4vh 7px 18px;text-align:center;text-shadow:0 3px 18px #000}.brand-block>span,.eyebrow{color:var(--amber);font-size:9px;font-weight:800;letter-spacing:.28em;text-transform:uppercase}.brand-block h1{margin:8px 0 9px;font-family:Arial Narrow,Avenir Next Condensed,sans-serif;font-size:clamp(46px,13vw,76px);font-weight:900;line-height:.77;letter-spacing:-.055em}.brand-block h1 i{color:var(--cyan);font-style:normal;text-shadow:0 0 22px rgba(103,239,255,.55)}.brand-block p{max-width:340px;margin:14px auto 0;color:#c4bdba;font-size:12px;line-height:1.4}.profile-strip{display:grid;grid-template-columns:1fr 1fr 48px;gap:7px;margin-bottom:10px}.profile-strip>div,.score-strip>div{padding:9px;border:1px solid rgba(255,255,255,.11);border-radius:8px;background:#04090cd4;text-align:center;box-shadow:inset 0 0 18px #67efff08}.profile-strip span,.score-strip span{display:block;color:#827d7c;font-size:7px;font-weight:800;letter-spacing:.14em}.profile-strip strong,.score-strip strong{display:block;margin-top:2px;color:var(--amber);font-family:monospace;font-size:16px}.profile-strip button,.play-header button{min-width:48px;min-height:48px;border:1px solid rgba(255,201,104,.4);border-radius:10px;background:#070c0fe0;color:var(--amber);font-size:18px}.game-grid{display:grid;gap:8px}.game-card{position:relative;display:grid;grid-template-columns:36px 48px 1fr auto;align-items:center;gap:8px;min-height:79px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--accent) 42%,transparent);border-radius:13px;background:linear-gradient(105deg,#050b0ef0,#091115c2);box-shadow:inset 3px 0 var(--accent),0 10px 26px #0003;text-align:left;overflow:hidden}.game-card:after{content:"";position:absolute;right:-20px;top:-30px;width:120px;height:120px;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 15%,transparent),transparent 68%);pointer-events:none}.game-card:active{transform:translateY(1px);filter:brightness(1.18)}.game-number{color:#686466;font-family:monospace;font-size:10px}.game-card i{display:grid;place-items:center;width:44px;height:44px;border:1px solid color-mix(in srgb,var(--accent) 62%,transparent);border-radius:50%;color:var(--accent);font-size:24px;font-style:normal;text-shadow:0 0 12px var(--accent)}.game-card strong{display:block;color:#fff;font-size:17px}.game-card small{display:block;margin-top:3px;color:#aaa3a3;font-size:9px;line-height:1.25}.game-card b{position:relative;z-index:1;color:var(--accent);font-family:monospace;font-size:11px}.tonight-card{margin-top:10px;padding:13px 14px;border:1px solid rgba(255,201,104,.27);border-radius:12px;background:#05090cd1}.tonight-card>span{color:var(--amber);font-size:8px;font-weight:800;letter-spacing:.19em}.tonight-card strong{display:block;margin:5px 0 8px;font-size:14px}.tonight-card small{display:block;margin-top:8px;color:#817b7b;font-size:8px;line-height:1.35}.meter{height:4px;background:#ffffff1a}.meter i{display:block;width:0;height:100%;background:var(--cyan);box-shadow:0 0 9px var(--cyan);transition:width .4s ease}.play-screen{display:grid;grid-template-rows:auto auto 1fr auto;overflow:hidden;padding-inline:10px;background:linear-gradient(180deg,#020507d6,#020507f7)}.play-screen[hidden],.hub[hidden]{display:none}.play-header{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:8px;padding:0 4px 6px}.play-header div{text-align:center}.play-header span{color:var(--cyan);font-size:7px;font-weight:800;letter-spacing:.18em}.play-header h2{margin:2px 0 0;font-family:Arial Narrow,Avenir Next Condensed,sans-serif;font-size:26px;line-height:1}.score-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:0 4px 7px}.score-strip>div{padding:5px}.score-strip strong{font-size:14px}.stage-wrap{position:relative;align-self:stretch;min-height:0;overflow:hidden;border:1px solid rgba(103,239,255,.24);border-radius:14px;background:#05080c;box-shadow:inset 0 0 40px #67efff09,0 14px 40px #00000059}#game-canvas{display:block;width:100%;height:100%;min-height:0;touch-action:none}.start-panel,.game-over,.pause-card{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;background:radial-gradient(circle at 50% 40%,#10272fd1,#020608f2 68%);text-align:center}.start-panel[hidden],.game-over[hidden],.pause-card[hidden]{display:none}.start-panel>span{display:grid;place-items:center;width:82px;height:82px;border:1px solid var(--cyan);border-radius:50%;color:var(--cyan);font-size:44px;text-shadow:0 0 20px var(--cyan);box-shadow:0 0 30px #67efff1f,inset 0 0 25px #67efff14}.start-panel h3{margin:17px 0 6px;font-family:Arial Narrow,Avenir Next Condensed,sans-serif;font-size:32px}.start-panel p,.game-over p{max-width:290px;margin:0 0 19px;color:#b7b0ad;font-size:12px;line-height:1.45}.start-panel button,.game-over button,.pause-card button{min-width:210px;min-height:54px;padding:12px 22px;border:1px solid #fff;border-radius:999px;background:linear-gradient(180deg,#8bffff,#24d9ee 52%,#0b95aa);color:#061116;font-weight:900;letter-spacing:.08em}.start-panel small{margin-top:12px;color:#827b7a;font-size:9px}.game-over>span{color:var(--cyan);font-size:10px;font-weight:800;letter-spacing:.2em}.game-over>strong{margin:9px 0;color:var(--amber);font-family:monospace;font-size:50px}.game-over button.ghost,.pause-card button.ghost{margin-top:8px;border-color:#ffffff2e;background:#04080ab3;color:#aaa}.pause-card>strong{margin-bottom:22px;font-size:34px;letter-spacing:.1em}.touch-controls{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:7px;padding:8px 3px 1px}.touch-controls button{min-height:52px;border:1px solid rgba(103,239,255,.34);border-radius:10px;background:linear-gradient(180deg,#14282ff2,#070f13fa);color:var(--cyan);font-weight:900;letter-spacing:.05em;box-shadow:inset 0 1px #ffffff12}.touch-controls button:active,.touch-controls button.active{background:var(--cyan);color:#071115}.modal{width:min(92vw,500px);max-height:86vh;padding:23px;border:1px solid rgba(103,239,255,.4);border-radius:15px;background:linear-gradient(155deg,#152228,#070b0e 70%);color:#fff;box-shadow:0 30px 90px #000}.modal::backdrop{background:#000000c7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal h2{margin:6px 0 18px;font-family:Arial Narrow,Avenir Next Condensed,sans-serif;font-size:32px}.modal h3{margin:22px 0 6px;color:var(--cyan);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.modal p{color:#9c9696;font-size:11px;line-height:1.5}.modal-close{float:right;width:44px;height:44px;border:1px solid rgba(255,255,255,.17);border-radius:50%;background:transparent;font-size:24px}.setting-row,.record{display:flex;align-items:center;justify-content:space-between;min-height:45px;border-bottom:1px solid rgba(255,255,255,.1);color:#c8c1bd;font-size:12px}.setting-row button{min-width:64px;min-height:38px;border:1px solid var(--cyan);background:#67efff12;color:var(--cyan)}.record strong{color:var(--amber);font-family:monospace}@media(min-width:850px)and (min-aspect-ratio:1/1){.shell{display:grid;place-items:center;padding:20px}.lounge-art{opacity:.88}.hub{width:min(91vw,1050px);height:min(92vh,820px);display:grid;grid-template-columns:.82fr 1.18fr;grid-template-rows:auto auto auto;align-content:center;gap:14px;padding:28px;border:1px solid rgba(255,201,104,.28);border-radius:22px;background:#03080ab8;box-shadow:0 30px 90px #000}.hub:before,.play-screen:before{display:none}.brand-block{grid-row:1/4;display:flex;flex-direction:column;justify-content:center;padding:20px;text-align:left}.brand-block h1{font-size:82px}.brand-block p{margin-left:0}.profile-strip{grid-column:2;margin:0}.game-grid{grid-column:2;grid-template-columns:1fr 1fr}.game-card:last-child{grid-column:1/-1}.tonight-card{grid-column:2;margin:0}.play-screen{width:min(82vw,720px);height:min(94vh,900px);border:1px solid rgba(103,239,255,.28);border-radius:20px;box-shadow:0 30px 90px #000}}@media(max-height:690px){.brand-block{padding-top:6px}.brand-block h1{font-size:43px}.brand-block p{display:none}.game-card{min-height:67px}.game-card i{width:38px;height:38px}.tonight-card small{display:none}.play-header h2{font-size:21px}.touch-controls button{min-height:46px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
