/* Alert Styles */
.alert {
    @apply fixed z-50 px-4 py-3 transition-all duration-500 transform rounded-lg shadow-lg right-4 top-4 text-white;
    animation: slideIn 0.5s ease-out forwards;
}

.alert.hide {
    animation: slideOut 0.5s ease-out forwards;
}

.alert-success {
    @apply bg-green-500 dark:bg-green-600;
}

.alert-error {
    @apply bg-red-500 dark:bg-red-600;
}

.alert-info {
    @apply bg-blue-500 dark:bg-blue-600;
}

.alert-warning {
    @apply bg-yellow-500 dark:bg-yellow-600 text-gray-900 dark:text-white;
}

/* Animation keyframes */
@keyframes slideIn {
    0% {
        transform: translateX(100%);
        opacity: 0;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes slideOut {
    0% {
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        transform: translateX(100%);
        opacity: 0;
    }
}
