feat(admin): add responsive mobile sidebar drawer (#155)
* feat(admin): add responsive mobile sidebar drawer
The admin layout had a fixed 256px sidebar with no responsive breakpoints,
leaving only ~119px for content on mobile viewports. Now the sidebar is
hidden below md (768px) and replaced with a hamburger button that opens
a Radix Dialog-based slide-in drawer.
- Extract shared AdminNav component for desktop sidebar and mobile drawer
- Add hamburger menu button (md:hidden) with sticky top bar
- Slide-in drawer with overlay, close button, and auto-close on link click
- Proper a11y: dialog role, sr-only title, focus management via Radix
- Add slide/fade animation keyframes to globals.css
- Add admin sub-routes to mobile-audit e2e test coverage
- 6 new unit tests for drawer open/close/a11y behavior
* style(admin): fix Prettier formatting in admin layout
authored by