/* Radiens design-language tokens: signature cyan is an accent only; the header stays neutral. */
[data-md-color-scheme="default"] {
  --md-primary-fg-color: #ffffff;
  --md-primary-fg-color--light: #fafafa;
  --md-primary-fg-color--dark: #e4e4e7;
  --md-primary-bg-color: #0a0a0b;
  --md-primary-bg-color--light: #71717a;
  --md-accent-fg-color: #0891b2;
  --md-accent-fg-color--transparent: #06b6d41a;
  --md-accent-bg-color: #ffffff;
  --md-accent-bg-color--light: #ffffffb3;
  /* cyan-500 is 2.4:1 on white, below WCAG AA for text; cyan-700 is 5.4:1. */
  --md-typeset-a-color: #0e7490;
}

[data-md-color-scheme="slate"] {
  --md-primary-fg-color: #0a0a0b;
  --md-primary-fg-color--light: #18181b;
  --md-primary-fg-color--dark: #000000;
  --md-primary-bg-color: #fafafa;
  --md-primary-bg-color--light: #a1a1aa;
  --md-accent-fg-color: #22d3ee;
  --md-accent-bg-color: #0a0a0b;
  --md-typeset-a-color: #06b6d4;
  --md-default-bg-color: #0a0a0b;
  --md-default-bg-color--light: #0a0a0b8a;
  --md-default-bg-color--lighter: #0a0a0b42;
  --md-default-bg-color--lightest: #0a0a0b12;
  --md-default-fg-color: #fafafad1;
  --md-default-fg-color--light: #a1a1aa;
  --md-default-fg-color--lighter: #fafafa52;
  --md-default-fg-color--lightest: #fafafa1f;
  --md-code-bg-color: #18181b;
  --md-footer-bg-color: #18181b;
  --md-footer-bg-color--dark: #0a0a0b;
}

.md-header {
  border-bottom: .05rem solid var(--md-default-fg-color--lightest);
}

/* Material's translucent black search box assumes a colored header. */
@media screen and (min-width: 60em) {
  .md-search__form,
  .md-search__form:hover {
    background-color: var(--md-default-fg-color--lightest);
  }
}

.md-typeset :is(h1, h2, h3) {
  color: var(--md-default-fg-color);
  font-weight: 600;
  letter-spacing: -.01em;
}

/* Indent each object's body under its heading; recommended by mkdocstrings-python for Material. */
div.doc-contents:not(.first) {
  padding-left: 25px;
  border-left: .05rem solid var(--md-typeset-table-color);
}

/* Material has no "deprecated" admonition type; use the danger icon and status red so these differ from Warning: boxes. */
.md-typeset details.deprecated {
  border-color: #ef4444;
}
.md-typeset .deprecated > summary {
  background-color: #ef44441a;
}
.md-typeset .deprecated > summary::before {
  background-color: #ef4444;
  -webkit-mask-image: var(--md-admonition-icon--danger);
  mask-image: var(--md-admonition-icon--danger);
}

/* Guide line beside nested sidebar groups, as on the Pydantic docs. */
.md-nav--primary .md-nav__item .md-nav__list {
  margin-left: .6rem;
  border-left: .05rem solid var(--md-default-fg-color--lightest);
}

/* The header already shows the site name; keep it only in the mobile drawer. */
@media screen and (min-width: 76.25em) {
  .md-nav--primary > .md-nav__title {
    display: none;
  }
}
