The Ink Theme — Palette, Contrast and CSS Variables

One of 8 themes in the code-to-image tool · light-first palette

The Ink theme is five colours, not thirty: a page wash, an editor surface, a tint for chrome, an accent for keywords and one text colour that has to sit legibly on all three surfaces. The table below turns the palette into the numbers you actually need when re-implementing it — channels, hue and, most importantly, contrast against each surface.

#EEF0F2Background#FCFCFDEditor#E6E9EETint#3D4451Accent#22252BText

Palette in every notation

TokenHEXRGBHSL
Background#EEF0F2rgb(238, 240, 242)hsl(210, 13%, 94%)
Editor#FCFCFDrgb(252, 252, 253)hsl(240, 20%, 99%)
Tint#E6E9EErgb(230, 233, 238)hsl(218, 19%, 92%)
Accent#3D4451rgb(61, 68, 81)hsl(219, 14%, 28%)
Text#22252Brgb(34, 37, 43)hsl(220, 12%, 15%)

Contrast on each surface

Ratios use the WCAG 2.1 relative-luminance definition (sRGB gamma linearisation, 0.2126 / 0.7152 / 0.0722 weights). AA wants 4.5:1 for body text and 3:1 for large text; AAA raises those to 7:1 and 4.5:1.

PairRatioAA textAA largeAAA text
Text on background13.44:1passpasspass
Text on editor14.98:1passpasspass
Text on tint12.62:1passpasspass
Accent on editor9.55:1passpasspass

Copy-paste tokens

:root {
  --snippet-bg: #eef0f2;
  --snippet-editor: #fcfcfd;
  --snippet-tint: #e6e9ee;
  --snippet-accent: #3d4451;
  --snippet-text: #22252b;
}

What this palette is good for

Neutral grey with a graphite accent — the safest choice for documentation, where a snippet may sit next to prose for pages at a time.

Other themes

Frequently asked questions

Does the Ink text colour pass WCAG on every surface?
Against the editor surface it measures 14.98:1 and against the page background 13.44:1. AA for body text needs 4.5:1, so the pair that matters for a code screenshot — text on editor — is comfortably above the bar.

Can I reuse these values in my own syntax theme?
Yes, and the copy block above is written as CSS custom properties for that reason. Map background to your editor canvas, editor to the code area, accent to keywords and text to identifiers. Because the palette is light-first, invert the two surfaces rather than the text colour if you need a dark variant.

Render your own snippet in this palette with the Code2Image code to image tool, or compare every palette in the theme library.