Colour
Lagoon is the signature; Papaya is its warm counterweight — a vivid coral that plays against the cool teal without competing with it. Each ramp runs 50→900; the base and hover stops are marked. Click any swatch to copy its hex.
Ink & surfaces
Text never sits on pure black or pure white — Ink #10131A on light, Paper #F4F6F7 on dark. Softer than #000/#fff, still comfortably above AA. Every pairing below states its measured contrast ratio.
Background
The page floor. Everything rests on it.
--bgSurface
Cards, panels, inputs — one step up.
--surfaceSecondary surface
Papaya-tinted fills for warmth & grouping.
--surface-secondaryFoundations
The invisible scaffolding — spacing, radius, elevation, motion and icons. Consistent primitives are what make the system feel like one product rather than a pile of screens.
Spacing · 4px base
Radius
Elevation
Motion · hover to preview
Iconography · Lucide, 1.75px stroke
Line icons on a 24 grid, 1.75–2px stroke, round caps & joins. Sizes 16 / 18 / 20 / 24 to sit with text. Ship Lucide; match its grid and stroke for any custom glyph.
Typography
Three roles, three faces. Space Grotesk carries the wordmark and every heading so display type always matches the logo. Geist handles long-form copy and UI. Fira Code is the mono for code, data and labels.
Space Grotesk
Display · headingsGeist
Copy · UI · bodyThe mark is the Sumerian dingir: eight cuneiform wedges that scribes pressed before the name of a god. Geist keeps long passages calm and legible while Space Grotesk stays the distinctive voice — a neutral, contemporary companion that never competes for attention. It reads cleanly from 13 px captions to 19 px lead paragraphs.
Fira Code
Mono · code · dataconst primary = "#067F7B"; // AA on white
const radius = 12; // ligatures: != >= => ---
Form controls
Inputs, selection and toggles — all sharing the button system's focus ring, radius and motion, so a form feels of a piece with everything else. Every control shows its states.
Text input · states
Select
Checkbox
Radio
Switch
Components in context
The tokens proven together — inputs, badges, alerts, a card and a pricing panel. This is the system doing real work, not swatches in isolation.
Create workspace
Name it and invite your team. You can change everything later.
Alerts
Badges & tags
Everything a small team needs to ship.
- Unlimited projects
- Up to 10 teammates
- Priority support
Token reference
The semantic layer developers consume — these remap per theme so you style once. Full CSS lives in tokens.css; drop it in and use the variables below.
--bg#FAFBFCPage background--surface#FFFFFFCards, panels, inputs--surface-secondary#FFF2EAPapaya-tinted grouping--text#10131APrimary ink (18.9:1)--text-2#565B63Secondary text (6.4:1)--primary#08A8A3Links · focus · accent--primary-solid#067F7BCTA fill (white text, AA)--secondary-solid#FF854DPapaya fill (dark text, 7.8:1)--secondary-fg#B75020Papaya text / links (AA)--border#E4E8EBHairlines, dividers--r-md12pxDefault corner radius