:root{font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:#f9f3df;background:#080b1f;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}html{min-height:100vh;min-height:100dvh}body{min-height:100vh;min-height:100dvh;overflow-x:hidden;overscroll-behavior:none;background:#080b1f}body,#app,.game-root,.game-root canvas{-webkit-tap-highlight-color:transparent}body{-webkit-touch-callout:none}button{font:inherit}#app{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 18% 14%,rgba(63,80,169,.28),transparent 32%),radial-gradient(circle at 88% 84%,rgba(232,128,91,.16),transparent 30%),#080b1f}.game-shell{width:min(100%,520px,62.4vh);width:min(100%,520px,62.4dvh);position:relative}.topbar{display:flex;justify-content:space-between;align-items:center;margin:0 4px 12px;transition:opacity .2s ease}.game-shell.is-booting .topbar,.game-shell.is-booting .bottom-hint{visibility:hidden;opacity:0}.brand-lockup{display:flex;align-items:center;gap:9px;font-size:15px;letter-spacing:.02em}.brand-moon{width:16px;height:16px;display:inline-block;position:relative;border-radius:50%;background:#ffe7a0;box-shadow:0 0 0 4px #f8c95c1f,0 0 14px #f8c95c38}.brand-moon:before,.brand-moon:after{content:"";position:absolute;border-radius:50%;background:#c48f2e61}.brand-moon:before{width:3px;height:3px;top:4px;left:4px}.brand-moon:after{width:2px;height:2px;right:3px;bottom:4px}.brand-name{color:#d9ddf7;font-weight:800}.game-root{width:100%;aspect-ratio:4 / 5;border:1px solid rgba(220,226,255,.16);border-radius:25px;overflow:hidden;position:relative;background:#141b3d;box-shadow:0 30px 80px #0006,inset 0 0 0 1px #ffffff08}.game-root canvas{display:block;width:100%!important;height:100%!important;touch-action:none;image-rendering:auto}.boot-screen{position:absolute;z-index:20;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;overflow:hidden;color:#fff5da;background:radial-gradient(ellipse at 50% 42%,#202b5d,#141b3d 68%);transition:opacity .22s ease}.boot-screen:before,.boot-screen:after{content:"";position:absolute;width:3px;height:3px;border-radius:50%;background:#e5e8ff;box-shadow:-130px -115px #e5e8ff,115px -95px #e5e8ff,150px 45px #e5e8ff,-170px 75px #e5e8ff,-80px 155px #e5e8ff,74px 140px #e5e8ff;opacity:.5}.boot-screen:after{transform:translate(40px,18px) scale(.6);opacity:.28}.boot-screen.is-hidden{opacity:0;pointer-events:none}.boot-moon{position:absolute;top:20%;right:18%;width:48px;aspect-ratio:1;border-radius:50%;background:#ffe7a0;box-shadow:0 0 0 10px #f8c95c14,0 0 42px #f8c95c3d}.boot-moon:before,.boot-moon:after{content:"";position:absolute;border-radius:50%;background:#dba94447}.boot-moon:before{width:8px;height:8px;top:12px;left:13px}.boot-moon:after{width:5px;height:5px;right:10px;bottom:12px}.boot-screen strong{position:relative;margin-top:12px;font-size:22px;font-weight:900}.boot-screen>span{position:relative;color:#aab4df;font-size:12px}.boot-cloud{position:relative;width:88px;height:42px;margin-bottom:12px;border-radius:26px;background:#dde8ff;box-shadow:inset 0 -6px #9aa6d48c,0 12px 24px #04081e40;animation:cloud-float 1.15s ease-in-out infinite alternate}.boot-cloud:before,.boot-cloud:after,.boot-cloud i{position:absolute;bottom:12px;display:block;border-radius:50%;background:#dde8ff}.boot-cloud:before{content:"";left:13px;width:31px;height:31px}.boot-cloud:after{content:"";left:35px;bottom:17px;width:37px;height:37px}.boot-cloud i:first-child{z-index:2;left:31px;bottom:16px;width:4px;height:6px;background:#141b3d}.boot-cloud i:nth-child(2){z-index:2;left:52px;bottom:16px;width:4px;height:6px;background:#141b3d}.boot-cloud i:nth-child(3){z-index:2;left:41px;bottom:7px;width:7px;height:5px;background:#f28b73}.boot-track{position:relative;width:136px;height:3px;margin-top:12px;overflow:hidden;border-radius:3px;background:#b9c2ec2e}.boot-track i{display:block;width:38%;height:100%;border-radius:inherit;background:#f8c95c;animation:loading-sweep 1.1s ease-in-out infinite}@keyframes cloud-float{to{transform:translateY(-5px)}}@keyframes loading-sweep{0%{transform:translate(-110%)}to{transform:translate(370%)}}.bottom-hint{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:13px;color:#666d99;font-size:11px;font-weight:700;letter-spacing:.04em}.hint-key{min-width:22px;height:20px;display:grid;place-items:center;border:1px solid #343c6e;border-radius:6px;color:#b9c0ed;background:#111737;font:500 13px ui-monospace,monospace}.hint-sep{color:#373d6b;margin:0 2px}.game-button.is-disabled{cursor:default;filter:saturate(.35);opacity:.66}@media(prefers-reduced-motion:reduce){.boot-cloud,.boot-track i{animation-duration:2.8s}}@media(max-width:520px){#app{height:100vh;height:100dvh;min-height:0;padding:max(12px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));align-items:center}.game-shell{width:100%;max-width:560px;height:min(900px,calc(100dvh - max(12px,env(safe-area-inset-top)) - max(20px,env(safe-area-inset-bottom)) - 8px));display:flex;flex-direction:column;margin-top:0}.topbar,.bottom-hint{flex:none}.game-root{flex:1;min-height:0;aspect-ratio:auto;border-radius:22px}.bottom-hint{font-size:10px}}@media(max-height:520px)and (orientation:landscape){#app{height:100vh;height:100dvh;padding:max(8px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.topbar,.bottom-hint{display:none}.game-shell{width:min(calc(88dvh * 16 / 9),calc(100vw - 20px),800px);height:auto;display:block}.game-root{aspect-ratio:16 / 9;flex:initial;border-radius:18px}}
