*,*:before,*:after{box-sizing:border-box}:root{--bg: #121928;--bg-2: #172238;--panel: #f7f0d6;--panel-2: #ede1b8;--ink: #222733;--text: #eef2ff;--muted: #8fa1bd;--frame: #263447;--frame-light: #3f5d7d;--red: #e04040;--red-dark: #8c1818;--blue: #2a6db0;--yellow: #f8d030;--green: #49a65a;--cream: #f8f2d8;--focus: #98d8d8;--surface: rgba(255,255,255,.56);--surface-strong: rgba(255,255,255,.78);--pxfont: "Press Start 2P", monospace;--uifont: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}html,body{height:100%;min-height:100%;margin:0;overflow:hidden}body{color:var(--text);font-family:var(--uifont);background:linear-gradient(135deg,rgba(255,255,255,.03) 25%,transparent 25%) 0 0 / 22px 22px,linear-gradient(225deg,rgba(255,255,255,.025) 25%,transparent 25%) 0 0 / 22px 22px,linear-gradient(180deg,#0f1726 0%,var(--bg) 48%,#0d1421 100%);-webkit-font-smoothing:antialiased}button{font:inherit}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button,.btn{-webkit-tap-highlight-color:transparent}#app,#app *{touch-action:manipulation}#app{position:relative;height:100dvh;min-height:0;display:flex;flex-direction:column;gap:8px;padding:8px;overflow:hidden}.topbar{width:min(100%,1420px);margin:0 auto;flex:0 0 auto;display:grid;grid-template-columns:minmax(158px,auto) minmax(310px,.9fr) minmax(330px,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border:3px solid #111822;border-radius:8px;background:linear-gradient(180deg,#22334b,#182338);box-shadow:inset 0 0 0 2px #ffffff12,0 8px #00000042}.brand-cluster{min-width:0;display:grid;gap:4px}.brand{display:inline-flex;align-items:center;gap:10px;color:#fc0;text-decoration:none;font-family:var(--pxfont);font-size:.78rem;letter-spacing:1px;text-shadow:2px 2px 0 #0066cc,3px 3px 0 rgba(0,0,0,.7);white-space:nowrap}.run-label{color:#b9c8dd;font-size:.58rem;font-weight:900;text-transform:uppercase}.brand span span{color:#ff6060}.brand-ball{width:26px;height:26px;flex:0 0 auto;border:3px solid #10131a;border-radius:50%;background:radial-gradient(circle at 50% 50%,#fff 0 5px,#10131a 6px 8px,transparent 9px),linear-gradient(180deg,var(--red) 0 49%,#10131a 50% 54%,#f8f8f8 55% 100%);box-shadow:inset -3px -4px #0000002e}.mission-toolbar{min-width:0;display:grid;grid-template-columns:minmax(104px,.9fr) minmax(96px,.75fr) auto minmax(138px,1fr);gap:6px;align-items:stretch;padding:5px;border:2px solid rgba(255,255,255,.12);border-radius:8px;background:#090e1757}.mission-control{min-width:0;display:grid;gap:2px}.mission-control span{color:#b9c8dd;font-size:.48rem;font-weight:900;text-transform:uppercase}.mission-control select{width:100%;min-height:32px;padding:5px 7px;color:#293241;border:2px solid #111822;border-radius:7px;background:linear-gradient(180deg,var(--cream),#efe3bd);font-weight:900}.mission-toolbar .mission-summary{min-width:0;align-self:center;display:grid;gap:2px;padding:3px 4px;color:#d8e4f5;font-size:.55rem;line-height:1.25}.mission-toolbar .mission-summary span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mission-toolbar .mission-summary strong{color:#fff0a8}.hud{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.hud-chip{min-width:0;display:grid;grid-template-columns:26px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;row-gap:3px;align-items:center;padding:6px 8px;color:var(--ink);background:linear-gradient(180deg,var(--cream),#efe3bd);border:2px solid #121821;border-radius:8px;box-shadow:inset 0 0 0 2px #ffffff8c}.hud-icon{grid-row:1 / span 2;width:26px;height:26px;display:grid;place-items:center;color:#fff;border:2px solid rgba(0,0,0,.28);border-radius:50%;background:#2a6db0;font-family:var(--pxfont);font-size:.36rem;line-height:1;text-shadow:1px 1px 0 rgba(0,0,0,.32)}.hud-money .hud-icon{background:#b87d1b}.hud-lab .hud-icon{background:#d83030}.hud-wave .hud-icon{background:#3f5d7d}.hud-caught .hud-icon{background:#49a65a}.hud-chip strong{font-family:var(--pxfont);font-size:.56rem;line-height:1;color:#1f2937;overflow:hidden;text-overflow:ellipsis}.hud-chip small{color:#536070;font-weight:800;font-size:.56rem;text-transform:uppercase;letter-spacing:.4px}.controls{display:flex;align-items:center;justify-content:flex-end;gap:6px}.btn,.icon-btn{border:3px solid #111822;border-radius:8px;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 4px #00000052,inset 0 0 0 2px #ffffff73;transition:transform .08s ease,box-shadow .08s ease,filter .12s ease}.btn{min-height:38px;padding:8px 12px;background:linear-gradient(180deg,#ffeab8,#f0d080);font-family:var(--pxfont);font-size:.58rem;line-height:1.3}.btn-primary{color:#fff;background:linear-gradient(180deg,#ff7373,#d83030);text-shadow:1px 1px 0 rgba(0,0,0,.35)}.icon-btn{width:38px;height:38px;display:inline-grid;place-items:center;background:linear-gradient(180deg,#f8f2d8,#e8d99f);font-family:var(--pxfont);font-size:.58rem}.icon-btn.danger{color:#fff;background:linear-gradient(180deg,#6d7788,#3b4658)}.btn:disabled,.icon-btn:disabled{cursor:default;opacity:.58;filter:grayscale(.4)}.btn:not(:disabled):hover,.icon-btn:not(:disabled):hover{filter:brightness(1.07);transform:translateY(-1px);box-shadow:0 5px #0000005c,inset 0 0 0 2px #ffffff8c}.btn:not(:disabled):active,.icon-btn:not(:disabled):active{transform:translateY(2px);box-shadow:0 2px #00000057,inset 0 0 0 2px #ffffff73}.game-shell{width:min(100%,1420px);margin:0 auto;flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(304px,334px);gap:8px;align-items:stretch;overflow:hidden}.playfield{position:relative;min-width:0;min-height:0;height:100%;display:grid;border:4px solid #111822;border-radius:8px;background:#000;overflow:hidden;box-shadow:inset 0 0 0 2px #3b5572,0 10px #00000047}#game-canvas{display:block;width:100%;height:100%;min-height:0;object-fit:contain;background:#8ccf6b;image-rendering:pixelated}.match-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:18px;background:#090e17b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.match-overlay.hidden{display:none}.modal-panel{width:min(100%,520px);color:var(--ink);text-align:left;padding:22px;border:4px solid #111822;border-radius:8px;background:linear-gradient(180deg,var(--cream),#eadcad);box-shadow:inset 0 0 0 3px #2a6db0,6px 8px #00000059}.modal-panel h1{margin:0 0 12px;color:#b02828;font-family:var(--pxfont);font-size:.85rem;line-height:1.6}.overlay-copy{display:grid;gap:10px;margin:0 0 18px}.overlay-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.overlay-metric{padding:9px;border:1px solid rgba(32,38,52,.22);border-radius:7px;background:#ffffff8f}.overlay-metric small{display:block;margin-bottom:5px;color:#637083;font-weight:900;text-transform:uppercase}.overlay-metric strong{font-family:var(--pxfont);font-size:.52rem}.overlay-copy p{margin:0 0 18px;color:#3e4857;font-size:.76rem;font-weight:800;line-height:1.55}.overlay-actions{display:flex;justify-content:flex-end}.placement-hint,.tutorial-card{position:absolute;z-index:8;color:var(--ink);border:3px solid #111822;border-radius:8px;background:linear-gradient(180deg,var(--cream),#eadcad);box-shadow:inset 0 0 0 2px #ffffff8c,0 6px #00000047}.placement-hint{left:12px;bottom:12px;width:min(360px,calc(100% - 24px));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:10px;pointer-events:none}.placement-hint.hidden,.tutorial-card.hidden{display:none}.placement-hint strong{font-family:var(--pxfont);font-size:.54rem;line-height:1.45}.placement-hint span{color:#566275;font-size:.72rem;font-weight:900;line-height:1.35}.placement-hint .placement-status{grid-column:1 / -1;padding-top:4px;border-top:1px solid rgba(32,38,52,.18)}.placement-hint.invalid .placement-status{color:var(--red-dark)}.placement-hint.valid .placement-status{color:#2d7a3a}.tutorial-card{right:12px;bottom:12px;width:min(350px,calc(100% - 24px));padding:14px}.tutorial-card h2{margin:0 0 8px;color:#283243;font-family:var(--pxfont);font-size:.58rem;line-height:1.5}.tutorial-card p{margin:0 0 12px;color:#4a5667;font-size:.78rem;font-weight:800;line-height:1.5}.tutorial-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.side-panel{min-width:0;min-height:0;height:100%;overflow:hidden}.panel-section{min-height:0;height:100%;color:var(--ink);border:3px solid #111822;border-radius:8px;background:linear-gradient(180deg,var(--panel),var(--panel-2));box-shadow:inset 0 0 0 2px #ffffff8c,0 7px #00000040;overflow:auto;overscroll-behavior:contain;scrollbar-color:rgba(38,52,71,.7) rgba(255,255,255,.24);scrollbar-width:thin}.panel-section.panel-hidden{display:none}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 10px 0}.panel-section h2{margin:0;padding:10px 10px 0;color:#283243;font-family:var(--pxfont);font-size:.58rem;line-height:1.5}.panel-heading h2{padding:0}.panel-heading-compact{padding-top:8px;border-top:1px solid rgba(32,38,52,.18)}.setup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}.field-control{display:grid;gap:5px}.field-control span{color:#5b687a;font-size:.62rem;font-weight:900;text-transform:uppercase}.field-control select{width:100%;min-height:38px;padding:8px;color:#293241;border:2px solid #1d2634;border-radius:7px;background:#ffffffa3;font-weight:900}.btn-mode{grid-column:1 / -1;min-height:38px;color:#f8f2d8;background:linear-gradient(180deg,#3f5d7d,#263447)}.mission-toolbar .btn-mode{grid-column:auto;align-self:end;min-height:32px;padding:6px 9px;font-size:.46rem;white-space:nowrap}.mission-summary{display:grid;gap:6px;padding:0 10px 10px;color:#4c5868;font-size:.72rem;font-weight:800;line-height:1.45}.mission-summary strong{color:#293241}.best-run{color:#687489;font-family:var(--pxfont);font-size:.38rem;line-height:1.5;text-align:right}.tower-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:10px}.tower-card{width:100%;display:grid;grid-template-rows:auto auto auto;justify-items:center;align-content:start;gap:3px;padding:7px 4px 6px;color:var(--ink);text-align:center;border:2px solid #1d2634;border-top-width:6px;border-top-color:var(--tower-color, #2a6db0);border-radius:8px;background:#ffffff8c;cursor:pointer;transition:background .12s ease,transform .12s ease,box-shadow .12s ease}.tower-card:hover,.tower-card.selected{background:#ffffffd9;transform:translateY(-1px);box-shadow:0 4px #00000029}.tower-card.selected{outline:3px solid rgba(224,64,64,.42)}.tower-card.locked{cursor:help;opacity:.55;background:#dcdcdc66;border-top-color:#6a7280}.tower-card.locked img{filter:grayscale(1) brightness(.85) drop-shadow(2px 3px 0 rgba(0,0,0,.18))}.tower-card.locked .tower-cost{color:#6a7280;font-size:.38rem}.tower-card.locked:hover{opacity:.85;background:#ffffffb3;transform:none;box-shadow:0 4px #0000001f}.tower-card img{width:72px;height:72px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(2px 3px 0 rgba(0,0,0,.2))}.tower-main{min-width:0;display:grid;gap:5px}.tower-name{width:100%;color:#222733;font-family:var(--pxfont);font-size:.42rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tower-cost{color:#9a6812;font-family:var(--pxfont);font-size:.42rem;white-space:nowrap}.type-badge{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:4px 7px;border:1px solid rgba(0,0,0,.24);border-radius:5px;color:#fff;background:var(--type-color, #888);font-size:.62rem;font-weight:800;text-shadow:0 1px 1px rgba(0,0,0,.32);text-transform:uppercase}.inspector{padding:10px}.inspect-card{display:grid;gap:10px}.inspect-section{border:1px solid rgba(32,38,52,.22);border-radius:7px;background:#ffffff7a;overflow:hidden}.inspect-section summary{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px;color:#293241;cursor:pointer;font-family:var(--pxfont);font-size:.46rem;line-height:1.35;list-style:none}.inspect-section summary::-webkit-details-marker{display:none}.inspect-section summary:after{content:"+";flex:0 0 auto;color:#667386}.inspect-section[open] summary:after{content:"-"}.inspect-section-body{display:grid;gap:8px;padding:0 9px 9px}.inspect-head{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:center}.inspect-head img{width:58px;height:58px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(2px 3px 0 rgba(0,0,0,.2))}.inspect-title{display:grid;gap:5px;min-width:0}.inspect-title strong{font-family:var(--pxfont);font-size:.56rem;line-height:1.5;overflow-wrap:anywhere}.inspect-title span{color:#5b687a;font-size:.74rem;font-weight:800}.identity-panel{display:grid;gap:6px;padding:9px;border:1px solid rgba(32,38,52,.22);border-left:6px solid var(--type-color, #2a6db0);border-radius:7px;background:#ffffff80}.identity-pill{width:max-content;max-width:100%;padding:4px 7px;color:#f8f2d8;border-radius:5px;background:#293241;font-size:.62rem;font-weight:900;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-panel p,.identity-panel span:not(.identity-pill){margin:0;color:#3d4858;font-size:.72rem;font-weight:800;line-height:1.45}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.stat-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.mini-stat{padding:8px;border:1px solid rgba(32,38,52,.22);border-radius:7px;background:#ffffff73}.mini-stat small{display:block;margin-bottom:5px;color:#677386;font-weight:800;font-size:.62rem;text-transform:uppercase}.mini-stat strong{color:#293241;font-family:var(--pxfont);font-size:.48rem;line-height:1.35}.inspect-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.inspect-actions .btn{min-height:40px;padding:9px 10px;font-size:.5rem}.btn-evolve{color:#242414;background:linear-gradient(180deg,#fff0a8,#f8d030)}.btn-ability{color:#f8f2d8;background:linear-gradient(180deg,#6d5ad5,#3f347e)}.target-row,.specialization-row{display:grid;gap:7px;padding:0}.target-row strong,.specialization-row strong{color:#293241;font-family:var(--pxfont);font-size:.46rem;line-height:1.35}.target-row .btn,.specialization-row .btn{min-height:36px;padding:8px;font-size:.46rem}.specialization-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.specialization-card{display:grid;gap:6px}.specialization-card p{margin:0;color:#4c5868;font-size:.66rem;font-weight:800;line-height:1.35}.xp-progress,.evo-note{padding:9px;color:#3d4858;border:1px solid rgba(32,38,52,.22);border-radius:7px;background:#ffffff7a}.evo-note{margin:0;font-size:.72rem;font-weight:800;line-height:1.45}.evo-note strong{color:#293241;font-family:var(--pxfont);font-size:.48rem}.upgrade-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.upgrade-list li{display:grid;gap:5px;padding:8px;border:1px solid rgba(32,38,52,.22);border-radius:7px;background:#ffffff73}.upgrade-list strong{color:#293241;font-family:var(--pxfont);font-size:.46rem;line-height:1.35}.upgrade-list span{color:#4c5868;font-size:.68rem;font-weight:800;line-height:1.4}.xp-progress{display:grid;gap:7px}.xp-progress div{display:flex;justify-content:space-between;gap:8px;align-items:center}.xp-progress strong{color:#293241;font-family:var(--pxfont);font-size:.46rem;line-height:1.35}.xp-progress span{color:#677386;font-size:.68rem;font-weight:800}.xp-track{height:8px;overflow:hidden;border:2px solid #1b2230;border-radius:999px;background:#263447}.xp-track span{display:block;height:100%;background:linear-gradient(90deg,#98d8d8,#f8d030)}.wave-intel{padding:10px}.wave-intel-card{display:grid;gap:10px;padding:10px;border:2px solid rgba(32,38,52,.28);border-left:7px solid #2a6db0;border-radius:8px;background:#ffffff80}.wave-intel-card.boss-wave{border-left-color:var(--red);background:linear-gradient(180deg,#fff0a8b3,#ffffff73)}.wave-intel-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.wave-intel-top span,.wave-status{color:#677386;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.5px}.wave-intel-top strong{color:#293241;font-family:var(--pxfont);font-size:.48rem}.wave-intel h3{margin:0;color:#293241;font-family:var(--pxfont);font-size:.56rem;line-height:1.5}.wave-intel p{margin:0;color:#4c5868;font-size:.75rem;font-weight:800;line-height:1.45}.wave-tags{display:flex;flex-wrap:wrap;gap:6px}.wave-tags span{padding:4px 7px;color:#f8f2d8;border:1px solid rgba(0,0,0,.26);border-radius:5px;background:#293241;font-size:.62rem;font-weight:900;text-transform:uppercase}.wave-enemies{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.enemy-chip{min-width:0;display:grid;justify-items:center;gap:3px;padding:7px 5px 6px;border:1px solid rgba(32,38,52,.22);border-top:5px solid var(--type-color, #888);border-radius:7px;background:#ffffff8c}.enemy-chip.boss-chip{box-shadow:0 0 0 2px #e0404047}.enemy-chip img{width:34px;height:34px;object-fit:contain;image-rendering:pixelated}.enemy-chip span{max-width:100%;color:#293241;font-size:.58rem;font-weight:900;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wave-status{text-align:right}.inspect-empty{color:#536070;font-family:var(--pxfont);font-size:.48rem;line-height:1.8}.event-log{display:grid;gap:7px;margin:0;padding:10px;list-style:none}.event-log li{padding:8px;color:#314052;border-left:5px solid #2a6db0;border-radius:7px;background:#ffffff80;font-size:.72rem;line-height:1.35;font-weight:700}.event-log li.good{border-left-color:var(--green)}.event-log li.warn{border-left-color:var(--red)}.pokedex{display:grid;gap:10px;padding:10px}.dex-group{display:grid;gap:7px}.dex-group h3{margin:0;color:#293241;font-family:var(--pxfont);font-size:.48rem;line-height:1.5}.dex-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.dex-chip{min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr);gap:6px;align-items:center;padding:6px;border:1px solid rgba(32,38,52,.2);border-left:5px solid var(--type-color, #888);border-radius:7px;background:#ffffff80}.dex-chip img{width:30px;height:30px;object-fit:contain;image-rendering:pixelated}.dex-chip span{min-width:0;color:#293241;font-size:.58rem;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dex-count{margin-left:6px;color:#687489;font-family:var(--uifont);font-size:.58rem;font-weight:800}.dex-chip-locked{filter:grayscale(1) opacity(.55)}.dex-chip-team{background:#49a65a2e;border-left-width:7px}.dex-chip-captured{background:#f8d03038;border-left-width:7px}.team-select.hidden{display:none}.team-drawer{padding:0 10px 10px}.team-select{display:grid;gap:8px;padding-top:10px}.team-header{display:grid;gap:4px;color:#4c5868;font-size:.7rem}.team-header strong{color:#293241;font-family:var(--pxfont);font-size:.5rem}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.team-card{display:grid;grid-template-columns:36px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;row-gap:2px;align-items:center;padding:6px;color:var(--ink);text-align:left;border:2px solid #1d2634;border-left:6px solid var(--type-color, #2a6db0);border-radius:7px;background:#ffffff73;cursor:pointer}.team-card img{grid-row:1 / span 2;width:34px;height:34px;object-fit:contain;image-rendering:pixelated}.team-card-name{color:#222733;font-family:var(--pxfont);font-size:.42rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-card-tag{display:none}.team-card-status{color:#526070;font-size:.62rem;font-weight:800}.team-card-selected{background:#49a65a59;outline:2px solid rgba(73,166,90,.6)}.team-card-locked{opacity:.55;cursor:not-allowed;filter:grayscale(1)}.legal{position:absolute;left:12px;right:360px;bottom:3px;z-index:2;width:auto;margin:0;color:#eef2ff8f;font-size:.56rem;line-height:1.5;text-align:left;pointer-events:none}@media (max-width: 1080px){.topbar{grid-template-columns:1fr auto}.brand-cluster{grid-column:1 / 2}.mission-toolbar{grid-column:1 / -1;order:2;grid-template-columns:minmax(120px,1fr) minmax(110px,.85fr) auto minmax(180px,1fr)}.hud{grid-column:1 / -1;order:3}.controls{justify-content:flex-end}.game-shell{grid-template-columns:minmax(0,1fr) minmax(280px,304px)}.legal{right:330px}}@media (max-width: 720px){#app{gap:6px;padding:6px}.topbar{grid-template-columns:1fr;gap:6px;padding:6px}.brand-cluster,.mission-toolbar,.hud{grid-column:auto}.brand{justify-content:center;font-size:.64rem}.brand-ball{width:22px;height:22px}.run-label{text-align:center;font-size:.52rem}.hud{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;order:0}.mission-toolbar{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 88px;gap:5px}.mission-toolbar .mission-summary{display:none}.mission-control span{font-size:.42rem}.mission-control select,.mission-toolbar .btn-mode{min-height:30px;font-size:.56rem}.hud-chip{grid-template-columns:1fr;justify-items:center;padding:5px 4px}.hud-icon,.hud-chip small{display:none}.hud-chip strong{font-size:.48rem}.controls{display:grid;grid-template-columns:1fr repeat(3,38px);width:100%}.game-shell{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(200px,36vh);gap:6px}.side-panel{min-height:0}.panel-section{overflow:auto}.btn{font-size:.5rem}.tower-list{grid-template-columns:repeat(2,minmax(0,1fr))}.tower-card img{width:56px;height:56px}.inspect-actions,.setup-grid,.specialization-options,.stat-grid.compact,.dex-list,.team-grid{grid-template-columns:1fr}.placement-hint,.tutorial-card{left:8px;right:8px;bottom:8px;width:auto}.tutorial-card{bottom:92px}.overlay-summary{grid-template-columns:1fr}.legal{display:none}}
