Design
Typography
Font system, scales, and usage rules.
Font Stacks
| Token | Font | Fallback | Usage |
|---|---|---|---|
--sans | Helvetica Neue LT (dashboard) | -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif | Body text, UI labels |
--display | Heyanik (dashboard) | Georgia, serif | Headlines, display text |
--mono | JetBrains Mono | ui-monospace, Menlo, monospace | Code, IDs, timestamps, badges |
Font Files
| Font | File | Weight |
|---|---|---|
| Helvetica Neue LT | /fonts/Helvetica.woff2 | 400 (regular) |
| Helvetica Neue LT Bold | /fonts/Helvetica-Bold.woff2 | 700 (bold) |
| Heyanik | /fonts/Heyanik.woff2 | 400 (display only) |
| JetBrains Mono | via next/font | Variable |
Type Scale
Dashboard
| Role | Size | Weight | Line Height | Letter Spacing |
|---|---|---|---|---|
| Page title (h1) | 22px | 600 | — | -0.02em |
| Card title (h3) | 14-15px | 600 | — | — |
| Body | 13-14px | 400 | 1.5 | — |
| Small / metadata | 12px | 400 | — | — |
| Badge / mono | 11px | 600 | — | — |
| Eyebrow / section | 10-12px | 600 | — | 0.06-0.1em |
| KPI value | 24px | 700 | — | -0.02em |
| Code block | 12.5px | 400 | 1.75 | — |
Landing Page
| Role | Size | Weight | Line Height | Letter Spacing |
|---|---|---|---|---|
| Hero title | clamp(2.5rem, 5vw, 4rem) | 700 | 1.05 | -0.025em |
| Section h2 | clamp(2rem, 3.6vw, 2.8rem) | 700 | 1.1 | -0.025em |
| Section p | 1.15rem | 400 | 1.65 | -0.01em |
| Body | 16.5px | 400 | 1.65 | -0.01em |
| Small | 14px | 400 | 1.5 | — |
| Eyebrow | 12px | 600 | — | 0.16em |
Typography Classes
| Class | Font | Usage |
|---|---|---|
.dfont | Display font (Heyanik) | Hero titles, brand text |
.mono | JetBrains Mono | Code, IDs, timestamps |
kbd | JetBrains Mono | Keyboard shortcuts |
Text Colors
| Context | Token | Usage |
|---|---|---|
| Primary text | var(--ink) | Headings, strong labels |
| Body text | var(--soft) | Descriptions, paragraphs |
| Secondary | var(--muted) | Metadata, secondary labels |
| Tertiary | var(--faint) | Timestamps, hints, disabled |
| On accent | var(--acc-ink) | Text on accent buttons/badges |
| On dark bg | #fff | Text on dark surfaces |
Text Selection
css
::selection {
background: var(--acc);
color: var(--acc-ink);
}
Link Styling
- Landing: Links inherit color, no underline by default. Hover: accent color.
- Dashboard: Links inherit color, no underline. Accent color on hover.
- Touch target:
touch-action: manipulationto eliminate 300ms tap delay.