back to gallery
design language·feihong

Feihong

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
Wild-cursive (kuangcao) calligraphy given to product surfaces. The page carries the gesture of brush meeting paper at speed — a single confident stroke that cannot be revised mid-flight. Ink-dark handmade-paper ground, cream ink that glows under lamplight, the vermillion seal pressed only where it counts. Calligraphy as performance, not careful penmanship.
values
The single confident stroke over mechanical precisionDeliberate asymmetry as compositional strengthInk-dark foundations that let cream content glowDry-brush texture and organic imperfection as authenticitySpeed and confidence in every interactionCompositional flow following cursive reading order (top-right to bottom-left)The vermillion seal reserved for moments that matter
anti-values
×Sterile symmetry and rigid grid alignment×Light or pastel grounds that lack gravitas×Rounded friendly rectangles that soften the gesture×Slow cautious motion that kills momentum×Borders and accent edges used as chrome
tokens
colors16 items
bg
#0F0E0C
surface
#1B1916
surface_2
#23201C
text
#ECE6DA
muted
#9C9081
border
#36312B
accent
#D8392B
on_accent
#FBF6EC
gold
#C8A85E
ink_1
#161410
ink_3
#332E27
ink_4
#4A4339
success
#6FA06A
warning
#C8A85E
error
#D8392B
info
#7C97A8
typography8 items
base size
17px
body font
Noto Sans SC
heading font
Ma Shan Zheng
mono font
Source Code Pro
heading weight
400
heading transform
none
letter spacing
-0.01em
google fonts url
https://fonts.googleapis.com/css2?family=Ma+Shan+Zheng&family=Noto+Sans+SC:wght@400;500;700&family=Source+Code+Pro:wght@400;500&display=swap
radii4 items
none
0
soft
16px
pill
9999px
organic clip
polygon(0 2%, 99% 0, 100% 98%, 1% 100%)
shadows5 items
sm
0 2px 10px rgba(0,0,0,.35)
md
0 14px 40px rgba(0,0,0,.55)
lg
0 28px 70px rgba(0,0,0,.66)
seal
5px 5px 0 rgba(216,57,43,.30)
inset vignette
inset 0 0 60px rgba(0,0,0,.5)
spacing2 items
base
8px
scale
4px, 8px, 12px, 16px, 24px, 32px, 48px, 64px, 96px
surfaces3 items
paper
#0F0E0C
panel
#1B1916
ink splatter
radial-gradient(circle at 18% 24%, rgba(156,144,129,.10) 1px, transparent 1.4px)
borders3 items
policy
none-as-chrome
focus ring
inset 0 0 0 2px #D8392B
seal bar
inset 4px 0 0 #D8392B
motion4 items
fast
150ms cubic-bezier(0.2,0,0,1)
flick
180ms cubic-bezier(0.2,0,0,1)
spread
300ms cubic-bezier(0.4,0,0.2,1)
reduced motion
respected
rules
composition
Asymmetric, off-centre-left, flowing rather than rigidly gridded; layouts follow cursive reading energy top-right to bottom-left. Oversized brush-stroke SVG anchors bleed behind content. Negative space is deliberate, like the breathing room in a scroll.
hierarchy
Dramatic size contrast. The wild-cursive display hand (Ma Shan Zheng) dominates headings, big numerals, and a table's leading cell like a bold first stroke; Noto Sans SC carries all reading. Vermillion marks the one primary action and active states; gold leaf marks secondary emphasis like a seal stamp.
density
Medium-high with generous vertical rhythm. Focal surfaces carry an organic dry-paper clip edge and a slight tilt (-0.6deg..0.6deg) for the handwritten feel. Spacing follows brush rhythm — tight within groups, generous between.
signature
1) Flying-white surfaces: organic clip-path edge + slight tilt on focal cards. 2) The seal, placed: a single inset 4px vermillion bar asymmetrically on active surfaces. 3) Gesture-flow anchors: oversized brush-stroke SVGs behind content. 4) Ink-splatter texture in large dark areas. 5) Dry-brush dividers — alternating-opacity bands, never flat rules.
layout
grid

asymmetric-fluid, off-centre-left, minmax(0,1fr) columns with min-width:0 children, max 1280px contained

whitespace

generous; section gap ~96px, component gap ~32px; always pad above titles

density

medium-high

responsive
single column on mobile; non-essential nav links and table columns hidden; only the full-bleed hero spans 100vw; contained content capped and centred on ultra-wide
breakpoints
mobile
390px
tablet
768px
desktop
1200px
ultrawide
2560px
guidance
do
  • Keep the ground ink-dark (#0F0E0C) with a faint ink-splatter texture
  • Use the organic clip-path edge and a slight tilt on focal surfaces
  • Place the vermillion seal rarely and asymmetrically (left edge or bottom)
  • Let oversized brush-stroke anchors bleed behind content, top-right to bottom-left
  • Use Ma Shan Zheng at large scale for headings, numerals, and the table's leading cell
  • Keep motion fast (150-200ms), gestural, ease-out; respect prefers-reduced-motion
  • Hold extreme cream-on-ink contrast (~13:1)
avoid
  • Never centre layouts symmetrically
  • Never use border-radius on primary containers
  • Never use light or pastel grounds
  • Never use pure white (#FFF) — the lightest value is the cream ink
  • Never box the nav into a floating pill or trap chrome in a card
  • Never put more than three accents in one view
  • Never apply the calligraphic hand to body paragraphs
  • Never use flat horizontal rule-lines — use the dry-brush band
imagery
pairs with

feibai-brushwork

summary
All imagery uses the Feibai Brushwork art style: forms built from a few sweeping single-gesture ink brushstrokes on dark handmade paper, dry-brush flying-white striations, a small vermillion seal-mark and flecks of gold leaf, asymmetric top-right to bottom-left energy.
subjects
wild-cursive calligraphic gesturesingle explosive brush strokeink-on-dark-paper abstractionfeibai flying-white sweep
usage
Landing hero is a full-bleed feibai gesture with breathing negative space in the lower-left for the headline overlay; feature images reuse the hero stroke. Never illustrate the thumbnail — the thumbnail is an embodiment screenshot.
katagami spec
# Feihong

## Philosophy

Wild-cursive (kuangcao) calligraphy given to product surfaces. The page carries the gesture of brush meeting paper at speed — a single confident stroke that cannot be revised mid-flight. Ink-dark handmade-paper ground, cream ink that glows under lamplight, the vermillion seal pressed only where it counts. Calligraphy as performance, not careful penmanship.

### Values

- The single confident stroke over mechanical precision
- Deliberate asymmetry as compositional strength
- Ink-dark foundations that let cream content glow
- Dry-brush texture and organic imperfection as authenticity
- Speed and confidence in every interaction
- Compositional flow following cursive reading order (top-right to bottom-left)
- The vermillion seal reserved for moments that matter

### Anti-Values

- Sterile symmetry and rigid grid alignment
- Light or pastel grounds that lack gravitas
- Rounded friendly rectangles that soften the gesture
- Slow cautious motion that kills momentum
- Borders and accent edges used as chrome

### Visual Character

- background:#0F0E0C; color:#ECE6DA; font-family:'Ma Shan Zheng',serif
- clip-path:polygon(0 2%,99% 0,100% 98%,1% 100%); transform:rotate(-0.6deg)
- box-shadow:0 14px 40px rgba(0,0,0,.55), inset 0 0 60px rgba(0,0,0,.5)
- primary action carries box-shadow:5px 5px 0 rgba(216,57,43,.30)
- background-image:radial-gradient(circle at 18% 24%, rgba(156,144,129,.10) 1px, transparent 1.4px)

## Tokens

### Colors

| Name | Value |
|------|-------|
| bg | `#0F0E0C` |
| surface | `#1B1916` |
| surface_2 | `#23201C` |
| text | `#ECE6DA` |
| muted | `#9C9081` |
| border | `#36312B` |
| accent | `#D8392B` |
| on_accent | `#FBF6EC` |
| gold | `#C8A85E` |
| ink_1 | `#161410` |
| ink_3 | `#332E27` |
| ink_4 | `#4A4339` |
| success | `#6FA06A` |
| warning | `#C8A85E` |
| error | `#D8392B` |
| info | `#7C97A8` |

### Typography

- **Base Size**: 17px
- **Body Font**: Noto Sans SC
- **Heading Font**: Ma Shan Zheng
- **Mono Font**: Source Code Pro
- **Heading Weight**: 400
- **Heading Transform**: none
- **Letter Spacing**: -0.01em
- **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Ma+Shan+Zheng&family=Noto+Sans+SC:wght@400;500;700&family=Source+Code+Pro:wght@400;500&display=swap

### Radii

- **None**: 0
- **Soft**: 16px
- **Pill**: 9999px
- **Organic Clip**: polygon(0 2%, 99% 0, 100% 98%, 1% 100%)

### Shadows

- **Sm**: 0 2px 10px rgba(0,0,0,.35)
- **Md**: 0 14px 40px rgba(0,0,0,.55)
- **Lg**: 0 28px 70px rgba(0,0,0,.66)
- **Seal**: 5px 5px 0 rgba(216,57,43,.30)
- **Inset Vignette**: inset 0 0 60px rgba(0,0,0,.5)

### Spacing

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

### Surfaces

- **Paper**: #0F0E0C
- **Panel**: #1B1916
- **Ink Splatter**: radial-gradient(circle at 18% 24%, rgba(156,144,129,.10) 1px, transparent 1.4px)

### Borders

- **Policy**: none-as-chrome
- **Focus Ring**: inset 0 0 0 2px #D8392B
- **Seal Bar**: inset 4px 0 0 #D8392B

### Motion

- **Fast**: 150ms cubic-bezier(0.2,0,0,1)
- **Flick**: 180ms cubic-bezier(0.2,0,0,1)
- **Spread**: 300ms cubic-bezier(0.4,0,0.2,1)
- **Reduced Motion**: respected

## Rules

### Composition

Asymmetric, off-centre-left, flowing rather than rigidly gridded; layouts follow cursive reading energy top-right to bottom-left. Oversized brush-stroke SVG anchors bleed behind content. Negative space is deliberate, like the breathing room in a scroll.

### Hierarchy

Dramatic size contrast. The wild-cursive display hand (Ma Shan Zheng) dominates headings, big numerals, and a table's leading cell like a bold first stroke; Noto Sans SC carries all reading. Vermillion marks the one primary action and active states; gold leaf marks secondary emphasis like a seal stamp.

### Density

Medium-high with generous vertical rhythm. Focal surfaces carry an organic dry-paper clip edge and a slight tilt (-0.6deg..0.6deg) for the handwritten feel. Spacing follows brush rhythm — tight within groups, generous between.

### Signature

1) Flying-white surfaces: organic clip-path edge + slight tilt on focal cards. 2) The seal, placed: a single inset 4px vermillion bar asymmetrically on active surfaces. 3) Gesture-flow anchors: oversized brush-stroke SVGs behind content. 4) Ink-splatter texture in large dark areas. 5) Dry-brush dividers — alternating-opacity bands, never flat rules.

## Layout

### Grid

asymmetric-fluid, off-centre-left, minmax(0,1fr) columns with min-width:0 children, max 1280px contained

### Whitespace

generous; section gap ~96px, component gap ~32px; always pad above titles

### Density

medium-high

### Responsive

single column on mobile; non-essential nav links and table columns hidden; only the full-bleed hero spans 100vw; contained content capped and centred on ultra-wide

### Breakpoints

- **Mobile**: 390px
- **Tablet**: 768px
- **Desktop**: 1200px
- **Ultrawide**: 2560px

## Guidance

### Do

- Keep the ground ink-dark (#0F0E0C) with a faint ink-splatter texture
- Use the organic clip-path edge and a slight tilt on focal surfaces
- Place the vermillion seal rarely and asymmetrically (left edge or bottom)
- Let oversized brush-stroke anchors bleed behind content, top-right to bottom-left
- Use Ma Shan Zheng at large scale for headings, numerals, and the table's leading cell
- Keep motion fast (150-200ms), gestural, ease-out; respect prefers-reduced-motion
- Hold extreme cream-on-ink contrast (~13:1)

### Don't

- Never centre layouts symmetrically
- Never use border-radius on primary containers
- Never use light or pastel grounds
- Never use pure white (#FFF) — the lightest value is the cream ink
- Never box the nav into a floating pill or trap chrome in a card
- Never put more than three accents in one view
- Never apply the calligraphic hand to body paragraphs
- Never use flat horizontal rule-lines — use the dry-brush band

### Accessibility

Cream #ECE6DA on #0F0E0C ground reaches ~13:1 (WCAG AAA). Body in Noto Sans SC at 17px for CJK and Latin readability. Interactive elements have a clear 2px vermillion focus ring. Motion respects prefers-reduced-motion; the fully-settled page renders with no JavaScript. Clip-path is decorative only — content stays in normal flow.

## Imagery Direction

### Pairs With

feibai-brushwork

### Summary

All imagery uses the Feibai Brushwork art style: forms built from a few sweeping single-gesture ink brushstrokes on dark handmade paper, dry-brush flying-white striations, a small vermillion seal-mark and flecks of gold leaf, asymmetric top-right to bottom-left energy.

### Subjects

- wild-cursive calligraphic gesture
- single explosive brush stroke
- ink-on-dark-paper abstraction
- feibai flying-white sweep

### Usage

Landing hero is a full-bleed feibai gesture with breathing negative space in the lower-left for the headline overlay; feature images reuse the hero stroke. Never illustrate the thumbnail — the thumbnail is an embodiment screenshot.
DESIGN.md
---
version: "alpha"
name: "Feihong"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
  bg: "#0F0E0C"
  surface: "#1B1916"
  surface_2: "#23201C"
  text: "#ECE6DA"
  muted: "#9C9081"
  border: "#36312B"
  accent: "#D8392B"
  on_accent: "#FBF6EC"
  gold: "#C8A85E"
  ink_1: "#161410"
  ink_3: "#332E27"
  ink_4: "#4A4339"
  success: "#6FA06A"
  warning: "#C8A85E"
  error: "#D8392B"
  info: "#7C97A8"
typography:
  headline-lg:
    fontFamily: "Ma Shan Zheng"
    fontSize: "2.075rem"
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: "-0.01em"
  headline-md:
    fontFamily: "Ma Shan Zheng"
    fontSize: "1.66rem"
    fontWeight: 600
    lineHeight: 1.15
    letterSpacing: "-0.01em"
  body-md:
    fontFamily: "Noto Sans SC"
    fontSize: "17px"
    fontWeight: 400
    lineHeight: 1.5
    letterSpacing: "-0.01em"
  label-md:
    fontFamily: "Source Code Pro"
    fontSize: "0.75rem"
    fontWeight: 600
    lineHeight: 1
    letterSpacing: "0.08em"
rounded:
  none: "0px"
  soft: "16px"
  pill: "9999px"
  organic_clip: "0px"
spacing:
  base: "8px"
  xs: "4px"
  sm: "8px"
  md: "12px"
  lg: "16px"
  xl: "24px"
  2xl: "32px"
  3xl: "48px"
  4xl: "64px"
  step-8: "96px"
components:
  color-reference-bg:
    backgroundColor: "{colors.bg}"
  color-reference-surface:
    backgroundColor: "{colors.surface}"
  color-reference-surface_2:
    backgroundColor: "{colors.surface_2}"
  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-on_accent:
    backgroundColor: "{colors.on_accent}"
  color-reference-gold:
    backgroundColor: "{colors.gold}"
  color-reference-ink_1:
    backgroundColor: "{colors.ink_1}"
  color-reference-ink_3:
    backgroundColor: "{colors.ink_3}"
  color-reference-ink_4:
    backgroundColor: "{colors.ink_4}"
  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: "#ffffff"
    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"
---

# Feihong

## Overview

Wild-cursive (kuangcao) calligraphy given to product surfaces. The page carries the gesture of brush meeting paper at speed — a single confident stroke that cannot be revised mid-flight. Ink-dark handmade-paper ground, cream ink that glows under lamplight, the vermillion seal pressed only where it counts. Calligraphy as performance, not careful penmanship.

### Values

- The single confident stroke over mechanical precision
- Deliberate asymmetry as compositional strength
- Ink-dark foundations that let cream content glow
- Dry-brush texture and organic imperfection as authenticity
- Speed and confidence in every interaction
- Compositional flow following cursive reading order (top-right to bottom-left)
- The vermillion seal reserved for moments that matter

### Anti-Values

- Sterile symmetry and rigid grid alignment
- Light or pastel grounds that lack gravitas
- Rounded friendly rectangles that soften the gesture
- Slow cautious motion that kills momentum
- Borders and accent edges used as chrome

### Visual Character

- background:#0F0E0C; color:#ECE6DA; font-family:'Ma Shan Zheng',serif
- clip-path:polygon(0 2%,99% 0,100% 98%,1% 100%); transform:rotate(-0.6deg)
- box-shadow:0 14px 40px rgba(0,0,0,.55), inset 0 0 60px rgba(0,0,0,.5)
- primary action carries box-shadow:5px 5px 0 rgba(216,57,43,.30)
- background-image:radial-gradient(circle at 18% 24%, rgba(156,144,129,.10) 1px, transparent 1.4px)

## 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 | `#0F0E0C` |
| surface | `#1B1916` |
| surface_2 | `#23201C` |
| text | `#ECE6DA` |
| muted | `#9C9081` |
| border | `#36312B` |
| accent | `#D8392B` |
| on_accent | `#FBF6EC` |
| gold | `#C8A85E` |
| ink_1 | `#161410` |
| ink_3 | `#332E27` |
| ink_4 | `#4A4339` |
| success | `#6FA06A` |
| warning | `#C8A85E` |
| error | `#D8392B` |
| info | `#7C97A8` |

## Typography

- **Headline-Lg**: Ma Shan Zheng, 2.075rem, weight 700, line-height 1.1.
- **Headline-Md**: Ma Shan Zheng, 1.66rem, weight 600, line-height 1.15.
- **Body-Md**: Noto Sans SC, 17px, weight 400, line-height 1.5.
- **Label-Md**: Source Code Pro, 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`

### Grid

asymmetric-fluid, off-centre-left, minmax(0,1fr) columns with min-width:0 children, max 1280px contained

### Whitespace

generous; section gap ~96px, component gap ~32px; always pad above titles

### Density

medium-high

### Responsive

single column on mobile; non-essential nav links and table columns hidden; only the full-bleed hero spans 100vw; contained content capped and centred on ultra-wide

### Breakpoints

- **Mobile**: 390px
- **Tablet**: 768px
- **Desktop**: 1200px
- **Ultrawide**: 2560px

## Elevation & Depth

### Shadows

- **Sm**: 0 2px 10px rgba(0,0,0,.35)
- **Md**: 0 14px 40px rgba(0,0,0,.55)
- **Lg**: 0 28px 70px rgba(0,0,0,.66)
- **Seal**: 5px 5px 0 rgba(216,57,43,.30)
- **Inset Vignette**: inset 0 0 60px rgba(0,0,0,.5)

## Shapes

### Rounded

- **None**: `0px`
- **Soft**: `16px`
- **Pill**: `9999px`
- **Organic Clip**: `0px`

### Surfaces

- **Paper**: #0F0E0C
- **Panel**: #1B1916
- **Ink Splatter**: radial-gradient(circle at 18% 24%, rgba(156,144,129,.10) 1px, transparent 1.4px)

### Borders

- **Policy**: none-as-chrome
- **Focus Ring**: inset 0 0 0 2px #D8392B
- **Seal Bar**: inset 4px 0 0 #D8392B

## Components

### Composition

Asymmetric, off-centre-left, flowing rather than rigidly gridded; layouts follow cursive reading energy top-right to bottom-left. Oversized brush-stroke SVG anchors bleed behind content. Negative space is deliberate, like the breathing room in a scroll.

### Hierarchy

Dramatic size contrast. The wild-cursive display hand (Ma Shan Zheng) dominates headings, big numerals, and a table's leading cell like a bold first stroke; Noto Sans SC carries all reading. Vermillion marks the one primary action and active states; gold leaf marks secondary emphasis like a seal stamp.

### Density

Medium-high with generous vertical rhythm. Focal surfaces carry an organic dry-paper clip edge and a slight tilt (-0.6deg..0.6deg) for the handwritten feel. Spacing follows brush rhythm — tight within groups, generous between.

### Signature

1) Flying-white surfaces: organic clip-path edge + slight tilt on focal cards. 2) The seal, placed: a single inset 4px vermillion bar asymmetrically on active surfaces. 3) Gesture-flow anchors: oversized brush-stroke SVGs behind content. 4) Ink-splatter texture in large dark areas. 5) Dry-brush dividers — alternating-opacity bands, never flat rules.

## 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-019ef9b1-f2a1-7a90-9849-75a24147e19a/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 Keep the ground ink-dark (#0F0E0C) with a faint ink-splatter texture
- Do Use the organic clip-path edge and a slight tilt on focal surfaces
- Do Place the vermillion seal rarely and asymmetrically (left edge or bottom)
- Do Let oversized brush-stroke anchors bleed behind content, top-right to bottom-left
- Do Use Ma Shan Zheng at large scale for headings, numerals, and the table's leading cell
- Do Keep motion fast (150-200ms), gestural, ease-out; respect prefers-reduced-motion
- Do Hold extreme cream-on-ink contrast (~13:1)
- Don't Never centre layouts symmetrically
- Don't Never use border-radius on primary containers
- Don't Never use light or pastel grounds
- Don't Never use pure white (#FFF) — the lightest value is the cream ink
- Don't Never box the nav into a floating pill or trap chrome in a card
- Don't Never put more than three accents in one view
- Don't Never apply the calligraphic hand to body paragraphs
- Don't Never use flat horizontal rule-lines — use the dry-brush band

### Accessibility

Cream #ECE6DA on #0F0E0C ground reaches ~13:1 (WCAG AAA). Body in Noto Sans SC at 17px for CJK and Latin readability. Interactive elements have a clear 2px vermillion focus ring. Motion respects prefers-reduced-motion; the fully-settled page renders with no JavaScript. Clip-path is decorative only — content stays in normal flow.

## Imagery Direction

### Pairs With

feibai-brushwork

### Summary

All imagery uses the Feibai Brushwork art style: forms built from a few sweeping single-gesture ink brushstrokes on dark handmade paper, dry-brush flying-white striations, a small vermillion seal-mark and flecks of gold leaf, asymmetric top-right to bottom-left energy.

### Subjects

- wild-cursive calligraphic gesture
- single explosive brush stroke
- ink-on-dark-paper abstraction
- feibai flying-white sweep

### Usage

Landing hero is a full-bleed feibai gesture with breathing negative space in the lower-left for the headline overlay; feature images reuse the hero stroke. Never illustrate the thumbnail — the thumbnail is an embodiment screenshot.
shadcn/ui theme
```json
{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "feihong",
  "type": "registry:theme",
  "title": "Feihong shadcn Theme",
  "cssVars": {
    "theme": {},
    "light": {
      "background": "#0F0E0C",
      "foreground": "#ECE6DA",
      "card": "#1B1916",
      "card-foreground": "#ECE6DA",
      "popover": "#1B1916",
      "popover-foreground": "#ECE6DA",
      "primary": "#ECE6DA",
      "primary-foreground": "#111111",
      "secondary": "#f4f4f5",
      "secondary-foreground": "#111111",
      "muted": "#9C9081",
      "muted-foreground": "#ECE6DA",
      "accent": "#D8392B",
      "accent-foreground": "#ffffff",
      "destructive": "#D8392B",
      "border": "#36312B",
      "input": "#36312B",
      "ring": "#D8392B",
      "chart-1": "#ECE6DA",
      "chart-2": "#f4f4f5",
      "chart-3": "#D8392B",
      "chart-4": "#6FA06A",
      "chart-5": "#C8A85E",
      "sidebar": "#1B1916",
      "sidebar-foreground": "#ECE6DA",
      "sidebar-primary": "#ECE6DA",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#7C97A8",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#36312B",
      "sidebar-ring": "#D8392B",
      "radius": "0.625rem"
    },
    "dark": {
      "background": "#0f1115",
      "foreground": "#f8fafc",
      "card": "#181b22",
      "card-foreground": "#f8fafc",
      "popover": "#181b22",
      "popover-foreground": "#f8fafc",
      "primary": "#ECE6DA",
      "primary-foreground": "#111111",
      "secondary": "#252a33",
      "secondary-foreground": "#f8fafc",
      "muted": "#252a33",
      "muted-foreground": "#a1a1aa",
      "accent": "#D8392B",
      "accent-foreground": "#ffffff",
      "destructive": "#D8392B",
      "border": "#303642",
      "input": "#303642",
      "ring": "#D8392B",
      "chart-1": "#ECE6DA",
      "chart-2": "#f4f4f5",
      "chart-3": "#D8392B",
      "chart-4": "#6FA06A",
      "chart-5": "#C8A85E",
      "sidebar": "#181b22",
      "sidebar-foreground": "#f8fafc",
      "sidebar-primary": "#ECE6DA",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#D8392B",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#303642",
      "sidebar-ring": "#D8392B",
      "radius": "0.625rem"
    }
  },
  "meta": {
    "source": "katagami",
    "languageId": "en-019ef9b1-f2a1-7a90-9849-75a24147e19a",
    "slug": "feihong",
    "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",
        "gold",
        "info",
        "ink_1",
        "ink_3",
        "ink_4",
        "muted",
        "on_accent",
        "success",
        "surface",
        "surface_2",
        "text",
        "warning"
      ],
      "typography": [
        "base_size",
        "body_font",
        "google_fonts_url",
        "heading_font",
        "heading_transform",
        "heading_weight",
        "letter_spacing",
        "mono_font"
      ],
      "radii": [
        "none",
        "organic_clip",
        "pill",
        "soft"
      ],
      "shadows": [
        "inset_vignette",
        "lg",
        "md",
        "seal",
        "sm"
      ],
      "spacing": [
        "base",
        "scale"
      ],
      "surfaces": [
        "ink_splatter",
        "panel",
        "paper"
      ],
      "borders": [
        "focus_ring",
        "policy",
        "seal_bar"
      ],
      "motion": [
        "fast",
        "flick",
        "reduced_motion",
        "spread"
      ]
    }
  }
}
```
in the wild

embodiments

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

at a glance

Typography

headline-lgMa Shan Zheng · 33px · 700

The quick brown fox jumps

headline-mdMa Shan Zheng · 27px · 600

The quick brown fox jumps

body-mdNoto Sans SC · 17px · 400

The quick brown fox jumps

label-mdSource Code Pro · 12px · 600

The quick brown fox jumps

shadcn/ui

implementation kit

built with

Agent-generated

remix lane

try a remix

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

Family

1 descendant
related

More like this