/* Compact desktop construction UI. Combat canvas and combat HUD layout are unchanged. */
.workbench-prep{position:absolute;inset:0;background:#081b23db;backdrop-filter:blur(3px);padding:12px}
.wb-shell{--wb-border:#8da99d35;--wb-gold:#e2c58a;--wb-muted:#99aeaf;--wb-cell:clamp(45px,4.2vh,57px);width:min(1560px,100%);height:100%;margin:auto;display:flex;flex-direction:column;min-height:0;background:linear-gradient(135deg,#1a333b,#102832 65%);border:1px solid #8baba158;border-radius:10px;box-shadow:0 18px 80px #0008;overflow:hidden}
.wb-shell button{transition:background .12s,border-color .12s;transform:none}
.wb-header{height:68px;flex-shrink:0;display:flex;align-items:center;gap:16px;padding:10px 20px;border-bottom:1px solid var(--wb-border)}
.wb-round{font:32px Georgia,serif;color:var(--wb-gold);padding-right:16px;border-right:1px solid var(--wb-border)}
.wb-header h1{font-size:21px;letter-spacing:.05em;font-weight:600;display:flex;align-items:center;gap:16px}
.wb-header h1 small{font-size:12px;font-weight:400;color:var(--wb-muted);letter-spacing:0}
.wb-header p{font-size:11px;color:var(--wb-muted);line-height:1.4;margin-top:3px}
.wb-header>button{font-size:13px;padding:8px 16px}.wb-header #prep-timer{font-size:12px;color:var(--wb-muted)}
.wb-tabs{height:44px;flex-shrink:0;display:flex;padding:0 18px;gap:7px;border-bottom:1px solid var(--wb-border);background:#0c212853}
.wb-tabs button{background:none;border:0;border-radius:0;border-bottom:2px solid transparent;min-width:108px;font-size:13px;padding:10px 18px;color:#9fb8b5}
.wb-tabs button.active{color:var(--wb-gold);border-bottom-color:var(--wb-gold);background:linear-gradient(0deg,#bfa27416,transparent)}
.wb-body{flex:1;min-height:0;overflow:hidden}.wb-body>*{height:100%;min-height:0}
.wb-footer{height:62px;flex-shrink:0;border-top:1px solid var(--wb-border);display:flex;align-items:center;gap:14px;padding:9px 18px;background:#0f252dcc}
.wb-footer>.primary{min-width:190px;height:42px}.wb-party{display:flex;gap:12px;font-size:11px;color:#b6c8c0}.wb-party span{display:flex;align-items:center;gap:5px}.wb-party i{width:6px;height:6px;border-radius:50%;background:#647b7a}.wb-party .ready i{background:#a5d6a7}.wb-ready-count,.wb-save-note{color:var(--wb-muted);font-size:11px}
.wb-panel-title{height:44px;flex-shrink:0;display:flex;align-items:center;gap:12px}.wb-panel-title h3{font-size:15px;font-weight:600;flex:1}.wb-panel-title h3 small{font-size:11px;font-weight:400;color:var(--wb-muted);margin-left:9px}.wb-panel-title>small{font-size:11px;color:var(--wb-muted)}
.wb-sp{font-size:11px;color:#bbbaa0}.wb-sp b{font-size:22px;color:var(--wb-gold);margin-right:3px}.wb-small{font-size:11px;padding:5px 10px}
.wb-icon{display:block;width:var(--wb-cell);height:var(--wb-cell);flex-shrink:0;background-repeat:no-repeat;image-rendering:pixelated;pointer-events:none}
.wb-icon-empty,.wb-slot-empty{display:grid;place-items:center;color:#486069;font-size:22px;height:100%;width:100%}
.wb-section-kicker{font:10px Georgia,serif;letter-spacing:.18em;color:#a6bdb7;margin-bottom:14px}.wb-gain{color:#a7d9ab!important}.wb-loss{color:#e2a193!important}
.wb-skill-workbench{display:grid;grid-template-columns:minmax(0,1fr) clamp(280px,26vw,360px);height:100%}
.wb-tree-panel{padding:9px 17px 12px;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}
.wb-core-label,.wb-common-label{display:flex;align-items:center;justify-content:space-between;height:24px;flex-shrink:0;font-size:11px;color:#c1cbb6}.wb-core-label>span:last-child{font-size:10px;color:#829fa2}.wb-common-label{border-top:1px solid var(--wb-border);margin-top:4px;padding-top:5px}
.wb-core-tree{position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(var(--tree-rows),minmax(0,1fr));flex:1;min-height:0;gap:4px 8px}
.wb-common-tree{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:repeat(var(--common-rows),minmax(0,1fr));flex:0 0 calc(var(--common-rows)*68px);gap:3px 6px}
.wb-node{position:relative;min-width:0;min-height:0;display:flex;justify-content:center;align-items:center}.wb-node-select{background:none!important;border:0!important;border-radius:0;padding:2px 0!important;max-width:100%;width:100%;display:flex;flex-direction:column;align-items:center;gap:3px;outline-offset:-1px}
.wb-node-frame{width:var(--wb-cell);height:var(--wb-cell);display:block;position:relative;border:1px solid #87908765;border-radius:4px;background:linear-gradient(140deg,#171e26,#101c22);box-shadow:0 2px 7px #0004;overflow:visible}.wb-node-frame .wb-icon{width:100%;height:100%}
.wb-node.learned .wb-node-frame{border-color:#c4ac76}.wb-node.selected .wb-node-frame{outline:2px solid #f5d590;outline-offset:2px;box-shadow:0 0 16px #cbb77033}.wb-node.gated .wb-icon{filter:grayscale(.7) brightness(.6)}
.wb-node-rank{position:absolute;bottom:-1px;left:-1px;right:-1px;background:#0a161ce8;color:#c8d2c4;font-size:10px;line-height:13px;text-align:center;border-radius:0 0 3px 3px}.wb-node.learned .wb-node-rank{color:#eed39b}
.wb-node-key{position:absolute;right:-3px;top:-4px;font-size:10px;line-height:12px;min-width:14px;padding:0 2px;color:#eed28c;background:#122632}.wb-passive-dot{position:absolute;left:-3px;top:-4px;color:#b9e1b9;background:#274f3e;font-size:9px;line-height:12px;padding:0 2px;font-style:normal}
.wb-node-name{font-size:11px;color:#d5dccf;line-height:14px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 3px}.wb-node.gated .wb-node-name{color:#8da3a3}.wb-node-gate{font-size:9px;line-height:11px;color:#93a9aa}.wb-learn-short{position:absolute;right:calc(50% - var(--wb-cell)/2 - 7px);top:2px;width:19px;height:19px;line-height:16px;padding:0!important;color:#ffdfa3;background:#655837!important;border:1px solid #ae945d!important;border-radius:3px;z-index:2}
.wb-common-tree{--wb-cell:38px}.wb-common-tree .wb-node-name{font-size:10px}.wb-common-tree .wb-node-rank{font-size:9px;line-height:11px}
.wb-quickbar{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:9px;border-top:1px solid var(--wb-border);height:83px;flex-shrink:0}.wb-quickbar>span{font-size:12px;margin-right:auto;flex-shrink:0}.wb-quickbar>span small{display:block;font-size:9px;color:var(--wb-muted);line-height:1.5;margin-top:3px}.wb-quickslot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #798d845a;background:#0e212bc7;border-radius:4px;min-width:0;width:72px;height:69px;padding:1px 2px!important;cursor:pointer}.wb-quickslot .wb-icon{width:42px;height:42px}.wb-quickslot>kbd{position:absolute;right:3px;top:2px;font-size:10px;padding:0 3px;color:#e6c48a}.wb-quickslot>small{font-size:9px;line-height:13px;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.wb-quickslot .wb-slot-empty{height:42px}
.wb-skill-details{border-left:1px solid var(--wb-border);padding:18px 19px 15px;background:#0d242ec7;min-width:0;min-height:0;overflow:hidden}.wb-skill-detail-panel{height:100%;display:none;flex-direction:column;min-height:0}.wb-skill-title{display:flex;gap:12px;align-items:center}.wb-skill-title .wb-icon{width:56px;height:56px;border:1px solid #988666;border-radius:4px;background-color:#0b1b23}.wb-skill-title h2{font-size:21px;line-height:1.3;word-break:break-word;margin-bottom:5px}.wb-skill-title span{font-size:11px;color:var(--wb-muted)}
.wb-rank-line{display:flex;align-items:baseline;gap:4px;margin:17px 0 13px;color:#aebfb5}.wb-rank-line strong{font:28px Georgia,serif;color:var(--wb-gold)}.wb-rank-line>span{font-size:13px}.wb-rank-line em{font-style:normal;font-size:11px;margin-left:auto;color:#a0b5af}
.wb-number-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.wb-number-table th{font-size:10px;font-weight:400;color:#93adad;background:#233b4060;padding:7px 5px}.wb-number-table th:first-child{text-align:left}.wb-number-table td{border-bottom:1px solid #8ba89b17;padding:8px 5px;text-align:center;white-space:nowrap}.wb-number-table td:first-child{text-align:left;color:#afc0b9}.wb-number-table td:last-child{color:#ddd1ad}
.wb-operate-note{border-top:1px solid var(--wb-border);margin-top:16px;padding-top:12px;font-size:11px}.wb-operate-note b{color:#dbc89e;font-weight:500}.wb-operate-note p{font-size:11px;color:#a4b7b2;line-height:1.65;margin-top:5px;max-height:54px;overflow:hidden}.wb-details-spacer{flex:1;min-height:5px}.wb-detail-footer{display:flex;flex-direction:column;gap:8px;padding-top:10px}.wb-detail-footer button{height:40px;font-size:13px}.wb-detail-footer small{font-size:10px;line-height:1.5;color:#96aaaa}.wb-data-note{opacity:.78}.wb-slot-select-label{font-size:11px;display:flex;justify-content:space-between;align-items:center;gap:8px}.wb-slot-select-label select{padding:6px 7px;max-width:65%;font-size:11px}
.wb-selection{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.wb-quiet-note{font-size:11px;color:#829f9f;line-height:1.55;padding-top:9px}.wb-inspection{width:min(1540px,96vw);height:94vh}.wb-inspection .wb-header{height:68px}.wb-inspection .wb-body{flex:1}.wb-legacy-body{display:grid;grid-template-columns:minmax(0,1fr) 255px}.wb-legacy-content{overflow:auto;padding:17px 20px}
.wb-equipment-workbench{display:grid;grid-template-columns:minmax(360px,1.1fr) minmax(330px,.92fr) minmax(210px,.57fr);height:100%;position:relative}.wb-warehouse{padding:9px 16px 12px;display:flex;flex-direction:column;min-height:0;min-width:0}.wb-warehouse>.wb-panel-title select{font-size:11px;padding:5px 7px;max-width:112px}.wb-slot-filters{display:flex;gap:5px;padding:8px 0 10px}.wb-slot-filters button{flex:1;min-width:0;padding:7px 0;font-size:11px;border-color:#607c7e45}.wb-slot-filters button.active{background:#8e7c432d;border-color:#c4aa75;color:#e5cc92}
.wb-warehouse-search{display:flex;align-items:center;gap:9px;margin-bottom:10px;flex-shrink:0}.wb-warehouse-search small{font-size:10px;color:#93abaa}.wb-warehouse-search input{width:180px;max-width:55%;font-size:11px;padding:7px 10px}.wb-warehouse-search .wb-inventory-legend{font-size:11px;color:#8eaaa9;line-height:1.5}
.wb-inventory-pages{flex:1;min-height:0;position:relative}.wb-inventory-page{height:100%;display:none}.wb-item-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(7,minmax(0,1fr));gap:5px;height:100%;padding:2px;background:#0c202751;border-radius:4px;border:1px solid #29454a}
.wb-item-cell{display:grid;place-items:center;position:relative;border:1px solid #68808439;border-radius:3px;background:linear-gradient(135deg,#1d353f,#0b1e26);padding:0!important;min-width:0;min-height:0;overflow:visible;cursor:pointer}.wb-item-cell.vacant{background:#0b1d25a6;border-color:#405c6429;cursor:default}.wb-item-cell:hover{border-color:#c1ac7b}.wb-item-cell.owned{box-shadow:inset 0 -2px 0 #a3c6a3}.wb-item-cell.incompatible .wb-icon{filter:grayscale(.85) brightness(.55)}
.wb-gear-art{display:grid;place-items:center;position:relative;width:100%;height:100%;max-height:65px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--set) 10%,transparent),transparent 78%);border:1px solid color-mix(in srgb,var(--set) 45%,transparent);border-radius:3px;overflow:hidden}.wb-gear-art .wb-icon{width:min(46px,90%);height:auto;aspect-ratio:1}.wb-set-mark{position:absolute;right:0;bottom:0;width:14px;line-height:15px;text-align:center;font-size:9px;font-style:normal;background:#102329e8;color:var(--set);border-left:1px solid color-mix(in srgb,var(--set) 35%,transparent);border-top:1px solid color-mix(in srgb,var(--set) 35%,transparent)}
.wb-gear-art[data-theme=wind]{border-radius:8px 2px}.wb-gear-art[data-theme=quake]{border-width:2px}.wb-gear-art[data-theme=hunt]{box-shadow:inset 0 0 0 2px #6d383936}.wb-gear-art[data-theme=iron]{border-radius:2px;box-shadow:inset 0 0 0 2px #718ba633}.wb-gear-art[data-theme=covenant]{border-radius:7px}.wb-gear-art[data-theme=link]{border-style:double;border-width:3px}
.wb-owner-tag{position:absolute;left:1px;top:1px;background:#142a21ea;color:#b7d7b2;font-size:9px;line-height:13px;padding:0 2px;max-width:90%;overflow:hidden;white-space:nowrap}.wb-incompatible{position:absolute;left:1px;bottom:0;color:#ffab90;font-size:16px}
.wb-pagination{height:39px;display:flex;align-items:center;gap:7px;flex-shrink:0;font-size:11px;color:#b0bfba}.wb-pagination button,.wb-page-choice{font-size:11px;padding:3px 8px;min-width:27px;border:1px solid #5f7a7a54;background:#162f38;cursor:pointer;border-radius:3px}.wb-pagination b{font-size:11px;font-weight:400}.wb-pagination .spacer{flex:1}
.wb-trades{max-height:82px;overflow:auto;flex-shrink:0;margin-top:5px}.wb-trades>div{display:flex;align-items:center;gap:5px;padding:7px;background:#84703a1e;border:1px solid #ab965459;margin-bottom:3px;font-size:10px}.wb-trades>div>span{flex:1}.wb-trades button{font-size:10px;padding:4px 6px}
.wb-compare{border-left:1px solid var(--wb-border);border-right:1px solid var(--wb-border);padding:9px 14px 12px;background:#112832;min-width:0;min-height:0}.wb-compare-pages{height:calc(100% - 44px);min-height:0}.wb-compare-page{display:none;height:100%;min-height:0;flex-direction:column;gap:8px}.wb-compare-card{border:1px solid #6e89843e;background:#1c353b66;padding:9px 12px;border-radius:5px;min-height:0}.wb-card-label{display:block;font-size:10px;color:#a4b8b1;margin-bottom:5px}.wb-compare-card header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.wb-compare-card header>.wb-gear-art{width:42px;height:42px;flex-shrink:0}.wb-compare-card h3{font-size:16px;color:#e2d6b6;font-weight:600}.wb-compare-card small{display:block;font-size:10px;color:#8ea9a7;margin-top:3px;line-height:1.45}.wb-compare-card.empty{min-height:72px;display:block;text-align:left}.wb-compare-card.empty h3{font-size:13px}.wb-compare-card.empty p{font-size:11px}
.wb-item-properties{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;border-top:1px solid #7598881e;padding-top:6px;font-size:11px}.wb-item-properties>div{display:flex;justify-content:space-between;gap:7px}.wb-item-properties span{color:#9fb8b0}.wb-item-properties b{font-weight:500;color:#d7dfbf;white-space:nowrap}
.wb-set-properties,.wb-unique-effect{border-top:1px solid #75988829;padding-top:7px;margin-top:7px}.wb-set-properties strong{display:flex;justify-content:space-between;font-size:11px;color:#cfc699}.wb-set-properties em{font-style:normal;font-size:10px}.wb-set-properties p{font-size:11px;line-height:1.5;color:#7e989a;margin-top:4px}.wb-set-properties p.active{color:#b8d5a9}.wb-set-properties p>b{font-size:10px;margin-right:4px}.wb-unique-effect>b{font-size:11px;color:#d1ba89}.wb-unique-effect p{font-size:11px;line-height:1.6;color:#b8c4af;margin-top:3px}.wb-basic-note{font-size:10px;color:#809fa0;line-height:1.5;padding-top:6px}
.wb-compare-bottom{margin-top:auto;display:flex;flex-direction:column;gap:7px;padding-top:5px;flex-shrink:0}.wb-deltas{display:flex;flex-wrap:wrap;gap:4px 9px;font-size:10px;min-height:13px}.wb-compare-bottom button{width:100%;height:39px;font-size:13px}.wb-compare-bottom small{font-size:9px;color:#8ea6a6;line-height:1.5}
.wb-paperdoll{padding:18px 16px 10px;min-width:0;min-height:0;background:#0b222bad;overflow:hidden}.wb-paperdoll h3{font-size:15px;line-height:1.4}.wb-paperdoll h3 small{display:block;color:#93abaa;font-size:11px;font-weight:400;margin-top:2px}.wb-doll-stage{height:250px;position:relative;margin-top:5px}.wb-doll-stage>canvas{height:100%;width:100%;object-fit:contain;pointer-events:none}.wb-doll-halo{position:absolute;inset:20px 10px 26px;background:radial-gradient(ellipse,#557b893b,transparent 67%);border-bottom:1px solid #698c964a;border-radius:50%}
.wb-body-slot{position:absolute;width:48px;display:flex;flex-direction:column;align-items:center;gap:3px}.wb-body-slot>button,.wb-body-slot>label{display:block;width:48px;height:48px;border:1px solid #6483838a;border-radius:4px;background:#0c2029da;padding:0;cursor:pointer}.wb-body-slot>span{font-size:10px;color:#9eb5ac;text-shadow:0 1px 3px #000}.position-weapon{left:0;top:20px}.position-armor{left:0;top:100px}.position-shoes{left:0;top:180px}.position-jewelry{right:0;top:55px}.position-title{right:0;top:139px}
.wb-character-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:6px}.wb-character-stats>div{border-bottom:1px solid #708a8236;padding:4px 2px}.wb-character-stats span{display:block;color:#8fa7a3;font-size:10px}.wb-character-stats b{font:20px Georgia,serif;color:#dac8a0}
.wb-equipped-sets{margin-top:15px;border-top:1px solid var(--wb-border);padding-top:10px}.wb-equipped-sets h4{font-size:11px;font-weight:500;color:#9fb4ae;margin-bottom:8px}.wb-equipped-sets>div{display:flex;gap:8px;font-size:11px;padding:4px 0;color:var(--set)}.wb-equipped-sets>div>b{margin-left:auto;font-size:10px}.wb-equipped-sets small{font-size:9px;color:#9bada3}.wb-equipped-sets p{font-size:11px;color:#78969a}
/* Final interactive layout: one selected item, one fixed comparison column. */
.wb-warehouse>.wb-item-grid{flex:1;min-height:0;height:auto}
.wb-compare{display:flex;flex-direction:column;gap:8px}
.wb-compare>.wb-panel-title{height:36px}
.wb-item-cell.selected,.wb-body-slot>button.selected{outline:2px solid #f2d494;outline-offset:1px;z-index:1}
.wb-node-select{cursor:pointer}
.wb-node-select:hover .wb-node-frame{border-color:#f3d69b;box-shadow:0 0 12px #d3b67b25}
.wb-skill-detail-panel .wb-section-kicker{margin-bottom:12px}
.wb-icon{background-color:transparent}
.skill-button>.wb-icon{width:42px;height:42px;margin:0 auto 5px}
.wb-shell .wb-slot-empty{height:100%;width:100%}
.wb-quickslot .wb-slot-empty{height:42px}
.wb-item-grid .wb-gear-art{max-height:none}
.wb-paperdoll .wb-section-kicker{margin-bottom:7px}
.wb-compare-card,.wb-skill-detail-panel{font-variant-numeric:tabular-nums}
.wb-equipment-workbench .wb-quiet-note{min-height:25px}
.wb-skill-details{--wb-cell:50px}


/* Keep the complete skill roster legible without overlapping adjacent rows. */
.wb-core-tree{grid-template-columns:repeat(9,minmax(0,1fr))}
.wb-node-select{padding:0!important;gap:1px;line-height:1}
.wb-node-frame{flex-shrink:0}
.wb-node-name{line-height:14px;flex-shrink:0}
.wb-node-gate{line-height:10px;flex-shrink:0}
.wb-core-label,.wb-common-label{line-height:1.2}
.wb-property-heading{font-size:10px;color:#94aca8;margin-top:7px}
.wb-item-properties{border-top:0;padding-top:4px}
.wb-compare-bottom small{font-size:10px}
.wb-gear-art[data-theme=wind]{filter:none}

.wb-supply-options{display:flex;flex-direction:column;gap:10px;padding-top:9px}
.wb-supply-choice{display:flex;align-items:center;gap:13px;text-align:left;padding:12px;background:#142c35;border:1px solid #66898049;min-height:78px}
.wb-supply-choice>.wb-gear-art{width:52px;height:52px;flex-shrink:0}
.wb-supply-choice>span:last-child{display:flex;flex-direction:column;gap:6px}
.wb-supply-choice b{font-size:15px;color:#e3d5b2}.wb-supply-choice small{font-size:11px;color:#95aeab}
.wb-supply-choice.selected{border-color:#e1c285;box-shadow:inset 3px 0 #cfb77a;background:#283933}
.wb-supply-options .empty{font-size:12px;min-height:180px}.wb-supply-options .empty h3{font-size:15px}
.wb-supply-options .empty p{font-size:12px}

/* Individual rank refunds: keep the complete roster in the same layout. */
.wb-unlearn-short{position:absolute;right:calc(50% - var(--wb-cell)/2 - 7px);top:24px;width:19px;height:19px;line-height:15px;padding:0!important;border:1px solid #9a8f75!important;border-radius:3px;background:#293c40!important;color:#eeddb4;z-index:2;font-size:16px}
.wb-unlearn-short:hover{background:#4a5550!important;border-color:#ddc791!important}
.wb-rank-actions{display:flex;gap:8px;align-items:stretch}
.wb-rank-actions>.primary{flex:1;min-width:0}
.wb-rank-actions>.wb-refund-detail{flex:0 0 94px;font-size:12px;padding:6px 9px;color:#e6cf9d;border-color:#97845d77}

/* Resume-after-refund check exposed footer overlap on short desktop windows. */

