:root {
  --md-primary-fg-color: #38bdf8;
  --md-accent-fg-color: #60a5fa;
  --md-code-font: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --md-text-font: "Inter", "Noto Sans JP", system-ui, -apple-system, sans-serif;
}

[data-md-color-scheme="slate"] {
  --md-default-bg-color: #08111b;
  --md-default-fg-color: #e6edf5;
  --md-default-fg-color--light: #9cb3c9;
  --md-typeset-a-color: #60a5fa;
  --md-code-bg-color: #101b26;
  --md-code-fg-color: #e6edf5;
}

.md-header,
.md-tabs {
  background-color: #0b1520;
}

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

.md-typeset code {
  border-radius: 6px;
}

/* Primary navigation hierarchy */
@media screen and (min-width: 60em) {
  .md-sidebar--primary {
    width: 13.5rem;
  }
}

.md-nav--primary > .md-nav__list > .md-nav__item {
  margin-bottom: 0.35rem;
}

.md-nav--primary > .md-nav__list > .md-nav__item--section > .md-nav__link {
  margin-top: 0.7rem;
  padding: 0.4rem 0.55rem;
  border-left: 3px solid rgba(56, 189, 248, 0.7);
  border-radius: 6px;
  background: rgba(56, 189, 248, 0.08);
  color: #b9d2e8;
  font-weight: 700;
}

.md-nav--primary > .md-nav__list > .md-nav__item--section > .md-nav > .md-nav__list {
  margin: 0.25rem 0 0.65rem 0.55rem;
  padding-left: 0.55rem;
  border-left: 1px solid rgba(56, 189, 248, 0.25);
}

.md-nav--primary > .md-nav__list > .md-nav__item--section > .md-nav > .md-nav__list > .md-nav__item > .md-nav__link {
  margin: 0.05rem 0;
  padding: 0.25rem 0.4rem;
  border-radius: 5px;
}

.md-nav--primary > .md-nav__list > .md-nav__item--section > .md-nav > .md-nav__list > .md-nav__item > .md-nav__link:hover {
  background: rgba(96, 165, 250, 0.08);
}

.md-nav--primary > .md-nav__list > .md-nav__item--section > .md-nav > .md-nav__list > .md-nav__item > .md-nav__link--active {
  box-shadow: inset 3px 0 #38bdf8;
  background: rgba(56, 189, 248, 0.14);
  color: #7dd3fc;
  font-weight: 700;
}

.md-nav--primary > .md-nav__list > .md-nav__item:not(.md-nav__item--section) > .md-nav__link {
  padding: 0.3rem 0.55rem;
  font-weight: 600;
}
