All app fonts are now self-hosted from /fonts via next/font/local — no more Google
Fonts network dependency. Schibsted Grotesk is the new default system-wide UI typeface
(replacing Inter); it's loaded directly as --font-outfit so every surface reskins at once.
JetBrains Mono stays the code/mono font (also self-hosted now).
Settings → General → App font offers the new family: Schibsted Grotesk (default),
Google Sans, PT Serif, Playfair Display, and JetBrains Mono. Clip AI's serif chat font now
uses the self-hosted PT Serif. Pre-paint font script + lib/prefs.ts updated to match.
Pruned the fonts/ folder to only the files next/font needs (variable + italic masters,
PT Serif's four static weights, and each family's OFL license); dropped the static/
duplicate-weight folders and READMEs.
Added
One consistent tooltip surface app-wide. A new GlobalTooltip (components/Tooltip.tsx)
renders a single themed, delayed, auto-flipping tooltip for any element carrying data-tip.
Every interactive control's native title tooltip was migrated to data-tip (with
aria-label preserved for screen readers). Semantic titles on <iframe>s are untouched.
The toolbar's old bespoke per-button tooltip was folded into this shared surface.
Fixed
Tips & shortcuts popover (canvas bottom-right help): it now sits above neighbouring
canvas chrome (explicit stacking) and closes on outside-click or Escape, like a popover
should.