.game-shell{width:100%;min-height:100vh;min-height:100svh;height:100vh;height:100dvh;margin:0;padding:1rem;display:grid;grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);grid-template-rows:auto auto minmax(1.75rem,auto) 1fr;grid-template-areas:"header stage" "hud stage" "status stage" "controls stage";column-gap:clamp(1rem,2.5vw,2.5rem);align-items:start;overflow:hidden}.game-header{grid-area:header;align-self:end;margin:0 0 1.25rem;text-align:left}.game-title{margin:0;color:#fff;font-size:clamp(2rem,4vw,4rem);font-weight:900;line-height:.95;letter-spacing:-.045em}.game-instructions{max-width:22rem;margin:1rem 0 0;color:#cbd5e1;font-size:.95rem;line-height:1.65;text-align:left}.game-hud{grid-area:hud;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;width:100%;margin:0}.game-hud-item{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:.5rem;padding:.6rem .75rem;border:1px solid rgba(51,65,85,.8);border-radius:.8rem;background:#0f172ab8;box-shadow:0 1px 2px #00000040;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:.82rem}.game-hud-label{min-width:0;overflow:hidden;color:#94a3b8;text-overflow:ellipsis;white-space:nowrap}.game-hud-value{flex:0 0 auto;color:#f1f5f9;font-weight:700;font-variant-numeric:tabular-nums}.game-status{grid-area:status;min-height:1.75rem;margin:.8rem 0 0;color:#fcd34d;font-size:.92rem;font-weight:700;line-height:1.4;text-align:left}.game-controls-host{grid-area:controls;width:100%;align-self:start}.game-canvas-frame{grid-area:stage;width:100%;min-width:0;height:100%;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(51,65,85,.8);border-radius:1rem;background:#020617;box-shadow:0 24px 60px #00000080;outline:1px solid rgba(255,255,255,.05)}.game-canvas{display:block;max-width:100%;max-height:100%;margin:auto;touch-action:manipulation}.mobile-controls{display:none;width:100%;margin:1rem 0 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;user-select:none;-webkit-user-select:none}.mobile-control{min-width:0;min-height:3.5rem;padding:.75rem .65rem;border:1px solid rgba(148,163,184,.38);border-radius:.9rem;background:#0f172ae0;color:#f8fafc;font:inherit;font-size:1.15rem;font-weight:800;line-height:1;box-shadow:0 8px 24px #00000047;touch-action:none;-webkit-tap-highlight-color:transparent}.mobile-control--action{font-size:.82rem;letter-spacing:.035em;text-transform:uppercase}.mobile-control--wide{grid-column:span 3}.mobile-control--active,.mobile-control:active{background:#334155f5;transform:scale(.96)}.mobile-control:focus-visible{outline:3px solid rgba(125,211,252,.9);outline-offset:2px}@media(pointer:coarse),(hover:none),(max-width:820px){.game-shell{width:100%;height:auto;min-height:100vh;min-height:100svh;padding:.75rem;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto auto;grid-template-areas:"header" "hud" "stage" "controls" "status";row-gap:.65rem;overflow:visible}.game-header{margin:0}.game-title{font-size:clamp(1.7rem,8vw,2.5rem);line-height:1}.game-instructions{max-width:none;margin-top:.55rem;font-size:.82rem;line-height:1.45}.game-hud{display:flex;flex-wrap:wrap;gap:.4rem}.game-hud-item{flex:1 1 auto;min-width:5.5rem;padding:.42rem .62rem;border-radius:9999px;font-size:.76rem}.game-canvas-frame{width:100%;height:auto;min-height:0;border-radius:.8rem}.mobile-controls{display:grid;margin-top:0}.game-status{margin:0;font-size:.86rem;text-align:center}}@media(orientation:landscape)and (pointer:coarse)and (min-width:821px){.game-shell{grid-template-columns:minmax(14rem,18rem) minmax(0,1fr);padding:.5rem;column-gap:.75rem}.game-title{font-size:clamp(1.5rem,4vw,2.4rem)}.game-instructions{font-size:.78rem;line-height:1.35}.mobile-controls{display:grid}}@media(max-width:380px){.mobile-controls{gap:.5rem}.mobile-control{min-height:3.2rem;padding:.65rem .5rem}}@media(prefers-reduced-motion:reduce){.mobile-control--active,.mobile-control:active{transform:none}}:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#070b18;color:#eef4ff}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;min-height:100vh;min-height:100svh;background:radial-gradient(circle at top,#111d3c 0,#070b18 48%,#03050b)}button,input{font:inherit}.game-canvas{touch-action:none}
