@import url("https://fonts.googleapis.com/css2?family=Press+Start+2P&family=Silkscreen:wght@400;700&family=VT323&display=swap");:root{--cat-amber:#f2b84b;--cat-amber-bright:#ffd277;--cat-amber-deep:#c8902f;--cat-amber-ink:#2a1d06;--bg-page:#151711;--bg-field:#12170f;--bg-panel:#20261c;--bg-panel-2:#2a3124;--bg-panel-3:#353d2c;--bg-sunken:#0d1009;--border:#3a4430;--border-strong:#525e42;--border-faint:#2a3122;--text:#f3f2dc;--text-muted:#b8c1a2;--text-dim:#7d876a;--text-ink:#11140c;--cyan:#64d3d8;--cyan-bright:#9bf0f4;--cyan-deep:#2f8f95;--terrain:#6fa642;--terrain-bright:#9fd06a;--terrain-deep:#4a7a2a;--health:#6fa642;--health-warn:#e0a52e;--health-low:#d0463f;--ammo:#64d3d8;--xp:#b685e0;--xp-bright:#d4b1f5;--danger:#d0463f;--danger-deep:#8f332f;--danger-flash:#ff6b5e;--warning:#e0a52e;--disabled-bg:#242a1d;--disabled-text:#5b6450;--disabled-border:#2e3526;--page-bg:var(--bg-page);--panel-bg:var(--bg-panel);--panel-border:var(--border-strong);--panel-rule:var(--border);--field-bg:var(--bg-field);--muted-text:var(--text-muted);--button-bg:var(--bg-panel-2);--button-bg-hover:var(--bg-panel-3);--button-border:var(--border-strong);--terrain-green:var(--terrain);--telemetry-cyan:var(--cyan);--danger-bg:var(--danger);--danger-border:var(--danger-flash);--warning-bg:#7d5c1a;--warning-border:var(--warning);--accent:var(--cyan);--font-display:"Press Start 2P","Courier New",monospace;--font-pixel:"Silkscreen","Courier New",monospace;--font-mono:"VT323","Courier New",monospace;--fs-hero:clamp(28px,5.4vw,72px);--fs-display:clamp(24px,4vw,38px);--fs-h1:20px;--fs-h2:15px;--fs-menu:18px;--fs-button:14px;--fs-body:19px;--fs-label:11px;--tracking-label:0.14em;--tracking-button:0.06em;--tracking-pixel:0.02em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--radius-sm:2px;--radius:4px;--radius-panel:8px;--radius-pill:999px;--bw:2px;--bw-thick:3px;--shadow-block:0 4px 0 0 rgba(0,0,0,0.45);--shadow-block-sm:0 2px 0 0 rgba(0,0,0,0.45);--shadow-panel:inset 0 2px 0 rgba(255,255,255,0.1),0 6px 0 rgba(0,0,0,0.35),0 0 0 2px var(--border);--inset-hi:inset 0 2px 0 rgba(255,255,255,0.1);--glow-amber:0 0 12px rgba(242,184,75,0.55);--glow-cyan:0 0 12px rgba(100,211,216,0.55);--glow-danger:0 0 14px rgba(208,70,63,0.6);--dur-fast:90ms;--dur:150ms;--ease-out:cubic-bezier(0.2,0.7,0.2,1);--ease-pop:cubic-bezier(0.2,0.9,0.3,1.3);--touch-min:44px}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;padding:clamp(8px,1.8vw,18px);min-height:100vh;display:flex;justify-content:center;align-items:flex-start;overflow-x:hidden;color:var(--text);background:radial-gradient(circle at 50% 0,#1c2016 0,var(--bg-page) 58%),var(--bg-page);font-family:var(--font-mono)}button,input,select{font:inherit}canvas,img{image-rendering:pixelated;image-rendering:crisp-edges}#gameContainer{width:min(100%,1320px,calc((100svh - 150px) * 4 / 3 + 34px));flex-direction:column;align-items:stretch;padding:clamp(10px,1.5vw,14px);background:var(--bg-panel);border:var(--bw-thick) solid var(--border-strong);border-radius:var(--radius-panel);box-shadow:var(--inset-hi),0 10px 0 rgba(0,0,0,.45),0 0 0 2px #000}#gameContainer,.cabinetTopBar{display:flex;gap:var(--space-3)}.cabinetTopBar{align-items:center;justify-content:space-between;padding:4px 6px var(--space-3);border-bottom:var(--bw) solid var(--border)}.brandLockup{display:inline-flex;align-items:center;gap:var(--space-3);min-width:0}.brandSprite{width:42px;height:42px;flex:none;filter:drop-shadow(0 4px 0 rgba(0,0,0,.42))}.gameHeaderTitle{color:var(--cat-amber);font-family:var(--font-display);font-size:clamp(16px,2.2vw,26px);line-height:1.05;text-transform:uppercase;text-shadow:0 3px 0 var(--cat-amber-deep),0 5px 0 rgba(0,0,0,.48)}.cabinetTelemetry{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-dim);font-family:var(--font-pixel);font-size:9px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.cabinetTelemetry span{padding:5px 8px;background:var(--bg-sunken);border:var(--bw) solid var(--border-faint);border-radius:var(--radius-sm)}.screenFrame{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:var(--bg-field);border:var(--bw-thick) solid #000;border-radius:var(--radius);box-shadow:inset 0 0 24px rgba(0,0,0,.6)}.crtOverlay{position:absolute;inset:0;z-index:5;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 2px,rgba(0,0,0,.1) 2px 3px),radial-gradient(circle at 50% 50%,transparent 58%,rgba(0,0,0,.36) 100%);mix-blend-mode:multiply}#gameContainer.startFlowActive #controls,#gameContainer.startFlowActive #setupPanel,#gameContainer.startFlowActive #touchControls,#gameContainer.startFlowActive canvas{display:none}#gameContainer.startFlowActive.menuPanelOpen #setupPanel{display:block}#gameContainer.startFlowActive.settingsPanelOpen #controls{display:grid}#gameContainer:not(.startFlowActive) #startScreen{display:none}#gameCanvas,#startScreen{position:absolute;inset:0;width:100%;height:100%}#startScreen{display:grid;place-items:center;color:var(--text);background:linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 0) 0 0 /40px 40px,linear-gradient(0deg,rgba(255,255,255,.035) 1px,transparent 0) 0 0 /40px 40px,linear-gradient(135deg,#10140f,#20261c 42%,#12170f)}#startScreen:before{inset:0;background:linear-gradient(180deg,rgba(13,16,9,.18),rgba(13,16,9,.64)),repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 2px,transparent 2px 8px)}#startScreen:after,#startScreen:before{content:"";position:absolute;pointer-events:none}#startScreen:after{inset:auto 0 0;height:18%;background:linear-gradient(90deg,transparent 0 8px,rgba(242,184,75,.26) 8px 16px,transparent 16px 24px) 0 100% /96px 18px repeat-x,linear-gradient(180deg,transparent,rgba(0,0,0,.58))}.startStage{position:relative;z-index:1;width:100%;height:100%;padding:clamp(18px,3.2vw,40px)}.startStage[hidden]{display:none}.menuStage,.studioStage,.titleStage{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.studioStage{gap:var(--space-4)}.studioMark{display:grid;place-items:center;width:clamp(86px,11vw,136px);aspect-ratio:1;color:var(--cat-amber-ink);background:var(--cat-amber);border:5px solid var(--cat-amber-bright);box-shadow:0 0 0 5px #10140f,var(--glow-amber);-webkit-clip-path:polygon(50% 0,92% 24%,92% 76%,50% 100%,8% 76%,8% 24%);clip-path:polygon(50% 0,92% 24%,92% 76%,50% 100%,8% 76%,8% 24%);font-family:var(--font-display);font-size:clamp(24px,4vw,44px);font-weight:900}.menuLogo,.studioName,.titleLogo{margin:0;color:var(--cat-amber);font-family:var(--font-display);line-height:1.05;text-transform:uppercase;text-shadow:0 4px 0 var(--cat-amber-deep),0 6px 0 rgba(0,0,0,.5)}.studioName{max-width:760px;font-size:clamp(18px,3.2vw,32px)}.studioPresents,.titleKicker,.titleTagline{color:var(--cyan);font-family:var(--font-pixel);font-weight:700;text-transform:uppercase}.studioPresents,.titleKicker{font-size:clamp(10px,1.4vw,14px);letter-spacing:var(--tracking-label)}.titleStage{gap:var(--space-5)}.titleTankArt{width:min(26%,250px);min-width:150px;filter:drop-shadow(0 12px 0 rgba(0,0,0,.28)) drop-shadow(0 0 22px rgba(100,211,216,.28))}.titleCopy{display:grid;grid-gap:var(--space-2);gap:var(--space-2);justify-items:center}.titleLogo{font-size:var(--fs-hero)}.titleTagline{margin:0;color:var(--text);font-size:clamp(12px,1.8vw,18px);letter-spacing:var(--tracking-button)}.pressStartButton{min-width:min(100%,260px);animation:pressStartPulse 1.4s var(--ease-out) infinite}@keyframes pressStartPulse{50%{opacity:.58}}.menuStage{justify-content:center}.menuPanelShell{width:min(100%,420px);padding:0;overflow:hidden;background:var(--bg-panel);border:var(--bw) solid var(--border);border-radius:var(--radius);box-shadow:var(--inset-hi),0 4px 0 rgba(0,0,0,.35)}.menuBrand{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-panel-2);border-bottom:var(--bw) solid var(--border)}.menuTankArt{width:58px;flex:none;filter:drop-shadow(0 5px 0 rgba(0,0,0,.3))}.menuLogo{font-size:clamp(18px,3vw,28px)}.startMenu{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4)}.startMenu button{justify-content:flex-start;width:100%;font-size:var(--fs-menu);border-left-width:4px;border-left-color:transparent}.startMenu button.isActive,.startMenu button:hover{border-left-color:var(--cat-amber);background:var(--bg-panel-3);color:var(--text);transform:translateX(3px)}.startMenu button.primaryButton.isActive,.startMenu button.primaryButton:hover{color:var(--cat-amber-ink);background:var(--cat-amber-bright)}.menuKey{margin-left:auto;color:var(--cat-amber);font-family:var(--font-mono);font-size:24px;line-height:1}.primaryButton .menuKey{color:var(--cat-amber-ink)}#gameCanvas{display:block;background-color:#7cb342;touch-action:none}#controls,#setupPanel,#touchControls{width:100%;color:var(--text);background:var(--bg-panel);border:var(--bw) solid var(--border);border-radius:var(--radius);padding:clamp(12px,2vw,16px);box-shadow:var(--inset-hi),0 4px 0 rgba(0,0,0,.35)}#controls{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}#setupPanel h2{margin:0;color:var(--text);font-family:var(--font-pixel);font-size:var(--fs-h1);line-height:1.35;text-transform:uppercase}#setupPanel[data-menu-mode=local] .onlinePanel,#setupPanel[data-menu-mode=local] .singleStartAction,#setupPanel[data-menu-mode=online] .playerOneField,#setupPanel[data-menu-mode=online] .playerTwoField,#setupPanel[data-menu-mode=online] .setupFooter{display:none}#setupPanel[data-menu-mode=online] .setupGrid{grid-template-columns:minmax(260px,1fr)}#gameContainer.startFlowActive.settingsPanelOpen #testControls,#gameContainer.startFlowActive.settingsPanelOpen .matchControls,#gameContainer.startFlowActive.settingsPanelOpen .purchaseArea{display:none}#gameContainer.startFlowActive.settingsPanelOpen .controlGrid{grid-template-columns:minmax(220px,1fr) minmax(320px,2fr)}.controlHeader,.panelHeader{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:var(--bw) solid var(--border)}.panelHeader{margin-bottom:var(--space-4)}.helperText,.panelMeta{color:var(--text-muted);font-family:var(--font-pixel);font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase}.setupGrid{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(160px,1fr) minmax(160px,1fr);grid-gap:var(--space-3);gap:var(--space-3);align-items:end}.mapField{grid-column:1/-1}.fieldControl,.rangeControl{display:grid;grid-gap:6px;gap:6px;text-align:left}.fieldControl>label,.fieldControl>span,.groupTitle,.rangeControl label{color:var(--text-muted);font-family:var(--font-pixel);font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase}.buttonRow,.inlineControl,.setupActions{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.inlineControl select{min-width:190px;flex:1 1 220px}.mapThumbs{display:grid;grid-template-columns:repeat(5,minmax(72px,1fr));grid-gap:var(--space-2);gap:var(--space-2);margin-top:var(--space-2)}.mapThumb{min-height:0;padding:4px;display:grid;grid-gap:5px;gap:5px;justify-items:stretch;color:var(--text-muted);background:var(--bg-sunken);border-color:var(--border);box-shadow:none;font-size:9px;letter-spacing:.04em}.mapThumb.isActive,.mapThumb:hover{color:var(--cat-amber);border-color:var(--cat-amber);box-shadow:var(--glow-amber);filter:none}.mapThumbSwatch{position:relative;min-height:46px;overflow:hidden;background:repeating-conic-gradient(var(--thumb-ground) 0 25%,var(--thumb-tile) 0 50%) 0 0 /16px 16px,var(--thumb-ground);border:1px solid #000}.mapThumbSwatch:after,.mapThumbSwatch:before{content:"";position:absolute;width:7px;height:7px;background:var(--thumb-accent)}.mapThumbSwatch:before{left:28%;top:34%}.mapThumbSwatch:after{right:22%;bottom:24%;background:var(--cat-amber)}.mapThumb[data-map=cactusCanyon]{--thumb-ground:#c2a05a;--thumb-tile:#d8c26f;--thumb-accent:#7d9b3e}.mapThumb[data-map=neonCircuit]{--thumb-ground:#1b1f2e;--thumb-tile:#31495f;--thumb-accent:#ff4fd8}.mapThumb[data-map=floodedGarden]{--thumb-ground:#2f7d6b;--thumb-tile:#2b7bbb;--thumb-accent:#6fa642}.mapThumb[data-map=moonCrater]{--thumb-ground:#6b7080;--thumb-tile:#8a8f98;--thumb-accent:#aeb6c8}.mapThumb[data-map=catnipLabyrinth]{--thumb-ground:#4a5a3a;--thumb-tile:#69a85c;--thumb-accent:#b685e0}input[type=text],select{width:100%;min-height:var(--touch-min);padding:6px var(--space-3);color:var(--text);background-color:var(--bg-sunken);border:var(--bw) solid var(--border);border-radius:var(--radius-sm);box-shadow:inset 0 2px 0 rgba(0,0,0,.3);font-family:var(--font-mono);font-size:var(--fs-body)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:34px;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:right 16px center,right 10px center;background-size:6px 6px,6px 6px;background-repeat:no-repeat}input[type=text]::placeholder{color:var(--text-dim)}#onlineRoomCodeInput{color:var(--cyan);font-size:30px;letter-spacing:.22em;text-align:center;text-transform:uppercase;border-style:dashed;border-color:var(--cyan-deep)}button{min-height:var(--touch-min);padding:var(--space-3) var(--space-4);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);color:var(--text);background:var(--bg-panel-2);border:var(--bw) solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--inset-hi),var(--shadow-block);cursor:pointer;font-family:var(--font-pixel);font-size:var(--fs-button);font-weight:700;letter-spacing:var(--tracking-button);line-height:1.15;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),filter var(--dur-fast) var(--ease-out)}button:hover{filter:brightness(1.12)}button:active{transform:translateY(2px);box-shadow:var(--inset-hi),var(--shadow-block-sm)}button:focus-visible,input:focus-visible,select:focus-visible{outline:none;border-color:var(--cyan);box-shadow:var(--inset-hi),var(--shadow-block-sm),var(--glow-cyan)}.primaryButton{color:var(--cat-amber-ink);background:var(--cat-amber);border-color:var(--cat-amber-bright);box-shadow:var(--inset-hi),0 4px 0 var(--cat-amber-deep),0 6px 0 rgba(0,0,0,.4)}.primaryButton:hover{background:var(--cat-amber-bright)}#muteButton.muted,#restartGameButton,.dangerButton{color:#fff;background:var(--danger);border-color:var(--danger-flash);box-shadow:var(--inset-hi),0 4px 0 var(--danger-deep),0 6px 0 rgba(0,0,0,.4)}#pauseButton.paused{color:var(--cat-amber-ink);background:var(--warning);border-color:var(--cat-amber-bright);box-shadow:var(--inset-hi),0 4px 0 #9c6f1d,0 6px 0 rgba(0,0,0,.4)}#hostOnlineButton:before,#joinOnlineButton:before,#leaveOnlineButton:before,#muteButton:before,#pauseButton:before,#quickMatchButton:before,#randomizeMapButton:before,#respawnAmmoButton:before,#respawnEnemiesButton:before,#respawnHealthButton:before,#restartGameButton:before,#startGameButton:before,#startSinglePlayerButton:before{content:"";width:18px;height:18px;flex:none;background-position:50%;background-repeat:no-repeat;background-size:contain;image-rendering:pixelated}#muteButton:before{background-image:url(/assets/design/icons/soundon.png)}#muteButton.muted:before{background-image:url(/assets/design/icons/soundoff.png)}#pauseButton:before{background-image:url(/assets/design/icons/pause.png)}#pauseButton.paused:before{background-image:url(/assets/design/icons/play.png)}#randomizeMapButton:before,#respawnEnemiesButton:before,#restartGameButton:before{background-image:url(/assets/design/icons/restart.png)}#hostOnlineButton:before,#joinOnlineButton:before,#quickMatchButton:before{background-image:url(/assets/design/icons/online.png)}#leaveOnlineButton:before{background-image:url(/assets/design/icons/close.png)}#startGameButton:before,#startSinglePlayerButton:before{background-image:url(/assets/design/icons/play.png)}#respawnHealthButton:before{background-image:url(/assets/design/icons/heart.png)}#respawnAmmoButton:before{background-image:url(/assets/design/sprites/ammo-pack.png)}.setupFooter{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-4)}.onlinePanel{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(140px,.55fr) minmax(320px,1.4fr);grid-gap:var(--space-3);gap:var(--space-3);align-items:end;margin-top:var(--space-4);padding-top:var(--space-4);border-top:var(--bw) solid var(--border)}.onlineActions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.onlineActions button{flex:1 1 120px}.hostedRoomCodePanel{grid-column:1/-1;display:flex;align-items:center;gap:var(--space-3);width:-moz-fit-content;width:fit-content;max-width:100%;padding:var(--space-2) var(--space-3);color:var(--text);background:var(--bg-sunken);border:var(--bw) solid var(--cyan-deep);border-radius:var(--radius-sm);box-shadow:var(--glow-cyan)}.hostedRoomCodePanel[hidden]{display:none}.hostedRoomCodeLabel{color:var(--text-muted);font-family:var(--font-pixel);font-size:var(--fs-small);text-transform:uppercase}#hostedRoomCode{color:var(--cyan);font-family:var(--font-pixel);font-size:30px;line-height:1}#copyRoomCodeButton{min-height:36px}#copyRoomCodeButton,.onlineStatus{padding:var(--space-2) var(--space-3)}.onlineStatus{grid-column:1/-1;min-height:var(--touch-min);display:inline-flex;align-items:center;gap:var(--space-2);width:-moz-fit-content;width:fit-content;max-width:100%;color:var(--text-muted);background:var(--bg-sunken);border:var(--bw) solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-pixel);font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase}.onlineStatus:before{content:"";width:8px;height:8px;flex:none;border-radius:var(--radius-pill);background:var(--warning);box-shadow:0 0 8px var(--warning);animation:onlineBlink .8s steps(2) infinite}@keyframes onlineBlink{50%{opacity:.25}}.controlTitle{color:var(--cat-amber);font-family:var(--font-pixel);font-size:16px;font-weight:700;text-transform:uppercase}.controlGrid{display:grid;grid-template-columns:1fr 1fr 2fr;grid-gap:var(--space-4);gap:var(--space-4)}.controlGroup{display:grid;align-content:start;grid-gap:10px;gap:10px;padding-top:10px;border-top:var(--bw) solid var(--border)}.toggleControl{display:inline-flex;align-items:center;gap:10px;min-height:36px;color:var(--text);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-family:var(--font-mono);font-size:var(--fs-body)}.toggleControl input{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;width:56px;height:30px;flex:none;margin:0;cursor:pointer;background:var(--bg-sunken);border:var(--bw) solid var(--border);border-radius:var(--radius-pill);box-shadow:inset 0 2px 0 rgba(0,0,0,.35)}.toggleControl input:after{content:"";position:absolute;top:2px;left:2px;width:22px;height:22px;background:var(--text-muted);border-radius:var(--radius-sm);transition:transform var(--dur) var(--ease-pop),background var(--dur)}.toggleControl input:checked{background:var(--terrain-deep);border-color:var(--terrain)}.toggleControl input:checked:after{transform:translateX(26px);background:var(--terrain-bright)}#enemyControls{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));grid-gap:10px;gap:10px}.rangeControl label{display:flex;justify-content:space-between;gap:10px}.rangeControl span[id$=Value]{color:var(--cyan);font-family:var(--font-mono);font-size:18px}.rangeControl input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:14px;cursor:pointer;background:var(--bg-sunken);border:var(--bw) solid var(--border);border-radius:var(--radius-sm);box-shadow:inset 0 2px 0 rgba(0,0,0,.35)}.rangeControl input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:26px;margin-top:-2px;background:var(--cat-amber);border:var(--bw) solid var(--cat-amber-bright);border-radius:var(--radius-sm);box-shadow:0 2px 0 var(--cat-amber-deep)}.rangeControl input::-moz-range-thumb{width:16px;height:26px;background:var(--cat-amber);border:var(--bw) solid var(--cat-amber-bright);border-radius:var(--radius-sm);box-shadow:0 2px 0 var(--cat-amber-deep)}.purchaseArea{display:flex;justify-content:center;padding-top:10px;border-top:var(--bw) solid var(--border)}#touchControls{display:none;grid-template-columns:1fr auto;align-items:center;gap:var(--space-4);touch-action:none}.touchPad{display:grid;grid-template-columns:repeat(3,56px);grid-template-rows:repeat(3,56px);grid-template-areas:". up ." "left down right" ". . .";grid-gap:var(--space-2);gap:var(--space-2)}.touchMoveButton{width:56px;height:56px;padding:0;overflow:hidden;color:transparent;font-size:0}.touchMoveButton:before{content:"";width:24px;height:24px;background:url(/assets/design/icons/dpad.png) 50%/contain no-repeat;image-rendering:pixelated}#touchUpButton{grid-area:up}#touchLeftButton{grid-area:left}#touchDownButton{grid-area:down}#touchRightButton{grid-area:right}#touchLeftButton:before{transform:rotate(-90deg)}#touchDownButton:before{transform:rotate(180deg)}#touchRightButton:before{transform:rotate(90deg)}.touchFire{width:84px;min-width:84px;height:84px;border-radius:var(--radius-pill);color:#fff;background:var(--danger);border-color:var(--danger-flash);box-shadow:var(--inset-hi),0 5px 0 var(--danger-deep),0 7px 0 rgba(0,0,0,.45)}.touchFire:before{content:"";width:24px;height:24px;background:url(/assets/design/icons/fire.png) 50%/contain no-repeat;image-rendering:pixelated}@media (max-width:900px){body{padding:8px}#gameContainer{gap:10px;padding:10px}.cabinetTopBar{align-items:flex-start}.cabinetTelemetry{display:none}.brandSprite{width:34px;height:34px}.screenFrame{border-width:var(--bw)}.startStage{padding:22px 14px}.titleTankArt{min-width:120px}.menuBrand{flex-direction:column;gap:var(--space-2)}.menuTankArt{width:48px}#gameContainer.startFlowActive.settingsPanelOpen .controlGrid{grid-template-columns:1fr}#touchControls{display:grid}#enemyControls,.controlGrid,.onlinePanel,.setupGrid{grid-template-columns:1fr}.mapThumbs{grid-template-columns:repeat(2,minmax(120px,1fr))}.controlHeader,.panelHeader,.setupFooter{align-items:stretch;flex-direction:column}.buttonRow button,.inlineControl button,.setupActions button{flex:1 1 150px}}@media (max-width:520px){#gameContainer{border-width:var(--bw);border-radius:var(--radius);box-shadow:var(--inset-hi),0 6px 0 rgba(0,0,0,.45),0 0 0 2px #000}.gameHeaderTitle{font-size:14px}.titleLogo{font-size:clamp(24px,8vw,34px)}.startMenu button,.titleTagline{font-size:13px}.pressStartButton{min-width:220px}#controls,#setupPanel,#touchControls{padding:10px}.touchPad{grid-template-columns:repeat(3,48px);grid-template-rows:repeat(3,48px)}.touchMoveButton{width:48px;height:48px}.touchFire{width:76px;min-width:76px;height:76px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}