/* Twenty square pack cells; worn gear lives in three independent slots. */
.inventory-modal{width:min(1150px,97vw);max-height:96svh}
.inventory-modal .modal-body{padding:18px 22px;background:#111614}
.pack-screen{color:var(--ink)}
.pack-title{display:flex;align-items:baseline;gap:20px;padding:0 8px 14px;border-bottom:1px solid #645036;margin-bottom:18px}
.pack-title h2{margin:0;font:600 clamp(24px,2vw,32px) var(--heading);letter-spacing:.12em;text-transform:uppercase}
.pack-title>span{font:600 clamp(18px,1.55vw,26px) var(--heading);color:#b9aa91}
.pack-title small{margin-left:auto;white-space:nowrap;font:18px var(--sans);font-variant-numeric:tabular-nums;color:#b9aa91}
.bak-inventory{display:grid;grid-template-columns:1.35fr 5fr;gap:20px;align-items:stretch}
.bak-equipment{display:grid;grid-template-rows:1fr 1fr 1.7fr;gap:12px;min-width:0}
.bak-equipment .gear-slot{border:2px ridge #837050;background:radial-gradient(#28271e,#0d1311);min-height:0}
.bak-equipment .gear-slot>span{font:600 16px var(--sans);color:#b9aa91;letter-spacing:.03em;line-height:1.2;padding:6px 4px}
.bak-equipment .gear-slot>button{overflow:hidden;min-height:0;position:relative;padding:8px!important}
.bak-equipment .gear-slot .catalog-art{position:absolute;inset:8%;width:84%;height:84%;object-fit:contain}
.bak-equipment .gear-slot button.chosen{outline:2px solid #b78a4d;outline-offset:-3px}
.bak-equipment .gear-slot button>b{background:#111714d9;font:16px var(--sans);color:#e6ddc9}
.bak-pack{min-width:0}
.pack-board,.inventory-top .pack-board,.loot-layout .pack-board{box-sizing:content-box;aspect-ratio:5/4;width:calc(100% - 8px);height:auto;min-height:0;max-height:none;background-size:20% 25%;border:4px ridge #756044;background-color:#0d1210}
.pack-item{border-color:#5c503b!important;box-shadow:inset 0 0 0 1px #0b100d!important;background:radial-gradient(ellipse,#2b2c23b8,#111713e8)!important}
.pack-item .catalog-art{object-fit:contain}.item-durability{height:2px}.item-quantity{font-size:18px}
.pack-utilities{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #645036}
.pack-utilities .key-pocket{margin:0;padding:7px 10px;flex:1;min-width:190px}
.pack-utilities>button{font:600 17px var(--sans);padding:10px 13px;color:#d9c8a7;background:#24231a;border:1px solid #716044}
.pack-utilities>button:disabled{opacity:.45}.shared-coins{font:18px var(--sans);white-space:nowrap;color:#b9aa91}
.shared-coins strong{font-size:24px;font-variant-numeric:tabular-nums;color:#dbb879;margin-left:8px}
.active-drinks{margin:8px 0;color:#75b9d4;font:16px/1.5 var(--sans)}
.bak-bottom{display:grid;grid-template-columns:260px 1fr 120px;gap:18px;align-items:center;padding-top:16px}
.bak-bottom .inventory-orbs{padding:0;gap:2px}.bak-bottom .portrait-drop{padding:2px}
.bak-bottom .inventory-orbs .orb-frame{width:74px!important}.bak-bottom .hero-name{font-size:18px}.bak-bottom .hero-vitals{display:none}
.bak-detail{min-width:0;max-height:205px;overflow:auto;padding-right:10px}.bak-detail h3{font:600 24px var(--heading);margin:0 0 6px;color:#e6ddc9}
.bak-detail p{font:18px/1.4 var(--sans);white-space:pre-line;color:#b9aa91;margin:0 0 10px}
.bak-detail .choices{gap:8px;align-items:center;flex-wrap:wrap}.bak-detail .choices button{font:600 16px var(--sans);padding:7px 10px}.bak-exit{align-self:end}
.loot-source .bag-preview{background:#161c17!important;display:flex;align-items:center;justify-content:center}.bag-preview .catalog-art{height:90%;width:110px}
.loot-modal .loot-layout{max-width:1100px;margin:auto}.loot-source .container-art{height:110px}
@media(max-width:850px){.inventory-modal .modal-body{padding:12px}.bak-inventory{gap:10px}.bak-equipment{gap:8px}.bak-equipment .gear-slot>span{font-size:13px}.bak-bottom{grid-template-columns:220px 1fr;gap:12px}.bak-bottom .inventory-orbs .orb-frame{width:62px!important}.bak-exit{grid-column:2;justify-self:end}.bak-detail{grid-column:1/-1;grid-row:2;max-height:none}.pack-title{gap:10px;flex-wrap:wrap}.pack-title>span{order:3;width:100%}.pack-title small{font-size:16px}.pack-utilities{gap:8px}.loot-layout{grid-template-columns:1fr 1fr;gap:12px}}
@media(max-width:480px){.bak-equipment .gear-slot>span{font-size:11px}.bak-equipment .gear-slot button>b{font-size:12px}.bak-equipment .empty-slot{min-height:0}.pack-utilities>button{font-size:14px}.bak-bottom{grid-template-columns:1fr 90px}.bak-bottom .inventory-orbs .orb-frame{width:52px!important}.bak-bottom .hero-name{font-size:13px}.bak-exit{font-size:16px!important}.item-quantity{font-size:14px}.loot-layout{grid-template-columns:1fr}}
