/* The equipment lab shares the site's local fonts, bronze palette and controls. */
[hidden]{display:none!important}
.builder-nav{display:flex;gap:28px;font-size:12px;color:#cbbb99}
.builder-nav a:hover{color:var(--gold-bright)}
.builder-intro{padding:72px 0 24px;max-width:920px}
.builder-intro h1{font-size:clamp(34px,4.6vw,61px);line-height:1.18}
.builder-intro>p:not(.eyebrow){max-width:640px;margin-top:23px;font-size:18px}
.builder-intro .eyebrow{display:flex;align-items:center;flex-wrap:wrap;gap:16px;font-size:10px;letter-spacing:2px}
.lab-badge{display:inline-block;border:1px solid #8d754a;background:#9f75371c;padding:6px 11px;color:#e1c18b;letter-spacing:1.3px}
.lab-notice{margin-top:28px;padding:18px 22px;border-left:2px solid #a78b56;background:#27251a;color:#bcb6a5;font-size:14px;line-height:1.7}
.lab-notice strong{color:#e1d2b3}
.lab-notice a,.model-notes a{text-decoration:underline;text-underline-offset:4px;color:#d6b87c}
.lab-status{font-size:13px;min-height:24px;color:#cfba91;margin:8px 0 16px}
.lab-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 22px}
.lab-toolbar>p{font-size:14px}.lab-toolbar>div{display:flex;gap:10px}
.lab-button{background:#26261c;color:#d9c49c;border:1px solid #72603e;padding:9px 13px;min-height:42px;font-size:13px;line-height:1.5}
.lab-button:hover{background:#373024;border-color:#b99b63}.lab-button:disabled{opacity:.45;cursor:default}
.builder-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
.lab-panel{border:1px solid #514834;background:linear-gradient(125deg,#1e2118,#141610);padding:28px;min-width:0}
.lab-panel-heading{border-bottom:1px solid #454432;padding-bottom:22px;margin-bottom:22px}
.lab-panel-heading .eyebrow{font-size:9px;margin-bottom:10px}
.lab-panel-heading h2{font-size:28px;letter-spacing:-.3px}
.builder-page input,.builder-page select{display:block;width:100%;min-width:0;min-height:44px;background:#11150f;border:1px solid #666149;border-radius:0;color:#ded9cb;padding:9px 11px;font-size:14px}
.builder-page input:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}
.builder-page label{display:block;font-size:12px;font-weight:600;color:#d4c5a6}
.builder-page label input,.builder-page label select{margin-top:7px}
.builder-page summary{cursor:pointer;color:#d8c29a;font-size:14px}
.base-details{border-bottom:1px solid #454432;padding-bottom:18px;margin-bottom:16px}
.base-details summary{display:flex;justify-content:space-between;gap:10px}
.base-details summary span{color:#a9ac98;font-size:12px}
.base-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px}
.base-fields small{font-weight:400;color:#adae9b;display:block;font-size:11px;margin-top:4px}
.lab-help{font-size:12px;line-height:1.7;color:#afb09d;margin:12px 0}
.equipment-fields{display:grid;gap:15px;margin-top:20px}
.equipment-slot{background:#12150fe0;border:1px solid #3d4330;padding:17px;min-width:0}
.equipment-slot>label{font-size:12px;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px}
.equipment-slot[data-design=magic]{border-left:2px solid #94aadd}.equipment-slot[data-design=rare]{border-left:2px solid #d3bc74}.equipment-slot[data-design=legendary]{border-left:2px solid #d99e66}
.item-note{margin-top:9px;font-size:12px;color:#b1b29e;line-height:1.65}
.equipment-slot details{margin-top:12px;border-top:1px solid #383e2c;padding-top:10px}
.roll-actions{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0}
.roll-actions .lab-button{font-size:11px;padding:7px 9px;min-height:36px}
.modifier-field{margin-top:15px;padding-top:13px;border-top:1px solid #333b28}
.modifier-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}
.modifier-heading select{width:85px;flex-shrink:0}
.modifier-detail{font-size:11px;color:#b7b6a2;margin-top:6px;line-height:1.7}
.modifier-detail strong{font-weight:600;color:#d8c69f}
.roll-quality{margin-top:15px;font-size:12px;color:#cebd92;line-height:1.8}
.signature-note{padding:12px;border:1px solid #a079464d;color:#dec19e;font-size:12px;margin-top:12px}
.target-label{margin-bottom:7px}.lab-error{color:#f2bea8;background:#422a1c;padding:14px;border:1px solid #a36f50;margin-top:20px;font-size:14px}
.stats-table{border-collapse:collapse;width:100%;font-size:12px;margin-top:24px}
.stats-table caption{text-align:left;font:18px var(--serif);color:#d8c7a6;margin-bottom:12px}
.stats-table th,.stats-table td{padding:12px 7px;border-bottom:1px solid #454432;text-align:right}
.stats-table th:first-child{text-align:left;padding-left:0}.stats-table thead th{color:#a7aa92;font-size:10px;font-weight:400}
.stats-table tbody th{font-size:12px;font-weight:400}.stats-table td:last-child{color:#e4c992;font-weight:600}
.stats-table small{font-weight:400;color:#9da38a;display:block;font-size:10px}
.effect-list{display:grid;gap:13px;margin:26px 0}
.effect-heading{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#cdbb95}
.effect-list meter{width:100%;height:12px;display:block;accent-color:#c4a66b}
.effect-list meter::-webkit-meter-bar{background:#353a27;border:0}.effect-list meter::-webkit-meter-optimum-value{background:#b69a66}
.effect-list p{font-size:11px;color:#aaa992;margin-top:3px}
.benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.benefit-card{background:#28281b;border:1px solid #67604455;padding:17px;min-width:0}
.benefit-card span{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#c3b796}
.benefit-card strong{display:block;font:23px var(--serif);color:#e4ce9c;margin:9px 0}
.benefit-card p{font-size:12px;line-height:1.7}
.build-tips{margin:18px 0;padding-left:18px;color:#bbb49f;font-size:12px;line-height:1.8}.build-tips li+li{margin-top:8px}
.model-notes{border-top:1px solid #514a35;margin-top:22px;padding-top:18px;font-size:12px;line-height:1.8}
.model-notes p{margin-top:12px}.model-notes a{display:inline-block;margin-top:12px}
.catalogue-section{padding:76px 0 35px}.catalogue-section h2{font-size:32px}
.catalogue-filters{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px;margin-top:30px}
.item-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}
.catalogue-card{background:#191d14;border:1px solid #4d4936;padding:23px;display:flex;flex-direction:column;min-width:0;gap:12px}
.item-design{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#b7baa6}.item-design[data-design=magic]{color:#a8bcec}.item-design[data-design=rare]{color:#e0c77b}.item-design[data-design=legendary]{color:#edb27e}
.catalogue-card h3{font-size:19px;color:#e0d0ae}.catalogue-card p{font-size:12px}.catalogue-card ul{margin:0;padding-left:16px;color:#c1b796;font-size:12px;line-height:1.8}.catalogue-card .card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:8px}
.catalogue-card .lab-button{font-size:12px;width:100%}.catalogue-card .equipped-mark{font-size:11px;color:#bccfa4}
.catalogue-pagination{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:26px;font-size:13px;color:#c7b48b}
.catalogue-revision{font-size:11px;border-top:1px solid #373e29;padding:22px 0 40px;color:#a3a68e}
.catalogue-empty{padding:30px;border:1px solid #484b34;grid-column:1/-1}
@media(max-width:1100px){.lab-panel{padding:22px}.builder-layout{gap:16px}.benefit-grid{grid-template-columns:1fr}.catalogue-card{padding:19px}.item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.builder-nav{gap:16px;font-size:11px}.builder-nav a:first-child{display:none}.builder-intro{padding-top:40px}.builder-intro>p:not(.eyebrow){font-size:16px}.builder-layout{grid-template-columns:1fr}.lab-toolbar{align-items:start;flex-direction:column;gap:13px}.lab-panel{padding:22px}.lab-panel-heading h2{font-size:25px}.benefit-grid{grid-template-columns:1fr 1fr}.catalogue-section{padding-top:55px}.catalogue-section h2{font-size:27px}.catalogue-filters{grid-template-columns:1fr 1fr;gap:12px}.catalogue-filters label:first-child{grid-column:1/-1}}
@media(max-width:480px){.item-grid,.benefit-grid{grid-template-columns:1fr}.lab-panel{padding:18px}.equipment-slot{padding:13px}.builder-nav{gap:12px;font-size:10px}.builder-page .brand>span{font-size:12px}.builder-page .brand-bottom{font-size:16px}.lab-notice{padding:15px 17px}.catalogue-filters{grid-template-columns:1fr}.stats-table th,.stats-table td{padding-inline:4px;font-size:11px}.catalogue-pagination{gap:12px}.base-fields{grid-template-columns:1fr}}
