body { font-family: 'Inter', sans-serif; }

.custom-toast-container {
    position: fixed; top: 24px; right: 24px; z-index: 9999;
    display: flex; flex-direction: column; gap: 12px; pointer-events: none;
}
.custom-toast {
    pointer-events: auto; min-width: 300px; max-width: 400px;
    background: #ffffff; color: #333333; border-radius: 8px;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
    display: flex; align-items: flex-start; padding: 16px;
    transform: translateX(120%); transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55), opacity 0.4s ease;
    opacity: 0; position: relative; overflow: hidden;
}
.custom-toast.show { transform: translateX(0); opacity: 1; }
.custom-toast-icon { flex-shrink: 0; margin-right: 12px; display: flex; align-items: center; justify-content: center; }
.custom-toast.success .custom-toast-icon svg { color: #10b981; }
.custom-toast.error .custom-toast-icon svg { color: #ef4444; }
.custom-toast-content { flex-grow: 1; display: flex; flex-direction: column; }
.custom-toast-title { font-weight: 600; font-size: 15px; margin-bottom: 4px; }
.custom-toast.success .custom-toast-title { color: #065f46; }
.custom-toast.error .custom-toast-title { color: #991b1b; }
.custom-toast-message { font-size: 14px; color: #4b5563; line-height: 1.4; }
.custom-toast-close { background: none; border: none; color: #9ca3af; cursor: pointer; padding: 0; margin-left: 12px; display: flex; }
.custom-toast-close:hover { color: #4b5563; }
.custom-toast-progress { position: absolute; bottom: 0; left: 0; height: 4px; width: 100%; animation: toast-progress 6s linear forwards; }
.custom-toast.success .custom-toast-progress { background-color: #10b981; }
.custom-toast.error .custom-toast-progress { background-color: #ef4444; }
@keyframes toast-progress { 0% { width: 100%; } 100% { width: 0%; } }
