.customer-header{position:relative;z-index:5}.customer-navigation{display:flex;align-items:center;gap:28px}.fabric-menu{position:relative;font-size:13px}.fabric-menu>summary{display:flex;align-items:center;gap:13px;list-style:none;min-height:44px;padding:12px 0;color:#29483b}.fabric-menu>summary::-webkit-details-marker{display:none}.fabric-menu nav{position:absolute;top:100%;right:0;min-width:205px;display:grid;padding:8px;background:#fffdf8;border:1px solid #d7ddd0;box-shadow:0 10px 30px #193d311a;z-index:10}.fabric-menu nav a{font-size:13px;min-height:44px;padding:12px}.fabric-menu nav a:hover,.fabric-menu nav a[aria-current=page]{background:#eef0e7}.optional-intelligence{font-size:12px!important;color:#52614f;border-left:1px solid #cbd3c3;padding:8px 0 8px 26px}.current-fabric{margin:0 0 14px}.current-fabric h2{font:13px Arial,sans-serif;margin:3px 0 11px}.selected-fabric{display:flex;align-items:center;gap:12px;min-height:66px;margin:0 0 12px}.selected-fabric img{object-fit:cover;background:#e8e6da;flex:0 0 66px;border:1px solid #d1d6c8;border-radius:2px}.selected-fabric>div{min-width:0}.selected-fabric h3{font:18px/1.25 Georgia,serif;margin:4px 0 0;overflow-wrap:anywhere}.selected-fabric p{font:10px/1.45 Arial,sans-serif;color:#53614f;margin:0}.current-fabric button{min-height:44px;font-size:13px;border:1px solid #a9b8a2;background:#fffdf8;color:#29483b;padding:10px 12px}.current-fabric button:disabled{opacity:.55;cursor:wait}#change-fabric{width:100%}.selected-fabric-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.selected-fabric-actions a{display:flex;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:10px 5px;border:1px solid #a9b8a2;text-decoration:none;font-size:11px;text-align:center}.selected-fabric-actions a:not([aria-disabled=true]):last-child{background:#29483b;color:#fff;border-color:#29483b}.selected-fabric-actions a[aria-disabled=true]{color:#68725f;background:#efefe7;cursor:default;opacity:.8}.fabric-availability{font-size:11px;line-height:1.5;color:#596450;margin:8px 0 0}.selected-profile{font-size:11px;line-height:1.5;display:inline-block;margin-top:8px;text-underline-offset:3px}#fabric-preview-message{font-size:12px;line-height:1.6;background:#eeeee4;padding:12px;border-left:2px solid #798a69;margin:12px 0 0}#selected-fabric-retry{margin-top:10px}.loading-inner{padding:22px;text-align:center;max-width:370px}.loading-inner p{margin:0 0 10px}.loading-inner #loading-stages{font:11px/1.6 Arial,sans-serif;letter-spacing:.3px;color:#61705a}.loading-inner button{border:1px solid #a4b19e;background:#fffdf8;color:#29483b;min-height:44px;padding:10px 16px;font:13px Arial,sans-serif}#fabric-dialog{padding:0;border:1px solid #bdc8b7;width:min(1020px,94vw);max-width:none;height:min(880px,92dvh);max-height:92dvh;background:#f8f7f3;color:#283e34;box-shadow:0 30px 100px #18362b38;overflow:hidden}#fabric-dialog::backdrop{background:#122e25a6;backdrop-filter:blur(3px)}.fabric-dialog-shell{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.fabric-dialog-heading{position:sticky;top:0;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:23px 28px 20px;background:#f8f7f3;z-index:2;border-bottom:1px solid #d7ddd0}.fabric-dialog-heading .eyebrow{margin-bottom:7px}.fabric-dialog-heading h2{font:28px Georgia,serif;margin:0}#close-fabric-dialog{width:44px;height:44px;flex:0 0 44px;border:1px solid #afbcaa;color:#29483b;background:transparent;font:29px Arial,sans-serif}.fabric-browser{padding:22px 28px}.fabric-search{display:block}.fabric-search>span{font-size:12px;display:block;margin-bottom:8px}.fabric-search input{width:100%;font-size:16px;padding:13px 14px;min-height:48px;border:1px solid #aebaa6;background:#fffdf8;color:#283e34;border-radius:2px}.fabric-filter-options{font-size:13px;margin-top:11px}.fabric-filter-options summary{padding:11px 0;min-height:44px}.fabric-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:5px 0 12px}.fabric-filter-grid label{font-size:12px;display:grid;gap:7px;min-width:0}.fabric-filter-grid select{font-size:14px;min-width:0}.fabric-clear{font-size:12px;min-height:44px;padding:10px 14px;background:transparent;border:1px solid #afbcaa;color:#29483b}.fabric-browser-status{margin:13px 0 17px;font-size:12px;line-height:1.5;color:#56644e}.fabric-browser-status p{margin:6px 0}.fabric-browser-status p:empty{display:none}.fabric-browser [data-cuk-error]{padding:16px;margin:15px 0;background:#fff0dd;color:#743e26;border:1px solid #dac3a7;font-size:13px;line-height:1.5}.fabric-browser [data-cuk-error] button{min-height:44px;padding:10px 14px;background:#fffdf8;border:1px solid #b39276;color:#633d26;font-size:12px}.fabric-browser .cuk-fabrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.fabric-browser .cuk-fabric{min-width:0;background:#fffdf8;border:1px solid #d8ded1;overflow:hidden}.fabric-browser .cuk-fabric__swatch{aspect-ratio:1;background:#e8e5d9;display:grid;place-items:center;overflow:hidden}.fabric-browser .cuk-fabric__swatch img{display:block;width:100%;height:100%;object-fit:cover}.fabric-browser .cuk-fabric__placeholder{font:52px Georgia,serif;color:#78886d}.fabric-browser .cuk-fabric__body{padding:16px}.fabric-browser .cuk-fabric__body h3{font:21px/1.2 Georgia,serif;margin:7px 0 12px;overflow-wrap:anywhere}.fabric-browser .cuk-fabric__body>p{font-size:11px;line-height:1.5;margin:7px 0;color:#54634c}.fabric-browser .cuk-fabric__body>.cuk-eyebrow{font-size:9px;letter-spacing:.6px;line-height:1.5}.fabric-browser .cuk-fabric__actions{display:grid;gap:6px;margin-top:16px}.fabric-browser .cuk-button{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;border:1px solid #29483b;text-align:center;font-size:12px;text-decoration:none;background:#29483b;color:#fff}.fabric-browser [data-cuk-view-fabric]{border-color:#adbba4;background:transparent;color:#29483b}.fabric-browser .cuk-empty{grid-column:1/-1;min-height:120px;display:grid;place-items:center;font:18px Georgia,serif}.fabric-browser .cuk-fabrics[data-cuk-stale=true]{opacity:.65}.fabric-pagination{display:flex;justify-content:space-between;gap:16px;margin-top:22px}.fabric-pagination button{min-height:44px;padding:11px 20px;border:1px solid #adbaa5;background:transparent;color:#29483b;font-size:13px}.fabric-pagination button:disabled{opacity:.5;cursor:default}.fabric-dialog-note{font-size:12px;line-height:1.6;margin:0;padding:0 28px 26px;color:#53624c}.customer-options{min-width:0}
@media(max-width:900px){.customer-options .current-fabric{grid-column:1/-1}.customer-options .selected-fabric{min-height:58px}.customer-options .poses{grid-column:1/-1;grid-row:auto;margin-top:1px}.customer-options .current-fabric{display:grid;grid-template-columns:minmax(0,1fr) minmax(125px,.8fr);column-gap:17px;align-items:center}.current-fabric h2{grid-column:1/-1}.selected-fabric{grid-row:2/span 2;margin-bottom:0}.selected-fabric h3{font-size:20px}.current-fabric #change-fabric{grid-column:2}.selected-fabric-actions{grid-column:2}.fabric-availability,.selected-profile,#fabric-preview-message,#selected-fabric-retry{grid-column:1/-1}.fabric-browser .cuk-fabrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.customer-navigation{gap:15px}.customer-header .brand{font-size:25px}.fabric-menu{font-size:12px}.fabric-menu>summary{gap:6px}.optional-intelligence{font-size:10px!important;border-left:0;padding:8px 0;max-width:88px;line-height:1.4}.fabric-menu nav{right:-80px;min-width:205px}.customer-options .current-fabric{grid-template-columns:minmax(0,1fr) minmax(118px,.8fr);column-gap:12px}.selected-fabric{gap:9px}.selected-fabric img{width:54px;height:54px;flex-basis:54px}.selected-fabric h3{font-size:17px}.selected-fabric p{font-size:9px}.selected-fabric-actions{gap:4px}.selected-fabric-actions a{font-size:10px;padding:8px 3px;line-height:1.35}.selected-fabric-actions a>span{display:none}#change-fabric{font-size:12px}.fabric-availability{margin-top:10px}.current-fabric h2{margin-top:0}#fabric-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0}.fabric-dialog-heading{padding:16px 18px}.fabric-dialog-heading h2{font-size:25px}.fabric-dialog-heading .eyebrow{font-size:9px}.fabric-browser{padding:17px 18px}.fabric-filter-grid{grid-template-columns:1fr 1fr;gap:13px}.fabric-filter-grid select{font-size:16px;padding-left:6px;padding-right:4px}.fabric-browser .cuk-fabrics{gap:12px}.fabric-browser .cuk-fabric__body{padding:12px}.fabric-browser .cuk-fabric__body h3{font-size:18px}.fabric-browser .cuk-fabric__body>p{font-size:10px}.fabric-browser .cuk-fabric__body>.cuk-eyebrow{font-size:8px}.fabric-browser .cuk-button{font-size:11px;padding:10px 5px}.fabric-dialog-note{padding:0 18px 22px;font-size:11px}.loading-inner{padding:14px}.loading-inner>p:first-child{font-size:15px}}
@media(max-width:360px){.customer-navigation{gap:11px}.customer-header .brand{font-size:23px}.optional-intelligence{max-width:77px;font-size:9px!important}.customer-options .current-fabric{grid-template-columns:1fr}.selected-fabric{grid-row:auto;margin-bottom:12px}.current-fabric #change-fabric,.selected-fabric-actions{grid-column:1}.selected-fabric-actions a{font-size:12px}.selected-fabric img{width:58px;height:58px;flex-basis:58px}.fabric-browser .cuk-fabrics{grid-template-columns:1fr}.fabric-browser .cuk-fabric{display:grid;grid-template-columns:100px minmax(0,1fr)}.fabric-browser .cuk-fabric__swatch{align-self:start}.fabric-browser .cuk-fabric__body h3{font-size:17px}.fabric-browser .cuk-fabric__body>p:not(.cuk-eyebrow):not(.cuk-hint){display:none}.fabric-browser .cuk-fabric__actions{margin-top:12px}}
.fabric-action-note{grid-column:1/-1;font:11px/1.6 Arial,sans-serif;color:#596450;margin:8px 0 0}.loading-inner{width:min(410px,100%);max-width:410px;padding:20px 24px}.loading-curtain{position:relative;width:124px;height:80px;margin:0 auto 17px}.loading-track{position:absolute;inset:0 0 auto;height:3px;background:#82917d;border-radius:2px}.loading-window{position:absolute;top:8px;bottom:0;left:13px;right:13px;border:1px solid #c3cbb9;background:linear-gradient(90deg,transparent 49%,#c3cbb9 49%,#c3cbb9 51%,transparent 51%),linear-gradient(0deg,transparent 49%,#c3cbb9 49%,#c3cbb9 51%,transparent 51%);opacity:.55}.loading-panel{position:absolute;top:6px;bottom:0;width:47%;background:repeating-linear-gradient(90deg,#c6ccbc 0,#e4e7dc 8px,#c6ccbc 17px,#aab69e 21px,#c6ccbc 25px);border:1px solid #bbc5ae;border-radius:0 0 3px 3px;opacity:.55;transition:width .18s ease,opacity .18s ease}.loading-panel-left{left:4px}.loading-panel-right{right:4px}#loading[data-stage="1"] .loading-panel{opacity:.9}#loading[data-stage="2"] .loading-panel{width:27%;opacity:1}#loading[data-state="error"] .loading-curtain{opacity:.45}.loading-inner #loading-status{font:21px/1.25 Georgia,serif;margin:0 0 17px}.loading-inner #loading-stages{display:grid;gap:9px;margin:0;padding:0;list-style:none;font:11px/1.4 Arial,sans-serif;text-align:left;letter-spacing:0;color:#64715d}.loading-inner #loading-stages li{display:flex;align-items:center;gap:9px}.loading-inner #loading-stages li>span{display:inline-flex;width:18px;height:18px;flex:0 0 18px;align-items:center;justify-content:center;border:1px solid #aebaa2;border-radius:50%;font-size:9px;background:#edf0e6}.loading-inner #loading-stages li[aria-current="step"]{color:#29483b;font-weight:bold}.loading-inner #loading-stages li[aria-current="step"]>span{background:#29483b;color:#fff;border-color:#29483b}#loading[data-stage="1"] [data-loading-stage="0"]>span,#loading[data-stage="2"] [data-loading-stage="0"]>span,#loading[data-stage="2"] [data-loading-stage="1"]>span{background:#d8e2cb;border-color:#839674;color:#29483b}.loading-inner #loading-retry{margin-top:16px}
#fabric-dialog .fabric-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:500px}
@media(max-width:600px){.loading-inner{padding:12px;width:min(300px,100%)}.loading-curtain{width:74px;height:42px;margin-bottom:10px}.loading-inner #loading-status{font-size:17px;margin-bottom:11px}.loading-inner #loading-stages{gap:4px;font-size:9px}.loading-inner #loading-stages li{gap:6px}.loading-inner #loading-stages li>span{width:14px;height:14px;flex-basis:14px;font-size:8px}.loading-inner #loading-retry{margin-top:9px;min-height:36px;padding:7px 10px;font-size:11px}.fabric-action-note{font-size:11px}}
/* UI-only sticky viewport. Keep the approved 1.6 aspect and both fixed cameras.
   The scene releases at the end of the workspace, before the colour guide. */
:root{--room-sticky-top:0px;--room-canvas-max-height:65vh;--room-visible-height:100dvh;--room-dialog-top:0px}
.scene{position:sticky;top:var(--room-sticky-top);z-index:2;background:#f8f7f3;min-width:0}
.scene-viewport{background:#f8f7f3;padding-bottom:8px}
.scene-viewport .stage{width:min(100%,calc(var(--room-canvas-max-height) * 1.6));margin-inline:auto}
.scene-viewport>.poses{margin:8px 0 0;gap:8px}
.scene-viewport>.poses button{flex:0 1 180px}
.shopify-page-scroll{overflow:clip}
.shopify-page-scroll #fabric-dialog{position:fixed;top:var(--room-dialog-top);bottom:auto;margin:0 auto;height:min(880px,var(--room-visible-height));max-height:var(--room-visible-height)}
@media(max-width:900px){
  .scene{display:contents}
  .scene-viewport{position:sticky;top:var(--room-sticky-top);z-index:2;border-bottom:1px solid #deded5}
  .scene-viewport>.poses button{flex:1}
  .customer-options :is(button,a,input,summary){scroll-margin-top:calc(var(--room-canvas-max-height) + 118px)}
}
@media(prefers-reduced-motion:reduce){.loading-panel{transition:none}}
#loading[data-state="error"] .loading-curtain{display:none}.loading-inner #loading-retry{min-height:44px}
[hidden] { display: none !important; }
