Demo UI Tokens Reference

SkillMedia

Use when adding or modifying colors, spacing, typography, or layout values in demo/ CSS. Complete token reference for the monochrome design system.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Demo UI Tokens Reference skill

What this skill tells your AI

The instructions your AI receives, as published by innei/haklex in .claude/skills/demo-ui-tokens/SKILL.md and read by ahel’s review.

Parent skill: demo-ui-direction — overall design direction and anti-patterns. Sibling skill: demo-ui-components — component CSS classes, specs, and anatomy.

All tokens defined in demo/src/demo.css as CSS custom properties on :root / [data-theme='dark'].

Color Tokens

TokenLightDarkUsage
--demo-bg#fafafa#0a0a0aPage background
--demo-surface#fff#141414Card/panel background
--demo-surface-alt#fafafa#0a0a0aPanel header, input bg
--demo-text#171717#fafafaPrimary text
--demo-text-secondary#525252#a3a3a3Body text, button labels
--demo-text-muted#a3a3a3#525252Placeholders, labels, captions
--demo-border#e5e5e5#262626Card borders, dividers
--demo-border-light#f5f5f5#262626Subtle dividers inside cards
--demo-hover#f5f5f5#262626Hover background
--demo-accent#171717#fafafaActive state text (= text color)
--demo-accent-bgrgba(23,23,23,0.06)rgba(250,250,250,0.06)Active state bg, badges
--demo-code-bg#1a1a2e#0a0a0aCode block background
--demo-code-text#a5d6ff#e5e5e5Code block text

Rule: Never use raw hex values. Always reference tokens. No teal, pink, or colored accents.

Exception: Delete button hover uses #ef4444 / rgba(239,68,68,0.1) — the only non-neutral color, reserved for destructive actions.

Spacing

ValueWhere
2pxPill gaps, icon gaps
4pxInline element gaps, small padding
6pxButton padding-y, filter pill gaps
8pxCard internal gaps, badge padding-x, header-right gap
12pxPanel header padding, toolbar padding, button padding-x
14pxNav tab padding-x, action button padding-x
16pxPanel body padding, card preview padding, card gaps
20pxCard body padding, ext-card body padding
24pxPage padding, section gaps, header content gap
28pxFilter bar margin-bottom
32pxPage side padding, page header margin-bottom

Principle: Increments of 2/4/8. Common spacings: 8, 12, 16, 20, 24, 32.

Typography

Font Stacks

StackUsage
system-ui, -apple-system, sans-serifAll UI text
'SF Mono', SFMono-Regular, ui-monospace, Consolas, monospaceCode, JSON

Font Sizes

SizeWeightUsage
10px600Type badge (.node-card-type)
11px500-600Labels, tags, badges, sidebar desc
12px500Segmented tabs, action buttons, code, filter count
13px500Nav tabs, body buttons, descriptions, inputs
14px500-600Card name, panel title, page desc, sidebar item name
15px600Logo text
24px700Page title (.nodes-page-title)

Letter Spacing

ValueUsage
-0.5pxPage titles (24px)
-0.3pxLogo text
0.5pxUppercase type badges, labels

Font Weight

WeightUsage
400Count badges, muted text
500Default buttons, nav tabs, sidebar items
600Active states, panel titles, card names, labels, badges, logo
700Page headings

Border Radius

ValueUsage
4pxInput fields, small icon buttons, code inline
6pxButtons, nav tabs, select, code blocks, sidebar items
8pxPanels, toolbars, segmented control, card preview
10pxNode cards
12pxExtension cards
999pxPills, badges (full round)

Layout Constants

PropertyValue
Header height56px
Content max-width1200px
Node grid columns3 (→ 2 at 1200px → 1 at 768px)
Extension grid columns2 (→ 1 at 768px)
Preset sidebar width220px
Extension sidebar width220px
Comment sidebar width320px
AI chat pane width380px
Ext preview height160px
Card preview min-height64px

Transition

Standard: transition: all 0.15s on all interactive elements.

Shadows

Minimal use — only for floating elements:

  • Dropdown menu: box-shadow: 0 4px 12px rgba(0,0,0,0.1)
  • Comment popup/inline input: box-shadow: 0 2px 8px rgba(0,0,0,0.12)
  • Cards/panels: no shadow — border only

Focus States

/* Standard focus pattern */
border-color: var(--demo-accent);
box-shadow: 0 0 0 2px var(--demo-accent-bg);
outline: none;

Responsive Breakpoints

BreakpointChanges
≤1200pxNode grid 3→2 columns
≤768pxNode grid 2→1 column, ext grid 1 column, header stacks, sidebars go full-width above content, AI page stacks vertically

Signals

GitHub stars
36
Forks
6
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
demo-ui-tokens
Source
github.com/innei/haklex