back to gallery

Repère

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 — tokens plus the paired art style. Agents must generate real images.

the spec

specification

philosophy
summary
Repère is a superflat spot-color press for the screen. It reads the same brief that produced Superflat Pop Graphics — flat candy chroma, blunt ink contours, deliberate two-dimensional depthlessness — and answers it as a print shop rather than a sticker sheet. The interface is set up like a four-colour screen run: flat ink plates butted edge to edge across a deep ink-navy press room, bounded by blunt black keylines, with three spot colours offset just enough that a fourth colour blooms where two plates multiply. The registration cross is the system's grammar.
values
The misregistered overprint: depth is not shadow but deliberate registration error — two flat plates offset until a third colour blooms in the overlap, a thing no gradient can fake.Ink-navy ground: a deep press-room ground carries the page and makes spot colour read like wet ink; white is reserved for reading copy, never the ground.The registration cross as grammar: the concentric circle-and-plus alignment mark is the masthead glyph, the bullet, the divider, and the stamp that signs every plate.Three spots like highlighters: tangerine, cyan, and lime used like highlighters; ink is the structural neutral and semantic colour stays a small supporting part.Plates, not panels: hard tiles butt edge to edge separated only by ink keylines, with halftone dots filling quiet air, so the page reads like a broadsheet contact sheet, never a field of floating cards.
anti-values
×Defaulting to a white or pale ground, or floating soft rounded cards on a wash.×Gradients, glow, ambient shadow, or any cue of physical depth.×More than three spot colours, or muting them into pastel SaaS tones.×Boxing the nav into a floating pill bar, nesting cards, or putting an accent edge on a plate.×Emoji or symbol glyphs in copy or buttons; large empty neutral stretches that break the poster compression.
visual character
Flat ink plates bounded by a uniform 3pt black keyline on a deep ink-navy ground; two plates offset until their overlap multiplies into a darker bloom band — separation by ink and offset, never by blur.Concentric registration crosshairs (a circle bisected by a plus, centred dot) drawn as flat inline SVG repeat as the system glyph: masthead mark, bullet, divider, stat marker, and avatar fallback.Content stacks into hard vertical channels like ink running top to bottom through a screen; tiles butt edge to edge with zero gutter across an asymmetric twelve-column mosaic.A fine halftone dot field carries the quiet zones and full-bleed deep bands so the page stays packed and poster-like; loud full-width spot ribbons and ink counter chips replace thin dividers; controls are squared ink-bordered spot capsules with Space Mono micro-labels.
tokens
colors19 items
bg
#15131F
bg_deep
#100E18
surface
#1E1B2A
surface_2
#272336
ink
#000000
text
#F4F1E8
muted
#9A93A8
on_ground
#F4F1E8
on_ground_muted
#9A93A8
accent
#FF5A1F
accent_2
#19C3E6
accent_3
#B6E021
overlap
#7A3A12
on_accent
#15131F
border
#000000
success
#B6E021
warning
#FFB21A
error
#FF4D5E
info
#19C3E6
typography9 items
base size
17px
body font
Space Grotesk
heading font
Archivo
display font
Archivo Expanded
mono font
Space Mono
heading weight
900
heading transform
uppercase
letter spacing
-0.02em
google fonts url
https://fonts.googleapis.com/css2?family=Archivo:wght@600;700;800;900&family=Archivo+Expanded:wght@700;800;900&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
shadows2 items
none
none
press
translate(-2px,-2px) on hover; no drop shadow
spacing2 items
base
6px
scale
6px, 12px, 18px, 28px, 44px, 68px, 104px
surfaces3 items
ground
deep ink-navy press room (#15131F), quiet zones carry a fine halftone dot field
card
flat ink plate, 3pt black keyline, 0 radius, no shadow; tiles butt edge to edge
rail
deepest ink (#100E18) for the dashboard rail and full-bleed bands
borders4 items
default width
3px
accent width
3px
style
solid
character
blunt uniform black ink contour on every major plate, like manga line work; never hairline, grey, or an accent edge
motion3 items
duration
150ms
easing
cubic-bezier(.2,.8,.2,1)
philosophy
snappy press feel: buttons translate -2px on hover; landing reveals are scroll-triggered on top of a fully-settled no-JS state; respects prefers-reduced-motion
rules
composition
A deep ink-navy press-room ground carries the page; flat ink plates butt edge to edge across an asymmetric twelve-column mosaic, separated only by blunt 3pt black keylines — a broadsheet contact sheet, not floating cards. The landing opens on a full-viewport Decal Bloom hero whose art bleeds the full frame while a single solid ink band on the left carries the masthead headline overprinted directly onto it, no card. Below, sections never repeat a family: a split lead, a three-channel feature row, a full-bleed deep step band on a dot field, a two-up plate-pricing row, a centred candy CTA. Halftone dots and registration crosses fill the gaps.
hierarchy
Hierarchy from spot colour, ink weight, and a blocky type scale; one tangerine primary action leads each view while cyan, ghost, and muted controls recede. Section heads carry a Space Mono run tag; loud full-width spot ribbons and ink counter chips separate major zones, and the registration cross marks bullets and stats.
density
High-density but controlled: ornament and halftone dot fields are active structure, but every reading surface is a clean ink-bordered plate with generous internal spacing and AA-legible copy.
signature
The misregistered overprint — two flat ink plates offset until their overlap multiplies into a darker bloom band the palette never declares — plus the recurring registration cross (concentric circle bisected by a plus, centred dot) that signs the masthead, bullets lists, marks stats, and stamps every plate.
layout
grid
12-column max-1180px contained content on a full-bleed ink-navy ground; the landing hero spans 100vw x 100svh, full-bleed deep bands and the candy CTA span 100vw; the dashboard is a 248px deep rail + fluid main. Tiles butt edge to edge with zero gutter.
whitespace
Compressed-but-controlled poster rhythm; always pad above titles; fill empty air with the halftone dot field and registration crosses, never a blank neutral stretch.
density

medium-to-high

responsive
Stack to a single column on mobile, hide the masthead nav and non-essential table columns, never overflow horizontally; cap and centre on ultra-wide while only the hero and full-bleed bands span 100vw. minmax(0,1fr) columns and min-width:0 children everywhere; overflow-x hidden as a guard.
breakpoints
mobile
390px
tablet
760px
desktop
1024px
wide
1700px
guidance
do
  • Start from the deep ink-navy ground; let spot colour read like wet ink and white carry the reading.
  • Give every plate a 3pt ink keyline and a deliberate offset; let two plates bloom a third colour in the overlap.
  • Use the registration cross as the system's grammar — bullet, divider, stamp, and mark.
  • Use the three spots like highlighters; keep semantic colour a small supporting part.
  • Butt tiles edge to edge separated only by ink keylines; fill quiet air with halftone dots; style every form control explicitly.
avoid
  • Don't default to a white or pale ground, or float soft rounded cards on a wash.
  • Don't add gradients, glow, or ambient shadow as a depth cue.
  • Don't exceed three spot colours or mute them into pastel SaaS tones.
  • Don't box the nav into a floating pill bar, nest cards, or put an accent edge on a plate.
  • Don't use emoji or symbol glyphs in copy or buttons — draw inline SVG primitives.
imagery
pairs with

decal-bloom

summary
Flat superflat pop-graphic vector: bold flat fills bounded by thick uniform black ink contours, candy chroma used like highlighters, absolutely no gradients or shading, depthless and two-dimensional, with concentric registration crosshair targets, screen-print squeegee shapes, stacked die-cut sheets, stars, and halftone dot fields packed edge to edge against a deep ink-navy ground.
subjects
registration crosshair targetsoverlapping misregistered spot-color ink planesscreen-print squeegees and die-cut sheetshalftone dot fields and starspress-room poster collages
usage
One full-bleed Decal Bloom hero per landing; the masthead headline overprints a solid ink band on the left third while the art bleeds the full frame. Below the hero, return to flat CSS ink plates. End every prompt with: NO text, NO letters, NO logos.
katagami spec
# Repère

## Philosophy

Repère is a superflat spot-color press for the screen. It reads the same brief that produced Superflat Pop Graphics — flat candy chroma, blunt ink contours, deliberate two-dimensional depthlessness — and answers it as a print shop rather than a sticker sheet. The interface is set up like a four-colour screen run: flat ink plates butted edge to edge across a deep ink-navy press room, bounded by blunt black keylines, with three spot colours offset just enough that a fourth colour blooms where two plates multiply. The registration cross is the system's grammar.

### Values

- The misregistered overprint: depth is not shadow but deliberate registration error — two flat plates offset until a third colour blooms in the overlap, a thing no gradient can fake.
- Ink-navy ground: a deep press-room ground carries the page and makes spot colour read like wet ink; white is reserved for reading copy, never the ground.
- The registration cross as grammar: the concentric circle-and-plus alignment mark is the masthead glyph, the bullet, the divider, and the stamp that signs every plate.
- Three spots like highlighters: tangerine, cyan, and lime used like highlighters; ink is the structural neutral and semantic colour stays a small supporting part.
- Plates, not panels: hard tiles butt edge to edge separated only by ink keylines, with halftone dots filling quiet air, so the page reads like a broadsheet contact sheet, never a field of floating cards.

### Anti-Values

- Defaulting to a white or pale ground, or floating soft rounded cards on a wash.
- Gradients, glow, ambient shadow, or any cue of physical depth.
- More than three spot colours, or muting them into pastel SaaS tones.
- Boxing the nav into a floating pill bar, nesting cards, or putting an accent edge on a plate.
- Emoji or symbol glyphs in copy or buttons; large empty neutral stretches that break the poster compression.

### Visual Character

- Flat ink plates bounded by a uniform 3pt black keyline on a deep ink-navy ground; two plates offset until their overlap multiplies into a darker bloom band — separation by ink and offset, never by blur.
- Concentric registration crosshairs (a circle bisected by a plus, centred dot) drawn as flat inline SVG repeat as the system glyph: masthead mark, bullet, divider, stat marker, and avatar fallback.
- Content stacks into hard vertical channels like ink running top to bottom through a screen; tiles butt edge to edge with zero gutter across an asymmetric twelve-column mosaic.
- A fine halftone dot field carries the quiet zones and full-bleed deep bands so the page stays packed and poster-like; loud full-width spot ribbons and ink counter chips replace thin dividers; controls are squared ink-bordered spot capsules with Space Mono micro-labels.

## Tokens

### Colors

| Name | Value |
|------|-------|
| bg | `#15131F` |
| bg_deep | `#100E18` |
| surface | `#1E1B2A` |
| surface_2 | `#272336` |
| ink | `#000000` |
| text | `#F4F1E8` |
| muted | `#9A93A8` |
| on_ground | `#F4F1E8` |
| on_ground_muted | `#9A93A8` |
| accent | `#FF5A1F` |
| accent_2 | `#19C3E6` |
| accent_3 | `#B6E021` |
| overlap | `#7A3A12` |
| on_accent | `#15131F` |
| border | `#000000` |
| success | `#B6E021` |
| warning | `#FFB21A` |
| error | `#FF4D5E` |
| info | `#19C3E6` |

### Typography

- **Base Size**: 17px
- **Body Font**: Space Grotesk
- **Heading Font**: Archivo
- **Display Font**: Archivo Expanded
- **Mono Font**: Space Mono
- **Heading Weight**: 900
- **Heading Transform**: uppercase
- **Letter Spacing**: -0.02em
- **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Archivo:wght@600;700;800;900&family=Archivo+Expanded:wght@700;800;900&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

- **None**: none
- **Press**: translate(-2px,-2px) on hover; no drop shadow

### Spacing

- **Base**: 6px
- **Scale**: ["6px","12px","18px","28px","44px","68px","104px"]

### Surfaces

- **Ground**: deep ink-navy press room (#15131F), quiet zones carry a fine halftone dot field
- **Card**: flat ink plate, 3pt black keyline, 0 radius, no shadow; tiles butt edge to edge
- **Rail**: deepest ink (#100E18) for the dashboard rail and full-bleed bands

### Borders

- **Default Width**: 3px
- **Accent Width**: 3px
- **Style**: solid
- **Character**: blunt uniform black ink contour on every major plate, like manga line work; never hairline, grey, or an accent edge

### Motion

- **Duration**: 150ms
- **Easing**: cubic-bezier(.2,.8,.2,1)
- **Philosophy**: snappy press feel: buttons translate -2px on hover; landing reveals are scroll-triggered on top of a fully-settled no-JS state; respects prefers-reduced-motion

## Rules

### Composition

A deep ink-navy press-room ground carries the page; flat ink plates butt edge to edge across an asymmetric twelve-column mosaic, separated only by blunt 3pt black keylines — a broadsheet contact sheet, not floating cards. The landing opens on a full-viewport Decal Bloom hero whose art bleeds the full frame while a single solid ink band on the left carries the masthead headline overprinted directly onto it, no card. Below, sections never repeat a family: a split lead, a three-channel feature row, a full-bleed deep step band on a dot field, a two-up plate-pricing row, a centred candy CTA. Halftone dots and registration crosses fill the gaps.

### Hierarchy

Hierarchy from spot colour, ink weight, and a blocky type scale; one tangerine primary action leads each view while cyan, ghost, and muted controls recede. Section heads carry a Space Mono run tag; loud full-width spot ribbons and ink counter chips separate major zones, and the registration cross marks bullets and stats.

### Density

High-density but controlled: ornament and halftone dot fields are active structure, but every reading surface is a clean ink-bordered plate with generous internal spacing and AA-legible copy.

### Signature

The misregistered overprint — two flat ink plates offset until their overlap multiplies into a darker bloom band the palette never declares — plus the recurring registration cross (concentric circle bisected by a plus, centred dot) that signs the masthead, bullets lists, marks stats, and stamps every plate.

## Layout

### Grid

12-column max-1180px contained content on a full-bleed ink-navy ground; the landing hero spans 100vw x 100svh, full-bleed deep bands and the candy CTA span 100vw; the dashboard is a 248px deep rail + fluid main. Tiles butt edge to edge with zero gutter.

### Whitespace

Compressed-but-controlled poster rhythm; always pad above titles; fill empty air with the halftone dot field and registration crosses, never a blank neutral stretch.

### Density

medium-to-high

### Responsive

Stack to a single column on mobile, hide the masthead nav and non-essential table columns, never overflow horizontally; cap and centre on ultra-wide while only the hero and full-bleed bands span 100vw. minmax(0,1fr) columns and min-width:0 children everywhere; overflow-x hidden as a guard.

### Breakpoints

- **Mobile**: 390px
- **Tablet**: 760px
- **Desktop**: 1024px
- **Wide**: 1700px

## Guidance

### Do

- Start from the deep ink-navy ground; let spot colour read like wet ink and white carry the reading.
- Give every plate a 3pt ink keyline and a deliberate offset; let two plates bloom a third colour in the overlap.
- Use the registration cross as the system's grammar — bullet, divider, stamp, and mark.
- Use the three spots like highlighters; keep semantic colour a small supporting part.
- Butt tiles edge to edge separated only by ink keylines; fill quiet air with halftone dots; style every form control explicitly.

### Don't

- Don't default to a white or pale ground, or float soft rounded cards on a wash.
- Don't add gradients, glow, or ambient shadow as a depth cue.
- Don't exceed three spot colours or mute them into pastel SaaS tones.
- Don't box the nav into a floating pill bar, nest cards, or put an accent edge on a plate.
- Don't use emoji or symbol glyphs in copy or buttons — draw inline SVG primitives.

### Accessibility

Maintain WCAG AA: paper-white #F4F1E8 on the ink-navy ground, ink-dark #15131F on the spot fills. Spot colour, run tags, and dots never carry information alone — always paired with a text label. Targets at least 44px tall; focus uses a 3px cyan ring; reduced-motion users get instant state changes and no entrance reveal.

## Imagery Direction

### Pairs With

decal-bloom

### Summary

Flat superflat pop-graphic vector: bold flat fills bounded by thick uniform black ink contours, candy chroma used like highlighters, absolutely no gradients or shading, depthless and two-dimensional, with concentric registration crosshair targets, screen-print squeegee shapes, stacked die-cut sheets, stars, and halftone dot fields packed edge to edge against a deep ink-navy ground.

### Subjects

- registration crosshair targets
- overlapping misregistered spot-color ink planes
- screen-print squeegees and die-cut sheets
- halftone dot fields and stars
- press-room poster collages

### Usage

One full-bleed Decal Bloom hero per landing; the masthead headline overprints a solid ink band on the left third while the art bleeds the full frame. Below the hero, return to flat CSS ink plates. End every prompt with: NO text, NO letters, NO logos.
DESIGN.md
---
version: "alpha"
name: "Repère"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
  bg: "#15131F"
  bg_deep: "#100E18"
  surface: "#1E1B2A"
  surface_2: "#272336"
  ink: "#000000"
  text: "#F4F1E8"
  muted: "#9A93A8"
  on_ground: "#F4F1E8"
  on_ground_muted: "#9A93A8"
  accent: "#FF5A1F"
  accent_2: "#19C3E6"
  accent_3: "#B6E021"
  overlap: "#7A3A12"
  on_accent: "#15131F"
  border: "#000000"
  success: "#B6E021"
  warning: "#FFB21A"
  error: "#FF4D5E"
  info: "#19C3E6"
typography:
  headline-lg:
    fontFamily: "Archivo"
    fontSize: "2.075rem"
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: "-0.02em"
  headline-md:
    fontFamily: "Archivo"
    fontSize: "1.66rem"
    fontWeight: 600
    lineHeight: 1.15
    letterSpacing: "-0.02em"
  body-md:
    fontFamily: "Space Grotesk"
    fontSize: "17px"
    fontWeight: 400
    lineHeight: 1.5
    letterSpacing: "-0.02em"
  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: "6px"
  xs: "6px"
  sm: "12px"
  md: "18px"
  lg: "28px"
  xl: "44px"
  2xl: "68px"
  3xl: "104px"
components:
  color-reference-bg:
    backgroundColor: "{colors.bg}"
  color-reference-bg_deep:
    backgroundColor: "{colors.bg_deep}"
  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-muted:
    backgroundColor: "{colors.muted}"
  color-reference-on_ground:
    backgroundColor: "{colors.on_ground}"
  color-reference-on_ground_muted:
    backgroundColor: "{colors.on_ground_muted}"
  color-reference-accent:
    backgroundColor: "{colors.accent}"
  color-reference-accent_2:
    backgroundColor: "{colors.accent_2}"
  color-reference-accent_3:
    backgroundColor: "{colors.accent_3}"
  color-reference-overlap:
    backgroundColor: "{colors.overlap}"
  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"
---

# Repère

## Overview

Repère is a superflat spot-color press for the screen. It reads the same brief that produced Superflat Pop Graphics — flat candy chroma, blunt ink contours, deliberate two-dimensional depthlessness — and answers it as a print shop rather than a sticker sheet. The interface is set up like a four-colour screen run: flat ink plates butted edge to edge across a deep ink-navy press room, bounded by blunt black keylines, with three spot colours offset just enough that a fourth colour blooms where two plates multiply. The registration cross is the system's grammar.

### Values

- The misregistered overprint: depth is not shadow but deliberate registration error — two flat plates offset until a third colour blooms in the overlap, a thing no gradient can fake.
- Ink-navy ground: a deep press-room ground carries the page and makes spot colour read like wet ink; white is reserved for reading copy, never the ground.
- The registration cross as grammar: the concentric circle-and-plus alignment mark is the masthead glyph, the bullet, the divider, and the stamp that signs every plate.
- Three spots like highlighters: tangerine, cyan, and lime used like highlighters; ink is the structural neutral and semantic colour stays a small supporting part.
- Plates, not panels: hard tiles butt edge to edge separated only by ink keylines, with halftone dots filling quiet air, so the page reads like a broadsheet contact sheet, never a field of floating cards.

### Anti-Values

- Defaulting to a white or pale ground, or floating soft rounded cards on a wash.
- Gradients, glow, ambient shadow, or any cue of physical depth.
- More than three spot colours, or muting them into pastel SaaS tones.
- Boxing the nav into a floating pill bar, nesting cards, or putting an accent edge on a plate.
- Emoji or symbol glyphs in copy or buttons; large empty neutral stretches that break the poster compression.

### Visual Character

- Flat ink plates bounded by a uniform 3pt black keyline on a deep ink-navy ground; two plates offset until their overlap multiplies into a darker bloom band — separation by ink and offset, never by blur.
- Concentric registration crosshairs (a circle bisected by a plus, centred dot) drawn as flat inline SVG repeat as the system glyph: masthead mark, bullet, divider, stat marker, and avatar fallback.
- Content stacks into hard vertical channels like ink running top to bottom through a screen; tiles butt edge to edge with zero gutter across an asymmetric twelve-column mosaic.
- A fine halftone dot field carries the quiet zones and full-bleed deep bands so the page stays packed and poster-like; loud full-width spot ribbons and ink counter chips replace thin dividers; controls are squared ink-bordered spot capsules with Space Mono micro-labels.

## 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 | `#15131F` |
| bg_deep | `#100E18` |
| surface | `#1E1B2A` |
| surface_2 | `#272336` |
| ink | `#000000` |
| text | `#F4F1E8` |
| muted | `#9A93A8` |
| on_ground | `#F4F1E8` |
| on_ground_muted | `#9A93A8` |
| accent | `#FF5A1F` |
| accent_2 | `#19C3E6` |
| accent_3 | `#B6E021` |
| overlap | `#7A3A12` |
| on_accent | `#15131F` |
| border | `#000000` |
| success | `#B6E021` |
| warning | `#FFB21A` |
| error | `#FF4D5E` |
| info | `#19C3E6` |

## Typography

- **Headline-Lg**: Archivo, 2.075rem, weight 700, line-height 1.1.
- **Headline-Md**: Archivo, 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**: `6px`
- **Xs**: `6px`
- **Sm**: `12px`
- **Md**: `18px`
- **Lg**: `28px`
- **Xl**: `44px`
- **2xl**: `68px`
- **3xl**: `104px`

### Grid

12-column max-1180px contained content on a full-bleed ink-navy ground; the landing hero spans 100vw x 100svh, full-bleed deep bands and the candy CTA span 100vw; the dashboard is a 248px deep rail + fluid main. Tiles butt edge to edge with zero gutter.

### Whitespace

Compressed-but-controlled poster rhythm; always pad above titles; fill empty air with the halftone dot field and registration crosses, never a blank neutral stretch.

### Density

medium-to-high

### Responsive

Stack to a single column on mobile, hide the masthead nav and non-essential table columns, never overflow horizontally; cap and centre on ultra-wide while only the hero and full-bleed bands span 100vw. minmax(0,1fr) columns and min-width:0 children everywhere; overflow-x hidden as a guard.

### Breakpoints

- **Mobile**: 390px
- **Tablet**: 760px
- **Desktop**: 1024px
- **Wide**: 1700px

## Elevation & Depth

### Shadows

- **None**: none
- **Press**: translate(-2px,-2px) on hover; no drop shadow

## Shapes

### Rounded

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

### Surfaces

- **Ground**: deep ink-navy press room (#15131F), quiet zones carry a fine halftone dot field
- **Card**: flat ink plate, 3pt black keyline, 0 radius, no shadow; tiles butt edge to edge
- **Rail**: deepest ink (#100E18) for the dashboard rail and full-bleed bands

### Borders

- **Default Width**: 3px
- **Accent Width**: 3px
- **Style**: solid
- **Character**: blunt uniform black ink contour on every major plate, like manga line work; never hairline, grey, or an accent edge

## Components

### Composition

A deep ink-navy press-room ground carries the page; flat ink plates butt edge to edge across an asymmetric twelve-column mosaic, separated only by blunt 3pt black keylines — a broadsheet contact sheet, not floating cards. The landing opens on a full-viewport Decal Bloom hero whose art bleeds the full frame while a single solid ink band on the left carries the masthead headline overprinted directly onto it, no card. Below, sections never repeat a family: a split lead, a three-channel feature row, a full-bleed deep step band on a dot field, a two-up plate-pricing row, a centred candy CTA. Halftone dots and registration crosses fill the gaps.

### Hierarchy

Hierarchy from spot colour, ink weight, and a blocky type scale; one tangerine primary action leads each view while cyan, ghost, and muted controls recede. Section heads carry a Space Mono run tag; loud full-width spot ribbons and ink counter chips separate major zones, and the registration cross marks bullets and stats.

### Density

High-density but controlled: ornament and halftone dot fields are active structure, but every reading surface is a clean ink-bordered plate with generous internal spacing and AA-legible copy.

### Signature

The misregistered overprint — two flat ink plates offset until their overlap multiplies into a darker bloom band the palette never declares — plus the recurring registration cross (concentric circle bisected by a plus, centred dot) that signs the masthead, bullets lists, marks stats, and stamps every plate.

## 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-019ef8fb-0221-7550-8d1f-18674d020f49/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 Start from the deep ink-navy ground; let spot colour read like wet ink and white carry the reading.
- Do Give every plate a 3pt ink keyline and a deliberate offset; let two plates bloom a third colour in the overlap.
- Do Use the registration cross as the system's grammar — bullet, divider, stamp, and mark.
- Do Use the three spots like highlighters; keep semantic colour a small supporting part.
- Do Butt tiles edge to edge separated only by ink keylines; fill quiet air with halftone dots; style every form control explicitly.
- Don't Don't default to a white or pale ground, or float soft rounded cards on a wash.
- Don't Don't add gradients, glow, or ambient shadow as a depth cue.
- Don't Don't exceed three spot colours or mute them into pastel SaaS tones.
- Don't Don't box the nav into a floating pill bar, nest cards, or put an accent edge on a plate.
- Don't Don't use emoji or symbol glyphs in copy or buttons — draw inline SVG primitives.

### Accessibility

Maintain WCAG AA: paper-white #F4F1E8 on the ink-navy ground, ink-dark #15131F on the spot fills. Spot colour, run tags, and dots never carry information alone — always paired with a text label. Targets at least 44px tall; focus uses a 3px cyan ring; reduced-motion users get instant state changes and no entrance reveal.

## Imagery Direction

### Pairs With

decal-bloom

### Summary

Flat superflat pop-graphic vector: bold flat fills bounded by thick uniform black ink contours, candy chroma used like highlighters, absolutely no gradients or shading, depthless and two-dimensional, with concentric registration crosshair targets, screen-print squeegee shapes, stacked die-cut sheets, stars, and halftone dot fields packed edge to edge against a deep ink-navy ground.

### Subjects

- registration crosshair targets
- overlapping misregistered spot-color ink planes
- screen-print squeegees and die-cut sheets
- halftone dot fields and stars
- press-room poster collages

### Usage

One full-bleed Decal Bloom hero per landing; the masthead headline overprints a solid ink band on the left third while the art bleeds the full frame. Below the hero, return to flat CSS ink plates. End every prompt with: NO text, NO letters, NO logos.
shadcn/ui theme
```json
{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "repere",
  "type": "registry:theme",
  "title": "Repère shadcn Theme",
  "cssVars": {
    "theme": {},
    "light": {
      "background": "#15131F",
      "foreground": "#F4F1E8",
      "card": "#1E1B2A",
      "card-foreground": "#F4F1E8",
      "popover": "#1E1B2A",
      "popover-foreground": "#F4F1E8",
      "primary": "#F4F1E8",
      "primary-foreground": "#111111",
      "secondary": "#f4f4f5",
      "secondary-foreground": "#111111",
      "muted": "#9A93A8",
      "muted-foreground": "#F4F1E8",
      "accent": "#FF5A1F",
      "accent-foreground": "#ffffff",
      "destructive": "#FF4D5E",
      "border": "#000000",
      "input": "#000000",
      "ring": "#FF5A1F",
      "chart-1": "#F4F1E8",
      "chart-2": "#f4f4f5",
      "chart-3": "#FF5A1F",
      "chart-4": "#B6E021",
      "chart-5": "#FFB21A",
      "sidebar": "#1E1B2A",
      "sidebar-foreground": "#F4F1E8",
      "sidebar-primary": "#F4F1E8",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#19C3E6",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#000000",
      "sidebar-ring": "#FF5A1F",
      "radius": "0"
    },
    "dark": {
      "background": "#0f1115",
      "foreground": "#f8fafc",
      "card": "#181b22",
      "card-foreground": "#f8fafc",
      "popover": "#181b22",
      "popover-foreground": "#f8fafc",
      "primary": "#F4F1E8",
      "primary-foreground": "#111111",
      "secondary": "#252a33",
      "secondary-foreground": "#f8fafc",
      "muted": "#252a33",
      "muted-foreground": "#a1a1aa",
      "accent": "#FF5A1F",
      "accent-foreground": "#ffffff",
      "destructive": "#FF4D5E",
      "border": "#303642",
      "input": "#303642",
      "ring": "#FF5A1F",
      "chart-1": "#F4F1E8",
      "chart-2": "#f4f4f5",
      "chart-3": "#FF5A1F",
      "chart-4": "#B6E021",
      "chart-5": "#FFB21A",
      "sidebar": "#181b22",
      "sidebar-foreground": "#f8fafc",
      "sidebar-primary": "#F4F1E8",
      "sidebar-primary-foreground": "#111111",
      "sidebar-accent": "#FF5A1F",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#303642",
      "sidebar-ring": "#FF5A1F",
      "radius": "0"
    }
  },
  "meta": {
    "source": "katagami",
    "languageId": "en-019ef8fb-0221-7550-8d1f-18674d020f49",
    "slug": "repere",
    "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_2",
        "accent_3",
        "bg",
        "bg_deep",
        "border",
        "error",
        "info",
        "ink",
        "muted",
        "on_accent",
        "on_ground",
        "on_ground_muted",
        "overlap",
        "success",
        "surface",
        "surface_2",
        "text",
        "warning"
      ],
      "typography": [
        "base_size",
        "body_font",
        "display_font",
        "google_fonts_url",
        "heading_font",
        "heading_transform",
        "heading_weight",
        "letter_spacing",
        "mono_font"
      ],
      "radii": [
        "full",
        "lg",
        "md",
        "none",
        "sm"
      ],
      "shadows": [
        "none",
        "press"
      ],
      "spacing": [
        "base",
        "scale"
      ],
      "surfaces": [
        "card",
        "ground",
        "rail"
      ],
      "borders": [
        "accent_width",
        "character",
        "default_width",
        "style"
      ],
      "motion": [
        "duration",
        "easing",
        "philosophy"
      ]
    }
  }
}
```
in the wild

embodiments

DESIGN.md

at a glance

Typography

headline-lgArchivo · 33px · 700

The quick brown fox jumps

headline-mdArchivo · 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
remix lane

try a remix

Keep Repère and swap a palette and an art style onto it. The landing & dashboard recolor live.

UI language · fixed
Repère
Palette
Art style
Landing Page
live preview · recolored + filled
lineage

Family

Evolved from
related

More like this