Text #14152E Graphite Secondary #292B54 Prussian Blue Primary #5B54E8 Iris Accent #9A93F7 Cornflower Blue Surface #EEEDFC Cool White

Ocean Violet

Modern SaaS product UI 5 colors

A single indigo does all the work here, set between a periwinkle highlight and an ink deep enough for dense product screens. The surface is barely tinted violet so the primary never looks out of place.

Text Graphite — #14152E
Secondary Prussian Blue — #292B54
Primary Iris — #5B54E8
Accent Cornflower Blue — #9A93F7
Surface Cool White — #EEEDFC

Contrast matrix

Text on Surface 15.43 AAA
Primary on Surface 4.68 AA
Text on Secondary 1.33 Fail
Surface on Primary 4.68 AA
Accent on Text 6.71 AA

Ratios are WCAG 2 contrast between the roles as assigned above. AA needs 4.5:1 for body text, 3:1 for large text.

Export tokens

:root {
  --text: #14152E;
  --secondary: #292B54;
  --primary: #5B54E8;
  --accent: #9A93F7;
  --surface: #EEEDFC;
}
Download for Procreate

How the roles work

SurfaceThe lightest color — page and card backgrounds.
TextThe darkest color — body text and high-contrast UI.
PrimaryThe most chromatic middle — buttons, links, the one color that pushes.
AccentThe second most chromatic — badges, highlights, states.
SecondaryEverything else — fills, borders, supporting surfaces.