The operator system: midnight, red-free, dark-only. Every value below is live-rendered and stated inline in Menlo. This page is the single source of truth — ground is SURFACE-0 #04050A.
01
Surfaces
Three grounds. SURFACE-0 is canvas; SURFACE-1 is cards and tables; SURFACE-2 is inputs and nested wells. Never invent a fourth.
SURFACE-0
#04050A
Canvas · page ground
SURFACE-1
#0B0E17
Cards · tables
SURFACE-2
#111524
Inputs · wells
02
Text ramp
Three weights of emphasis on SURFACE-1. Display is Helvetica Neue Light (200/300); row text is Regular (400). Mono labels/data are Menlo.
Beaulieu, table nine — seated 9:41HI#F5F7FF
Party of 6 · $1,500.00 minimum · deposit heldMID#B8C0D4
Attribution · ops rail · secondary metaLO#6B7280
03
Accents
Four accents, each with one job. Cyan is the primary interactive + focus color; violet is ops chrome; electric drives single-series data; amber is the only alarm color.
VIOLET
#A78BFA
Ops chrome · active rail
CYAN
#22D3EE
Primary action · focus
ELECTRIC
#60A5FA
Single-series data
AMBER
#FBBF24
Alarms · negative money
04
Hub wayfinding
Semantic hub colors appear only as rails, left-rules, and attribution chips — never as fills, text, or status. They answer “which hub does this belong to.”
Guest
#34D399
Host stand, arrivals, entitlements
Ops
#A78BFA
Floor, bookings, closeout console
Marketing
#FBBF24
Promoters, attribution, links
GUEST · WALK-INOPS · HOST HOLDMARKETING · NOVA LINK
05
Status system RATIFIED
The booking lifecycle, red-free. HELD is a dashed MID chip with a pulsing hollow dot. Alarms are AMBER ONLY, in three escalating weights — at most one solid alarm per view.
HELDHELD
CONFIRMEDCONFIRMED
SEATED / GOODSEATEDGOOD
CLOSEDCLOSED
CANCELLEDCANCELLED
ALARM · 3 WEIGHTS△ ATTENTION▲ FAILED⊘ BLOCKING
SPLIT-PAY DOTS● locked · ○ pending · ▲ failed
⊘ NEVER RED — EVEN FOR ERRORS. ALARMS ESCALATE THROUGH AMBER.
06
Data-viz
Single-series is always ELECTRIC #60A5FA. Multi-category uses the fixed 7-slot palette in the order below — slot assignment never changes across views.
SINGLE-SERIES · ELECTRIC
CATEGORICAL · 7 SLOTS · ORDER FIXED
--pc-taste#c55285
--pc-identity#933e92
--pc-crews#6f52b9
--pc-venues#129db0
--pc-bookings#618aeb
--pc-revenue#b48706
--pc-marketing#ac4b06
07
Geometry
Base-4 spacing. Controls round to 7–8px, cards to 10–12px, chips are full pills. Hairlines carry three weights by context.
SPACING · BASE-4
4
8
12
16
24
32
48
RADII
control · 7px
card · 11px
chip · pill
HAIRLINES
CHROME · rgba .12
CARD · rgba .08
ROW · rgba .05
08
Motion
Motion is restrained and never decorative. Status changes are color-only — nothing changes position. Reduced-motion collapses all of it.
Hover / press120ms ease-out
Panels · enter / exit200ms
Status change · color only160ms · no reflow
Pending pulse1.6s · opacity 1 → .35
PENDING PULSE · 1.6sHELD
STATUS CHANGE · 160ms COLOR-ONLYHELD
09
Density
Three row heights by context. NIGHT is for host-stand and door — text ≥15px, targets ≥48px. STANDARD is the console default. COMPACT is for dense back-office ledgers.
NIGHT · 56px · text ≥15px · targets ≥48px
T-09 · BeaulieuPARTY 6$1,500.00
T-04 · SolènePARTY 4$900.00
STANDARD · 40px · console default
T-09 · BeaulieuPARTY 6$1,500.00
T-04 · SolènePARTY 4$900.00
T-02 · MarchettiPARTY 2$450.00
COMPACT · 30px · dense ledgers
T-09 · BeaulieuPARTY 6$1,500.00
T-04 · SolènePARTY 4$900.00
T-02 · MarchettiPARTY 2$450.00
T-11 · OkonkwoPARTY 8$2,000.00
10
Money & flags
All money is Menlo, tabular, formatted from integer cents — never from floats. Negative values render amber and parenthesised. 150000 → $1,500.00.
cents 150000$1,500.00
cents 45000$450.00
cents 99$0.99
cents 0$0.00
cents -3250($32.50)
cents -150000($1,500.00)
LIVE · INTEGER CENTS → USD
$1,500.00
Try a negative value — it turns amber, parenthesised.
⚑Take-rate is a ⚑ placeholder. It surfaces in venue reporting only — never in marketing UI, never as venue-facing rate copy. Render the flag glyph where a rate would otherwise appear until the reporting contract lands.