Dew-Covered Candy Minimalism
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.
specification
philosophy
tokens
borders4 items
- accent width
- 2px
- character
- Mostly transparent white highlight borders plus occasional full coral or aqua rings; avoid solid gray separators and one-sided accent borders on rounded elements.
- default width
- 1px
- style
- solid
colors12 items
motion3 items
- duration
- 220ms
- easing
- cubic-bezier(.2,.8,.2,1)
- philosophy
- Motion feels like condensation settling: small upward lifts, soft opacity changes, and no bouncy toy movement.
radii5 items
- full
- 9999px
- lg
- 24px
- md
- 24px
- none
- 0
- sm
- 24px
shadows3 items
- lg
- 0 38px 120px rgba(134, 187, 178, 0.18)
- md
- 0 24px 70px rgba(111, 157, 150, 0.14)
- sm
- 0 10px 24px rgba(111, 157, 150, 0.10)
spacing2 items
- base
- 8px
- scale
- 4, 8, 12, 16, 24, 32, 48, 64, 80, 96
surfaces3 items
- bg pattern
- A few fixed radial-gradient fog blooms in pale aqua and warm off-white, never a rainbow field or saturated gradient.
- card style
- background: rgba(255,255,255,.58); backdrop-filter: blur(22px) saturate(135%); border: 1px solid rgba(255,255,255,.74); box-shadow: 0 24px 70px rgba(111,157,150,.14); border-radius: 24px
- treatment
- Warm fog-white base with restrained pale aqua and mint mist patches; content sits on translucent glass-like panels using blur and inner highlights.
typography9 items
- base size
- 16px
- body font
- Atkinson Hyperlegible
- display letter spacing
- -0.04em
- google fonts url
- https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:wght@400;700&family=Bricolage+Grotesque:wght@500;600;700&family=Recursive:CASL,MONO,wght@0,1,500;0,1,700&display=swap
- heading font
- Bricolage Grotesque
- letter spacing
- -0.02em
- line height
- 1.56
- mono font
- Recursive
- scale ratio
- 1.22
rules
Use a scene-first asymmetric product screen: one dominant frosted morning panel, a narrower stacked ritual column, and a full-bleed mist band that breaks the grid. Avoid three equal cards. Navigation remains small and pill-like, while the hero breathes with large negative space. Dense information is grouped into compact dew rows rather than boxed modules.
The language alternates very open morning space with compact ritual clusters: 4px bead gaps, 8-12px row gaps, 32px card padding, and 80-96px section separations to pass the 8:1 rhythm test.
Display headings are rounded, large, and tightly tracked; body text is darker than the surface blur and never placed over busy decoration. Important actions use a coral rim or dew bead, secondary actions use pale aqua fills, and metadata uses Recursive mono in tiny capsules. Scale changes are paired with weight and color, not size alone.
layout
Mobile under 640px becomes a single column with reordered navigation, tablet 641-980px uses a 6-column grid, desktop above 981px uses the full asymmetric 12-column grid.
Open by default, with compact clusters only for morning tasks, sensor readings, and status notes that benefit from proximity.
Desktop uses a 12-column max-width 1180px grid with 24px gutters; hero spans 7 columns and ritual column spans 4 with one empty column breathing between.
Dew beads and mist patches scale down and move inward on small screens so translucent effects never obscure text.
Outer margins range from 24px on mobile to 80px on desktop, while related label stacks can tighten to 4-8px for deliberate rhythm contrast.
guidance
- Use warm whites as the majority of the screen and let pale aqua or mint appear as atmosphere, not as content blocks.
- Place dew beads on purposeful interaction points: active tab, current ritual, selected plant, or fresh reading.
- Keep body text at 15-16px with -0.02em tracking and high enough contrast against translucent materials.
- Make one panel clearly dominant and one cluster intentionally dense rather than creating equal cards.
- Use coral for a single primary action or urgent freshness note; use lilac only as translucent supporting glints.
- Pair every glass surface with a simple solid fallback color and readable foreground contrast.
- Let icons be thin line drawings or small mono labels; never use cartoon stickers.
- Do not use rainbow ramps, multi-stop neon gradients, chromatic shadows, or synthetic triads.
- Do not place low-contrast text directly over strong blur blooms or decorative dew beads.
- Do not use three equal dashboard cards, generic analytics charts, CRM tables, or component-catalog sections.
- Do not make every corner bubbly; keep the radius scale disciplined at 24px with full pills only for capsules.
- Do not use toy-like typefaces, oversized emojis, sticker piles, or childish illustration metaphors.
- Do not rely on glass effect alone; the hierarchy must remain clear if backdrop-filter is unavailable.
- Do not fill empty space with more accents; morning quiet is part of the identity.
katagami spec
# Dew-Covered Candy Minimalism ## Philosophy Dew-Covered Candy Minimalism is a morning interface language for calm, youthful products that need delight without visual noise: warm fog-white space, misted translucent panels, readable soft typography, and tiny candy-like accents that behave as state, not decoration. ### Values - Freshness through material restraint: the interface should feel newly rinsed, not glossy or futuristic. - Legibility before translucency: blur, glass, and pale color are always secondary to readable hierarchy and contrast. - Playful control: candy color appears in pinpoints, capsule edges, or status beads rather than large fields. - Airy asymmetry: one generous morning-breath section pairs with a denser utility cluster instead of equal dashboard cards. - Tactile softness: rounded surfaces, inner highlights, and faint shadows suggest dewdrops on warm ceramic. - Quiet specificity: every decorative mark has a named role such as dew bead, freshness indicator, or focus glint. ### Anti-Values - Rainbow ramps, synthetic gradients, neon gamer glows, and hue-wheel palettes that make the product feel generated. - Childish toy styling with oversized bubbles, heavy candy colors, sticker chaos, or novelty type that harms comprehension. - Generic pastel SaaS dashboards with equal cards, gray borders, bland typography, and no structural signature. - Glassmorphism that lowers contrast or relies on busy photographic backgrounds to look interesting. ### Visual Character - Large warm off-white background planes use fixed radial mist patches and no loud gradients, keeping color below the content layer. - Primary cards are translucent frosted rectangles with 24px radii, backdrop-filter blur, white inner highlight borders, and very faint aqua shadows. - Small dew beads are made with radial-gradient pseudo-elements positioned on card corners, status rows, and navigation pills as the signature motif. - Hierarchy combines Bricolage Grotesque rounded display headings with Atkinson Hyperlegible body copy, tight tracking, and generous line-height for readability. - Candy accents are restricted to watermelon coral and translucent lilac micro-elements such as pips, toggles, progress nicks, and one call-to-action rim. ## Tokens ### Borders - **Accent Width**: 2px - **Character**: Mostly transparent white highlight borders plus occasional full coral or aqua rings; avoid solid gray separators and one-sided accent borders on rounded elements. - **Default Width**: 1px - **Style**: solid ### Colors | Name | Value | |------|-------| | accent | `#E99182` | | background | `#FBF8F1` | | border | `#FFFFFF` | | error | `#B96D66` | | info | `#86AFC8` | | muted | `#6F807C` | | primary | `#86BBB2` | | secondary | `#C9E8DD` | | success | `#6EA586` | | surface | `#FFFFFF` | | text | `#24312F` | | warning | `#C9A15E` | ### Motion - **Duration**: 220ms - **Easing**: cubic-bezier(.2,.8,.2,1) - **Philosophy**: Motion feels like condensation settling: small upward lifts, soft opacity changes, and no bouncy toy movement. ### Radii - **Full**: 9999px - **Lg**: 24px - **Md**: 24px - **None**: 0 - **Sm**: 24px ### Shadows - **Lg**: 0 38px 120px rgba(134, 187, 178, 0.18) - **Md**: 0 24px 70px rgba(111, 157, 150, 0.14) - **Sm**: 0 10px 24px rgba(111, 157, 150, 0.10) ### Spacing - **Base**: 8px - **Scale**: [4,8,12,16,24,32,48,64,80,96] ### Surfaces - **Bg Pattern**: A few fixed radial-gradient fog blooms in pale aqua and warm off-white, never a rainbow field or saturated gradient. - **Card Style**: background: rgba(255,255,255,.58); backdrop-filter: blur(22px) saturate(135%); border: 1px solid rgba(255,255,255,.74); box-shadow: 0 24px 70px rgba(111,157,150,.14); border-radius: 24px - **Treatment**: Warm fog-white base with restrained pale aqua and mint mist patches; content sits on translucent glass-like panels using blur and inner highlights. ### Typography - **Base Size**: 16px - **Body Font**: Atkinson Hyperlegible - **Display Letter Spacing**: -0.04em - **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:wght@400;700&family=Bricolage+Grotesque:wght@500;600;700&family=Recursive:CASL,MONO,wght@0,1,500;0,1,700&display=swap - **Heading Font**: Bricolage Grotesque - **Letter Spacing**: -0.02em - **Line Height**: 1.56 - **Mono Font**: Recursive - **Scale Ratio**: 1.22 ## Rules ### Composition Use a scene-first asymmetric product screen: one dominant frosted morning panel, a narrower stacked ritual column, and a full-bleed mist band that breaks the grid. Avoid three equal cards. Navigation remains small and pill-like, while the hero breathes with large negative space. Dense information is grouped into compact dew rows rather than boxed modules. ### Density The language alternates very open morning space with compact ritual clusters: 4px bead gaps, 8-12px row gaps, 32px card padding, and 80-96px section separations to pass the 8:1 rhythm test. ### Hierarchy Display headings are rounded, large, and tightly tracked; body text is darker than the surface blur and never placed over busy decoration. Important actions use a coral rim or dew bead, secondary actions use pale aqua fills, and metadata uses Recursive mono in tiny capsules. Scale changes are paired with weight and color, not size alone. ### Signature Patterns - Dew-bead pseudo-elements use layered radial-gradients and tiny inset highlights on the top-right of translucent surfaces. - Frosted ceramic panels combine backdrop-filter blur, warm white alpha backgrounds, white highlight borders, and muted aqua shadows. - Candy-rim controls show restrained coral or lilac full outlines only on focused actions while the fill stays fog-white or pale mint. - Mist-band grid breaks place an oversized soft aqua oval behind content and let a panel overlap it asymmetrically. ## Layout ### Breakpoints Mobile under 640px becomes a single column with reordered navigation, tablet 641-980px uses a 6-column grid, desktop above 981px uses the full asymmetric 12-column grid. ### Density Open by default, with compact clusters only for morning tasks, sensor readings, and status notes that benefit from proximity. ### Grid Desktop uses a 12-column max-width 1180px grid with 24px gutters; hero spans 7 columns and ritual column spans 4 with one empty column breathing between. ### Responsive Dew beads and mist patches scale down and move inward on small screens so translucent effects never obscure text. ### Whitespace Outer margins range from 24px on mobile to 80px on desktop, while related label stacks can tighten to 4-8px for deliberate rhythm contrast. ## Guidance ### Do - Use warm whites as the majority of the screen and let pale aqua or mint appear as atmosphere, not as content blocks. - Place dew beads on purposeful interaction points: active tab, current ritual, selected plant, or fresh reading. - Keep body text at 15-16px with -0.02em tracking and high enough contrast against translucent materials. - Make one panel clearly dominant and one cluster intentionally dense rather than creating equal cards. - Use coral for a single primary action or urgent freshness note; use lilac only as translucent supporting glints. - Pair every glass surface with a simple solid fallback color and readable foreground contrast. - Let icons be thin line drawings or small mono labels; never use cartoon stickers. ### Don't - Do not use rainbow ramps, multi-stop neon gradients, chromatic shadows, or synthetic triads. - Do not place low-contrast text directly over strong blur blooms or decorative dew beads. - Do not use three equal dashboard cards, generic analytics charts, CRM tables, or component-catalog sections. - Do not make every corner bubbly; keep the radius scale disciplined at 24px with full pills only for capsules. - Do not use toy-like typefaces, oversized emojis, sticker piles, or childish illustration metaphors. - Do not rely on glass effect alone; the hierarchy must remain clear if backdrop-filter is unavailable. - Do not fill empty space with more accents; morning quiet is part of the identity. ### Accessibility Maintain WCAG AA for text, provide visible coral/aqua focus rings with non-color labels, and keep all tap targets at least 44px. ### Usage Context Best for wellness, garden, habit, food, care, and lightweight planning tools that need freshness and approachable precision.
DESIGN.md
---
version: "alpha"
name: "Dew-Covered Candy Minimalism"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
accent: "#E99182"
background: "#FBF8F1"
border: "#FFFFFF"
error: "#B96D66"
info: "#86AFC8"
muted: "#6F807C"
primary: "#86BBB2"
secondary: "#C9E8DD"
success: "#6EA586"
surface: "#FFFFFF"
text: "#24312F"
warning: "#C9A15E"
typography:
headline-lg:
fontFamily: "Bricolage Grotesque"
fontSize: "1.816rem"
fontWeight: 700
lineHeight: 1.1
letterSpacing: "-0.02em"
headline-md:
fontFamily: "Bricolage Grotesque"
fontSize: "1.488rem"
fontWeight: 600
lineHeight: 1.15
letterSpacing: "-0.02em"
body-md:
fontFamily: "Atkinson Hyperlegible"
fontSize: "16px"
fontWeight: 400
lineHeight: 1.56
letterSpacing: "-0.02em"
label-md:
fontFamily: "Recursive"
fontSize: "0.75rem"
fontWeight: 600
lineHeight: 1
letterSpacing: "0.08em"
rounded:
full: "9999px"
lg: "24px"
md: "24px"
none: "0px"
sm: "24px"
spacing:
base: "8px"
xs: "4px"
sm: "8px"
md: "12px"
lg: "16px"
xl: "24px"
2xl: "32px"
3xl: "48px"
4xl: "64px"
step-8: "80px"
step-9: "96px"
components:
color-reference-accent:
backgroundColor: "{colors.accent}"
color-reference-background:
backgroundColor: "{colors.background}"
color-reference-border:
backgroundColor: "{colors.border}"
color-reference-error:
backgroundColor: "{colors.error}"
color-reference-info:
backgroundColor: "{colors.info}"
color-reference-muted:
backgroundColor: "{colors.muted}"
color-reference-primary:
backgroundColor: "{colors.primary}"
color-reference-secondary:
backgroundColor: "{colors.secondary}"
color-reference-success:
backgroundColor: "{colors.success}"
color-reference-surface:
backgroundColor: "{colors.surface}"
color-reference-text:
backgroundColor: "{colors.text}"
color-reference-warning:
backgroundColor: "{colors.warning}"
button-primary:
backgroundColor: "{colors.primary}"
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"
---
# Dew-Covered Candy Minimalism
## Overview
Dew-Covered Candy Minimalism is a morning interface language for calm, youthful products that need delight without visual noise: warm fog-white space, misted translucent panels, readable soft typography, and tiny candy-like accents that behave as state, not decoration.
### Values
- Freshness through material restraint: the interface should feel newly rinsed, not glossy or futuristic.
- Legibility before translucency: blur, glass, and pale color are always secondary to readable hierarchy and contrast.
- Playful control: candy color appears in pinpoints, capsule edges, or status beads rather than large fields.
- Airy asymmetry: one generous morning-breath section pairs with a denser utility cluster instead of equal dashboard cards.
- Tactile softness: rounded surfaces, inner highlights, and faint shadows suggest dewdrops on warm ceramic.
- Quiet specificity: every decorative mark has a named role such as dew bead, freshness indicator, or focus glint.
### Anti-Values
- Rainbow ramps, synthetic gradients, neon gamer glows, and hue-wheel palettes that make the product feel generated.
- Childish toy styling with oversized bubbles, heavy candy colors, sticker chaos, or novelty type that harms comprehension.
- Generic pastel SaaS dashboards with equal cards, gray borders, bland typography, and no structural signature.
- Glassmorphism that lowers contrast or relies on busy photographic backgrounds to look interesting.
### Visual Character
- Large warm off-white background planes use fixed radial mist patches and no loud gradients, keeping color below the content layer.
- Primary cards are translucent frosted rectangles with 24px radii, backdrop-filter blur, white inner highlight borders, and very faint aqua shadows.
- Small dew beads are made with radial-gradient pseudo-elements positioned on card corners, status rows, and navigation pills as the signature motif.
- Hierarchy combines Bricolage Grotesque rounded display headings with Atkinson Hyperlegible body copy, tight tracking, and generous line-height for readability.
- Candy accents are restricted to watermelon coral and translucent lilac micro-elements such as pips, toggles, progress nicks, and one call-to-action rim.
## Colors
Use the YAML color tokens as the normative palette. The prose below names the roles agents should preserve when generating UI.
| Token | Value |
|-------|-------|
| accent | `#E99182` |
| background | `#FBF8F1` |
| border | `#FFFFFF` |
| error | `#B96D66` |
| info | `#86AFC8` |
| muted | `#6F807C` |
| primary | `#86BBB2` |
| secondary | `#C9E8DD` |
| success | `#6EA586` |
| surface | `#FFFFFF` |
| text | `#24312F` |
| warning | `#C9A15E` |
## Typography
- **Headline-Lg**: Bricolage Grotesque, 1.816rem, weight 700, line-height 1.1.
- **Headline-Md**: Bricolage Grotesque, 1.488rem, weight 600, line-height 1.15.
- **Body-Md**: Atkinson Hyperlegible, 16px, weight 400, line-height 1.56.
- **Label-Md**: Recursive, 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**: `80px`
- **Step-9**: `96px`
### Breakpoints
Mobile under 640px becomes a single column with reordered navigation, tablet 641-980px uses a 6-column grid, desktop above 981px uses the full asymmetric 12-column grid.
### Density
Open by default, with compact clusters only for morning tasks, sensor readings, and status notes that benefit from proximity.
### Grid
Desktop uses a 12-column max-width 1180px grid with 24px gutters; hero spans 7 columns and ritual column spans 4 with one empty column breathing between.
### Responsive
Dew beads and mist patches scale down and move inward on small screens so translucent effects never obscure text.
### Whitespace
Outer margins range from 24px on mobile to 80px on desktop, while related label stacks can tighten to 4-8px for deliberate rhythm contrast.
## Elevation & Depth
### Shadows
- **Lg**: 0 38px 120px rgba(134, 187, 178, 0.18)
- **Md**: 0 24px 70px rgba(111, 157, 150, 0.14)
- **Sm**: 0 10px 24px rgba(111, 157, 150, 0.10)
## Shapes
### Rounded
- **Full**: `9999px`
- **Lg**: `24px`
- **Md**: `24px`
- **None**: `0px`
- **Sm**: `24px`
### Surfaces
- **Bg Pattern**: A few fixed radial-gradient fog blooms in pale aqua and warm off-white, never a rainbow field or saturated gradient.
- **Card Style**: background: rgba(255,255,255,.58); backdrop-filter: blur(22px) saturate(135%); border: 1px solid rgba(255,255,255,.74); box-shadow: 0 24px 70px rgba(111,157,150,.14); border-radius: 24px
- **Treatment**: Warm fog-white base with restrained pale aqua and mint mist patches; content sits on translucent glass-like panels using blur and inner highlights.
### Borders
- **Accent Width**: 2px
- **Character**: Mostly transparent white highlight borders plus occasional full coral or aqua rings; avoid solid gray separators and one-sided accent borders on rounded elements.
- **Default Width**: 1px
- **Style**: solid
## Components
### Composition
Use a scene-first asymmetric product screen: one dominant frosted morning panel, a narrower stacked ritual column, and a full-bleed mist band that breaks the grid. Avoid three equal cards. Navigation remains small and pill-like, while the hero breathes with large negative space. Dense information is grouped into compact dew rows rather than boxed modules.
### Density
The language alternates very open morning space with compact ritual clusters: 4px bead gaps, 8-12px row gaps, 32px card padding, and 80-96px section separations to pass the 8:1 rhythm test.
### Hierarchy
Display headings are rounded, large, and tightly tracked; body text is darker than the surface blur and never placed over busy decoration. Important actions use a coral rim or dew bead, secondary actions use pale aqua fills, and metadata uses Recursive mono in tiny capsules. Scale changes are paired with weight and color, not size alone.
### Signature Patterns
- Dew-bead pseudo-elements use layered radial-gradients and tiny inset highlights on the top-right of translucent surfaces.
- Frosted ceramic panels combine backdrop-filter blur, warm white alpha backgrounds, white highlight borders, and muted aqua shadows.
- Candy-rim controls show restrained coral or lilac full outlines only on focused actions while the fill stays fog-white or pale mint.
- Mist-band grid breaks place an oversized soft aqua oval behind content and let a panel overlap it asymmetrically.
## 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-019e0a56-8350-7463-9f70-07ba02f02d04/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 warm whites as the majority of the screen and let pale aqua or mint appear as atmosphere, not as content blocks.
- Do Place dew beads on purposeful interaction points: active tab, current ritual, selected plant, or fresh reading.
- Do Keep body text at 15-16px with -0.02em tracking and high enough contrast against translucent materials.
- Do Make one panel clearly dominant and one cluster intentionally dense rather than creating equal cards.
- Do Use coral for a single primary action or urgent freshness note; use lilac only as translucent supporting glints.
- Do Pair every glass surface with a simple solid fallback color and readable foreground contrast.
- Do Let icons be thin line drawings or small mono labels; never use cartoon stickers.
- Don't Do not use rainbow ramps, multi-stop neon gradients, chromatic shadows, or synthetic triads.
- Don't Do not place low-contrast text directly over strong blur blooms or decorative dew beads.
- Don't Do not use three equal dashboard cards, generic analytics charts, CRM tables, or component-catalog sections.
- Don't Do not make every corner bubbly; keep the radius scale disciplined at 24px with full pills only for capsules.
- Don't Do not use toy-like typefaces, oversized emojis, sticker piles, or childish illustration metaphors.
- Don't Do not rely on glass effect alone; the hierarchy must remain clear if backdrop-filter is unavailable.
- Don't Do not fill empty space with more accents; morning quiet is part of the identity.
### Accessibility
Maintain WCAG AA for text, provide visible coral/aqua focus rings with non-color labels, and keep all tap targets at least 44px.
### Usage Context
Best for wellness, garden, habit, food, care, and lightweight planning tools that need freshness and approachable precision.
shadcn/ui theme
```json
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "dew-covered-candy-minimalism",
"type": "registry:theme",
"title": "Dew-Covered Candy Minimalism shadcn Theme",
"cssVars": {
"theme": {},
"light": {
"background": "#FBF8F1",
"foreground": "#24312F",
"card": "#FFFFFF",
"card-foreground": "#24312F",
"popover": "#FFFFFF",
"popover-foreground": "#24312F",
"primary": "#86BBB2",
"primary-foreground": "#ffffff",
"secondary": "#C9E8DD",
"secondary-foreground": "#111111",
"muted": "#6F807C",
"muted-foreground": "#24312F",
"accent": "#E99182",
"accent-foreground": "#ffffff",
"destructive": "#B96D66",
"border": "#FFFFFF",
"input": "#FFFFFF",
"ring": "#E99182",
"chart-1": "#86BBB2",
"chart-2": "#C9E8DD",
"chart-3": "#E99182",
"chart-4": "#6EA586",
"chart-5": "#C9A15E",
"sidebar": "#FFFFFF",
"sidebar-foreground": "#24312F",
"sidebar-primary": "#86BBB2",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#86AFC8",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#FFFFFF",
"sidebar-ring": "#E99182",
"radius": "24px"
},
"dark": {
"background": "#0f1115",
"foreground": "#f8fafc",
"card": "#181b22",
"card-foreground": "#f8fafc",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#86BBB2",
"primary-foreground": "#ffffff",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"accent": "#E99182",
"accent-foreground": "#ffffff",
"destructive": "#B96D66",
"border": "#303642",
"input": "#303642",
"ring": "#E99182",
"chart-1": "#86BBB2",
"chart-2": "#C9E8DD",
"chart-3": "#E99182",
"chart-4": "#6EA586",
"chart-5": "#C9A15E",
"sidebar": "#181b22",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#86BBB2",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#E99182",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#303642",
"sidebar-ring": "#E99182",
"radius": "24px"
}
},
"meta": {
"source": "katagami",
"languageId": "en-019e0a56-8350-7463-9f70-07ba02f02d04",
"slug": "dew-covered-candy-minimalism",
"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": {
"borders": [
"accent_width",
"character",
"default_width",
"style"
],
"colors": [
"accent",
"background",
"border",
"error",
"info",
"muted",
"primary",
"secondary",
"success",
"surface",
"text",
"warning"
],
"motion": [
"duration",
"easing",
"philosophy"
],
"radii": [
"full",
"lg",
"md",
"none",
"sm"
],
"shadows": [
"lg",
"md",
"sm"
],
"spacing": [
"base",
"scale"
],
"surfaces": [
"bg_pattern",
"card_style",
"treatment"
],
"typography": [
"base_size",
"body_font",
"display_letter_spacing",
"google_fonts_url",
"heading_font",
"letter_spacing",
"line_height",
"mono_font",
"scale_ratio"
]
}
}
}
```embodiments
at a glance
Typography
The quick brown fox jumps
The quick brown fox jumps
The quick brown fox jumps
The quick brown fox jumps
Components
Components rendered with this language’s tokens — colors, type, and rounded corners as specified.
Spacing
- base8px
- xs4px
- sm8px
- md12px
- lg16px
- xl24px
- 2xl32px
- 3xl48px
- 4xl64px
- step-880px
- step-996px
Shape
implementation kit
DESIGN.md with shadcn
Copy this when the target app uses shadcn/ui. It packages the Katagami DESIGN.md context with the install list, theme variables, component recipes, preview-shot contract, and starter TSX in one Markdown companion.
advanced implementation filesoptional machine-readable theme, CSS, TSX starter, recipes, and preview contract
npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table:root {
--background: #FBF8F1;
--foreground: #24312F;
--card: #FFFFFF;
--card-foreground: #24312F;
--popover: #FFFFFF;
--popover-foreground: #24312F;
--primary: #86BBB2;
--primary-foreground: #ffffff;
--secondary: #C9E8DD;
--secondary-foreground: #111111;
--muted: #6F807C;
--muted-foreground: #24312F;
--accent: #E99182;
--accent-foreground: #ffffff;
--destructive: #B96D66;
--border: #FFFFFF;
--input: #FFFFFF;
--ring: #E99182;
--chart-1: #86BBB2;
--chart-2: #C9E8DD;
--chart-3: #E99182;
--chart-4: #6EA586;
--chart-5: #C9A15E;
--sidebar: #FFFFFF;
--sidebar-foreground: #24312F;
--sidebar-primary: #86BBB2;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #86AFC8;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #FFFFFF;
--sidebar-ring: #E99182;
--radius: 24px;
}
.dark {
--background: #0f1115;
--foreground: #f8fafc;
--card: #181b22;
--card-foreground: #f8fafc;
--popover: #181b22;
--popover-foreground: #f8fafc;
--primary: #86BBB2;
--primary-foreground: #ffffff;
--secondary: #252a33;
--secondary-foreground: #f8fafc;
--muted: #252a33;
--muted-foreground: #a1a1aa;
--accent: #E99182;
--accent-foreground: #ffffff;
--destructive: #B96D66;
--border: #303642;
--input: #303642;
--ring: #E99182;
--chart-1: #86BBB2;
--chart-2: #C9E8DD;
--chart-3: #E99182;
--chart-4: #6EA586;
--chart-5: #C9A15E;
--sidebar: #181b22;
--sidebar-foreground: #f8fafc;
--sidebar-primary: #86BBB2;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #E99182;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #303642;
--sidebar-ring: #E99182;
--radius: 24px;
}
import { Badge } from "@/components/ui/badge";
import { Button } from "@/components/ui/button";
import {
Card,
CardContent,
CardDescription,
CardFooter,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { Input } from "@/components/ui/input";
import { Tabs, TabsList, TabsTrigger } from "@/components/ui/tabs";
export function DewCoveredCandyMinimalismShadcnKit() {
return (
<section className="grid gap-4 rounded-[var(--radius)] border bg-background p-4 text-foreground">
<div className="flex items-start justify-between gap-4">
<div>
<Badge variant="outline">shadcn/ui</Badge>
<h2 className="mt-3 text-2xl font-semibold tracking-tight">Dew-Covered Candy Minimalism</h2>
<p className="mt-1 max-w-xl text-sm text-muted-foreground">
Use the Katagami registry theme, then compose these shadcn primitives
with the language-specific component recipes.
</p>
</div>
<Button>Apply theme</Button>
</div>
<Tabs defaultValue="components">
<TabsList>
<TabsTrigger value="components">Components</TabsTrigger>
<TabsTrigger value="states">States</TabsTrigger>
<TabsTrigger value="export">Export</TabsTrigger>
</TabsList>
</Tabs>
<Card>
<CardHeader>
<CardTitle>Component recipe</CardTitle>
<CardDescription>
Replace this starter content with the agent-authored product scene
from components.md and preview-shots.json.
</CardDescription>
</CardHeader>
<CardContent className="grid gap-3 sm:grid-cols-[1fr_auto]">
<Input defaultValue="Tokenized shadcn surface" aria-label="Recipe name" />
<Button variant="secondary">Preview state</Button>
</CardContent>
<CardFooter className="justify-between">
<Badge>Ready</Badge>
<Button variant="outline">Copy recipe</Button>
</CardFooter>
</Card>
</section>
);
}
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"cssVars": {
"dark": {
"accent": "#E99182",
"accent-foreground": "#ffffff",
"background": "#0f1115",
"border": "#303642",
"card": "#181b22",
"card-foreground": "#f8fafc",
"chart-1": "#86BBB2",
"chart-2": "#C9E8DD",
"chart-3": "#E99182",
"chart-4": "#6EA586",
"chart-5": "#C9A15E",
"destructive": "#B96D66",
"foreground": "#f8fafc",
"input": "#303642",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#86BBB2",
"primary-foreground": "#ffffff",
"radius": "24px",
"ring": "#E99182",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"sidebar": "#181b22",
"sidebar-accent": "#E99182",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#303642",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#86BBB2",
"sidebar-primary-foreground": "#ffffff",
"sidebar-ring": "#E99182"
},
"light": {
"accent": "#E99182",
"accent-foreground": "#ffffff",
"background": "#FBF8F1",
"border": "#FFFFFF",
"card": "#FFFFFF",
"card-foreground": "#24312F",
"chart-1": "#86BBB2",
"chart-2": "#C9E8DD",
"chart-3": "#E99182",
"chart-4": "#6EA586",
"chart-5": "#C9A15E",
"destructive": "#B96D66",
"foreground": "#24312F",
"input": "#FFFFFF",
"muted": "#6F807C",
"muted-foreground": "#24312F",
"popover": "#FFFFFF",
"popover-foreground": "#24312F",
"primary": "#86BBB2",
"primary-foreground": "#ffffff",
"radius": "24px",
"ring": "#E99182",
"secondary": "#C9E8DD",
"secondary-foreground": "#111111",
"sidebar": "#FFFFFF",
"sidebar-accent": "#86AFC8",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#FFFFFF",
"sidebar-foreground": "#24312F",
"sidebar-primary": "#86BBB2",
"sidebar-primary-foreground": "#ffffff",
"sidebar-ring": "#E99182"
},
"theme": {}
},
"meta": {
"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",
"languageId": "en-019e0a56-8350-7463-9f70-07ba02f02d04",
"nativeTokenNames": {
"borders": [
"accent_width",
"character",
"default_width",
"style"
],
"colors": [
"accent",
"background",
"border",
"error",
"info",
"muted",
"primary",
"secondary",
"success",
"surface",
"text",
"warning"
],
"motion": [
"duration",
"easing",
"philosophy"
],
"radii": [
"full",
"lg",
"md",
"none",
"sm"
],
"shadows": [
"lg",
"md",
"sm"
],
"spacing": [
"base",
"scale"
],
"surfaces": [
"bg_pattern",
"card_style",
"treatment"
],
"typography": [
"base_size",
"body_font",
"display_letter_spacing",
"google_fonts_url",
"heading_font",
"letter_spacing",
"line_height",
"mono_font",
"scale_ratio"
]
},
"slug": "dew-covered-candy-minimalism",
"source": "katagami"
},
"name": "dew-covered-candy-minimalism",
"title": "Dew-Covered Candy Minimalism shadcn Theme",
"type": "registry:theme"
}
# Dew-Covered Candy Minimalism shadcn/ui Components
Artifact: `component-recipes-v1`
Author: `katagami-ui-projection`
Language ID: `en-019e0a56-8350-7463-9f70-07ba02f02d04`
Slug: `dew-covered-candy-minimalism`
## Intent
Dew-Covered Candy Minimalism is a morning interface language for calm, youthful products that need delight without visual noise: warm fog-white space, misted translucent panels, readable soft typography, and tiny candy-like accents that behave as state, not decoration.
## Required primitives
- button
- card
- input
- textarea
- select
- dialog
- sheet
- tabs
- badge
- separator
- checkbox
- switch
- slider
- tooltip
- dropdown-menu
- table
Install with `npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table`.
## Token cues
Colors:
{
"accent": "#E99182",
"background": "#FBF8F1",
"border": "#FFFFFF",
"error": "#B96D66",
"info": "#86AFC8",
"muted": "#6F807C",
"primary": "#86BBB2",
"secondary": "#C9E8DD",
"success": "#6EA586",
"surface": "#FFFFFF",
"text": "#24312F",
"warning": "#C9A15E"
}
Typography:
{
"base_size": "16px",
"body_font": "Atkinson Hyperlegible",
"display_letter_spacing": "-0.04em",
"google_fonts_url": "https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:wght@400;700&family=Bricolage+Grotesque:wght@500;600;700&family=Recursive:CASL,MONO,wght@0,1,500;0,1,700&display=swap",
"heading_font": "Bricolage Grotesque",
"letter_spacing": "-0.02em",
"line_height": 1.56,
"mono_font": "Recursive",
"scale_ratio": 1.22
}
## Visual character to preserve
- Large warm off-white background planes use fixed radial mist patches and no loud gradients, keeping color below the content layer.
- Primary cards are translucent frosted rectangles with 24px radii, backdrop-filter blur, white inner highlight borders, and very faint aqua shadows.
- Small dew beads are made with radial-gradient pseudo-elements positioned on card corners, status rows, and navigation pills as the signature motif.
- Hierarchy combines Bricolage Grotesque rounded display headings with Atkinson Hyperlegible body copy, tight tracking, and generous line-height for readability.
- Candy accents are restricted to watermelon coral and translucent lilac micro-elements such as pips, toggles, progress nicks, and one call-to-action rim.
## ShadSync visual profile
{
"family": "system",
"material": "flat",
"contour": "pebble",
"border": "solid",
"underlay": true,
"grain": false,
"stickerBadges": false,
"motion": "lift",
"density": "balanced",
"accents": [
"primary",
"accent",
"secondary",
"muted"
]
}
## Signature component recipes
### Button
Use `Button` for primary, secondary, outline, and ghost actions. Primary actions must expose the language's strongest contrast pair, while secondary and ghost actions should preserve the surface treatment instead of falling back to default neutral SaaS styling.
### Card
Use `Card`, `CardHeader`, `CardContent`, `CardFooter`, and `CardAction` as the main composition frame. Cards should demonstrate the language's surface, border, hierarchy, and density rules rather than appearing as generic rounded rectangles.
### Input and Textarea
Use `Input` and `Textarea` with visible focus rings, field labels, validation states, and the language's rhythm. Forms should show real product content, not placeholder-only controls.
### Select, Tabs, and Table
Use `Select`, `Tabs`, and `Table` to prove navigation, filtering, and dense data states. The table should show row rhythm, separators, hover/focus states, and an empty or status state when the language calls for it.
### Dialog and Sheet
Use `Dialog` for centered decisions and `Sheet` for contextual editing. Both should inherit the language's spacing, border, overlay, and motion rules.
## Preview shots
- `application-shell`: dashboard or workspace shell with navigation, cards, forms, and state badges.
- `detail-editor`: focused editing flow using input, textarea, select, switch/checkbox, dialog or sheet, and action buttons.
- `data-operations`: table-heavy operational view with tabs, dropdown menu affordances, badges, and destructive/empty states.
- Each preview shot must include a renderable `scene` payload with concrete headline, description, actions, and rows/fields/stats for the UI preview.
## Implementation contract
- Start from local `ui/src/components/ui` shadcn-style primitives; do not create a second component system.
- Apply `/katagami/shadcn/dew-covered-candy-minimalism/registry-theme.json` variables, then use these recipes for composition and state design.
- Preserve Katagami token names as source metadata; shadcn semantic names are only the export surface.
- Do: Use warm whites as the majority of the screen and let pale aqua or mint appear as atmosphere, not as content blocks.; Place dew beads on purposeful interaction points: active tab, current ritual, selected plant, or fresh reading.; Keep body text at 15-16px with -0.02em tracking and high enough contrast against translucent materials.; Make one panel clearly dominant and one cluster intentionally dense rather than creating equal cards.; Use coral for a single primary action or urgent freshness note; use lilac only as translucent supporting glints.; Pair every glass surface with a simple solid fallback color and readable foreground contrast.; Let icons be thin line drawings or small mono labels; never use cartoon stickers.
- Do not: Do not use rainbow ramps, multi-stop neon gradients, chromatic shadows, or synthetic triads.; Do not place low-contrast text directly over strong blur blooms or decorative dew beads.; Do not use three equal dashboard cards, generic analytics charts, CRM tables, or component-catalog sections.; Do not make every corner bubbly; keep the radius scale disciplined at 24px with full pills only for capsules.; Do not use toy-like typefaces, oversized emojis, sticker piles, or childish illustration metaphors.; Do not rely on glass effect alone; the hierarchy must remain clear if backdrop-filter is unavailable.; Do not fill empty space with more accents; morning quiet is part of the identity.
## Copy-paste component example
This generated starter proves the import shape. Production Katagami agents should replace it with a language-specific product composition.
```tsx
import { Badge } from "@/components/ui/badge";
import { Button } from "@/components/ui/button";
import {
Card,
CardContent,
CardDescription,
CardFooter,
CardHeader,
CardTitle,
} from "@/components/ui/card";
import { Input } from "@/components/ui/input";
import { Tabs, TabsList, TabsTrigger } from "@/components/ui/tabs";
export function DewCoveredCandyMinimalismShadcnKit() {
return (
<section className="grid gap-4 rounded-[var(--radius)] border bg-background p-4 text-foreground">
<div className="flex items-start justify-between gap-4">
<div>
<Badge variant="outline">shadcn/ui</Badge>
<h2 className="mt-3 text-2xl font-semibold tracking-tight">Dew-Covered Candy Minimalism</h2>
<p className="mt-1 max-w-xl text-sm text-muted-foreground">
Use the Katagami registry theme, then compose these shadcn primitives
with the language-specific component recipes.
</p>
</div>
<Button>Apply theme</Button>
</div>
<Tabs defaultValue="components">
<TabsList>
<TabsTrigger value="components">Components</TabsTrigger>
<TabsTrigger value="states">States</TabsTrigger>
<TabsTrigger value="export">Export</TabsTrigger>
</TabsList>
</Tabs>
<Card>
<CardHeader>
<CardTitle>Component recipe</CardTitle>
<CardDescription>
Replace this starter content with the agent-authored product scene
from components.md and preview-shots.json.
</CardDescription>
</CardHeader>
<CardContent className="grid gap-3 sm:grid-cols-[1fr_auto]">
<Input defaultValue="Tokenized shadcn surface" aria-label="Recipe name" />
<Button variant="secondary">Preview state</Button>
</CardContent>
<CardFooter className="justify-between">
<Badge>Ready</Badge>
<Button variant="outline">Copy recipe</Button>
</CardFooter>
</Card>
</section>
);
}
```
## Layout notes
{
"breakpoints": "Mobile under 640px becomes a single column with reordered navigation, tablet 641-980px uses a 6-column grid, desktop above 981px uses the full asymmetric 12-column grid.",
"density": "Open by default, with compact clusters only for morning tasks, sensor readings, and status notes that benefit from proximity.",
"grid": "Desktop uses a 12-column max-width 1180px grid with 24px gutters; hero spans 7 columns and ritual column spans 4 with one empty column breathing between.",
"responsive": "Dew beads and mist patches scale down and move inward on small screens so translucent effects never obscure text.",
"whitespace": "Outer margins range from 24px on mobile to 80px on desktop, while related label stacks can tighten to 4-8px for deliberate rhythm contrast."
}
{
"artifact": "katagami:shadcn-preview-shots",
"version": "preview-shots-v1",
"generator": "katagami-ui-compatibility-projection",
"generatedBy": "katagami-ui-projection",
"requiresVisualProfile": true,
"schema": "katagami:shadcn-preview-shots/renderable-v1",
"renderable": true,
"language": {
"id": "en-019e0a56-8350-7463-9f70-07ba02f02d04",
"name": "Dew-Covered Candy Minimalism",
"slug": "dew-covered-candy-minimalism"
},
"installCommand": "npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table",
"primitives": [
"button",
"card",
"input",
"textarea",
"select",
"dialog",
"sheet",
"tabs",
"badge",
"separator",
"checkbox",
"switch",
"slider",
"tooltip",
"dropdown-menu",
"table"
],
"identityNotes": [
"Large warm off-white background planes use fixed radial mist patches and no loud gradients, keeping color below the content layer.",
"Primary cards are translucent frosted rectangles with 24px radii, backdrop-filter blur, white inner highlight borders, and very faint aqua shadows.",
"Small dew beads are made with radial-gradient pseudo-elements positioned on card corners, status rows, and navigation pills as the signature motif.",
"Hierarchy combines Bricolage Grotesque rounded display headings with Atkinson Hyperlegible body copy, tight tracking, and generous line-height for readability.",
"Candy accents are restricted to watermelon coral and translucent lilac micro-elements such as pips, toggles, progress nicks, and one call-to-action rim."
],
"visualProfile": {
"family": "system",
"material": "flat",
"contour": "pebble",
"border": "solid",
"underlay": true,
"grain": false,
"stickerBadges": false,
"motion": "still",
"density": "balanced",
"accents": [
"primary",
"accent",
"secondary",
"muted"
]
},
"shots": [
{
"id": "application-shell",
"title": "Application shell",
"viewport": "desktop",
"primitives": [
"button",
"card",
"input",
"select",
"tabs",
"badge",
"separator",
"table"
],
"composition": "A real product workspace with navigation, summary cards, filtering controls, and one dense content region.",
"mustShow": [
"primary and secondary actions",
"card hierarchy",
"filterable state",
"table or list density"
],
"avoid": [
"component inventory walls",
"placeholder-only content",
"generic rounded SaaS chrome"
],
"scene": {
"eyebrow": "workspace spread",
"headline": "Dew-Covered Candy Minimalism launch room",
"description": "A product team workspace where navigation, filters, metrics, and dense rows carry the language's visible structure.",
"primaryAction": "Apply theme",
"secondaryAction": "Review states",
"stats": [
{
"label": "components",
"value": "16",
"tone": "accent"
},
{
"label": "states",
"value": "ready"
},
{
"label": "density",
"value": "balanced",
"tone": "warning"
}
],
"rows": [
{
"label": "Primary flow",
"value": "mapped",
"status": "active"
},
{
"label": "Token coverage",
"value": "semantic",
"status": "synced"
},
{
"label": "Responsive proof",
"value": "queued",
"status": "review"
}
],
"statuses": [
"Active",
"Synced",
"Draft"
]
}
},
{
"id": "detail-editor",
"title": "Detail editor",
"viewport": "tablet",
"primitives": [
"button",
"card",
"input",
"textarea",
"select",
"checkbox",
"switch",
"slider",
"dialog",
"sheet"
],
"composition": "A focused editing flow with form fields, validation, confirmation, and a contextual side panel.",
"mustShow": [
"focus ring",
"error or destructive state",
"dialog or sheet treatment",
"written guidance content"
],
"avoid": [
"unstyled browser controls",
"floating cards inside cards",
"missing labels"
],
"scene": {
"eyebrow": "editing flow",
"headline": "Language recipe editor",
"description": "A focused form proving labels, validation, toggles, panel rhythm, and action hierarchy.",
"primaryAction": "Save recipe",
"secondaryAction": "Open sheet",
"fields": [
{
"label": "Component family",
"value": "Narrative cards"
},
{
"label": "State treatment",
"value": "Visible focus + validation"
},
{
"label": "Motion",
"value": "Small lift, no opacity-only fade"
}
],
"statuses": [
"Focus",
"Invalid",
"Confirmed"
]
}
},
{
"id": "data-operations",
"title": "Data operations",
"viewport": "mobile",
"primitives": [
"button",
"tabs",
"badge",
"dropdown-menu",
"table",
"tooltip",
"separator"
],
"composition": "A compact operational view proving row rhythm, stacked actions, menu states, badges, and empty/destructive states.",
"mustShow": [
"responsive reflow",
"dense row styling",
"menu affordance",
"status badge system"
],
"avoid": [
"desktop-only tables",
"text overflow",
"default shadcn spacing without Katagami character"
],
"scene": {
"eyebrow": "operations",
"headline": "Compact review queue",
"description": "A narrow viewport scene with rows, menus, tooltips, badges, and destructive affordances.",
"primaryAction": "Resolve",
"secondaryAction": "Filter",
"rows": [
{
"label": "Button hierarchy",
"value": "approved",
"status": "ok"
},
{
"label": "Table rhythm",
"value": "needs pass",
"status": "watch"
},
{
"label": "Empty state",
"value": "designed",
"status": "done"
}
],
"statuses": [
"Queued",
"Blocked",
"Done"
]
}
}
],
"componentRecipes": [
{
"primitive": "button",
"intent": "Prove action hierarchy, focus, disabled, and destructive states."
},
{
"primitive": "card",
"intent": "Carry the language surface, border, elevation, and density rules."
},
{
"primitive": "input",
"intent": "Show labels, focus rings, validation, and spacing rhythm."
},
{
"primitive": "textarea",
"intent": "Show longer guidance, validation copy, and writing density."
},
{
"primitive": "select",
"intent": "Show filtering, selection contrast, and menu trigger styling."
},
{
"primitive": "dialog",
"intent": "Show centered decision states and overlay treatment."
},
{
"primitive": "sheet",
"intent": "Show contextual side panels and responsive editing."
},
{
"primitive": "tabs",
"intent": "Show navigational structure and active/inactive contrast."
},
{
"primitive": "badge",
"intent": "Show compact status vocabulary and semantic colors."
},
{
"primitive": "separator",
"intent": "Show section rhythm without generic gray dividers."
},
{
"primitive": "checkbox",
"intent": "Show binary selection with visible focus and checked states."
},
{
"primitive": "switch",
"intent": "Show settings toggles and on/off contrast."
},
{
"primitive": "slider",
"intent": "Show numeric adjustment with track/thumb styling."
},
{
"primitive": "tooltip",
"intent": "Show concise explanation styling above compact controls."
},
{
"primitive": "dropdown-menu",
"intent": "Show action menus, destructive items, and grouped choices."
},
{
"primitive": "table",
"intent": "Show dense operational data, separators, row states, and responsive behavior."
}
],
"qualityRules": {
"do": [
"Use warm whites as the majority of the screen and let pale aqua or mint appear as atmosphere, not as content blocks.",
"Place dew beads on purposeful interaction points: active tab, current ritual, selected plant, or fresh reading.",
"Keep body text at 15-16px with -0.02em tracking and high enough contrast against translucent materials.",
"Make one panel clearly dominant and one cluster intentionally dense rather than creating equal cards.",
"Use coral for a single primary action or urgent freshness note; use lilac only as translucent supporting glints.",
"Pair every glass surface with a simple solid fallback color and readable foreground contrast.",
"Let icons be thin line drawings or small mono labels; never use cartoon stickers."
],
"dont": [
"Do not use rainbow ramps, multi-stop neon gradients, chromatic shadows, or synthetic triads.",
"Do not place low-contrast text directly over strong blur blooms or decorative dew beads.",
"Do not use three equal dashboard cards, generic analytics charts, CRM tables, or component-catalog sections.",
"Do not make every corner bubbly; keep the radius scale disciplined at 24px with full pills only for capsules.",
"Do not use toy-like typefaces, oversized emojis, sticker piles, or childish illustration metaphors.",
"Do not rely on glass effect alone; the hierarchy must remain clear if backdrop-filter is unavailable.",
"Do not fill empty space with more accents; morning quiet is part of the identity."
]
}
}