Cosmo Design System , Production playground
Live render of every component class shipped in cosmo-prod/packages/front/src/design-system/. Edits to those CSS files appear here on save (browser refresh).
tokens.css + components.css imported via relative path , local DS at cosmo-design/design-system/ not used.
Drift vs local DS
Production DS at cosmo-prod/packages/front/src/design-system/ compared to local DS at cosmo-design/design-system/ as of 2026-05-07.
Logos
Canonical SVGs ship in cosmo-prod/packages/front/src/design-system/assets/. Both use fill="currentColor" so consumers color them via the parent color property , no SVG editing needed for theme variants.
height, let width auto
currentColor--bg-app · on --ink-900 (dark) · on --accentTo recolor inline: inline the SVG markup (don't
<img>) and set color on the parent. <img> embeds isolate from page CSS so they won't inherit; use <object> or inline markup for theming.
<svg width="86" height="30" viewBox="0 0 86 30" ...> ...paths fill="currentColor"... </svg>
</span>
cosmo-prod/packages/front/src/design-system/assets/sett-logo.svgcosmo-prod/packages/front/src/design-system/assets/cosmo-logo.svg
Color
Semantic surface tokens render the structural backbone (canvas, panel, sunken, raised). Brand and status palettes drive accents and tags.
Typography
Three families. --font-display (Barlow) for headings + brand. --font-ui (Red Hat Text) for body. --font-mono (Rubik) for numbers + tags + IDs.
Spacing
Eight-step spacing scale anchored on 4px. Most components compose at --space-2 through --space-4.
Elevation
Surface stack. Most chrome lives at panel; popovers and floating panels lift to raised.
Buttons
Six variants × three sizes. Use accent sparingly , one per view.
.btn + .btn-{primary,accent,secondary,ghost,danger,link} + .btn-{sm,md,lg} · .icon-btn · .btn-accent-sm
Tags
Single component for every label, badge, and status pill. Modifiers across tone, size, shape, treatment.
.tag + tone .tag--{green,amber,red,blue,orange,ink,ink-mid} · size .tag--sm · shape .tag--{square,square-lg,pill} · treatment .tag--{outline,alert,fail,cased}
Badges & chips
Specialized count + status pills that aren't part of the .tag family.
.badge · .count-badge · .phase-tag · .sla-chip · .status-dot · .type-chip{,-r,-v} · .bt-r · .bt-v · .game-chip · .filter-pill · .tier-badge
Inputs
Form controls share border + accent focus ring.
.field + .field-label + .field-hint · .input + .input-error · .select · .checkbox + .checkbox-row + .checkbox-label
Avatars
Initial-letter avatars for auditors and TLs.
.avatar · .entity-av + .entity-av-circle + .entity-av-circle--sm + .entity-av-sq + .entity-av-badge
Auditor identity
Combined avatar + name + role block. Production DS exclusive , not in local DS yet.
.auditor-identity · .auditor-identity-text · .auditor-identity-role
Playable card
Full-fat card used in detail lists and stage views. Real data from PLY-001 / PLY-003.
Ply card (compact)
Dense card used inside kanban lanes.
Entity card
Used in directories , partner, auditor, game listings. Stat row across the bottom.
Tier card
Display tier rollup , partner count + active playables.
Rcard
Revision card variant , used in revision lists.
KPI strip
Top-of-page metric tiles with optional delta.
.kpi-strip > .kpi > .kpi-label + .kpi-value + .kpi-delta
Progress
Linear progress with title, percent, and animated fill.
Capacity bar
Auditor / TL load , label + fraction + fill. Used in kanban headers.
Load bar
Compact load indicator with optional count label.
Distribution bar
Stacked bar showing proportion across statuses.
Segmented bar
Grouped segments with legend. Often used to visualize quota status by tier.
Popover
Floating menu attached to a trigger. Static demo (no live anchoring).
Empty state
Alert
Toast
Topbar
App topbar
3-zone topbar , start / center / end.
Sidebar
Section header
Group header
Floating panel
Thin scrollbar
Week selector
Team picker
Kanban lane
Auditor lane with capacity row, vacation popover, and stacked playable cards.
Detail panel
Right-side detail drawer , title, type, meta, pipeline, timeline.
Observed detail panel
Live observation flavor of detail panel , tabs, ideas card, feedback form.
Manage quotas
Modal for editing weekly V/R quotas per game.
Quota backlog
Backlog grouped by auditor with body + group classes (prod-only). Lane preview.
.qb-panel > .qb-body > .qb-group
Row search
Priority slot
Auditor's priority queue placeholder slot , empty + filled.
Drag states
Visual treatments during drag operations.