/**
 * Toast Notification Styles
 */

#toast-container {
    z-index: 9999 !important;
}

#toast-container .toast {
    min-width: 300px;
    max-width: 400px;
    border-radius: 0.75rem;
    backdrop-filter: blur(10px);
    animation: slideIn 0.3s ease-out;
}

#toast-container .toast .toast-body {
    font-size: 0.875rem;
    font-weight: 500;
    padding: 1rem 0.75rem;
}

#toast-container .toast .btn-close {
    opacity: 0.8;
}

#toast-container .toast .btn-close:hover {
    opacity: 1;
}

/* Gradient backgrounds matching Soft UI theme */
.bg-gradient-success {
    background: linear-gradient(310deg, #17ad37 0%, #98ec2d 100%) !important;
}

.bg-gradient-danger {
    background: linear-gradient(310deg, #ea0606 0%, #ff667c 100%) !important;
}

.bg-gradient-warning {
    background: linear-gradient(310deg, #f53939 0%, #fbcf33 100%) !important;
}

.bg-gradient-info {
    background: linear-gradient(310deg, #2152ff 0%, #21d4fd 100%) !important;
}

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

/* For left-positioned toasts */
#toast-container[style*="left: 20px"] .toast {
    animation: slideInLeft 0.3s ease-out;
}

@keyframes slideInLeft {
    from {
        transform: translateX(-100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

/* For center-positioned toasts */
#toast-container[style*="left: 50%"] .toast {
    animation: slideInTop 0.3s ease-out;
}

@keyframes slideInTop {
    from {
        transform: translateY(-20px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* Mobile responsiveness */
@media (max-width: 576px) {
    #toast-container {
        left: 10px !important;
        right: 10px !important;
        bottom: 70px !important;
        transform: none !important;
    }
    
    #toast-container .toast {
        min-width: auto;
        max-width: 100%;
        width: 100%;
    }
}
