@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#101116;--panel:#17181f;--line:#282a33;--text:#f3f1f7;--muted:#898995;--lilac:#b6a0ff;--mint:#a8e0c6}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px 'DM Sans',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button{border:0;background:none}button:focus-visible,a:focus-visible{outline:2px solid var(--lilac);outline-offset:5px}button:hover{filter:brightness(1.18)}button:disabled{opacity:.4;cursor:default}[hidden]{display:none!important}.shell{display:flex;min-height:100vh}.sidebar{width:224px;flex-shrink:0;border-right:1px solid var(--line);padding:38px 22px;display:flex;flex-direction:column;position:fixed;height:100vh}.brand{font-family:'Space Grotesk',sans-serif;color:var(--text);text-decoration:none;font-size:39px;font-weight:700;letter-spacing:-2px;display:flex;align-items:center;gap:10px;margin:0 12px 64px}.brand-symbol{font-size:38px;color:var(--lilac);transform:rotate(-35deg)}.brand-dot{color:var(--lilac);margin-left:-10px}.nav-label{font-size:9px;letter-spacing:1.7px;color:#71717f;padding:0 13px;margin-bottom:18px}.nav-item{width:100%;display:flex;gap:13px;align-items:center;text-align:left;padding:14px;border-radius:9px;color:#90909c;font-size:13px;margin-bottom:7px}.nav-item>span{font-size:20px}.nav-item i{font-size:10px;font-style:normal;margin-left:auto;color:#a7a0bf}.nav-item.active{background:#252131;color:#d4c4ff}.sidebar-bottom{margin-top:auto;padding:25px 12px 0}.small-orbit{font-size:33px;color:var(--lilac);margin-bottom:20px}.sidebar-bottom strong{font-family:'Space Grotesk',sans-serif;line-height:1.5;font-size:19px;font-weight:500}.sidebar-bottom p{font-size:11px;line-height:1.9;color:var(--muted)}.local-note{border-top:1px solid var(--line);margin-top:29px;padding-top:21px;font-size:9px;color:#686a78;line-height:1.8}.local-note span{display:inline-block;width:5px;height:5px;background:#8eb7a2;border-radius:50%;margin-right:4px}main{margin-left:224px;padding:0 48px;max-width:1600px;width:calc(100% - 224px)}header{height:91px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.breadcrumb{font-size:10px;letter-spacing:1.7px;color:#9a99a7}.breadcrumb span{margin:0 16px;color:#52515e}.sound{color:#a6a3b1;font-size:17px;display:flex;gap:9px;align-items:center}.sound span{font-size:11px}.intro{display:flex;justify-content:space-between;align-items:center;padding:35px 0 29px}.eyebrow{font-size:9px;letter-spacing:1.7px;color:#a8a2b7}.eyebrow>span{display:inline-block;width:6px;height:6px;background:var(--mint);border-radius:50%;margin-right:7px}h1{font-family:'Space Grotesk',sans-serif;font-size:43px;letter-spacing:-2px;line-height:1.15;margin:12px 0}h1>span{color:var(--lilac)}.intro p{color:var(--muted);font-size:13px;margin:10px 0 0}.session{text-align:right}.session>span{font-size:9px;letter-spacing:1.4px;color:#7b7889}.session strong{display:block;font-family:'Space Grotesk';font-size:28px;font-weight:400;margin-top:10px}.session small{font:11px 'DM Sans';color:#7e7c8b;margin-left:7px}.toolbar{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:19px 0 22px}.filters{display:flex;align-items:center;gap:5px}.filter-label{color:#6d6b7b;font-size:9px;letter-spacing:1.2px;margin-right:13px}.filters button{padding:8px 12px;font-size:11px;color:#9995a5;border-radius:6px}.filters button.selected{background:#2c263b;color:#d1bfff}.level-dot{width:5px;height:5px;display:inline-block;border-radius:50%;margin-right:7px}.easy{background:#a8e0c6}.medium{background:#e3c07f}.hard{background:#e994a9}.shuffle{display:flex;align-items:center;gap:8px;color:#bdb7cc;font-size:22px}.shuffle span{font-size:11px}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 268px;gap:28px}.game-frame{position:relative;border:1px solid #383147;border-radius:14px;overflow:hidden;aspect-ratio:1.19;background:#19182a;isolation:isolate;touch-action:none}canvas{width:100%;height:100%;display:block}.game-top{position:absolute;top:22px;left:22px;right:22px;display:flex;justify-content:space-between;pointer-events:none}.live-badge{font-size:8px;letter-spacing:1.3px;display:flex;align-items:center;gap:6px;border:1px solid #ffffff20;background:#14122270;padding:7px 9px;border-radius:5px}.live-badge span{height:4px;width:4px;border-radius:50%;background:var(--mint)}.game-number{font-size:10px;letter-spacing:2px;color:#a49caf}.start-overlay,.result-overlay,.pause-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:40px 24px;background:radial-gradient(ellipse at 50% 45%,#17152b9c,#15132615)}.game-kicker{font-size:9px;letter-spacing:2.4px;color:#b8aad2}h2{font-family:'Space Grotesk',sans-serif}.start-overlay h2,.result-overlay h2,.pause-overlay h2{font-size:clamp(30px,3.6vw,52px);line-height:1.06;letter-spacing:-2px;margin:15px 0 15px}.start-overlay p,.result-overlay p{font-size:12px;color:#b6adc9;line-height:1.7;margin:0 0 27px}.play-button{background:#c2a9ff;color:#221830;border-radius:8px;padding:14px 27px;font-weight:650;box-shadow:0 4px 28px #a174fa20;font-size:12px}.play-button>span{font-size:10px;margin-right:7px}.controls-hint{font-size:10px;color:#a59bb7;margin-top:18px}.controls-hint span{display:block;color:#746c87;font-size:9px;margin-top:6px}.arena-footer{position:absolute;bottom:18px;left:22px;right:22px;display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#9186a7;pointer-events:none}.arena-footer button{pointer-events:auto;border:1px solid #75658c;background:#1b153a80;border-radius:5px;padding:6px 11px;color:white}.arena-coordinates{font-size:8px;letter-spacing:1px}.hud{position:absolute;top:65px;left:22px;right:22px;display:flex;align-items:center;justify-content:space-between;background:#121021a8;border:1px solid #ffffff13;padding:10px 14px;border-radius:7px;pointer-events:none}.hud #health{color:#f1abc8;letter-spacing:4px}.hud #timer{font-family:'Space Grotesk';font-size:19px}.hud #score{color:#d0c5ec;font-size:12px}.result-overlay,.pause-overlay{background:#141122d9;backdrop-filter:blur(5px)}.result-symbol{font-size:48px;color:#d1b9ff;margin-bottom:18px}.result-buttons{display:flex;gap:10px}.next-button{border:1px solid #79668f;padding:12px 18px;border-radius:8px;font-size:12px}.game-meta{display:flex;justify-content:space-between;padding:21px 0 20px;gap:10px}.title-row{display:flex;align-items:center;gap:12px}.title-row h2{font-size:21px;margin:0;font-weight:500;letter-spacing:-.5px}.difficulty-badge{font-size:8px;letter-spacing:.7px;padding:4px 7px;border:1px solid #a8e0c630;color:var(--mint);border-radius:4px}.game-meta p{color:var(--muted);font-size:12px;margin:9px 0 14px}.tags{display:flex;gap:13px;font-size:8px;letter-spacing:1px;color:#787482}.tags span+span:before{content:'·';margin-right:13px;color:#625d6d}.save-button{align-self:flex-start;font-size:25px;padding:4px 7px;color:#aaa0bc}.save-button.saved{color:#c6a5ff}.next-strip{border-top:1px solid var(--line);padding:17px 0;display:flex;align-items:center;justify-content:space-between;color:#7e788d;font-size:10px;gap:12px}.next-strip button{color:#d2c0f8;font-size:11px;white-space:nowrap}.next-strip button span{margin-left:15px}.queue-heading{display:flex;justify-content:space-between;align-items:center;margin:3px 0 18px}.queue-heading h2{font-size:14px;font-weight:500;margin:0}.queue-heading>span{font-size:8px;letter-spacing:1.2px;color:#77717f}.game-card{width:100%;border:1px solid var(--line);border-radius:10px;padding:9px;text-align:left;display:flex;align-items:center;gap:12px;margin-bottom:12px;background:#16171d;transition:transform .2s,border-color .2s}.game-card:hover{transform:translateY(-2px);border-color:#8b70b4}.game-card.current{border-color:#76628d;background:#201c2b}.card-art{width:69px;height:76px;flex-shrink:0;border-radius:6px;position:relative;overflow:hidden;display:grid;place-items:center}.card-art.space{background:radial-gradient(ellipse at 40% 40%,#6b4581,#26223e 80%)}.card-art.asteroid{background:radial-gradient(ellipse at 40% 40%,#416a73,#182c37 80%)}.card-art.orbit{background:radial-gradient(ellipse at 40% 40%,#826044,#322332 80%)}.art-orbit{border:1px solid #cfb7ff60;width:47px;height:47px;border-radius:50%;transform:rotate(-35deg) scaleY(.6);position:absolute}.art-orbit:after{content:'';position:absolute;top:3px;left:4px;width:7px;height:7px;background:#c2b6ed;border-radius:50%;box-shadow:26px 25px #c7a6ff}.art-star{font-size:28px;color:#d2b5ff;filter:drop-shadow(0 0 8px #a778dd)}.asteroid .art-star{color:#a7e6d7;transform:rotate(-25deg)}.orbit .art-star{color:#f8d29a}.card-copy{flex:1;min-width:0}.card-copy strong{display:block;font-size:12px;font-weight:550;margin-bottom:6px}.card-copy p{color:#8c8299;font-size:10px;margin:0 0 9px}.card-copy small{font-size:8px;letter-spacing:.6px;color:#a9dbc7}.card-arrow{color:#9983b8;padding:3px}.pace-note{border:1px solid var(--line);border-radius:9px;padding:18px 14px;display:flex;gap:12px;margin-top:24px}.pace-note>span{font-size:25px;color:var(--lilac)}.pace-note strong{font-size:11px;font-weight:500}.pace-note p{font-size:10px;line-height:1.9;color:#7d7788;margin:7px 0 0}.keyboard-note{display:flex;align-items:center;gap:12px;justify-content:center;margin-top:25px;font-size:9px;color:#706a7b;line-height:1.8}kbd{border:1px solid #38323f;border-bottom-width:3px;border-radius:5px;padding:4px 9px;font-size:16px;color:#9a8bab}footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:23px 0;margin-top:22px;font-size:8px;letter-spacing:1.2px;color:#66616f}footer>span:last-child{letter-spacing:0}.footer-star{margin-left:10px;color:var(--lilac)}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#342944;color:#e8dbff;padding:12px 20px;border:1px solid #7c629b;border-radius:9px;opacity:0;transition:.2s;pointer-events:none;z-index:20;font-size:12px}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:1500px){main{padding:0 65px}.play-layout{grid-template-columns:minmax(0,1fr) 300px;gap:35px}.game-frame{max-height:640px}}@media(max-width:1150px){.sidebar{width:180px;padding:32px 14px}main{margin-left:180px;width:calc(100% - 180px);padding:0 28px}.play-layout{grid-template-columns:minmax(0,1fr) 225px;gap:20px}.card-art{width:53px;height:65px}.card-copy strong{font-size:11px}.game-frame{aspect-ratio:1}.arena-coordinates{display:none}.filter-label{display:none}.session{display:none}}@media(max-width:850px){.sidebar{width:77px;padding:25px 10px}.brand{font-size:0;margin:0 7px 42px;gap:0}.brand-symbol{font-size:37px}.brand-dot,.nav-label,.sidebar-bottom,.nav-item i{display:none}.nav-item{font-size:0;justify-content:center;padding:12px}.nav-item>span{font-size:22px}main{margin-left:77px;width:calc(100% - 77px);padding:0 24px}.play-layout{grid-template-columns:minmax(0,1fr)}.queue{display:none}.game-frame{aspect-ratio:1.25;max-height:580px}.intro{padding-top:28px}h1{font-size:38px}.start-overlay h2{font-size:46px}.arena-coordinates{display:block}}@media(max-width:520px){.sidebar{display:none}main{margin:0;width:100%;padding:0 18px}header{height:63px}.breadcrumb{font-size:8px;letter-spacing:1px}.breadcrumb span{margin:0 9px}.sound span{display:none}.intro{padding:25px 0 22px}h1{font-size:35px;letter-spacing:-1.6px}.intro p{font-size:11px}.eyebrow{font-size:8px}.toolbar{padding:13px 0 16px}.filters{gap:0}.filters button{font-size:10px;padding:8px 9px}.shuffle span{display:none}.game-frame{aspect-ratio:.78;max-height:620px}.start-overlay h2{font-size:45px}.game-top{top:17px;left:17px;right:17px}.arena-footer{left:15px;right:15px;font-size:8px}.arena-coordinates{display:none}.game-meta{padding:18px 0}.title-row h2{font-size:20px}.game-meta p{font-size:11px}.next-strip>span{font-size:9px;max-width:180px;line-height:1.6}footer{margin-top:8px;padding:19px 0;font-size:7px;letter-spacing:.6px}footer>span:last-child{display:none}.controls-hint{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
