{
  "$meta": {
    "name": "SID — Super Intelligent Design",
    "version": "3.59.0",
    "generates": "system.css",
    "laws": "canon-lint.py --describe (E1-E26 + W1, W2 legacy/advisory) · grammar.py (the refusal register) · build-system.py --check (generated-in-sync)",
    "source": "Figma Brand SYSTEMS YW6hpKp918kbfFrVQQzH5y · frame 653:363 (Text Styles) · 653:393 (Colors)",
    "doctrine": "D-010 monolith · D-013 Figma decides, HTML implements",
    "rule": "system.css is GENERATED — never hand-edit it. Edit THIS file, then run: python3 build-system.py",
    "token_form": "each key is the exact CSS custom-property name minus the leading '--'. value is a string, or {v, note}.",
    "laws_codes": [
      "E1",
      "E2",
      "E4",
      "E5",
      "E6",
      "E7",
      "E8",
      "E9",
      "E10",
      "E11",
      "E12",
      "E13",
      "E14",
      "E15",
      "E16",
      "E17",
      "E18",
      "E19",
      "E20",
      "E21",
      "E22",
      "E23",
      "E24",
      "E25",
      "E26",
      "W1",
      "W2"
    ]
  },
  "version": {
    "site-version": {
      "v": "\"3.59.0\"",
      "note": "SID · the live build tag — 3.59.0: Jacob's chrome laws (13 Oct 2026) — the capsule radius struck (no round things), one line per joint, the register on the spine, no rule row under a glyph, words not pictographs"
    }
  },
  "ink · paper · line": {
    "ink": {
      "v": "#000000",
      "note": "steps 60/40/12 via opacity below"
    },
    "ink-60": "rgba(0, 0, 0, 0.6)",
    "ink-50": {
      "v": "rgba(0, 0, 0, 0.5)",
      "note": "annotation ink — secondary label grey (role-bearing, repeated)"
    },
    "ink-40": "rgba(0, 0, 0, 0.4)",
    "ink-20": {
      "v": "rgba(0, 0, 0, 0.2)",
      "note": "the HUB BACKGROUND scrim — the exact Figma 790:13 overlay over the midnight image (2026-07-08)"
    },
    "ink-12": "rgba(0, 0, 0, 0.12)",
    "paper": "#FFFFFF",
    "hairline": {
      "v": "0.5px",
      "note": "THE ONLY STROKE — no exceptions (ruled 2026-06-11)"
    },
    "line-structural": {
      "v": "#000000",
      "note": "rules / ticks — full ink"
    },
    "line-box": {
      "v": "rgba(0, 0, 0, 0.62)",
      "note": "BOX hairlines — optical 0.5 at any DPR (ink-compensated, not weight)"
    },
    "line-quiet": {
      "v": "#E5E5E5",
      "note": "frames / rails — quiet hairline"
    },
    "grey-51": {
      "v": "#515151",
      "note": "Grey 51 — the readable kicker/label grey (the IM palette grey; the .sec-code INFO line)"
    },
    "ink-03": {
      "v": "rgba(0, 0, 0, 0.03)",
      "note": "ink tint — low step below --ink-12; chip-hover floor + dl-row hover (absorbs the .025 snap). Zero-padded to match --ink-12."
    },
    "paper-90": {
      "v": "rgba(255, 255, 255, 0.9)",
      "note": "paper tint — top step; checked toggle-knob fill on the go-lane. The --paper-N family = on-dark white tints, alpha×100 suffix mirroring --ink-N."
    },
    "paper-82": {
      "v": "rgba(255, 255, 255, 0.82)",
      "note": "paper tint — the lawful pill-hover 'breath' deepen"
    },
    "paper-70": {
      "v": "rgba(255, 255, 255, 0.7)",
      "note": "paper tint — on-dark primary-button hover text"
    },
    "paper-62": {
      "v": "rgba(255, 255, 255, 0.62)",
      "note": "paper tint — bottom step; on-dark specimen .role text, the paper mirror of --ink-60"
    },
    "focus-ring": {
      "v": "1px",
      "note": "keyboard focus-ring WIDTH — deliberately NOT the editorial hairline; a 0.5px a11y ring is too faint (used 7×)"
    },
    "focus-offset": {
      "v": "2px",
      "note": "focus-ring optical offset, paired with --focus-ring (used 7×)"
    }
  },
  "the six · palette (paper + six inks · v3.54 cleanup 2026-06-28)": {
    "graphite": {
      "v": "#272727",
      "note": "OKLCH L 0.27 · neutral — deep UI surfaces or dark metadata"
    },
    "dusk": {
      "v": "#5F5295",
      "note": "OKLCH L 0.48 · C 0.11 · H 291° — chromatic"
    },
    "hum": {
      "v": "#6F75D7",
      "note": "OKLCH L 0.60 · C 0.15 · H 278° — chromatic · the hero"
    },
    "novel": {
      "v": "#332078",
      "note": "the new reading — violet-ink between ink and dusk; marks what enters the register (apparatus semantics; minted for HHG Web venture coding, Jacob 2026-07-08)"
    }
  },
  "type": {
    "font-serif": {
      "v": "\"Scheherazade New\", Georgia, serif",
      "note": "36/24/16/14/9 · H1–H3 + body + pills (Figma 653:363)"
    },
    "font-mono": {
      "v": "\"Red Hat Mono\", ui-monospace, monospace",
      "note": "7 +30% caps only — Code style (Figma 653:363)"
    },
    "times": {
      "v": "\"Times New Roman\", Times, serif",
      "note": "Θ-class · glyphs only · RULED 2026-06-21 — the OHM numerals conform to the main font; Times never renders numerals or Latin"
    },
    "fz-h0": {
      "v": "48px",
      "note": "EPQ III — H0 · lh 100% · tracking -4% · THE FLOOR TITLE — the header-linked sections (Figma 844:14, minted by Jacob 2026-07-22; the seventh style)"
    },
    "fz-display": {
      "v": "36px",
      "note": "EPQ III — H1 · lh 100% · tracking -3% (Figma 653:363)"
    },
    "fz-page-title": {
      "v": "24px",
      "note": "EPQ III — H2 · lh 100% / tracking -2% · SECTION TITLES (Figma 653:363)"
    },
    "fz-heading-3": {
      "v": "16px",
      "note": "EPQ III — H3 · lh 100% / tracking -1% · card + block titles (Figma 653:363)"
    },
    "fz-body-1": {
      "v": "14px",
      "note": "EPQ III — Body · lh 160% / tracking +5% · PAGE DEFAULT (Figma 653:363)"
    },
    "fz-serif-8": {
      "v": "9px",
      "note": "EPQ III — Button Pills Code · Scheherazade · lh 200% / tracking +20% (Figma 653:363) · name is legacy (‘8’); value 9px is authoritative"
    },
    "fz-mono-6": {
      "v": "7px",
      "note": "EPQ III — Code · lh 200% / tracking +30% (Figma 653:363) · name is legacy (‘6’); value 7px is authoritative"
    },
    "fz-mono-cli": {
      "v": "14px",
      "note": "the CLI display size — the terminal/screen register (BYOI web; minted Jacob 2026-07-08); mono escapes the 7px law on a terminal surface, paired with lh-mono-cli. Scope widened 2026-07-11 (THE SESSION, promoted from im-site): a terminal reads on paper too, not only glass-stage — the register is about being a TERMINAL, not about the background it sits on."
    },
    "lh-mono-cli": {
      "v": "1.5",
      "note": "CLI line rhythm — the terminal register companion of fz-mono-cli"
    },
    "lh-h0": {
      "v": "1",
      "note": "Figma 844:14 (H0)"
    },
    "lh-display": {
      "v": "1",
      "note": "Figma 653:363"
    },
    "lh-page-title": {
      "v": "1",
      "note": "Figma 653:363"
    },
    "lh-body-1": {
      "v": "1.6",
      "note": "Figma 653:363"
    },
    "lh-heading-3": {
      "v": "1",
      "note": "Figma 653:363"
    },
    "lh-serif-8": {
      "v": "2",
      "note": "Figma 653:363"
    },
    "lh-mono-6": {
      "v": "2",
      "note": "Figma 653:363"
    },
    "track-h0": {
      "v": "-0.04em",
      "note": "Figma 844:14 (H0)"
    },
    "track-display": {
      "v": "-0.03em",
      "note": "Figma 653:363"
    },
    "track-page-title": {
      "v": "-0.02em",
      "note": "Figma 653:363"
    },
    "track-heading-3": {
      "v": "-0.01em",
      "note": "Figma 653:363"
    },
    "track-body-1": {
      "v": "0.05em",
      "note": "Figma 653:363"
    },
    "track-code": {
      "v": "0.3em",
      "note": "Figma 653:363"
    },
    "track-caps": {
      "v": "0.2em",
      "note": "Figma 653:363"
    }
  },
  "grid · space · radius": {
    "col": {
      "v": "400px",
      "note": "minor unit · one canonical column — 400 compresses to --viewport-phone-safe only under pressure (D-020)"
    },
    "col-2": {
      "v": "840px",
      "note": "major unit + the academic prose measure — footnotes · method-coda · catalogue passage · §003 running body. NOT .sec-desc / .sec-lede (those span --content)."
    },
    "content": "1280px",
    "measure-thesis": {
      "v": "1040px",
      "note": "thesis h2 editorial line-length — the one unnamed measure between col-2 (840) and content (1280); single use, .thesis h2 (conformance pass 2026-06-21)."
    },
    "measure-note": {
      "v": "480px",
      "note": "the contained-overlay measure — the glass note (.gnote, clamped min(…,55cqw)) + the dialog modal cap; 4×s-6 (conformance pass 2026-06-23, was a 480px literal ×2)."
    },
    "gutter": {
      "v": "40px",
      "note": "the 40-law"
    },
    "s-1": "8px",
    "s-2": "16px",
    "s-3": "24px",
    "s-4": "40px",
    "s-5": "80px",
    "s-6": "120px",
    "stage": {
      "v": "480px",
      "note": "the canon specimen-stage height — 4×s-6; the OHM stage · .c-stage.h480 · the palette (Figma 525:28 APPROVED). Conformance pass 2026-06-23: was a 480px literal ×4, lint-blind."
    },
    "stage-half": {
      "v": "240px",
      "note": "the half stage — 2×s-6; .c-stage.h240"
    },
    "stage-phone": {
      "v": "360px",
      "note": "the stage at the phone breakpoint — 3×s-6 (D-020); .c-stage.h480 + .ohm-stage shrink to this under the monolith @container"
    },
    "radius-print": {
      "v": "0",
      "note": "0 — the only radius; we don't round things (Jacob, 13 Oct 2026: no round things)"
    }
  },
  "grid law · spacing canon": {
    "grid-unit": {
      "v": "40px",
      "note": "the atom — equals --gutter / --s-4 / --space-3"
    },
    "grid-half": {
      "v": "20px",
      "note": "half unit — nav gap · control padding · --space-2"
    },
    "space-2": {
      "v": "20px",
      "note": "title-to-body · field gap · nav wrap rhythm · the --space family is PUBLIC API — consumed through the live stylesheet by external HHG surfaces (consumer check 2026-07-10); never prune it on an internal-only count"
    },
    "space-3": {
      "v": "40px",
      "note": "grid unit · card gap · row gap"
    },
    "space-4": {
      "v": "80px",
      "note": "major internal block · header min-height"
    },
    "space-5": {
      "v": "120px",
      "note": "section breath · three grid units"
    },
    "section-gap": {
      "v": "120px",
      "note": "major sections separate by three grid units — equals --s-6 / --space-5"
    },
    "subsection-gap": {
      "v": "80px",
      "note": "sub-block rhythm within one section — the section/subsection hierarchy companion to section-gap; shares --space-4's value by design but names an independent semantic axis from section-gap-tight (which governs archive-section DENSITY, not intra-section hierarchy)"
    },
    "section-gap-tight": {
      "v": "80px",
      "note": "archive sections — equals --s-5 / --space-4"
    },
    "section-gap-loose": {
      "v": "160px",
      "note": "four grid units — the machine appendix + the IM floors (data-density=loose; his 'more air about the main titles' ruling 2026-07-22)"
    },
    "cluster-in": {
      "v": "8px",
      "note": "THE CLUSTER LAW · the head joint — kicker→title · title→subtitle (=--s-1; his ruling 2026-07-22: the card cluster is the law, subtitles never drift)"
    },
    "cluster-card": {
      "v": "16px",
      "note": "THE CLUSTER LAW · card name→body · card ¶ rhythm (=--s-2)"
    },
    "cluster-body": {
      "v": "24px",
      "note": "THE CLUSTER LAW · subtitle→body · passage ¶ rhythm · sub-title→content · image→first-text · body→coda/footnotes (=--s-3)"
    },
    "cluster-stage": {
      "v": "40px",
      "note": "THE CLUSTER LAW · head→staged block (grid/image row) · staged block→staged block within a floor (=--s-4, the atom as a joint)"
    },
    "cluster-exit": {
      "v": "80px",
      "note": "THE CLUSTER LAW · THE EXIT — a body block stands off whatever follows (=--s-5; kills the 40–64 ad-hoc 'too little after body' slop, ruling 2026-07-22)"
    },
    "column-unit": {
      "v": "400px",
      "note": "alias --col"
    },
    "gutter-unit": {
      "v": "40px",
      "note": "alias --gutter"
    },
    "viewport-desktop": {
      "v": "1280px",
      "note": "3×400 + 2×40 gutters — equals --content"
    },
    "viewport-tablet": {
      "v": "840px",
      "note": "2×400 + 1×40 gutter — equals --col-2"
    },
    "viewport-mobile": {
      "v": "400px",
      "note": "one canonical column"
    },
    "viewport-phone-safe": {
      "v": "360px",
      "note": "400 compresses only under viewport pressure (D-020) — equals --stage-phone"
    },
    "viewport-thumb": {
      "v": "180px",
      "note": "preview module only"
    },
    "measure-reading": {
      "v": "680px",
      "note": "readable text measure — not grid container"
    },
    "measure-caption": {
      "v": "400px",
      "note": "caption measure — equals --col"
    }
  },
  "formatting frame · Figma 491:618": {
    "frame-step": {
      "v": "40px",
      "note": "overflow increment — every band grows by this step when copy does not fit"
    },
    "frame-row-label": {
      "v": "40px",
      "note": "label row · mono m6 · line-height 2"
    },
    "frame-row-display": {
      "v": "80px",
      "note": "display row · serif-display · line-height 1 · elastic base"
    },
    "frame-row-h0": {
      "v": "80px",
      "note": "H0 row · serif-h0 48 vertically centered in the 80 band (Figma 844:14 draws it centered — 16/16, so the head joint reads 24 optical) · elastic base"
    },
    "frame-row-heading": {
      "v": "40px",
      "note": "section heading row · serif-page-title 24 · line-height 1"
    },
    "frame-row-body": {
      "v": "80px",
      "note": "body / lede row · serif-body-1 · elastic base"
    },
    "frame-row-body-col": {
      "v": "200px",
      "note": "about-column body floor · 400w col · elastic base"
    },
    "frame-hero-h": {
      "v": "200px",
      "note": "hero block floor · 40 + 80 + 80 · (--frame-section-h 160 + --frame-about-h 288 STRUCK 2026-07-22, the cluster-law bake: pre-cluster headroom floors that returned as ambient dead air under every tightened head — consumers zeroed them per-section, which is how drift re-arms; the head cluster floors itself now)"
    }
  },
  "glass · shadow · signal": {
    "glass-alpha": {
      "v": "0.6",
      "note": "α · live (JS overrides it inline; 0.6 at rest — was var(--glass-alpha, 0.6), a self-reference CSS treats as a cycle)"
    },
    "glass-blur": "12px",
    "glass-tint": "rgba(255, 255, 255, 0.4)",
    "glass-stage": {
      "v": "#000000",
      "note": "the HUB BACKGROUND · pure black (his ruling 2026-07-10; supersedes the #181818 near-black — Figma 790:13 was a starting point, not the final word)"
    },
    "shadow-spec": {
      "v": "0 0 0 0 transparent",
      "note": "Jacob, 16 Oct 2026: we do not use drop shadow. The token stays so every glass rule keeps a valid shadow list, and it draws nothing."
    },
    "signal-go": {
      "v": "#8E00FF",
      "note": "go · light"
    },
    "signal-attn": {
      "v": "#3600DA",
      "note": "attn · dark"
    },
    "signal-live": {
      "v": "#2CFF05",
      "note": "live pulse · green · can always be used, on paper or on the dark stage (Jacob, 16 Oct 2026; lifts the 2026-06-25 special-occasions / dark-stage-only law)"
    }
  }
}
