- lib/db.js: listUsers query now includes has_password computed column
(password_hash IS NOT NULL) — prevents hasPassword always being false
- lib/routes/admin.js: userPublic uses has_password instead of password_hash
- styles.css: add .forgot-password-link style used in login.html
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>