- Add Sidebar component with navigation menu
- Add Header component with dark mode toggle
- Add ThemeSelector for primary color customization
- Add SidebarUser component for user profile display
- Add connection-status component
- Add avatar UI components
- Add theme context for primary color state
- Add ModeWatcher for dark mode support
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove prop drilling, components get notes from NoteService context
- NoteCard gets note by ID from service, uses {#key} for Markdown reactivity
- NotesGrid handles filtering internally via service methods
- NoteEditor gets service from context instead of prop
- Add PageState type for shallow routing selectedNoteId
- Add +layout.server.ts to pass user data to client
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Prevent visual glitch where habit cells would shrink and borders would
morph during NumberFlow animations when interacting via keyboard (shift
key). Added focus-visible:outline-none to suppress global outline style
that was causing layout shifts in Chrome's rendering engine.