Alex Dunmow 99c1c4f652 feat(theme): Wave A corporate-modernist — 49 overrides, 7 templates, seed (WO-TF-014)
Full Wave A OVERRIDE-CONTRACT delivery for the B2B-consultancy theme
(Swiss grid, Bauhaus geometric marks, oversized tabular numerals, hairlines).

- 49/49 mandatory builtin overrides + manifest template_overrides entries,
  authored against the frozen builtin schemas. Fixed legacy button (variant/
  href/text -> style/link/label) and card (body/image -> text/media) reads.
- 7 page templates: default, full-width, landing, article, blog-index,
  contact, auth.
- Blocks rework: deleted 7 duplicate theme blocks (now builtin overrides);
  kept case_study_card; added capability_matrix, engagement_process,
  credential_bar. master_pages.json rewired to builtins.
- 5 dual-mode presets (all 19 tokens, tuned dark): navy-classic, forest-quiet,
  burgundy-tradition, graphite-mono, signal-red.
- Bundled fonts (OFL-1.1 latin subsets): Inter + JetBrains Mono, licenses
  recorded; all font-family via var(--font-*). RECOMMENDED_FONTS/ICONS updated;
  required_icon_packs = [lucide, simple-icons].
- Complete .cm-* CSS component vocabulary in manifest css.input_css_append;
  CSS-first motion with prefers-reduced-motion honored.
- Themed email-safe wrapper (tables + inline styles).
- Demo seed (demo:true): Meridian Advisory home/about/blog+3 posts/contact/
  login; contact-form -> contact_submissions data table -> row_inserted
  email-admins workflow.
- Functional auth-form / password-reset-form overrides (real hx-post endpoints).

Verified: `make` exit 0 (codeless .bnp packs), check-safety 32 checks OK exit 0.
Visual identity UNVERIFIED until Wave B. Known limitation: data providers do not
reach declarative overrides in frozen cms (a0f07e2ae) render path — provider-
backed overrides authored faithfully, populate once the host wires providers.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 11:05:55 +08:00

253 lines
8.0 KiB
JSON

[
{
"id": "navy-classic",
"name": "Navy Classic",
"description": "Deep navy on paper. The safe choice for accountancy, law, and finance.",
"theme": {
"mode": "both",
"lightColors": {
"background": "0 0% 100%",
"foreground": "220 20% 12%",
"card": "0 0% 100%",
"cardForeground": "220 20% 12%",
"popover": "0 0% 100%",
"popoverForeground": "220 20% 12%",
"primary": "218 65% 22%",
"primaryForeground": "0 0% 100%",
"secondary": "220 14% 96%",
"secondaryForeground": "220 20% 12%",
"muted": "220 14% 96%",
"mutedForeground": "220 10% 40%",
"accent": "218 65% 22%",
"accentForeground": "0 0% 100%",
"destructive": "0 72% 42%",
"destructiveForeground": "0 0% 100%",
"border": "220 14% 90%",
"input": "220 14% 90%",
"ring": "218 65% 22%"
},
"darkColors": {
"background": "220 25% 8%",
"foreground": "220 10% 95%",
"card": "220 25% 11%",
"cardForeground": "220 10% 95%",
"popover": "220 25% 11%",
"popoverForeground": "220 10% 95%",
"primary": "218 70% 60%",
"primaryForeground": "220 25% 8%",
"secondary": "220 20% 18%",
"secondaryForeground": "220 10% 95%",
"muted": "220 20% 16%",
"mutedForeground": "220 10% 65%",
"accent": "218 70% 60%",
"accentForeground": "220 25% 8%",
"destructive": "0 62% 50%",
"destructiveForeground": "0 0% 100%",
"border": "220 20% 22%",
"input": "220 20% 22%",
"ring": "218 70% 60%"
}
}
},
{
"id": "forest-quiet",
"name": "Forest Quiet",
"description": "Same chassis, deep green accent for sustainability, advisory, and ESG.",
"theme": {
"mode": "both",
"lightColors": {
"background": "0 0% 100%",
"foreground": "150 18% 12%",
"card": "0 0% 100%",
"cardForeground": "150 18% 12%",
"popover": "0 0% 100%",
"popoverForeground": "150 18% 12%",
"primary": "155 45% 22%",
"primaryForeground": "0 0% 100%",
"secondary": "150 12% 96%",
"secondaryForeground": "150 18% 12%",
"muted": "150 12% 96%",
"mutedForeground": "150 10% 40%",
"accent": "155 45% 22%",
"accentForeground": "0 0% 100%",
"destructive": "0 72% 42%",
"destructiveForeground": "0 0% 100%",
"border": "150 12% 90%",
"input": "150 12% 90%",
"ring": "155 45% 22%"
},
"darkColors": {
"background": "150 18% 8%",
"foreground": "150 8% 95%",
"card": "150 18% 11%",
"cardForeground": "150 8% 95%",
"popover": "150 18% 11%",
"popoverForeground": "150 8% 95%",
"primary": "155 50% 55%",
"primaryForeground": "150 18% 8%",
"secondary": "150 15% 18%",
"secondaryForeground": "150 8% 95%",
"muted": "150 15% 16%",
"mutedForeground": "150 8% 65%",
"accent": "155 50% 55%",
"accentForeground": "150 18% 8%",
"destructive": "0 62% 50%",
"destructiveForeground": "0 0% 100%",
"border": "150 15% 22%",
"input": "150 15% 22%",
"ring": "155 50% 55%"
}
}
},
{
"id": "burgundy-tradition",
"name": "Burgundy Tradition",
"description": "Heritage accent for old-line legal, private banking, and partnerships.",
"theme": {
"mode": "both",
"lightColors": {
"background": "0 0% 100%",
"foreground": "355 18% 12%",
"card": "0 0% 100%",
"cardForeground": "355 18% 12%",
"popover": "0 0% 100%",
"popoverForeground": "355 18% 12%",
"primary": "350 55% 30%",
"primaryForeground": "0 0% 100%",
"secondary": "355 12% 96%",
"secondaryForeground": "355 18% 12%",
"muted": "355 12% 96%",
"mutedForeground": "355 10% 40%",
"accent": "350 55% 30%",
"accentForeground": "0 0% 100%",
"destructive": "0 72% 42%",
"destructiveForeground": "0 0% 100%",
"border": "355 12% 90%",
"input": "355 12% 90%",
"ring": "350 55% 30%"
},
"darkColors": {
"background": "355 18% 8%",
"foreground": "355 8% 95%",
"card": "355 18% 11%",
"cardForeground": "355 8% 95%",
"popover": "355 18% 11%",
"popoverForeground": "355 8% 95%",
"primary": "350 60% 60%",
"primaryForeground": "355 18% 8%",
"secondary": "355 15% 18%",
"secondaryForeground": "355 8% 95%",
"muted": "355 15% 16%",
"mutedForeground": "355 8% 65%",
"accent": "350 60% 60%",
"accentForeground": "355 18% 8%",
"destructive": "0 62% 50%",
"destructiveForeground": "0 0% 100%",
"border": "355 15% 22%",
"input": "355 15% 22%",
"ring": "350 60% 60%"
}
}
},
{
"id": "graphite-mono",
"name": "Graphite Mono",
"description": "Achromatic ink on gallery white. Pure Swiss restraint with no hue.",
"theme": {
"mode": "both",
"lightColors": {
"background": "0 0% 100%",
"foreground": "0 0% 9%",
"card": "0 0% 100%",
"cardForeground": "0 0% 9%",
"popover": "0 0% 100%",
"popoverForeground": "0 0% 9%",
"primary": "0 0% 13%",
"primaryForeground": "0 0% 100%",
"secondary": "0 0% 96%",
"secondaryForeground": "0 0% 9%",
"muted": "0 0% 96%",
"mutedForeground": "0 0% 40%",
"accent": "0 0% 13%",
"accentForeground": "0 0% 100%",
"destructive": "0 72% 42%",
"destructiveForeground": "0 0% 100%",
"border": "0 0% 88%",
"input": "0 0% 88%",
"ring": "0 0% 13%"
},
"darkColors": {
"background": "0 0% 8%",
"foreground": "0 0% 96%",
"card": "0 0% 11%",
"cardForeground": "0 0% 96%",
"popover": "0 0% 11%",
"popoverForeground": "0 0% 96%",
"primary": "0 0% 92%",
"primaryForeground": "0 0% 8%",
"secondary": "0 0% 17%",
"secondaryForeground": "0 0% 96%",
"muted": "0 0% 15%",
"mutedForeground": "0 0% 64%",
"accent": "0 0% 92%",
"accentForeground": "0 0% 8%",
"destructive": "0 62% 50%",
"destructiveForeground": "0 0% 100%",
"border": "0 0% 22%",
"input": "0 0% 22%",
"ring": "0 0% 92%"
}
}
},
{
"id": "signal-red",
"name": "Signal Red",
"description": "Graphite ground with a single Bauhaus primary-red accent for bold consultancies.",
"theme": {
"mode": "both",
"lightColors": {
"background": "0 0% 100%",
"foreground": "0 0% 11%",
"card": "0 0% 100%",
"cardForeground": "0 0% 11%",
"popover": "0 0% 100%",
"popoverForeground": "0 0% 11%",
"primary": "4 74% 46%",
"primaryForeground": "0 0% 100%",
"secondary": "0 0% 96%",
"secondaryForeground": "0 0% 11%",
"muted": "0 0% 96%",
"mutedForeground": "0 0% 40%",
"accent": "4 74% 46%",
"accentForeground": "0 0% 100%",
"destructive": "0 72% 42%",
"destructiveForeground": "0 0% 100%",
"border": "0 0% 88%",
"input": "0 0% 88%",
"ring": "4 74% 46%"
},
"darkColors": {
"background": "0 0% 8%",
"foreground": "0 0% 96%",
"card": "0 0% 11%",
"cardForeground": "0 0% 96%",
"popover": "0 0% 11%",
"popoverForeground": "0 0% 96%",
"primary": "4 78% 58%",
"primaryForeground": "0 0% 8%",
"secondary": "0 0% 17%",
"secondaryForeground": "0 0% 96%",
"muted": "0 0% 15%",
"mutedForeground": "0 0% 64%",
"accent": "4 78% 58%",
"accentForeground": "0 0% 8%",
"destructive": "0 62% 50%",
"destructiveForeground": "0 0% 100%",
"border": "0 0% 22%",
"input": "0 0% 22%",
"ring": "4 78% 58%"
}
}
}
]