back to gallery
design language·citron-counter

Citron Counter

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
A premium commerce language built like a quiet storefront: black type on a warm-white product stage, one citrus halo that marks the moment you buy, and deep teal that seals the trust. Two vivid hues, never a rainbow.
values
product-first whitespacehigh-contrast blackline hierarchycontrolled citrus purchase energyteal assurance without rainbow driftfast scannable commerce decisions
anti-values
×rainbow promotional systems×decorative dotted or square-grid backgrounds×generic dashboard card piles×colored side rails or stripe accents×a third vivid hue creeping in
tokens
colors15 items
bg
#FCFCF8
surface
#FFFFFF
recess
#F4F3EC
text
#0B0C0A
muted
#6F6E66
border
#E2E1D6
accent
#C7F23A
accent_deep
#9BC400
on_accent
#0B0C0A
teal
#063F3D
halo
#E7FF6E
success
#4F7F00
warning
#8A6A00
error
#B42318
info
#063F3D
typography8 items
base size
17px
body font
Afacad
heading font
Schibsted Grotesk
mono font
Spline Sans Mono
heading weight
800
heading transform
none
letter spacing
-0.02em
google fonts url
https://fonts.googleapis.com/css2?family=Afacad:wght@400;500;600;700&family=Schibsted+Grotesk:wght@600;700;800&family=Spline+Sans+Mono:wght@500;600&display=swap
radii5 items
sm
10px
md
16px
lg
22px
full
9999px
none
0
shadows3 items
sm
0 1px 0 rgba(11,12,10,.06)
md
0 18px 48px rgba(38,37,29,.08)
lg
0 34px 88px rgba(38,37,29,.12)
spacing2 items
base
8px
scale
4, 8, 12, 16, 24, 32, 48, 64
surfaces3 items
bg pattern
none; warm-white product stage with negative space and blackline linework only
card style
flat white cards, 22px radius, no borders, restrained warm-tinted shadow only on dominant panels; specs and options grouped by blackline hairlines, not by a card per item
treatment
warm off-white and pure white planes with one soft citrus radial halo behind product imagery and primary purchase moments; no dot, grid, stripe, or paper texture
borders4 items
default width
1px
accent width
2px
style
solid
character
warm-gray hairlines for structure (the blackline dividers); citrus border only on selected option chips and focus rings, never as decorative side stripes
motion3 items
duration
180ms
easing
cubic-bezier(.2,.8,.2,1)
philosophy
commerce feedback feels crisp and magnetic: controls lift 2px, selected chips tighten, product thumbnails scale subtly without layout animation; the settled page is the default, motion is layered on top and respects prefers-reduced-motion
rules
composition
Lead with an asymmetric product commerce scene: one dominant product well that crosses column boundaries, one compact purchasing rail offset upward and tighter beside it, and a lower blackline comparison band that breaks the regular column rhythm.
hierarchy
Large black display type and wide whitespace first, then a citrus fill for the next purchase action, with teal only for assurance and detailed specification confidence.
density
Low-density premium surfaces with compact high-information islands for price, stock, and variant decisions; the largest whitespace gap is dramatically larger than form gaps.
signature
The citrus decision halo: a soft citrus radial field behind the hero product that reappears only under primary purchase or a selected variant; blackline commerce dividers; teal assurance blocks; magnetic option chips (citrus fill + 2px black inset + 2px lift); the dominant-product grid break.
layout
grid
Twelve-column desktop commerce grid with a dominant 7-column product well and a 4-column purchase rail offset upward; mobile collapses into a single purchase-first flow.
whitespace

Large quiet margins frame the product; internal control groups use 8-16px gaps while hero and section gaps expand to 64px or more.

density

airy; large product margins, compact high-information islands for price/stock/variants

responsive
Renders from ~390px mobile to 2560px+ ultra-wide; single column on mobile with the purchase rail first; contained content capped and centred on ultra-wide, only the hero spans 100vw.
breakpoints
mobile
390px
tablet
768px
desktop
1440px
reflow
900px and 600px
guidance
do
  • Use citrus for purchase intent, selected state, availability, focused controls, and the lead metric only.
  • Use deep teal for assurance, comparison, secure checkout, and specification confidence modules.
  • Keep backgrounds clean warm-white with no dots, square grids, stripes, or confetti; group with blackline hairlines, the recess surface, and shadow.
  • Let unframed whitespace and hairline dividers organize content before adding cards.
avoid
  • Do not add pink, purple, orange, or a third vivid hue.
  • Do not create a rainbow palette, colored side rails, border stripes, or swatch-catalog layouts.
  • Do not turn the embodiment into a SaaS dashboard or generic component inventory.
  • Do not mix arbitrary radii; keep the committed 22px product-commerce geometry.
imagery
pairs with

vitrine-studio

summary
A single dominant product floated centered on a seamless white-to-warm stage, a soft citrus halo blooming behind it, a faint cool-teal contact shadow beneath; quiet premium product-page calm.
subjects
over-ear headphonespremium consumer hardwaresingle hero productmatte minimalist objects
usage
One full-bleed Vitrine Studio hero per landing, swapped via --hero-image; product wells inside the UI reuse the citrus halo + cool contact shadow as a CSS treatment.
katagami spec
# Citron Counter

## Philosophy

A premium commerce language built like a quiet storefront: black type on a warm-white product stage, one citrus halo that marks the moment you buy, and deep teal that seals the trust. Two vivid hues, never a rainbow.

### Values

- product-first whitespace
- high-contrast blackline hierarchy
- controlled citrus purchase energy
- teal assurance without rainbow drift
- fast scannable commerce decisions

### Anti-Values

- rainbow promotional systems
- decorative dotted or square-grid backgrounds
- generic dashboard card piles
- colored side rails or stripe accents
- a third vivid hue creeping in

## Tokens

### Colors

| Name | Value |
|------|-------|
| bg | `#FCFCF8` |
| surface | `#FFFFFF` |
| recess | `#F4F3EC` |
| text | `#0B0C0A` |
| muted | `#6F6E66` |
| border | `#E2E1D6` |
| accent | `#C7F23A` |
| accent_deep | `#9BC400` |
| on_accent | `#0B0C0A` |
| teal | `#063F3D` |
| halo | `#E7FF6E` |
| success | `#4F7F00` |
| warning | `#8A6A00` |
| error | `#B42318` |
| info | `#063F3D` |

### Typography

- **Base Size**: 17px
- **Body Font**: Afacad
- **Heading Font**: Schibsted Grotesk
- **Mono Font**: Spline Sans Mono
- **Heading Weight**: 800
- **Heading Transform**: none
- **Letter Spacing**: -0.02em
- **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Afacad:wght@400;500;600;700&family=Schibsted+Grotesk:wght@600;700;800&family=Spline+Sans+Mono:wght@500;600&display=swap

### Radii

- **Sm**: 10px
- **Md**: 16px
- **Lg**: 22px
- **Full**: 9999px
- **None**: 0

### Shadows

- **Sm**: 0 1px 0 rgba(11,12,10,.06)
- **Md**: 0 18px 48px rgba(38,37,29,.08)
- **Lg**: 0 34px 88px rgba(38,37,29,.12)

### Spacing

- **Base**: 8px
- **Scale**: [4,8,12,16,24,32,48,64]

### Surfaces

- **Bg Pattern**: none; warm-white product stage with negative space and blackline linework only
- **Card Style**: flat white cards, 22px radius, no borders, restrained warm-tinted shadow only on dominant panels; specs and options grouped by blackline hairlines, not by a card per item
- **Treatment**: warm off-white and pure white planes with one soft citrus radial halo behind product imagery and primary purchase moments; no dot, grid, stripe, or paper texture

### Borders

- **Default Width**: 1px
- **Accent Width**: 2px
- **Style**: solid
- **Character**: warm-gray hairlines for structure (the blackline dividers); citrus border only on selected option chips and focus rings, never as decorative side stripes

### Motion

- **Duration**: 180ms
- **Easing**: cubic-bezier(.2,.8,.2,1)
- **Philosophy**: commerce feedback feels crisp and magnetic: controls lift 2px, selected chips tighten, product thumbnails scale subtly without layout animation; the settled page is the default, motion is layered on top and respects prefers-reduced-motion

## Rules

### Composition

Lead with an asymmetric product commerce scene: one dominant product well that crosses column boundaries, one compact purchasing rail offset upward and tighter beside it, and a lower blackline comparison band that breaks the regular column rhythm.

### Hierarchy

Large black display type and wide whitespace first, then a citrus fill for the next purchase action, with teal only for assurance and detailed specification confidence.

### Density

Low-density premium surfaces with compact high-information islands for price, stock, and variant decisions; the largest whitespace gap is dramatically larger than form gaps.

### Signature

The citrus decision halo: a soft citrus radial field behind the hero product that reappears only under primary purchase or a selected variant; blackline commerce dividers; teal assurance blocks; magnetic option chips (citrus fill + 2px black inset + 2px lift); the dominant-product grid break.

## Layout

### Grid

Twelve-column desktop commerce grid with a dominant 7-column product well and a 4-column purchase rail offset upward; mobile collapses into a single purchase-first flow.

### Whitespace

Large quiet margins frame the product; internal control groups use 8-16px gaps while hero and section gaps expand to 64px or more.

### Density

airy; large product margins, compact high-information islands for price/stock/variants

### Responsive

Renders from ~390px mobile to 2560px+ ultra-wide; single column on mobile with the purchase rail first; contained content capped and centred on ultra-wide, only the hero spans 100vw.

### Breakpoints

- **Mobile**: 390px
- **Tablet**: 768px
- **Desktop**: 1440px
- **Reflow**: 900px and 600px

## Guidance

### Do

- Use citrus for purchase intent, selected state, availability, focused controls, and the lead metric only.
- Use deep teal for assurance, comparison, secure checkout, and specification confidence modules.
- Keep backgrounds clean warm-white with no dots, square grids, stripes, or confetti; group with blackline hairlines, the recess surface, and shadow.
- Let unframed whitespace and hairline dividers organize content before adding cards.

### Don't

- Do not add pink, purple, orange, or a third vivid hue.
- Do not create a rainbow palette, colored side rails, border stripes, or swatch-catalog layouts.
- Do not turn the embodiment into a SaaS dashboard or generic component inventory.
- Do not mix arbitrary radii; keep the committed 22px product-commerce geometry.

### Accessibility

High contrast throughout: ink on warm-white, near-white on teal, ink on citrus (citrus is light). Body 17px+, table rows 14.5px+. Focus rings are a teal inset. Motion respects prefers-reduced-motion; the settled page renders with no JavaScript.

## Imagery Direction

### Pairs With

vitrine-studio

### Summary

A single dominant product floated centered on a seamless white-to-warm stage, a soft citrus halo blooming behind it, a faint cool-teal contact shadow beneath; quiet premium product-page calm.

### Subjects

- over-ear headphones
- premium consumer hardware
- single hero product
- matte minimalist objects

### Usage

One full-bleed Vitrine Studio hero per landing, swapped via --hero-image; product wells inside the UI reuse the citrus halo + cool contact shadow as a CSS treatment.
DESIGN.md
---
version: "alpha"
name: "Citron Counter"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
  bg: "#FCFCF8"
  surface: "#FFFFFF"
  recess: "#F4F3EC"
  text: "#0B0C0A"
  muted: "#6F6E66"
  border: "#E2E1D6"
  accent: "#C7F23A"
  accent_deep: "#9BC400"
  on_accent: "#0B0C0A"
  teal: "#063F3D"
  halo: "#E7FF6E"
  success: "#4F7F00"
  warning: "#8A6A00"
  error: "#B42318"
  info: "#063F3D"
typography:
  headline-lg:
    fontFamily: "Schibsted Grotesk"
    fontSize: "2.075rem"
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: "-0.02em"
  headline-md:
    fontFamily: "Schibsted Grotesk"
    fontSize: "1.66rem"
    fontWeight: 600
    lineHeight: 1.15
    letterSpacing: "-0.02em"
  body-md:
    fontFamily: "Afacad"
    fontSize: "17px"
    fontWeight: 400
    lineHeight: 1.5
    letterSpacing: "-0.02em"
  label-md:
    fontFamily: "Spline Sans Mono"
    fontSize: "0.75rem"
    fontWeight: 600
    lineHeight: 1
    letterSpacing: "0.08em"
rounded:
  sm: "10px"
  md: "16px"
  lg: "22px"
  full: "9999px"
  none: "0px"
spacing:
  base: "8px"
  xs: "4px"
  sm: "8px"
  md: "12px"
  lg: "16px"
  xl: "24px"
  2xl: "32px"
  3xl: "48px"
  4xl: "64px"
components:
  color-reference-bg:
    backgroundColor: "{colors.bg}"
  color-reference-surface:
    backgroundColor: "{colors.surface}"
  color-reference-recess:
    backgroundColor: "{colors.recess}"
  color-reference-text:
    backgroundColor: "{colors.text}"
  color-reference-muted:
    backgroundColor: "{colors.muted}"
  color-reference-border:
    backgroundColor: "{colors.border}"
  color-reference-accent:
    backgroundColor: "{colors.accent}"
  color-reference-accent_deep:
    backgroundColor: "{colors.accent_deep}"
  color-reference-on_accent:
    backgroundColor: "{colors.on_accent}"
  color-reference-teal:
    backgroundColor: "{colors.teal}"
  color-reference-halo:
    backgroundColor: "{colors.halo}"
  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"
---

# Citron Counter

## Overview

A premium commerce language built like a quiet storefront: black type on a warm-white product stage, one citrus halo that marks the moment you buy, and deep teal that seals the trust. Two vivid hues, never a rainbow.

### Values

- product-first whitespace
- high-contrast blackline hierarchy
- controlled citrus purchase energy
- teal assurance without rainbow drift
- fast scannable commerce decisions

### Anti-Values

- rainbow promotional systems
- decorative dotted or square-grid backgrounds
- generic dashboard card piles
- colored side rails or stripe accents
- a third vivid hue creeping in

## 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 | `#FCFCF8` |
| surface | `#FFFFFF` |
| recess | `#F4F3EC` |
| text | `#0B0C0A` |
| muted | `#6F6E66` |
| border | `#E2E1D6` |
| accent | `#C7F23A` |
| accent_deep | `#9BC400` |
| on_accent | `#0B0C0A` |
| teal | `#063F3D` |
| halo | `#E7FF6E` |
| success | `#4F7F00` |
| warning | `#8A6A00` |
| error | `#B42318` |
| info | `#063F3D` |

## Typography

- **Headline-Lg**: Schibsted Grotesk, 2.075rem, weight 700, line-height 1.1.
- **Headline-Md**: Schibsted Grotesk, 1.66rem, weight 600, line-height 1.15.
- **Body-Md**: Afacad, 17px, weight 400, line-height 1.5.
- **Label-Md**: Spline Sans Mono, 0.75rem, weight 600, line-height 1.

## Layout

### Spacing Tokens

- **Base**: `8px`
- **Xs**: `4px`
- **Sm**: `8px`
- **Md**: `12px`
- **Lg**: `16px`
- **Xl**: `24px`
- **2xl**: `32px`
- **3xl**: `48px`
- **4xl**: `64px`

### Grid

Twelve-column desktop commerce grid with a dominant 7-column product well and a 4-column purchase rail offset upward; mobile collapses into a single purchase-first flow.

### Whitespace

Large quiet margins frame the product; internal control groups use 8-16px gaps while hero and section gaps expand to 64px or more.

### Density

airy; large product margins, compact high-information islands for price/stock/variants

### Responsive

Renders from ~390px mobile to 2560px+ ultra-wide; single column on mobile with the purchase rail first; contained content capped and centred on ultra-wide, only the hero spans 100vw.

### Breakpoints

- **Mobile**: 390px
- **Tablet**: 768px
- **Desktop**: 1440px
- **Reflow**: 900px and 600px

## Elevation & Depth

### Shadows

- **Sm**: 0 1px 0 rgba(11,12,10,.06)
- **Md**: 0 18px 48px rgba(38,37,29,.08)
- **Lg**: 0 34px 88px rgba(38,37,29,.12)

## Shapes

### Rounded

- **Sm**: `10px`
- **Md**: `16px`
- **Lg**: `22px`
- **Full**: `9999px`
- **None**: `0px`

### Surfaces

- **Bg Pattern**: none; warm-white product stage with negative space and blackline linework only
- **Card Style**: flat white cards, 22px radius, no borders, restrained warm-tinted shadow only on dominant panels; specs and options grouped by blackline hairlines, not by a card per item
- **Treatment**: warm off-white and pure white planes with one soft citrus radial halo behind product imagery and primary purchase moments; no dot, grid, stripe, or paper texture

### Borders

- **Default Width**: 1px
- **Accent Width**: 2px
- **Style**: solid
- **Character**: warm-gray hairlines for structure (the blackline dividers); citrus border only on selected option chips and focus rings, never as decorative side stripes

## Components

### Composition

Lead with an asymmetric product commerce scene: one dominant product well that crosses column boundaries, one compact purchasing rail offset upward and tighter beside it, and a lower blackline comparison band that breaks the regular column rhythm.

### Hierarchy

Large black display type and wide whitespace first, then a citrus fill for the next purchase action, with teal only for assurance and detailed specification confidence.

### Density

Low-density premium surfaces with compact high-information islands for price, stock, and variant decisions; the largest whitespace gap is dramatically larger than form gaps.

### Signature

The citrus decision halo: a soft citrus radial field behind the hero product that reappears only under primary purchase or a selected variant; blackline commerce dividers; teal assurance blocks; magnetic option chips (citrus fill + 2px black inset + 2px lift); the dominant-product grid break.

## 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-019ef966-92a9-77f3-b14b-549b1067eac0/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 Use citrus for purchase intent, selected state, availability, focused controls, and the lead metric only.
- Do Use deep teal for assurance, comparison, secure checkout, and specification confidence modules.
- Do Keep backgrounds clean warm-white with no dots, square grids, stripes, or confetti; group with blackline hairlines, the recess surface, and shadow.
- Do Let unframed whitespace and hairline dividers organize content before adding cards.
- Don't Do not add pink, purple, orange, or a third vivid hue.
- Don't Do not create a rainbow palette, colored side rails, border stripes, or swatch-catalog layouts.
- Don't Do not turn the embodiment into a SaaS dashboard or generic component inventory.
- Don't Do not mix arbitrary radii; keep the committed 22px product-commerce geometry.

### Accessibility

High contrast throughout: ink on warm-white, near-white on teal, ink on citrus (citrus is light). Body 17px+, table rows 14.5px+. Focus rings are a teal inset. Motion respects prefers-reduced-motion; the settled page renders with no JavaScript.

## Imagery Direction

### Pairs With

vitrine-studio

### Summary

A single dominant product floated centered on a seamless white-to-warm stage, a soft citrus halo blooming behind it, a faint cool-teal contact shadow beneath; quiet premium product-page calm.

### Subjects

- over-ear headphones
- premium consumer hardware
- single hero product
- matte minimalist objects

### Usage

One full-bleed Vitrine Studio hero per landing, swapped via --hero-image; product wells inside the UI reuse the citrus halo + cool contact shadow as a CSS treatment.
shadcn/ui theme
```json
{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "citron-counter",
  "type": "registry:theme",
  "title": "Citron Counter shadcn Theme",
  "cssVars": {
    "theme": {},
    "light": {
      "background": "#FCFCF8",
      "foreground": "#0B0C0A",
      "card": "#FFFFFF",
      "card-foreground": "#0B0C0A",
      "popover": "#FFFFFF",
      "popover-foreground": "#0B0C0A",
      "primary": "#0B0C0A",
      "primary-foreground": "#ffffff",
      "secondary": "#f4f4f5",
      "secondary-foreground": "#111111",
      "muted": "#6F6E66",
      "muted-foreground": "#0B0C0A",
      "accent": "#C7F23A",
      "accent-foreground": "#111111",
      "destructive": "#B42318",
      "border": "#E2E1D6",
      "input": "#E2E1D6",
      "ring": "#C7F23A",
      "chart-1": "#0B0C0A",
      "chart-2": "#f4f4f5",
      "chart-3": "#C7F23A",
      "chart-4": "#4F7F00",
      "chart-5": "#8A6A00",
      "sidebar": "#FFFFFF",
      "sidebar-foreground": "#0B0C0A",
      "sidebar-primary": "#0B0C0A",
      "sidebar-primary-foreground": "#ffffff",
      "sidebar-accent": "#063F3D",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#E2E1D6",
      "sidebar-ring": "#C7F23A",
      "radius": "16px"
    },
    "dark": {
      "background": "#0f1115",
      "foreground": "#f8fafc",
      "card": "#181b22",
      "card-foreground": "#f8fafc",
      "popover": "#181b22",
      "popover-foreground": "#f8fafc",
      "primary": "#0B0C0A",
      "primary-foreground": "#ffffff",
      "secondary": "#252a33",
      "secondary-foreground": "#f8fafc",
      "muted": "#252a33",
      "muted-foreground": "#a1a1aa",
      "accent": "#C7F23A",
      "accent-foreground": "#111111",
      "destructive": "#B42318",
      "border": "#303642",
      "input": "#303642",
      "ring": "#C7F23A",
      "chart-1": "#0B0C0A",
      "chart-2": "#f4f4f5",
      "chart-3": "#C7F23A",
      "chart-4": "#4F7F00",
      "chart-5": "#8A6A00",
      "sidebar": "#181b22",
      "sidebar-foreground": "#f8fafc",
      "sidebar-primary": "#0B0C0A",
      "sidebar-primary-foreground": "#ffffff",
      "sidebar-accent": "#C7F23A",
      "sidebar-accent-foreground": "#111111",
      "sidebar-border": "#303642",
      "sidebar-ring": "#C7F23A",
      "radius": "16px"
    }
  },
  "meta": {
    "source": "katagami",
    "languageId": "en-019ef966-92a9-77f3-b14b-549b1067eac0",
    "slug": "citron-counter",
    "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_deep",
        "bg",
        "border",
        "error",
        "halo",
        "info",
        "muted",
        "on_accent",
        "recess",
        "success",
        "surface",
        "teal",
        "text",
        "warning"
      ],
      "typography": [
        "base_size",
        "body_font",
        "google_fonts_url",
        "heading_font",
        "heading_transform",
        "heading_weight",
        "letter_spacing",
        "mono_font"
      ],
      "radii": [
        "full",
        "lg",
        "md",
        "none",
        "sm"
      ],
      "shadows": [
        "lg",
        "md",
        "sm"
      ],
      "spacing": [
        "base",
        "scale"
      ],
      "surfaces": [
        "bg_pattern",
        "card_style",
        "treatment"
      ],
      "borders": [
        "accent_width",
        "character",
        "default_width",
        "style"
      ],
      "motion": [
        "duration",
        "easing",
        "philosophy"
      ]
    }
  }
}
```
in the wild

embodiments

bespoke marketing landingopen full page ↗
landing · citron-counter
DESIGN.md

at a glance

Typography

headline-lgSchibsted Grotesk · 33px · 700

The quick brown fox jumps

headline-mdSchibsted Grotesk · 27px · 600

The quick brown fox jumps

body-mdAfacad · 17px · 400

The quick brown fox jumps

label-mdSpline Sans Mono · 12px · 600

The quick brown fox jumps

shadcn/ui

implementation kit

built with

Agent-generated

remix lane

try a remix

Keep Citron Counterand 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
Citron Counter
Palette
Art style
Landing Page
live preview · recolored + filled
lineage

Family

1 descendant
related

More like this