.toast-container {
    position: fixed;
    top: calc(var(--app-topbar-height) + 1rem);
    left: 50%;
    transform: translateX(-50%);
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    pointer-events: none;
}

.toast-item {
    pointer-events: auto;
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.85rem 1.25rem;
    border-radius: var(--app-radius);
    background: var(--app-surface);
    box-shadow: 0 8px 30px rgba(0,0,0,0.12);
    font-size: 0.875rem;
    font-weight: 500;
    animation: slideInUp 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    min-width: 280px;
    max-width: 420px;
    border-bottom: 4px solid var(--app-primary);
}

.toast-item.toast-success { border-bottom-color: var(--app-success); }
.toast-item.toast-error { border-bottom-color: var(--app-danger); }
.toast-item.toast-warning { border-bottom-color: var(--app-warning); }
.toast-item.toast-info { border-bottom-color: var(--app-info); }

.toast-item.toast-success i { color: var(--app-success); }
.toast-item.toast-error i { color: var(--app-danger); }
.toast-item.toast-warning i { color: var(--app-warning); }
.toast-item.toast-info i { color: var(--app-info); }

.toast-item.hiding {
    animation: slideOutDown 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

@keyframes slideInUp {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

@keyframes slideOutDown {
    from { transform: translateY(0); opacity: 1; }
    to { transform: translateY(20px); opacity: 0; }
}