DB: - login_history table (user_id, ip, user_agent, timestamp) - Migration v2.5: alter users + create login_history Auth: - Premier utilisateur = admin (is_admin=1) - _log_login() après chaque connexion (register, local-login, OAuth) Backend (app/routers/admin.py): - admin_required middleware (vérifie is_admin) - GET /api/admin/users → liste users + stats par user - POST /api/admin/users → créer user - PUT /api/admin/users/:id → modifier (name, email, password, admin, active) - DELETE /api/admin/users/:id → supprimer + cascade - GET /api/admin/stats → totaux globaux - GET /api/admin/audit → historique login Frontend (settings.html): - Nav Admin visible seulement si userIsAdmin - Users & Roles: stats cards, create/edit/delete users, table complète - Audit Log: historique login avec date, IP, user-agent - CSS professionnel: table-wrap, admin-table, stat-card, role-badge, status-dot