open-design/design-systems/clickhouse/tokens.css
chaoxiaoche b603a4ec54
feat(design-systems): add tokens.css + components.html for 10 devtool / fintech / docs brands (#2029)
Brands added (each with full 56-token :root + self-contained fixture):
- Devtools / data infra: clickhouse, hashicorp, mongodb, mintlify, sentry-adjacent (lovable, superhuman)
- AI-app builder / messaging: intercom, lovable, superhuman
- Fintech / crypto: coinbase, binance, wise

All 10 declare the complete shared schema (26 A1 + 26 A2 + 4 B-slot) with no
C-extensions; pnpm guard reports all 6 contract checks passing.

Co-authored-by: chaoxiaoche <chaoxiaoche@chaoxiaochedeMacBook-Pro.local>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-18 14:03:01 +08:00

135 lines
8.8 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* ─────────────────────────────────────────────────────────────────────────
* design-systems/clickhouse/tokens.css
*
* Structured token bindings for "Design System Inspired by ClickHouse".
* High-performance cockpit in acid yellow-green on obsidian black —
* pure black canvas, neon volt accents, extra-heavy Inter (900) display,
* charcoal-bordered cards, terminal-grade aesthetic.
*
* Key brand decisions encoded here:
* - Pure Black (#000000) page bg — never dark gray as page bg
* - Neon Volt (#faff69) as sole chromatic accent — maximum contrast on black
* - Charcoal borders (rgba(65,65,65,0.8)) — primary depth mechanism
* - Inter as primary, Basier as secondary display, Inconsolata for code
* - 96px display headlines with weight 900 — text as physical mass
* - Tight 1.0 leading on display sizes — billboard scale
* - Sharp 4px radius on buttons, 8px on cards — database precision geometry
* - Forest Green (#166534) doubles as --success — brand-aligned semantic
* ─────────────────────────────────────────────────────────────────── */
:root {
/* ─── Surface ─────────────────────────────────────────────────────
* Dark void: pure black canvas, near-black surfaces.
* The black is absolute (#000000) — never softened to dark gray. */
--bg: #000000; /* Pure Black — the page canvas, absolute */
--surface: #141414; /* Near Black — buttons, lifted dark surfaces */
--surface-warm: var(--surface); /* alias — no warm tier in the cool-neutral palette */
/* ─── Foreground ──────────────────────────────────────────────────
* Pure White on black for primary, Silver for secondary.
* All neutrals are perfectly neutral — no warm undertone. */
--fg: #ffffff; /* Pure White — primary text on dark surfaces */
--fg-2: #a0a0a0; /* Silver — secondary body text on dark */
--muted: #a0a0a0; /* Silver — captions, muted content */
--meta: #585858; /* Mid Gray — metadata, deepest neutral text */
/* ─── Border ──────────────────────────────────────────────────────
* Charcoal at 80% opacity — the workhorse for all card containment.
* Deep charcoal for inner separators that should not visually compete. */
--border: rgba(65, 65, 65, 0.8); /* Charcoal — primary card edge */
--border-soft: #343434; /* Deep Charcoal — inner separator, quieter */
/* ─── Accent ──────────────────────────────────────────────────────
* Neon Volt — the literal ClickHouse brand mark. Sole chromatic
* interruption on the obsidian canvas. Used on CTAs, link hovers,
* featured borders. Hover/active swap to dark variants per DESIGN.md:
* the neon CTA's hover INVERTS to near-black bg; active dims to pale. */
--accent: #faff69; /* Neon Volt — signature acid yellow-green */
--accent-on: #151515; /* Near Black text on neon — maximum readability */
--accent-hover: #1d1d1d; /* Brand-specific: neon CTA inverts to dark on hover */
--accent-active: #f4f692; /* Pale Yellow — DESIGN.md active/pressed state */
/* ─── Semantic ────────────────────────────────────────────────────
* Forest Green doubles as success — it's already the brand's
* "Get Started" CTA color, so it's natively part of the palette.
* Warn and danger use schema defaults to stay distinguishable. */
--success: #166534; /* Forest Green — brand-aligned secondary CTA / success */
--warn: #eab308;
--danger: #dc2626;
/* ─── Typography ──────────────────────────────────────────────────
* Inter is the primary face — full weight spectrum (400/500/600/700/900).
* Basier is the secondary display face for feature anchors at weight 600.
* Inconsolata for code blocks at weight 600 — terminal-like rendering. */
--font-display: "Inter", "Basier", Arial, Helvetica, ui-sans-serif, system-ui, sans-serif;
--font-body: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
--font-mono: "Inconsolata", ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Monaco, Consolas, monospace;
/* Type scale — DESIGN.md §3. 96px display mega, 72px hero, 36px feature.
* Weight 900 is reserved for --text-4xl in components; 700 carries the
* rest. Tight leading at scale — text feels architectural. */
--text-xs: 12px; /* Small — smallest text */
--text-sm: 14px; /* Caption / Uppercase Label (1.4px tracking) */
--text-base: 16px; /* Body / Button / Code */
--text-lg: 20px; /* Feature Title */
--text-xl: 24px; /* Sub-heading / Card title */
--text-2xl: 36px; /* Feature Heading (Basier 600) */
--text-3xl: 72px; /* Display / Hero (Inter 700) */
--text-4xl: 96px; /* Display Mega — Inter Black (900) */
--leading-body: 1.5;
--leading-tight: 1.0; /* Display ultra-tight — physical mass */
--tracking-display: normal; /* DESIGN.md: normal letter-spacing on display */
/* ─── Spacing ─────────────────────────────────────────────────────
* 8px base grid. Section vertical spacing 4864px (generous). */
--space-1: 4px;
--space-2: 8px;
--space-3: 12px;
--space-4: 16px;
--space-5: 20px;
--space-6: 24px;
--space-8: 32px;
--space-12: 48px;
--section-y-desktop: 64px; /* DESIGN.md: 4864px generous section rhythm */
--section-y-tablet: 48px;
--section-y-phone: 32px;
/* ─── Radius ──────────────────────────────────────────────────────
* Sharp (4px) on buttons / badges / code blocks — database precision.
* Comfortable (8px) on cards. Never round corners beyond 8px. */
--radius-sm: 4px; /* Sharp — buttons, badges, small elements */
--radius-md: 8px; /* Comfortable — cards, containers */
--radius-lg: 8px; /* Same — DESIGN.md caps radius at 8px */
--radius-pill: 9999px; /* Pill — toggle indicators, status badges */
/* ─── Elevation ───────────────────────────────────────────────────
* Shadows are barely visible on black — depth comes from borders.
* Level 2 subtle shadow declared for parity; the real depth signal
* is --elev-ring (charcoal hairline) and neon-border highlights. */
--elev-flat: none;
--elev-ring: 0 0 0 1px var(--border);
--elev-raised: 0 1px 3px rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
/* ─── Focus ring ──────────────────────────────────────────────────
* Neon-tinted focus — unified interactive feedback signal across
* links, buttons, and inputs. Always shifts toward the accent. */
--focus-ring: 0 0 0 3px color-mix(in oklab, var(--accent), transparent 70%);
/* ─── Motion ──────────────────────────────────────────────────────
* Standard durations — ClickHouse's intensity is in color and weight,
* not motion. Snappy enough to feel performant. */
--motion-fast: 150ms;
--motion-base: 200ms;
--ease-standard: cubic-bezier(0.2, 0, 0, 1);
/* ─── Layout ──────────────────────────────────────────────────────
* 1280px container — wide enough for multi-column dense data layouts
* while still tractable on standard desktops (DESIGN.md tops at 2200px
* for ultra-wide; 1280px is the workable default). */
--container-max: 1280px;
--container-gutter-desktop: 24px;
--container-gutter-tablet: 16px;
--container-gutter-phone: 12px;
}