fix(web): polish pass on font settings

- Quote custom terminal families before they reach the canvas font string:
  a non-ident name ("3270 Nerd Font", "M+ 1m") made the whole string
  invalid CSS, so the assignment silently kept the previous font.
- Point the DM Sans catalog entry at the registered "DM Sans Variable"
  family; the bundled webfont never registers plain "DM Sans", so the
  option rendered in the serif fallback and only applied by coincidence.
- Cap the custom input at the schema's 200-character limit.
- Cover fontOptionCategories and non-ident quoting with tests.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
61df9652bbWout Stiens committed on 8/1/2026, 5:12:42 AMparentd932f98
5 files changedLine totals unavailable