/* Configuration controls use shared store color tokens. */
.lab-page .lab-order-tabs{display:flex;align-items:flex-start;gap:12px;padding:10px 0 4px}
.lab-page .lab-order-tabs-main{display:flex;align-items:center;gap:8px;flex:1;flex-wrap:wrap;min-width:0}
.lab-page [data-shelf-tabs]{display:flex;gap:6px;flex-wrap:wrap;min-width:0}
.lab-page .lab-cart-tab-host{display:flex;margin-left:auto;flex:none}
.lab-page .lab-order-tab{display:inline-flex;align-items:center;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:var(--gui-panel,var(--paper));overflow:hidden}
.lab-page .lab-order-tab:has([aria-selected=true]){border-color:var(--gui-blue,var(--blue))}
.lab-page .lab-order-tab button,.lab-page .lab-order-tabs>button{background:transparent;color:var(--gui-text,var(--ink));border:0;padding:7px 10px;white-space:nowrap}
.lab-page .lab-order-tab button[aria-selected=true]{font-weight:700}
.lab-page .lab-order-tab [data-copy-tab]{display:grid;place-items:center;min-width:29px;padding:7px 6px}
.lab-page .lab-order-tab [data-save-tab]{display:grid;place-items:center;min-width:29px;padding:7px 6px}
.lab-page .lab-order-tab button[aria-label^="Close"]{padding:7px 9px}
.lab-page .lab-order-tab--cart{background:color-mix(in srgb,var(--gui-green,#31835f) 22%,var(--gui-panel,#fff));border-color:var(--gui-green,#31835f)}
.lab-page .lab-order-tab--cart button{color:var(--gui-text,var(--ink));font-weight:800}
.lab-page .lab-order-tab--cart:has([aria-selected=true]){background:color-mix(in srgb,var(--gui-green,#31835f) 42%,var(--gui-panel,#fff));box-shadow:0 0 0 2px var(--gui-green,#31835f);outline:2px solid var(--gui-panel,var(--paper));outline-offset:-4px}
.lab-page .lab-order-tabs-main>button{border:1px solid var(--gui-line,var(--line));border-radius:7px}
.lab-page .lab-order-tabs-main>[data-new-shelf]{font-weight:700}
.lab-page .lab-chat-pane{padding:18px;margin-top:10px;border:1px solid var(--gui-line,var(--line));border-radius:10px;background:var(--gui-panel,var(--paper))}
.lab-page .lab-chat-pane h2{margin:0 0 8px}.lab-page .lab-chat-pane p{margin:0}
.lab-page .lab-cart-pane{display:block;position:static;width:100%;height:auto;max-height:none;margin:12px 0 0;padding:20px;border:1px solid var(--gui-line,var(--line));border-radius:10px;box-shadow:none;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink))}
.lab-page .lab-cart-pane[hidden],.lab-page .lab-custom-shape[hidden]{display:none}
.lab-page .lab-cart-pane .xf3v2__cart-head h2{margin:0 0 8px}
.lab-page .lab-cart-pane .xf3v2__cart-line{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:18px;align-items:start}
.lab-page .lab-cart-shelf-icon{display:block;width:100%;max-width:280px;color:var(--gui-blue,var(--blue));background:transparent;border:0}
.lab-page .lab-cart-line-details h3{margin:0 0 5px}.lab-page .lab-cart-line-details p{margin:5px 0}
.lab-page .lab-cart-line-details label{display:inline-flex;gap:8px;align-items:center}
.lab-page .lab-cart-line-details button+button{margin-left:8px}
.lab-page .lab-cart-line-details h4{margin:10px 0 6px;font-size:.82em}
.lab-page .lab-cart-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 18px;margin:0 0 12px;font-size:.78em}
.lab-page .lab-cart-specs>div{display:flex;gap:6px;min-width:0}
.lab-page .lab-cart-specs dt{flex:none;font-weight:700}
.lab-page .lab-cart-specs dd{margin:0;min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}
.lab-page .lab-cart-line-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lab-page .lab-cart-line-actions p{margin:0}
.lab-page .lab-cart-pane>.xf3v2__primary{width:auto;min-width:230px}
.lab-page .xf3v2__summary{grid-template-columns:minmax(0,1fr) max-content max-content;gap:5px 12px}
.lab-page .xf3v2__summary h2{grid-column:1;grid-row:1;white-space:nowrap}
.lab-page .lab-summary-quantity{grid-column:2;grid-row:1;display:flex;align-items:center;gap:6px;font-size:.82em;font-weight:600;white-space:nowrap}
.lab-page .lab-summary-quantity input{width:62px;min-height:40px;padding:6px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink))}
.lab-page .xf3v2__summary [data-add]{grid-column:3;grid-row:1}
.lab-page .xf3v2__summary .xf3v2__price{grid-column:1;grid-row:2;min-width:0;flex-wrap:wrap;gap:3px 6px;white-space:normal}
.lab-page .xf3v2__summary .xf3v2__price small{flex-basis:100%;min-width:0;white-space:normal}
.lab-page .lab-volume-tiers{grid-column:2/4;grid-row:2;display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0;overflow-x:auto;white-space:nowrap;font-size:calc(12px * var(--lab-scale,1))}
.lab-page .lab-volume-tiers [data-tier-quantity].is-current{color:var(--gui-blue,var(--blue));font-weight:700;text-decoration:underline}
.lab-page .lab-volume-tiers{scrollbar-width:none}
.lab-page .lab-volume-tiers::-webkit-scrollbar{display:none}
.lab-page .lab-shipping-preview{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:max-content minmax(100px,1fr) minmax(120px,1.2fr);gap:4px 7px;align-items:center;padding-top:6px;border-top:1px solid var(--gui-line,var(--line));font-size:.78em}
.lab-page .lab-shipping-preview>label{grid-column:1;grid-row:1;font-weight:600;white-space:nowrap}
.lab-page .lab-shipping-preview>input{grid-row:1;min-width:0;width:100%;min-height:32px;padding:4px 6px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink))}
.lab-page .lab-shipping-preview [data-shipping-country]{grid-column:2}
.lab-page .lab-shipping-preview [data-shipping-postal]{grid-column:3}
.lab-page .lab-shipping-preview fieldset{grid-column:1/-1;grid-row:2;display:flex;gap:6px 14px;flex-wrap:wrap;margin:2px 0 0;padding:0;border:0}
.lab-page .lab-shipping-preview fieldset[hidden]{display:none}
.lab-page .lab-shipping-preview legend{font-size:.9em}
.lab-page .lab-shipping-preview fieldset label{display:flex;align-items:center;gap:4px;white-space:nowrap}
.lab-page .lab-shipping-preview [data-shipping-message]{grid-column:1/-1;grid-row:3;margin:0}
.lab-page .xf3v2__summary .xf3v2__quote-state{grid-column:1/-1;grid-row:4}
.lab-page .xf3v2__form>.xf3v2__qty{display:none}
.lab-page .xf3v2__summary .xf3v2__safety{margin:0}
.lab-page .xf3v2__form>fieldset:first-of-type legend{display:flex;align-items:center;justify-content:space-between;width:100%;font-weight:600}
.lab-page .xf3v2__form [data-reset-shelf]{padding:4px 0;font-weight:400}
.lab-page .xf3v2__dimensions label{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;column-gap:10px}
.lab-page .xf3v2__dimensions label>.lab-dimension-label{grid-column:1;grid-row:1;display:block;font-size:1em;color:var(--gui-text,var(--ink));font-weight:600;line-height:1.2}
.lab-page .lab-dimension-limits{display:block;font-size:.72em;font-weight:400;color:var(--gui-muted,var(--muted));white-space:nowrap}
.lab-page .xf3v2__dimensions input[type=number]{grid-column:2;grid-row:1;min-width:0;width:100%}
.lab-page .xf3v2__dimensions input[type=range]{grid-column:1/-1;grid-row:2}
.lab-page .lab-visual-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:5px}
.lab-page .lab-visual-picks button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;min-height:72px;padding:4px;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font-size:.75em}
.lab-page .lab-visual-picks button[aria-pressed=true]{border-color:var(--gui-blue,var(--blue));font-weight:700}
.lab-page .lab-visual-picks button:disabled{opacity:.42;cursor:not-allowed}
.lab-page .lab-visual-icon{display:block;width:56px;max-width:100%;height:38px}
.lab-page [data-visual-group="mounting_lip_direction"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.lab-page [data-visual-group="mounting_lip_direction"] button{min-height:86px;font-size:.95em}
.lab-page [data-visual-group="mounting_lip_direction"] .lab-visual-icon{width:76px;height:52px}
.lab-page .xf3v2__option:has([data-option="mounting_lip_direction"])>label{font-size:1.1em;font-weight:700}
.lab-page .lab-custom-shape{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;margin-top:8px;padding:10px;border:1px solid var(--gui-line,var(--line));border-radius:7px}
.lab-page .lab-custom-shape label{display:flex;align-items:center;justify-content:space-between;gap:8px}
.lab-page .lab-custom-shape input[type=number]{width:76px;min-height:35px;padding:5px;font-size:1em}
.lab-page .lab-custom-shape input[type=range]{min-width:0;width:100%;align-self:center}
.lab-page .lab-custom-shape small{grid-column:1}
.lab-page .lab-visual-icon svg{width:100%;height:100%}
.lab-page .lab-visual-caption{white-space:normal;text-align:center;line-height:1.2}
@media(max-width:1120px){.lab-page .xf3v2__summary{grid-template-columns:minmax(0,1fr) auto}.lab-page .xf3v2__summary h2{grid-column:1;grid-row:1}.lab-page .lab-summary-quantity{grid-column:2;grid-row:1}.lab-page .xf3v2__summary [data-add]{grid-column:2;grid-row:2}.lab-page .xf3v2__summary .xf3v2__price{grid-column:1;grid-row:2}.lab-page .lab-volume-tiers{grid-column:1/-1;grid-row:3;justify-content:flex-start}.lab-page .lab-shipping-preview{grid-row:4}.lab-page .xf3v2__summary .xf3v2__quote-state{grid-row:5}}
@media(max-width:600px){.lab-page .lab-order-tabs{gap:5px}.lab-page .lab-order-tab button,.lab-page .lab-order-tabs>button{font-size:.82em;padding:6px 7px}.lab-page .lab-cart-pane .xf3v2__cart-line{grid-template-columns:90px minmax(0,1fr);gap:10px}.lab-page .xf3v2__summary h2{grid-column:1;grid-row:1;font-size:1.35em}.lab-page .lab-summary-quantity{grid-column:2;grid-row:1}.lab-page .xf3v2__summary .xf3v2__price{grid-column:1;grid-row:2}.lab-page .xf3v2__summary [data-add]{grid-column:2;grid-row:2}.lab-page .lab-volume-tiers{grid-column:1/-1;grid-row:3}.lab-page .lab-shipping-preview{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.lab-page .lab-shipping-preview>label{grid-column:1/-1;grid-row:1}.lab-page .lab-shipping-preview [data-shipping-country]{grid-column:1;grid-row:2}.lab-page .lab-shipping-preview [data-shipping-postal]{grid-column:2;grid-row:2}.lab-page .lab-shipping-preview fieldset{grid-row:3}.lab-page .lab-shipping-preview [data-shipping-message]{grid-row:4}.lab-page .xf3v2__dimensions input[type=number]{font-size:calc(24px * var(--lab-scale,1))}}
@media(max-width:600px){.lab-page .xf3v2__summary h2{grid-column:1/-1;grid-row:1;white-space:normal}.lab-page .lab-summary-quantity{grid-column:1;grid-row:2}.lab-page .xf3v2__summary [data-add]{grid-column:2;grid-row:2}.lab-page .xf3v2__summary .xf3v2__price{grid-column:1/-1;grid-row:3}.lab-page .lab-volume-tiers{grid-column:1/-1;grid-row:4}.lab-page .lab-shipping-preview{grid-row:5}.lab-page .xf3v2__summary .xf3v2__quote-state{grid-row:6}}
@media(max-width:600px){.lab-page .lab-order-tabs-main{gap:5px}.lab-page .lab-order-tab button,.lab-page .lab-order-tabs-main>button{font-size:.82em;padding:6px 7px}.lab-page .lab-cart-pane .xf3v2__cart-line{grid-template-columns:1fr}.lab-page .lab-cart-shelf-icon{max-width:220px}.lab-page .lab-cart-specs{grid-template-columns:1fr}.lab-page .lab-cart-line-actions{gap:6px}}
.lab-page .xf3v2__summary{grid-template-columns:minmax(0,1fr) max-content;column-gap:12px}
.lab-page .xf3v2__summary h2{grid-column:1;grid-row:1;min-width:0;font-size:clamp(23px,2.35vw,30px);white-space:nowrap}
.lab-page .lab-summary-purchase{grid-column:2;grid-row:1;display:flex;align-items:center;gap:8px;white-space:nowrap}
.lab-page .lab-summary-quantity{display:flex;align-items:center;gap:5px}
.lab-page .lab-summary-purchase [data-add]{width:auto;min-width:160px;margin:0}
.lab-page .xf3v2__summary .xf3v2__price{grid-column:1;grid-row:2;display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;margin:0;padding:0;border:0;white-space:nowrap}
.lab-page .xf3v2__summary .xf3v2__price strong{font-size:clamp(25px,2.4vw,32px)}
.lab-page .xf3v2__summary .xf3v2__price>span{font-size:.9em}
.lab-page .xf3v2__summary .xf3v2__price small{flex-basis:100%}
.lab-page .lab-volume-tiers{grid-column:2;grid-row:2}
.lab-page .lab-shipping-preview{grid-row:3}
.lab-page .xf3v2__summary .xf3v2__quote-state{grid-row:4}
@media(max-width:1120px){.lab-page .lab-volume-tiers{grid-column:1/-1;grid-row:3;justify-content:flex-start}.lab-page .lab-shipping-preview{grid-row:4}.lab-page .xf3v2__summary .xf3v2__quote-state{grid-row:5}}
@media(max-width:600px){.lab-page .xf3v2__summary h2{grid-column:1/-1;grid-row:1;white-space:normal}.lab-page .lab-summary-purchase{grid-column:1/-1;grid-row:2;justify-content:space-between}.lab-page .xf3v2__summary .xf3v2__price{grid-column:1/-1;grid-row:3}.lab-page .lab-volume-tiers{grid-column:1/-1;grid-row:4}.lab-page .lab-shipping-preview{grid-row:5}.lab-page .xf3v2__summary .xf3v2__quote-state{grid-row:6}}
.lab-page .lab-volume-tiers{grid-column:1/-1;grid-row:3;justify-content:flex-end}
.lab-page .lab-shipping-preview{grid-row:4}
.lab-page .xf3v2__summary .xf3v2__quote-state{grid-row:5}
@media(max-width:600px){.lab-page .lab-volume-tiers{grid-row:4;justify-content:flex-start}.lab-page .lab-shipping-preview{grid-row:5}.lab-page .xf3v2__summary .xf3v2__quote-state{grid-row:6}}
.lab-page .xf3v2__summary h2{grid-column:1/-1;grid-row:1;white-space:normal}
.lab-page .xf3v2__summary .xf3v2__price{grid-column:1;grid-row:2}
.lab-page .lab-summary-purchase{grid-column:2;grid-row:2}
.lab-page .lab-volume-tiers{grid-column:1/-1;grid-row:3;justify-content:flex-start}
.lab-page .lab-volume-tiers-label{font-weight:700;margin-right:6px}
.lab-page .lab-shipping-preview{grid-row:4}
.lab-page .xf3v2__summary .xf3v2__quote-state{grid-row:5}
.lab-page .lab-shipping-preview>select{grid-column:2;grid-row:1;min-width:0;width:100%;min-height:32px;padding:4px 6px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink))}
.lab-page .lab-shipping-preview [data-shipping-other-country]{grid-column:2/4;grid-row:2}
.lab-page .lab-shipping-preview.has-other-country fieldset{grid-row:3}
.lab-page .lab-shipping-preview.has-other-country [data-shipping-message]{grid-row:4}
.lab-page .xf3v2__option{margin-bottom:18px}
.lab-page .lab-option-heading{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:9px}
.lab-page .lab-option-title{font-size:calc(17px * var(--lab-scale,1));font-weight:650;line-height:1.3;letter-spacing:-.015em}
.lab-page .lab-feature-note{margin:0;padding:0}
.lab-page .lab-feature-note-toggle{padding:3px 7px;border:1px solid var(--gui-line,var(--line));border-radius:5px;background:var(--gui-panel,var(--paper));color:var(--gui-blue,var(--blue));font-size:.78em}
.lab-page .lab-feature-note label{display:block;margin-top:9px;font-size:.8em}
.lab-page .lab-feature-note textarea{display:block;width:100%;min-height:68px;margin-top:5px;resize:vertical}
.lab-page .lab-feature-settings{display:grid;gap:8px;margin-top:8px;padding:9px;border:1px solid var(--gui-line,var(--line));border-radius:7px;font-size:.8em}
.lab-page .lab-feature-settings.is-no-lip .lab-inline-check{display:none}
.lab-page .lab-feature-settings .lab-inline-check{display:flex;align-items:center;gap:7px}
.lab-page .lab-feature-settings .lab-inline-check input{width:auto;min-height:0}
.lab-page .lab-feature-settings [data-lip-custom-fields]{display:grid;gap:7px}
.lab-page .lab-feature-settings input[type=range]{width:100%}
.lab-page .lab-feature-settings input[type=number]{width:110px;min-height:34px;padding:4px 7px}
.lab-page .lab-hole-editor{margin-top:8px;padding:9px;border:1px solid var(--gui-line,var(--line));border-radius:7px;font-size:.8em}
.lab-page .lab-hole-editor svg{display:block;width:100%;height:72px;color:var(--gui-blue,var(--blue))}
.lab-page .lab-hole-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px;align-items:end}
.lab-page .lab-hole-choice{display:flex;align-items:center;gap:8px;flex:none}
.lab-page .lab-hole-quantity{display:grid;justify-items:start;gap:8px;min-width:0;margin:0;padding:10px 12px;border:1px solid var(--gui-line,var(--line));border-radius:7px;font-weight:600}
.lab-page .lab-hole-quantity[hidden]{display:none}
.lab-page .lab-hole-quantity-label{font-size:calc(13px * var(--lab-scale,1));line-height:1.25}
.lab-page .lab-hole-stepper{display:flex;align-items:center;gap:10px}
.lab-page .lab-hole-stepper output{min-width:32px;text-align:center;font-size:calc(24px * var(--lab-scale,1));font-weight:750;line-height:1}
.lab-page .lab-hole-quantity button{width:38px;height:38px;min-height:38px;padding:0;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font-size:24px;line-height:1}
.lab-page .lab-hole-controls label{display:flex;align-items:center;justify-content:space-between;gap:5px}
.lab-page .lab-hole-controls input{width:72px;min-height:32px;padding:4px}
.lab-page .lab-hole-editor small{display:block;margin-top:5px}
@media(max-width:600px){.lab-page .xf3v2__summary .xf3v2__price{grid-column:1/-1;grid-row:2}.lab-page .lab-summary-purchase{grid-column:1/-1;grid-row:3;justify-content:flex-start;flex-wrap:wrap}.lab-page .lab-volume-tiers{grid-row:4}.lab-page .lab-shipping-preview{grid-row:5}.lab-page .xf3v2__summary .xf3v2__quote-state{grid-row:6}.lab-page .lab-shipping-preview>select{grid-column:1;grid-row:2}.lab-page .lab-shipping-preview [data-shipping-other-country]{grid-column:1/-1;grid-row:3}.lab-page .lab-shipping-preview.has-other-country fieldset{grid-row:4}.lab-page .lab-shipping-preview.has-other-country [data-shipping-message]{grid-row:5}}
html.xform3-themed .lab-page .lab-shipping-preview{grid-template-columns:max-content minmax(0,1fr) minmax(0,1fr);gap:5px 7px}
html.xform3-themed .lab-page .lab-shipping-preview>label{grid-column:1;grid-row:1;align-self:center}
html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-country]{grid-column:2;grid-row:1}
html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-postal]{grid-column:3;grid-row:1}
html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-other-country]{grid-column:2/4;grid-row:2}
html.xform3-themed .lab-page .lab-shipping-preview>fieldset{grid-column:1/-1;grid-row:2}
html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-message]{grid-column:1/-1;grid-row:3}
html.xform3-themed .lab-page .lab-shipping-preview.has-other-country>fieldset{grid-row:3}
html.xform3-themed .lab-page .lab-shipping-preview.has-other-country>[data-shipping-message]{grid-row:4}
html.xform3-themed .lab-page .xf3v2__summary{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:7px 12px;align-items:center}
html.xform3-themed .lab-page .xf3v2__summary h2{grid-column:1/-1;grid-row:1;width:auto;max-width:none;white-space:normal}
html.xform3-themed .lab-page .xf3v2__summary .xf3v2__price{grid-column:1;grid-row:2;min-width:0}
html.xform3-themed .lab-page .xf3v2__summary .lab-summary-purchase{grid-column:2;grid-row:2}
html.xform3-themed .lab-page .xf3v2__summary .lab-volume-tiers{grid-column:1/-1;grid-row:3;justify-content:flex-start}
html.xform3-themed .lab-page .xf3v2__summary .lab-shipping-preview{grid-column:1/-1;grid-row:4}
html.xform3-themed .lab-page .xf3v2__summary .xf3v2__quote-state{grid-column:1/-1;grid-row:5}
@media(max-width:600px){html.xform3-themed .lab-page .xf3v2__summary{grid-template-columns:1fr}html.xform3-themed .lab-page .xf3v2__summary .xf3v2__price{grid-column:1;grid-row:2}html.xform3-themed .lab-page .xf3v2__summary .lab-summary-purchase{grid-column:1;grid-row:3}html.xform3-themed .lab-page .xf3v2__summary .lab-volume-tiers{grid-column:1;grid-row:4}html.xform3-themed .lab-page .xf3v2__summary .lab-shipping-preview{grid-column:1;grid-row:5}html.xform3-themed .lab-page .xf3v2__summary .xf3v2__quote-state{grid-column:1;grid-row:6}}
.lab-page .xf3v2__form>.lab-mounting-holes-section{grid-column:1/-1;min-width:0;margin:14px 0;padding:12px 0;border-top:1px solid var(--gui-line,var(--line))}
.lab-page .lab-hole-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0 0 10px}
.lab-page .lab-hole-mode{display:flex;align-items:center;flex-wrap:nowrap;gap:12px;margin:0 0 10px;overflow-x:auto}
.lab-page .lab-hole-mode label{display:inline-flex;align-items:center;gap:5px;font-size:.78em;white-space:nowrap;flex:none;cursor:pointer}
.lab-page .lab-hole-mode input[type=radio]{width:16px;height:16px;min-height:0;margin:0;padding:0;accent-color:var(--gui-blue,var(--blue));cursor:pointer}
.lab-page .lab-hole-mode label:has(input:disabled){opacity:.45;cursor:not-allowed}
.lab-page .lab-hole-editor{padding:0;border:0;border-radius:0;font-size:calc(14px * var(--lab-scale,1))}
.lab-page .lab-hole-editor svg{height:110px}
.lab-page .lab-hole-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}
.lab-page .lab-hole-controls label{display:grid;gap:4px;font-size:1em}
.lab-page .lab-hole-controls input{width:100%;min-height:40px}
html.xform3-themed .lab-page .lab-option-heading+label{margin-bottom:0}
@media(max-width:600px){.lab-page .lab-hole-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-page .lab-hole-controls label:last-child{grid-column:1/-1}}
.lab-page .lab-mounting-holes-section>.xf3v2__option{margin:0}
@media(max-width:600px){html.xform3-themed .lab-page .lab-shipping-preview{grid-template-columns:repeat(2,minmax(0,1fr))}html.xform3-themed .lab-page .lab-shipping-preview>label{grid-column:1/-1;grid-row:1}html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-country]{grid-column:1;grid-row:2}html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-postal]{grid-column:2;grid-row:2}html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-other-country]{grid-column:1/-1;grid-row:3}html.xform3-themed .lab-page .lab-shipping-preview>fieldset{grid-row:3}html.xform3-themed .lab-page .lab-shipping-preview.has-other-country>fieldset{grid-row:4}html.xform3-themed .lab-page .lab-shipping-preview.has-other-country>[data-shipping-message]{grid-row:5}}

.lab-page .lab-sticky-top{position:relative;top:auto;z-index:30}
.lab-page .lab-workspace{height:auto;min-height:0;align-items:start;grid-template-columns:minmax(0,1fr) minmax(0,.82fr)}
.lab-page .lab-preview-column{position:relative;top:auto;min-height:0}
.lab-page .lab-preview-column .lab-viewer{height:clamp(340px,42vw,520px)}
.lab-page .xf3v2__builder{height:auto;min-height:0;overflow:visible}
.lab-page .xf3v2__builder>.xf3v2__summary{flex:none}
.lab-page .xf3v2__builder>.xf3v2__form{flex:none;min-height:0;max-height:clamp(360px,65dvh,720px);overflow-y:auto;padding-right:6px;scrollbar-gutter:stable}
.lab-page .xf3v2__form>.lab-optional-heading{grid-column:1/-1;margin:20px 0 8px;padding:0;border:0;border-radius:0;background:none;color:var(--gui-text,var(--ink));font-size:calc(17px * var(--lab-scale,1));font-weight:650;line-height:1.3;letter-spacing:-.015em}
.lab-page [data-visual-group="mounting_lip_direction"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.lab-page [data-visual-group="mounting_lip_direction"] button{min-height:70px;padding:4px 2px;font-size:.8em}
.lab-page [data-visual-group="mounting_lip_direction"] .lab-visual-icon{width:60px;height:39px}
.lab-page .lab-feature-settings[data-lip-settings]{grid-template-columns:minmax(0,1fr);align-items:start;gap:5px}
.lab-page .lab-lip-height-label{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}
.lab-page .lab-addon-cost{display:flex;align-items:center;justify-content:center;width:max-content;max-width:100%;min-height:26px;margin:6px 0 0 auto;padding:3px 8px;border:1px solid var(--gui-line,var(--line));border-radius:6px;color:var(--gui-blue,var(--blue));font-size:calc(12px * var(--lab-scale,1));font-weight:700;line-height:1.2;white-space:nowrap}
.lab-page .lab-addon-cost[data-included=true]{color:var(--gui-muted,var(--muted));font-weight:500}
.lab-page .lab-addon-cost[aria-busy=true]{opacity:.65}
.lab-page .lab-lip-height-label .lab-addon-cost{margin:0 0 0 auto}
.lab-page .lab-lip-height-diagram{width:42px;height:30px;flex:none;color:var(--gui-blue,var(--blue))}
.lab-page .lab-lip-heading{font-weight:700;line-height:1.15}
.lab-page .lab-lip-height-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.lab-page .lab-lip-height-picks button{min-width:0;min-height:34px;padding:4px 5px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font-size:.9em;white-space:nowrap}
.lab-page .lab-lip-height-picks button[aria-pressed=true]{border-color:var(--gui-blue,var(--blue));font-weight:700}
.lab-page .lab-feature-settings [data-lip-custom-fields]{grid-column:1/-1}
@media(max-width:850px){.lab-page .lab-workspace{display:flex;flex-direction:column;min-height:0}.lab-page .lab-preview-column{flex:none}.lab-page .lab-preview-column .lab-viewer{height:clamp(170px,28dvh,260px)}.lab-page .xf3v2__builder{flex:1;height:auto;overflow:visible}.lab-page .xf3v2__builder>.xf3v2__form{flex:none;min-height:0;max-height:clamp(360px,55dvh,620px);overflow-y:auto;scrollbar-gutter:stable}}
@media(max-width:600px){.lab-page .lab-preview-column .lab-viewer{height:clamp(145px,22dvh,190px)}.lab-page .lab-preview-note{display:none}.lab-page .xf3v2__builder{min-height:0}.lab-page .lab-feature-settings[data-lip-settings]{grid-template-columns:1fr}.lab-page .lab-feature-settings [data-lip-custom-fields]{grid-column:1}}

/* Keep the purchase summary and common sizes within a few compact rows. */
html.xform3-themed .lab-page .xf3v2__summary{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:9px 12px;margin-bottom:8px}
html.xform3-themed .lab-page .xf3v2__summary h2{grid-column:1;grid-row:1;min-width:0;margin:0;font-size:clamp(18px,1.55vw,23px);line-height:1.15;white-space:normal;overflow-wrap:normal}
html.xform3-themed .lab-page .xf3v2__summary .lab-summary-purchase{grid-column:2;grid-row:1;display:flex;align-items:center;gap:6px;max-width:none;white-space:nowrap;flex-wrap:nowrap}
html.xform3-themed .lab-page .xf3v2__summary .lab-summary-quantity{gap:4px;font-size:.75em}
html.xform3-themed .lab-page .xf3v2__summary .lab-summary-quantity input{width:56px;min-height:34px;padding:4px 6px}
html.xform3-themed .lab-page .xf3v2__summary [data-add]{min-width:0;min-height:36px;padding:7px 11px;white-space:nowrap;font-size:.82em}
html.xform3-themed .lab-page .xf3v2__summary .lab-summary-price-row{grid-column:1/-1;grid-row:2;display:flex;align-items:baseline;gap:9px;min-width:0;overflow:hidden}
html.xform3-themed .lab-page .xf3v2__summary .xf3v2__price{flex:none;display:flex;align-items:baseline;gap:4px;min-width:0;margin:0;padding:0;white-space:nowrap}
html.xform3-themed .lab-page .xf3v2__summary .xf3v2__price strong{font-size:1.35em;line-height:1.1}
html.xform3-themed .lab-page .xf3v2__summary .xf3v2__price small:empty{display:none}
html.xform3-themed .lab-page .xf3v2__summary .lab-volume-tiers{flex:1 1 auto;display:flex;align-items:baseline;justify-content:flex-start;gap:4px;min-width:0;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;font-size:.7em}
html.xform3-themed .lab-page .xf3v2__summary .lab-volume-tiers-label{margin-right:3px}
html.xform3-themed .lab-page .xf3v2__summary .lab-shipping-preview{grid-column:1/-1;grid-row:3;padding-top:5px;gap:4px 6px}
html.xform3-themed .lab-page .xf3v2__summary .xf3v2__quote-state{grid-column:1/-1;grid-row:4;padding:5px 7px}
html.xform3-themed .lab-page .lab-common-sizes{grid-column:1/-1;display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;align-items:stretch;gap:7px;margin:4px 0 8px}
html.xform3-themed .lab-page .lab-common-sizes__label{align-self:center;font-size:.72em;font-weight:650;white-space:nowrap}
html.xform3-themed .lab-page .lab-common-sizes .xf3v2__chips{display:grid;grid-template-rows:repeat(2,minmax(28px,auto));grid-auto-flow:column;grid-auto-columns:max-content;gap:4px;min-width:0;margin:0;overflow-x:auto;scrollbar-width:thin}
html.xform3-themed .lab-page .lab-common-sizes .xf3v2__chips button{min-height:28px;padding:3px 6px;font-size:.66em;white-space:nowrap}
html.xform3-themed .lab-page .lab-common-sizes [data-reset-shelf]{align-self:stretch;width:76px;padding:4px 6px;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:var(--gui-panel,var(--paper));font-size:.65em;font-weight:650;line-height:1.15;white-space:normal}
@media(max-width:680px){html.xform3-themed .lab-page .xf3v2__summary{grid-template-columns:1fr}html.xform3-themed .lab-page .xf3v2__summary h2{grid-column:1;grid-row:1}html.xform3-themed .lab-page .xf3v2__summary .lab-summary-purchase{grid-column:1;grid-row:2}html.xform3-themed .lab-page .xf3v2__summary .lab-summary-price-row{grid-column:1;grid-row:3}html.xform3-themed .lab-page .xf3v2__summary .lab-shipping-preview{grid-column:1;grid-row:4}html.xform3-themed .lab-page .xf3v2__summary .xf3v2__quote-state{grid-column:1;grid-row:5}html.xform3-themed .lab-page .lab-common-sizes{grid-template-columns:max-content minmax(0,1fr)}html.xform3-themed .lab-page .lab-common-sizes [data-reset-shelf]{grid-column:2;justify-self:end}}

html.xform3-themed .lab-page .xf3v2__summary .lab-shipping-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding-top:4px}
html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-country]{grid-column:1;grid-row:1}
html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-postal]{grid-column:2;grid-row:1}
html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-other-country]{grid-column:1/-1;grid-row:2}
html.xform3-themed .lab-page .lab-shipping-preview>fieldset{grid-column:1/-1;grid-row:2}
html.xform3-themed .lab-page .lab-shipping-preview>[data-shipping-message]{grid-column:1/-1;grid-row:3}
html.xform3-themed .lab-page .lab-shipping-preview.has-other-country>fieldset{grid-row:3}
html.xform3-themed .lab-page .lab-shipping-preview.has-other-country>[data-shipping-message]{grid-row:4}
html.xform3-themed .lab-page .lab-common-sizes{grid-template-columns:76px minmax(0,1fr);grid-template-rows:auto auto;gap:4px 7px}
html.xform3-themed .lab-page .lab-common-sizes__label{grid-column:1;grid-row:1;align-self:end;font-size:.86em;line-height:1.12;white-space:normal}
html.xform3-themed .lab-page .lab-common-sizes .xf3v2__chips{grid-column:2;grid-row:1/span 2;grid-template-columns:repeat(6,minmax(4.4em,1fr));grid-template-rows:repeat(2,minmax(30px,auto));grid-auto-flow:row;grid-auto-columns:auto;overflow-x:auto;font-size:.75em}
html.xform3-themed .lab-page .lab-common-sizes .xf3v2__chips button{width:100%;padding:3px 4px;font-size:inherit}
html.xform3-themed .lab-page .lab-common-sizes [data-reset-shelf]{grid-column:1;grid-row:2;justify-self:stretch;align-self:start;min-height:30px}

/* Make the configurator's independent scroll area obvious and easy to grab. */
html.xform3-themed .lab-page .xf3v2__builder>.xf3v2__form,
html.xform3-themed .lab-page .xf3v2__builder{
  scrollbar-width:auto;
  scrollbar-color:var(--gui-blue,var(--blue)) color-mix(in srgb,var(--gui-blue,var(--blue)) 16%,var(--gui-panel,var(--paper)));
  overscroll-behavior:contain;
}
html.xform3-themed .lab-page .xf3v2__builder>.xf3v2__form::-webkit-scrollbar,
html.xform3-themed .lab-page .xf3v2__builder::-webkit-scrollbar{width:16px}
html.xform3-themed .lab-page .xf3v2__builder>.xf3v2__form::-webkit-scrollbar-track,
html.xform3-themed .lab-page .xf3v2__builder::-webkit-scrollbar-track{
  background:color-mix(in srgb,var(--gui-blue,var(--blue)) 16%,var(--gui-panel,var(--paper)));
  border:1px solid var(--gui-line,var(--line));
  border-radius:12px;
}
html.xform3-themed .lab-page .xf3v2__builder>.xf3v2__form::-webkit-scrollbar-thumb,
html.xform3-themed .lab-page .xf3v2__builder::-webkit-scrollbar-thumb{
  min-height:54px;
  background:var(--gui-blue,var(--blue));
  border:1px solid color-mix(in srgb,var(--gui-blue,var(--blue)) 16%,var(--gui-panel,var(--paper)));
  border-radius:12px;
}

/* Price and discounts share the left side; shipping stays under purchase controls. */
html.xform3-themed .lab-page .xf3v2__summary .lab-summary-price-row{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);
  align-items:start;
  gap:10px;
  overflow:visible;
}
html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts{grid-column:1;grid-row:1;display:grid;gap:2px;min-width:0;container-type:inline-size}
html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts .xf3v2__price{grid-column:1;grid-row:1;flex-wrap:wrap}
html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts .lab-volume-tiers{
  grid-column:1;
  grid-row:2;
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:1px;
  min-width:0;
  overflow:visible;
  white-space:nowrap;
  line-height:1.2;
  font-size:calc(clamp(7px,2.8cqw,9px) * var(--lab-scale,1));
}
html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts .lab-volume-tiers-label{flex:0 0 auto;margin:0 2px 0 0;font-weight:700}
html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts [data-tier-quantity]{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:1px 2px;border:1px solid var(--gui-line,var(--line));border-radius:5px;background:color-mix(in srgb,var(--gui-panel,var(--paper)) 84%,var(--gui-blue,var(--blue)));color:var(--gui-text,var(--ink));white-space:nowrap}
html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts [data-tier-quantity].is-current{border-color:var(--gui-blue,var(--blue));background:color-mix(in srgb,var(--gui-panel,var(--paper)) 65%,var(--gui-blue,var(--blue)));color:var(--gui-text,var(--ink));text-decoration:none;font-weight:700}
html.xform3-themed .lab-page .xf3v2__summary .lab-summary-price-row .lab-shipping-preview{
  grid-column:2;
  grid-row:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
  gap:4px 5px;
  align-self:start;
  min-width:0;
  width:100%;
  max-width:280px;
  margin:0;
  padding:0;
  border:0;
}
html.xform3-themed .lab-page .lab-summary-price-row .lab-shipping-title{grid-column:1/-1;grid-row:1;font-size:.9em;font-weight:700;line-height:1.2}
html.xform3-themed .lab-page .lab-summary-price-row .lab-shipping-preview>[data-shipping-country]{grid-column:1;grid-row:2;min-width:0;max-width:125px;min-height:31px}
html.xform3-themed .lab-page .lab-summary-price-row .lab-shipping-preview>[data-shipping-postal]{grid-column:2;grid-row:2;min-width:0;max-width:145px;min-height:31px}
html.xform3-themed .lab-page .lab-summary-price-row .lab-shipping-preview>[data-shipping-other-country]{grid-column:1/-1;grid-row:3}
html.xform3-themed .lab-page .lab-summary-price-row .lab-shipping-preview>fieldset{grid-column:1/-1;grid-row:3}
html.xform3-themed .lab-page .lab-summary-price-row .lab-shipping-preview>[data-shipping-message]{grid-column:1/-1;grid-row:4}
html.xform3-themed .lab-page .lab-summary-price-row .lab-shipping-preview.has-other-country>fieldset{grid-row:4}
html.xform3-themed .lab-page .lab-summary-price-row .lab-shipping-preview.has-other-country>[data-shipping-message]{grid-row:5}
@media(max-width:680px){html.xform3-themed .lab-page .xf3v2__summary .lab-summary-price-row{grid-template-columns:1fr}html.xform3-themed .lab-page .xf3v2__summary .lab-summary-price-row .lab-shipping-preview{grid-column:1;grid-row:2}}

/* Shelf names and per-shelf cart totals. */
.lab-page .xf3v2__summary [data-summary-name]{display:block;font-size:.75em;font-weight:700;line-height:1.2;overflow-wrap:anywhere}
.lab-page .xf3v2__summary [data-summary-size]{display:block;font-size:.84em;line-height:1.17}
html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts{grid-template-columns:minmax(0,1fr)}
html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts .lab-volume-tiers{grid-column:1;grid-row:2}
.lab-page .lab-save-shelf-actions button,.lab-page .lab-saved-shelves button{min-height:34px;padding:5px 9px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font:inherit;cursor:pointer}
.lab-page .lab-save-shelf-panel{max-width:560px;margin:8px auto;padding:10px 12px;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:var(--gui-panel,var(--paper));font-size:.9em}
.lab-page .lab-save-shelf-panel p{margin:0 0 8px;line-height:1.4}
.lab-page .lab-save-shelf-panel label{display:flex;gap:7px;align-items:center}
.lab-page .lab-save-shelf-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
.lab-page .lab-save-shelf-actions button:disabled{opacity:.5;cursor:not-allowed}
.lab-page .lab-saved-shelves{position:relative;font-size:.9em}
.lab-page .lab-saved-shelves summary{width:max-content;cursor:pointer;font-weight:650;white-space:nowrap}
.lab-page .lab-saved-shelves ul{position:absolute;z-index:10;top:100%;left:0;min-width:230px;list-style:none;margin:6px 0 0;padding:8px;max-height:170px;overflow:auto;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:var(--gui-panel,var(--paper));box-shadow:0 5px 16px #0002}
.lab-page .lab-saved-shelves li{display:flex;gap:7px;align-items:center;padding:4px 0}
.lab-page .lab-saved-shelves li span{flex:1;min-width:0;overflow-wrap:anywhere}
.lab-page .lab-saved-shelves button{min-height:30px;font-size:.86em}
.lab-page .lab-cart-pane .xf3v2__cart-line{display:block;padding:22px 0}
.lab-page .lab-cart-line-head{display:grid;grid-template-columns:210px minmax(0,1fr);gap:18px;align-items:center}
.lab-page .lab-cart-line-head .lab-cart-shelf-icon{max-width:210px}
.lab-page .lab-cart-line-intro h3{margin:0 0 4px;font-size:1.3em;line-height:1.2}
.lab-page .lab-cart-line-details{margin-top:12px}
.lab-page .lab-cart-line-details h3{font-size:1.3em;line-height:1.2}
.lab-page .lab-cart-top{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);align-items:start;gap:8px 22px;padding:8px 0 16px}
.lab-page .lab-cart-top .xf3v2__cart-totals{border:0;padding:0;text-align:left}
.lab-page .lab-cart-top .xf3v2__cart-totals p,.lab-page .lab-cart-top .xf3v2__cart-totals h3{margin:2px 0;white-space:normal}
.lab-page .lab-cart-order-actions{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:10px;align-items:center;min-width:0}
.lab-page .lab-cart-order-actions button,.lab-page [data-contact-form] button{min-height:42px;padding:9px 14px;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font-weight:700;cursor:pointer}
.lab-page .lab-cart-order-actions .xf3v2__primary{width:auto;min-width:0;margin:0}
.lab-page .lab-cart-save-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:0}
.lab-page .lab-cart-save-actions strong{flex-basis:100%;font-size:.95em;white-space:nowrap}
.lab-page .lab-cart-save-actions button{min-height:38px;padding:6px 10px}
.lab-page .lab-cart-library{border-top:1px solid var(--gui-line,var(--line));padding:12px 0 16px}
.lab-page .lab-cart-draft-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.lab-page .lab-cart-draft-heading strong{font-size:1.08em}
.lab-page .lab-cart-draft-heading button,.lab-page .lab-library-group button,.lab-page .lab-library-consent button{min-height:36px;padding:6px 10px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font:inherit;cursor:pointer}
.lab-page .lab-library-group{margin-top:10px}
.lab-page .lab-library-group summary{cursor:pointer;font-weight:650}
.lab-page .lab-library-group ul{list-style:none;padding:0;margin:5px 0}
.lab-page .lab-library-group li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:5px 0}
.lab-page .lab-library-group li span{min-width:140px;flex:1}
.lab-page .lab-library-consent{max-width:650px;margin-top:12px;padding:12px;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:var(--gui-panel,var(--paper))}
.lab-page .lab-library-consent>label:first-child{display:grid;gap:4px;font-weight:650}
.lab-page .lab-library-consent input[type=text]{min-height:38px;padding:5px 9px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink))}
.lab-page .lab-library-consent p{margin:8px 0}
.lab-page .lab-library-consent>div{display:flex;gap:8px;margin-top:9px}
.lab-page .lab-library-consent button:disabled{opacity:.5;cursor:not-allowed}
.lab-page .lab-cart-account-link{display:inline-block;margin-top:10px}
.lab-page .lab-cart-name-actions{display:flex;align-items:end;gap:8px}
.lab-page .lab-cart-name-actions [data-cart-favorite]{min-width:38px;min-height:38px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font-size:1.5em;line-height:1;cursor:pointer}
.lab-page [data-contact-form]{grid-column:2;display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;justify-content:flex-end;background:transparent}
.lab-page [data-contact-form][hidden]{display:none}
.lab-page [data-contact-form] label{display:grid;gap:3px;font-size:.9em;font-weight:650}
.lab-page [data-contact-form] input{width:min(270px,75vw);min-height:42px;padding:7px 9px;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink))}
.lab-page .lab-cart-top [data-cart-status]{grid-column:1/-1;margin:0}
.lab-page .lab-cart-line-size{font-size:1.05em;font-weight:650}
.lab-page .lab-cart-line-intro .lab-cart-shelf-name{display:flex;align-items:center;gap:10px;margin:10px 0 0;font-size:.95em}
.lab-page .lab-cart-shelf-name span{white-space:nowrap}
.lab-page .lab-cart-shelf-name input{width:min(320px,100%);min-width:0;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink))}
.lab-page .lab-cart-line-details h4{font-size:1em;margin:16px 0 8px}
.lab-page .lab-cart-specs{grid-template-columns:1fr;gap:4px;font-size:.94em;max-width:850px}
.lab-page .lab-cart-specs>div{gap:8px;line-height:1.4}
.lab-page .lab-cart-specs dt{flex:0 0 230px}
.lab-page .lab-cart-specs .lab-cart-spec-detail{padding-left:230px;color:var(--gui-muted,var(--muted))}
.lab-page .lab-cart-specs .lab-cart-spec-detail dt{display:none}
.lab-page .lab-cart-line-actions{align-items:flex-end;gap:12px}
.lab-page .lab-cart-quantity-block{display:grid;gap:5px;margin-right:auto}
.lab-page .lab-cart-quantity-block input[data-cart-quantity]{width:88px;min-height:42px}
.lab-page .lab-cart-line-tiers{display:flex;gap:5px;flex-wrap:wrap}
.lab-page .lab-cart-line-tiers span{display:inline-flex;padding:2px 6px;border:1px solid var(--gui-line,var(--line));border-radius:5px;font-size:.83em;white-space:nowrap}
.lab-page .lab-cart-line-tiers .is-earned{border-color:var(--gui-blue,var(--blue));background:color-mix(in srgb,var(--gui-panel,var(--paper)) 75%,var(--gui-blue,var(--blue)));font-weight:700}
.lab-page [data-line-discount]{font-size:.94em;color:var(--gui-muted,var(--muted))}
.lab-page [data-line-total]{font-size:1.16em}
@media(max-width:680px){.lab-page .lab-cart-line-head{grid-template-columns:1fr}.lab-page .lab-cart-specs dt{flex-basis:125px}.lab-page .lab-cart-specs .lab-cart-spec-detail{padding-left:125px}.lab-page .lab-cart-shelf-name{flex-wrap:wrap}html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts{grid-template-columns:1fr}html.xform3-themed .lab-page .xf3v2__summary .lab-price-discounts .lab-volume-tiers{grid-row:2}}
@media(max-width:1050px){.lab-page .lab-cart-top{grid-template-columns:1fr}.lab-page .lab-cart-order-actions,.lab-page [data-contact-form]{grid-column:1;justify-content:flex-start}}
@media(max-width:680px){.lab-page .lab-cart-order-actions{grid-template-columns:1fr}.lab-page .lab-cart-save-actions{grid-column:1}}

html.xform3-themed .lab-page .xf3v2__builder>.xf3v2__form{padding-right:20px}
html.xform3-themed .lab-page .xf3v2__builder>.xf3v2__form::-webkit-scrollbar,
html.xform3-themed .lab-page .xf3v2__builder::-webkit-scrollbar{width:22px}
html.xform3-themed .lab-page .xf3v2__dimensions label>.lab-dimension-label{font-size:calc(15px * var(--lab-scale,1));margin-bottom:4px}
html.xform3-themed .lab-page .xf3v2__dimensions input[type=number]{min-height:46px;padding:5px 9px;font-size:calc(26px * var(--lab-scale,1))}
html.xform3-themed .lab-page .xf3v2__dimensions input[type=range]{height:12px;margin:4px 0}
html.xform3-themed .lab-page .xf3v2__option{margin-bottom:12px}
html.xform3-themed .lab-page .lab-option-heading{margin-bottom:5px}
html.xform3-themed .lab-page .lab-visual-picks{gap:5px;grid-template-columns:repeat(auto-fit,minmax(min(100%,68px),1fr))}
html.xform3-themed .lab-page .lab-visual-picks button{min-height:70px;padding:5px 4px;gap:3px;font-size:calc(11.5px * var(--lab-scale,1))}
html.xform3-themed .lab-page .lab-visual-picks button[aria-pressed=true]{padding:4px 3px}
html.xform3-themed .lab-page .lab-visual-icon{width:50px;height:32px}
html.xform3-themed .lab-page .lab-visual-caption{line-height:1.15}
html.xform3-themed .lab-page [data-visual-group="mounting_lip_direction"] button{min-height:70px}
html.xform3-themed .lab-page [data-visual-group="mounting_lip_direction"] .lab-visual-icon{width:54px;height:35px}
@media(max-width:600px){html.xform3-themed .lab-page .lab-visual-picks{grid-template-columns:repeat(2,minmax(0,1fr))}}

html.xform3-themed .lab-page .xf3v2__summary .lab-summary-purchase{gap:9px}
html.xform3-themed .lab-page .xf3v2__summary .lab-summary-quantity{gap:9px;font-size:calc(14px * var(--lab-scale,1));font-weight:700}
html.xform3-themed .lab-page .xf3v2__summary .lab-summary-quantity input{
  width:76px;
  min-height:42px;
  padding:5px 7px;
  border:2px solid var(--gui-blue,var(--blue));
  border-radius:8px;
  font-size:calc(19px * var(--lab-scale,1));
  font-weight:750;
  text-align:center;
}

.lab-page .lab-main-nav .lab-chat-launch-item{display:flex;align-items:center;margin-inline-end:16px}
.lab-page .lab-main-nav .lab-chat-launch{min-height:40px;padding:8px 18px;font:inherit;font-size:1em;font-weight:700;line-height:1.3;border:1px solid var(--gui-line,var(--line));border-radius:7px}

.lab-page .lab-hole-heading h3{margin:0;font-size:inherit}

.lab-page .lab-preview-chrome{position:absolute;inset:0;z-index:2;pointer-events:none;color:var(--preview-annotation)}
.lab-page .lab-preview-backgrounds{position:absolute;left:20px;bottom:18px;display:flex;align-items:center;gap:10px;padding:0;border:0;background:none;pointer-events:auto}
.lab-page .lab-preview-backgrounds button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:5px 2px;border:0;border-radius:0;background:transparent;color:var(--preview-annotation);font-size:12px;line-height:1.2}
.lab-page .lab-preview-backgrounds button:hover{text-decoration:underline;text-underline-offset:4px}
.lab-page .lab-preview-backgrounds button[aria-pressed=true]{font-weight:700;text-decoration:underline;text-underline-offset:4px}
.lab-page .lab-background-swatch{width:18px;height:18px;flex:none;border-radius:50%;border:1px solid color-mix(in srgb,currentColor 55%,transparent)}
.lab-page .lab-preview-backgrounds button[aria-pressed=true] .lab-background-swatch{outline:1px solid currentColor;outline-offset:3px}
.lab-page .lab-preview-backgrounds .lab-preview-backdrop{width:auto;max-width:180px;min-height:34px;margin-left:9px;padding:3px 18px 3px 8px;border:0;border-left:1px solid color-mix(in srgb,var(--preview-annotation) 30%,transparent);border-radius:0;background:transparent;color:var(--preview-annotation);font-size:12px;cursor:pointer}
.lab-page .lab-preview-backdrop option{background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink))}
.lab-page .lab-preview-material{position:absolute;top:23px;right:24px;display:grid;gap:2px;margin:0;padding:0;background:none;border:0;border-radius:0;color:var(--preview-annotation);font-size:12px;line-height:1.45;text-align:right}
.lab-page .lab-preview-material .lab-material-kind{font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.lab-page .lab-preview-material strong{margin:1px 0 4px;font-size:25px;font-weight:600;line-height:1.2;letter-spacing:-.035em}
@media(max-width:600px){.lab-page .lab-preview-backgrounds{left:10px;bottom:10px;padding:0;gap:6px}.lab-page .lab-preview-backgrounds button{min-height:32px;padding:4px 1px;font-size:11px;gap:5px}.lab-page .lab-preview-material{top:12px;right:14px;font-size:10px;gap:0}.lab-page .lab-preview-material .lab-material-kind{font-size:9px}.lab-page .lab-preview-material strong{font-size:19px;margin-bottom:2px}}

@media(max-width:600px){.lab-page .lab-preview-backgrounds .lab-preview-backdrop{max-width:115px;margin-left:3px;font-size:11px;padding-left:6px}.lab-page .lab-background-swatch{width:14px;height:14px}}

/* Keep the backdrop selector as quiet as the adjacent tone swatches. */
html.xform3-themed .lab-page .lab-preview-backgrounds .lab-preview-backdrop{background:transparent!important;color:var(--preview-annotation)!important;border:0!important;border-left:1px solid color-mix(in srgb,var(--preview-annotation) 30%,transparent)!important;border-radius:0!important;box-shadow:none!important}

html.xform3-themed .lab-page .lab-preview-backgrounds button{background:transparent!important;color:var(--preview-annotation)!important;border:0!important;box-shadow:none!important}

/* Supporting files belong to the shelf order and remain compact in the form. */
.lab-page [data-supporting-files]{display:grid;gap:7px}
.lab-page [data-file-input]{max-width:100%;font-size:calc(13px * var(--lab-scale,1))}
.lab-page [data-file-list]{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.lab-page [data-file-list] li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.lab-page [data-file-list] li span{overflow-wrap:anywhere}
.lab-page [data-file-list] button{flex:none;padding:2px 4px;border:0;background:transparent;color:var(--gui-blue,var(--blue));text-decoration:underline}
.lab-page [data-file-status]{margin:0;font-size:calc(12px * var(--lab-scale,1))}

/* More room for options while keeping the customization scrollbar. */
.lab-page .xf3v2__builder>.xf3v2__form{max-height:clamp(420px,76dvh,840px)}
@media(max-width:850px){.lab-page .xf3v2__builder>.xf3v2__form{max-height:clamp(420px,64dvh,730px)}}

/* Let the store scenery show lightly through the shopping surfaces. */
html.xform3-themed .lab-page .lab-sticky-top{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}
html.xform3-themed .lab-page .lab-header{background:transparent!important;border:0!important;box-shadow:none!important}
html.xform3-themed .lab-page .xf3v2__summary{background:color-mix(in srgb,var(--gui-panel,var(--paper)) 82%,transparent)!important}
html.xform3-themed .lab-page .xf3v2__form{background:color-mix(in srgb,var(--gui-panel,var(--paper)) 78%,transparent)!important}
html.xform3-themed .lab-page .lab-viewer-shell{background:color-mix(in srgb,var(--gui-panel,var(--paper)) 18%,transparent)!important}

/* Keep view switching in the preview frame, beneath the background choices. */
.lab-page .lab-viewer-shell{position:relative}
.lab-page .lab-preview-backgrounds{bottom:53px}
.lab-page .lab-viewer-shell .lab-viewer-toolbar{position:absolute;z-index:3;left:20px;right:20px;bottom:12px;display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:5px 13px;width:auto;margin:0;padding:0;border:0;background:transparent!important;color:#203542;font-size:12px;line-height:1.2;text-shadow:0 1px 1px rgb(255 255 255 / .8),0 0 7px rgb(255 255 255 / .55)}
.lab-page[data-preview-background=dark] .lab-viewer-shell .lab-viewer-toolbar{color:#edf4f8;text-shadow:0 1px 5px rgb(8 19 27 / .85)}
.lab-page .lab-viewer-shell .lab-view-modes{gap:13px}
html.xform3-themed .lab-page .lab-viewer-shell .lab-viewer-toolbar button{min-height:32px;padding:4px 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:inherit!important;font-size:12px;font-weight:500;text-shadow:inherit}
html.xform3-themed .lab-page .lab-viewer-shell .lab-viewer-toolbar button[aria-pressed=true]{border:0!important;background:transparent!important;color:inherit!important;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.lab-page .lab-viewer-shell .lab-viewer-toolbar button:is(:hover,:focus-visible){text-decoration:underline;text-underline-offset:4px}
.lab-page .lab-viewer-shell .lab-viewer-toolbar>span{margin-left:auto;white-space:nowrap}
.lab-page .lab-viewer-shell .lab-shelf-render-modes{position:absolute;z-index:3;left:20px;bottom:96px;display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0;color:#203542;font-size:12px;line-height:1.2;text-shadow:0 1px 1px rgb(255 255 255 / .8),0 0 7px rgb(255 255 255 / .55)}
.lab-page[data-preview-background=dark] .lab-viewer-shell .lab-shelf-render-modes{color:#edf4f8;text-shadow:0 1px 5px rgb(8 19 27 / .85)}
.lab-page .lab-viewer-shell .lab-shelf-render-modes>span{font-weight:650}
html.xform3-themed .lab-page .lab-viewer-shell .lab-shelf-render-modes button{min-height:30px;padding:3px 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:inherit!important;font-size:12px;text-shadow:inherit}
html.xform3-themed .lab-page .lab-viewer-shell .lab-shelf-render-modes button[aria-pressed=true]{font-weight:700;text-decoration:underline;text-underline-offset:4px}
.lab-page .lab-viewer-shell .lab-shelf-render-modes button:is(:hover,:focus-visible){text-decoration:underline;text-underline-offset:4px}
.lab-page .lab-viewer-shell:has(.lab-viewer[data-render-state=svg]) .lab-viewer-toolbar{color:#173447!important;text-shadow:none!important}
.lab-page .lab-viewer-shell:has(.lab-viewer[data-render-state=svg]) .lab-viewer-toolbar button{text-shadow:none!important}
.lab-page .lab-viewer[data-render-state=svg] .lab-svg-preview{padding-bottom:51px}
@media(max-width:600px){.lab-page .lab-preview-column{width:100%}.lab-page .lab-preview-column .lab-viewer{height:clamp(360px,54dvh,450px)}.lab-page .lab-preview-backgrounds{bottom:48px}.lab-page .lab-viewer-shell .lab-viewer-toolbar{left:10px;right:10px;bottom:7px;gap:4px 10px;font-size:11px}.lab-page .lab-viewer-shell .lab-viewer-toolbar>span{display:none}.lab-page .lab-viewer-shell .lab-view-modes{gap:10px}html.xform3-themed .lab-page .lab-viewer-shell .lab-viewer-toolbar button{min-height:30px;font-size:11px}}
@media(max-width:600px){.lab-page .lab-viewer-shell .lab-shelf-render-modes{left:10px;right:10px;bottom:86px;gap:7px;font-size:11px}html.xform3-themed .lab-page .lab-viewer-shell .lab-shelf-render-modes button{font-size:11px}.lab-page .lab-viewer[data-render-state=svg] .lab-svg-preview{padding:9px 10px 40px}}
/* Keep the drilling choices together, with the hole count beside the diagram below. */
.lab-page .lab-hole-mode{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;gap:5px;overflow:visible}
.lab-page .lab-hole-diagram-row{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:14px;margin:8px 0 12px}
.lab-page .lab-hole-diagram-row svg{justify-self:center;width:min(100%,460px);min-width:0;height:150px;overflow:visible}

.lab-page .lab-hole-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
.lab-page .lab-hole-install{display:grid;gap:5px;min-width:0}
.lab-page .lab-hole-install label{display:flex;align-items:center;gap:5px;font-size:.78em;cursor:pointer}
.lab-page .lab-hole-install input[type=checkbox]{width:16px;height:16px;min-height:0;margin:0;padding:0;accent-color:var(--gui-blue,var(--blue));cursor:pointer}
.lab-page .lab-hole-install label:has(input:disabled){opacity:.45;cursor:not-allowed}
@media(max-width:600px){.lab-page .lab-hole-top{grid-template-columns:1fr}.lab-page .lab-hole-diagram-row{grid-template-columns:minmax(0,1fr) max-content;gap:8px}.lab-page .lab-hole-diagram-row svg{height:82px}}
.lab-page .lab-hole-specifications{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);align-items:end;gap:12px;margin:10px 0}
.lab-page .lab-hole-diameter{display:grid;gap:4px;max-width:220px;font-size:calc(14px * var(--lab-scale,1));font-weight:650}
.lab-page .lab-hole-diameter input{width:100%;min-height:40px;padding:6px 9px}
.lab-page .lab-hole-position-mode{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;padding:8px 12px;border:1px solid var(--gui-line,var(--line));border-radius:8px;background:color-mix(in srgb,var(--gui-panel,var(--paper)) 82%,transparent)}
.lab-page .lab-hole-position-mode label{display:inline-flex;align-items:center;gap:6px;font-size:calc(14px * var(--lab-scale,1));font-weight:600;white-space:nowrap}
.lab-page .lab-hole-position-mode input{width:17px;height:17px;min-height:0;margin:0;accent-color:var(--gui-blue,var(--blue))}
.lab-page .lab-hole-locations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:10px 0}
.lab-page .lab-hole-locations[hidden]{display:none}
.lab-page .lab-hole-locations label{display:grid;gap:4px;min-width:0;font-size:calc(13px * var(--lab-scale,1));font-weight:600}
.lab-page .lab-hole-locations input{width:100%;min-width:0;min-height:40px;padding:6px 9px}
.lab-page .lab-split-hole-warning{margin:10px 0;padding:10px 12px;border:1px solid #d88c47;border-left:4px solid #c46520;border-radius:6px;background:#fff0df;color:#873814;font-size:calc(14px * var(--lab-scale,1));font-weight:650;line-height:1.45}
.lab-page .lab-split-hole-warning[hidden]{display:none}
@media(max-width:600px){.lab-page .lab-hole-specifications{grid-template-columns:1fr}.lab-page .lab-hole-diameter{max-width:100%}.lab-page .lab-hole-locations{grid-template-columns:repeat(2,minmax(0,1fr))}}
.lab-page .lab-hole-install .lab-no-hole-rigging-count{display:flex;align-items:center;gap:7px;padding-left:21px;white-space:nowrap}
.lab-page .lab-no-hole-rigging-count input[type=number]{width:62px;min-height:34px;padding:4px 6px;text-align:center;font-size:1em}

/* Keep the hole selector and count above a full-width shelf diagram. */
.lab-page .lab-hole-editor{font-size:calc(16px * var(--lab-scale,1))}
.lab-page .lab-hole-mode{gap:8px 18px}
.lab-page .lab-hole-mode label{font-size:calc(16px * var(--lab-scale,1));line-height:1.35}
.lab-page .lab-hole-install label{font-size:calc(15px * var(--lab-scale,1));line-height:1.35}
.lab-page .lab-hole-top{grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:12px 20px}
.lab-page .lab-hole-quantity{display:flex;align-items:center;justify-items:initial;justify-content:flex-end;gap:12px;min-width:0;margin:0;padding:0;border:0}
.lab-page .lab-hole-quantity-label{font-size:calc(16px * var(--lab-scale,1));line-height:1.3}
.lab-page .lab-hole-install{grid-column:1/-1}
.lab-page .lab-hole-diagram-row{display:block;width:100%;margin:8px 0 12px}
.lab-page .lab-hole-diagram-row svg{display:block;width:100%;max-width:none;height:166px}
.lab-page .lab-hole-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}
.lab-page .lab-hole-controls label{display:grid;grid-template-rows:minmax(2.7em,auto) 46px;align-items:start;justify-content:stretch;gap:6px;min-width:0;font-size:calc(16px * var(--lab-scale,1));font-weight:650;line-height:1.3}
.lab-page .lab-hole-controls label>span{display:block;min-width:0}
.lab-page .lab-hole-controls input{width:min(100%,150px);min-width:0;min-height:46px;padding:6px 9px;font-size:calc(19px * var(--lab-scale,1));justify-self:start}
.lab-page .lab-hole-specifications{grid-template-columns:minmax(170px,240px) minmax(0,1fr);gap:14px}
.lab-page .lab-hole-diameter{font-size:calc(16px * var(--lab-scale,1));line-height:1.35}
.lab-page .lab-hole-diameter>span:first-child{white-space:nowrap}
.lab-page .lab-hole-diameter input{min-height:46px;font-size:calc(19px * var(--lab-scale,1))}
.lab-page .lab-hole-diameter-note{display:block;margin-top:4px;font-size:calc(15px * var(--lab-scale,1));font-weight:500;line-height:1.35}
.lab-page .lab-hole-position-mode{gap:8px 18px;padding:10px 13px}
.lab-page .lab-hole-position-mode label{font-size:calc(16px * var(--lab-scale,1));line-height:1.35}
.lab-page .lab-hole-locations label{font-size:calc(15px * var(--lab-scale,1));line-height:1.35}
.lab-page .lab-hole-locations input{min-height:46px;font-size:calc(18px * var(--lab-scale,1))}
.lab-page [data-hole-reset]{margin-top:13px;padding:11px 14px;min-height:48px;border:1px solid var(--gui-line,var(--line));border-radius:8px;background:color-mix(in srgb,var(--gui-panel,var(--paper)) 88%,transparent);font-size:calc(16px * var(--lab-scale,1));font-weight:700;line-height:1.4}
.lab-page .lab-split-hole-warning{font-size:calc(16px * var(--lab-scale,1));line-height:1.45}
@media(max-width:600px){.lab-page .lab-hole-top{grid-template-columns:minmax(0,1fr) max-content;gap:8px}.lab-page .lab-hole-quantity{flex-direction:column;align-items:flex-end;gap:5px}.lab-page .lab-hole-quantity-label{font-size:calc(15px * var(--lab-scale,1));text-align:right}.lab-page .lab-hole-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lab-page .lab-hole-controls label{grid-template-rows:minmax(2.8em,auto) 44px;font-size:calc(15px * var(--lab-scale,1))}.lab-page .lab-hole-controls input{width:100%;min-height:44px;font-size:calc(17px * var(--lab-scale,1))}.lab-page .lab-hole-diagram-row svg{height:150px}.lab-page .lab-hole-specifications{grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);gap:8px}.lab-page .lab-hole-position-mode{display:grid;gap:7px;padding:8px}.lab-page .lab-hole-position-mode label{font-size:calc(15px * var(--lab-scale,1))}.lab-page .lab-hole-locations{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Keep the material annotation visible above both the 3D canvas and SVG fallback. */
.lab-page .lab-viewer-shell{position:relative}
.lab-page .lab-preview-material{z-index:4;pointer-events:none}
.lab-page .lab-preview-material{color:var(--preview-annotation,#203542)}
.lab-page [data-visual-group="shelf_angle_capacity"] button{min-height:100px;font-size:calc(14px * var(--lab-scale,1));gap:5px}
.lab-page [data-visual-group="shelf_angle_capacity"] .lab-visual-icon{width:60px;height:38px}
.lab-page [data-visual-group="shelf_angle_capacity"] .lab-visual-caption{font-size:calc(14px * var(--lab-scale,1));font-weight:650;line-height:1.25}
.lab-page [data-visual-group="shelf_angle_capacity"] .lab-angle-capacity{display:flex;align-items:center;justify-content:center;gap:5px;font-size:calc(14px * var(--lab-scale,1));font-weight:700;line-height:1.2}
.lab-page .xf3v2__form>.lab-followup-option,.lab-page .xf3v2__form>.lab-notes-files-section{grid-column:1/-1;margin:14px 0 0;padding:12px 0 0;border-top:1px solid var(--gui-line,var(--line))}
.lab-page .lab-notes-files-section>h3{margin:0 0 9px}
.lab-page .lab-notes-files-section>.xf3v2__wide{display:grid;gap:5px;margin:0 0 10px;font-size:calc(13px * var(--lab-scale,1))}
html.xform3-themed .lab-page .xf3v2__dimensions{gap:10px}
html.xform3-themed .lab-page .xf3v2__dimensions label{display:grid;grid-template-columns:minmax(116px,122px) minmax(0,1fr);grid-template-rows:auto minmax(46px,auto);align-items:center;column-gap:9px;row-gap:4px;min-width:0}
html.xform3-themed .lab-page .xf3v2__dimensions label>.lab-dimension-label{grid-column:1/-1;grid-row:1;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:6px;min-width:0;margin:0;font-weight:700}
html.xform3-themed .lab-page .xf3v2__dimensions .lab-dimension-limits{display:inline;font-size:calc(11px * var(--lab-scale,1));font-weight:400;white-space:nowrap}
html.xform3-themed .lab-page .xf3v2__dimensions input[type=number]{grid-column:1;grid-row:2;min-height:46px;padding:5px 8px;font-size:calc(24px * var(--lab-scale,1))}
html.xform3-themed .lab-page .xf3v2__dimensions input[type=range]{grid-column:2;grid-row:2;min-width:0;width:100%;margin:0;align-self:center}
@media(min-width:851px) and (max-width:1050px){html.xform3-themed .lab-page .xf3v2__dimensions{grid-template-columns:1fr}}

/* Keep the preview choices visible and distribute them around the shelf. */
.lab-page .lab-viewer-shell .lab-viewer-toolbar{top:14px;bottom:auto;left:18px;right:auto;max-width:calc(100% - 205px)}
.lab-page .lab-viewer-shell .lab-viewer-toolbar>span{display:none}
.lab-page .lab-viewer-shell .lab-shelf-render-modes{top:58px;bottom:auto;left:18px;right:auto;max-width:calc(100% - 205px);gap:4px 13px}
.lab-page .lab-preview-backgrounds{left:18px;right:18px;bottom:15px;display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}
.lab-page .lab-preview-tone,.lab-page .lab-preview-backdrops{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;min-width:0}
.lab-page .lab-preview-tone>span,.lab-page .lab-preview-backdrops>span:first-child{font-weight:650}
.lab-page .lab-preview-backgrounds label{display:inline-flex;align-items:center;gap:4px;min-height:30px;white-space:nowrap;color:var(--preview-annotation);font-size:12px;line-height:1.2;cursor:pointer;text-shadow:0 1px 1px rgb(255 255 255 / .8),0 0 7px rgb(255 255 255 / .55)}
.lab-page[data-preview-background=dark] .lab-preview-backgrounds label{text-shadow:0 1px 5px rgb(8 19 27 / .85)}
.lab-page .lab-preview-backgrounds input[type=radio]{width:14px;height:14px;min-height:0;margin:0;padding:0;accent-color:currentColor;cursor:pointer}
.lab-page .lab-preview-backdrops [role=status]{font-size:12px}
@media(max-width:600px){
  .lab-page .lab-preview-column .lab-viewer{height:clamp(390px,59dvh,480px)}
  .lab-page .lab-viewer-shell .lab-viewer-toolbar{top:8px;bottom:auto;left:10px;right:auto;max-width:calc(100% - 165px)}
  .lab-page .lab-viewer-shell .lab-shelf-render-modes{top:83px;bottom:auto;left:10px;right:10px;max-width:none;gap:3px 9px}
  .lab-page .lab-preview-backgrounds{left:10px;right:10px;bottom:8px;gap:5px}
  .lab-page .lab-preview-tone,.lab-page .lab-preview-backdrops{gap:3px 8px}
  .lab-page .lab-preview-backgrounds label,.lab-page .lab-preview-backdrops [role=status]{font-size:11px;min-height:25px}
  .lab-page .lab-preview-backgrounds input[type=radio]{width:12px;height:12px}
}

/* Keep the two preview settings groups together in a light, readable strip. */
.lab-page .lab-preview-backgrounds{left:14px;right:14px;bottom:14px;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:8px 17px;margin:0;padding:6px 12px;border:1px solid rgb(78 112 128 / .3);border-radius:9px;background:rgb(244 249 250 / .83);box-shadow:0 3px 13px rgb(19 49 61 / .12);backdrop-filter:blur(11px);color:#203a47;text-shadow:none}
.lab-page .lab-preview-tone,.lab-page .lab-preview-backdrops{display:flex;align-items:center;flex-wrap:nowrap;gap:7px;min-width:0}
.lab-page .lab-preview-tone{flex:none}
.lab-page .lab-preview-backdrops{flex:1;justify-content:flex-end}
.lab-page .lab-preview-group-title{color:#3f6271;font-size:11px;font-weight:700;letter-spacing:.025em;line-height:1.2;text-transform:none;white-space:nowrap}
.lab-page .lab-preview-choice-row{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:1px 9px}
.lab-page .lab-preview-backgrounds label,.lab-page[data-preview-background=dark] .lab-preview-backgrounds label{min-height:26px;color:#203a47;font-size:12px;font-weight:520;text-shadow:none}
.lab-page .lab-preview-backgrounds input[type=radio]{width:13px;height:13px;accent-color:#2d7089}
.lab-page .lab-preview-backgrounds label:has(input:checked){font-weight:730}
.lab-page .lab-preview-backdrops [role=status]{color:#3f6271;font-size:12px}
.lab-page .lab-viewer-shell .lab-viewer-toolbar{top:13px;left:14px;max-width:calc(100% - 205px);padding:1px 8px;border:1px solid rgb(78 112 128 / .25);border-radius:7px;background:rgb(244 249 250 / .77)!important;color:#203a47!important;text-shadow:none!important;backdrop-filter:blur(8px)}
.lab-page .lab-viewer-shell .lab-viewer-toolbar button,.lab-page .lab-viewer-shell:has(.lab-viewer[data-render-state=svg]) .lab-viewer-toolbar button{color:#203a47!important;text-shadow:none!important}
.lab-page .lab-viewer-shell:has(.lab-viewer[data-render-state=svg]) .lab-viewer-toolbar{color:#203a47!important}
@media(max-width:760px){.lab-page .lab-preview-backgrounds{flex-wrap:wrap;justify-content:flex-start}.lab-page .lab-preview-backdrops{justify-content:flex-start;flex-basis:100%}.lab-page .lab-preview-choice-row{justify-content:flex-start}}
@media(max-width:600px){
  .lab-page .lab-preview-column .lab-viewer{height:clamp(440px,67dvh,530px)}
  .lab-page .lab-preview-backgrounds{left:8px;right:8px;bottom:8px;gap:2px 10px;padding:7px 9px}
  .lab-page .lab-preview-choice-row{gap:1px 8px}
  .lab-page .lab-preview-backgrounds label,.lab-page[data-preview-background=dark] .lab-preview-backgrounds label{min-height:24px;font-size:11px}
  .lab-page .lab-preview-backgrounds input[type=radio]{width:12px;height:12px}
  .lab-page .lab-viewer-shell .lab-viewer-toolbar{top:8px;left:8px;max-width:calc(100% - 160px);padding:2px 6px}
}
@media(max-width:600px){html.xform3-themed .lab-page .xf3v2__dimensions{grid-template-columns:1fr}}
.lab-page .xf3v2__form>.lab-customization-jump{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 13px}
.lab-page .lab-customization-jump button{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:6px;min-width:0;min-height:48px;padding:6px 7px;border:1px solid color-mix(in srgb,var(--gui-blue,var(--blue)) 36%,var(--gui-line,var(--line)));border-radius:7px;background:color-mix(in srgb,var(--gui-blue,var(--blue)) 9%,var(--gui-panel,var(--paper)));color:var(--gui-blue,var(--blue));font-size:calc(12px * var(--lab-scale,1));font-weight:600;line-height:1.15;text-align:left;white-space:normal}
.lab-page .lab-customization-jump button svg{width:17px;height:17px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lab-page .lab-customization-jump button span{min-width:0;overflow-wrap:normal}
.lab-page .lab-customization-jump button:hover,.lab-page .lab-customization-jump button[aria-pressed=true]{border-color:var(--gui-blue,var(--blue));color:var(--gui-blue,var(--blue))}
.lab-page .lab-customization-jump button[aria-pressed=true]{background:color-mix(in srgb,var(--gui-blue,var(--blue)) 17%,var(--gui-panel,var(--paper)));font-weight:700}
html.xform3-themed .lab-page .xf3v2__form>.lab-feature-option{margin:5px 0 9px;padding:10px;border:1px solid color-mix(in srgb,var(--gui-blue,var(--blue)) 27%,var(--gui-line,var(--line)));border-left:3px solid color-mix(in srgb,var(--gui-blue,var(--blue)) 67%,var(--gui-line,var(--line)));border-radius:8px;background:color-mix(in srgb,var(--gui-blue,var(--blue)) 5%,var(--gui-panel,var(--paper)))}
@media(max-width:1100px){.lab-page .xf3v2__form>.lab-customization-jump{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-page .lab-customization-jump button{min-height:42px;font-size:calc(13px * var(--lab-scale,1))}}
.lab-page .lab-customization-focus{outline:2px solid var(--gui-blue,var(--blue));outline-offset:4px;border-radius:5px}
.lab-page .lab-cable-count{display:flex;align-items:center;gap:12px;margin:8px 0 0;padding:0;border:0;font-size:calc(13px * var(--lab-scale,1))}
.lab-page .lab-cable-count[hidden]{display:none}
.lab-page .lab-cable-count legend{float:left;margin-right:10px;padding:0;font-weight:600}
.lab-page .lab-cable-count label{display:inline-flex;align-items:center;gap:4px;font-weight:400;cursor:pointer}
.lab-page .lab-cable-count input{width:15px;height:15px;min-height:0;margin:0;accent-color:var(--gui-blue,var(--blue))}
.lab-page .xf3v2__option>label.lab-cable-detail-label,
html.xform3-themed .lab-page .xf3v2__option>label.lab-cable-detail-label{display:block;margin:9px 0 0;font-size:calc(13px * var(--lab-scale,1));font-weight:400;line-height:1.35;letter-spacing:normal}
.lab-page .lab-cable-detail-label[hidden]{display:none}
.lab-page .lab-cable-detail-label input{display:block;width:100%;margin-top:4px;font-weight:400}

/* One shared desktop row gives the benefits panel and scrolling form the same bottom edge. */
@media(min-width:851px){
 :root .lab-page .lab-workspace{align-items:stretch}
 :root .lab-page .lab-workspace>.xf3v2__builder{contain:size;align-self:stretch;display:flex;flex-direction:column;min-height:0;height:auto}
 :root .lab-page .lab-workspace>.xf3v2__builder>.xf3v2__form{flex:1 1 0;min-height:0;max-height:none;margin-bottom:0;overflow-y:auto}
}

/* Keep the order summary compact and each configured shelf in one readable card. */
.lab-page .lab-cart-top{grid-template-columns:minmax(0,1fr) auto;gap:12px 24px;align-items:center;padding:6px 0 14px}
.lab-page .lab-cart-top .xf3v2__cart-totals h3{font-size:1.45em;line-height:1.2}
.lab-page .lab-cart-order-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px}
.lab-page .lab-cart-save-actions{display:contents}
.lab-page .lab-cart-save-actions strong{display:none}
.lab-page .lab-cart-top [data-cart-status]{font-size:.88em;color:var(--gui-muted,var(--muted))}
.lab-page .lab-cart-library{padding:12px 0}
.lab-page .lab-cart-pane .xf3v2__cart-line{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:30px;align-items:start;margin:14px 0;padding:22px 24px;border:1px solid var(--gui-line,var(--line));border-radius:12px;background:color-mix(in srgb,var(--gui-panel,var(--paper)) 88%,white)}
.lab-page .lab-cart-spec-column,.lab-page .lab-cart-product-column{min-width:0}
.lab-page .lab-cart-spec-column h4{margin:0 0 13px;font-size:1.08em;line-height:1.25}
.lab-page .lab-cart-specs{display:grid;grid-template-columns:1fr;gap:7px;margin:0;font-size:.95em;max-width:none}
.lab-page .lab-cart-specs>div{display:grid;grid-template-columns:minmax(135px,34%) minmax(0,1fr);gap:9px;line-height:1.35}
.lab-page .lab-cart-specs dt{min-width:0;font-weight:700}
.lab-page .lab-cart-specs dd{min-width:0;margin:0;overflow-wrap:anywhere}
.lab-page .lab-cart-specs .lab-cart-spec-detail{padding-left:calc(34% + 9px);color:var(--gui-muted,var(--muted))}
.lab-page .lab-cart-spec-subdetail{display:block;margin-top:2px;color:var(--gui-muted,var(--muted));white-space:pre-line;overflow-wrap:anywhere}
.lab-page .lab-cart-product-column{display:grid;gap:15px;align-content:start}
.lab-page .lab-cart-line-intro{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 18px}
.lab-page .lab-cart-line-intro .lab-cart-line-size{margin:0;font-size:1.35em;line-height:1.2}
.lab-page .lab-cart-line-intro .lab-cart-shelf-name{display:flex;align-items:center;gap:8px;margin:0;font-size:.9em;color:var(--gui-muted,var(--muted))}
.lab-page .lab-cart-shelf-name input{width:min(220px,100%);min-height:38px;padding:6px 9px}
.lab-page .lab-cart-line-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0}
.lab-page .lab-cart-quantity-block{display:grid;gap:5px;margin:0;min-width:0}
.lab-page .lab-cart-quantity-block label{display:flex;align-items:center;gap:8px}
.lab-page .lab-cart-quantity-block input[data-cart-quantity]{width:74px;min-height:38px}
.lab-page .lab-cart-quantity-block p{margin:0}
.lab-page .lab-cart-line-action-buttons{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.lab-page .lab-cart-line-action-buttons button{white-space:nowrap}
.lab-page .lab-cart-shelf-views{display:grid;gap:0;width:min(100%,520px);margin:0 auto}
.lab-page .lab-cart-product-column .lab-cart-shelf-icon{display:block;width:100%;max-width:none;height:auto;margin:0;padding:0;border:0;background:transparent}
.lab-page .lab-cart-product-column .lab-cart-drawing-unavailable{min-height:170px;background:transparent}
@media(max-width:1100px){.lab-page .lab-cart-top{grid-template-columns:1fr}.lab-page .lab-cart-order-actions{justify-content:flex-start}}
@media(max-width:850px){.lab-page .lab-cart-pane .xf3v2__cart-line{grid-template-columns:1fr;gap:20px}.lab-page .lab-cart-line-actions{flex-wrap:wrap}}
@media(max-width:600px){.lab-page .lab-cart-pane .xf3v2__cart-line{padding:18px}.lab-page .lab-cart-specs>div{grid-template-columns:minmax(110px,37%) minmax(0,1fr)}.lab-page .lab-cart-specs .lab-cart-spec-detail{padding-left:calc(37% + 9px)}.lab-page .lab-cart-line-intro .lab-cart-shelf-name{width:100%}.lab-page .lab-cart-product-column .lab-cart-shelf-icon{max-height:340px}}

/* The shelf identity spans the card, leaving the two columns for specifications and drawings. */
.lab-page .lab-cart-pane .xf3v2__cart-line{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:18px 32px;padding:22px 26px}
.lab-page .lab-cart-line-header{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:15px;border-bottom:1px solid var(--gui-line,var(--line))}
.lab-page .lab-cart-line-identity{min-width:0;flex:1}
.lab-page .lab-cart-name-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.lab-page .lab-cart-name-row h3{min-width:0;margin:0;font-size:1.4em;line-height:1.2;overflow-wrap:anywhere}
.lab-page .lab-cart-name-row button{padding:3px 5px;border:0;background:transparent;color:var(--gui-blue,var(--blue));font:inherit;font-size:.9em;font-weight:650;cursor:pointer}
.lab-page .lab-cart-name-row button:hover,.lab-page .lab-cart-name-row button:focus-visible{text-decoration:underline}
.lab-page .lab-cart-line-identity .lab-cart-line-size{margin:4px 0 0;color:var(--gui-muted,var(--muted));font-size:1.03em;line-height:1.3}
.lab-page .lab-cart-rename-editor{display:flex;align-items:flex-end;gap:7px;flex-wrap:wrap;margin-top:10px}
.lab-page .lab-cart-rename-editor[hidden],.lab-page [data-cart-rename][hidden]{display:none}
.lab-page .lab-cart-rename-editor label{display:grid;gap:3px;font-size:.9em}
.lab-page .lab-cart-rename-editor input{width:min(290px,75vw);min-height:37px;padding:5px 9px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font:inherit}
.lab-page .lab-cart-rename-editor button{min-height:37px}
.lab-page .lab-cart-line-header .lab-cart-line-action-buttons{padding-top:2px}
.lab-page .lab-cart-spec-column h4{margin:0 0 11px;font-size:1.04em}
.lab-page .lab-cart-specs{gap:6px;font-size:.94em}
.lab-page .lab-cart-specs>div{grid-template-columns:minmax(145px,205px) minmax(0,1fr);gap:10px}
.lab-page .lab-cart-specs .lab-cart-spec-detail{padding-left:215px}
.lab-page .lab-cart-product-column{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;align-items:start}
.lab-page .lab-cart-line-actions{display:block}
.lab-page .lab-cart-quantity-block{display:grid;grid-template-columns:1fr;justify-items:start;gap:8px}
.lab-page .lab-cart-line-tiers,.lab-page .lab-cart-quantity-block .lab-cart-line-total,.lab-page .lab-cart-quantity-block [data-line-discount]{grid-column:1;grid-row:auto;text-align:left}
.lab-page .lab-cart-preview-strip{display:grid;gap:8px;min-width:0;width:100%;max-width:230px;justify-self:end}
.lab-page .lab-cart-drawing-thumb{display:block;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:7px 9px 5px;border:1px solid var(--gui-line,var(--line));border-radius:8px;background:color-mix(in srgb,var(--gui-panel,var(--paper)) 70%,transparent);color:var(--gui-text,var(--ink));text-align:left;cursor:zoom-in}
.lab-page .lab-cart-drawing-thumb:is(:hover,:focus-visible){border-color:var(--gui-blue,var(--blue));background:color-mix(in srgb,var(--gui-panel,var(--paper)) 88%,white)}
.lab-page .lab-cart-drawing-caption{display:block;margin:0 0 3px;font-size:.84em;font-weight:650;color:var(--gui-blue,var(--blue))}
.lab-page .lab-cart-drawing-thumb .lab-cart-shelf-icon{display:block;width:100%;height:auto;max-width:none;margin:0;padding:0;border:0;background:transparent}
.lab-page .lab-cart-drawing-dialog{box-sizing:border-box;width:min(1080px,calc(100vw - 34px));max-width:none;max-height:90vh;margin:auto;padding:20px;border:1px solid var(--gui-line,var(--line));border-radius:12px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));box-shadow:0 20px 55px rgb(16 37 47 / .28);overflow:auto}
.lab-page .lab-cart-drawing-dialog::backdrop{background:rgb(12 35 49 / .6)}
.lab-page .lab-cart-drawing-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.lab-page .lab-cart-drawing-dialog-head h2{margin:0;font-size:1.25em}
.lab-page .lab-cart-drawing-large svg{display:block;width:100%;height:auto;max-width:none;background:transparent}
.lab-page .lab-library-group li input[aria-label="Draft order name"]{min-width:180px;min-height:36px;padding:5px 9px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font:inherit}
@media(max-width:850px){.lab-page .lab-cart-pane .xf3v2__cart-line{grid-template-columns:1fr;gap:16px}.lab-page .lab-cart-line-header{grid-column:1}.lab-page .lab-cart-line-actions{display:block}}
@media(max-width:600px){.lab-page .lab-cart-line-header{flex-wrap:wrap}.lab-page .lab-cart-preview-strip{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.lab-page .lab-cart-specs>div{grid-template-columns:minmax(110px,37%) minmax(0,1fr)}.lab-page .lab-cart-specs .lab-cart-spec-detail{padding-left:calc(37% + 9px)}.lab-page .lab-cart-drawing-dialog{padding:12px}}

/* Show saved items beside Cart only when those menus have content. */
.lab-page .lab-tab-actions{display:flex;align-items:center;gap:8px;margin-left:auto;flex:none}
.lab-page .lab-library-shortcut{position:relative;flex:none}
.lab-page .lab-library-shortcut>summary{list-style:none;cursor:pointer;white-space:nowrap;padding:7px 11px;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:var(--gui-panel,var(--paper));font-weight:650}
.lab-page .lab-library-shortcut>summary::-webkit-details-marker{display:none}
.lab-page .lab-library-shortcut>summary::after{content:'⌄';margin-left:7px}
.lab-page .lab-library-shortcut[open]>summary{border-color:var(--gui-blue,var(--blue))}
.lab-page .lab-library-shortcut>[data-library-orders],.lab-page .lab-library-shortcut>.lab-library-dropdown{position:absolute;z-index:40;top:calc(100% + 5px);right:0;width:max-content;min-width:250px;max-width:min(420px,90vw);margin:0;padding:6px;list-style:none;border:1px solid var(--gui-line,var(--line));border-radius:8px;background:var(--gui-panel,var(--paper));box-shadow:0 10px 24px #0002}
.lab-page .lab-library-dropdown>[data-library-profiles]{margin:0;padding:0;list-style:none}
.lab-page .lab-library-dropdown>[data-library-profiles]:empty{display:none}
.lab-page .lab-library-dropdown>.lab-saved-shelves:not([hidden]){position:static;margin:0;padding:0}
.lab-page .lab-library-dropdown>[data-library-profiles]:not(:empty)+.lab-saved-shelves:not([hidden]){border-top:1px solid var(--gui-line,var(--line));margin-top:5px;padding-top:5px}
.lab-page .lab-library-shortcut li{display:flex;align-items:center;gap:8px;padding:4px 5px;min-width:0}
.lab-page .lab-library-shortcut li span{min-width:0;flex:1;overflow-wrap:anywhere}
.lab-page .lab-library-shortcut li button{flex:none;min-height:31px;padding:4px 7px;border:1px solid var(--gui-line,var(--line));border-radius:5px;background:var(--gui-panel,var(--paper));font:inherit;cursor:pointer}
.lab-page .lab-library-shortcut .lab-saved-shelves ul{position:static;min-width:0;max-height:180px;overflow:auto;margin:0;padding:0;border:0;box-shadow:none}
@media(max-width:700px){.lab-page .lab-order-tabs{flex-wrap:wrap}.lab-page .lab-tab-actions{width:100%;justify-content:flex-end}}

/* Save from the preview without enlarging the price and quantity panel. */
html.xform3-themed .lab-page .lab-preview-material .lab-preview-save{justify-self:end;max-width:min(230px,100%);min-height:34px;margin-top:3px;padding:6px 10px;border:1px solid rgb(58 99 116 / .38);border-radius:7px;background:rgb(250 252 251 / .66);color:#2d5263;box-shadow:none;backdrop-filter:blur(5px);font-size:calc(13px * var(--lab-scale,1));font-weight:650;line-height:1.2;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:auto;cursor:pointer}
html.xform3-themed .lab-page .lab-preview-material .lab-preview-save:is(:hover,:focus-visible){border-color:#457d94!important;background:rgb(251 253 253 / .89)!important;color:#174f68!important}
.lab-page .lab-viewer-shell .lab-save-shelf-panel:not([hidden]){position:absolute;z-index:8;top:177px;right:18px;bottom:auto;left:auto;width:min(360px,calc(100% - 36px));max-width:none;max-height:calc(100% - 187px);overflow:auto;margin:0;padding:14px;border:1px solid var(--gui-line,var(--line));border-radius:9px;background:color-mix(in srgb,var(--gui-panel,var(--paper)) 95%,white);box-shadow:0 10px 26px rgb(19 49 61 / .22);color:var(--gui-text,var(--ink));font-size:calc(14px * var(--lab-scale,1))}
.lab-page .lab-viewer-shell .lab-save-shelf-name{display:grid;gap:5px;align-items:stretch;font-weight:650}
.lab-page .lab-viewer-shell .lab-save-shelf-name input{width:100%;min-height:38px;padding:6px 9px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:#fff;color:var(--gui-text,var(--ink));font:inherit}
.lab-page .lab-viewer-shell .lab-save-shelf-panel label:has([type=checkbox]){margin-top:9px;line-height:1.3}
@media(max-width:760px){html.xform3-themed .lab-page .lab-preview-material .lab-preview-save{max-width:150px;min-height:32px;margin-top:5px;padding:5px 8px;font-size:12px}.lab-page .lab-viewer-shell .lab-save-shelf-panel:not([hidden]){inset:8px;width:auto;max-height:none}}

/* Keep every shelf workspace control on one aligned rail. */
.lab-page .lab-order-tabs{align-items:flex-start;flex-wrap:nowrap;min-width:0}
.lab-page .lab-order-tabs-main,.lab-page [data-shelf-tabs]{align-items:flex-start}
.lab-page .lab-tab-actions,.lab-page .lab-cart-tab-host{align-items:center}
.lab-page .lab-order-tabs-main{flex-wrap:nowrap;flex:1 1 auto}
.lab-page [data-shelf-tabs]{flex:1 1 auto;flex-wrap:wrap;overflow:visible}
.lab-page .lab-tab-actions{align-self:flex-start;flex:0 0 auto;width:auto}
.lab-page .lab-account-link{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:none;min-height:42px;padding:7px 12px;border:1px solid var(--gui-line,var(--line));border-radius:7px;background:color-mix(in srgb,var(--gui-panel,var(--paper)) 88%,transparent);color:var(--gui-text,var(--ink));font:inherit;font-weight:650;line-height:1.2;text-decoration:none;white-space:nowrap}
.lab-page .lab-account-link:is(:hover,:focus-visible){border-color:var(--gui-blue,var(--blue));color:var(--gui-blue,var(--blue));background:color-mix(in srgb,var(--gui-panel,var(--paper)) 96%,white)}
.lab-page .lab-account-link svg{flex:none}
html.xform3-themed .lab-page .lab-order-tabs-main>[data-new-shelf],
.lab-page .lab-order-tab,
.lab-page .lab-library-shortcut,
.lab-page .lab-library-shortcut>summary{box-sizing:border-box;height:42px;min-height:42px;margin-top:0;margin-bottom:0}
html.xform3-themed .lab-page .lab-order-tabs-main>[data-new-shelf],
.lab-page .lab-library-shortcut>summary{display:inline-flex;align-items:center;justify-content:center;line-height:1.2}
.lab-page .lab-order-tab>button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:100%;min-height:0;line-height:1.2}
@media(max-width:700px){.lab-page .lab-order-tabs{flex-wrap:wrap;overflow:visible}.lab-page .lab-order-tabs-main{flex:1 1 100%;width:100%}.lab-page .lab-tab-actions{width:100%;justify-content:flex-end}}

.lab-page .lab-library-page[hidden]{display:none}
.lab-page .lab-library-page{box-sizing:border-box;max-width:1120px;min-height:280px;margin:24px auto 80px;padding:clamp(22px,3vw,42px);border:1px solid var(--gui-line,var(--line));border-radius:12px;background:color-mix(in srgb,var(--gui-panel,var(--paper)) 88%,transparent);color:var(--gui-text,var(--ink))}
.lab-page .lab-library-page h1{margin:0 0 25px;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.12}
.lab-page .lab-library-page-lists{display:grid;gap:14px}
.lab-page .lab-library-page-lists>ul,.lab-page .lab-library-page .lab-saved-shelves ul{position:static;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;max-height:none;min-width:0;overflow:visible;margin:0;padding:0;border:0;background:transparent;box-shadow:none;list-style:none}
.lab-page .lab-library-page-lists>ul:empty{display:none}
.lab-page .lab-library-page-lists li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:center;min-width:0;padding:16px;border:1px solid var(--gui-line,var(--line));border-radius:9px;background:var(--gui-panel,var(--paper))}
.lab-page .lab-library-shelf-info{display:grid;gap:4px;min-width:0}
.lab-page .lab-library-shelf-info span{font-size:1.08em;font-weight:700;overflow-wrap:anywhere}
.lab-page .lab-library-shelf-info small{color:var(--gui-muted,var(--muted));font-size:.92em}
.lab-page .lab-library-page-lists li button{min-height:38px;padding:6px 11px;border:1px solid var(--gui-line,var(--line));border-radius:6px;background:var(--gui-panel,var(--paper));color:var(--gui-text,var(--ink));font:inherit;cursor:pointer}
@media(max-width:800px){.lab-page .lab-library-page-lists>ul,.lab-page .lab-library-page .lab-saved-shelves ul{grid-template-columns:1fr}}

/* A single hover menu for each library, with the label opening its page. */
.lab-page .lab-library-shortcut>[data-library-orders],.lab-page .lab-library-shortcut>.lab-library-dropdown{top:100%;box-sizing:border-box;width:min(390px,calc(100vw - 32px));min-width:250px;max-width:none;max-height:min(420px,65vh);overflow:auto}
.lab-page .lab-library-shortcut>.lab-library-dropdown>ul{position:static;display:block;min-width:0;max-height:none;overflow:visible;margin:0;padding:0;border:0;box-shadow:none;list-style:none}
.lab-page .lab-library-shortcut>.lab-library-dropdown>ul:empty{display:none}
.lab-page .lab-library-shortcut>.lab-library-dropdown li{display:flex;align-items:center;gap:9px;min-width:0;padding:8px 5px;border-top:1px solid var(--gui-line,var(--line))}
.lab-page .lab-library-shortcut>.lab-library-dropdown li span,.lab-page .lab-library-shortcut>.lab-library-dropdown li .lab-library-shelf-info{flex:1;min-width:0;overflow-wrap:anywhere}
.lab-page .lab-library-shortcut>[data-library-orders] li{padding:8px 5px}
.lab-page .lab-library-shortcut>summary{padding:7px 12px;min-width:105px;justify-content:center}
