Vendale engineering
Design language
The Ink·Paper·Gold system: tokens, typography, and the rules every surface follows.
Maintained with the code · Download .md
Vendale uses a dark canvas for navigation, warm paper surfaces for focused work, and a single gold accent for primary actions. This guide records the visual rules used across the public website. Desktop styling is updated on its own release track.
1. Foundations
- Ink is the deep background and navigation surface, using
#04120Eand#0B1210. - Paper is the warm work surface, using
#FAF9F6and#F1EFE9. - Gold is the primary accent, using
#F4C430with#FFD44Dfor hover and#7A5C10for text on paper.
Use luminance, typography, spacing, and thin borders to establish hierarchy. Reserve green and red for labeled success and danger states. Do not use status colors as decoration.
2. Color tokens
| Token | Value | Role | Contrast |
|---|---|---|---|
--ink-950 | #04120E | Deepest site canvas | Text contrast 17.66:1, AAA |
--ink-900 | #0B1210 | Navigation, footer, and chrome | Navigation text 16.74:1, AAA |
--ink-800 | #161F1B | Raised surface on ink | Not measured |
--paper | #FAF9F6 | Work surface and light sections | Ink text 15.71:1, AAA |
--paper-2 | #F1EFE9 | Secondary paper surface | Not measured |
--ink-text | #17211B | Primary text on paper | 15.71:1, AAA |
--ink-text-2 | #5A655E | Secondary text on paper | 5.77:1, AA |
--text-hi | #F2F7F4 | Primary text on ink | 17.66:1, AAA |
--text-mid | #9FB5AC | Secondary text on ink | 8.82:1, AAA |
--gold | #F4C430 | Primary actions and selected states | On ink 11.64:1, AAA |
--gold-hover | #FFD44D | Gold hover state | Not measured |
--gold-deep | #7A5C10 | Gold-family text on paper | 5.93:1, AA |
--line-ink | rgba(255,255,255,0.09) | Borders on ink | Not applicable |
--line-paper | #DDD9CF | Borders on paper | Not applicable |
--ok | #1E7A4C | Labeled success state | 5.06:1, AA |
--bad | #B42318 | Labeled danger state | 6.24:1, AA |
3. Typography
- Instrument Serif is reserved for large page and section headlines. Use weight 400 and
-0.01emtracking through.font-serif-display. - Inter is used for interface text, labels, buttons, and headings. Use 700 or less, with semibold for module and card titles.
- JetBrains Mono is used for numbers, identifiers, timestamps, and compact specifications such as order references and version strings.
- Keep body text in sentence case. Small labels may use uppercase mono at 10 to 11px with
0.12emtracking.
4. Layout and components
- Keep page content within a fluid maximum width of 1400px. Give long-form reading a narrower measure.
- Build hierarchy with spacing, type size, surface contrast, and 1px borders. Avoid decorative gradients, blur, glow, and tinted shadows.
- Use gold for the primary action. Secondary actions use a quiet surface or a thin border.
- Use compact radii from 6px to 12px. Reserve pill shapes for tags and small indicators.
- Keep interfaces responsive. At narrow widths, preserve readable line length and allow dense tables to scroll horizontally.
5. Motion and accessibility
- Use motion to explain state, orientation, or cause and effect. Avoid movement that competes with the task.
- Respect reduced-motion preferences by removing nonessential movement and replacing spatial transitions with immediate state changes.
- Keep keyboard focus visible, provide a skip link to main content, and pair status color with a readable label or symbol.
- Verify text and control contrast against the surface where each element appears.
6. Content integrity
- Describe capabilities that are available in the current release. Label work in progress and roadmap items clearly.
- Do not invent customer logos, testimonials, metrics, or product behavior.
- Keep category comparisons sourced and balanced. Describe product scope without naming or disparaging another company.
7. Contrast verification
The recorded palette check covered 13 text and surface pairs. Nine met AAA contrast and four met AA, with no failures. The weakest passing pair was success text on paper at 5.06:1. Status is communicated through both color and a label or symbol.
Practical guides live in the help center; release history in the changelog.