Move servers/dating → demos/dating/server and the dating route's
co-located _components/_lib/_design assets → demos/dating/web. Single
`npm run dating:dev` boots both server and web via concurrently.
Replace the warm-paper / raspberry-pink Claude Design adaptation with
a sober desktop-first system:
- Tokens: slate neutrals + violet accent, Inter family, dark mode via
prefers-color-scheme + explicit data-theme.
- Inline SVG icon set (Icon.svelte, Feather-style) — no Unicode glyph
placeholders.
- Layout shell: 240px rail nav on desktop, bottom tab bar on mobile;
auth + onboarding own their own shell.
- Discover: square photo carousel (dots + chevrons), name/age/location
overlay, action buttons floating off the photo edge, sticky context
panel on desktop.
- Matches: clean conversation list with unread dot + chevron-on-hover.
- Chat: 3-column on desktop (threads + thread + match context), 2-col
on tablet, single thread on mobile. Day separators, retry/dismiss
on failed messages, autogrow composer with Enter-to-send.
- Profile: sticky hero card + 3-section form, dirty/saved indicator.
- Photos: dropzone + grid with hover-only cell toolbar (set primary,
reorder, delete).
- Onboarding: sidebar stepper (320px) + content panel.
- Auth: split layout (form left, brand quote right) on ≥900px.
Server boot: env loader's repo-root resolution corrected after the
move (../../.. instead of ../..) so .env.local at the repo root is
picked up again.
Hoist BRAND.md and SECURITY.md into docs/, drop superseded audit
notes that were already closed.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>