.workshop-page{--ws-line:#62756166;--ws-muted:#a5b7a6;--ws-active:#c8d8a4;--ws-main-height:450px;--ws-parts-height:350px;max-width:1480px;margin:auto;min-width:0}
.workshop-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0}.workshop-heading h1{margin:0;font-size:26px;letter-spacing:.06em}.workshop-basis{color:var(--ws-muted);font-size:11px;margin:0;text-align:right}
.workshop-controls{display:flex;align-items:end;gap:9px;position:relative;margin-bottom:14px}.workshop-controls label{display:grid;gap:4px;font-size:10px;color:var(--ws-muted);min-width:0}.workshop-controls label:first-child{flex:1.15}.workshop-controls label:nth-child(2){flex:1}.workshop-page input,.workshop-page select{width:100%;min-width:0;max-width:none;padding:7px 10px;min-height:34px;border:1px solid #63735e;background:#142019;color:var(--text);font:inherit;border-radius:1px}.workshop-controls label input,.workshop-controls label select{font-size:13px}.workshop-page .secondary-button{padding:6px 10px;font-size:12px;min-height:34px;white-space:nowrap}.workshop-controls>.secondary-button{background:#344631;border-color:#8c9f76}.workshop-page button:disabled{opacity:.45;cursor:default}.workshop-page button:focus-visible,.workshop-page select:focus-visible,.workshop-page input:focus-visible,.workshop-page summary:focus-visible{outline:2px solid #d8dfb8;outline-offset:2px}
.workshop-records{position:relative;flex:0 0 auto;font-size:12px}.workshop-records summary{cursor:pointer;min-height:34px;padding:7px 10px;color:#c5d2ba;border:1px solid var(--ws-line);background:#1c2b21}.workshop-record-list{position:absolute;right:0;top:100%;z-index:8;display:grid;gap:5px;margin-top:5px;padding:10px;width:min(460px,calc(100vw - 40px));max-height:260px;overflow:auto;border:1px solid #8a9a75;background:#15231b;box-shadow:0 10px 25px #0008}.workshop-record{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid var(--ws-line)}.workshop-record strong{flex:1;overflow-wrap:anywhere;font-size:12px}.workshop-record small{color:var(--ws-muted);font-size:10px;white-space:nowrap}.workshop-record button{flex-shrink:0}
.workshop-status{font-size:12px;color:#ddca95;line-height:1.5;margin:0 0 10px}.workshop-status:empty{display:none}.workshop-empty{grid-column:1/-1;padding:80px 20px;text-align:center;color:var(--ws-muted);border:1px dashed var(--ws-line)}
.workshop-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,350px);grid-template-rows:var(--ws-main-height) var(--ws-parts-height);gap:12px;align-items:stretch}.workshop-assembly,.workshop-stats,.workshop-affixes,.workshop-parts{min-width:0;margin:0;border:1px solid #63765e;background:#1b2a20;box-shadow:inset 0 0 0 3px #8e9c7809}.workshop-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;height:35px;padding:7px 12px;border-bottom:1px solid var(--ws-line);flex-shrink:0}.workshop-section-head h2,.workshop-stats h2,.workshop-parts h2,.workshop-affixes>h2{margin:0;font-size:13px;font-weight:600;letter-spacing:.06em}.workshop-section-head>span{font-size:10px;color:var(--ws-muted);text-align:right}
.workshop-assembly{grid-column:1;grid-row:1;position:relative;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse at 50% 0,#40533b44,transparent 75%),#15231b}.workshop-gun-preview{position:relative;height:104px;flex-shrink:0;padding:10px 45px 22px;background-image:linear-gradient(#91ae7c09 1px,transparent 1px),linear-gradient(90deg,#91ae7c09 1px,transparent 1px);background-size:20px 20px;border-bottom:1px solid #56684e55}.workshop-gun-preview svg{width:100%;height:100%;image-rendering:pixelated}.workshop-preview-label{position:absolute;bottom:5px;left:12px;font-size:10px;color:#adbd9d}.workshop-preview-pending{position:absolute;right:12px;bottom:5px;color:#d8c18c;font-size:10px}.workshop-preview-fallback{display:flex;align-items:center;justify-content:center;height:100%}.workshop-preview-fallback img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.workshop-diagram-tools{display:flex;align-items:center;justify-content:end;gap:3px;height:32px;padding:2px 8px;background:#19291f;flex-shrink:0}.workshop-diagram-tools>span{margin-right:auto;color:#94a98b;font-size:10px}.workshop-diagram-tools button{border:1px solid var(--ws-line);background:#243628;color:#cbd9b8;min-width:30px;height:27px;padding:0 6px;font-size:11px}.workshop-diagram{flex:1;min-height:0;overflow:auto;overscroll-behavior:auto;scrollbar-width:thin;scrollbar-color:#607454 #15231b;background-image:radial-gradient(#859a6b33 .6px,transparent .6px);background-size:12px 12px;position:relative}.workshop-diagram-stage{position:relative;min-width:100%;min-height:100%}.gunsmith-tree{position:absolute;width:max-content;height:max-content;transform-origin:top left;padding:12px}.gunsmith-node{display:grid;grid-template-areas:'. top .' 'left core right' '. bottom .';grid-template-columns:max-content max-content max-content;grid-template-rows:max-content max-content max-content;gap:10px;width:max-content;height:max-content;align-items:center;justify-items:center;position:relative}.gunsmith-branch{display:flex;gap:4px;width:max-content;align-items:center;position:relative}.gunsmith-top{grid-area:top;max-width:var(--card-w);flex-wrap:wrap;justify-content:flex-start;align-items:flex-end}.gunsmith-bottom{grid-area:bottom;align-self:start;align-items:flex-start}.gunsmith-left{grid-area:left}.gunsmith-right{grid-area:right}.gunsmith-links{position:absolute;left:0;top:0;pointer-events:none;z-index:0;overflow:visible}.gunsmith-links polyline{stroke:#829270;stroke-width:1.2}
.gunsmith-card{grid-area:core;width:var(--card-w);height:96px;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 7px;border:1px solid #71836a;background:linear-gradient(145deg,#293d2d,#1a291e);color:#d5dec8;box-shadow:inset 0 0 0 3px #9bab8010;font:inherit;cursor:pointer;border-radius:1px}.gunsmith-card[aria-pressed=true]{border-color:#d5dfa9;box-shadow:inset 0 0 0 2px #bdcf8b55;background:linear-gradient(140deg,#415232,#263a25)}.gunsmith-card:hover{border-color:#bdcea0}.gunsmith-card.conflict{border-color:#d7a16e}.gunsmith-card.drop-target{outline:3px solid #d2e3a2;outline-offset:2px;background:#45603b}.gunsmith-card-label{font-size:12px;color:#b2c49f;align-self:start;line-height:1.1;white-space:nowrap}.gunsmith-card-art{display:flex;align-items:center;justify-content:center;width:100%;height:43px;min-height:0;flex:1}.gunsmith-card-art img{width:100%;height:100%;max-height:43px;object-fit:contain;image-rendering:pixelated;pointer-events:none}.gunsmith-card-name{font-size:13px;line-height:1.2;max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:center;overflow-wrap:anywhere;min-height:13px}.gunsmith-card-plus{font-size:25px;color:#778c6c;flex:1;display:flex;align-items:center}.gunsmith-required{position:absolute;top:4px;right:4px;color:#b2bf8d;font-size:7px}.gunsmith-corruption{position:absolute;right:4px;bottom:18px;font-size:10px;color:#cfb6ec;background:#352941;padding:0 3px;border:1px solid #9b79ac88}
.workshop-issues{position:absolute;left:8px;right:8px;bottom:5px;z-index:3;margin:0;padding:5px 8px 5px 22px;color:#e0c48c;background:#20291af5;border:1px solid #9f865577;font-size:10px;line-height:1.4;max-height:65px;overflow:auto}
.workshop-stats{grid-column:2;grid-row:1;display:flex;flex-direction:column;padding:12px;background:linear-gradient(160deg,#213326,#111e16);height:100%;min-height:0;overflow:hidden}.workshop-stats h2{flex-shrink:0;padding-bottom:10px;border-bottom:1px solid var(--ws-line);margin-bottom:6px}.workshop-ammo{font-size:11px;color:#b8c9ac;line-height:1.4;padding:4px 0;margin:0;flex-shrink:0;overflow-wrap:anywhere}.workshop-stats .native-stats{flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable;overscroll-behavior:contain;display:block;scrollbar-width:thin;margin:10px 0 0;padding-right:4px}.workshop-stats .native-stat{display:grid;grid-template-columns:65px minmax(50px,1fr) 54px;gap:6px;align-items:center;min-height:23px;margin:0;font-size:11px}.workshop-stats .native-stat-label{white-space:nowrap}.workshop-stats .native-stat-value{font-variant-numeric:tabular-nums;margin:0;text-align:right}.workshop-stat-unknown{display:flex;justify-content:space-between;font-size:11px;color:#d9bf87}.workshop-stat-unknown dd{margin:0}.workshop-conditions{flex-shrink:0;border-top:1px solid var(--ws-line);padding-top:8px;margin-top:8px;font-size:10px;line-height:1.5;color:var(--ws-muted)}.workshop-conditions summary{cursor:pointer;color:#c3d0b3}.workshop-conditions>div{max-height:92px;overflow:auto;overscroll-behavior:contain}.workshop-conditions p{margin:7px 0 0}
.workshop-affixes{grid-column:2;grid-row:2;max-height:var(--ws-parts-height);min-height:0;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain;align-self:start}.workshop-affixes .workshop-section-head{height:auto;min-height:34px;padding:8px 10px}.workshop-affixes .workshop-section-head h2{font-size:12px;line-height:1.4;overflow-wrap:anywhere}.workshop-affixes .workshop-section-head>span{font-size:9px;flex-shrink:0}.workshop-affixes>h2,.workshop-affixes>.guide-note{padding:10px;margin:0}.workshop-affix-list{list-style:none;padding:0 10px;margin:0}.workshop-affix-list li{display:flex;align-items:start;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid var(--ws-line)}.workshop-affix-list strong{color:#d0dcb8;font-size:12px}.workshop-affix-list p{color:var(--ws-muted);font-size:10px;line-height:1.5;margin:3px 0 0}.workshop-affix-actions{display:flex;gap:3px;flex-shrink:0}.workshop-affix-actions .secondary-button{min-height:27px;padding:2px 6px;font-size:10px}.workshop-affix-tools{padding:9px 10px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.workshop-affix-tools select{font-size:11px;min-height:29px;flex:1;min-width:80px;padding:4px}.workshop-affix-tools .secondary-button{min-height:29px;font-size:11px;padding:4px 7px}.workshop-affix-tools>span{font-size:10px;color:var(--ws-muted)}.workshop-remove{border:0;background:none;color:#bbaa83;text-decoration:underline;text-underline-offset:3px;margin:0 10px 10px;padding:0;font-size:10px;cursor:pointer}.workshop-ammo-count{display:grid;grid-template-columns:max-content 70px minmax(0,1fr);gap:7px;align-items:center;padding:10px;font-size:11px}.workshop-ammo-count input{min-height:30px;font-size:12px}.workshop-ammo-count>span{font-size:10px}
.workshop-parts{grid-column:1;grid-row:2;display:flex;flex-direction:column;min-height:0;padding:9px;background:#18271d}.workshop-parts>h2{font-size:12px;margin-bottom:7px}.workshop-slot-tabs{display:flex;gap:4px;overflow:auto;flex-shrink:0;padding-bottom:5px;scrollbar-width:thin}.workshop-slot-tabs .secondary-button{font-size:10px;min-height:26px;padding:3px 8px;background:#233627;border-color:#526b4c}.workshop-slot-tabs button[aria-pressed=true]{color:#e0e9c5;background:#435936;border-color:#a0b581}.workshop-parts-tools{display:flex;gap:9px;align-items:center;margin:3px 0 7px;flex-shrink:0}.workshop-parts-tools input{font-size:11px;min-height:29px;padding:4px 7px;flex:1}.workshop-parts-tools .guide-note{font-size:10px;white-space:nowrap;margin:0}.workshop-part-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));grid-auto-rows:116px;gap:5px;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px;align-content:start;flex:1}.workshop-part{min-width:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px;border:1px solid #52674a;background:#233729;color:#d0dcc1;font:inherit;cursor:grab;position:relative}.workshop-part:hover{border-color:#b6cb91;background:#344a31}.workshop-part:active{cursor:grabbing}.workshop-part>span:not(.workshop-part-art):not(.workshop-preset){font-size:10px;line-height:1.2;max-width:100%;text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.workshop-part-art{height:34px;min-height:24px;display:flex;align-items:center;justify-content:center;width:100%;flex:1}.workshop-part-art img{pointer-events:none;height:34px;max-height:34px;width:100%;object-fit:contain;image-rendering:pixelated}.workshop-part .workshop-preset{font-size:8px;line-height:1.2;color:#dccb95;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workshop-part-grid>.guide-note{font-size:11px;grid-column:1/-1}
.workshop-workspace.is-melee{grid-template-rows:220px auto}.is-melee .workshop-stats{grid-row:1/span 2;max-height:480px}.is-melee .workshop-affixes{grid-column:1;grid-row:2;max-height:245px}.is-melee .workshop-gun-preview{height:140px}.workshop-melee-edit{margin:8px 12px;align-self:start;border:1px solid var(--ws-line);background:#2b3f2c;color:#cbd9b7;padding:4px 10px;font-size:11px}
@media(min-width:1001px) and (max-height:850px){.workshop-page{--ws-main-height:420px;--ws-parts-height:320px}.workshop-gun-preview{height:85px}.workshop-heading{margin:8px 0}.workshop-heading h1{font-size:24px}}
@media(max-width:1100px){.workshop-workspace{grid-template-columns:minmax(0,1fr) 280px}.workshop-controls label:nth-child(2){flex:.8}.workshop-stats{padding:10px}.workshop-records summary{padding-inline:7px}.workshop-part-grid{grid-template-columns:repeat(auto-fill,minmax(108px,1fr))}.workshop-parts-tools .guide-note{max-width:125px;overflow:hidden;text-overflow:ellipsis}}
@media(max-width:900px){.workshop-page{--ws-main-height:390px;--ws-parts-height:350px}.workshop-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:var(--ws-main-height) var(--ws-parts-height) 300px auto;gap:10px}.workshop-assembly{grid-column:1;grid-row:1}.workshop-parts{grid-column:1;grid-row:2}.workshop-stats{grid-column:1;grid-row:3}.workshop-affixes{grid-column:1;grid-row:4;max-height:280px}.workshop-controls{flex-wrap:wrap}.workshop-controls label:first-child{flex:1 1 45%}.workshop-controls label:nth-child(2){flex:1 1 45%}.workshop-controls>.secondary-button{flex:1}.workshop-records{flex:1}.workshop-heading{align-items:start}.workshop-basis{max-width:170px}.workshop-workspace.is-melee{grid-template-rows:220px auto 300px}.is-melee .workshop-stats{grid-column:1;grid-row:3;max-height:none}.is-melee .workshop-affixes{grid-row:2}.workshop-gun-preview{height:100px}}
@media(max-width:460px){.workshop-page{--ws-main-height:360px;--ws-parts-height:330px}.workshop-heading h1{font-size:23px}.workshop-basis{font-size:10px;max-width:145px}.workshop-controls label:first-child,.workshop-controls label:nth-child(2){flex-basis:100%}.workshop-parts-tools{gap:5px}.workshop-parts-tools .guide-note{font-size:9px;max-width:105px}.workshop-part-grid{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));grid-auto-rows:116px}.workshop-record small{display:none}.workshop-stats .native-stat{font-size:11px;grid-template-columns:68px minmax(50px,1fr) 54px}.workshop-gun-preview{padding-inline:20px}.workshop-record-list{width:calc(100vw - 32px)}}

.workshop-basis span{display:inline-block;white-space:nowrap}.workshop-basis span+span::before{content:' · ';white-space:pre}.workshop-stats h2{display:flex;justify-content:space-between;gap:8px;align-items:center}.workshop-stats h2 small{font-size:10px;font-weight:400;letter-spacing:0;color:var(--ws-muted)}.workshop-stats .native-stats{scrollbar-color:#849675 #15231b}.workshop-stats .native-stats:focus-visible{outline:1px solid #c8d8a4;outline-offset:2px}.workshop-conditions,.workshop-affix-list p{font-size:11px}
.workshop-inspector{grid-column:2;grid-row:1/span 2;display:flex;flex-direction:column;gap:12px;min-width:0;min-height:0;height:100%;overflow:hidden}.workshop-inspector .workshop-stats{height:auto;min-height:150px;max-height:var(--ws-main-height);flex:0 1 auto}.workshop-inspector .native-stats{flex:1 1 auto;max-height:300px}.workshop-inspector .workshop-affixes{flex:0 1 auto;max-height:var(--ws-parts-height);min-height:0;width:100%}.is-melee .workshop-inspector{grid-column:2;grid-row:1/span 2}.gunsmith-card-label{font-size:14px}.gunsmith-card-name{font-size:15px}
@media(max-width:900px){.workshop-workspace{grid-template-rows:var(--ws-main-height) var(--ws-parts-height) auto}.workshop-inspector{grid-column:1;grid-row:3;height:auto;max-height:none;overflow:visible}.workshop-inspector .workshop-stats{max-height:340px;flex:none}.workshop-inspector .workshop-affixes{max-height:280px;flex:none}.workshop-workspace.is-melee{grid-template-rows:220px auto auto}.is-melee .workshop-inspector{grid-column:1;grid-row:3}.is-melee .workshop-stats{height:auto;max-height:340px}}

.workshop-part-entry{display:flex;flex-direction:column;min-width:0;min-height:0;border:1px solid #52674a;background:#233729}.workshop-part-entry .workshop-part{flex:1;border:0;width:100%}.workshop-properties{min-height:30px;border:0;border-top:1px solid #52674a;background:#1a2b20;color:#bdcfa7;font:inherit;font-size:11px;cursor:pointer;flex-shrink:0}.workshop-properties:hover{background:#3a5034;color:#edf2d8}.workshop-properties:focus-visible{outline:2px solid #c8d8a4;outline-offset:-2px}.workshop-affixes>.workshop-properties{margin:7px 10px;border:1px solid #52674a;padding:4px 12px;align-self:start}
