Primitives — building blocks
Mọi token + atom + icon của Cowork UI Kit render thật trên cùng 1 trang. Brand annhien · aesthetic warm. HSL math, 0 hex literal, đổi 1 file brands/<name>.brand.css là cả palette shift.
Color tokens
Primary palette (4 step), 4 status colors, 5 surface tones aesthetic-warm. Tất cả compose từ HSL math trong foundation.css.
Primary palette (brand-driven)
--primary · --primary-deep · --primary-soft · --primary-bgStatus colors
success · warning · danger · info + softWarm aesthetic surface
--bg · --surface · --surface-2 · --border · --ruleTypography scale
Modular scale 1.25× (major third). 10 size · 5 line-height · 3 font family. Tracking từ tightest tới widest cho display vs label.
Font families
Inter · Instrument Serif · IBM Plex MonoSize scale (10 step)
--type-xs → --type-7xlLine-height variants
tight 1.1 · snug 1.25 · normal 1.5 · relaxed 1.65 · loose 1.75Spacing scale
4px rhythm. 14 step từ 4px tới 128px. Bar visual render bằng px thật để cảm nhận tỉ lệ.
Radius scale
9 level từ 0 tới pill. Render khối thật cho thấy cảm giác từng radius — khác chip / card / hero card / pill.
Border width scale
5 level từ 0 (no border) → 3px (indicator bar). Hairline 1px default, 1.5px cho input focus, 2px cho error.
Shadow + elevation
6 shadow level (xs → 2xl), 6 elevation composed (border + shadow), 3 glow variants cho dark mode.
Shadow tokens
--shadow-xs · sm · md · lg · xl · 2xlElevation system (composed)
--elevation-0 → --elevation-5 · border + shadowGlow variants (dark preview)
--glow-primary · --glow-violet · --glow-emeraldMotion tokens
5 duration · 6 easing curves. Bấm "Replay" để xem từng curve animate trên dot. Curve khác = "feel" khác.
Duration scale
instant · fast · normal · slow · slowerEasing curves (live demo)
click Replay để chạy 1600ms across trackZ-index scale
9 level từ base (0) tới tooltip (90). Stack visualization — mỗi card offset 24px để thấy stacking thật.
20 atom components
Components nguyên tử của kit — render thật mọi variant. Mỗi cái xài token thuần, đổi brand preset là re-skin.
01 · Avatar
3 sizes · image · fallback initials · gradient02 · Badge
6 variants · primary/success/warning/danger/info/neutral03 · Button
5 variants × 3 sizes · 15 cells04 · Checkbox
default · checked · indeterminate · disabled05 · Combobox
closed · open dropdown with search06 · Divider
horizontal · vertical · with text07 · Helper
info · warning · error variants08 · Icon
3 sizes · sm 16 / md 20 / lg 2409 · Input
default · focused · error · disabled10 · Kbd
single key · combo11 · Label
default · required marker12 · Popover
positioned · with contentFilter customers
Lọc theo tag, lifecycle stage, last activity.
13 · Progress
linear · circular · 25/50/7514 · Radio
group of 3 · 1 selected15 · Select
closed · open with options16 · Skeleton
3 shapes · line · block · circle · shimmer17 · Spinner
3 sizes · 16/24/4018 · Switch
off · on · disabled19 · Textarea
default · error20 · Tooltip
positioned above · trigger elementIcon set (24)
Lucide-style stroke 1.75 · 24 viewport. Click tile để copy SVG markup. Group: action, nav, status, social.
Tip: Click 1 icon để copy <svg><use href="sprite.svg#name"/></svg> markup vào clipboard.