.backpack-prep .bag-tabs{display:flex;gap:8px;margin-bottom:18px}
.backpack-prep .bag-tabs .ui-button{flex:1;min-height:44px;padding:8px;font:600 20px/1 var(--ui-font-display);text-transform:uppercase;background:var(--ui-panel);border:1px solid var(--ui-border);color:var(--ui-muted)}
.backpack-prep .bag-tabs .ui-button[aria-pressed=true]{border-color:var(--ui-focus);color:var(--ui-focus);background:var(--ui-surface)}
.backpack-prep .backpack-name{font:400 20px/1.3 var(--ui-font-display);color:var(--ui-muted);margin:12px 0 18px}
.backpack-prep .prep-grid{align-content:start}
.backpack-prep .prep-grid.normal-backpack{grid-template-columns:repeat(3,minmax(0,1fr))}
.backpack-prep .prep-grid .ui-slot--inventory{min-height:82px}
.backpack-prep .prep-equipment{gap:12px}
.backpack-prep .prep-equipment .equipment-slot{min-height:82px;height:82px}
.backpack-prep .prep-equipment .backpack-slot{border-color:var(--ui-focus)}
.backpack-prep .backpack-slot strong{position:absolute;right:8px;top:6px;font:600 18px/1 var(--ui-font-display);color:var(--ui-focus)}
.backpack-prep .prep-model{height:480px}
.backpack-prep .prep-heading .prep-roster{width:310px;padding-inline:0}
.backpack-prep .storage-inspector .ui-inspector__heading small{font-size:18px}
.backpack-prep .storage-inspector .ui-inspector__heading strong{font-size:24px}
.backpack-prep .supply-slots .ui-slot__count{font-size:18px}
@media(max-width:1180px) and (min-width:701px){.backpack-prep .prep-model{height:460px}}
@media(max-width:700px){.backpack-prep .prep-model{height:410px}.backpack-prep .prep-heading .prep-roster{width:240px}.backpack-prep .prep-equipment .equipment-slot{height:76px;min-height:76px}.backpack-prep .bag-tabs .ui-button{font-size:18px}}
.backpack-prep .prep-equipment .equipment-slot>span{font:600 16px/1.1 var(--ui-font-display)}
.backpack-prep .prep-equipment .equipment-slot>small{font-size:16px}
/* Matching left/right equipment rails with identical clearance around the model. */
.backpack-prep .prep-model{margin-left:94px}
.backpack-prep .field-supplies,.backpack-prep .loadout-membership{margin-left:94px}
.backpack-prep .prep-backpack-rail{position:absolute;top:10px;left:0;width:80px}
.backpack-prep .prep-backpack-rail .equipment-slot{width:100%;height:82px;min-height:82px;border-color:var(--ui-focus)}
.backpack-prep .prep-backpack-rail .equipment-slot>span{font:600 16px/1.1 var(--ui-font-display)}
@media(max-width:700px){.backpack-prep .prep-model{margin-left:76px}.backpack-prep .field-supplies,.backpack-prep .loadout-membership{margin-left:76px}.backpack-prep .prep-backpack-rail{width:62px}.backpack-prep .prep-backpack-rail .equipment-slot{height:76px;min-height:76px}}
/* Keep both equipment rails close to the model as the center column grows. */
@media(min-width:1181px){
 .backpack-prep .prep-character{width:100%;max-width:560px;justify-self:center}
}
/* Anchor equipment to the figure, leaving open gutters toward storage and stats. */
@media(min-width:701px){
 .backpack-prep .prep-model{margin-inline:0}
 .backpack-prep .prep-backpack-rail{left:max(0px,calc(50% - 224px))}
 .backpack-prep .prep-equipment{right:max(0px,calc(50% - 224px))}
 .backpack-prep .field-supplies,.backpack-prep .loadout-membership{margin-inline:0}
}
.backpack-prep .prep-backpack-rail .equipment-slot:before{left:auto;right:-15px}

.backpack-prep .storage-actions:not([hidden]){display:flex;gap:10px}
.backpack-prep .storage-actions .ui-button{flex:1;min-height:44px;font:600 20px/1 var(--ui-font-display)}
.backpack-prep .prep-backpack-rail strong{position:absolute;top:6px;right:8px;color:var(--ui-focus);font:600 18px/1 var(--ui-font-display)}
/* Retain the live roster's arrow gutters and measured model-centered width. */
.backpack-prep .prep-heading .prep-roster{width:var(--ui-prep-roster-width);padding-inline:50px}
@media(max-width:700px){.backpack-prep .prep-heading .prep-roster{width:var(--ui-prep-roster-width);padding-inline:34px}}
