/* Teste prático sem cadastro (site/teste/) — barra de módulos, painel lateral
   de explicações e o convite final para o cadastro. */
#teste-barra {
    background: var(--fundo-card); border: 1px solid var(--borda-suave); border-radius: 8px;
    padding: 12px; margin-bottom: 4px;
}
#teste-barra .titulo { font-size: 12px; font-weight: bold; color: var(--texto-suave); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 8px; }
#teste-barra .grade { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; }
#teste-barra button {
    background: var(--fundo-input); border: 2px solid var(--borda-suave); border-radius: 8px;
    color: var(--texto-principal); padding: 8px 4px; font-size: 10.5px; font-weight: bold; text-align: center;
    cursor: pointer; line-height: 1.3; display: flex; flex-direction: column; align-items: center; gap: 3px;
}
#teste-barra button .emoji { font-size: 18px; }
#teste-barra button.ativo { border-color: var(--cor-primaria); background: rgba(245,166,35,.12); }
#teste-barra button.usado { opacity: .55; cursor: pointer; }
#teste-barra button.usado .check { color: #2ecc71; font-size: 13px; }
#teste-barra p.legenda { font-size: 10.5px; color: var(--texto-suave); margin-top: 8px; line-height: 1.4; }

#teste-lateral {
    flex: 0 0 320px; width: 320px; height: 100vh; overflow-y: auto;
    background: var(--fundo-painel); border-left: 1px solid var(--borda-suave);
    padding: 22px 20px; color: var(--texto-principal); box-shadow: -2px 0 12px rgba(0,0,0,.35);
}
#teste-lateral .voltar { display: inline-block; color: var(--texto-suave); text-decoration: none; font-size: 12px; margin-bottom: 14px; }
#teste-lateral .voltar:hover { color: var(--texto-principal); }
#teste-lateral h2 { font-size: 17px; margin-bottom: 6px; display: flex; align-items: center; gap: 8px; }
#teste-lateral .modulo-desc { color: var(--texto-suave); font-size: 13px; line-height: 1.5; margin-bottom: 16px; }
#teste-lateral .exemplo { background: var(--fundo-card); border: 1px solid var(--borda-suave); border-radius: 8px; padding: 12px 14px; margin-bottom: 14px; }
#teste-lateral .exemplo b { display: block; font-size: 11px; color: var(--cor-primaria); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 6px; }
#teste-lateral .exemplo p { font-size: 12.5px; color: var(--texto-principal); line-height: 1.55; }
#teste-lateral .lei { background: rgba(59,130,246,.08); border: 1px solid rgba(59,130,246,.3); border-radius: 8px; padding: 12px 14px; margin-bottom: 14px; }
#teste-lateral .lei b { display: block; font-size: 11px; color: #60a5fa; text-transform: uppercase; letter-spacing: .04em; margin-bottom: 6px; }
#teste-lateral .lei p { font-size: 12.5px; color: var(--texto-principal); line-height: 1.55; }
#teste-lateral .passos { font-size: 12.5px; color: var(--texto-suave); line-height: 1.7; margin-bottom: 6px; }
#teste-lateral .passos b { color: var(--texto-principal); }
@media (max-width: 1150px) { #teste-lateral { display: none; } }

/* Convite final */
#teste-cta-overlay {
    position: fixed; inset: 0; background: rgba(5,8,15,.82); backdrop-filter: blur(4px);
    display: none; align-items: center; justify-content: center; z-index: 999; padding: 20px;
}
#teste-cta-overlay.aberto { display: flex; }
#teste-cta-card {
    background: linear-gradient(180deg, #171f36, #0f1626); border: 1px solid var(--borda-suave);
    border-radius: 18px; padding: 36px 32px; max-width: 420px; text-align: center;
    box-shadow: 0 40px 90px -30px rgba(0,0,0,.7);
}
#teste-cta-card .emoji-grande { font-size: 40px; margin-bottom: 10px; }
#teste-cta-card h3 { font-size: 22px; margin-bottom: 10px; color: var(--texto-principal); }
#teste-cta-card p { color: var(--texto-suave); font-size: 14px; line-height: 1.6; margin-bottom: 22px; }
#teste-cta-card .btn-cta {
    display: block; width: 100%; background: var(--cor-primaria); color: #16202f; font-weight: bold;
    padding: 14px; border-radius: 8px; text-decoration: none; font-size: 15px; margin-bottom: 10px;
}
#teste-cta-card .btn-cta:hover { background: var(--cor-primaria-hover); }
#teste-cta-card .fechar { background: none; border: none; color: var(--texto-suave); font-size: 13px; cursor: pointer; text-decoration: underline; }

#teste-toast {
    position: fixed; left: 50%; bottom: 26px; transform: translateX(-50%) translateY(0);
    background: #16202f; border: 1px solid var(--borda-suave); color: var(--texto-principal);
    padding: 12px 20px; border-radius: 10px; font-size: 13.5px; z-index: 998; opacity: 0;
    pointer-events: none; transition: opacity .25s, transform .25s; max-width: 90vw; text-align: center;
}
#teste-toast.mostrar { opacity: 1; transform: translateX(-50%) translateY(-8px); }
