Palette ledger

Every color is an account with a purpose.

Contrast is measured against the editor background, #f6f8f6. Text needs 4.5:1; large marks and icons need 3:1.

The 14 palette colors, in order of use
No.SwatchNameHexOn editorFit forRole
1Deep evergreen#1b232015.04:1TextText, variables, functions
2Evergreen gray#5d68645.42:1TextParameters, keys, operators, secondary text
3Muted gray-green#66716d4.74:1TextComments, punctuation, line numbers
4Forest green#2d6a3b6.08:1TextAccent, strings, markup tags, success
5Accessible ochre#8a64085.04:1TextKeywords, numbers, attributes, warnings
6Warm ochre#b8860b3.05:1Large marksModified-file marks, warning badges, find outline
7Slate blue#3d5f7a6.31:1TextTypes, classes, interfaces, information
8Muted teal#2f6b6b5.73:1TextSecond bracket level, terminal cyan
9Plum#7a4a6e6.49:1TextThird bracket level, terminal magenta
10Deep brick red#8a26218.27:1TextErrors, deletions, failures
11Border gray-green#cfd6d21.39:1SurfaceBorders and separators
12Pale surface#eef2ef1.06:1SurfaceSidebars, tabs, title and status bars
13Near-white surface#f6f8f61.00:1SurfaceEditor, panel and terminal background
14White#ffffff1.07:1SurfaceMenus, suggestions, inputs, peek editors

Derived tints cover selections, hovers and the bright terminal colors. Each is listed with its job in DESIGN.md.

Same role, same color, in every language.

Keywords
return if def
Strings
"terminal"
Types
Command str number
Declarations
register
Parameters
command args
Comments
// recede, don't vanish
Language variables
this self
Errors
undefinedTotal

Checked on every change by 2,376 automated tests.

How the checks work