:root {
  color-scheme: light;
  --page: #ffffff;
  --ink: #10212d;
  --muted: #576574;
  --link: #99452f;
  --border: #d8dee4;
  --panel: #f6f8fa;
  --inline: #eaf0f4;
  --keyword: #93432e;
  --string: #22613c;
  --number: #175b95;
  --function: #68439b;
}

@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;
    --page: #0d1117;
    --ink: #e6edf3;
    --muted: #9da7b3;
    --link: #f09278;
    --border: #30363d;
    --panel: #161b22;
    --inline: #212832;
    --keyword: #f09278;
    --string: #a5d6a7;
    --number: #79c0ff;
    --function: #d2a8ff;
  }
}

body,
.markdown-body {
  color: var(--ink);
  background-color: var(--page);
}

.markdown-body img {
  background-color: transparent;
}

.markdown-body a {
  color: var(--link);
}

.markdown-body h1,
.markdown-body h2,
.markdown-body hr,
.markdown-body table th,
.markdown-body table td {
  border-color: var(--border);
}

.markdown-body hr {
  background-color: var(--border);
}

.markdown-body blockquote {
  color: var(--muted);
  border-color: var(--border);
}

.markdown-body table tr {
  background-color: var(--page);
  border-color: var(--border);
}

.markdown-body table tr:nth-child(2n) {
  background-color: var(--panel);
}

.markdown-body code,
.markdown-body tt {
  color: var(--ink);
  background-color: var(--inline);
}

.markdown-body pre,
.markdown-body .highlight,
.markdown-body .highlight pre {
  color: var(--ink);
  background-color: var(--panel);
}

.markdown-body pre code,
.markdown-body pre tt {
  background: transparent;
}

/* Rust highlighting is approximate for Waxwing; unclassified tokens
   inherit readable text instead of a theme's hard-coded light palette. */
.markdown-body .highlight code span {
  color: inherit;
  background: transparent;
}

.markdown-body .highlight .k,
.markdown-body .highlight .kd,
.markdown-body .highlight .kn,
.markdown-body .highlight .kp,
.markdown-body .highlight .kr,
.markdown-body .highlight .kt,
.markdown-body .highlight .o {
  color: var(--keyword);
}

.markdown-body .highlight .s,
.markdown-body .highlight .s1,
.markdown-body .highlight .s2,
.markdown-body .highlight .sr {
  color: var(--string);
}

.markdown-body .highlight .m,
.markdown-body .highlight .mi,
.markdown-body .highlight .mf,
.markdown-body .highlight .mh {
  color: var(--number);
}

.markdown-body .highlight .nf,
.markdown-body .highlight .nc,
.markdown-body .highlight .nb {
  color: var(--function);
}

.markdown-body .highlight .c,
.markdown-body .highlight .c1,
.markdown-body .highlight .cm {
  color: var(--muted);
}
