back to gallery
design language·lichtsatz

Lichtsatz

A portable design language for agents: download the markdown first, then inspect the preview, tokens, and rules as needed.

Download DESIGN.md

Portable DESIGN.md source of truth for most agents and apps.

the spec

specification

philosophy
summary
A phototypesetting language for the screen: the Swiss typographic tradition moved from the print shop into the darkroom. A plate-black void, type that reads as developed light, and one luminous baseline beam that every headline rests on — structure carried by projected light on black rather than ink on paper.
values
clarity through typographic structure and a luminous baseline beam rather than ornamental chromeasymmetric, left-anchored editorial grid logic that holds tension against a deep empty right marginnear-monochrome restraint where the void, scale contrast and one exposure cyan do the expressive work
anti-values
×warm-paper grounds, grey washes, soft shadows, glass, or gradients other than the beam and the halftone screen×boxed or floating nav, nested cards, a single coloured accent edge pinned to a panel, and centred consumer-app styling
tokens
colors13 items
bg
#0A0A0D
surface
#101015
surface-2
#16161D
text
#F2F3F5
muted
#8C8E97
border
#2A2B33
beam
#EDEFF2
accent
#5FE3FF
on-accent
#06222B
success
#62E0A1
warning
#F2C463
error
#FF7A7A
info
#7FB6FF
typography8 items
base size
17px
body font
Space Grotesk
heading font
Space Grotesk
mono font
Space Mono
heading weight
700
heading transform
none
letter spacing
-0.04em
google fonts url
https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap
radii5 items
none
0
sm
0
md
0
lg
0
full
9999px
shadows4 items
sm
none
md
none
lg
none
glow
0 0 20px rgba(95,227,255,.5)
spacing2 items
base
8px
scale
4, 8, 12, 16, 24, 32, 48, 64, 96
surfaces3 items
treatment
plate
card style
Flat plate on a 2px developed-beam top rule over a black void; no side or bottom borders, no shadow, square corners. Never nested. Depth from beam glow only.
bg pattern
register-field
borders4 items
default width
1px
accent width
2px
style
solid
character
Structural rule lines in cool near-black expose the grid and separate zones; the section anchor is a luminous developed-beam hairline (white into cyan), never a coloured accent edge pinned to a panel.
motion3 items
duration
160ms
easing
cubic-bezier(0.2,0.8,0.2,1)
philosophy
snappy — the settled exposed page is the default; reveal is layered on top like a shutter, never a fade
rules
composition
Compose the screen as a darkroom plate sheet: stack full-width exposure bands, each opening with a beam-headed title, on a faint 12-column register field; lock content left and hold tension in the empty right margin.
hierarchy
Scale contrast first, then weight, then the luminous baseline beam and rule lines, then one exposure cyan for the focal state. Headlines command in tight Space Grotesk, mono index labels stay quiet, values read as precise exposure stops.
density
Medium-high density with disciplined macro-whitespace: content is plentiful but every cluster lives on a measured grid with generous breathing room above titles and around major headlines.
signature
The baseline beam — a luminous horizontal hairline (white into cyan, softly glowing) that every section title rests on, with a small exposure tick travelling along it; the same light recurs as the densitometer luminance ramp, panel top beams, and hot cyan peaks.
layout
grid
A 12-column register field on minmax(0,1fr) columns with min-width:0 children; full-width exposure bands stack vertically and content locks left, collapsing to a single column on mobile while the beam-headed titles persist.
whitespace
Generous page margins and deliberate vertical rhythm with macro-space above every title, compressed inside data clusters so the contrast between empty void and dense exposure readouts stays visible.
density

balanced

responsive
Renders from ~390px mobile to 2560px+ ultra-wide; single-column stack on mobile with non-essential nav hidden and no horizontal overflow; capped centred content on ultra-wide with only the hero spanning 100vw.
breakpoints
mobile
390-767
tablet
768-1439
desktop
1440+
guidance
do
  • Let the luminous baseline beam, scale contrast, and left alignment do the expressive work.
  • Keep panels open and floating on a 2px top beam; keep the void pure black; use exposure cyan like projected light — sparing and focal.
  • Set values as exposure readouts in uppercase mono and keep headlines tight and commanding.
avoid
  • Do not use warm-paper grounds, grey washes, soft shadows, glass, or gradients other than the beam and halftone screen.
  • Do not box or float the nav, nest cards, or pin a single coloured accent edge to a panel.
  • Do not centre everything; preserve left-anchored asymmetric tension and never use emoji or glyph symbols in copy.
imagery
pairs with

rasterwerk

summary
High-contrast monochrome lithographic halftone screen-printing applied to projected light: enlarger beams, darkroom voids, exposure haze — pure black and luminous white, dots swelling in shadow and opening in the beam, with thin registration rules and crop ticks. No colour, no text.
subjects
a projected enlarger light beam cutting through a dark studio voidexposure haze and dust caught in a cone of lighta galley of type seen as light on a sensitized plateregistration rules and crop ticks across a black field
usage
Full-bleed hero with the bright beam anchored low-left and deep black negative space filling the upper-right so the headline column stays legible over the void; smaller halftone luminance washes echo the beam inside specimen plates.
katagami spec
# Lichtsatz

## Philosophy

A phototypesetting language for the screen: the Swiss typographic tradition moved from the print shop into the darkroom. A plate-black void, type that reads as developed light, and one luminous baseline beam that every headline rests on — structure carried by projected light on black rather than ink on paper.

### Values

- clarity through typographic structure and a luminous baseline beam rather than ornamental chrome
- asymmetric, left-anchored editorial grid logic that holds tension against a deep empty right margin
- near-monochrome restraint where the void, scale contrast and one exposure cyan do the expressive work

### Anti-Values

- warm-paper grounds, grey washes, soft shadows, glass, or gradients other than the beam and the halftone screen
- boxed or floating nav, nested cards, a single coloured accent edge pinned to a panel, and centred consumer-app styling

### Visual Character

- Each section opens with a beam-headed title: a mono index label above an oversized Space Grotesk headline that rests on a single luminous horizontal hairline, with a small exposure tick travelling along the beam to mark the focal point.
- The page reads as a vertical stack of full-width exposure bands separated by beams of light; content locks left and tension lives in the empty right margin on a faint 12-column register field.
- Panels float on a 2px developed-beam top rule with no side or bottom edges and no nesting; depth comes from the black void and the cyan beam glow, never from shadows.
- Values are typeset as exposure readouts in uppercase Space Mono — f-stops, lines-per-inch, EV — and the signature densitometer renders a luminance ramp of pill-topped bars from the void to the beam with peak bars lit cyan.

## Tokens

### Colors

| Name | Value |
|------|-------|
| bg | `#0A0A0D` |
| surface | `#101015` |
| surface-2 | `#16161D` |
| text | `#F2F3F5` |
| muted | `#8C8E97` |
| border | `#2A2B33` |
| beam | `#EDEFF2` |
| accent | `#5FE3FF` |
| on-accent | `#06222B` |
| success | `#62E0A1` |
| warning | `#F2C463` |
| error | `#FF7A7A` |
| info | `#7FB6FF` |

### Typography

- **Base Size**: 17px
- **Body Font**: Space Grotesk
- **Heading Font**: Space Grotesk
- **Mono Font**: Space Mono
- **Heading Weight**: 700
- **Heading Transform**: none
- **Letter Spacing**: -0.04em
- **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap

### Radii

- **None**: 0
- **Sm**: 0
- **Md**: 0
- **Lg**: 0
- **Full**: 9999px

### Shadows

- **Sm**: none
- **Md**: none
- **Lg**: none
- **Glow**: 0 0 20px rgba(95,227,255,.5)

### Spacing

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

### Surfaces

- **Treatment**: plate
- **Card Style**: Flat plate on a 2px developed-beam top rule over a black void; no side or bottom borders, no shadow, square corners. Never nested. Depth from beam glow only.
- **Bg Pattern**: register-field

### Borders

- **Default Width**: 1px
- **Accent Width**: 2px
- **Style**: solid
- **Character**: Structural rule lines in cool near-black expose the grid and separate zones; the section anchor is a luminous developed-beam hairline (white into cyan), never a coloured accent edge pinned to a panel.

### Motion

- **Duration**: 160ms
- **Easing**: cubic-bezier(0.2,0.8,0.2,1)
- **Philosophy**: snappy — the settled exposed page is the default; reveal is layered on top like a shutter, never a fade

## Rules

### Composition

Compose the screen as a darkroom plate sheet: stack full-width exposure bands, each opening with a beam-headed title, on a faint 12-column register field; lock content left and hold tension in the empty right margin.

### Hierarchy

Scale contrast first, then weight, then the luminous baseline beam and rule lines, then one exposure cyan for the focal state. Headlines command in tight Space Grotesk, mono index labels stay quiet, values read as precise exposure stops.

### Density

Medium-high density with disciplined macro-whitespace: content is plentiful but every cluster lives on a measured grid with generous breathing room above titles and around major headlines.

### Signature

The baseline beam — a luminous horizontal hairline (white into cyan, softly glowing) that every section title rests on, with a small exposure tick travelling along it; the same light recurs as the densitometer luminance ramp, panel top beams, and hot cyan peaks.

## Layout

### Grid

A 12-column register field on minmax(0,1fr) columns with min-width:0 children; full-width exposure bands stack vertically and content locks left, collapsing to a single column on mobile while the beam-headed titles persist.

### Whitespace

Generous page margins and deliberate vertical rhythm with macro-space above every title, compressed inside data clusters so the contrast between empty void and dense exposure readouts stays visible.

### Density

balanced

### Responsive

Renders from ~390px mobile to 2560px+ ultra-wide; single-column stack on mobile with non-essential nav hidden and no horizontal overflow; capped centred content on ultra-wide with only the hero spanning 100vw.

### Breakpoints

- **Mobile**: 390-767
- **Tablet**: 768-1439
- **Desktop**: 1440+

## Guidance

### Do

- Let the luminous baseline beam, scale contrast, and left alignment do the expressive work.
- Keep panels open and floating on a 2px top beam; keep the void pure black; use exposure cyan like projected light — sparing and focal.
- Set values as exposure readouts in uppercase mono and keep headlines tight and commanding.

### Don't

- Do not use warm-paper grounds, grey washes, soft shadows, glass, or gradients other than the beam and halftone screen.
- Do not box or float the nav, nest cards, or pin a single coloured accent edge to a panel.
- Do not centre everything; preserve left-anchored asymmetric tension and never use emoji or glyph symbols in copy.

### Accessibility

Light developed-paper ink (#F2F3F5) on the plate-black void clears WCAG AA for body and large text; exposure cyan is reserved for focal accents and focus rings against dark surfaces; every form control is explicitly styled with a visible cyan focus ring; motion respects prefers-reduced-motion and the settled state renders with no JavaScript.

## Imagery Direction

### Pairs With

rasterwerk

### Summary

High-contrast monochrome lithographic halftone screen-printing applied to projected light: enlarger beams, darkroom voids, exposure haze — pure black and luminous white, dots swelling in shadow and opening in the beam, with thin registration rules and crop ticks. No colour, no text.

### Subjects

- a projected enlarger light beam cutting through a dark studio void
- exposure haze and dust caught in a cone of light
- a galley of type seen as light on a sensitized plate
- registration rules and crop ticks across a black field

### Usage

Full-bleed hero with the bright beam anchored low-left and deep black negative space filling the upper-right so the headline column stays legible over the void; smaller halftone luminance washes echo the beam inside specimen plates.
DESIGN.md
---
version: "alpha"
name: "Lichtsatz"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
  bg: "#0A0A0D"
  surface: "#101015"
  surface-2: "#16161D"
  text: "#F2F3F5"
  muted: "#8C8E97"
  border: "#2A2B33"
  beam: "#EDEFF2"
  accent: "#5FE3FF"
  on-accent: "#06222B"
  success: "#62E0A1"
  warning: "#F2C463"
  error: "#FF7A7A"
  info: "#7FB6FF"
typography:
  headline-lg:
    fontFamily: "Space Grotesk"
    fontSize: "2.075rem"
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: "-0.04em"
  headline-md:
    fontFamily: "Space Grotesk"
    fontSize: "1.66rem"
    fontWeight: 600
    lineHeight: 1.15
    letterSpacing: "-0.04em"
  body-md:
    fontFamily: "Space Grotesk"
    fontSize: "17px"
    fontWeight: 400
    lineHeight: 1.5
    letterSpacing: "-0.04em"
  label-md:
    fontFamily: "Space Mono"
    fontSize: "0.75rem"
    fontWeight: 600
    lineHeight: 1
    letterSpacing: "0.08em"
rounded:
  none: "0px"
  sm: "0px"
  md: "0px"
  lg: "0px"
  full: "9999px"
spacing:
  base: "8px"
  xs: "4px"
  sm: "8px"
  md: "12px"
  lg: "16px"
  xl: "24px"
  2xl: "32px"
  3xl: "48px"
  4xl: "64px"
  step-8: "96px"
components:
  color-reference-bg:
    backgroundColor: "{colors.bg}"
  color-reference-surface:
    backgroundColor: "{colors.surface}"
  color-reference-surface-2:
    backgroundColor: "{colors.surface-2}"
  color-reference-text:
    backgroundColor: "{colors.text}"
  color-reference-muted:
    backgroundColor: "{colors.muted}"
  color-reference-border:
    backgroundColor: "{colors.border}"
  color-reference-beam:
    backgroundColor: "{colors.beam}"
  color-reference-accent:
    backgroundColor: "{colors.accent}"
  color-reference-on-accent:
    backgroundColor: "{colors.on-accent}"
  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"
---

# Lichtsatz

## Overview

A phototypesetting language for the screen: the Swiss typographic tradition moved from the print shop into the darkroom. A plate-black void, type that reads as developed light, and one luminous baseline beam that every headline rests on — structure carried by projected light on black rather than ink on paper.

### Values

- clarity through typographic structure and a luminous baseline beam rather than ornamental chrome
- asymmetric, left-anchored editorial grid logic that holds tension against a deep empty right margin
- near-monochrome restraint where the void, scale contrast and one exposure cyan do the expressive work

### Anti-Values

- warm-paper grounds, grey washes, soft shadows, glass, or gradients other than the beam and the halftone screen
- boxed or floating nav, nested cards, a single coloured accent edge pinned to a panel, and centred consumer-app styling

### Visual Character

- Each section opens with a beam-headed title: a mono index label above an oversized Space Grotesk headline that rests on a single luminous horizontal hairline, with a small exposure tick travelling along the beam to mark the focal point.
- The page reads as a vertical stack of full-width exposure bands separated by beams of light; content locks left and tension lives in the empty right margin on a faint 12-column register field.
- Panels float on a 2px developed-beam top rule with no side or bottom edges and no nesting; depth comes from the black void and the cyan beam glow, never from shadows.
- Values are typeset as exposure readouts in uppercase Space Mono — f-stops, lines-per-inch, EV — and the signature densitometer renders a luminance ramp of pill-topped bars from the void to the beam with peak bars lit cyan.

## 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 | `#0A0A0D` |
| surface | `#101015` |
| surface-2 | `#16161D` |
| text | `#F2F3F5` |
| muted | `#8C8E97` |
| border | `#2A2B33` |
| beam | `#EDEFF2` |
| accent | `#5FE3FF` |
| on-accent | `#06222B` |
| success | `#62E0A1` |
| warning | `#F2C463` |
| error | `#FF7A7A` |
| info | `#7FB6FF` |

## Typography

- **Headline-Lg**: Space Grotesk, 2.075rem, weight 700, line-height 1.1.
- **Headline-Md**: Space Grotesk, 1.66rem, weight 600, line-height 1.15.
- **Body-Md**: Space Grotesk, 17px, weight 400, line-height 1.5.
- **Label-Md**: Space 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`

### Grid

A 12-column register field on minmax(0,1fr) columns with min-width:0 children; full-width exposure bands stack vertically and content locks left, collapsing to a single column on mobile while the beam-headed titles persist.

### Whitespace

Generous page margins and deliberate vertical rhythm with macro-space above every title, compressed inside data clusters so the contrast between empty void and dense exposure readouts stays visible.

### Density

balanced

### Responsive

Renders from ~390px mobile to 2560px+ ultra-wide; single-column stack on mobile with non-essential nav hidden and no horizontal overflow; capped centred content on ultra-wide with only the hero spanning 100vw.

### Breakpoints

- **Mobile**: 390-767
- **Tablet**: 768-1439
- **Desktop**: 1440+

## Elevation & Depth

### Shadows

- **Sm**: none
- **Md**: none
- **Lg**: none
- **Glow**: 0 0 20px rgba(95,227,255,.5)

## Shapes

### Rounded

- **None**: `0px`
- **Sm**: `0px`
- **Md**: `0px`
- **Lg**: `0px`
- **Full**: `9999px`

### Surfaces

- **Treatment**: plate
- **Card Style**: Flat plate on a 2px developed-beam top rule over a black void; no side or bottom borders, no shadow, square corners. Never nested. Depth from beam glow only.
- **Bg Pattern**: register-field

### Borders

- **Default Width**: 1px
- **Accent Width**: 2px
- **Style**: solid
- **Character**: Structural rule lines in cool near-black expose the grid and separate zones; the section anchor is a luminous developed-beam hairline (white into cyan), never a coloured accent edge pinned to a panel.

## Components

### Composition

Compose the screen as a darkroom plate sheet: stack full-width exposure bands, each opening with a beam-headed title, on a faint 12-column register field; lock content left and hold tension in the empty right margin.

### Hierarchy

Scale contrast first, then weight, then the luminous baseline beam and rule lines, then one exposure cyan for the focal state. Headlines command in tight Space Grotesk, mono index labels stay quiet, values read as precise exposure stops.

### Density

Medium-high density with disciplined macro-whitespace: content is plentiful but every cluster lives on a measured grid with generous breathing room above titles and around major headlines.

### Signature

The baseline beam — a luminous horizontal hairline (white into cyan, softly glowing) that every section title rests on, with a small exposure tick travelling along it; the same light recurs as the densitometer luminance ramp, panel top beams, and hot cyan peaks.

## 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-019ef8f6-aa52-7243-a542-e1c4dd8bec35/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 Let the luminous baseline beam, scale contrast, and left alignment do the expressive work.
- Do Keep panels open and floating on a 2px top beam; keep the void pure black; use exposure cyan like projected light — sparing and focal.
- Do Set values as exposure readouts in uppercase mono and keep headlines tight and commanding.
- Don't Do not use warm-paper grounds, grey washes, soft shadows, glass, or gradients other than the beam and halftone screen.
- Don't Do not box or float the nav, nest cards, or pin a single coloured accent edge to a panel.
- Don't Do not centre everything; preserve left-anchored asymmetric tension and never use emoji or glyph symbols in copy.

### Accessibility

Light developed-paper ink (#F2F3F5) on the plate-black void clears WCAG AA for body and large text; exposure cyan is reserved for focal accents and focus rings against dark surfaces; every form control is explicitly styled with a visible cyan focus ring; motion respects prefers-reduced-motion and the settled state renders with no JavaScript.

## Imagery Direction

### Pairs With

rasterwerk

### Summary

High-contrast monochrome lithographic halftone screen-printing applied to projected light: enlarger beams, darkroom voids, exposure haze — pure black and luminous white, dots swelling in shadow and opening in the beam, with thin registration rules and crop ticks. No colour, no text.

### Subjects

- a projected enlarger light beam cutting through a dark studio void
- exposure haze and dust caught in a cone of light
- a galley of type seen as light on a sensitized plate
- registration rules and crop ticks across a black field

### Usage

Full-bleed hero with the bright beam anchored low-left and deep black negative space filling the upper-right so the headline column stays legible over the void; smaller halftone luminance washes echo the beam inside specimen plates.
shadcn/ui theme
```json
{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "lichtsatz",
  "type": "registry:theme",
  "title": "Lichtsatz shadcn Theme",
  "cssVars": {
    "theme": {},
    "light": {
      "background": "#0A0A0D",
      "foreground": "#F2F3F5",
      "card": "#101015",
      "card-foreground": "#F2F3F5",
      "popover": "#101015",
      "popover-foreground": "#F2F3F5",
      "primary": "#F2F3F5",
      "primary-foreground": "#111111",
      "secondary": "#f4f4f5",
      "secondary-foreground": "#111111",
      "muted": "#8C8E97",
      "muted-foreground": "#F2F3F5",
      "accent": "#5FE3FF",
      "accent-foreground": "#111111",
      "destructive": "#FF7A7A",
      "border": "#2A2B33",
      "input": "#2A2B33",
      "ring": "#5FE3FF",
      "chart-1": "#F2F3F5",
      "chart-2": "#f4f4f5",
      "chart-3": "#5FE3FF",
      "chart-4": "#62E0A1",
      "chart-5": "#F2C463",
      "sidebar": "#101015",
      "sidebar-foreground": "#F2F3F5",
      "sidebar-primary": "#F2F3F5",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#7FB6FF",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#2A2B33",
      "sidebar-ring": "#5FE3FF",
      "radius": "0"
    },
    "dark": {
      "background": "#0f1115",
      "foreground": "#f8fafc",
      "card": "#181b22",
      "card-foreground": "#f8fafc",
      "popover": "#181b22",
      "popover-foreground": "#f8fafc",
      "primary": "#F2F3F5",
      "primary-foreground": "#111111",
      "secondary": "#252a33",
      "secondary-foreground": "#f8fafc",
      "muted": "#252a33",
      "muted-foreground": "#a1a1aa",
      "accent": "#5FE3FF",
      "accent-foreground": "#111111",
      "destructive": "#FF7A7A",
      "border": "#303642",
      "input": "#303642",
      "ring": "#5FE3FF",
      "chart-1": "#F2F3F5",
      "chart-2": "#f4f4f5",
      "chart-3": "#5FE3FF",
      "chart-4": "#62E0A1",
      "chart-5": "#F2C463",
      "sidebar": "#181b22",
      "sidebar-foreground": "#f8fafc",
      "sidebar-primary": "#F2F3F5",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#5FE3FF",
      "sidebar-accent-foreground": "#111111",
      "sidebar-border": "#303642",
      "sidebar-ring": "#5FE3FF",
      "radius": "0"
    }
  },
  "meta": {
    "source": "katagami",
    "languageId": "en-019ef8f6-aa52-7243-a542-e1c4dd8bec35",
    "slug": "lichtsatz",
    "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",
        "beam",
        "bg",
        "border",
        "error",
        "info",
        "muted",
        "on-accent",
        "success",
        "surface",
        "surface-2",
        "text",
        "warning"
      ],
      "typography": [
        "base_size",
        "body_font",
        "google_fonts_url",
        "heading_font",
        "heading_transform",
        "heading_weight",
        "letter_spacing",
        "mono_font"
      ],
      "radii": [
        "full",
        "lg",
        "md",
        "none",
        "sm"
      ],
      "shadows": [
        "glow",
        "lg",
        "md",
        "sm"
      ],
      "spacing": [
        "base",
        "scale"
      ],
      "surfaces": [
        "bg_pattern",
        "card_style",
        "treatment"
      ],
      "borders": [
        "accent_width",
        "character",
        "default_width",
        "style"
      ],
      "motion": [
        "duration",
        "easing",
        "philosophy"
      ]
    }
  }
}
```
in the wild

embodiments

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

at a glance

Typography

headline-lgSpace Grotesk · 33px · 700

The quick brown fox jumps

headline-mdSpace Grotesk · 27px · 600

The quick brown fox jumps

body-mdSpace Grotesk · 17px · 400

The quick brown fox jumps

label-mdSpace Mono · 12px · 600

The quick brown fox jumps

shadcn/ui

implementation kit

built with

Agent-generated

remix lane

try a remix

Keep Lichtsatzand swap a palette and an art style onto it — the landing & dashboard recolor live. The Studio does the same with all three lanes free.

UI language · fixed
Lichtsatz
Palette
Art style
Landing Page
live preview · recolored + filled
lineage

Family

Evolved from
related

More like this