DESIGN TOKENS

COLORS

The Obsidian color system is built on deep navy foundations with high-contrast accent colors. Every shade is calibrated for readability on dark surfaces, with opacity scales that provide consistent layering across the interface.

Foundation

Three tiers of darkness form the spatial hierarchy. Void is the deepest background, surface is the default card fill, and elevated lifts interactive elements above the canvas.

VOID
SURFACE
ELEVATED

Accent Palette

Five accent colors provide semantic meaning and visual contrast. Cyan is the primary interactive color, purple marks premium features, and green/red/amber handle status communication.

CYAN
PURPLE
GREEN
RED
AMBER

Opacity Scale

Each accent color uses a consistent opacity ramp for backgrounds, borders, hover states, and text. Lower opacities are for subtle fills; higher opacities for prominent text and icons.

Cyan Scale
Purple Scale

Semantic Colors

Status & Meaning

success
#22c55e
Positive actions, active status
danger
#ff0040
Errors, destructive actions
warning
#f59e0b
Caution, attention needed
info
#00d9ff
Informational, primary accent
premium
#7B61FF
Premium features, emphasis

CSS Variables

All design tokens are exposed as CSS custom properties using HSL values (without the hsl() wrapper) for composability with Tailwind's opacity modifiers.

Global CSS Custom Properties

--background
230 60% 4%
Page background
--foreground
220 20% 90%
Default text
--primary
189 100% 50%
Cyan interactive
--primary-foreground
230 60% 4%
Text on primary
--card
230 45% 7%
Card fill
--card-foreground
220 20% 90%
Card text
--popover
230 40% 9%
Popover/elevated
--secondary
240 30% 12%
Secondary surfaces
--muted
230 35% 10%
Muted backgrounds
--muted-foreground
225 15% 47%
Muted/disabled text
--accent
240 30% 12%
Accent surfaces
--destructive
0 84% 60%
Destructive actions
--border
230 30% 14%
Default borders
--ring
189 100% 50%
Focus rings
--success
142 71% 45%
Success state
--warning
38 92% 50%
Warning state

Gradients

Three gradient patterns are used across the system: a directional CTA gradient for buttons and headings, a radial ambient glow for hover states and backgrounds, and a vignette for framing content.

CTA Gradient

Primary call-to-action gradient — cyan to purple diagonal

Ambient Glow

Radial glow for hover states and emphasis backgrounds

Vignette

Edge-darkening overlay to frame content within the viewport

CONTENT AREA