@charset "utf-8";

/* ====== Recently viewed (geïsoleerd) ====== */
.rv { --rv-radius: 12px; --rv-shadow: 0 10px 30px rgba(0,0,0,.07); }
.rv-title { font-weight: 700; }

.rv-card{
  position: relative;
  background:#fff;
  border-radius:var(--rv-radius);
  box-shadow:var(--rv-shadow);
  overflow:hidden;
  transition:transform .25s ease, box-shadow .25s ease;
  height:100%;
}
.rv-card:hover{ transform:translateY(-6px); box-shadow:0 16px 40px rgba(0,0,0,.12); }

.rv-img{ display:block; aspect-ratio:4/3; overflow:hidden; background:#f6f7f9; }
.rv-img img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
.rv-card:hover .rv-img img{ transform:scale(1.03); }

/* Hartje: los icoon (geen cirkel) */
.rv-heart{
  position:absolute; top:.5rem; right:.5rem;
  background:transparent; border:0; padding:.1rem;
  color:#ff2e63; font-size:1.35rem; line-height:1; cursor:pointer;
}
.rv-heart .bi-heart-fill{ color:#ff2e63; }
.rv-heart.active .bi-heart{ display:none; }
.rv-heart:not(.active) .bi-heart-fill{ display:none; }

/* Info (titel/prijs) compacter + subtiel omhoog op hover */
.rv-info{ padding:.75rem .85rem .9rem; background:#fff; transition:transform .25s ease; }
.rv-card:hover .rv-info{ transform:translateY(-4px); }

.rv-name{
  display:block; font-weight:600; color:#222; text-decoration:none; margin-bottom:.15rem;
}
.rv-price{ font-weight:700; color:#222; margin-bottom:.35rem; }

/* Add to cart: verschijnt enkel op hover */
.rv-add.btn{
  --bs-btn-padding-y: .4rem;
  --bs-btn-padding-x: .75rem;
  --bs-btn-font-size: .9rem;
  border-radius:9px;
  opacity:0; transform:translateY(6px);
  transition:opacity .2s ease, transform .2s ease;
}
.rv-card:hover .rv-add{ opacity:1; transform:translateY(0); }

/* Hulp: wrapper verbergen wanneer leeg */
.rv-hidden{ display:none !important; }

