:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#050608;color:#f5f7fb;--bg: #050608;--panel: rgba(16, 19, 26, .84);--panel-strong: rgba(21, 24, 31, .96);--line: rgba(255, 255, 255, .12);--muted: #a6afbd;--text: #f5f7fb;--cyan: #55d9ff;--mint: #7cf7d4;--magenta: #e84dff;--yellow: #f8e45c;--danger: #ff5c5c;--success: #7cf27f}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;margin:0;overflow:hidden;background:var(--bg)}body{touch-action:manipulation}button,input{font:inherit}button{min-height:44px}input{width:100%;border:1px solid var(--line);border-radius:6px;background:#ffffff0f;color:var(--text);padding:.75rem .85rem;outline:none}input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #55d9ff29}h1,h2,h3,p{margin:0}.app-shell{position:relative;width:100%;height:100%;overflow:hidden;background:linear-gradient(180deg,#050608e0,#050608f5),#050608}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.backdrop:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(85,217,255,.08) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:80px 80px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent)}.backdrop__stars{position:absolute;top:-40px;right:-40px;bottom:-40px;left:-40px;background-image:radial-gradient(circle,rgba(255,255,255,.7) 1px,transparent 1.6px),radial-gradient(circle,rgba(85,217,255,.58) 1px,transparent 1.4px);background-size:160px 160px,220px 220px;animation:drift-stars 28s linear infinite}.backdrop__stars--far{opacity:.38;background-size:220px 220px,310px 310px;animation-duration:54s}.backdrop__scanline{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(180deg,transparent 0 7px,rgba(255,255,255,.025) 8px);mix-blend-mode:screen;opacity:.42}@keyframes drift-stars{0%{transform:translateZ(0)}to{transform:translate3d(-160px,120px,0)}}.button{border:1px solid var(--line);border-radius:6px;background:#ffffff0f;color:var(--text);padding:.65rem 1rem;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.button:hover:not(:disabled){transform:translateY(-1px);border-color:var(--cyan);box-shadow:0 0 22px #55d9ff2e}.button:disabled{cursor:not-allowed;opacity:.46}.button--primary{border-color:#55d9ffd1;color:var(--cyan);background:#55d9ff1a}.button--success{border-color:#7cf27fd1;color:var(--success);background:#7cf27f1a}.button--danger{border-color:#ff5c5cd1;color:var(--danger);background:#ff5c5c1a}.button--warning{border-color:#f8e45cd1;color:var(--yellow);background:#f8e45c1f}.button--ghost{background:#ffffff09;color:var(--muted)}.panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 18px 60px #00000047;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;border-bottom:1px solid rgba(255,255,255,.08)}.panel__heading h2{font-size:1rem}.eyebrow{margin-bottom:.25rem;color:var(--cyan);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.form-error{color:var(--danger);font-size:.8rem}.fine-print{color:var(--muted);font-size:.76rem;line-height:1.4}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;scroll-behavior:auto!important;transition-duration:1ms!important}}.menu-screen,.result-screen,.game-screen{position:relative;z-index:1;width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.auth-gate{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:flex;min-height:100dvh;overflow:auto;background:linear-gradient(180deg,#050608db,#050608fa),radial-gradient(circle at 30% 0,rgba(85,217,255,.18),transparent 22rem),#050608}.auth-gate__panel{width:100%;min-height:100dvh;display:grid;align-content:center;gap:1rem;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1.25rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:#080a0ee6}.auth-gate__mark{width:70px;height:70px;border-radius:8px;box-shadow:0 0 34px #55d9ff2e}.auth-gate h1{font-size:2.2rem;line-height:1;text-transform:uppercase}.auth-gate p,.auth-gate__status{color:var(--muted);line-height:1.45}.auth-gate__status{padding:.75rem;border:1px solid rgba(85,217,255,.32);border-radius:8px;background:#55d9ff14}.auth-gate__status--warn{border-color:#f8e45c73;background:#f8e45c14;color:var(--yellow)}.auth-gate__tabs{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.auth-gate__tabs button{min-height:44px;border:1px solid var(--line);border-radius:8px;background:#ffffff0a;color:var(--muted);cursor:pointer}.auth-gate__tabs button.is-active{border-color:var(--cyan);background:#55d9ff1f;color:var(--cyan)}.auth-gate__form{display:grid;gap:.85rem}.auth-gate__form label{display:grid;gap:.35rem;color:var(--muted);font-size:.88rem}.menu-screen{display:grid;align-content:start;gap:.75rem;padding:max(.75rem,env(safe-area-inset-top)) max(.75rem,env(safe-area-inset-right)) max(.75rem,env(safe-area-inset-bottom)) max(.75rem,env(safe-area-inset-left))}.menu-hero{display:grid;gap:.85rem;padding:.9rem;border:1px solid var(--line);border-radius:8px;background:#0a0c10d1;box-shadow:0 0 42px #55d9ff14;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.menu-hero__mark{width:64px;height:64px;border-radius:8px;box-shadow:0 0 30px #e84dff2e}.menu-hero h1,.result-card h1{font-size:2rem;line-height:1;text-transform:uppercase}.menu-hero p,.result-card p{color:var(--muted);line-height:1.45}.menu-hero__actions{display:grid;grid-template-columns:1fr;gap:.55rem}.login-required{display:grid;gap:.2rem;padding:.7rem .85rem;border:1px solid rgba(248,228,92,.45);border-radius:8px;background:#f8e45c14;color:var(--muted)}.login-required strong{color:var(--yellow)}.menu-grid{display:grid;gap:.75rem}.map-list{display:grid;gap:.55rem;padding:.75rem}.map-list article{display:grid;grid-template-columns:38px minmax(0,1fr);gap:.65rem;align-items:center;padding:.7rem;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#ffffff09}.map-list article>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--tone);border-radius:7px;color:var(--tone);font-weight:900}.map-list p{margin-top:.16rem;color:var(--muted);font-size:.82rem}.settings-panel{padding:.85rem;display:grid;gap:.8rem}.settings-grid{display:grid;gap:.55rem}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--muted)}.toggle-row input{width:22px;height:22px;accent-color:var(--cyan)}.segmented{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.account-links{display:grid;gap:.45rem}.account-links a{color:var(--muted);font-size:.78rem;text-align:center}.account-links .button{display:grid;place-items:center;text-decoration:none}.auth-gate__links{color:var(--muted);font-size:.78rem;text-align:center}.auth-gate__links a{color:var(--mint)}.game-screen{display:flex;flex-direction:column;overflow:auto}.hud{position:sticky;top:0;z-index:4;display:grid;gap:.55rem;padding:max(.6rem,env(safe-area-inset-top)) .65rem .6rem;border-bottom:1px solid var(--line);background:#050608eb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.hud__map{display:flex;align-items:center;gap:.6rem;min-width:0}.map-dot{width:10px;height:34px;border-radius:7px;background:var(--tone);box-shadow:0 0 20px var(--tone)}.hud__map strong,.hud__map small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud__map small{margin-top:.1rem;color:var(--muted);font-size:.76rem}.hud__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.hud__stats span{min-width:0;padding:.42rem .48rem;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:#ffffff09;color:var(--muted);font-size:.72rem}.hud__stats strong{display:block;color:var(--text);font-size:.9rem}.boost-pill{color:var(--yellow)!important;border-color:#f8e45c73!important}.hud__actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem}.hud__actions .button{padding:.55rem .35rem;font-size:.78rem}.mobile-command-panel{display:none}.desktop-dock,.desktop-rail{display:grid}.game-layout{display:grid;gap:.75rem;padding:.65rem}.app-shell--mobile .game-screen{overflow:auto}.app-shell--mobile .hud{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.34rem;padding:max(.42rem,env(safe-area-inset-top)) .45rem .42rem}.app-shell--mobile .hud__map{gap:.42rem}.app-shell--mobile .map-dot{width:8px;height:28px}.app-shell--mobile .hud__map strong{font-size:.86rem}.app-shell--mobile .hud__map small{font-size:.66rem}.app-shell--mobile .hud__stats{grid-column:1 / -1;display:flex;gap:.24rem;overflow:hidden}.app-shell--mobile .hud__stats span{display:flex;align-items:center;justify-content:space-between;flex:1 1 0;min-height:29px;padding:.2rem .34rem;font-size:.58rem}.app-shell--mobile .hud__stats strong{font-size:.72rem}.app-shell--mobile .hud__stats span:nth-child(4),.app-shell--mobile .hud__stats span:nth-child(5){display:none}.app-shell--mobile .hud__actions{grid-column:2;grid-row:1;grid-template-columns:repeat(4,38px);gap:.24rem}.app-shell--mobile .hud__actions .button{position:relative;min-height:34px;width:38px;padding:0;overflow:hidden;font-size:0}.app-shell--mobile .hud__actions .button:after{font-size:.66rem;font-weight:900}.app-shell--mobile .hud__actions .button:nth-child(1):after{content:"PAU"}.app-shell--mobile .hud__actions .button:nth-child(2):after{content:"SPD"}.app-shell--mobile .hud__actions .button:nth-child(3):after{content:"SAV"}.app-shell--mobile .hud__actions .button:nth-child(4):after{content:"LOD"}.app-shell--mobile .game-layout{grid-template-columns:1fr;gap:.45rem;padding:.45rem .45rem calc(66px + env(safe-area-inset-bottom));overflow:visible}.app-shell--mobile .desktop-dock,.app-shell--mobile .desktop-rail{display:none}.app-shell--mobile .mobile-command-panel{position:fixed;left:.45rem;right:.45rem;bottom:max(.4rem,env(safe-area-inset-bottom));z-index:8;display:grid;gap:.34rem;margin:0}.mobile-command-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.mobile-command-tabs button{display:grid;place-items:center;gap:.08rem;min-height:48px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#080a0ef0;color:var(--muted);font-size:.7rem;font-weight:800;cursor:pointer;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-command-tabs button span{color:var(--cyan);font-size:.66rem;letter-spacing:.06em}.mobile-command-tabs button.is-active{border-color:#55d9ffc2;background:#55d9ff1f;color:var(--text);box-shadow:0 0 22px #55d9ff1f}.mobile-command-body{max-height:min(44dvh,318px);overflow:auto;border:1px solid var(--line);border-radius:8px;background:#080a0ef5;box-shadow:0 -18px 60px #00000052;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.app-shell--mobile .mobile-command-body .panel{border:0;border-radius:0;box-shadow:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.app-shell--mobile .battlefield{min-height:0}.app-shell--mobile .battlefield__canvas{max-height:52dvh;object-fit:contain}.app-shell--mobile .tower-dock__cards{grid-auto-flow:column;grid-auto-columns:minmax(96px,30vw);gap:.42rem;padding:.55rem;overflow-x:auto}.app-shell--mobile .tower-card{min-height:92px;gap:.18rem;padding:.52rem}.app-shell--mobile .tower-card small,.app-shell--mobile .tower-card__stats{display:none}.app-shell--mobile .tower-card strong{font-size:.74rem}.app-shell--mobile .tower-card__cost{font-size:.68rem}.app-shell--mobile .sprite-badge{width:38px;height:30px}.app-shell--mobile .dock-info{margin:0 .55rem .55rem}.app-shell--mobile .selected-tower,.app-shell--mobile .wave-console{gap:.5rem;padding:.62rem}.app-shell--mobile .selected-tower p,.app-shell--mobile .map-note{display:none}.app-shell--mobile .selected-tower__actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.32rem}.app-shell--mobile .selected-tower__actions .button,.app-shell--mobile .wave-console .button,.app-shell--mobile .reward-card .button{min-height:38px;padding:.42rem .45rem;font-size:.72rem}.app-shell--mobile .wave-list{max-height:74px;overflow:auto}.app-shell--mobile .wave-list span{padding:.28rem .4rem;font-size:.68rem}.app-shell--mobile .panel__heading{padding:.62rem}.app-shell--mobile .enemy-table{gap:.28rem;padding:.5rem}.app-shell--mobile .enemy-table__head{display:none}.app-shell--mobile .enemy-row{padding:.42rem}.app-shell--mobile .enemy-row__main{grid-template-columns:minmax(102px,1.35fr) 24px 40px 34px 28px;font-size:.68rem}.app-shell--mobile .enemy-row p{display:none}.app-shell--mobile .reward-list{gap:.42rem;padding:.5rem}.app-shell--mobile .reward-card{grid-template-columns:minmax(0,1fr) auto;gap:.45rem;align-items:center;padding:.52rem}.app-shell--mobile .reward-card p,.app-shell--mobile .reward-panel .fine-print{display:none}.app-shell--web .game-screen{overflow:hidden}.app-shell--web .game-layout{grid-template-columns:minmax(0,1fr) 360px;min-height:0;overflow:hidden}.app-shell--web .game-layout__board,.app-shell--web .side-rail{min-height:0;overflow:auto}.game-layout__board{display:grid;gap:.65rem;min-width:0}.battlefield{position:relative;display:block;width:100%;border:1px solid var(--line);border-radius:8px;background:#080a0eb8;overflow:hidden;box-shadow:inset 0 0 70px #55d9ff12}.battlefield__canvas{display:block;width:100%;height:auto;aspect-ratio:20 / 12;cursor:crosshair;touch-action:none}.battlefield__pause{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#05060880;font-size:1.6rem;font-weight:900;letter-spacing:.18em}.toast{z-index:7;padding:.75rem 1rem;border:1px solid var(--line);border-radius:8px;background:#0d0f14f0;color:var(--text);box-shadow:0 0 28px #00000059}.battlefield .toast{position:absolute;left:.5rem;right:.5rem;bottom:.5rem}.toast--success{border-color:#7cf27f9e}.toast--warn{border-color:#f8e45cb3}.toast--danger{border-color:#ff5c5cb3}.toast--accent{border-color:#55d9ffb3}.tower-dock{display:grid;gap:.65rem}.tower-dock__cards{display:grid;grid-auto-flow:column;grid-auto-columns:138px;gap:.55rem;overflow-x:auto;overscroll-behavior-inline:contain;padding-bottom:.2rem;scroll-snap-type:inline proximity}.tower-card{scroll-snap-align:start;display:grid;gap:.26rem;min-height:136px;padding:.7rem;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#ffffff0b;color:var(--text);text-align:left;cursor:pointer}.tower-card:hover,.tower-card.is-selected{border-color:var(--tone);background:color-mix(in srgb,var(--tone) 15%,rgba(255,255,255,.045))}.tower-card__code,.sprite-badge{display:grid;place-items:center;width:36px;height:30px;border:1px solid var(--tone);border-radius:6px;color:var(--tone);font-weight:900}.sprite-badge{width:46px;height:38px;background:#ffffff09;box-shadow:0 0 18px color-mix(in srgb,var(--tone) 18%,transparent)}.sprite-badge svg,.enemy-sprite-badge svg{display:block;width:100%;height:100%;overflow:visible}.sprite-badge__fill{fill:color-mix(in srgb,var(--tone) 72%,#10141d);stroke:var(--tone);stroke-width:2;stroke-linejoin:round;filter:drop-shadow(0 0 5px var(--tone))}.sprite-badge__core{fill:#f5f7fb}.tower-card small,.tower-card__stats{color:var(--muted);font-size:.74rem;line-height:1.25}.tower-card__cost{color:var(--yellow);font-weight:800}.dock-info{border:1px solid var(--line);border-radius:8px;background:#0c0e13db}.selected-tower,.wave-console{display:grid;gap:.75rem;padding:.8rem}.selected-tower h3,.wave-console h3{color:var(--tone, var(--text))}.selected-tower p,.wave-console p{color:var(--muted);font-size:.82rem;line-height:1.35}.selected-tower__actions{display:grid;grid-template-columns:1fr;gap:.45rem}.wave-list{display:flex;flex-wrap:wrap;gap:.35rem}.wave-list span{display:inline-flex;align-items:center;gap:.35rem;padding:.36rem .5rem;border:1px solid rgba(255,255,255,.09);border-radius:999px;color:var(--muted);font-size:.76rem}.wave-list i,.enemy-row i{width:9px;height:9px;border-radius:50%;background:var(--tone);box-shadow:0 0 12px var(--tone)}.enemy-sprite-badge{flex:0 0 auto;display:inline-grid;place-items:center;width:26px;height:24px;color:var(--tone)}.side-rail{display:grid;gap:.75rem;min-width:0}.enemy-intel{overflow:hidden}.enemy-table{display:grid;gap:.4rem;padding:.65rem}.enemy-table__head,.enemy-row__main{display:grid;grid-template-columns:minmax(86px,1.5fr) 28px 48px 38px 30px;gap:.3rem;align-items:center}.enemy-table__head{color:var(--muted);font-size:.66rem;text-transform:uppercase}.enemy-row{padding:.5rem;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:#ffffff09}.enemy-row__main{font-size:.72rem}.enemy-row__main span:first-child{display:flex;align-items:center;gap:.32rem;color:var(--tone);font-weight:800;min-width:0}.enemy-row p{margin-top:.25rem;color:var(--muted);font-size:.7rem;line-height:1.3}.reward-panel{padding-bottom:.65rem}.reward-list{display:grid;gap:.55rem;padding:.65rem}.reward-card{display:grid;gap:.6rem;padding:.7rem;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#ffffff09}.reward-card p,.reward-card small{color:var(--muted);font-size:.75rem;line-height:1.35}.reward-card small{color:var(--yellow)}.reward-panel .fine-print{padding:0 .65rem}.result-screen{display:grid;place-items:center;padding:.75rem}.result-card{width:100%;display:grid;gap:1rem;padding:1rem;border:1px solid var(--tone);border-radius:8px;background:#0a0c10e0;box-shadow:0 0 46px color-mix(in srgb,var(--tone) 16%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.result-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem}.result-stats span{padding:.72rem;border:1px solid rgba(255,255,255,.09);border-radius:8px;background:#ffffff0a;color:var(--muted)}.result-stats strong{display:block;color:var(--text);font-size:1.1rem}.result-actions{display:grid;gap:.55rem}@media(min-width:560px){.menu-hero__actions,.selected-tower__actions,.result-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.hud__stats{grid-template-columns:repeat(6,minmax(0,1fr))}.reward-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}}@media(min-width:760px){.auth-gate{align-items:center;justify-content:center;padding:1rem}.auth-gate__panel{width:460px;min-height:auto;border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 70px #0000006b}.menu-screen{padding:1rem}.menu-hero{grid-template-columns:auto minmax(0,1fr);align-items:center}.menu-hero__mark{width:86px;height:86px}.menu-hero__actions,.login-required{grid-column:1 / -1}.menu-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.hud{grid-template-columns:minmax(210px,.7fr) minmax(0,1.3fr);align-items:center}.hud__actions{grid-column:1 / -1;grid-template-columns:repeat(4,minmax(0,1fr))}.game-layout{padding:1rem}}@media(min-width:1120px){.menu-grid{grid-template-columns:1.3fr .7fr}.hud{grid-template-columns:minmax(220px,.65fr) minmax(0,1.45fr) auto}.hud__actions{grid-column:auto;width:340px}.game-screen{overflow:hidden}.game-layout{grid-template-columns:minmax(0,1fr) 360px;min-height:0;overflow:hidden}.game-layout__board,.side-rail{min-height:0;overflow:auto}.side-rail{align-content:start}.tower-dock__cards{grid-auto-flow:initial;grid-auto-columns:initial;grid-template-columns:repeat(5,minmax(122px,1fr));overflow-x:visible}.result-card{width:min(720px,100%);padding:1.3rem}.result-stats{grid-template-columns:repeat(4,1fr)}}.app-shell--web .tower-dock__cards{grid-auto-flow:initial;grid-auto-columns:initial;grid-template-columns:repeat(5,minmax(122px,1fr));overflow-x:visible}.app-shell--web .hud{grid-template-columns:minmax(220px,.65fr) minmax(0,1.45fr) auto}.app-shell--web .hud__actions{grid-column:auto;width:340px}.app-shell--web .game-screen{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.app-shell--web .hud{position:relative;flex:0 0 auto;padding:.55rem .65rem}.app-shell--web .game-layout{flex:1 1 auto;min-height:0;grid-template-columns:minmax(0,1fr) clamp(340px,28vw,420px);grid-template-rows:minmax(0,1fr);gap:.65rem;padding:.65rem}.app-shell--web .game-layout__board{display:grid;align-items:center;justify-items:center;min-height:0;overflow:hidden}.app-shell--web .battlefield{width:min(100%,calc((100dvh - 6rem)*1.6667));max-height:100%;aspect-ratio:20 / 12;display:grid}.app-shell--web .battlefield__canvas{width:100%;height:100%}.app-shell--web .battlefield .toast{left:.65rem;right:auto;bottom:.65rem;max-width:min(520px,calc(100% - 1.3rem));padding:.52rem .72rem;font-size:.82rem;pointer-events:none}.app-shell--web .side-rail{align-content:start;overflow:auto;padding-right:.15rem}.app-shell--web .desktop-dock{display:block}.app-shell--web .tower-dock{gap:.55rem}.app-shell--web .tower-dock__cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.app-shell--web .tower-card{min-height:92px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.24rem .55rem;padding:.52rem}.app-shell--web .tower-card .sprite-badge{grid-row:span 3;width:40px;height:32px}.app-shell--web .tower-card strong{font-size:.82rem}.app-shell--web .tower-card small{display:none}.app-shell--web .tower-card__stats,.app-shell--web .tower-card__cost{font-size:.68rem;line-height:1.1}.app-shell--web .dock-info{background:#0c0e13b8}.app-shell--web .selected-tower,.app-shell--web .wave-console{gap:.55rem;padding:.65rem}.app-shell--web .selected-tower__actions{grid-template-columns:repeat(3,minmax(0,1fr))}.app-shell--web .selected-tower__actions .button,.app-shell--web .wave-console .button{min-height:38px;padding:.42rem .5rem}.app-shell--web .wave-list{max-height:74px;overflow:auto}.app-shell--web .map-note{display:none}.app-shell--web .enemy-intel .enemy-table{max-height:190px;overflow:auto}.app-shell--web .reward-list{gap:.45rem}.app-shell--web .reward-card{padding:.55rem}
