Premium IDE light theme. Warm paper canvas, three syntax-color tokens (amber, teal, plum) used semantically, JetBrains Mono for structure, IBM Plex Sans for body, refined 4-6px corners. Editor-aesthetic with warmth.
A complete design system, ready for your AI coding agent. Every primitive, token, and pattern below is generated straight from DESIGN.md — drop the file in your project and ship matching UI in minutes.
Prose-first token file — decisions live next to their reasoning.
Fine micro-scale (1–5px) for pills, editorial scale (12–21px) for the grid.
The system's own radius tokens — sm for chips and inputs, md for buttons, lg for cards, pill for fully-rounded CTAs.
1---2name: "Citrine IDE"3description: "Premium IDE light theme. Warm paper canvas, three syntax-color tokens (amber, teal, plum) used semantically, JetBrains Mono for structure, IBM Plex Sans for body, refined 4-6px corners. Editor-aesthetic with warmth."4tags: [coding, light, developer, premium, warm]5colors:6 primary: "#1A1814"7 secondary: "#5F574B"8 tertiary: "#B57A1A"9 neutral: "#FAF6EC"10 surface: "#FFFCF4"11typography:12 display: "JetBrains Mono"13 body: "IBM Plex Sans"14 mono: "JetBrains Mono"15 scale:16 hero: "3.75rem / 1.05 / 500 / -0.035em"17 h1: "2.25rem / 1.1 / 500 / -0.03em"18 h2: "1.25rem / 1.3 / 500 / -0.012em"19 body: "1rem / 1.65 / 400 / -0.003em"20radius:21 sm: 4px22 md: 6px23 lg: 8px24shadows:25 card: "0 0 0 1px rgba(26, 24, 20, 0.08)"26 button: "0 2px 0 0 #8A5A10"27borders:28 card: "1px solid rgba(26, 24, 20, 0.08)"29 divider: "rgba(26, 24, 20, 0.12)"30buttons:31 primary:32 background: #B57A1A33 color: #FFFCF434 border: 1px solid #B57A1A35 shape: rounded36 padding: 10px 20px37 font: mono / 500 / 0.8125rem / -0.005em38 shadow: 0 2px 0 0 #8A5A1039 secondary:40 background: #FFFCF441 color: #1A181442 border: 1px solid rgba(181, 122, 26, 0.40)43 shape: rounded44 padding: 10px 20px45 font: mono / 500 / 0.8125rem / -0.005em46 outline:47 background: transparent48 color: #1A181449 border: 1px solid rgba(26, 24, 20, 0.18)50 shape: rounded51 padding: 10px 20px52 font: mono / 500 / 0.8125rem / -0.005em53 ghost:54 background: transparent55 color: #0F8A8256 border: none57 shape: rounded58 padding: 10px 4px59 font: mono / 500 / 0.8125rem / -0.005em60 hover: underline61charts:62 variant: "rounded-bars"63 stroke_width: 1.564 gridlines: true65 bar_radius: 2px66 bar_gap: 8px67 highlight: all68 axis_color: "#5F574B"69 palette: ["#B57A1A", "#0F8A82", "#7A2E5A"]70fonts_url: "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600&display=swap"71dependencies: ["lucide-react"]72---73 74# Citrine IDE75 76## AI Build Instructions77 78> **Read this section before writing any code.** The rules below79> are non-negotiable. Every value used in the UI must come from this80> file's frontmatter — never substitute, approximate, or invent new81> colors, fonts, radii, or shadows. If a value is missing, ask the82> user before adding one.83 84### 1 · Your role85 86You are building UI for a project that has adopted **Citrine IDE** as its87design system. Treat `DESIGN.md` as the single source of truth.88Your job is to translate the user's product requirements into89components and pages that look like they were designed by the same90person who authored this file.91 92### 2 · Token compliance93 94- Pull every color, font family, radius, shadow, and spacing value95 from the frontmatter at the top of this file.96- Use semantic roles (e.g. `primary`, `accent`, `muted`) — never97 hard-code hex values that bypass the system.98- When a token can be expressed as a CSS variable, declare it once99 in your global stylesheet and reference it everywhere downstream.100- The Google Fonts `<link>` is provided in the Typography section.101 Add it to `<head>` before any component renders.102 103### 3 · Component recipes104 105Use these recipes verbatim when building the corresponding component.106 107#### Buttons108 109Four variants are defined. Pick one — never blend variants or invent a fifth.110 111- **Primary** — rounded shape, bg `#B57A1A`, text `#FFFCF4`, border `1px solid #B57A1A`, padding `10px 20px`, weight `500`, shadow `0 2px 0 0 #8A5A10`.112- **Secondary** — rounded shape, bg `#FFFCF4`, text `#1A1814`, border `1px solid rgba(181, 122, 26, 0.40)`, padding `10px 20px`, weight `500`.113- **Outline** — rounded shape, text `#1A1814`, border `1px solid rgba(26, 24, 20, 0.18)`, padding `10px 20px`, weight `500`.114- **Ghost** — rounded shape, text `#0F8A82`, padding `10px 4px`, weight `500`.115 116Reach for **primary** as the single dominant CTA per screen.117**Secondary** for the supporting action. **Outline** for tertiary118actions in toolbars. **Ghost** for inline links and table actions.119 120#### Cards121 122- Background: `#FFFCF4`123- Border: `1px solid rgba(26, 24, 20, 0.08)`124- Shadow: `0 0 0 1px rgba(26, 24, 20, 0.08)`125- Radius: `radius.lg` (`8px`)126- Internal padding: `20px` for compact cards, `24–28px` for content cards.127 128#### Charts129 130- Bar/line variant: `rounded-bars`131- Bar radius: `2px`132- Highlight strategy: `all` — emphasize a single bar/point per chart.133- Use the declared palette in order: `#B57A1A`, `#0F8A82`, `#7A2E5A`.134 135#### Typography pairings136 137- **Display (`JetBrains Mono`)** — h1, h2, hero headlines, brand wordmarks.138- **Body (`IBM Plex Sans`)** — paragraphs, labels, button text, form inputs.139- **Mono (`JetBrains Mono`)** — code, eyebrows, metadata, numerals in tables.140 141### 4 · Hard constraints142 143Never do any of the following without explicit instruction from the user:144 145- Introduce a new color, font, radius, or shadow that isn't declared above.146- Mix this system with another (e.g. don't paste in Material or Bootstrap defaults).147- Use generic gradient defaults (purple→blue, peach→pink) — they break the system's voice.148- Reach for emoji icons. Use a consistent icon library and size icons in line with body type.149- Add motion that exceeds the system's restraint — keep transitions short (≤200ms) and subtle.150 151### 5 · Before you finish — verify152 153Run through this checklist for every screen you produce:154 155- [ ] Every color used appears in the Colors table above.156- [ ] Headlines use the display font; body copy uses the body font.157- [ ] Buttons match one of the declared variants exactly (shape, padding, weight).158- [ ] Border-radius values come from `radius.sm` / `radius.md` / `radius.lg` / `radius.pill`.159- [ ] Cards and dividers use the declared border + shadow tokens.160- [ ] No values were invented; if you needed something missing, you stopped and asked.161 162---163 164## Overview165Citrine IDE is a premium light theme borrowed from the editor world. The canvas is warm paper (a faint warm tint sets it apart from bone or pure white). Type is **JetBrains Mono** for all structure — display, headings, buttons, table headers — and **IBM Plex Sans** for body. The whole page reads as a structured editor pane.166 167The system uses **three syntax-token colors as a semantic palette**: amber (string), teal (function/identifier), plum (keyword). The amber is the chromatic accent, the teal is for ghost/link semantics, and plum appears only in charts and code-block highlights.168 169For developer documentation that wants warmth, AI coding tools, premium code-snippet platforms, design-engineering portfolios.170 171## Color172- **Ink #1A1814** — primary text. Deep warm graphite.173- **Mid Graphite #5F574B** — secondary text, inline-code default color.174- **Amber #B57A1A** — string token + primary CTA + chromatic accent.175- **Teal #0F8A82** — function/identifier token + ghost-button label + link.176- **Plum #7A2E5A** — keyword token + chart third-bar.177- **Paper #FAF6EC** — page canvas (warm).178- **Surface #FFFCF4** — card / editor pane.179 180The three syntax colors aren't decoration — they carry semantic meaning across charts, code blocks, and interactive elements.181 182## Typography183- **Display: JetBrains Mono 500** at 3.75rem with -3.5% tracking. Restrained — the page reads as an editor.184- **Body: IBM Plex Sans 400** at 1rem with 1.65 leading.185 186| Role | Font | Size | Weight | Tracking |187|------|------|------|--------|----------|188| Hero | JetBrains Mono | 3.75rem | 500 | -0.035em |189| H1 | JetBrains Mono | 2.25rem | 500 | -0.03em |190| H2 | JetBrains Mono | 1.25rem | 500 | -0.012em |191| Body | IBM Plex Sans | 1rem | 400 | -0.003em / 1.65 |192| Button | JetBrains Mono | 0.8125rem | 500 | -0.005em |193 194Body copy is the only proportional type. Everything structural is mono.195 196## Geometry197- **Radii: 4 / 6 / 8.** Editor-pane geometry. Never pill, never soft.198- **4px subgrid.**199- **Section gap: 96px** desktop, 64px mobile.200 201## Buttons202- **Primary** — warm amber fill with a **2px darker-amber bottom border** (`box-shadow: 0 2px 0 0 #8A5A10`). The bottom border reads as an "active tab" indicator — the system's signature.203- **Secondary** — surface paper with a 40% amber hairline. Mono label.204- **Outline** — bare warm-graphite hairline at 18%.205- **Ghost** — bare teal label. Hover underline.206 207The bottom-border on primary is non-negotiable — it is what makes the button read as an editor element rather than a generic CTA.208 209## Cards210Surface paper on the warm canvas, 1px ink hairline at 8% opacity, 6px corners, **no drop shadow**. Padding 24-32px. Editor-pane wireframes.211 212## Code Blocks213Code blocks use the surface color with a 1px hairline; syntax tokens map to the three palette colors (amber/teal/plum) plus warm graphite for default. `Inline code` uses warm graphite on a faint amber-tinted background.214 215## Charts & Data216Three-bar histogram in amber, teal, plum — the same syntax-token semantic. Gridlines on (developer tool — readability beats minimalism). 2px corner radius, 8px gap. Axis labels in mid-graphite mono at 11px.217 218## Do's and Don'ts219- ✅ Mono for display and structure. Proportional only for body.220- ✅ The 2px bottom border on primary CTA is the system's signature — keep it.221- ✅ Three syntax-token colors used semantically (amber=string, teal=function, plum=keyword).222- ✅ Warm canvas — not bone, not pure white. The warmth distinguishes it.223- ❌ No second display font. JetBrains Mono carries all structure.224- ❌ No pill buttons. No soft corners.225- ❌ No drop shadows on cards. The bottom-border on primary is the only "shadow."226- ❌ No oversized hero. The page is an editor, not a billboard.227 228---229 230## Tokens231 232> Generated from the same source the live preview renders from.233> Treat the values below as the contract — never substitute approximations.234 235### Colors236 237| Role | Value |238|-----------|-------|239| primary | `#1A1814` |240| secondary | `#5F574B` |241| tertiary | `#B57A1A` |242| neutral | `#FAF6EC` |243| surface | `#FFFCF4` |244 245### Typography246 247- **Display:** JetBrains Mono248- **Body:** IBM Plex Sans249- **Mono:** JetBrains Mono250 251| Role | size / leading / weight / tracking |252|------|------------------------------------|253| Hero | 3.75rem / 1.05 / 500 / -0.035em |254| H1 | 2.25rem / 1.1 / 500 / -0.03em |255| H2 | 1.25rem / 1.3 / 500 / -0.012em |256| Body | 1rem / 1.65 / 400 / -0.003em |257 258### Radius259 260- sm: `4px`261- md: `6px`262- lg: `8px`263 264### Shadows265 266- **card:** `0 0 0 1px rgba(26, 24, 20, 0.08)`267- **button:** `0 2px 0 0 #8A5A10`268 269### Borders270 271- **card:** `1px solid rgba(26, 24, 20, 0.08)`272- **divider:** `rgba(26, 24, 20, 0.12)`273 274### Buttons275 276Four variants, each fully tokenized. The preview renders from these exact values.277 278#### Primary279 280| Property | Value |281|----------|-------|282| shape | `rounded` |283| background | `#B57A1A` |284| color | `#FFFCF4` |285| border | `1px solid #B57A1A` |286| padding | `10px 20px` |287| fontFamily | `mono` |288| fontWeight | `500` |289| fontSize | `0.8125rem` |290| tracking | `-0.005em` |291| shadow | `0 2px 0 0 #8A5A10` |292 293#### Secondary294 295| Property | Value |296|----------|-------|297| shape | `rounded` |298| background | `#FFFCF4` |299| color | `#1A1814` |300| border | `1px solid rgba(181, 122, 26, 0.40)` |301| padding | `10px 20px` |302| fontFamily | `mono` |303| fontWeight | `500` |304| fontSize | `0.8125rem` |305| tracking | `-0.005em` |306 307#### Outline308 309| Property | Value |310|----------|-------|311| shape | `rounded` |312| background | `transparent` |313| color | `#1A1814` |314| border | `1px solid rgba(26, 24, 20, 0.18)` |315| padding | `10px 20px` |316| fontFamily | `mono` |317| fontWeight | `500` |318| fontSize | `0.8125rem` |319| tracking | `-0.005em` |320 321#### Ghost322 323| Property | Value |324|----------|-------|325| shape | `rounded` |326| background | `transparent` |327| color | `#0F8A82` |328| border | `none` |329| padding | `10px 4px` |330| fontFamily | `mono` |331| fontWeight | `500` |332| fontSize | `0.8125rem` |333| tracking | `-0.005em` |334| hoverHint | `underline` |335 336### Charts337 338| Property | Value |339|----------|-------|340| variant | `rounded-bars` |341| strokeWidth | `1.5` |342| gridlines | `true` |343| barRadius | `2px` |344| barGap | `8px` |345| highlight | `all` |346| axisColor | `#5F574B` |347| palette | `#B57A1A`, `#0F8A82`, `#7A2E5A` |348 # CLAUDE.md Reference @DESIGN.md for all styling decisions. Apply tokens strictly — do not introduce colors, fonts, or radii outside the system. When in doubt, prefer the values declared in DESIGN.md frontmatter.<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600&display=swap" />npm install lucide-react// tailwind.config.jsexport default { theme: { extend: { fontFamily: { display: ['"JetBrains Mono"', 'serif'], sans: ['"IBM Plex Sans"', 'sans-serif'], mono: ['"JetBrains Mono"', 'monospace'], }, colors: { primary: '#1A1814', secondary: '#5F574B', accent: '#B57A1A', neutral: '#FAF6EC', surface: '#FFFCF4', }, borderRadius: { sm: '4px', md: '6px', lg: '8px', }, }, },};An architecture studio's monograph rendered in HTML. Cormorant Garamond at oversized scale for project titles, Inter for body, concrete-grey surfaces with one warm terracotta accent reserved for the project number. Built for architecture firms, design studios, and portfolio sites where each project deserves its own page.
A complete design system, ready for your AI coding agent. Every primitive, token, and pattern below is generated straight from DESIGN.md — drop the file in your project and ship matching UI in minutes.
The design.md house style — Source Serif 4 with blue italic accent words, soft pastel mesh background (peach, lavender, mint), translucent glass panes with hairline borders, and a single deep editorial blue pill CTA.
A complete design system, ready for your AI coding agent. Every primitive, token, and pattern below is generated straight from DESIGN.md — drop the file in your project and ship matching UI in minutes.