/* Generated from docs/DESIGN.md — do not edit directly. */
/* Run: bun scripts/build-tokens.mjs */

:root {
    /* — Brand colors */
    --color-action-black: #000000;
    --color-midnight-ink: #111111;
    --color-gunmetal-gray: #615e5b;
    --color-canvas-white: #ffffff;
    --color-off-white-sage: #f3efeb;
    --color-faded-stone: #e9eaeb;
    --color-soft-concrete: #d8d3cc;
    --color-highlight-cobalt: #1E60E0;
    --color-highlight-cobalt-deep: #133D8E;

    /* — Semantic mappings */
    --surface: var(--color-canvas-white);
    --surface-secondary: var(--color-off-white-sage);
    --surface-band: var(--color-midnight-ink);
    --ink: var(--color-midnight-ink);
    --ink-secondary: var(--color-gunmetal-gray);
    --ink-on-dark: var(--color-canvas-white);
    --accent: var(--color-highlight-cobalt);
    --accent-hover: var(--color-highlight-cobalt-deep);
    --rule-soft: var(--color-faded-stone);
    --rule-medium: var(--color-soft-concrete);
    --action: var(--color-action-black);

    /* — Typography */
    --font-sans: 'Geist', 'Inter', ui-sans-serif, system-ui, -apple-system, sans-serif;
    --font-mono: 'Geist Mono', 'JetBrains Mono', ui-monospace, SFMono-Regular, monospace;

    --weight-regular: 400;
    --weight-medium: 500;
    --weight-bold: 700;

    /* — Type scale */
    --type-display-fs: 60px;
    --type-display-fw: 500;
    --type-display-lh: 1.1;
    --type-display-ls: -0.03em;

    --type-display-sm-fs: 40px;
    --type-display-sm-fw: 500;
    --type-display-sm-lh: 1.1;
    --type-display-sm-ls: -0.03em;

    --type-heading-lg-fs: 32px;
    --type-heading-lg-fw: 500;
    --type-heading-lg-lh: 1.1;
    --type-heading-lg-ls: -0.02em;

    --type-heading-fs: 24px;
    --type-heading-fw: 400;
    --type-heading-lh: 1.2;

    --type-heading-sm-fs: 20px;
    --type-heading-sm-fw: 400;
    --type-heading-sm-lh: 1.2;

    --type-body-lg-fs: 16px;
    --type-body-lg-fw: 400;
    --type-body-lg-lh: 1.5;

    --type-body-fs: 14px;
    --type-body-fw: 400;
    --type-body-lh: 1.4;

    --type-body-sm-fs: 12px;
    --type-body-sm-fw: 400;
    --type-body-sm-lh: 1.2;

    --type-caption-fs: 10px;
    --type-caption-fw: 400;
    --type-caption-lh: 1.2;

    --type-mono-data-fs: 14px;
    --type-mono-data-fw: 500;
    --type-mono-data-lh: 1.0;
    --type-mono-data-ls: 0.03em;

    /* — Spacing scale */
    --spacing-4: 4px;
    --spacing-8: 8px;
    --spacing-12: 12px;
    --spacing-16: 16px;
    --spacing-20: 20px;
    --spacing-24: 24px;
    --spacing-28: 28px;
    --spacing-32: 32px;
    --spacing-36: 36px;
    --spacing-40: 40px;
    --spacing-52: 52px;
    --spacing-56: 56px;
    --spacing-60: 60px;
    --spacing-64: 64px;
    --spacing-80: 80px;
    --spacing-88: 88px;

    /* — Layout */
    --max-width: 1200px;
    --section-gap: 80px;
    --card-padding: 28px;
    --element-gap: 24px;

    /* — Radius */
    --radius-small: 10px;
    --radius-medium: 20px;
    --radius-cards: 32px;
    --radius-buttons: 160px;
    --radius-navigation: 140px;
}
