/* Modern Toast Notification Styles - Dark singleton version */
.modern-toast-container {
    position: fixed !important;
    top: 20px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 40000 !important;
    pointer-events: none !important;
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
}

.modern-toast {
    pointer-events: auto;
    background: #2a2a2a;
    color: #ffffff;
    border-radius: 8px;
    padding: 10px 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 200px;
    max-width: 90vw;
    animation: toast-slide-down 0.4s cubic-bezier(0.19, 1, 0.22, 1) forwards;
    border: none;
}

.modern-toast.hiding {
    animation: toast-fade-out 0.3s ease forwards;
}

@keyframes toast-slide-down {
    from {
        transform: translateY(-40px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes toast-fade-out {
    from {
        transform: translateY(0);
        opacity: 1;
    }

    to {
        transform: translateY(-20px);
        opacity: 0;
    }
}

.modern-toast-icon {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    background: #4caf50;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

.modern-toast-icon svg {
    width: 14px;
    height: 14px;
}

.modern-toast-content {
    flex: 1;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0.2px;
}

.modern-toast-close {
    display: none;
    /* Removed as requested for a cleaner look */
}

/* Mobile responsive */
@media (max-width: 640px) {
    .modern-toast {
        min-width: 200px;
    }
}