/* Shared internal templates and compact discovery controls. */
.seo-page{min-height:40vh;padding-block:24px 40px}.seo-page>.detail-layout{margin-top:24px}.seo-page img{max-width:100%}.seo-page .wishlist-button{position:static}.seo-page .product-card{position:relative}.seo-page table{width:100%;overflow-wrap:anywhere}.seo-page .detail-content{min-width:0}.seo-page .product-grid{margin-top:24px}
#discovery-actions{display:flex;gap:8px;align-items:center;overflow-x:auto;padding-block:8px;scrollbar-width:thin}#discovery-actions>*{flex-shrink:0}.discovery-chip{border:1px solid var(--line);background:transparent;color:inherit;border-radius:24px;padding:8px 14px;min-height:44px}.discovery-chip[aria-pressed=true]{background:var(--brand-primary);color:#10262b}#discovery-filter-panel{margin-block:8px 16px;border:1px solid var(--line);border-radius:12px;padding:12px}#discovery-filter-panel summary{cursor:pointer;font-weight:700;min-height:30px}#growth-filters{margin:10px 0 0}.trust-strip{font-size:12px;padding-block:7px;gap:18px;overflow:auto;white-space:nowrap;justify-content:center}.finder-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.finder-form button{grid-column:1/-1}#load-more-gifts{display:block;margin:24px auto}.swipe-gallery{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px;max-width:100%;min-width:0}.swipe-gallery>img,.swipe-gallery>button{flex:0 0 100%;width:100%;scroll-snap-align:center;object-fit:contain;max-height:65vh;border:0;background:transparent;padding:0}.swipe-gallery img{width:100%;height:auto;max-height:65vh;object-fit:contain}#zoom-dialog{max-width:96vw;width:900px;padding:42px 8px 8px}#zoom-dialog img{max-width:100%;max-height:85vh;object-fit:contain}.detail-photo{min-width:0}.product-card h3{overflow-wrap:anywhere;display:block;min-width:0}.product-card .wishlist-button{min-width:44px;min-height:44px}.product-card .card-bottom{flex-wrap:wrap;gap:6px}.product-card .sale-prices{flex-wrap:wrap}.product-card .details-button{min-height:44px}.product-card .rating-button{flex-wrap:wrap}.filters{flex-wrap:nowrap!important;overflow-x:auto}.filters>*{flex-shrink:0}
@media(max-width:650px){.product-grid{grid-template-columns:repeat(var(--safe-mobile-columns,2),minmax(0,1fr))!important}.seo-page .detail-layout{display:block}.seo-page{padding-top:14px}.seo-page .detail-content{padding-block:18px}.discovery-sticky #add-to-cart,.discovery-sticky #seo-page .detail-content>.primary-button{position:sticky;bottom:8px;z-index:3;box-shadow:0 4px 20px #0003}.finder-form{gap:8px}.finder-form input,.finder-form select{min-width:0;width:100%}.trust-strip{justify-content:flex-start}.product-card .product-description{font-size:13px}.product-card .details-button{width:100%}.product-card .sale-badge{font-size:max(11px,var(--card-badge));max-width:90%}.product-card .rating-button span{font-size:11px}.seo-gallery{margin-top:14px}}
.filter-sheet{position:fixed;inset:auto 0 0;width:100%;max-width:650px;max-height:85dvh;margin:0 auto;border-radius:22px 22px 0 0;padding:24px;background:var(--surface,#fff);color:var(--ink,inherit)}html[data-theme=dark] .filter-sheet{background:#10262b;color:#e8eeee}.filter-sheet .growth-filters{display:grid;grid-template-columns:1fr;gap:12px}.filter-sheet select{width:100%;min-height:44px}.gift-checkout-details{border:1px solid var(--line);padding:12px;border-radius:12px}.gift-checkout-details summary{cursor:pointer;font-weight:700;min-height:32px}.inline-reviews{margin-block:24px}.swipe-gallery>button{cursor:zoom-in}
/* Flex children must shrink before their own horizontal scrolling begins. */
.shop-toolbar{flex-wrap:wrap}.shop-toolbar>*{min-width:0;max-width:100%}#discovery-actions,#discovery-filter-panel{width:100%;flex-basis:100%;min-width:0;max-width:100%}.shop-controls,.search{min-width:0}.story-symbol img,.footer-brand img{max-width:100%}
@media(max-width:650px){.membership-rewards{grid-template-columns:repeat(3,minmax(0,1fr))}.membership-rewards strong{overflow-wrap:normal;word-break:normal;font-size:12px}.story-symbol{max-width:100%}}
.review-photo{width:180px;max-width:100%;height:auto;border-radius:10px;margin-block:12px}

.attachment-actions{display:flex;gap:8px;flex-wrap:wrap}.attachment-actions label{cursor:pointer;min-height:44px;display:inline-flex;align-items:center}.attachment-actions label:focus-within{outline:2px solid var(--accent);outline-offset:3px}.suggestion-attachment{margin-block:16px;min-width:0}.suggestion-attachment small{display:block;margin-block:8px}#suggestion-preview img{display:block;max-width:100%;max-height:220px;object-fit:contain;border-radius:12px}#suggestion-preview[hidden]{display:none}

.tracking-events{flex-basis:100%;margin-block:12px;padding-inline-start:24px;text-align:start}.tracking-events li{margin-block:8px}.tracking-events small{display:block;opacity:.75;font-size:.8em}

/* Shared parity fixes: functional controls are never hidden by viewport size. */
.order-success>img{display:block;position:static;float:none;width:130px;max-width:100%;height:130px;object-fit:contain;margin:0 auto 16px;align-self:center;justify-self:center}
.cart-order-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-block:20px;padding-block:16px;border-top:1px solid var(--line)}
.cart-order-links .previous-orders{margin:0;min-height:44px}
.header-inner>*{min-width:0}.header-actions{flex-shrink:0}
.header nav{min-width:0;max-width:100%;gap:clamp(10px,1.8vw,24px);overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;align-items:center}
.header nav a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;text-align:center;white-space:nowrap}
.header nav a[hidden]{display:none!important}
#nav-suggestions:focus-visible{outline-offset:-3px}
.trust-strip{flex-wrap:nowrap;min-width:0;max-width:100%}.trust-strip>*{flex-shrink:0}
#product-grid,.product-grid,.related-gifts,.component-grid{grid-template-columns:repeat(var(--layout-columns,var(--grid-columns,4)),minmax(0,1fr))!important}
.related-gifts>button{width:100%;max-width:none;min-width:0;white-space:normal;overflow-wrap:anywhere}
.component-card{display:block;min-width:0}.component-card>div{min-width:0}.component-card select,.component-card button{max-width:100%;width:100%}.component-card select{width:100%;margin-block:8px}
.product-card .wishlist-button{min-width:44px;min-height:44px}.product-card .details-button{min-height:44px}
.builder-category{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-block:4px}.builder-category button{flex-shrink:0;min-height:44px;white-space:nowrap}
.builder-layout>*{min-width:0}.builder-selection,.detail-content,.cart-dialog,.checkout-dialog{overflow-wrap:anywhere}
.checkout-field input,.checkout-field select,.checkout-field textarea{min-width:0;max-width:100%}
.membership-rewards{grid-template-columns:repeat(auto-fit,minmax(76px,1fr))}.membership-rewards small{display:block;width:100%;text-align:center}.membership-rewards strong{word-break:normal;overflow-wrap:break-word}
#suggestion-photo-status{overflow-wrap:anywhere}.attachment-actions label:focus-within{outline-color:var(--olive)}
#suggestion-preview{margin-top:12px}#suggestion-preview img{margin-inline:auto}
@media(max-width:1000px){
 .header-inner{display:grid;grid-template-columns:auto minmax(0,1fr);height:auto;gap:0 12px;padding-block:4px}
 .header-actions{justify-self:end}.header nav{grid-column:1/-1;grid-row:2;justify-content:safe center;width:100%;font-size:14px;gap:16px}
 .header nav a{padding:6px 4px}.brand{width:auto;max-width:120px}
}
@media(min-width:1001px){.header nav{flex:1;justify-content:safe center}.header-actions{margin-inline-start:auto}}
@media(max-width:650px){
 .header{padding-block:0}.header-inner{padding-inline:16px;min-height:0}.header nav,html[lang=en] .header nav{gap:12px;font-size:13px;justify-content:flex-start}
 .membership-rewards{grid-template-columns:repeat(3,minmax(0,1fr))}
 .cart-order-links>*{flex:1 1 120px}.finder-form{grid-template-columns:1fr}.tracking-card{padding:12px}.tracking-card h2{font-size:26px}
 .product-card .details-button{min-height:44px}.trust-strip{padding-inline:16px}
}
/* Large screens retain their editable gallery layout; phones use swipe. */
@media(min-width:651px){
 .detail-photo>.swipe-gallery{display:none!important}
 .detail-photo[data-gallery-layout=slider]>.swipe-gallery{display:flex!important}
 .detail-photo[data-gallery-layout=slider]>#detail-image,.detail-photo[data-gallery-layout=slider]>.gallery-thumbnails{display:none}
 .detail-photo>#detail-image{cursor:zoom-in}
}
@media(max-width:650px){.detail-photo>#detail-image,.detail-photo>.gallery-thumbnails{display:none}}
