.iep-animated {
  opacity: 0;
  transform: scale(1);
  transition: all 0.5s ease;
}

.iep-visible {
  opacity: 1;
}

/* Existing Effects */
.iep-zoom-in.iep-visible {
  transform: scale(1);
  animation: iepZoomInCenter 0.5s ease-out;
}

.iep-zoom-out.iep-visible {
  animation: iepZoomOutCenter 0.6s ease-in-out;
}

.iep-pulse.iep-visible {
  animation: iepPulse 0.6s ease-in-out;
}

.iep-shake.iep-visible {
  animation: iepShake 0.5s ease-in-out;
}

/* New Effects */
.iep-rotate.iep-visible {
  animation: iepRotate 0.5s ease-in-out;
}

.iep-slide-left.iep-visible {
  animation: iepSlideLeft 0.6s ease-out;
}

.iep-slide-right.iep-visible {
  animation: iepSlideRight 0.6s ease-out;
}

.iep-slide-up.iep-visible {
  animation: iepSlideUp 0.6s ease-out;
}

.iep-slide-down.iep-visible {
  animation: iepSlideDown 0.6s ease-out;
}

.iep-fade-in.iep-visible {
  animation: iepFadeIn 1s ease-in;
}

.iep-bounce.iep-visible {
  animation: iepBounce 0.8s ease;
}

.iep-blur-in.iep-visible {
  animation: iepBlurIn 0.8s ease-in-out;
  filter: blur(0);
}

/* Keyframes */
@keyframes iepZoomInCenter {
  0% { transform: scale(0); }
  100% { transform: scale(1); }
}

@keyframes iepZoomOutCenter {
  0% { transform: scale(1); }
  50% { transform: scale(0); }
  100% { transform: scale(1); }
}

@keyframes iepPulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.05); }
  100% { transform: scale(1); }
}

@keyframes iepShake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-5px); }
  50% { transform: translateX(5px); }
  75% { transform: translateX(-5px); }
}

@keyframes iepRotate {
  0% { transform: rotate(-10deg); opacity: 0; }
  100% { transform: rotate(0); opacity: 1; }
}

@keyframes iepSlideLeft {
  0% { transform: translateX(-100px); opacity: 0; }
  100% { transform: translateX(0); opacity: 1; }
}

@keyframes iepSlideRight {
  0% { transform: translateX(100px); opacity: 0; }
  100% { transform: translateX(0); opacity: 1; }
}

@keyframes iepSlideUp {
  0% { transform: translateY(-100px); opacity: 0; }
  100% { transform: translateY(0); opacity: 1; }
}

@keyframes iepSlideDown {
  0% { transform: translateY(100px); opacity: 0; }
  100% { transform: translateY(0); opacity: 1; }
}

@keyframes iepFadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes iepBounce {
  0% { transform: scale(0.8); opacity: 0; }
  60% { transform: scale(1.05); opacity: 1; }
  100% { transform: scale(1); }
}

@keyframes iepBlurIn {
  0% { filter: blur(8px); opacity: 0; }
  100% { filter: blur(0); opacity: 1; }
}
