/* Online Store 1.26.1 — store-wide public UI owner layer.
   This is the final owner for header/navigation, product cards, catalog controls,
   shipping service presentation, and footer interaction geometry. */
:root{
  --store-header-height:84px;
  --store-control:var(--ui-control-min,44px);
  --store-space-1:var(--ui-space-1,4px);
  --store-space-2:var(--ui-space-2,8px);
  --store-space-3:var(--ui-space-3,12px);
  --store-space-4:var(--ui-space-4,16px);
  --store-space-6:var(--ui-space-6,24px);
  --store-space-8:var(--ui-space-8,32px);
  --store-radius:var(--ui-radius-md,12px);
  --store-radius-lg:var(--ui-radius-lg,18px);
  --store-surface:var(--ui-card,#fff);
  --store-surface-muted:var(--brand-surface,#f7f9fb);
  --store-line:var(--ui-border,#e4e7ec);
  --store-text:var(--ui-text-strong,#101828);
  --store-muted:var(--ui-text-muted,#667085);
  --store-shadow:var(--ui-shadow-card,0 8px 24px rgba(16,24,40,.06));
}

/* Header — one desktop system plus an explicit mobile system. */
.site-header{z-index:80}
.header-shell{min-height:var(--store-header-height);height:auto;max-width:1440px;padding:var(--store-space-3) var(--store-space-6);gap:var(--store-space-6)}
.header-search{min-height:44px;height:46px;border-color:var(--store-line);border-radius:var(--store-radius);background:var(--store-surface)}
.header-search svg{flex:0 0 20px;width:20px;height:20px;margin-left:var(--store-space-4)}
.header-search button{min-width:72px;min-height:44px}
.header-shell .desktop-nav{display:flex;align-items:center;gap:var(--store-space-2)}
.header-shell .desktop-nav>a{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--store-space-3);border-radius:10px}
.header-shell .desktop-nav>a:hover{background:var(--green-soft)}
.header-shell .nav-cart{gap:var(--store-space-2);min-height:44px;padding:0 var(--store-space-3)}
.header-shell .nav-cart svg{display:block;flex:0 0 20px;width:20px!important;height:20px!important;margin:0!important;fill:none;stroke:currentColor;stroke-width:1.8}
.header-shell .nav-cart b,.mobile-cart b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--brand-primary,var(--green));color:#fff;font-size:11px;font-weight:850;line-height:1}
.mobile-header-actions{display:none}

/* Product card contract: photo + title + minimum price only. */
.product-card{display:block;min-width:0;padding:var(--store-space-2);border:1px solid var(--store-line);border-radius:var(--store-radius-lg);background:var(--store-surface);box-shadow:none}
.product-card:hover{border-color:color-mix(in srgb,var(--brand-primary) 48%,var(--store-line));box-shadow:var(--store-shadow);transform:translateY(-2px)}
.product-card .product-image{overflow:hidden;border-radius:calc(var(--store-radius-lg) - 5px);background:var(--store-surface-muted)}
.product-card .product-info{display:grid;gap:var(--store-space-2);padding:var(--store-space-3) var(--store-space-1) var(--store-space-2)}
.product-card h3{min-height:0;margin:0;color:var(--store-text);font-size:max(13px,var(--ui-font-small,13px));font-weight:650;line-height:1.4}
.product-card .price{margin:0;color:var(--store-text);font-size:18px;font-weight:850;line-height:1.2}
.product-card-category,.product-card-bottom small,.product-card-arrow{display:none!important}

/* Catalog — predictable 44px controls and readable category navigation. */
.catalog-sidebar a{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 var(--store-space-3);border-radius:10px}
.catalog-toolbar input,.catalog-toolbar select,.catalog-toolbar button,.catalog-pagination a{min-height:44px}
.catalog-toolbar button{min-width:72px}
.catalog-pagination a{min-width:44px;display:grid;place-items:center}

/* Shipping services: static when few, animated only for a real overflow set. */
.shipping-services.is-static{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--store-space-2);overflow:visible!important;mask-image:none}
.shipping-services.is-static .shipping-service-pill{width:auto;min-width:0;flex:auto}
.shipping-services.is-ticker{display:block!important;min-width:0;overflow:hidden!important;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
@keyframes storeShippingTicker{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-50%,0,0)}}
.shipping-services.is-ticker .shipping-services-track{display:flex;width:max-content;will-change:transform;animation:storeShippingTicker 24s linear infinite}
.shipping-services.is-ticker .shipping-services-group{display:flex;gap:var(--store-space-2);padding-right:var(--store-space-2)}
@media(prefers-reduced-motion:reduce){.shipping-services.is-ticker .shipping-services-track{animation:none;transform:none}}

/* Footer — every interactive icon/link has a stable touch target. */
.footer-links a{display:flex!important;align-items:center;min-height:44px;margin:0!important}
.footer-social a{width:44px!important;min-width:44px!important;height:44px!important;padding:0!important}

/* Product detail residual consistency. */
.pdp-v2 .pdp-content-nav{position:static;top:auto}
.pdp-v2 .pdp-content-nav a{min-height:44px}
.pdp-v2 .variant-chip.is-unavailable:not(.is-selected){opacity:1;border-style:dashed;background:color-mix(in srgb,var(--store-surface-muted) 78%,var(--store-surface))}
.pdp-v2 .variant-chip.is-unavailable span{color:var(--store-muted)}
.pdp-v2 .variant-picker.is-compact .variant-chip small{display:block;font-size:10px;line-height:1.1}
.pdp-v2 .gallery-zoom{position:absolute;left:12px;bottom:12px;z-index:3;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid color-mix(in srgb,var(--store-line) 80%,transparent);border-radius:50%;background:color-mix(in srgb,var(--store-surface) 92%,transparent);color:var(--store-text);box-shadow:var(--store-shadow);cursor:pointer;backdrop-filter:blur(8px)}
.pdp-v2 .gallery-zoom svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9}
.product-review-media .review-video{overflow:hidden;border-radius:12px;background:#000}
.product-review-media .review-video video{display:block;width:100%;max-height:420px}
.media-lightbox:focus{outline:none}

@media(max-width:900px){
  :root{--store-header-height:74px}
  .header-shell{padding:var(--store-space-2) var(--store-space-4);gap:var(--store-space-3)}
  .header-shell .desktop-nav{gap:var(--store-space-1)}
  .header-shell .desktop-nav>a:not(.nav-cart):not(.contact){display:none}
}

@media(max-width:680px){
  :root{--store-header-height:112px}
  .header-shell{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:48px 44px;gap:var(--store-space-2);padding:var(--store-space-2) var(--store-space-3)}
  .brand{grid-column:1;grid-row:1;align-self:center}.brand img{width:40px;height:40px}.brand span{display:none!important}
  .header-search{grid-column:1/-1;grid-row:2;width:100%;height:44px;min-height:44px;max-width:none}.header-search button{display:none}.header-search input{font-size:13px}
  .header-shell .desktop-nav{display:none!important}
  .mobile-header-actions{grid-column:3;grid-row:1;display:flex;align-items:center;gap:var(--store-space-1)}
  .mobile-cart,.mobile-nav-menu>summary{position:relative;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--store-line);border-radius:11px;background:var(--store-surface);color:var(--store-text)}
  .mobile-cart svg,.mobile-nav-menu>summary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9}
  .mobile-cart b{position:absolute;top:-4px;right:-4px}
  .mobile-nav-menu{position:relative}.mobile-nav-menu>summary{list-style:none;cursor:pointer}.mobile-nav-menu>summary::-webkit-details-marker{display:none}
  .mobile-nav-panel{position:absolute;top:52px;right:0;z-index:120;width:min(260px,calc(100vw - 24px));padding:var(--store-space-2);border:1px solid var(--store-line);border-radius:var(--store-radius);background:var(--store-surface);box-shadow:0 16px 40px rgba(16,24,40,.16)}
  .mobile-nav-panel a{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:0 var(--store-space-3);border-radius:9px;font-size:13px;font-weight:700}.mobile-nav-panel a:hover{background:var(--green-soft)}
  .product-card{padding:var(--store-space-2);border-radius:15px}.product-card .product-info{padding:var(--store-space-2) 2px var(--store-space-1)}.product-card h3{font-size:12px}.product-card .price{font-size:16px}
  .footer-social a{width:44px!important;min-width:44px!important;height:44px!important}
  .pdp-v2 .gallery-zoom{left:8px;bottom:8px}
}

/* 1.26.1 visual repair hardening */
@media(min-width:681px){.mobile-header-actions{display:none!important}}
@media(max-width:680px){.header-shell .desktop-nav{display:none!important}}
