/* One play surface: tools stay reachable without shrinking the battle to a thumbnail. */
.play-layout [hidden]{display:none!important}
.play-layout .build-list{flex-direction:row!important;align-items:stretch!important;min-height:0!important}
.play-layout .build-card{width:auto!important;grid-template-rows:auto auto;align-items:center}
.play-layout .command-dock{grid-template-rows:1fr auto}
.play-layout #art-status{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);z-index:20;background:#102b3aed;color:#cfecf7;padding:12px;border:1px solid #6bbad4;border-radius:5px;text-align:center;font-size:13px}
html:has(.play-layout),body.play-layout{height:100%;overflow:hidden;overscroll-behavior:none}
.play-layout{--bg:#08131d;--text:#e7f4fa;--muted:#a9c0cc;font-size:14px;line-height:1.4;user-select:none;-webkit-user-select:none;background:#08131d}
.play-layout .shell{height:100dvh;max-width:none;padding:0 8px;display:flex;flex-direction:column;overflow:hidden}
.play-layout .masthead{height:38px!important;min-height:38px;gap:8px;border-bottom:1px solid #274553}
.play-layout .brand{gap:7px;min-width:0}.play-layout .brand>svg{width:25px;height:25px}.play-layout .brand>span{font-size:16px;letter-spacing:1px;white-space:nowrap}.play-layout .brand small,.play-layout .header-status{display:none}
.play-layout .header-actions{gap:4px;align-items:center}.play-layout .header-actions button{height:30px!important;min-height:30px!important;min-width:30px;padding:0 7px;font-size:13px;width:auto;border:1px solid #395869;border-radius:4px;background:#122631}
.play-layout .command-grid{display:block;flex:1;min-height:0;padding:0!important}.play-layout .left-panel,.play-layout .page-footer{display:none!important}
.play-layout .battle-section{height:100%;display:flex;flex-direction:column;min-height:0;position:relative}
.play-layout .mission-top{height:36px;min-height:36px;margin:0!important;display:flex;gap:10px;align-items:center;padding:0 4px}
.play-layout .mission-top>.mission-tags{margin-left:auto}.play-layout .mission-top .eyebrow,.play-layout .mission-tags>span,.play-layout .mission-top #input-mode-button{display:none}
.play-layout .mission-top h1{font-size:14px!important;letter-spacing:.3px;line-height:1.2;margin:0;white-space:nowrap}
.play-layout .resource-bar{height:auto!important;min-height:0!important;margin:0 0 0 auto;padding:0;border:0;background:none;display:flex;gap:14px;overflow:visible}
.play-layout .resource-bar>div{font-size:12px;gap:5px;white-space:nowrap;flex-wrap:nowrap;padding:0!important;border:0!important}
.play-layout .resource-bar strong{font-size:18px!important;color:#e7f7ff}.play-layout .resource-icon{font-size:19px}.play-layout .mini-meter{display:none}
.play-layout .cascade-bar,.play-layout .mission-rule,.play-layout .controls-strip,.play-layout .map-coordinate{display:none!important}
.play-layout .battlefield{width:100%!important;height:auto!important;flex:1;min-height:0!important;max-height:none!important;aspect-ratio:auto!important;margin:0!important;border:1px solid #36596c;background:#0c1d28;border-radius:6px;overflow:hidden;position:relative}
.play-layout #game-canvas{display:block;width:100%;height:100%;touch-action:none;outline-offset:-3px}
.play-layout .wave-notice{top:auto;bottom:8px;left:8px;right:auto;font-size:11px;background:#071421bb;padding:4px 6px;border-radius:3px;max-width:50%}
.play-layout .boss-hud{top:10px;left:27%;right:27%;z-index:6;background:#111521de;padding:6px 8px;border-radius:4px;pointer-events:none}
.play-layout .boss-hud strong{font-size:13px}.play-layout .boss-hud #boss-phase{font-size:11px}
.play-layout .command-dock{display:flex;gap:8px;align-items:center;height:68px;min-height:68px;padding:5px 0;background:#091722}
.play-layout .build-list{display:flex;gap:5px;flex:1;min-width:0}.play-layout .build-card{flex:1;min-width:0;min-height:54px!important;padding:5px!important;display:grid;grid-template-columns:31px 1fr;gap:3px!important;border-radius:5px;background:#142d3a}
.play-layout .build-icon{grid-row:1/3!important;width:30px!important;height:40px!important}.play-layout .build-card .tower-art{width:36px;height:38px}.play-layout .build-card strong{font-size:13px!important;line-height:1.15!important;white-space:normal!important}.play-layout .build-card small{display:none!important}.play-layout .build-card .price{grid-column:2!important;font-size:14px!important;line-height:1.1;color:#d2f998}.play-layout .build-card.active{background:#234e49;border-color:#9bf2bd;box-shadow:inset 0 -2px #9bf2bd}
.play-layout .wave-bar{height:auto!important;min-height:0!important;padding:0!important;gap:6px;border:0;background:none;flex:none}
.play-layout .wave-readout{gap:0!important}.play-layout .wave-readout .eyebrow,.play-layout .wave-dots{display:none!important}.play-layout .wave-readout strong{font-size:14px!important;padding:0 4px}
.play-layout .wave-actions{gap:5px;flex-wrap:nowrap}.play-layout .wave-actions button{min-height:48px!important;padding:5px 10px!important;font-size:13px!important;white-space:normal;max-width:150px;line-height:1.15}.play-layout .wave-actions button>kbd{display:none}
.play-layout .gravity-button:enabled{background:#12475d;border-color:#86ebff;color:#d4faff;box-shadow:0 0 14px #37d2ee24}
.play-layout .quick-panel{position:absolute;bottom:36px;right:8px;z-index:8;max-width:310px;min-width:190px;display:block;background:#102b3aee;border:1px solid #658e9f;padding:7px!important;margin:0!important;border-radius:6px;box-shadow:0 6px 18px #0005}
.play-layout .quick-panel small{display:none!important}.play-layout .quick-panel strong{font-size:13px}.play-layout .quick-actions{display:flex;gap:4px;flex-wrap:wrap;margin-top:5px}.play-layout .quick-actions button{min-width:60px;flex:1;min-height:36px!important;font-size:12px;padding:5px 7px}
.play-layout .tutorial-coach{position:absolute;top:8px;left:8px;bottom:auto!important;width:min(330px,54%);max-width:330px;margin:0!important;padding:9px 11px!important;z-index:9;display:grid!important;grid-template-columns:1fr auto!important;gap:5px;background:#092c40ed;border:1px solid #57c1df;box-shadow:0 6px 20px #0004;border-radius:7px}
.play-layout .coach-avatar,.play-layout .coach-heading,.play-layout .tutorial-progress{display:none!important}.play-layout .coach-content h2{font-size:15px!important;margin:0 0 4px;line-height:1.2}.play-layout .coach-content p{font-size:13px!important;line-height:1.35;margin:0}.play-layout .tutorial-coach>.text-button{font-size:12px;align-self:start}.play-layout .tutorial-coach>.primary-button{grid-column:1/-1;font-size:13px;min-height:35px;padding:5px}
.play-layout .tutorial-target{border-radius:9px;pointer-events:none}.play-layout .tutorial-target-label{font-size:12px}.play-layout .toast{bottom:42px;font-size:13px;max-width:70%;white-space:normal;padding:8px;pointer-events:none}
.play-layout .touch-controls{position:absolute!important;left:9px!important;right:auto!important;bottom:36px!important;width:300px;max-width:calc(100% - 18px);padding:7px!important;gap:9px;z-index:9;border-radius:7px;transform:none!important;margin:0!important}
.play-layout.mech-active{padding-bottom:0!important}.play-layout.mech-active .quick-panel{display:none!important}.play-layout .joystick-wrap{flex:0 0 72px}.play-layout .joystick{width:72px;height:72px}.play-layout .joystick-knob{width:28px;height:28px;left:21px;top:21px}.play-layout .joystick-cross{font-size:60px}.play-layout .joystick-wrap>small,.play-layout .touch-skills>small{display:none}.play-layout .touch-skills{gap:4px}.play-layout .touch-skills button{font-size:12px;min-height:37px!important;padding:4px;min-width:0}
.play-layout #operations-dialog>.right-panel{display:block!important;border:0;max-width:none;padding:0}.play-layout #operations-dialog .section-label,.play-layout #operations-dialog .division{display:flex!important}.play-layout #operations-dialog{max-width:550px}
.play-layout dialog{font-size:14px;max-height:90dvh}.play-layout .dialog-note,.play-layout .manual p,.play-layout .module-card p,.play-layout .hangar-pilot p{font-size:14px;line-height:1.5}.play-layout dialog button{min-height:38px!important}
.combat-feedback{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);pointer-events:none;color:#bdffff;text-shadow:0 2px 8px #001722;font-size:21px;font-weight:800;opacity:0;z-index:7}.combat-feedback.show{animation:combat-feedback 1.8s ease-out}.tactical-goal{position:absolute;right:8px;top:8px;max-width:230px;pointer-events:none;font-size:12px;color:#c5e3ef;background:#071622cc;padding:6px 8px;border-radius:5px}.training-active .tactical-goal{display:none}
@keyframes combat-feedback{0%{opacity:0;transform:translate(-50%,-20%) scale(.9)}20%,65%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-100%) scale(1.04)}}
@media(max-width:700px){.play-layout .shell{padding:0 4px}.play-layout .brand>span{font-size:13px;letter-spacing:0}.play-layout .brand>svg{display:none}.play-layout .header-actions button{font-size:12px;padding:0 5px}.play-layout .header-actions #intel-button{display:none}.play-layout .mission-top{height:34px;min-height:34px;gap:5px}.play-layout .mission-top h1{font-size:13px!important;max-width:36vw;overflow:hidden;text-overflow:ellipsis}.play-layout .resource-bar{gap:7px}.play-layout .resource-bar>div>span:not(.resource-icon){display:none}.play-layout .resource-bar strong{font-size:16px!important}.play-layout .command-dock{height:64px;min-height:64px;gap:4px}.play-layout .build-card{grid-template-columns:1fr;align-content:center;text-align:center;min-height:51px!important;padding:4px 2px!important}.play-layout .build-icon{display:none!important}.play-layout .build-card strong{font-size:12px!important}.play-layout .build-card .price{grid-column:1!important;font-size:13px!important}.play-layout .wave-readout{display:none}.play-layout .wave-actions button{font-size:12px!important;padding:4px 6px!important;max-width:95px;min-height:51px!important}.play-layout .wave-actions button>span{display:none}.play-layout .tutorial-coach{width:min(280px,80%);max-width:80%;padding:8px!important}.play-layout .coach-content h2{font-size:14px!important}.play-layout .coach-content p{font-size:12px!important}.play-layout .quick-panel{max-width:260px;bottom:28px;right:5px}.play-layout .touch-controls{bottom:28px!important}.play-layout .boss-hud{left:10%;right:10%;top:8px}.play-layout .boss-hud strong{font-size:12px}.tactical-goal{max-width:180px;font-size:11px}.play-layout .toast{max-width:85%;font-size:12px}.play-layout .wave-notice{font-size:10px;bottom:5px}}
@media(max-width:440px){.play-layout .header-actions #speed-button{display:none}.play-layout .header-actions button{height:28px!important;min-height:28px!important}.play-layout .resource-bar{gap:5px}.play-layout .resource-bar>div{gap:2px}.play-layout .resource-icon{font-size:16px}.play-layout .brand>span{font-size:12px}.play-layout .command-dock{height:106px;min-height:106px;display:grid;grid-template-columns:1fr;gap:4px;padding:4px 0}.play-layout .build-list{grid-row:1}.play-layout .build-card{min-height:44px!important;grid-template-columns:23px 1fr;text-align:left;padding:3px 6px!important}.play-layout .build-icon{display:flex!important;grid-row:1/3!important;width:23px!important;height:30px!important}.play-layout .build-card .tower-art{width:27px;height:30px}.play-layout .build-card .price{grid-column:2!important}.play-layout .wave-bar{grid-row:2;width:100%}.play-layout .wave-actions{width:100%}.play-layout .wave-actions button{min-height:42px!important;max-width:none;flex:1}.play-layout .tutorial-coach{top:6px;left:6px}.play-layout .touch-controls{width:288px}.play-layout .quick-panel{width:250px;bottom:28px}}
body.play-layout [hidden]{display:none!important}
.play-layout .touch-skills button{min-height:44px!important}
@media(max-width:440px){.play-layout .wave-actions button{min-height:44px!important}}
.play-layout .build-card>.price{grid-row:2!important;align-self:end}
.play-layout .build-card>span:nth-child(2){grid-row:1;grid-column:2;align-self:end}
@media(min-width:441px) and (max-width:700px){.play-layout .build-card>span:nth-child(2){grid-column:1}}
