:root {
  --font-sans: "Manrope", "Segoe UI", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;

  --ink-950:#06101b;
  --ink-900:#0a1522;
  --ink-850:#0e1a29;
  --ink-800:#132131;
  --slate-700:#455466;
  --slate-600:#59687a;
  --slate-500:#728094;
  --paper-100:#f7f4ee;
  --paper-150:#f1ede5;
  --paper-200:#e8e2d8;
  --white:#fffdfa;
  --red-700:#8e2421;
  --red-600:#a92b25;
  --red-500:#c63b32;
  --red-400:#dc6b61;

  --text-dark:#14202d;
  --text-muted:#697381;
  --text-light:#f7f4ef;
  --text-light-muted:#aab3bf;
  --line-dark:rgba(10,21,34,.13);
  --line-light:rgba(255,255,255,.12);

  --shell: min(1320px, calc(100vw - 72px));
  --shell-narrow: min(1040px, calc(100vw - 72px));
  --header-h:74px;

  /* Phase 11 semantic typography + geometry tokens */
  --type-label:.625rem;
  --type-meta:.6875rem;
  --type-small:.75rem;
  --type-body:1rem;
  --type-lead:1.0625rem;
  --measure-body:68ch;
  --measure-lead:60ch;

  --space-1:.5rem;
  --space-2:.75rem;
  --space-3:1rem;
  --space-4:1.5rem;
  --space-5:2rem;
  --space-6:3rem;
  --space-7:4rem;
  --space-8:5rem;
  --space-9:6.5rem;
  --space-10:8rem;

  --radius-xs:2px;
  --radius-sm:6px;
  --radius-md:12px;
  --radius-lg:20px;

  --shadow-soft:0 22px 70px rgba(4,12,21,.12);
  --shadow-dark:0 28px 90px rgba(0,0,0,.32);
  --ease:cubic-bezier(.22,1,.36,1);
  --ease-ui:cubic-bezier(.2,.8,.2,1);

  /* Transitional aliases consumed only by the scoped Phase 01 content-compatibility layer. */
  --ink:var(--ink-950);
  --ink-2:var(--ink-900);
  --graphite:var(--ink-800);
  --paper:var(--paper-100);
  --paper-2:var(--paper-150);
  --red:var(--red-600);
  --red-deep:var(--red-700);
  --red-hot:var(--red-500);
  --muted:var(--text-light-muted);
  --line:var(--line-light);
}
@media (max-width:900px){:root{--shell:min(100% - 36px,1320px);--shell-narrow:min(100% - 36px,1040px);--header-h:70px}}
@media (max-width:520px){:root{--shell:calc(100% - 28px);--shell-narrow:calc(100% - 28px)}}
