/*! minireset.scss | jgthms (github.com/jgthms/minireset.css) | MIT License */
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

ul {
  list-style: none;
}

button,
input,
select {
  margin: 0;
}

html {
  box-sizing: border-box;
}

*, *::before, *::after {
  box-sizing: inherit;
}

img,
video {
  height: auto;
  max-width: 100%;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

@font-face {
  font-family: "Short Stack Ext";
  font-weight: normal;
  font-style: normal;
  src: url("fonts/shortstack-ext/shortstack-ext.ttf") format("truetype");
}
@font-face {
  font-family: "Short Stack Ext";
  font-weight: normal;
  font-style: italic;
  src: url("fonts/shortstack-ext/shortstack-ext-i.ttf") format("truetype");
}
@font-face {
  font-family: "Short Stack Ext";
  font-weight: bold;
  font-style: normal;
  src: url("fonts/shortstack-ext/shortstack-ext-b.ttf") format("truetype");
}
@font-face {
  font-family: "Short Stack Ext";
  font-weight: bold;
  font-style: italic;
  src: url("fonts/shortstack-ext/shortstack-ext-bi.ttf") format("truetype");
}
.body ul {
  list-style-type: disc;
  padding-left: 2rem;
}
.body ul ul {
  list-style-type: circle;
}
.body ul ul ul {
  list-style-type: square;
}
.body ul > li {
  margin-top: 0.5rem;
}

.body ol {
  padding-left: 2rem;
}
.body ol > li {
  margin-top: 0.5rem;
}

.body dd > ul, .body dd > ol {
  padding-left: 0;
}

::-moz-selection {
  background-color: rgba(67, 192, 255, 0.233);
  color: inherit;
}

::selection {
  background-color: rgba(67, 192, 255, 0.233);
  color: inherit;
}

b, strong {
  font-weight: bolder;
}

pre, code, kbd, samp {
  font-family: "Consolas", "Courier New", Courier, monospace;
  font-weight: bold;
  font-size: 100%;
}

code, kbd, samp {
  color: #ff4069;
}

.docutils.literal {
  padding: 0.25rem;
  background-color: transparent;
}

sup, sub {
  line-height: 0;
  font-size: 80%;
}

small {
  font-size: 80%;
}

h1, h2, h3, h4, h5, h6, .rubric {
  font-family: "Modern Love", sans-serif;
  font-weight: normal;
  page-break-after: avoid;
}

h1 {
  font-size: 175%;
}

h2 {
  font-size: 150%;
}

h3 {
  font-size: 140%;
}

h4 {
  font-size: 130%;
}

h5 {
  font-size: 120%;
}

h6 {
  font-size: 110%;
}

.rubric {
  font-size: 175%;
}

.bc-item {
  display: inline;
}

a {
  background-color: transparent;
  text-decoration: none;
}
a:link {
  color: #2054ff;
}
a:visited {
  color: #a620ff;
}
a:hover {
  text-decoration: underline;
}
a > code, a > kbd, a > samp {
  color: inherit;
}

a.headerlink {
  font-family: "Consolas", "Courier New", Courier, monospace;
  padding-left: 0.5em;
}
a.headerlink:link, a.headerlink:visited {
  color: #9addff;
}
a.headerlink:hover {
  text-decoration: none;
  color: #43c0ff;
}

.related {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  font-size: 90%;
}
.related > li {
  margin-right: 4px;
  margin-bottom: 4px;
}
.related > li > a {
  min-height: 28px;
  padding: 0 0.5rem;
}

.body > :not(:first-child), section > :not(:first-child), .section > :not(:first-child) {
  margin-top: 1rem;
}
.body > .body:not(:first-child), section > .body:not(:first-child), .section > .body:not(:first-child), .body > section:not(:first-child), section > section:not(:first-child), .section > section:not(:first-child), .body > .section:not(:first-child), section > .section:not(:first-child), .section > .section:not(:first-child) {
  margin-top: 2.5rem;
}

.admonition > :not(:first-child), .figure > :not(:first-child), .body table.docutils td > :not(:first-child), .body table.docutils th > :not(:first-child), .body blockquote > div > p > :not(:first-child), .body dd > :not(:first-child), .body li > :not(:first-child) {
  margin-top: 0.5rem;
}

.body > p, section > p, .section > p, .admonition > p, .figure > p, .body table.docutils td > p, .body table.docutils th > p, .body blockquote > div > p > p, .body dd > p, .body li > p {
  text-align: justify;
}
.body > img, section > img, .section > img, .body video, section video, .section video, .body audio, section audio, .section audio, .body embed, section embed, .section embed, .body object, section object, .section object, .body canvas, section canvas, .section canvas, .body svg, section svg, .section svg, .body iframe, section iframe, .section iframe, .admonition > img, .figure > img, .body table.docutils td > img, .body table.docutils th > img, .body blockquote > div > p > img, .body dd > img, .body li > img, .admonition video, .figure video, .body table.docutils td video, .body table.docutils th video, .body blockquote > div > p video, .admonition audio, .figure audio, .body table.docutils td audio, .body table.docutils th audio, .body blockquote > div > p audio, .admonition embed, .figure embed, .body table.docutils td embed, .body table.docutils th embed, .body blockquote > div > p embed, .admonition object, .figure object, .body table.docutils td object, .body table.docutils th object, .body blockquote > div > p object, .admonition canvas, .figure canvas, .body table.docutils td canvas, .body table.docutils th canvas, .body blockquote > div > p canvas, .admonition svg, .figure svg, .body table.docutils td svg, .body table.docutils th svg, .body blockquote > div > p svg, .admonition iframe, .figure iframe, .body table.docutils td iframe, .body table.docutils th iframe, .body blockquote > div > p iframe {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}
.body img, section img, .section img, .body video, section video, .section video, .body audio, section audio, .section audio, .body embed, section embed, .section embed, .body object, section object, .section object, .body canvas, section canvas, .section canvas, .body svg, section svg, .section svg, .body iframe, section iframe, .section iframe, .admonition img, .figure img, .body table.docutils td img, .body table.docutils th img, .body blockquote > div > p img, .admonition video, .figure video, .body table.docutils td video, .body table.docutils th video, .body blockquote > div > p video, .admonition audio, .figure audio, .body table.docutils td audio, .body table.docutils th audio, .body blockquote > div > p audio, .admonition embed, .figure embed, .body table.docutils td embed, .body table.docutils th embed, .body blockquote > div > p embed, .admonition object, .figure object, .body table.docutils td object, .body table.docutils th object, .body blockquote > div > p object, .admonition canvas, .figure canvas, .body table.docutils td canvas, .body table.docutils th canvas, .body blockquote > div > p canvas, .admonition svg, .figure svg, .body table.docutils td svg, .body table.docutils th svg, .body blockquote > div > p svg, .admonition iframe, .figure iframe, .body table.docutils td iframe, .body table.docutils th iframe, .body blockquote > div > p iframe {
  text-decoration: none;
}
.body hr, section hr, .section hr, .admonition hr, .figure hr, .body table.docutils td hr, .body table.docutils th hr, .body blockquote > div > p hr {
  border: none;
  border-top: 1px solid #43c0ff;
}

.body, section, .section {
  margin-bottom: 2.5rem;
}

.body pre {
  padding: 0.5rem;
}
.body ol ol.arabic {
  list-style-type: decimal;
}
.body ol ol.upperalpha {
  list-style-type: upper-alpha;
}
.body ol ol.loweralpha {
  list-style-type: lower-alpha;
}
.body ul.pros li::marker {
  content: "+ ";
  color: #00d660;
  font-size: 120%;
}
.body ul.cons li::marker {
  content: "- ";
  color: #ff5b5b;
  font-size: 120%;
}
.body dl dt:not(:first-child), .body dl dd {
  margin-top: 0.5rem;
}
.body dt {
  font-weight: bolder;
  color: #a02ffd;
}
.body dd {
  padding-left: 2rem;
}
.body blockquote {
  padding: 1rem;
  border-top: 1px solid #a02ffd;
  border-bottom: 1px solid #a02ffd;
  margin: 0 2rem;
  font-style: italic;
  color: #a02ffd;
}
.body blockquote > div > p {
  text-align: center;
}
.body blockquote .attribution {
  text-align: right;
}
.body table.docutils {
  width: 100%;
}
.body table.docutils > thead {
  border-bottom: 1px solid #9addff;
}
.body table.docutils > tfoot {
  border-top: 1px solid #9addff;
}
.body table.docutils > tbody > tr, .body table.docutils > tr {
  border-top: 0.5px solid #9addff;
  border-bottom: 0.5px solid #9addff;
}
.body table.docutils td, .body table.docutils th {
  padding: 0.5rem 1rem;
}
.body table.docutils th {
  font-weight: bolder;
}

.figure {
  padding: 1rem;
  border-top: 0.5px solid #9addff;
  border-bottom: 0.5px solid #9addff;
  text-align: center;
}
.figure > .image-reference, .figure > .image-reference img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.figure > p {
  text-align: center;
}

.caption {
  font-weight: bolder;
}

.math {
  font-size: 150%;
  line-height: 66.6667%;
}

.admonition {
  padding: 1rem;
  border-left: 1px solid #43c0ff;
  background-color: #e1f1ff;
}

.admonition-title {
  font-family: "Modern Love", sans-serif;
  font-size: 120%;
  break-after: avoid;
}

.attention, .warning, .important, .caution {
  border-left-color: #ffc000;
  background-color: #fff5e1;
}

.danger {
  border-left-color: #ff5b5b;
  background-color: #ffe1e1;
}

.tip, .hint {
  border-left-color: #00d660;
  background-color: #e0ffee;
}

span.brackets::before, a.brackets::before {
  content: "[";
}
span.brackets::after, a.brackets::after {
  content: "]";
}

dl.footnote {
  position: relative;
}
dl.footnote > dt {
  position: absolute;
  width: 3rem;
  padding-right: 0.5rem;
  text-align: right;
}
dl.footnote > dd {
  padding-left: 3rem;
}

input {
  min-height: 36px;
  padding: 0 0.5rem;
  border: 1px solid #43c0ff;
  background-color: white;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: #000224;
}
input:focus {
  position: relative;
  outline: none;
  box-shadow: 0 0 0 2px #9ddeff;
  z-index: 150;
}

button, a.button, input[type=reset], input[type=button], input[type=submit] {
  -webkit-appearance: button;
  display: flex;
  align-items: center;
  min-height: 36px;
  background-color: #78d2ff;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: #000224;
  padding: 0 1rem;
  border: none;
  cursor: pointer;
  user-select: none;
}
button:hover, button:focus, a.button:hover, a.button:focus, input[type=reset]:hover, input[type=reset]:focus, input[type=button]:hover, input[type=button]:focus, input[type=submit]:hover, input[type=submit]:focus {
  background-color: #43c0ff;
  color: #000224;
  outline: none;
}
button > i.fas, a.button > i.fas, input[type=reset] > i.fas, input[type=button] > i.fas, input[type=submit] > i.fas {
  width: 20px;
  font-size: 150%;
}

button:focus, a.button:focus {
  position: relative;
  outline: none;
  box-shadow: 0 0 0 2px #9ddeff;
  z-index: 150;
}

a.button {
  color: #000224;
  text-decoration: none;
}

.navbar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 48px;
  border-bottom: 1px solid #43c0ff;
  background-color: white;
  z-index: 100;
  user-select: none;
}
.navbar > .container {
  height: 100%;
  display: flex;
  align-items: center;
}

.navbar > .container > button, .navbar > .container > a {
  height: 100%;
  background-color: transparent;
}
.navbar > .container > button:hover, .navbar > .container > a:hover {
  background-color: #daf3ff;
}
.navbar > .container > .navbar-title {
  padding: 0 1rem;
  font-size: 135%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.navbar > .container > .search {
  height: 100%;
  margin-left: auto;
  padding: 5px;
}

.search {
  display: flex;
  width: 300px;
}
.search > input[type=text] {
  width: 100%;
}
.search > input[type=submit] {
  margin-left: 5px;
}

.sidebar > .logo img {
  display: block;
  margin: auto;
}

.sidebar > .sidebar-block > h1, .sidebar > .sidebar-block > h2, .sidebar > .sidebar-block > h3, .sidebar > .sidebar-block > h4, .sidebar > .sidebar-block > h5, .sidebar > .sidebar-block > h6 {
  margin-bottom: 0.5rem;
}
.sidebar > .sidebar-block ul {
  margin-top: 0.5rem;
  list-style-type: square;
  padding-left: 1rem;
}
.sidebar > .sidebar-block ul li::marker {
  color: #43c0ff;
  font-size: 120%;
}
.sidebar > .sidebar-block ul li + li {
  margin-top: 0.5rem;
}

html {
  background-color: white;
  font-family: "Short Stack Ext", "Short Stack", sans-serif;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.5;
  color: #000224;
}

body {
  display: flex;
  min-height: 100vh;
  padding-top: 48px;
  flex-direction: column;
  overflow: hidden scroll;
}

.container {
  margin: 0 auto;
  width: 100%;
  max-width: 1080px;
}

.page-footer {
  background-color: #cde8ff;
  margin-top: auto;
  padding: 1.5rem 1.5rem 3.5rem;
  text-align: center;
}

.main-content {
  padding: 1.5rem 0;
}

.document {
  width: 100%;
  padding: 0 1.5rem;
}

.sidebar-overlay {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(67, 192, 255, 0.788);
  z-index: 50;
}
.sidebar-overlay.hidden {
  display: none;
}

.sidebar {
  position: absolute;
  top: 48px;
  left: 0;
  bottom: 0;
  width: 100%;
  max-width: 270px;
  padding: 1.5rem 1.5rem;
  border-right: 1px solid #43c0ff;
  background-color: white;
  overflow: hidden visible;
}
.sidebar > .sidebar-block {
  margin-top: 1.5rem;
}
.sidebar > .sidebar-block:first-child {
  margin: 0;
}

@media screen and (min-width: 1080px) {
  .main-content {
    display: flex;
    width: 810px;
  }
  .main-content > div {
    flex: none;
  }

  .sidebar-overlay {
    position: static;
    background-color: transparent;
  }
  .sidebar-overlay.hidden {
    display: block;
  }

  .sidebar {
    position: static;
    width: 270px;
    height: 100%;
    padding: 0 1.5rem;
    overflow: hidden;
  }

  .sidebar-toggler {
    display: none;
  }
}
@media print {
  html {
    background-color: transparent;
    font-size: 12px;
  }

  .navbar, .sidebar-overlay, .headerlink, .related, .page-footer {
    display: none;
  }

  body, .document, .main-content {
    padding: 0;
  }
}
