/* Beautyforest wishlist: heart toggles (card / PDP / quick-view), header count, page. */

/* ---------- Shared heart button ---------- */
.bf-wishlist-btn{
  display:inline-flex; align-items:center; gap:.5rem;
  background:none; border:0; padding:0; margin:0;
  font-family:var(--bf-font-body); font-weight:600; color:var(--bf-graphite);
  cursor:pointer; -webkit-appearance:none; appearance:none;
}
.bf-wishlist-btn__icon{ transition:fill .15s ease, color .15s ease, transform .15s ease; }
.bf-wishlist-btn:hover .bf-wishlist-btn__icon{ color:var(--bf-green); }
.bf-wishlist-btn.is-active .bf-wishlist-btn__icon{ fill:var(--bf-green); color:var(--bf-green); }
.bf-wishlist-btn:active .bf-wishlist-btn__icon{ transform:scale(.88); }
.bf-wishlist-btn.is-busy{ opacity:.6; pointer-events:none; }
.bf-wishlist-btn:focus-visible{ outline:2px solid var(--bf-green-deep); outline-offset:2px; border-radius:var(--bf-radius); }

/* ---------- Card overlay heart (top-right of the media) ---------- */
.bf-wishlist-btn--card{
  position:absolute; top:.6rem; right:.6rem; z-index:3;
  width:38px; height:38px; padding:0; justify-content:center;
  background:var(--bf-white); border:1px solid var(--bf-hairline); border-radius:50%;
  box-shadow:0 4px 12px -6px rgba(20,58,36,.35);
}
.bf-wishlist-btn--card .bf-wishlist-btn__label{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
  clip:rect(0 0 0 0); white-space:nowrap; border:0; /* SR-only */
}
.bf-wishlist-btn--card:hover{ border-color:var(--bf-green); }

/* ---------- PDP: full-width line control under add-to-cart ---------- */
.bf-wishlist-pdp{ margin:.85rem 0 0; }
.bf-wishlist-btn--pdp{
  width:100%; justify-content:center;
  padding:.7rem 1rem; border:1.5px solid var(--bf-hairline); border-radius:var(--bf-radius);
  background:var(--bf-white); font-size:var(--bf-fs-ui);
}
.bf-wishlist-btn--pdp:hover{ border-color:var(--bf-green); background:var(--bf-mint); }
.bf-wishlist-btn--pdp.is-active{ border-color:var(--bf-green); background:var(--bf-mint); }

/* ---------- Quick-view: compact heart by the title ---------- */
.bf-wishlist-btn--qv{ margin:.4rem 0 0; font-size:.9rem; color:var(--bf-stone-deep); }

/* ---------- Header count badge — matched to the mini-cart quantity badge ---------- */
.bf-wishlist__iconwrap{ position:relative; display:inline-flex; align-items:center; }
.bf-wishlist__count{
  position:absolute; left:100%; margin-left:-44%; transform:translateY(-50%); z-index:1;
  display:flex; align-items:center; justify-content:center;
  min-width:18px; height:18px; padding:0 4px; box-sizing:border-box;
  border-radius:999px; background:#2faa5a; color:#fff;
  font-size:11px; font-weight:700; line-height:1; white-space:nowrap;
  box-shadow:0 0 0 2px #fafbf8;
}
.bf-wishlist__count.is-empty{ display:none; }

/* ---------- Wishlist page product grid — mirrors the category archive grid ---------- */
.bf-wishlist-page.woocommerce ul.products{
  display:grid !important; clear:both;
  grid-template-columns:repeat(auto-fit,minmax(220px,260px));
  justify-content:start; gap:1.25rem;
  margin:0 0 2rem !important; padding:0 !important; list-style:none;
}
.bf-wishlist-page ul.products::before,
.bf-wishlist-page ul.products::after{ content:none !important; }
.bf-wishlist-page ul.products li.product{
  float:none !important; width:auto !important; margin:0 !important; padding:0 !important;
}

/* ---------- /wishlist/ page ---------- */
.bf-wishlist-page{ margin:0 0 2rem; }
.bf-wishlist-empty{
  text-align:center; padding:clamp(2.5rem,7vw,5rem) 1.25rem; color:var(--bf-stone-deep);
}
.bf-wishlist-empty svg{ color:var(--bf-green); margin:0 0 1rem; }
.bf-wishlist-empty h2{
  font-family:var(--bf-font-head); font-weight:var(--bf-fw-head); color:var(--bf-graphite);
  font-size:clamp(1.4rem,3vw,2rem); margin:0 0 .5rem;
}
.bf-wishlist-empty p{ margin:0 0 1.5rem; }
