Skip to main content

/ style

Style Guide

Every component, every variant, every state. The squint test lives here — run it before shipping any primitive change.

01· Tokens

Colors

Design token palette. Source: src/css/custom.css.

Surface

ink#111827
surface#ffffff
surface-alt#fafaf9
surface-muted#f5f5f4
surface-accent#fef2f2

Text

inkink-mutedink-subtlechalkchalk-mutedbrand

Status

success
warning
danger
info

Brand + Edge

brand#b91c1c
edge#e5e7eb
02· Tokens

Typography

Type scale tokens. Defined in tailwind.config.js.

Aa
display-1
Aa
display-2
Aa
display-3
Aa
body-lg
Aa
body-base
Aa
body-sm
Aa
eyebrow

Design System

03· Design System

Button

Four variants × three sizes × loading/disabled states × dark override.

Variants (size=md)

Sizes (variant=primary)

States

On dark

04· Design System

Chip

Passive pill or interactive link. 44px tap target.

Passive variants

brandneutralinksuccesswarningdanger

Interactive (to= / href=)

05· Design System

Card

Surface primitive. Variants × padding × interactive states.

Variants

default

bg-surface border-edge

muted

bg-surface-muted

accent

bg-surface-accent

dark

bg-ink

interactive (to)

hover lift + focus ring

interactive (prop)

interactive={'{true}'}

Padding scale

p-4 sm
p-6 md
p-8 lg
06· Design System

Eyebrow

Mono uppercase label. The signal before the heading.

tone=accent (default)

Section label

Another label

tone=subtle

When

So I get

Not

dark=true

On dark background

as=span (inline)

Prose with inline eyebrow inside running text.

07· Design System

Stat

Mono number + label. bare or card variant. StatCard = compat alias.

variant=bare (default)

$25.8K

M12 Cumulative

Base case

M4

Break-even

Base case

94%

Uptime

variant=card

$25.8K

M12 Cumulative

Base case

M4

Break-even

$800

Monthly Burn

Fixed costs

StatCard (compat alias)

$25.8K

M12 Cumulative

Base case

M4

Break-even

dark=true

94%

Uptime

30-day rolling

12ms

p95 latency

$0

Starting cash

Bootstrapped

08· Design System

Rhythm

Vertical stack with fixed-token gap. Replaces ad-hoc space-y-* classes.

All three gaps

tight

Block A — 12px — label/value pairs

Block B

Block C

base

Block A — 24px — sibling blocks

Block B

Block C

loose

Block A — 48px — distinct concepts

Block B

Block C

09· Design System

TightFive

Miller minus two. Show 5, fold the rest. Dev console warns when > 5.

as=col (7 items — 2 folded)

Wallet
Identity
Reputation
Incentive
Governance

as=grid

First
Second
Third
Fourth
Fifth

as=row gap=tight

DreamerEngineerCoachBuilderInvestor
10· Design System

Divider

Thin rule with optional centered eyebrow caption.

Plain


With caption

Section break

dark=true


11· Design System

Prose

Measure-enforced long-form wrapper. sm / md / lg sizes.

size=sm

Small — sidebar explanations, footnotes. Max 65ch.

Two paragraphs test the inter-paragraph rhythm. Strong and links included.

size=md (default)

Medium (default) — workhorse body. 16px / 1.625 / 65ch.

Two paragraphs test the inter-paragraph rhythm. Strong and links included.

size=lg

Large — hero intros, primary content that needs weight. 18px.

Two paragraphs test the inter-paragraph rhythm. Strong and links included.

UI Atoms

12· UI Atoms

Badge

Generic label chip. Domain badges (PRDStatusBadge, ConvictionBadge) compose this.

Variants

neutralinfosuccesswarningdanger
13· UI Atoms

Callout

Status box for inline alerts, outcomes, signals.

All variants

Outcome achieved

Example body for success variant.

Kill signal breached

Example body for danger variant.

Below threshold

Example body for warning variant.

Context note

Example body for info variant.

Structural note

Example body for neutral variant.
14· UI Atoms

Pill

Trigger/tag badge with data-variant. Named presets for JTBD taxonomy.

Named variants

painjobfrictionsignaldefault

Data Display

15· Data Display

StageHeader

Numbered stage label with done/total progress bar.

Progress states

01
Problem Definition3/5
02
Solution Design0/4
03
Build & Test4/4
16· Data Display

ScoreBar

Label + horizontal bar + value. Capability scores 0–max.

Score range 0–5

Strategy
4
Execution
2
Data
5
Adoption
1

Feature Matrix

17· Feature Matrix

HealthBar

Stacked L0–L4 progress bar. Used on Vessel overview.

Mixed — 202 features

L4: 5
L3: 12
L2: 25
L1: 40
202 total

All L4 — fully commissioned

L4: 20
L3: 0
L2: 0
L1: 0
20 total

All L0 — spec only

L4: 0
L3: 0
L2: 0
L1: 0
50 total
18· Feature Matrix

LevelBadge

L0–L4 commissioning state pill.

All levels

L0L1L2L3L4

Venture

19· Venture

ConvictionBadge

HIGH / MEDIUM / LOW / NONE conviction level pill.

Levels

HIGHMEDIUMLOWNONE
20· Venture

StatusBadge

VALIDATED / PROJECTED / UNVALIDATED venture metric status.

Statuses

VALIDATEDPROJECTEDUNVALIDATED
21· Venture

ScoreRing

Circular SVG progress ring. sm / md / lg sizes.

Sizes × values

sm
7/10
AI Score
md
7/10
AI Score
lg
7/10
AI Score
low
2/10
Low
full
10/10
Perfect
22· Venture

MetricBar

current / target bar with animated fill.

current vs target

Revenue42K / 100K
Retention78% / 90%
NPS55% / 70%
Coverage100% / 100%

Vision

23· Vision

ConvictionBar

Five-block bar for conviction level (1–5). Optional probability readout.

Conviction 1–5

1
2
3
4
5

With probability readout

72%
30%
90%

size=sm