Arctic Shell Interface
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
- Hairline rgba borders, cyan for active telemetry and carbon black for manga contour interruptions.
- default width
- 1px
- style
- solid
colors12 items
motion3 items
- duration
- 180ms
- easing
- cubic-bezier(0.16, 1, 0.3, 1)
- philosophy
- Motion is diagnostic: short cursor blinks, slow scanline drift, and status pip pulses; no playful bouncing.
radii5 items
- full
- 9999px
- lg
- 0
- md
- 0
- none
- 0
- sm
- 0
shadows3 items
- lg
- 0 32px 90px rgba(14, 26, 32, 0.065)
- md
- 0 18px 48px rgba(14, 26, 32, 0.045)
- sm
- none
spacing2 items
- base
- 8px
- scale
- 4, 8, 12, 16, 24, 32, 48, 64, 96, 128
surfaces3 items
- bg pattern
- Full-page polar grid made from 1px linear gradients, scanline calibration ticks, and faint radial coordinate rings.
- card style
- Zero-radius station panes with 1px cyan-black borders, corner bracket pseudo-elements, and no default drop shadow except rare blue-gray atmospheric lift.
- treatment
- Near-white translucent panes over a snow field, never tinted enough to become cards; data islands rely on linework and spacing.
typography8 items
- base size
- 16px
- body font
- Zen Kaku Gothic New
- google fonts url
- https://fonts.googleapis.com/css2?family=Share+Tech+Mono&family=Teko:wght@400;500;600&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap
- heading font
- Teko
- letter spacing
- -0.02em
- line height
- 1.55
- mono font
- Share Tech Mono
- scale ratio
- 1.25
rules
Use a cinematic title-card crop: thin fixed rails, a dominant empty polar field, and one grid break where black contour linework slices across interface layers. Avoid centered dashboards; align small modules to extreme edges and leave the middle quiet.
Overall density is low, but individual telemetry islands are very dense. Tight 4px label stacks must contrast with 96px or larger silent intervals.
Create three voices: huge condensed uppercase station title, compact body notes in blue-gray, and tiny monospace shell labels/numerals. Hierarchy comes from width, case, tracking, and isolation rather than color variety.
layout
Desktop >=1200 uses opposing rails and floating islands; tablet 768-1199 collapses the right rail below the hero; mobile <640 stacks panes with the manga contour still crossing the title crop.
Dense data should never fill more than one third of the visible screen; the rest is snow field, grid, or contour silence.
A 16-column desktop grid with 24px gutters underlaid by an 8px micro-grid; rails occupy 72px and 240px while the center remains mostly open.
- desktop
- rail-field-rail station console
- mobile
- single column with horizontal telemetry strips
- tablet
- two-column asymmetric stack
Whitespace is polar atmosphere: reserve 96-160px gaps around the central object and keep related telemetry in 4-12px stacks.
guidance
- Use pure or near-pure snow whites as the dominant surface and make absence feel intentional.
- Keep all radii at zero except tiny circular status pips.
- Use cyan only for active grid, telemetry, focus, and small status accents.
- Let black manga contour lines cross panel boundaries to create the signature overprint.
- Write labels like file paths, station IDs, scan coordinates, and shell prompts.
- Create at least one dramatic scale jump between title typography and micro telemetry.
- Prefer 1px borders, ticks, and brackets to shadows or filled blocks.
- Do not use saturated neon, purple-blue cyberpunk glow, or multi-accent gradients.
- Do not round panels, create soft cards, or use generic dashboard chart furniture.
- Do not fill the center with equal cards; preserve a large silent field.
- Do not use ornamental anime lettering or illegible pseudo-Japanese decoration.
- Do not add icons unless they behave like technical marks or file-tree glyphs.
- Do not use more than one tiny alert accent at a time.
- Do not make the scene a SaaS analytics product.
katagami spec
# Arctic Shell Interface ## Philosophy Arctic Shell Interface is a snow-white station operating system for machines that observe more than they speak: manga-thin black contours pass through glacial telemetry grids, terminals stay quiet, and every data island feels measured against polar emptiness. ### Values - Silence as structure: large white fields are treated as active atmosphere, not unused space. - Mechanical precision: every line is one pixel, squared, labeled, and aligned to a modular technical grid. - Human trace: black manga hairline strokes interrupt the interface like an operator or object caught between scan layers. - Cold legibility: cyan and blue-gray accents clarify station state without becoming neon spectacle. - Operational restraint: dense telemetry appears only in small islands surrounded by calm negative space. - Anime-title tension: condensed uppercase typography creates cinematic crops without decorative flourish. ### Anti-Values - No nightclub cyberpunk neon, rainbow chroma, vaporwave gradients, or glowing spectacle. - No soft SaaS cards, rounded dashboards, emoji-like icons, or friendly productivity metaphors. - No generic component catalog: the embodiment must be a specific polar/orbital station screen. - No ornamental type, distressed textures, or faux-futurist illegible glyph walls. ### Visual Character - Use a snow-white page with a fixed 8px icy-blue linear-gradient grid overlay at extremely low opacity across the full viewport. - Compose asymmetrically with narrow left and right rail panels, a vast empty central field, and small dense telemetry islands pinned to grid intersections. - Render manga presence as absolute-positioned carbon-black 1px SVG contour paths that cross over and under UI panels without filled illustration. - Build every panel with zero radius, 1px rgba cyan/black borders, diagnostic corner brackets, and tiny square status pips instead of shadows. - Pair condensed uppercase display headings with small monospace telemetry numerals, all tracked negatively and organized as shell prompt fragments. ## Tokens ### Borders - **Accent Width**: 2px - **Character**: Hairline rgba borders, cyan for active telemetry and carbon black for manga contour interruptions. - **Default Width**: 1px - **Style**: solid ### Colors | Name | Value | |------|-------| | accent | `#5FB8CF` | | background | `#FEFEFD` | | border | `#DDECEF` | | error | `#A94D4D` | | info | `#5FB8CF` | | muted | `#647883` | | primary | `#0E1A20` | | secondary | `#8BA8B7` | | success | `#4F7D68` | | surface | `#F8FBFC` | | text | `#071014` | | warning | `#9A7B43` | ### Motion - **Duration**: 180ms - **Easing**: cubic-bezier(0.16, 1, 0.3, 1) - **Philosophy**: Motion is diagnostic: short cursor blinks, slow scanline drift, and status pip pulses; no playful bouncing. ### Radii - **Full**: 9999px - **Lg**: 0 - **Md**: 0 - **None**: 0 - **Sm**: 0 ### Shadows - **Lg**: 0 32px 90px rgba(14, 26, 32, 0.065) - **Md**: 0 18px 48px rgba(14, 26, 32, 0.045) - **Sm**: none ### Spacing - **Base**: 8px - **Scale**: [4,8,12,16,24,32,48,64,96,128] ### Surfaces - **Bg Pattern**: Full-page polar grid made from 1px linear gradients, scanline calibration ticks, and faint radial coordinate rings. - **Card Style**: Zero-radius station panes with 1px cyan-black borders, corner bracket pseudo-elements, and no default drop shadow except rare blue-gray atmospheric lift. - **Treatment**: Near-white translucent panes over a snow field, never tinted enough to become cards; data islands rely on linework and spacing. ### Typography - **Base Size**: 16px - **Body Font**: Zen Kaku Gothic New - **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Share+Tech+Mono&family=Teko:wght@400;500;600&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap - **Heading Font**: Teko - **Letter Spacing**: -0.02em - **Line Height**: 1.55 - **Mono Font**: Share Tech Mono - **Scale Ratio**: 1.25 ## Rules ### Composition Use a cinematic title-card crop: thin fixed rails, a dominant empty polar field, and one grid break where black contour linework slices across interface layers. Avoid centered dashboards; align small modules to extreme edges and leave the middle quiet. ### Density Overall density is low, but individual telemetry islands are very dense. Tight 4px label stacks must contrast with 96px or larger silent intervals. ### Hierarchy Create three voices: huge condensed uppercase station title, compact body notes in blue-gray, and tiny monospace shell labels/numerals. Hierarchy comes from width, case, tracking, and isolation rather than color variety. ### Signature Patterns - Diagnostic bracket panes: each module uses ::before and ::after corner ticks extending beyond zero-radius borders like calibration hardware. - Polar coordinate ghost: large CSS radial/conic guide rings sit behind content at low opacity, offset so only partial arcs appear in the white field. - Manga contour overprint: absolute SVG 1px black paths cross UI panes with mix-blend-style restraint and no filled illustration. - Shell prompt breadcrumbs: micro labels begin with slash, bracket, or cursor symbols and sit in tiny uppercase monospace rows with cyan status pips. - Scanline calibration rail: left and right rails contain repeated 1px tick marks and numeric station telemetry rather than conventional navigation. ## Layout ### Breakpoints Desktop >=1200 uses opposing rails and floating islands; tablet 768-1199 collapses the right rail below the hero; mobile <640 stacks panes with the manga contour still crossing the title crop. ### Density Dense data should never fill more than one third of the visible screen; the rest is snow field, grid, or contour silence. ### Grid A 16-column desktop grid with 24px gutters underlaid by an 8px micro-grid; rails occupy 72px and 240px while the center remains mostly open. ### Responsive - **Desktop**: rail-field-rail station console - **Mobile**: single column with horizontal telemetry strips - **Tablet**: two-column asymmetric stack ### Whitespace Whitespace is polar atmosphere: reserve 96-160px gaps around the central object and keep related telemetry in 4-12px stacks. ## Guidance ### Do - Use pure or near-pure snow whites as the dominant surface and make absence feel intentional. - Keep all radii at zero except tiny circular status pips. - Use cyan only for active grid, telemetry, focus, and small status accents. - Let black manga contour lines cross panel boundaries to create the signature overprint. - Write labels like file paths, station IDs, scan coordinates, and shell prompts. - Create at least one dramatic scale jump between title typography and micro telemetry. - Prefer 1px borders, ticks, and brackets to shadows or filled blocks. ### Don't - Do not use saturated neon, purple-blue cyberpunk glow, or multi-accent gradients. - Do not round panels, create soft cards, or use generic dashboard chart furniture. - Do not fill the center with equal cards; preserve a large silent field. - Do not use ornamental anime lettering or illegible pseudo-Japanese decoration. - Do not add icons unless they behave like technical marks or file-tree glyphs. - Do not use more than one tiny alert accent at a time. - Do not make the scene a SaaS analytics product. ### Accessibility Maintain high contrast for black and blue-gray text on white, never rely on cyan alone for critical state, keep body text at 15-16px, and provide visible focus states with 2px cyan outlines. ### Usage Context Best for fictional orbital relays, polar labs, cybernetic observation shells, command-line station tools, and anime-inspired title interfaces that need calm rather than aggression.
DESIGN.md
---
version: "alpha"
name: "Arctic Shell Interface"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
accent: "#5FB8CF"
background: "#FEFEFD"
border: "#DDECEF"
error: "#A94D4D"
info: "#5FB8CF"
muted: "#647883"
primary: "#0E1A20"
secondary: "#8BA8B7"
success: "#4F7D68"
surface: "#F8FBFC"
text: "#071014"
warning: "#9A7B43"
typography:
headline-lg:
fontFamily: "Teko"
fontSize: "1.953rem"
fontWeight: 700
lineHeight: 1.1
letterSpacing: "-0.02em"
headline-md:
fontFamily: "Teko"
fontSize: "1.563rem"
fontWeight: 600
lineHeight: 1.15
letterSpacing: "-0.02em"
body-md:
fontFamily: "Zen Kaku Gothic New"
fontSize: "16px"
fontWeight: 400
lineHeight: 1.55
letterSpacing: "-0.02em"
label-md:
fontFamily: "Share Tech Mono"
fontSize: "0.75rem"
fontWeight: 600
lineHeight: 1
letterSpacing: "0.08em"
rounded:
full: "9999px"
lg: "0px"
md: "0px"
none: "0px"
sm: "0px"
spacing:
base: "8px"
xs: "4px"
sm: "8px"
md: "12px"
lg: "16px"
xl: "24px"
2xl: "32px"
3xl: "48px"
4xl: "64px"
step-8: "96px"
step-9: "128px"
components:
color-reference-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"
---
# Arctic Shell Interface
## Overview
Arctic Shell Interface is a snow-white station operating system for machines that observe more than they speak: manga-thin black contours pass through glacial telemetry grids, terminals stay quiet, and every data island feels measured against polar emptiness.
### Values
- Silence as structure: large white fields are treated as active atmosphere, not unused space.
- Mechanical precision: every line is one pixel, squared, labeled, and aligned to a modular technical grid.
- Human trace: black manga hairline strokes interrupt the interface like an operator or object caught between scan layers.
- Cold legibility: cyan and blue-gray accents clarify station state without becoming neon spectacle.
- Operational restraint: dense telemetry appears only in small islands surrounded by calm negative space.
- Anime-title tension: condensed uppercase typography creates cinematic crops without decorative flourish.
### Anti-Values
- No nightclub cyberpunk neon, rainbow chroma, vaporwave gradients, or glowing spectacle.
- No soft SaaS cards, rounded dashboards, emoji-like icons, or friendly productivity metaphors.
- No generic component catalog: the embodiment must be a specific polar/orbital station screen.
- No ornamental type, distressed textures, or faux-futurist illegible glyph walls.
### Visual Character
- Use a snow-white page with a fixed 8px icy-blue linear-gradient grid overlay at extremely low opacity across the full viewport.
- Compose asymmetrically with narrow left and right rail panels, a vast empty central field, and small dense telemetry islands pinned to grid intersections.
- Render manga presence as absolute-positioned carbon-black 1px SVG contour paths that cross over and under UI panels without filled illustration.
- Build every panel with zero radius, 1px rgba cyan/black borders, diagnostic corner brackets, and tiny square status pips instead of shadows.
- Pair condensed uppercase display headings with small monospace telemetry numerals, all tracked negatively and organized as shell prompt fragments.
## 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 | `#5FB8CF` |
| background | `#FEFEFD` |
| border | `#DDECEF` |
| error | `#A94D4D` |
| info | `#5FB8CF` |
| muted | `#647883` |
| primary | `#0E1A20` |
| secondary | `#8BA8B7` |
| success | `#4F7D68` |
| surface | `#F8FBFC` |
| text | `#071014` |
| warning | `#9A7B43` |
## Typography
- **Headline-Lg**: Teko, 1.953rem, weight 700, line-height 1.1.
- **Headline-Md**: Teko, 1.563rem, weight 600, line-height 1.15.
- **Body-Md**: Zen Kaku Gothic New, 16px, weight 400, line-height 1.55.
- **Label-Md**: Share Tech Mono, 0.75rem, weight 600, line-height 1.
## Layout
### Spacing Tokens
- **Base**: `8px`
- **Xs**: `4px`
- **Sm**: `8px`
- **Md**: `12px`
- **Lg**: `16px`
- **Xl**: `24px`
- **2xl**: `32px`
- **3xl**: `48px`
- **4xl**: `64px`
- **Step-8**: `96px`
- **Step-9**: `128px`
### Breakpoints
Desktop >=1200 uses opposing rails and floating islands; tablet 768-1199 collapses the right rail below the hero; mobile <640 stacks panes with the manga contour still crossing the title crop.
### Density
Dense data should never fill more than one third of the visible screen; the rest is snow field, grid, or contour silence.
### Grid
A 16-column desktop grid with 24px gutters underlaid by an 8px micro-grid; rails occupy 72px and 240px while the center remains mostly open.
### Responsive
- **Desktop**: rail-field-rail station console
- **Mobile**: single column with horizontal telemetry strips
- **Tablet**: two-column asymmetric stack
### Whitespace
Whitespace is polar atmosphere: reserve 96-160px gaps around the central object and keep related telemetry in 4-12px stacks.
## Elevation & Depth
### Shadows
- **Lg**: 0 32px 90px rgba(14, 26, 32, 0.065)
- **Md**: 0 18px 48px rgba(14, 26, 32, 0.045)
- **Sm**: none
## Shapes
### Rounded
- **Full**: `9999px`
- **Lg**: `0px`
- **Md**: `0px`
- **None**: `0px`
- **Sm**: `0px`
### Surfaces
- **Bg Pattern**: Full-page polar grid made from 1px linear gradients, scanline calibration ticks, and faint radial coordinate rings.
- **Card Style**: Zero-radius station panes with 1px cyan-black borders, corner bracket pseudo-elements, and no default drop shadow except rare blue-gray atmospheric lift.
- **Treatment**: Near-white translucent panes over a snow field, never tinted enough to become cards; data islands rely on linework and spacing.
### Borders
- **Accent Width**: 2px
- **Character**: Hairline rgba borders, cyan for active telemetry and carbon black for manga contour interruptions.
- **Default Width**: 1px
- **Style**: solid
## Components
### Composition
Use a cinematic title-card crop: thin fixed rails, a dominant empty polar field, and one grid break where black contour linework slices across interface layers. Avoid centered dashboards; align small modules to extreme edges and leave the middle quiet.
### Density
Overall density is low, but individual telemetry islands are very dense. Tight 4px label stacks must contrast with 96px or larger silent intervals.
### Hierarchy
Create three voices: huge condensed uppercase station title, compact body notes in blue-gray, and tiny monospace shell labels/numerals. Hierarchy comes from width, case, tracking, and isolation rather than color variety.
### Signature Patterns
- Diagnostic bracket panes: each module uses ::before and ::after corner ticks extending beyond zero-radius borders like calibration hardware.
- Polar coordinate ghost: large CSS radial/conic guide rings sit behind content at low opacity, offset so only partial arcs appear in the white field.
- Manga contour overprint: absolute SVG 1px black paths cross UI panes with mix-blend-style restraint and no filled illustration.
- Shell prompt breadcrumbs: micro labels begin with slash, bracket, or cursor symbols and sit in tiny uppercase monospace rows with cyan status pips.
- Scanline calibration rail: left and right rails contain repeated 1px tick marks and numeric station telemetry rather than conventional navigation.
## 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/arctic-shell-interface/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 pure or near-pure snow whites as the dominant surface and make absence feel intentional.
- Do Keep all radii at zero except tiny circular status pips.
- Do Use cyan only for active grid, telemetry, focus, and small status accents.
- Do Let black manga contour lines cross panel boundaries to create the signature overprint.
- Do Write labels like file paths, station IDs, scan coordinates, and shell prompts.
- Do Create at least one dramatic scale jump between title typography and micro telemetry.
- Do Prefer 1px borders, ticks, and brackets to shadows or filled blocks.
- Don't Do not use saturated neon, purple-blue cyberpunk glow, or multi-accent gradients.
- Don't Do not round panels, create soft cards, or use generic dashboard chart furniture.
- Don't Do not fill the center with equal cards; preserve a large silent field.
- Don't Do not use ornamental anime lettering or illegible pseudo-Japanese decoration.
- Don't Do not add icons unless they behave like technical marks or file-tree glyphs.
- Don't Do not use more than one tiny alert accent at a time.
- Don't Do not make the scene a SaaS analytics product.
### Accessibility
Maintain high contrast for black and blue-gray text on white, never rely on cyan alone for critical state, keep body text at 15-16px, and provide visible focus states with 2px cyan outlines.
### Usage Context
Best for fictional orbital relays, polar labs, cybernetic observation shells, command-line station tools, and anime-inspired title interfaces that need calm rather than aggression.
shadcn/ui theme
```json
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "arctic-shell-interface",
"type": "registry:theme",
"title": "Arctic Shell Interface shadcn Theme",
"cssVars": {
"theme": {},
"light": {
"background": "#FEFEFD",
"foreground": "#071014",
"card": "#F8FBFC",
"card-foreground": "#071014",
"popover": "#F8FBFC",
"popover-foreground": "#071014",
"primary": "#0E1A20",
"primary-foreground": "#ffffff",
"secondary": "#8BA8B7",
"secondary-foreground": "#ffffff",
"muted": "#647883",
"muted-foreground": "#071014",
"accent": "#5FB8CF",
"accent-foreground": "#ffffff",
"destructive": "#A94D4D",
"border": "#DDECEF",
"input": "#DDECEF",
"ring": "#5FB8CF",
"chart-1": "#0E1A20",
"chart-2": "#8BA8B7",
"chart-3": "#5FB8CF",
"chart-4": "#4F7D68",
"chart-5": "#9A7B43",
"sidebar": "#F8FBFC",
"sidebar-foreground": "#071014",
"sidebar-primary": "#0E1A20",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#5FB8CF",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#DDECEF",
"sidebar-ring": "#5FB8CF",
"radius": "0"
},
"dark": {
"background": "#0f1115",
"foreground": "#f8fafc",
"card": "#181b22",
"card-foreground": "#f8fafc",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#0E1A20",
"primary-foreground": "#ffffff",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"accent": "#5FB8CF",
"accent-foreground": "#ffffff",
"destructive": "#A94D4D",
"border": "#303642",
"input": "#303642",
"ring": "#5FB8CF",
"chart-1": "#0E1A20",
"chart-2": "#8BA8B7",
"chart-3": "#5FB8CF",
"chart-4": "#4F7D68",
"chart-5": "#9A7B43",
"sidebar": "#181b22",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#0E1A20",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#5FB8CF",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#303642",
"sidebar-ring": "#5FB8CF",
"radius": "0"
}
},
"meta": {
"source": "katagami",
"languageId": "arctic-shell-interface",
"slug": "arctic-shell-interface",
"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",
"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-896px
- step-9128px
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: #FEFEFD;
--foreground: #071014;
--card: #F8FBFC;
--card-foreground: #071014;
--popover: #F8FBFC;
--popover-foreground: #071014;
--primary: #0E1A20;
--primary-foreground: #ffffff;
--secondary: #8BA8B7;
--secondary-foreground: #ffffff;
--muted: #647883;
--muted-foreground: #071014;
--accent: #5FB8CF;
--accent-foreground: #ffffff;
--destructive: #A94D4D;
--border: #DDECEF;
--input: #DDECEF;
--ring: #5FB8CF;
--chart-1: #0E1A20;
--chart-2: #8BA8B7;
--chart-3: #5FB8CF;
--chart-4: #4F7D68;
--chart-5: #9A7B43;
--sidebar: #F8FBFC;
--sidebar-foreground: #071014;
--sidebar-primary: #0E1A20;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #5FB8CF;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #DDECEF;
--sidebar-ring: #5FB8CF;
--radius: 0;
}
.dark {
--background: #0f1115;
--foreground: #f8fafc;
--card: #181b22;
--card-foreground: #f8fafc;
--popover: #181b22;
--popover-foreground: #f8fafc;
--primary: #0E1A20;
--primary-foreground: #ffffff;
--secondary: #252a33;
--secondary-foreground: #f8fafc;
--muted: #252a33;
--muted-foreground: #a1a1aa;
--accent: #5FB8CF;
--accent-foreground: #ffffff;
--destructive: #A94D4D;
--border: #303642;
--input: #303642;
--ring: #5FB8CF;
--chart-1: #0E1A20;
--chart-2: #8BA8B7;
--chart-3: #5FB8CF;
--chart-4: #4F7D68;
--chart-5: #9A7B43;
--sidebar: #181b22;
--sidebar-foreground: #f8fafc;
--sidebar-primary: #0E1A20;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #5FB8CF;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #303642;
--sidebar-ring: #5FB8CF;
--radius: 0;
}
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 ArcticShellInterfaceShadcnKit() {
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">Arctic Shell Interface</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",
"name": "arctic-shell-interface",
"type": "registry:theme",
"title": "Arctic Shell Interface shadcn Theme",
"cssVars": {
"theme": {},
"light": {
"background": "#FEFEFD",
"foreground": "#071014",
"card": "#F8FBFC",
"card-foreground": "#071014",
"popover": "#F8FBFC",
"popover-foreground": "#071014",
"primary": "#0E1A20",
"primary-foreground": "#ffffff",
"secondary": "#8BA8B7",
"secondary-foreground": "#ffffff",
"muted": "#647883",
"muted-foreground": "#071014",
"accent": "#5FB8CF",
"accent-foreground": "#ffffff",
"destructive": "#A94D4D",
"border": "#DDECEF",
"input": "#DDECEF",
"ring": "#5FB8CF",
"chart-1": "#0E1A20",
"chart-2": "#8BA8B7",
"chart-3": "#5FB8CF",
"chart-4": "#4F7D68",
"chart-5": "#9A7B43",
"sidebar": "#F8FBFC",
"sidebar-foreground": "#071014",
"sidebar-primary": "#0E1A20",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#5FB8CF",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#DDECEF",
"sidebar-ring": "#5FB8CF",
"radius": "0"
},
"dark": {
"background": "#0f1115",
"foreground": "#f8fafc",
"card": "#181b22",
"card-foreground": "#f8fafc",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#0E1A20",
"primary-foreground": "#ffffff",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"accent": "#5FB8CF",
"accent-foreground": "#ffffff",
"destructive": "#A94D4D",
"border": "#303642",
"input": "#303642",
"ring": "#5FB8CF",
"chart-1": "#0E1A20",
"chart-2": "#8BA8B7",
"chart-3": "#5FB8CF",
"chart-4": "#4F7D68",
"chart-5": "#9A7B43",
"sidebar": "#181b22",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#0E1A20",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#5FB8CF",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#303642",
"sidebar-ring": "#5FB8CF",
"radius": "0"
}
},
"meta": {
"source": "katagami",
"languageId": "arctic-shell-interface",
"slug": "arctic-shell-interface",
"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",
"google_fonts_url",
"heading_font",
"letter_spacing",
"line_height",
"mono_font",
"scale_ratio"
]
}
}
}
# Arctic Shell Interface shadcn/ui Components
Artifact: `component-recipes-v1`
Author: `katagami-ui-projection`
Language ID: `arctic-shell-interface`
Slug: `arctic-shell-interface`
## Intent
Arctic Shell Interface is a snow-white station operating system for machines that observe more than they speak: manga-thin black contours pass through glacial telemetry grids, terminals stay quiet, and every data island feels measured against polar emptiness.
## 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": "#5FB8CF",
"background": "#FEFEFD",
"border": "#DDECEF",
"error": "#A94D4D",
"info": "#5FB8CF",
"muted": "#647883",
"primary": "#0E1A20",
"secondary": "#8BA8B7",
"success": "#4F7D68",
"surface": "#F8FBFC",
"text": "#071014",
"warning": "#9A7B43"
}
Typography:
{
"base_size": "16px",
"body_font": "Zen Kaku Gothic New",
"google_fonts_url": "https://fonts.googleapis.com/css2?family=Share+Tech+Mono&family=Teko:wght@400;500;600&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap",
"heading_font": "Teko",
"letter_spacing": "-0.02em",
"line_height": 1.55,
"mono_font": "Share Tech Mono",
"scale_ratio": 1.25
}
## Visual character to preserve
- Use a snow-white page with a fixed 8px icy-blue linear-gradient grid overlay at extremely low opacity across the full viewport.
- Compose asymmetrically with narrow left and right rail panels, a vast empty central field, and small dense telemetry islands pinned to grid intersections.
- Render manga presence as absolute-positioned carbon-black 1px SVG contour paths that cross over and under UI panels without filled illustration.
- Build every panel with zero radius, 1px rgba cyan/black borders, diagnostic corner brackets, and tiny square status pips instead of shadows.
- Pair condensed uppercase display headings with small monospace telemetry numerals, all tracked negatively and organized as shell prompt fragments.
## ShadSync visual profile
{
"family": "system",
"material": "flat",
"contour": "default",
"border": "solid",
"underlay": true,
"grain": false,
"stickerBadges": false,
"motion": "lift",
"density": "dense",
"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/arctic-shell-interface/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 pure or near-pure snow whites as the dominant surface and make absence feel intentional.; Keep all radii at zero except tiny circular status pips.; Use cyan only for active grid, telemetry, focus, and small status accents.; Let black manga contour lines cross panel boundaries to create the signature overprint.; Write labels like file paths, station IDs, scan coordinates, and shell prompts.; Create at least one dramatic scale jump between title typography and micro telemetry.; Prefer 1px borders, ticks, and brackets to shadows or filled blocks.
- Do not: Do not use saturated neon, purple-blue cyberpunk glow, or multi-accent gradients.; Do not round panels, create soft cards, or use generic dashboard chart furniture.; Do not fill the center with equal cards; preserve a large silent field.; Do not use ornamental anime lettering or illegible pseudo-Japanese decoration.; Do not add icons unless they behave like technical marks or file-tree glyphs.; Do not use more than one tiny alert accent at a time.; Do not make the scene a SaaS analytics product.
## 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 ArcticShellInterfaceShadcnKit() {
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">Arctic Shell Interface</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": "Desktop >=1200 uses opposing rails and floating islands; tablet 768-1199 collapses the right rail below the hero; mobile <640 stacks panes with the manga contour still crossing the title crop.",
"density": "Dense data should never fill more than one third of the visible screen; the rest is snow field, grid, or contour silence.",
"grid": "A 16-column desktop grid with 24px gutters underlaid by an 8px micro-grid; rails occupy 72px and 240px while the center remains mostly open.",
"responsive": {
"desktop": "rail-field-rail station console",
"mobile": "single column with horizontal telemetry strips",
"tablet": "two-column asymmetric stack"
},
"whitespace": "Whitespace is polar atmosphere: reserve 96-160px gaps around the central object and keep related telemetry in 4-12px stacks."
}
{
"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": "arctic-shell-interface",
"name": "Arctic Shell Interface",
"slug": "arctic-shell-interface"
},
"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": [
"Use a snow-white page with a fixed 8px icy-blue linear-gradient grid overlay at extremely low opacity across the full viewport.",
"Compose asymmetrically with narrow left and right rail panels, a vast empty central field, and small dense telemetry islands pinned to grid intersections.",
"Render manga presence as absolute-positioned carbon-black 1px SVG contour paths that cross over and under UI panels without filled illustration.",
"Build every panel with zero radius, 1px rgba cyan/black borders, diagnostic corner brackets, and tiny square status pips instead of shadows.",
"Pair condensed uppercase display headings with small monospace telemetry numerals, all tracked negatively and organized as shell prompt fragments."
],
"visualProfile": {
"family": "system",
"material": "flat",
"contour": "default",
"border": "solid",
"underlay": true,
"grain": false,
"stickerBadges": false,
"motion": "still",
"density": "dense",
"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": "Arctic Shell Interface 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 pure or near-pure snow whites as the dominant surface and make absence feel intentional.",
"Keep all radii at zero except tiny circular status pips.",
"Use cyan only for active grid, telemetry, focus, and small status accents.",
"Let black manga contour lines cross panel boundaries to create the signature overprint.",
"Write labels like file paths, station IDs, scan coordinates, and shell prompts.",
"Create at least one dramatic scale jump between title typography and micro telemetry.",
"Prefer 1px borders, ticks, and brackets to shadows or filled blocks."
],
"dont": [
"Do not use saturated neon, purple-blue cyberpunk glow, or multi-accent gradients.",
"Do not round panels, create soft cards, or use generic dashboard chart furniture.",
"Do not fill the center with equal cards; preserve a large silent field.",
"Do not use ornamental anime lettering or illegible pseudo-Japanese decoration.",
"Do not add icons unless they behave like technical marks or file-tree glyphs.",
"Do not use more than one tiny alert accent at a time.",
"Do not make the scene a SaaS analytics product."
]
}
}