Biswarup Mondal
Bengaluru
Tokens

Colour

A cool neutral ramp, three ink tones and exactly one accent. Light theme only — the structure is theme-ready, so adding dark means adding a second block of tokens and changing nothing else.

Surfaces

Ordered by depth rather than by lightness. Sunken and inset go down into the page; raised comes up off it, using a hairline and a shadow rather than a lighter fill.

--surface-page#F6F7F9 · the ground everything sits on
--surface-raised#FFFFFF · cards, panels, above the page
--surface-sunken#EEF0F4 · wells, code, inputs
--surface-inset#E3E6EB · tracks, the deepest level

Ink

Three tones, deliberately no more. Ratios are measured against --surface-page, and all three pass WCAG AA for body text — so choosing a quieter tone is a hierarchy decision, never an accessibility compromise.

--ink#0A0C10 · 18.3:1 — body and headings
--ink-muted#565B64 · 6.4:1 — secondary prose
--ink-faint#656B76 · 5.0:1 — labels and metadata
--ink-inverse#FFFFFF · 5.4:1 on --accent

Accent

One hue, and its job is to mark the single most important thing in view. --accent is the only variant safe for text: 5.0:1 against the page, and white on it clears 5.4:1, so it works as ink and as fill.

--accent#1F5FE8 · 5.0:1 — safe as text AND as fill
--accent-bright#2E6FFF · marks carrying no text
--accent-hover#1A52CC · hovered and pressed
--accent-wash8% bright · tinted backgrounds

Rules

Alpha, never solid. A hairline has to sit on every surface in the ramp and hold the same optical weight, which a solid grey cannot do — it will read too heavy on the sunken surface and vanish on the raised one.

1px
--rule-soft6% ink · dividers inside one group
1px
--rule10% ink · the default border
1px
--rule-strong18% ink · hovered or emphasised