Use this when you're starting a new project, onboarding a new client, or aligning a team on visual language before building a full design system. Produces a structured style guide covering color palette, typography scale, spacing system, and component patterns from minimal brand inputs.
Process
Step 1: Gather inputs
Ask the user to provide:
- Brand colors — primary, secondary, and accent colors (hex codes preferred, names or descriptions accepted)
- Typography preferences — serif or sans-serif, mood (modern, classic, playful, corporate), any specific fonts already chosen
- Target audience — who is the product for? (age range, technical sophistication, industry context)
- Industry or domain — what space does the product operate in? (helps inform conventions and expectations)
- Existing brand assets — optional. Logos, competitor references, mood boards, or inspiration links
If the user provides only partial inputs, ask for at minimum: one primary color, a typography mood, and the target audience. These three are the foundation.
Step 2: Build color palette
Expand the provided colors into a complete system:
Core palette:
- Primary color with 5 tints (lighter) and 4 shades (darker)
- Secondary color with 3 tints and 3 shades
- Accent color with 2 tints and 2 shades
- Provide hex values for every swatch
Semantic colors:
- Success (green family)
- Warning (amber/yellow family)
- Error/Destructive (red family)
- Info (blue family)
- Each with a default, light (background), and dark (text-on-light) variant
Neutral scale:
- 10-step neutral scale from white to near-black
- Derived from the primary color (warm or cool bias, not pure gray)
Accessibility:
- Note contrast ratios for primary text on background combinations
- Flag any combinations that fail WCAG AA (4.5:1 for normal text, 3:1 for large text)
- Suggest alternatives for any failing combinations
Dark mode:
- Inverted neutral scale
- Adjusted primary/secondary/accent for dark backgrounds
- Semantic colors adjusted for dark mode contrast
Step 3: Define typography scale
Build a complete type system:
Type scale:
- Use a modular scale (1.250 Major Third or 1.333 Perfect Fourth recommended) or custom ratios
- Define sizes from caption (smallest) through Display (largest)
- Provide values in both px and rem
Heading hierarchy:
- H1 through H6 with: font size, font weight, line height, letter spacing, color
- Recommended max-width for readability (measure)
Body text:
- Body large and body default sizes
- Recommended line height (1.5–1.75 for body text)
- Paragraph spacing
Supporting styles:
- Caption, overline, label, button text
- Font size, weight, letter spacing, and text-transform for each
Font pairing:
- Recommend a heading + body font pairing based on the stated mood
- Explain the rationale (contrast, readability, personality)
- Include fallback font stacks
Step 4: Establish spacing system
Define consistent spatial relationships:
Base unit: 4px or 8px (recommend based on complexity of the UI)
Spacing scale:
- Named tokens:
xs(4px),sm(8px),md(16px),lg(24px),xl(32px),2xl(48px),3xl(64px) - Or numbered scale:
space-1throughspace-10
Layout:
- Breakpoints: mobile (< 640px), tablet (640–1024px), desktop (> 1024px)
- Container max-widths at each breakpoint
- Column grid: 4-column mobile, 8-column tablet, 12-column desktop
- Gutter widths at each breakpoint
Component spacing:
- Padding scales for buttons, cards, inputs, modals
- Margin between sections and content blocks
- Inline spacing for icons and text
Step 5: Document component patterns
Describe foundational component patterns as design tokens and specifications — not code implementations:
Buttons:
- Primary, secondary, tertiary, destructive variants
- States: default, hover, active, focused, disabled
- Sizes: small, medium, large
- Border radius, padding, font style for each
Form elements:
- Input fields: border, padding, font, placeholder style
- Labels: position, font, required indicator
- Help text and error messages: position, color, font
- Select, checkbox, radio, toggle specs
Cards:
- Border, shadow, border-radius, padding
- Header, body, footer zones
- Interactive (hoverable) vs. static variants
Elevation and shadow:
- 3–5 elevation levels
- Shadow values for each level (offset, blur, spread, color)
- When to use each level (e.g., level 1 for cards, level 3 for modals)
Navigation patterns:
- Top bar and sidebar conventions
- Active, hover, and disabled states
- Mobile navigation approach
Step 6: Compile and format
Assemble the complete style guide as a shareable Markdown document with this structure:
# (Project Name) Style Guide
## Overview
(Brief description of the brand personality and design direction)
## Color Palette
(Full palette with hex values, organized by category)
## Typography
(Type scale, heading hierarchy, body text, supporting styles)
## Spacing & Layout
(Spacing scale, breakpoints, grid system)
## Component Patterns
(Button, form, card, elevation, navigation specs)
## Implementation Notes
(Developer-focused guidance: CSS custom properties / design token naming, responsive behavior, accessibility requirements)
Include a section header comment in the implementation notes explaining how to convert the guide into CSS custom properties or design tokens.
Uncertainty Policy
| Topic | Tolerance | Action |
|---|---|---|
| Brand colors | Low | STOP and ask — the entire guide depends on accurate color input |
| Target audience | Low | STOP and ask — audience drives every design decision |
| Typography mood | Medium | Assume "modern, clean" + flag [ASSUMED] — user can correct |
| Specific font choices | Medium | Recommend pairing + flag [ASSUMED] — user may have licenses or preferences |
| Industry conventions | High | Best guess from domain context — user validates |
| Accessibility level | Medium | Default to WCAG AA + flag [ASSUMED] — user specifies if AAA needed |
| Dark mode inclusion | Medium | Generate dark mode variant + flag [ASSUMED] — user can remove if not needed |
| Spacing base unit | High | Best guess based on UI complexity — 8px for most projects |
Default: STOP and ask when a topic is not listed above.
Related skills
/design-review— review mockups against the generated style guide/ux-audit— assess existing product UX using the style guide as a reference/persona-draft— understand target users before generating the style guide
Output location
Present the style guide as formatted Markdown in the conversation. The user can copy it into their docs tool (Notion, Confluence, Google Docs) or commit it as a STYLE_GUIDE.md in the project repository.
Example Output
Input
- Brand colors: Primary
#1B4F8A(deep navy blue), Secondary#E8F0FA(light blue-gray), Accent#F5A623(warm amber) - Typography preferences: Sans-serif, modern and trustworthy mood — no specific fonts chosen yet
- Target audience: Financial advisors and wealth managers aged 35–60, high technical literacy, professional context
- Industry or domain: B2B fintech — portfolio analytics and reporting platform
- Existing brand assets: No logo yet; competitor references include Addepar and Orion Advisor
Output
Vantage Analytics Style Guide
Overview
Vantage Analytics serves financial professionals who demand precision, clarity, and trust from every screen. The design language is structured and authoritative — clean layouts, restrained color use, and typographic hierarchy that guides the eye through complex data without visual noise. Warmth comes through selectively via the amber accent, reserved for calls-to-action and key metrics that demand attention.
Color Palette
Core Palette
Primary — Navy Blue
| Token | Name | Hex | Usage |
|---|---|---|---|
primary-100 | Glacier | #EBF1F9 | Backgrounds, hover states |
primary-200 | Mist | #C7D8EF | Borders, dividers |
primary-300 | Cornflower | #8AAED8 | Disabled states, secondary icons |
primary-400 | Steel | #4F7DB8 | Secondary interactive elements |
primary-500 | Navy | #1B4F8A | Brand primary — buttons, links, active nav |
primary-600 | Anchor | #164270 | Hover on primary |
primary-700 | Admiral | #103358 | Active/pressed state |
primary-800 | Abyss | #0B2440 | Text on light backgrounds |
primary-900 | Midnight | #061528 | Dark mode surfaces |
Secondary — Blue-Gray
| Token | Hex | Usage |
|---|---|---|
secondary-100 | #F4F7FC | Page backgrounds |
secondary-200 | #E8F0FA | Card backgrounds, sidebar fill |
secondary-300 | #D0DFF2 | Table row alt, input fill |
secondary-400 | #A8BDD8 | Placeholder text, captions |
secondary-500 | #7A9BBF | Secondary text |
secondary-600 | #4E7299 | Subheadings, meta labels |
Accent — Amber
| Token | Hex | Usage |
|---|---|---|
accent-100 | #FEF3DC | Alert backgrounds, highlight fills |
accent-300 | #FAD080 | Badge fills, chart highlights |
accent-500 | #F5A623 | CTA buttons, key metric callouts |
accent-700 | #C07D0A | Hover on accent, icon on light |
Semantic Colors
| Purpose | Default | Light (bg) | Dark (text) |
|---|---|---|---|
| Success | #1E7D4A | #E8F7EE | #145232 |
| Warning | #C47C0D | #FEF4DC | #8A5508 |
| Error | #CC2F2F | #FCEAEA | #8F1A1A |
| Info | #1B4F8A | #EBF1F9 | #103358 |
Neutral Scale (cool bias, derived from primary)
| Token | Hex | Use |
|---|---|---|
neutral-0 | #FFFFFF | White — card backgrounds |
neutral-50 | #F7F9FC | Page canvas |
neutral-100 | #EEF1F6 | Table headers |
neutral-200 | #DDE3EC | Borders |
neutral-300 | #C4CCDA | Disabled borders |
neutral-400 | #9AA5B8 | Placeholder text |
neutral-500 | #6B7891 | Secondary text |
neutral-600 | #4D5A70 | Body text |
neutral-700 | #333F54 | Headings |
neutral-900 | #111827 | Near-black — display headings |
Accessibility Notes
| Combination | Ratio | WCAG AA (4.5:1) |
|---|---|---|
primary-500 on neutral-0 | 7.2:1 | ✅ Pass |
accent-500 on neutral-0 | 2.9:1 | ❌ Fail — use accent-700 on white for text |
neutral-600 on neutral-0 | 5.8:1 | ✅ Pass |
primary-300 on neutral-0 | 2.4:1 | ❌ Fail — decorative use only |
[ASSUMED]WCAG AA compliance targeted. Upgrade to AAA (7:1ratio) for any body text if accessibility review requires it.
Dark Mode Adjustments [ASSUMED]
- Neutral scale inverted:
neutral-900→ background,neutral-0→ text primary-400replacesprimary-500as interactive color (lighter for dark bg contrast)accent-300replacesaccent-500for CTA elements on dark surfaces- Semantic light variants become surface backgrounds; dark variants become text
Typography
Font Pairing [ASSUMED]
| Role | Font | Fallback Stack |
|---|---|---|
| Headings | Inter (weight 600–700) | system-ui, -apple-system, sans-serif |
| Body | Inter (weight 400–500) | system-ui, -apple-system, sans-serif |
Rationale: A single-family system using Inter provides extreme legibility at small sizes — critical for data-dense tables and dashboards. Weight contrast (400 vs. 700) creates hierarchy without introducing a second typeface, reducing cognitive load for users parsing complex reports. If a premium option is available, IBM Plex Sans (body) paired with Inter (headings) adds subtle personality while staying within the "precision instrument" register.
Type Scale (1.250 Major Third ratio, base 16px)
| Token | px | rem | Usage |
|---|---|---|---|
text-xs | 10px | 0.625rem | Legal, footnotes |
text-sm | 12px | 0.75rem | Captions, overlines, table metadata |
text-base | 14px | 0.875rem | Body default (data-dense UI) |
text-md | 16px | 1rem | Body large, card body |
text-lg | 20px | 1.25rem | H5, H6, labels |
text-xl | 24px | 1.5rem | H4, section headers |
text-2xl | 32px | 2rem | H3 |
text-3xl | 40px | 2.5rem | H2 |
text-4xl | 48px | 3rem | H1 |
text-display | 60px | 3.75rem | Marketing pages only |
Note: Body default is 14px rather than 16px due to the data-dense nature of financial dashboards. Reserve 16px for reading-focused pages such as documentation and onboarding.
Heading Hierarchy
| Level | Size | Weight | Line Height | Letter Spacing | Color | Max-width |
|---|---|---|---|---|---|---|
| H1 | 48px | 700 | 1.15 | -0.02em | neutral-900 | 720px |
| H2 |