:root {
  --header-height: 40px;
  --highlight-background-color: rgb(245, 247, 249);
  --highlight-font-color: rgba(59, 69, 78, 1);
  --global-spacing: 8px;
  --global-link-color: #161209;
  --global-link-color-dark: #a9a9b3;
  --global-link-hover-color: #2d96bd;
  --global-link-hover-color-dark: #fff;
  --single-link-color: #2d96bd;
  --single-link-color-dark: #55bde2;
  --single-link-hover-color: #ef3982;
  --single-link-hover-color-dark: #bdebfc;
  --code-font-family: "Source Code Pro", Menlo, Monaco, Consolas,
    "Liberation Mono", "Courier New", monospace;
  --code-font-size: 0.875rem; }

* {
  box-sizing: border-box;
  list-style: none; }

html {
  font-family: "system-ui, -apple-system, Segoe UI, Roboto, Emoji, Helvetica, Arial, sans-serif";
  font-size: 16px; }

body {
  background-color: #fff;
  color: #555;
  padding: 0;
  margin: 0;
  word-wrap: break-word;
  overflow-wrap: break-word; }

a,
a::before,
a::after {
  text-decoration: none;
  color: var(--global-link-color); }
  [theme="dark"] a, [theme="dark"] a::before, [theme="dark"] a::after {
    color: var(--global-link-color-dark); }

a:active,
a:hover {
  color: var(--global-link-hover-color); }
  [theme="dark"] a:active, [theme="dark"] a:hover {
    color: var(--global-link-hover-color-dark); }

i {
  font-size: 12px;
  margin-left: 4px;
  margin-right: 4px; }

.wrapper {
  display: grid;
  grid-template-columns: 1fr minmax(0, 280px) 800px minmax(0, 280px) 1fr;
  grid-template-rows: 40px 1fr 60px;
  grid-template-areas: "header header header header header" "left menu main toc right" "footer footer footer footer footer";
  width: 100vw;
  height: 100vh; }
  .wrapper header {
    grid-area: header;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 0 60px;
    line-height: 40px; }
    .wrapper header i {
      font-size: 16px; }
  .wrapper main {
    grid-area: main; }
  .wrapper .menu {
    grid-area: menu; }
  .wrapper .toc {
    grid-area: toc;
    padding: 8px;
    padding-top: 60px;
    display: block;
    padding: 0 0.8rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
    box-sizing: border-box; }
    .wrapper .toc #TableOfContents {
      border-left: 4px solid #f0f0f0; }
      .wrapper .toc #TableOfContents ul {
        text-indent: -0.85rem;
        padding-left: 1.5rem;
        list-style: none; }
        .wrapper .toc #TableOfContents ul a:first-child::before {
          content: "|";
          font-weight: bolder;
          margin-right: 0.5rem;
          color: var(--single-link-color); }
          [theme="dark"] .wrapper .toc #TableOfContents ul a:first-child::before {
            color: var(--single-link-color-dark); }
        .wrapper .toc #TableOfContents ul ul {
          padding-left: 1.5rem; }
    .wrapper .toc li {
      padding-top: var(--global-spacing); }
  .wrapper footer {
    grid-area: footer;
    text-align: center;
    line-height: 40px; }

#content {
  display: flex;
  flex-direction: column;
  width: 100vw;
  height: 100vh; }

.paper {
  width: 800px;
  position: relative;
  max-width: 800px;
  width: 60%;
  margin: 0 auto; }

header .header-title {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px; }
  header .header-title .logo {
    border-radius: 100%;
    width: 24px;
    height: auto; }

header .header-menu {
  display: flex;
  justify-content: flex-end;
  flex-direction: row;
  align-items: center;
  gap: 16px; }

header a,
header a::before,
header a::after {
  text-decoration: none;
  color: var(--global-link-color); }
  [theme="dark"] header a, [theme="dark"] header a::before, [theme="dark"] header a::after {
    color: var(--global-link-color-dark); }

header a:active,
header a:hover {
  color: var(--global-link-hover-color); }
  [theme="dark"] header a:active, [theme="dark"] header a:hover {
    color: var(--global-link-hover-color-dark); }

header i {
  font-size: 12px;
  margin-left: 4px;
  margin-right: 4px; }

.home {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center; }
  .home .home-profile {
    text-align: center; }
    .home .home-profile .home-profile-avatar {
      padding: 0.5rem; }
      .home .home-profile .home-profile-avatar img {
        width: 12rem;
        height: auto; }
  .home .home-subtitle {
    padding: 0.5rem;
    font-size: 1.25rem; }

article {
  padding: 8px; }
  article h1 {
    margin: 2rem 0 0.5rem;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 140%; }
  article h2 {
    font-size: 1.5rem;
    font-weight: bold;
    margin: 1.2rem 0; }
  article p {
    margin: 0.5rem 0; }
  article dl dt {
    font-weight: 700;
    font-size: 1.125rem;
    border-left: 2px solid #1ab945;
    padding-left: 4px; }
  article dd {
    margin: 0.5em 0 2em;
    padding: 0; }
  article .post-meta {
    font-size: 0.875rem;
    color: #a9a9b3; }
  article .highlight-wrapper {
    margin: 0.5rem 0; }
  article code {
    display: inline-block;
    max-width: 100%;
    padding: 0 0.4rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
    -webkit-line-break: anywhere;
    -ms-line-break: anywhere;
    line-break: anywhere;
    font-size: var(--code-font-size);
    font-family: var(--code-font-family); }
  article blockquote {
    display: block;
    border-left: 0.5rem solid #6bd6fd;
    background-color: rgba(107, 214, 253, 0.2);
    padding: 0.25rem 0.75rem;
    margin: 1rem 0; }
  article a,
  article a::before,
  article a::after {
    text-decoration: none;
    color: var(--single-link-color); }
    [theme="dark"] article a, [theme="dark"] article a::before, [theme="dark"] article a::after {
      color: var(--single-link-color-dark); }
  article a:active,
  article a:hover {
    color: var(--single-link-hover-color); }
    [theme="dark"] article a:active, [theme="dark"] article a:hover {
      color: var(--single-link-hover-color-dark); }
  article i {
    font-size: 12px;
    margin-left: 4px;
    margin-right: 4px; }

article .highlight-bar {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center; }
  article .highlight-bar .highlight-bar-left {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 8px; }
  article .highlight-bar .highlight-bar-right {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    gap: 16px; }

article .highlight-wrapper pre {
  margin-top: 0;
  padding-bottom: 8px; }

article .highlight-wrapper .highlight-copy-button {
  cursor: pointer; }

article {
  /* Other */
  /* Error */
  /* CodeLine */
  /* LineLink */
  /* LineTableTD */
  /* LineTable */
  /* LineHighlight */
  /* LineNumbersTable */
  /* LineNumbers */
  /* Line */
  /* Keyword */
  /* KeywordConstant */
  /* KeywordDeclaration */
  /* KeywordNamespace */
  /* KeywordPseudo */
  /* KeywordReserved */
  /* KeywordType */
  /* Name */
  /* NameAttribute */
  /* NameBuiltin */
  /* NameBuiltinPseudo */
  /* NameClass */
  /* NameConstant */
  /* NameDecorator */
  /* NameEntity */
  /* NameException */
  /* NameFunction */
  /* NameFunctionMagic */
  /* NameLabel */
  /* NameNamespace */
  /* NameOther */
  /* NameProperty */
  /* NameTag */
  /* NameVariable */
  /* NameVariableClass */
  /* NameVariableGlobal */
  /* NameVariableInstance */
  /* NameVariableMagic */
  /* Literal */
  /* LiteralDate */
  /* LiteralString */
  /* LiteralStringAffix */
  /* LiteralStringBacktick */
  /* LiteralStringChar */
  /* LiteralStringDelimiter */
  /* LiteralStringDoc */
  /* LiteralStringDouble */
  /* LiteralStringEscape */
  /* LiteralStringHeredoc */
  /* LiteralStringInterpol */
  /* LiteralStringOther */
  /* LiteralStringRegex */
  /* LiteralStringSingle */
  /* LiteralStringSymbol */
  /* LiteralNumber */
  /* LiteralNumberBin */
  /* LiteralNumberFloat */
  /* LiteralNumberHex */
  /* LiteralNumberInteger */
  /* LiteralNumberIntegerLong */
  /* LiteralNumberOct */
  /* Operator */
  /* OperatorWord */
  /* Punctuation */
  /* Comment */
  /* CommentHashbang */
  /* CommentMultiline */
  /* CommentSingle */
  /* CommentSpecial */
  /* CommentPreproc */
  /* CommentPreprocFile */
  /* Generic */
  /* GenericDeleted */
  /* GenericEmph */
  /* GenericError */
  /* GenericHeading */
  /* GenericInserted */
  /* GenericOutput */
  /* GenericPrompt */
  /* GenericStrong */
  /* GenericSubheading */
  /* GenericTraceback */
  /* GenericUnderline */
  /* TextWhitespace */ }
  article .highlight-wrapper {
    background-color: var(--highlight-background-color) !important; }
  article .highlight-bar {
    background-color: var(--highlight-background-color) !important;
    padding: var(--global-spacing);
    color: var(--highlight-font-color);
    font-size: 14px; }
  article .highlight {
    color: var(--highlight-font-color); }
    article .highlight pre {
      overflow-x: auto; }
  article .chroma .err {
    color: #a61717;
    background-color: #e3d2d2; }
  article .chroma .lnlinks {
    outline: none;
    text-decoration: none;
    color: inherit; }
  article .chroma .lntd {
    vertical-align: top;
    padding: 0;
    margin: 0;
    border: 0; }
  article .chroma .lntable {
    border-spacing: 0;
    padding: 0;
    margin: 0;
    border: 0; }
  article .chroma .hl {
    background-color: #ffffcc; }
  article .chroma .lnt {
    white-space: pre;
    user-select: none;
    margin-right: 0.4em;
    padding: 0 0.4em 0 0.4em;
    color: #7f7f7f; }
  article .chroma .ln {
    white-space: pre;
    user-select: none;
    margin-right: 0.4em;
    padding: 0 0.4em 0 0.4em;
    color: #7f7f7f; }
  article .chroma .line {
    display: flex; }
  article .chroma .k {
    color: #000000;
    font-weight: bold; }
  article .chroma .kc {
    color: #000000;
    font-weight: bold; }
  article .chroma .kd {
    color: #000000;
    font-weight: bold; }
  article .chroma .kn {
    color: #000000;
    font-weight: bold; }
  article .chroma .kp {
    color: #000000;
    font-weight: bold; }
  article .chroma .kr {
    color: #000000;
    font-weight: bold; }
  article .chroma .kt {
    color: #445588;
    font-weight: bold; }
  article .chroma .na {
    color: #008080; }
  article .chroma .nb {
    color: #0086b3; }
  article .chroma .bp {
    color: #999999; }
  article .chroma .nc {
    color: #445588;
    font-weight: bold; }
  article .chroma .no {
    color: #008080; }
  article .chroma .nd {
    color: #3c5d5d;
    font-weight: bold; }
  article .chroma .ni {
    color: #800080; }
  article .chroma .ne {
    color: #990000;
    font-weight: bold; }
  article .chroma .nf {
    color: #990000;
    font-weight: bold; }
  article .chroma .nl {
    color: #990000;
    font-weight: bold; }
  article .chroma .nn {
    color: #555555; }
  article .chroma .nt {
    color: #000080; }
  article .chroma .nv {
    color: #008080; }
  article .chroma .vc {
    color: #008080; }
  article .chroma .vg {
    color: #008080; }
  article .chroma .vi {
    color: #008080; }
  article .chroma .s {
    color: #dd1144; }
  article .chroma .sa {
    color: #dd1144; }
  article .chroma .sb {
    color: #dd1144; }
  article .chroma .sc {
    color: #dd1144; }
  article .chroma .dl {
    color: #dd1144; }
  article .chroma .sd {
    color: #dd1144; }
  article .chroma .s2 {
    color: #dd1144; }
  article .chroma .se {
    color: #dd1144; }
  article .chroma .sh {
    color: #dd1144; }
  article .chroma .si {
    color: #dd1144; }
  article .chroma .sx {
    color: #dd1144; }
  article .chroma .sr {
    color: #009926; }
  article .chroma .s1 {
    color: #dd1144; }
  article .chroma .ss {
    color: #990073; }
  article .chroma .m {
    color: #009999; }
  article .chroma .mb {
    color: #009999; }
  article .chroma .mf {
    color: #009999; }
  article .chroma .mh {
    color: #009999; }
  article .chroma .mi {
    color: #009999; }
  article .chroma .il {
    color: #009999; }
  article .chroma .mo {
    color: #009999; }
  article .chroma .o {
    color: #000000;
    font-weight: bold; }
  article .chroma .ow {
    color: #000000;
    font-weight: bold; }
  article .chroma .c {
    color: #999988;
    font-style: italic; }
  article .chroma .ch {
    color: #999988;
    font-style: italic; }
  article .chroma .cm {
    color: #999988;
    font-style: italic; }
  article .chroma .c1 {
    color: #999988;
    font-style: italic; }
  article .chroma .cs {
    color: #999999;
    font-weight: bold;
    font-style: italic; }
  article .chroma .cp {
    color: #999999;
    font-weight: bold;
    font-style: italic; }
  article .chroma .cpf {
    color: #999999;
    font-weight: bold;
    font-style: italic; }
  article .chroma .gd {
    color: #000000;
    background-color: #ffdddd; }
  article .chroma .ge {
    color: #000000;
    font-style: italic; }
  article .chroma .gr {
    color: #aa0000; }
  article .chroma .gh {
    color: #999999; }
  article .chroma .gi {
    color: #000000;
    background-color: #ddffdd; }
  article .chroma .go {
    color: #888888; }
  article .chroma .gp {
    color: #555555; }
  article .chroma .gs {
    font-weight: bold; }
  article .chroma .gu {
    color: #aaaaaa; }
  article .chroma .gt {
    color: #aa0000; }
  article .chroma .gl {
    text-decoration: underline; }
  article .chroma .w {
    color: #bbbbbb; }

.posts {
  padding: 8px; }
  .posts .posts-title {
    text-align: right; }
  .posts ul {
    padding: 0; }
  .posts .posts-list-item {
    display: flex;
    padding-top: var(--global-spacing);
    flex-direction: row;
    justify-content: space-between;
    align-items: center; }
  .posts a,
  .posts a::before,
  .posts a::after {
    text-decoration: none;
    color: var(--global-link-color); }
    [theme="dark"] .posts a, [theme="dark"] .posts a::before, [theme="dark"] .posts a::after {
      color: var(--global-link-color-dark); }
  .posts a:active,
  .posts a:hover {
    color: var(--global-link-hover-color); }
    [theme="dark"] .posts a:active, [theme="dark"] .posts a:hover {
      color: var(--global-link-hover-color-dark); }
  .posts i {
    font-size: 12px;
    margin-left: 4px;
    margin-right: 4px; }

@media (max-width: 1200px) {
  .wrapper {
    grid-template-columns: minmax(0, auto);
    grid-template-areas: "header" "main" "footer"; }
    .wrapper header {
      padding: 0 16px; }
    .wrapper .menu {
      display: none; }
    .wrapper .toc {
      display: none; } }

article {
  padding: 8px; }
  article h1 {
    margin: 2rem 0 0.5rem;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 140%; }
  article h2 {
    font-size: 1.5rem;
    font-weight: bold;
    margin: 1.2rem 0; }
  article p {
    margin: 0.5rem 0; }
  article dl dt {
    font-weight: 700;
    font-size: 1.125rem;
    border-left: 2px solid #1ab945;
    padding-left: 4px; }
  article dd {
    margin: 0.5em 0 2em;
    padding: 0; }
  article .post-meta {
    font-size: 0.875rem;
    color: #a9a9b3; }
  article .highlight-wrapper {
    margin: 0.5rem 0; }
  article code {
    display: inline-block;
    max-width: 100%;
    padding: 0 0.4rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
    -webkit-line-break: anywhere;
    -ms-line-break: anywhere;
    line-break: anywhere;
    font-size: var(--code-font-size);
    font-family: var(--code-font-family); }
  article blockquote {
    display: block;
    border-left: 0.5rem solid #6bd6fd;
    background-color: rgba(107, 214, 253, 0.2);
    padding: 0.25rem 0.75rem;
    margin: 1rem 0; }
  article a,
  article a::before,
  article a::after {
    text-decoration: none;
    color: var(--single-link-color); }
    [theme="dark"] article a, [theme="dark"] article a::before, [theme="dark"] article a::after {
      color: var(--single-link-color-dark); }
  article a:active,
  article a:hover {
    color: var(--single-link-hover-color); }
    [theme="dark"] article a:active, [theme="dark"] article a:hover {
      color: var(--single-link-hover-color-dark); }
  article i {
    font-size: 12px;
    margin-left: 4px;
    margin-right: 4px; }

article .highlight-bar {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center; }
  article .highlight-bar .highlight-bar-left {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 8px; }
  article .highlight-bar .highlight-bar-right {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    gap: 16px; }

article .highlight-wrapper pre {
  margin-top: 0;
  padding-bottom: 8px; }

article .highlight-wrapper .highlight-copy-button {
  cursor: pointer; }

article {
  /* Other */
  /* Error */
  /* CodeLine */
  /* LineLink */
  /* LineTableTD */
  /* LineTable */
  /* LineHighlight */
  /* LineNumbersTable */
  /* LineNumbers */
  /* Line */
  /* Keyword */
  /* KeywordConstant */
  /* KeywordDeclaration */
  /* KeywordNamespace */
  /* KeywordPseudo */
  /* KeywordReserved */
  /* KeywordType */
  /* Name */
  /* NameAttribute */
  /* NameBuiltin */
  /* NameBuiltinPseudo */
  /* NameClass */
  /* NameConstant */
  /* NameDecorator */
  /* NameEntity */
  /* NameException */
  /* NameFunction */
  /* NameFunctionMagic */
  /* NameLabel */
  /* NameNamespace */
  /* NameOther */
  /* NameProperty */
  /* NameTag */
  /* NameVariable */
  /* NameVariableClass */
  /* NameVariableGlobal */
  /* NameVariableInstance */
  /* NameVariableMagic */
  /* Literal */
  /* LiteralDate */
  /* LiteralString */
  /* LiteralStringAffix */
  /* LiteralStringBacktick */
  /* LiteralStringChar */
  /* LiteralStringDelimiter */
  /* LiteralStringDoc */
  /* LiteralStringDouble */
  /* LiteralStringEscape */
  /* LiteralStringHeredoc */
  /* LiteralStringInterpol */
  /* LiteralStringOther */
  /* LiteralStringRegex */
  /* LiteralStringSingle */
  /* LiteralStringSymbol */
  /* LiteralNumber */
  /* LiteralNumberBin */
  /* LiteralNumberFloat */
  /* LiteralNumberHex */
  /* LiteralNumberInteger */
  /* LiteralNumberIntegerLong */
  /* LiteralNumberOct */
  /* Operator */
  /* OperatorWord */
  /* Punctuation */
  /* Comment */
  /* CommentHashbang */
  /* CommentMultiline */
  /* CommentSingle */
  /* CommentSpecial */
  /* CommentPreproc */
  /* CommentPreprocFile */
  /* Generic */
  /* GenericDeleted */
  /* GenericEmph */
  /* GenericError */
  /* GenericHeading */
  /* GenericInserted */
  /* GenericOutput */
  /* GenericPrompt */
  /* GenericStrong */
  /* GenericSubheading */
  /* GenericTraceback */
  /* GenericUnderline */
  /* TextWhitespace */ }
  article .highlight-wrapper {
    background-color: var(--highlight-background-color) !important; }
  article .highlight-bar {
    background-color: var(--highlight-background-color) !important;
    padding: var(--global-spacing);
    color: var(--highlight-font-color);
    font-size: 14px; }
  article .highlight {
    color: var(--highlight-font-color); }
    article .highlight pre {
      overflow-x: auto; }
  article .chroma .err {
    color: #a61717;
    background-color: #e3d2d2; }
  article .chroma .lnlinks {
    outline: none;
    text-decoration: none;
    color: inherit; }
  article .chroma .lntd {
    vertical-align: top;
    padding: 0;
    margin: 0;
    border: 0; }
  article .chroma .lntable {
    border-spacing: 0;
    padding: 0;
    margin: 0;
    border: 0; }
  article .chroma .hl {
    background-color: #ffffcc; }
  article .chroma .lnt {
    white-space: pre;
    user-select: none;
    margin-right: 0.4em;
    padding: 0 0.4em 0 0.4em;
    color: #7f7f7f; }
  article .chroma .ln {
    white-space: pre;
    user-select: none;
    margin-right: 0.4em;
    padding: 0 0.4em 0 0.4em;
    color: #7f7f7f; }
  article .chroma .line {
    display: flex; }
  article .chroma .k {
    color: #000000;
    font-weight: bold; }
  article .chroma .kc {
    color: #000000;
    font-weight: bold; }
  article .chroma .kd {
    color: #000000;
    font-weight: bold; }
  article .chroma .kn {
    color: #000000;
    font-weight: bold; }
  article .chroma .kp {
    color: #000000;
    font-weight: bold; }
  article .chroma .kr {
    color: #000000;
    font-weight: bold; }
  article .chroma .kt {
    color: #445588;
    font-weight: bold; }
  article .chroma .na {
    color: #008080; }
  article .chroma .nb {
    color: #0086b3; }
  article .chroma .bp {
    color: #999999; }
  article .chroma .nc {
    color: #445588;
    font-weight: bold; }
  article .chroma .no {
    color: #008080; }
  article .chroma .nd {
    color: #3c5d5d;
    font-weight: bold; }
  article .chroma .ni {
    color: #800080; }
  article .chroma .ne {
    color: #990000;
    font-weight: bold; }
  article .chroma .nf {
    color: #990000;
    font-weight: bold; }
  article .chroma .nl {
    color: #990000;
    font-weight: bold; }
  article .chroma .nn {
    color: #555555; }
  article .chroma .nt {
    color: #000080; }
  article .chroma .nv {
    color: #008080; }
  article .chroma .vc {
    color: #008080; }
  article .chroma .vg {
    color: #008080; }
  article .chroma .vi {
    color: #008080; }
  article .chroma .s {
    color: #dd1144; }
  article .chroma .sa {
    color: #dd1144; }
  article .chroma .sb {
    color: #dd1144; }
  article .chroma .sc {
    color: #dd1144; }
  article .chroma .dl {
    color: #dd1144; }
  article .chroma .sd {
    color: #dd1144; }
  article .chroma .s2 {
    color: #dd1144; }
  article .chroma .se {
    color: #dd1144; }
  article .chroma .sh {
    color: #dd1144; }
  article .chroma .si {
    color: #dd1144; }
  article .chroma .sx {
    color: #dd1144; }
  article .chroma .sr {
    color: #009926; }
  article .chroma .s1 {
    color: #dd1144; }
  article .chroma .ss {
    color: #990073; }
  article .chroma .m {
    color: #009999; }
  article .chroma .mb {
    color: #009999; }
  article .chroma .mf {
    color: #009999; }
  article .chroma .mh {
    color: #009999; }
  article .chroma .mi {
    color: #009999; }
  article .chroma .il {
    color: #009999; }
  article .chroma .mo {
    color: #009999; }
  article .chroma .o {
    color: #000000;
    font-weight: bold; }
  article .chroma .ow {
    color: #000000;
    font-weight: bold; }
  article .chroma .c {
    color: #999988;
    font-style: italic; }
  article .chroma .ch {
    color: #999988;
    font-style: italic; }
  article .chroma .cm {
    color: #999988;
    font-style: italic; }
  article .chroma .c1 {
    color: #999988;
    font-style: italic; }
  article .chroma .cs {
    color: #999999;
    font-weight: bold;
    font-style: italic; }
  article .chroma .cp {
    color: #999999;
    font-weight: bold;
    font-style: italic; }
  article .chroma .cpf {
    color: #999999;
    font-weight: bold;
    font-style: italic; }
  article .chroma .gd {
    color: #000000;
    background-color: #ffdddd; }
  article .chroma .ge {
    color: #000000;
    font-style: italic; }
  article .chroma .gr {
    color: #aa0000; }
  article .chroma .gh {
    color: #999999; }
  article .chroma .gi {
    color: #000000;
    background-color: #ddffdd; }
  article .chroma .go {
    color: #888888; }
  article .chroma .gp {
    color: #555555; }
  article .chroma .gs {
    font-weight: bold; }
  article .chroma .gu {
    color: #aaaaaa; }
  article .chroma .gt {
    color: #aa0000; }
  article .chroma .gl {
    text-decoration: underline; }
  article .chroma .w {
    color: #bbbbbb; }

article .admonition {
  position: relative;
  margin: 1rem 0;
  padding: 0 0.75rem;
  border-left: 0.25rem solid;
  overflow: auto;
  background-color: rgba(68, 138, 255, 0.1);
  border-left-color: #448aff; }
  article .admonition .admonition-title {
    background-color: rgba(68, 138, 255, 0.1);
    border-bottom-color: rgba(68, 138, 255, 0.1);
    background-color: rgba(68, 138, 255, 0.25);
    font-weight: bold;
    margin: 0 -0.75rem;
    padding: 0.25rem 2rem; }
  article .admonition i.icon {
    color: #448aff; }
  article .admonition i.icon {
    font-size: 0.85rem;
    position: absolute;
    top: 0.6rem;
    left: 0.4rem; }
  article .admonition .admonition-content {
    padding: 0.5rem 0; }

article .abstract {
  background-color: rgba(0, 176, 255, 0.1);
  border-left-color: #00b0ff; }
  article .abstract .admonition-title {
    background-color: rgba(0, 176, 255, 0.1);
    border-bottom-color: rgba(0, 176, 255, 0.1);
    background-color: rgba(0, 176, 255, 0.25); }
  article .abstract i.icon {
    color: #00b0ff; }

article .info {
  background-color: rgba(83, 211, 230, 0.1);
  border-left-color: #00b8d4; }
  article .info .admonition-title {
    background-color: rgba(83, 211, 230, 0.1);
    border-bottom-color: rgba(83, 211, 230, 0.1); }
  article .info i.icon {
    color: #00b8d4; }

article .tip {
  background-color: rgba(0, 191, 165, 0.1);
  border-left-color: #00bfa5; }
  article .tip .admonition-title {
    background-color: rgba(0, 191, 165, 0.1);
    border-bottom-color: rgba(0, 191, 165, 0.1); }
  article .tip i.icon {
    color: #00bfa5; }

article .success {
  background-color: rgba(0, 200, 83, 0.1);
  border-left-color: #00c853; }
  article .success .admonition-title {
    background-color: rgba(0, 200, 83, 0.1);
    background-color: rgba(0, 200, 83, 0.1); }
  article .success i.icon {
    color: #00c853; }

article .question {
  background-color: rgba(100, 221, 23, 0.1);
  border-left-color: #64dd17; }
  article .question .admonition-title {
    background-color: rgba(100, 221, 23, 0.1);
    background-color: rgba(100, 221, 23, 0.1); }
  article .question i.icon {
    color: #64dd17; }

article .warning {
  background-color: rgba(255, 145, 0, 0.1);
  border-left-color: #ff9100; }
  article .warning .admonition-title {
    background-color: rgba(255, 145, 0, 0.1);
    background-color: rgba(255, 145, 0, 0.1); }
  article .warning i.icon {
    color: #ff9100; }

article .failure {
  background-color: rgba(255, 82, 82, 0.1);
  border-left-color: #ff5252; }
  article .failure .admonition-title {
    background-color: rgba(255, 82, 82, 0.1);
    background-color: rgba(255, 82, 82, 0.1); }
  article .failure i.icon {
    color: #ff5252; }

article .danger {
  background-color: rgba(68, 138, 255, 0.1);
  border-left-color: #ff1744; }
  article .danger .admonition-title {
    background-color: rgba(68, 138, 255, 0.1);
    background-color: rgba(68, 138, 255, 0.1); }
  article .danger i.icon {
    color: #ff1744; }

article .bug {
  background-color: rgba(255, 23, 68, 0.1);
  border-left-color: #f50057; }
  article .bug .admonition-title {
    background-color: rgba(255, 23, 68, 0.1);
    background-color: rgba(255, 23, 68, 0.1); }
  article .bug i.icon {
    color: #f50057; }

article .example {
  background-color: rgba(101, 31, 255, 0.1);
  border-left-color: #651fff; }
  article .example .admonition-title {
    background-color: rgba(101, 31, 255, 0.1);
    background-color: rgba(101, 31, 255, 0.1); }
  article .example i.icon {
    color: #651fff; }

article .quote {
  background-color: rgba(159, 159, 159, 0.1);
  border-left-color: #9e9e9e; }
  article .quote .admonition-title {
    background-color: rgba(159, 159, 159, 0.1);
    background-color: rgba(159, 159, 159, 0.1); }
  article .quote i.icon {
    color: #9e9e9e; }

article .bilibili {
  position: relative;
  margin-bottom: 1em;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%; }
  article .bilibili iframe,
  article .bilibili object,
  article .bilibili embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

article .shortcode-link {
  max-width: 100%;
  margin-top: var(--global-spacing);
  margin-bottom: var(--global-spacing);
  display: flex;
  flex: 1;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  border: 1px solid #e3e8ed;
  border-radius: 8px;
  padding: calc(var(--global-spacing) * 2); }
  article .shortcode-link .shortcode-link-left {
    margin-right: 8px; }
    article .shortcode-link .shortcode-link-left .icon {
      width: 32px;
      height: 32px; }
  article .shortcode-link .shortcode-link-right {
    height: auto;
    flex-grow: 1;
    display: flex;
    width: 0;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between; }
  article .shortcode-link .title {
    color: #3d9252; }
  article .shortcode-link .shortcode-link-right-url {
    width: 100%;
    text-overflow: ellipsis;
    overflow: hidden; }

article figure {
  margin: 0.5rem;
  text-align: center; }
  article figure img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
    overflow: hidden;
    border-style: none;
    max-width: 100%;
    min-height: 1em; }
