:root{
  /* One web palette. Page and generated UI colors resolve here. */
  color-scheme:dark;
  --sl-color-bg:#020205;
  --sl-color-panel:#0a0b10;
  --sl-color-raised:#11131b;
  --sl-color-hover:#191c26;
  --sl-color-active:#191823;
  --sl-color-line:#2b2e3c;
  --sl-color-line-soft:#20232d;
  --sl-color-line-strong:#424755;
  --sl-color-text:#f2f0f7;
  --sl-color-muted:#a4a7b7;
  --sl-color-faint:#7f8799;
  --sl-color-accent:#bda2e6;
  --sl-color-on-accent:#201629;
  --sl-color-success:#91cfad;
  --sl-color-warning:#e5bd7b;
  --sl-color-danger:#e5a1ac;
  --sl-color-info:#8ad4d9;
  --sl-color-scheduled:#a7bbef;
  --sl-color-scrim:#000000;
  /* Evidence colors are distinct from interaction and keep their meanings. */
  --sl-chart-squat:#bca4e9;
  --sl-chart-bench:#77ccbd;
  --sl-chart-deadlift:#8faee5;
  --sl-chart-overlay:#d6b879;
  --sl-chart-pink:#d7a2c9;
  --sl-chart-green:#91cfad;
  --sl-chart-red:#e5a1ac;
  --sl-chart-lilac:#c4b4e5;
  --sl-chart-cyan:#8ad4d9;
  --sl-chart-orange:#d6a479;

  /* Stable aliases keep existing components and controllers compatible. */
  --bg:var(--sl-color-bg);
  --panel:var(--sl-color-panel);
  --panel-2:var(--sl-color-raised);
  --panel-3:var(--sl-color-hover);
  --line:var(--sl-color-line);
  --line-soft:var(--sl-color-line-soft);
  --line-strong:var(--sl-color-line-strong);
  --text:var(--sl-color-text);
  --muted:var(--sl-color-muted);
  --muted-2:var(--sl-color-faint);
  --accent:var(--sl-color-accent);
  --accent-2:var(--sl-color-accent);
  --accent-violet:var(--sl-color-accent);
  --accent-blue:var(--sl-color-scheduled);
  --accent-teal:var(--sl-color-info);
  --accent-green:var(--sl-color-success);
  --accent-amber:var(--sl-color-warning);
  --danger:var(--sl-color-danger);
  --ok:var(--sl-color-success);
  --warn:var(--sl-color-warning);

  --surface-violet:color-mix(in srgb,var(--accent) 8%,var(--panel-2));
  --surface-blue:color-mix(in srgb,var(--accent-blue) 8%,var(--panel-2));
  --surface-teal:color-mix(in srgb,var(--accent-teal) 8%,var(--panel-2));
  --surface-green:color-mix(in srgb,var(--ok) 8%,var(--panel-2));
  --surface-amber:color-mix(in srgb,var(--warn) 8%,var(--panel-2));
  --surface-danger:color-mix(in srgb,var(--danger) 8%,var(--panel-2));
  --glow-violet:0 0 0 1px color-mix(in srgb,var(--accent) 24%,transparent);
  --glow-blue:0 0 0 1px color-mix(in srgb,var(--accent-blue) 24%,transparent);
  --glow-teal:0 0 0 1px color-mix(in srgb,var(--accent-teal) 24%,transparent);
  --glow-green:0 0 0 1px color-mix(in srgb,var(--ok) 24%,transparent);
  --glow-amber:0 0 0 1px color-mix(in srgb,var(--warn) 24%,transparent);
  --glow-danger:0 0 0 1px color-mix(in srgb,var(--danger) 24%,transparent);
  --grad-violet:linear-gradient(135deg,var(--surface-violet),var(--panel-2));
  --grad-blue:linear-gradient(135deg,var(--surface-blue),var(--panel-2));
  --grad-teal:linear-gradient(135deg,var(--surface-teal),var(--panel-2));
  --grad-green:linear-gradient(135deg,var(--surface-green),var(--panel-2));
  --grad-amber:linear-gradient(135deg,var(--surface-amber),var(--panel-2));
  --grad-danger:linear-gradient(135deg,var(--surface-danger),var(--panel-2));

  --shell-atmo:linear-gradient(transparent,transparent);
  --panel-sheen:linear-gradient(180deg,color-mix(in srgb,var(--text) 1%,transparent),transparent 22%);
  --card-bg:var(--panel);
  --card-bg-strong:var(--panel-2);
  --card-bg-soft:var(--panel);
  --control-bg:var(--panel-2);
  --control-bg-tinted:var(--panel-2);
  --font-base:'Manrope',ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;
  --radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-2xl:14px;
  --shadow:0 6px 16px color-mix(in srgb,var(--sl-color-scrim) 22%,transparent);
  --shadow-lg:0 10px 26px color-mix(in srgb,var(--sl-color-scrim) 28%,transparent);
  --shadow-panel:0 6px 14px color-mix(in srgb,var(--sl-color-scrim) 10%,transparent);
  --shadow-float:0 14px 30px color-mix(in srgb,var(--sl-color-scrim) 30%,transparent);
  --desk-bg:var(--bg);--desk-bg-flat:var(--bg);
  --desk-depth-wash:linear-gradient(transparent,transparent);
  --desk-surface:var(--panel);--workspace-surface:var(--panel-2);--surface-secondary:var(--panel);
  --active-object-surface:var(--sl-color-active);
  --quiet-separator:var(--line-soft);
  --utility-border:var(--line);
  --metadata-muted:var(--muted);
  --status-attention:var(--warn);--status-complete:var(--ok);--status-danger:var(--danger);--status-context:var(--accent-blue);
  --surface-hover:var(--panel-3);--surface-active:var(--active-object-surface);--surface-focus:var(--active-object-surface);
  --border-quiet:var(--line);--border-soft:var(--line-soft);--border-crisp:var(--line-strong);
  --border-warm:var(--line);--border-focus:var(--accent);
  --utility-bg:var(--panel-2);--workspace-bg:var(--panel-2);
  --shadow-utility:0 20px 54px color-mix(in srgb,var(--sl-color-scrim) 40%,transparent);
  --shadow-workspace:0 18px 46px color-mix(in srgb,var(--sl-color-scrim) 28%,transparent);
  --shadow-crisp:0 8px 18px color-mix(in srgb,var(--sl-color-scrim) 20%,transparent);
  --focus-ring:0 0 0 3px color-mix(in srgb,var(--accent) 24%,transparent);
  --motion-fast:120ms;--motion-med:180ms;--motion-slow:240ms;
  --ease-standard:cubic-bezier(.2,.72,.2,1);--ease-out:cubic-bezier(.16,1,.3,1);
}
