👤 Estado do Usuário Normal
is-guest: ❌ NAO
No arquivo auth-system.js, na classe AuthManager:
Você digita: admin@inventario.com / 123456
Compara email e senha com credenciais pré-definidas
Cria objeto de usuário com role: 'admin'
Persiste dados para próxima recarga
SweetAlert mostra sucesso e redirecion
Lê localStorage e encontra role: 'admin'
document.body.classList.add('is-admin')
body.is-admin .admin-panel { display: block }
Painel lateral visível com customizações
Estes CSS rules controlam o que aparece:
/* Quando é admin, mostra o painel */ body.is-admin .admin-panel {
display: flex !important; animation: slideInRight 0.3s ease-out; } /*
Quando é admin, mostra elementos específicos */ body.is-admin
[data-admin-only], body.is-admin .admin-only { display: block
!important; visibility: visible !important; } /* Quando é guest,
escurece recursos */ body.is-guest [data-guest-restricted],
body.is-guest .guest-restricted { opacity: 0.4 !important;
pointer-events: none !important; }
| Aspecto | 👤 Usuário | 👨💼 Admin |
|---|---|---|
| funcionario@inventario.com | admin@inventario.com | |
| Role | user | admin |
| Classe CSS | - | is-admin |
| Painel Lateral | ❌ Não | ✅ Sim |
| Color Picker | ❌ Não | ✅ Sim |
| Presets Cores | ❌ Não | ✅ Sim |
| Botão Logout | ❌ Não Específico | ✅ Sim |
| Timer | ✅ Sim | ✅ Sim |
| Frases | ✅ Sim | ✅ Sim |
| Fullscreen | ✅ Sim | ✅ Sim |
1. O "role" é a chave: Ele determina quem é admin ou não
2. localStorage persiste o role: Mesmo após uma recarga, continua sabendo que é admin
3. CSS faz a mágica: Ele mostra/esconde elementos baseado na classe do body
4. Logout limpa tudo: Remove role, localStorage e redireciona para login