Register AI sections across all content pages with dual-anchor scroll
tracking, cross-page navigation via [SECTION:xxx] tags, and right-margin
positioning for the notes editor.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add FLIP animation so the floating chat visually morphs into a newly-created
TaskRow when the AI creates a task. Uses Framer Motion's shared layoutId
across FloatingChat and TaskRow, with LayoutGroup wrapping the app shell.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Create the floating AI chat popup rendered via portal to document.body.
Uses useAIChat for chat logic, useFloatingChat for position/state,
Framer Motion for enter/exit animations, and pointer-event dragging.
Includes: close on Escape, close on route change, auto-scroll,
auto-focus, window resize clamping, and compact message rendering.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>