.game-mode-switch{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.game-mode-switch button{font:inherit;font-size:13px;padding:9px 12px;border:1px solid #b7ccd8;border-radius:9px;background:#ffffffa0;color:#34566e;min-height:40px}.game-mode-switch button[aria-pressed=true]{background:#225f83;color:white;border-color:#225f83}.toolbar{flex-wrap:wrap;gap:10px}.mobile-mode .layout{grid-template-columns:1fr}.mobile-mode .side{display:none}.desktop-mode #touch-controls{display:none!important}canvas.weapon-cursor{cursor:none!important}
#touch-controls{display:none;position:absolute;inset:0;pointer-events:none;z-index:5;user-select:none;-webkit-user-select:none;touch-action:none}.touch-enabled #touch-controls{display:block}
#touch-controls button,#touch-controls .stick,#touch-controls .aim-pad{pointer-events:auto;touch-action:none;border:1px solid #ffffff70;color:#fff;background:#18314238;text-shadow:0 1px 3px #000;border-radius:50%;-webkit-tap-highlight-color:transparent}
#touch-controls button{min-width:42px;min-height:42px;font-size:12px;padding:6px}#touch-controls button.held{background:#ffffff70;border-color:#fff}
.stick{position:absolute;left:max(3%,env(safe-area-inset-left));bottom:12%;width:clamp(76px,22vw,110px);height:clamp(76px,22vw,110px);display:grid;place-items:center}.stick span{width:38%;height:38%;border:1px solid #ffffff80;background:#ffffff30;border-radius:50%}.stick small{position:absolute;bottom:4px;font-size:10px;opacity:.7}
.aim-pad{position:absolute;right:max(3%,env(safe-area-inset-right));bottom:25%;width:clamp(90px,26vw,140px);height:clamp(76px,20vw,110px);display:grid;place-items:center}.aim-pad span{font-size:11px;opacity:.7}
.touch-actions{position:absolute;right:3%;bottom:11%;display:flex;gap:5px}.touch-actions .fire{width:55px;height:55px;font-weight:bold}.touch-weapons{position:absolute;left:50%;bottom:max(2%,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;gap:6px}.touch-top{position:absolute;top:max(3%,env(safe-area-inset-top));left:3%;display:flex;gap:6px}
#exit-fullscreen{display:none;position:absolute;right:max(10px,env(safe-area-inset-right));top:max(10px,env(safe-area-inset-top));z-index:8;color:white;background:#18314270;border:1px solid #ffffff70;border-radius:8px;padding:9px;min-height:42px}
.stage:fullscreen #exit-fullscreen,.page-fullscreen #exit-fullscreen{display:block}.game-fullscreen{overflow:hidden}.stage.page-fullscreen{position:fixed;inset:0;width:100vw;height:100dvh;z-index:9999;border-radius:0;aspect-ratio:auto;background:#101a22}.stage.page-fullscreen canvas,.stage:fullscreen canvas{width:min(100vw,calc(100dvh * var(--game-aspect,1)));height:min(100dvh,calc(100vw / var(--game-aspect,1)));flex-shrink:0}.stage:fullscreen{height:100dvh;background:#101a22}
@media(pointer:coarse){.toolbar>div{display:flex;flex-wrap:wrap;gap:5px}.toolbar button{min-height:44px}.side .note{font-size:13px}}

