:root{--c-night:#1b2140;--c-night-2:#262d57;--c-cream:#f6ecd9;--c-amber:#f2a33a;--c-cobalt:#3b63c4;--c-ok:#8fd18a;--c-warn:#ff8f6b;--hud-top-offset:0px;--safe-t:calc(env(safe-area-inset-top,0px) + var(--hud-top-offset));--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px)}html,body{overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:radial-gradient(120% 90% at 70% 10%, var(--c-night-2), var(--c-night));height:100%;color:var(--c-cream);margin:0;font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow:hidden}#app{box-sizing:border-box;height:100dvh;padding:calc(var(--safe-t) + 20px) calc(var(--safe-r) + 24px) calc(var(--safe-b) + 20px) calc(var(--safe-l) + 24px);touch-action:pan-y;flex-direction:column;gap:14px;display:flex;overflow-y:auto}.shell-title{letter-spacing:.02em;color:var(--c-amber);margin:0;font-size:clamp(28px,6vw,44px)}.shell-sub{opacity:.85;margin:0}.shell-note{opacity:.75;max-width:60ch;margin:0}.shell-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.chip{background:#ffffff14;border-radius:999px;align-items:center;gap:6px;min-height:32px;padding:0 12px;font-size:14px;display:inline-flex}.chip[data-state=ready]{color:var(--c-ok);background:#8fd18a2e}.chip[data-expect=mismatch]{color:var(--c-warn);background:#ff8f6b33}.btn{background:var(--c-cobalt);color:#fff;min-width:48px;min-height:48px;font:inherit;touch-action:manipulation;border:0;border-radius:12px;justify-content:center;align-items:center;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.btn.secondary{background:#ffffff1f}.btn.accent{background:var(--c-amber);color:#2a1a00}.btn[hidden]{display:none}.info-list{opacity:.9;gap:4px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.error-panel{left:calc(var(--safe-l) + 12px);right:calc(var(--safe-r) + 12px);bottom:calc(var(--safe-b) + 12px);z-index:1000;color:#ffe3dc;touch-action:pan-y;background:#3a1720;border-radius:14px;max-height:60dvh;padding:14px;position:fixed;overflow:auto;box-shadow:0 10px 40px #00000080}.error-panel[hidden]{display:none}.error-panel h2{margin:0 0 8px;font-size:17px}.error-panel pre{white-space:pre-wrap;word-break:break-word;-webkit-user-select:text;user-select:text;margin:0 0 10px;font-size:12px}.shell-stage{flex:none;justify-content:center;display:flex}.shell-stage canvas{max-width:100%;height:auto;image-rendering:pixelated;background:#10131c;border-radius:12px}.game-canvas{touch-action:none;background:#10131c;outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}.game-canvas[hidden]{display:none}#app.game-strip{pointer-events:none;gap:8px;height:auto;max-height:100dvh;padding-bottom:10px;position:relative}#app.game-strip .chip,#app.game-strip .btn{pointer-events:auto}#app.game-strip .shell-title{font-size:clamp(18px,3vw,26px)}#app.game-strip[data-collapsed=true] .shell-sub,#app.game-strip[data-collapsed=true] .shell-note:not(.shell-note--mismatch),#app.game-strip[data-collapsed=true] .shell-actions,#app.game-strip[data-collapsed=true] .info-list{display:none}#app.game-strip .shell-note--mismatch{opacity:1;color:var(--c-warn)}.debug-overlay{top:calc(var(--safe-t) + 12px);right:calc(var(--safe-r) + 12px);z-index:900;color:var(--c-cream);white-space:pre;pointer-events:none;background:#0a0d1ab8;border-radius:12px;margin:0;padding:10px 14px;font:12px/1.5 ui-monospace,Cascadia Mono,Consolas,monospace;position:fixed}.debug-overlay[hidden]{display:none}.selectable{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}
