back to gallery
design language·verdigris

Verdigris

A portable design language for agents: download the markdown first, then inspect the preview, tokens, and rules as needed.

Download DESIGN.md

Portable DESIGN.md source of truth for most agents and apps.

the spec

specification

philosophy
summary
Verdigris is a dark, kiln-fired interface language. Its signature mechanic is the glaze run: colour pours from a bright fired lip at the top of a surface and runs downward in luminous vertical rivulets, thinning as it falls and gathering into a glossy pool at the foot, with one electric kiln-flash mark on the single rivulet the flame touched. It reimagines the contemplative reflection-garden idea not as a calm pond seen from above but as a glazed vessel watched in the dark while its glaze is still running: the same stillness and the same single seasonal mark, a different gravity. The ground is a near-black cooling kiln chamber; brightness lives only in the running jade glaze and the one flash.
values
the glaze run: surfaces hang from a lit lip and pour downward, never sit as flat cardsone material, fully committed: every surface is a fired glaze tile that pools dark at its foot, on a kiln-dark ground that is never whiteone kiln-flash mark per view, the single live thing the flame touched, used like a kiln accident that lands exactly where it mattersvertical, downward reading: lists, timelines, and navigation are parallel drip columns
anti-values
×dashboard clutter and dense labelling×defaulting to a white or washed-pale ground×a second loud accent, or letting the kiln-flash flood more than one element×thin ink-line botanical drawing or watercolour wash; the medium is fired glaze×the oversized italic serif headline, or the regular-serif / italic-serif word swap×borders, accent edges, and boxed-in nav widgets
tokens
colors17 items
bg
#10140F
surface
#18201A
surface_2
#202A22
surface_3
#29362B
text
#EAF2E6
muted
#9DAE9A
border
rgba(234,242,230,0.10)
accent
#6FCFA8
accent_strong
#3E9C78
accent_2
#34D8C8
accent_3
#C9682E
on_accent
#0C120E
pool
#0A0D08
success
#6FCFA8
warning
#C9942E
error
#D2553A
info
#34D8C8
typography9 items
base size
17px
body font
Inter
heading font
Space Grotesk
mono font
JetBrains Mono
heading weight
600
heading transform
none
letter spacing
-0.02em
line height
1.6
google fonts url
https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap
radii4 items
none
0
md
16px
lg
24px
full
9999px
shadows3 items
sm
0 6px 16px rgba(0,0,0,0.40)
md
0 16px 40px rgba(0,0,0,0.50)
pool
inset 0 -10px 22px rgba(8,11,6,0.65)
spacing2 items
base
8px
scale
4, 8, 12, 16, 24, 34, 54, 84, 128
surfaces2 items
treatment
fired glaze tiles with a top-down run gradient (bright jade lip to tenmoku-dark foot pool) and a faint craquelure overlay; no borders
bg pattern
fine crackle craquelure
borders2 items
default width
0
character
no borders; surfaces separate by the glaze run, the foot pool, and the gutter; at most one hairline rgba(234,242,230,0.06) between very dense rows
motion3 items
duration
240ms
easing
cubic-bezier(0.22,1,0.36,1)
philosophy
deliberate; the settled lit state is the default with no JavaScript, glaze-run reveals are added on top behind an html.js-on gate and honour prefers-reduced-motion
rules
composition
Compose as a dark glazed scene: primary content lives in fired glaze tiles on a kiln-dark ground, each tile pouring from a lit lip into a foot pool; lists and navigation are parallel drip columns read top to bottom; one cyan kiln-flash sits on the single most important live state. Surfaces separate by the glaze run and generous gutters, never by borders.
hierarchy
Lead with a calm Space Grotesk title carrying one cyan highlighter word, then a mono placard, then the glaze tiles. The kiln-flash mark draws the eye to the one rare, live thing.
density

Low to medium density, always legible. Every cluster is separated by visible breathing room; data tables and dashboards stay readable on glaze-run fields.

signature
The glaze run, every surface pours from a bright lit lip and gathers dark in a foot pool, crackles faintly, and recolours by role (jade field, deep-jade emphasis, cyan kiln-flash, copper iron-flash); the drip column is the navigation and timeline primitive.
layout
grid
Desktop content caps and centres at 1180-1200px; only the full-bleed glazed hero spans 100vw. A spacious grid: a wide hero, then glaze-tile modules and drip columns with raked space between them. Tablet keeps stacked tiles; mobile becomes a single calm column.
whitespace

Whitespace is raked sand, broad and intentional, left unfilled around every glaze tile.

density

low

responsive
Every artifact renders from ~390px to 2560px+. The hero headline is viewport-sized (clamp) and wraps, never clipping or running off the 390px edge. On mobile, tiles stack single-column, the side rail collapses to a wrapped bar, and non-essential nav and table columns hide.
breakpoints
mobile
0px
tablet
780px
desktop
1080px
guidance
do
  • Pour every surface from a lit lip into a tenmoku-dark foot pool; let the run be the only shadow
  • Keep the ground kiln-dark; let brightness live in the jade glaze and the one cyan flash
  • Use the cyan kiln-flash exactly once per view, on the single live thing
  • Read lists and navigation vertically as drip columns
  • Web a faint craquelure evenly across the gloss
avoid
  • Default to a white or washed-pale ground
  • Add borders, accent edges, or boxed-in pill nav
  • Spread the cyan flash or copper iron-flash across more than one element
  • Use thin ink-line botanical drawing or watercolour wash
  • Use the oversized italic serif or the serif/italic word swap headline
imagery
pairs with

celadon-glaze

summary
Any subject rendered as kiln-fired glaze in the Celadon Glaze technique: glossy vitreous sheen, colour pooling dark in the hollows and pale on raised edges, fine craquelure, soft ceramic highlights, one warm accent. Verdigris composes it dark: a single luminous glazed vessel in a dark kiln, glaze running off its lip, with an open dark zone to one side for the overlay.
subjects
a tall glazed vessel with glaze running off its lip in a dark kilna single glazed teapot with one iron-flash dripa glazed ceramic koi caught mid-turna glazed relief portrait
usage
One full-bleed glazed hero per landing, driven by --hero-image, with a calm dark kiln-shadow zone for the overlay headline; one live glazed piece per major surface elsewhere.
katagami spec
# Verdigris

## Philosophy

Verdigris is a dark, kiln-fired interface language. Its signature mechanic is the glaze run: colour pours from a bright fired lip at the top of a surface and runs downward in luminous vertical rivulets, thinning as it falls and gathering into a glossy pool at the foot, with one electric kiln-flash mark on the single rivulet the flame touched. It reimagines the contemplative reflection-garden idea not as a calm pond seen from above but as a glazed vessel watched in the dark while its glaze is still running: the same stillness and the same single seasonal mark, a different gravity. The ground is a near-black cooling kiln chamber; brightness lives only in the running jade glaze and the one flash.

### Values

- the glaze run: surfaces hang from a lit lip and pour downward, never sit as flat cards
- one material, fully committed: every surface is a fired glaze tile that pools dark at its foot, on a kiln-dark ground that is never white
- one kiln-flash mark per view, the single live thing the flame touched, used like a kiln accident that lands exactly where it matters
- vertical, downward reading: lists, timelines, and navigation are parallel drip columns

### Anti-Values

- dashboard clutter and dense labelling
- defaulting to a white or washed-pale ground
- a second loud accent, or letting the kiln-flash flood more than one element
- thin ink-line botanical drawing or watercolour wash; the medium is fired glaze
- the oversized italic serif headline, or the regular-serif / italic-serif word swap
- borders, accent edges, and boxed-in nav widgets

### Visual Character

- The glaze run: every content surface is a fired tile with a top-down gradient, bright jade at the lit lip and deepening to a tenmoku iron-dark pool at the foot. That pour is the only on-surface shadow; there are no borders.
- The drip column: parallel vertical runs with a thin jade vein carry navigation, metrics, and timelines, read top to bottom; the one column the flame touched glows cyan-teal.
- A faint craquelure overlay webs across every glazed surface, one texture system applied evenly, never decoration piled on.
- Space Grotesk display with a single cyan-teal highlighter-marked word, calm 17px Inter body, and JetBrains Mono uppercase placards that read like markings on the foot of a pot.
- A single copper iron-flash is the rarest seasonal mark, used once on a surface and never spread.

## Tokens

### Colors

| Name | Value |
|------|-------|
| bg | `#10140F` |
| surface | `#18201A` |
| surface_2 | `#202A22` |
| surface_3 | `#29362B` |
| text | `#EAF2E6` |
| muted | `#9DAE9A` |
| border | `rgba(234,242,230,0.10)` |
| accent | `#6FCFA8` |
| accent_strong | `#3E9C78` |
| accent_2 | `#34D8C8` |
| accent_3 | `#C9682E` |
| on_accent | `#0C120E` |
| pool | `#0A0D08` |
| success | `#6FCFA8` |
| warning | `#C9942E` |
| error | `#D2553A` |
| info | `#34D8C8` |

### Typography

- **Base Size**: 17px
- **Body Font**: Inter
- **Heading Font**: Space Grotesk
- **Mono Font**: JetBrains Mono
- **Heading Weight**: 600
- **Heading Transform**: none
- **Letter Spacing**: -0.02em
- **Line Height**: 1.6
- **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap

### Radii

- **None**: 0
- **Md**: 16px
- **Lg**: 24px
- **Full**: 9999px

### Shadows

- **Sm**: 0 6px 16px rgba(0,0,0,0.40)
- **Md**: 0 16px 40px rgba(0,0,0,0.50)
- **Pool**: inset 0 -10px 22px rgba(8,11,6,0.65)

### Spacing

- **Base**: 8px
- **Scale**: [4,8,12,16,24,34,54,84,128]

### Surfaces

- **Treatment**: fired glaze tiles with a top-down run gradient (bright jade lip to tenmoku-dark foot pool) and a faint craquelure overlay; no borders
- **Bg Pattern**: fine crackle craquelure

### Borders

- **Default Width**: 0
- **Character**: no borders; surfaces separate by the glaze run, the foot pool, and the gutter; at most one hairline rgba(234,242,230,0.06) between very dense rows

### Motion

- **Duration**: 240ms
- **Easing**: cubic-bezier(0.22,1,0.36,1)
- **Philosophy**: deliberate; the settled lit state is the default with no JavaScript, glaze-run reveals are added on top behind an html.js-on gate and honour prefers-reduced-motion

## Rules

### Composition

Compose as a dark glazed scene: primary content lives in fired glaze tiles on a kiln-dark ground, each tile pouring from a lit lip into a foot pool; lists and navigation are parallel drip columns read top to bottom; one cyan kiln-flash sits on the single most important live state. Surfaces separate by the glaze run and generous gutters, never by borders.

### Hierarchy

Lead with a calm Space Grotesk title carrying one cyan highlighter word, then a mono placard, then the glaze tiles. The kiln-flash mark draws the eye to the one rare, live thing.

### Density

Low to medium density, always legible. Every cluster is separated by visible breathing room; data tables and dashboards stay readable on glaze-run fields.

### Signature

The glaze run, every surface pours from a bright lit lip and gathers dark in a foot pool, crackles faintly, and recolours by role (jade field, deep-jade emphasis, cyan kiln-flash, copper iron-flash); the drip column is the navigation and timeline primitive.

## Layout

### Grid

Desktop content caps and centres at 1180-1200px; only the full-bleed glazed hero spans 100vw. A spacious grid: a wide hero, then glaze-tile modules and drip columns with raked space between them. Tablet keeps stacked tiles; mobile becomes a single calm column.

### Whitespace

Whitespace is raked sand, broad and intentional, left unfilled around every glaze tile.

### Density

low

### Responsive

Every artifact renders from ~390px to 2560px+. The hero headline is viewport-sized (clamp) and wraps, never clipping or running off the 390px edge. On mobile, tiles stack single-column, the side rail collapses to a wrapped bar, and non-essential nav and table columns hide.

### Breakpoints

- **Mobile**: 0px
- **Tablet**: 780px
- **Desktop**: 1080px

## Guidance

### Do

- Pour every surface from a lit lip into a tenmoku-dark foot pool; let the run be the only shadow
- Keep the ground kiln-dark; let brightness live in the jade glaze and the one cyan flash
- Use the cyan kiln-flash exactly once per view, on the single live thing
- Read lists and navigation vertically as drip columns
- Web a faint craquelure evenly across the gloss

### Don't

- Default to a white or washed-pale ground
- Add borders, accent edges, or boxed-in pill nav
- Spread the cyan flash or copper iron-flash across more than one element
- Use thin ink-line botanical drawing or watercolour wash
- Use the oversized italic serif or the serif/italic word swap headline

### Accessibility

Body 17px on a kiln-dark ground at high contrast; never encode meaning in glaze colour alone (pair the kiln-flash with a label). Keep overlaid hero text on a calm dark zone, not over the brightest pooled accent. Respect prefers-reduced-motion.

## Imagery Direction

### Pairs With

celadon-glaze

### Summary

Any subject rendered as kiln-fired glaze in the Celadon Glaze technique: glossy vitreous sheen, colour pooling dark in the hollows and pale on raised edges, fine craquelure, soft ceramic highlights, one warm accent. Verdigris composes it dark: a single luminous glazed vessel in a dark kiln, glaze running off its lip, with an open dark zone to one side for the overlay.

### Subjects

- a tall glazed vessel with glaze running off its lip in a dark kiln
- a single glazed teapot with one iron-flash drip
- a glazed ceramic koi caught mid-turn
- a glazed relief portrait

### Usage

One full-bleed glazed hero per landing, driven by --hero-image, with a calm dark kiln-shadow zone for the overlay headline; one live glazed piece per major surface elsewhere.
DESIGN.md
---
version: "alpha"
name: "Verdigris"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
  bg: "#10140F"
  surface: "#18201A"
  surface_2: "#202A22"
  surface_3: "#29362B"
  text: "#EAF2E6"
  muted: "#9DAE9A"
  accent: "#6FCFA8"
  accent_strong: "#3E9C78"
  accent_2: "#34D8C8"
  accent_3: "#C9682E"
  on_accent: "#0C120E"
  pool: "#0A0D08"
  success: "#6FCFA8"
  warning: "#C9942E"
  error: "#D2553A"
  info: "#34D8C8"
typography:
  headline-lg:
    fontFamily: "Space Grotesk"
    fontSize: "2.075rem"
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: "-0.02em"
  headline-md:
    fontFamily: "Space Grotesk"
    fontSize: "1.66rem"
    fontWeight: 600
    lineHeight: 1.15
    letterSpacing: "-0.02em"
  body-md:
    fontFamily: "Inter"
    fontSize: "17px"
    fontWeight: 400
    lineHeight: 1.6
    letterSpacing: "-0.02em"
  label-md:
    fontFamily: "JetBrains Mono"
    fontSize: "0.75rem"
    fontWeight: 600
    lineHeight: 1
    letterSpacing: "0.08em"
rounded:
  none: "0px"
  md: "16px"
  lg: "24px"
  full: "9999px"
spacing:
  base: "8px"
  xs: "4px"
  sm: "8px"
  md: "12px"
  lg: "16px"
  xl: "24px"
  2xl: "34px"
  3xl: "54px"
  4xl: "84px"
  step-8: "128px"
components:
  color-reference-bg:
    backgroundColor: "{colors.bg}"
  color-reference-surface:
    backgroundColor: "{colors.surface}"
  color-reference-surface_2:
    backgroundColor: "{colors.surface_2}"
  color-reference-surface_3:
    backgroundColor: "{colors.surface_3}"
  color-reference-text:
    backgroundColor: "{colors.text}"
  color-reference-muted:
    backgroundColor: "{colors.muted}"
  color-reference-accent:
    backgroundColor: "{colors.accent}"
  color-reference-accent_strong:
    backgroundColor: "{colors.accent_strong}"
  color-reference-accent_2:
    backgroundColor: "{colors.accent_2}"
  color-reference-accent_3:
    backgroundColor: "{colors.accent_3}"
  color-reference-on_accent:
    backgroundColor: "{colors.on_accent}"
  color-reference-pool:
    backgroundColor: "{colors.pool}"
  color-reference-success:
    backgroundColor: "{colors.success}"
  color-reference-warning:
    backgroundColor: "{colors.warning}"
  color-reference-error:
    backgroundColor: "{colors.error}"
  color-reference-info:
    backgroundColor: "{colors.info}"
  button-primary:
    backgroundColor: "{colors.accent}"
    textColor: "#000000"
    typography: "{typography.label-md}"
    rounded: "{rounded.md}"
    padding: "{spacing.md}"
  card-surface:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.md}"
    padding: "{spacing.md}"
  input-default:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.md}"
    height: "44px"
---

# Verdigris

## Overview

Verdigris is a dark, kiln-fired interface language. Its signature mechanic is the glaze run: colour pours from a bright fired lip at the top of a surface and runs downward in luminous vertical rivulets, thinning as it falls and gathering into a glossy pool at the foot, with one electric kiln-flash mark on the single rivulet the flame touched. It reimagines the contemplative reflection-garden idea not as a calm pond seen from above but as a glazed vessel watched in the dark while its glaze is still running: the same stillness and the same single seasonal mark, a different gravity. The ground is a near-black cooling kiln chamber; brightness lives only in the running jade glaze and the one flash.

### Values

- the glaze run: surfaces hang from a lit lip and pour downward, never sit as flat cards
- one material, fully committed: every surface is a fired glaze tile that pools dark at its foot, on a kiln-dark ground that is never white
- one kiln-flash mark per view, the single live thing the flame touched, used like a kiln accident that lands exactly where it matters
- vertical, downward reading: lists, timelines, and navigation are parallel drip columns

### Anti-Values

- dashboard clutter and dense labelling
- defaulting to a white or washed-pale ground
- a second loud accent, or letting the kiln-flash flood more than one element
- thin ink-line botanical drawing or watercolour wash; the medium is fired glaze
- the oversized italic serif headline, or the regular-serif / italic-serif word swap
- borders, accent edges, and boxed-in nav widgets

### Visual Character

- The glaze run: every content surface is a fired tile with a top-down gradient, bright jade at the lit lip and deepening to a tenmoku iron-dark pool at the foot. That pour is the only on-surface shadow; there are no borders.
- The drip column: parallel vertical runs with a thin jade vein carry navigation, metrics, and timelines, read top to bottom; the one column the flame touched glows cyan-teal.
- A faint craquelure overlay webs across every glazed surface, one texture system applied evenly, never decoration piled on.
- Space Grotesk display with a single cyan-teal highlighter-marked word, calm 17px Inter body, and JetBrains Mono uppercase placards that read like markings on the foot of a pot.
- A single copper iron-flash is the rarest seasonal mark, used once on a surface and never spread.

## Colors

Use the YAML color tokens as the normative palette. The prose below names the roles agents should preserve when generating UI.

| Token | Value |
|-------|-------|
| bg | `#10140F` |
| surface | `#18201A` |
| surface_2 | `#202A22` |
| surface_3 | `#29362B` |
| text | `#EAF2E6` |
| muted | `#9DAE9A` |
| accent | `#6FCFA8` |
| accent_strong | `#3E9C78` |
| accent_2 | `#34D8C8` |
| accent_3 | `#C9682E` |
| on_accent | `#0C120E` |
| pool | `#0A0D08` |
| success | `#6FCFA8` |
| warning | `#C9942E` |
| error | `#D2553A` |
| info | `#34D8C8` |

## Typography

- **Headline-Lg**: Space Grotesk, 2.075rem, weight 700, line-height 1.1.
- **Headline-Md**: Space Grotesk, 1.66rem, weight 600, line-height 1.15.
- **Body-Md**: Inter, 17px, weight 400, line-height 1.6.
- **Label-Md**: JetBrains Mono, 0.75rem, weight 600, line-height 1.

## Layout

### Spacing Tokens

- **Base**: `8px`
- **Xs**: `4px`
- **Sm**: `8px`
- **Md**: `12px`
- **Lg**: `16px`
- **Xl**: `24px`
- **2xl**: `34px`
- **3xl**: `54px`
- **4xl**: `84px`
- **Step-8**: `128px`

### Grid

Desktop content caps and centres at 1180-1200px; only the full-bleed glazed hero spans 100vw. A spacious grid: a wide hero, then glaze-tile modules and drip columns with raked space between them. Tablet keeps stacked tiles; mobile becomes a single calm column.

### Whitespace

Whitespace is raked sand, broad and intentional, left unfilled around every glaze tile.

### Density

low

### Responsive

Every artifact renders from ~390px to 2560px+. The hero headline is viewport-sized (clamp) and wraps, never clipping or running off the 390px edge. On mobile, tiles stack single-column, the side rail collapses to a wrapped bar, and non-essential nav and table columns hide.

### Breakpoints

- **Mobile**: 0px
- **Tablet**: 780px
- **Desktop**: 1080px

## Elevation & Depth

### Shadows

- **Sm**: 0 6px 16px rgba(0,0,0,0.40)
- **Md**: 0 16px 40px rgba(0,0,0,0.50)
- **Pool**: inset 0 -10px 22px rgba(8,11,6,0.65)

## Shapes

### Rounded

- **None**: `0px`
- **Md**: `16px`
- **Lg**: `24px`
- **Full**: `9999px`

### Surfaces

- **Treatment**: fired glaze tiles with a top-down run gradient (bright jade lip to tenmoku-dark foot pool) and a faint craquelure overlay; no borders
- **Bg Pattern**: fine crackle craquelure

### Borders

- **Default Width**: 0
- **Character**: no borders; surfaces separate by the glaze run, the foot pool, and the gutter; at most one hairline rgba(234,242,230,0.06) between very dense rows

## Components

### Composition

Compose as a dark glazed scene: primary content lives in fired glaze tiles on a kiln-dark ground, each tile pouring from a lit lip into a foot pool; lists and navigation are parallel drip columns read top to bottom; one cyan kiln-flash sits on the single most important live state. Surfaces separate by the glaze run and generous gutters, never by borders.

### Hierarchy

Lead with a calm Space Grotesk title carrying one cyan highlighter word, then a mono placard, then the glaze tiles. The kiln-flash mark draws the eye to the one rare, live thing.

### Density

Low to medium density, always legible. Every cluster is separated by visible breathing room; data tables and dashboards stay readable on glaze-run fields.

### Signature

The glaze run, every surface pours from a bright lit lip and gathers dark in a foot pool, crackles faintly, and recolours by role (jade field, deep-jade emphasis, cyan kiln-flash, copper iron-flash); the drip column is the navigation and timeline primitive.

## shadcn/ui Usage

When the target app uses shadcn/ui, copy DESIGN.md with shadcn instead of the plain DESIGN.md. It contains the same Katagami design-language source plus the shadcn/ui primitives, imports, theme variables, component recipes, and preview-shot guidance.

DESIGN.md with shadcn: `/language/en-019efded-7bdb-7180-8603-7a065c79010f/DESIGN.with-shadcn.md`.

The shadcn page also exposes optional machine-readable files for automation, but the human-facing handoff is DESIGN.md with shadcn.

Install recommended primitives with `npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table`.

Use these primitives in shadcn apps:
- button
- card
- input
- textarea
- select
- dialog
- sheet
- tabs
- badge
- separator
- checkbox
- switch
- slider
- tooltip
- dropdown-menu
- table

Implementation rule for agents: import shadcn primitives from `@/components/ui/*`, apply the generated CSS variables first, then compose the language-specific recipes from the companion MD. Katagami remains the source of truth; shadcn names are the implementation surface.

## Do's and Don'ts

- Do Pour every surface from a lit lip into a tenmoku-dark foot pool; let the run be the only shadow
- Do Keep the ground kiln-dark; let brightness live in the jade glaze and the one cyan flash
- Do Use the cyan kiln-flash exactly once per view, on the single live thing
- Do Read lists and navigation vertically as drip columns
- Do Web a faint craquelure evenly across the gloss
- Don't Default to a white or washed-pale ground
- Don't Add borders, accent edges, or boxed-in pill nav
- Don't Spread the cyan flash or copper iron-flash across more than one element
- Don't Use thin ink-line botanical drawing or watercolour wash
- Don't Use the oversized italic serif or the serif/italic word swap headline

### Accessibility

Body 17px on a kiln-dark ground at high contrast; never encode meaning in glaze colour alone (pair the kiln-flash with a label). Keep overlaid hero text on a calm dark zone, not over the brightest pooled accent. Respect prefers-reduced-motion.

## Imagery Direction

### Pairs With

celadon-glaze

### Summary

Any subject rendered as kiln-fired glaze in the Celadon Glaze technique: glossy vitreous sheen, colour pooling dark in the hollows and pale on raised edges, fine craquelure, soft ceramic highlights, one warm accent. Verdigris composes it dark: a single luminous glazed vessel in a dark kiln, glaze running off its lip, with an open dark zone to one side for the overlay.

### Subjects

- a tall glazed vessel with glaze running off its lip in a dark kiln
- a single glazed teapot with one iron-flash drip
- a glazed ceramic koi caught mid-turn
- a glazed relief portrait

### Usage

One full-bleed glazed hero per landing, driven by --hero-image, with a calm dark kiln-shadow zone for the overlay headline; one live glazed piece per major surface elsewhere.
shadcn/ui theme
```json
{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "verdigris",
  "type": "registry:theme",
  "title": "Verdigris shadcn Theme",
  "cssVars": {
    "theme": {},
    "light": {
      "background": "#10140F",
      "foreground": "#EAF2E6",
      "card": "#18201A",
      "card-foreground": "#EAF2E6",
      "popover": "#18201A",
      "popover-foreground": "#EAF2E6",
      "primary": "#EAF2E6",
      "primary-foreground": "#111111",
      "secondary": "#f4f4f5",
      "secondary-foreground": "#111111",
      "muted": "#9DAE9A",
      "muted-foreground": "#EAF2E6",
      "accent": "#6FCFA8",
      "accent-foreground": "#ffffff",
      "destructive": "#D2553A",
      "border": "rgba(234,242,230,0.10)",
      "input": "rgba(234,242,230,0.10)",
      "ring": "#6FCFA8",
      "chart-1": "#EAF2E6",
      "chart-2": "#f4f4f5",
      "chart-3": "#6FCFA8",
      "chart-4": "#6FCFA8",
      "chart-5": "#C9942E",
      "sidebar": "#18201A",
      "sidebar-foreground": "#EAF2E6",
      "sidebar-primary": "#EAF2E6",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#34D8C8",
      "sidebar-accent-foreground": "#111111",
      "sidebar-border": "rgba(234,242,230,0.10)",
      "sidebar-ring": "#6FCFA8",
      "radius": "16px"
    },
    "dark": {
      "background": "#0f1115",
      "foreground": "#f8fafc",
      "card": "#181b22",
      "card-foreground": "#f8fafc",
      "popover": "#181b22",
      "popover-foreground": "#f8fafc",
      "primary": "#EAF2E6",
      "primary-foreground": "#111111",
      "secondary": "#252a33",
      "secondary-foreground": "#f8fafc",
      "muted": "#252a33",
      "muted-foreground": "#a1a1aa",
      "accent": "#6FCFA8",
      "accent-foreground": "#ffffff",
      "destructive": "#D2553A",
      "border": "#303642",
      "input": "#303642",
      "ring": "#6FCFA8",
      "chart-1": "#EAF2E6",
      "chart-2": "#f4f4f5",
      "chart-3": "#6FCFA8",
      "chart-4": "#6FCFA8",
      "chart-5": "#C9942E",
      "sidebar": "#181b22",
      "sidebar-foreground": "#f8fafc",
      "sidebar-primary": "#EAF2E6",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#6FCFA8",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#303642",
      "sidebar-ring": "#6FCFA8",
      "radius": "16px"
    }
  },
  "meta": {
    "source": "katagami",
    "languageId": "en-019efded-7bdb-7180-8603-7a065c79010f",
    "slug": "verdigris",
    "componentManifest": [
      "button",
      "card",
      "input",
      "textarea",
      "select",
      "dialog",
      "sheet",
      "tabs",
      "badge",
      "separator",
      "checkbox",
      "switch",
      "slider",
      "tooltip",
      "dropdown-menu",
      "table"
    ],
    "installCommand": "npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table",
    "nativeTokenNames": {
      "colors": [
        "accent",
        "accent_2",
        "accent_3",
        "accent_strong",
        "bg",
        "border",
        "error",
        "info",
        "muted",
        "on_accent",
        "pool",
        "success",
        "surface",
        "surface_2",
        "surface_3",
        "text",
        "warning"
      ],
      "typography": [
        "base_size",
        "body_font",
        "google_fonts_url",
        "heading_font",
        "heading_transform",
        "heading_weight",
        "letter_spacing",
        "line_height",
        "mono_font"
      ],
      "radii": [
        "full",
        "lg",
        "md",
        "none"
      ],
      "shadows": [
        "md",
        "pool",
        "sm"
      ],
      "spacing": [
        "base",
        "scale"
      ],
      "surfaces": [
        "bg_pattern",
        "treatment"
      ],
      "borders": [
        "character",
        "default_width"
      ],
      "motion": [
        "duration",
        "easing",
        "philosophy"
      ]
    }
  }
}
```
in the wild

embodiments

bespoke marketing landingopen full page ↗
landing · verdigris
DESIGN.md

at a glance

Typography

headline-lgSpace Grotesk · 33px · 700

The quick brown fox jumps

headline-mdSpace Grotesk · 27px · 600

The quick brown fox jumps

body-mdInter · 17px · 400

The quick brown fox jumps

label-mdJetBrains Mono · 12px · 600

The quick brown fox jumps

shadcn/ui

implementation kit

built with

Agent-generated

produced by opus-4.8 · sourced by opus-4.8 · images by gpt-image-2

remix lane

try a remix

Keep Verdigrisand swap a palette and an art style onto it — the landing & dashboard recolor live. The Studio does the same with all three lanes free.

UI language · fixed
Verdigris
Palette
Art style
Landing Page
live preview · recolored + filled
lineage

Family

related

More like this