/* Jolfa final refinement layer
   Intentionally loaded after legacy/runtime styles so these rules are the single
   source of truth for the refinements below. */

/* --------------------------------------------------------------------------
   Hero slider: copy is a pure overlay; it must never tint or resize artwork.
   -------------------------------------------------------------------------- */
.commerce-hero{
  padding-bottom:0!important;
}
.commerce-slide__content,
html[data-theme="light"][dir="rtl"] .commerce-slide__content,
html[data-theme="light"][dir="ltr"] .commerce-slide__content,
html[data-theme="dark"][dir="rtl"] .commerce-slide__content,
html[data-theme="dark"][dir="ltr"] .commerce-slide__content{
  background:transparent!important;
  background-image:none!important;
  border-color:transparent!important;
  border-top-color:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.commerce-slide__content::before,
.commerce-slide__content::after,
html[data-theme="light"] .commerce-slide__content::before,
html[data-theme="light"] .commerce-slide__content::after,
html[data-theme="dark"] .commerce-slide__content::before,
html[data-theme="dark"] .commerce-slide__content::after{
  content:none!important;
  display:none!important;
}

/* CTA is physically right-aligned in both RTL and LTR. */
.commerce-slide__actions,
html[dir="rtl"] .commerce-slide__actions,
html[dir="ltr"] .commerce-slide__actions{
  width:100%!important;
  display:flex!important;
  flex-direction:row!important;
  direction:ltr!important;
  justify-content:flex-end!important;
  align-items:center!important;
  float:none!important;
  text-align:right!important;
}
.commerce-slide__actions .commerce-button,
html[dir="rtl"] .commerce-slide__actions .commerce-button,
html[dir="ltr"] .commerce-slide__actions .commerce-button{
  float:none!important;
  margin:0!important;
  margin-left:0!important;
  margin-right:0!important;
  align-self:auto!important;
}

@media (min-width:781px){
  .commerce-slide__content,
  html[dir="rtl"] .commerce-slide__content,
  html[dir="ltr"] .commerce-slide__content{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .commerce-slide__actions,
  html[dir="rtl"] .commerce-slide__actions,
  html[dir="ltr"] .commerce-slide__actions{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    margin-top:24px!important;
    overflow:visible!important;
  }

  /* The glass cap touches the image edge and its contents sit in its visual center. */
  .commerce-carousel__controls{
    bottom:0!important;
    padding-bottom:0!important;
  }
  .commerce-carousel__status{
    top:auto!important;
    bottom:-1px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:5px!important;
    padding:7px 14px 1px!important;
    margin:0!important;
    transform:translateX(-50%)!important;
  }
  .commerce-carousel__status .commerce-carousel__dots,
  .commerce-carousel__timer{
    flex:0 0 auto!important;
    margin:0!important;
  }
  .commerce-carousel__status::before{
    bottom:-1px!important;
  }
}

/* Mobile artwork is untouched in the top 70%; only controls get a bottom haze. */
@media (max-width:780px){
  .commerce-slide__shade,
  html[dir="rtl"] .commerce-slide__shade,
  html[dir="ltr"] .commerce-slide__shade,
  html[data-theme="light"] .commerce-slide__shade,
  html[data-theme="light"][dir="rtl"] .commerce-slide__shade,
  html[data-theme="light"][dir="ltr"] .commerce-slide__shade{
    background:linear-gradient(180deg,
      rgba(251,248,255,0) 0%,
      rgba(251,248,255,0) 70%,
      rgba(251,248,255,.035) 79%,
      rgba(251,248,255,.18) 90%,
      rgba(251,248,255,.64) 100%)!important;
  }
  html[data-theme="dark"] .commerce-slide__shade,
  html[data-theme="dark"][dir="rtl"] .commerce-slide__shade,
  html[data-theme="dark"][dir="ltr"] .commerce-slide__shade{
    background:linear-gradient(180deg,
      rgba(10,12,20,0) 0%,
      rgba(10,12,20,0) 70%,
      rgba(10,12,20,.035) 79%,
      rgba(10,12,20,.18) 90%,
      rgba(10,12,20,.62) 100%)!important;
  }
  .commerce-slide__actions,
  html[dir="rtl"] .commerce-slide__actions,
  html[dir="ltr"] .commerce-slide__actions{
    justify-content:flex-end!important;
  }
}

/* Clear inactive dots: ink in light mode, white in dark mode. */
html[data-theme="light"] .commerce-carousel__dots button:not(.active){
  background:#111827!important;
  opacity:.68!important;
}
html[data-theme="dark"] .commerce-carousel__dots button:not(.active){
  background:#fff!important;
  opacity:.82!important;
}
.commerce-carousel__dots button.active,
html[data-theme="light"] .commerce-carousel__dots button.active,
html[data-theme="dark"] .commerce-carousel__dots button.active{
  background:#36c6da!important;
  opacity:1!important;
}

/* --------------------------------------------------------------------------
   Price update banner: brand-consistent, quiet, static and inexpensive to paint.
   -------------------------------------------------------------------------- */
body.has-price-update-banner .jolfa-price-update-banner,
html[data-theme="light"] body.has-price-update-banner .jolfa-price-update-banner,
html[data-theme="dark"] body.has-price-update-banner .jolfa-price-update-banner{
  position:relative!important;
  overflow:hidden!important;
  color:#f8f6fb!important;
  background:
    radial-gradient(circle at 12% 50%,rgba(126,232,244,.12),transparent 24%),
    linear-gradient(100deg,#24142f 0%,#35164c 48%,#272144 76%,#173443 100%)!important;
  border:0!important;
  border-bottom:1px solid rgba(126,232,244,.16)!important;
  box-shadow:0 4px 14px rgba(22,10,32,.16)!important;
  filter:none!important;
  animation:none!important;
  will-change:auto!important;
}
body.has-price-update-banner .jolfa-price-update-banner::before,
body.has-price-update-banner .jolfa-price-update-banner::after{
  content:none!important;
  display:none!important;
  animation:none!important;
}
body.has-price-update-banner .jolfa-price-update-banner__inner{
  min-height:42px!important;
  gap:9px!important;
  color:inherit!important;
}
body.has-price-update-banner .jolfa-price-update-banner__inner i{
  width:28px!important;
  height:28px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(126,232,244,.18)!important;
  border-radius:9px!important;
  background:rgba(126,232,244,.09)!important;
  color:#7ee8f4!important;
  animation:none!important;
  transform:none!important;
  filter:none!important;
  will-change:auto!important;
}
body.has-price-update-banner .jolfa-price-update-banner__inner span{
  color:#f8f6fb!important;
  font-weight:850!important;
  text-shadow:none!important;
  animation:none!important;
}

/* --------------------------------------------------------------------------
   Amazing products: breathing room + a distinct premium dark surface.
   -------------------------------------------------------------------------- */
@media (min-width:761px){
  body.home-page .market-amazing{
    column-gap:14px!important;
  }
}
html[data-theme="dark"] body.home-page .market-amazing__rail{
  background:rgba(8,12,24,.34)!important;
  border:1px solid rgba(126,232,244,.08)!important;
}
html[data-theme="dark"] body.home-page .market-amazing-card{
  background:
    radial-gradient(circle at 88% 4%,rgba(126,232,244,.11),transparent 32%),
    linear-gradient(145deg,#302748 0%,#2a2040 46%,#1f2f43 100%)!important;
  border-inline-start-color:rgba(126,232,244,.16)!important;
  color:#f8f6fb!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 12px 28px rgba(3,7,18,.18)!important;
}
html[data-theme="dark"] body.home-page .market-amazing-card h3,
html[data-theme="dark"] body.home-page .market-amazing-card h3 a{
  color:#fbf9ff!important;
}
html[data-theme="dark"] body.home-page .market-amazing-card>div>small,
html[data-theme="dark"] body.home-page .market-amazing-card__price del{
  color:#bdb6ca!important;
}
html[data-theme="dark"] body.home-page .market-amazing-card__price strong{
  color:#7ee8f4!important;
  text-shadow:0 0 16px rgba(126,232,244,.10)!important;
}
html[data-theme="dark"] body.home-page .market-amazing__arrow{
  background:#332847!important;
  color:#fff!important;
  border-color:rgba(126,232,244,.18)!important;
  box-shadow:0 8px 20px rgba(3,7,18,.22)!important;
}

/* --------------------------------------------------------------------------
   Cart: larger product imagery and a clear anonymous-cart persistence note.
   -------------------------------------------------------------------------- */
@media (min-width:721px){
  body.jolfa-commerce-theme .commerce-cart-page .jolfa-cart-item{
    grid-template-columns:148px minmax(0,1fr) auto!important;
    gap:22px!important;
  }
  body.jolfa-commerce-theme .commerce-cart-page .jolfa-cart-item__media{
    width:148px!important;
    height:148px!important;
    border-radius:20px!important;
  }
  body.jolfa-commerce-theme .commerce-cart-page .jolfa-cart-item__media img{
    max-width:94%!important;
    max-height:94%!important;
    padding:7px!important;
  }
}
@media (max-width:720px){
  body.jolfa-commerce-theme .commerce-cart-page .jolfa-cart-item{
    grid-template-columns:108px minmax(0,1fr)!important;
    gap:14px!important;
  }
  body.jolfa-commerce-theme .commerce-cart-page .jolfa-cart-item__media{
    width:108px!important;
    height:108px!important;
    border-radius:16px!important;
  }
  body.jolfa-commerce-theme .commerce-cart-page .jolfa-cart-item__media img{
    max-width:96%!important;
    max-height:96%!important;
    padding:5px!important;
  }
  body.jolfa-commerce-theme .commerce-cart-page .jolfa-cart-item__side{
    padding-inline-start:122px!important;
  }
}
@media (max-width:420px){
  body.jolfa-commerce-theme .commerce-cart-page .jolfa-cart-item__side{
    padding-inline-start:0!important;
  }
}
.jolfa-guest-cart-note{
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin:12px 0 0;
  padding:10px 11px;
  border:1px solid color-mix(in srgb,var(--teal,#36c6da) 20%,var(--border));
  border-radius:12px;
  background:color-mix(in srgb,var(--teal,#36c6da) 6%,var(--surface));
  color:var(--muted);
  font-size:.7rem;
  line-height:1.75;
}
.jolfa-guest-cart-note i{
  margin-top:4px;
  color:var(--teal,#36c6da);
  flex:0 0 auto;
}

/* --------------------------------------------------------------------------
   Categories: real desktop layout, compact horizontal navigation on mobile.
   -------------------------------------------------------------------------- */
body.headerless-categories-page .mobile-category-page{
  width:min(1240px,calc(100% - 40px))!important;
  max-width:1240px!important;
  margin:0 auto!important;
  padding:30px 0 104px!important;
}
.jolfa-category-page__hero{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:18px;
  padding:24px 26px;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:24px;
  background:
    radial-gradient(circle at 12% 0%,color-mix(in srgb,var(--teal,#36c6da) 11%,transparent),transparent 32%),
    linear-gradient(135deg,color-mix(in srgb,var(--primary) 8%,var(--surface)),var(--surface));
  box-shadow:0 14px 34px rgba(29,18,39,.06);
}
.jolfa-category-page__hero::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  inset-inline-end:-70px;
  top:-92px;
  border-radius:50%;
  border:1px solid color-mix(in srgb,var(--primary) 16%,transparent);
  pointer-events:none;
}
.jolfa-category-page__hero-copy{
  position:relative;
  z-index:1;
  min-width:0;
}
.jolfa-category-page__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:var(--primary);
  font-size:.72rem;
  font-weight:950;
}
.jolfa-category-page__hero h1{
  margin:7px 0 5px;
  color:var(--text);
  font-size:clamp(1.25rem,2.2vw,2rem);
  line-height:1.5;
}
.jolfa-category-page__hero p{
  margin:0;
  color:var(--muted);
  font-size:.8rem;
  line-height:1.9;
}
.jolfa-category-page__hero-stat{
  position:relative;
  z-index:1;
  min-width:112px;
  min-height:82px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid color-mix(in srgb,var(--primary) 16%,var(--border));
  border-radius:19px;
  background:color-mix(in srgb,var(--primary) 6%,var(--surface));
}
.jolfa-category-page__hero-stat b{
  color:var(--primary);
  font-size:1.42rem;
}
.jolfa-category-page__hero-stat span{
  color:var(--muted);
  font-size:.65rem;
  font-weight:800;
}

body.headerless-categories-page .mobile-category-browser{
  display:grid!important;
  grid-template-columns:238px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:start!important;
  min-height:0!important;
}
body.headerless-categories-page .mobile-category-browser__rail{
  position:sticky!important;
  top:18px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  width:auto!important;
  min-width:0!important;
  padding:10px!important;
  overflow:visible!important;
  border:1px solid var(--border)!important;
  border-radius:22px!important;
  background:var(--surface)!important;
  box-shadow:0 12px 30px rgba(29,18,39,.055)!important;
}
body.headerless-categories-page .mobile-category-root{
  width:100%!important;
  min-height:66px!important;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  padding:10px 12px!important;
  border:1px solid transparent!important;
  border-radius:15px!important;
  background:transparent!important;
  color:var(--muted)!important;
  text-align:start!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
body.headerless-categories-page .mobile-category-root:hover{
  background:var(--surface-soft)!important;
  color:var(--text)!important;
  transform:translateY(-1px);
}
body.headerless-categories-page .mobile-category-root.is-active{
  border-color:color-mix(in srgb,var(--primary) 22%,var(--border))!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 13%,var(--surface)),color-mix(in srgb,var(--teal,#36c6da) 6%,var(--surface)))!important;
  color:var(--primary)!important;
  box-shadow:0 9px 22px color-mix(in srgb,var(--primary) 8%,transparent)!important;
}
body.headerless-categories-page .mobile-category-root__icon{
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:13px!important;
  background:color-mix(in srgb,var(--primary) 7%,var(--surface-soft))!important;
  color:var(--primary)!important;
}
body.headerless-categories-page .mobile-category-root__copy strong{
  font-size:.8rem!important;
  line-height:1.5!important;
}
body.headerless-categories-page .mobile-category-browser__content{
  min-width:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body.headerless-categories-page .mobile-category-pane{
  padding:16px!important;
  border:1px solid var(--border)!important;
  border-radius:22px!important;
  background:var(--surface)!important;
  box-shadow:0 12px 30px rgba(29,18,39,.055)!important;
}
body.headerless-categories-page .mobile-category-all{
  min-height:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:12px!important;
  padding:0 15px!important;
  border:1px solid color-mix(in srgb,var(--primary) 16%,var(--border))!important;
  border-radius:15px!important;
  background:color-mix(in srgb,var(--primary) 5%,var(--surface))!important;
  color:var(--primary)!important;
  font-weight:900!important;
}
body.headerless-categories-page .mobile-category-group{
  margin:10px 0 0!important;
  overflow:hidden!important;
  border:1px solid var(--border)!important;
  border-radius:17px!important;
  background:var(--surface-soft)!important;
}
body.headerless-categories-page .mobile-category-group>summary{
  min-height:58px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:0 15px!important;
  color:var(--text)!important;
  cursor:pointer!important;
  list-style:none!important;
}
body.headerless-categories-page .mobile-category-group>summary::-webkit-details-marker{display:none}
body.headerless-categories-page .mobile-category-group>summary>span{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
}
body.headerless-categories-page .mobile-category-group>summary>span>i{
  color:var(--primary)!important;
}
body.headerless-categories-page .mobile-category-group__chevron{
  color:var(--muted)!important;
  transition:transform .18s ease!important;
}
body.headerless-categories-page .mobile-category-group[open] .mobile-category-group__chevron{
  transform:rotate(180deg)!important;
}
body.headerless-categories-page .mobile-category-group__body{
  padding:0 14px 14px!important;
  border-top:1px solid var(--border)!important;
  background:var(--surface)!important;
}
body.headerless-categories-page .mobile-category-branch-link{
  min-height:44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:10px 0!important;
  padding:0 11px!important;
  border-radius:12px!important;
  color:var(--primary)!important;
  background:color-mix(in srgb,var(--primary) 5%,var(--surface))!important;
  font-size:.73rem!important;
  font-weight:850!important;
}
body.headerless-categories-page .mobile-category-leaf-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
body.headerless-categories-page .mobile-category-leaf-card{
  min-width:0!important;
  padding:12px!important;
  border:1px solid var(--border)!important;
  border-radius:15px!important;
  background:var(--surface)!important;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
body.headerless-categories-page .mobile-category-leaf-card:hover{
  transform:translateY(-2px)!important;
  border-color:color-mix(in srgb,var(--primary) 20%,var(--border))!important;
  box-shadow:0 10px 22px rgba(29,18,39,.06)!important;
}
body.headerless-categories-page .mobile-category-leaf-card__main{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  color:var(--text)!important;
}
body.headerless-categories-page .mobile-category-leaf-card__icon{
  width:38px!important;
  height:38px!important;
  flex:0 0 38px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:11px!important;
  background:color-mix(in srgb,var(--teal,#36c6da) 8%,var(--surface-soft))!important;
  color:var(--primary)!important;
}
body.headerless-categories-page .mobile-category-leaf-card__main strong{
  min-width:0!important;
  font-size:.76rem!important;
  line-height:1.55!important;
}
body.headerless-categories-page .mobile-category-leaf-card__children{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-top:10px!important;
  padding-top:9px!important;
  border-top:1px solid var(--border)!important;
}
body.headerless-categories-page .mobile-category-leaf-card__children a{
  padding:5px 8px!important;
  border-radius:999px!important;
  background:var(--surface-soft)!important;
  color:var(--muted)!important;
  font-size:.64rem!important;
  line-height:1.35!important;
}
body.headerless-categories-page .mobile-category-empty{
  min-height:180px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  color:var(--muted)!important;
}

html[data-theme="dark"] body.headerless-categories-page .jolfa-category-page__hero,
html[data-theme="dark"] body.headerless-categories-page .mobile-category-browser__rail,
html[data-theme="dark"] body.headerless-categories-page .mobile-category-pane,
html[data-theme="dark"] body.headerless-categories-page .mobile-category-leaf-card{
  box-shadow:0 14px 32px rgba(0,0,0,.16)!important;
}

@media (max-width:900px){
  body.headerless-categories-page .mobile-category-leaf-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-width:760px){
  body.headerless-categories-page .mobile-category-page{
    width:100%!important;
    max-width:none!important;
    padding:14px 12px 88px!important;
  }
  .jolfa-category-page__hero{
    margin-bottom:12px!important;
    padding:17px 16px!important;
    border-radius:18px!important;
  }
  .jolfa-category-page__hero-stat{
    min-width:76px!important;
    min-height:68px!important;
    border-radius:15px!important;
  }
  .jolfa-category-page__hero h1{
    font-size:1.08rem!important;
  }
  .jolfa-category-page__hero p{
    font-size:.69rem!important;
    line-height:1.75!important;
  }
  body.headerless-categories-page .mobile-category-browser{
    display:block!important;
  }
  body.headerless-categories-page .mobile-category-browser__rail{
    position:relative!important;
    top:auto!important;
    display:flex!important;
    flex-direction:row!important;
    gap:8px!important;
    margin:0 0 10px!important;
    padding:7px!important;
    overflow-x:auto!important;
    overscroll-behavior-inline:contain!important;
    scrollbar-width:none!important;
    border-radius:17px!important;
  }
  body.headerless-categories-page .mobile-category-browser__rail::-webkit-scrollbar{display:none!important}
  body.headerless-categories-page .mobile-category-root{
    flex:0 0 126px!important;
    width:126px!important;
    min-height:58px!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    padding:8px!important;
    border-radius:13px!important;
    scroll-snap-align:start!important;
  }
  body.headerless-categories-page .mobile-category-root__icon{
    width:34px!important;
    height:34px!important;
    border-radius:10px!important;
  }
  body.headerless-categories-page .mobile-category-root__copy strong{
    font-size:.68rem!important;
  }
  body.headerless-categories-page .mobile-category-pane{
    padding:11px!important;
    border-radius:18px!important;
  }
  body.headerless-categories-page .mobile-category-group{
    border-radius:15px!important;
  }
  body.headerless-categories-page .mobile-category-leaf-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  body.headerless-categories-page .mobile-category-leaf-card{
    padding:10px!important;
    border-radius:13px!important;
  }
}
@media (max-width:390px){
  .jolfa-category-page__hero-stat{display:none!important}
  body.headerless-categories-page .mobile-category-leaf-grid{
    grid-template-columns:1fr!important;
  }
}

/* --------------------------------------------------------------------------
   Theme transition: a single GPU-composited veil; never snapshot the page.
   -------------------------------------------------------------------------- */
html.jolfa-theme-switching *,
html.jolfa-theme-switching *::before,
html.jolfa-theme-switching *::after{
  transition:none!important;
}
html.jolfa-theme-switching{
  view-transition-name:none!important;
}
.jolfa-theme-transition-overlay{
  position:fixed!important;
  z-index:2147483646!important;
  inset:0!important;
  pointer-events:none!important;
  opacity:0;
  clip-path:none!important;
  contain:strict!important;
  transform:translateZ(0)!important;
  will-change:opacity!important;
  background:
    radial-gradient(circle at var(--jolfa-theme-x,50vw) var(--jolfa-theme-y,60px),rgba(126,232,244,.18),transparent 28vmax),
    var(--jolfa-theme-overlay,#0d1019)!important;
}
::view-transition-old(root),
::view-transition-new(root){
  animation:none!important;
}

@media (prefers-reduced-motion:reduce){
  .jolfa-theme-transition-overlay{display:none!important}
  body.headerless-categories-page .mobile-category-root,
  body.headerless-categories-page .mobile-category-leaf-card,
  body.headerless-categories-page .mobile-category-group__chevron{
    transition:none!important;
  }
}

/* Category legacy mobile-layout neutralization: the old full-viewport browser
   must not leak into the new responsive composition at tablet widths. */
body.headerless-categories-page .mobile-category-page{
  height:auto!important;
  min-height:0!important;
  display:block!important;
  background:transparent!important;
}
body.headerless-categories-page .mobile-category-browser{
  height:auto!important;
}
body.headerless-categories-page .mobile-category-browser__rail,
body.headerless-categories-page .mobile-category-browser__content{
  height:auto!important;
  min-height:0!important;
  overflow-y:visible!important;
  overscroll-behavior:auto!important;
}
body.headerless-categories-page .mobile-category-root.is-active::after{
  display:none!important;
}
body.headerless-categories-page .mobile-category-leaf-card__main{
  flex-direction:row!important;
  justify-content:flex-start!important;
  text-align:start!important;
  min-height:0!important;
  padding:0!important;
}
@media (max-width:760px){
  body.headerless-categories-page .mobile-category-browser__rail{
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }
}

/* Remove legacy animated background sizing from the redesigned price banner. */
body.has-price-update-banner .jolfa-price-update-banner,
html[data-theme="light"] body.has-price-update-banner .jolfa-price-update-banner,
html[data-theme="dark"] body.has-price-update-banner .jolfa-price-update-banner{
  background-size:auto!important;
  background-position:center!important;
}

/* During the ~270ms theme swap, suspend expensive decorative animations so the
   browser performs one palette repaint behind the compositor veil. */
html.jolfa-theme-switching body.home-page .market-amazing,
html.jolfa-theme-switching body.home-page .market-amazing::before,
html.jolfa-theme-switching body.home-page .market-amazing::after,
html.jolfa-theme-switching body.home-page .market-amazing__percent,
html.jolfa-theme-switching body.home-page .market-amazing__countdown>span{
  animation:none!important;
  filter:none!important;
  will-change:auto!important;
}


/* ==========================================================================
   2026-09 price banner scroll/sticky regression fix
   The header layout reserves --jolfa-price-banner-height and expects this
   banner to stay fixed at the viewport top. A relative banner scrolls away
   while the reserved offset remains, producing the empty strip reported on
   mobile scroll.
   ========================================================================== */
body.has-price-update-banner .jolfa-price-update-banner,
html[data-theme="light"] body.has-price-update-banner .jolfa-price-update-banner,
html[data-theme="dark"] body.has-price-update-banner .jolfa-price-update-banner{
  position:fixed!important;
  top:0!important;
  right:0!important;
  bottom:auto!important;
  left:0!important;
  width:100%!important;
  min-height:var(--jolfa-price-banner-height)!important;
  z-index:5000!important;
  display:flex!important;
  align-items:center!important;
  transform:none!important;
  translate:none!important;
  opacity:1!important;
  visibility:visible!important;
  contain:layout paint!important;
}

body.has-price-update-banner .jolfa-price-update-banner__inner{
  width:min(var(--container),calc(100% - 32px))!important;
  min-height:var(--jolfa-price-banner-height)!important;
  margin-inline:auto!important;
  padding:6px 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Keep the open mobile drawer above the notice, matching the existing drawer
   stacking contract without letting the banner cover menu content. */
body.public-nail-header.menu-open .jolfa-price-update-banner{
  z-index:4900!important;
}

/* ==========================================================================\n   2026-09 Product detail geometry v13.4\n   Keep the desktop purchase card visually aligned with the information column.\n   JS supplies --commerce-buy-box-target-height from the actual bottom of the\n   delivery card, or from the key-spec grid when delivery is absent.\n   ========================================================================== */
@media (min-width:981px){
  body.product-detail-page .commerce-product-main{
    align-items:start!important;
  }

  body.product-detail-page .commerce-buy-box{
    position:sticky!important;
    align-self:start!important;
    min-height:var(--commerce-buy-box-target-height,auto)!important;
    padding:14px!important;
    gap:10px!important;
    border:1px solid color-mix(in srgb,var(--brand-purple) 16%,var(--border))!important;
    border-radius:19px!important;
    background:
      radial-gradient(circle at 16% 8%,color-mix(in srgb,var(--brand-purple) 8%,transparent),transparent 34%),
      linear-gradient(180deg,var(--surface) 0%,color-mix(in srgb,var(--surface-soft) 70%,var(--surface)) 100%)!important;
    box-shadow:0 14px 34px rgba(28,43,68,.075)!important;
    transition:min-height .18s ease,border-color .18s ease,box-shadow .18s ease!important;
  }

  body.product-detail-page .commerce-buy-box::before{
    height:3px!important;
    inset:0 14px auto!important;
    border-radius:0 0 999px 999px!important;
    background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--brand-purple) 78%,#fff),color-mix(in srgb,var(--teal) 72%,#fff),transparent)!important;
    opacity:.85!important;
  }

  body.product-detail-page .commerce-buy-box::after{
    content:"";
    position:absolute;
    z-index:0;
    inset:auto -52px -58px auto;
    width:150px;
    height:150px;
    border-radius:50%;
    background:radial-gradient(circle,color-mix(in srgb,var(--brand-purple) 7%,transparent),transparent 68%);
    pointer-events:none;
  }

  body.product-detail-page .commerce-buy-box>*{
    position:relative;
    z-index:1;
  }

  body.product-detail-page .commerce-buy-box__price{
    flex:1 1 auto!important;
    min-height:124px!important;
    justify-content:center!important;
    margin:0!important;
    padding:17px 13px 14px!important;
    border:1px solid color-mix(in srgb,var(--brand-purple) 10%,var(--border))!important;
    border-radius:15px!important;
    background:linear-gradient(145deg,color-mix(in srgb,var(--brand-purple-soft) 42%,var(--surface)),var(--surface))!important;
    box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 80%,transparent)!important;
  }

  body.product-detail-page .commerce-buy-box__price>strong{
    font-size:1.42rem!important;
    line-height:1.35!important;
    letter-spacing:-.025em!important;
  }

  body.product-detail-page .commerce-buy-box__previous-price{
    margin-bottom:3px!important;
  }

  body.product-detail-page .commerce-low-stock-note{
    min-height:38px!important;
    margin:0!important;
    padding:7px 9px!important;
    border:1px solid color-mix(in srgb,var(--amber) 16%,var(--border))!important;
    border-radius:11px!important;
    background:color-mix(in srgb,var(--amber-soft) 58%,var(--surface))!important;
    color:color-mix(in srgb,var(--amber) 86%,var(--text))!important;
  }

  body.product-detail-page .commerce-low-stock-note.is-last-one{
    border-color:color-mix(in srgb,#e11d48 20%,var(--border))!important;
    background:color-mix(in srgb,#fff1f2 72%,var(--surface))!important;
    color:#be123c!important;
  }

  body.product-detail-page .commerce-add-form{
    margin:0!important;
  }

  body.product-detail-page .commerce-add-primary{
    min-height:52px!important;
    border-radius:13px!important;
    box-shadow:0 9px 20px color-mix(in srgb,var(--brand-purple) 19%,transparent)!important;
  }

  body.product-detail-page .commerce-buy-box .commerce-buy-detail--jolfa-warranty{
    margin-top:auto!important;
    min-height:60px!important;
    padding:11px 12px!important;
    border-radius:13px!important;
  }

  body.product-detail-page .commerce-buy-box.is-unavailable{
    justify-content:center!important;
  }
  body.product-detail-page .commerce-buy-box.is-unavailable .commerce-buy-box__unavailable{
    max-width:none!important;
    min-height:94px!important;
  }

  body.product-detail-page .commerce-delivery-line{
    min-height:52px!important;
    margin-top:11px!important;
    padding:8px 11px!important;
    gap:9px!important;
    overflow:hidden!important;
    border:1px solid color-mix(in srgb,var(--brand-purple) 20%,var(--border))!important;
    border-radius:13px!important;
    background:linear-gradient(135deg,color-mix(in srgb,var(--brand-purple-soft) 72%,var(--surface)),color-mix(in srgb,var(--teal-soft) 54%,var(--surface)))!important;
    box-shadow:0 7px 18px rgba(44,32,70,.055)!important;
  }

  body.product-detail-page .commerce-delivery-line__icon{
    width:35px!important;
    height:35px!important;
    flex:0 0 35px!important;
    border:1px solid color-mix(in srgb,var(--brand-purple) 12%,var(--border))!important;
    border-radius:10px!important;
    background:color-mix(in srgb,var(--surface) 88%,transparent)!important;
    color:var(--brand-purple)!important;
    box-shadow:0 4px 10px color-mix(in srgb,var(--brand-purple) 10%,transparent)!important;
  }

  body.product-detail-page .commerce-delivery-line>div{
    min-width:0!important;
    gap:0!important;
  }

  body.product-detail-page .commerce-delivery-line strong{
    color:var(--text)!important;
    font-size:.80rem!important;
    line-height:1.55!important;
    font-weight:900!important;
  }

  body.product-detail-page .commerce-delivery-days{
    min-width:24px!important;
    padding:1px 6px!important;
    margin-inline:2px!important;
    border-radius:999px!important;
    background:color-mix(in srgb,var(--brand-purple) 11%,var(--surface))!important;
    color:var(--brand-purple)!important;
    text-align:center!important;
  }
}

html[data-theme="dark"] body.product-detail-page .commerce-buy-box__price{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
html[data-theme="dark"] body.product-detail-page .commerce-low-stock-note.is-last-one{
  background:color-mix(in srgb,#be123c 12%,var(--surface))!important;
  color:#ff91aa!important;
}

/* ========================================================================== 
   2026-09 Product title language + compact information hierarchy v13.4
   Persian storefront title remains the primary H1; the technical subtitle is
   always Latin/English. Overview/features keep ASCII digits while technical
   specifications intentionally use localized Persian digits on FA pages.
   ========================================================================== */
body.product-detail-page .commerce-product-info .commerce-product-title-fa{
  max-width:22ch!important;
  margin:9px 0 0!important;
  font-size:clamp(1.72rem,2.35vw,2.5rem)!important;
  line-height:1.42!important;
  letter-spacing:-.025em!important;
  text-wrap:balance!important;
}
body.product-detail-page .commerce-product-info .commerce-product-title-en{
  margin:5px 0 0!important;
  color:var(--muted)!important;
  font-family:Arial,"Segoe UI",sans-serif!important;
  font-size:.82rem!important;
  font-weight:650!important;
  line-height:1.55!important;
  letter-spacing:.015em!important;
  direction:ltr!important;
  unicode-bidi:isolate!important;
  text-align:start!important;
}
html[dir="rtl"] body.product-detail-page .commerce-product-info .commerce-product-title-en{
  text-align:right!important;
}
body.product-detail-page .commerce-latin-numeric-copy{
  font-variant-numeric:lining-nums tabular-nums!important;
}
body.product-detail-page .commerce-product-features{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px 12px;
  margin:0;
  padding:0;
  list-style:none;
}
body.product-detail-page .commerce-product-features li{
  position:relative;
  min-height:44px;
  padding:10px 34px 10px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--surface-soft);
  color:var(--text);
  line-height:1.7;
}
body.product-detail-page .commerce-product-features li::before{
  content:"✓";
  position:absolute;
  inset-inline-start:12px;
  top:10px;
  color:var(--success);
  font-family:Arial,sans-serif;
  font-weight:900;
}
@media(max-width:720px){
  body.product-detail-page .commerce-product-info .commerce-product-title-fa{
    max-width:none!important;
    font-size:clamp(1.42rem,6vw,1.9rem)!important;
  }
  body.product-detail-page .commerce-product-info .commerce-product-title-en{
    font-size:.76rem!important;
  }
  body.product-detail-page .commerce-product-features{grid-template-columns:1fr;}
}


/* v13.14 focused store mega-menu: independent visible scrolling for category rail/panel. */
@media (min-width:981px){
  .nav-dropdown--commerce.open .commerce-mega-menu{
    height:min(68dvh,540px)!important;
    min-height:360px!important;
    max-height:min(68dvh,540px)!important;
  }
  .nav-dropdown--commerce.open .commerce-mega-roots,
  .nav-dropdown--commerce.open .commerce-mega-panels{
    min-height:0!important;
    max-height:100%!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior-y:contain!important;
    scrollbar-gutter:stable!important;
    scrollbar-width:thin!important;
    scrollbar-color:color-mix(in srgb,var(--primary) 38%,var(--border)) transparent!important;
  }
  .nav-dropdown--commerce.open .commerce-mega-roots::-webkit-scrollbar,
  .nav-dropdown--commerce.open .commerce-mega-panels::-webkit-scrollbar{width:8px!important}
  .nav-dropdown--commerce.open .commerce-mega-roots::-webkit-scrollbar-thumb,
  .nav-dropdown--commerce.open .commerce-mega-panels::-webkit-scrollbar-thumb{
    background:color-mix(in srgb,var(--primary) 34%,var(--border))!important;
    border:2px solid transparent!important;
    background-clip:padding-box!important;
    border-radius:999px!important;
  }
}

/* ==========================================================================
   v13.17 Product buy-box reset
   One compact assurance stack owns warranty + procurement + Shiraz courier.
   This intentionally avoids the legacy .commerce-buy-detail--jolfa-warranty
   selector, which accumulated large animated-card rules across old bundles.
   ========================================================================== */
body.product-detail-page .commerce-buy-assurance{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--brand-purple) 16%,var(--border))!important;
  border-radius:13px!important;
  background:color-mix(in srgb,var(--surface-soft) 58%,var(--surface))!important;
  box-shadow:none!important;
}
body.product-detail-page .commerce-buy-assurance__row{
  display:grid!important;
  grid-template-columns:32px minmax(0,1fr)!important;
  align-items:center!important;
  gap:9px!important;
  min-height:44px!important;
  padding:7px 10px!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.product-detail-page .commerce-buy-assurance__row + .commerce-buy-assurance__row{
  border-top:1px solid color-mix(in srgb,var(--border) 78%,transparent)!important;
}
body.product-detail-page .commerce-buy-assurance__icon{
  position:relative!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  flex:0 0 30px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:9px!important;
  background:color-mix(in srgb,var(--brand-purple) 7%,var(--surface))!important;
  color:var(--brand-purple)!important;
  box-shadow:none!important;
  line-height:1!important;
}
body.product-detail-page .commerce-buy-assurance__icon--courier{
  background:color-mix(in srgb,var(--teal) 8%,var(--surface))!important;
  color:var(--teal-strong)!important;
}
body.product-detail-page .commerce-buy-assurance__icon--courier>i{
  font-size:.88rem!important;
}
body.product-detail-page .commerce-buy-assurance__icon--warranty{
  background:transparent!important;
  overflow:visible!important;
}
body.product-detail-page .commerce-buy-assurance .commerce-warranty-icon{
  display:block!important;
  width:29px!important;
  height:29px!important;
  min-width:29px!important;
  max-width:29px!important;
  max-height:29px!important;
  object-fit:contain!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  animation:none!important;
}
body.product-detail-page .commerce-buy-assurance__copy{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:var(--text)!important;
  font-size:.75rem!important;
  font-weight:800!important;
  line-height:1.55!important;
  text-align:start!important;
}
body.product-detail-page .commerce-buy-assurance__copy strong{
  font:inherit!important;
  font-weight:950!important;
  color:var(--brand-purple)!important;
}
body.product-detail-page .commerce-assurance-days{
  display:inline!important;
  padding:0!important;
  margin:0 .12em!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--brand-purple)!important;
  font-family:"Segoe UI",Arial,Helvetica,sans-serif!important;
  font-variant-numeric:lining-nums tabular-nums!important;
  unicode-bidi:isolate!important;
}
@keyframes jolfaAssuranceTruckWrap{
  from{transform:translate(-50%,-50%) translateX(0)}
  to{transform:translate(-50%,-50%) translateX(30px)}
}
body.product-detail-page .commerce-assurance-truck-loop{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
body.product-detail-page .commerce-assurance-truck{
  position:absolute!important;
  top:50%!important;
  left:50%!important;
  width:18px!important;
  height:18px!important;
  display:grid!important;
  place-items:center!important;
  opacity:1!important;
  visibility:visible!important;
  animation:jolfaAssuranceTruckWrap 1.45s linear infinite!important;
  will-change:transform!important;
}
body.product-detail-page .commerce-assurance-truck--b{margin-left:-30px!important}
body.product-detail-page .commerce-assurance-truck>i{
  display:block!important;
  font-size:.86rem!important;
  line-height:1!important;
  opacity:1!important;
  transform:none!important;
}

/* Low-stock uses one source of truth: the inline flame SVG only. */
body.product-detail-page .commerce-low-stock-note{
  min-height:32px!important;
  margin:0!important;
  padding:2px 4px!important;
  gap:6px!important;
  justify-content:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#be123c!important;
}
body.product-detail-page .commerce-low-stock-note.is-last-one{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.product-detail-page .commerce-low-stock-symbol{
  position:relative!important;
  width:25px!important;
  height:30px!important;
  min-width:25px!important;
  flex:0 0 25px!important;
  display:inline-grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  line-height:0!important;
}
body.product-detail-page .commerce-low-stock-symbol[hidden],
body.product-detail-page .commerce-low-stock-symbol[data-state="none"]{
  display:none!important;
}
body.product-detail-page .commerce-low-stock-symbol .commerce-low-stock-flame{
  position:static!important;
  display:block!important;
  width:25px!important;
  height:30px!important;
  max-width:25px!important;
  max-height:30px!important;
  margin:0!important;
  overflow:visible!important;
}
body.product-detail-page .commerce-low-stock-note [data-low-stock-copy]{
  font-size:.72rem!important;
  line-height:1.45!important;
  font-weight:800!important;
}
body.product-detail-page .commerce-low-stock-note [data-low-stock-count]{
  color:#e11d48!important;
  font-size:.9rem!important;
  font-weight:950!important;
}

/* Undo old desktop stretching: price and assurance should size to content. */
@media (min-width:981px){
  body.product-detail-page .commerce-buy-box{
    gap:8px!important;
    padding:12px!important;
  }
  body.product-detail-page .commerce-buy-box__price{
    flex:0 0 auto!important;
    min-height:84px!important;
    padding:12px 10px!important;
    border-radius:13px!important;
  }
  body.product-detail-page .commerce-buy-box__price>strong{
    font-size:1.34rem!important;
  }
  body.product-detail-page .commerce-add-primary{
    min-height:48px!important;
    border-radius:12px!important;
  }
}
@media (max-width:980px){
  body.product-detail-page .commerce-buy-assurance{
    margin-top:8px!important;
  }
  body.product-detail-page .commerce-buy-assurance__row{
    min-height:42px!important;
    padding:7px 9px!important;
  }
  body.product-detail-page .commerce-buy-assurance__copy{
    font-size:.72rem!important;
  }
}
/* Mixed Persian/Latin key-spec runs need an explicit visual word boundary. */
body.product-detail-page .commerce-key-specs .commerce-key-specs__value > span + span{
  margin-inline-start:.24em!important;
}
