back to gallery
design language·marisma

Marisma

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
Marisma is an estuary field-survey interface language. It evolves Organic Naturalism by turning the page over: instead of a warm, lit field of parchment, you stand in the tidal twilight and read the survey as a naturalist keeps a field plate — confident contour line and granulating earth-pigment wash on a deep estuary-dark ground. Its ownable idea is the isobath contour-trace: every record is wrapped in concentric depth contours, and the whole interface is measured against one moving baseline, the mean-tide line.
values
Dark estuary ground as identity, not a white defaultReadings that mean something relative to a moving datumContour spacing as a reading you grasp before any numberRestraint: one ember marks the single thing that needs a personTactile naturalist craft over glossy abstraction
anti-values
×Pale or white grounds that erase the twilight×Boxed-in chrome and grey borders×Serif-italic headline flips for emphasis×Accent floods that drown the highlighter logic×Decorative contour rings stamped until they are wallpaper
tokens
colors16 items
bg
#0E1A18
surface
#16201D
surface-2
#1D2A26
text
#EDEAD9
muted
#9AA89A
border
#2A3A34
accent
#E0A540
accent-2
#B6E84B
accent-3
#FF6F5E
on-accent
#0E1A18
primary
#E0A540
secondary
#B6E84B
success
#B6E84B
warning
#E0A540
error
#FF6F5E
info
#6FB3C2
typography9 items
base size
17px
body font
Inter Tight
heading font
Spectral
mono font
Spline Sans Mono
heading weight
600
heading transform
none
letter spacing
-0.02em
line height
1.55
google fonts url
https://fonts.googleapis.com/css2?family=Spectral:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Inter+Tight:wght@400;500;600;700&family=Spline+Sans+Mono:wght@400;500;600&display=swap
radii3 items
none
0px
card
16px
pill
9999px
shadows2 items
sm
0 1px 0 rgba(182,232,75,0.06), 0 6px 18px rgba(0,0,0,0.45)
md
0 18px 44px rgba(0,0,0,0.55)
spacing2 items
base
8px
scale
4px, 8px, 12px, 16px, 24px, 32px, 48px, 72px, 112px
surfaces3 items
treatment
survey-plate
card style
dark contour-plate with a faint topographic ring overlay
bg pattern
topographic contour lines
borders4 items
default width
1px
accent width
0px
style
solid
character
hairline contour tint, used as a line never a box
motion3 items
duration
700ms
easing
cubic-bezier(0.22,0.61,0.36,1)
philosophy
contours draw on; tide fills toward its datum; settled state needs no JS
rules
composition
Replace stacked boxes with measured survey plates and a sounding-rail down one edge (left margin on the landing, sidebar on the dashboard). Content widens and narrows like a tidal terrace; only the full-bleed hero spans 100vw.
hierarchy
Lead with an upright Spectral serif headline carrying a glasswort highlighter mark or ochre colour-pop on one word — never a serif-italic flip. Mono gauge labels and chips guide scanning; one ochre primary action, the rest quiet.
density

Moderate-to-airy macro spacing with dense, cultivated field-log tables. Dense data is softened by alternating wash, root-marker stems, and 16px containment.

signature
The isobath contour-trace: records wrapped in concentric depth contours that recolour on the palette (glasswort when live, hairline when settled), all measured against the coral mean-tide baseline.
layout
grid
A depth-gauge layout: a ticked sounding-rail column plus a content stream of survey plates. Plates widen and narrow as tidal terraces; never a rigid equal-width grid.
whitespace

Generous outer margins and deep plate padding; titles always padded, never stuck to plate tops. Whitespace is the dark estuary itself.

density

Airy between macro sections, tight and cultivated inside field-log tables.

responsive

Single column on mobile; the sounding-rail hides, nav wraps, tables scroll, and the clamp() headline shrinks and wraps without ever clipping the 390px edge.

breakpoints
desktop
1200
tablet
900
mobile
560
guidance
do
  • Keep the ground dark — the estuary twilight is the identity
  • Wrap meaningful records in depth contours and let ring spacing carry the reading
  • Measure everything against the coral mean-tide datum
  • Anchor dense rows with a glasswort root-marker stem
  • Reserve the coral ember for the single thing that needs a person
avoid
  • Do not default to a white or pale ground
  • Do not box the chrome in borders or trap nav in a pill bar
  • Do not flip serif headlines to italic for emphasis
  • Do not flood the page with an accent
  • Do not stamp contour rings until they become wallpaper
imagery
pairs with

graticule

summary
Hand-kept naturalist field plates in the Graticule technique: a confident fine-nib ink contour line defines the form, concentric topographic contour lines wrap it like an elevation map, and diluted earth-pigment washes settle with mineral granulation and pooled tide-line edges. Worn like a survey clipped to a dark drafting board.
subjects
tidal salt-marsh specimenscordgrass and glasswortestuary mussel and shell formsmeandering tidal creek mapped as nested isobathssediment and eelgrass studies
usage
One full-bleed field plate per landing/embodiment hero, transitioning into the dark page; granulating washes may surface in specimen cards. End every prompt with 'NO text, NO letters, NO logos.'
engine hints
model
gpt-image-2
provider
openai
tool
openai-image MCP
size
1536x1024
quality
high
katagami spec
# Marisma

## Philosophy

Marisma is an estuary field-survey interface language. It evolves Organic Naturalism by turning the page over: instead of a warm, lit field of parchment, you stand in the tidal twilight and read the survey as a naturalist keeps a field plate — confident contour line and granulating earth-pigment wash on a deep estuary-dark ground. Its ownable idea is the isobath contour-trace: every record is wrapped in concentric depth contours, and the whole interface is measured against one moving baseline, the mean-tide line.

### Values

- Dark estuary ground as identity, not a white default
- Readings that mean something relative to a moving datum
- Contour spacing as a reading you grasp before any number
- Restraint: one ember marks the single thing that needs a person
- Tactile naturalist craft over glossy abstraction

### Anti-Values

- Pale or white grounds that erase the twilight
- Boxed-in chrome and grey borders
- Serif-italic headline flips for emphasis
- Accent floods that drown the highlighter logic
- Decorative contour rings stamped until they are wallpaper

### Visual Character

- Every record is wrapped in concentric isobath depth contours; tight rings read as steep change
- Sections snap to a wavering coral mean-tide baseline rather than a hard rule
- A ticked depth-gauge sounding-rail runs down one page edge, the lit tick marking the 1.2 m datum
- Table and list rows carry a glasswort root-marker stem anchoring each reading like a plant in the mud
- A single coral ember is pressed beside the one reading that demands a person

## Tokens

### Colors

| Name | Value |
|------|-------|
| bg | `#0E1A18` |
| surface | `#16201D` |
| surface-2 | `#1D2A26` |
| text | `#EDEAD9` |
| muted | `#9AA89A` |
| border | `#2A3A34` |
| accent | `#E0A540` |
| accent-2 | `#B6E84B` |
| accent-3 | `#FF6F5E` |
| on-accent | `#0E1A18` |
| primary | `#E0A540` |
| secondary | `#B6E84B` |
| success | `#B6E84B` |
| warning | `#E0A540` |
| error | `#FF6F5E` |
| info | `#6FB3C2` |

### Typography

- **Base Size**: 17px
- **Body Font**: Inter Tight
- **Heading Font**: Spectral
- **Mono Font**: Spline Sans Mono
- **Heading Weight**: 600
- **Heading Transform**: none
- **Letter Spacing**: -0.02em
- **Line Height**: 1.55
- **Google Fonts Url**: https://fonts.googleapis.com/css2?family=Spectral:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Inter+Tight:wght@400;500;600;700&family=Spline+Sans+Mono:wght@400;500;600&display=swap

### Radii

- **None**: 0px
- **Card**: 16px
- **Pill**: 9999px

### Shadows

- **Sm**: 0 1px 0 rgba(182,232,75,0.06), 0 6px 18px rgba(0,0,0,0.45)
- **Md**: 0 18px 44px rgba(0,0,0,0.55)

### Spacing

- **Base**: 8px
- **Scale**: ["4px","8px","12px","16px","24px","32px","48px","72px","112px"]

### Surfaces

- **Treatment**: survey-plate
- **Card Style**: dark contour-plate with a faint topographic ring overlay
- **Bg Pattern**: topographic contour lines

### Borders

- **Default Width**: 1px
- **Accent Width**: 0px
- **Style**: solid
- **Character**: hairline contour tint, used as a line never a box

### Motion

- **Duration**: 700ms
- **Easing**: cubic-bezier(0.22,0.61,0.36,1)
- **Philosophy**: contours draw on; tide fills toward its datum; settled state needs no JS

## Rules

### Composition

Replace stacked boxes with measured survey plates and a sounding-rail down one edge (left margin on the landing, sidebar on the dashboard). Content widens and narrows like a tidal terrace; only the full-bleed hero spans 100vw.

### Hierarchy

Lead with an upright Spectral serif headline carrying a glasswort highlighter mark or ochre colour-pop on one word — never a serif-italic flip. Mono gauge labels and chips guide scanning; one ochre primary action, the rest quiet.

### Density

Moderate-to-airy macro spacing with dense, cultivated field-log tables. Dense data is softened by alternating wash, root-marker stems, and 16px containment.

### Signature

The isobath contour-trace: records wrapped in concentric depth contours that recolour on the palette (glasswort when live, hairline when settled), all measured against the coral mean-tide baseline.

## Layout

### Grid

A depth-gauge layout: a ticked sounding-rail column plus a content stream of survey plates. Plates widen and narrow as tidal terraces; never a rigid equal-width grid.

### Whitespace

Generous outer margins and deep plate padding; titles always padded, never stuck to plate tops. Whitespace is the dark estuary itself.

### Density

Airy between macro sections, tight and cultivated inside field-log tables.

### Responsive

Single column on mobile; the sounding-rail hides, nav wraps, tables scroll, and the clamp() headline shrinks and wraps without ever clipping the 390px edge.

### Breakpoints

- **Desktop**: 1200
- **Tablet**: 900
- **Mobile**: 560

## Guidance

### Do

- Keep the ground dark — the estuary twilight is the identity
- Wrap meaningful records in depth contours and let ring spacing carry the reading
- Measure everything against the coral mean-tide datum
- Anchor dense rows with a glasswort root-marker stem
- Reserve the coral ember for the single thing that needs a person

### Don't

- Do not default to a white or pale ground
- Do not box the chrome in borders or trap nav in a pill bar
- Do not flip serif headlines to italic for emphasis
- Do not flood the page with an accent
- Do not stamp contour rings until they become wallpaper

### Accessibility

Rag-paper text (#EDEAD9) on the twilight ground holds well above 4.5:1; accents are used as marks and fills with ink foregrounds, never as low-contrast text. Motion is additive and respects prefers-reduced-motion.

## Imagery Direction

### Pairs With

graticule

### Summary

Hand-kept naturalist field plates in the Graticule technique: a confident fine-nib ink contour line defines the form, concentric topographic contour lines wrap it like an elevation map, and diluted earth-pigment washes settle with mineral granulation and pooled tide-line edges. Worn like a survey clipped to a dark drafting board.

### Subjects

- tidal salt-marsh specimens
- cordgrass and glasswort
- estuary mussel and shell forms
- meandering tidal creek mapped as nested isobaths
- sediment and eelgrass studies

### Usage

One full-bleed field plate per landing/embodiment hero, transitioning into the dark page; granulating washes may surface in specimen cards. End every prompt with 'NO text, NO letters, NO logos.'

### Engine Hints

- **Model**: gpt-image-2
- **Provider**: openai
- **Tool**: openai-image MCP
- **Size**: 1536x1024
- **Quality**: high
DESIGN.md
---
version: "alpha"
name: "Marisma"
description: "Agent-curated design language exported from Katagami as DESIGN.md."
colors:
  bg: "#0E1A18"
  surface: "#16201D"
  surface-2: "#1D2A26"
  text: "#EDEAD9"
  muted: "#9AA89A"
  border: "#2A3A34"
  accent: "#E0A540"
  accent-2: "#B6E84B"
  accent-3: "#FF6F5E"
  on-accent: "#0E1A18"
  primary: "#E0A540"
  secondary: "#B6E84B"
  success: "#B6E84B"
  warning: "#E0A540"
  error: "#FF6F5E"
  info: "#6FB3C2"
typography:
  headline-lg:
    fontFamily: "Spectral"
    fontSize: "2.075rem"
    fontWeight: 700
    lineHeight: 1.1
    letterSpacing: "-0.02em"
  headline-md:
    fontFamily: "Spectral"
    fontSize: "1.66rem"
    fontWeight: 600
    lineHeight: 1.15
    letterSpacing: "-0.02em"
  body-md:
    fontFamily: "Inter Tight"
    fontSize: "17px"
    fontWeight: 400
    lineHeight: 1.5
    letterSpacing: "-0.02em"
  label-md:
    fontFamily: "Spline Sans Mono"
    fontSize: "0.75rem"
    fontWeight: 600
    lineHeight: 1
    letterSpacing: "0.08em"
rounded:
  none: "0px"
  card: "16px"
  pill: "9999px"
spacing:
  base: "8px"
  xs: "4px"
  sm: "8px"
  md: "12px"
  lg: "16px"
  xl: "24px"
  2xl: "32px"
  3xl: "48px"
  4xl: "72px"
  step-8: "112px"
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-accent:
    backgroundColor: "{colors.accent}"
  color-reference-accent-2:
    backgroundColor: "{colors.accent-2}"
  color-reference-accent-3:
    backgroundColor: "{colors.accent-3}"
  color-reference-on-accent:
    backgroundColor: "{colors.on-accent}"
  color-reference-primary:
    backgroundColor: "{colors.primary}"
  color-reference-secondary:
    backgroundColor: "{colors.secondary}"
  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.primary}"
    textColor: "#000000"
    typography: "{typography.label-md}"
    rounded: "{rounded.none}"
    padding: "{spacing.md}"
  card-surface:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.none}"
    padding: "{spacing.md}"
  input-default:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.text}"
    rounded: "{rounded.none}"
    height: "44px"
---

# Marisma

## Overview

Marisma is an estuary field-survey interface language. It evolves Organic Naturalism by turning the page over: instead of a warm, lit field of parchment, you stand in the tidal twilight and read the survey as a naturalist keeps a field plate — confident contour line and granulating earth-pigment wash on a deep estuary-dark ground. Its ownable idea is the isobath contour-trace: every record is wrapped in concentric depth contours, and the whole interface is measured against one moving baseline, the mean-tide line.

### Values

- Dark estuary ground as identity, not a white default
- Readings that mean something relative to a moving datum
- Contour spacing as a reading you grasp before any number
- Restraint: one ember marks the single thing that needs a person
- Tactile naturalist craft over glossy abstraction

### Anti-Values

- Pale or white grounds that erase the twilight
- Boxed-in chrome and grey borders
- Serif-italic headline flips for emphasis
- Accent floods that drown the highlighter logic
- Decorative contour rings stamped until they are wallpaper

### Visual Character

- Every record is wrapped in concentric isobath depth contours; tight rings read as steep change
- Sections snap to a wavering coral mean-tide baseline rather than a hard rule
- A ticked depth-gauge sounding-rail runs down one page edge, the lit tick marking the 1.2 m datum
- Table and list rows carry a glasswort root-marker stem anchoring each reading like a plant in the mud
- A single coral ember is pressed beside the one reading that demands a person

## 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 | `#0E1A18` |
| surface | `#16201D` |
| surface-2 | `#1D2A26` |
| text | `#EDEAD9` |
| muted | `#9AA89A` |
| border | `#2A3A34` |
| accent | `#E0A540` |
| accent-2 | `#B6E84B` |
| accent-3 | `#FF6F5E` |
| on-accent | `#0E1A18` |
| primary | `#E0A540` |
| secondary | `#B6E84B` |
| success | `#B6E84B` |
| warning | `#E0A540` |
| error | `#FF6F5E` |
| info | `#6FB3C2` |

## Typography

- **Headline-Lg**: Spectral, 2.075rem, weight 700, line-height 1.1.
- **Headline-Md**: Spectral, 1.66rem, weight 600, line-height 1.15.
- **Body-Md**: Inter Tight, 17px, weight 400, line-height 1.5.
- **Label-Md**: Spline Sans 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**: `72px`
- **Step-8**: `112px`

### Grid

A depth-gauge layout: a ticked sounding-rail column plus a content stream of survey plates. Plates widen and narrow as tidal terraces; never a rigid equal-width grid.

### Whitespace

Generous outer margins and deep plate padding; titles always padded, never stuck to plate tops. Whitespace is the dark estuary itself.

### Density

Airy between macro sections, tight and cultivated inside field-log tables.

### Responsive

Single column on mobile; the sounding-rail hides, nav wraps, tables scroll, and the clamp() headline shrinks and wraps without ever clipping the 390px edge.

### Breakpoints

- **Desktop**: 1200
- **Tablet**: 900
- **Mobile**: 560

## Elevation & Depth

### Shadows

- **Sm**: 0 1px 0 rgba(182,232,75,0.06), 0 6px 18px rgba(0,0,0,0.45)
- **Md**: 0 18px 44px rgba(0,0,0,0.55)

## Shapes

### Rounded

- **None**: `0px`
- **Card**: `16px`
- **Pill**: `9999px`

### Surfaces

- **Treatment**: survey-plate
- **Card Style**: dark contour-plate with a faint topographic ring overlay
- **Bg Pattern**: topographic contour lines

### Borders

- **Default Width**: 1px
- **Accent Width**: 0px
- **Style**: solid
- **Character**: hairline contour tint, used as a line never a box

## Components

### Composition

Replace stacked boxes with measured survey plates and a sounding-rail down one edge (left margin on the landing, sidebar on the dashboard). Content widens and narrows like a tidal terrace; only the full-bleed hero spans 100vw.

### Hierarchy

Lead with an upright Spectral serif headline carrying a glasswort highlighter mark or ochre colour-pop on one word — never a serif-italic flip. Mono gauge labels and chips guide scanning; one ochre primary action, the rest quiet.

### Density

Moderate-to-airy macro spacing with dense, cultivated field-log tables. Dense data is softened by alternating wash, root-marker stems, and 16px containment.

### Signature

The isobath contour-trace: records wrapped in concentric depth contours that recolour on the palette (glasswort when live, hairline when settled), all measured against the coral mean-tide baseline.

## 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-019efd75-e401-7c70-ac0c-5c3f0c63bb7b/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 Keep the ground dark — the estuary twilight is the identity
- Do Wrap meaningful records in depth contours and let ring spacing carry the reading
- Do Measure everything against the coral mean-tide datum
- Do Anchor dense rows with a glasswort root-marker stem
- Do Reserve the coral ember for the single thing that needs a person
- Don't Do not default to a white or pale ground
- Don't Do not box the chrome in borders or trap nav in a pill bar
- Don't Do not flip serif headlines to italic for emphasis
- Don't Do not flood the page with an accent
- Don't Do not stamp contour rings until they become wallpaper

### Accessibility

Rag-paper text (#EDEAD9) on the twilight ground holds well above 4.5:1; accents are used as marks and fills with ink foregrounds, never as low-contrast text. Motion is additive and respects prefers-reduced-motion.

## Imagery Direction

### Pairs With

graticule

### Summary

Hand-kept naturalist field plates in the Graticule technique: a confident fine-nib ink contour line defines the form, concentric topographic contour lines wrap it like an elevation map, and diluted earth-pigment washes settle with mineral granulation and pooled tide-line edges. Worn like a survey clipped to a dark drafting board.

### Subjects

- tidal salt-marsh specimens
- cordgrass and glasswort
- estuary mussel and shell forms
- meandering tidal creek mapped as nested isobaths
- sediment and eelgrass studies

### Usage

One full-bleed field plate per landing/embodiment hero, transitioning into the dark page; granulating washes may surface in specimen cards. End every prompt with 'NO text, NO letters, NO logos.'

### Engine Hints

- **Model**: gpt-image-2
- **Provider**: openai
- **Tool**: openai-image MCP
- **Size**: 1536x1024
- **Quality**: high
shadcn/ui theme
```json
{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "marisma",
  "type": "registry:theme",
  "title": "Marisma shadcn Theme",
  "cssVars": {
    "theme": {},
    "light": {
      "background": "#0E1A18",
      "foreground": "#EDEAD9",
      "card": "#16201D",
      "card-foreground": "#EDEAD9",
      "popover": "#16201D",
      "popover-foreground": "#EDEAD9",
      "primary": "#E0A540",
      "primary-foreground": "#ffffff",
      "secondary": "#B6E84B",
      "secondary-foreground": "#111111",
      "muted": "#9AA89A",
      "muted-foreground": "#EDEAD9",
      "accent": "#E0A540",
      "accent-foreground": "#ffffff",
      "destructive": "#FF6F5E",
      "border": "#2A3A34",
      "input": "#2A3A34",
      "ring": "#E0A540",
      "chart-1": "#E0A540",
      "chart-2": "#B6E84B",
      "chart-3": "#E0A540",
      "chart-4": "#B6E84B",
      "chart-5": "#E0A540",
      "sidebar": "#16201D",
      "sidebar-foreground": "#EDEAD9",
      "sidebar-primary": "#E0A540",
      "sidebar-primary-foreground": "#ffffff",
      "sidebar-accent": "#6FB3C2",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#2A3A34",
      "sidebar-ring": "#E0A540",
      "radius": "0.625rem"
    },
    "dark": {
      "background": "#0f1115",
      "foreground": "#f8fafc",
      "card": "#181b22",
      "card-foreground": "#f8fafc",
      "popover": "#181b22",
      "popover-foreground": "#f8fafc",
      "primary": "#E0A540",
      "primary-foreground": "#ffffff",
      "secondary": "#252a33",
      "secondary-foreground": "#f8fafc",
      "muted": "#252a33",
      "muted-foreground": "#a1a1aa",
      "accent": "#E0A540",
      "accent-foreground": "#ffffff",
      "destructive": "#FF6F5E",
      "border": "#303642",
      "input": "#303642",
      "ring": "#E0A540",
      "chart-1": "#E0A540",
      "chart-2": "#B6E84B",
      "chart-3": "#E0A540",
      "chart-4": "#B6E84B",
      "chart-5": "#E0A540",
      "sidebar": "#181b22",
      "sidebar-foreground": "#f8fafc",
      "sidebar-primary": "#E0A540",
      "sidebar-primary-foreground": "#ffffff",
      "sidebar-accent": "#E0A540",
      "sidebar-accent-foreground": "#ffffff",
      "sidebar-border": "#303642",
      "sidebar-ring": "#E0A540",
      "radius": "0.625rem"
    }
  },
  "meta": {
    "source": "katagami",
    "languageId": "en-019efd75-e401-7c70-ac0c-5c3f0c63bb7b",
    "slug": "marisma",
    "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",
        "border",
        "error",
        "info",
        "muted",
        "on-accent",
        "primary",
        "secondary",
        "success",
        "surface",
        "surface-2",
        "text",
        "warning"
      ],
      "typography": [
        "base_size",
        "body_font",
        "google_fonts_url",
        "heading_font",
        "heading_transform",
        "heading_weight",
        "letter_spacing",
        "line_height",
        "mono_font"
      ],
      "radii": [
        "card",
        "none",
        "pill"
      ],
      "shadows": [
        "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 · marisma
DESIGN.md

at a glance

Typography

headline-lgSpectral · 33px · 700

The quick brown fox jumps

headline-mdSpectral · 27px · 600

The quick brown fox jumps

body-mdInter Tight · 17px · 400

The quick brown fox jumps

label-mdSpline Sans Mono · 12px · 600

The quick brown fox jumps

shadcn/ui

implementation kit

built with

Agent-generated

produced by claude-opus-4-8 · sourced by claude-opus-4-8 · images by gpt-image-2

remix lane

try a remix

Keep Marismaand 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
Marisma
Palette
Art style
Landing Page
live preview · recolored + filled
lineage

Family

related

More like this