/* The MUSE theme — the canonical tokens, as CSS.
 *
 * GENERATED FILE — do not edit by hand. Emitted by
 * `muse_canon::tokens::theme_css()` from the live colour registry;
 * tests/theme.rs fails the build if this file and the code disagree,
 * in either direction. Regenerate:
 *
 *   cargo test -p muse-canon --test theme regenerate_theme -- --ignored
 *
 * Naming: a token's canonical id is its snake_case registry name; here it
 * wears `--muse-` with `_` -> `-`. docs/theme.json carries the same ids
 * verbatim, and docs/PALETTE.md is the human reading of the same system.
 *
 * DAY IS THE DEFAULT THEME. `:root` is day; night comes from the reader's
 * system preference, and an explicit [data-muse-theme] always wins.
 */

:root {
  color-scheme: light dark;

  /* The canonical seeds — the company colours, exactly as ratified.
     Each is emitted twice: under its own NAME, and under the semantic
     ANCHOR it fills. Both are derived from the same registry entry, so a
     surface may address a seed by whichever it thinks in and the two can
     never disagree. */
  --muse-seed-mikan: #FF7A00;
  --muse-seed-hono: #FF2D1A;
  --muse-seed-kohaku: #FFD21A;
  --muse-seed-aozora: #009BFF;
  --muse-seed-mizu: #00F0FF;
  --muse-seed-joy: #FF7A00;
  --muse-seed-error: #FF2D1A;
  --muse-seed-warning: #FFD21A;
  --muse-seed-primary: #009BFF;
  --muse-seed-success: #00F0FF;

  /* The geometry scale (css px) — shared by every surface. */
  --muse-space-quantum: 4px;
  --muse-radius-sheet: 16px;
  --muse-radius-card: 12px;
  --muse-radius-control: 8px;
  --muse-radius-mark: 2px;

  /* The type ladder, SAMPLED from metrics::type_scale at reference widths. */
  --muse-type-360-support: 12.5px;
  --muse-type-360-secondary: 14px;
  --muse-type-360-title: 16px;
  --muse-type-360-platform: 20px;
  --muse-type-360-empty-title: 24px;
  --muse-type-960-support: 12.5px;
  --muse-type-960-secondary: 14px;
  --muse-type-960-title: 16px;
  --muse-type-960-platform: 22px;
  --muse-type-960-empty-title: 26px;
  --muse-type-1920-support: 12.5px;
  --muse-type-1920-secondary: 14px;
  --muse-type-1920-title: 16px;
  --muse-type-1920-platform: 28px;
  --muse-type-1920-empty-title: 32px;

  /* The semantic roles — DAY. */
  --muse-canvas: #F9F5E9;
  --muse-canvas-elevated: #E3DFD4;
  --muse-card: #D9D6CA;
  --muse-card-hover: #CDC9BE;
  --muse-card-selected: #BBB7AC;
  --muse-text-primary: #3E3D38;
  --muse-text-secondary: #595853;
  --muse-text-disabled: #82807B;
  --muse-accent: #1A72B8;
  --muse-accent-soft: #92BCE6;
  --muse-joy: #B1550E;
  --muse-success: #217A82;
  --muse-warning: #836D22;
  --muse-error: #D52919;
  --muse-focus: #1E666C;
  --muse-scrim: #1C1B14;
  --muse-sunlight: #FFFDF9;
  --muse-artwork-fallback: #C7C4B9;
  --muse-rule: #CBC7BC;

  /* THE INK MATRIX — every readable rank against every surface it can
     land on, already resolved (LAW-78804). Contrast decays as a surface
     deepens, so a rank that reads on the canvas can fail on the selected
     card; read the pair, never the rank alone. DAY here, as above. */
  --muse-ink-primary-on-canvas: #3E3D38;
  --muse-ink-primary-on-canvas-elevated: #3E3D38;
  --muse-ink-primary-on-card: #3E3D38;
  --muse-ink-primary-on-card-hover: #3E3D38;
  --muse-ink-primary-on-card-selected: #3E3D38;
  --muse-ink-secondary-on-canvas: #595853;
  --muse-ink-secondary-on-canvas-elevated: #595853;
  --muse-ink-secondary-on-card: #595853;
  --muse-ink-secondary-on-card-hover: #565551;
  --muse-ink-secondary-on-card-selected: #4A4944;

  /* The platform chorus — golden-angle hues; accents are DAY here. */
  --muse-chorus-0-hue: 25.6deg;
  --muse-chorus-0-accent: #C56B64;
  --muse-chorus-0-soft: #FEBFB8;
  --muse-chorus-1-hue: 163.1deg;
  --muse-chorus-1-accent: #2A956C;
  --muse-chorus-1-soft: #92D8B7;
  --muse-chorus-2-hue: 300.6deg;
  --muse-chorus-2-accent: #9377C2;
  --muse-chorus-2-soft: #C4AFEA;
  --muse-chorus-3-hue: 78.1deg;
  --muse-chorus-3-accent: #AC7C26;
  --muse-chorus-3-soft: #EBC68D;
  --muse-chorus-4-hue: 215.6deg;
  --muse-chorus-4-accent: #2290A7;
  --muse-chorus-4-soft: #7ED0E5;
  --muse-chorus-5-hue: 353.1deg;
  --muse-chorus-5-accent: #BE6A8F;
  --muse-chorus-5-soft: #E3A1BC;
  --muse-chorus-6-hue: 130.6deg;
  --muse-chorus-6-accent: #6A8F42;
  --muse-chorus-6-soft: #B6D49A;
  --muse-chorus-7-hue: 268.2deg;
  --muse-chorus-7-accent: #6982CC;
  --muse-chorus-7-soft: #A6BCF5;
  --muse-chorus-8-hue: 45.7deg;
  --muse-chorus-8-accent: #C07049;
  --muse-chorus-8-soft: #FFBEA0;
  --muse-chorus-9-hue: 183.2deg;
  --muse-chorus-9-accent: #239487;
  --muse-chorus-9-soft: #82D7C9;
  --muse-chorus-10-hue: 320.7deg;
  --muse-chorus-10-accent: #A870B3;
  --muse-chorus-10-soft: #D3A8DB;
  --muse-chorus-11-hue: 98.2deg;
  --muse-chorus-11-accent: #978422;
  --muse-chorus-11-soft: #D9CC8B;
  --muse-chorus-12-hue: 235.7deg;
  --muse-chorus-12-accent: #2B8DBF;
  --muse-chorus-12-soft: #89C9EF;
  --muse-chorus-13-hue: 13.2deg;
  --muse-chorus-13-accent: #C46A75;
  --muse-chorus-13-soft: #FDBEC3;
  --muse-chorus-14-hue: 150.7deg;
  --muse-chorus-14-accent: #47945C;
  --muse-chorus-14-soft: #9ED6AA;
}

/* NIGHT by the reader's own preference — unless day is pinned. */
@media (prefers-color-scheme: dark) {
  :root:not([data-muse-theme="day"]) {
    --muse-canvas: #02060D;
    --muse-canvas-elevated: #0B141C;
    --muse-card: #111A23;
    --muse-card-hover: #1A232D;
    --muse-card-selected: #28313B;
    --muse-text-primary: #E0E5EA;
    --muse-text-secondary: #ADB2B6;
    --muse-text-disabled: #6E7276;
    --muse-accent: #1A7CC8;
    --muse-accent-soft: #083254;
    --muse-joy: #C05C0B;
    --muse-success: #23858C;
    --muse-warning: #8E7624;
    --muse-error: #E82B1A;
    --muse-focus: #1F9AA3;
    --muse-scrim: #000001;
    --muse-sunlight: #C8CFD5;
    --muse-artwork-fallback: #1E2831;
    --muse-rule: #1C252E;
    --muse-chorus-0-accent: #9B4C47;
    --muse-chorus-0-soft: #3C0406;
    --muse-chorus-1-accent: #00724F;
    --muse-chorus-1-soft: #032D1D;
    --muse-chorus-2-accent: #715799;
    --muse-chorus-2-soft: #342050;
    --muse-chorus-3-accent: #815D1E;
    --muse-chorus-3-soft: #2C1D03;
    --muse-chorus-4-accent: #1C6D7E;
    --muse-chorus-4-soft: #032E36;
    --muse-chorus-5-accent: #954C6C;
    --muse-chorus-5-soft: #4F1A34;
    --muse-chorus-6-accent: #4C6D26;
    --muse-chorus-6-soft: #182904;
    --muse-chorus-7-accent: #4B61A1;
    --muse-chorus-7-soft: #192755;
    --muse-chorus-8-accent: #97512E;
    --muse-chorus-8-soft: #361302;
    --muse-chorus-9-accent: #1D7065;
    --muse-chorus-9-soft: #022E29;
    --muse-chorus-10-accent: #82528C;
    --muse-chorus-10-soft: #411E48;
    --muse-chorus-11-accent: #71641B;
    --muse-chorus-11-soft: #282204;
    --muse-chorus-12-accent: #026B96;
    --muse-chorus-12-soft: #072D41;
    --muse-chorus-13-accent: #9B4B56;
    --muse-chorus-13-soft: #3B0311;
    --muse-chorus-14-accent: #29713F;
    --muse-chorus-14-soft: #002E10;
    --muse-ink-primary-on-canvas: #E0E5EA;
    --muse-ink-primary-on-canvas-elevated: #E0E5EA;
    --muse-ink-primary-on-card: #E0E5EA;
    --muse-ink-primary-on-card-hover: #E0E5EA;
    --muse-ink-primary-on-card-selected: #E0E5EA;
    --muse-ink-secondary-on-canvas: #ADB2B6;
    --muse-ink-secondary-on-canvas-elevated: #ADB2B6;
    --muse-ink-secondary-on-card: #ADB2B6;
    --muse-ink-secondary-on-card-hover: #ADB2B6;
    --muse-ink-secondary-on-card-selected: #ADB2B6;
  }
}

/* NIGHT pinned explicitly — always wins. */
:root[data-muse-theme="night"] {
  --muse-canvas: #02060D;
  --muse-canvas-elevated: #0B141C;
  --muse-card: #111A23;
  --muse-card-hover: #1A232D;
  --muse-card-selected: #28313B;
  --muse-text-primary: #E0E5EA;
  --muse-text-secondary: #ADB2B6;
  --muse-text-disabled: #6E7276;
  --muse-accent: #1A7CC8;
  --muse-accent-soft: #083254;
  --muse-joy: #C05C0B;
  --muse-success: #23858C;
  --muse-warning: #8E7624;
  --muse-error: #E82B1A;
  --muse-focus: #1F9AA3;
  --muse-scrim: #000001;
  --muse-sunlight: #C8CFD5;
  --muse-artwork-fallback: #1E2831;
  --muse-rule: #1C252E;
  --muse-chorus-0-accent: #9B4C47;
  --muse-chorus-0-soft: #3C0406;
  --muse-chorus-1-accent: #00724F;
  --muse-chorus-1-soft: #032D1D;
  --muse-chorus-2-accent: #715799;
  --muse-chorus-2-soft: #342050;
  --muse-chorus-3-accent: #815D1E;
  --muse-chorus-3-soft: #2C1D03;
  --muse-chorus-4-accent: #1C6D7E;
  --muse-chorus-4-soft: #032E36;
  --muse-chorus-5-accent: #954C6C;
  --muse-chorus-5-soft: #4F1A34;
  --muse-chorus-6-accent: #4C6D26;
  --muse-chorus-6-soft: #182904;
  --muse-chorus-7-accent: #4B61A1;
  --muse-chorus-7-soft: #192755;
  --muse-chorus-8-accent: #97512E;
  --muse-chorus-8-soft: #361302;
  --muse-chorus-9-accent: #1D7065;
  --muse-chorus-9-soft: #022E29;
  --muse-chorus-10-accent: #82528C;
  --muse-chorus-10-soft: #411E48;
  --muse-chorus-11-accent: #71641B;
  --muse-chorus-11-soft: #282204;
  --muse-chorus-12-accent: #026B96;
  --muse-chorus-12-soft: #072D41;
  --muse-chorus-13-accent: #9B4B56;
  --muse-chorus-13-soft: #3B0311;
  --muse-chorus-14-accent: #29713F;
  --muse-chorus-14-soft: #002E10;
  --muse-ink-primary-on-canvas: #E0E5EA;
  --muse-ink-primary-on-canvas-elevated: #E0E5EA;
  --muse-ink-primary-on-card: #E0E5EA;
  --muse-ink-primary-on-card-hover: #E0E5EA;
  --muse-ink-primary-on-card-selected: #E0E5EA;
  --muse-ink-secondary-on-canvas: #ADB2B6;
  --muse-ink-secondary-on-canvas-elevated: #ADB2B6;
  --muse-ink-secondary-on-card: #ADB2B6;
  --muse-ink-secondary-on-card-hover: #ADB2B6;
  --muse-ink-secondary-on-card-selected: #ADB2B6;
}

/* DAY pinned explicitly — always wins. */
:root[data-muse-theme="day"] {
  --muse-canvas: #F9F5E9;
  --muse-canvas-elevated: #E3DFD4;
  --muse-card: #D9D6CA;
  --muse-card-hover: #CDC9BE;
  --muse-card-selected: #BBB7AC;
  --muse-text-primary: #3E3D38;
  --muse-text-secondary: #595853;
  --muse-text-disabled: #82807B;
  --muse-accent: #1A72B8;
  --muse-accent-soft: #92BCE6;
  --muse-joy: #B1550E;
  --muse-success: #217A82;
  --muse-warning: #836D22;
  --muse-error: #D52919;
  --muse-focus: #1E666C;
  --muse-scrim: #1C1B14;
  --muse-sunlight: #FFFDF9;
  --muse-artwork-fallback: #C7C4B9;
  --muse-rule: #CBC7BC;
  --muse-chorus-0-accent: #C56B64;
  --muse-chorus-0-soft: #FEBFB8;
  --muse-chorus-1-accent: #2A956C;
  --muse-chorus-1-soft: #92D8B7;
  --muse-chorus-2-accent: #9377C2;
  --muse-chorus-2-soft: #C4AFEA;
  --muse-chorus-3-accent: #AC7C26;
  --muse-chorus-3-soft: #EBC68D;
  --muse-chorus-4-accent: #2290A7;
  --muse-chorus-4-soft: #7ED0E5;
  --muse-chorus-5-accent: #BE6A8F;
  --muse-chorus-5-soft: #E3A1BC;
  --muse-chorus-6-accent: #6A8F42;
  --muse-chorus-6-soft: #B6D49A;
  --muse-chorus-7-accent: #6982CC;
  --muse-chorus-7-soft: #A6BCF5;
  --muse-chorus-8-accent: #C07049;
  --muse-chorus-8-soft: #FFBEA0;
  --muse-chorus-9-accent: #239487;
  --muse-chorus-9-soft: #82D7C9;
  --muse-chorus-10-accent: #A870B3;
  --muse-chorus-10-soft: #D3A8DB;
  --muse-chorus-11-accent: #978422;
  --muse-chorus-11-soft: #D9CC8B;
  --muse-chorus-12-accent: #2B8DBF;
  --muse-chorus-12-soft: #89C9EF;
  --muse-chorus-13-accent: #C46A75;
  --muse-chorus-13-soft: #FDBEC3;
  --muse-chorus-14-accent: #47945C;
  --muse-chorus-14-soft: #9ED6AA;
  --muse-ink-primary-on-canvas: #3E3D38;
  --muse-ink-primary-on-canvas-elevated: #3E3D38;
  --muse-ink-primary-on-card: #3E3D38;
  --muse-ink-primary-on-card-hover: #3E3D38;
  --muse-ink-primary-on-card-selected: #3E3D38;
  --muse-ink-secondary-on-canvas: #595853;
  --muse-ink-secondary-on-canvas-elevated: #595853;
  --muse-ink-secondary-on-card: #595853;
  --muse-ink-secondary-on-card-hover: #565551;
  --muse-ink-secondary-on-card-selected: #4A4944;
}
