/* mm docs — design system */

:root,
[data-md-color-scheme="default"] {
  /* Brand tokens */
  --bg: #F5FAFF;                 /* bg-body */
  --surface: #FFFFFF;
  --surface-tint: #E8F2FF;       /* derived — between bg and border */
  --border: #D1E9FF;             /* border-border */
  --border-strong: #A8C8F0;      /* derived — stronger than border */
  --text: #010917;               /* bg-dark used as primary text on light */
  --text-navy: #102A56;          /* text-navy (rgb(16, 42, 86)) */
  --text-secondary: #576782;     /* text-muted */
  --text-muted: #717680;         /* accordion muted (rgb(113, 118, 128)) */
  --accent: #1265FF;             /* text-primary / bg-primary */
  --accent-deep: #102255;        /* bg-enterprise */
  --accent-hover: #0F52D6;       /* derived — darker accent for hover */
  --accent-bright: #4D8BFF;      /* text-primary-light */
  --accent-soft: #6497F6;        /* capability blue */
  --capability-blue: #6497F6;
  --capability-green: #B9F664;
  --capability-purple: #B176FF;
  --font-sans: Geist, Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'Geist Mono', 'Fragment Mono', 'JetBrains Mono', ui-monospace, SFMono-Regular, monospace;

  /* Material variable overrides */
  --md-default-bg-color: var(--bg);
  --md-default-fg-color: var(--text);
  --md-default-fg-color--light: var(--text-secondary);
  --md-default-fg-color--lighter: var(--text-muted);
  --md-default-fg-color--lightest: var(--surface-tint);

  --md-primary-fg-color: var(--surface);
  --md-primary-fg-color--light: var(--surface-tint);
  --md-primary-fg-color--dark: var(--accent-deep);
  --md-primary-bg-color: var(--text);
  --md-primary-bg-color--light: var(--text-secondary);

  --md-accent-fg-color: var(--accent);
  --md-accent-fg-color--transparent: rgba(18, 101, 255, 0.1);
  --md-accent-bg-color: var(--surface);
  --md-accent-bg-color--light: var(--surface-tint);

  --md-typeset-color: var(--text);
  --md-typeset-a-color: var(--accent);

  --md-code-bg-color: var(--surface-tint);
  --md-code-fg-color: var(--text);

  --md-text-font: var(--font-sans);
  --md-code-font: var(--font-mono);

  --md-footer-bg-color: var(--accent-deep);
  --md-footer-bg-color--dark: var(--accent-deep);
  --md-footer-fg-color: var(--surface);
}

[data-md-color-scheme="slate"] {
  /* Dark scheme — uses bg-dark / bg-enterprise / dark-border tokens */
  --bg: #010917;                 /* bg-dark */
  --surface: #102255;            /* bg-enterprise */
  --surface-tint: #182231;       /* border-dark-border used as elevated surface */
  --border: #182231;             /* border-dark-border */
  --border-strong: #4D8BFF;
  --text: #F5FAFF;
  --text-navy: #4D8BFF;
  --text-secondary: #A8C8F0;
  --text-muted: #717680;
  --accent: #4D8BFF;             /* text-primary-light reads better on dark */
  --accent-deep: #102255;
  --accent-hover: #1265FF;
  --accent-bright: #6497F6;
  --accent-soft: #6497F6;
  --capability-blue: #6497F6;
  --capability-green: #B9F664;
  --capability-purple: #B176FF;

  --md-default-bg-color: var(--bg);
  --md-default-fg-color: var(--text);
  --md-default-fg-color--light: var(--text-secondary);
  --md-default-fg-color--lighter: var(--text-muted);
  --md-default-fg-color--lightest: var(--surface-tint);

  --md-primary-fg-color: var(--surface);
  --md-primary-fg-color--light: var(--surface-tint);
  --md-primary-fg-color--dark: var(--accent-deep);
  --md-primary-bg-color: var(--text);
  --md-primary-bg-color--light: var(--text-secondary);

  --md-accent-fg-color: var(--accent);
  --md-accent-fg-color--transparent: rgba(77, 139, 255, 0.15);
  --md-accent-bg-color: var(--surface);
  --md-accent-bg-color--light: var(--surface-tint);

  --md-typeset-color: var(--text);
  --md-typeset-a-color: var(--accent);

  --md-code-bg-color: var(--surface-tint);
  --md-code-fg-color: var(--text);

  --md-footer-bg-color: var(--accent-deep);
  --md-footer-bg-color--dark: var(--bg);
  --md-footer-fg-color: var(--text);
}

body,
.md-typeset {
  font-family: var(--font-sans);
  color: var(--text);
}

/* Header */
.md-header {
  background-color: var(--surface);
  color: var(--text);
  border-bottom: 1px solid var(--border);
  box-shadow: none;
}

.md-header--shadow {
  box-shadow: 0 1px 0 var(--border);
}

.md-header__title,
.md-header__topic > .md-ellipsis {
  color: var(--text);
  font-weight: 600;
}

.md-header__button {
  color: var(--text);
}

.md-header__button:hover {
  color: var(--accent);
}

.md-search__input {
  background-color: var(--surface-tint);
  color: var(--text);
}

.md-search__input::placeholder,
.md-search__input + .md-search__icon {
  color: var(--text-muted);
}

/* Tabs row (hidden — we moved nav to the sidebar) */
.md-tabs {
  display: none;
}

/* Main canvas */
.md-main,
.md-main__inner {
  background-color: var(--bg);
}

.md-sidebar {
  background-color: var(--bg);
}

/* Sidebar nav */
.md-nav__title {
  color: var(--text-secondary);
  font-weight: 600;
  letter-spacing: 0.01em;
}

.md-nav__link {
  color: var(--text);
}

.md-nav__link:hover,
.md-nav__link:focus {
  color: var(--accent-hover);
}

.md-nav__link--active,
.md-nav__item--active > .md-nav__link {
  color: var(--accent);
  font-weight: 600;
}

/* Typography */
.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4,
.md-typeset h5,
.md-typeset h6 {
  color: var(--text);
  font-family: var(--font-sans);
  font-weight: 600;
  letter-spacing: -0.01em;
}

.md-typeset h1 {
  font-weight: 700;
}

.md-typeset a {
  color: var(--accent);
}

.md-typeset a:hover {
  color: var(--accent-hover);
}

/* Code */
.md-typeset code,
.md-typeset kbd {
  font-family: var(--font-mono);
  background-color: var(--surface-tint);
  color: var(--text);
  border-radius: 4px;
  padding: 0.1em 0.3em;
}

.md-typeset pre > code {
  padding: 1em;
  background-color: var(--surface);
}

.md-typeset .highlight,
.md-typeset pre {
  border: 1px solid var(--border);
  border-radius: 8px;
  background-color: var(--surface);
}

.md-typeset .highlight .filename {
  background-color: var(--surface-tint);
  color: var(--text-secondary);
  border-bottom: 1px solid var(--border);
}

/* Tables */
.md-typeset table:not([class]) {
  border: 1px solid var(--border);
  border-radius: 8px;
  overflow: hidden;
  background-color: var(--surface);
}

.md-typeset table:not([class]) th {
  background-color: var(--surface-tint);
  color: var(--text);
  border-bottom: 1px solid var(--border-strong);
  font-weight: 600;
}

.md-typeset table:not([class]) td {
  border-bottom: 1px solid var(--border);
}

.md-typeset table:not([class]) tr:hover {
  background-color: var(--surface-tint);
}

/* Buttons */
.md-typeset .md-button {
  background-color: var(--accent);
  color: var(--surface);
  border: 1px solid var(--accent);
  border-radius: 6px;
}

.md-typeset .md-button:hover,
.md-typeset .md-button:focus {
  background-color: var(--accent-hover);
  border-color: var(--accent-hover);
  color: var(--surface);
}

.md-typeset .md-button--primary {
  background-color: var(--accent-deep);
  border-color: var(--accent-deep);
}

/* Admonitions / details */
.md-typeset .admonition,
.md-typeset details {
  border: 1px solid var(--border);
  background-color: var(--surface);
  border-radius: 8px;
}

.md-typeset .admonition-title,
.md-typeset summary {
  background-color: var(--surface-tint);
  color: var(--text);
}

/* Footer */
.md-footer-meta {
  background-color: var(--accent-deep);
}

/* Search results */
.md-search-result__meta {
  background-color: var(--surface-tint);
  color: var(--text-secondary);
}

.md-search-result__article {
  background-color: var(--surface);
}

/* Horizontal rule */
.md-typeset hr {
  border-color: var(--border);
}

/* Blockquote */
.md-typeset blockquote {
  border-left: 4px solid var(--accent-soft);
  color: var(--text-secondary);
}
