.placement-roster{position:absolute;z-index:4;display:flex;gap:8px;padding:8px;border:1px solid #cfdbb2;border-radius:18px;background:#fff9e8ed;box-shadow:0 4px 18px #153f4930}
.placement-roster[hidden]{display:none}
.placement-roster[data-layout=left]{left:12px;width:88px;flex-direction:column;align-items:center}
.placement-roster[data-layout=bottom]{bottom:12px;left:50%;transform:translateX(-50%);flex-direction:row;max-width:calc(100% - 24px)}
.placement-card{width:72px;height:84px;flex:0 0 72px;min-height:0;border:1px solid #d5dcb7;border-radius:12px;background:#f1f2df;color:#254853;display:grid;grid-template-rows:44px 16px 14px;justify-items:center;align-content:center;padding:3px;cursor:pointer}
.placement-card img{width:42px;height:42px;object-fit:contain;pointer-events:none}.placement-card strong{font-size:12px}.placement-card small{font-size:12px;color:#a17c38}.placement-card:disabled{opacity:.45;cursor:default}.placement-card[aria-pressed=true]{border:2px solid #548e72;background:#e0f0d7;box-shadow:0 0 0 2px #9fc7ab50}
.control-setting{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:10px}.system-menu .control-setting button{width:auto;min-height:36px;padding:6px 12px}.control-setting span{font-size:13px;margin-right:3px}.control-setting button[aria-pressed=true]{background:#608a7a;color:#fff}.control-setting button{border-radius:12px;border:1px solid #b5c8ad;background:#fff9e8;color:#345c60}
@media(max-width:600px){.placement-roster[data-layout=left]{left:5px;width:64px;padding:5px;gap:5px}.placement-roster[data-layout=left] .placement-card{width:54px;flex-basis:68px;height:68px;grid-template-rows:32px 14px 12px}.placement-roster[data-layout=left] img{width:32px;height:32px}.placement-roster[data-layout=bottom]{padding:5px;gap:5px}.placement-roster[data-layout=bottom] .placement-card{width:62px;flex-basis:62px;height:72px;grid-template-rows:36px 14px 12px}.placement-roster[data-layout=bottom] img{width:36px;height:36px}}

body[data-build-layout=bottom] .map-hint,body[data-build-layout=bottom] .toast{bottom:calc(var(--deployment-bottom,110px) + 8px)}

/* Touch keeps the established orbit menu; enlarge hit areas without replacing it. */
.touch-build-actions{position:absolute;z-index:10;left:50%;transform:translateX(-50%);bottom:calc(var(--deployment-bottom,8px) + 14px);display:flex;gap:14px;padding:6px;border-radius:18px;background:#173f48d9;touch-action:manipulation}
.touch-build-actions button{width:54px;height:48px;font-size:25px;background:#fff9e8}.touch-build-actions button:first-child{background:#608a7a;color:#fff}
.map-hint{pointer-events:auto;touch-action:manipulation}
@media(pointer:coarse){
 button{touch-action:manipulation;user-select:none;-webkit-user-select:none}
 .view-tools button,.view-tools #pause,.view-tools #speed{width:44px;min-height:44px}
 .view-tools a{display:none}.chapter img{width:24px;height:28px}.chapter b{font-size:11px}
 .entry-wave{width:46px;height:46px}.entry-wave:enabled{animation:none}
 .dispatch-panel.is-orbit #panel-close{width:44px;min-height:44px}
 .auto-production{width:42px;min-height:42px;height:42px;font-size:26px;right:-3px;top:-5px}
 .squad-bar button{min-width:44px;min-height:44px}.squad-bar{gap:7px}
 .map-hint{min-height:44px;display:flex;align-items:center;justify-content:center;bottom:calc(var(--deployment-bottom,8px) + 72px);max-width:240px;left:50%;right:auto;transform:translateX(-50%)}
}

@media(pointer:coarse){.pause-overlay{display:none}.hud strong{font-size:16px}}
