## Context The Planner stores waypoints as a `Y.Array>` with `lat`, `lon`, and optional `name` keys. The visual-redesign mockup (D4, D5) already shows waypoint notes as italic text under the waypoint name in the sidebar, and a note icon on map markers. This change implements the data model and interaction logic behind those placeholders. ## Decisions ### D1: Note storage in Yjs Each waypoint is a `Y.Map` in the `waypoints` Y.Array. Add an optional `note` key of type `string`. Plain text only, no markup. ```typescript // Existing keys yMap.get("lat") // number yMap.get("lon") // number yMap.get("name") // string | undefined // New key yMap.get("note") // string | undefined ``` Soft limit of ~500 characters enforced in the UI (character counter, input truncation) but not in the Yjs document itself. This keeps the data layer simple and avoids breaking collaborative edits if two users type near the limit simultaneously. The `Waypoint` interface in `@trails-cool/types` gets a corresponding optional field: ```typescript export interface Waypoint { lat: number; lon: number; name?: string; note?: string; // new isDayBreak?: boolean; } ``` ### D2: Editing UX in sidebar The note appears as italic text below the waypoint name in the sidebar list item. When empty, a muted placeholder reads "Add a note..." (i18n key: `planner.waypoint.notePlaceholder`). Clicking the note text (or placeholder) activates an inline `