/* ── Toast Notification System ── */
.toast-container {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 99999;
    display: flex;
    flex-direction: column;
    gap: 10px;
    pointer-events: none;
}

.toast-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 20px;
    border-radius: 10px;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    min-width: 280px;
    max-width: 380px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    animation: toastIn 0.3s ease forwards;
    pointer-events: all;
    border-left: 4px solid rgba(255,255,255,0.3);
}

.toast-item.success { 
    background: linear-gradient(135deg, #50cd89, #3fb574); 
    border-left-color: #2fb366;
}

.toast-item.error { 
    background: linear-gradient(135deg, #f1416c, #e02954); 
    border-left-color: #d01745;
}

.toast-item.warning { 
    background: linear-gradient(135deg, #ffc700, #e6b300); 
    color: #1a1a1a; 
    border-left-color: #cc9900;
}

.toast-item.info { 
    background: linear-gradient(135deg, #009ef7, #0085d1); 
    border-left-color: #006bb3;
}

.toast-item.remove { 
    background: linear-gradient(135deg, #7239ea, #5d2bc0); 
    border-left-color: #4a22a1;
}

.toast-icon {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: rgba(255,255,255,0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 14px;
    font-weight: 700;
}

.toast-content {
    flex: 1;
}

.toast-title {
    font-weight: 600;
    margin-bottom: 2px;
}

.toast-message {
    font-size: 13px;
    opacity: 0.9;
}

@keyframes toastIn {
    from { 
        opacity: 0; 
        transform: translateX(40px); 
    }
    to { 
        opacity: 1; 
        transform: translateX(0); 
    }
}

@keyframes toastOut {
    from { 
        opacity: 1; 
        transform: translateX(0); 
    }
    to { 
        opacity: 0; 
        transform: translateX(40px); 
    }
}
