/* ============================================================
   Toast iOS-style — override de MudSnackbar
   Posição superior-direita, backdrop blur, animação spring,
   cores vibrantes mas suaves, sombra dramática mas elegante.
   ============================================================ */

/* Container — empurra pra cima e centraliza no topo direito */
.mud-snackbar-provider {
    top: 24px !important;
    right: 24px !important;
    bottom: auto !important;
}

/* Cada snackbar individual */
.mud-snackbar {
    border-radius: 14px !important;
    padding: 12px 16px !important;
    min-width: 320px !important;
    max-width: 480px !important;
    backdrop-filter: blur(14px) saturate(180%);
    -webkit-backdrop-filter: blur(14px) saturate(180%);
    box-shadow: 0 12px 40px rgba(0,0,0,0.18),
                0 2px 8px rgba(0,0,0,0.08) !important;
    border: 1px solid rgba(255,255,255,0.18);
    font-weight: 600 !important;
    font-size: 0.88rem !important;
    animation: snack-in 0.42s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
    transition: all 0.25s ease;
}

.mud-snackbar:hover {
    transform: translateX(-3px);
    box-shadow: 0 18px 50px rgba(0,0,0,0.25),
                0 4px 12px rgba(0,0,0,0.12) !important;
}

/* Cores vibrantes mas com translucidez */
.mud-snackbar.mud-alert-filled-success {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    color: white !important;
}
.mud-snackbar.mud-alert-filled-error {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    color: white !important;
}
.mud-snackbar.mud-alert-filled-warning {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: white !important;
}
.mud-snackbar.mud-alert-filled-info {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    color: white !important;
}
.mud-snackbar.mud-alert-filled-normal {
    background: linear-gradient(135deg, #1e293b 0%, #334155 100%) !important;
    color: white !important;
}

/* Outline (severity outlined) — fundo claro + borda colorida */
.mud-snackbar.mud-alert-outlined {
    background: rgba(255,255,255,0.95) !important;
    color: #1e293b !important;
}

/* Ícone à esquerda */
.mud-snackbar .mud-alert-icon {
    margin-right: 10px !important;
    opacity: 0.95;
}

/* Botão fechar */
.mud-snackbar .mud-alert-close {
    color: inherit !important;
    opacity: 0.7;
    transition: all 0.2s ease;
}
.mud-snackbar .mud-alert-close:hover {
    opacity: 1;
    transform: rotate(90deg);
}

/* Animação spring de entrada */
@keyframes snack-in {
    0%   { opacity: 0; transform: translateX(420px) scale(0.85); }
    60%  { opacity: 1; transform: translateX(-8px)  scale(1.02); }
    100% { opacity: 1; transform: translateX(0)     scale(1); }
}

/* Empilhamento vertical — espaço entre snackbars */
.mud-snackbar + .mud-snackbar {
    margin-top: 10px !important;
}
