@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  border: 0;
  border-spacing: 0;
  outline: 0;
  vertical-align: top;
  text-decoration: none;
  text-align: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  font-family: inherit; }

html {
  display: block;
  font-family: 'Noto Sans', 'Droid Sans', sans-serif;
  background-color: #ffffff;
  color: #2d2d2d;
  text-align: left;
  text-wrap: pretty;
  font-size: 14pt;
  font-weight: normal;
  font-style: normal;
  max-width: 53rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
  margin-left: 5%;
  margin-right: 20%; }
  @media screen and (max-width: 63rem) {
    html {
      margin-left: 1rem;
      margin-right: 1rem; } }
@page {
  margin-top: 5em;
  margin-bottom: 5em; }

.page-break {
  break-before: page; }

.body, .document {
  margin-bottom: 2em; }

p, blockquote, ol, dl, ul, table, .line-block {
  display: block;
  margin-bottom: 1em; }

p + ul, p + ol {
  break-before: avoid; }

p:before, blockquote:before, .line-block:before {
  content: "";
  width: 10rem;
  display: block;
  overflow: hidden; }

p:first-child:before {
  display: none; }

p + p {
  margin-top: -0.5em; }

li p, li ul, li ol, li pre {
  margin-bottom: 0.5em; }

p + p.rubric, p.rubric + p {
  margin-top: 0; }

li {
  display: list-item;
  break-inside: avoid; }

ul {
  list-style: square outside none; }

ul li {
  margin-left: 1em; }

ol {
  list-style: decimal outside none; }

ol li {
  margin-left: 1.25em; }

dd {
  display: block;
  margin-left: 1em;
  margin-bottom: 1em; }

a {
  color: #B12D6D;
  font-weight: bold;
  cursor: pointer; }

a * {
  color: #B12D6D !important; }

blockquote {
  margin-left: 1em;
  margin-right: 1em; }

b, strong, dt {
  font-weight: bold; }

i, em, cite {
  font-style: italic; }

u {
  text-decoration: underline; }

.line {
  display: block; }

b, strong, i, em, cite, u, span, a, tt, code, kbd, var {
  vertical-align: baseline; }

sup {
  vertical-align: super; }

sub {
  vertical-align: sub; }

h1, h2, h3, h4, h5, h6, .rubric {
  display: block;
  clear: left;
  font-family: 'Roboto Condensed', 'Roboto', sans-serif;
  font-stretch: condensed;
  font-weight: bold;
  font-size: 18pt;
  line-height: 0.95em;
  margin-bottom: 1rem;
  margin-top: 1rem;
  break-after: avoid; }

hr {
  height: 1px;
  background-color: #e8e8e8;
  margin: 1em; }

h1 {
  font-size: 22pt;
  border-bottom: 1px solid #2d2d2d; }

h1 *, h2 *, h3 *, h4 *, h5 *, h6 *, .rubric * {
  color: #000000 !important; }

h1.title {
  font-size: 28pt;
  color: #000000; }

h2.subtitle {
  margin-top: -0.9rem; }

h3, h4, h5, h6, .rubric {
  font-style: italic; }

h1 a.toc-selfref:hover:after, h2 a.toc-selfref:hover:after,
h3 a.toc-selfref:hover:after, h4 a.toc-selfref:hover:after,
h5 a.toc-selfref:hover:after, h6 a.toc-selfref:hover:after {
  content: "∞";
  margin-left: 0.1em;
  color: #777777; }

tt, code, kbd, var, pre {
  font-family: 'Iosevka', 'Consolas', 'Inconsolata', monospace;
  color: #000000; }

pre {
  display: block;
  white-space: pre;
  overflow: auto;
  border-left: 3px solid #e8e8e8;
  padding-left: 0.5em;
  margin-bottom: 1em;
  min-width: min-content;
  min-width: -moz-min-content;
  min-width: -webkit-min-content; }

tt.literal {
  text-decoration: underline 3px solid #e8e8e8; }

.formula {
  vertical-align: baseline; }

.formula sup {
  vertical-align: 80%; }

.formula sub {
  vertical-align: -20%; }

.code .comment {
  color: #2d2d2d;
  font-weight: bold; }

.code .prompt {
  color: #777777; }

.code .keyword {
  color: #859900;
  font-weight: bold; }

.code .word {
  color: #859900;
  font-weight: bold; }

.code .literal {
  color: #2AA198;
  font-weight: bold; }

.code .symbol {
  color: #2AA198;
  font-size: inherit;
  line-height: inherit; }

.code .function {
  color: #268BD2;
  font-weight: bold; }

.code {
  font-variant-ligatures: none; }

.contents {
  float: right;
  clear: right;
  margin-bottom: 1em;
  margin-left: 1em;
  margin-right: -20%;
  background: #ffffff;
  box-shadow: 0 0 0 0.8em #ffffff;
  max-width: 60%; }
  @media screen and (max-width: 63rem) {
    .contents {
      margin-right: 0; } }
  @media screen and (max-width: 55rem) {
    .contents {
      width: auto;
      float: none;
      margin-left: auto;
      margin-right: auto;
      max-width: 100%; } }
.contents .topic-title {
  display: none; }

.contents li {
  color: #B12D6D; }

.contents > ul {
  border-left: 3px solid #e8e8e8;
  display: inline-block; }

.contents > ul > li {
  margin-left: 0.5em;
  list-style: none; }

.contents ul {
  margin-bottom: 0; }

.contents ul ul ul li {
  margin-left: 0;
  list-style: none; }

table {
  display: table; }

thead {
  display: table-header-group; }

colgroup {
  display: table-column-group; }

col {
  display: table-column; }

tbody {
  display: table-row-group; }

tr {
  display: table-row; }

th, td {
  display: table-cell; }

th {
  font-weight: bold;
  white-space: nowrap; }

table.align-center {
  margin-left: auto;
  margin-right: auto; }

table.text-right td,
table.text-right th {
  text-align: right; }

.docutils thead th {
  border-bottom: 1px solid #2d2d2d; }

.docutils th.stub {
  border-right: 1px solid #2d2d2d;
  padding-right: 0.1em; }

.docutils td {
  border-top: 1px solid #e8e8e8; }

.docutils th + td, th + th, td + td,
.docinfo th + td, th + th, td + td {
  padding-left: 0.5em; }

.docutils tr + tr *, .docinfo tr + tr * {
  padding-top: 0.1em; }

.option-group {
  white-space: nowrap; }

.field-list th, .field-list td {
  border: none; }

.field-list th, .docinfo th {
  text-align: right; }

.field-list th:last-child,
.docinfo th:last-child {
  text-align: left; }

:not(.image-reference):not(.figure) > img:not(.mfp-img),
:not(.figure) > .image-reference,
:not(.figure) > video, .figure {
  float: left;
  display: block;
  box-sizing: border-box;
  margin-bottom: 1em;
  margin-right: 1em;
  max-width: 100%;
  height: auto; }
  @media screen and (max-width: 55rem) {
    :not(.image-reference):not(.figure) > img:not(.mfp-img),
    :not(.figure) > .image-reference,
    :not(.figure) > video, .figure {
      width: auto;
      float: none;
      margin-left: auto;
      margin-right: auto;
      max-width: 100%; } }
.image-reference > img, .figure > img, .figure > video {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto; }

.image-reference > img {
  border: 1px solid #ffffff;
  outline: 3px dashed #B12D6D; }

:not(.image-reference):not(.figure) > img.align-left,
:not(.figure) > .image-reference.align-left,
:not(.figure) > video.align-left, .figure.align-left {
  clear: left;
  max-width: 48%;
  max-width: calc(50% - 0.5em); }
  @media screen and (max-width: 55rem) {
    :not(.image-reference):not(.figure) > img.align-left,
    :not(.figure) > .image-reference.align-left,
    :not(.figure) > video.align-left, .figure.align-left {
      width: auto;
      float: none;
      margin-left: auto;
      margin-right: auto;
      max-width: 100%; } }
:not(.image-reference):not(.figure) > img.align-right,
:not(.figure) > .image-reference.align-right,
:not(.figure) > video.align-right, .figure.align-right {
  float: right;
  clear: right;
  margin-right: -20%;
  background: #ffffff;
  box-shadow: 0 0 0 0.8em #ffffff;
  margin-left: 1em;
  max-width: 60%; }
  @media screen and (max-width: 63rem) {
    :not(.image-reference):not(.figure) > img.align-right,
    :not(.figure) > .image-reference.align-right,
    :not(.figure) > video.align-right, .figure.align-right {
      margin-right: 0; } }
  @media screen and (max-width: 63rem) {
    :not(.image-reference):not(.figure) > img.align-right,
    :not(.figure) > .image-reference.align-right,
    :not(.figure) > video.align-right, .figure.align-right {
      max-width: 48%;
      max-width: calc(50% - 0.5em); } }
  @media screen and (max-width: 55rem) {
    :not(.image-reference):not(.figure) > img.align-right,
    :not(.figure) > .image-reference.align-right,
    :not(.figure) > video.align-right, .figure.align-right {
      width: auto;
      float: none;
      margin-left: auto;
      margin-right: auto;
      max-width: 100%; } }
:not(.image-reference):not(.figure) > img.align-center,
:not(.figure) > .image-reference.align-center,
:not(.figure) > video.align-center, .figure.align-center {
  float: none;
  margin-left: auto;
  margin-right: auto; }

.figure .caption, .figure .legend {
  font-style: italic;
  margin-top: 0.25em;
  margin-bottom: 0.25em;
  font-size: smaller;
  text-align: center;
  min-width: 100%;
  width: min-content;
  width: -moz-min-content;
  width: -webkit-min-content; }

.figure.embed {
  max-width: none; }

.figure.align-left .legend {
  text-align: left; }

.figure.align-right .legend {
  text-align: right; }

.clear {
  clear: both !important; }

.border {
  border: 3px solid #e8e8e8; }

.half-width {
  width: 48%;
  width: calc(50% - 0.5em); }
  @media screen and (max-width: 55rem) {
    .half-width {
      width: auto;
      float: none;
      margin-left: auto;
      margin-right: auto;
      max-width: 100%; } }
.half-width.align-left {
  float: left;
  clear: left; }

.align-left + .half-width {
  float: right;
  clear: right;
  margin-right: 0; }

.full-width {
  width: 100%;
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important; }

.container.center {
  display: flex;
  align-content: center;
  justify-content: space-evenly; }

.gallery {
  display: inline-block;
  margin-bottom: 1em;
  margin-right: -20%; }
  @media screen and (max-width: 63rem) {
    .gallery {
      margin-right: 0; } }
.gallery:last-child {
  margin-bottom: 0; }

.gallery .image * {
  margin: 0; }

.gallery .image a {
  display: inline-block; }

.gallery .image a img {
  border: 0;
  outline: 0;
  max-width: 100%; }

.gallery .image {
  font-size: smaller;
  text-align: center; }

.gallery .image .imagewrap {
  vertical-align: middle;
  line-height: 0; }

.gallery .image table {
  border-spacing: 0.25em; }

.gallery .image {
  float: left;
  margin: -0.25em 1em 1em -0.25em; }

.admonition {
  float: right;
  clear: right;
  margin-bottom: 1em;
  margin-left: 1em;
  margin-right: -20%;
  padding-left: 0.5em;
  background: #ffffff;
  box-shadow: 0 0 0 0.8em #ffffff;
  border-left: 3px solid #e8e8e8;
  font-style: italic;
  max-width: 60%; }
  @media screen and (max-width: 63rem) {
    .admonition {
      margin-right: 0; } }
  @media screen and (max-width: 55rem) {
    .admonition {
      width: auto;
      float: none;
      margin-left: auto;
      margin-right: auto;
      max-width: 100%; } }
.admonition-title {
  font-weight: bold; }

.admonition .last {
  margin-bottom: 0; }

.warning {
  color: #000; }

.warning .admonition-title {
  text-transform: uppercase; }

.highlights, .epigraph, .pull-quote {
  font-size: larger;
  margin-bottom: 1rem; }

.highlights {
  color: #000; }

.pull-quote {
  font-family: 'Noto Serif', 'Droid Serif', serif; }

.footnote:not(:last-child), .footnote p {
  margin-bottom: 0; }

.footnote + .footnote td {
  border: 0; }

footer, nav {
  font-family: 'Source Sans Pro', sans-serif;
  clear: both; }

footer, .pagedate {
  font-style: italic;
  display: block;
  color: #777777; }

.pagedate {
  float: right;
  text-align: right; }

nav {
  margin-bottom: 2em; }
  @media print {
    nav {
      display: none; } }
nav > div > b {
  display: none; }

nav .section-list {
  font-size: 22pt;
  line-height: 0.9em; }

nav .crumbs {
  margin-left: 2em;
  font-size: 10pt; }

nav a {
  font-weight: normal;
  font-style: italic;
  white-space: nowrap; }

nav a + a {
  margin-left: 0.1em; }

nav a.current, nav a.current * {
  color: #2d2d2d !important; }
