/* Custom keyframe animations for auth pages */

@keyframes pulse-ring {
    0% {
        transform: scale(0.8);
        box-shadow: 0 0 0 0 rgba(14, 165, 233, 0.7);
    }
    70% {
        transform: scale(1);
        box-shadow: 0 0 0 20px rgba(14, 165, 233, 0);
    }
    100% {
        transform: scale(0.8);
        box-shadow: 0 0 0 0 rgba(14, 165, 233, 0);
    }
}

.animate-pulse-ring {
    animation: pulse-ring 2.5s infinite cubic-bezier(0.215, 0.61, 0.355, 1);
}

@keyframes bounce-subtle {
    0%, 100% {
        transform: translateY(-5%);
        animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
    }
    50% {
        transform: translateY(0);
        animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    }
}

.animate-bounce-subtle {
    animation: bounce-subtle 2s infinite;
}

/* Utility class for animation delay on decorative blobs */
.animation-delay-blob {
    animation-delay: -5s;
}
