:root{color:#f7f5ef;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;background:radial-gradient(circle at top,#9eddff 0%,#7cc9ff 42%,#5398d4 100%);font-family:Avenir Next Condensed,Arial Rounded MT Bold,Trebuchet MS,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{min-height:100vh;overflow:hidden}button,input{font:inherit}a{color:inherit}.game-shell{--panel-bg:#112533c7;--panel-border:#a6f0ff9e;--gold:#ffe66f;--aqua:#62ecff;--leaf:#7dff8a;--coral:#ff8f6b;--ink:#102135;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 50% 16%,#ffffff7a,#0000 24rem),linear-gradient(#7ad7ff 0%,#8de8ff 44%,#ffd88a 100%);width:100vw;height:100vh;position:relative;overflow:hidden}.game-shell canvas{display:block}.fallback-scene{background:#76d8ff;position:absolute;inset:0;overflow:hidden}.fallback-scene canvas{object-fit:cover;width:100%;height:100%}.fallback-scene span{color:#fff;background:#102135b8;border-radius:8px;padding:8px 12px;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.hud-layer{pointer-events:none;position:absolute;inset:0}.reticle{border:2px solid #ffffffdb;border-radius:999px;width:18px;height:18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 12px #62ecff6b}.reticle-lock{border-color:var(--aqua);width:26px;height:26px;box-shadow:0 0 20px #62ecffd9}.hud-panel,.prompt-ribbon,.event-toast,.shop-modal,.debug-panel,.shop-fab{border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--panel-bg);border-radius:8px;position:absolute;box-shadow:0 14px 30px #07142638}.hud-panel{padding:12px 14px}.stat-panel{top:max(16px, env(safe-area-inset-top));left:max(16px, env(safe-area-inset-left));width:178px}.mission-panel{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));gap:4px;width:272px;display:grid}.mission-title{color:var(--gold);letter-spacing:0;text-transform:uppercase;font-size:13px;font-weight:900}.mission-step{color:#f4faffe6;font-size:15px;line-height:1.25}.stat-row{color:#f4faffd1;justify-content:space-between;gap:16px;margin-bottom:6px;display:flex}.stat-row:last-child{margin-bottom:0}.stat-row strong{color:#fff}.prompt-ribbon{top:max(18px, env(safe-area-inset-top));color:#102135;background:linear-gradient(#fff492 0%,#66efff 100%);padding:9px 14px;font-weight:900;left:50%;transform:translate(-50%)}.event-toast{bottom:calc(84px + var(--safe-bottom));text-align:center;color:#fff;max-width:min(92vw,480px);padding:10px 14px;left:50%;transform:translate(-50%)}.controls{left:max(16px, env(safe-area-inset-left));bottom:calc(16px + var(--safe-bottom));flex-wrap:wrap;gap:8px;max-width:calc(100vw - 32px);display:flex}.controls span{text-align:center;color:#fff;background:#ffffff1a;border-radius:6px;min-width:58px;padding:7px 9px}.shop-fab{right:max(18px, env(safe-area-inset-right));bottom:calc(18px + var(--safe-bottom));color:var(--ink);pointer-events:auto;background:linear-gradient(180deg, var(--gold), #ffb347);border:0;padding:12px 16px;font-weight:900}.shop-modal{top:50%;right:max(20px, env(safe-area-inset-right));pointer-events:auto;width:min(390px,100vw - 40px);max-height:min(680px,100vh - 40px);padding:18px;overflow:auto;transform:translateY(-50%)}.shop-header{justify-content:space-between;align-items:start;gap:12px;margin-bottom:14px;display:flex}.shop-header h2{color:#fff;margin:3px 0 0;font-size:30px;line-height:1}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:0;margin:0;font-size:12px;font-weight:900}.icon-button,.upgrade-card,.debug-panel button,.touch-button{pointer-events:auto;cursor:pointer;border:0;transition:transform .14s,opacity .14s,background .14s}.icon-button{color:#fff;background:#ffffff1f;border-radius:8px;width:34px;height:34px}.shop-grid{gap:10px;display:grid}.upgrade-card{text-align:left;color:#f7f5ef;background:#ffffff17;border-radius:8px;gap:5px;min-height:104px;padding:13px 68px 13px 13px;display:grid;position:relative}.upgrade-card:hover,.touch-button:hover,.shop-fab:hover{transform:translateY(-1px)}.upgrade-card:disabled{cursor:not-allowed;opacity:.48}.upgrade-title{font-size:20px;font-weight:900}.upgrade-description,.upgrade-meta{color:#f0f5ffe0;font-size:14px;line-height:1.25}.upgrade-price{min-width:44px;color:var(--ink);text-align:center;background:var(--leaf);border-radius:6px;padding:6px 8px;font-weight:900;position:absolute;top:14px;right:14px}.quality-pill{color:#f4faffb8;margin:12px 0 0;font-size:13px}.touch-controls{pointer-events:none;position:absolute;inset:0}.joystick{left:max(20px, env(safe-area-inset-left));bottom:calc(22px + var(--safe-bottom));pointer-events:auto;background:#10213557;border:2px solid #ffffff7a;border-radius:999px;width:138px;height:138px;position:absolute}.joystick-knob{background:linear-gradient(180deg, #fff, var(--aqua));border-radius:999px;width:48px;height:48px;position:absolute;top:43px;left:43px;box-shadow:0 8px 20px #0b1c3252}.touch-actions{right:max(18px, env(safe-area-inset-right));bottom:calc(20px + var(--safe-bottom));pointer-events:auto;gap:10px;display:grid;position:absolute}.touch-button{width:86px;height:58px;color:var(--ink);background:linear-gradient(180deg, #fff 0%, var(--aqua) 100%);border-radius:8px;font-size:15px;font-weight:900;box-shadow:0 10px 24px #0714262e}.touch-button.mini{background:linear-gradient(180deg, var(--gold), #ffb347);height:44px}.touch-button:disabled{opacity:.46}.debug-panel{left:max(16px, env(safe-area-inset-left));pointer-events:auto;gap:8px;padding:12px;display:grid;top:142px}.debug-panel button{color:var(--ink);background:#fff;border-radius:8px;padding:9px 11px;font-weight:900}@media (width<=900px){.stat-panel{width:154px}.mission-panel{display:none}.prompt-ribbon{top:max(16px, env(safe-area-inset-top));text-align:center;max-width:calc(100vw - 210px)}.shop-modal{width:min(420px,100vw - 24px);left:50%;right:auto;transform:translate(-50%,-50%)}}@media (width<=560px){.stat-panel{top:max(10px, env(safe-area-inset-top));left:max(10px, env(safe-area-inset-left));width:132px;padding:9px;font-size:14px}.prompt-ribbon{top:auto;bottom:calc(188px + var(--safe-bottom));max-width:calc(100vw - 32px)}.event-toast{bottom:calc(154px + var(--safe-bottom));font-size:14px}.joystick{width:118px;height:118px}.joystick-knob{width:40px;height:40px;top:37px;left:37px}.touch-button{width:76px;height:52px;font-size:13px}}
