:root{--arena-scale:1.285047;--ink:#232421;--red:#c73136;--muted:#86867f;--line:#d9d9d2;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}*{box-sizing:border-box}body{margin:0;height:100dvh;display:flex;flex-direction:column;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:1px solid var(--ink);background:white;color:var(--ink)}button:hover,a:hover{color:var(--red)}button:focus-visible,a:focus-visible{outline:2px solid var(--red);outline-offset:4px}header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;gap:20px;font-size:13px}.readout{display:flex;gap:30px;font:12px ui-monospace,monospace;letter-spacing:2px}#lives{color:var(--red)}.portfolio-return{font-size:11px;color:var(--muted);border-bottom:2px solid transparent;padding:6px 0}main{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:0 30px}.arena{position:relative;aspect-ratio:var(--arena-scale);width:min(100%,calc((100dvh - 152px)*var(--arena-scale)));max-height:100%}canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}#overlay{position:absolute;inset:0;display:grid;place-items:center;background:#ffffffbb;backdrop-filter:blur(2px)}[hidden]{display:none!important}.panel{background:white;border:1px solid var(--ink);padding:36px 48px;width:min(380px,90%);text-align:center}.eyebrow{font:10px ui-monospace,monospace;color:var(--red);letter-spacing:2px}h1{font-weight:400;font-size:48px;letter-spacing:-2px;margin:16px 0}p{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 26px}.panel button{display:block;width:100%;padding:14px;background:var(--ink);color:white;font-size:13px}.panel button:hover{background:var(--red);border-color:var(--red)}.panel a{display:inline-block;font-size:11px;margin-top:18px;color:var(--muted)}footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 32px;font:10px ui-monospace,monospace;color:var(--muted)}.instructions{display:flex;gap:22px}.instructions b{font-weight:400;color:var(--ink)}#pause{border:0;padding:8px;font:inherit}#pause b{margin-left:10px;font-weight:400}.ammo{letter-spacing:5px;white-space:nowrap;color:var(--ink)}.touch-controls{display:none;justify-content:space-around;align-items:center;padding:12px 16px 24px;user-select:none}.pad{border:1px solid var(--line);border-radius:50%;width:90px;height:90px;position:relative;touch-action:none;display:grid;place-items:center}.pad i{border:1px solid var(--ink);width:32px;height:32px;border-radius:50%;pointer-events:none}.pad span{position:absolute;bottom:-16px;font:8px ui-monospace,monospace;color:var(--muted)}#mine{padding:14px;font:10px ui-monospace,monospace;touch-action:none}
@media(pointer:coarse){.touch-controls{display:flex}.instructions{display:none}.arena{width:min(100%,calc((100dvh - 280px)*var(--arena-scale)))}}
@media(max-width:650px){header{padding:16px;gap:12px}.portfolio-return{font-size:9px;max-width:120px;text-align:right}.readout{gap:10px;font-size:10px;letter-spacing:1px}main{padding:0 8px}footer{padding:12px 16px;gap:10px}.instructions{gap:10px;font-size:8px}.ammo{letter-spacing:2px}.panel{padding:24px}h1{font-size:36px}.panel p{margin-bottom:16px;font-size:12px}}

.audio-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}#music{font:inherit;padding:8px 10px;white-space:nowrap}#music[aria-pressed="true"]{border-color:var(--red);color:var(--red)}@media(max-width:650px){footer{flex-wrap:wrap}.instructions{flex-wrap:wrap}.audio-actions{margin-left:auto;gap:4px}}

#effects-button{font:inherit;padding:8px;white-space:nowrap}#effects-button[aria-pressed="true"]{color:var(--red);border-color:var(--red)}
.panel{max-height:100%;overflow:auto}.panel .quiet{background:white;color:var(--ink);border:0;padding:10px;font-size:11px;margin-top:12px}#tank-score-form{margin:0 0 18px;font:10px ui-monospace,monospace;text-align:left}#tank-score-form label{display:block;margin-bottom:8px}.score-entry{display:flex;gap:8px}.score-entry input{width:85px;min-width:0;border:1px solid var(--line);padding:10px;font:18px ui-monospace,monospace;letter-spacing:3px;text-transform:uppercase}.panel .score-entry button{width:auto;flex:1;padding:10px;font-size:11px}#tank-score-status{font-size:11px;margin:10px 0}#tank-score-status:empty{display:none}#tank-scores-dialog{width:min(500px,90vw);max-height:85dvh;overflow:auto;border:1px solid var(--ink);padding:30px;color:var(--ink);background:white}#tank-scores-dialog::backdrop{background:#ffffffbb;backdrop-filter:blur(4px)}#tank-scores-dialog h2{font-size:36px;font-weight:400;letter-spacing:-1px;margin:18px 0}#close-tank-scores{position:absolute;right:12px;top:10px;border:0;font-size:24px}#tank-highscores{list-style:none;padding:0;margin:20px 0}#tank-highscores li{display:grid;grid-template-columns:25px 45px 1fr 85px;gap:10px;padding:12px 0;border-top:1px solid var(--line);font:12px ui-monospace,monospace}#tank-highscores li span:nth-child(3){text-align:right;color:var(--red)}#tank-highscores li span:last-child{text-align:right;font-size:10px}#tank-scores-dialog p{font-size:11px;margin-bottom:0}

.audio-volume-tip{position:fixed;z-index:1000;transform:translateX(-50%);padding:6px 9px;background:#232421;color:white;border-radius:4px;font:11px ui-monospace,monospace;pointer-events:none}.audio-volume-tip[hidden]{display:none}

.launch-screen .panel{width:min(420px,100%);padding:32px}.launch-screen h1{font:24px Arial,sans-serif;letter-spacing:0;margin:0 0 26px}.launch-screen #action{width:100%;font:13px Arial,sans-serif}

.portfolio-return{position:relative}
.portfolio-return::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:#c73136;transform:scaleX(1);transform-origin:center;opacity:0}
.portfolio-return.holding::after{opacity:1;animation:return-countdown var(--return-hold-duration,1000ms) linear forwards}
@keyframes return-countdown{from{transform:scaleX(1)}to{transform:scaleX(0)}}

.pause-mode .panel{width:min(360px,90%);padding:30px}.pause-mode h1{font-size:28px;letter-spacing:-.8px;margin:0 0 24px}.pause-mode #resume{font:12px ui-monospace,monospace;padding:16px;margin:0}.pause-mode #restart-run,.pause-mode #highscores-button,.pause-mode #exit-game{display:block;width:84%;margin:9px auto 0;padding:11px 14px;border:1px solid var(--ink);background:var(--ink);color:white;font:11px ui-monospace,monospace;text-align:center}.pause-mode #restart-run{margin-top:16px}.pause-mode #exit-game:hover{background:var(--red);border-color:var(--red)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
