:root {
  --ink-900: #17253b;
  --ink-700: #2c3e5d;
  --ink-500: #3e5e87;
  --paper-100: #f5f6f8;
  --paper-0: #ffffff;
  --line-200: #d4d9e2;
  --line-300: #bcc4d1;
  --text-900: #162436;
  --text-700: #3d4b5f;
}

[data-md-color-scheme="default"] {
  --md-primary-fg-color: var(--ink-900);
  --md-primary-fg-color--light: var(--ink-700);
  --md-primary-fg-color--dark: #111d2f;
  --md-accent-fg-color: var(--ink-500);
  --md-typeset-a-color: var(--ink-700);
  --md-default-fg-color: var(--text-900);
  --md-default-fg-color--light: var(--text-700);
  --md-default-bg-color: var(--paper-100);
}

.md-header {
  background: var(--ink-900);
  box-shadow: none;
}

.md-tabs {
  background: var(--ink-700);
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.header-social {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  margin-left: auto;
  padding-left: 0.4rem;
  flex-shrink: 0;
}

.header-social__link {
  width: 1.85rem;
  height: 1.85rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.26);
  background: rgba(255, 255, 255, 0.08);
  color: #f2f6ff;
  transition: transform 140ms ease, background-color 140ms ease, border-color 140ms ease;
}

.header-social__link:hover,
.header-social__link:focus-visible {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.4);
}

.header-social__link svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
}

.drawer-social-item {
  margin-top: 0.6rem;
  padding-top: 0.7rem;
  border-top: 1px solid #e2e7f0;
}

.drawer-social {
  display: flex;
  gap: 0.45rem;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.drawer-social__link {
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid var(--line-200);
  background: var(--ink-900);
  color: #f2f6ff;
  text-decoration: none;
}

.drawer-social__link svg {
  width: 1.02rem;
  height: 1.02rem;
  fill: currentColor;
}

.md-main {
  background: linear-gradient(180deg, #f2f4f7 0%, #f8f9fb 100%);
}

.md-main__inner {
  margin-top: 1rem;
}

.md-content__inner {
  background: var(--paper-0);
  border: 1px solid var(--line-200);
  border-radius: 6px;
  box-shadow: none;
  padding: 1.35rem 1.5rem;
}

.md-typeset {
  font-size: 0.81rem;
}

.md-typeset h1,
.md-typeset h2,
.md-typeset h3 {
  font-family: "Source Serif 4", Georgia, "Times New Roman", serif;
  letter-spacing: 0;
  color: var(--ink-900);
}

.md-typeset h1 {
  font-weight: 600;
  border-bottom: 1px solid var(--line-200);
  padding-bottom: 0.45rem;
  margin-bottom: 1rem;
}

.md-typeset h2 {
  margin-top: 1.9rem;
  font-weight: 600;
}

.md-typeset p,
.md-typeset li {
  line-height: 1.68;
}

.md-typeset a {
  text-decoration: underline;
  text-decoration-color: #9eabc0;
  text-underline-offset: 2px;
}

.md-typeset a:hover {
  color: var(--ink-500);
  text-decoration-color: currentColor;
}

.md-typeset img {
  border-radius: 4px;
  border: 1px solid var(--line-200);
  box-shadow: none;
}

.md-typeset table:not([class]) {
  border: 1px solid var(--line-200);
  border-radius: 4px;
  overflow: hidden;
  box-shadow: none;
}

.md-typeset table:not([class]) th {
  background: #e9edf3;
  color: var(--ink-900);
  font-weight: 600;
  border-bottom: 1px solid var(--line-300);
}

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

.md-typeset table:not([class]) tr:nth-child(even) {
  background: #f8f9fb;
}

.tabbed-set {
  border: 1px solid var(--line-200);
  border-radius: 4px;
  box-shadow: none;
}

.tabbed-content {
  background: #fbfcfd;
}

.md-nav__link--active {
  font-weight: 600;
}

@media screen and (max-width: 76.2344em) {
  .md-sidebar--primary .md-nav--primary > .md-nav__title {
    background-color: var(--ink-900);
    color: #e9edf4;
  }

  .md-sidebar--primary .md-nav__link {
    color: var(--ink-700);
    opacity: 1;
  }

  .md-sidebar--primary .md-nav__link:hover,
  .md-sidebar--primary .md-nav__link:focus-visible,
  .md-sidebar--primary .md-nav__link--active {
    color: var(--ink-900);
  }

  .md-sidebar--primary .md-nav__item {
    border-top: 1px solid #e3e7ef;
  }

  .md-content__inner {
    border-radius: 4px;
    padding: 1rem;
  }
}

@media screen and (max-width: 44.9844em) {
  .md-typeset h1 {
    font-size: 1.65rem;
  }

  .md-typeset table:not([class]) {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
}
