/* ==============================================
   TOASTS (Notification Modules)
   ============================================== */
@keyframes toastSlideIn {
    from {
        transform: translateY(-100%) translateX(-50%);
        opacity: 0;
    }

    to {
        transform: translateY(0) translateX(-50%);
        opacity: 1;
    }
}

@keyframes toastSlideOut {
    from {
        transform: translateY(0) translateX(-50%);
        opacity: 1;
    }

    to {
        transform: translateY(-100%) translateX(-50%);
        opacity: 0;
    }
}

.toast {
    position: fixed;
    top: 1.5rem;
    left: 50%;
    transform: translateX(-50%);
    background: var(--bg-card);
    color: var(--text-main);
    padding: 0.875rem 1.25rem;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-lg);
    z-index: 9999;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    animation: toastSlideIn 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) forwards;
    border: 1px solid var(--border-color-light);
    max-width: 90vw;
}

.toast.toast-out {
    animation: toastSlideOut 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) forwards;
}

.toast-success {
    border-left: 4px solid var(--success-color);
}

.toast-success i {
    color: var(--success-color);
}

.toast-error {
    border-left: 4px solid var(--danger-color);
}

.toast-error i {
    color: var(--danger-color);
}

.toast-info {
    border-left: 4px solid var(--primary-color);
}

.toast-info i {
    color: var(--primary-color);
}