/* KAZIO WISHLIST REAL ADD V4 - real ajax + heart, safe */

.kz-wishlist-heart-fly-v4 {
  position: fixed !important;
  z-index: 2147483647 !important;
  pointer-events: none !important;
  width: 30px !important;
  height: 30px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 25px !important;
  line-height: 1 !important;
  color: #ef233c !important;
  text-shadow: 0 10px 26px rgba(239, 35, 60, .36) !important;
  filter: drop-shadow(0 8px 16px rgba(239, 35, 60, .24)) !important;
  transform-origin: center center !important;
  will-change: transform, opacity !important;
}

.kz-wishlist-target-pop-v4 {
  animation: kzWishlistTargetPopV4 .72s cubic-bezier(.18,.85,.24,1) both !important;
}

@keyframes kzWishlistTargetPopV4 {
  0% { transform: scale(1); }
  34% { transform: scale(1.14); box-shadow: 0 0 0 9px rgba(239, 35, 60, .13); }
  62% { transform: scale(.97); }
  100% { transform: scale(1); box-shadow: 0 0 0 rgba(239, 35, 60, 0); }
}

.kz-wishlist-heart-pop-v4 {
  position: fixed !important;
  z-index: 2147483647 !important;
  pointer-events: none !important;
  width: 26px !important;
  height: 26px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 21px !important;
  line-height: 1 !important;
  color: #ef233c !important;
  text-shadow: 0 8px 20px rgba(239, 35, 60, .34) !important;
  animation: kzWishlistHeartPopV4 .95s cubic-bezier(.18,.85,.22,1) forwards !important;
}

@keyframes kzWishlistHeartPopV4 {
  0% { transform: translate3d(0,0,0) scale(.2) rotate(0deg); opacity: 0; }
  20% { transform: translate3d(0,-10px,0) scale(1.22) rotate(-8deg); opacity: 1; }
  55% { transform: translate3d(var(--kz-x), var(--kz-y), 0) scale(1); opacity: .95; }
  100% { transform: translate3d(calc(var(--kz-x) * 1.3), calc(var(--kz-y) - 20px), 0) scale(.45) rotate(var(--kz-r)); opacity: 0; }
}

.kz-wishlist-count-badge-v4 {
  position: absolute !important;
  top: -7px !important;
  left: -8px !important;
  min-width: 21px !important;
  height: 21px !important;
  padding: 0 6px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ef233c !important;
  color: #fff !important;
  border: 2px solid #fff !important;
  box-shadow: 0 10px 22px rgba(239, 35, 60, .28) !important;
  font-family: Vazirmatn, Tahoma, sans-serif !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  z-index: 5 !important;
  pointer-events: none !important;
}

.kz-wishlist-count-bump-v4 {
  animation: kzWishlistCountBumpV4 .55s cubic-bezier(.18,.85,.24,1) both !important;
}

@keyframes kzWishlistCountBumpV4 {
  0% { transform: scale(1); }
  35% { transform: scale(1.32); }
  70% { transform: scale(.94); }
  100% { transform: scale(1); }
}

.kz-wishlist-toast-v4 {
  position: fixed !important;
  z-index: 2147483647 !important;
  top: 86px !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(-12px) scale(.96) !important;
  min-width: 280px !important;
  max-width: min(520px, calc(100vw - 32px)) !important;
  padding: 16px 18px !important;
  border-radius: 22px !important;
  background: #ffffff !important;
  border: 1px solid #dceae2 !important;
  box-shadow: 0 20px 50px rgba(6, 34, 26, .15) !important;
  color: #253238 !important;
  font-family: Vazirmatn, Tahoma, sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.9 !important;
  text-align: center !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .25s ease, transform .25s ease !important;
}

.kz-wishlist-toast-v4.is-visible {
  opacity: 1 !important;
  transform: translateX(-50%) translateY(0) scale(1) !important;
}

.kz-wishlist-toast-v4::before {
  content: "❤";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin-left: 10px;
  border-radius: 999px;
  background: #fff1f3;
  color: #ef233c;
  vertical-align: middle;
}
