.multi-spec-order { margin:0; min-width:0; }
.multi-spec-order > summary { cursor:pointer; font-size:19px; font-weight:750; padding:8px 0 12px; color:#153a55; }
.multi-help,.multi-footnote { font-size:13px; color:#586d7d; line-height:1.6; }
.multi-brand:empty { display:none; }
.multi-search { display:block; font-size:14px; margin:14px 0; }
.multi-search input { display:block; width:100%; padding:10px 12px; border:1px solid #bdcbd6; border-radius:5px; margin-top:5px; background:#fff; }
.multi-table-scroll { max-height:470px; overflow:auto; border:1px solid #d4dfe7; border-radius:6px; background:#fff; }
.multi-table-scroll table { width:100%; min-width:510px; border-collapse:collapse; font-size:14px; }
.multi-table-scroll th,.multi-table-scroll td { padding:10px 8px; border-bottom:1px solid #e2e9ef; vertical-align:middle; text-align:left; }
.multi-table-scroll thead th { position:sticky; top:0; background:#eaf1f6; color:#244c66; z-index:1; white-space:nowrap; }
.multi-table-scroll tbody th { min-width:110px; max-width:210px; font-weight:600; }
.multi-table-scroll td { font-variant-numeric:tabular-nums; }
.multi-table-scroll small { display:block; font-size:12px; line-height:1.45; color:#627887; }
.multi-quantity { display:flex; align-items:center; width:140px; }
.multi-quantity button { flex:0 0 38px; min-height:44px; border:1px solid #c6d4de; background:#f4f7f9; color:#173c55; font-size:19px; border-radius:3px; }
.multi-quantity input { width:64px; min-width:0; min-height:44px; padding:7px 3px; text-align:center; border:1px solid #c6d4de; border-radius:0; background:white; }
.multi-quantity input[aria-invalid=true] { outline:2px solid #ab3333; }
.multi-summary { padding:16px 0; font-size:17px; font-weight:750; }
.multi-status { font-size:14px; line-height:1.6; color:#375b73; }
.multi-status:empty { display:none; }
.multi-submit { width:100%; min-height:48px; padding:12px; border:0; border-radius:6px; background:#153b56; color:white; font-size:16px; font-weight:700; }
.multi-submit:disabled { background:#dfe7ed; color:#637b8b; cursor:default; }
.multi-more { min-height:44px; margin-top:8px; padding:8px 16px; border:1px solid #b7c9d6; border-radius:4px; background:#fff; color:#244c66; }
.single-spec-controls[hidden] { display:none!important; }
.shop-workbook-links { margin:28px auto; padding:22px; background:#f5f8fa; border:1px solid #dfe7ed; border-radius:7px; max-width:1280px; }
.shop-workbook-links h2 { font-size:21px; margin:0 0 8px; }
.shop-workbook-links p { font-size:14px; color:#536a7b; }
.shop-workbook-links > div { display:flex; flex-wrap:wrap; gap:10px; }
.shop-workbook-links a { display:inline-flex; align-items:center; min-height:44px; padding:10px 18px; background:#fff; border:1px solid #b9ccd9; border-radius:5px; color:#204a66; text-decoration:none; font-weight:650; }
.multi-spec-order :is(button,input,summary):focus-visible,.shop-workbook-links a:focus-visible { outline:3px solid #d29821; outline-offset:2px; }
@media(max-width:799px) {.multi-table-scroll{max-height:400px}.shop-workbook-links{padding:16px}}

/* Phone: compact per-size cards without horizontal table scrolling. */
@media(max-width:600px) {
 .multi-table-scroll table { display:block; min-width:0; width:100%; }
 .multi-table-scroll thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
 .multi-table-scroll tbody { display:block; padding:8px; }
 .multi-table-scroll tbody tr { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); margin-bottom:10px; border:1px solid #d6e1e9; border-radius:5px; background:#fff; }
 .multi-table-scroll tbody th { display:block; grid-column:1/-1; max-width:none; padding:10px; background:#edf3f7; }
 .multi-table-scroll tbody td { display:block; min-width:0; padding:10px 7px; border:0; font-size:14px; }
 .multi-table-scroll tbody td::before { content:attr(data-label); display:block; font-size:12px; font-weight:500; color:#5a7487; margin-bottom:5px; }
 .multi-table-scroll tbody td[data-multi-subtotal] { grid-column:1/-1; display:flex; justify-content:space-between; border-top:1px solid #e6edf2; font-weight:700; }
 .multi-quantity { width:100%; }
 .multi-quantity button { flex-basis:34px; }
 .multi-quantity input { width:calc(100% - 68px); }
}

/* Detail entry from a listing keeps the order table below the fixed header. */
@media screen { body.customer-item-page #spec-order { scroll-margin-top:calc(var(--site-header-height,130px) + 16px); } }

/* Compact selector: screen-only; priced and pending rows share the existing cart. */
@media screen {
 body.customer-item-page.modular-product-detail.compact-product-detail .shop-product-layout { gap:20px!important; }
 body.customer-item-page.modular-product-detail.compact-product-detail :is(.detail-overview,.shop-purchase-panel) { padding:22px!important; border-radius:10px!important; min-width:0; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-product-heading { margin-bottom:16px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-product-heading h1 { margin:4px 0 0; }
 body.customer-item-page.modular-product-detail.compact-product-detail .shop-product-media > button { height:280px!important; }
 body.customer-item-page.modular-product-detail.compact-product-detail .shop-product-media > button > :is(img,svg) { max-height:280px!important; object-fit:contain; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-media-pending { min-height:280px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-key-specs { margin:18px 0 0; padding:14px 0 0; border-top:1px solid #c4cad1; color:#263445; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-key-specs h2 { font-size:17px; margin:0 0 8px; color:#111827; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-key-specs ul { padding:0; margin:0; list-style:none; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-key-specs li { display:flex; flex-wrap:wrap; gap:6px 12px; font-size:15px; line-height:1.7; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-key-specs strong { min-width:86px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-key-specs span { min-width:0; overflow-wrap:anywhere; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-materials { margin:18px 0; padding:14px 18px; color:#111827; background:#f3f4f6; border:1px solid #c4cad1; border-radius:8px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-materials > summary { font-size:16px; font-weight:750; min-height:32px; cursor:pointer; line-height:1.6; }
 body.customer-item-page.modular-product-detail.compact-product-detail .detail-materials .detail-anchor-nav { position:static; margin-top:12px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-step-heading { margin:18px 0 8px; padding:0; font-size:17px; font-weight:800; color:#111827; line-height:1.5; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-step-heading:first-child { margin-top:0; }
 body.customer-item-page.modular-product-detail.compact-product-detail #compactVariantSelect { display:block; width:100%; max-width:100%; min-width:0; min-height:48px; padding:10px 34px 10px 12px; border:1px solid #1761b8; border-radius:7px; color:#174a73; background:#fff; font-size:16px; font-weight:700; text-overflow:ellipsis; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-track-controls { display:grid; grid-template-columns:32px minmax(0,1fr) 32px; gap:6px; align-items:stretch; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-track-controls > button { border:1px solid #aebbc9; border-radius:6px; min-height:44px; background:#e9ecef; color:#174a73; font-size:24px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-variant-track { display:flex; gap:6px; overflow-x:auto; min-width:0; padding:3px 2px 8px; scrollbar-width:thin; overscroll-behavior-x:contain; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-variant-track button { flex:0 0 auto; max-width:250px; min-height:44px; padding:7px 12px; border:1px solid #aebbc9; border-radius:6px; background:#fff; color:#263445; font-size:14px; font-weight:650; white-space:normal; overflow-wrap:anywhere; text-align:left; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-variant-track button[aria-pressed=true] { background:#1761b8; color:#fff; border-color:#1761b8; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-track-controls button:disabled { opacity:.55; cursor:default; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-quantity-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; padding:10px 12px; background:#e9ecef; border:1px solid #c4cad1; border-radius:7px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-unit { font-size:15px; font-weight:700; color:#263445; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-quantity-row .multi-quantity { width:156px; max-width:100%; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-quantity-row .multi-quantity button { flex:0 0 38px; }
 body.customer-item-page.modular-product-detail.compact-product-detail :is(.compact-help,.compact-price,.compact-selection-total) { margin:7px 0; font-size:14px; color:#364152; line-height:1.6; overflow-wrap:anywhere; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-price { font-size:15px; font-weight:700; color:#174a73; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-saved-list { max-height:190px; overflow:auto; border:1px solid #c4cad1; border-radius:7px; background:#e9ecef; padding:0 12px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-saved-row { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 0; border-bottom:1px solid #c4cad1; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-saved-row:last-child { border-bottom:0; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-saved-row > div { min-width:0; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-saved-row :is(strong,span) { display:block; font-size:14px; line-height:1.6; color:#263445; overflow-wrap:anywhere; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-saved-row button { flex:0 0 auto; padding:8px; min-height:44px; border:1px solid #aebbc9; border-radius:5px; background:#fff; color:#174a73; font-size:14px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-saved-empty { font-size:14px; color:#364152; margin:14px 0; }
 body.customer-item-page.modular-product-detail.compact-product-detail .multi-summary { padding:8px 0 0; margin:0 0 12px; font-size:14px!important; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-save-actions { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-save-actions > button { min-width:0; min-height:50px; border:0; border-radius:7px; padding:10px; font-size:15px; font-weight:750; line-height:1.6; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-cart-open { background:#0866f5; color:#fff; }
 body.customer-item-page.modular-product-detail.compact-product-detail .compact-cart-open:hover { background:#0054d4; }
 body.customer-item-page.modular-product-detail.compact-product-detail .multi-footnote { font-size:14px!important; margin:10px 0 0; }
 body.customer-item-page.modular-product-detail.compact-product-detail :is(button,select,input,summary):focus-visible { outline:3px solid #1761b8!important; outline-offset:3px; }
 @media(max-width:799px) {
  body.customer-item-page.modular-product-detail.compact-product-detail :is(.detail-overview,.shop-purchase-panel) { padding:16px!important; }
  body.customer-item-page.modular-product-detail.compact-product-detail .shop-product-media > button { height:240px!important; }
  body.customer-item-page.modular-product-detail.compact-product-detail .detail-materials { padding:12px; }
 }
 @media(max-width:380px) {
  body.customer-item-page.modular-product-detail.compact-product-detail .compact-save-actions { grid-template-columns:minmax(0,1fr); }
  body.customer-item-page.modular-product-detail.compact-product-detail .compact-track-controls { grid-template-columns:28px minmax(0,1fr) 28px; }
 }
}

@media screen {
 /* Keep pending inquiry below the row, clear of the separate delete action. */
 #fullBasketModal .quote-cart-products .full-pending-line > button[data-pending-inquiry] { grid-column:1/-1; grid-row:auto; justify-self:start; min-height:44px; padding:8px 12px; }
 #fullBasketModal .quote-cart-products .full-pending-line > p { grid-column:1/-1; }
 #fullBasketModal .full-pending-specs > button { min-height:44px; padding:10px 14px; margin-top:10px; border:1px solid #aebbc9; border-radius:6px; background:#f3f4f6; color:#174a73; font-weight:700; }
}
