/* Resources stay readable without seven full-width dashboard cards. */
body:not(.compact-ui) main{grid-template-rows:28px minmax(0,1fr) var(--rts-height)}
.stats{display:flex;align-items:center;justify-content:flex-start;gap:0;height:28px;min-height:28px;margin:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;background:#242a33}
.stats>div{display:flex;flex:none;align-items:center;gap:6px;width:auto;min-width:0;height:24px;padding:0 10px;background:transparent;border-right:1px solid #4d515c}
.stats>div>span{font-size:10px;line-height:1;white-space:nowrap}.stats>div>strong,.stats>div>strong b{font:600 14px/1 ui-monospace,Consolas,monospace;white-space:nowrap}.stats strong small{font-size:10px}.stats .danger-track{display:none}
.compact-ui main{grid-template-rows:28px minmax(0,1fr) calc(var(--touch-deck) + env(safe-area-inset-bottom))}.compact-ui .stats{display:flex;grid-template-columns:none;height:28px;min-height:28px}.compact-ui .stats>div{padding:0 8px;height:24px;gap:5px}.compact-ui .stats>div>span{font-size:10px}.compact-ui .stats>div>strong{font-size:13px;line-height:1}
#touchQuickBar,#touchDrawerTitle,#touchResources,#touchFullscreen{display:none}
/* Phone landscape uses the available browser viewport, including visible URL bars. */
.battle-ui{--touch-deck:52px}.battle-ui main{display:block;position:relative;height:var(--app-height,100dvh);min-height:0;overflow:hidden;padding:0 env(safe-area-inset-right) 0 env(safe-area-inset-left)}
.battle-ui .stats{display:none!important}.battle-ui .battle-column{height:calc(100% - 52px - env(safe-area-inset-bottom));grid-template-rows:44px minmax(0,1fr)}
.battle-ui .arena-top{padding:0 5px;gap:3px;min-width:0;height:44px}.battle-ui #playerViews{flex:none;max-width:72px;min-width:44px}.battle-ui #playerViews button{min-height:40px;min-width:42px;padding:2px 5px;font-size:10px}.battle-ui .arena-top #findPakun,.battle-ui .arena-top #findShops,.battle-ui .arena-top #touchMap,.battle-ui .arena-top #touchMore,.battle-ui .arena-top #touchFullscreen{display:block!important;min-width:42px;min-height:40px;padding:2px 6px;font-size:12px}
.battle-ui #comboDropdown>summary{min-width:42px;width:42px;min-height:40px;box-sizing:border-box;justify-content:center;font-size:0;padding:2px}.battle-ui #comboDropdown>summary:before{content:'도감';font-size:12px}.battle-ui #comboDropdown>summary span{display:none}.battle-ui #touchResources{display:flex!important;flex:1;min-width:60px;gap:12px;align-items:center;overflow-x:auto;scrollbar-width:none;white-space:nowrap;color:#bcb39f;font-size:11px;padding:0 6px}.battle-ui #touchResources span{display:flex;align-items:center;gap:4px;flex:none}.battle-ui #touchResources b{font:600 13px ui-monospace,Consolas,monospace;color:#ead6a1}.battle-ui #touchFullscreen{font-size:23px!important}
.battle-ui .command-hud{display:none!important}.battle-ui #touchQuickBar{position:absolute;bottom:0;left:env(safe-area-inset-left);right:env(safe-area-inset-right);height:calc(52px + env(safe-area-inset-bottom));box-sizing:border-box;padding:3px 5px calc(3px + env(safe-area-inset-bottom));display:flex;gap:4px;align-items:stretch;background:linear-gradient(#333741,#1a2029);border-top:2px solid #8b806b;z-index:40}
.battle-ui #touchQuickBar>button{flex:none;min-width:48px;min-height:44px;padding:2px 10px;font-size:12px;border:1px solid #80775f;background:#252e38;touch-action:manipulation}.battle-ui #touchQuickBar>#touchUnitInfo{flex:1;min-width:100px;max-width:none;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:1px;overflow:hidden;border-color:#897850}.battle-ui #touchUnitInfo b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;color:#edcf87}.battle-ui #touchUnitInfo small{display:block;font-size:10px;line-height:1.2;color:#adb5bf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.battle-ui #touchQuickBar>button:disabled{opacity:.45}
.battle-ui #touchControls{display:none}.battle-ui.selection-tools-open #touchControls{display:flex;bottom:8px;left:8px;padding:4px;background:#17202aee;border:1px solid #897b60;z-index:60}.battle-ui #touchControls button{min-height:44px}
.battle-ui .battle-clock{top:5px;left:7px;width:auto;min-width:150px;max-width:230px;padding:4px 7px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;border-radius:3px}.battle-ui .round-line{border:0;padding:0;gap:4px}.battle-ui .round-line>span{display:none}.battle-ui .round-line>b{font-size:18px}.battle-ui .round-line>small{font-size:10px}.battle-ui .next-wave{padding:0;gap:6px;font-size:10px}.battle-ui .next-wave b{font-size:13px}.battle-ui #rankTimers:empty{display:none}.battle-ui #rankTimers{flex-basis:100%}.battle-ui .rank-timer{margin-top:2px;padding-top:2px}.battle-ui .rank-timer b{font-size:13px}.battle-ui .camera-controls{top:5px;right:6px}.battle-ui .camera-controls button{min-width:36px;min-height:36px}
.battle-ui.commands-open .command-hud{display:grid!important;position:fixed;z-index:1550;right:max(6px,env(safe-area-inset-right));left:auto;bottom:calc(58px + env(safe-area-inset-bottom));width:min(580px,calc(100vw - 12px));height:min(190px,calc(100dvh - 100px));grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);padding:33px 6px 6px;border:2px ridge #b09a71;box-shadow:0 6px 28px #000c;background:#1b232e}
.battle-ui.commands-open .command-hud>.rts-minimap,.battle-ui.commands-open .command-hud>.hud-selection,.battle-ui.commands-open .command-hud>.rts-status,.battle-ui.commands-open .command-hud>.rts-portrait{display:none!important}.battle-ui.commands-open .rts-command-panel{grid-column:1!important;grid-row:1!important;border:0;padding:0}.battle-ui.commands-open .rts-command-grid{grid-auto-rows:48px;gap:5px}.battle-ui.commands-open #touchDrawerTitle{display:flex;position:absolute;left:10px;right:5px;top:2px;align-items:center;justify-content:space-between;height:28px;gap:12px;font-size:12px;color:#e8ce98}.battle-ui #touchDrawerClose{min-height:28px;min-width:60px;font-size:12px;padding:2px 7px}.battle-ui.recipes-open .rts-command-slot:not(:has([data-command-recipe],[data-command-next])){display:none}
.battle-ui.battle-info-open .command-hud{width:min(420px,calc(100vw - 12px));height:min(230px,calc(100dvh - 85px))}.battle-ui.battle-info-open .command-hud>.hud-selection{display:block!important;grid-column:1!important}.battle-ui.battle-info-open .hud-selection>.hud-label,.battle-ui.battle-info-open .rts-command-panel{display:none}.battle-ui.battle-info-open #selectionInfo{height:100%;padding:5px 8px}.battle-ui.battle-info-open .rts-stat-grid{display:grid}.battle-ui.battle-info-open #rtsContext{display:block;font-size:11px}
.battle-ui #touchRecipe{bottom:calc(58px + env(safe-area-inset-bottom));max-height:calc(var(--app-height,100dvh) - 68px);width:340px;padding:7px 10px}.battle-ui #touchRecipe .touch-sheet-title{font-size:15px}.battle-ui #touchRecipe .touch-sheet-title button{min-height:36px;min-width:40px}.battle-ui .touch-formula{font-size:12px;margin-bottom:5px;padding-bottom:4px}.battle-ui .touch-material{min-height:30px;font-size:12px}.battle-ui .touch-material .pixel-icon{height:25px;width:25px}.battle-ui .touch-recipe-footer{margin-top:5px;padding-top:5px}.battle-ui .touch-recipe-footer button{min-height:44px}.battle-ui #touchMenu{top:48px;max-height:calc(var(--app-height,100dvh) - 56px)}.battle-ui .rts-dropdown-body{top:48px;height:calc(var(--app-height,100dvh) - 56px)}.battle-ui.touch-map-open .rts-minimap{display:grid!important;top:48px;bottom:auto;height:min(220px,calc(100dvh - 110px))}.battle-ui .rts-chat.open{bottom:58px}
@media(max-width:680px){.battle-ui #touchResources{gap:8px;padding:0 3px}.battle-ui #touchResources span:last-child{display:none}.battle-ui #playerViews{max-width:48px}.battle-ui #touchQuickBar>button{padding:2px 6px;font-size:11px}.battle-ui #touchUnitInfo small{display:none}.battle-ui #touchQuickBar>#touchUnitInfo{min-width:85px}.battle-ui #touchResources b{font-size:12px}}

.battle-ui.recipes-open .command-hud{height:96px;max-height:calc(100dvh - 100px)}

.battle-ui.touch-map-open .command-hud{display:contents!important}.battle-ui.touch-map-open .command-hud>:not(.rts-minimap){display:none!important}
