/* ===== Animations ===== */

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

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

/* Pulse border glow animation */
@keyframes pulse-border-glow {
    0% {
        box-shadow: 0 0 5px rgba(0, 255, 255, 0.5);
    }
    50% {
        box-shadow: 0 0 10px rgba(0, 255, 255, 0.7), 0 0 15px rgba(0, 255, 255, 0.4);
    }
    100% {
        box-shadow: 0 0 5px rgba(0, 255, 255, 0.5);
    }
}

/* Typing animation for chat messages */
@keyframes typing {
    from { 
        width: 0; 
    }
    to { 
        width: 100%; 
    }
}

/* Counter increment animation */
@keyframes countUp {
    from {
        transform: scale(0.9);
        opacity: 0.8;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

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

/* Glow animation */
@keyframes glow {
    0% {
        text-shadow: 0 0 5px rgba(99, 102, 241, 0.7), 0 0 10px rgba(99, 102, 241, 0.4);
    }
    50% {
        text-shadow: 0 0 10px rgba(99, 102, 241, 0.9), 0 0 20px rgba(99, 102, 241, 0.6);
    }
    100% {
        text-shadow: 0 0 5px rgba(99, 102, 241, 0.7), 0 0 10px rgba(99, 102, 241, 0.4);
    }
} 