/* Hallmark · macrostructure: Index-First · theme: custom Xtbc · genre: modern-minimal
 * nav: Material / N13 · footer: Ft2 · tone: Microsoft Learn · enrichment: none
 * display and body: Segoe UI (user choice) · anchor hue: violet
 */
:root {
  --xt-color-brand: oklch(29.229% 0.12643 286.373);
  --xt-color-brand-hover: oklch(24.444% 0.1524 276.008);
  --xt-color-accent: oklch(59.964% 0.20973 283.685);
  --xt-color-on-brand: oklch(98.5% 0.005 285);
  --xt-color-header-muted: oklch(88% 0.025 285);
  --xt-color-header-focus: oklch(82% 0.08 285);
  --xt-color-transparent: oklch(0% 0 0 / 0);
  --xt-color-hero: oklch(21% 0.09 286);
  --xt-color-hero-ink: oklch(98.5% 0.005 285);
  --xt-color-hero-muted: oklch(90% 0.02 285);
  --xt-color-hero-line: oklch(100% 0 0 / 0.2);
  --xt-color-hero-fill: oklch(100% 0 0 / 0.07);
  --xt-color-hero-grid: oklch(100% 0 0 / 0.05);
  --xt-color-button: oklch(52% 0.22 284);
  --xt-color-button-hover: oklch(46% 0.22 284);
  --xt-gradient: linear-gradient(90deg, oklch(66% 0.22 330), var(--xt-color-accent) 50%, oklch(62% 0.14 240));
  --xt-gradient-text: linear-gradient(90deg, oklch(80% 0.14 330), oklch(82% 0.1 290) 55%, oklch(86% 0.08 225));
  --xt-shadow-lift: 0 0.5rem 1.5rem oklch(20% 0.05 285 / 0.16);
  --xt-shadow-button: 0 0.3rem 1rem oklch(52% 0.22 284 / 0.4);
  --xt-hero-glow:
    radial-gradient(ellipse at 85% -10%, oklch(62% 0.22 330 / 0.32), var(--xt-color-transparent) 55%),
    radial-gradient(ellipse at 110% 90%, oklch(60% 0.21 284 / 0.45), var(--xt-color-transparent) 55%),
    radial-gradient(ellipse at -10% 120%, oklch(42% 0.12 240 / 0.55), var(--xt-color-transparent) 60%);
  --xt-color-print-paper: oklch(100% 0 0);
  --xt-color-print-ink: oklch(20% 0 0);
  --xt-color-print-border: oklch(70% 0 0);

  --xt-font-body: "Segoe UI", SegoeUI, -apple-system, BlinkMacSystemFont,
    "Helvetica Neue", Arial, sans-serif;
  --xt-font-heading: var(--xt-font-body);
  --xt-font-code: SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;
  --md-text-font: var(--xt-font-body);
  --md-text-font-family: var(--xt-font-body);
  --md-code-font: var(--xt-font-code);
  --md-code-font-family: var(--xt-font-code);

  --xt-space-2xs: 0.2rem;
  --xt-space-xs: 0.4rem;
  --xt-space-sm: 0.6rem;
  --xt-space-md: 0.8rem;
  --xt-space-lg: 1.2rem;
  --xt-space-xl: 1.6rem;
  --xt-space-2xl: 2.4rem;
  --xt-space-3xl: 3.2rem;
  --xt-text-eyebrow: 0.6rem;
  --xt-text-small: 0.7rem;
  --xt-text-body: 0.8rem;
  --xt-text-lead: 0.95rem;
  --xt-text-h3: 1rem;
  --xt-text-h2: 1.25rem;
  --xt-text-h1: 1.75rem;
  --xt-text-display: clamp(1.7rem, 4vw, 2.6rem);
  --xt-radius-small: 0.2rem;
  --xt-radius: 0.3rem;
  --xt-radius-large: 0.5rem;
  --xt-control-height: 2.2rem;
  --xt-content-width: 75ch;
  --xt-home-width: var(--xt-page-width);
  --xt-page-width: 72rem;
  --xt-shadow: 0 1px 2px oklch(20% 0.015 285 / 0.08);
  --xt-shadow-panel: 0 0.4rem 1.6rem oklch(10% 0.015 285 / 0.2);
}

:root,
[data-md-color-scheme="default"] {
  --xt-color-paper: oklch(99% 0.003 285);
  --xt-color-surface: oklch(97% 0.006 285);
  --xt-color-hover: oklch(94% 0.015 285);
  --xt-color-ink: oklch(28% 0.015 285);
  --xt-color-muted: oklch(45% 0.015 285);
  --xt-color-border: oklch(83% 0.01 285);
  --xt-color-border-subtle: oklch(92% 0.008 285);
  --xt-color-link: oklch(44.822% 0.13628 289.241);
  --xt-color-link-hover: var(--xt-color-brand);
  --xt-color-focus: var(--xt-color-accent);
  --xt-color-note: oklch(46% 0.13 250);
  --xt-color-tip: oklch(43.434% 0.10964 149.963);
  --xt-color-warning: oklch(53.105% 0.11903 65.118);
  --xt-color-danger: oklch(50.542% 0.18867 31.902);
}

[data-md-color-scheme="slate"] {
  --xt-color-paper: oklch(20.576% 0.02582 294.614);
  --xt-color-surface: oklch(25.659% 0.03378 294.087);
  --xt-color-hover: oklch(31% 0.035 285);
  --xt-color-ink: oklch(94% 0.01 285);
  --xt-color-muted: oklch(78% 0.015 285);
  --xt-color-border: oklch(44% 0.02 285);
  --xt-color-border-subtle: oklch(33% 0.025 285);
  --xt-color-link: oklch(77.641% 0.12295 290.621);
  --xt-color-link-hover: oklch(88% 0.06 285);
  --xt-color-focus: var(--xt-color-link);
  --xt-color-note: oklch(78% 0.1 250);
  --xt-color-tip: oklch(79% 0.12 150);
  --xt-color-warning: oklch(82% 0.12 75);
  --xt-color-danger: oklch(79% 0.11 30);
}

[data-md-color-scheme] {
  --xt-color-note-bg: color-mix(in oklch, var(--xt-color-note) 8%, var(--xt-color-paper));
  --xt-color-tip-bg: color-mix(in oklch, var(--xt-color-tip) 8%, var(--xt-color-paper));
  --xt-color-warning-bg: color-mix(in oklch, var(--xt-color-warning) 8%, var(--xt-color-paper));
  --xt-color-danger-bg: color-mix(in oklch, var(--xt-color-danger) 8%, var(--xt-color-paper));
  --md-primary-fg-color: var(--xt-color-brand);
  --md-primary-fg-color--light: var(--xt-color-accent);
  --md-primary-fg-color--dark: var(--xt-color-brand-hover);
  --md-primary-bg-color: var(--xt-color-on-brand);
  --md-primary-bg-color--light: var(--xt-color-header-muted);
  --md-accent-fg-color: var(--xt-color-link);
  --md-accent-fg-color--transparent: var(--xt-color-hover);
  --md-accent-bg-color: var(--xt-color-paper);
  --md-default-bg-color: var(--xt-color-paper);
  --md-default-fg-color: var(--xt-color-ink);
  --md-default-fg-color--light: var(--xt-color-muted);
  --md-default-fg-color--lighter: var(--xt-color-border);
  --md-default-fg-color--lightest: var(--xt-color-border-subtle);
  --md-typeset-color: var(--xt-color-ink);
  --md-typeset-a-color: var(--xt-color-link);
  --md-code-bg-color: var(--xt-color-surface);
  --md-code-fg-color: var(--xt-color-ink);
  --md-footer-bg-color: var(--xt-color-surface);
  --md-footer-bg-color--dark: var(--xt-color-paper);
  --md-footer-fg-color: var(--xt-color-ink);
  --md-footer-fg-color--light: var(--xt-color-muted);
  --md-footer-fg-color--lighter: var(--xt-color-muted);
  --md-shadow-z1: var(--xt-shadow);
  --md-shadow-z2: var(--xt-shadow-panel);
  --md-shadow-z3: var(--xt-shadow-panel);
}
