/* toast.css - Sistema de Notificações Premium */

:root {
    --toast-success: #10b981;
    --toast-error: #ef4444;
    --toast-warning: #f59e0b;
    --toast-info: #3b82f6;
    --toast-bg: #ffffff;
}

#toast-container {
    position: fixed !important;
    top: 24px !important;
    right: 24px !important;
    z-index: 1000000 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    pointer-events: none !important;
    max-width: 400px !important;
    width: calc(100% - 48px) !important;
}

.toast-item {
    pointer-events: auto !important;
    background: var(--toast-bg) !important;
    border-radius: 20px !important;
    padding: 18px 24px 18px 18px !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12) !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    transform: translateX(120%) !important;
    transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    opacity: 0 !important;
    position: relative !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;
    overflow: visible !important; /* Permitir que o botão X saia um pouco se necessário */
}

.toast-item.show {
    transform: translateX(0) !important;
    opacity: 1 !important;
}

.toast-item.hide {
    transform: translateX(120%) !important;
    opacity: 0 !important;
}

.toast-icon {
    font-size: 22px !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    height: 46px !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
}

.toast-content {
    flex-grow: 1 !important;
    color: #1e293b !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    font-weight: 800 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.toast-close {
    position: absolute !important;
    top: -10px !important;
    right: -10px !important;
    background: #ffffff !important;
    border: 1px solid rgba(0,0,0,0.1) !important;
    color: #94a3b8 !important;
    cursor: pointer !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 12px !important;
    transition: all 0.2s !important;
    flex-shrink: 0 !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important;
    padding: 0 !important;
}

.toast-close:hover {
    background: #f8fafc !important;
    color: #ef4444 !important;
    transform: scale(1.1) !important;
}

/* Tipos de Toast */
.toast-success .toast-icon { background: color-mix(in srgb, var(--toast-success) 12%, transparent) !important; color: var(--toast-success) !important; }
.toast-error .toast-icon { background: color-mix(in srgb, var(--toast-error) 12%, transparent) !important; color: var(--toast-error) !important; }
.toast-warning .toast-icon { background: color-mix(in srgb, var(--toast-warning) 12%, transparent) !important; color: var(--toast-warning) !important; }
.toast-info .toast-icon { background: color-mix(in srgb, var(--toast-info) 12%, transparent) !important; color: var(--toast-info) !important; }

/* Barra de progresso */
.toast-progress {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    height: 4px !important;
    background: rgba(0, 0, 0, 0.03) !important;
    width: 100% !important;
    border-radius: 0 0 20px 20px !important;
    overflow: hidden !important;
}

.toast-progress-fill {
    height: 100% !important;
    width: 100% !important;
    background: currentColor !important;
    opacity: 0.3 !important;
}

@media (max-width: 768px) {
    #toast-container {
        top: auto !important;
        bottom: 120px !important;
        right: 20px !important;
        left: 20px !important;
        width: auto !important;
    }
    
    .toast-item {
        transform: translateY(40px) !important;
    }
    
    .toast-item.show {
        transform: translateY(0) !important;
    }
    
    .toast-item.hide {
        transform: translateY(40px) !important;
        opacity: 0 !important;
    }
}
