/* =========================================
   BPSO TOAST NOTIFICATIONS
   ========================================= */
.toast-container {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 99999; /* Acima de TUDO, até do Hacker Mode */
    display: flex;
    flex-direction: column;
    gap: 10px;
    pointer-events: none; /* Deixa clicar no site por baixo */
}

.toast {
    background: rgba(15, 23, 42, 0.95);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #fff;
    padding: 16px 20px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 300px;
    max-width: 400px;
    transform: translateX(100%); /* Começa fora da tela */
    animation: slideIn 0.3s forwards;
    pointer-events: all;
    position: relative;
    overflow: hidden;
    font-family: 'Inter', sans-serif;
}

/* Tipos de Toast */
.toast.success { border-left: 4px solid #22c55e; }
.toast.success i { color: #22c55e; }

.toast.error { border-left: 4px solid #ef4444; }
.toast.error i { color: #ef4444; }

.toast.hacker { 
    border-left: 4px solid #0f0; 
    background: #000;
    color: #0f0;
    font-family: 'Courier New', monospace;
    box-shadow: 0 0 10px #0f0;
}
.toast.hacker i { color: #0f0; }

/* Texto */
.toast-content { flex: 1; }
.toast-title { font-weight: 700; font-size: 0.95rem; margin-bottom: 2px; display: block; }
.toast-msg { font-size: 0.85rem; opacity: 0.8; }

/* Ícone */
.toast i { font-size: 1.5rem; }

/* Botão Fechar */
.toast-close {
    background: transparent; border: none; color: rgba(255,255,255,0.4);
    cursor: pointer; font-size: 1.1rem; transition: 0.2s;
}
.toast-close:hover { color: #fff; }

/* Barra de Progresso */
.toast-progress {
    position: absolute; bottom: 0; left: 0;
    height: 3px; width: 100%;
    background: rgba(255,255,255,0.1);
}
.toast-progress::after {
    content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 100%;
    background: currentColor; /* Herda a cor do ícone/borda */
    animation: progress linear forwards;
}
.toast.success .toast-progress::after { background: #22c55e; }
.toast.error .toast-progress::after { background: #ef4444; }
.toast.hacker .toast-progress::after { background: #0f0; }

/* Animações */
@keyframes slideIn {
    from { transform: translateX(120%); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
}
@keyframes slideOut {
    to { transform: translateX(120%); opacity: 0; }
}
@keyframes progress {
    from { width: 100%; }
    to { width: 0%; }
}