back to gallerydo avoid
design language·liquid-glass-translucency-v2
Liquid Glass Translucency
A portable design language for agents: download the markdown first, then inspect the preview, tokens, and rules as needed.
Download DESIGN.md
Portable DESIGN.md source of truth for most agents and apps.
the spec
specification
philosophy
summary
A translucent, layered interface aesthetic inspired by Apple's iOS 26 Liquid Glass material system. Surfaces behave like refractive glass panels — they blur, transmit light, and create depth through transparency rather than solid color blocks. The design philosophy treats UI as a stack of floating crystalline layers that respond to context and content beneath them, creating an ethereal yet functional hierarchy.
values
Transparency as hierarchy: depth and layering communicate importance, not color or weightLight responsiveness: surfaces shift appearance based on underlying content, mimicking real glass refractionEthereal minimalism: fewer solid elements, more atmospheric negative space with subtle luminous fillsContextual adaptation: panels and controls transform fluidly based on state and focusMaterial honesty: translucent surfaces behave consistently like physical glass — they blur, reflect, and transmit
anti-values
×Heavy opaque backgrounds with solid flat fills that block content layering×Hard drop shadows that contradict the lightness and floatiness of glass×Busy patterns or textures that fight against the clarity of translucent surfaces×Dark mode as default — this language is inherently light-first and luminous
tokens
borders4 items
- accent width
- 1px
- character
- Near-invisible glass edges: rgba(255,255,255,.52) outer border plus inset highlight; no one-sided accent borders on rounded elements.
- default width
- 1px
- style
- solid
colors12 items
accent
#3C9BA8
background
#EEF2FA
border
#FFFFFF
error
#B94A48
info
#3E6FA8
muted
#667085
primary
#5C6BC8
secondary
#7E6EAC
success
#3D8064
surface
#FFFFFF
text
#1D2533
warning
#A97826
motion3 items
- duration
- 260ms
- easing
- cubic-bezier(.2,.8,.2,1)
- philosophy
- Liquid but restrained: hover lifts, blur deepens, and panels translate 2-4px; reduced motion removes transforms while preserving focus outlines.
radii5 items
- full
- 9999px
- lg
- 24px
- md
- 24px
- none
- 0px
- sm
- 24px
shadows3 items
- lg
- 0 16px 48px rgba(100,100,180,0.12)
- md
- 0 8px 32px rgba(100,100,180,0.08)
- sm
- 0 2px 8px rgba(100,100,180,0.06)
spacing2 items
- base
- 8px
- scale
- 4, 8, 12, 16, 24, 32, 48, 64, 96
surfaces3 items
- bg pattern
- Oversized blurred cyan and amethyst orbs sit behind the interface; the pattern is atmospheric rather than decorative and remains soft under reduced motion.
- card style
- Floating 24px-radius panes with inset white highlights, no solid opaque fills, and clipped specular glints via pseudo-elements.
- treatment
- Layered frosted glass: rgba(255,255,255,.54) surfaces over desaturated blue-lavender ambient fields with backdrop-filter blur(24px) saturate(135%).
typography9 items
- base size
- 16px
- body font
- Source Sans 3
- display letter spacing
- -0.04em
- google fonts url
- https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,750&family=Source+Sans+3:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500;600&display=swap
- heading font
- Fraunces
- letter spacing
- -0.02em
- line height
- 1.55
- mono font
- IBM Plex Mono
- scale ratio
- 1.25
rules
composition
Layer translucent panels at varying blur intensities to create depth hierarchy. Primary content sits on the clearest (most opaque) layer. Secondary and navigation elements use higher blur. Never stack more than 3 translucent layers. Every panel must have visible separation through its glass border highlight.
hierarchy
Importance is communicated through opacity and blur level, not color weight. Focused/active elements become slightly more opaque (0.85). Background elements increase blur and decrease opacity (0.4). Typography weight creates secondary hierarchy within each glass layer. Active states glow subtly rather than darkening.
density
Generous spacing with atmospheric breathing room — content floats within glass panels rather than being packed tightly. Minimum 24px internal padding on all glass containers.
signature patterns
Every card and panel uses backdrop-filter: blur(20px) with rgba white background and 1px white semi-transparent borderInteractive elements have a subtle inner glow on hover using inset box-shadow: 0 0 0 1px rgba(99,102,241,0.3)Navigation bar is a floating glass pill with border-radius: 9999px positioned with margin from viewport edgesFocus states use a soft blue-violet ring: box-shadow: 0 0 0 3px rgba(99,102,241,0.25) instead of hard outlinesSection dividers are achieved through layered glass depth rather than horizontal rules or borders
layout
density
Spacious and atmospheric — content floats in generous negative space. The glass aesthetic requires breathing room to show translucency and depth effects. Density is low to medium.
grid
Fluid 12-column grid with 24px gutters, max-width 1200px centered. Glass panels span multiple columns and float with consistent 24px gaps between them.
breakpoints
- desktop
- 1200px
- tablet
- 768px
- mobile
- 375px
whitespace
Whitespace is not truly white — it reveals the soft gradient background beneath. Generous internal padding (24-32px) on all glass panels. Minimum 16px between stacked elements. The background gradient creates visual interest in empty space.
guidance
- Use backdrop-filter: blur() and saturate() on every elevated surface to create the signature glass effect.
- Layer translucent panes at different opacity levels so hierarchy comes from material depth rather than extra colors.
- Commit to 24px rounded containers and 9999px pills for the characteristic soft liquid-glass geometry.
- Use desaturated blue-lavender ambient fields behind glass panes so translucency has something subtle to refract.
- Keep typography crisp with Fraunces display, Source Sans 3 body, and IBM Plex Mono metadata labels.
- Add thin rgba(255,255,255,.52) borders and inset highlights on all glass panels to simulate light-catching edges.
- Use soft violet-blue shadows instead of pure black shadows, and keep shadows restrained.
- Animate vertical lift, blur, and opacity for fluid material behavior while honoring reduced-motion.
- Never use solid opaque backgrounds on cards or panels; important surfaces must retain visible translucency.
- Never apply hard black drop shadows; all depth must feel soft, colored, and atmospheric.
- Never mix 16px and 24px radii; this language commits to 24px containers and full pills only.
- Never use heavy border widths; glass edges are delicate and near-invisible.
- Never use saturated rainbow accents that overpower the quiet blue-lavender material field.
- Never place one-sided accent borders on rounded elements; use full borders or separate sharp pseudo-elements instead.
- Never leave browser default selects, checkboxes, radios, or progress elements visible.
- Never present a component catalog; show a specific application scene with real information hierarchy.
katagami spec
# Liquid Glass Translucency ## Philosophy A translucent, layered interface aesthetic inspired by Apple's iOS 26 Liquid Glass material system. Surfaces behave like refractive glass panels — they blur, transmit light, and create depth through transparency rather than solid color blocks. The design philosophy treats UI as a stack of floating crystalline layers that respond to context and content beneath them, creating an ethereal yet functional hierarchy. ### Values - Transparency as hierarchy: depth and layering communicate importance, not color or weight - Light responsiveness: surfaces shift appearance based on underlying content, mimicking real glass refraction - Ethereal minimalism: fewer solid elements, more atmospheric negative space with subtle luminous fills - Contextual adaptation: panels and controls transform fluidly based on state and focus - Material honesty: translucent surfaces behave consistently like physical glass — they blur, reflect, and transmit ### Anti-Values - Heavy opaque backgrounds with solid flat fills that block content layering - Hard drop shadows that contradict the lightness and floatiness of glass - Busy patterns or textures that fight against the clarity of translucent surfaces - Dark mode as default — this language is inherently light-first and luminous ### Visual Character - backdrop-filter: blur(24px) saturate(135%) on all elevated panes so panels visibly refract the ambient blue-lavender field beneath them. - Uniform 1px rgba(255,255,255,.52) borders plus inset white highlights define glass edges without heavy outlines or one-sided accent borders. - Translucent rgba(255,255,255,.54 to .72) panel fills sit over oversized blurred cyan and amethyst orbs rather than opaque flat card backgrounds. - Soft violet-blue shadows such as 0 8px 32px rgba(100,100,180,.08) create atmospheric lift without hard black shadow edges. - A disciplined radius system uses 24px containers and 9999px pills only, making the whole interface feel liquid, rounded, and consistent. ## Tokens ### Borders - **Accent Width**: 1px - **Character**: Near-invisible glass edges: rgba(255,255,255,.52) outer border plus inset highlight; no one-sided accent borders on rounded elements. - **Default Width**: 1px - **Style**: solid ### Colors | Name | Value | |------|-------| | accent | `#3C9BA8` | | background | `#EEF2FA` | | border | `#FFFFFF` | | error | `#B94A48` | | info | `#3E6FA8` | | muted | `#667085` | | primary | `#5C6BC8` | | secondary | `#7E6EAC` | | success | `#3D8064` | | surface | `#FFFFFF` | | text | `#1D2533` | | warning | `#A97826` | ### Motion - **Duration**: 260ms - **Easing**: cubic-bezier(.2,.8,.2,1) - **Philosophy**: Liquid but restrained: hover lifts, blur deepens, and panels translate 2-4px; reduced motion removes transforms while preserving focus outlines. ### Radii - **Full**: 9999px - **Lg**: 24px - **Md**: 24px - **None**: 0px - **Sm**: 24px ### Shadows - **Lg**: 0 16px 48px rgba(100,100,180,0.12) - **Md**: 0 8px 32px rgba(100,100,180,0.08) - **Sm**: 0 2px 8px rgba(100,100,180,0.06) ### Spacing - **Base**: 8px - **Scale**: [4,8,12,16,24,32,48,64,96] ### Surfaces - **Bg Pattern**: Oversized blurred cyan and amethyst orbs sit behind the interface; the pattern is atmospheric rather than decorative and remains soft under reduced motion. - **Card Style**: Floating 24px-radius panes with inset white highlights, no solid opaque fills, and clipped specular glints via pseudo-elements. - **Treatment**: Layered frosted glass: rgba(255,255,255,.54) surfaces over desaturated blue-lavender ambient fields with backdrop-filter blur(24px) saturate(135%). ### Typography - **Base Size**: 16px - **Body Font**: Source Sans 3 - **Display Letter Spacing**: -0.04em - **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,750&family=Source+Sans+3:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500;600&display=swap - **Heading Font**: Fraunces - **Letter Spacing**: -0.02em - **Line Height**: 1.55 - **Mono Font**: IBM Plex Mono - **Scale Ratio**: 1.25 ## Rules ### Composition Layer translucent panels at varying blur intensities to create depth hierarchy. Primary content sits on the clearest (most opaque) layer. Secondary and navigation elements use higher blur. Never stack more than 3 translucent layers. Every panel must have visible separation through its glass border highlight. ### Hierarchy Importance is communicated through opacity and blur level, not color weight. Focused/active elements become slightly more opaque (0.85). Background elements increase blur and decrease opacity (0.4). Typography weight creates secondary hierarchy within each glass layer. Active states glow subtly rather than darkening. ### Density Generous spacing with atmospheric breathing room — content floats within glass panels rather than being packed tightly. Minimum 24px internal padding on all glass containers. ### Signature Patterns - Every card and panel uses backdrop-filter: blur(20px) with rgba white background and 1px white semi-transparent border - Interactive elements have a subtle inner glow on hover using inset box-shadow: 0 0 0 1px rgba(99,102,241,0.3) - Navigation bar is a floating glass pill with border-radius: 9999px positioned with margin from viewport edges - Focus states use a soft blue-violet ring: box-shadow: 0 0 0 3px rgba(99,102,241,0.25) instead of hard outlines - Section dividers are achieved through layered glass depth rather than horizontal rules or borders ## Layout ### Density Spacious and atmospheric — content floats in generous negative space. The glass aesthetic requires breathing room to show translucency and depth effects. Density is low to medium. ### Grid Fluid 12-column grid with 24px gutters, max-width 1200px centered. Glass panels span multiple columns and float with consistent 24px gaps between them. ### Breakpoints - **Desktop**: 1200px - **Tablet**: 768px - **Mobile**: 375px ### Whitespace Whitespace is not truly white — it reveals the soft gradient background beneath. Generous internal padding (24-32px) on all glass panels. Minimum 16px between stacked elements. The background gradient creates visual interest in empty space. ## Guidance ### Do - Use backdrop-filter: blur() and saturate() on every elevated surface to create the signature glass effect. - Layer translucent panes at different opacity levels so hierarchy comes from material depth rather than extra colors. - Commit to 24px rounded containers and 9999px pills for the characteristic soft liquid-glass geometry. - Use desaturated blue-lavender ambient fields behind glass panes so translucency has something subtle to refract. - Keep typography crisp with Fraunces display, Source Sans 3 body, and IBM Plex Mono metadata labels. - Add thin rgba(255,255,255,.52) borders and inset highlights on all glass panels to simulate light-catching edges. - Use soft violet-blue shadows instead of pure black shadows, and keep shadows restrained. - Animate vertical lift, blur, and opacity for fluid material behavior while honoring reduced-motion. ### Don't - Never use solid opaque backgrounds on cards or panels; important surfaces must retain visible translucency. - Never apply hard black drop shadows; all depth must feel soft, colored, and atmospheric. - Never mix 16px and 24px radii; this language commits to 24px containers and full pills only. - Never use heavy border widths; glass edges are delicate and near-invisible. - Never use saturated rainbow accents that overpower the quiet blue-lavender material field. - Never place one-sided accent borders on rounded elements; use full borders or separate sharp pseudo-elements instead. - Never leave browser default selects, checkboxes, radios, or progress elements visible. - Never present a component catalog; show a specific application scene with real information hierarchy. ### Accessibility Text must maintain WCAG AA contrast against the semi-opaque surface layer (not the background behind it). Interactive elements have clear focus rings using colored box-shadow. Glass panels must have sufficient opacity (min 0.6) to ensure text readability. Reduced-motion users see instant state changes without blur transitions. ### Usage Context Ideal for dashboards, productivity tools, and content-rich applications where layered information architecture benefits from depth-based hierarchy. Best on large screens where blur effects are visible and performant.
DESIGN.md
---
version: "alpha"
name: "Liquid Glass Translucency"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
accent: "#3C9BA8"
background: "#EEF2FA"
border: "#FFFFFF"
error: "#B94A48"
info: "#3E6FA8"
muted: "#667085"
primary: "#5C6BC8"
secondary: "#7E6EAC"
success: "#3D8064"
surface: "#FFFFFF"
text: "#1D2533"
warning: "#A97826"
typography:
headline-lg:
fontFamily: "Fraunces"
fontSize: "1.953rem"
fontWeight: 700
lineHeight: 1.1
letterSpacing: "-0.02em"
headline-md:
fontFamily: "Fraunces"
fontSize: "1.563rem"
fontWeight: 600
lineHeight: 1.15
letterSpacing: "-0.02em"
body-md:
fontFamily: "Source Sans 3"
fontSize: "16px"
fontWeight: 400
lineHeight: 1.5
letterSpacing: "-0.02em"
label-md:
fontFamily: "IBM Plex Mono"
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: "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: "#ffffff"
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"
---
# Liquid Glass Translucency
## Overview
A translucent, layered interface aesthetic inspired by Apple's iOS 26 Liquid Glass material system. Surfaces behave like refractive glass panels — they blur, transmit light, and create depth through transparency rather than solid color blocks. The design philosophy treats UI as a stack of floating crystalline layers that respond to context and content beneath them, creating an ethereal yet functional hierarchy.
### Values
- Transparency as hierarchy: depth and layering communicate importance, not color or weight
- Light responsiveness: surfaces shift appearance based on underlying content, mimicking real glass refraction
- Ethereal minimalism: fewer solid elements, more atmospheric negative space with subtle luminous fills
- Contextual adaptation: panels and controls transform fluidly based on state and focus
- Material honesty: translucent surfaces behave consistently like physical glass — they blur, reflect, and transmit
### Anti-Values
- Heavy opaque backgrounds with solid flat fills that block content layering
- Hard drop shadows that contradict the lightness and floatiness of glass
- Busy patterns or textures that fight against the clarity of translucent surfaces
- Dark mode as default — this language is inherently light-first and luminous
### Visual Character
- backdrop-filter: blur(24px) saturate(135%) on all elevated panes so panels visibly refract the ambient blue-lavender field beneath them.
- Uniform 1px rgba(255,255,255,.52) borders plus inset white highlights define glass edges without heavy outlines or one-sided accent borders.
- Translucent rgba(255,255,255,.54 to .72) panel fills sit over oversized blurred cyan and amethyst orbs rather than opaque flat card backgrounds.
- Soft violet-blue shadows such as 0 8px 32px rgba(100,100,180,.08) create atmospheric lift without hard black shadow edges.
- A disciplined radius system uses 24px containers and 9999px pills only, making the whole interface feel liquid, rounded, and consistent.
## 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 | `#3C9BA8` |
| background | `#EEF2FA` |
| border | `#FFFFFF` |
| error | `#B94A48` |
| info | `#3E6FA8` |
| muted | `#667085` |
| primary | `#5C6BC8` |
| secondary | `#7E6EAC` |
| success | `#3D8064` |
| surface | `#FFFFFF` |
| text | `#1D2533` |
| warning | `#A97826` |
## Typography
- **Headline-Lg**: Fraunces, 1.953rem, weight 700, line-height 1.1.
- **Headline-Md**: Fraunces, 1.563rem, weight 600, line-height 1.15.
- **Body-Md**: Source Sans 3, 16px, weight 400, line-height 1.5.
- **Label-Md**: IBM Plex 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`
### Density
Spacious and atmospheric — content floats in generous negative space. The glass aesthetic requires breathing room to show translucency and depth effects. Density is low to medium.
### Grid
Fluid 12-column grid with 24px gutters, max-width 1200px centered. Glass panels span multiple columns and float with consistent 24px gaps between them.
### Breakpoints
- **Desktop**: 1200px
- **Tablet**: 768px
- **Mobile**: 375px
### Whitespace
Whitespace is not truly white — it reveals the soft gradient background beneath. Generous internal padding (24-32px) on all glass panels. Minimum 16px between stacked elements. The background gradient creates visual interest in empty space.
## Elevation & Depth
### Shadows
- **Lg**: 0 16px 48px rgba(100,100,180,0.12)
- **Md**: 0 8px 32px rgba(100,100,180,0.08)
- **Sm**: 0 2px 8px rgba(100,100,180,0.06)
## Shapes
### Rounded
- **Full**: `9999px`
- **Lg**: `24px`
- **Md**: `24px`
- **None**: `0px`
- **Sm**: `24px`
### Surfaces
- **Bg Pattern**: Oversized blurred cyan and amethyst orbs sit behind the interface; the pattern is atmospheric rather than decorative and remains soft under reduced motion.
- **Card Style**: Floating 24px-radius panes with inset white highlights, no solid opaque fills, and clipped specular glints via pseudo-elements.
- **Treatment**: Layered frosted glass: rgba(255,255,255,.54) surfaces over desaturated blue-lavender ambient fields with backdrop-filter blur(24px) saturate(135%).
### Borders
- **Accent Width**: 1px
- **Character**: Near-invisible glass edges: rgba(255,255,255,.52) outer border plus inset highlight; no one-sided accent borders on rounded elements.
- **Default Width**: 1px
- **Style**: solid
## Components
### Composition
Layer translucent panels at varying blur intensities to create depth hierarchy. Primary content sits on the clearest (most opaque) layer. Secondary and navigation elements use higher blur. Never stack more than 3 translucent layers. Every panel must have visible separation through its glass border highlight.
### Hierarchy
Importance is communicated through opacity and blur level, not color weight. Focused/active elements become slightly more opaque (0.85). Background elements increase blur and decrease opacity (0.4). Typography weight creates secondary hierarchy within each glass layer. Active states glow subtly rather than darkening.
### Density
Generous spacing with atmospheric breathing room — content floats within glass panels rather than being packed tightly. Minimum 24px internal padding on all glass containers.
### Signature Patterns
- Every card and panel uses backdrop-filter: blur(20px) with rgba white background and 1px white semi-transparent border
- Interactive elements have a subtle inner glow on hover using inset box-shadow: 0 0 0 1px rgba(99,102,241,0.3)
- Navigation bar is a floating glass pill with border-radius: 9999px positioned with margin from viewport edges
- Focus states use a soft blue-violet ring: box-shadow: 0 0 0 3px rgba(99,102,241,0.25) instead of hard outlines
- Section dividers are achieved through layered glass depth rather than horizontal rules or borders
## 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-019dacb3-0cbd-72a0-bd3e-e391358d19d1/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 backdrop-filter: blur() and saturate() on every elevated surface to create the signature glass effect.
- Do Layer translucent panes at different opacity levels so hierarchy comes from material depth rather than extra colors.
- Do Commit to 24px rounded containers and 9999px pills for the characteristic soft liquid-glass geometry.
- Do Use desaturated blue-lavender ambient fields behind glass panes so translucency has something subtle to refract.
- Do Keep typography crisp with Fraunces display, Source Sans 3 body, and IBM Plex Mono metadata labels.
- Do Add thin rgba(255,255,255,.52) borders and inset highlights on all glass panels to simulate light-catching edges.
- Do Use soft violet-blue shadows instead of pure black shadows, and keep shadows restrained.
- Do Animate vertical lift, blur, and opacity for fluid material behavior while honoring reduced-motion.
- Don't Never use solid opaque backgrounds on cards or panels; important surfaces must retain visible translucency.
- Don't Never apply hard black drop shadows; all depth must feel soft, colored, and atmospheric.
- Don't Never mix 16px and 24px radii; this language commits to 24px containers and full pills only.
- Don't Never use heavy border widths; glass edges are delicate and near-invisible.
- Don't Never use saturated rainbow accents that overpower the quiet blue-lavender material field.
- Don't Never place one-sided accent borders on rounded elements; use full borders or separate sharp pseudo-elements instead.
- Don't Never leave browser default selects, checkboxes, radios, or progress elements visible.
- Don't Never present a component catalog; show a specific application scene with real information hierarchy.
### Accessibility
Text must maintain WCAG AA contrast against the semi-opaque surface layer (not the background behind it). Interactive elements have clear focus rings using colored box-shadow. Glass panels must have sufficient opacity (min 0.6) to ensure text readability. Reduced-motion users see instant state changes without blur transitions.
### Usage Context
Ideal for dashboards, productivity tools, and content-rich applications where layered information architecture benefits from depth-based hierarchy. Best on large screens where blur effects are visible and performant.
shadcn/ui theme
```json
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "liquid-glass-translucency-v2",
"type": "registry:theme",
"title": "Liquid Glass Translucency shadcn Theme",
"cssVars": {
"theme": {},
"light": {
"background": "#EEF2FA",
"foreground": "#1D2533",
"card": "#FFFFFF",
"card-foreground": "#1D2533",
"popover": "#FFFFFF",
"popover-foreground": "#1D2533",
"primary": "#5C6BC8",
"primary-foreground": "#ffffff",
"secondary": "#7E6EAC",
"secondary-foreground": "#ffffff",
"muted": "#667085",
"muted-foreground": "#1D2533",
"accent": "#3C9BA8",
"accent-foreground": "#ffffff",
"destructive": "#B94A48",
"border": "#FFFFFF",
"input": "#FFFFFF",
"ring": "#3C9BA8",
"chart-1": "#5C6BC8",
"chart-2": "#7E6EAC",
"chart-3": "#3C9BA8",
"chart-4": "#3D8064",
"chart-5": "#A97826",
"sidebar": "#FFFFFF",
"sidebar-foreground": "#1D2533",
"sidebar-primary": "#5C6BC8",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#3E6FA8",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#FFFFFF",
"sidebar-ring": "#3C9BA8",
"radius": "24px"
},
"dark": {
"background": "#0f1115",
"foreground": "#f8fafc",
"card": "#181b22",
"card-foreground": "#f8fafc",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#5C6BC8",
"primary-foreground": "#ffffff",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"accent": "#3C9BA8",
"accent-foreground": "#ffffff",
"destructive": "#B94A48",
"border": "#303642",
"input": "#303642",
"ring": "#3C9BA8",
"chart-1": "#5C6BC8",
"chart-2": "#7E6EAC",
"chart-3": "#3C9BA8",
"chart-4": "#3D8064",
"chart-5": "#A97826",
"sidebar": "#181b22",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#5C6BC8",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#3C9BA8",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#303642",
"sidebar-ring": "#3C9BA8",
"radius": "24px"
}
},
"meta": {
"source": "katagami",
"languageId": "en-019dacb3-0cbd-72a0-bd3e-e391358d19d1",
"slug": "liquid-glass-translucency-v2",
"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"
]
}
}
}
```in the wild
embodiments
the full element showcase
embodiment · liquid-glass-translucency-v2
DESIGN.md
at a glance
Typography
headline-lgFraunces · 31px · 700
The quick brown fox jumps
headline-mdFraunces · 25px · 600
The quick brown fox jumps
body-mdSource Sans 3 · 16px · 400
The quick brown fox jumps
label-mdIBM Plex Mono · 12px · 600
The quick brown fox jumps
Components
New
Card title
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-896px
Shape
full9999px
lg24px
md24px
none0px
sm24px
shadcn/ui
implementation kit
recommendedcompatibility fallback
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
shadcn add
npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu tabletheme css
:root {
--background: #EEF2FA;
--foreground: #1D2533;
--card: #FFFFFF;
--card-foreground: #1D2533;
--popover: #FFFFFF;
--popover-foreground: #1D2533;
--primary: #5C6BC8;
--primary-foreground: #ffffff;
--secondary: #7E6EAC;
--secondary-foreground: #ffffff;
--muted: #667085;
--muted-foreground: #1D2533;
--accent: #3C9BA8;
--accent-foreground: #ffffff;
--destructive: #B94A48;
--border: #FFFFFF;
--input: #FFFFFF;
--ring: #3C9BA8;
--chart-1: #5C6BC8;
--chart-2: #7E6EAC;
--chart-3: #3C9BA8;
--chart-4: #3D8064;
--chart-5: #A97826;
--sidebar: #FFFFFF;
--sidebar-foreground: #1D2533;
--sidebar-primary: #5C6BC8;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #3E6FA8;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #FFFFFF;
--sidebar-ring: #3C9BA8;
--radius: 24px;
}
.dark {
--background: #0f1115;
--foreground: #f8fafc;
--card: #181b22;
--card-foreground: #f8fafc;
--popover: #181b22;
--popover-foreground: #f8fafc;
--primary: #5C6BC8;
--primary-foreground: #ffffff;
--secondary: #252a33;
--secondary-foreground: #f8fafc;
--muted: #252a33;
--muted-foreground: #a1a1aa;
--accent: #3C9BA8;
--accent-foreground: #ffffff;
--destructive: #B94A48;
--border: #303642;
--input: #303642;
--ring: #3C9BA8;
--chart-1: #5C6BC8;
--chart-2: #7E6EAC;
--chart-3: #3C9BA8;
--chart-4: #3D8064;
--chart-5: #A97826;
--sidebar: #181b22;
--sidebar-foreground: #f8fafc;
--sidebar-primary: #5C6BC8;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #3C9BA8;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #303642;
--sidebar-ring: #3C9BA8;
--radius: 24px;
}
tsx starter
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 LiquidGlassTranslucencyShadcnKit() {
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">Liquid Glass Translucency</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>
);
}
theme JSONcompatibility fallback
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "liquid-glass-translucency-v2",
"type": "registry:theme",
"title": "Liquid Glass Translucency shadcn Theme",
"cssVars": {
"theme": {},
"light": {
"background": "#EEF2FA",
"foreground": "#1D2533",
"card": "#FFFFFF",
"card-foreground": "#1D2533",
"popover": "#FFFFFF",
"popover-foreground": "#1D2533",
"primary": "#5C6BC8",
"primary-foreground": "#ffffff",
"secondary": "#7E6EAC",
"secondary-foreground": "#ffffff",
"muted": "#667085",
"muted-foreground": "#1D2533",
"accent": "#3C9BA8",
"accent-foreground": "#ffffff",
"destructive": "#B94A48",
"border": "#FFFFFF",
"input": "#FFFFFF",
"ring": "#3C9BA8",
"chart-1": "#5C6BC8",
"chart-2": "#7E6EAC",
"chart-3": "#3C9BA8",
"chart-4": "#3D8064",
"chart-5": "#A97826",
"sidebar": "#FFFFFF",
"sidebar-foreground": "#1D2533",
"sidebar-primary": "#5C6BC8",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#3E6FA8",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#FFFFFF",
"sidebar-ring": "#3C9BA8",
"radius": "24px"
},
"dark": {
"background": "#0f1115",
"foreground": "#f8fafc",
"card": "#181b22",
"card-foreground": "#f8fafc",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#5C6BC8",
"primary-foreground": "#ffffff",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"accent": "#3C9BA8",
"accent-foreground": "#ffffff",
"destructive": "#B94A48",
"border": "#303642",
"input": "#303642",
"ring": "#3C9BA8",
"chart-1": "#5C6BC8",
"chart-2": "#7E6EAC",
"chart-3": "#3C9BA8",
"chart-4": "#3D8064",
"chart-5": "#A97826",
"sidebar": "#181b22",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#5C6BC8",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#3C9BA8",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#303642",
"sidebar-ring": "#3C9BA8",
"radius": "24px"
}
},
"meta": {
"source": "katagami",
"languageId": "en-019dacb3-0cbd-72a0-bd3e-e391358d19d1",
"slug": "liquid-glass-translucency-v2",
"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"
]
}
}
}
component recipescompatibility fallback
# Liquid Glass Translucency shadcn/ui Components
Artifact: `component-recipes-v1`
Author: `katagami-ui-projection`
Language ID: `en-019dacb3-0cbd-72a0-bd3e-e391358d19d1`
Slug: `liquid-glass-translucency-v2`
## Intent
A translucent, layered interface aesthetic inspired by Apple's iOS 26 Liquid Glass material system. Surfaces behave like refractive glass panels — they blur, transmit light, and create depth through transparency rather than solid color blocks. The design philosophy treats UI as a stack of floating crystalline layers that respond to context and content beneath them, creating an ethereal yet functional hierarchy.
## 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": "#3C9BA8",
"background": "#EEF2FA",
"border": "#FFFFFF",
"error": "#B94A48",
"info": "#3E6FA8",
"muted": "#667085",
"primary": "#5C6BC8",
"secondary": "#7E6EAC",
"success": "#3D8064",
"surface": "#FFFFFF",
"text": "#1D2533",
"warning": "#A97826"
}
Typography:
{
"base_size": "16px",
"body_font": "Source Sans 3",
"display_letter_spacing": "-0.04em",
"google_fonts_url": "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,750&family=Source+Sans+3:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500;600&display=swap",
"heading_font": "Fraunces",
"letter_spacing": "-0.02em",
"line_height": "1.55",
"mono_font": "IBM Plex Mono",
"scale_ratio": "1.25"
}
## Visual character to preserve
- backdrop-filter: blur(24px) saturate(135%) on all elevated panes so panels visibly refract the ambient blue-lavender field beneath them.
- Uniform 1px rgba(255,255,255,.52) borders plus inset white highlights define glass edges without heavy outlines or one-sided accent borders.
- Translucent rgba(255,255,255,.54 to .72) panel fills sit over oversized blurred cyan and amethyst orbs rather than opaque flat card backgrounds.
- Soft violet-blue shadows such as 0 8px 32px rgba(100,100,180,.08) create atmospheric lift without hard black shadow edges.
- A disciplined radius system uses 24px containers and 9999px pills only, making the whole interface feel liquid, rounded, and consistent.
## 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/liquid-glass-translucency-v2/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 backdrop-filter: blur() and saturate() on every elevated surface to create the signature glass effect.; Layer translucent panes at different opacity levels so hierarchy comes from material depth rather than extra colors.; Commit to 24px rounded containers and 9999px pills for the characteristic soft liquid-glass geometry.; Use desaturated blue-lavender ambient fields behind glass panes so translucency has something subtle to refract.; Keep typography crisp with Fraunces display, Source Sans 3 body, and IBM Plex Mono metadata labels.; Add thin rgba(255,255,255,.52) borders and inset highlights on all glass panels to simulate light-catching edges.; Use soft violet-blue shadows instead of pure black shadows, and keep shadows restrained.; Animate vertical lift, blur, and opacity for fluid material behavior while honoring reduced-motion.
- Do not: Never use solid opaque backgrounds on cards or panels; important surfaces must retain visible translucency.; Never apply hard black drop shadows; all depth must feel soft, colored, and atmospheric.; Never mix 16px and 24px radii; this language commits to 24px containers and full pills only.; Never use heavy border widths; glass edges are delicate and near-invisible.; Never use saturated rainbow accents that overpower the quiet blue-lavender material field.; Never place one-sided accent borders on rounded elements; use full borders or separate sharp pseudo-elements instead.; Never leave browser default selects, checkboxes, radios, or progress elements visible.; Never present a component catalog; show a specific application scene with real information hierarchy.
## 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 LiquidGlassTranslucencyShadcnKit() {
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">Liquid Glass Translucency</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
{
"density": "Spacious and atmospheric — content floats in generous negative space. The glass aesthetic requires breathing room to show translucency and depth effects. Density is low to medium.",
"grid": "Fluid 12-column grid with 24px gutters, max-width 1200px centered. Glass panels span multiple columns and float with consistent 24px gaps between them.",
"breakpoints": {
"desktop": "1200px",
"tablet": "768px",
"mobile": "375px"
},
"whitespace": "Whitespace is not truly white — it reveals the soft gradient background beneath. Generous internal padding (24-32px) on all glass panels. Minimum 16px between stacked elements. The background gradient creates visual interest in empty space."
}
preview shotscompatibility fallback
{
"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-019dacb3-0cbd-72a0-bd3e-e391358d19d1",
"name": "Liquid Glass Translucency",
"slug": "liquid-glass-translucency-v2"
},
"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": [
"backdrop-filter: blur(24px) saturate(135%) on all elevated panes so panels visibly refract the ambient blue-lavender field beneath them.",
"Uniform 1px rgba(255,255,255,.52) borders plus inset white highlights define glass edges without heavy outlines or one-sided accent borders.",
"Translucent rgba(255,255,255,.54 to .72) panel fills sit over oversized blurred cyan and amethyst orbs rather than opaque flat card backgrounds.",
"Soft violet-blue shadows such as 0 8px 32px rgba(100,100,180,.08) create atmospheric lift without hard black shadow edges.",
"A disciplined radius system uses 24px containers and 9999px pills only, making the whole interface feel liquid, rounded, and consistent."
],
"visualProfile": {
"family": "system",
"material": "flat",
"contour": "pebble",
"border": "solid",
"underlay": true,
"grain": false,
"stickerBadges": false,
"motion": "lift",
"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": "Liquid Glass Translucency 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 backdrop-filter: blur() and saturate() on every elevated surface to create the signature glass effect.",
"Layer translucent panes at different opacity levels so hierarchy comes from material depth rather than extra colors.",
"Commit to 24px rounded containers and 9999px pills for the characteristic soft liquid-glass geometry.",
"Use desaturated blue-lavender ambient fields behind glass panes so translucency has something subtle to refract.",
"Keep typography crisp with Fraunces display, Source Sans 3 body, and IBM Plex Mono metadata labels.",
"Add thin rgba(255,255,255,.52) borders and inset highlights on all glass panels to simulate light-catching edges.",
"Use soft violet-blue shadows instead of pure black shadows, and keep shadows restrained.",
"Animate vertical lift, blur, and opacity for fluid material behavior while honoring reduced-motion."
],
"dont": [
"Never use solid opaque backgrounds on cards or panels; important surfaces must retain visible translucency.",
"Never apply hard black drop shadows; all depth must feel soft, colored, and atmospheric.",
"Never mix 16px and 24px radii; this language commits to 24px containers and full pills only.",
"Never use heavy border widths; glass edges are delicate and near-invisible.",
"Never use saturated rainbow accents that overpower the quiet blue-lavender material field.",
"Never place one-sided accent borders on rounded elements; use full borders or separate sharp pseudo-elements instead.",
"Never leave browser default selects, checkboxes, radios, or progress elements visible.",
"Never present a component catalog; show a specific application scene with real information hierarchy."
]
}
}
related