{
  "primitive": {
    "$schema": "https://schemas.designtokens.org/2025-10-01/draft.json",
    "$description": "PointSav design system \u2014 primitive token layer. Numeric scales (10/20/.../100 for color; 1..13 for spacing; 1..6 for duration) follow the convention popularised by Carbon, Material, Polaris, Atlassian, and the broader 2020-2026 design-system field \u2014 designers arriving from any of these systems recognise the structure. Color family names, hex values, spacing values, motion curves, and type scale are PointSav-original. Semantic overrides per tenant brand live in themes/<brand>.json.",
    "color": {
      "$type": "color",
      "white": {
        "$value": "#ffffff"
      },
      "black": {
        "$value": "#000000"
      },
      "neutral-10": {
        "$value": "#f5f6f8"
      },
      "neutral-20": {
        "$value": "#e6e8ec"
      },
      "neutral-30": {
        "$value": "#cdd1d8"
      },
      "neutral-40": {
        "$value": "#aab0bb"
      },
      "neutral-50": {
        "$value": "#878d99"
      },
      "neutral-60": {
        "$value": "#666c78"
      },
      "neutral-70": {
        "$value": "#4a4f59"
      },
      "neutral-80": {
        "$value": "#33373e"
      },
      "neutral-90": {
        "$value": "#1f2125"
      },
      "neutral-100": {
        "$value": "#0e0f12"
      },
      "primary-10": {
        "$value": "#eef3ff"
      },
      "primary-20": {
        "$value": "#d3deff"
      },
      "primary-30": {
        "$value": "#a6bcff"
      },
      "primary-40": {
        "$value": "#7392ff"
      },
      "primary-50": {
        "$value": "#3f6cf2"
      },
      "primary-60": {
        "$value": "#234ed8"
      },
      "primary-70": {
        "$value": "#173ab1"
      },
      "primary-80": {
        "$value": "#0c2785"
      },
      "primary-90": {
        "$value": "#04165a"
      },
      "positive-10": {
        "$value": "#e8f6ed"
      },
      "positive-30": {
        "$value": "#9fdaae"
      },
      "positive-50": {
        "$value": "#3fa55c"
      },
      "positive-60": {
        "$value": "#26823f"
      },
      "positive-70": {
        "$value": "#16602b"
      },
      "caution-10": {
        "$value": "#fff5e1"
      },
      "caution-30": {
        "$value": "#f5cd7a"
      },
      "caution-50": {
        "$value": "#d49b1f"
      },
      "caution-60": {
        "$value": "#a87514"
      },
      "caution-70": {
        "$value": "#7a520a"
      },
      "critical-10": {
        "$value": "#fceaea"
      },
      "critical-30": {
        "$value": "#f0a3a3"
      },
      "critical-50": {
        "$value": "#d24747"
      },
      "critical-60": {
        "$value": "#a52323"
      },
      "critical-70": {
        "$value": "#7d1414"
      },
      "orgchart": {
        "$description": "Org-chart entity-role palette -- 9 entity-role colors x border/bg pair, for hierarchical/structural corporate diagrams.",
        "green": {
          "$value": "#54924E",
          "$description": "Holding-entity border"
        },
        "green-bg": {
          "$value": "#EEF6EC",
          "$description": "Holding-entity surface"
        },
        "blue": {
          "$value": "#164679",
          "$description": "Investment-unit border"
        },
        "blue-bg": {
          "$value": "#E8EFF7",
          "$description": "Investment-unit surface"
        },
        "purple": {
          "$value": "#7C468C",
          "$description": "Intermediary (broker-dealer / asset manager) border"
        },
        "purple-bg": {
          "$value": "#EEE6F1",
          "$description": "Intermediary surface"
        },
        "orange": {
          "$value": "#F15F22",
          "$description": "Principal entity (named individual / equity partner) border"
        },
        "orange-bg": {
          "$value": "#FDE8DD",
          "$description": "Principal entity surface"
        },
        "grey": {
          "$value": "#9CA3AF",
          "$description": "Admin entity / titleco border"
        },
        "grey-bg": {
          "$value": "#E6E7E8",
          "$description": "Admin entity surface"
        },
        "grey-light-bg": {
          "$value": "#F7F9FA",
          "$description": "Dashed placeholder / service provider surface"
        },
        "grey-dark": {
          "$value": "#374151",
          "$description": "Strong border variant"
        },
        "yellow": {
          "$value": "#EAB308",
          "$description": "Fund vehicle / LP / limited partnership border -- dashed pill"
        },
        "yellow-bg": {
          "$value": "#FFFDE7",
          "$description": "Fund vehicle surface"
        },
        "magenta": {
          "$value": "#9F1853",
          "$description": "Legacy entity A border -- predecessor structure prior to reorganization"
        },
        "magenta-bg": {
          "$value": "#FFD6E8",
          "$description": "Legacy entity A surface"
        },
        "teal": {
          "$value": "#005D5D",
          "$description": "Legacy entity B border -- predecessor asset-holding structure prior to reorganization"
        },
        "teal-bg": {
          "$value": "#9EF0F0",
          "$description": "Legacy entity B surface"
        }
      }
    },
    "size": {
      "$type": "dimension",
      "space-1": {
        "$value": "0.125rem",
        "$description": "2px @ 16px base \u2014 hairline gutter"
      },
      "space-2": {
        "$value": "0.25rem",
        "$description": "4px @ 16px base"
      },
      "space-3": {
        "$value": "0.5rem",
        "$description": "8px @ 16px base \u2014 paragraph rhythm floor"
      },
      "space-4": {
        "$value": "0.75rem",
        "$description": "12px @ 16px base"
      },
      "space-5": {
        "$value": "1rem",
        "$description": "16px @ 16px base \u2014 body grid unit"
      },
      "space-6": {
        "$value": "1.5rem",
        "$description": "24px @ 16px base"
      },
      "space-7": {
        "$value": "2rem",
        "$description": "32px @ 16px base \u2014 section gutter"
      },
      "space-8": {
        "$value": "2.5rem",
        "$description": "40px @ 16px base"
      },
      "space-9": {
        "$value": "3rem",
        "$description": "48px @ 16px base"
      },
      "space-10": {
        "$value": "4rem",
        "$description": "64px @ 16px base \u2014 major section"
      },
      "space-11": {
        "$value": "5rem",
        "$description": "80px @ 16px base"
      },
      "space-12": {
        "$value": "6rem",
        "$description": "96px @ 16px base"
      },
      "space-13": {
        "$value": "10rem",
        "$description": "160px @ 16px base \u2014 hero spacing"
      }
    },
    "typography": {
      "$type": "typography",
      "utility-1": {
        "$value": {
          "fontFamily": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontWeight": 400,
          "fontSize": "0.75rem",
          "lineHeight": 1.34,
          "letterSpacing": "0.16px"
        },
        "$description": "12/16 \u2014 caption, label, table cell"
      },
      "utility-2": {
        "$value": {
          "fontFamily": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontWeight": 400,
          "fontSize": "0.875rem",
          "lineHeight": 1.43,
          "letterSpacing": "0.16px"
        },
        "$description": "14/20 \u2014 secondary body, helper text"
      },
      "utility-3": {
        "$value": {
          "fontFamily": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontWeight": 400,
          "fontSize": "1rem",
          "lineHeight": 1.5,
          "letterSpacing": "0px"
        },
        "$description": "16/24 \u2014 body floor"
      },
      "utility-4": {
        "$value": {
          "fontFamily": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontWeight": 600,
          "fontSize": "1rem",
          "lineHeight": 1.5,
          "letterSpacing": "0px"
        },
        "$description": "16/24 \u2014 UI heading, button label, table heading"
      },
      "display-1": {
        "$value": {
          "fontFamily": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontWeight": 500,
          "fontSize": "1.25rem",
          "lineHeight": 1.4,
          "letterSpacing": "-0.01em"
        },
        "$description": "20/28 \u2014 sub-heading"
      },
      "display-2": {
        "$value": {
          "fontFamily": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontWeight": 500,
          "fontSize": "1.5rem",
          "lineHeight": 1.34,
          "letterSpacing": "-0.01em"
        },
        "$description": "24/32 \u2014 section heading"
      },
      "display-3": {
        "$value": {
          "fontFamily": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontWeight": 400,
          "fontSize": "2rem",
          "lineHeight": 1.25,
          "letterSpacing": "-0.015em"
        },
        "$description": "32/40 \u2014 page title"
      },
      "display-4": {
        "$value": {
          "fontFamily": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontWeight": 300,
          "fontSize": "2.625rem",
          "lineHeight": 1.2,
          "letterSpacing": "-0.02em"
        },
        "$description": "42/50 \u2014 hero / landing"
      },
      "wiki-body": {
        "$value": {
          "fontFamily": "'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontSize": "1.0625rem",
          "fontWeight": 400,
          "letterSpacing": "0px",
          "lineHeight": 1.6
        },
        "$description": "17/27 \u2014 wiki article body (IBM Plex Sans, 106.25% base, 1.6 leading, 65ch measure)"
      },
      "wiki-code": {
        "$value": {
          "fontFamily": "'IBM Plex Mono', 'SFMono-Regular', Consolas, 'Liberation Mono', monospace",
          "fontSize": "0.9375rem",
          "fontWeight": 400,
          "letterSpacing": "0px",
          "lineHeight": 1.6
        },
        "$description": "15/24 \u2014 wiki inline and block code (IBM Plex Mono)"
      },
      "wiki-h1": {
        "$value": {
          "fontFamily": "'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontSize": "2.25rem",
          "fontWeight": 600,
          "letterSpacing": "-0.015em",
          "lineHeight": 1.22
        },
        "$description": "36/44 \u2014 wiki article h1; 2.25rem per editorial research pass 2026-05-06"
      },
      "wiki-h2": {
        "$value": {
          "fontFamily": "'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontSize": "1.75rem",
          "fontWeight": 600,
          "letterSpacing": "-0.01em",
          "lineHeight": 1.28
        },
        "$description": "28/36 \u2014 wiki section heading; 1.75rem per editorial research pass 2026-05-06"
      },
      "wiki-h3": {
        "$value": {
          "fontFamily": "'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontSize": "1.375rem",
          "fontWeight": 600,
          "letterSpacing": "0px",
          "lineHeight": 1.36
        },
        "$description": "22/30 \u2014 wiki subsection heading; 1.375rem per editorial research pass 2026-05-06"
      },
      "wiki-h4": {
        "$value": {
          "fontFamily": "'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
          "fontSize": "1.125rem",
          "fontWeight": 600,
          "letterSpacing": "0px",
          "lineHeight": 1.44
        },
        "$description": "18/26 \u2014 wiki heading level 4; 1.125rem per editorial research pass 2026-05-06"
      }
    },
    "viewport": {
      "$type": "dimension",
      "$description": "Wiki platform responsive breakpoints \u2014 three-tier layout system",
      "compact": {
        "$value": "799px",
        "$description": "\u2264 799px \u2014 single-column mobile layout; sidebar collapses to drawer"
      },
      "medium": {
        "$value": "1151px",
        "$description": "800px \u2013 1151px \u2014 two-column layout; TOC inline with content"
      },
      "wide": {
        "$value": "1152px",
        "$description": "\u2265 1152px \u2014 three-column layout; sidebar + content + TOC"
      }
    },
    "motion": {
      "$type": "cubicBezier",
      "ease-utility": {
        "$value": [
          0.2,
          0,
          0.4,
          1.0
        ],
        "$description": "Productive interaction \u2014 buttons, inputs, tabs"
      },
      "ease-display": {
        "$value": [
          0.4,
          0.14,
          0.3,
          1.0
        ],
        "$description": "Expressive interaction \u2014 toasts, modals, hero"
      },
      "ease-enter": {
        "$value": [
          0.0,
          0.0,
          0.4,
          1.0
        ]
      },
      "ease-exit": {
        "$value": [
          0.2,
          0.0,
          1.0,
          1.0
        ]
      }
    },
    "duration": {
      "$type": "duration",
      "speed-1": {
        "$value": "70ms",
        "$description": "Imperceptible \u2014 color hover"
      },
      "speed-2": {
        "$value": "120ms",
        "$description": "Quick \u2014 button press, focus ring fade"
      },
      "speed-3": {
        "$value": "200ms",
        "$description": "Snappy \u2014 tab switch"
      },
      "speed-4": {
        "$value": "320ms",
        "$description": "Smooth \u2014 toast appearance, drawer slide"
      },
      "speed-5": {
        "$value": "480ms",
        "$description": "Considered \u2014 modal entrance"
      },
      "speed-6": {
        "$value": "720ms",
        "$description": "Deliberate \u2014 hero animation"
      }
    },
    "border": {
      "$type": "dimension",
      "corner-1": {
        "$value": "0.125rem",
        "$description": "2px \u2014 chip, badge"
      },
      "corner-2": {
        "$value": "0.25rem",
        "$description": "4px \u2014 button, input default"
      },
      "corner-3": {
        "$value": "0.5rem",
        "$description": "8px \u2014 surface, dialog"
      },
      "stroke-1": {
        "$value": "1px",
        "$description": "Default border"
      },
      "stroke-2": {
        "$value": "2px",
        "$description": "Focus ring, error state"
      }
    },
    "focus": {
      "$type": "border",
      "ring": {
        "$value": {
          "color": "{color.primary-60}",
          "width": "{border.stroke-2}",
          "style": "solid",
          "offset": "2px"
        },
        "$description": "WCAG 2.2 AAA-conformant focus ring; 3:1 contrast against any tenant background"
      }
    }
  },
  "theme": {
    "$schema": "https://schemas.designtokens.org/2025-10-01/draft.json",
    "$description": "PointSav brand semantic-layer override \u2014 maps semantic roles (interactive-primary, surface-elevated, ink-primary) to primitive references. SMB customers fork this file as themes/<their-brand>.json and re-point the references at their own primitive values.",
    "tenant": "pointsav",
    "semantic": {
      "$type": "color",
      "ink-primary": {
        "$value": "{color.neutral-100}"
      },
      "ink-secondary": {
        "$value": "{color.neutral-70}"
      },
      "ink-on-interactive": {
        "$value": "{color.white}"
      },
      "ink-on-positive": {
        "$value": "{color.white}"
      },
      "ink-on-caution": {
        "$value": "{color.neutral-100}"
      },
      "ink-on-critical": {
        "$value": "{color.white}"
      },
      "ink-disabled": {
        "$value": "{color.neutral-50}"
      },
      "ink-placeholder": {
        "$value": "{color.neutral-60}",
        "$description": "neutral-60 \u2014 5.27:1 vs surface-base (AA). Was neutral-50 (3.33:1, real AA failure \u2014 corrected 2026-07-17); shares no value with ink-disabled since disabled text is WCAG-exempt (1.4.3) but placeholder text is not."
      },
      "surface-base": {
        "$value": "{color.white}"
      },
      "surface-subtle": {
        "$value": "{color.neutral-10}"
      },
      "surface-elevated": {
        "$value": "{color.white}"
      },
      "surface-inverse": {
        "$value": "{color.neutral-100}"
      },
      "border-subtle": {
        "$value": "{color.neutral-20}"
      },
      "border-strong": {
        "$value": "{color.neutral-50}",
        "$description": "neutral-50 \u2014 3.33:1 vs surface-base (AA non-text, WCAG 1.4.11). Was neutral-40 (2.18:1, real failure \u2014 corrected 2026-07-17; used as the resting-state border on select/input-text/checkbox and the off-state track fill on switch, all real required control boundaries, not decorative). Matches the dark theme's own border-strong, which already used this same neutral-50 step."
      },
      "border-interactive": {
        "$value": "{color.primary-60}"
      },
      "interactive-primary": {
        "$value": "{color.primary-60}"
      },
      "interactive-primary-hover": {
        "$value": "{color.primary-70}"
      },
      "interactive-primary-pressed": {
        "$value": "{color.primary-80}"
      },
      "interactive-primary-disabled": {
        "$value": "{color.neutral-20}"
      },
      "interactive-secondary": {
        "$value": "{color.neutral-80}"
      },
      "interactive-secondary-hover": {
        "$value": "{color.neutral-90}"
      },
      "interactive-secondary-pressed": {
        "$value": "{color.neutral-100}"
      },
      "interactive-ghost": {
        "$value": "transparent"
      },
      "interactive-ghost-hover": {
        "$value": "{color.neutral-10}"
      },
      "interactive-ghost-pressed": {
        "$value": "{color.neutral-20}"
      },
      "interactive-critical": {
        "$value": "{color.critical-60}"
      },
      "interactive-critical-hover": {
        "$value": "{color.critical-70}"
      },
      "interactive-critical-pressed": {
        "$value": "{color.critical-70}"
      },
      "support-positive": {
        "$value": "{color.positive-70}"
      },
      "support-positive-bg": {
        "$value": "{color.positive-10}"
      },
      "support-caution": {
        "$value": "{color.caution-70}"
      },
      "support-caution-bg": {
        "$value": "{color.caution-10}"
      },
      "support-critical": {
        "$value": "{color.critical-60}"
      },
      "support-critical-bg": {
        "$value": "{color.critical-10}"
      },
      "support-info": {
        "$value": "{color.primary-60}"
      },
      "support-info-bg": {
        "$value": "{color.primary-10}"
      },
      "focus-ring": {
        "$value": "{color.primary-60}"
      },
      "orgchart": {
        "$type": "color",
        "$description": "orgchart.* semantic namespace -- entity-role colors for corporate hierarchy visualization. Parallel to the wiki.* namespace.",
        "corporate-holding": {
          "$description": "Primary group entity; top-level holding company",
          "border": {
            "$value": "{color.orgchart.green}"
          },
          "surface": {
            "$value": "{color.orgchart.green-bg}"
          }
        },
        "investment-vehicle": {
          "$description": "Investment unit; investor box; capital receiver",
          "border": {
            "$value": "{color.orgchart.blue}"
          },
          "surface": {
            "$value": "{color.orgchart.blue-bg}"
          }
        },
        "broker-dealer": {
          "$description": "Registered intermediary -- broker-dealer, asset manager, or regulatory intermediary",
          "border": {
            "$value": "{color.orgchart.purple}"
          },
          "surface": {
            "$value": "{color.orgchart.purple-bg}"
          }
        },
        "equity-partner": {
          "$description": "Named equity partner, individual principal, or operating entity",
          "border": {
            "$value": "{color.orgchart.orange}"
          },
          "surface": {
            "$value": "{color.orgchart.orange-bg}"
          }
        },
        "admin-entity": {
          "$description": "Administrative entity -- titleco, support company, service vehicle",
          "border": {
            "$value": "{color.orgchart.grey}"
          },
          "surface": {
            "$value": "{color.orgchart.grey-bg}"
          }
        },
        "fund-vehicle": {
          "$description": "Limited partnership, fund LP, fideicomiso -- always rendered as dashed pill",
          "border": {
            "$value": "{color.orgchart.yellow}"
          },
          "surface": {
            "$value": "{color.orgchart.yellow-bg}"
          }
        },
        "legacy-corporate": {
          "$description": "Legacy entity A -- predecessor corporate structure prior to reorganization",
          "border": {
            "$value": "{color.orgchart.magenta}"
          },
          "surface": {
            "$value": "{color.orgchart.magenta-bg}"
          }
        },
        "legacy-asset": {
          "$description": "Legacy entity B -- predecessor asset-holding structure prior to reorganization",
          "border": {
            "$value": "{color.orgchart.teal}"
          },
          "surface": {
            "$value": "{color.orgchart.teal-bg}"
          }
        }
      }
    },
    "dark": {
      "$type": "color",
      "$description": "Dark mode semantic overrides \u2014 applied via [data-theme='dark'] on the root element. Maps the same semantic roles as theme.semantic to dark-optimised primitive values. Wiki surfaces verified: contrast targets WCAG 2.2 AA minimum for all text pairs.",
      "surface-base": {
        "$value": "#1f2125",
        "$description": "neutral-90 \u2014 wiki page background in dark mode"
      },
      "surface-elevated": {
        "$value": "#33373e",
        "$description": "neutral-80 \u2014 card, panel, sidebar surface in dark mode"
      },
      "surface-subtle": {
        "$value": "#2a2d33",
        "$description": "between neutral-80 and neutral-90 \u2014 subtle dividers, table rows"
      },
      "surface-inverse": {
        "$value": "#f5f6f8",
        "$description": "neutral-10 \u2014 inverted surface (light chip on dark page)"
      },
      "surface-code": {
        "$value": "#151618",
        "$description": "near-black \u2014 code block background; darker than page to create depth"
      },
      "ink-primary": {
        "$value": "#f5f6f8",
        "$description": "neutral-10 \u2014 primary text on dark surface; 14.5:1 vs surface-base"
      },
      "ink-secondary": {
        "$value": "#aab0bb",
        "$description": "neutral-40 \u2014 secondary text; 6.2:1 vs surface-base (AA)"
      },
      "ink-disabled": {
        "$value": "#4a4f59",
        "$description": "neutral-70 \u2014 disabled text on dark surface"
      },
      "ink-on-inverse": {
        "$value": "#0e0f12",
        "$description": "neutral-100 \u2014 text on light chip within dark page"
      },
      "border-subtle": {
        "$value": "#4a4f59",
        "$description": "neutral-70 \u2014 hairline borders on dark surface"
      },
      "border-strong": {
        "$value": "#878d99",
        "$description": "neutral-50 \u2014 strong borders, table rules"
      },
      "border-interactive": {
        "$value": "#7392ff",
        "$description": "primary-40 \u2014 input border, interactive element outline on dark bg"
      },
      "focus-ring": {
        "$value": "#7392ff",
        "$description": "primary-40 \u2014 focus ring; 5.59:1 vs surface-base (AA non-text; corrected 2026-07-15, was mislabeled 3.1:1)"
      },
      "interactive-primary": {
        "$value": "#234ed8",
        "$description": "primary-60 \u2014 button fill; 6.66:1 with white text (fixed 2026-07-15: was primary-50 at a hair's-width 4.53:1 pass with a wrong 4.8:1 description; moved to match light theme's own resting value for a real safety margin)"
      },
      "interactive-primary-hover": {
        "$value": "#173ab1",
        "$description": "primary-70 \u2014 hover state on dark; 9.22:1 with white text (fixed 2026-07-15: was primary-40, a real AA failure at 2.88:1 \u2014 dark mode was lightening on hover instead of darkening, the opposite of light theme's own pattern)"
      },
      "interactive-primary-pressed": {
        "$value": "#0c2785",
        "$description": "primary-80 \u2014 pressed state on dark; 12.77:1 with white text (added 2026-07-15: this token had no entry anywhere in this governed source at all \u2014 only a hand-added, non-compliant value in the generated CSS at 1.87:1, a severe real AA failure)"
      },
      "interactive-ghost-hover": {
        "$value": "rgba(255,255,255,0.08)",
        "$description": "semi-transparent white \u2014 ghost button hover on dark"
      },
      "interactive-ghost-pressed": {
        "$value": "rgba(255,255,255,0.12)",
        "$description": "semi-transparent white \u2014 ghost button press on dark"
      },
      "support-critical": {
        "$value": "#f0a3a3",
        "$description": "critical-30 \u2014 error text on dark background (AA)"
      },
      "support-critical-bg": {
        "$value": "#3d1515",
        "$description": "dark critical tint \u2014 error banner fill on dark page"
      },
      "support-caution": {
        "$value": "#f5cd7a",
        "$description": "caution-30 \u2014 warning text on dark background"
      },
      "support-caution-bg": {
        "$value": "#3d2e0a",
        "$description": "dark caution tint \u2014 warning banner fill on dark page"
      },
      "support-positive": {
        "$value": "#9fdaae",
        "$description": "positive-30 \u2014 success text on dark background"
      },
      "wiki-link": {
        "$value": "#a6bcff",
        "$description": "primary-30 \u2014 wiki hyperlink on dark page; 8.64:1 vs surface-base, 6.41:1 vs surface-elevated (AA on both; corrected 2026-07-17 \u2014 the prior primary-40 value only verified against surface-base and failed at 4.15:1 against surface-elevated, the card/panel/sidebar surface this token is also used against in dark mode)"
      },
      "wiki-redlink": {
        "$value": "#f0a3a3",
        "$description": "critical-30 \u2014 wiki red (missing) link on dark page"
      },
      "wiki-code-keyword": {
        "$value": "#f5cd7a",
        "$description": "caution-30 \u2014 syntax highlight keyword on dark code block"
      },
      "wiki-code-string": {
        "$value": "#9fdaae",
        "$description": "positive-30 \u2014 syntax highlight string literal on dark code block"
      },
      "wiki-code-comment": {
        "$value": "#878d99",
        "$description": "neutral-50 \u2014 syntax highlight comment on dark code block"
      }
    },
    "accessibility": {
      "wcag_target": "2.2 AAA",
      "contrast_floor_text_to_surface": 7,
      "contrast_floor_focus_ring_to_surface": 3,
      "motion_respect": "prefers-reduced-motion honored at all interaction layers",
      "min_touch_target_px": 44,
      "wcag-target": {
        "$type": "string",
        "$value": "2.2 AAA",
        "$description": "WCAG conformance target for this design system"
      },
      "contrast-floor-text": {
        "$type": "number",
        "$value": 7,
        "$description": "Minimum contrast ratio, body text against its surface"
      },
      "contrast-floor-focus-ring": {
        "$type": "number",
        "$value": 3,
        "$description": "Minimum contrast ratio, focus ring against its surface"
      },
      "min-touch-target": {
        "$type": "dimension",
        "$value": "44px",
        "$description": "Minimum interactive touch-target size"
      },
      "motion-respect": {
        "$type": "string",
        "$value": "prefers-reduced-motion honored at all interaction layers",
        "$description": "Motion-reduction conformance statement"
      }
    },
    "github": {
      "repo": "https://github.com/pointsav/pointsav-design-system",
      "edit_path_prefix": "edit/main/dtcg-vault"
    }
  },
  "paper": {
    "primitive": {
      "page": {
        "$type": "dimension",
        "$description": "Shared CSS-print page geometry \u2014 legal-agreement and financial-statement sub-domains (WeasyPrint, @page rules). The interactive PDF-binder sub-domain uses its own point-space (see pdf-nav below) since it is generated directly in PDF point coordinates, not CSS @page.",
        "size-letter-width": {
          "$value": "8.5in",
          "$description": "US Letter width \u2014 shared by every Paper CSS-print document"
        },
        "size-letter-height": {
          "$value": "11in",
          "$description": "US Letter height (portrait); financial-report-layout's landscape orientation swaps width/height in its own @page rule"
        },
        "content-width-portrait": {
          "$value": "468pt",
          "$description": "612pt - 2x72pt(1in) margins; running-header rule width on 1in-margin portrait pages"
        },
        "margin-cover-top": {
          "$value": "0.375in",
          "$description": "Prospectus cover page reduced top margin"
        },
        "margin-narrow": {
          "$value": "0.625in",
          "$description": "Prospectus left/right"
        },
        "margin-bind-right": {
          "$value": "0.7in",
          "$description": "Subscription-agreement right margin (binding-narrow side)"
        },
        "margin-standard": {
          "$value": "0.75in",
          "$description": "Shared top/bottom \u2014 subscription-agreement and prospectus"
        },
        "margin-bind-left": {
          "$value": "0.9in",
          "$description": "Subscription-agreement left margin (binding-wide side)"
        },
        "margin-wide": {
          "$value": "1in",
          "$description": "Agency-suite uniform margin; also the statutory financial-statement margin (all four sides)"
        },
        "margin-bind-inline": {
          "$value": "2cm",
          "$description": "Financial-report-layout (landscape) wider bind/punch edge"
        },
        "margin-bind-block": {
          "$value": "1.5cm",
          "$description": "Financial-report-layout (landscape) top/bottom and non-bind side"
        },
        "header-distance": {
          "$value": "0.5in",
          "$description": "Statutory financial-statement @page header distance"
        },
        "footer-distance": {
          "$value": "0.32in",
          "$description": "Statutory financial-statement @page footer distance"
        }
      },
      "rule": {
        "$type": "dimension",
        "$description": "Horizontal rule / border weight ladder. The 0.5/0.75/1/1.5pt core ladder is identical across all three legal-agreement families and both financial-statement families \u2014 the single strongest shared primitive found across every Paper source. Two families extend it with their own emphasis weight.",
        "hairline": {
          "$value": "0.5pt",
          "$description": "Key-terms table, running-header border, data-table header bottom, financial subtotal top rule (statutory)"
        },
        "light": {
          "$value": "0.75pt",
          "$description": "Fill lines/table enclosure (legal); subtotal top rule (financial-report-layout statement theme)"
        },
        "standard": {
          "$value": "1pt",
          "$description": "Form cells, signature line, dividers, hr; financial grand-total top rule"
        },
        "emphasis": {
          "$value": "1.5pt",
          "$description": "Warning box, cover-rule, summary-page border (legal); source financial total rule before the yearend bundle's double-rule upgrade"
        },
        "accounting-total": {
          "$value": "2pt",
          "$description": "Prospectus data-table total-row double rule"
        },
        "accent": {
          "$value": "3pt",
          "$description": "Agency-suite form-note left accent bar"
        },
        "total-double": {
          "$value": "3pt",
          "$description": "Financial-statement-yearend grand-total bottom rule, rendered border-style:double (upgraded from the source docx's single 1.5pt per the bundle's own deliberate refinement)"
        }
      },
      "font": {
        "$type": "fontFamily",
        "$description": "Font stacks across all Paper sub-domains. No shared font family exists across legal/financial/pdf-nav \u2014 each sub-domain's register drives its own stack; grouped here as primitives so a family choice is never hand-typed twice.",
        "serif-legal": {
          "$value": [
            "Times New Roman",
            "Liberation Serif",
            "Times",
            "serif"
          ],
          "$description": "Subscription-agreement and prospectus body/heading text (byte-identical stack)"
        },
        "serif-tinos": {
          "$value": [
            "Tinos",
            "Times New Roman",
            "Liberation Serif",
            "Times",
            "serif"
          ],
          "$description": "Agency-suite \u2014 Tinos webfont-first"
        },
        "sans-fill": {
          "$value": [
            "Verdana",
            "Tahoma",
            "DejaVu Sans",
            "sans-serif"
          ],
          "$description": "Subscription-agreement tier-2 fill zones (accessible completion register)"
        },
        "statutory-sans": {
          "$value": [
            "Calibri",
            "Carlito",
            "Liberation Sans",
            "Arial",
            "sans-serif"
          ],
          "$description": "Financial-statement-yearend \u2014 Calibri source-theme font"
        },
        "proforma-sans": {
          "$value": [
            "system-ui",
            "sans-serif"
          ],
          "$description": "Financial-report-layout dashboard theme"
        },
        "statement-serif": {
          "$value": [
            "Georgia",
            "Times New Roman",
            "serif"
          ],
          "$description": "PROVISIONAL \u2014 financial-report-layout's classic statement theme; not yet pinned by the not-yet-implemented proforma engine work (wcp.finance.* bundle)"
        },
        "pdf-nav": {
          "$value": [
            "Helvetica",
            "Arial",
            "sans-serif"
          ],
          "$description": "Interactive PDF-binder \u2014 Helvetica core-14 PDF fonts (no embedding required)"
        }
      },
      "color": {
        "$type": "color",
        "$description": "Ink and surface colors across Paper sub-domains. Legal and statutory-financial share pure black-on-white; the financial-report-layout dashboard theme and the pdf-binder each have their own accent palette.",
        "ink": {
          "$value": "#000000",
          "$description": "text-primary \u2014 shared by legal agreements and financial-statement-yearend (pure black, no tints, audited-statement look)"
        },
        "ink-secondary": {
          "$value": "#444444",
          "$description": "Legal hint/progress guidance text"
        },
        "ink-attribution": {
          "$value": "#333333",
          "$description": "Legal signature-attribution / drafting-notes text"
        },
        "placeholder-mark": {
          "$value": "#ffff00",
          "$description": "Legal TBD-highlight mark; pair with mso-highlight:yellow in recipe CSS for Word compatibility"
        },
        "surface-tint": {
          "$value": "#f5f5f5",
          "$description": "Legal table-header/form-note tint; same value reused by financial-statement header-bg"
        },
        "regulatory-red-herring": {
          "$value": "#c00000",
          "$description": "BCSC/OSC preliminary-prospectus red-herring notice color \u2014 NOT brand-derived, a statutory filing convention. Kept brand-neutral deliberately: this design system ships to other tenants."
        },
        "financial-primary": {
          "$value": "#111111",
          "$description": "Financial-report-layout (proforma dashboard) primary ink"
        },
        "financial-secondary": {
          "$value": "#555555",
          "$description": "Financial-report-layout secondary text / notes"
        },
        "financial-hairline": {
          "$value": "#cccccc",
          "$description": "Financial-report-layout h2 hairline"
        },
        "financial-gutter": {
          "$value": "#aaaaaa",
          "$description": "Financial-report-layout line-number gutter (dashboard theme only, JS-injected, absent from print)"
        },
        "financial-row-total-bg": {
          "$value": "#eef2f7",
          "$description": "Financial-report-layout dashboard total-row fill"
        },
        "financial-row-subtotal-bg": {
          "$value": "#f5f7fa",
          "$description": "Financial-report-layout dashboard subtotal-row fill"
        },
        "financial-row-banner-bg": {
          "$value": "#e3edf7",
          "$description": "Financial-report-layout dashboard section-banner fill"
        },
        "financial-row-banner-ink": {
          "$value": "#1a2a44",
          "$description": "Financial-report-layout dashboard section-banner navy text \u2014 the only colored text in the family"
        },
        "financial-row-total-rule": {
          "$value": "#888888"
        },
        "financial-row-subtotal-rule": {
          "$value": "#aaaaaa"
        },
        "pdf-nav-navy": {
          "$value": "#002e63",
          "$description": "Interactive PDF-binder \u2014 inactive TOC entry text, HOME button fill"
        },
        "pdf-nav-on-navy": {
          "$value": "#ffffff",
          "$description": "Interactive PDF-binder \u2014 HOME button label"
        },
        "pdf-nav-grey-dark": {
          "$value": "#4d4d4d",
          "$description": "Interactive PDF-binder \u2014 subtitle, footer instruction"
        },
        "pdf-nav-grey-light": {
          "$value": "#f5f5f5",
          "$description": "Interactive PDF-binder \u2014 active-entry highlight fill (same value as legal/financial surface-tint)"
        },
        "pdf-nav-grey-label": {
          "$value": "#737373",
          "$description": "Interactive PDF-binder \u2014 draft/version label"
        }
      },
      "type": {
        "$description": "Per-family typography composites. Ladders are genuinely distinct by document register, not by regulation (NI 41-101 prescribes no type sizes) \u2014 do not force a shared scale across legal families. text-transform/text-align are recipe CSS concerns, not part of the typography composite.",
        "legal-subscription": {
          "$type": "typography",
          "body": {
            "$value": {
              "fontFamily": "{paper.primitive.font.serif-legal}",
              "fontWeight": 400,
              "fontSize": "9.5pt",
              "lineHeight": 1.28,
              "letterSpacing": "0"
            }
          },
          "h1": {
            "$value": {
              "fontFamily": "{paper.primitive.font.serif-legal}",
              "fontWeight": 700,
              "fontSize": "14pt",
              "lineHeight": 1.2,
              "letterSpacing": "0.5pt"
            }
          },
          "fill-label": {
            "$value": {
              "fontFamily": "{paper.primitive.font.sans-fill}",
              "fontWeight": 400,
              "fontSize": "10pt",
              "lineHeight": 1.35,
              "letterSpacing": "0"
            }
          }
        },
        "legal-prospectus": {
          "$type": "typography",
          "body": {
            "$value": {
              "fontFamily": "{paper.primitive.font.serif-legal}",
              "fontWeight": 400,
              "fontSize": "10pt",
              "lineHeight": 1.35,
              "letterSpacing": "0"
            }
          },
          "h1": {
            "$value": {
              "fontFamily": "{paper.primitive.font.serif-legal}",
              "fontWeight": 700,
              "fontSize": "12pt",
              "lineHeight": 1.2,
              "letterSpacing": "0"
            }
          },
          "running-header": {
            "$value": {
              "fontFamily": "{paper.primitive.font.serif-legal}",
              "fontWeight": 400,
              "fontSize": "8.5pt",
              "lineHeight": 1.2,
              "letterSpacing": "0.5pt"
            }
          }
        },
        "legal-agency": {
          "$type": "typography",
          "body": {
            "$value": {
              "fontFamily": "{paper.primitive.font.serif-tinos}",
              "fontWeight": 400,
              "fontSize": "11.5pt",
              "lineHeight": 1.5,
              "letterSpacing": "0"
            }
          },
          "h1": {
            "$value": {
              "fontFamily": "{paper.primitive.font.serif-tinos}",
              "fontWeight": 700,
              "fontSize": "18pt",
              "lineHeight": 1.2,
              "letterSpacing": "0"
            }
          }
        },
        "financial-running-header": {
          "$type": "typography",
          "$description": "GCPM running()/element() per-line header typography \u2014 financial-statement-yearend (finalized). Reference proportions 14/12/10pt (PwC-measured) tuned down to 12/11/9pt for this layout.",
          "entity": {
            "$value": {
              "fontFamily": "{paper.primitive.font.statutory-sans}",
              "fontWeight": 700,
              "fontSize": "12pt",
              "lineHeight": 1.0,
              "letterSpacing": "0"
            }
          },
          "statement": {
            "$value": {
              "fontFamily": "{paper.primitive.font.statutory-sans}",
              "fontWeight": 400,
              "fontSize": "11pt",
              "lineHeight": 1.0,
              "letterSpacing": "0"
            }
          },
          "currency": {
            "$value": {
              "fontFamily": "{paper.primitive.font.statutory-sans}",
              "fontWeight": 700,
              "fontSize": "9pt",
              "lineHeight": 1.0,
              "letterSpacing": "0"
            },
            "$description": "Set font-style:italic in recipe CSS \u2014 typography composite has no italic-style field in this repo's convention"
          }
        },
        "financial-title": {
          "$type": "typography",
          "$description": "Financial-statement-yearend cover-page title scale.",
          "entity": {
            "$value": {
              "fontFamily": "{paper.primitive.font.statutory-sans}",
              "fontWeight": 700,
              "fontSize": "16pt",
              "lineHeight": 1.2,
              "letterSpacing": "0"
            }
          },
          "subtitle": {
            "$value": {
              "fontFamily": "{paper.primitive.font.statutory-sans}",
              "fontWeight": 700,
              "fontSize": "14pt",
              "lineHeight": 1.2,
              "letterSpacing": "0"
            }
          },
          "report-heading": {
            "$value": {
              "fontFamily": "{paper.primitive.font.statutory-sans}",
              "fontWeight": 700,
              "fontSize": "10pt",
              "lineHeight": 1.2,
              "letterSpacing": "0"
            }
          }
        },
        "pdf-nav": {
          "$type": "typography",
          "binder-title": {
            "$value": {
              "fontFamily": "{paper.primitive.font.pdf-nav}",
              "fontWeight": 700,
              "fontSize": "16pt",
              "lineHeight": 1.0,
              "letterSpacing": "0"
            }
          },
          "subtitle": {
            "$value": {
              "fontFamily": "{paper.primitive.font.pdf-nav}",
              "fontWeight": 400,
              "fontSize": "10pt",
              "lineHeight": 1.0,
              "letterSpacing": "0"
            }
          },
          "toc-entry": {
            "$value": {
              "fontFamily": "{paper.primitive.font.pdf-nav}",
              "fontWeight": 700,
              "fontSize": "11pt",
              "lineHeight": 1.0,
              "letterSpacing": "0"
            }
          },
          "footer": {
            "$value": {
              "fontFamily": "{paper.primitive.font.pdf-nav}",
              "fontWeight": 400,
              "fontSize": "9pt",
              "lineHeight": 1.0,
              "letterSpacing": "0"
            },
            "$description": "Rendered italic (Helvetica-Oblique) in the PDF generator"
          },
          "draft-label": {
            "$value": {
              "fontFamily": "{paper.primitive.font.pdf-nav}",
              "fontWeight": 400,
              "fontSize": "9pt",
              "lineHeight": 1.0,
              "letterSpacing": "0"
            }
          },
          "home-label": {
            "$value": {
              "fontFamily": "{paper.primitive.font.pdf-nav}",
              "fontWeight": 700,
              "fontSize": "8pt",
              "lineHeight": 1.0,
              "letterSpacing": "0"
            }
          }
        }
      },
      "table": {
        "$type": "dimension",
        "$description": "Table geometry. Two distinct column systems \u2014 statutory 3-value-column vs proforma wide multi-period.",
        "cell-pad-x": {
          "$value": "4pt"
        },
        "cell-pad-y": {
          "$value": "2pt"
        },
        "num-min-width": {
          "$value": "105px",
          "$description": "Statutory value-column min-width (the one px value in an otherwise pt-based domain \u2014 matches the source docx)"
        },
        "indent-1": {
          "$value": "16pt"
        },
        "indent-2": {
          "$value": "28pt"
        }
      },
      "pdf-nav": {
        "$type": "dimension",
        "$description": "Interactive PDF-binder point-space geometry (612x792pt US Letter, origin bottom-left; PDF point coordinates, not a CSS @page box).",
        "page-width": {
          "$value": "612pt"
        },
        "page-height": {
          "$value": "792pt"
        },
        "margin-left": {
          "$value": "72pt"
        },
        "margin-right": {
          "$value": "540pt"
        },
        "toc-entry-first-y": {
          "$value": "565pt"
        },
        "toc-entry-step": {
          "$value": "65pt",
          "$description": "centre-to-centre"
        },
        "toc-entry-height": {
          "$value": "46pt"
        },
        "toc-entry-width": {
          "$value": "530pt"
        },
        "toc-num-x": {
          "$value": "64pt"
        },
        "toc-title-x": {
          "$value": "82pt"
        },
        "home-width": {
          "$value": "64pt"
        },
        "home-height": {
          "$value": "20pt"
        },
        "home-corner-radius": {
          "$value": "4pt"
        },
        "rule-stroke": {
          "$value": "1.5pt"
        }
      }
    },
    "semantic": {
      "legal-agreement": {
        "$description": "Subscription-agreement family (accredited investor + Family & Friends variants \u2014 same recipe, differing schedule variants).",
        "page-margin-top": {
          "$value": "{paper.primitive.page.margin-standard}",
          "$type": "dimension"
        },
        "page-margin-right": {
          "$value": "{paper.primitive.page.margin-bind-right}",
          "$type": "dimension"
        },
        "page-margin-bottom": {
          "$value": "{paper.primitive.page.margin-standard}",
          "$type": "dimension"
        },
        "page-margin-left": {
          "$value": "{paper.primitive.page.margin-bind-left}",
          "$type": "dimension"
        },
        "rule-form-cell": {
          "$value": "{paper.primitive.rule.standard}",
          "$type": "dimension"
        },
        "rule-fill-line": {
          "$value": "{paper.primitive.rule.light}",
          "$type": "dimension"
        },
        "rule-warning-box": {
          "$value": "{paper.primitive.rule.emphasis}",
          "$type": "dimension"
        },
        "body-type": {
          "$value": "{paper.primitive.type.legal-subscription.body}",
          "$type": "typography"
        },
        "heading-type": {
          "$value": "{paper.primitive.type.legal-subscription.h1}",
          "$type": "typography"
        },
        "fill-label-type": {
          "$value": "{paper.primitive.type.legal-subscription.fill-label}",
          "$type": "typography"
        },
        "ink": {
          "$value": "{paper.primitive.color.ink}",
          "$type": "color"
        },
        "placeholder-mark": {
          "$value": "{paper.primitive.color.placeholder-mark}",
          "$type": "color"
        }
      },
      "prospectus": {
        "$description": "NI 41-101 preliminary prospectus.",
        "page-margin-top": {
          "$value": "{paper.primitive.page.margin-standard}",
          "$type": "dimension"
        },
        "page-margin-inline": {
          "$value": "{paper.primitive.page.margin-narrow}",
          "$type": "dimension"
        },
        "cover-margin-top": {
          "$value": "{paper.primitive.page.margin-cover-top}",
          "$type": "dimension"
        },
        "summary-page-border": {
          "$value": "{paper.primitive.rule.emphasis}",
          "$type": "dimension"
        },
        "total-row-rule": {
          "$value": "{paper.primitive.rule.accounting-total}",
          "$type": "dimension"
        },
        "running-header-border": {
          "$value": "{paper.primitive.rule.hairline}",
          "$type": "dimension"
        },
        "red-herring-ink": {
          "$value": "{paper.primitive.color.regulatory-red-herring}",
          "$type": "color"
        },
        "body-type": {
          "$value": "{paper.primitive.type.legal-prospectus.body}",
          "$type": "typography"
        },
        "heading-type": {
          "$value": "{paper.primitive.type.legal-prospectus.h1}",
          "$type": "typography"
        },
        "running-header-type": {
          "$value": "{paper.primitive.type.legal-prospectus.running-header}",
          "$type": "typography"
        }
      },
      "agency-suite": {
        "$description": "MOU / Engagement Letter / Schedules A-E.",
        "page-margin": {
          "$value": "{paper.primitive.page.margin-wide}",
          "$type": "dimension"
        },
        "form-note-accent": {
          "$value": "{paper.primitive.rule.accent}",
          "$type": "dimension"
        },
        "rule-signature": {
          "$value": "{paper.primitive.rule.standard}",
          "$type": "dimension"
        },
        "body-type": {
          "$value": "{paper.primitive.type.legal-agency.body}",
          "$type": "typography"
        },
        "heading-type": {
          "$value": "{paper.primitive.type.legal-agency.h1}",
          "$type": "typography"
        }
      },
      "financial-statement-yearend": {
        "$description": "Statutory year-end financial statements (Notice to Reader / compilation register). Portrait, symmetric 1in margins, pure black-on-white.",
        "page-margin": {
          "$value": "{paper.primitive.page.margin-wide}",
          "$type": "dimension"
        },
        "header-distance": {
          "$value": "{paper.primitive.page.header-distance}",
          "$type": "dimension"
        },
        "footer-distance": {
          "$value": "{paper.primitive.page.footer-distance}",
          "$type": "dimension"
        },
        "running-header-rule-width": {
          "$value": "{paper.primitive.page.content-width-portrait}",
          "$type": "dimension"
        },
        "header-row-rule": {
          "$value": "{paper.primitive.rule.hairline}",
          "$type": "dimension"
        },
        "subtotal-rule": {
          "$value": "{paper.primitive.rule.hairline}",
          "$type": "dimension"
        },
        "grand-total-rule-top": {
          "$value": "{paper.primitive.rule.standard}",
          "$type": "dimension"
        },
        "grand-total-rule-bottom": {
          "$value": "{paper.primitive.rule.total-double}",
          "$type": "dimension"
        },
        "signature-rule": {
          "$value": "{paper.primitive.rule.hairline}",
          "$type": "dimension"
        },
        "running-header-entity-type": {
          "$value": "{paper.primitive.type.financial-running-header.entity}",
          "$type": "typography"
        },
        "running-header-statement-type": {
          "$value": "{paper.primitive.type.financial-running-header.statement}",
          "$type": "typography"
        },
        "running-header-currency-type": {
          "$value": "{paper.primitive.type.financial-running-header.currency}",
          "$type": "typography"
        },
        "title-entity-type": {
          "$value": "{paper.primitive.type.financial-title.entity}",
          "$type": "typography"
        },
        "title-subtitle-type": {
          "$value": "{paper.primitive.type.financial-title.subtitle}",
          "$type": "typography"
        },
        "title-report-heading-type": {
          "$value": "{paper.primitive.type.financial-title.report-heading}",
          "$type": "typography"
        },
        "ink": {
          "$value": "{paper.primitive.color.ink}",
          "$type": "color"
        },
        "cell-pad-x": {
          "$value": "{paper.primitive.table.cell-pad-x}",
          "$type": "dimension"
        },
        "cell-pad-y": {
          "$value": "{paper.primitive.table.cell-pad-y}",
          "$type": "dimension"
        },
        "num-min-width": {
          "$value": "{paper.primitive.table.num-min-width}",
          "$type": "dimension"
        },
        "indent-1": {
          "$value": "{paper.primitive.table.indent-1}",
          "$type": "dimension"
        },
        "indent-2": {
          "$value": "{paper.primitive.table.indent-2}",
          "$type": "dimension"
        },
        "column-label-width": {
          "$value": "55%",
          "$type": "dimension",
          "$description": "3-column statement layout (label + 2 equal value columns)"
        },
        "column-value-width": {
          "$value": "22.5%",
          "$type": "dimension"
        }
      },
      "financial-report-layout": {
        "$description": "Proforma / projection dashboard register \u2014 landscape, wide multi-period tables. Explicitly a sibling of financial-statement-yearend, not the same register (different page geometry, density, and tone). Dashboard-theme values below; statement-theme values are PROVISIONAL pending the not-yet-implemented proforma engine work (BRIEF-bencal-proforma-engine-recapitalization.md).",
        "page-margin-inline": {
          "$value": "{paper.primitive.page.margin-bind-inline}",
          "$type": "dimension"
        },
        "page-margin-block": {
          "$value": "{paper.primitive.page.margin-bind-block}",
          "$type": "dimension"
        },
        "hairline-rule": {
          "$value": "{paper.primitive.rule.hairline}",
          "$type": "dimension"
        },
        "subtotal-rule-statement-theme": {
          "$value": "{paper.primitive.rule.light}",
          "$type": "dimension"
        },
        "total-rule-statement-theme": {
          "$value": "{paper.primitive.rule.standard}",
          "$type": "dimension"
        },
        "total-rule-bottom-statement-theme": {
          "$value": "{paper.primitive.rule.total-double}",
          "$type": "dimension"
        },
        "ink-primary": {
          "$value": "{paper.primitive.color.financial-primary}",
          "$type": "color"
        },
        "ink-secondary": {
          "$value": "{paper.primitive.color.financial-secondary}",
          "$type": "color"
        },
        "ink-hairline": {
          "$value": "{paper.primitive.color.financial-hairline}",
          "$type": "color"
        },
        "ink-gutter": {
          "$value": "{paper.primitive.color.financial-gutter}",
          "$type": "color",
          "$description": "Dashboard theme only \u2014 absent in print/statement theme"
        },
        "row-total-bg": {
          "$value": "{paper.primitive.color.financial-row-total-bg}",
          "$type": "color"
        },
        "row-subtotal-bg": {
          "$value": "{paper.primitive.color.financial-row-subtotal-bg}",
          "$type": "color"
        },
        "row-banner-bg": {
          "$value": "{paper.primitive.color.financial-row-banner-bg}",
          "$type": "color"
        },
        "row-banner-ink": {
          "$value": "{paper.primitive.color.financial-row-banner-ink}",
          "$type": "color"
        },
        "row-total-rule": {
          "$value": "{paper.primitive.color.financial-row-total-rule}",
          "$type": "color"
        },
        "row-subtotal-rule": {
          "$value": "{paper.primitive.color.financial-row-subtotal-rule}",
          "$type": "color"
        },
        "column-label-width": {
          "$value": "25%",
          "$type": "dimension",
          "$description": "Wide multi-period table; up to 11 data columns"
        }
      },
      "paper-legal": {
        "$description": "Cross-cutting legal-document drafting-CONVENTION taxonomy (project-documents-20260717-consolidated-paper-legal-design-componen) \u2014 ONE shared base + 5 per-category variant deltas. This is a reusable CONVENTION register (heading form, numbering, cross-reference grammar), distinct from the concrete per-document-type components (legal-agency-suite, legal-prospectus, legal-subscription-agreement) that already ship real CSS. Most values below are PROVISIONAL placeholders \u2014 full CSS/pt values are being delivered incrementally by project-documents (Commercial first, from the Master JW9 pilot); do not treat as final until that lands. See paper-legal-conventions below for the qualitative per-variant rules (heading case, 'Section'/'Article' presence, cross-ref capitalization) that have no DTCG numeric/color equivalent.",
        "legal-base": {
          "$description": "Heading-agnostic shared formatting: Tinos type scale, hanging-ordinal clause ladder (.cl1/.cl2/.cl3), party/recital/signature/fee/schedule tables, draft stamp, page geometry. Only the font family is confirmed by the source request; exact pt sizes, line-heights, and margins are PROVISIONAL pending JW9 delivery.",
          "body-font-family": {
            "$value": "{paper.primitive.font.serif-tinos}",
            "$type": "fontFamily"
          },
          "rule-signature": {
            "$value": "{paper.primitive.rule.standard}",
            "$type": "dimension"
          },
          "rule-hairline": {
            "$value": "{paper.primitive.rule.hairline}",
            "$type": "dimension"
          }
        },
        "commercial-agreement": {
          "$description": "Flat 'N. Title.' bare-number, bold Title Case, terminal period, left-aligned, NOT all caps, NO 'ARTICLE'. Reference implementation: Master JW8/JW9 pilot (project-documents, not yet delivered as CSS here \u2014 Commercial variant CSS is the FIRST delivery expected)."
        },
        "constitutional-agreement": {
          "$description": "Centered 'ARTICLE N' ALL-CAPS title line; 'N.N Title' Title Case sub-level; 'Article' term always present. Reference: the 3 Bencal Shareholder Agreements (project-documents' own templates/legal-agreement.css, said to be correct-as-is). IMPORTANT \u2014 do not confuse with this vault's own pre-existing paper.semantic.legal-agreement.* tokens a few keys up: those back the unrelated legal-subscription-agreement component (accredited-investor fill-in booklets), not this constitutional/Shareholder-Agreement register. Same name, two different document families \u2014 a real naming collision surfaced 2026-07-17, flagged for project-documents to reconcile (e.g. rename their local file to constitutional-agreement.css), not silently merged or aliased."
        },
        "schedule-exhibit": {
          "$description": "'SCHEDULE A' caps label, centered, page-break cover; internal headings inherit the parent variant's own scheme. Overlaps conceptually with the already-shipped legal-agency-suite component's own schedule-cover variant (apage...epage named counters, 7-variant MOU/Engagement-Letter family) \u2014 flagged for reconciliation with project-documents rather than built as a silent duplicate register."
        },
        "letter": {
          "$description": "Numbered paragraph, bold Title-Case run-in if headed, never all caps, usually no 'Section'/'Article' word. Overlaps conceptually with the already-shipped legal-agency-suite component's proposal-letter/mou-engagement-letter variants \u2014 flagged for reconciliation with project-documents rather than built as a silent duplicate register."
        },
        "preliminary-instrument": {
          "$description": "MOU numbered/lettered A./B.; LOI letter-form; term sheet table/bullets. No prior component coverage found in this vault \u2014 genuinely new ground, safe to build without a reconciliation question."
        }
      },
      "pdf-binder": {
        "$description": "Interactive PDF-binder navigation system (slip-sheet TOC, HOME button). Point-space geometry from paper.primitive.pdf-nav.*, not a CSS @page box.",
        "toc-entry-inactive": {
          "$value": "{paper.primitive.color.pdf-nav-navy}",
          "$type": "color"
        },
        "toc-entry-active": {
          "$value": "{paper.primitive.color.ink}",
          "$type": "color"
        },
        "toc-entry-highlight": {
          "$value": "{paper.primitive.color.pdf-nav-grey-light}",
          "$type": "color"
        },
        "home-button-fill": {
          "$value": "{paper.primitive.color.pdf-nav-navy}",
          "$type": "color"
        },
        "home-button-label": {
          "$value": "{paper.primitive.color.pdf-nav-on-navy}",
          "$type": "color"
        },
        "header-ink": {
          "$value": "{paper.primitive.color.ink}",
          "$type": "color"
        },
        "supporting-ink": {
          "$value": "{paper.primitive.color.pdf-nav-grey-dark}",
          "$type": "color"
        },
        "version-label-ink": {
          "$value": "{paper.primitive.color.pdf-nav-grey-label}",
          "$type": "color"
        },
        "binder-title-type": {
          "$value": "{paper.primitive.type.pdf-nav.binder-title}",
          "$type": "typography"
        },
        "home-label-type": {
          "$value": "{paper.primitive.type.pdf-nav.home-label}",
          "$type": "typography"
        }
      }
    },
    "number-format": {
      "$description": "Number-formatting conventions \u2014 string-valued, no DTCG numeric $type applies (these describe glyphs/rules, not measurements). Shared negative/tabular convention; nil glyph and page-number placement are deliberate per-family choices, not drift, and must not be collapsed to one value.",
      "legal-agreement": {
        "negative": "n/a \u2014 legal agreements do not carry tabular financial data",
        "page-number": "\"- \" counter(page) \" -\", bottom-center, per-schedule named counters (apage, bpage, ... per letter)"
      },
      "prospectus": {
        "negative": "n/a",
        "page-number": "\"- \" counter(page) \" -\", bottom-center, single continuous counter (no per-schedule split)"
      },
      "agency-suite": {
        "negative": "n/a",
        "page-number": "\"- \" counter(page) \" -\", bottom-center, per-schedule named counters A-E"
      },
      "financial-statement-yearend": {
        "negative": "parenthetical, e.g. (1,234)",
        "nil-glyph": "en-dash \u2013",
        "grouping": "comma thousands",
        "currency-mark": "single $ on the first data row only, no repeated $ per cell",
        "page-number": "\"- \" counter(page) \" -\", bottom-center, Notes section only \u2014 adopted FROM the legal-agreement family's own convention"
      },
      "financial-report-layout": {
        "negative": "parenthetical, e.g. (1,234)",
        "nil-glyph": "em-dash \u2014",
        "abbreviation": "$M abbreviation (dashboard theme); thousands (statement theme)",
        "page-number": "bottom-right, standard running counter \u2014 deliberately distinct from the yearend bundle's bottom-center Notes-only convention"
      }
    },
    "paper-legal-conventions": {
      "$description": "Per-category heading/numbering/cross-reference lock table for the paper-legal component family (source: project-documents-20260717-consolidated-paper-legal-design-componen \u00a72). String-valued, no DTCG $type applies \u2014 these are drafting-convention rules, not measurements. Each cell marked HARD (never varies), DOMINANT (default; strong majority of filed-exhibit evidence), or HOUSE (accepted alternative, operator's call).",
      "commercial-agreement": {
        "heading-form": "Flat 'N. Title.' \u2014 bare number, bold Title Case, terminal period (DOMINANT). NOT all caps. Left-aligned (h2 delta; fixes the orphaned-clause-list defect a centered heading causes).",
        "article-word": "No \u2014 bare number (DOMINANT, Weagree: do not place 'Section' before the number). 'Section N.' = HOUSE alternative.",
        "cross-ref-capitalization": "Capital for internal refs ('Section 12', 'Section 12(h)'); lowercase for external refs ('section 13.7 of NI 31-103') (DOMINANT)."
      },
      "constitutional-agreement": {
        "heading-form": "Article line 'ARTICLE N' + ALL-CAPS title, centered (DOMINANT); sub-level 'N.N Title' Title Case (DOMINANT). The two levels are always case-distinct (HARD).",
        "article-word": "'Article' = yes (DOMINANT). 'Section' at the N.N sub-level = HOUSE (Canadian practice: bare '1.1'; US practice: 'Section 1.01'). Include a convenience-construction clause (DOMINANT)."
      },
      "schedule-exhibit": {
        "heading-form": "'SCHEDULE A' caps label, centered; internal headings inherit the parent document's own scheme.",
        "article-word": "The label itself IS the heading (yes). Pick one term \u2014 Schedule, Exhibit, or Annex \u2014 and hold it consistent throughout (HARD).",
        "cross-ref-capitalization": "Capital, e.g. 'Schedule A' / 'Section 2.1 of Schedule A'."
      },
      "letter": {
        "heading-form": "Numbered paragraph; bold Title-Case run-in only if headed; never all caps.",
        "article-word": "Usually no \u2014 bare '1.'",
        "cross-ref-capitalization": "Match the cross-reference word to whatever the divisions are actually called (HARD consistency rule): 'Section N' if headed, 'paragraph N' if bare."
      },
      "preliminary-instrument": {
        "heading-form": "MOU: numbered/lettered 'A./B.'; LOI: letter-form; term sheet: table/bullets.",
        "article-word": "Usually no.",
        "cross-ref-capitalization": "Same match rule as letter; capital for internal refs."
      },
      "drafting-rules-family-wide": [
        "No orphan subsection (near-hard): never a lone 'N.1' with no 'N.2' \u2014 a single-block section stays bare under its heading, with no decimal. [Weagree; Canada Justice Legistics; US House Manual on Drafting Style; Adams/MSCD]",
        "Content-driven mixing is standard: subdivide only where 2+ co-ordinate provisions exist; uniform depth across a document is not required. [filed-exhibit: MDRNA/Canaccord 2009; Aptorum/H.C. Wainwright 2020; placement-agent EX-10.10 CIK 1047153]",
        "Cross-reference address grammar has three depths that coexist: 'Section N' (whole) / 'Section N.N' (subsection) / 'Section N(x)' (lettered clause, cite THROUGH the section).",
        "Internal vs external capitalization: capitalize refs to THIS agreement's own parts (Section/Article/Schedule); lowercase refs to statutes or other instruments (e.g. 'section 13.7 of NI 31-103' \u2014 statute title capitalized, pinpoint lowercase). Most commonly inconsistent rule in practice \u2014 enforce it.",
        "External-reference disambiguation: always keep the 'of <instrument>' qualifier on an external reference so a same-numbered internal section is not misread.",
        "Left-aligned heading is the orphaned-list fix mechanism: a centered heading empties the left margin, so a following indented clause list floats with nothing above it; left-aligning the heading is what the commercial-agreement h2 delta is doing, and it is intentional, not a stray override.",
        "Roadmap chapeau is acceptable: an unnumbered lead-in paragraph under a subdivided section, cited as the whole section.",
        "Do not formally define 'Section'/'Article' \u2014 capitalize without a definition; use a convenience-construction clause instead (e.g. 'references to a Section are to a section of this Agreement; headings for convenience only' \u2014 Mitel s.1.2; SEC LPA s.11.05 pattern).",
        "The one HARD rule across the whole family: never two internal cross-reference pointers in different case within the same document."
      ],
      "market-practice-citations": [
        "[FILED-EXHIBIT] StandardAero UA (2026); CST Brands UA (2013) \u2014 flat '1. Title.' Title-Case sections.",
        "[FILED-EXHIBIT] Ares CRE UA; Baxter Intl UA \u2014 'SECTION' label variants.",
        "[FILED-EXHIBIT] Smithfield/Shuanghui merger; Mitel Networks SHA (Ontario); SEC LPA CIK 1403528 \u2014 'ARTICLE' caps + 'N.N'.",
        "[FILED-EXHIBIT] MDRNA/Canaccord; Aptorum/H.C. Wainwright placement agreements \u2014 mixed subdivided/bare sections.",
        "[FILED-EXHIBIT] Libang Underwriting Agreement EX-1.1 (2024); Placement Agent Agreement EX-10.10 (CIK 1047153, 2009) \u2014 flat Section/N.N/(a), not ARTICLE.",
        "[FILED-EXHIBIT] Shareholders Agreement EX-10.19 (CIK 1500866); LP Agreement EX-10.21 (CIK 1403528) \u2014 ARTICLE + N.N.",
        "[DRAFTING-GUIDE] Adams, A Manual of Style for Contract Drafting \u2014 all-caps readability defect; internal/external capitalization cue; enumeration requires 2+ units; article = a grouping choice.",
        "[DRAFTING-GUIDE] Weagree \u2014 do not place 'Section' before the number; capitalize internal refs; articles advisable past ~7 sections or multiple topic groups.",
        "[DRAFTING-GUIDE] Canada Justice Legistics; US House Manual on Drafting Style \u2014 at-least-two-parallel-units rule; statute references stay lowercase."
      ]
    },
    "$description": "Paper pillar \u2014 print/document-formatting tokens. Primitive layer: Paper pillar \u2014 print/document-formatting primitive layer. Covers three document sub-domains consolidated from real, production-grounded drafts: legal agreements (subscription-agreement, prospectus, agency-suite; source: project-documents), financial statements (statutory year-end + proforma/projection report-layout; source: project-proforma/project-totebox), and interactive PDF-binder navigation (source: project-jennifer's tool-pdf-interactive.py, canonical template). Dimension values use pt/in \u2014 this is the vault's first print-native token domain; the DTCG 2025-10 draft's dimension unit set is documented as px/rem only, so pt/in are a deliberate, documented print-domain extension (the print CSS these tokens drive genuinely needs pt/in, not a rem conversion). Semantic layer: Paper pillar \u2014 semantic layer. Each document family/sub-domain selects margins, rules, type, and color from paper/primitive.json. Seven families: legal-agreement (subscription-agreement), prospectus, agency-suite, financial-statement-yearend, financial-report-layout, pdf-binder, paper-legal (cross-cutting drafting-convention taxonomy \u2014 see paper-legal-conventions below for the non-DTCG qualitative rules it also carries)."
  },
  "writing": {
    "primitive": {
      "rhythm": {
        "$type": "number",
        "sentence-avg-words": {
          "$value": 18,
          "$description": "House target sentence length \u2014 15-20 word band"
        },
        "sentence-fact-of-record-max": {
          "$value": 25,
          "$description": "Ceiling for a definition/compliance/legal claim sentence \u2014 a target, not a hard gate"
        },
        "paragraph-line-min": {
          "$value": 3
        },
        "paragraph-line-max": {
          "$value": 7,
          "$description": "Past this a paragraph usually carries two ideas"
        },
        "heading-density-words": {
          "$value": 130,
          "$description": "Roughly one heading per 120-140 body words"
        },
        "lead-words-min": {
          "$value": 100
        },
        "lead-words-max": {
          "$value": 400
        }
      },
      "casing": {
        "$type": "string",
        "title": {
          "$value": "sentence-case-keyword-first",
          "$description": "Capitalize the first word plus proper nouns/acronyms/code identifiers only"
        },
        "heading": {
          "$value": "sentence-case-keyword-first"
        },
        "slug": {
          "$value": "lowercase-kebab"
        },
        "leading-article": {
          "$value": "forbidden",
          "$description": "No title, heading, or slug begins with the/a/an"
        }
      },
      "voice": {
        "$type": "string",
        "default": {
          "$value": "active",
          "$description": "Name the actor and the consequence"
        },
        "forward-looking": {
          "$value": "planned|intended|may|target",
          "$description": "Not-yet-true capabilities wear their status visibly \u2014 the BCSC disclosure posture"
        },
        "credibility": {
          "$value": "mechanism-number-verifiable-claim",
          "$description": "Never borrow a named institution for prestige"
        },
        "concrete-word": {
          "$value": "prefer-concrete-over-abstract",
          "$description": "use>utilize; end>terminate; explain>elucidate; named-number>vague-quantifier"
        }
      },
      "loop": {
        "$type": "string",
        "standard": {
          "$value": "draft-improves-draft",
          "$description": "Each revision pass sets up a clearly better next pass; revise one altitude per pass, top-down"
        }
      }
    },
    "semantic": {
      "register": {
        "$type": "string",
        "$description": "Ordered formality/tone scale. Each level's $extensions.guide points at the mounted project-editorial register guide (the composition seam \u2014 the SCALE is a token here, the prose exemplar stays project-editorial-owned and mounted, never forked). Mount timing: depends on app-privategit-design's DESIGN-BUNDLE renderer for the editorial bundle \u2014 confirm before treating these as live-servable, not just structurally correct.",
        "how-to": {
          "$value": "operational-imperative",
          "$extensions": {
            "com.pointsav.writing": {
              "guide": "guide-how-to",
              "formality": 2
            }
          }
        },
        "reference": {
          "$value": "neutral-factual-clause",
          "$extensions": {
            "com.pointsav.writing": {
              "guide": "guide-reference",
              "formality": 3
            }
          }
        },
        "communications": {
          "$value": "institutional",
          "$extensions": {
            "com.pointsav.writing": {
              "guide": "guide-communications",
              "formality": 3
            }
          }
        },
        "journal": {
          "$value": "academic",
          "$extensions": {
            "com.pointsav.writing": {
              "guide": "guide-journal",
              "formality": 4
            }
          }
        },
        "legal": {
          "$value": "plain-language-binding",
          "$extensions": {
            "com.pointsav.writing": {
              "guide": "guide-legal",
              "verbs": [
                "must",
                "may",
                "must not"
              ],
              "retire": [
                "shall"
              ],
              "formality": 5
            }
          }
        },
        "specialist": {
          "$value": "prescriptive-normative",
          "$extensions": {
            "com.pointsav.writing": {
              "verbs": [
                "shall",
                "should",
                "may"
              ],
              "formality": 5,
              "note": "legacy register-specialist.yaml; RIBA/IFC-derived, no dedicated editorial guide yet"
            }
          }
        }
      },
      "profile": {
        "$type": "string",
        "$description": "Per-audience specialization of a register \u2014 mirrors project-editorial's house profiles (register + audience delta).",
        "documentation": {
          "$value": "reference+how-to",
          "$extensions": {
            "com.pointsav.writing": {
              "audience": "engineer + institutional-observer",
              "delta": "concept-why-how-code-edge structure; one jargon-free accessibility sentence per section"
            }
          }
        },
        "corporate": {
          "$value": "reference",
          "$extensions": {
            "com.pointsav.writing": {
              "audience": "capital-allocator",
              "delta": "consequence-first lead; what-it-replaces section; no code"
            }
          }
        },
        "projects": {
          "$value": "reference",
          "$extensions": {
            "com.pointsav.writing": {
              "audience": "development-market"
            }
          }
        }
      },
      "lexicon": {
        "$description": "Generic banned/required-vocabulary STRUCTURE. Ships EMPTY of tenant values \u2014 a brand override (e.g. woodfine-media-assets) supplies real terms, the same fork-and-repoint pattern themes/<brand>.json uses for color aliases. Shape: banned entries carry a preferred-replacement $value; alternates and a define-before-use exception ride in $extensions.",
        "banned": {
          "$type": "string",
          "$description": "One token per retired/undesired term. $value = preferred replacement. Empty generically \u2014 populated only by a tenant override."
        },
        "required": {
          "$type": "string",
          "$description": "One token per required-vocabulary term. $value = the canonical phrase; $description = its gloss. Empty generically."
        },
        "thematic-anchor": {
          "$type": "string",
          "$description": "Named narrative themes a tenant's voice returns to (e.g. a real tenant's own set of anchor words). Empty generically."
        }
      },
      "disclaimer": {
        "$type": "string",
        "$description": "Parametrized disclaimer-protocol TEMPLATE shapes. $value = template string with {slot} placeholders; a tenant override binds the slots to real entity/jurisdiction values. Craft governed by the legal register (writing.semantic.register.legal).",
        "securities-forward-looking": {
          "$value": "{corporate_entity} operates {technology_subsidiary} as {entity_relationship}. This material contains forward-looking statements under {act_citations}. Material risks include {specific_risks}. {corporate_entity} disclaims any obligation to update except as required by law.",
          "$extensions": {
            "com.pointsav.writing": {
              "params": [
                "corporate_entity",
                "technology_subsidiary",
                "entity_relationship",
                "act_citations",
                "specific_risks"
              ],
              "syntax": "subject-verb-object, active, present tense",
              "bcsc_posture": "planned/intended/may/target language required for any not-yet-true claim"
            }
          }
        },
        "trademark-footer": {
          "$value": "{marks} are trademarks of {owner_entity}, used in {jurisdictions}. This notice asserts continuous use in commerce regardless of \u2122/\u00ae omission elsewhere. All other trademarks are the property of their respective owners.",
          "$extensions": {
            "com.pointsav.writing": {
              "params": [
                "marks",
                "owner_entity",
                "jurisdictions"
              ]
            }
          }
        },
        "privacy-posture": {
          "$value": "This interface operates on a {telemetry_scope} architecture.",
          "$extensions": {
            "com.pointsav.writing": {
              "params": [
                "telemetry_scope"
              ]
            }
          }
        },
        "contact-block": {
          "$value": "{role}, {entity}, {address}, {email}, {phone}",
          "$extensions": {
            "com.pointsav.writing": {
              "params": [
                "role",
                "entity",
                "address",
                "email",
                "phone"
              ]
            }
          }
        }
      },
      "page-title": {
        "$type": "string",
        "$description": "Cross-property <title> formula \u2014 already ratified as foundry-page-title-formula-v1 in the legacy tree, genuinely generic and already cross-brand (PointSav + Woodfine properties). Per-property display names are the tenant override; the formula itself is not.",
        "separator": {
          "$value": " \u2014 ",
          "$description": "em dash, one space each side"
        },
        "content-page": {
          "$value": "{pageTitle} \u2014 {siteDisplayName}"
        },
        "homepage": {
          "$value": "{siteDisplayName}"
        }
      }
    },
    "$description": "Writing pillar \u2014 content/voice tokens. Primitive layer: Writing pillar \u2014 primitive layer. Objective, measurable craft constants sourced from project-editorial's house-core.md (the shared craft foundation beneath all five register guides). Tenant-agnostic \u2014 applies to every register, every profile, every tenant. The register/lexicon/disclaimer rule shapes in writing/semantic.json compose over these; tenant-specific vocabulary and legal-entity values live in a per-brand media-assets override (e.g. woodfine-media-assets), never here. Semantic layer: Writing pillar \u2014 semantic layer. Generic, tenant-neutral RULE SHAPES: register scale, house-profile deltas, lexicon structure, disclaimer/trademark/contact templates, page-title formula. Composes over writing/primitive.json (craft) and mounts (never copies) project-editorial's register guides for prose exemplars. Ships with lexicon groups EMPTY of tenant values \u2014 a per-brand media-assets override (fork-and-repoint, the same pattern themes/<brand>.json uses for color) supplies real terms. DTCG has no array/list primitive; list-shaped rules are modeled as one token per entry, with structural metadata (alternates, exceptions, scope) carried in a documented $extensions.com.pointsav.writing namespace."
  },
  "ibm-carbon-org-chart": {
    "$description": "IBM Carbon primitive colour values consumed by Woodfine org-chart token classes",
    "warm-gray": {
      "$type": "color",
      "20": {
        "$value": "#E5E0DB",
        "$description": "IBM Carbon Warm Gray 20 \u2014 background fill for token-warm-gray nodes"
      },
      "70": {
        "$value": "#565151",
        "$description": "IBM Carbon Warm Gray 70 \u2014 border colour for token-warm-gray nodes"
      }
    }
  },
  "org-chart-extended": {
    "$description": "Semantic org-chart token entries for the IBM Carbon colour extension. Each entry maps a CSS class name to its background and border primitives. Node geometry (210x110px, 10px padding, solid border, z-index 4) is defined in components/nodes.css.",
    "token-warm-gray": {
      "background": {
        "$type": "color",
        "$value": "{ibm-carbon-org-chart.warm-gray.20}",
        "$description": "Warm Gray tinted node background \u2014 use for holding companies and passive holding entities above the main management layer"
      },
      "border": {
        "$type": "color",
        "$value": "{ibm-carbon-org-chart.warm-gray.70}",
        "$description": "Warm Gray tinted node border"
      }
    }
  }
}