@font-face {
  font-family: "ETBook";
  src: local("ETBookOT Roman"), url("/fonts/et-book-ligatures-enabled/et-book-roman-old-style-figures/etbookot-roman-webfont.woff2"), url("/fonts/et-book-ligatures-enabled/et-book-roman-old-style-figures/etbookot-roman-webfont.woff"); }

@font-face {
  font-family: "ETBook";
  src: local("ETBookOT Bold"), url("/fonts/et-book-ligatures-enabled/et-book-bold-line-figures/etbookot-bold-webfont.woff2"), url("/fonts/et-book-ligatures-enabled/et-book-bold-line-figures/etbookot-bold-webfont.woff");
  font-weight: bold; }

@font-face {
  font-family: "ETBook";
  src: local("ETBookOT Italic"), url("/fonts/et-book-ligatures-enabled/et-book-display-italic-old-style-figures/etbookot-italic-webfont.woff2"), url("/fonts/et-book-ligatures-enabled/et-book-display-italic-old-style-figures/etbookot-italic-webfont.woff");
  font-style: italic; }

@font-face {
  font-family: "Ubuntu Mono";
  src: local("Ubuntu Mono Regular"), url("/fonts/Ubuntu_Mono/ubuntumono-regular-webfont.woff2"), url("/fonts/Ubuntu_Mono/ubuntumono-regular-webfont.woff"); }

.light {
  /*
  Links
  */
  /*
  Images
  */
  /*
  Image captions
  */
  /*
  Tables
  */
  /*
  Code and preformatted text
  */
  /*
  Quote
  */
  /*
  Headings
  */
  /*
  Breaks
  */ }
  .light body {
    font-family: "ETBook";
    font-size: 17px;
    line-height: 1.5;
    font-weight: 400;
    letter-spacing: 0.02em;
    color: #333;
    background-color: #fff;
    margin: 0; }
  .light a {
    color: #4270ab;
    text-decoration: none; }
  .light a:visited {
    color: #4270ab; }
  .light a:hover {
    text-decoration: underline;
    color: #3b6499; }
  .light img {
    margin-top: 3em;
    margin-bottom: 2em;
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: MIN(550px, 95%);
    box-shadow: 0px 0px 20px 1px rgba(0, 0, 0, 0.3); }
  .light img + em {
    margin-top: -1.5em;
    margin-bottom: 2em;
    display: block;
    text-align: center;
    color: #888; }
  .light table, .light th, .light td {
    margin: 2em 1em;
    padding: 0.3em 0.5em;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #e6e6e6;
    border-collapse: collapse; }
  .light tr {
    background-color: #fffef6; }
  .light thead > tr {
    background-color: #fffbdd !important; }
  .light code {
    color: #444;
    font-family: "Ubuntu Mono";
    font-size: 14.45px;
    line-height: 1.4;
    font-weight: 400;
    background-color: #eee;
    padding: 0.05em 0.2em;
    border-radius: 0.2em;
    border: 1px transparent solid; }
  .light figure {
    margin: 0 0; }
  .light pre {
    overflow-x: auto;
    line-height: 1.4;
    border: 1px #ddd solid; }
    .light pre > code {
      color: #444;
      display: block;
      margin: 0 0;
      padding: 1em 1em;
      border: none;
      background-color: transparent; }
  .light blockquote {
    margin: 2em 0em;
    padding: 0.5em 1em;
    border-left: 4px solid #6f6f6f;
    background-color: #eee; }
    .light blockquote p:first-child {
      margin-top: 0; }
    .light blockquote p:last-child {
      margin-bottom: 0; }
  .light h1, .light h2, .light h3,
  .light h4, .light h5, .light h6 {
    margin-top: 2.5em;
    margin-bottom: 0;
    color: #333;
    font-family: "ETBook";
    font-weight: 600;
    font-style: italic;
    padding-bottom: 0.1em; }
  .light h1, .light h2 {
    border-bottom: 1px solid #e6e6e6; }
  .light h1 {
    font-size: 1.8em; }
  .light h2 {
    font-size: 1.5em; }
  .light h3 {
    font-size: 1.3em; }
  .light h4 {
    font-size: 1.1em; }
  .light h5 {
    font-size: 0.8em; }
  .light h6 {
    font-size: 0.5em; }
  .light hr {
    margin-top: 1em;
    margin-bottom: 1em;
    height: 1px;
    color: #e6e6e6;
    background-color: #e6e6e6;
    border-style: solid; }
  .light button {
    font-family: "ETBook";
    padding: 0.2em 0.5em;
    padding-top: 0.4em;
    color: #8638b0;
    background-color: #eee;
    cursor: pointer;
    border: none;
    border-radius: 0.4em;
    transition-duration: 0.2s; }
  .light button:hover {
    background-color: #e1e1e1; }
  .light button:active {
    background-color: #333;
    color: #fff; }
  .light textarea {
    color: #333;
    font-size: 14.45px;
    background-color: #fffdef;
    padding: 0.1em 0.3em;
    border-radius: 0.4em;
    border: none; }
  .light ::-webkit-scrollbar {
    width: 6px;
    height: 6px; }
  .light ::-webkit-scrollbar-track {
    background: #eee; }
  .light ::-webkit-scrollbar-thumb {
    background: #ccc; }
  .light ::-webkit-scrollbar-thumb:hover {
    background: #666; }
  .light ::-webkit-scrollbar-corner {
    background: #00000000; }
  .light ::selection {
    color: #fff;
    background: #333; }

.dark {
  /*
  Links
  */
  /*
  Images
  */
  /*
  Image captions
  */
  /*
  Tables
  */
  /*
  Code and preformatted text
  */
  /*
  Quote
  */
  /*
  Headings
  */
  /*
  Breaks
  */ }
  .dark body {
    font-family: "ETBook";
    font-size: 17px;
    line-height: 1.5;
    font-weight: 400;
    letter-spacing: 0.02em;
    color: #e5e5e5;
    background-color: #1e1e1e;
    margin: 0; }
  .dark a {
    color: #87cfbe;
    text-decoration: none; }
  .dark a:visited {
    color: #87cfbe; }
  .dark a:hover {
    text-decoration: underline;
    color: #99d6c8; }
  .dark img {
    margin-top: 3em;
    margin-bottom: 2em;
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: MIN(550px, 95%);
    box-shadow: 0px 0px 20px 2px rgba(0, 0, 0, 0.7); }
  .dark img + em {
    margin-top: -1.5em;
    margin-bottom: 2em;
    display: block;
    text-align: center;
    color: #888; }
  .dark table, .dark th, .dark td {
    margin: 2em 1em;
    padding: 0.3em 0.5em;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #2c2c2c;
    border-collapse: collapse; }
  .dark tr {
    background-color: #111; }
  .dark thead > tr {
    background-color: #040404 !important; }
  .dark code {
    color: #ccc;
    font-family: "Ubuntu Mono";
    font-size: 14.45px;
    line-height: 1.4;
    font-weight: 400;
    background-color: #111;
    padding: 0.05em 0.2em;
    border-radius: 0.2em;
    border: 1px transparent solid; }
  .dark figure {
    margin: 0 0; }
  .dark pre {
    overflow-x: auto;
    line-height: 1.4;
    border: 1px transparent solid; }
    .dark pre > code {
      color: #ccc;
      display: block;
      margin: 0 0;
      padding: 1em 1em;
      border: none;
      background-color: transparent; }
  .dark blockquote {
    margin: 2em 0em;
    padding: 0.5em 1em;
    border-left: 4px solid black;
    background-color: #111; }
    .dark blockquote p:first-child {
      margin-top: 0; }
    .dark blockquote p:last-child {
      margin-bottom: 0; }
  .dark h1, .dark h2, .dark h3,
  .dark h4, .dark h5, .dark h6 {
    margin-top: 2.5em;
    margin-bottom: 0;
    color: #e0e0e0;
    font-family: "ETBook";
    font-weight: 600;
    font-style: italic;
    padding-bottom: 0.1em; }
  .dark h1, .dark h2 {
    border-bottom: 1px solid #2c2c2c; }
  .dark h1 {
    font-size: 1.8em; }
  .dark h2 {
    font-size: 1.5em; }
  .dark h3 {
    font-size: 1.3em; }
  .dark h4 {
    font-size: 1.1em; }
  .dark h5 {
    font-size: 0.8em; }
  .dark h6 {
    font-size: 0.5em; }
  .dark hr {
    margin-top: 1em;
    margin-bottom: 1em;
    height: 1px;
    color: #2c2c2c;
    background-color: #2c2c2c;
    border-style: solid; }
  .dark button {
    font-family: "ETBook";
    padding: 0.2em 0.5em;
    padding-top: 0.4em;
    color: #9371b8;
    background-color: #111;
    cursor: pointer;
    border: none;
    border-radius: 0.4em;
    transition-duration: 0.2s; }
  .dark button:hover {
    background-color: #040404; }
  .dark button:active {
    background-color: #e5e5e5;
    color: #1e1e1e; }
  .dark textarea {
    color: #e5e5e5;
    font-size: 14.45px;
    background-color: #111;
    padding: 0.1em 0.3em;
    border-radius: 0.4em;
    border: none; }
  .dark ::-webkit-scrollbar {
    width: 6px;
    height: 6px; }
  .dark ::-webkit-scrollbar-track {
    background: #000; }
  .dark ::-webkit-scrollbar-thumb {
    background: #333; }
  .dark ::-webkit-scrollbar-thumb:hover {
    background: #444; }
  .dark ::-webkit-scrollbar-corner {
    background: #00000000; }
  .dark ::selection {
    color: #1e1e1e;
    background: #e5e5e5; }

.light {
  /*
  Styling for wrappers around top, body and bottom
  */
  /*
  Styling for the page
  */
  /*
  Styling for post list
  */
  /*
  Styling for tag page
  */
  /*
  Styling for navbars
  */
  /*
  Styling for details sidebar
  */
  /*
  Styling for details inline
  */
  /*
  Styling for theme toggle
  */
  /*
  Styling for katex
  */ }
  .light .wrapper {
    max-width: MIN(750px, 95%);
    min-height: 100vh;
    padding: 1em 3vw;
    margin-right: auto;
    margin-left: calc(50vw - MIN(750px, 95%) / 2 - 3vw);
    margin-bottom: 1em;
    background-color: #fff; }
    @media only screen and (max-width: 1500px) {
      .light .wrapper {
        margin-left: auto; } }
  .light .wrapper-top {
    padding: 0.2em 0;
    border-bottom: 1px #ddd solid;
    padding-bottom: 0.2em;
    width: 100%;
    background-color: #f2f2f2;
    font-family: "ETBook";
    font-size: 22.1px; }
    .light .wrapper-top a {
      text-decoration: none;
      color: #888; }
    .light .wrapper-top a:hover {
      color: #555555; }
  .light h1, .light h2, .light h3,
  .light h4, .light h5, .light h6 {
    scroll-margin-top: 3rem; }
    @media only screen and (max-width: 1500px) {
      .light h1, .light h2, .light h3,
      .light h4, .light h5, .light h6 {
        scroll-margin-top: 0; } }
  .light .wrapper-bottom {
    max-width: 100%;
    min-height: 1em;
    padding: 0 3vw;
    border-top: 1px #ddd solid;
    background: #f2f2f2;
    padding-bottom: 0.1em; }
  .light .wrapper-home {
    max-width: MIN(750px, 95%);
    padding: 1em 3vw;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 1em;
    background-color: #fff; }
  .light .wrapper-gallery {
    max-width: MIN(1000px, 95%);
    padding: 1em 3vw;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 1em;
    background-color: #fff; }
  .light .page-title {
    margin-top: 1em;
    text-align: center;
    margin-bottom: 0.25em;
    font-family: "ETBook";
    font-size: 2.5em;
    letter-spacing: -0.5px;
    font-weight: 600;
    border-bottom: 1px solid #e6e6e6; }
    .light .page-title a {
      color: #333; }
    .light .page-title a:hover {
      color: #333; }
    .light .page-title a:visited {
      color: #333; }
  .light .footnotes hr {
    display: none; }
  .light .page-tip-right {
    display: block;
    float: right;
    margin-right: -13em;
    width: 12em; }
    @media only screen and (max-width: 1366px) {
      .light .page-tip-right {
        display: none; } }
  .light .post-list {
    margin-top: 3.5em;
    margin-left: 0;
    padding-left: 0;
    list-style: none;
    margin-bottom: 2.5em; }
    .light .post-list .post-date {
      color: #888;
      user-select: none; }
    .light .post-list .post-title {
      margin-bottom: 0;
      margin-top: 0;
      letter-spacing: -0.5px;
      border-bottom: none;
      font-size: 1.8em;
      font-weight: 600; }
      .light .post-list .post-title a {
        color: #4270ab; }
    .light .post-list .post-tag {
      font-size: 12.75px;
      color: #444;
      background-color: #eee;
      border: 1px transparent solid; }
  .light .post-tags-list {
    user-select: none; }
  .light .tag-list {
    margin-bottom: 1em; }
  .light .navbar-top {
    user-select: none;
    display: flex;
    justify-content: center; }
    @media screen and (max-width: 600px) {
      .light .navbar-top {
        overflow-x: auto;
        justify-content: left;
        padding-left: 3vw;
        padding-right: 3vw; } }
    .light .navbar-top .navbar-item {
      margin-right: 1em; }
  .light .navbar-bottom {
    color: #888;
    font-size: 13.6px;
    user-select: none;
    display: flex;
    justify-content: center; }
    @media screen and (max-width: 600px) {
      .light .navbar-bottom {
        overflow-x: auto;
        justify-content: left;
        padding-left: 3vw;
        padding-right: 3vw; } }
    .light .navbar-bottom .navbar-item {
      margin-right: 1em; }
  .light .navbar-home {
    margin-top: -1em;
    user-select: none; }
    .light .navbar-home .category-list {
      margin-right: 1em; }
    .light .navbar-home .navbar-right {
      float: right; }
  .light .page-details {
    user-select: none;
    font-size: 15.3px;
    float: left;
    left: 0;
    width: 300px;
    margin-top: 2em;
    margin-left: calc(50vw - 300px - MIN(750px, 95%) / 2 - 3vw); }
    .light .page-details a {
      color: #888; }
    .light .page-details b {
      font-size: 17px;
      display: flex;
      justify-content: center; }
    @media only screen and (max-width: 1500px) {
      .light .page-details {
        display: none; } }
    .light .page-details ul {
      margin-left: 0;
      padding-left: 1em; }
    .light .page-details .page-toc {
      padding: 1em 1em 1em 1.5em;
      background-color: #f2f2f2;
      border: 1px solid #ddd;
      border-radius: 0.5em;
      max-height: calc(100vh - 3em - 2em - 4em - 4em - 7em);
      overflow-y: auto; }
  .light .page-details-inline {
    user-select: none;
    display: block;
    text-align: center;
    min-height: 1em;
    color: #888;
    font-size: 13.6px;
    margin-top: 1em;
    margin-bottom: 3em; }
    .light .page-details-inline .page-tags {
      margin-bottom: 0.5em; }
      .light .page-details-inline .page-tags .page-tag {
        font-size: 12.75px;
        color: #444;
        background-color: #eee;
        border: 1px transparent solid; }
    .light .page-details-inline .go-home {
      float: right; }
    .light .page-details-inline .page-date {
      display: inline-block;
      color: #888; }
      .light .page-details-inline .page-date span {
        margin-right: 0.5em;
        margin-left: 0.5em; }
  .light .page-toc-inline {
    display: none;
    user-select: none; }
    @media only screen and (max-width: 1500px) {
      .light .page-toc-inline {
        display: block;
        border: 1px solid #e6e6e6;
        border-radius: 0.5em;
        background-color: #ddd;
        padding: 1em 1em;
        margin-bottom: 2em;
        max-width: MIN(750px, 95%);
        width: 300px; }
        .light .page-toc-inline a {
          color: #888; }
        .light .page-toc-inline b {
          font-size: 17px;
          display: flex;
          justify-content: center; }
        .light .page-toc-inline ul {
          margin-left: 0;
          padding-left: 1em; } }
  .light .theme-toggle-parent {
    color: #888;
    float: right; }
  .light .katex-html {
    font-size: 15.3px; }

.dark {
  /*
  Styling for wrappers around top, body and bottom
  */
  /*
  Styling for the page
  */
  /*
  Styling for post list
  */
  /*
  Styling for tag page
  */
  /*
  Styling for navbars
  */
  /*
  Styling for details sidebar
  */
  /*
  Styling for details inline
  */
  /*
  Styling for theme toggle
  */
  /*
  Styling for katex
  */ }
  .dark .wrapper {
    max-width: MIN(750px, 95%);
    min-height: 100vh;
    padding: 1em 3vw;
    margin-right: auto;
    margin-left: calc(50vw - MIN(750px, 95%) / 2 - 3vw);
    margin-bottom: 1em;
    background-color: #1e1e1e; }
    @media only screen and (max-width: 1500px) {
      .dark .wrapper {
        margin-left: auto; } }
  .dark .wrapper-top {
    padding: 0.2em 0;
    border-bottom: 1px transparent solid;
    padding-bottom: 0.2em;
    font-family: "ETBook";
    font-size: 22.1px;
    width: 100%;
    background-color: #111; }
    .dark .wrapper-top a {
      text-decoration: none;
      color: #888; }
    .dark .wrapper-top a:hover {
      color: #a2a2a2; }
  .dark h1, .dark h2, .dark h3,
  .dark h4, .dark h5, .dark h6 {
    scroll-margin-top: 3rem; }
    @media only screen and (max-width: 1500px) {
      .dark h1, .dark h2, .dark h3,
      .dark h4, .dark h5, .dark h6 {
        scroll-margin-top: 0; } }
  .dark .wrapper-bottom {
    max-width: 100%;
    min-height: 1em;
    padding: 0 3vw;
    border-top: 1px transparent solid;
    background: #111;
    padding-bottom: 0.1em; }
  .dark .wrapper-home {
    max-width: MIN(750px, 95%);
    padding: 1em 3vw;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 1em;
    background-color: #1e1e1e; }
  .dark .wrapper-gallery {
    max-width: MIN(1000px, 95%);
    padding: 1em 3vw;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 1em;
    background-color: #1e1e1e; }
  .dark .page-title {
    margin-top: 1em;
    text-align: center;
    margin-bottom: 0.25em;
    font-family: "ETBook";
    font-size: 2.5em;
    letter-spacing: -0.5px;
    font-weight: 600;
    border-bottom: 1px solid #2c2c2c; }
    .dark .page-title a {
      color: #e5e5e5; }
    .dark .page-title a:hover {
      color: #e5e5e5; }
    .dark .page-title a:visited {
      color: #e5e5e5; }
  .dark .footnotes hr {
    display: none; }
  .dark .page-tip-right {
    display: block;
    float: right;
    margin-right: -13em;
    width: 12em; }
    @media only screen and (max-width: 1366px) {
      .dark .page-tip-right {
        display: none; } }
  .dark .post-list {
    margin-top: 3.5em;
    margin-left: 0;
    padding-left: 0;
    list-style: none;
    margin-bottom: 2.5em; }
    .dark .post-list .post-date {
      color: #888;
      user-select: none; }
    .dark .post-list .post-title {
      margin-bottom: 0;
      margin-top: 0;
      letter-spacing: -0.5px;
      border-bottom: none;
      font-size: 1.8em;
      font-weight: 600; }
      .dark .post-list .post-title a {
        color: #87cfbe; }
    .dark .post-list .post-tag {
      font-size: 12.75px;
      color: #ccc;
      background-color: #111;
      border: 1px transparent solid; }
    .dark .post-list .post-tags-list {
      user-select: none; }
  .dark .tag-list {
    margin-bottom: 1em; }
  .dark .navbar-top {
    user-select: none;
    display: flex;
    justify-content: center; }
    @media screen and (max-width: 600px) {
      .dark .navbar-top {
        overflow-x: auto;
        justify-content: left;
        padding-left: 3vw;
        padding-right: 3vw; } }
    .dark .navbar-top .navbar-item {
      margin-right: 1em; }
  .dark .navbar-bottom {
    color: #888;
    font-size: 13.6px;
    user-select: none;
    display: flex;
    justify-content: center; }
    @media screen and (max-width: 600px) {
      .dark .navbar-bottom {
        overflow-x: auto;
        justify-content: left;
        padding-left: 3vw;
        padding-right: 3vw; } }
    .dark .navbar-bottom .navbar-item {
      margin-right: 1em; }
  .dark .navbar-home {
    margin-top: -1em;
    user-select: none; }
    .dark .navbar-home .category-list {
      margin-right: 1em; }
    .dark .navbar-home .navbar-right {
      float: right; }
  .dark .page-details {
    user-select: none;
    font-size: 15.3px;
    float: left;
    left: 0;
    width: 300px;
    margin-top: 2em;
    margin-left: calc(50vw - 300px - MIN(750px, 95%) / 2 - 3vw); }
    .dark .page-details a {
      color: #888; }
    .dark .page-details b {
      font-size: 17px;
      display: flex;
      justify-content: center; }
    @media only screen and (max-width: 1500px) {
      .dark .page-details {
        display: none; } }
    .dark .page-details ul {
      margin-left: 0;
      padding-left: 1em; }
    .dark .page-details .page-toc {
      padding: 1em 1em 1em 1.5em;
      background-color: #111;
      border: 1px transparent solid;
      border-radius: 0.5em;
      max-height: calc(100vh - 3em - 2em - 4em - 4em - 7em);
      overflow-y: auto; }
  .dark .page-details-inline {
    user-select: none;
    display: block;
    text-align: center;
    min-height: 1em;
    color: #888;
    font-size: 13.6px;
    margin-top: 1em;
    margin-bottom: 3em; }
    .dark .page-details-inline .page-tags {
      margin-bottom: 0.5em; }
      .dark .page-details-inline .page-tags .page-tag {
        font-size: 12.75px;
        color: #ccc;
        background-color: #111;
        border: 1px transparent solid; }
    .dark .page-details-inline .go-home {
      float: right; }
    .dark .page-details-inline .page-date {
      display: inline-block;
      color: #888; }
      .dark .page-details-inline .page-date span {
        margin-right: 0.5em;
        margin-left: 0.5em; }
  .dark .page-toc-inline {
    display: none;
    user-select: none; }
    @media only screen and (max-width: 1500px) {
      .dark .page-toc-inline {
        display: block;
        border: 1px transparent solid;
        background-color: #222;
        border-radius: 0.5em;
        padding: 1em 1em;
        margin-bottom: 2em;
        max-width: MIN(750px, 95%);
        width: 300px; }
        .dark .page-toc-inline a {
          color: #888; }
        .dark .page-toc-inline b {
          font-size: 17px;
          display: flex;
          justify-content: center; }
        .dark .page-toc-inline ul {
          margin-left: 0;
          padding-left: 1em; } }
  .dark .theme-toggle-parent {
    color: #888;
    float: right; }
  .dark .katex-html {
    font-size: 15.3px; }

.light {
  /**
  * Syntax highlighting styles
  */ }
  .light .highlight {
    background: #fffdef;
    border-radius: 0.5em; }
    .light .highlight pre {
      border-radius: 0.5em;
      max-height: 30em;
      overflow-y: auto; }
    .light .highlight code {
      color: #333 !important; }
    .highlighter-rouge .light .highlight {
      background: #fffdef; }
    .light .highlight .rouge-table {
      background-color: transparent;
      margin: 0 0;
      border: none; }
    .light .highlight .lineno {
      user-select: none; }
    .light .highlight .lineno, .light .highlight .code > pre, .light .highlight td {
      overflow: visible;
      border: none;
      margin: 0 0; }
    .light .highlight .gutter {
      border: none; }
    .light .highlight .c {
      color: #777;
      font-style: italic; }
    .light .highlight .err {
      color: #a61717;
      background-color: #e3d2d2; }
    .light .highlight .k {
      color: #0086B3;
      font-weight: bold; }
    .light .highlight .o {
      color: #008080;
      font-weight: bold; }
    .light .highlight .cm {
      color: #998;
      font-style: italic; }
    .light .highlight .cp {
      color: #458;
      font-weight: bold; }
    .light .highlight .c1 {
      color: #998;
      font-style: italic; }
    .light .highlight .cs {
      color: #999;
      font-weight: bold;
      font-style: italic; }
    .light .highlight .gd {
      color: #000;
      background-color: #fdd; }
    .light .highlight .gd .x {
      color: #000;
      background-color: #faa; }
    .light .highlight .ge {
      font-style: italic; }
    .light .highlight .gr {
      color: #a00; }
    .light .highlight .gh {
      color: #999; }
    .light .highlight .gi {
      color: #000;
      background-color: #dfd; }
    .light .highlight .gi .x {
      color: #000;
      background-color: #afa; }
    .light .highlight .go {
      color: #888; }
    .light .highlight .gp {
      color: #555; }
    .light .highlight .gs {
      font-weight: bold; }
    .light .highlight .gu {
      color: #aaa; }
    .light .highlight .gt {
      color: #a00; }
    .light .highlight .kc {
      color: #5f8243;
      font-weight: bold; }
    .light .highlight .kd {
      color: #008080;
      font-weight: bold; }
    .light .highlight .kp {
      color: #008080;
      font-weight: bold; }
    .light .highlight .kr {
      color: #008080;
      font-weight: bold; }
    .light .highlight .kt {
      color: #458;
      font-weight: bold; }
    .light .highlight .m {
      color: #099; }
    .light .highlight .s {
      color: #d14; }
    .light .highlight .na {
      color: #008080; }
    .light .highlight .nb {
      color: #0086B3; }
    .light .highlight .nc {
      color: #458;
      font-weight: bold; }
    .light .highlight .no {
      color: #008080; }
    .light .highlight .ni {
      color: #800080; }
    .light .highlight .ne {
      color: #900;
      font-weight: bold; }
    .light .highlight .nf {
      color: #900;
      font-weight: bold; }
    .light .highlight .nn {
      color: #555; }
    .light .highlight .nt {
      color: #008080; }
    .light .highlight .nv {
      color: #008080; }
    .light .highlight .ow {
      color: #0086B3;
      font-weight: bold; }
    .light .highlight .w {
      color: #bbb; }
    .light .highlight .mf {
      color: #ef6be7; }
    .light .highlight .mh {
      color: #ef6be7; }
    .light .highlight .mi {
      color: #ef6be7; }
    .light .highlight .mo {
      color: #ef6be7; }
    .light .highlight .sb {
      color: #d14; }
    .light .highlight .sc {
      color: #d14; }
    .light .highlight .sd {
      color: #d14; }
    .light .highlight .s2 {
      color: #d14; }
    .light .highlight .se {
      color: #d14; }
    .light .highlight .sh {
      color: #d14; }
    .light .highlight .si {
      color: #d14; }
    .light .highlight .sx {
      color: #d14; }
    .light .highlight .sr {
      color: #009926; }
    .light .highlight .s1 {
      color: #d14; }
    .light .highlight .ss {
      color: #990073; }
    .light .highlight .bp {
      color: #999; }
    .light .highlight .vc {
      color: #008080; }
    .light .highlight .vg {
      color: #008080; }
    .light .highlight .vi {
      color: #008080; }
    .light .highlight .il {
      color: #099; }

.dark {
  /**
  * Syntax highlighting styles
  */ }
  .dark .highlight {
    background: #111;
    border-radius: 0.5em; }
    .dark .highlight pre {
      border-radius: 0.5em;
      max-height: 30em;
      overflow-y: auto; }
    .dark .highlight code {
      color: #e5e5e5 !important; }
    .highlighter-rouge .dark .highlight {
      background: #111; }
    .dark .highlight .rouge-table {
      background-color: transparent;
      margin: 0 0;
      border: none; }
    .dark .highlight .lineno {
      user-select: none; }
    .dark .highlight .lineno, .dark .highlight .code > pre, .dark .highlight td {
      overflow: visible;
      border: none;
      margin: 0 0; }
    .dark .highlight .gutter {
      border: none; }
    .dark .highlight .c {
      color: #777;
      font-style: italic; }
    .dark .highlight .err {
      color: #a61717;
      background-color: #e3d2d2; }
    .dark .highlight .k {
      color: #0086B3;
      font-weight: bold; }
    .dark .highlight .o {
      color: #008080;
      font-weight: bold; }
    .dark .highlight .cm {
      color: #998;
      font-style: italic; }
    .dark .highlight .cp {
      color: #8673cf;
      font-weight: bold; }
    .dark .highlight .c1 {
      color: #998;
      font-style: italic; }
    .dark .highlight .cs {
      color: #999;
      font-weight: bold;
      font-style: italic; }
    .dark .highlight .gd {
      color: #000;
      background-color: #fdd; }
    .dark .highlight .gd .x {
      color: #000;
      background-color: #faa; }
    .dark .highlight .ge {
      font-style: italic; }
    .dark .highlight .gr {
      color: #a00; }
    .dark .highlight .gh {
      color: #999; }
    .dark .highlight .gi {
      color: #000;
      background-color: #dfd; }
    .dark .highlight .gi .x {
      color: #000;
      background-color: #afa; }
    .dark .highlight .go {
      color: #888; }
    .dark .highlight .gp {
      color: #555; }
    .dark .highlight .gs {
      font-weight: bold; }
    .dark .highlight .gu {
      color: #aaa; }
    .dark .highlight .gt {
      color: #a00; }
    .dark .highlight .kc {
      color: #818d47;
      font-weight: bold; }
    .dark .highlight .kd {
      color: #008080;
      font-weight: bold; }
    .dark .highlight .kp {
      color: #008080;
      font-weight: bold; }
    .dark .highlight .kr {
      color: #008080;
      font-weight: bold; }
    .dark .highlight .kt {
      color: #8673cf;
      font-weight: bold; }
    .dark .highlight .m {
      color: #099; }
    .dark .highlight .s {
      color: #bd244a; }
    .dark .highlight .na {
      color: #008080; }
    .dark .highlight .nb {
      color: #0086B3; }
    .dark .highlight .nc {
      color: #458;
      font-weight: bold; }
    .dark .highlight .no {
      color: #008080; }
    .dark .highlight .ni {
      color: #800080; }
    .dark .highlight .ne {
      color: #b78943;
      font-weight: bold; }
    .dark .highlight .nf {
      color: #b78943;
      font-weight: bold; }
    .dark .highlight .nn {
      color: #555; }
    .dark .highlight .nt {
      color: #008080; }
    .dark .highlight .nv {
      color: #008080; }
    .dark .highlight .ow {
      color: #0086B3;
      font-weight: bold; }
    .dark .highlight .w {
      color: #bbb; }
    .dark .highlight .mf {
      color: #a86ec8; }
    .dark .highlight .mh {
      color: #a86ec8; }
    .dark .highlight .mi {
      color: #a86ec8; }
    .dark .highlight .mo {
      color: #a86ec8; }
    .dark .highlight .sb {
      color: #bd244a; }
    .dark .highlight .sc {
      color: #bd244a; }
    .dark .highlight .sd {
      color: #bd244a; }
    .dark .highlight .s2 {
      color: #bd244a; }
    .dark .highlight .se {
      color: #bd244a; }
    .dark .highlight .sh {
      color: #bd244a; }
    .dark .highlight .si {
      color: #bd244a; }
    .dark .highlight .sx {
      color: #bd244a; }
    .dark .highlight .sr {
      color: #009926; }
    .dark .highlight .s1 {
      color: #bd244a; }
    .dark .highlight .ss {
      color: #990073; }
    .dark .highlight .bp {
      color: #999; }
    .dark .highlight .vc {
      color: #008080; }
    .dark .highlight .vg {
      color: #008080; }
    .dark .highlight .vi {
      color: #008080; }
    .dark .highlight .il {
      color: #099; }
