html {
  min-height: 100%;
  height: 100%;
  max-width: 100%;
  margin: 0;
  overflow-x: clip;
  background-color: #fff;
  color: #222;
}

:root {
  --tg-pagella: "tgpagella", "TeX Gyre Pagella", "serif";
  --font-size: 18pt;
}

body {
  font-family: var(--tg-pagella), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  width: 100%;
  display: flex;
  font-size: var(--font-size);
  overflow-x: clip;
  background-color: #fff;
  color: #222;
  margin: 0;
  align-items: stretch;
  min-height: 100vh;
}
body.sans-serif {
  --tg-pagella: "";
  --font-size: 14pt;
}
body.show-equations span.reasoning-step .as-written {
  display: inline;
}
body.show-equations span.reasoning-step .alternate {
  display: none;
}
body span.reasoning-step .as-written {
  display: none;
}
body span.reasoning-step .alternate {
  display: inline;
}
body .footnote-back {
  padding-left: 0.5em;
}

article {
  text-align: justify;
  margin: 0 auto;
}

.main {
  max-width: 100ch;
  width: 100%;
  margin: 0px auto 0px auto;
  flex-grow: 1;
  padding: 2ch;
  padding-top: 48px;
  box-sizing: border-box;
}
.main div#title h2 {
  display: none;
}
.main div#post-toc-container aside#toc {
  display: none;
}
.main div#post-toc-container aside#toc a[href].header-link span {
  display: none;
}
.main div#post-toc-container article {
  text-align: justify;
  grid-column: 2;
  width: 100%;
  line-height: 1.3;
}
.main div#post-toc-container article a[href].header-link {
  color: black;
  cursor: default;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.main div#post-toc-container article a[href].header-link:hover {
  text-decoration: none !important;
  background-color: white !important;
}
.main div#post-toc-container article a[href].header-link:hover span {
  display: inline-block;
}
.main div#post-toc-container article a[href].header-link.hover-highlight {
  background-color: white !important;
}
.main div#post-toc-container article a[href].header-link span {
  display: none;
  font-size: 12pt;
  margin-left: 1em;
  cursor: pointer;
}
.main div#post-info {
  font-style: italic;
  line-height: 1.2;
  padding-left: 1em;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
  border-left: 5px dashed #64748b;
}

div.warning {
  padding: 1em;
  margin-top: 1em;
  margin-bottom: 1em;
  box-shadow: 2px 2px 6px black;
  border-radius: 10px;
  background-color: #fef08a;
}

div.asides {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}
div.asides * {
  margin: 0;
}

figure.wraparound {
  float: right;
  width: auto;
  margin-left: 2em;
}

figure {
  overflow-x: auto;
  overflow-y: clip;
  margin: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
figure figcaption {
  margin-top: 0.3em;
  display: inline-block;
}
figure p {
  margin: 0;
}

ol, ul {
  padding-left: 1.2em;
}
ol li, ul li {
  margin-top: 5px;
  margin-bottom: 5px;
}
ol li p, ul li p {
  margin-top: 10px;
  margin-bottom: 10px;
}

span.katex {
  font-size: 1.135em;
}

span.abbrev {
  text-decoration: 2px dotted underline;
}

.katex-display > span.katex {
  white-space: normal;
}

div.mathpar {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  gap: 1em;
}
div.mathpar > figure {
  max-width: 33%;
  padding: 0.75em;
  width: auto !important;
}
div.mathpar .diagram-container {
  width: unset;
}

.diagram-container > img {
  max-width: 100%;
}

div.columns blockquote, div.columns details.blockquote {
  padding-right: 1em;
  padding-left: 1em;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
  border: 0;
}

code, pre, .sourceCode {
  font-family: "Iosevka", "Fantasque Sans Mono", Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;
  font-weight: 500;
}

div.sourceCode, pre {
  background-color: #fff;
  color: #222;
  flex-grow: 0;
  padding: 1em;
  margin-top: 1em;
  margin-bottom: 1em;
  box-shadow: 2px 2px 6px black;
  border-radius: 10px;
  overflow-x: auto;
  line-height: 1.2;
}
div.sourceCode code, pre code {
  display: block;
}
div.sourceCode > pre, pre > pre {
  padding: unset;
  margin-top: unset;
  margin-bottom: unset;
  box-shadow: unset;
  margin: 0;
  overflow-y: clip;
}

p > code {
  white-space: nowrap;
}

blockquote, details.blockquote {
  padding: 1em;
  margin-top: 1em;
  margin-bottom: 1em;
  box-shadow: 2px 2px 6px black;
  border-radius: 10px;
  background-color: #f3e8ff;
  margin-left: 0;
  margin-right: 0;
}
blockquote h2, details.blockquote h2 {
  margin-top: 0;
}

table {
  margin: auto;
  border-collapse: collapse;
}
table td, table th {
  text-align: center;
  padding: 0px 1em 0px 1em;
}

@media only screen and (max-width: 450px) {
  body > header div#logo {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
  }
  body > header nav {
    display: none;
  }
}
@media only screen and (min-width: 1500px) {
  .narrow-only {
    display: none !important;
  }

  .main {
    max-width: 100%;
    padding: 0;
    padding-bottom: 0.4em;
  }
  .main > div#title {
    font-size: 15pt;
    margin-top: 0.5em;
    margin-bottom: 1em;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .main > div#title h1, .main > div#title h2 {
    margin: 0;
  }
  .main > div#title h2 {
    font-style: italic;
    font-weight: normal;
    display: block;
    z-index: 1;
  }
  .main div#post-toc-container {
    display: grid;
    grid-template-columns: 0.5fr 2fr 0.5fr;
  }
  .main div#post-toc-container aside#toc {
    display: block !important;
    margin-right: 1em;
  }
  .main div#post-toc-container aside#toc h3 {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .main div#post-toc-container aside#toc div#toc-container {
    box-sizing: border-box;
    overflow-x: hidden;
    position: sticky;
    top: 2em;
    overflow-y: auto;
    max-height: 90vh;
    bottom: 2em;
    padding-right: 1em;
    display: flex;
    flex-direction: column;
    gap: 0.5em;
    width: 100%;
  }
  .main div#post-toc-container aside#toc div#toc-container > hr {
    margin-top: 0.25em;
    margin-bottom: 0.25em;
    width: 100%;
    border: none;
    border-bottom: 2px solid #94a3b8;
  }
  .main div#post-toc-container aside#toc div#toc-container button {
    display: none;
  }
  .main div#post-toc-container aside#toc div#toc-container ul {
    border-left: 2px solid #94a3b8;
    list-style-type: none;
    padding-left: 1em;
    margin-top: 0;
    margin-bottom: 0;
  }
  .main div#post-toc-container aside#toc div#toc-container ul a {
    text-decoration: none;
  }
  .main div#post-toc-container aside#toc div#toc-container ul a:hover {
    text-decoration: underline;
  }
  .main div#post-toc-container article {
    max-width: 72ch;
    margin-top: -100px;
    margin: auto;
    text-align: justify;
  }
  .main div.columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1em;
  }
}
details {
  margin-top: 1em;
  margin-bottom: 1em;
}

details:not(.text) {
  border-left: 5px solid #00bcd4;
  padding-left: 1em;
}

details.text {
  border: 3px solid #b2ebf2;
  transition: border 0.3s ease-in-out;
}
details.text > summary {
  list-style-type: none;
  background-color: #b2ebf2;
  border-left: 1em solid #b2ebf2;
  padding-top: 0.25em;
  padding-bottom: 0.25em;
  padding-right: 1em;
  transition: background-color 0.3s ease-in-out, border-left 0.3s ease-in-out;
  cursor: pointer;
}
details.text > summary:hover::after {
  text-decoration: underline;
}
details.text > summary::after {
  content: "read more";
  font-style: italic;
  margin-left: 0.223em;
  color: black;
}
details.text > summary > :nth-child(1) {
  margin-top: 0;
}
details.text[open] {
  border: 3px solid #80deea;
}
details.text[open] summary {
  border-left: 1em solid #80deea;
  background-color: #80deea;
}
details.text[open] summary::after {
  content: "read less";
}
details.text:not([open]):hover {
  border: 3px solid #80deea;
}
details.text:not([open]) summary:hover {
  border-left: 1em solid #80deea;
  background-color: #80deea;
}
details.text:not([open]) summary:hover::after {
  text-decoration: underline;
}
details.text > *:not(summary) {
  margin-left: 1em;
  margin-right: 1em;
}

code.kw, span.kw {
  color: #8A1060;
}

/* Keyword */
code.dt, span.dt {
  color: #0054F4;
}

/* DataType */
code.dv, span.dv {
  color: #BB3B13;
}

/* DecVal */
code.bn, span.bn {
  color: #BB3B13;
}

/* BaseN */
code.fl, span.fl {
  color: #BB3B13;
}

/* Float */
code.ch, span.ch {
  color: #207B1D;
}

/* Char */
code.st, span.st {
  color: #207B1D;
}

/* String */
code.co, span.co {
  color: #7F848E;
}

/* Comment */
code.ot, span.ot {
  color: #207B1D;
}

/* Other */
code.al, span.al {
  color: #ff0000;
}

/* Alert */
code.fu, span.fu {
  color: #222;
}

/* Function */
code.er, span.er {
  color: #ff0000;
}

/* Error */
code.wa, span.wa {
  color: #60a0b0;
}

/* Warning */
code.cn, span.cn {
  color: #BB3B13;
}

/* Constant */
code.sc, span.sc {
  color: #DEB468;
}

/* SpecialChar */
code.vs, span.vs {
  color: #0054F4;
}

/* VerbatimString */
code.ss, span.ss {
  color: #207B1D;
}

/* SpecialString */
code.va, span.va {
  color: #222;
}

/* Variable */
code.cf, span.cf {
  color: #8A1060;
}

/* ControlFlow */
code.op, span.op {
  color: #207B1D;
}

/* Operator */
code.pp, span.pp {
  color: #BB3B13;
}

/* Preprocessor */
code.at, span.at {
  color: #207B1D;
}

/* Attribute */
code.do, span.do {
  color: #d52753;
}

/* Documentation */
code.an, span.an {
  color: #d52753;
}

/* Annotation */
code.cv, span.cv {
  color: #d52753;
}

/* CommentVar */
.typeTooltip {
  position: absolute;
  z-index: 100;
  font-size: 0.8em;
  color: #222;
  background: #fff;
}

div.profile {
  border-top: 2px solid #444;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-start;
  gap: 1em;
}
div.profile.pfp-left {
  flex-direction: row;
}
div.profile.pfp-right {
  flex-direction: row-reverse;
}
div.profile .profile-pfp {
  width: 20%;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  justify-content: center;
}
div.profile .profile-pfp p {
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  justify-content: center;
  width: 20%;
}
div.profile .profile-pfp p img {
  width: 128px;
  height: 128px;
  clip-path: url(#squircle);
  margin-bottom: 0.25em;
}
div.profile .profile-pfp p p {
  margin: 0;
}
div.profile .profile-pfp p .profile-name {
  font-size: 19pt;
}
div.profile .profile-pfp p .profile-pronouns {
  font-style: italic;
}

.author-list {
  margin-top: 0.5em;
  white-space: initial;
  font-size: 0.8em;
  font-style: italic;
}

@font-face {
  font-family: "tgpagella";
  font-display: swap;
  font-weight: 400;
  font-stretch: normal;
  font-style: normal;
  src: url("/static/otf/texgyrepagella-regular.otf") format("opentype");
}
@font-face {
  font-family: "tgpagella";
  font-display: swap;
  font-weight: 700;
  font-stretch: normal;
  font-style: normal;
  src: url("/static/otf/texgyrepagella-bold.otf") format("opentype");
}
@font-face {
  font-family: "tgpagella";
  font-display: swap;
  font-weight: 400;
  font-stretch: normal;
  font-style: italic;
  src: url("/static/otf/texgyrepagella-italic.otf") format("opentype");
}
@font-face {
  font-family: "tgpagella";
  font-display: swap;
  font-weight: 700;
  font-stretch: normal;
  font-style: italic;
  src: url("/static/otf/texgyrepagella-bolditalic.otf") format("opentype");
}


nav {
    margin-top: 0;
    padding: 0 20px 16px 20px;
    min-width: 312px;
    max-width: 312px;
    width: 312px;
    color: #fff;

    font-family: 'Muli', sans-serif;
    text-align: justify;
    min-height: 100vh;
    background-color: #111;
}

nav a {
    color: #d0d;
    text-decoration: none;
}

nav h1 {
    text-align: center;

    font-size: 1.8571em; /* 26px */
    line-height: 1.2308em; /* 32px */
    margin-top: 60px;  margin-bottom: 80px;
}


nav h1 a {
    color: #fff;
}

nav p {
    font-size: 11pt; /* 14px */
    line-height: 1.1429em; /* 16px */
    margin: 0 0 1.1429em 0;
}

nav h2 {
    font-size: 1em; /* 14px */
    line-height: 1.1429em; /* 16px */
    margin: 0;
}

nav ul {
    padding-left: 24px;
    font-size: 1em; /* 14px */
    line-height: 1.1429em; /* 16px */
    margin: 0 0 1.1429em 0;
    list-style-type: square;
}


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