back to gallery
design language·kunpu

Kunpu

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
Kunpu — 薫風, the fragrant early-summer wind — is the bold-graphic Kodomo no Hi language: a festival poster of flat colour, hard edges, oversized type set tight, and big open white. Colour is held to three highlighters — electric young-leaf green, wind-cyan, and exactly one hot vermilion lead carp — on pure ink and white. Grown-up and hopeful, never childish or cluttered: the courage of the carp that climbs the wind, at a modern studio's polish.
values
The poster instinct — flat colour, hard edges, big confident type, lots of open whiteDaylight clarity: a clean bright ground, high-contrast ink, colour that never goes muddyDisciplined colour: electric green and wind-cyan as highlighters, one hot vermilion carp as the popWind, not float: things are caught taut and enter on a single directional gust, never a loopGrown-up optimism — a festival's courage at product-launch polish
anti-values
×Childish primary-colour clutter, kawaii mascots, balloon palettes, emoji×Soft, timid, washed-out pastel; reflexive cream or beige grounds; gradients on UI×Heavy borders, coloured side-rails, boxes nested inside boxes×Crowded layouts, gimmicky looping motion, scroll cues, oversized italic-serif heroes
tokens
colors13 items
bg
#F2F6EE
surface
#FFFFFF
text
#0B1A10
muted
#5C6F60
border
#DDE6D6
primary
#00A94A
secondary
#0097DC
accent
#FF4D2E
on_accent
#FFFFFF
success
#00A94A
warning
#E0930A
error
#D11A2A
info
#0097DC
typography8 items
base size
17px
body font
Zen Kaku Gothic New
heading font
Archivo Expanded
mono font
Space Mono
heading weight
800
heading transform
none
letter spacing
-0.03em
google fonts url
https://fonts.googleapis.com/css2?family=Archivo+Expanded:wght@500;600;700;800&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&family=Space+Mono:wght@400;700&display=swap
radii5 items
none
0
control
16px
card
16px
panel
24px
round
9999px
shadows4 items
sm
0 1px 2px rgba(11,26,16,.05)
md
0 18px 40px -22px rgba(11,40,22,.16)
lg
0 36px 72px -30px rgba(11,40,22,.20)
character
low, diffuse, tinted toward green-ink; flat blocks carry none
spacing2 items
base
8px
scale
4, 8, 12, 16, 24, 32, 48, 64, 96, 128
surfaces3 items
treatment
pure-white cards on a faint young-leaf ground, separated by a brightness step and open space; full-bleed hard-edged flat blocks for graphic statements
card style
flat white, 16px radius, faint ink-tinted shadow, no border
bg pattern
none on content; the only motif is the flat koinobori scale tile, used sparingly inside imagery
borders4 items
default width
0
accent width
1px leaf hairline (table dividers, input underlines); 2px ink registration rule under the index numbers
style
solid
character
no boxes, no coloured side-rails, no stripes
motion3 items
duration
300ms
easing
cubic-bezier(.2,.8,.2,1)
philosophy
content enters on a single directional gust (16–24px slide + fade) once on entry; no loops, no scroll cues; settled state is the default with no JS; respects prefers-reduced-motion
rules
composition
Poster-led. Every screen opens onto open white; the landing leads with one full-bleed hero image, then alternates airy type-blocks, a full-bleed streamer-band, and flat panels. One primary action and one koi-pop per region; left-aligned, large, confident type blocks.
hierarchy
Three voices (Archivo Expanded display, Zen Kaku Gothic New body/UI, Space Mono data) plus the index-rule registration and the highlighter mark carry hierarchy. Colour is a highlighter, never the hierarchy device.
density

Airy and confident — big type, generous space, tall table rows (15px+), mono tabular numbers, flat panels with real internal padding. Bright and uncrowded.

signature
streamer-band (full-bleed flat koinobori band, hard edges, forked tail); poster-head (oversized Archivo Expanded with one green/vermilion highlighter mark); index-rule (Space Mono section indices on a 2px ink rule with ticks); flat-block (hard-edged flat accent colour fields, no gradient, no shadow); koi-pop (the single hot-vermilion lead-carp mark per region)
layout
grid
12-column fluid, max-width 1200px; at least four distinct layout families across the landing's eight sections, each used once; dashboard is a fixed 248px left nav + fluid content
whitespace
generous and confident — section rhythm 120px desktop / 64px mobile; ≥32px above every title; white is the ground the graphic punches against; whitespace, a brightness step, and flat panels do the dividing borders would otherwise do
density

airy, bright, uncrowded

responsive

renders well from ~390px mobile to 2560px+; single column on mobile; full-bleed hero spans 100vw; grids shrink via minmax(0,1fr) and never overflow

breakpoints
lg
1024
md
768
sm
480
guidance
do
  • Lead the landing with one full-bleed hero image; overlay the headline on a clean white panel (not a dark scrim) so it stays legible and bright
  • Keep cards pure white on the faint young-leaf ground; separate with space and a brightness step, never borders or nested cards
  • Use exactly one vermilion koi-pop per region as the single warm spark; keep secondary actions quiet pale-green
  • Set headlines in Archivo Expanded with one highlighter mark, body in Zen Kaku Gothic New, and every number in Space Mono
  • Number sections with the Space Mono index-rule; let content enter on a single directional gust; respect prefers-reduced-motion
avoid
  • Crowd the page — no busy patterns, no primary-colour clutter, no grids or graph-paper grounds
  • Use gradients on UI elements, coloured side-rails, or borders to add colour
  • Reach for cream or beige; the ground is a clean cool young-leaf white
  • Let vermilion spread — one warm mark per region, never blocks of text; no kawaii mascots and no emoji
  • Add scroll cues, looping motion, an oversized italic-serif hero, or the regular/italic serif-swap headline
imagery
pairs with

hanga-cut

summary
Bold flat-graphic poster illustration in the modernist Japanese tradition — Ikko Tanaka's flat geometric forms on a limited palette, fused with Bauhaus discipline. Never photographic, woodblock, gradient-shaded, or cute. Pure bright white ground with generous open space; most shapes electric young-leaf green and wind-cyan with exactly one hot vermilion focal pop.
subjects
koinobori carp streamers caught taut on the windflat geometric young maple and oak leavesthe koinobori scale motif of small circles and trianglesriver-field sea of carp with one vermilion lead
usage
Landing hero is one full-bleed flat-graphic koinobori image; secondary imagery (streamer trio, river-field) supports the manifesto and media bands; never a photographic or gradient-shaded image.
katagami spec
# Kunpu

## Philosophy

Kunpu — 薫風, the fragrant early-summer wind — is the bold-graphic Kodomo no Hi language: a festival poster of flat colour, hard edges, oversized type set tight, and big open white. Colour is held to three highlighters — electric young-leaf green, wind-cyan, and exactly one hot vermilion lead carp — on pure ink and white. Grown-up and hopeful, never childish or cluttered: the courage of the carp that climbs the wind, at a modern studio's polish.

### Values

- The poster instinct — flat colour, hard edges, big confident type, lots of open white
- Daylight clarity: a clean bright ground, high-contrast ink, colour that never goes muddy
- Disciplined colour: electric green and wind-cyan as highlighters, one hot vermilion carp as the pop
- Wind, not float: things are caught taut and enter on a single directional gust, never a loop
- Grown-up optimism — a festival's courage at product-launch polish

### Anti-Values

- Childish primary-colour clutter, kawaii mascots, balloon palettes, emoji
- Soft, timid, washed-out pastel; reflexive cream or beige grounds; gradients on UI
- Heavy borders, coloured side-rails, boxes nested inside boxes
- Crowded layouts, gimmicky looping motion, scroll cues, oversized italic-serif heroes

## Tokens

### Colors

| Name | Value |
|------|-------|
| bg | `#F2F6EE` |
| surface | `#FFFFFF` |
| text | `#0B1A10` |
| muted | `#5C6F60` |
| border | `#DDE6D6` |
| primary | `#00A94A` |
| secondary | `#0097DC` |
| accent | `#FF4D2E` |
| on_accent | `#FFFFFF` |
| success | `#00A94A` |
| warning | `#E0930A` |
| error | `#D11A2A` |
| info | `#0097DC` |

### Typography

- **Base Size**: 17px
- **Body Font**: Zen Kaku Gothic New
- **Heading Font**: Archivo Expanded
- **Mono Font**: Space Mono
- **Heading Weight**: 800
- **Heading Transform**: none
- **Letter Spacing**: -0.03em
- **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Archivo+Expanded:wght@500;600;700;800&family=Zen+Kaku+Gothic+New:wght@400;500;700;900&family=Space+Mono:wght@400;700&display=swap

### Radii

- **None**: 0
- **Control**: 16px
- **Card**: 16px
- **Panel**: 24px
- **Round**: 9999px

### Shadows

- **Sm**: 0 1px 2px rgba(11,26,16,.05)
- **Md**: 0 18px 40px -22px rgba(11,40,22,.16)
- **Lg**: 0 36px 72px -30px rgba(11,40,22,.20)
- **Character**: low, diffuse, tinted toward green-ink; flat blocks carry none

### Spacing

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

### Surfaces

- **Treatment**: pure-white cards on a faint young-leaf ground, separated by a brightness step and open space; full-bleed hard-edged flat blocks for graphic statements
- **Card Style**: flat white, 16px radius, faint ink-tinted shadow, no border
- **Bg Pattern**: none on content; the only motif is the flat koinobori scale tile, used sparingly inside imagery

### Borders

- **Default Width**: 0
- **Accent Width**: 1px leaf hairline (table dividers, input underlines); 2px ink registration rule under the index numbers
- **Style**: solid
- **Character**: no boxes, no coloured side-rails, no stripes

### Motion

- **Duration**: 300ms
- **Easing**: cubic-bezier(.2,.8,.2,1)
- **Philosophy**: content enters on a single directional gust (16–24px slide + fade) once on entry; no loops, no scroll cues; settled state is the default with no JS; respects prefers-reduced-motion

## Rules

### Composition

Poster-led. Every screen opens onto open white; the landing leads with one full-bleed hero image, then alternates airy type-blocks, a full-bleed streamer-band, and flat panels. One primary action and one koi-pop per region; left-aligned, large, confident type blocks.

### Hierarchy

Three voices (Archivo Expanded display, Zen Kaku Gothic New body/UI, Space Mono data) plus the index-rule registration and the highlighter mark carry hierarchy. Colour is a highlighter, never the hierarchy device.

### Density

Airy and confident — big type, generous space, tall table rows (15px+), mono tabular numbers, flat panels with real internal padding. Bright and uncrowded.

### Signature

streamer-band (full-bleed flat koinobori band, hard edges, forked tail); poster-head (oversized Archivo Expanded with one green/vermilion highlighter mark); index-rule (Space Mono section indices on a 2px ink rule with ticks); flat-block (hard-edged flat accent colour fields, no gradient, no shadow); koi-pop (the single hot-vermilion lead-carp mark per region)

## Layout

### Grid

12-column fluid, max-width 1200px; at least four distinct layout families across the landing's eight sections, each used once; dashboard is a fixed 248px left nav + fluid content

### Whitespace

generous and confident — section rhythm 120px desktop / 64px mobile; ≥32px above every title; white is the ground the graphic punches against; whitespace, a brightness step, and flat panels do the dividing borders would otherwise do

### Density

airy, bright, uncrowded

### Responsive

renders well from ~390px mobile to 2560px+; single column on mobile; full-bleed hero spans 100vw; grids shrink via minmax(0,1fr) and never overflow

### Breakpoints

- **Lg**: 1024
- **Md**: 768
- **Sm**: 480

## Guidance

### Do

- Lead the landing with one full-bleed hero image; overlay the headline on a clean white panel (not a dark scrim) so it stays legible and bright
- Keep cards pure white on the faint young-leaf ground; separate with space and a brightness step, never borders or nested cards
- Use exactly one vermilion koi-pop per region as the single warm spark; keep secondary actions quiet pale-green
- Set headlines in Archivo Expanded with one highlighter mark, body in Zen Kaku Gothic New, and every number in Space Mono
- Number sections with the Space Mono index-rule; let content enter on a single directional gust; respect prefers-reduced-motion

### Don't

- Crowd the page — no busy patterns, no primary-colour clutter, no grids or graph-paper grounds
- Use gradients on UI elements, coloured side-rails, or borders to add colour
- Reach for cream or beige; the ground is a clean cool young-leaf white
- Let vermilion spread — one warm mark per region, never blocks of text; no kawaii mascots and no emoji
- Add scroll cues, looping motion, an oversized italic-serif hero, or the regular/italic serif-swap headline

### Accessibility

Body 17px+, high-contrast green-ink on white; the saturated accents are graphic fills/marks, never small text on white; the primary action is solid ink + white label (always AA); the single vermilion is a focal accent, never load-bearing for meaning; controls show a green focus ring.

## Imagery Direction

### Pairs With

hanga-cut

### Summary

Bold flat-graphic poster illustration in the modernist Japanese tradition — Ikko Tanaka's flat geometric forms on a limited palette, fused with Bauhaus discipline. Never photographic, woodblock, gradient-shaded, or cute. Pure bright white ground with generous open space; most shapes electric young-leaf green and wind-cyan with exactly one hot vermilion focal pop.

### Subjects

- koinobori carp streamers caught taut on the wind
- flat geometric young maple and oak leaves
- the koinobori scale motif of small circles and triangles
- river-field sea of carp with one vermilion lead

### Usage

Landing hero is one full-bleed flat-graphic koinobori image; secondary imagery (streamer trio, river-field) supports the manifesto and media bands; never a photographic or gradient-shaded image.
DESIGN.md
---
version: "alpha"
name: "Kunpu"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
  bg: "#F2F6EE"
  surface: "#FFFFFF"
  text: "#0B1A10"
  muted: "#5C6F60"
  border: "#DDE6D6"
  primary: "#00A94A"
  secondary: "#0097DC"
  accent: "#FF4D2E"
  on_accent: "#FFFFFF"
  success: "#00A94A"
  warning: "#E0930A"
  error: "#D11A2A"
  info: "#0097DC"
typography:
  headline-lg:
    fontFamily: "Archivo Expanded"
    fontSize: "2.075rem"
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: "-0.03em"
  headline-md:
    fontFamily: "Archivo Expanded"
    fontSize: "1.66rem"
    fontWeight: 600
    lineHeight: 1.15
    letterSpacing: "-0.03em"
  body-md:
    fontFamily: "Zen Kaku Gothic New"
    fontSize: "17px"
    fontWeight: 400
    lineHeight: 1.5
    letterSpacing: "-0.03em"
  label-md:
    fontFamily: "Space Mono"
    fontSize: "0.75rem"
    fontWeight: 600
    lineHeight: 1
    letterSpacing: "0.08em"
rounded:
  none: "0px"
  control: "16px"
  card: "16px"
  panel: "24px"
  round: "9999px"
spacing:
  base: "8px"
  xs: "4px"
  sm: "8px"
  md: "12px"
  lg: "16px"
  xl: "24px"
  2xl: "32px"
  3xl: "48px"
  4xl: "64px"
  step-8: "96px"
  step-9: "128px"
components:
  color-reference-bg:
    backgroundColor: "{colors.bg}"
  color-reference-surface:
    backgroundColor: "{colors.surface}"
  color-reference-text:
    backgroundColor: "{colors.text}"
  color-reference-muted:
    backgroundColor: "{colors.muted}"
  color-reference-border:
    backgroundColor: "{colors.border}"
  color-reference-primary:
    backgroundColor: "{colors.primary}"
  color-reference-secondary:
    backgroundColor: "{colors.secondary}"
  color-reference-accent:
    backgroundColor: "{colors.accent}"
  color-reference-on_accent:
    backgroundColor: "{colors.on_accent}"
  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.primary}"
    textColor: "#000000"
    typography: "{typography.label-md}"
    rounded: "{rounded.none}"
    padding: "{spacing.md}"
  card-surface:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.none}"
    padding: "{spacing.md}"
  input-default:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.none}"
    height: "44px"
---

# Kunpu

## Overview

Kunpu — 薫風, the fragrant early-summer wind — is the bold-graphic Kodomo no Hi language: a festival poster of flat colour, hard edges, oversized type set tight, and big open white. Colour is held to three highlighters — electric young-leaf green, wind-cyan, and exactly one hot vermilion lead carp — on pure ink and white. Grown-up and hopeful, never childish or cluttered: the courage of the carp that climbs the wind, at a modern studio's polish.

### Values

- The poster instinct — flat colour, hard edges, big confident type, lots of open white
- Daylight clarity: a clean bright ground, high-contrast ink, colour that never goes muddy
- Disciplined colour: electric green and wind-cyan as highlighters, one hot vermilion carp as the pop
- Wind, not float: things are caught taut and enter on a single directional gust, never a loop
- Grown-up optimism — a festival's courage at product-launch polish

### Anti-Values

- Childish primary-colour clutter, kawaii mascots, balloon palettes, emoji
- Soft, timid, washed-out pastel; reflexive cream or beige grounds; gradients on UI
- Heavy borders, coloured side-rails, boxes nested inside boxes
- Crowded layouts, gimmicky looping motion, scroll cues, oversized italic-serif heroes

## 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 | `#F2F6EE` |
| surface | `#FFFFFF` |
| text | `#0B1A10` |
| muted | `#5C6F60` |
| border | `#DDE6D6` |
| primary | `#00A94A` |
| secondary | `#0097DC` |
| accent | `#FF4D2E` |
| on_accent | `#FFFFFF` |
| success | `#00A94A` |
| warning | `#E0930A` |
| error | `#D11A2A` |
| info | `#0097DC` |

## Typography

- **Headline-Lg**: Archivo Expanded, 2.075rem, weight 700, line-height 1.1.
- **Headline-Md**: Archivo Expanded, 1.66rem, weight 600, line-height 1.15.
- **Body-Md**: Zen Kaku Gothic New, 17px, weight 400, line-height 1.5.
- **Label-Md**: Space 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`
- **Step-8**: `96px`
- **Step-9**: `128px`

### Grid

12-column fluid, max-width 1200px; at least four distinct layout families across the landing's eight sections, each used once; dashboard is a fixed 248px left nav + fluid content

### Whitespace

generous and confident — section rhythm 120px desktop / 64px mobile; ≥32px above every title; white is the ground the graphic punches against; whitespace, a brightness step, and flat panels do the dividing borders would otherwise do

### Density

airy, bright, uncrowded

### Responsive

renders well from ~390px mobile to 2560px+; single column on mobile; full-bleed hero spans 100vw; grids shrink via minmax(0,1fr) and never overflow

### Breakpoints

- **Lg**: 1024
- **Md**: 768
- **Sm**: 480

## Elevation & Depth

### Shadows

- **Sm**: 0 1px 2px rgba(11,26,16,.05)
- **Md**: 0 18px 40px -22px rgba(11,40,22,.16)
- **Lg**: 0 36px 72px -30px rgba(11,40,22,.20)
- **Character**: low, diffuse, tinted toward green-ink; flat blocks carry none

## Shapes

### Rounded

- **None**: `0px`
- **Control**: `16px`
- **Card**: `16px`
- **Panel**: `24px`
- **Round**: `9999px`

### Surfaces

- **Treatment**: pure-white cards on a faint young-leaf ground, separated by a brightness step and open space; full-bleed hard-edged flat blocks for graphic statements
- **Card Style**: flat white, 16px radius, faint ink-tinted shadow, no border
- **Bg Pattern**: none on content; the only motif is the flat koinobori scale tile, used sparingly inside imagery

### Borders

- **Default Width**: 0
- **Accent Width**: 1px leaf hairline (table dividers, input underlines); 2px ink registration rule under the index numbers
- **Style**: solid
- **Character**: no boxes, no coloured side-rails, no stripes

## Components

### Composition

Poster-led. Every screen opens onto open white; the landing leads with one full-bleed hero image, then alternates airy type-blocks, a full-bleed streamer-band, and flat panels. One primary action and one koi-pop per region; left-aligned, large, confident type blocks.

### Hierarchy

Three voices (Archivo Expanded display, Zen Kaku Gothic New body/UI, Space Mono data) plus the index-rule registration and the highlighter mark carry hierarchy. Colour is a highlighter, never the hierarchy device.

### Density

Airy and confident — big type, generous space, tall table rows (15px+), mono tabular numbers, flat panels with real internal padding. Bright and uncrowded.

### Signature

streamer-band (full-bleed flat koinobori band, hard edges, forked tail); poster-head (oversized Archivo Expanded with one green/vermilion highlighter mark); index-rule (Space Mono section indices on a 2px ink rule with ticks); flat-block (hard-edged flat accent colour fields, no gradient, no shadow); koi-pop (the single hot-vermilion lead-carp mark per region)

## 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-019efb7c-3434-77e1-bc48-4168b2fa8aa6/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 Lead the landing with one full-bleed hero image; overlay the headline on a clean white panel (not a dark scrim) so it stays legible and bright
- Do Keep cards pure white on the faint young-leaf ground; separate with space and a brightness step, never borders or nested cards
- Do Use exactly one vermilion koi-pop per region as the single warm spark; keep secondary actions quiet pale-green
- Do Set headlines in Archivo Expanded with one highlighter mark, body in Zen Kaku Gothic New, and every number in Space Mono
- Do Number sections with the Space Mono index-rule; let content enter on a single directional gust; respect prefers-reduced-motion
- Don't Crowd the page — no busy patterns, no primary-colour clutter, no grids or graph-paper grounds
- Don't Use gradients on UI elements, coloured side-rails, or borders to add colour
- Don't Reach for cream or beige; the ground is a clean cool young-leaf white
- Don't Let vermilion spread — one warm mark per region, never blocks of text; no kawaii mascots and no emoji
- Don't Add scroll cues, looping motion, an oversized italic-serif hero, or the regular/italic serif-swap headline

### Accessibility

Body 17px+, high-contrast green-ink on white; the saturated accents are graphic fills/marks, never small text on white; the primary action is solid ink + white label (always AA); the single vermilion is a focal accent, never load-bearing for meaning; controls show a green focus ring.

## Imagery Direction

### Pairs With

hanga-cut

### Summary

Bold flat-graphic poster illustration in the modernist Japanese tradition — Ikko Tanaka's flat geometric forms on a limited palette, fused with Bauhaus discipline. Never photographic, woodblock, gradient-shaded, or cute. Pure bright white ground with generous open space; most shapes electric young-leaf green and wind-cyan with exactly one hot vermilion focal pop.

### Subjects

- koinobori carp streamers caught taut on the wind
- flat geometric young maple and oak leaves
- the koinobori scale motif of small circles and triangles
- river-field sea of carp with one vermilion lead

### Usage

Landing hero is one full-bleed flat-graphic koinobori image; secondary imagery (streamer trio, river-field) supports the manifesto and media bands; never a photographic or gradient-shaded image.
shadcn/ui theme
```json
{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "kunpu",
  "type": "registry:theme",
  "title": "Kunpu shadcn Theme",
  "cssVars": {
    "theme": {},
    "light": {
      "background": "#F2F6EE",
      "foreground": "#0B1A10",
      "card": "#FFFFFF",
      "card-foreground": "#0B1A10",
      "popover": "#FFFFFF",
      "popover-foreground": "#0B1A10",
      "primary": "#00A94A",
      "primary-foreground": "#ffffff",
      "secondary": "#0097DC",
      "secondary-foreground": "#ffffff",
      "muted": "#5C6F60",
      "muted-foreground": "#0B1A10",
      "accent": "#FF4D2E",
      "accent-foreground": "#ffffff",
      "destructive": "#D11A2A",
      "border": "#DDE6D6",
      "input": "#DDE6D6",
      "ring": "#FF4D2E",
      "chart-1": "#00A94A",
      "chart-2": "#0097DC",
      "chart-3": "#FF4D2E",
      "chart-4": "#00A94A",
      "chart-5": "#E0930A",
      "sidebar": "#FFFFFF",
      "sidebar-foreground": "#0B1A10",
      "sidebar-primary": "#00A94A",
      "sidebar-primary-foreground": "#ffffff",
      "sidebar-accent": "#0097DC",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#DDE6D6",
      "sidebar-ring": "#FF4D2E",
      "radius": "0.625rem"
    },
    "dark": {
      "background": "#0f1115",
      "foreground": "#f8fafc",
      "card": "#181b22",
      "card-foreground": "#f8fafc",
      "popover": "#181b22",
      "popover-foreground": "#f8fafc",
      "primary": "#00A94A",
      "primary-foreground": "#ffffff",
      "secondary": "#252a33",
      "secondary-foreground": "#f8fafc",
      "muted": "#252a33",
      "muted-foreground": "#a1a1aa",
      "accent": "#FF4D2E",
      "accent-foreground": "#ffffff",
      "destructive": "#D11A2A",
      "border": "#303642",
      "input": "#303642",
      "ring": "#FF4D2E",
      "chart-1": "#00A94A",
      "chart-2": "#0097DC",
      "chart-3": "#FF4D2E",
      "chart-4": "#00A94A",
      "chart-5": "#E0930A",
      "sidebar": "#181b22",
      "sidebar-foreground": "#f8fafc",
      "sidebar-primary": "#00A94A",
      "sidebar-primary-foreground": "#ffffff",
      "sidebar-accent": "#FF4D2E",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#303642",
      "sidebar-ring": "#FF4D2E",
      "radius": "0.625rem"
    }
  },
  "meta": {
    "source": "katagami",
    "languageId": "en-019efb7c-3434-77e1-bc48-4168b2fa8aa6",
    "slug": "kunpu",
    "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",
        "bg",
        "border",
        "error",
        "info",
        "muted",
        "on_accent",
        "primary",
        "secondary",
        "success",
        "surface",
        "text",
        "warning"
      ],
      "typography": [
        "base_size",
        "body_font",
        "google_fonts_url",
        "heading_font",
        "heading_transform",
        "heading_weight",
        "letter_spacing",
        "mono_font"
      ],
      "radii": [
        "card",
        "control",
        "none",
        "panel",
        "round"
      ],
      "shadows": [
        "character",
        "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 · kunpu
DESIGN.md

at a glance

Typography

headline-lgArchivo Expanded · 33px · 700

The quick brown fox jumps

headline-mdArchivo Expanded · 27px · 600

The quick brown fox jumps

body-mdZen Kaku Gothic New · 17px · 400

The quick brown fox jumps

label-mdSpace Mono · 12px · 600

The quick brown fox jumps

shadcn/ui

implementation kit

built with

Agent-generated

produced by claude-opus-4-8 · sourced by opus-4.8 (bake-off import) · images by gpt-image-2

remix lane

try a remix

Keep Kunpuand 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
Kunpu
Palette
Art style
Landing Page
live preview · recolored + filled
related

More like this