/* Canvas dimensions and controls retain the tested prototype behavior. */
.sniper-page .game-card,.sniper-page .game-card *{box-sizing:border-box}
.sniper-page .game-card{background:#fff;border:1px solid #dbe8e3;border-radius:8px;padding:16px;margin:24px 0;box-shadow:0 4px 16px #203a2410}
.sniper-page #game{display:block;width:100%;height:min(65vh,650px);min-height:420px;background:#172924;border-radius:10px;touch-action:none;cursor:crosshair}
.sniper-page .keyboard-controls{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.sniper-page .keyboard-controls button{min-height:44px;padding:10px 16px;border:1px solid #668b74;border-radius:8px;background:#eef5f0;color:#254c36;font:inherit;cursor:pointer}
.sniper-page #shoot{background:#b32828;color:white;border-color:#9a2222}
.sniper-page .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:600px){.sniper-page .game-card{padding:8px}.sniper-page #game{height:68vh;min-height:450px}.sniper-page .keyboard-controls button{flex:1;font-size:.8rem}}
.sniper-page #game:fullscreen{width:100vw;height:100dvh;min-height:0;border-radius:0}
