/* /css/animations.css */

@keyframes shimmer {
    0% {
        background-position: 200% 0;
    }

    100% {
        background-position: -200% 0;
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(12px) scale(0.985);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes slideInRight {
    from {
        opacity: 0;
        transform: translateX(24px) scale(0.985);
    }

    to {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

.animate-fade-in {
    animation: fadeIn 0.32s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

.animate-slide-in-right {
    animation: slideInRight 0.32s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

/* Prevent flicker: hide elements with data-animation by default */
/* They will be shown by the JS animation engine */
[data-animation]:not([data-no-animation="true"]):not([data-animated]) {
    opacity: 0;
}

@media (prefers-reduced-motion: reduce) {

    [data-animation],
    .animate-fade-in,
    .animate-slide-in-right {
        opacity: 1 !important;
        transform: none !important;
        filter: none !important;
        transition: none !important;
        animation: none !important;
    }
}