Design System

Dusk.

The design language for System2. Cool dusk-blue at its core, with a rosy hint of warmth on Ted. Quiet, editorial, legible at scale.

Principles

The rules that govern every design decision.

Quiet, not decorative

Color, type, and motion report state. If a flourish doesn't earn its space, cut it.

Cool, not cold

Serious by default, briefly warm at moments that matter. Dusk is a thinking partner's palette.

Editorial over corporate

Grotesk headlines, mono metadata, generous negative space. Reads like a well-set document.

Motion reports, not performs

Fast by default (200ms). Longer only when the motion is the message.

Dense where it counts

Chat, tables, and live activity are compact and legible. Landing surfaces breathe.

Ted is the logo

The orb at whatever size is the logomark. His moods and gaze are the entire brand expression.

Ted

The logomark. A dusk-blue sphere with a rosy rim underneath. Five stacked radial gradients.

140px / Idle
64px / Thinking
40px / Speaking
24px / Inline

Never give Ted a face beyond two dots. No mouth, no eyebrows, no cartoon expressions. He is an agent, not a mascot. Gaze + state is the entire emotional range. No wordmark pairing. Ted stands alone.

Color — Dusk

Primary accent. Cool dusk-blue for CTAs, active states, focus rings, and brand moments. Chroma never exceeds 0.075 so Dusk reads as grounded, not saturated.

TokenLightDarkPreviewUsage
dusk#5E72A8#8696C4
Primary brand, CTAs, links
dusk-soft#EEF1F7#1C2138
Tinted backgrounds, active nav
dusk-hover#4C5F94#7788B8
Primary button hover
dusk-deep#354469#1F2A47
Gradient bottom, pressed
dusk-lift#8696C4#A4B1D6
Gradient top

Surfaces

The carrier for 90% of the UI. Cool off-whites in light mode, near-blacks in dark.

TokenLightDarkPreviewUsage
canvas#FAFAFB#0B0C0F
Page background
surface#FFFFFF#14161C
Cards, modals, panels
surface-raised#F3F4F7#1C1F28
Elevated surfaces, inputs

Text

Three tiers of text color for hierarchy.

TokenLightDarkPreviewUsage
ink#181A22#ECEDF0
Primary text, headings
ink-secondary#676A76#9EA2AE
Descriptions, captions
ink-tertiary#9598A3#6A6D78
Placeholders, hints

Semantic

Status colors are deliberately quiet. Never use raw CSS red or green.

TokenLightDarkPreviewUsage
success#2D7A4F#4ADE80
Completed, healthy
caution#B8860B#FACC15
Warnings, approval needed
danger#B8372A#F87171
Failed, destructive
info#3B5BA7#7E9CDD
System note, neutral

Tint Palette

9 hues for badges, status pills, category tags. Each has a bg + ink pair.

Blue
Violet
Pink
Teal
Amber
Coral
Green
Purple
Sky

Data Visualization

Six-color categorical set for charts on Dusk surfaces.

Dusk
#5E72A8
Rose
#C08379
Teal
#2A8A8A
Ochre
#B8860B
Plum
#7A5E8F
Sage
#6B9E78

Typography

Four families. Grotesk for headlines, Inter for UI, Serif for Ted, Mono for data.

Aa Bb Cc 123
Space Grotesk
Weights: 400-700
Headlines, navigation
Aa Bb Cc 123
Inter
Weights: 400-600
Body text, UI controls
Aa Bb Cc 123
Source Serif 4
Weights: 400-600
Ted's assistant replies
Aa Bb Cc 123
JetBrains Mono
Weights: 400-500
Code, metadata, IDs

Type Scale

Page title
24px / 600
Dashboard Overview
Section header
22px / 600
Active Quests
Nav label
15px / 500
System2
Body L
14px / 400
Welcome to your operations platform.
Body
13px / 400
Default text used across the interface.
Body S
12px / 400
Helper text and footnotes.
Micro-label
10px / 500
STEP 1 OF 5
Mono
12px / 400
a1b2c3d4-e5f6

Components

The minimum set. Buttons, inputs, badges, chips, cards.

Buttons

Small pill

Input

Badges

EngineeringActiveFailedPendingDesign

Card

Quest: Automate invoicing

Ted is building a workflow to auto-generate and send invoices through QuickBooks.

In progress2 tasks remaining

Toast

Quest completed successfully

Callout

Ted recommends connecting your Stripe integration before starting the revenue dashboard quest.

Space & Radii

Everything rests on a 4px grid. Minimum body text: 13px.

4px
8px
12px
16px
20px
24px
32px
40px
48px

Radii

mdChips, badges
lgInputs, small cards
11pxPrimary buttons
xlLarge cards, modals
fullAvatars, pills