/**
 * Korg Animated Illustration Widget Styles
 */

.korg-animated-illustration-wrap {
  position: relative;
  display: flex;
  width: 100%;
  box-sizing: border-box;
}

.korg-animated-illustration-wrap.align-left {
  justify-content: flex-start;
}

.korg-animated-illustration-wrap.align-center {
  justify-content: center;
}

.korg-animated-illustration-wrap.align-right {
  justify-content: flex-end;
}

.korg-animated-illustration-wrap svg {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Preset Keyframe Animations */
@keyframes korgFloatY {
  0%, 100% {
    transform: translateY(0);
  }
  45% {
    transform: translateY(var(--korg-anim-distance, -8px));
  }
  80% {
    transform: translateY(calc(var(--korg-anim-distance, -8px) * -0.25));
  }
}

@keyframes korgFloatX {
  0%, 100% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(var(--korg-anim-distance, -8px));
  }
}

@keyframes korgPulse {
  0%, 100% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.06);
    opacity: 0.85;
  }
}

@keyframes korgRotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes korgGlow {
  0%, 100% {
    filter: drop-shadow(0 0 4px rgba(59, 93, 255, 0.4));
  }
  50% {
    filter: drop-shadow(0 0 16px rgba(59, 93, 255, 0.9));
  }
}

.korg-svg-anim-float-y {
  animation: korgFloatY var(--korg-anim-duration, 4s) var(--korg-anim-ease, ease-in-out) infinite;
  transform-origin: center center;
  will-change: transform;
}

.korg-svg-anim-float-x {
  animation: korgFloatX var(--korg-anim-duration, 4s) var(--korg-anim-ease, ease-in-out) infinite;
  transform-origin: center center;
  will-change: transform;
}

.korg-svg-anim-pulse {
  animation: korgPulse var(--korg-anim-duration, 3s) var(--korg-anim-ease, ease-in-out) infinite;
  transform-origin: center center;
  will-change: transform, opacity;
}

.korg-svg-anim-rotate {
  animation: korgRotate var(--korg-anim-duration, 8s) linear infinite;
  transform-origin: center center;
  will-change: transform;
}

.korg-svg-anim-glow {
  animation: korgGlow var(--korg-anim-duration, 3s) ease-in-out infinite;
  will-change: filter;
}
