cybercore 0.6.0

Shared config schema, palette, design tokens, and path conventions for the Cybercore Systems Framework
Documentation
/*
 * cybertokens — shared typography, spacing & sizing tokens for the
 * Cybercore Systems Framework.
 *
 * Colours are NOT here — they live in schema/cybergrid.json and are
 * emitted as `--bg --fg --acid --cyan …` by each app's theme layer.
 * This file is *everything else*: fonts, a type scale, spacing, radii,
 * motion, z-index. Drop it in any project (cyberdesk, cyberdeck,
 * cyberterm, a website …) so the feel stays consistent.
 *
 * Load order:  reset  →  cybertokens.css  →  theme colours  →  components
 *
 * v0.3.0
 */

:root {
  /* ── font families ─────────────────────────────────────────── */
  --font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", "SF Mono",
    Menlo, Consolas, "Liberation Mono", monospace;
  --font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    "Helvetica Neue", Arial, sans-serif;
  --font-display: var(--font-mono);      /* headings; override per project */

  /* ── type scale — 1.20 (minor third), 16px body ───────────── */
  --fs-0: 0.694rem;   /* ~11px  micro / captions / badges     */
  --fs-1: 0.833rem;   /* ~13px  small / labels / chrome text  */
  --fs-2: 1rem;       /*  16px  body                          */
  --fs-3: 1.20rem;    /* ~19px  h4 / lead                     */
  --fs-4: 1.44rem;    /* ~23px  h3                            */
  --fs-5: 1.728rem;   /* ~28px  h2                            */
  --fs-6: 2.074rem;   /* ~33px  h1                            */
  --fs-7: 2.488rem;   /* ~40px  display                       */

  /* ── line heights ─────────────────────────────────────────── */
  --lh-tight: 1.15;
  --lh-snug: 1.35;
  --lh-normal: 1.6;
  --lh-loose: 1.85;

  /* ── weights ──────────────────────────────────────────────── */
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* ── letter-spacing ───────────────────────────────────────── */
  --tracking-tight: -0.01em;
  --tracking-normal: 0em;
  --tracking-wide: 0.04em;
  --tracking-caps: 0.08em;               /* uppercase chrome labels */

  /* ── spacing scale — 0.25rem step ─────────────────────────── */
  --space-0: 0;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;

  /* ── radii ────────────────────────────────────────────────── */
  --radius-sharp: 2px;                   /* cybercore default — terminal feel */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 14px;
  --radius-pill: 999px;
  --radius: var(--radius-sharp);

  /* ── borders ──────────────────────────────────────────────── */
  --border-hair: 1px;
  --border-accent: 3px;

  /* ── motion ───────────────────────────────────────────────── */
  --ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 0.12s;
  --dur-mid: 0.24s;
  --dur-slow: 0.5s;

  /* ── z-index ladder ───────────────────────────────────────── */
  --z-base: 1;
  --z-sticky: 10;
  --z-popover: 60;
  --z-modal: 100;
  --z-toast: 200;
}