/* SFL Boutique Price – badges + stacked prices (XStore grid & Quick-View ready) */

/* ---- Positioning contexts ---- */
.product .product-thumbnail,
.product .product-image,
.product .product-content-image,
.product .woocommerce-product-gallery,
.product-image-wrapper,
.etheme-quick-view .woocommerce-product-gallery,
.etheme-quick-view .product-images,
.etheme-woopanel .product-images,
.single-product .product-images{ position:relative; }

/* ---- Corner badges (top-right under wishlist) ---- */
:root{ --sfl-badges-top-offset: 3.0rem; } /* adjust for your wishlist icon height */
.sfl-corner-badges{
  position:absolute; top:var(--sfl-badges-top-offset); right:.6rem; z-index:60;
  display:flex; flex-direction:column; gap:.35rem; pointer-events:none;
}
.rtl .sfl-corner-badges{ left:.6rem; right:auto; }

.sfl-off-badge{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:60px; height:26px; padding:0 10px;
  border-radius:999px;
  background:#ef2d2d; color:#fff; font-size:12.5px; font-weight:800;
  line-height:1; border:1px solid color-mix(in oklab, #ef2d2d 75%, #0000);
}
.sfl-cond-badge{
  display:inline-block;
  padding:5px 10px; border-radius:6px; font-size:10px; font-weight:800;
  text-transform:uppercase; letter-spacing:.05em;
  background:#222; color:#fff;
}

/* ---- Stacked prices (cards/grid) ---- */
.sfl-price-stack{
  display:grid; grid-template-columns:1fr auto;
  row-gap:6px; align-items:baseline;
  margin-top:.25rem;
}
.sfl-price-stack .sfl-line{ display:contents; line-height:1.35; font-size:.95em; }
.sfl-price-stack .sfl-label{ text-transform:lowercase; color:#666; font-size:10.5px; font-weight:600; }
.sfl-price-stack .amount{ justify-self:end; font-weight:700; white-space:nowrap; }
.sfl-price-stack .sfl-regular .amount{ color:#222; }
.sfl-price-stack .sfl-sale    .amount{ color:#d12f2f; font-size:1.15em; font-weight:800; }
.sfl-price-stack .sfl-boutique .amount{ color:#b38e5d; }

/* ---- PDP small line ---- */
.sfl-boutique-price-pdp{ margin:0 0 6px; line-height:1.3; }
.sfl-boutique-price-pdp small{ color:#666; }
.sfl-boutique-price-pdp span{ color:#b38e5d; }

/* ---- Quick-View price: boutique chip appended inside <p class="price"> ---- */
.etheme-quick-view .price .sfl-boutique-chip,
.etheme-woopanel .price .sfl-boutique-chip{
  display:block; margin-top:6px; line-height:1.3;
}
.etheme-quick-view .price .sfl-boutique-chip small,
.etheme-woopanel .price .sfl-boutique-chip small{ color:#666; }
.etheme-quick-view .price .sfl-boutique-chip .amount,
.etheme-woopanel .price .sfl-boutique-chip .amount{ color:#b38e5d; font-weight:700; }

/* Optional: Boutique line under title in grid/list */
.sfl-boutique-line-grid{ margin-top:.35rem; line-height:1.2; }
.sfl-boutique-line-grid small{ color:#666; }
.sfl-boutique-line-grid .amount{ color:#b38e5d; font-weight:700; }

/* Small screens tweak */
@media (max-width:480px){
  .sfl-off-badge{ min-width:56px; height:24px; font-size:12px; padding:0 9px; }
}

/* ... keep your existing declarations ... */

/* Corner badges (top-right under wishlist) */
:root{ --sfl-badges-top-offset: 3.2rem; }
.sfl-corner-badges{
  position:absolute; top:var(--sfl-badges-top-offset); right:.6rem;
  z-index:999; /* raise above theme overlays */
  display:flex; flex-direction:column; gap:.35rem; pointer-events:none;
}
