/* Storefront helpers only — does not change the existing site design */
.fk-cart-fab{position:fixed;z-index:80;left:1rem;bottom:1rem;display:none;align-items:center;gap:.55rem;min-height:46px;padding:.55rem .85rem;color:#fff;background:var(--fk-primary,#F59E0B);border:1px solid rgba(255,255,255,.45);border-radius:999px;box-shadow:-3px -3px 8px rgba(255,255,255,.74),4px 4px 10px rgba(185,123,16,.22);text-decoration:none;font-size:.75rem;font-weight:900;animation:fkFabIn .24s ease both}.fk-cart-fab.is-visible{display:inline-flex}.fk-cart-fab b{min-width:22px;height:22px;padding-inline:.25rem;border-radius:999px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.22);font-size:.68rem}@keyframes fkFabIn{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
.fk-store-toast{position:fixed;z-index:90;right:50%;bottom:5.2rem;transform:translateX(50%) translateY(10px);padding:.65rem .8rem;background:#1f2937;color:#fff;border-radius:.9rem;font-size:.7rem;opacity:0;pointer-events:none;transition:.22s ease;box-shadow:0 8px 24px rgba(31,41,55,.18)}.fk-store-toast.show{opacity:1;transform:translateX(50%) translateY(0)}
.fk-subscription-mini-badge{display:inline-flex;align-items:center;gap:.28rem;margin-top:.35rem;padding:.27rem .48rem;border-radius:999px;background:rgba(22,163,74,.10);border:1px solid rgba(22,163,74,.12);color:#15803d;font-size:.6rem;font-weight:900;width:max-content;max-width:100%;text-decoration:none}.product-subscription-box{margin-top:.7rem;padding:.7rem .8rem;background:var(--fk-surface,#EEF1F4);border:var(--fk-border-soft,1px solid rgba(255,255,255,.72));border-radius:1rem;box-shadow:-3px -3px 8px rgba(255,255,255,.86),3px 3px 8px rgba(163,170,179,.15)}.product-subscription-box strong{display:block;color:#15803d;font-size:.75rem}.product-subscription-box p{margin:.2rem 0 0;color:#6B7280;font-size:.62rem;line-height:1.8}.product-subscription-box a{display:inline-flex;margin-top:.35rem;color:var(--fk-primary,#F59E0B);font-size:.64rem;font-weight:900;text-decoration:none}.fk-online-limit-hint{margin:-.45rem 0 0;color:#6B7280;font-size:.62rem;line-height:1.8;text-align:right}
@media(max-width:767px){.fk-cart-fab{left:.75rem;bottom:6.15rem}.fk-store-toast{bottom:9.6rem;width:calc(100% - 2rem);text-align:center}}


/* ========================================
   Home subscription entry point
   Uses the exact storefront palette/surfaces
======================================== */
.home-subscription-promo { margin-top:1rem; }
.home-subscription-card {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);
  align-items:center;
  gap:1rem;
  padding:1.15rem 1.25rem;
  background:linear-gradient(135deg, rgba(242,147,24,.075), rgba(255,255,255,.98) 58%, rgba(242,147,24,.035));
  border:1px solid rgba(242,147,24,.18);
  border-radius:1.75rem;
  box-shadow:-4px -4px 10px rgba(255,255,255,.96),4px 4px 10px rgba(218,213,206,.30);
  overflow:hidden;
}
.home-subscription-content { min-width:0; }
.home-subscription-eyebrow {
  display:inline-flex;align-items:center;min-height:28px;padding:.3rem .65rem;border-radius:999px;
  color:#c96f08;background:rgba(242,147,24,.11);border:1px solid rgba(242,147,24,.18);
  font-size:.67rem;font-weight:900;
}
.home-subscription-content h2 { margin:.65rem 0 .3rem;color:var(--text-primary,#1F2533);font-size:1.2rem;line-height:1.8;font-weight:900; }
.home-subscription-content > p { max-width:720px;margin:0;color:var(--text-muted,#9AA1AC);font-size:.72rem;line-height:2; }
.home-subscription-features { display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;margin-top:.75rem; }
.home-subscription-features span {
  display:inline-flex;align-items:center;gap:.32rem;min-height:32px;padding:.34rem .58rem;
  color:var(--text-secondary,#5F6673);background:var(--surface,#fff);border:1px solid rgba(238,233,227,.92);
  border-radius:.85rem;box-shadow:-2px -2px 6px rgba(255,255,255,.92),2px 2px 6px rgba(218,213,206,.24);
  font-size:.63rem;font-weight:800;
}
.home-subscription-features svg { width:15px;height:15px;color:var(--secondary,#1F9D55); }
.home-subscription-action {
  display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:42px;margin-top:.85rem;padding:.55rem .9rem;
  color:#fff;background:var(--primary,#F29318);border:1px solid rgba(255,255,255,.35);border-radius:.9rem;
  box-shadow:-2px -2px 6px rgba(255,255,255,.78),3px 3px 8px rgba(242,147,24,.20);
  text-decoration:none;font-size:.72rem;font-weight:900;transition:transform .2s ease,filter .2s ease;
}
.home-subscription-action:hover { transform:translateY(-1px);filter:brightness(.98); }
.home-subscription-action svg { width:17px;height:17px; }
.home-subscription-visual {
  min-height:150px;padding:.9rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;
  background:var(--surface,#fff);border:1px solid rgba(238,233,227,.92);border-radius:1.35rem;
  box-shadow:inset -2px -2px 6px rgba(255,255,255,.90),inset 2px 2px 6px rgba(218,213,206,.22);
}
.home-subscription-discount { display:flex;flex-direction:column;align-items:center;justify-content:center;width:92px;height:92px;border-radius:50%;background:rgba(242,147,24,.12);border:1px solid rgba(242,147,24,.20);color:#c96f08; }
.home-subscription-discount strong { font-size:1.55rem;font-weight:900;line-height:1.1; }
.home-subscription-discount span { margin-top:.15rem;font-size:.58rem;font-weight:800; }
.home-subscription-schedule { display:flex;gap:.35rem;flex-wrap:wrap;justify-content:center; }
.home-subscription-schedule span { padding:.28rem .45rem;border-radius:.65rem;background:var(--surface,#fff);border:1px solid rgba(238,233,227,.92);font-size:.56rem;color:var(--text-muted,#9AA1AC);box-shadow:-1px -1px 4px rgba(255,255,255,.9),1px 1px 4px rgba(218,213,206,.20); }
.home-subscription-schedule span.is-active { color:#fff;background:var(--secondary,#1F9D55);border-color:rgba(31,157,85,.2); }
.fk-subscription-menu-item { position:relative; }
.fk-subscription-menu-item > span { margin-right:auto;padding:.16rem .38rem;border-radius:999px;background:rgba(31,157,85,.10);color:#178347;font-size:.5rem;font-weight:900;white-space:nowrap; }

@media(max-width:767px){
  .home-subscription-promo { margin-top:.75rem; }
  .home-subscription-card { grid-template-columns:1fr;padding:.9rem;border-radius:1.35rem; }
  .home-subscription-content h2 { font-size:1rem; }
  .home-subscription-content > p { font-size:.66rem; }
  .home-subscription-visual { min-height:auto;display:grid;grid-template-columns:auto 1fr;align-items:center;padding:.75rem; }
  .home-subscription-discount { width:76px;height:76px; }
  .home-subscription-discount strong { font-size:1.28rem; }
  .home-subscription-action { width:100%;box-sizing:border-box; }
}
@media(max-width:390px){
  .home-subscription-card { padding:.75rem; }
  .home-subscription-features { display:grid;grid-template-columns:1fr 1fr; }
  .home-subscription-features span:last-child { grid-column:1/-1; }
  .home-subscription-visual { grid-template-columns:1fr; }
}


/* ========================================
   Minimal storefront refinements
   Color-only subscription changes + verified bakery
   No responsive/breakpoint changes
======================================== */
.fk-subscription-menu-item:hover {
  background-color: rgba(242, 147, 24, .10) !important;
  color: var(--primary, #F29318) !important;
}

.fk-subscription-menu-item:hover > svg,
.fk-subscription-menu-item:hover > a {
  color: var(--primary, #F29318) !important;
}

.fk-subscription-menu-item:hover > span {
  background: rgba(31, 157, 85, .10) !important;
  color: #178347 !important;
}

.product-bakery-verified {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .35rem;
  margin-top: .45rem;
  color: var(--fk-muted, #6B7280);
  font-size: .72rem;
  line-height: 1.8;
}

.product-bakery-verified__label {
  color: var(--fk-muted, #6B7280);
}

.product-bakery-verified__name {
  color: var(--fk-text, #1F2937);
  font-weight: 900;
  text-decoration: none;
}

.product-bakery-verified__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.05rem;
  height: 1.05rem;
  color: #fff;
  background: #1D9BF0;
  border-radius: 50%;
  box-shadow: 0 2px 5px rgba(29, 155, 240, .22);
  flex: 0 0 auto;
}

.product-bakery-verified__badge svg {
  width: .68rem;
  height: .68rem;
}

.product-bakery-verified__approved {
  color: #6B7280;
  font-size: .62rem;
}

/* ========================================
   Subscription discount emphasis
   هماهنگ با نشان اشتراک نانوایی‌ها
======================================== */
.home-subscription-feature-discount {
  color: #15803d !important;
  border-color: rgba(22, 163, 74, .18) !important;
  background: rgba(22, 163, 74, .08) !important;
  font-weight: 950 !important;
}

.home-subscription-feature-discount svg {
  color: #15803d !important;
}

.home-subscription-discount {
  color: #15803d !important;
  background: rgba(22, 163, 74, .10) !important;
  border-color: rgba(22, 163, 74, .18) !important;
}

.home-subscription-discount strong {
  font-weight: 950 !important;
  color: #15803d !important;
}

.home-subscription-discount span {
  color: #15803d !important;
  font-weight: 900 !important;
}


/* ========================================
   Weekly Subscription Banner — Image Version
   Scoped only to the home subscription section
======================================== */

.home-subscription-image-section {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;

  opacity: 0;
  transform: translateY(18px);

  transition:
    opacity .7s cubic-bezier(.22, 1, .36, 1),
    transform .7s cubic-bezier(.22, 1, .36, 1);
}

.home-subscription-image-section.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.home-subscription-image-shell {
  width: 100%;
  max-width: 100%;

  display: flex;
  flex-direction: column;
  align-items: center;

  padding: 1rem;

  background: var(--surface, #ffffff);
  border: 1px solid var(--border, #eee9e3);
  border-radius: 1.75rem;

  box-shadow:
    -5px -5px 12px rgba(255, 255, 255, .95),
    5px 5px 12px rgba(218, 213, 206, .28);

  overflow: hidden;
}

.home-subscription-image-link {
  position: relative;

  display: block;

  width: min(100%, 47rem);

  border-radius: 1.45rem;
  overflow: hidden;

  background: transparent;

  transform: translateZ(0);

  transition:
    transform .35s cubic-bezier(.22, 1, .36, 1),
    filter .35s ease,
    box-shadow .35s ease;
}

.home-subscription-image-link:hover {
  transform: translateY(-3px) scale(1.006);

  box-shadow:
    0 12px 28px rgba(55, 65, 81, .10);
}

.home-subscription-image-link:active {
  transform: scale(.995);
}

.home-subscription-image {
  display: block;

  width: 100%;
  height: auto;
  max-width: 100%;

  object-fit: contain;
  object-position: center;

  border: 0;
  border-radius: inherit;

  animation: fkSubscriptionBannerFloat 7s ease-in-out infinite;
  will-change: transform;
}

.home-subscription-image-hint {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;

  margin-top: .75rem;
  padding: .42rem .72rem;

  color: var(--text-muted, #9AA1AC);
  background: var(--surface, #fff);

  border: 1px solid var(--border, #eee9e3);
  border-radius: 999px;

  box-shadow:
    -2px -2px 6px rgba(255, 255, 255, .92),
    2px 2px 6px rgba(218, 213, 206, .20);

  font-size: .62rem;
  font-weight: 800;
}

.home-subscription-image-hint-dot {
  width: .42rem;
  height: .42rem;

  background: var(--secondary, #1F9D55);
  border-radius: 50%;

  box-shadow: 0 0 0 4px rgba(31, 157, 85, .09);
}

@keyframes fkSubscriptionBannerFloat {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }
}


/* Tablet */
@media screen and (max-width: 1023px) {
  .home-subscription-image-section {
    margin-top: 1rem;
    margin-bottom: 1rem;
  }

  .home-subscription-image-shell {
    padding: .85rem;
    border-radius: 1.5rem;
  }

  .home-subscription-image-link {
    width: min(100%, 39rem);
    border-radius: 1.25rem;
  }
}


/* Mobile */
@media screen and (max-width: 767px) {
  .home-subscription-image-section {
    margin-top: .85rem;
    margin-bottom: 1rem;
  }

  .home-subscription-image-shell {
    padding: .65rem;

    border-radius: 1.3rem;

    box-shadow:
      -3px -3px 8px rgba(255, 255, 255, .92),
      3px 3px 8px rgba(218, 213, 206, .20);
  }

  .home-subscription-image-link {
    width: 100%;
    border-radius: 1.05rem;
  }

  .home-subscription-image {
    width: 100%;
    height: auto;

    object-fit: contain;
  }

  .home-subscription-image-hint {
    width: auto;
    max-width: calc(100% - 1rem);

    margin-top: .55rem;
    padding: .38rem .62rem;

    font-size: .58rem;
    line-height: 1.7;
    text-align: center;
  }
}


/* Small mobile */
@media screen and (max-width: 390px) {
  .home-subscription-image-section {
    margin-top: .7rem;
  }

  .home-subscription-image-shell {
    padding: .5rem;
    border-radius: 1.15rem;
  }

  .home-subscription-image-link {
    border-radius: .95rem;
  }

  .home-subscription-image-hint {
    max-width: 100%;
    font-size: .54rem;
  }
}


/* Very small mobile */
@media screen and (max-width: 340px) {
  .home-subscription-image-shell {
    padding: .4rem;
  }

  .home-subscription-image-hint {
    padding-right: .5rem;
    padding-left: .5rem;
    font-size: .51rem;
  }
}


/* Accessibility */
@media (prefers-reduced-motion: reduce) {
  .home-subscription-image-section,
  .home-subscription-image-link,
  .home-subscription-image {
    transition: none !important;
    animation: none !important;
    transform: none !important;
  }

  .home-subscription-image-section {
    opacity: 1 !important;
  }
}


/* Subscription CTA - scoped */
.home-subscription-buy-button {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  width:min(100%,20rem);
  min-height:3rem;
  margin:.85rem auto 0;
  padding:.7rem 1.2rem;
  color:#fff;
  background:var(--primary,#f29318);
  border-radius:1rem;
  font-size:.85rem;
  font-weight:900;
  box-shadow:0 8px 18px rgba(242,147,24,.22);
  transition:transform .2s ease,filter .2s ease;
}
.home-subscription-buy-button:hover { transform:translateY(-2px); filter:brightness(.98); }
.home-subscription-buy-button svg { width:1rem;height:1rem; }

.shop-product-price {
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:.25rem;
  margin-top:.35rem;
  color:var(--primary,#f29318);
}
.shop-product-price strong {
  font-size:.85rem;
  font-weight:900;
}
.shop-product-price span {
  font-size:.58rem;
  font-weight:700;
  color:var(--text-muted,#9aa1ac);
}

@media screen and (max-width:767px){
 .home-subscription-buy-button{
   min-height:2.7rem;
   font-size:.75rem;
 }
 .shop-product-price strong{font-size:.72rem;}
 .shop-product-price span{font-size:.52rem;}
}
