Typography
The quick brown fox jumps
The quick brown fox jumps
The quick brown fox jumps
The quick brown fox jumps
A portable design language for agents: download the markdown first, then inspect the preview, tokens, and rules as needed.
Portable DESIGN.md source of truth for most agents and apps.
Use a 12-column modular UI grid interrupted by manga panel spans: one dominant deck panel, one dense debug strip, one rotated sticker cluster, and a deliberate large blank paper area. Avoid three equal cards; panels crop, overlap, or break the grid like a printed streetwear layout.
Primary hierarchy comes from condensed uppercase deck labels at extreme scale, then black rule weight, then monospace debug chips. Acid lime marks only live on active or selected states, never as a general decorative fill. Chrome rails frame important controls but never become a full background.
Alternate dense firmware clusters at 4-8px gaps with open paper zones at 64-128px so the system feels energetic but disciplined instead of busy.
Desktop uses a 12-column grid with 24px gutters and max-width 1320px; dominant panels span 7-8 columns while utility panels occupy irregular 3-5 column fragments. Grids use minmax(0,1fr) columns and min-width:0 children so they never blow out their container.
Large negative-space fields are mandatory around the hero title and beside the console deck; do not fill paper gaps with extra icons or metrics.
The system deliberately pairs tight terminal rows with generous paper pauses; visual energy is localized to sticker clusters and debug strips.
Chrome rails and halftone blocks scale with clamp() dimensions, panels stack before microcopy becomes unreadable, rotated stickers flatten on narrow screens, and non-essential nav links and table columns are hidden on mobile.
screentone-press
Bold black manga ink and gekiga halftone screentone on warm off-white paper, with exactly one acid-lime hand-drawn accent. Imagery treats portable-hardware and street-tech subjects as dramatic, frame-filling gekiga plates.
Landing hero is generated in the screentone-press technique, full-bleed behind a legible ink overlay. Reserve the single acid-lime mark for the live element in each image.
# Amikake Console ## Philosophy Amikake Console is a disciplined youth-tech language for street-level software: monochrome manga structure, portable-console hardware cues, and terminal-state labelling compressed into a polished black-and-paper interface. It treats existential cyber-anime mood as operational clarity rather than visual chaos. A faithful refinement of Osaka Debug Deck, brought up to standard. ### Values - manga economy: black ink, warm paper, screentone, and only one loud status mark - debug legibility: every decorative label behaves like firmware metadata or a terminal prompt - portable hardware tactility through chrome rails, battery chips, recessed buttons, and barcode IDs - asymmetric streetwear composition with sticker clusters balanced by large calm negative space - high-contrast accessibility with a restrained accent hierarchy and no synthetic rainbow effects - youthful velocity expressed through cropping, panel rhythm, and microcopy rather than clutter ### Anti-Values - generic neon cyberpunk gradients and dense futuristic decoration - soft SaaS cards with equal columns, pastel status palettes, and default rounded corners - anime nostalgia used as illustration wallpaper instead of structural typography and layout - uncontrolled graffiti, random stickers, or multiple competing accent colours ### Visual Character - A modular manga-panel grid uses thick black outer rules, clipped corner notches, halftone blocks, and one oversized negative-space breach to avoid equal-card symmetry. - Portable-console chrome rails are built with linear-gradient silver strips, pill battery chips, circular hardware buttons, and recessed black screw dots on key surfaces. - Terminal stickers appear as rotated monochrome labels with barcode IDs, command prompts, and checksum strings, with a single acid-lime hand-tag overlay used only for active status. - Typography separates voices with condensed uppercase Teko deck labels, IBM Plex Sans JP body copy, and Reddit Mono firmware microcopy with mandatory tight tracking. ## Tokens ### Colors | Name | Value | |------|-------| | bg | `#F2EDE3` | | surface | `#FFFDF6` | | surface_2 | `#E7E1D4` | | ink | `#11110F` | | text | `#11110F` | | text_inverse | `#F4F1E8` | | muted | `#5F5D56` | | secondary | `#7A7A72` | | accent | `#B7D23A` | | accent_ink | `#3A4A0E` | | on_accent | `#11110F` | | border | `#11110F` | | success | `#6E8A1F` | | warning | `#C49A2E` | | error | `#B33A2E` | | info | `#4F8B9A` | ### Typography - **Base Size**: 17px - **Body Font**: IBM Plex Sans JP - **Heading Font**: Teko - **Mono Font**: Reddit Mono - **Heading Weight**: 600 - **Heading Transform**: uppercase - **Letter Spacing**: -0.02em - **Line Height**: 1.55 - **Scale Ratio**: 1.25 - **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Teko:wght@500;600;700&family=IBM+Plex+Sans+JP:wght@400;500;600;700&family=Reddit+Mono:wght@400;500;700&display=swap ### Radii - **None**: 0px - **Sm**: 0px - **Md**: 16px - **Lg**: 24px - **Full**: 9999px ### Shadows - **Sm**: 3px 3px 0 rgba(17,17,15,0.18) - **Md**: 8px 8px 0 rgba(17,17,15,0.12) - **Lg**: 14px 18px 0 rgba(17,17,15,0.10) ### Spacing - **Base**: 8px - **Scale**: [4,8,12,16,24,32,48,64,96,128] ### Surfaces - **Bg Pattern**: Large quiet warm-paper background with a faint diagonal halftone field and small barcode ticks; pattern opacity stays below 12%. - **Card Style**: Rectangular manga panels with 2-4px black rules, clipped corner notches, a one-corner halftone block, and occasional offset sticker labels; hard offset print shadows, never soft blur. - **Treatment**: Warm paper fields with black ink rules, sparse halftone radial-dot overlays, and chrome strips reserved for hardware-like edges. ### Borders - **Default Width**: 2px - **Accent Width**: 4px - **Style**: solid - **Character**: Ink-black panel rules, doubled terminal dividers, clipped-corner outlines, and near-invisible rgba(17,17,15,0.10) interior hairlines. ### Motion - **Duration**: 180ms - **Easing**: cubic-bezier(.2,.8,.2,1) - **Philosophy**: Motion feels like firmware confirming input: tiny lime blinks, one-step deck slides, and no floating parallax or decorative looping. The settled state renders with no JavaScript; motion is layered on top behind a class and respects prefers-reduced-motion. ## Rules ### Composition Use a 12-column modular UI grid interrupted by manga panel spans: one dominant deck panel, one dense debug strip, one rotated sticker cluster, and a deliberate large blank paper area. Avoid three equal cards; panels crop, overlap, or break the grid like a printed streetwear layout. ### Hierarchy Primary hierarchy comes from condensed uppercase deck labels at extreme scale, then black rule weight, then monospace debug chips. Acid lime marks only live on active or selected states, never as a general decorative fill. Chrome rails frame important controls but never become a full background. ### Density Alternate dense firmware clusters at 4-8px gaps with open paper zones at 64-128px so the system feels energetic but disciplined instead of busy. ### Signature - Clipped manga panels use CSS polygon clip-path plus thick ink borders and a halftone pseudo-element anchored to one corner. - Portable-console chrome rails use narrow linear-gradient strips with screw-dot pseudo-elements and pill battery chips attached to panel edges. - Terminal sticker clusters are rotated labels with barcode repeating-linear-gradient blocks and command-prompt microcopy, clustered at meaningful panel edges. - Acid-lime hand-tag states are drawn as short skewed highlight strokes behind text, limited to one active command or route marker per composition. ## Layout ### Grid Desktop uses a 12-column grid with 24px gutters and max-width 1320px; dominant panels span 7-8 columns while utility panels occupy irregular 3-5 column fragments. Grids use minmax(0,1fr) columns and min-width:0 children so they never blow out their container. ### Whitespace Large negative-space fields are mandatory around the hero title and beside the console deck; do not fill paper gaps with extra icons or metrics. ### Density The system deliberately pairs tight terminal rows with generous paper pauses; visual energy is localized to sticker clusters and debug strips. ### Responsive Chrome rails and halftone blocks scale with clamp() dimensions, panels stack before microcopy becomes unreadable, rotated stickers flatten on narrow screens, and non-essential nav links and table columns are hidden on mobile. ### Breakpoints - **Mobile**: < 640px stacks panels in source order with sticker rotation reduced and non-essential nav hidden - **Tablet**: 640-1024px uses 6 columns - **Desktop**: >= 1024px uses the full 12-column asymmetric deck - **Ultrawide**: >= 1600px caps and centres the contained content; only the full-bleed hero spans 100vw ## Guidance ### Do - Use black-and-warm-paper as the default relationship and reserve acid lime for active debug state. - Make at least one panel visibly hardware-like with chrome rails, screws, and battery/status chips. - Create rhythm through manga crops, halftone fields, barcode labels, and dense terminal rows. - Keep body copy readable at 17px+ with -0.02em tracking and strong contrast. - Use condensed uppercase labels for deck/navigation language and monospace only for metadata. - Let large blank paper areas remain blank; restraint is part of the streetwear polish. - Pair every colour status with text, a shape, or a command label for accessibility. ### Don't - Do not introduce purple, cyan, pink, or a multi-neon cyberpunk palette. - Do not use three equal statistic cards, generic dashboard charts, or SaaS analytics layouts. - Do not turn manga influence into character-illustration wallpaper. - Do not scatter stickers randomly; cluster them around meaningful panel edges. - Do not round every card or use soft glassmorphism blurs. - Do not place essential information only in tiny barcode or microcopy labels. - Do not let chrome gradients cover large surfaces; they are hardware cues only. ### Accessibility Maintain WCAG AA contrast on paper and ink surfaces, keep lime supplemental to text state, use #3A4A0E for lime text on paper, provide visible black or lime focus outlines, and never set terminal microcopy below 11px. ## Imagery Direction ### Pairs With screentone-press ### Summary Bold black manga ink and gekiga halftone screentone on warm off-white paper, with exactly one acid-lime hand-drawn accent. Imagery treats portable-hardware and street-tech subjects as dramatic, frame-filling gekiga plates. ### Subjects - a hand gripping a portable debug console - a courier deck mid-dispatch - a circuit-dense device underside - a rider crossing a halftone-shaded street ### Usage Landing hero is generated in the screentone-press technique, full-bleed behind a legible ink overlay. Reserve the single acid-lime mark for the live element in each image.
---
version: "alpha"
name: "Amikake Console"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
bg: "#F2EDE3"
surface: "#FFFDF6"
surface_2: "#E7E1D4"
ink: "#11110F"
text: "#11110F"
text_inverse: "#F4F1E8"
muted: "#5F5D56"
secondary: "#7A7A72"
accent: "#B7D23A"
accent_ink: "#3A4A0E"
on_accent: "#11110F"
border: "#11110F"
success: "#6E8A1F"
warning: "#C49A2E"
error: "#B33A2E"
info: "#4F8B9A"
typography:
headline-lg:
fontFamily: "Teko"
fontSize: "2.075rem"
fontWeight: 700
lineHeight: 1.1
letterSpacing: "-0.02em"
headline-md:
fontFamily: "Teko"
fontSize: "1.66rem"
fontWeight: 600
lineHeight: 1.15
letterSpacing: "-0.02em"
body-md:
fontFamily: "IBM Plex Sans JP"
fontSize: "17px"
fontWeight: 400
lineHeight: 1.55
letterSpacing: "-0.02em"
label-md:
fontFamily: "Reddit Mono"
fontSize: "0.75rem"
fontWeight: 600
lineHeight: 1
letterSpacing: "0.08em"
rounded:
none: "0px"
sm: "0px"
md: "16px"
lg: "24px"
full: "9999px"
spacing:
base: "8px"
xs: "4px"
sm: "8px"
md: "12px"
lg: "16px"
xl: "24px"
2xl: "32px"
3xl: "48px"
4xl: "64px"
step-8: "96px"
step-9: "128px"
components:
color-reference-bg:
backgroundColor: "{colors.bg}"
color-reference-surface:
backgroundColor: "{colors.surface}"
color-reference-surface_2:
backgroundColor: "{colors.surface_2}"
color-reference-ink:
backgroundColor: "{colors.ink}"
color-reference-text:
backgroundColor: "{colors.text}"
color-reference-text_inverse:
backgroundColor: "{colors.text_inverse}"
color-reference-muted:
backgroundColor: "{colors.muted}"
color-reference-secondary:
backgroundColor: "{colors.secondary}"
color-reference-accent:
backgroundColor: "{colors.accent}"
color-reference-accent_ink:
backgroundColor: "{colors.accent_ink}"
color-reference-on_accent:
backgroundColor: "{colors.on_accent}"
color-reference-border:
backgroundColor: "{colors.border}"
color-reference-success:
backgroundColor: "{colors.success}"
color-reference-warning:
backgroundColor: "{colors.warning}"
color-reference-error:
backgroundColor: "{colors.error}"
color-reference-info:
backgroundColor: "{colors.info}"
button-primary:
backgroundColor: "{colors.accent}"
textColor: "#000000"
typography: "{typography.label-md}"
rounded: "{rounded.md}"
padding: "{spacing.md}"
card-surface:
backgroundColor: "{colors.surface}"
textColor: "{colors.text}"
rounded: "{rounded.md}"
padding: "{spacing.md}"
input-default:
backgroundColor: "{colors.surface}"
textColor: "{colors.text}"
rounded: "{rounded.md}"
height: "44px"
---
# Amikake Console
## Overview
Amikake Console is a disciplined youth-tech language for street-level software: monochrome manga structure, portable-console hardware cues, and terminal-state labelling compressed into a polished black-and-paper interface. It treats existential cyber-anime mood as operational clarity rather than visual chaos. A faithful refinement of Osaka Debug Deck, brought up to standard.
### Values
- manga economy: black ink, warm paper, screentone, and only one loud status mark
- debug legibility: every decorative label behaves like firmware metadata or a terminal prompt
- portable hardware tactility through chrome rails, battery chips, recessed buttons, and barcode IDs
- asymmetric streetwear composition with sticker clusters balanced by large calm negative space
- high-contrast accessibility with a restrained accent hierarchy and no synthetic rainbow effects
- youthful velocity expressed through cropping, panel rhythm, and microcopy rather than clutter
### Anti-Values
- generic neon cyberpunk gradients and dense futuristic decoration
- soft SaaS cards with equal columns, pastel status palettes, and default rounded corners
- anime nostalgia used as illustration wallpaper instead of structural typography and layout
- uncontrolled graffiti, random stickers, or multiple competing accent colours
### Visual Character
- A modular manga-panel grid uses thick black outer rules, clipped corner notches, halftone blocks, and one oversized negative-space breach to avoid equal-card symmetry.
- Portable-console chrome rails are built with linear-gradient silver strips, pill battery chips, circular hardware buttons, and recessed black screw dots on key surfaces.
- Terminal stickers appear as rotated monochrome labels with barcode IDs, command prompts, and checksum strings, with a single acid-lime hand-tag overlay used only for active status.
- Typography separates voices with condensed uppercase Teko deck labels, IBM Plex Sans JP body copy, and Reddit Mono firmware microcopy with mandatory tight tracking.
## Colors
Use the YAML color tokens as the normative palette. The prose below names the roles agents should preserve when generating UI.
| Token | Value |
|-------|-------|
| bg | `#F2EDE3` |
| surface | `#FFFDF6` |
| surface_2 | `#E7E1D4` |
| ink | `#11110F` |
| text | `#11110F` |
| text_inverse | `#F4F1E8` |
| muted | `#5F5D56` |
| secondary | `#7A7A72` |
| accent | `#B7D23A` |
| accent_ink | `#3A4A0E` |
| on_accent | `#11110F` |
| border | `#11110F` |
| success | `#6E8A1F` |
| warning | `#C49A2E` |
| error | `#B33A2E` |
| info | `#4F8B9A` |
## Typography
- **Headline-Lg**: Teko, 2.075rem, weight 700, line-height 1.1.
- **Headline-Md**: Teko, 1.66rem, weight 600, line-height 1.15.
- **Body-Md**: IBM Plex Sans JP, 17px, weight 400, line-height 1.55.
- **Label-Md**: Reddit Mono, 0.75rem, weight 600, line-height 1.
## Layout
### Spacing Tokens
- **Base**: `8px`
- **Xs**: `4px`
- **Sm**: `8px`
- **Md**: `12px`
- **Lg**: `16px`
- **Xl**: `24px`
- **2xl**: `32px`
- **3xl**: `48px`
- **4xl**: `64px`
- **Step-8**: `96px`
- **Step-9**: `128px`
### Grid
Desktop uses a 12-column grid with 24px gutters and max-width 1320px; dominant panels span 7-8 columns while utility panels occupy irregular 3-5 column fragments. Grids use minmax(0,1fr) columns and min-width:0 children so they never blow out their container.
### Whitespace
Large negative-space fields are mandatory around the hero title and beside the console deck; do not fill paper gaps with extra icons or metrics.
### Density
The system deliberately pairs tight terminal rows with generous paper pauses; visual energy is localized to sticker clusters and debug strips.
### Responsive
Chrome rails and halftone blocks scale with clamp() dimensions, panels stack before microcopy becomes unreadable, rotated stickers flatten on narrow screens, and non-essential nav links and table columns are hidden on mobile.
### Breakpoints
- **Mobile**: < 640px stacks panels in source order with sticker rotation reduced and non-essential nav hidden
- **Tablet**: 640-1024px uses 6 columns
- **Desktop**: >= 1024px uses the full 12-column asymmetric deck
- **Ultrawide**: >= 1600px caps and centres the contained content; only the full-bleed hero spans 100vw
## Elevation & Depth
### Shadows
- **Sm**: 3px 3px 0 rgba(17,17,15,0.18)
- **Md**: 8px 8px 0 rgba(17,17,15,0.12)
- **Lg**: 14px 18px 0 rgba(17,17,15,0.10)
## Shapes
### Rounded
- **None**: `0px`
- **Sm**: `0px`
- **Md**: `16px`
- **Lg**: `24px`
- **Full**: `9999px`
### Surfaces
- **Bg Pattern**: Large quiet warm-paper background with a faint diagonal halftone field and small barcode ticks; pattern opacity stays below 12%.
- **Card Style**: Rectangular manga panels with 2-4px black rules, clipped corner notches, a one-corner halftone block, and occasional offset sticker labels; hard offset print shadows, never soft blur.
- **Treatment**: Warm paper fields with black ink rules, sparse halftone radial-dot overlays, and chrome strips reserved for hardware-like edges.
### Borders
- **Default Width**: 2px
- **Accent Width**: 4px
- **Style**: solid
- **Character**: Ink-black panel rules, doubled terminal dividers, clipped-corner outlines, and near-invisible rgba(17,17,15,0.10) interior hairlines.
## Components
### Composition
Use a 12-column modular UI grid interrupted by manga panel spans: one dominant deck panel, one dense debug strip, one rotated sticker cluster, and a deliberate large blank paper area. Avoid three equal cards; panels crop, overlap, or break the grid like a printed streetwear layout.
### Hierarchy
Primary hierarchy comes from condensed uppercase deck labels at extreme scale, then black rule weight, then monospace debug chips. Acid lime marks only live on active or selected states, never as a general decorative fill. Chrome rails frame important controls but never become a full background.
### Density
Alternate dense firmware clusters at 4-8px gaps with open paper zones at 64-128px so the system feels energetic but disciplined instead of busy.
### Signature
- Clipped manga panels use CSS polygon clip-path plus thick ink borders and a halftone pseudo-element anchored to one corner.
- Portable-console chrome rails use narrow linear-gradient strips with screw-dot pseudo-elements and pill battery chips attached to panel edges.
- Terminal sticker clusters are rotated labels with barcode repeating-linear-gradient blocks and command-prompt microcopy, clustered at meaningful panel edges.
- Acid-lime hand-tag states are drawn as short skewed highlight strokes behind text, limited to one active command or route marker per composition.
## 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-019ef821-6251-7d72-b664-99e23ed79779/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 black-and-warm-paper as the default relationship and reserve acid lime for active debug state.
- Do Make at least one panel visibly hardware-like with chrome rails, screws, and battery/status chips.
- Do Create rhythm through manga crops, halftone fields, barcode labels, and dense terminal rows.
- Do Keep body copy readable at 17px+ with -0.02em tracking and strong contrast.
- Do Use condensed uppercase labels for deck/navigation language and monospace only for metadata.
- Do Let large blank paper areas remain blank; restraint is part of the streetwear polish.
- Do Pair every colour status with text, a shape, or a command label for accessibility.
- Don't Do not introduce purple, cyan, pink, or a multi-neon cyberpunk palette.
- Don't Do not use three equal statistic cards, generic dashboard charts, or SaaS analytics layouts.
- Don't Do not turn manga influence into character-illustration wallpaper.
- Don't Do not scatter stickers randomly; cluster them around meaningful panel edges.
- Don't Do not round every card or use soft glassmorphism blurs.
- Don't Do not place essential information only in tiny barcode or microcopy labels.
- Don't Do not let chrome gradients cover large surfaces; they are hardware cues only.
### Accessibility
Maintain WCAG AA contrast on paper and ink surfaces, keep lime supplemental to text state, use #3A4A0E for lime text on paper, provide visible black or lime focus outlines, and never set terminal microcopy below 11px.
## Imagery Direction
### Pairs With
screentone-press
### Summary
Bold black manga ink and gekiga halftone screentone on warm off-white paper, with exactly one acid-lime hand-drawn accent. Imagery treats portable-hardware and street-tech subjects as dramatic, frame-filling gekiga plates.
### Subjects
- a hand gripping a portable debug console
- a courier deck mid-dispatch
- a circuit-dense device underside
- a rider crossing a halftone-shaded street
### Usage
Landing hero is generated in the screentone-press technique, full-bleed behind a legible ink overlay. Reserve the single acid-lime mark for the live element in each image.
```json
{
"$schema": "https://ui.shadcn.com/schema/registry-item.json",
"name": "amikake-console",
"type": "registry:theme",
"title": "Amikake Console shadcn Theme",
"cssVars": {
"theme": {},
"light": {
"background": "#F2EDE3",
"foreground": "#11110F",
"card": "#FFFDF6",
"card-foreground": "#11110F",
"popover": "#FFFDF6",
"popover-foreground": "#11110F",
"primary": "#11110F",
"primary-foreground": "#ffffff",
"secondary": "#7A7A72",
"secondary-foreground": "#ffffff",
"muted": "#5F5D56",
"muted-foreground": "#11110F",
"accent": "#B7D23A",
"accent-foreground": "#111111",
"destructive": "#B33A2E",
"border": "#11110F",
"input": "#11110F",
"ring": "#B7D23A",
"chart-1": "#11110F",
"chart-2": "#7A7A72",
"chart-3": "#B7D23A",
"chart-4": "#6E8A1F",
"chart-5": "#C49A2E",
"sidebar": "#FFFDF6",
"sidebar-foreground": "#11110F",
"sidebar-primary": "#11110F",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#4F8B9A",
"sidebar-accent-foreground": "#ffffff",
"sidebar-border": "#11110F",
"sidebar-ring": "#B7D23A",
"radius": "16px"
},
"dark": {
"background": "#0f1115",
"foreground": "#f8fafc",
"card": "#181b22",
"card-foreground": "#f8fafc",
"popover": "#181b22",
"popover-foreground": "#f8fafc",
"primary": "#11110F",
"primary-foreground": "#ffffff",
"secondary": "#252a33",
"secondary-foreground": "#f8fafc",
"muted": "#252a33",
"muted-foreground": "#a1a1aa",
"accent": "#B7D23A",
"accent-foreground": "#111111",
"destructive": "#B33A2E",
"border": "#303642",
"input": "#303642",
"ring": "#B7D23A",
"chart-1": "#11110F",
"chart-2": "#7A7A72",
"chart-3": "#B7D23A",
"chart-4": "#6E8A1F",
"chart-5": "#C49A2E",
"sidebar": "#181b22",
"sidebar-foreground": "#f8fafc",
"sidebar-primary": "#11110F",
"sidebar-primary-foreground": "#ffffff",
"sidebar-accent": "#B7D23A",
"sidebar-accent-foreground": "#111111",
"sidebar-border": "#303642",
"sidebar-ring": "#B7D23A",
"radius": "16px"
}
},
"meta": {
"source": "katagami",
"languageId": "en-019ef821-6251-7d72-b664-99e23ed79779",
"slug": "amikake-console",
"componentManifest": [
"button",
"card",
"input",
"textarea",
"select",
"dialog",
"sheet",
"tabs",
"badge",
"separator",
"checkbox",
"switch",
"slider",
"tooltip",
"dropdown-menu",
"table"
],
"installCommand": "npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table",
"nativeTokenNames": {
"colors": [
"accent",
"accent_ink",
"bg",
"border",
"error",
"info",
"ink",
"muted",
"on_accent",
"secondary",
"success",
"surface",
"surface_2",
"text",
"text_inverse",
"warning"
],
"typography": [
"base_size",
"body_font",
"google_fonts_url",
"heading_font",
"heading_transform",
"heading_weight",
"letter_spacing",
"line_height",
"mono_font",
"scale_ratio"
],
"radii": [
"full",
"lg",
"md",
"none",
"sm"
],
"shadows": [
"lg",
"md",
"sm"
],
"spacing": [
"base",
"scale"
],
"surfaces": [
"bg_pattern",
"card_style",
"treatment"
],
"borders": [
"accent_width",
"character",
"default_width",
"style"
],
"motion": [
"duration",
"easing",
"philosophy"
]
}
}
}
```The quick brown fox jumps
The quick brown fox jumps
The quick brown fox jumps
The quick brown fox jumps
Agent-generated
Keep Amikake Consoleand swap a palette and an art style onto it — the landing & dashboard recolor live. The Studio does the same with all three lanes free.
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.
npx shadcn@latest add button card input textarea select dialog sheet tabs badge separator checkbox switch slider tooltip dropdown-menu table:root {
--background: #F2EDE3;
--foreground: #11110F;
--card: #FFFDF6;
--card-foreground: #11110F;
--popover: #FFFDF6;
--popover-foreground: #11110F;
--primary: #11110F;
--primary-foreground: #ffffff;
--secondary: #7A7A72;
--secondary-foreground: #ffffff;
--muted: #5F5D56;
--muted-foreground: #11110F;
--accent: #B7D23A;
--accent-foreground: #111111;
--destructive: #B33A2E;
--border: #11110F;
--input: #11110F;
--ring: #B7D23A;
--chart-1: #11110F;
--chart-2: #7A7A72;
--chart-3: #B7D23A;
--chart-4: #6E8A1F;
--chart-5: #C49A2E;
--sidebar: #FFFDF6;
--sidebar-foreground: #11110F;
--sidebar-primary: #11110F;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #4F8B9A;
--sidebar-accent-foreground: #ffffff;
--sidebar-border: #11110F;
--sidebar-ring: #B7D23A;
--radius: 16px;
}
.dark {
--background: #0f1115;
--foreground: #f8fafc;
--card: #181b22;
--card-foreground: #f8fafc;
--popover: #181b22;
--popover-foreground: #f8fafc;
--primary: #11110F;
--primary-foreground: #ffffff;
--secondary: #252a33;
--secondary-foreground: #f8fafc;
--muted: #252a33;
--muted-foreground: #a1a1aa;
--accent: #B7D23A;
--accent-foreground: #111111;
--destructive: #B33A2E;
--border: #303642;
--input: #303642;
--ring: #B7D23A;
--chart-1: #11110F;
--chart-2: #7A7A72;
--chart-3: #B7D23A;
--chart-4: #6E8A1F;
--chart-5: #C49A2E;
--sidebar: #181b22;
--sidebar-foreground: #f8fafc;
--sidebar-primary: #11110F;
--sidebar-primary-foreground: #ffffff;
--sidebar-accent: #B7D23A;
--sidebar-accent-foreground: #111111;
--sidebar-border: #303642;
--sidebar-ring: #B7D23A;
--radius: 16px;
}
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 AmikakeConsoleShadcnKit() {
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">Amikake Console</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": "amikake-console",
"type": "registry:theme",
"author": "katagami-agent",
"title": "Amikake Console",
"description": "Monochrome manga debug-deck UI: warm screentone paper, console ink, one acid-lime status. Hard offset shadows, square manga panels with clipped corners, 2px ink rules.",
"cssVars": {
"theme": {
"font-sans": "IBM Plex Sans JP, system-ui, sans-serif",
"font-mono": "Reddit Mono, ui-monospace, monospace",
"font-display": "Teko, Arial Narrow, sans-serif",
"radius": "0rem"
},
"light": {
"background": "#F2EDE3",
"foreground": "#11110F",
"card": "#FFFDF6",
"card-foreground": "#11110F",
"popover": "#FFFDF6",
"popover-foreground": "#11110F",
"primary": "#B7D23A",
"primary-foreground": "#11110F",
"secondary": "#E7E1D4",
"secondary-foreground": "#11110F",
"muted": "#E7E1D4",
"muted-foreground": "#5F5D56",
"accent": "#11110F",
"accent-foreground": "#F4F1E8",
"destructive": "#B33A2E",
"destructive-foreground": "#FFFDF6",
"border": "#11110F",
"input": "#11110F",
"ring": "#B7D23A",
"chart-1": "#11110F",
"chart-2": "#B7D23A",
"chart-3": "#6E8A1F",
"chart-4": "#4F8B9A",
"chart-5": "#C49A2E",
"sidebar": "#11110F",
"sidebar-foreground": "#F4F1E8",
"sidebar-primary": "#B7D23A",
"sidebar-primary-foreground": "#11110F",
"sidebar-accent": "#1E1E1A",
"sidebar-accent-foreground": "#F4F1E8",
"sidebar-border": "#2A2A26",
"sidebar-ring": "#B7D23A"
},
"dark": {
"background": "#11110F",
"foreground": "#F4F1E8",
"card": "#1A1A17",
"card-foreground": "#F4F1E8",
"popover": "#1A1A17",
"popover-foreground": "#F4F1E8",
"primary": "#B7D23A",
"primary-foreground": "#11110F",
"secondary": "#26261F",
"secondary-foreground": "#F4F1E8",
"muted": "#26261F",
"muted-foreground": "#B9B7AD",
"accent": "#F4F1E8",
"accent-foreground": "#11110F",
"destructive": "#D1554A",
"destructive-foreground": "#11110F",
"border": "#33332B",
"input": "#33332B",
"ring": "#B7D23A",
"chart-1": "#B7D23A",
"chart-2": "#F4F1E8",
"chart-3": "#6E8A1F",
"chart-4": "#4F8B9A",
"chart-5": "#C49A2E",
"sidebar": "#0C0D0A",
"sidebar-foreground": "#F4F1E8",
"sidebar-primary": "#B7D23A",
"sidebar-primary-foreground": "#11110F",
"sidebar-accent": "#1A1A17",
"sidebar-accent-foreground": "#F4F1E8",
"sidebar-border": "#26261F",
"sidebar-ring": "#B7D23A"
}
},
"visualProfile": {
"radius": "square",
"radiusScale": { "none": "0px", "md": "16px", "lg": "24px", "full": "9999px" },
"borders": "ink-rules",
"borderWidth": "2px",
"borderColor": "#11110F",
"accentBorderWidth": "4px",
"elevation": "hard-offset",
"shadow": "8px 8px 0 rgba(17,17,15,0.12)",
"material": "warm-paper",
"surfaceTexture": "diagonal-halftone-screentone",
"cornerTreatment": "clipped-notch",
"accentStrategy": "single-status-lime",
"fontDisplay": "Teko",
"fontBody": "IBM Plex Sans JP",
"fontMono": "Reddit Mono",
"buttonShape": "square-ink-rule",
"focusRing": "3px solid #B7D23A"
}
}
# Amikake Console shadcn/ui Components
Artifact: `component-recipes-v1`
Author: `katagami-ui-projection`
Language ID: `en-019ef821-6251-7d72-b664-99e23ed79779`
Slug: `amikake-console`
## Intent
Amikake Console is a disciplined youth-tech language for street-level software: monochrome manga structure, portable-console hardware cues, and terminal-state labelling compressed into a polished black-and-paper interface. It treats existential cyber-anime mood as operational clarity rather than visual chaos. A faithful refinement of Osaka Debug Deck, brought up to standard.
## 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:
{
"bg": "#F2EDE3",
"surface": "#FFFDF6",
"surface_2": "#E7E1D4",
"ink": "#11110F",
"text": "#11110F",
"text_inverse": "#F4F1E8",
"muted": "#5F5D56",
"secondary": "#7A7A72",
"accent": "#B7D23A",
"accent_ink": "#3A4A0E",
"on_accent": "#11110F",
"border": "#11110F",
"success": "#6E8A1F",
"warning": "#C49A2E",
"error": "#B33A2E",
"info": "#4F8B9A"
}
Typography:
{
"base_size": "17px",
"body_font": "IBM Plex Sans JP",
"heading_font": "Teko",
"mono_font": "Reddit Mono",
"heading_weight": "600",
"heading_transform": "uppercase",
"letter_spacing": "-0.02em",
"line_height": 1.55,
"scale_ratio": 1.25,
"google_fonts_url": "https://fonts.googleapis.com/css2?family=Teko:wght@500;600;700&family=IBM+Plex+Sans+JP:wght@400;500;600;700&family=Reddit+Mono:wght@400;500;700&display=swap"
}
## Visual character to preserve
- A modular manga-panel grid uses thick black outer rules, clipped corner notches, halftone blocks, and one oversized negative-space breach to avoid equal-card symmetry.
- Portable-console chrome rails are built with linear-gradient silver strips, pill battery chips, circular hardware buttons, and recessed black screw dots on key surfaces.
- Terminal stickers appear as rotated monochrome labels with barcode IDs, command prompts, and checksum strings, with a single acid-lime hand-tag overlay used only for active status.
- Typography separates voices with condensed uppercase Teko deck labels, IBM Plex Sans JP body copy, and Reddit Mono firmware microcopy with mandatory tight tracking.
## ShadSync visual profile
{
"family": "paper-collage",
"material": "paper",
"contour": "pebble",
"border": "solid",
"underlay": true,
"grain": true,
"stickerBadges": true,
"motion": "lift-rotate",
"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/amikake-console/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 black-and-warm-paper as the default relationship and reserve acid lime for active debug state.; Make at least one panel visibly hardware-like with chrome rails, screws, and battery/status chips.; Create rhythm through manga crops, halftone fields, barcode labels, and dense terminal rows.; Keep body copy readable at 17px+ with -0.02em tracking and strong contrast.; Use condensed uppercase labels for deck/navigation language and monospace only for metadata.; Let large blank paper areas remain blank; restraint is part of the streetwear polish.; Pair every colour status with text, a shape, or a command label for accessibility.
- Do not: Do not introduce purple, cyan, pink, or a multi-neon cyberpunk palette.; Do not use three equal statistic cards, generic dashboard charts, or SaaS analytics layouts.; Do not turn manga influence into character-illustration wallpaper.; Do not scatter stickers randomly; cluster them around meaningful panel edges.; Do not round every card or use soft glassmorphism blurs.; Do not place essential information only in tiny barcode or microcopy labels.; Do not let chrome gradients cover large surfaces; they are hardware cues only.
## 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 AmikakeConsoleShadcnKit() {
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">Amikake Console</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
{
"grid": "Desktop uses a 12-column grid with 24px gutters and max-width 1320px; dominant panels span 7-8 columns while utility panels occupy irregular 3-5 column fragments. Grids use minmax(0,1fr) columns and min-width:0 children so they never blow out their container.",
"whitespace": "Large negative-space fields are mandatory around the hero title and beside the console deck; do not fill paper gaps with extra icons or metrics.",
"density": "The system deliberately pairs tight terminal rows with generous paper pauses; visual energy is localized to sticker clusters and debug strips.",
"responsive": "Chrome rails and halftone blocks scale with clamp() dimensions, panels stack before microcopy becomes unreadable, rotated stickers flatten on narrow screens, and non-essential nav links and table columns are hidden on mobile.",
"breakpoints": {
"mobile": "< 640px stacks panels in source order with sticker rotation reduced and non-essential nav hidden",
"tablet": "640-1024px uses 6 columns",
"desktop": ">= 1024px uses the full 12-column asymmetric deck",
"ultrawide": ">= 1600px caps and centres the contained content; only the full-bleed hero spans 100vw"
}
}
{
"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-019ef821-6251-7d72-b664-99e23ed79779",
"name": "Amikake Console",
"slug": "amikake-console"
},
"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": [
"A modular manga-panel grid uses thick black outer rules, clipped corner notches, halftone blocks, and one oversized negative-space breach to avoid equal-card symmetry.",
"Portable-console chrome rails are built with linear-gradient silver strips, pill battery chips, circular hardware buttons, and recessed black screw dots on key surfaces.",
"Terminal stickers appear as rotated monochrome labels with barcode IDs, command prompts, and checksum strings, with a single acid-lime hand-tag overlay used only for active status.",
"Typography separates voices with condensed uppercase Teko deck labels, IBM Plex Sans JP body copy, and Reddit Mono firmware microcopy with mandatory tight tracking."
],
"visualProfile": {
"family": "paper-collage",
"material": "paper",
"contour": "pebble",
"border": "solid",
"underlay": false,
"grain": false,
"stickerBadges": true,
"motion": "lift-rotate",
"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": "Amikake Console 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 black-and-warm-paper as the default relationship and reserve acid lime for active debug state.",
"Make at least one panel visibly hardware-like with chrome rails, screws, and battery/status chips.",
"Create rhythm through manga crops, halftone fields, barcode labels, and dense terminal rows.",
"Keep body copy readable at 17px+ with -0.02em tracking and strong contrast.",
"Use condensed uppercase labels for deck/navigation language and monospace only for metadata.",
"Let large blank paper areas remain blank; restraint is part of the streetwear polish.",
"Pair every colour status with text, a shape, or a command label for accessibility."
],
"dont": [
"Do not introduce purple, cyan, pink, or a multi-neon cyberpunk palette.",
"Do not use three equal statistic cards, generic dashboard charts, or SaaS analytics layouts.",
"Do not turn manga influence into character-illustration wallpaper.",
"Do not scatter stickers randomly; cluster them around meaningful panel edges.",
"Do not round every card or use soft glassmorphism blurs.",
"Do not place essential information only in tiny barcode or microcopy labels.",
"Do not let chrome gradients cover large surfaces; they are hardware cues only."
]
}
}