/* The requisition desk: a weapon stage, a single detail pane, and a finite rack.
   Small windows retain local scrolling instead of clipping focusable controls. */
#armory .armory-header {padding:12px 3vw 11px}
#armory .armory-header h2 {font-size:29px;margin:5px 0 3px}
#armory .desk-tabs button {padding:12px 30px}
#armory .loadout-toolbar {padding:9px 3vw}
#armory .armory-save {padding:10px 3vw}
#armory .weapon-workbench {grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) 106px;gap:0}
#armory .weapon-bench {grid-column:1;grid-row:1;grid-template-columns:minmax(0,1.1fr) minmax(390px,1fr);grid-template-rows:42px minmax(0,1fr)}
#armory .weapon-hero {grid-column:1;grid-row:1 / 3;display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:24px 7%;position:relative;border:0;border-right:3px solid #1e3931;background:radial-gradient(ellipse at 50% 80%,#668373,#2d4941 80%);isolation:isolate}
#armory .weapon-hero:after {content:'';position:absolute;inset:10px;border:1px solid #d9cc9c25;border-radius:3px 12px 8px 5px;pointer-events:none;z-index:-1}
#armory .weapon-title h3 {font-size:clamp(27px,3.7vw,52px);max-width:460px;line-height:.98;margin:8px 0 10px;letter-spacing:-1.5px}
#armory .weapon-title p {max-width:390px;font-size:12px;line-height:1.45;margin:6px 0 11px}
#armory .weapon-title > small {font-size:9px}
#armory .weapon-hero-art {flex:1;min-height:90px;display:flex;flex-direction:column;justify-content:center;gap:6px;position:relative}
#armory .weapon-hero-art:before {inset:0 5% 12%;border:2px dashed #decea435;transform:rotate(-9deg);border-radius:48% 43% 46% 39%}
#armory .weapon-hero-art .weapon-drawing {height:clamp(90px,18vh,200px);max-height:100%;width:100%;max-width:470px;transform:rotate(-8deg);filter:drop-shadow(8px 12px #17352c66)}
#armory .weapon-hero-art .pencil-note {font:11px var(--hand);letter-spacing:1px;margin:0;color:#e7d294;position:absolute;top:0;right:0;transform:rotate(5deg)}
.weapon-stamp {font:8px var(--label);letter-spacing:1px;border:1px dashed #d2bb8099;color:#e0cc95;padding:5px 9px;align-self:flex-start;transform:rotate(-4deg);position:absolute;bottom:0;left:0}
#armory .weapon-tabs {grid-column:2;grid-row:1;padding:0 9px;gap:0;justify-content:space-between;border-top:0}
#armory .weapon-tabs button {padding:12px 13px;font-size:9px;letter-spacing:.5px}
#armory .weapon-detail {grid-column:2;grid-row:2;padding:18px 22px;background:repeating-linear-gradient(0deg,transparent 0 27px,#8c794510 28px 29px),#eee2bd}
#armory .weapon-catalog {grid-column:1;grid-row:2;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:12px;padding:10px 3vw;background:#cbb98e;border:0;border-top:3px solid #8e7853;overflow:visible}
#armory .weapon-card,#armory .weapon-card.inspecting {min-height:0;min-width:0;padding:10px 12px 10px 40%;display:flex;flex-direction:column;justify-content:center;border:1px solid #9c835b;background:#e6d8b2;position:relative;transform:none;border-radius:3px 7px 2px 5px}
#armory .weapon-card:before {content:'';position:absolute;inset:5px;border:1px solid #ad997438;pointer-events:none}
#armory .weapon-card.inspecting {background:#fbefc9;border:2px solid #385b49;box-shadow:4px 4px #385b4944}
#armory .weapon-card .weapon-drawing {position:absolute;left:4px;top:12px;width:38%;height:52px;filter:drop-shadow(2px 3px #78603b33)}
#armory .weapon-card strong {font-size:15px;line-height:1.1}
#armory .weapon-card small {font-size:8px;letter-spacing:0;margin-top:7px}
#armory .weapon-stat-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 12px}
#armory .weapon-stat-grid b {font-size:32px;line-height:1.05}
#armory .weapon-stat-grid > div {border-left:3px solid #a79264;padding-left:12px}
#armory .weapon-detail .workshop-slip {margin:8px 0 0;padding:12px 14px;background:#ddcfaa88;font-size:12px}
#armory .weapon-detail .workshop-slip h4 {font-size:9px;margin:0 0 8px}
#armory .weapon-detail .workshop-slip small {font-size:9px;margin:6px 0 0}
#armory .weapon-detail .workshop-slip p {font-size:10px;margin:8px 0 0}
#armory .weapon-detail .workshop-slip table {font-size:10px;margin:8px 0}
#armory .mod-cards {gap:8px}
#armory .mod-card,#armory .mod-card[aria-pressed=true] {padding:11px 12px;gap:5px;min-height:60px;border:1px solid #a18d65;opacity:1}
#armory .mod-card[aria-pressed=true] {border:2px solid #41644f;padding:10px 11px;background:#d0dcba}
#armory .mod-card strong {font-size:14px;line-height:1.15}
#armory .mod-card small {font-size:8px}
.tuning-inspector {margin:13px 0;padding:0 125px 0 0;position:relative;min-height:70px}
.tuning-inspector > strong {font:700 18px var(--hand);display:block}
#armory .tuning-inspector p {font:11px/1.4 var(--label);margin:5px 0}
.tuning-inspector > small {font:9px/1.3 var(--label);display:block;color:#786342}
#armory .apply-tuning {position:absolute;right:0;top:8px;width:114px;background:#c2d0a6;font:800 9px var(--label);padding:11px 8px;box-shadow:2px 3px #8e795a44;transform:none}
#armory .finish-swatches {gap:7px;margin:0 0 13px;grid-template-columns:repeat(3,minmax(0,1fr))}
#armory .finish-swatch,#armory .finish-swatch[aria-pressed=true] {padding:6px 5px;border:1px solid #ab9265;display:grid;gap:3px;min-width:0;background:#e2d2ab}
#armory .finish-swatch[aria-pressed=true] {border:2px solid #466b51;padding:5px 4px;background:#d4dfba}
#armory .finish-swatch .weapon-drawing {height:35px}
#armory .finish-swatch strong {font:700 11px/1 var(--hand)}
#armory .finish-swatch small {font:7px var(--label);letter-spacing:.3px}
#armory .finish-inspector {padding:10px 122px 10px 12px;margin-bottom:8px;gap:4px}
#armory .finish-inspector strong {font-size:16px}
#armory .finish-inspector small {font-size:9px}
#armory .finish-inspector progress {height:5px;width:100%;margin:3px 0 0}
#armory .apply-finish {font-size:8px;padding:10px 8px;right:9px;top:12px}
.mastery-stamps {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:16px 0}
#armory .mastery-stamp {padding:8px 2px;background:#dfcea4;box-shadow:2px 3px #8e78552a;transform:rotate(-2deg);border:1px dashed #9b8155;display:grid;gap:4px;text-align:center}
#armory .mastery-stamp:nth-child(even) {transform:rotate(2deg)}
#armory .mastery-stamp[aria-pressed=true] {background:#f4e7b1;border:2px solid #a8653e;padding:7px 1px}
#armory .mastery-stamp.earned {background:#c9d4ae;color:#37533d}
.mastery-stamp small {font:6px var(--label);letter-spacing:.4px}.mastery-stamp b {font:700 25px var(--hand)}.mastery-stamp span {font-size:9px}
.mastery-reward {border:1px dashed #a28b5f;background:#e0d2aa;padding:16px;margin-bottom:13px}
.mastery-reward > small {font:8px var(--label);letter-spacing:.8px}
#armory .mastery-reward h4 {font:700 27px var(--hand);margin:6px 0 10px}
.mastery-reward-item {position:relative;padding:7px 0;display:grid;gap:3px}
.mastery-reward-item:has(.weapon-drawing) {padding-left:100px;min-height:42px}
.mastery-reward-item .weapon-drawing {position:absolute;left:0;top:0;width:85px;height:48px}
.mastery-reward-item strong {font:700 17px var(--hand)}.mastery-reward-item small {font:8px var(--label)}
#armory #unlock-road {grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
#armory .requisition-card {position:relative;min-width:0;text-align:left;padding:14px 16px;background:#e4d4ab;border:1px solid #9e865e;box-shadow:3px 4px #9d87552a;transform:none}
#armory .requisition-card.earned {background:#cbd7b1;border-color:#6a855b}
#armory .requisition-card small {font:8px var(--label);letter-spacing:.7px;display:block}
#armory .requisition-card .weapon-drawing {height:53px;margin:8px 0}
#armory .requisition-card strong {font:700 18px var(--hand);display:block}
#armory .requisition-card span {display:block;font:9px var(--label);padding:0;margin:6px 0 0;border:0;background:none;border-radius:0}
#armory .requisition-card b {position:absolute;right:12px;bottom:14px;font:7px var(--label)}
#armory .career-ribbon {padding:16px 4%;gap:20px}
#armory .unlock-section {padding:18px 4%}
#armory .unlock-section h3 {margin:0 0 13px;font:800 10px var(--label);letter-spacing:1px}
#armory .unlock-section > p {font:10px/1.5 var(--label);margin:14px 0 0}
#armory button:focus-visible {outline:3px solid #c37942;outline-offset:3px;z-index:1}
@media(min-width:1000px) and (min-height:820px) {
 #armory .weapon-hero {padding:35px 8%}#armory .weapon-hero-art .weapon-drawing {height:240px}
 #armory .weapon-detail {padding:28px 30px}#armory .finish-swatch .weapon-drawing {height:55px}
}
@media(max-width:900px) {
 #armory .weapon-bench {grid-template-columns:minmax(0,.85fr) minmax(350px,1fr)}
 #armory .weapon-hero {padding:20px 22px}#armory .weapon-title h3 {font-size:31px}
 #armory .weapon-detail {padding:15px}#armory .weapon-tabs button {padding:12px 8px;font-size:8px}
 #armory .weapon-card strong {font-size:13px}#armory .weapon-card small {font-size:7px}
 #armory #unlock-road {grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px) {
 #armory .weapon-workbench {grid-template-rows:84px minmax(0,1fr)}
 #armory .weapon-catalog {grid-row:1;padding:7px 12px;gap:6px;border-top:0;border-bottom:2px solid #8e7853;overflow-x:auto;grid-auto-columns:minmax(125px,1fr)}
 #armory .weapon-card,#armory .weapon-card.inspecting {padding:7px 7px 7px 34%}
 #armory .weapon-card .weapon-drawing {height:35px;top:12px;width:32%}
 #armory .weapon-card strong {font-size:11px}#armory .weapon-card small {font-size:6px}
 #armory .weapon-bench {grid-row:2;grid-template-columns:1fr;grid-template-rows:145px 38px minmax(0,1fr)}
 #armory .weapon-hero {grid-row:1;grid-column:1;display:grid;grid-template-columns:1.1fr 1fr;padding:13px 20px;border-right:0;border-bottom:2px solid #1e3931;gap:12px}
 #armory .weapon-hero:after {inset:6px}#armory .weapon-title h3 {font-size:24px;margin:5px 0}#armory .weapon-title p {font-size:9px;margin:4px 0}
 #armory .weapon-title > small {font-size:7px}#armory .equip-weapon {font-size:8px;padding:6px 8px;margin:3px 0}
 #armory .weapon-hero-art {min-height:0;height:100%}#armory .weapon-hero-art .weapon-drawing {height:85px}
 #armory .weapon-hero-art .pencil-note {font-size:9px}.weapon-stamp {font-size:6px;padding:3px 5px}
 #armory .weapon-tabs {grid-column:1;grid-row:2;justify-content:space-around}
 #armory .weapon-detail {grid-column:1;grid-row:3;padding:14px 20px}
 #armory .weapon-stat-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}#armory .weapon-stat-grid b {font-size:25px}
 #armory .finish-swatch .weapon-drawing {height:30px}
 #armory #unlock-road {grid-template-columns:repeat(2,minmax(0,1fr))}
 #armory .armory-header {padding:11px 20px}#armory .armory-header h2 {font-size:26px}
}
@media(max-width:440px) {
 #armory .loadout-toolbar {padding:7px 12px}#armory .armory-header small {font-size:6px;letter-spacing:1px}
 #armory .weapon-hero {padding:12px;grid-template-columns:1.2fr 1fr}#armory .weapon-title h3 {font-size:21px}
 #armory .weapon-detail {padding:12px}#armory .requisition-card {padding:12px}
 #armory .requisition-card b {position:static;display:block;margin-top:8px}
}
@media(max-height:620px) and (min-width:701px) {
 #armory .weapon-workbench {grid-template-rows:minmax(0,1fr) 86px}
 #armory .weapon-hero {overflow-y:auto;padding:14px 25px}#armory .weapon-title h3 {font-size:30px}
 #armory .weapon-hero-art {min-height:85px}#armory .weapon-hero-art .weapon-drawing {height:80px}
}
/* Each finish collection is a short, inspectable set rather than a scroll wall. */
.finish-groups {display:flex;gap:6px;margin-bottom:12px}
#armory .finish-group {padding:8px 12px;font:800 8px var(--label);letter-spacing:.7px;background:transparent;border:1px solid #a38b61;box-shadow:none;transform:none}
#armory .finish-group[aria-pressed=true] {background:#365448;color:#efe2ba;border-color:#365448}
#armory .finish-swatches {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
#armory .finish-swatch .weapon-drawing {height:49px}
#armory .finish-swatch strong {font-size:13px}
@media(max-width:700px) {
 .finish-groups {margin-bottom:8px}#armory .finish-group {padding:6px 10px;font-size:7px}
 #armory .finish-swatch .weapon-drawing {height:24px}#armory .finish-swatch strong {font-size:11px}
 #armory .finish-swatches {gap:6px;margin-bottom:8px}
 #armory .detail-finishes {padding-top:9px;padding-bottom:9px}
 #armory .finish-inspector {padding-top:7px;padding-bottom:7px;margin-bottom:5px}
}
@media(min-width:501px) and (max-width:700px) and (min-height:680px) {
 #armory .weapon-workbench {grid-template-rows:74px minmax(0,1fr)}
 #armory .weapon-bench {grid-template-rows:115px 38px minmax(0,1fr)}
 #armory .weapon-hero {padding-top:8px;padding-bottom:8px}
 #armory .weapon-hero-art .weapon-drawing {height:66px}
}
.tuning-projection {display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:12px;padding:13px 0 11px;border-top:1px dashed #a79166;margin-bottom:6px}
.tuning-projection small {display:block;font:8px var(--label);letter-spacing:.6px;margin-bottom:5px}
.tuning-projection strong {font:700 18px var(--hand)}
@media(max-width:700px){#armory .mod-card,#armory .mod-card[aria-pressed=true]{min-height:48px;padding-top:7px;padding-bottom:7px}.tuning-inspector {margin:10px 0;min-height:60px}.tuning-projection {padding:9px 0}.tuning-projection strong{font-size:16px}}
@keyframes weapon-paper-settle {from {opacity:.65;translate:0 7px}to {opacity:1;translate:0 0}}
#armory .weapon-hero-art .weapon-drawing {animation:weapon-paper-settle .22s ease-out}
#armory .weapon-card:hover,#armory .finish-swatch:hover,#armory .requisition-card:hover {background-color:#f5e9c5}
@media(prefers-reduced-motion:reduce){#armory .weapon-hero-art .weapon-drawing {animation:none}}
body.reduced #armory .weapon-hero-art .weapon-drawing {animation:none}
#armory progress {appearance:none;-webkit-appearance:none;height:7px;border:1px solid #8e7954;border-radius:2px 4px 1px 3px;background:#d8c99f;overflow:hidden}
#armory progress::-webkit-progress-bar {background:#d8c99f}
#armory progress::-webkit-progress-value {background:repeating-linear-gradient(115deg,#527052 0 9px,#5e7c5c 10px 12px)}
#armory progress::-moz-progress-bar {background:#527052}
#armory .finish-swatch .weapon-drawing {height:40px}
#armory .mastery-reward {padding:12px}.mastery-stamps {margin:12px 0}
@media(max-width:700px){#armory .finish-swatch .weapon-drawing {height:24px}}
#armory #unlock-road .requisition-card span {display:block;font:9px var(--label);padding:0;margin:6px 0 0;border:0;background:none;border-radius:0;transform:none;box-shadow:none}
#armory #unlock-road .requisition-card {min-height:0}
#armory .weapon-catalog {grid-template-columns:none;scroll-snap-type:x proximity}
#armory .weapon-card {scroll-snap-align:center}
