/* The field kit: dark canvas, warm paper, brass selected states. */
.item-icon{width:42px;height:42px;flex-shrink:0;color:#cbbb91}
.panel-body,.inventory-grid,.equipment-pane{scrollbar-color:#647153 #1b261f;scrollbar-width:thin}
#bag .panel-card,#build .panel-card{width:min(1040px,94vw);max-width:none;max-height:90dvh;background:#171d1b;border:1px solid #46504a;border-radius:14px;box-shadow:0 24px 100px #000b;color:#e7e3d6}
#bag .panel-head,#build .panel-head{padding:22px 26px;border-bottom:1px solid #38423b;background:linear-gradient(120deg,#28322b,#19201e)}
#bag .panel-title,#build .panel-title{font-size:24px;letter-spacing:4px;color:#ebe4ce}
#bag .panel-sub,#build .panel-sub{opacity:1;color:#aeb6a7;letter-spacing:.2px;margin-top:7px}
.keycap{display:inline-block;border:1px solid #627061;border-radius:4px;padding:2px 6px;margin-left:8px;font-size:10px}
#bag .panel-body{display:grid;grid-template-columns:40% 60%;padding:0}
.equipment-pane{padding:24px 20px;border-right:1px solid #364139;background:radial-gradient(ellipse at 50% 48%,#344137 0,#1d2621 65%,#18211d)}
.section-label{font-size:10px;font-weight:800;letter-spacing:1.7px;color:#bdc5b4;display:flex;justify-content:space-between;gap:8px}
.section-label>span{font-weight:400;color:#859583;font-variant-numeric:tabular-nums}
.equipment-stage{position:relative;height:354px;margin:15px 0 8px}
.survivor-preview{position:absolute;left:50%;top:0;transform:translateX(-50%);height:100%;width:240px;pointer-events:none}
.equip-column{position:absolute;top:0;bottom:30px;display:flex;flex-direction:column;justify-content:space-between;width:91px}
.equip-column.left{left:0}.equip-column.right{right:0}
.equip-slot{background:#16221dbd;border:1px dashed #4a5a4c;border-radius:7px;display:flex;flex-direction:column;align-items:center;gap:4px;min-height:91px;padding:8px 4px;color:#8c9b8c;cursor:pointer}
.equip-slot>span{font-size:9px;letter-spacing:1.5px;text-transform:uppercase}.equip-slot>b{font-size:10px;font-weight:500;line-height:1.2;text-transform:capitalize}
.equip-slot .item-icon{width:34px;height:34px;opacity:.45}.equip-slot.filled{border-style:solid;background:#29352bbf;border-color:#617256;color:#e5deca}.equip-slot.filled .item-icon{opacity:1;color:#d6c08b}
.equip-slot.selected,.inventory-item.selected{border-color:#ddbf78;box-shadow:inset 0 0 0 1px #ddbf78}
.portrait-label{position:absolute;bottom:2px;left:0;right:0;text-align:center;color:#99a88e;letter-spacing:3px;font-size:9px}
.gear-stats,.weapon-stats{display:flex;gap:16px;border-top:1px solid #3e4c40;padding-top:15px}.gear-stats>span,.weapon-stats>span{flex:1;font-size:8px;letter-spacing:1.2px;color:#9eac98}.gear-stats b,.weapon-stats b{display:block;margin-top:7px;color:#e4e4d4;font-size:19px;letter-spacing:0;font-weight:500}
.equip-help{font-size:11px;color:#94a28f;line-height:1.6;margin:18px 0 0}
.inventory-pane{padding:24px;min-width:0;display:flex;flex-direction:column}
.inventory-heading{display:flex;justify-content:space-between;gap:10px;align-items:center}.inventory-heading .section-label{gap:12px}
.inventory-search{width:145px;min-width:0;background:#111a16;border:1px solid #3c4a3e;border-radius:6px;padding:9px 10px;color:#e1e4d7;font:inherit;font-size:11px}
.inventory-filters{display:flex;gap:5px;padding:17px 0}.inventory-filters button{border:1px solid transparent;background:transparent;color:#99a694;text-transform:uppercase;font:700 9px inherit;letter-spacing:1px;border-radius:5px;padding:9px 12px;cursor:pointer;min-height:34px}
.inventory-filters [aria-pressed=true]{color:#e7cc8d;background:#37392a;border-color:#676447}
.inventory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-content:start;min-height:215px;max-height:290px;overflow-y:auto;padding:2px}
.inventory-item{position:relative;min-width:0;min-height:104px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px 4px 8px;background:linear-gradient(140deg,#2a342b,#202920);border:1px solid #424e3b;border-radius:7px;color:#e0e1cf;cursor:pointer}
.inventory-item>b{text-transform:capitalize;font-size:10px;font-weight:500;line-height:1.2}.inventory-item>small{font-size:8px;color:#92a28b;letter-spacing:.5px}.inventory-item.equipped>small{color:#c8be82}.item-qty{position:absolute;top:5px;right:7px;font-size:10px;color:#b3bba8}
.inventory-item .item-icon{width:38px;height:38px}.inventory-item:hover,.equip-slot:hover{background:#384335}
.inventory-empty{grid-column:1/-1;min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1px dashed #3e4a3c;border-radius:8px;padding:20px;color:#a2ad98}.inventory-empty>b{font-size:13px;font-weight:500;margin-top:15px}.inventory-empty p{max-width:300px;font-size:11px;line-height:1.7;color:#83947e}
.item-detail{margin-top:20px;padding-top:16px;border-top:1px solid #3a473c;min-height:136px}.item-detail p,.detail-idle p{font-size:12px;line-height:1.65;color:#a5b09c;margin:12px 0}.detail-idle>b{font-size:15px;font-weight:500;color:#d4d7c6}.detail-idle{padding-top:10px}
.detail-heading{display:flex;gap:11px;align-items:center}.detail-heading>div{flex:1}.detail-heading b{display:block;font-size:18px;font-weight:500;text-transform:capitalize}.detail-heading small{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#9ea98f}.detail-heading>span{font-size:10px;color:#99a58d}
.item-actions{display:flex;gap:8px;margin-top:14px}.item-actions button,.primary-act{background:#303d30;color:#ced5c1;border:1px solid #52624b;padding:11px 20px;border-radius:6px;cursor:pointer;font:700 12px inherit;min-height:42px}
button.primary-act{background:#d4bd7a;border-color:#e9d6a1;color:#222d22}.item-actions button:disabled,button.primary-act:disabled{opacity:.4;cursor:default}.item-detail>small{display:block;color:#d6ad7e;margin-top:10px;font-size:10px}
#bag .panel-foot{opacity:1;padding:15px 24px;background:#121b16;border-top:1px solid #3b493b}.carry-label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:#b8c2a8}.carry-label>span{font-size:12px;letter-spacing:0}.carry-meter{height:5px;background:#35422e;border-radius:3px;margin:8px 0}.carry-meter i{display:block;height:100%;background:#aebd7d;border-radius:3px;transition:width .3s}.heavy .carry-meter i{background:#d78d69}.panel-foot small{font-size:10px;color:#839578}
#build .panel-body{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:24px}.build-catalog{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}.build-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;background:#202c23;border:1px solid #3f4d3c;border-radius:9px;min-height:200px;padding:20px 16px;color:#d8decb;text-align:left;cursor:pointer}.build-card>.item-icon{width:65px;height:65px;margin-bottom:14px}.build-card>small{font-size:8px;letter-spacing:1px;color:#9aa78c}.build-card>b{font-size:17px;font-weight:500}.build-ready{font-size:10px;color:#9da990}.build-card.on .build-ready{color:#bcce8b}.build-card.selected{border-color:#d5ba74;background:#303b29;box-shadow:inset 0 0 0 1px #9e905d}
.build-detail{min-width:0;padding:0 8px}.build-illustration{height:104px;display:flex;align-items:center;justify-content:center;gap:26px;background:radial-gradient(ellipse,#37432c,transparent 72%);border-bottom:1px solid #3b4938}.build-illustration>.item-icon{width:98px;height:98px;color:#ddc68a}.build-illustration>span{font-size:9px;letter-spacing:2px;color:#879c78;max-width:70px;line-height:2}.build-detail h2{font-size:25px;font-weight:500;margin:17px 0 10px;color:#e5dec8}.build-detail>p{font-size:12px;line-height:1.65;color:#a5b49a;margin-bottom:18px}.build-costs{margin:10px 0 20px}.build-cost{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #354330}.build-cost .item-icon{width:32px;height:32px}.build-cost>div{flex:1}.build-cost b{font-size:12px;font-weight:500;text-transform:capitalize}.build-cost small{display:block;margin-top:5px;color:#8e9e80;font-size:10px}.build-cost>span{font:14px ui-monospace,monospace;color:#d69f81}.build-cost.enough>span{color:#c1d694}.build-choose{width:100%}.placement-help{display:block;margin:12px 0 0;font-size:10px;line-height:1.7;color:#96a784}#build .panel-foot{opacity:1;color:#a2b091;border-color:#3b4938;padding:16px 24px}
button:focus-visible,input:focus-visible{outline:2px solid #edcf87;outline-offset:3px}
.pickup-feed{position:fixed;right:26px;top:33%;display:flex;flex-direction:column;gap:6px;max-width:250px;pointer-events:none;z-index:8}.pickup-toast{display:flex;gap:10px;align-items:center;background:#17261ee8;border-left:3px solid #c4d596;box-shadow:0 4px 15px #0004;padding:10px 14px;border-radius:4px;color:#e2e5d0;animation:loot-in .25s ease-out}.pickup-toast .item-icon{width:28px;height:28px}.pickup-toast b{font-size:12px;font-weight:500;text-transform:capitalize}.pickup-toast small{display:block;color:#a8bd95;font-size:9px;margin-top:3px}.pickup-toast.exit{opacity:0;transform:translateY(-8px);transition:.35s}
.near-loot{position:fixed;z-index:7;pointer-events:none;transform:translate(-50%,-100%);background:#16251deb;color:#e9e7d4;border:1px solid #728761;padding:7px 11px;border-radius:6px;text-align:center;white-space:nowrap;font-size:11px}.near-loot small{display:block;color:#bbcc9c;margin-top:3px;font-size:9px}.near-loot.full{border-color:#bb7e65}.near-loot.full small{color:#e1a488}
.placement-bar{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);z-index:10;padding:10px 14px;background:#17241ff2;border:1px solid #5e744f;border-radius:8px;display:flex;gap:9px;align-items:center;color:#e5e4d0;font-size:11px}.placement-bar[hidden]{display:none}.placement-bar button{background:#36472f;color:#e3d5a2;border:1px solid #70825b;border-radius:5px;padding:10px;min-height:40px;cursor:pointer}
@keyframes loot-in{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
@media(min-width:741px){
 #bag .panel-card{height:min(760px,90dvh)}
 #bag .panel-body{min-height:0;overflow:hidden}
 .equipment-pane{min-height:0;overflow-y:auto}.equipment-stage{height:clamp(210px,calc(90dvh - 385px),354px)}
 .survivor-preview{object-fit:contain}.equip-column{bottom:24px}.equip-slot{min-height:72px;padding:6px 4px;gap:3px}.equip-slot .item-icon{width:30px;height:30px}
 .inventory-pane{min-height:0}.inventory-grid{flex:1 1 auto;min-height:106px;max-height:none}.item-detail{flex:0 0 auto;min-height:110px;margin-top:12px;padding-top:12px}
 .inventory-filters{padding:12px 0}.item-detail p{margin:8px 0}.item-actions{margin-top:9px}.detail-heading b{font-size:17px}
}
@media(max-width:740px){
 #bag .panel-card,#build .panel-card{width:100%;height:100dvh;max-height:100dvh;border-radius:0}
 #bag .panel-head,#build .panel-head{padding:16px 18px}#bag .panel-title,#build .panel-title{font-size:20px}
 #bag .panel-body{display:block}.equipment-pane{padding:18px;border-right:0;border-bottom:1px solid #3b4a36}.equipment-stage{height:275px;max-width:380px;margin:12px auto}.equip-column{width:90px;bottom:25px}.equip-slot{min-height:73px;padding:5px}.equip-slot .item-icon{height:25px;width:25px}.survivor-preview{height:100%;width:189px}
 .gear-stats{padding-top:10px}.gear-stats b{font-size:16px;display:inline;margin-left:8px}.equip-help{margin-top:12px}.inventory-pane{padding:18px}.inventory-search{width:125px}.inventory-filters{gap:3px}.inventory-filters button{padding:8px 10px;min-height:40px}.inventory-grid{max-height:none;min-height:140px;gap:6px}.inventory-item{min-height:98px}.inventory-item>b{font-size:9px}.inventory-empty{min-height:145px}.item-detail{min-height:100px}#bag .panel-foot{padding:12px 18px}
 #build .panel-body{display:block;padding:18px}.build-catalog{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.build-card{min-height:116px;align-items:center;padding:10px 5px;gap:6px;text-align:center}.build-card>.item-icon{width:38px;height:38px;margin:0}.build-card>small{display:none}.build-card>b{font-size:11px}.build-ready{font-size:8px}.build-detail{padding:12px 0 0}.build-illustration{height:80px}.build-illustration>.item-icon{width:68px;height:68px}.build-detail h2{font-size:23px}.build-detail>p{margin-bottom:18px}#build .panel-foot{font-size:9px;padding:12px 18px}
 .pickup-feed{right:12px;top:28%;max-width:180px}.pickup-toast{padding:8px 10px}.pickup-toast b{font-size:11px}.placement-bar{bottom:220px;max-width:95vw;padding:8px;gap:6px}.placement-bar>span{max-width:100px}
}
@media(prefers-reduced-motion:reduce){.pickup-toast{animation:none}.pickup-toast.exit,.carry-meter i{transition:none}}
