#armoryScreen { z-index: 85; background: rgba(3,8,18,.9); }
#armoryScreen .armory-panel { position:relative; width:min(1080px,96vw); height:min(820px,94dvh); max-height:94dvh; padding:54px 18px 16px; overflow:hidden; }
.armory-close { position:absolute; top:10px; right:18px; }
.armory { --gear-color:#92eaff; --gear-glow:#326a8540; container-type:inline-size; height:100%; min-height:220px; color:#dceeff; text-align:left; }
.armory-tabs { display:flex; flex-wrap:wrap; gap:6px; padding-bottom:10px; }
.armory .btn { font-size:12px; min-height:36px; padding:8px 12px; margin:0; }
.armory-body { display:grid; grid-template-columns:minmax(170px,1fr) minmax(0,2.2fr); gap:16px; height:calc(100% - 52px); min-height:0; }
.armory-list, .armory-detail { overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; padding:2px 8px 20px 2px; min-width:0; }
.armory-list .btn { display:flex; flex-direction:column; align-items:flex-start; width:100%; gap:5px; margin-bottom:7px; text-align:left; }
.armory-list small, .armory-caption { font-size:10px; color:#92adc4; }
.armory-detail { position:relative; }
.armory-detail h3 { font-size:21px; color:#a6efff; margin:0 0 10px; }
.armory-detail h4 { font-size:13px; color:#a7cde1; margin:16px 0 6px; }
.armory-detail p { font-size:12px; white-space:pre-line; line-height:1.7; margin:8px 0; }
.armory-detail small { display:block; line-height:1.6; }
.armory-detail > .btn { margin:4px 6px 4px 0; }
.armory-detail details { margin:14px 0; border-top:1px solid #293b56; padding:10px 0; }
.armory-detail summary { cursor:pointer; font-size:12px; color:#a9d3ed; }
.armory-detail .gear-preview { height:260px; border-radius:12px; background:radial-gradient(ellipse,#18334a88,transparent 70%); }
.armory-detail .gear-preview-controls button { font-size:14px; border:1px solid #365670; border-radius:20px; background:#0b1a2b; color:#bcefff; min-height:32px; padding:4px 12px; }
.armory-detail .gear-preview.is-expanded { position:fixed; inset:10px; z-index:110; height:auto; padding:30px 10px 45px; background:#081424; }
.coop-pane .armory-detail .gear-preview.is-expanded { position:absolute; inset:0; }
.armory-stats { color:#87f5ce; }
.armory-legend { border-left:2px solid #ffd473; padding-left:12px; color:#ffe2a0; }
.armory-back { display:none; }
.coop-pane [data-ui="codex"] { height:100%; min-height:240px; }
.coop-pane .armory-tabs { border:0; padding:0 0 8px; }
.shop-allowance { font-size:12px; color:#9ac4dd; grid-column:1/-1; }
.shop-reveal { grid-column:1/-1; border:1px solid var(--item-color,#93dcff); border-radius:14px; padding:16px; background:linear-gradient(120deg,#172a3c,#0a1426); box-shadow:0 0 22px color-mix(in srgb,var(--item-color) 15%,transparent); text-align:left; }
.shop-reveal h3 { color:var(--item-color); font-size:16px; margin:0 0 8px; }
.shop-reveal p { white-space:pre-line; font-size:12px; line-height:1.65; }
.shop-reveal > small { display:block; font-size:11px; color:#badbe9; }
.shop-reveal-targets { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.shop-reveal-target { display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; margin:10px 0; }
.shop-reveal-target small { flex:1; min-width:120px; font-size:11px; line-height:1.5; color:#b1cadd; }
.shop-reveal .btn { min-height:38px; font-size:12px; padding:8px 14px; }
.shop-reveal.reveal-new { animation:gear-reveal .45s ease-out both; }
.shop-reveal[data-rarity="legendary"].reveal-new { animation:gear-reveal .7s ease-out both; box-shadow:0 0 30px #ffd76b66; }
@keyframes gear-reveal { from { transform:translateY(8px); filter:brightness(1.9); opacity:.3; } to { transform:none; filter:none; opacity:1; } }
@container (max-width:580px) {
  .armory-body { display:block; height:calc(100% - 90px); }
  .armory-list { height:100%; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; gap:7px; padding-right:0; }
  .armory-list .btn { margin:0; font-size:11px; }
  .armory-detail { display:none; height:100%; padding-right:0; }
  .armory.detail-open .armory-list { display:none; }
  .armory.detail-open .armory-detail { display:block; }
  .armory .armory-back { display:block; margin:0 0 12px; }
  .armory-detail .gear-preview { height:210px; }
  .armory-detail .gear-preview.is-expanded { height:auto; }
}
@media (max-height:500px) { .armory-detail .gear-preview { height:180px; } #armoryScreen .armory-panel { padding-top:42px; } }
@media (prefers-reduced-motion:reduce) { .shop-reveal.reveal-new { animation:none; } }

@media (max-height:500px) { .shop-reveal { padding:10px; } .shop-reveal h3 { font-size:13px; margin-bottom:4px; } .shop-reveal p { font-size:10px; line-height:1.4; margin:3px 0; } .shop-reveal-target { gap:4px; margin:5px 0; } .shop-reveal-target small { font-size:9px; min-width:80px; } .shop-reveal .btn { min-height:30px; padding:6px 9px; font-size:10px; } }

.shop-reveal .nav-selected { outline:2px solid #aff6ff; outline-offset:2px; }
