@charset "UTF-8";
/*
@use "theme";
@use "colors";
*/
.highlight .hll {
  background-color: #ffc;
}

.highlight .c {
  color: #999;
} /* Comment */
.highlight .err {
  color: #a00;
  background-color: #faa;
} /* Error */
.highlight .k {
  color: #069;
} /* Keyword */
.highlight .o {
  color: #555;
} /* Operator */
.highlight .cm {
  color: #09f;
  font-style: italic;
} /* Comment.Multiline */
.highlight .cp {
  color: #099;
} /* Comment.Preproc */
.highlight .c1 {
  color: #999;
} /* Comment.Single */
.highlight .cs {
  color: #999;
} /* Comment.Special */
.highlight .gd {
  background-color: #fcc;
  border: 1px solid #c00;
} /* Generic.Deleted */
.highlight .ge {
  font-style: italic;
} /* Generic.Emph */
.highlight .gr {
  color: #f00;
} /* Generic.Error */
.highlight .gh {
  color: #030;
} /* Generic.Heading */
.highlight .gi {
  background-color: #cfc;
  border: 1px solid #0c0;
} /* Generic.Inserted */
.highlight .go {
  color: #aaa;
} /* Generic.Output */
.highlight .gp {
  color: #009;
} /* Generic.Prompt */
/* Generic.Strong */
.highlight .gu {
  color: #030;
} /* Generic.Subheading */
.highlight .gt {
  color: #9c6;
} /* Generic.Traceback */
.highlight .kc {
  color: #069;
} /* Keyword.Constant */
.highlight .kd {
  color: #069;
} /* Keyword.Declaration */
.highlight .kn {
  color: #069;
} /* Keyword.Namespace */
.highlight .kp {
  color: #069;
} /* Keyword.Pseudo */
.highlight .kr {
  color: #069;
} /* Keyword.Reserved */
.highlight .kt {
  color: #078;
} /* Keyword.Type */
.highlight .m {
  color: #f60;
} /* Literal.Number */
.highlight .s {
  color: #d44950;
} /* Literal.String */
.highlight .na {
  color: #4f9fcf;
} /* Name.Attribute */
.highlight .nb {
  color: #366;
} /* Name.Builtin */
.highlight .nc {
  color: #0a8;
} /* Name.Class */
.highlight .no {
  color: #360;
} /* Name.Constant */
.highlight .nd {
  color: #99f;
} /* Name.Decorator */
.highlight .ni {
  color: #999;
} /* Name.Entity */
.highlight .ne {
  color: #c00;
} /* Name.Exception */
.highlight .nf {
  color: #c0f;
} /* Name.Function */
.highlight .nl {
  color: #99f;
} /* Name.Label */
.highlight .nn {
  color: #0cf;
} /* Name.Namespace */
.highlight .nt {
  color: #2f6f9f;
} /* Name.Tag */
.highlight .nv {
  color: #033;
} /* Name.Variable */
.highlight .ow {
  color: #000;
} /* Operator.Word */
.highlight .w {
  color: #bbb;
} /* Text.Whitespace */
.highlight .mf {
  color: #f60;
} /* Literal.Number.Float */
.highlight .mh {
  color: #f60;
} /* Literal.Number.Hex */
.highlight .mi {
  color: #f60;
} /* Literal.Number.Integer */
.highlight .mo {
  color: #f60;
} /* Literal.Number.Oct */
.highlight .sb {
  color: #c30;
} /* Literal.String.Backtick */
.highlight .sc {
  color: #c30;
} /* Literal.String.Char */
.highlight .sd {
  color: #c30;
  font-style: italic;
} /* Literal.String.Doc */
.highlight .s2 {
  color: #c30;
} /* Literal.String.Double */
.highlight .se {
  color: #c30;
} /* Literal.String.Escape */
.highlight .sh {
  color: #c30;
} /* Literal.String.Heredoc */
.highlight .si {
  color: #a00;
} /* Literal.String.Interpol */
.highlight .sx {
  color: #c30;
} /* Literal.String.Other */
.highlight .sr {
  color: #3aa;
} /* Literal.String.Regex */
.highlight .s1 {
  color: #c30;
} /* Literal.String.Single */
.highlight .ss {
  color: #fc3;
} /* Literal.String.Symbol */
.highlight .bp {
  color: #366;
} /* Name.Builtin.Pseudo */
.highlight .vc {
  color: #033;
} /* Name.Variable.Class */
.highlight .vg {
  color: #033;
} /* Name.Variable.Global */
.highlight .vi {
  color: #033;
} /* Name.Variable.Instance */
.highlight .il {
  color: #f60;
} /* Literal.Number.Integer.Long */
.css .o,
.css .o + .nt,
.css .nt + .nt {
  color: #999;
}

/* Transfered from poole.css */
/* Code */
code,
pre {
  font-family: Menlo, Monaco, "Courier New", monospace;
}

code {
  padding: 0.25em 0.5em;
  font-size: 85%;
  color: #bf616a;
  background-color: #f9f9f9;
  border-radius: 3px;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  padding: 1rem;
  font-size: 0.8rem;
  line-height: 1.4;
  white-space: pre;
  white-space: pre-wrap;
  word-break: break-all;
  word-wrap: break-word;
  background-color: #f9f9f9;
}

pre code {
  padding: 0;
  font-size: 100%;
  color: inherit;
  background-color: transparent;
}

/* Gist via GitHub Pages */
.gist .gist-file {
  font-family: Menlo, Monaco, "Courier New", monospace !important;
}

.gist .markdown-body {
  padding: 15px;
}

.gist pre {
  padding: 0;
  background-color: transparent;
}

.gist .gist-file .gist-data {
  font-size: 0.8rem !important;
  line-height: 1.4;
}

.gist code {
  padding: 0;
  color: inherit;
  background-color: transparent;
  border-radius: 0;
}

/* Pygments via Jekyll */
.highlight {
  margin-bottom: 1rem;
  border-radius: 4px;
}

.highlight pre {
  margin-bottom: 0;
}

/*
 * Proof Theorem Environments
 * Based on amsthm package:
 * https://www.maths.tcd.ie/~dwilkins/LaTeXPrimer/Theorems.html and
 * https://golem.ph.utexas.edu/wiki/instiki/show/Theorems
 */
article {
  counter-reset: section subsection refno eqno;
}

h2.label:before {
  margin-right: 1em;
  content: counter(section) "  ";
  counter-increment: section;
  counter-reset: subsection refno;
}

h3.label:before {
  margin-right: 0.8em;
  content: counter(section) "." counter(subsection) "  ";
  counter-increment: subsection;
}

.claim .label:after,
.conjecture .label:after,
.corollary .label:after,
.definition .label:after,
.example .label:after,
.exercise .label:after,
.lemma .label:after,
.notation .label:after,
.note .label:after,
.problem .label:after,
.proposition .label:after,
.question .label:after,
.remark .label:after,
.theorem .label:after {
  content: " " counter(section) "." counter(refno) ".";
  counter-increment: refno;
}

.equation .label:after {
  content: "(" counter(eqno) ")";
  counter-increment: eqno;
}

.theorem, .lemma, .corollary, .proposition, .conjecture {
  font-style: italic;
  margin: 1em 0 1em;
}

.definition {
  font-style: normal;
  margin: 1em 0 1em;
}

.remark {
  font-style: normal;
  margin: 0.7em 0 0.7em;
}

.label {
  font-style: normal;
  font-weight: bold;
}

.label:after {
  content: ".";
}

.label* {
  font-style: normal;
  font-weight: bold;
}

.proof .label {
  font-style: normal;
}

.proof:after {
  content: " ■";
  text-align: right;
}

/*
 * ED SPECIAL LAYOUTS, modified
 * Copyright (c) 2016 Alex Gil.
 */
.centered {
  text-align: center;
}

.larger {
  font-size: 1.6rem;
}

.large {
  font-size: 1.4rem;
}

.small {
  font-size: 0.8rem;
}

.underline {
  text-decoration: underline;
}

div.toc {
  margin-bottom: 4rem;
}

.post .date,
.post .byline {
  font-style: italic;
  font-weight: 300;
  letter-spacing: 0;
  margin-top: -0.5rem;
}

/* Footnotes styles*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

.footnotes {
  line-height: 1.2rem;
  font-size: 0.9rem;
  letter-spacing: 0.01rem;
}

.footnotes .foot-block {
  display: inline-block;
  padding: 0 4rem 0 2rem;
  margin-bottom: 0.8rem;
  font-style: italic;
}

a.footnote {
  padding-left: 0.1rem;
  font-size: 0.66rem;
}

/*Bibliography styles*/
ol.bibliography {
  list-style-type: none;
  padding-left: 1rem;
  text-indent: -1rem;
}

:root {
  --fano-accent: #013220;
  --fano-accent-soft: #014000;
  --fano-ink: #1f2328;
  --fano-muted: #5f6874;
  --fano-paper: #ffffff;
  --fano-panel: #f3f3f1;
  --fano-line: #d3d0cb;
  --fano-nav: #101214;
  --fano-nav-link: #81c3fc;
  --fano-nav-link-hover: #d9edf7;
}

html {
  background-color: #e9e7e2;
}

body {
  background-color: var(--fano-paper);
  color: var(--fano-ink);
  font-family: "Roboto", sans-serif;
  font-size: 16px;
}

a {
  color: #2f5d8c;
  text-decoration: none;
}

a:hover {
  color: var(--fano-accent);
  border-bottom: 1px var(--fano-accent) dotted;
}

img.feature {
  height: 100%;
  width: 100%;
  object-fit: contain;
}

#menu {
  background-color: var(--fano-nav) !important;
  font-size: 14px;
  padding: 0;
}

.fano-nav__inner {
  align-items: center;
  display: flex;
  width: min(1800px, 100% - 1rem);
  margin: 0 auto;
  position: relative;
}

.fano-nav__brand {
  color: #fff;
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-size: 0.88rem;
  letter-spacing: 0.04em;
  padding: 0.35rem 0;
  text-transform: uppercase;
}

.fano-nav__brand img {
  width: 28px;
  height: 28px;
  object-fit: cover;
}

.fano-nav__brand:hover,
.fano-nav__brand:focus {
  color: #fff;
}

.fano-nav__links .nav-link {
  color: var(--fano-nav-link);
  padding: 0.45rem 0.8rem;
}

.fano-nav .navbar-toggler {
  font-size: 0.9rem;
  padding: 0.2rem 0.45rem;
}

.fano-nav__links .nav-link:hover,
.fano-nav__links .nav-link:focus,
.fano-nav__links .nav-link.active {
  color: var(--fano-nav-link-hover);
  text-decoration: none;
}

.fano-titleband {
  background-color: #eee;
  border-bottom: 1px solid #ccc;
  position: sticky;
  top: 0;
  text-align: center;
  z-index: 1020;
}

.fano-titleband__inner {
  margin: 0 auto;
  padding: 0.35rem 1rem 0.6rem;
}

.fano-titleband h1 {
  font-family: Georgia, serif;
  font-size: clamp(2rem, 5vw, 2.7rem);
  font-variant: small-caps;
  margin: 0;
}

.fano-titleband h1 a,
.fano-titleband h1 a:hover {
  color: redvar(--fano-accent-soft);
}

.fano-titleband h1 a:hover {
  text-decoration: underline;
  text-decoration-color: var(--fano-accent);
}

.fano-titleband h1 a::first-letter {
  color: var(--fano-accent);
}

.fano-titleband p {
  color: var(--fano-muted);
  font-size: 0.95rem;
  font-style: italic;
  margin: 0.2rem 0 0;
}

.fano-search-shell,
.fano-content-shell {
  margin: 0 auto;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.fano-search-shell {
  max-width: 1500px;
}

.fano-search-shell {
  padding-top: 0.9rem;
}

.fano-content-shell {
  max-width: 1500px;
  overflow: visible;
  padding-bottom: 2rem;
  padding-top: 0.5rem;
}

.fano-content-shell::-webkit-scrollbar {
  display: none;
}

.fano-page-container {
  margin: 0 auto;
  max-width: 1100px;
  overflow: visible;
}

.page {
  overflow: visible;
  padding: 0;
}

.page h2,
.page h3,
.page h4 {
  color: #000;
}

.page h2 {
  border-bottom: 1px solid var(--fano-line);
  font-size: 1.45rem;
  margin: 2rem 0 1rem;
  padding-bottom: 0.4rem;
}

.page h3 {
  font-size: 1.15rem;
  font-weight: 700;
  margin: 1.25rem 0 0.75rem;
}

.page hr {
  border: 0;
  border-top: 1px solid var(--fano-line);
  margin: 2rem 0;
  opacity: 1;
}

.page footer {
  border-top: 1px solid var(--fano-line);
  color: var(--fano-muted);
  font-size: 0.95rem;
  margin-top: 2.5rem;
  padding-top: 1rem;
}

.row {
  row-gap: 1.25rem;
}

.fano-table-wrap {
  margin-left: calc(50% - 50vw);
  overflow-x: auto;
  width: 100vw;
}

.page table {
  margin-left: auto;
  margin-right: auto;
  max-width: none;
  width: max-content;
}

.feature {
  background: linear-gradient(180deg, #faf9f7 0%, #f1efea 100%);
  border: 1px solid var(--fano-line);
  border-radius: 0.35rem;
  padding: 1rem 1.1rem;
}

.feature h4 {
  color: var(--fano-accent);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-bottom: 0.75rem;
  text-transform: uppercase;
}

.feature > :last-child {
  margin-bottom: 0;
}

#x-footer {
  padding-top: 14px;
  padding-bottom: 15px;
  margin-top: 5px;
  background-color: #eee;
  border-top-style: solid;
  border-top-width: 1px;
}

.highlighted {
  background-color: #FDFF9E;
}

#x-pkginfo {
  margin-top: 25px;
  border-top: 1px solid #ccc;
  padding-top: 20px;
  margin-bottom: 15px;
}

code {
  background-color: inherit;
  border: none;
  color: #222;
  font-family: "Roboto Mono", monospace;
  padding: 0;
}

pre {
  display: flex;
  padding: 9.5px;
  margin: 0 0 0px;
  font-size: 13px;
  line-height: 1.42857143;
  background-color: #f7f6f3;
  border: 1px solid var(--fano-line);
  border-radius: 4px;
  overflow: auto;
}

dd {
  margin: 0;
}

.funcdecl > pre {
  white-space: pre-wrap;
  word-break: break-all;
  word-wrap: break-word;
}

pre .com {
  color: #006600;
}

.decl {
  position: relative;
}

.decl > a {
  position: absolute;
  top: 0px;
  right: 0px;
  display: none;
  border: 1px solid #ccc;
  border-top-right-radius: 4px;
  border-bottom-left-radius: 4px;
  padding-left: 4px;
  padding-right: 4px;
}

.decl > a:hover {
  background-color: white;
  text-decoration: none;
}

.decl:hover > a {
  display: block;
}

.navbar-default, #x-footer {
  background-color: hsl(209, 51%, 92%);
  border-color: hsl(209, 51%, 88%);
}

.navbar-default > .active > a,
.navbar-default > .active > a:hover,
.navbar-default > .active > a:focus {
  background-color: hsl(209, 51%, 88%);
}

.navbar-default > li > a:hover,
.navbar-default > li > a:focus {
  color: #000;
}

.panel-default > .panel-heading {
  color: #333;
  background-color: transparent;
}

a.permalink {
  display: none;
}

a.uses {
  display: none;
  color: #666;
  font-size: 0.8em;
}

h1:hover .permalink, h2:hover .permalink, h3:hover .permalink, h4:hover .permalink, h5:hover .permalink, h6:hover .permalink, h1:hover .uses, h2:hover .uses, h3:hover .uses, h4:hover .uses, h5:hover .uses, h6:hover .uses {
  display: inline;
}

@media (max-width: 768px) {
  .form-control {
    font-size: 16px;
  }
}
.synopsis {
  opacity: 0.87;
}

.additional-info {
  display: block;
  opacity: 0.54;
  text-transform: uppercase;
  font-size: 0.75em;
}

@media (max-width: 991px) {
  .fano-nav__inner {
    display: block;
  }
  .fano-nav__links {
    padding-bottom: 0.5rem;
  }
  .fano-nav__links .nav-link {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 768px) {
  .fano-titleband {
    position: static;
  }
  .fano-titleband__inner {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .fano-search-shell,
  .fano-content-shell {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
}
/* for tablesort */
@media (min-width: 992px) {
  th[role=columnheader]:not(.no-sort) {
    cursor: pointer;
    white-space: nowrap;
  }
  th[role=columnheader]:not(.no-sort):after {
    content: "";
    display: inline-block;
    white-space: nowrap;
    margin-bottom: 4px;
    margin-left: 3px;
    border-width: 0 4px 4px;
    border-style: solid;
    border-color: #404040 transparent;
    visibility: hidden;
    opacity: 0;
    -ms-user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
  }
  th[aria-sort=ascending]:not(.no-sort):after {
    border-bottom: none;
    border-width: 4px 4px 0;
  }
  th[aria-sort]:not(.no-sort):after {
    visibility: visible;
    opacity: 0.4;
  }
  th[role=columnheader]:not(.no-sort):hover:after {
    visibility: visible;
    opacity: 1;
  }
}

/*# sourceMappingURL=style.css.map */