/*
 * PK Design System tokens — GENERATED FILE, DO NOT EDIT.
 * Source of truth: src/tokens/seeds.mjs
 * Regenerate with: npm run tokens
 *
 * Material Design 3 token architecture, seeded from the PK brand.
 * Three documented deviations from stock MD3 (neutral hue, corner scale,
 * typescale binding) are explained in seeds.mjs.
 */

:root {
  /* ---- font families ---- */
  --pk-font-sans: "IBM Plex Sans", -apple-system, system-ui, "Segoe UI", sans-serif;
  --pk-font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --pk-font-serif: "IBM Plex Serif", Georgia, "Times New Roman", serif;

  /* ---- reference palettes (ref) ---- */
  --md-ref-palette-primary-0: #000000;
  --md-ref-palette-primary-4: #001112;
  --md-ref-palette-primary-6: #001718;
  --md-ref-palette-primary-10: #002021;
  --md-ref-palette-primary-12: #002426;
  --md-ref-palette-primary-16: #002d2f;
  --md-ref-palette-primary-17: #003032;
  --md-ref-palette-primary-20: #003739;
  --md-ref-palette-primary-22: #003b3e;
  --md-ref-palette-primary-24: #004043;
  --md-ref-palette-primary-30: #164e51;
  --md-ref-palette-primary-40: #326669;
  --md-ref-palette-primary-50: #4c7f82;
  --md-ref-palette-primary-60: #66999c;
  --md-ref-palette-primary-70: #81b4b7;
  --md-ref-palette-primary-80: #9cd0d3;
  --md-ref-palette-primary-87: #afe3e7;
  --md-ref-palette-primary-90: #b7ecef;
  --md-ref-palette-primary-92: #bdf2f5;
  --md-ref-palette-primary-94: #c2f7fb;
  --md-ref-palette-primary-95: #c5fafd;
  --md-ref-palette-primary-96: #cdfcff;
  --md-ref-palette-primary-98: #e6feff;
  --md-ref-palette-primary-99: #f2ffff;
  --md-ref-palette-primary-100: #ffffff;
  --md-ref-palette-secondary-0: #000000;
  --md-ref-palette-secondary-4: #021112;
  --md-ref-palette-secondary-6: #051617;
  --md-ref-palette-secondary-10: #0e1e1f;
  --md-ref-palette-secondary-12: #122223;
  --md-ref-palette-secondary-16: #1a2b2b;
  --md-ref-palette-secondary-17: #1c2d2e;
  --md-ref-palette-secondary-20: #233334;
  --md-ref-palette-secondary-22: #273838;
  --md-ref-palette-secondary-24: #2c3c3d;
  --md-ref-palette-secondary-30: #394a4b;
  --md-ref-palette-secondary-40: #506162;
  --md-ref-palette-secondary-50: #697a7b;
  --md-ref-palette-secondary-60: #829495;
  --md-ref-palette-secondary-70: #9dafaf;
  --md-ref-palette-secondary-80: #b8cacb;
  --md-ref-palette-secondary-87: #cbdede;
  --md-ref-palette-secondary-90: #d4e6e7;
  --md-ref-palette-secondary-92: #d9ecec;
  --md-ref-palette-secondary-94: #dff1f2;
  --md-ref-palette-secondary-95: #e2f4f5;
  --md-ref-palette-secondary-96: #e5f7f8;
  --md-ref-palette-secondary-98: #eafdfd;
  --md-ref-palette-secondary-99: #f2ffff;
  --md-ref-palette-secondary-100: #ffffff;
  --md-ref-palette-tertiary-0: #000000;
  --md-ref-palette-tertiary-4: #051104;
  --md-ref-palette-tertiary-6: #091608;
  --md-ref-palette-tertiary-10: #111f0f;
  --md-ref-palette-tertiary-12: #152313;
  --md-ref-palette-tertiary-16: #1d2b1b;
  --md-ref-palette-tertiary-17: #1f2e1d;
  --md-ref-palette-tertiary-20: #253423;
  --md-ref-palette-tertiary-22: #2a3927;
  --md-ref-palette-tertiary-24: #2e3d2b;
  --md-ref-palette-tertiary-30: #3b4b38;
  --md-ref-palette-tertiary-40: #53634f;
  --md-ref-palette-tertiary-50: #6b7c66;
  --md-ref-palette-tertiary-60: #85957f;
  --md-ref-palette-tertiary-70: #9fb098;
  --md-ref-palette-tertiary-80: #baccb3;
  --md-ref-palette-tertiary-87: #cddfc6;
  --md-ref-palette-tertiary-90: #d6e8ce;
  --md-ref-palette-tertiary-92: #dbedd4;
  --md-ref-palette-tertiary-94: #e1f3d9;
  --md-ref-palette-tertiary-95: #e4f6dc;
  --md-ref-palette-tertiary-96: #e7f9df;
  --md-ref-palette-tertiary-98: #edffe4;
  --md-ref-palette-tertiary-99: #f6ffef;
  --md-ref-palette-tertiary-100: #ffffff;
  --md-ref-palette-neutral-0: #000000;
  --md-ref-palette-neutral-4: #0c0f0c;
  --md-ref-palette-neutral-6: #111411;
  --md-ref-palette-neutral-10: #191c19;
  --md-ref-palette-neutral-12: #1d201d;
  --md-ref-palette-neutral-16: #262926;
  --md-ref-palette-neutral-17: #282b28;
  --md-ref-palette-neutral-20: #2e312e;
  --md-ref-palette-neutral-22: #333532;
  --md-ref-palette-neutral-24: #373a37;
  --md-ref-palette-neutral-30: #454744;
  --md-ref-palette-neutral-40: #5c5f5b;
  --md-ref-palette-neutral-50: #757874;
  --md-ref-palette-neutral-60: #8f918d;
  --md-ref-palette-neutral-70: #aaaca7;
  --md-ref-palette-neutral-80: #c5c7c2;
  --md-ref-palette-neutral-87: #d9dbd6;
  --md-ref-palette-neutral-90: #e1e3de;
  --md-ref-palette-neutral-92: #e7e9e4;
  --md-ref-palette-neutral-94: #edeee9;
  --md-ref-palette-neutral-95: #f0f1ec;
  --md-ref-palette-neutral-96: #f3f4ef;
  --md-ref-palette-neutral-98: #f8faf5;
  --md-ref-palette-neutral-99: #fbfdf8;
  --md-ref-palette-neutral-100: #ffffff;
  --md-ref-palette-neutralVariant-0: #000000;
  --md-ref-palette-neutralVariant-4: #09100a;
  --md-ref-palette-neutralVariant-6: #0e150f;
  --md-ref-palette-neutralVariant-10: #161d17;
  --md-ref-palette-neutralVariant-12: #1a211b;
  --md-ref-palette-neutralVariant-16: #222a23;
  --md-ref-palette-neutralVariant-17: #242c26;
  --md-ref-palette-neutralVariant-20: #2b322c;
  --md-ref-palette-neutralVariant-22: #2f3730;
  --md-ref-palette-neutralVariant-24: #333b34;
  --md-ref-palette-neutralVariant-30: #414942;
  --md-ref-palette-neutralVariant-40: #586059;
  --md-ref-palette-neutralVariant-50: #717971;
  --md-ref-palette-neutralVariant-60: #8b938a;
  --md-ref-palette-neutralVariant-70: #a5ada4;
  --md-ref-palette-neutralVariant-80: #c0c9bf;
  --md-ref-palette-neutralVariant-87: #d4dcd3;
  --md-ref-palette-neutralVariant-90: #dce5db;
  --md-ref-palette-neutralVariant-92: #e2eae1;
  --md-ref-palette-neutralVariant-94: #e8f0e6;
  --md-ref-palette-neutralVariant-95: #ebf3e9;
  --md-ref-palette-neutralVariant-96: #eef6ec;
  --md-ref-palette-neutralVariant-98: #f3fcf2;
  --md-ref-palette-neutralVariant-99: #f6fff4;
  --md-ref-palette-neutralVariant-100: #ffffff;
  --md-ref-palette-error-0: #000000;
  --md-ref-palette-error-4: #280001;
  --md-ref-palette-error-6: #310001;
  --md-ref-palette-error-10: #410002;
  --md-ref-palette-error-12: #490002;
  --md-ref-palette-error-16: #580003;
  --md-ref-palette-error-17: #5c0004;
  --md-ref-palette-error-20: #690005;
  --md-ref-palette-error-22: #710005;
  --md-ref-palette-error-24: #790006;
  --md-ref-palette-error-30: #93000a;
  --md-ref-palette-error-40: #ba1a1a;
  --md-ref-palette-error-50: #de3730;
  --md-ref-palette-error-60: #ff5449;
  --md-ref-palette-error-70: #ff897d;
  --md-ref-palette-error-80: #ffb4ab;
  --md-ref-palette-error-87: #ffcfc9;
  --md-ref-palette-error-90: #ffdad6;
  --md-ref-palette-error-92: #ffe2de;
  --md-ref-palette-error-94: #ffe9e6;
  --md-ref-palette-error-95: #ffedea;
  --md-ref-palette-error-96: #fff0ee;
  --md-ref-palette-error-98: #fff8f7;
  --md-ref-palette-error-99: #fffbff;
  --md-ref-palette-error-100: #ffffff;

  /* ---- system colour roles (sys) — light ---- */
  --md-sys-color-primary: #1E5457;
  --md-sys-color-on-primary: #ffffff;
  --md-sys-color-primary-container: #dae4e5;
  --md-sys-color-on-primary-container: #141d1e;
  --md-sys-color-secondary: #506162;
  --md-sys-color-on-secondary: #ffffff;
  --md-sys-color-secondary-container: #d4e6e7;
  --md-sys-color-on-secondary-container: #0e1e1f;
  --md-sys-color-tertiary: #53634f;
  --md-sys-color-on-tertiary: #ffffff;
  --md-sys-color-tertiary-container: #d6e8ce;
  --md-sys-color-on-tertiary-container: #111f0f;
  --md-sys-color-error: #ba1a1a;
  --md-sys-color-on-error: #ffffff;
  --md-sys-color-error-container: #ffdad6;
  --md-sys-color-on-error-container: #410002;
  --md-sys-color-surface: #EEEFEC;
  --md-sys-color-on-surface: #1A1B19;
  --md-sys-color-surface-variant: #dce5db;
  --md-sys-color-on-surface-variant: #414942;
  --md-sys-color-surface-dim: #d9dbd6;
  --md-sys-color-surface-bright: #f8faf5;
  --md-sys-color-surface-container-lowest: #ffffff;
  --md-sys-color-surface-container-low: #f3f4ef;
  --md-sys-color-surface-container: #edeee9;
  --md-sys-color-surface-container-high: #e7e9e4;
  --md-sys-color-surface-container-highest: #e1e3de;
  --md-sys-color-outline: #5E625D;
  --md-sys-color-outline-variant: #D6D8D3;
  --md-sys-color-inverse-surface: #1A1B19;
  --md-sys-color-inverse-on-surface: #EEEFEC;
  --md-sys-color-inverse-primary: #9cd0d3;
  --md-sys-color-scrim: #000000;
  --md-sys-color-shadow: #000000;

  /* ---- extended brand accents ---- */


  /* ---- typescale ---- */
  --md-sys-typescale-display-large-font: var(--pk-font-sans);
  --md-sys-typescale-display-large-size: 31px;
  --md-sys-typescale-display-large-line-height: 1.28;
  --md-sys-typescale-display-large-weight: 400;
  --md-sys-typescale-display-large-tracking: -0.01em;
  --md-sys-typescale-display-medium-font: var(--pk-font-sans);
  --md-sys-typescale-display-medium-size: 27px;
  --md-sys-typescale-display-medium-line-height: 1.30;
  --md-sys-typescale-display-medium-weight: 400;
  --md-sys-typescale-display-medium-tracking: -0.01em;
  --md-sys-typescale-display-small-font: var(--pk-font-sans);
  --md-sys-typescale-display-small-size: 24px;
  --md-sys-typescale-display-small-line-height: 1.32;
  --md-sys-typescale-display-small-weight: 400;
  --md-sys-typescale-display-small-tracking: -0.005em;
  --md-sys-typescale-headline-large-font: var(--pk-font-sans);
  --md-sys-typescale-headline-large-size: 22px;
  --md-sys-typescale-headline-large-line-height: 1.34;
  --md-sys-typescale-headline-large-weight: 500;
  --md-sys-typescale-headline-large-tracking: -0.005em;
  --md-sys-typescale-headline-medium-font: var(--pk-font-sans);
  --md-sys-typescale-headline-medium-size: 20px;
  --md-sys-typescale-headline-medium-line-height: 1.38;
  --md-sys-typescale-headline-medium-weight: 500;
  --md-sys-typescale-headline-medium-tracking: 0;
  --md-sys-typescale-headline-small-font: var(--pk-font-sans);
  --md-sys-typescale-headline-small-size: 18px;
  --md-sys-typescale-headline-small-line-height: 1.42;
  --md-sys-typescale-headline-small-weight: 500;
  --md-sys-typescale-headline-small-tracking: 0;
  --md-sys-typescale-title-large-font: var(--pk-font-sans);
  --md-sys-typescale-title-large-size: 17px;
  --md-sys-typescale-title-large-line-height: 1.45;
  --md-sys-typescale-title-large-weight: 500;
  --md-sys-typescale-title-large-tracking: 0;
  --md-sys-typescale-title-medium-font: var(--pk-font-sans);
  --md-sys-typescale-title-medium-size: 15px;
  --md-sys-typescale-title-medium-line-height: 1.48;
  --md-sys-typescale-title-medium-weight: 600;
  --md-sys-typescale-title-medium-tracking: 0.005em;
  --md-sys-typescale-title-small-font: var(--pk-font-sans);
  --md-sys-typescale-title-small-size: 13.5px;
  --md-sys-typescale-title-small-line-height: 1.45;
  --md-sys-typescale-title-small-weight: 600;
  --md-sys-typescale-title-small-tracking: 0.01em;
  --md-sys-typescale-body-large-font: var(--pk-font-sans);
  --md-sys-typescale-body-large-size: 16px;
  --md-sys-typescale-body-large-line-height: 1.62;
  --md-sys-typescale-body-large-weight: 400;
  --md-sys-typescale-body-large-tracking: 0;
  --md-sys-typescale-body-medium-font: var(--pk-font-sans);
  --md-sys-typescale-body-medium-size: 14.5px;
  --md-sys-typescale-body-medium-line-height: 1.58;
  --md-sys-typescale-body-medium-weight: 400;
  --md-sys-typescale-body-medium-tracking: 0.005em;
  --md-sys-typescale-body-small-font: var(--pk-font-sans);
  --md-sys-typescale-body-small-size: 13px;
  --md-sys-typescale-body-small-line-height: 1.55;
  --md-sys-typescale-body-small-weight: 400;
  --md-sys-typescale-body-small-tracking: 0.01em;
  --md-sys-typescale-label-large-font: var(--pk-font-mono);
  --md-sys-typescale-label-large-size: 12.5px;
  --md-sys-typescale-label-large-line-height: 1.40;
  --md-sys-typescale-label-large-weight: 400;
  --md-sys-typescale-label-large-tracking: 0.09em;
  --md-sys-typescale-label-medium-font: var(--pk-font-mono);
  --md-sys-typescale-label-medium-size: 11px;
  --md-sys-typescale-label-medium-line-height: 1.38;
  --md-sys-typescale-label-medium-weight: 400;
  --md-sys-typescale-label-medium-tracking: 0.14em;
  --md-sys-typescale-label-small-font: var(--pk-font-mono);
  --md-sys-typescale-label-small-size: 10px;
  --md-sys-typescale-label-small-line-height: 1.40;
  --md-sys-typescale-label-small-weight: 400;
  --md-sys-typescale-label-small-tracking: 0.18em;
  --md-sys-typescale-thinking-font: var(--pk-font-serif);
  --md-sys-typescale-thinking-size: 16px;
  --md-sys-typescale-thinking-line-height: 1.55;
  --md-sys-typescale-thinking-weight: 400;
  --md-sys-typescale-thinking-tracking: 0;

  /* ---- reading scale ---- */
  --pk-reading-font: sans;
  --pk-reading-size: 17px;
  --pk-reading-line: 1.70;
  --pk-reading-lead-size: 18.5px;
  --pk-reading-lead-line: 1.62;
  --pk-reading-measure: 680px;

  /* ---- spacing steps (13) ---- */
  --pk-space-10: 64px;
  --pk-space-11: 80px;
  --pk-space-12: 96px;
  --pk-space-13: 160px;
  --pk-space-01: 2px;
  --pk-space-02: 4px;
  --pk-space-03: 8px;
  --pk-space-04: 12px;
  --pk-space-05: 16px;
  --pk-space-06: 24px;
  --pk-space-07: 32px;
  --pk-space-08: 40px;
  --pk-space-09: 48px;

  /* ---- layout steps — gaps BETWEEN regions ---- */
  --pk-layout-01: 16px;
  --pk-layout-02: 24px;
  --pk-layout-03: 32px;
  --pk-layout-04: 48px;
  --pk-layout-05: 64px;
  --pk-layout-06: 96px;
  --pk-layout-07: 160px;

  /* ---- diagram geometry ---- */
  --pk-diagram-dot-r: 2.9;
  --pk-diagram-dot-gap: 9.6;
  --pk-diagram-hairline: 1;
  --pk-diagram-baseline: 1;

  /* ---- sequential scale: one population, ordered states ---- */
  --pk-seq-work-fill: #708399;
  --pk-seq-work-mark: #3d5672;
  --pk-seq-friction-fill: #aa9d77;
  --pk-seq-friction-mark: #483d1d;
  --pk-seq-ops-fill: #c9b4ac;
  --pk-seq-ops-mark: #39221a;

  /* ---- categorical: intentionally unpopulated (harvest, do not legislate) ---- */

  /* ---- shape ---- */
  --md-sys-shape-corner-none: 0px;
  --md-sys-shape-corner-extra-small: 0px;
  --md-sys-shape-corner-small: 2px;
  --md-sys-shape-corner-medium: 3px;
  --md-sys-shape-corner-large: 4px;
  --md-sys-shape-corner-extra-large: 6px;
  --md-sys-shape-corner-full: 9999px;

  /* ---- elevation ---- */
  --md-sys-elevation-level0: none;
  --md-sys-elevation-level1: 0 1px 0 rgba(26,27,25,0.05);
  --md-sys-elevation-level2: 0 1px 2px rgba(26,27,25,0.06);
  --md-sys-elevation-level3: 0 2px 5px rgba(26,27,25,0.07);
  --md-sys-elevation-level4: 0 4px 10px rgba(26,27,25,0.08);
  --md-sys-elevation-level5: 0 8px 20px rgba(26,27,25,0.10);

  /* ---- state layers ---- */
  --md-sys-state-hover-state-layer-opacity: 0.08;
  --md-sys-state-focus-state-layer-opacity: 0.10;
  --md-sys-state-pressed-state-layer-opacity: 0.10;
  --md-sys-state-dragged-state-layer-opacity: 0.16;

  /* ---- motion ---- */
  --md-sys-motion-easing-standard: cubic-bezier(0.2, 0, 0, 1);
  --md-sys-motion-easing-emphasized: cubic-bezier(0.2, 0, 0, 1);
  --md-sys-motion-easing-decelerate: cubic-bezier(0, 0, 0, 1);
  --md-sys-motion-easing-accelerate: cubic-bezier(0.3, 0, 1, 1);
  --md-sys-motion-duration-short: 150ms;
  --md-sys-motion-duration-medium: 250ms;
  --md-sys-motion-duration-long: 400ms;

  /* ---- layout ---- */
  --pk-wrap-max: 1120px;
  --pk-wrap-pad: 40px;
  --pk-wrap-pad-sm: 24px;

  /* ---- spacing ---- */
  --pk-space-2xs: 4px;
  --pk-space-xs: 8px;
  --pk-space-sm: 12px;
  --pk-space-md: 16px;
  --pk-space-lg: 24px;
  --pk-space-xl: 32px;
  --pk-space-2xl: 48px;
  --pk-space-3xl: 64px;
  --pk-space-4xl: 96px;
}

/*
 * Brand alias layer.
 *
 * These are the names used across the Prabhu artifacts. They are aliases onto
 * MD3 sys roles, not independent values — so theming happens in one place (the
 * sys roles) and the brand vocabulary keeps working.
 */
:root {
  --pk-paper: var(--md-sys-color-surface);
  --pk-paper-2: var(--md-sys-color-surface-container);
  --pk-ink: var(--md-sys-color-on-surface);
  --pk-graphite: var(--md-sys-color-outline);
  --pk-mist: var(--md-sys-color-outline-variant);
  --pk-accent: var(--md-sys-color-primary);
}

/*
 * Dark scheme.
 *
 * The attribute selectors are deliberately NOT :root-scoped, so that
 * <PrabhuProvider theme="dark"> can re-declare the roles on its own subtree
 * (a div), not just on <html>. [data-theme='light'] re-declares the light
 * values for the same reason: a light island inside a dark ancestor.
 */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme='light']) {
    --md-sys-color-primary: #9cd0d3;
    --md-sys-color-on-primary: #003739;
    --md-sys-color-primary-container: #3f4949;
    --md-sys-color-on-primary-container: #dae4e5;
    --md-sys-color-secondary: #b8cacb;
    --md-sys-color-on-secondary: #233334;
    --md-sys-color-secondary-container: #394a4b;
    --md-sys-color-on-secondary-container: #d4e6e7;
    --md-sys-color-tertiary: #baccb3;
    --md-sys-color-on-tertiary: #253423;
    --md-sys-color-tertiary-container: #3b4b38;
    --md-sys-color-on-tertiary-container: #d6e8ce;
    --md-sys-color-error: #ffb4ab;
    --md-sys-color-on-error: #690005;
    --md-sys-color-error-container: #93000a;
    --md-sys-color-on-error-container: #ffdad6;
    --md-sys-color-surface: #1A1B19;
    --md-sys-color-on-surface: #EEEFEC;
    --md-sys-color-surface-variant: #414942;
    --md-sys-color-on-surface-variant: #c0c9bf;
    --md-sys-color-surface-dim: #111411;
    --md-sys-color-surface-bright: #373a37;
    --md-sys-color-surface-container-lowest: #0c0f0c;
    --md-sys-color-surface-container-low: #191c19;
    --md-sys-color-surface-container: #1d201d;
    --md-sys-color-surface-container-high: #282b28;
    --md-sys-color-surface-container-highest: #333532;
    --md-sys-color-outline: #8b938a;
    --md-sys-color-outline-variant: #414942;
    --md-sys-color-inverse-surface: #EEEFEC;
    --md-sys-color-inverse-on-surface: #1A1B19;
    --md-sys-color-inverse-primary: #326669;
    --md-sys-color-scrim: #000000;
    --md-sys-color-shadow: #000000;
    --pk-seq-work-fill: #4e5a69;
    --pk-seq-work-mark: #6c8cb0;
    --pk-seq-friction-fill: #7d7252;
    --pk-seq-friction-mark: #c2ac69;
    --pk-seq-ops-fill: #a48579;
    --pk-seq-ops-mark: #e8d3cb;
  }
}

[data-theme='dark'] {
  --md-sys-color-primary: #9cd0d3;
  --md-sys-color-on-primary: #003739;
  --md-sys-color-primary-container: #3f4949;
  --md-sys-color-on-primary-container: #dae4e5;
  --md-sys-color-secondary: #b8cacb;
  --md-sys-color-on-secondary: #233334;
  --md-sys-color-secondary-container: #394a4b;
  --md-sys-color-on-secondary-container: #d4e6e7;
  --md-sys-color-tertiary: #baccb3;
  --md-sys-color-on-tertiary: #253423;
  --md-sys-color-tertiary-container: #3b4b38;
  --md-sys-color-on-tertiary-container: #d6e8ce;
  --md-sys-color-error: #ffb4ab;
  --md-sys-color-on-error: #690005;
  --md-sys-color-error-container: #93000a;
  --md-sys-color-on-error-container: #ffdad6;
  --md-sys-color-surface: #1A1B19;
  --md-sys-color-on-surface: #EEEFEC;
  --md-sys-color-surface-variant: #414942;
  --md-sys-color-on-surface-variant: #c0c9bf;
  --md-sys-color-surface-dim: #111411;
  --md-sys-color-surface-bright: #373a37;
  --md-sys-color-surface-container-lowest: #0c0f0c;
  --md-sys-color-surface-container-low: #191c19;
  --md-sys-color-surface-container: #1d201d;
  --md-sys-color-surface-container-high: #282b28;
  --md-sys-color-surface-container-highest: #333532;
  --md-sys-color-outline: #8b938a;
  --md-sys-color-outline-variant: #414942;
  --md-sys-color-inverse-surface: #EEEFEC;
  --md-sys-color-inverse-on-surface: #1A1B19;
  --md-sys-color-inverse-primary: #326669;
  --md-sys-color-scrim: #000000;
  --md-sys-color-shadow: #000000;
  --pk-seq-work-fill: #4e5a69;
  --pk-seq-work-mark: #6c8cb0;
  --pk-seq-friction-fill: #7d7252;
  --pk-seq-friction-mark: #c2ac69;
  --pk-seq-ops-fill: #a48579;
  --pk-seq-ops-mark: #e8d3cb;
}

[data-theme='light'] {
  --md-sys-color-primary: #1E5457;
  --md-sys-color-on-primary: #ffffff;
  --md-sys-color-primary-container: #dae4e5;
  --md-sys-color-on-primary-container: #141d1e;
  --md-sys-color-secondary: #506162;
  --md-sys-color-on-secondary: #ffffff;
  --md-sys-color-secondary-container: #d4e6e7;
  --md-sys-color-on-secondary-container: #0e1e1f;
  --md-sys-color-tertiary: #53634f;
  --md-sys-color-on-tertiary: #ffffff;
  --md-sys-color-tertiary-container: #d6e8ce;
  --md-sys-color-on-tertiary-container: #111f0f;
  --md-sys-color-error: #ba1a1a;
  --md-sys-color-on-error: #ffffff;
  --md-sys-color-error-container: #ffdad6;
  --md-sys-color-on-error-container: #410002;
  --md-sys-color-surface: #EEEFEC;
  --md-sys-color-on-surface: #1A1B19;
  --md-sys-color-surface-variant: #dce5db;
  --md-sys-color-on-surface-variant: #414942;
  --md-sys-color-surface-dim: #d9dbd6;
  --md-sys-color-surface-bright: #f8faf5;
  --md-sys-color-surface-container-lowest: #ffffff;
  --md-sys-color-surface-container-low: #f3f4ef;
  --md-sys-color-surface-container: #edeee9;
  --md-sys-color-surface-container-high: #e7e9e4;
  --md-sys-color-surface-container-highest: #e1e3de;
  --md-sys-color-outline: #5E625D;
  --md-sys-color-outline-variant: #D6D8D3;
  --md-sys-color-inverse-surface: #1A1B19;
  --md-sys-color-inverse-on-surface: #EEEFEC;
  --md-sys-color-inverse-primary: #9cd0d3;
  --md-sys-color-scrim: #000000;
  --md-sys-color-shadow: #000000;
  --pk-seq-work-fill: #708399;
  --pk-seq-work-mark: #3d5672;
  --pk-seq-friction-fill: #aa9d77;
  --pk-seq-friction-mark: #483d1d;
  --pk-seq-ops-fill: #c9b4ac;
  --pk-seq-ops-mark: #39221a;
}

/*
 * DENSITY REGISTERS — an essay, a diagram and a slide at three distances.
 * Same voice, same roles; only size, measure and rhythm move.
 */
[data-density='reading'] {
  --md-sys-typescale-display-large-size: 31px;
  --md-sys-typescale-display-medium-size: 27px;
  --md-sys-typescale-display-small-size: 24px;
  --md-sys-typescale-headline-large-size: 22px;
  --md-sys-typescale-headline-medium-size: 20px;
  --md-sys-typescale-headline-small-size: 18px;
  --md-sys-typescale-title-large-size: 17px;
  --md-sys-typescale-title-medium-size: 15px;
  --md-sys-typescale-title-small-size: 13.5px;
  --md-sys-typescale-body-large-size: 16px;
  --md-sys-typescale-body-medium-size: 14.5px;
  --md-sys-typescale-body-small-size: 13px;
  --md-sys-typescale-label-large-size: 12.5px;
  --md-sys-typescale-label-medium-size: 11px;
  --md-sys-typescale-label-small-size: 10px;
  --md-sys-typescale-thinking-size: 16px;
  --pk-space-10: 64px;
  --pk-space-11: 80px;
  --pk-space-12: 96px;
  --pk-space-13: 160px;
  --pk-space-01: 2px;
  --pk-space-02: 4px;
  --pk-space-03: 8px;
  --pk-space-04: 12px;
  --pk-space-05: 16px;
  --pk-space-06: 24px;
  --pk-space-07: 32px;
  --pk-space-08: 40px;
  --pk-space-09: 48px;
  --pk-space-2xs: 4px;
  --pk-space-xs: 8px;
  --pk-space-sm: 12px;
  --pk-space-md: 16px;
  --pk-space-lg: 24px;
  --pk-space-xl: 32px;
  --pk-space-2xl: 48px;
  --pk-space-3xl: 64px;
  --pk-space-4xl: 96px;
  --pk-reading-measure: 680px;
}

[data-density='argument'] {
  --md-sys-typescale-display-large-size: 31px;
  --md-sys-typescale-display-medium-size: 27px;
  --md-sys-typescale-display-small-size: 24px;
  --md-sys-typescale-headline-large-size: 22px;
  --md-sys-typescale-headline-medium-size: 20px;
  --md-sys-typescale-headline-small-size: 18px;
  --md-sys-typescale-title-large-size: 17px;
  --md-sys-typescale-title-medium-size: 15px;
  --md-sys-typescale-title-small-size: 13.5px;
  --md-sys-typescale-body-large-size: 16px;
  --md-sys-typescale-body-medium-size: 14.5px;
  --md-sys-typescale-body-small-size: 13px;
  --md-sys-typescale-label-large-size: 12.5px;
  --md-sys-typescale-label-medium-size: 11px;
  --md-sys-typescale-label-small-size: 10px;
  --md-sys-typescale-thinking-size: 16px;
  --pk-space-10: 54.4px;
  --pk-space-11: 68px;
  --pk-space-12: 81.6px;
  --pk-space-13: 136px;
  --pk-space-01: 1.7px;
  --pk-space-02: 3.4px;
  --pk-space-03: 6.8px;
  --pk-space-04: 10.2px;
  --pk-space-05: 13.6px;
  --pk-space-06: 20.4px;
  --pk-space-07: 27.2px;
  --pk-space-08: 34px;
  --pk-space-09: 40.8px;
  --pk-space-2xs: 3.4px;
  --pk-space-xs: 6.8px;
  --pk-space-sm: 10.2px;
  --pk-space-md: 13.6px;
  --pk-space-lg: 20.4px;
  --pk-space-xl: 27.2px;
  --pk-space-2xl: 40.8px;
  --pk-space-3xl: 54.4px;
  --pk-space-4xl: 81.6px;
  --pk-reading-measure: 900px;
}

[data-density='display'] {
  --md-sys-typescale-display-large-size: 52.7px;
  --md-sys-typescale-display-medium-size: 45.9px;
  --md-sys-typescale-display-small-size: 40.8px;
  --md-sys-typescale-headline-large-size: 33px;
  --md-sys-typescale-headline-medium-size: 30px;
  --md-sys-typescale-headline-small-size: 27px;
  --md-sys-typescale-title-large-size: 22.1px;
  --md-sys-typescale-title-medium-size: 19.5px;
  --md-sys-typescale-title-small-size: 17.6px;
  --md-sys-typescale-body-large-size: 18.4px;
  --md-sys-typescale-body-medium-size: 16.7px;
  --md-sys-typescale-body-small-size: 15px;
  --md-sys-typescale-label-large-size: 13.1px;
  --md-sys-typescale-label-medium-size: 11.6px;
  --md-sys-typescale-label-small-size: 10.5px;
  --md-sys-typescale-thinking-size: 18.4px;
  --pk-space-10: 80px;
  --pk-space-11: 100px;
  --pk-space-12: 120px;
  --pk-space-13: 200px;
  --pk-space-01: 2.5px;
  --pk-space-02: 5px;
  --pk-space-03: 10px;
  --pk-space-04: 15px;
  --pk-space-05: 20px;
  --pk-space-06: 30px;
  --pk-space-07: 40px;
  --pk-space-08: 50px;
  --pk-space-09: 60px;
  --pk-space-2xs: 5px;
  --pk-space-xs: 10px;
  --pk-space-sm: 15px;
  --pk-space-md: 20px;
  --pk-space-lg: 30px;
  --pk-space-xl: 40px;
  --pk-space-2xl: 60px;
  --pk-space-3xl: 80px;
  --pk-space-4xl: 120px;
  --pk-reading-measure: 100%;
}

/*
 * CONTRAST LEVELS — regenerated schemes for readers who have asked their OS for
 * more contrast. Standard keeps the pinned brand values; these are allowed to
 * depart from them, because legibility outranks brand.
 */
[data-contrast='high'] {
  --md-sys-color-primary: #00292b;
  --md-sys-color-on-primary: #afe3e7;
  --md-sys-color-primary-container: #255a5d;
  --md-sys-color-on-primary-container: #ffffff;
  --md-sys-color-secondary: #162727;
  --md-sys-color-on-secondary: #cbdede;
  --md-sys-color-secondary-container: #445556;
  --md-sys-color-on-secondary-container: #ffffff;
  --md-sys-color-tertiary: #192717;
  --md-sys-color-on-tertiary: #cddfc6;
  --md-sys-color-tertiary-container: #475643;
  --md-sys-color-on-tertiary-container: #ffffff;
  --md-sys-color-error: #510003;
  --md-sys-color-on-error: #ffcfc9;
  --md-sys-color-error-container: #a7060f;
  --md-sys-color-on-error-container: #ffffff;
  --md-sys-color-surface: #f8faf5;
  --md-sys-color-on-surface: #000000;
  --md-sys-color-surface-variant: #dbe5da;
  --md-sys-color-on-surface-variant: #1d261f;
  --md-sys-color-surface-dim: #d1ddd1;
  --md-sys-color-surface-bright: #f8faf5;
  --md-sys-color-surface-container-lowest: #ffffff;
  --md-sys-color-surface-container-low: #f1f5ee;
  --md-sys-color-surface-container: #eaefe8;
  --md-sys-color-surface-container-high: #e3eae1;
  --md-sys-color-surface-container-highest: #dbe5da;
  --md-sys-color-outline: #3c453d;
  --md-sys-color-outline-variant: #4b544c;
  --md-sys-color-inverse-surface: #0c0f0c;
  --md-sys-color-inverse-on-surface: #ffffff;
  --md-sys-color-inverse-primary: #bff5f8;
  --md-sys-color-scrim: #000000;
  --md-sys-color-shadow: #000000;
}

[data-contrast='high'][data-theme='dark'],
[data-theme='dark'] [data-contrast='high'] {
  --md-sys-color-primary: #baeff2;
  --md-sys-color-on-primary: #003234;
  --md-sys-color-primary-container: #79acb0;
  --md-sys-color-on-primary-container: #000000;
  --md-sys-color-secondary: #d7e9ea;
  --md-sys-color-on-secondary: #1e2f30;
  --md-sys-color-secondary-container: #95a7a8;
  --md-sys-color-on-secondary-container: #000000;
  --md-sys-color-tertiary: #edffe4;
  --md-sys-color-on-tertiary: #2d3c2a;
  --md-sys-color-tertiary-container: #def0d6;
  --md-sys-color-on-tertiary-container: #253322;
  --md-sys-color-error: #ffdeda;
  --md-sys-color-on-error: #600004;
  --md-sys-color-error-container: #ff7c6f;
  --md-sys-color-on-error-container: #000000;
  --md-sys-color-surface: #0c0f0c;
  --md-sys-color-on-surface: #ffffff;
  --md-sys-color-surface-variant: #1f2821;
  --md-sys-color-on-surface-variant: #dee8dd;
  --md-sys-color-surface-dim: #0c0f0c;
  --md-sys-color-surface-bright: #242f26;
  --md-sys-color-surface-container-lowest: #000000;
  --md-sys-color-surface-container-low: #101411;
  --md-sys-color-surface-container: #151b16;
  --md-sys-color-surface-container-high: #1a211c;
  --md-sys-color-surface-container-highest: #1f2821;
  --md-sys-color-outline: #b2bbb1;
  --md-sys-color-outline-variant: #9da69c;
  --md-sys-color-inverse-surface: #f8faf5;
  --md-sys-color-inverse-on-surface: #000000;
  --md-sys-color-inverse-primary: #003f42;
  --md-sys-color-scrim: #000000;
  --md-sys-color-shadow: #000000;
}

/*
 * MONOCHROME — a real generated scheme, not a CSS override. Brief §11 asks that
 * conceptual diagrams stay understandable without colour; this makes that a
 * theme you can ship rather than a view you degrade to.
 */
[data-scheme='mono'] {
  --md-sys-color-primary: #000000;
  --md-sys-color-on-primary: #e2e2e2;
  --md-sys-color-primary-container: #3b3b3b;
  --md-sys-color-on-primary-container: #ffffff;
  --md-sys-color-secondary: #5e5e5e;
  --md-sys-color-on-secondary: #ffffff;
  --md-sys-color-secondary-container: #d4d4d4;
  --md-sys-color-on-secondary-container: #1b1b1b;
  --md-sys-color-tertiary: #3b3b3b;
  --md-sys-color-on-tertiary: #e2e2e2;
  --md-sys-color-tertiary-container: #747474;
  --md-sys-color-on-tertiary-container: #ffffff;
  --md-sys-color-error: #ba1a1a;
  --md-sys-color-on-error: #ffffff;
  --md-sys-color-error-container: #ffdad6;
  --md-sys-color-on-error-container: #410002;
  --md-sys-color-surface: #EEEFEC;
  --md-sys-color-on-surface: #1A1B19;
  --md-sys-color-surface-variant: #dce5db;
  --md-sys-color-on-surface-variant: #414942;
  --md-sys-color-surface-dim: #d9dbd6;
  --md-sys-color-surface-bright: #f8faf5;
  --md-sys-color-surface-container-lowest: #ffffff;
  --md-sys-color-surface-container-low: #f3f4ef;
  --md-sys-color-surface-container: #edeee9;
  --md-sys-color-surface-container-high: #e7e9e4;
  --md-sys-color-surface-container-highest: #e1e3de;
  --md-sys-color-outline: #5E625D;
  --md-sys-color-outline-variant: #D6D8D3;
  --md-sys-color-inverse-surface: #1A1B19;
  --md-sys-color-inverse-on-surface: #EEEFEC;
  --md-sys-color-inverse-primary: #c6c6c6;
  --md-sys-color-scrim: #000000;
  --md-sys-color-shadow: #000000;
  --pk-seq-work-mark: #333532;
  --pk-seq-work-fill: #949792;
  --pk-seq-friction-mark: #646663;
  --pk-seq-friction-fill: #aaaca7;
  --pk-seq-ops-mark: #9a9c98;
  --pk-seq-ops-fill: #c0c2bd;
}

[data-scheme='mono'][data-theme='dark'],
[data-theme='dark'] [data-scheme='mono'] {
  --md-sys-color-primary: #ffffff;
  --md-sys-color-on-primary: #1b1b1b;
  --md-sys-color-primary-container: #d4d4d4;
  --md-sys-color-on-primary-container: #000000;
  --md-sys-color-secondary: #c6c6c6;
  --md-sys-color-on-secondary: #1b1b1b;
  --md-sys-color-secondary-container: #474747;
  --md-sys-color-on-secondary-container: #e2e2e2;
  --md-sys-color-tertiary: #e2e2e2;
  --md-sys-color-on-tertiary: #1b1b1b;
  --md-sys-color-tertiary-container: #919191;
  --md-sys-color-on-tertiary-container: #000000;
  --md-sys-color-error: #ffb4ab;
  --md-sys-color-on-error: #690005;
  --md-sys-color-error-container: #93000a;
  --md-sys-color-on-error-container: #ffdad6;
  --md-sys-color-surface: #1A1B19;
  --md-sys-color-on-surface: #EEEFEC;
  --md-sys-color-surface-variant: #414942;
  --md-sys-color-on-surface-variant: #c0c9bf;
  --md-sys-color-surface-dim: #111411;
  --md-sys-color-surface-bright: #373a37;
  --md-sys-color-surface-container-lowest: #0c0f0c;
  --md-sys-color-surface-container-low: #191c19;
  --md-sys-color-surface-container: #1d201d;
  --md-sys-color-surface-container-high: #282b28;
  --md-sys-color-surface-container-highest: #333532;
  --md-sys-color-outline: #8b938a;
  --md-sys-color-outline-variant: #414942;
  --md-sys-color-inverse-surface: #EEEFEC;
  --md-sys-color-inverse-on-surface: #1A1B19;
  --md-sys-color-inverse-primary: #5e5e5e;
  --md-sys-color-scrim: #000000;
  --md-sys-color-shadow: #000000;
  --pk-seq-work-mark: #c5c7c2;
  --pk-seq-work-fill: #666965;
  --pk-seq-friction-mark: #8c8f8b;
  --pk-seq-friction-fill: #505350;
  --pk-seq-ops-mark: #575a57;
  --pk-seq-ops-fill: #3b3e3b;
}

/*
 * Contextual inversion.
 *
 * .pk-invert is always the OPPOSITE scheme to whatever surrounds it. This is
 * what the editorial "dark band" device needs: its meaning is "the unseen",
 * which is carried by contrast with the page, not by being dark in absolute
 * terms. Pinning it to dark would make it vanish on a dark page.
 *
 * Nested components need no inverse-specific variants — they re-resolve their
 * own roles from these declarations.
 */
.pk-invert {
  --md-sys-color-primary: #9cd0d3;
  --md-sys-color-on-primary: #003739;
  --md-sys-color-primary-container: #3f4949;
  --md-sys-color-on-primary-container: #dae4e5;
  --md-sys-color-secondary: #b8cacb;
  --md-sys-color-on-secondary: #233334;
  --md-sys-color-secondary-container: #394a4b;
  --md-sys-color-on-secondary-container: #d4e6e7;
  --md-sys-color-tertiary: #baccb3;
  --md-sys-color-on-tertiary: #253423;
  --md-sys-color-tertiary-container: #3b4b38;
  --md-sys-color-on-tertiary-container: #d6e8ce;
  --md-sys-color-error: #ffb4ab;
  --md-sys-color-on-error: #690005;
  --md-sys-color-error-container: #93000a;
  --md-sys-color-on-error-container: #ffdad6;
  --md-sys-color-surface: #1A1B19;
  --md-sys-color-on-surface: #EEEFEC;
  --md-sys-color-surface-variant: #414942;
  --md-sys-color-on-surface-variant: #c0c9bf;
  --md-sys-color-surface-dim: #111411;
  --md-sys-color-surface-bright: #373a37;
  --md-sys-color-surface-container-lowest: #0c0f0c;
  --md-sys-color-surface-container-low: #191c19;
  --md-sys-color-surface-container: #1d201d;
  --md-sys-color-surface-container-high: #282b28;
  --md-sys-color-surface-container-highest: #333532;
  --md-sys-color-outline: #8b938a;
  --md-sys-color-outline-variant: #414942;
  --md-sys-color-inverse-surface: #EEEFEC;
  --md-sys-color-inverse-on-surface: #1A1B19;
  --md-sys-color-inverse-primary: #326669;
  --md-sys-color-scrim: #000000;
  --md-sys-color-shadow: #000000;
}

[data-theme='dark'] .pk-invert {
  --md-sys-color-primary: #1E5457;
  --md-sys-color-on-primary: #ffffff;
  --md-sys-color-primary-container: #dae4e5;
  --md-sys-color-on-primary-container: #141d1e;
  --md-sys-color-secondary: #506162;
  --md-sys-color-on-secondary: #ffffff;
  --md-sys-color-secondary-container: #d4e6e7;
  --md-sys-color-on-secondary-container: #0e1e1f;
  --md-sys-color-tertiary: #53634f;
  --md-sys-color-on-tertiary: #ffffff;
  --md-sys-color-tertiary-container: #d6e8ce;
  --md-sys-color-on-tertiary-container: #111f0f;
  --md-sys-color-error: #ba1a1a;
  --md-sys-color-on-error: #ffffff;
  --md-sys-color-error-container: #ffdad6;
  --md-sys-color-on-error-container: #410002;
  --md-sys-color-surface: #EEEFEC;
  --md-sys-color-on-surface: #1A1B19;
  --md-sys-color-surface-variant: #dce5db;
  --md-sys-color-on-surface-variant: #414942;
  --md-sys-color-surface-dim: #d9dbd6;
  --md-sys-color-surface-bright: #f8faf5;
  --md-sys-color-surface-container-lowest: #ffffff;
  --md-sys-color-surface-container-low: #f3f4ef;
  --md-sys-color-surface-container: #edeee9;
  --md-sys-color-surface-container-high: #e7e9e4;
  --md-sys-color-surface-container-highest: #e1e3de;
  --md-sys-color-outline: #5E625D;
  --md-sys-color-outline-variant: #D6D8D3;
  --md-sys-color-inverse-surface: #1A1B19;
  --md-sys-color-inverse-on-surface: #EEEFEC;
  --md-sys-color-inverse-primary: #9cd0d3;
  --md-sys-color-scrim: #000000;
  --md-sys-color-shadow: #000000;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme='light']) .pk-invert {
    --md-sys-color-primary: #1E5457;
    --md-sys-color-on-primary: #ffffff;
    --md-sys-color-primary-container: #dae4e5;
    --md-sys-color-on-primary-container: #141d1e;
    --md-sys-color-secondary: #506162;
    --md-sys-color-on-secondary: #ffffff;
    --md-sys-color-secondary-container: #d4e6e7;
    --md-sys-color-on-secondary-container: #0e1e1f;
    --md-sys-color-tertiary: #53634f;
    --md-sys-color-on-tertiary: #ffffff;
    --md-sys-color-tertiary-container: #d6e8ce;
    --md-sys-color-on-tertiary-container: #111f0f;
    --md-sys-color-error: #ba1a1a;
    --md-sys-color-on-error: #ffffff;
    --md-sys-color-error-container: #ffdad6;
    --md-sys-color-on-error-container: #410002;
    --md-sys-color-surface: #EEEFEC;
    --md-sys-color-on-surface: #1A1B19;
    --md-sys-color-surface-variant: #dce5db;
    --md-sys-color-on-surface-variant: #414942;
    --md-sys-color-surface-dim: #d9dbd6;
    --md-sys-color-surface-bright: #f8faf5;
    --md-sys-color-surface-container-lowest: #ffffff;
    --md-sys-color-surface-container-low: #f3f4ef;
    --md-sys-color-surface-container: #edeee9;
    --md-sys-color-surface-container-high: #e7e9e4;
    --md-sys-color-surface-container-highest: #e1e3de;
    --md-sys-color-outline: #5E625D;
    --md-sys-color-outline-variant: #D6D8D3;
    --md-sys-color-inverse-surface: #1A1B19;
    --md-sys-color-inverse-on-surface: #EEEFEC;
    --md-sys-color-inverse-primary: #9cd0d3;
    --md-sys-color-scrim: #000000;
    --md-sys-color-shadow: #000000;
  }

  :root:not([data-theme='light']) [data-theme='light'] .pk-invert {
    --md-sys-color-primary: #9cd0d3;
    --md-sys-color-on-primary: #003739;
    --md-sys-color-primary-container: #3f4949;
    --md-sys-color-on-primary-container: #dae4e5;
    --md-sys-color-secondary: #b8cacb;
    --md-sys-color-on-secondary: #233334;
    --md-sys-color-secondary-container: #394a4b;
    --md-sys-color-on-secondary-container: #d4e6e7;
    --md-sys-color-tertiary: #baccb3;
    --md-sys-color-on-tertiary: #253423;
    --md-sys-color-tertiary-container: #3b4b38;
    --md-sys-color-on-tertiary-container: #d6e8ce;
    --md-sys-color-error: #ffb4ab;
    --md-sys-color-on-error: #690005;
    --md-sys-color-error-container: #93000a;
    --md-sys-color-on-error-container: #ffdad6;
    --md-sys-color-surface: #1A1B19;
    --md-sys-color-on-surface: #EEEFEC;
    --md-sys-color-surface-variant: #414942;
    --md-sys-color-on-surface-variant: #c0c9bf;
    --md-sys-color-surface-dim: #111411;
    --md-sys-color-surface-bright: #373a37;
    --md-sys-color-surface-container-lowest: #0c0f0c;
    --md-sys-color-surface-container-low: #191c19;
    --md-sys-color-surface-container: #1d201d;
    --md-sys-color-surface-container-high: #282b28;
    --md-sys-color-surface-container-highest: #333532;
    --md-sys-color-outline: #8b938a;
    --md-sys-color-outline-variant: #414942;
    --md-sys-color-inverse-surface: #EEEFEC;
    --md-sys-color-inverse-on-surface: #1A1B19;
    --md-sys-color-inverse-primary: #326669;
    --md-sys-color-scrim: #000000;
    --md-sys-color-shadow: #000000;
  }
}
