:root{color:#e8eef8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#05070d;font-family:Inter,Segoe UI,system-ui,sans-serif;line-height:1.45}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;min-height:100%}html{height:100dvh;overflow:hidden}body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent;min-height:100dvh;margin:0;overflow:hidden}#root{min-height:100dvh}button,.mode-body,.mode-card,.mode-play,.quick-play,.ghost{touch-action:manipulation}.hub{background:#05070d;flex-direction:column;height:100dvh;min-height:100dvh;display:flex;position:relative;overflow:hidden}.hub-backdrop{pointer-events:none;position:absolute;inset:0}.hub-menu .orbit-backdrop-home{opacity:.82}.menu,.play,.home{min-height:0;margin:0}.home{z-index:1;background:0 0;flex:1;position:relative;overflow:hidden}.home-backdrop{pointer-events:none;position:absolute;inset:0}.orbit-backdrop-home{opacity:.92;place-items:center;display:grid;position:absolute;inset:0}.orbit-backdrop-svg image{clip-path:circle(50%);outline:none;overflow:hidden}.orbit-backdrop-svg image.orbit-backdrop-uncut{clip-path:none}.home-content{z-index:1;height:100%;min-height:100%;position:relative}.home-logo-wrap{pointer-events:none;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.home-logo{filter:drop-shadow(0 18px 52px #0009)drop-shadow(0 0 42px #7aa2ff88)drop-shadow(0 0 90px #4a78ff66);border-radius:50%;width:min(480px,90vw);height:auto;animation:6.5s ease-in-out infinite logo-glow;display:block}.home-actions{text-align:center;flex-direction:column;align-items:center;gap:16px;width:min(520px,100% - 40px);display:flex;position:absolute;top:calc(50% + min(240px,45vw) + 12px);left:50%;transform:translate(-50%)}.home-tagline{letter-spacing:.04em;color:#d4def4;text-shadow:0 2px 14px #000a;max-width:26rem;margin:0;font-size:1.08rem;line-height:1.5}.home-play{letter-spacing:.16em;border-radius:16px;min-width:12rem;margin-top:4px;padding:18px 40px;font-size:1.32rem;transition:transform .18s,box-shadow .18s,filter .18s,background .18s;animation:3.4s ease-in-out infinite play-idle;box-shadow:0 14px 36px #06142888,0 0 22px #4a78ff55}.home-play:hover{background:linear-gradient(#4a78d4,#2a4a98);animation:1.3s ease-in-out infinite play-hover;transform:translateY(-3px)scale(1.05);box-shadow:0 20px 44px #061428aa,0 0 48px #7aa2ffbb}.home-credit{color:#8ea0bc;text-shadow:0 2px 10px #000a;margin:0;font-size:.82rem}.home-credit span{color:#c2d0ea;font-weight:600}.menu{z-index:1;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:0 0;flex:1;place-items:center;padding:36px 20px 56px;display:grid;position:relative;overflow:auto}.menu-backdrop{pointer-events:none;position:absolute;inset:0}.menu-glow{background:radial-gradient(640px 420px at 50% 48%,#ffcc4d12 0%,#0000 62%),radial-gradient(900px 640px at 50% 100%,#05070d55 0%,#0000 70%);position:absolute;inset:0}.space-scene{--px:0px;--py:0px;pointer-events:none;position:absolute;inset:0;overflow:hidden}.space-scene-orbit{transform:translate(calc(var(--px) * .4), calc(var(--py) * .4));will-change:transform;position:absolute;inset:-6%}.orbit-backdrop{place-items:center;display:grid;position:absolute;inset:0}.orbit-backdrop-menu{opacity:.58}.orbit-backdrop-menu .orbit-backdrop-svg{width:min(132vw,980px);height:min(132vw,980px)}.orbit-backdrop-ring{stroke:#7aa2ff;stroke-opacity:.16;stroke-width:1px}.orbit-backdrop-sun{filter:drop-shadow(0 0 22px #ffcc4d99);animation:8s ease-in-out infinite sun-pulse}.orbit-backdrop-menu .orbit-backdrop-sun{filter:drop-shadow(0 0 28px #ffcc4db3)}.orbit-backdrop-moon{opacity:.88}.orbit-backdrop-drift{opacity:.55}.menu-hud{z-index:1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(#0c142888 0%,#070d1880 100%);border:1px solid #8eb4ff3d;border-radius:28px;width:min(960px,100%);padding:28px 28px 24px;animation:.56s menu-enter;position:relative;box-shadow:0 30px 80px #0005,0 0 0 1px #7aa2ff14,inset 0 1px #ffffff18}.menu-hud-sub{width:min(640px,100%)}.menu-brand{text-align:center;margin-bottom:20px}.menu-mission{letter-spacing:.04em;color:#eef3ff;margin:0;font-size:clamp(1.35rem,3.4vw,1.85rem);font-weight:650}.menu-logo-btn{cursor:pointer;background:0 0;border:0;border-radius:50%;margin:0 auto 16px;padding:0;display:block}.menu-logo-btn:hover .menu-logo,.menu-logo-btn:focus-visible .menu-logo{filter:drop-shadow(0 8px 24px #0006)drop-shadow(0 0 32px #7aa2ff88)}.menu-logo{filter:drop-shadow(0 8px 24px #0006)drop-shadow(0 0 28px #4a78ff44);border-radius:50%;width:min(88px,28vw);height:auto;margin:0 auto;display:block}.menu-logo-small{width:88px;margin-bottom:4px}.menu-sub-nav{justify-content:space-between;gap:12px;display:flex}.menu-brand .menu-sub-nav{justify-content:flex-start;margin-bottom:8px}.menu-home{padding:8px 14px;font-size:.88rem}.menu-brand h1{margin-bottom:10px}.menu-brand .lede{color:#b0bdd4;max-width:28rem;margin:0 auto;font-size:1rem;line-height:1.55}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:#8eb4ff;margin:0 0 8px;font-size:.68rem}h1{letter-spacing:.1em;background:linear-gradient(120deg,#f4f7ff 0%,#9eb8ff 42%,#c9a6ff 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 16px;font-size:clamp(2.6rem,9vw,4.4rem);font-weight:700}.lede{color:#9aa8c2;max-width:34rem;margin:0 0 36px;font-size:1.1rem}.menu-play{gap:16px;margin-bottom:22px;display:grid}.mode-bodies{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:12px 18px;padding:8px 0 4px;display:grid}.mode-body-wrap{justify-items:center;gap:10px;display:grid}.mode-body{width:100%;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:18px;justify-items:center;gap:12px;padding:8px 6px 4px;display:grid}.mode-body-art{object-fit:contain;filter:drop-shadow(0 14px 28px #0009)drop-shadow(0 0 6px #5ad0ffee)drop-shadow(0 0 16px #2f8cffcc)drop-shadow(0 0 34px #1858ff88);width:min(132px,22vw);height:min(132px,22vw);animation:6s ease-in-out infinite mode-body-float;display:block}.mode-body-planets .mode-body-art{animation-duration:5.4s}.mode-body-moons .mode-body-art{animation-duration:6.4s;animation-delay:-1.6s}.mode-body-celestial .mode-body-art{animation-duration:7s;animation-delay:-2.8s}.mode-body-spacecraft .mode-body-art{filter:drop-shadow(0 14px 28px #0009);animation-duration:5.8s;animation-delay:-.8s}.mode-body:hover .mode-body-art,.mode-body:focus-visible .mode-body-art{filter:drop-shadow(0 18px 32px #000a)drop-shadow(0 0 8px #7ae0ffee)drop-shadow(0 0 22px #4aa0ffcc)drop-shadow(0 0 40px #2a68ff99);animation:none;transform:translateY(-8px)scale(1.08)}.mode-body-spacecraft:hover .mode-body-art,.mode-body-spacecraft:focus-visible .mode-body-art{filter:drop-shadow(0 18px 32px #000a)drop-shadow(0 0 22px #7aa2ff99)}.mode-body-copy{text-align:center;gap:2px;display:grid}.mode-body-label{letter-spacing:.08em;text-transform:uppercase;font-size:.98rem;font-weight:650}.mode-body-desc{color:#a8b8d4;font-size:.8rem}.mode-body-best{letter-spacing:.14em;text-transform:uppercase;color:#8eb4ff;margin-top:2px;font-size:.68rem}@media (width<=900px){.mode-bodies{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mode-body-art{width:min(148px,36vw);height:min(148px,36vw)}}@media (width<=760px){.mode-bodies{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.menu-soon-cards,.progress-modes{grid-template-columns:1fr}}.quick-play{color:#eef3ff;background:linear-gradient(#3c66c0 0%,#1e3c78 100%);border:1px solid #8eb4ff;border-radius:16px;justify-items:center;gap:4px;width:100%;padding:18px 18px 16px;transition:transform .16s,box-shadow .16s,border-color .16s;display:grid;box-shadow:0 14px 36px #06142888,0 0 28px #4a78ff44}.quick-play:hover{border-color:#c4d8ff;transform:translateY(-4px);box-shadow:0 18px 40px #061428aa,0 0 36px #7aa2ff66}.quick-play:active{transform:translateY(-1px)}.quick-play-label{letter-spacing:.14em;text-transform:uppercase;font-size:1.12rem;font-weight:700}.quick-play-desc{color:#c8d8f8;letter-spacing:.02em;font-size:.84rem}.mode-card-wrap{gap:8px;display:grid}.mode-hard-toggle{color:#8ea0bc;cursor:pointer;align-items:center;gap:8px;padding:0 4px;font-size:.84rem;display:flex}.mode-hard-toggle input{accent-color:#7aa2ff}.menu-sub-header{gap:8px;display:grid}.menu-back{justify-self:start;padding:8px 14px;font-size:.88rem}.menu-sub-title{letter-spacing:.08em;text-transform:uppercase;color:#eef3ff;margin:0;font-size:1.35rem}.menu-sub-lede{color:#a8b8d4;margin:0;font-size:.92rem}.menu-sub-play{gap:16px;display:grid}.menu-sub-section{gap:10px;display:grid}.menu-sub-heading{letter-spacing:.14em;text-transform:uppercase;color:#7d8faa;margin:0;font-size:.72rem}.mode-planet-chips{flex-wrap:wrap;gap:8px;display:flex}.mode-planet-chip{color:#a8b8d4;font:inherit;cursor:pointer;background:#152848;border:1px solid #3d5288;border-radius:999px;padding:10px 14px;font-size:.88rem;transition:border-color .14s,background .14s,color .14s}.mode-planet-chip:hover{color:#eef3ff;border-color:#6d8fd8}.mode-planet-chip-on{color:#eef3ff;background:linear-gradient(135deg,#254680 0%,#1a3560 100%);border-color:#8eb4ff}.menu-sub-play-btn{width:100%}.menu-sub-play-btn:disabled{opacity:.45;cursor:not-allowed}.mode-option-toggle{color:#8ea0bc;width:100%;font:inherit;text-align:left;cursor:pointer;background:#121f38;border:1px solid #3d5288;border-radius:14px;padding:12px 16px;font-size:.88rem;transition:border-color .14s,background .14s,color .14s}.mode-option-toggle:hover{color:#eef3ff;border-color:#6d8fd8}.mode-option-toggle-on{color:#eef3ff;background:linear-gradient(135deg,#1e3566 0%,#152848 100%);border-color:#7aa2ff}.mode-card:disabled:not(.mode-card-locked){opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.mode-card:disabled:not(.mode-card-locked):hover{box-shadow:none;border-color:#4a6ab8;transform:none}.mode-card,.mode-play,.mode-soon,.mode-body,.quick-play,.ghost{font:inherit;cursor:pointer;border-radius:14px}.mode-card{color:#eef3ff;text-align:left;background:linear-gradient(135deg,#243e74 0%,#152848 100%);border:1px solid #5b7fd0;align-items:center;gap:12px;width:100%;padding:14px 16px;transition:border-color .16s,transform .16s,box-shadow .16s;display:flex;box-shadow:0 12px 28px #0005}.mode-card:hover{border-color:#a8c6ff;transform:translateY(-4px);box-shadow:0 16px 34px #0006,0 0 22px #4a78ff55}.mode-card:active{transform:translateY(-1px)}.mode-card-icon{text-align:center;flex:0 0 1.7rem;font-size:1.35rem;line-height:1}.mode-card-copy{flex:1;gap:2px;min-width:0;display:grid}.mode-card-mission{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(165deg,#243e74aa 0%,#15284888 100%);flex-direction:column;align-items:flex-start;min-height:168px;padding:20px 18px 16px}.mode-card-mission .mode-card-icon{flex:none;width:auto;font-size:1.85rem}.mode-card-planets{background:linear-gradient(165deg,#2b508fcc 0%,#16305699 100%);border-color:#7aa2ff99}.mode-card-moons{background:linear-gradient(165deg,#3b4c78cc 0%,#1c274099 100%);border-color:#b7c6e099}.mode-card-celestial{background:linear-gradient(165deg,#3c3a88cc 0%,#241a4899 100%);border-color:#9b8cff99}.mode-card-label{letter-spacing:.06em;text-transform:uppercase;font-size:1.02rem;font-weight:650}.mode-card-desc{color:#a8b8d4;letter-spacing:.01em;text-transform:none;font-size:.86rem}.mode-card-best{letter-spacing:.14em;text-transform:uppercase;color:#8eb4ff;margin-top:2px;font-size:.7rem}.mode-card-arrow{color:#8eb4ff;opacity:.75;font-size:1.05rem}.mode-card-locked,.mode-card-locked:hover{cursor:not-allowed;color:#8a95aa;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#161e30aa 0%,#10162488 100%);border-color:#3d4c6888;transform:none;box-shadow:0 8px 20px #0003}.mode-card-locked .mode-card-desc{color:#6d7b94}.mode-card-locked .mode-card-label{color:#9aa8c2}.menu-soon{margin-bottom:18px;padding-top:6px}.menu-soon-heading{letter-spacing:.18em;text-transform:uppercase;color:#6d7b94;margin:0 0 10px;font-size:.68rem}.menu-soon-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.menu-progress{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a101e55;border:1px solid #4a6ab844;border-radius:16px;padding:16px 18px 14px}.menu-progress-heading{letter-spacing:.18em;text-transform:uppercase;color:#8eb4ff;margin:0 0 8px;font-size:.68rem}.menu-rank{letter-spacing:.08em;text-transform:uppercase;color:#e8eef8;margin:0 0 8px;font-size:.92rem;font-weight:650}.xp-track{background:#121a2e;border:1px solid #3d5a99;border-radius:99px;height:8px;overflow:hidden}.xp-fill{border-radius:inherit;background:linear-gradient(90deg,#4a78ff,#c4d8ff);height:100%;display:block;box-shadow:0 0 12px #7aa2ff88}.xp-meta{letter-spacing:.04em;color:#8ea0bc;margin:6px 0 10px;font-size:.75rem}.progress-modes{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.progress-modes li{color:#c8d4ea;align-items:center;gap:8px;font-size:.86rem;display:flex}.modes{gap:10px;width:min(420px,100%);display:grid}.mode-play{color:#e8eef8;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(#2a4a88,#1a2f5c);border:1px solid #7aa2ff;padding:14px 18px;font-size:1.05rem}.mode-play:hover{background:linear-gradient(#3558a0,#21407a)}.mode-play.home-play:hover{background:linear-gradient(#4a78d4,#2a4a98)}.mode-soon{color:#6d7b94;background:#101726;border:1px solid #243049;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.mode-soon span{letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.play{overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#05070d;height:100dvh;position:relative;overflow:hidden}.starfield{pointer-events:none;background:radial-gradient(1200px 700px at 50% -10%,#24386866 0%,#0000 55%);position:absolute;inset:0;overflow:hidden}.starfield:before{content:"";filter:drop-shadow(0 0 1.8px #fffe)drop-shadow(0 0 4px #9ec8ff88);background:#fff;border-radius:50%;width:2.5px;height:2.5px;position:absolute;top:0;left:0;box-shadow:32.82vw 28.42vh 1.2px .55px #b7d6ff,1.86vw 104.05vh 1.2px .55px #e4eeff,4.94vw 31.51vh 0 .25px #cfe4ff,16.24vw 1.97vh 1.2px .55px #f8fbff,34.46vw 65.13vh 0 .7px #fff,59.76vw 22.67vh 0 .25px #cfe4ff,97.87vw 45.73vh 0 .25px #fff,89.43vw 91.36vh 0 .7px #b7d6ff,85.87vw 75.73vh 1.2px .55px #fff,54.95vw 54.86vh 2.2px .85px #ffe6c4,92.05vw 11.18vh 1.2px .55px #fff,36.14vw 12.68vh 0 .25px #b7d6ff,103.44vw 101.29vh 0 .25px #b7d6ff,57.61vw 79.44vh 0 .7px #fff,55.21vw 61.07vh 1.2px .55px #fff,64.6vw 66.17vh 0 .7px #cfe4ff,83.38vw 87.56vh 4px 1.35px #f8fbff,23.92vw -1.32vh 0 .25px #fff,18.17vw 17.31vh 2.2px .85px #e4eeff,14.73vw 34.64vh 0 .7px #cfe4ff,85.89vw 8.06vh 0 .7px #ffe6c4,52.26vw 53.84vh 0 .7px #b7d6ff,94.08vw 58.64vh 0 .25px #cfe4ff,24.24vw 68.54vh 0 .7px #ffe6c4,45.66vw 81vh 4px 1.35px #e4eeff,66.24vw 17.63vh 0 .25px #b7d6ff,77.14vw 23.72vh 2.2px .85px #b7d6ff,80.16vw 61.46vh 0 .7px #cfe4ff,20.37vw 64.99vh 0 .25px #fff,48.18vw 82.25vh 0 .7px #cfe4ff,10.84vw 37.53vh 1.2px .55px #cfe4ff,96.91vw 57.81vh 0 .25px #e4eeff,9.67vw 51.2vh 0 .7px #fff,26.82vw 30.98vh 0 .25px #cfe4ff,21.49vw 22.36vh 0 .7px #fff,29.41vw 65.73vh 0 .7px #cfe4ff,14.55vw 2.25vh 1.2px .55px #ffe6c4,2.86vw 57.25vh 0 .7px #b7d6ff,71.27vw 71.55vh 0 .25px #f8fbff,70.36vw 62.44vh 0 .25px #b7d6ff,18.69vw 43.62vh 0 .25px #fff,49.71vw 80.68vh 1.2px .55px #ffe6c4,18.8vw 40.04vh 0 .25px #b7d6ff,57.44vw 95.27vh 0 .25px #f8fbff,39.05vw 75.16vh 2.2px .85px #b7d6ff,60.79vw 45.96vh 0 .7px #b7d6ff,99.51vw 100.99vh 0 .25px #cfe4ff,82.92vw 13.18vh 2.2px .85px #e4eeff,101.48vw 75.31vh 0 .7px #cfe4ff,42.67vw 50.91vh 0 .7px #fff,76.59vw 97.49vh 2.2px .85px #f8fbff,5.12vw .47vh 0 .7px #e4eeff,32.6vw 91.42vh 0 .7px #f8fbff,38.87vw 17.67vh 0 .25px #cfe4ff,72.11vw 7.68vh 2.2px .85px #ffe6c4,80.38vw 99.9vh 0 .25px #fff,71.56vw 94.17vh 0 .25px #b7d6ff,69.67vw 24.44vh 1.2px .55px #cfe4ff,93.45vw 75.47vh 0 .25px #e4eeff,44.16vw 86.58vh 0 .7px #f8fbff,8.32vw 18.13vh 1.2px .55px #b7d6ff,96.33vw 44.84vh 1.2px .55px #cfe4ff,45.11vw 44.54vh 1.2px .55px #ffe6c4,64.17vw 28.4vh 0 .7px #f8fbff,7.84vw 86.74vh 0 .25px #fff,10.44vw 39.75vh 0 .7px #ffe6c4,36.22vw 52.78vh 0 .7px #fff,26.55vw 83.81vh 0 .7px #fff,81.18vw 91.99vh 0 .25px #cfe4ff,.63vw 34.6vh 2.2px .85px #fff,48.37vw 10.97vh 0 .7px #fff,28.57vw 37.23vh 1.2px .55px #fff,101.59vw 42.57vh 2.2px .85px #e4eeff,59.69vw 4.32vh 0 .25px #ffe6c4,92.52vw 26.46vh 1.2px .55px #ffe6c4,41.71vw 85.57vh 0 .25px #f8fbff,65.24vw 5.9vh 0 .7px #cfe4ff,89.44vw 97.2vh 2.2px .85px #fff}.starfield-far{transform:translate(calc(var(--px) * .18), calc(var(--py) * .18))}.starfield-far:before{animation:160s linear infinite star-drift;box-shadow:41.34vw 23.35vh 1.2px .55px #fff,85.93vw 101.45vh 4px 1.35px #f8fbff,86.87vw 70.36vh 4px 1.35px #e4eeff,65.48vw 28.96vh 4px 1.35px #f8fbff,107.33vw 106.21vh 0 .25px #e4eeff,56.63vw 78.16vh 0 .25px #f8fbff,95.85vw 3.56vh 4px 1.35px #f8fbff,83.03vw 53.28vh 0 .7px #e4eeff,70.5vw 19.18vh 2.2px .85px #f8fbff,103.03vw 28.49vh 1.2px .55px #cfe4ff,29.24vw 52.24vh 1.2px .55px #cfe4ff,73.13vw 38.25vh 1.2px .55px #cfe4ff,24.97vw 33.67vh 2.2px .85px #b7d6ff,.98vw 13.13vh 0 .7px #f8fbff,13.1vw 45.18vh 1.2px .55px #ffe6c4,20.91vw 75.75vh 1.2px .55px #e4eeff,76.22vw -.88vh 0 .7px #fff,95.04vw 87.38vh 0 .25px #b7d6ff,66.31vw 36.26vh 1.2px .55px #ffe6c4,63.4vw 57.92vh 1.2px .55px #f8fbff,45.62vw 38.43vh 0 .7px #fff,18.44vw 96.63vh 1.2px .55px #cfe4ff,10.45vw 25.06vh 1.2px .55px #ffe6c4,30.14vw 90.16vh 0 .25px #cfe4ff,33.1vw 70.39vh 2.2px .85px #fff,7.6vw 101.96vh 0 .25px #ffe6c4,90.9vw 77.05vh 0 .7px #f8fbff,38.96vw 8.71vh 0 .7px #b7d6ff,48.53vw 90.25vh 1.2px .55px #b7d6ff,41.62vw 58.62vh 4px 1.35px #fff,70.99vw 42.89vh 0 .7px #f8fbff,93.4vw 55.59vh 1.2px .55px #ffe6c4,22.03vw 7.08vh 0 .25px #e4eeff,38vw .32vh 0 .7px #e4eeff,100.66vw 22.12vh 0 .7px #f8fbff,79.54vw 67.54vh 2.2px .85px #e4eeff,11.55vw 47.68vh 0 .7px #cfe4ff,53.61vw 47.77vh 2.2px .85px #ffe6c4,98.96vw 40.67vh 0 .7px #b7d6ff,47.58vw 24.82vh 0 .7px #cfe4ff,5.4vw 84.68vh 2.2px .85px #cfe4ff,56.43vw 70.67vh 0 .25px #f8fbff,15.53vw 12.25vh 0 .7px #cfe4ff,106.52vw 94.22vh 2.2px .85px #e4eeff,3.17vw 8.13vh 2.2px .85px #e4eeff,25.86vw 96.17vh 2.2px .85px #f8fbff,33.7vw 63.73vh 0 .7px #cfe4ff,75.58vw 109.46vh 4px 1.35px #e4eeff,53.06vw 59.77vh 4px 1.35px #cfe4ff,60.82vw 14.5vh 4px 1.35px #b7d6ff,-.22vw 82.24vh 0 .25px #f8fbff,84.76vw 83.92vh 0 .7px #e4eeff}.starfield-near{opacity:1;transform:translate(calc(var(--px) * .55), calc(var(--py) * .55));background:0 0}.starfield-near:before{animation:110s linear infinite reverse star-drift;box-shadow:79.53vw 95.81vh 1.2px .55px #cfe4ff,50.56vw 66.3vh 0 .7px #f8fbff,1.61vw 59.02vh 2.2px .85px #f8fbff,44.44vw 39.94vh 0 .25px #b7d6ff,15.75vw 58.29vh 0 .25px #ffe6c4,39.43vw 54.22vh 2.2px .85px #cfe4ff,39.45vw 78.69vh 0 .25px #f8fbff,13.86vw 30.32vh 0 .25px #b7d6ff,89.26vw 92.1vh 2.2px .85px #cfe4ff,59.8vw 10.73vh 1.2px .55px #ffe6c4,33.45vw 33.37vh 0 .25px #fff,104.08vw 22.37vh 2.2px .85px #cfe4ff,85.92vw 48.48vh 0 .7px #cfe4ff,4.31vw 47.62vh 1.2px .55px #b7d6ff,18.95vw 60.09vh 1.2px .55px #e4eeff,79.83vw 5.43vh 0 .7px #ffe6c4,72.99vw 91.51vh 1.2px .55px #ffe6c4,101.2vw 101.67vh 0 .7px #ffe6c4,75.96vw 33.33vh 0 .25px #cfe4ff,11.96vw 10.44vh 2.2px .85px #fff,46.74vw 51.42vh 1.2px .55px #e4eeff,91.69vw 83.21vh 2.2px .85px #fff,64.06vw 46.12vh 0 .7px #fff,55.21vw 71.82vh 2.2px .85px #cfe4ff,107.02vw 12.01vh 2.2px .85px #cfe4ff,94.09vw 83.12vh 1.2px .55px #b7d6ff,32.3vw 94.86vh 2.2px .85px #ffe6c4,50.44vw 4.35vh 0 .7px #e4eeff,-1.86vw 71.66vh 0 .7px #cfe4ff,67.37vw 36.86vh 0 .25px #ffe6c4,25.38vw 22.36vh 1.2px .55px #b7d6ff,99.92vw 18.62vh 4px 1.35px #ffe6c4,66.19vw 87.43vh 0 .7px #cfe4ff,29.52vw 64.55vh 2.2px .85px #f8fbff,82.65vw 28.23vh 0 .25px #e4eeff,19.68vw 105.32vh 0 .7px #e4eeff,24.39vw -2.38vh 0 .7px #e4eeff,8.73vw 13.07vh 0 .7px #fff,54.01vw 100.03vh 0 .25px #ffe6c4,70.28vw 76.75vh 2.2px .85px #fff}.starfield-twinkle{opacity:1;background:0 0}.starfield-twinkle:before{animation:4.8s ease-in-out infinite star-twinkle;box-shadow:37.87vw 62.4vh 2.2px .85px #ffe6c4,53.16vw 58.25vh 0 .7px #f8fbff,44.02vw 81.05vh 2.2px .85px #f8fbff,57.85vw 93.15vh 0 .7px #ffe6c4,20.85vw 98.42vh 1.2px .55px #f8fbff,33.8vw 87.93vh 0 .25px #fff,93.5vw 72.9vh 1.2px .55px #b7d6ff,47.8vw 19.36vh 0 .25px #f8fbff,98.28vw 48.85vh 0 .7px #ffe6c4,64.04vw 9.72vh 0 .25px #ffe6c4,4.39vw 51.27vh 0 .7px #cfe4ff,75.88vw 72.03vh 1.2px .55px #f8fbff,86.08vw 26.37vh 0 .25px #e4eeff,29.83vw 43.44vh 0 .7px #ffe6c4,86.49vw .11vh 1.2px .55px #f8fbff,18.23vw 36.52vh 1.2px .55px #ffe6c4,39.19vw 27.94vh 2.2px .85px #fff,4.42vw 5.63vh 0 .7px #fff,77.86vw 64.45vh 4px 1.35px #fff,69.68vw 14.98vh 2.2px .85px #b7d6ff,16.18vw 80.29vh 4px 1.35px #ffe6c4,63.25vw 31.34vh 0 .7px #b7d6ff,9.98vw 98.73vh 0 .25px #fff,99.52vw 39.37vh 4px 1.35px #b7d6ff}.starfield-twinkle-b{animation:none}.starfield-twinkle-b:before{animation-duration:6.2s;animation-delay:-2.4s}.shooting-stars{position:absolute;inset:0;overflow:hidden}.shooting-star{--star-angle:-32deg;--star-travel:260px;opacity:0;width:88px;height:1.5px;transform:rotate(var(--star-angle));background:linear-gradient(90deg,#0000,#fffa 42%,#fffe);animation:11s ease-in infinite shooting-star;position:absolute}.shooting-star-a{--star-angle:-32deg;animation-delay:1.6s;top:16%;left:8%}.shooting-star-b{--star-angle:18deg;--star-travel:300px;animation-duration:13s;animation-delay:5.4s;top:38%;left:58%}.shooting-star-c{--star-angle:148deg;--star-travel:280px;animation-duration:12s;animation-delay:9.2s;top:68%;left:22%}@keyframes star-drift{0%{transform:translate(0)}to{transform:translate(42px,28px)}}@keyframes shooting-star{0%,86%{opacity:0;transform:rotate(var(--star-angle)) translateX(0)}90%{opacity:.9}to{opacity:0;transform:rotate(var(--star-angle)) translateX(var(--star-travel))}}@keyframes sun-pulse{0%,to{filter:drop-shadow(0 0 18px #ffcc4d88)}50%{filter:drop-shadow(0 0 38px #ffcc4dcc)}}@keyframes logo-glow{0%,to{filter:drop-shadow(0 18px 52px #0009)drop-shadow(0 0 34px #7aa2ff66)drop-shadow(0 0 80px #4a78ff44)}50%{filter:drop-shadow(0 18px 52px #0009)drop-shadow(0 0 58px #9eb8ffbb)drop-shadow(0 0 110px #4a78ff88)}}@keyframes play-idle{0%,to{box-shadow:0 14px 36px #06142888,0 0 18px #4a78ff44}50%{box-shadow:0 14px 36px #06142888,0 0 30px #7aa2ff77}}@keyframes play-hover{0%,to{filter:brightness()}50%{filter:brightness(1.12)}}@keyframes menu-enter{0%{opacity:0;transform:scale(1.06)translateY(10px)}to{opacity:1;transform:none}}@keyframes mode-body-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes star-twinkle{0%,to{opacity:.35}50%{opacity:1}}.map{z-index:1;touch-action:none;position:absolute;inset:0}.map:focus{outline:none}.map:focus-visible{outline-offset:-2px;outline:2px solid #6eb5ff}.map-svg{cursor:grab;touch-action:none;display:block}.map-svg:active{cursor:grabbing}.orbit{fill:none;stroke:#7aa2ff;stroke-opacity:.35;stroke-width:2.2px}.orbit-dim,.orbit-local{stroke:#8a93a6;stroke-opacity:.16;stroke-width:.9px}.ring{fill:none;stroke:#f4d27a;stroke-opacity:1;stroke-width:7px}.body{cursor:pointer;outline:none}.body[aria-disabled=true]{cursor:default}.body-dim{cursor:default;pointer-events:none}.body .hit{fill:#0000}.try-ring{pointer-events:none;stroke-width:4px;vector-effect:non-scaling-stroke}.try-ring-green{stroke:#5dff9a}.try-ring-yellow{stroke:#ffe566}.try-ring-orange{stroke:#ff9a3d}.try-ring-red{stroke:#ff5a5a}.try-ring-flash{stroke:#ff5a5a;animation:.65s ease-out forwards try-ring-flash}@keyframes try-ring-flash{0%{stroke-opacity:1;stroke-width:3px}70%{stroke-opacity:1;stroke-width:4px}to{stroke-opacity:0;stroke-width:5px}}.corona{opacity:.32;pointer-events:none}.body-lit .disc{stroke:#241833;stroke-width:4px;filter:none}.body-star.body-lit .disc{stroke:#ff8a2a;stroke-width:5px;filter:none}.shine{fill:#fff;opacity:.42;pointer-events:none}.band{fill:#c56b32;opacity:.4;pointer-events:none}.band-dark{fill:#8a4a24;opacity:.35}.body-dim .body-art{filter:grayscale()brightness(.7);opacity:.55}.body-dim .disc{stroke:#3d4658;stroke-width:3px;filter:none;opacity:.5;fill:#6a7384!important}.body-dim .corona,.body-dim .shine,.body-dim .band{opacity:0}.body-dim .ring{stroke:#6a7384;stroke-opacity:.25}.body-dim .label{fill:#5e6a7e}.body-lit.body-moon .body-art{filter:drop-shadow(0 0 6px #fff5);opacity:1}.body-lit.body-moon .moon-shell{stroke:#fff;stroke-opacity:.95}.body-lit.body-moon .moon-backing,.body-lit.body-moon .moon-fill{opacity:1}.body-lit.body-spacecraft .spacecraft-art{filter:drop-shadow(0 0 8px #ffe08a66);opacity:1}.body-spacecraft .spacecraft-art image{pointer-events:none}.body-moon-decor .body-art{filter:none;opacity:.72}.body-moon-decor .disc{stroke-width:1.5px}.body-dim.body-moon:not(.body-moon-decor) .moon-shell{stroke:#6a7384;stroke-opacity:.45}.body-sun-anchor.body-lit .body-art,.body-star.body-lit .body-art{filter:none;opacity:1}.body-lit .celestial-art .disc,.body-lit .celestial-art .globe-band{stroke:#241833;stroke-width:2px}.body-lit .celestial-comet .comet-tail{opacity:.72}.body-lit .celestial-asteroid .asteroid-rock-sprite{opacity:1}.body-region-visual{pointer-events:none}.body-region-visual.body-missed .belt{stroke:#ff5a5a;opacity:.7}.body-region-hit{cursor:pointer}.body-region-hit .region-hit{pointer-events:visiblePainted}.body-lit:hover .disc,.body-lit:focus-visible .disc{stroke:#fff;stroke-width:5px}.belt{fill:none;opacity:.35}.belt-asteroid-belt{opacity:.4}.asteroid-belt-art .belt-orbit{fill:none;stroke:#8a7355;stroke-opacity:.28;stroke-width:1.2px;stroke-dasharray:5 7}.asteroid-belt-art .belt-fill{pointer-events:none}.asteroid-belt-art .belt-grain{fill:#c9b08a;opacity:.35}.asteroid-belt-art .belt-rock path{fill:#b8946a;stroke:#5c4330;stroke-width:.12px;stroke-linejoin:round}.asteroid-belt-art .belt-rock-1 path{fill:#a88462}.asteroid-belt-art .belt-rock-2 path{fill:#c8a070}.asteroid-belt-art .belt-rock-shine{fill:#ffeacc;opacity:.35;pointer-events:none}.body-dim .asteroid-belt-art .belt-rock path{fill:#7a7068;stroke:#4a4540}.body-dim .asteroid-belt-art .belt-rock-shine{opacity:.12}.body-dim .asteroid-belt-art .belt-grain{fill:#9a9088;opacity:.3}.body-dim .asteroid-belt-art .belt-orbit{stroke:#6a7384;stroke-opacity:.2}.body-dim .asteroid-belt-art .belt-fill{opacity:.45}.belt-kuiper-belt{opacity:.28}.belt-oort-cloud{opacity:.16}.body-dim .belt{opacity:.32}.body-dim .belt-oort-cloud{opacity:.12}.dust{fill:#d8d0c4;opacity:.4}.body-dim .dust{fill:#b9b0a4;opacity:.45}.belt-label{fill:#c5cddc;letter-spacing:.18em;text-anchor:middle;pointer-events:none;font-size:13px}.body-dim .belt-label{fill:#6d788c}.label{fill:#fff;text-anchor:middle;pointer-events:none;paint-order:stroke fill;stroke:#1a1428;stroke-width:4px;font-size:15px;font-weight:700}.hud{pointer-events:none;z-index:1;grid-template-columns:1fr auto 1fr;align-items:start;gap:12px;padding:16px 18px;display:grid;position:relative}.hud .ghost,.hud .stats{pointer-events:auto}.ghost{color:#c5d2ea;background:#0c1322cc;border:1px solid #2c3c5c;justify-self:start;padding:8px 12px}.prompt{letter-spacing:.04em;background:#0c1322ee;border:1px solid #3d5a99;border-radius:999px;justify-self:center;margin:0;padding:10px 18px;font-weight:650}.stats{background:#0c1322cc;border:1px solid #2c3c5c;border-radius:10px;justify-self:end;gap:12px;margin:0;padding:8px 12px;display:flex}.stats p{font-variant-numeric:tabular-nums;margin:0}.feedback{z-index:1;letter-spacing:.2em;margin:0;font-weight:700;position:absolute;top:88px;left:50%;transform:translate(-50%)}.feedback-correct{color:#7dffb3}.feedback-incorrect{color:#ff8d8d}.hint{pointer-events:none;color:#6d7b94;z-index:1;margin:0;font-size:.8rem;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.play-stage{position:absolute;inset:0}.play-stage-inert{pointer-events:none}.results-layer{z-index:2;position:absolute;inset:0}.results-scrim{background:#05070d99;position:absolute;inset:0}.results{z-index:3;text-align:center;background:#0c1322f2;border:1px solid #3d5a99;border-radius:16px;width:min(400px,100% - 32px);padding:28px 24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.results h2{margin:0 0 12px;font-size:1.35rem}.results [data-testid=results-found]{color:#e8eef8;margin:0 0 4px;font-size:1.65rem;font-weight:700}.results-stats{text-align:left;grid-template-columns:1fr 1fr;gap:8px 18px;margin:14px 0 0;padding:0;list-style:none;display:grid}.results-stats li{color:#9eb0cc;justify-content:space-between;gap:12px;margin:0;font-size:.95rem;display:flex}.results-stats strong{color:#e8eef8;font-variant-numeric:tabular-nums}.results-actions{justify-content:center;gap:10px;margin-top:18px;display:flex}.results-actions .mode-play,.results-actions .ghost{pointer-events:auto;width:auto}@media (width<=760px){.home{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:auto}.home-content{height:auto;min-height:100%;padding:calc(16px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom));flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.home-logo-wrap{position:relative;top:auto;left:auto;transform:none}.home-logo{width:min(220px,56vw)}.home-actions{gap:12px;width:min(420px,100%);position:relative;top:auto;left:auto;transform:none}.home-tagline{font-size:.95rem}.home-play{min-width:11rem;min-height:48px;padding:14px 28px;font-size:1.12rem}.menu{padding:calc(12px + env(safe-area-inset-top)) 12px calc(20px + env(safe-area-inset-bottom));place-items:start center}.menu-hud{border-radius:20px;width:100%;padding:14px 14px 16px}.menu-logo{width:min(64px,22vw)}.menu-mission{font-size:1.2rem}.mode-body-art{width:min(92px,26vw);height:min(92px,26vw)}.mode-body-desc{font-size:.72rem}.quick-play{min-height:48px;padding:12px 14px}.mode-card-locked .mode-card-desc{display:none}.hud{padding:calc(10px + env(safe-area-inset-top)) 10px 8px;grid-template-columns:auto 1fr;gap:8px}.prompt{overflow-wrap:anywhere;justify-self:stretch;padding:8px 12px;font-size:.88rem;line-height:1.3}.stats{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;justify-self:stretch;gap:8px 10px;font-size:.82rem}.feedback{top:auto;bottom:calc(56px + env(safe-area-inset-bottom))}.hint{left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));text-align:center;width:auto;font-size:.72rem;transform:none}.results{touch-action:pan-y;width:min(400px,100% - 20px);max-height:calc(100dvh - 24px);padding:20px 16px;overflow:auto}.mode-planet-chip,.mode-hard-toggle,.mode-option-toggle,.ghost,.menu-back,.menu-home{min-height:44px}}@media (width<=760px) and (height<=480px){.home-logo{width:min(112px,28vw)}.home-tagline{font-size:.85rem}.home-play{min-height:44px;padding:10px 22px;font-size:1rem}}@media (prefers-reduced-motion:reduce){.starfield-far,.starfield-near,.starfield-twinkle,.starfield-far:before,.starfield-near:before,.starfield-twinkle:before,.shooting-star,.orbit-backdrop-sun,.home-logo,.home-play,.menu-hud,.mode-card,.mode-body-art,.quick-play{transition:none;animation:none}.space-scene-orbit,.starfield-far,.starfield-near{transform:none}}
