:root{
  color-scheme:dark;
  --bg:#0b0f13;--panel:#141b21;--panel-2:#1b242c;--line:#2a3741;--text:#f3f6f8;--muted:#91a0aa;--accent:#ffb000;--danger:#ef3340;--cyan:#54d8ff;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:radial-gradient(circle at top,#17212a 0,#0b0f13 55%,#070a0d 100%);font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text)}
body{padding:18px}
button,select,input{font:inherit;color:inherit}
button:focus-visible,select:focus-visible,input:focus-visible,.canvas-wrap:focus-visible{outline:3px solid #ffc13d;outline-offset:2px}
.app-shell{width:min(100%,1040px);margin:0 auto;display:grid;gap:14px}
.game-card{background:#0d1216;border:1px solid #34434f;border-radius:22px;overflow:hidden;box-shadow:0 22px 70px rgba(0,0,0,.42)}
.hud{display:flex;align-items:center;gap:12px;padding:10px 13px;background:linear-gradient(#202a32,#141b21);border-bottom:1px solid #34434f;min-height:66px}
.hud-item{display:grid;gap:2px;min-width:55px}.hud-label{font-size:9px;letter-spacing:.14em;color:#8fa0ac;font-weight:800}.hud-item strong{font-size:16px;letter-spacing:.04em;font-variant-numeric:tabular-nums}.status-item{min-width:145px}.status-item strong{font-size:10px;color:#ffca42;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weapon-item strong{color:#8fe6ff}.combo-item strong{color:#ffd65e}
.hud-actions{margin-left:auto;display:flex;gap:7px}.mini-btn{width:40px;height:40px;border-radius:10px;border:1px solid #455763;background:#26323b;cursor:pointer;font-weight:900}.mini-btn:active{transform:translateY(1px)}
.canvas-wrap{position:relative;width:100%;aspect-ratio:1/1;background:#121212;outline:none;overflow:hidden}canvas{display:block;width:100%;height:100%;image-rendering:pixelated;touch-action:none;background:#171717}
.overlay{position:absolute;inset:0;display:grid;place-items:center;padding:18px;background:rgba(4,7,9,.80);backdrop-filter:blur(4px);overflow:auto}.overlay.hidden{display:none}.overlay-panel{width:min(95%,620px);text-align:center;background:linear-gradient(180deg,rgba(29,39,47,.99),rgba(16,22,27,.99));border:1px solid #45535d;border-radius:18px;padding:23px 22px;box-shadow:0 20px 45px rgba(0,0,0,.4)}
.eyebrow{font-size:10px;letter-spacing:.16em;color:#ffbf2f;font-weight:900;margin-bottom:7px}.overlay h1{margin:0;font-size:clamp(28px,6vw,46px);letter-spacing:.04em}.overlay p{margin:9px auto 15px;max-width:520px;color:#b5c0c8;line-height:1.44;font-size:14px}
.stage-picker{display:grid;gap:8px;text-align:left;margin:0 auto 14px;max-width:540px}.stage-picker label,.upgrade-head,.panel-caption,.settings-head{font-size:10px;letter-spacing:.13em;color:#96a5af;font-weight:900}.stage-picker select{width:100%;min-height:42px;border:1px solid #41515c;background:#111820;border-radius:10px;padding:0 12px}.meta-summary{font-size:11px;color:#8fa0aa;line-height:1.35}.panel-caption{margin-top:2px}.loadout-caption{margin-top:5px}
.mission-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:5px}.mission-grid button{min-width:0;height:39px;border:1px solid #3e4c56;border-radius:8px;background:#182128;color:#b8c3ca;font-weight:900;font-size:11px;cursor:pointer;position:relative;padding:0}.mission-grid button .star-line{display:block;font-size:7px;color:#ffca42;letter-spacing:-1px;line-height:8px}.mission-grid button.boss{border-color:#75512c;color:#ffd18c}.mission-grid button.selected{background:#344552;border-color:#7bcce4;color:white;box-shadow:inset 0 0 0 1px rgba(123,204,228,.35)}.mission-grid button:disabled{opacity:.35;cursor:not-allowed}
.weapon-picker,.special-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.weapon-picker button,.special-picker button{min-height:58px;border:1px solid #42535e;background:linear-gradient(#25313a,#182128);border-radius:10px;cursor:pointer;padding:8px}.weapon-picker button strong,.special-picker button strong{display:block;font-size:12px}.weapon-picker button small,.special-picker button small{display:block;margin-top:3px;color:#91a0aa;font-size:9px;line-height:1.2}.weapon-picker button.selected,.special-picker button.selected{border-color:#64d8ff;background:linear-gradient(#28434f,#19303a);box-shadow:inset 0 0 0 1px rgba(100,216,255,.25)}.special-picker button[data-special=laser].selected{border-color:#80ffad;background:linear-gradient(#234a38,#173027)}.special-picker button[data-special=mine].selected{border-color:#ffbd65;background:linear-gradient(#4a3823,#302519)}.loadout-note{font-size:10px;color:#9dabb4;background:#10171c;border-radius:8px;padding:8px 10px}.loadout-note kbd{background:#29353e;border:1px solid #44545f;border-radius:4px;padding:1px 5px}
.primary-btn,.secondary-btn{border:0;border-radius:12px;min-height:48px;padding:0 26px;font-weight:1000;letter-spacing:.04em;cursor:pointer}.primary-btn{background:linear-gradient(#ffc52f,#f28c00);color:#171009;box-shadow:inset 0 1px rgba(255,255,255,.6),0 8px 24px rgba(255,158,0,.18)}.secondary-btn{background:#2b3942;border:1px solid #455761;margin-top:10px}.primary-btn:disabled{opacity:.55;cursor:wait}.menu-links{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:8px}.compact-action{margin-top:0;min-height:40px;padding:0 14px;font-size:11px}.secondary-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border-radius:10px;border:1px solid #455761;background:#202b33;color:#f2f5f7;text-decoration:none;font-weight:900;font-size:11px;letter-spacing:.04em}.secondary-link:hover{background:#2b3942}.compact-action:disabled{opacity:.42;cursor:not-allowed}
.hidden{display:none!important}.result-panel{border:1px solid #34434f;background:#0f151a;border-radius:13px;padding:13px;margin:0 0 12px}.result-stars{font-size:31px;letter-spacing:.08em;color:#ffc230;text-shadow:0 2px 12px rgba(255,188,31,.25)}.result-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:8px}.result-stats span{font-size:9px;color:#8e9aa3;background:#172027;border-radius:8px;padding:8px 5px}.result-stats strong{display:block;font-size:13px;color:#f4f7f9;margin-top:3px}
.upgrade-panel{border:1px solid #3c4953;background:#11181d;border-radius:13px;padding:12px;margin-bottom:14px}.upgrade-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.upgrade-head strong{font-size:16px;color:#ffc230}.upgrade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.upgrade-grid button{min-height:70px;border:1px solid #41515d;background:linear-gradient(#26323b,#1a232a);border-radius:10px;cursor:pointer;display:grid;gap:2px;place-items:center}.upgrade-grid button:disabled{opacity:.45;cursor:not-allowed}.upgrade-grid button span{font-size:10px;font-weight:900;letter-spacing:.08em}.upgrade-grid button strong{font-size:13px;color:#ffd45a}.upgrade-grid button small{font-size:9px;color:#9ca8b0}
.settings-panel{max-width:420px;margin:0 auto 15px;text-align:left;border:1px solid #3f4d57;background:#10171c;border-radius:13px;padding:13px}.settings-head{text-align:center;margin-bottom:7px;color:#ffc13d}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:45px;border-bottom:1px solid #26343d;font-size:13px}.setting-row:last-of-type{border-bottom:0}.setting-row input{width:22px;height:22px;accent-color:#ffae19}
.mobile-controls{display:none;align-items:center;justify-content:space-between;gap:14px;padding:13px 16px 17px;background:#11181d;border-top:1px solid #2a3741;user-select:none}.dpad{display:grid;grid-template-columns:54px 54px 54px;grid-template-rows:54px 54px;gap:7px;grid-template-areas:". up ." "left down right"}.dpad button,.fire-btn,.special-btn{border:1px solid #485965;background:linear-gradient(#303c45,#202930);box-shadow:inset 0 1px rgba(255,255,255,.08);touch-action:none}.dpad button{border-radius:12px;font-size:20px;font-weight:900}.dpad button[data-dir=up]{grid-area:up}.dpad button[data-dir=left]{grid-area:left}.dpad button[data-dir=down]{grid-area:down}.dpad button[data-dir=right]{grid-area:right}.dpad button.pressed,.fire-btn.pressed,.special-btn.pressed{background:#53636e;transform:translateY(1px)}
.mobile-actions{display:flex;align-items:center;gap:10px}.fire-stack{display:grid;place-items:center;gap:6px}.fire-stack span{font-size:8px;letter-spacing:.12em;color:#82929d;font-weight:900}.fire-btn{width:98px;height:98px;border-radius:50%;background:radial-gradient(circle at 40% 32%,#ff675a,#d51c27 58%,#99131c);border:5px solid #3a444a;font-size:14px;font-weight:1000;letter-spacing:.06em}.special-btn{width:74px;height:58px;border-radius:13px;background:linear-gradient(#6a4d20,#332514);border-color:#8a6631;color:#ffe4a1;font-size:10px;font-weight:900}.special-btn strong{display:block;font-size:17px}.special-btn:disabled{opacity:.38}
.prototype-note{color:#aeb9c0;background:#12181d;border:1px solid #26333d;border-radius:14px;padding:12px 15px;line-height:1.5;font-size:13px}.prototype-note strong{color:#f4f7f9}
@media (pointer:coarse),(max-width:820px){body{padding:8px}.game-card{border-radius:16px}.hud{gap:6px;padding:7px 8px;min-height:56px}.hud-item{min-width:0;flex:1}.hud-item strong{font-size:12px}.hud-label{font-size:6.5px}.status-item{display:none}.hud-actions{gap:4px}.mini-btn{width:34px;height:34px}.mobile-controls{display:flex}.overlay{padding:10px}.overlay-panel{padding:18px 14px}.mission-grid{grid-template-columns:repeat(5,1fr)}.mission-grid button{height:36px}}
@media (max-width:590px){.compact-hide,.weapon-item{display:none}.result-stats{grid-template-columns:repeat(2,1fr)}.upgrade-grid{grid-template-columns:1fr}.upgrade-grid button{min-height:52px;grid-template-columns:1fr auto;justify-items:start;padding:7px 11px}.upgrade-grid button small{grid-column:1/-1}.weapon-picker,.special-picker{grid-template-columns:1fr}.weapon-picker button,.special-picker button{min-height:48px}.mobile-controls{padding:9px 10px 13px}.dpad{grid-template-columns:46px 46px 46px;grid-template-rows:46px 46px;gap:5px}.mobile-actions{gap:6px}.fire-btn{width:84px;height:84px}.special-btn{width:62px;height:54px}.prototype-note{font-size:12px}}

/* v0.6 local co-op */
.coop-hud{min-width:82px}.coop-hud strong{color:#64d8ff}.mode-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.mode-picker button{min-height:58px;border:1px solid #42535e;background:linear-gradient(#25313a,#182128);border-radius:10px;cursor:pointer;padding:8px;color:inherit}.mode-picker button strong{display:block;font-size:12px}.mode-picker button small{display:block;margin-top:3px;color:#91a0aa;font-size:9px;line-height:1.25}.mode-picker button.selected{border-color:#ffd45a;background:linear-gradient(#4a3a20,#2d2618);box-shadow:inset 0 0 0 1px rgba(255,212,90,.24)}.mode-picker button[data-mode=coop].selected{border-color:#64d8ff;background:linear-gradient(#223f4a,#182e37);box-shadow:inset 0 0 0 1px rgba(100,216,255,.28)}
.mobile-player{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;flex:1}.mobile-player-label{align-self:stretch;display:grid;place-items:center;min-width:26px;border-radius:8px;background:#193f1e;color:#7dff82;font-size:10px;font-weight:1000;letter-spacing:.08em}.p2-label{background:#17384b;color:#77ddff}.p2-fire{background:radial-gradient(circle at 40% 32%,#63dcff,#168dcc 58%,#0b5c88);border-color:#365a6c}.p2-special{background:linear-gradient(#24506b,#162f40);border-color:#376d8c;color:#a9eaff}.mobile-controls.coop-mobile{gap:10px}.mobile-controls.coop-mobile .mobile-player{padding:5px;border:1px solid #273741;border-radius:12px;background:#0d1419}.mobile-controls.coop-mobile .dpad{grid-template-columns:44px 44px 44px;grid-template-rows:44px 44px;gap:4px}.mobile-controls.coop-mobile .fire-btn{width:76px;height:76px;font-size:11px}.mobile-controls.coop-mobile .special-btn{width:58px;height:50px;font-size:9px}.mobile-controls.coop-mobile .special-btn strong{font-size:14px}
@media (max-width:700px){.mode-picker{grid-template-columns:1fr}.coop-hud{display:grid!important}.mobile-controls.coop-mobile{align-items:stretch;flex-direction:column}.mobile-controls.coop-mobile .mobile-player{width:100%}.mobile-controls.coop-mobile .p2-controls{border-color:#264a5b}.mobile-controls.coop-mobile .mobile-player-label{min-width:24px}}
.coop-hud.hidden{display:none!important}.fire-btn:disabled,.special-btn:disabled{opacity:.38;filter:saturate(.55);cursor:not-allowed}
.mobile-controls:not(.coop-mobile) .mobile-player-label{display:none}
@media (max-width:590px){
  .mobile-controls.coop-mobile .dpad{grid-template-columns:36px 36px 36px;grid-template-rows:36px 36px;gap:3px}
  .mobile-controls.coop-mobile .dpad button{font-size:15px;border-radius:9px}
  .mobile-controls.coop-mobile .fire-btn{width:62px;height:62px;font-size:9px;border-width:4px}
  .mobile-controls.coop-mobile .special-btn{width:50px;height:44px;font-size:8px}
  .mobile-controls.coop-mobile .mobile-actions{gap:4px}
  .mobile-controls.coop-mobile .mobile-player{gap:5px;padding:4px}
  .mobile-controls.coop-mobile .mobile-player-label{min-width:20px;font-size:8px}
  .mobile-controls.coop-mobile .fire-stack span{font-size:6px}
}
/* v0.7 arena launcher */
.arena-mode-link{min-height:58px;border:1px solid #8a6631;background:linear-gradient(#5a421b,#2b2417);border-radius:10px;padding:8px;color:#fff;text-decoration:none;display:grid;place-items:center;text-align:center}.arena-mode-link strong{display:block;font-size:12px;color:#ffd45a}.arena-mode-link small{display:block;margin-top:3px;color:#c5b58b;font-size:9px;line-height:1.25}.arena-launch{border-color:#8a6631;background:linear-gradient(#533e1d,#2a2216);color:#ffd86a}

/* v0.15 visual polish */
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,#000,transparent 78%)}
.game-card{border-color:#3a4c57;box-shadow:0 28px 90px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.03)}
.overlay-panel{background:linear-gradient(180deg,rgba(21,31,38,.97),rgba(10,16,21,.98));border-color:#3c515d;box-shadow:0 24px 70px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.035)}
.primary-btn,.arena-mode-link,.weapon-picker button,.special-picker button,.mode-picker button{transition:transform .16s,filter .16s,border-color .16s}.primary-btn:hover,.arena-mode-link:hover,.weapon-picker button:hover,.special-picker button:hover,.mode-picker button:hover{transform:translateY(-1px);filter:brightness(1.06)}

/* TankSavasi.com v0.16.4 site navigation */
.game-site-nav{width:min(100%,1180px);margin:0 auto 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid #33434d;border-radius:12px;background:linear-gradient(180deg,#151e24,#0d1419);font-size:10px;font-weight:900;letter-spacing:.08em}.game-site-nav a{color:#eaf2f5;text-decoration:none}.game-site-nav a:first-child{color:#ffd768}.game-site-nav span{color:#83939c}@media(max-width:620px){.game-site-nav{font-size:8px}.game-site-nav span{display:none}}
