/* Hand-written corrections layered over snap.css (measured rebuilds).
   Scope: header, announcement ticker, product main section. Selectors hook on the
   original class list kept in data-o, so they survive a re-snap. */

/* ---------- 1. reset: the snap omits "default" values (margin/padding 0, no border,
   transparent bg, inline img ...). UA + base.css defaults must not leak in.
   :where() keeps this at element specificity so every snap class rule still wins. ---------- */
:where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) :is(div, p, ul, ol, li, h1, h2, h3, h4, h5, h6, button, input, select, textarea, summary, details, a, span, img, figure, label, form, s, small, strong, b, em, section, nav, header, video, blockquote, fieldset, picture, table, td, th, modal-opener, slider-component, media-gallery, product-info, product-form, sticky-atc, sticky-header, header-drawer, details-modal) {
  margin: 0; padding: 0; border: 0; background-color: transparent;
}
:where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) :is(h1, h2, h3, h4, h5, h6, a, strong, b, small, button, input, select, textarea, label) {
  font: inherit; color: inherit; letter-spacing: inherit; text-transform: inherit; text-align: inherit; line-height: inherit; word-break: normal;
}
:where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) :is(img) {
  display: inline; max-width: none; height: auto; vertical-align: baseline;
}
:where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) :is(button, select, input) {
  appearance: none; -webkit-appearance: none; border-radius: 0; box-shadow: none; outline: none;
}
:where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) :is(summary) { list-style: none; }
:where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) summary::-webkit-details-marker { display: none; }
:where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) :is(ul, ol) { list-style: none; }

/* ---------- 2. product main section ---------- */
/* sliders: native scroll-snap, hidden scrollbars */
[data-o~="slider"], [data-o~="ugc-slider__track"] { scrollbar-width: none; scroll-behavior: smooth; }
[data-o~="slider"]::-webkit-scrollbar, [data-o~="ugc-slider__track"]::-webkit-scrollbar { display: none; }

/* gallery */
[data-o~="product__media-list"] { scroll-snap-type: x mandatory; scroll-padding-left: 0; }
[data-o~="product__media-item"] { flex: 0 0 100%; width: 100%; min-width: 0; scroll-snap-align: start; }
[data-o~="product-media-container"], [data-o~="product__modal-opener"], [data-o~="product__media"] { width: 100%; }
[data-o~="product__media-toggle"] { display: none; }
[data-o~="splide__arrow"] svg { width: 7.1875px; height: 7.1875px; }
[data-o~="splide__arrow--prev"] svg { transform: scaleX(-1); }
[data-o~="thumbnail-list"] { scroll-snap-type: x mandatory; scroll-padding-left: 5px; }
[data-o~="thumbnail-list__item"] { scroll-snap-align: start; }
[data-o~="thumbnail-slider"] [data-o~="slider-button"] { width: 25px; height: 44px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; background: transparent; color: rgba(23,21,21,.9); padding: 1px 6px; cursor: pointer; }
[data-o~="thumbnail-slider"] [data-o~="slider-button"][disabled] { cursor: not-allowed; }
[data-o~="thumbnail-slider"] [data-o~="slider-button"][disabled] svg { color: rgba(23,21,21,.3); }
[data-o~="thumbnail-slider"] [data-o~="slider-button"] svg { width: 10px; height: 6px; display: block; }
[data-o~="thumbnail-slider"] [data-o~="slider-button--prev"] svg { transform: rotate(90deg); }
[data-o~="thumbnail-slider"] [data-o~="slider-button--next"] svg { transform: rotate(-90deg); }
@media (min-width:750px) { [data-o~="thumbnail-slider"] [data-o~="slider-button"] { width: 44px; height: 44px; } }
[data-o~="thumbnail"] { padding: 0; }

/* sold progress + divider */
[data-o~="sold-progress__track"] { width: 75%; height: 8px; flex: 0 0 auto; }
[data-o~="sold-progress__fill"] { height: 8px; max-width: none; width: 0; transition: width 1.2s cubic-bezier(0.1, 0.8, 0.3, 1); }
[data-o~="sold-progress__text"] { min-width: 0; }
@media (min-width:750px) { [data-o~="sold-progress__track"] { width: 80%; } }
[data-o~="product-info__divider"] { width: 100%; height: 1px; }
[data-o~="product-info__image-block"] { height: auto; }

/* kaching bars (rebuild, app not on page) */
[data-o~="kaching-bundles__block-title"] { white-space: nowrap; }
[data-o~="kaching-bundles__bar-container"] { width: 100%; transition: background-color .2s, box-shadow .2s; }
[data-o~="kaching-bundles__bar"] { width: 100%; }
[data-o~="kaching-bundles__bar"].is-sel [data-o~="kaching-bundles__bar-container"] { background-color: rgb(245, 248, 226); box-shadow: rgb(141, 166, 0) 0 0 0 2px inset; }
[data-o~="kaching-bundles__bar"].is-unsel [data-o~="kaching-bundles__bar-container"] { background-color: rgb(255, 255, 255); box-shadow: rgba(141, 166, 0, 0.3) 0 0 0 1px inset; }

/* one-time-purchase link: one per tier, store.js toggles [hidden] */
[data-o~="otp-switcher__link"]:not([hidden]) { display: inline-block; max-width: none; }
[data-o~="otp-switcher__link"][hidden] { display: none; }

/* ATC */
[data-o~="atc-button"] { width: 100%; }
[data-o~="atc-button"][aria-busy="true"] { pointer-events: none; }

/* money back */
[data-o~="money-back-guarantee__badge"] { flex-shrink: 0; width: 60px; }
[data-o~="money-back-guarantee__badge"] img { width: 100%; }

/* UGC slider */
[data-o~="ugc-slider__track"] { grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 180px; scroll-snap-type: x mandatory; }
[data-o~="ugc-slider__item"] { width: 180px; height: 320px; scroll-snap-align: start; }
[data-o~="ugc-slider__media"] { width: 100%; height: 100%; position: relative; }
[data-o~="ugc-slider__video"] { width: 100%; height: 100%; }
[data-o~="ugc-slider__item"].is-playing [data-o~="ugc-slider__video"] { display: block; }
[data-o~="ugc-slider__item"].is-playing [data-o~="ugc-slider__poster"], [data-o~="ugc-slider__item"].is-playing [data-o~="ugc-slider__play"] { display: none; }
[data-o~="ugc-slider__item"].is-playing.is-paused [data-o~="ugc-slider__play"] { display: flex; }
[data-o~="ugc-slider__arrows"] { width: auto; height: 36px; }
[data-o~="ugc-slider__arrow"] { width: 36px; height: 36px; flex-shrink: 0; transition: opacity .2s; }
[data-o~="ugc-slider__arrow"]:not([disabled]) { opacity: 1; pointer-events: auto; }
[data-o~="ugc-slider__arrow"][disabled] { opacity: .35; pointer-events: none; }
[data-o~="ugc-slider__arrow"] svg { width: 18px; height: 18px; }
@media (min-width:750px) {
  [data-o~="ugc-slider__track"] { grid-auto-columns: 150px; }
  [data-o~="ugc-slider__item"] { width: 150px; height: 266.656px; }
}

/* why trust us */
[data-o~="wt-badge-icon"] { height: 24px; }
@media (min-width:750px) { [data-o~="wt-badge-icon"] { height: 44px; } }

/* accordions */
[data-o~="ha-accordion__summary"] { height: 56px; box-sizing: border-box; display: flex; align-items: center; justify-content: space-between; cursor: pointer; }
[data-o~="ha-accordion__toggle"] { width: 24px; height: 24px; position: relative; flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
[data-o~="ha-accordion__plus"], [data-o~="ha-accordion__minus"] { position: absolute; width: 12px; height: 12px; display: flex; align-items: center; justify-content: center; transition: opacity .25s; }
[data-o~="ha-accordion__plus"] { opacity: 1; }
[data-o~="ha-accordion__minus"] { opacity: 0; }
[data-o~="ha-accordion"].is-open [data-o~="ha-accordion__plus"] { opacity: 0; }
[data-o~="ha-accordion"].is-open [data-o~="ha-accordion__minus"] { opacity: 1; }
[data-o~="ha-accordion__content-wrapper"] { display: grid; grid-template-rows: 0fr; height: auto; visibility: hidden; transition: grid-template-rows .45s, visibility 0s linear .45s; }
[data-o~="ha-accordion"].is-open [data-o~="ha-accordion__content-wrapper"] { grid-template-rows: 1fr; visibility: visible; transition: grid-template-rows .45s, visibility 0s; }
[data-o~="ha-accordion__content"] { height: auto; min-height: 0; overflow: hidden; }
@media (min-width:750px) { [data-o~="ha-accordion__summary"] { height: 54px; } }

/* sticky ATC bar */
[data-o~="sticky-atc"] { transform: translateY(100%); transition: transform .15s ease-in-out; }
[data-o~="sticky-atc"].is-shown { transform: none; }
[data-o~="sticky-atc"] { top: auto; height: auto; width: auto; }
[data-o~="sticky-atc__variant-select"] { height: 21px; }
@media (min-width:750px) {
  [data-o~="sticky-atc__image"] { width: 52px; height: 52px; }
  [data-o~="sticky-atc__image"] img { width: 52px; height: 52px; object-fit: cover; }
  [data-o~="sticky-atc__title"] { display: block; }
  [data-o~="sticky-atc__variant-select"] { height: 40px; }
}
/* two-column grid on tablet */
@media (min-width:750px) and (max-width:989px) {
  [data-o~="product"] > [data-o~="product__media-wrapper"], [data-o~="product"] > [data-o~="product__info-wrapper"] { flex: 0 0 50%; width: 50%; max-width: 50%; }
}

/* ---------- 3. header ---------- */
[data-o~="section-header"] { position: sticky; top: 0; z-index: 5; }
[data-o~="section-header"].vy-hdr-animate { transition: top .15s ease-out; }
[data-o~="header"] { display: grid; grid-template-areas: "left-icons heading icons"; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; padding: 4px 15px; max-width: 1400px; margin: 0 auto; }
@media (min-width:750px) { [data-o~="header"] { padding: 4px 50px; } }
@media (min-width:990px) { [data-o~="header"] { padding: 8px 50px; grid-template-columns: minmax(0,1fr) 112.5px minmax(0,1fr); } }
@media (min-width:1440px) { [data-o~="header"] { margin: 0 20px; } }
header-drawer[data-o=""], [data-o~="header"] > header-drawer { grid-area: left-icons; justify-self: start; margin-left: -12px; display: block; width: 44px; height: 44px; }
[data-o~="header__heading"] { display: contents; }
[data-o~="header__heading-link"] { grid-area: heading; justify-self: center; display: flex; position: relative; width: 130px; height: 51.97px; max-width: 130px; padding: 0; }
[data-o~="header__heading-logo"] { position: absolute; top: 0; left: 0; width: 100%; height: 100%; max-width: 100%; object-fit: contain; display: block; }
@media (min-width:750px) { [data-o~="header__heading-link"] { width: 120px; height: 47.97px; max-width: 120px; } }
@media (min-width:990px) { [data-o~="header__heading-link"] { justify-self: start; margin-left: -7.5px; } }
[data-o~="header__icons"] { grid-area: icons; justify-self: end; display: flex; position: static; width: auto; height: 44px; padding: 0; font-size: inherit; line-height: inherit; }
[data-o~="header__icon"] { width: 44px; height: 44px; color: rgb(23,21,21); cursor: pointer; }
[data-o~="header__icon--menu"] { display: block; position: static; }
[data-o~="header__icon--menu"] > span { display: flex; width: 44px; height: 44px; position: relative; }
[data-o~="icon-hamburger"] { position: absolute; top: 12px; left: 12px; right: auto; bottom: auto; width: 20px; height: 20px; display: flex; flex-direction: column; row-gap: 6.5px; transition: opacity .2s, transform .2s, visibility .2s; }
[data-o~="icon-hamburger"] > span { display: block; width: 20px; height: 1.5px; font-size: 0; line-height: 0; overflow: hidden; border-radius: 4px; background-color: rgb(23,21,21); flex: none; }
[data-o~="header__icon--menu"] > span > svg { position: absolute; top: 12px; left: 12px; right: auto; bottom: auto; width: 20px; height: 20px; opacity: 0; transform: scale(.8); visibility: hidden; transition: opacity .2s, transform .2s, visibility .2s; }
.menu-opening > [data-o~="header__icon--menu"] [data-o~="icon-hamburger"] { opacity: 0; transform: scale(.8); visibility: hidden; }
.menu-opening > [data-o~="header__icon--menu"] > span > svg { opacity: 1; transform: none; visibility: visible; }
.menu-opening > [data-o~="header__icon--menu"]::before { content: ""; position: fixed; inset: 0; background: rgba(23,21,21,.5); z-index: 1; cursor: default; }
[data-o~="header__search"] { display: flex; width: 44px; height: 44px; position: static; }
[data-o~="header__search"] > details { display: block; width: 44px; height: 44px; }
[data-o~="header__icon--search"] { display: inline-block; position: relative; }
[data-o~="header__icon--search"] > span { display: flex; width: 44px; height: 44px; align-items: center; justify-content: center; position: static; }
[data-o~="header__icon--search"] svg[class*="toggle-open"], [data-o~="header__icon--search"] > span > svg:first-child { display: flex; width: 20px; height: 20px; position: static; }
[data-o~="header__icon--search"] > span > svg + svg, [data-o~="header__search"] [data-o~="search-modal"] { display: none !important; }
[data-o~="header__icon--account"] { display: none; }
@media (min-width:750px) { [data-o~="header__icon--account"] { display: flex; align-items: center; justify-content: center; position: static; } }
[data-o~="header__icon--account"] svg { width: 20px; height: 20px; display: block; position: static; }
[data-o~="header__icon--cart"] { display: flex; align-items: center; justify-content: center; position: relative; margin-right: -12px; }
[data-o~="header__icon--cart"] > svg { width: 24px; height: 24px; transform: scale(.9); display: block; position: static; }
#cart-icon-bubble { display: block; width: 0; height: 0; position: static; }
[data-o~="cart-count-bubble"], .cart-count-bubble { position: absolute; top: 22px; left: 22px; width: 14px; height: 14px; border-radius: 100%; background-color: rgb(33,33,33); color: #fff; font-size: 8px; line-height: 14.4px; display: flex; align-items: center; justify-content: center; }
.cart-count-bubble > span[aria-hidden] { display: flex; line-height: 14px; }

/* menu drawer */
[data-o~="menu-drawer"] { position: fixed; top: 0; left: 0; right: auto; bottom: auto; width: 350px; height: 100vh; height: 100dvh; transform: translateX(-100%); visibility: hidden; z-index: 10; overflow-x: hidden; overflow-y: auto; border-right: 1px solid rgba(23,21,21,.1); background-color: #fff; transition: transform .2s, visibility .2s; }
@media (min-width:750px) { [data-o~="menu-drawer"] { width: 400px; } }
.menu-opening [data-o~="menu-drawer"] { transform: none; visibility: visible; }
[data-o~="header-drawer-v2__localization"] { justify-items: center; }
[data-o~="disclosure__list-wrapper"] { display: none; }

/* ---------- 4. announcement ticker ---------- */
@keyframes vyTicker { from { transform: translateX(0); } to { transform: translateX(-50%); } }
[data-o~="horizontal-ticker"] { overflow: hidden; }
[data-o~="horizontal-ticker__container"] { display: flex; align-items: center; width: max-content; animation: vyTicker 50s linear infinite; }
[data-o~="horizontal-ticker__item"] { flex: none; }

/* ---------- 5. entrance + progress animations (driven by store.js) ---------- */
.vy-reveal :is([data-o~="wt-heading"], [data-o~="wt-badge-card"], [data-o~="wt-item"], [data-o~="wt-closing"]) { opacity: 0; transform: translateY(20px); transition: opacity .8s cubic-bezier(0.2, 0.8, 0.2, 1), transform .8s cubic-bezier(0.2, 0.8, 0.2, 1); }
.vy-reveal.vy-in :is([data-o~="wt-heading"], [data-o~="wt-badge-card"], [data-o~="wt-item"], [data-o~="wt-closing"]) { opacity: 1; transform: none; }
[data-o~="splide__arrow"] { transition: opacity .2s; }
[data-o~="splide__arrow"]:not([disabled]) { opacity: .7; cursor: pointer; }
[data-o~="splide__arrow"][disabled] { opacity: .3; cursor: default; }

/* ---------- 6. pseudo-elements: the snap sized every ::before/::after like its host ---------- */
[data-o~="ha-accordion__inner"] li::before { width: auto; height: auto; }
[data-o~="atc-button"]::after, [data-o~="sticky-atc__add_button"]::after, [data-o~="skip-to-content-link"]::after { width: auto; height: auto; }
[data-o~="atc-button"]::before, [data-o~="sticky-atc__add_button"]::before { width: auto; height: auto; }
[data-o~="kaching-bundles"] [data-a11y-label]::before { width: 1px; height: 1px; overflow: hidden; white-space: nowrap; }
[data-o~="kaching-bundles__block-title"]::before, [data-o~="kaching-bundles__block-title"]::after { height: 2px; }
/* gradient title: gradient is clipped to the glyphs */
[data-o~="title-with-highlight-1--color-gradient"] { -webkit-background-clip: text; background-clip: text; }
[data-o~="header__heading-link"]::before { width: 0; }
/* menu drawer internals (snap measured them while the drawer was closed) */
[data-o~="menu-drawer__container"] { display: grid; grid-template-rows: auto 1fr auto; min-height: 100%; width: auto; height: auto; }
[data-o~="header-drawer-v2__header"] { display: flex; align-items: center; justify-content: flex-start; position: relative; height: 66px; min-height: 66px; padding: 10px 20px; border-bottom: 1px solid rgba(23,21,21,.1); background-color: #fff; }
[data-o~="header-drawer__header__text"] { width: auto; height: auto; }
[data-o~="menu-drawer__title"] { display: block; font-size: 22px; line-height: 24.2px; font-weight: 400; color: rgba(23,21,21,.9); width: auto; height: auto; }
[data-o~="menu-drawer__close-btn"] { position: absolute; top: 32.5px; right: 10px; left: auto; bottom: auto; transform: translateY(-50%); width: 30px; height: 30px; margin: 0; padding: 0; display: flex; align-items: center; justify-content: center; border-radius: 7.5%; background-color: rgba(23,21,21,.05); color: rgb(23,21,21); cursor: pointer; }
[data-o~="menu-drawer__close-btn"] svg { width: 19.5px; height: 19.5px; display: block; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; }
[data-o~="header-drawer-v2__body"] { padding: 10px 0; height: auto; background-color: #fff; overflow: visible; }
[data-o~="menu-drawer__navigation"], [data-o~="menu-drawer__menu"] { width: auto; height: auto; padding: 0; margin: 0; }
[data-o~="menu-drawer__menu"] > li { display: list-item; height: auto; width: auto; }
[data-o~="menu-drawer__menu-item"] { display: flex; align-items: center; width: auto; height: auto; padding: 12px 18px; font-size: 16px; line-height: 20.8px; color: rgb(23,21,21); text-decoration: none; }
[data-o~="menu-drawer__navigation__separator"] { width: auto; height: 1px; margin: 0 18px; padding: 0; opacity: .03; background-color: rgb(23,21,21); }
[data-o~="menu-drawer__account"] { display: flex; align-items: center; column-gap: 9.8px; width: max-content; max-width: none; height: auto; margin: 24px 0 0 16px; padding: 0; font-size: 14px; line-height: 25.2px; color: rgb(23,21,21); }
[data-o~="menu-drawer__account"] svg { width: 21px; height: 21px; display: block; }
[data-o~="header-drawer-v2__footer"] { padding: 10px 16px; height: auto; width: auto; border-top: 1px solid transparent; background-color: #fff; }
[data-o~="header-drawer-v2__localization"] { display: grid; justify-items: center; width: auto; height: auto; }
[data-o~="localization-form-v2"], [data-o~="localization-form-v2"] form, [data-o~="localization-form-v2"] [data-o~="no-js-hidden"], [data-o~="localization-v2"] { width: auto; height: auto; }
:where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) [data-o~="visually-hidden"]:not(:focus) { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px; padding: 0; border: 0; clip: rect(0 0 0 0); white-space: nowrap; box-shadow: none; }
:where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) [data-o~="visually-hidden"]:not(:focus)::before, :where([data-o~="section-header"], [id*="__horizontal_ticker"], [data-o~="main-product-section"]) [data-o~="visually-hidden"]:not(:focus)::after { display: none; }
@media (max-width:749px) {
  [data-o~="product"] > [data-o~="product__media-wrapper"], [data-o~="product"] > [data-o~="product__info-wrapper"] { width: 100%; }
}
@media (min-width:750px) { [data-o~="product__media-item"] { display: block; } [data-o~="product__media-item"].is-active { display: list-item; } }

/* Product cards (collections, cart recommendations): the whole card links to the product, as on the origin */
[data-o~=card-wrapper]{position:relative}
[data-o~=card-wrapper] [data-o~=full-unstyled-link]::after{content:""!important;position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:auto!important;height:auto!important;z-index:1;pointer-events:auto}
[data-o~=card-wrapper]{cursor:pointer}

/* verifier fixes (2026-10-25) */
/* rebuilt input focus rings sit 1px inside the field, as on the origin */
[data-o~=field]::after{top:1px!important;right:1px!important;bottom:1px!important;left:1px!important;width:auto!important;height:auto!important}
/* room for the fixed sticky add-to-cart bar below the footer (origin .sticky-atc-footer-spacer) */
body:has([data-o~=sticky-atc]){padding-bottom:65px}
@media (min-width:750px){body:has([data-o~=sticky-atc]){padding-bottom:90px}}
@media (min-width:990px){body:has([data-o~=sticky-atc]){padding-bottom:72px}}
