/* v1.5.42: mobile shell; desktop retains its existing layout. */
.rtf-mobile-nav,.rtf-mobile-search-title{display:none}
@media(max-width:900px){
 html{--rtf-viewport-height:100vh;--rtf-nav-height:0px;--rtf-fixed-height:0px;overflow-y:auto;scrollbar-gutter:auto!important;scrollbar-width:none}
 html::-webkit-scrollbar{display:none}
 html body.rtf-has-mobile-nav{padding-bottom:var(--rtf-fixed-height)!important}
 html body.rtf-has-mobile-nav .header-actions{display:none!important}
 html body.rtf-has-mobile-nav .header-inner{min-height:60px;justify-content:center}
 /* The branding flex item previously grew to fill the header but aligned its logo left. */
 html:not([data-mobile-navigation="header"]) body.rtf-has-mobile-nav .site-branding{flex:1 1 auto;min-width:0;margin:0!important;justify-content:center!important;text-align:center}
 html:not([data-mobile-navigation="header"]) body.rtf-has-mobile-nav .site-branding :is(.logo,.custom-logo-link){justify-content:center!important;margin-inline:0!important}

 .rtf-mobile-nav:not([hidden]){position:fixed;inset:auto max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));z-index:95;display:grid;grid-template-columns:repeat(6,minmax(max-content,1fr));max-width:620px;margin:0 auto;padding:6px;gap:1px;border:1px solid var(--line-strong);border-radius:26px;background:var(--surface-raised);box-shadow:0 8px 28px #0003,0 2px 6px #0001;box-sizing:border-box}
 .rtf-mobile-nav{transition:transform .2s ease,opacity .2s ease}
 .rtf-mobile-nav>a,.rtf-mobile-nav>button{position:relative;display:grid;grid-template-rows:28px auto;align-content:center;justify-items:center;align-items:center;gap:4px;min-width:44px;min-height:62px;margin:0;padding:8px 3px;border:0;border-radius:12px;background:transparent;color:var(--ink-muted);font:inherit;font-size:11px;font-weight:600;line-height:1.3;text-decoration:none;cursor:pointer;box-sizing:border-box}
 .rtf-mobile-nav .icon{grid-row:1;width:23px;height:23px;flex:none;align-self:center}
 .rtf-mobile-nav>a>span:not(.rtf-mobile-nav-count),.rtf-mobile-nav>button>span:not(.rtf-mobile-nav-count){grid-row:2;line-height:1.3;text-align:center;white-space:nowrap}
 .rtf-mobile-nav .is-active{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--ink)}
 .rtf-mobile-nav>:is(a,button):focus-visible{outline:2px solid var(--brand);outline-offset:-2px}
 .rtf-mobile-nav .rtf-mobile-nav-count{position:absolute;top:1px;left:calc(50% + 7px);min-width:17px;height:17px;padding:0 4px;border-radius:12px;background:var(--brand);color:var(--on-brand,#24152f);font-size:10px;line-height:17px;text-align:center}
 .rtf-mobile-nav [hidden]{display:none!important}
 .rtf-mobile-nav.rtf-large-nav-text{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 html body .rtf-mobile-purchase{bottom:var(--rtf-nav-height);padding-bottom:12px;z-index:94;transition:bottom .2s ease}
 html body .cart-toast{bottom:calc(var(--rtf-fixed-height) + 12px)!important;max-width:calc(100vw - 24px)}
 html body.rtf-locked .cart-toast{bottom:calc(var(--rtf-panel-action-height,0px) + 12px)!important}
 html body .cart-toast-btn{min-width:44px;min-height:44px;font-size:12px}
 html body .back-to-top{bottom:calc(var(--rtf-fixed-height) + 16px)!important}
 html body:is(.rtf-locked,.rtf-keyboard-open) .rtf-mobile-nav,
 html body:is(.rtf-locked,.rtf-keyboard-open) .rtf-mobile-purchase,
 html body:is(.rtf-locked,.rtf-keyboard-open) .back-to-top{display:none!important}

 html body :is(#cartDrawer.cart-drawer.rtf-cart-drawer.open,#wishlistPanel.wishlist-drawer,#mobileMenuPanel.mobile-menu,#searchOverlay.search-overlay){position:fixed!important;inset:var(--rtf-viewport-top,0px) 0 auto 0!important;width:100%!important;max-width:100%!important;height:var(--rtf-viewport-height,100dvh)!important;max-height:var(--rtf-viewport-height,100dvh)!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;overflow:hidden!important;box-sizing:border-box}
 html body :is(#cartDrawer,#wishlistPanel,#mobileMenuPanel){display:flex;flex-direction:column}
 html body :is(#cartDrawer,#wishlistPanel,#mobileMenuPanel)[hidden],html body #searchOverlay[hidden]{display:none!important}
 html body :is(#cartDrawer,#wishlistPanel,#mobileMenuPanel).open{transform:none!important}
 html body :is(#cartDrawer,#wishlistPanel,#mobileMenuPanel,#searchOverlay){transition:none!important}
 html body :is(#cartDrawer,#wishlistPanel,#mobileMenuPanel,#searchOverlay):not(.open){display:none!important}
 html body :is(.cart-drawer-header,.wishlist-drawer-header,.mobile-menu-header){flex:0 0 auto!important;min-height:68px;padding:12px max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left))!important;padding-top:max(12px,env(safe-area-inset-top))!important;border-bottom:1px solid var(--line);gap:12px}
 html body :is(.cart-drawer-header,.wishlist-drawer-header,.mobile-menu-header) :is(h2,h3){font-size:18px;line-height:1.4;margin:0}
 html body :is(#cartDrawer,#wishlistPanel,#mobileMenuPanel,#searchOverlay) button{min-height:44px;min-width:44px}
 html body :is(#cartDrawer,#wishlistPanel,#mobileMenuPanel,#searchOverlay) input{font-size:16px}
 html body #mobileMenuPanel .mobile-menu-body,html body #wishlistPanel .rtf-mobile-panel-body{flex:1 1 auto;min-width:0;min-height:0;width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;margin:0;padding:16px max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));scrollbar-gutter:stable}
 html body #wishlistPanel .rtf-mobile-panel-body{width:calc(100% - 8px);margin-right:8px}
 html body #mobileMenuPanel .mm-links :is(a,button),html body #mobileMenuPanel .mm-section-body a{min-height:44px}
 html body #mobileMenuPanel .mm-collections-section .mm-icon{display:inline-flex;flex:0 0 20px;align-items:center;justify-content:center}
 html body #mobileMenuPanel .mm-collections-section .icon--collections{width:20px;height:20px;flex:none;stroke-width:1.55}
 html body #wishlistPanel .wishlist-drawer-actions{padding:0 0 16px}
 html body #wishlistPanel .wishlist-drawer-items{height:auto;max-height:none;overflow:visible;margin:0;padding:16px 0;flex:none}
 html body #cartDrawer .cart-drawer-body{display:block!important;min-width:0;width:100%;overflow-x:hidden!important;overflow-y:auto!important;padding:16px!important;overscroll-behavior:contain;scrollbar-gutter:stable}
 html body #cartDrawer .cart-drawer-body{width:calc(100% - 8px);margin-right:8px}
 html body #cartDrawer .widget_shopping_cart_content{display:block!important;height:auto!important;min-height:100%!important}
 html body #cartDrawer ul.woocommerce-mini-cart{overflow:visible!important;max-height:none!important;flex:none!important}
 html body #cartDrawer .woocommerce-mini-cart__buttons{position:sticky;bottom:-16px;padding:12px 0 max(16px,env(safe-area-inset-bottom))!important;margin-bottom:0!important;background:var(--surface-raised);z-index:2}

 html body #searchOverlay{display:block!important;background:var(--surface-raised)}
 html body #searchOverlay .search-box{display:flex;flex-direction:column;gap:16px;width:100%;height:100%;max-width:none;margin:0;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none;transform:none}
 .rtf-mobile-search-title{display:block;margin:0;padding-right:52px;font-size:18px;line-height:44px;color:var(--ink)}
 html body #searchOverlay .search-input-wrap{position:static;flex:none;padding:0 12px;min-height:52px}
 html body #searchOverlay .search-close{position:absolute;right:16px;top:max(16px,env(safe-area-inset-top));width:44px;height:44px}
 html body #searchOverlay #searchInput{min-width:0;width:100%;padding:12px 0;font-size:16px}
 html body #searchOverlay .search-results{flex:1 1 auto;min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain}
 html body #searchOverlay .search-hint{flex:none;margin:0}

 html body .product-controls.quick-add-portal{inset:auto 0 0!important;width:100%!important;max-width:600px!important;height:auto!important;max-height:calc(var(--rtf-viewport-height,100dvh) - 16px)!important;margin:0 auto;padding:0 16px!important;border-radius:20px 20px 0 0!important;transform:none!important;animation:none;gap:16px;scrollbar-gutter:stable}
 html body .quick-add-portal .quick-add-head{position:sticky;top:0;z-index:2;background:var(--surface-raised);padding:16px 0;margin:0;border-bottom:1px solid var(--line);flex:none}
 html body .quick-add-portal .product-order{position:sticky;bottom:0;z-index:2;background:var(--surface-raised);margin:0;padding:12px 0 max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--line);flex:none}
 html body .quick-add-portal :is(button,.rtf-choice-button){min-height:44px;min-width:44px}
 html body .quick-add-portal .qty-row{min-width:0;display:grid;grid-template-columns:minmax(210px,1fr) minmax(100px,1fr);gap:12px}
 html body .quick-add-portal .qty-stepper{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) 44px}
 html body .quick-add-portal .rtf-cart-qty-measure{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0;line-height:1.2}
 html body .quick-add-portal .rtf-cart-qty-primary{display:flex;align-items:baseline;justify-content:center;gap:4px}
 html body .quick-add-portal .rtf-cart-qty-count{font-size:17px;font-weight:800}
 html body .quick-add-portal .rtf-cart-qty-noun{font-size:11px}
 html body .quick-add-portal .rtf-cart-qty-calculation{font-size:10px;white-space:nowrap;font-weight:400}
 html body .quick-add-portal .card-add-error{margin:0 0 16px}
 html body .collection-toolbar-bar{gap:12px}
 html body .collection-chips{scroll-padding-inline:16px}
 html body .collection-chip{min-height:44px}
 @media(max-width:430px){html body .quick-add-portal .qty-row{grid-template-columns:minmax(0,1fr)}}
 @media(prefers-reduced-motion:reduce){.rtf-mobile-nav,.rtf-mobile-nav *,html body .rtf-mobile-purchase,#searchOverlay,#cartDrawer,#wishlistPanel,#mobileMenuPanel{animation:none!important;transition:none!important}}
}

/* Per-device mobile navigation preference. */
.rtf-navigation-preference,.rtf-header-menu-shortcuts{display:none}
@media(max-width:900px){
 html body #mobileMenuPanel .rtf-navigation-preference{display:block;min-width:0;margin:0 0 20px;padding:0;border:0}
 html body #mobileMenuPanel .rtf-navigation-preference legend{padding:0;font-size:15px;font-weight:700;color:var(--ink)}
 html body #mobileMenuPanel .rtf-navigation-preference p{margin:6px 0 12px;font-size:12px;line-height:1.5;color:var(--ink-muted)}
 .rtf-navigation-options{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
 html body #mobileMenuPanel .rtf-navigation-options label{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;margin:0;border:1px solid var(--line);border-radius:10px;color:var(--ink);font-size:13px;line-height:1.4;cursor:pointer}
 html body #mobileMenuPanel .rtf-navigation-options label:has(input:checked){background:var(--surface-raised);border-color:var(--brand)}
 html body #mobileMenuPanel .rtf-navigation-options label:focus-within{outline:2px solid var(--brand);outline-offset:2px}
 html body #mobileMenuPanel .rtf-navigation-options input{appearance:auto!important;position:static!important;opacity:1!important;transform:none!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0!important;padding:0!important;flex:none;accent-color:var(--brand)}
 html[data-mobile-navigation="header"] body .rtf-mobile-nav{display:none!important}
 html[data-mobile-navigation="header"] body .header-inner{display:flex!important;justify-content:space-between!important;gap:12px!important}
 html[data-mobile-navigation="header"] body .site-branding{min-width:0;flex:1 1 auto;margin:0 auto 0 0!important;text-align:left!important;justify-content:flex-start!important}
 html[data-mobile-navigation="header"] body .site-branding :is(.logo,.custom-logo-link){justify-content:flex-start!important;margin-left:0!important;margin-right:auto!important}
 html[data-mobile-navigation="header"] body .header-actions{display:flex!important;flex:0 0 auto!important;gap:0!important;margin-left:auto!important}
 html[data-mobile-navigation="header"] body .header-actions>:not(#mobileMenuBtn){display:none!important}
 html[data-mobile-navigation="header"] body #mobileMenuBtn{display:inline-flex!important;align-items:center;justify-content:center;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;margin:0;padding:0}
 html[data-mobile-navigation="header"] body #mobileMenuPanel .rtf-header-menu-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 20px}
 html body #mobileMenuPanel .rtf-header-menu-shortcuts button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:60px;padding:8px 4px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);font:600 12px/1.4 Poppins,sans-serif}
}

/* Mobile menu: shopping first, grouped navigation and optional appearance settings. */
@media(max-width:900px){
 html body #mobileMenuPanel .mobile-menu-header h3{font-size:22px;letter-spacing:-.02em}
 html body #mobileMenuPanel .mobile-menu-body{display:flex;flex-direction:column;gap:16px;padding:16px max(16px,calc((100% - 560px)/2),env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,calc((100% - 560px)/2),env(safe-area-inset-left));scrollbar-gutter:auto}
 html body #mobileMenuPanel .mobile-menu-body>*{flex-shrink:0}
 html body #mobileMenuPanel .rtf-header-menu-shortcuts,html[data-mobile-navigation="header"] body #mobileMenuPanel .rtf-header-menu-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}
 html body #mobileMenuPanel .rtf-header-menu-shortcuts button{min-height:76px;padding:12px 4px;gap:8px;border:1px solid var(--line-soft);border-radius:16px;background:var(--surface-sunken);font-size:.8125rem;line-height:1.4}
 html body #mobileMenuPanel .rtf-header-menu-shortcuts .icon{width:22px;height:22px;color:var(--brand)}
 html body #mobileMenuPanel .mm-section{margin:0;padding:0;border:1px solid var(--line-soft);border-radius:16px;background:var(--surface-sunken)}
 html body #mobileMenuPanel .mm-links{margin:0;padding:0;gap:0}
 html body #mobileMenuPanel :is(.mm-links a,.mm-link-btn,.mm-section-toggle){display:flex;align-items:center;gap:12px;width:100%;min-width:0;min-height:54px;margin:0;padding:14px 16px;border:0;border-radius:0;background:transparent;color:var(--ink);font:500 .9375rem/1.45 Poppins,sans-serif;letter-spacing:0;text-transform:none;text-align:left;text-decoration:none;box-sizing:border-box}
 html body #mobileMenuPanel .mm-links>:first-child,html body #mobileMenuPanel .mm-section>.mm-section-toggle{border-radius:15px 15px 0 0}
 html body #mobileMenuPanel .mm-links>:last-child{border-radius:0 0 15px 15px}
 html body #mobileMenuPanel .mm-links>:only-child,html body #mobileMenuPanel .mm-section>.mm-section-toggle[aria-expanded="false"]{border-radius:15px}
 html body #mobileMenuPanel .mm-links>*+*,html body #mobileMenuPanel .mm-browse-section>.mm-collections-section{border-top:1px solid var(--line-soft)}
 html body #mobileMenuPanel .mm-link-text{flex:1;min-width:0;overflow-wrap:anywhere}
 html body #mobileMenuPanel .mm-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px}
 html body #mobileMenuPanel .mm-icon .icon{width:21px;height:21px;margin:0;color:var(--brand)}
 html body #mobileMenuPanel :is(.mm-links,.mm-section-toggle)>.icon,
 html body #mobileMenuPanel .mm-links a>.icon,
 html body #mobileMenuPanel .mm-link-btn>.icon{margin-left:auto;flex:none;width:16px;height:16px;color:var(--ink-muted)}
 html body #mobileMenuPanel .mm-arrow{display:inline-flex;align-items:center;justify-content:center;flex:none;width:16px;height:20px;margin-left:auto;color:var(--ink-muted)}
 html body #mobileMenuPanel .mm-section-body{margin:0;padding:4px 12px 12px;gap:0}
 html body #mobileMenuPanel .mm-section-body[hidden]{display:none!important}
 html body #mobileMenuPanel .mm-section-body a{min-width:0;min-height:48px;gap:12px;padding:12px;font-size:.875rem;font-weight:400;line-height:1.5;text-decoration:none;overflow-wrap:anywhere}
 html body #mobileMenuPanel .mm-section-body a>.icon{flex:none;margin-left:auto;color:var(--ink-muted)}
 html body #mobileMenuPanel .mm-section-body a+a{border-top:1px solid var(--line-soft)}
 html body #mobileMenuPanel .rtf-mobile-primary ul{list-style:none;margin:0;padding:0}
 html body #mobileMenuPanel .rtf-mobile-primary ul ul{padding-left:16px}
 html body #mobileMenuPanel .mm-theme-row{margin:0 0 16px;padding:8px 0 16px;border:0;border-bottom:1px solid var(--line-soft);border-radius:0;background:transparent}
 html body #mobileMenuPanel #mobileAppearance{padding:0 16px 16px}
 html body #mobileMenuPanel .rtf-navigation-preference{margin:0}
 html body #mobileMenuPanel .rtf-navigation-preference legend{font-size:.875rem;font-weight:500}
 html body #mobileMenuPanel .rtf-navigation-preference p{font-size:.75rem}
 html body #mobileMenuPanel .rtf-navigation-options label{font-size:.8125rem;background:transparent}
 html body #mobileMenuPanel .mm-privacy-link{align-self:center;display:flex;align-items:center;min-height:44px;padding:8px 12px;color:var(--ink-muted);font-size:.8125rem;text-decoration:underline;text-underline-offset:3px}
 html body #mobileMenuPanel :is(.mm-links a,.mm-link-btn,.mm-section-toggle,.rtf-header-menu-shortcuts button):hover{background:var(--brand-wash)}
 html body #mobileMenuPanel :is(a,button):focus-visible{outline:2px solid var(--brand);outline-offset:-3px}
}

/* Keep panels tied to the layout viewport; browser chrome follows dynamic height. */
@supports(height:100dvh){
 @media(max-width:900px){html{--rtf-viewport-height:100dvh}}
}

/* Dedicated collection browser: one shared surface for dock, menu and desktop. */
html body #collectionsPanel { position:fixed; z-index:var(--z-drawer); inset:40px 0; width:calc(100% - 64px); max-width:860px; max-height:calc(100dvh - 80px); margin:auto; display:flex; flex-direction:column; background:var(--surface-raised); color:var(--ink); border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow-xl); overflow:hidden; }
html body #collectionsPanel *,html body #collectionsPanel { box-sizing:border-box; }
html body #collectionsPanel:not(.open),html body #collectionsPanel[hidden] { display:none!important; }
.rtf-collections-head { display:flex; align-items:center; justify-content:space-between; flex:none; gap:12px; padding:20px 24px 12px; }
.rtf-collections-head h2 { display:flex; align-items:center; gap:12px; margin:0; font-size:1.5rem; line-height:1.3; }
.rtf-collections-head h2 .icon { color:var(--brand); flex:none; }
.rtf-collections-head button { display:flex; align-items:center; justify-content:center; flex:none; width:44px; height:44px; padding:0; border:1px solid var(--line); border-radius:50%; background:transparent; color:var(--ink); }
.rtf-collections-tools { flex:none; padding:0 24px 16px; border-bottom:1px solid var(--line); }
html body #collectionsPanel .rtf-collections-search { display:flex; align-items:center; gap:10px; min-width:0; min-height:48px; padding:0 14px; border:1px solid var(--line-strong); border-radius:12px; background:var(--surface-sunken); }
.rtf-collections-search .icon { flex:none; color:var(--ink-muted); }
html body #collectionsPanel input { min-width:0; width:100%; height:auto; min-height:48px; margin:0; padding:10px 0; border:0; border-radius:0; background:transparent; box-shadow:none; outline:none; color:var(--ink); font:inherit; font-size:16px; line-height:1.5; }
.rtf-collections-search:focus-within { outline:2px solid var(--brand); outline-offset:2px; }
.rtf-collections-summary { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px; margin-top:12px; color:var(--ink-muted); font-size:.8125rem; }
.rtf-collections-summary a { display:inline-flex; align-items:center; gap:8px; min-height:44px; color:var(--ink); text-decoration:underline; text-underline-offset:4px; }
.rtf-collections-body { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:20px 24px 24px; scrollbar-gutter:stable; }
.rtf-collections-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
html body #collectionsPanel .rtf-collection-tile { display:flex; flex-direction:column; justify-content:space-between; gap:20px; min-width:0; min-height:128px; padding:18px; border:1px solid var(--line); border-radius:16px; background:var(--surface-sunken); color:var(--ink); text-decoration:none; }
html body #collectionsPanel .rtf-collection-tile[hidden],#collectionsEmpty[hidden] { display:none!important; }
.rtf-collection-name { font-size:.9375rem; font-weight:600; line-height:1.45; overflow-wrap:anywhere; }
.rtf-collection-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; color:var(--ink-muted); font-size:.75rem; line-height:1.5; }
.rtf-collection-meta .icon { flex:none; color:var(--brand); }
html body #collectionsPanel .rtf-collection-tile:hover { border-color:var(--brand); background:var(--brand-wash); }
#collectionsPanel :is(a,button):focus-visible { outline:2px solid var(--brand); outline-offset:-3px; }
.rtf-collections-empty { margin:16px 0; color:var(--ink-muted); line-height:1.6; }
@media(max-width:900px) {
 html body #collectionsPanel { inset:var(--rtf-viewport-top,0px) 0 auto; width:100%; max-width:100%; height:var(--rtf-viewport-height,100dvh); max-height:var(--rtf-viewport-height,100dvh); margin:0; border:0; border-radius:0; }
 .rtf-collections-head { padding:max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left)); }
 .rtf-collections-tools { padding:0 max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left)); }
 .rtf-collections-body { padding:16px max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left)); }
 .rtf-collections-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 html body #collectionsPanel .rtf-collection-tile { padding:16px; }
}
@media(min-width:600px) and (max-width:900px) { .rtf-collections-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media print { html body #collectionsPanel,#collectionsOverlay { display:none!important; } }


/* Mobile wishlist: saved designs first, list administration on demand. */
.rtf-wishlist-tool-label { display:none; }
@media (max-width:900px) {
 html body #wishlistPanel .rtf-mobile-panel-body {
  width:100%; margin:0; padding:16px max(16px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));
  scrollbar-gutter:auto; background:var(--surface);
 }
 #wishlistPanel .wishlist-drawer-header h3 { min-width:0; overflow-wrap:anywhere; }
 #wishlistPanel .wishlist-drawer-header h3 > .icon { flex:none; }
 html body #wishlistPanel .wishlist-drawer-actions { max-width:620px; margin:0 auto; padding:0!important; border:0; width:100%; }
 #wishlistPanel .wishlist-list-manager { display:block; }
 #wishlistPanel .wishlist-list-manager .rtf-choice-button { height:auto; min-height:48px; padding:12px; font-size:.875rem; }
 #wishlistPanel .wishlist-list-manager .rtf-choice-value { white-space:normal; overflow-wrap:anywhere; line-height:1.5; }
 #wishlistPanel .rtf-wishlist-tools { margin-top:8px; }
 #wishlistPanel .rtf-wishlist-tools > summary {
  display:flex; align-items:center; justify-content:space-between; min-height:44px; gap:12px; padding:8px 4px;
  color:var(--ink-muted); font-size:.8125rem; font-weight:600; cursor:pointer; list-style:none;
 }
 #wishlistPanel .rtf-wishlist-tools > summary::-webkit-details-marker { display:none; }
 #wishlistPanel .rtf-wishlist-tools > summary::after { content:''; width:7px; height:7px; margin-right:8px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); }
 #wishlistPanel .rtf-wishlist-tools[open] > summary::after { transform:rotate(225deg); }
 #wishlistPanel .rtf-wishlist-tools > summary:focus-visible { outline:2px solid var(--brand); outline-offset:2px; border-radius:8px; }
 #wishlistPanel .rtf-wishlist-tools-buttons { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
 #wishlistPanel .rtf-wishlist-tool-label { display:block; }
 html body #wishlistPanel .wishlist-manager-btn { display:flex; flex-wrap:wrap; align-content:center; justify-content:center; gap:6px; width:100%; height:auto; min-height:48px; padding:8px 4px; font-size:.75rem; line-height:1.4; }
 #wishlistPanel .wishlist-manager-btn .icon { flex:none; }
 #wishlistPanel .wishlist-name-editor { padding:12px; }
 #wishlistPanel .wishlist-name-editor__row { grid-template-columns:1fr 1fr; }
 #wishlistPanel .wishlist-name-editor__row input { grid-column:1 / -1; min-height:48px; padding:10px; }
 #wishlistPanel .wishlist-actions-row { grid-template-columns:1fr; gap:8px; }
 html body #wishlistPanel .wishlist-actions-row button { width:100%; margin:0; min-height:44px; padding:10px 12px; font-size:.8125rem; line-height:1.5; }
 #wishlistPanel .wishlist-qr-panel { grid-template-columns:1fr; justify-items:center; text-align:center; }
 #wishlistPanel .wishlist-qr-panel p { font-size:.8125rem; line-height:1.5; }
 html body #wishlistPanel .wishlist-drawer-items { width:100%; max-width:620px; padding:12px 0 0!important; margin:0 auto; }
 #wishlistPanel .wl-item { padding:16px!important; margin:0 0 16px; border-color:var(--line); border-radius:18px; }
 #wishlistPanel .wishlist-item-header { grid-template-columns:56px minmax(0,1fr) 44px!important; align-items:center; gap:10px!important; }
 #wishlistPanel .wishlist-item-swatch { width:56px!important; height:56px!important; border-radius:12px; }
 #wishlistPanel .wishlist-item-swatch img { width:100%; height:100%; object-fit:cover; }
 #wishlistPanel .wishlist-item-name { display:block; font-size:.9375rem; line-height:1.45; overflow-wrap:anywhere; }
 #wishlistPanel .wishlist-item-meta { display:none; }
 html body #wishlistPanel .wishlist-item-remove { width:44px; height:44px; min-height:44px; background:transparent; border-color:transparent; }
 #wishlistPanel .wishlist-item-controls { gap:14px; margin-top:18px; }
 #wishlistPanel .wishlist-field { gap:7px; }
 #wishlistPanel .wishlist-field-label { font-size:.8125rem; line-height:1.4; font-weight:600; letter-spacing:0; text-transform:none; }
 #wishlistPanel .wishlist-item-controls .rtf-choice-button { height:auto; min-height:52px; padding:12px; gap:10px; font-size:.875rem; text-align:left; }
 #wishlistPanel .wishlist-item-controls .rtf-choice-value { display:block; white-space:normal; overflow:visible; text-overflow:clip; overflow-wrap:anywhere; line-height:1.5; }
 #wishlistPanel .wishlist-item-controls .rtf-choice-arrow { flex:0 0 28px; width:28px; height:28px; }
 #wishlistPanel .wl-price-line { flex-wrap:wrap; font-size:.8125rem; line-height:1.5; margin:0; }
 #wishlistPanel .wl-bottom-row { display:flex; flex-direction:column; gap:12px; }
 html body #wishlistPanel.wishlist-drawer .wishlist-item-controls .wl-qty-stepper { width:100%!important; max-width:none!important; }
 html body #wishlistPanel .wl-add-btn { width:100%; min-height:48px; padding:12px; font-size:.875rem; line-height:1.5; }
 #wishlistPanel .wishlist-item-status { font-size:.8125rem; line-height:1.5; }
 #wishlistPanel .wishlist-empty { max-width:620px; margin:0 auto; }
}
