The app currently shows the same navigation menu to all users regardless of auth state. Logged-out users can navigate to protected pages (e.g., /runs/new, /admin) even though the backend rejects their requests. The admin interface has no role restriction — any authenticated user can access it.
## Goals
1.**Auth-aware navigation**: Menu items change based on login state (logged-out users only see public browsing options)
2.**Route protection**: Protected routes redirect to login, admin routes require admin role
3.**Admin role system**: Define which users are admins via a database field, enforce on both frontend and backend
4.**Backend admin enforcement**: Admin API endpoints (games, pokemon, evolutions, bosses, routes) require admin role, not just authentication
## Success Criteria
- [ ] Logged-out users see only: Home, Runs (public list), Genlockes, Stats, Sign In