/**
 * Animation styles - All animations and transitions
 */

/* Fade in animation */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Shimmer effect animation */
@keyframes shimmer {
    0% {
        opacity: 0.5;
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0.5;
    }
}

/* Spinner animation */
@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* Pulse animation */
@keyframes pulse {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
    100% {
        transform: scale(1);
    }
}

/* Glow animation */
@keyframes glow {
    0% {
        box-shadow: 0 0 10px var(--subtle-glow);
    }
    50% {
        box-shadow: 0 0 20px var(--subtle-glow);
    }
    100% {
        box-shadow: 0 0 10px var(--subtle-glow);
    }
}

/* Float animation */
@keyframes float {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
    100% {
        transform: translateY(0);
    }
}

/* Animation for script cards */
.animate-script-card {
    animation: fadeIn 0.6s var(--transition-normal) forwards;
}

/* Animation classes */
.animate-pulse {
    animation: pulse 2s infinite;
}

.animate-glow {
    animation: glow 3s infinite;
}

.animate-float {
    animation: float 6s ease-in-out infinite;
}