- Enable Tailwind darkMode: 'class' with system preference detection
- Add shared Layout component with sidebar navigation, dark mode toggle, and mobile hamburger menu
- Add global CSS: focus-visible rings, smooth transitions, custom scrollbar, entrance animations
- Update all authenticated pages to use Layout wrapper via App.tsx route restructure
- Responsive improvements: stack headers on mobile, responsive padding, modal safe areas
- Add fade-in animations for stat cards and scale-in for modals
- 11 tests added for Layout component. All 430 tests pass.
Add SetupPage, LoginPage, DashboardPage, ProjectsPage, ExperimentPage, LivePage,
ComparePage, and AdminPage as placeholder components. Wire up react-router-dom routing
in App.tsx with BrowserRouter in main.tsx. Unknown routes redirect to dashboard.
Install vitest + @testing-library/react and add 9 routing tests. Build passes cleanly.