.wy-side-nav-search {
  background-image: radial-gradient(
    95% 95% at 50% 5%,
    #64bbe3 0%,
    #1e4471 100%
  );
}

.wy-nav-content-wrap {
  margin-left: 15rem;
}

.wy-nav-side,
.wy-side-nav-search,
.wy-menu-vertical {
  width: 15rem;
  box-shadow: 1px 0 0.25rem rgba(0, 0, 0, 0.1);
}
.wy-side-scroll {
  width: 16.25rem;
  height: 100vh;
}

.wy-side-nav-search > a img.logo {
  max-width: 6rem;
}
.wy-nav-content {
  padding: 1em 2em;
  box-shadow: 1px 0 0.25rem rgba(0, 0, 0, 0.1);
  overflow-y: auto;
  margin-left: 0;
}

.rst-content div[class^="highlight"],
.rst-content pre.literal-block,
.rst-content .admonition,
.rst-content .admonition-todo,
.rst-content .attention,
.rst-content .caution,
.rst-content .danger,
.rst-content .error,
.rst-content .hint,
.rst-content .important,
.rst-content .note,
.rst-content .seealso,
.rst-content .tip,
.rst-content .warning {
  max-width: max-content !important;
}

section > * {
  max-width: min(100%, 120ch) !important;
}
i .rst-content .toctree-wrapper > p.caption,
h1,
h2,
h3,
h4,
h5,
h6,
legend {
  font-family: "Arial", Serif;
  padding-top: 0.5rem;
}

.rst-content .toctree-wrapper > p.caption,
.rst-content h1,
.rst-content h2,
.rst-content h3,
.rst-content h4,
.rst-content h5,
.rst-content h6 {
  margin-bottom: 0.75rem !important;
}

.rst-content .sig-object dl {
  margin-bottom: 1px;
}
.rst-content .sig-object dl dd {
  margin-bottom: 0;
  line-height: 1.3rem;
}

.rst-content .toctree-wrapper ul li>ul {
  margin-top: 2px;
  margin-bottom: 2px;
}

.rst-content aside.footnote span.backrefs {
  max-width: 20rem !important;
  display: none !important;
}

@media screen and (max-width: 992px) {
  body,
  html {
    scroll-padding-top: 5rem;
  }
  .wy-nav-content-wrap {
    margin-left: 0;
    scroll-padding-top: 4rem;
  }
  .wy-body-for-nav {
    background: #fcfcfc;
  }

  .wy-nav-top {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 10;
  }

  .wy-nav-side {
    left: -15rem;
  }

  .wy-nav-side.shift {
    width: 15rem;
    left: 0;
  }

  .wy-nav-content-wrap.shift .wy-nav-top {
    left: 15rem;
    width: calc(100% - 16rem);
  }

  .wy-nav-content-wrap .wy-nav-content {
    padding: 5em 1rem 1rem 1rem;
    box-shadow: inset 0 3.95rem 0 #2980b9;
  }

  .wy-nav-content-wrap.shift {
    position: fixed;
    width: calc(100% - 15rem);
    min-width: calc(100% - 15rem);
    left: 15rem;
    top: 0;
    height: 100%;
    overflow: hidden;
  }
}
