@charset "UTF-8";
@import url("https://cdn.jsdelivr.net/npm/@fontsource/iosevka/index.css");
body.dark-theme {
  --fg-color: #dadada;
  --bg-color: #282828;
  --subtitle-color: #999;
  --link-color: #ef4444;
  --link-active-color: #f87171;
  --link-disabled-color: #909090;
  --button-bg-color: #dadada;
  --button-fg-color: #282828;
  --button-active-bg-color: #fff;
  --button-active-fg-color: #000;
  --figure-bg-color: #ffffff18;
  --preformatted-bg-color: #ffffff18;
  --search-container-bg-color: #1a1a1a;
  --search-container-fg-color: #eee;
  --search-container-sep-color: #000;
  --search-container-active-indicator-color: #ef4444;
  --expander-summary-color: #202020;
  --table-border-color: #fff;
  --table-nth-child-bg-color: #444;
  --adm-bg: #1d1e20;
  --adm-text: #e6e6e6;
  --image-opacity: 0.7; }

@media (prefers-color-scheme: dark) {
  body {
    --fg-color: #dadada;
    --bg-color: #282828;
    --subtitle-color: #999;
    --link-color: #ef4444;
    --link-active-color: #f87171;
    --link-disabled-color: #909090;
    --button-bg-color: #dadada;
    --button-fg-color: #282828;
    --button-active-bg-color: #fff;
    --button-active-fg-color: #000;
    --figure-bg-color: #ffffff18;
    --preformatted-bg-color: #ffffff18;
    --search-container-bg-color: #1a1a1a;
    --search-container-fg-color: #eee;
    --search-container-sep-color: #000;
    --search-container-active-indicator-color: #ef4444;
    --expander-summary-color: #202020;
    --table-border-color: #fff;
    --table-nth-child-bg-color: #444;
    --adm-bg: #1d1e20;
    --adm-text: #e6e6e6;
    --image-opacity: 0.7; } }

@media (prefers-color-scheme: dark) {
  body:not(.light-theme) {
    --fg-color: #dadada;
    --bg-color: #282828;
    --subtitle-color: #999;
    --link-color: #ef4444;
    --link-active-color: #f87171;
    --link-disabled-color: #909090;
    --button-bg-color: #dadada;
    --button-fg-color: #282828;
    --button-active-bg-color: #fff;
    --button-active-fg-color: #000;
    --figure-bg-color: #ffffff18;
    --preformatted-bg-color: #ffffff18;
    --search-container-bg-color: #1a1a1a;
    --search-container-fg-color: #eee;
    --search-container-sep-color: #000;
    --search-container-active-indicator-color: #ef4444;
    --expander-summary-color: #202020;
    --table-border-color: #fff;
    --table-nth-child-bg-color: #444;
    --adm-bg: #1d1e20;
    --adm-text: #e6e6e6;
    --image-opacity: 0.7; } }

html {
  zoom: 110%; }

body {
  --fg-color: #333;
  --bg-color: #fff;
  --subtitle-color: #555;
  --section-sep-color: #aaa;
  --link-color: #b91c1c;
  --link-active-color: #7f1d1d;
  --link-disabled-color: #757575;
  --button-bg-color: #111;
  --button-fg-color: #dadada;
  --button-active-bg-color: #000;
  --button-active-fg-color: #fff;
  --figure-bg-color: #0002;
  --preformatted-bg-color: #0002;
  --preformatted-border-color: #000;
  --sidebar-attribution-color: #777;
  --search-container-bg-color: #eee;
  --search-container-fg-color: #000;
  --search-container-border-color: #000;
  --search-container-sep-color: #c0c0c0;
  --search-container-active-indicator-color: #b91c1c;
  --expander-summary-color: #eee;
  --table-border-color: #000;
  --table-nth-child-bg-color: #ccc;
  --adm-bg: #fff;
  --adm-text: #333;
  --adm-code-bg: #313244;
  --adm-code-text: #cdd6f4;
  --adm-blockquote-border: #45475a;
  --adm-header-bg-opacity: .1;
  --adm-abstract: #209fb5;
  --adm-abstract-rgb: 32, 159, 181;
  --adm-caution: #e64553;
  --adm-caution-rgb: 230, 69, 83;
  --adm-code: #7287fd;
  --adm-code-rgb: 114, 135, 253;
  --adm-conclusion: #dd7878;
  --adm-conclusion-rgb: 221, 120, 120;
  --adm-danger: #fe640b;
  --adm-danger-rgb: 254, 100, 11;
  --adm-error: #d20f39;
  --adm-error-rgb: 210, 15, 57;
  --adm-example: #dc8a78;
  --adm-example-rgb: 220, 138, 120;
  --adm-experiment: #51bb2a;
  --adm-experiment-rgb: 81, 187, 42;
  --adm-goal: #e64553;
  --adm-goal-rgb: 230, 69, 83;
  --adm-idea: #df8e1d;
  --adm-idea-rgb: 223, 142, 29;
  --adm-important: #7d4dda;
  --adm-important-rgb: 125, 77, 218;
  --adm-info: #04a5e5;
  --adm-info-rgb: 4, 165, 229;
  --adm-memo: #e64553;
  --adm-memo-rgb: 230, 69, 83;
  --adm-note: #096ae1;
  --adm-note-rgb: 9, 106, 225;
  --adm-notify: #0d48bd;
  --adm-notify-rgb: 13, 72, 189;
  --adm-question: #179299;
  --adm-question-rgb: 23, 146, 153;
  --adm-quote: #7287fd;
  --adm-quote-rgb: 114, 135, 253;
  --adm-success: #40a02b;
  --adm-success-rgb: 64, 160, 43;
  --adm-task: #8839ef;
  --adm-task-rgb: 136, 57, 239;
  --adm-tip: #179299;
  --adm-tip-rgb: 23, 146, 153;
  --adm-warning: #df8e1d;
  --adm-warning-rgb: 223, 142, 29;
  --image-opacity: 0.9;
  color: var(--fg-color);
  background-color: var(--bg-color);
  max-width: 800px;
  margin: 1rem auto 2rem auto;
  padding: 0 0.5rem;
  font-size: 15px;
  line-height: 1.5;
  font-family: iosevka; }

@media screen and (max-width: 600px) {
  body {
    margin: 1rem auto; } }

mark {
  border-radius: 0.25rem;
  padding: 1px 0.25rem; }

a,
span.link {
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: ease;
  color: var(--link-color);
  text-decoration: none; }
  a:hover:not(.disabled), a:active:not(.disabled), a:focus:not(.disabled),
  span.link:hover:not(.disabled),
  span.link:active:not(.disabled),
  span.link:focus:not(.disabled) {
    color: var(--link-active-color);
    text-decoration: underline;
    cursor: pointer; }
  a.disabled,
  span.link.disabled {
    text-decoration: none;
    color: var(--link-disabled-color); }

a.btn {
  background-color: var(--button-bg-color);
  color: var(--button-fg-color);
  padding: 10px;
  border-radius: 5px;
  text-decoration: none; }
  a.btn:hover, a.btn:active, a.btn:focus {
    color: var(--button-active-fg-color);
    background-color: var(--button-active-bg-color); }

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.2;
  display: flex;
  gap: 0.5rem;
  align-items: center;
  flex-wrap: wrap; }
  h1 .permalink,
  h2 .permalink,
  h3 .permalink,
  h4 .permalink,
  h5 .permalink,
  h6 .permalink {
    display: flex; }
    h1 .permalink svg,
    h2 .permalink svg,
    h3 .permalink svg,
    h4 .permalink svg,
    h5 .permalink svg,
    h6 .permalink svg {
      width: 0.9em;
      height: 0.9em; }
  h1:hover .permalink,
  h2:hover .permalink,
  h3:hover .permalink,
  h4:hover .permalink,
  h5:hover .permalink,
  h6:hover .permalink {
    opacity: 1; }

@media (hover: hover) and (pointer: fine) {
  .permalink {
    opacity: 0; } }

h1 {
  font-size: 2em; }

div.article-title {
  display: flex;
  align-items: center;
  gap: 0 1rem; }
  div.article-title h1 {
    flex-grow: 1;
    margin: 10px 0; }
  div.article-title a {
    display: flex; }
    div.article-title a img {
      opacity: 1;
      max-width: 130px; }
  @media screen and (max-width: 600px) {
    div.article-title {
      flex-wrap: wrap; } }
p.article-info {
  margin-top: 0; }
  @media screen and (max-width: 600px) {
    p.article-info {
      margin-top: 15px; } }
  p.article-info .unlisted-notice {
    border-radius: 5px;
    background-color: #df8e1d;
    color: black;
    padding: 5px 0.5rem; }

code,
tt,
kbd,
pre {
  font-family: iosevka, monospace; }

main *:not(pre) > code,
tt,
kbd {
  border-radius: 5px;
  background-color: var(--preformatted-bg-color);
  padding: 1px 0.5rem; }

pre {
  border-radius: 5px;
  border: 1px solid var(--preformatted-border-color);
  padding: 1rem;
  overflow-x: auto; }

article {
  padding: 24px 0; }

.center {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%; }

blockquote {
  border-left: 0.7em solid black;
  padding: 0.5em 0 0.5em 1em; }
  blockquote *:first-child {
    margin-top: 0; }
  blockquote *:last-child {
    margin-bottom: 0; }

figure {
  background-color: var(--figure-bg-color);
  padding: 5px;
  margin: 0 auto; }
  figure * {
    margin: 0; }

picture {
  margin: 0 auto;
  display: block; }

img {
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: ease;
  max-width: 100%;
  height: auto;
  opacity: var(--image-opacity); }
  img:hover, img:active, img:focus {
    opacity: 1;
    transform: scale(1.02); }

.align-center {
  display: block;
  margin: 0 auto; }
  .align-center.figure {
    margin: 1em auto;
    text-align: center; }

/* image galleries */
table.gallery tr {
  max-width: 60%; }
  table.gallery tr td {
    vertical-align: middle; }
    table.gallery tr td p {
      margin: 0; }

div.gallery {
  display: flex;
  flex-direction: horizontal;
  gap: 4px; }
  div.gallery p {
    margin: 0; }

details:not(.normal-expander) > summary::marker {
  display: none; }

details:not(.normal-expander) > summary::details-marker {
  display: none; }

details:not(.normal-expander) > summary:before {
  content: '▶'; }

details:not(.normal-expander):open > summary:before {
  content: '▼'; }

details.youtube-expander {
  margin: 1em 0; }
  details.youtube-expander > summary {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background-color: var(--expander-summary-color);
    padding: 1em; }
    details.youtube-expander > summary svg {
      color: #e52d27;
      font-size: 1.1em; }
  details.youtube-expander div.lite-youtube-fallback {
    background: black;
    padding: 4rem;
    text-align: center;
    font-size: 1.5rem; }
    details.youtube-expander div.lite-youtube-fallback a {
      text-decoration: none; }

details.advent-of-code-part-expander {
  border: 1px solid #ccc;
  margin: 1em 0;
  padding: 1em; }
  details.advent-of-code-part-expander > summary h3 {
    display: inline; }

details.portfolio-item {
  margin-bottom: 1em; }
  details.portfolio-item .project-image {
    width: 100%;
    max-width: 600px;
    border-radius: 0.5rem;
    margin-top: 0.55rem; }
  details.portfolio-item > summary {
    background-color: var(--expander-summary-color);
    display: grid;
    padding: 0.5rem 1rem 0.5rem 0.75rem;
    gap: 0.2rem 0.5rem;
    grid-template: "expander icon title       dates      " auto "expander icon description description" auto / 1rem 2.5rem auto auto; }
    details.portfolio-item > summary:before {
      grid-area: expander;
      display: flex;
      align-items: center; }
    details.portfolio-item > summary div.company-logo {
      grid-area: icon;
      display: flex;
      align-items: center;
      justify-content: center; }
      details.portfolio-item > summary div.company-logo img {
        opacity: 1; }
        details.portfolio-item > summary div.company-logo img.with-bg {
          border-radius: 0.5rem;
          background-color: white; }
    details.portfolio-item > summary h3 {
      grid-area: title;
      margin: 0; }
    details.portfolio-item > summary > span {
      text-align: right;
      grid-area: dates;
      font-size: 0.9em;
      color: var(--subtitle-color); }
    details.portfolio-item > summary p {
      grid-area: description;
      margin: 0; }
      details.portfolio-item > summary p i.description-icon {
        margin-right: 0.35rem; }
    details.portfolio-item > summary:hover div.company-logo img {
      transform: scale(1.2); }
    details.portfolio-item > summary:hover .permalink {
      opacity: 1; }
  details.portfolio-item.no-logo > summary {
    grid-template: "expander title       dates      " auto "expander description description" auto / 1rem auto auto; }
  details.portfolio-item > div {
    margin-left: 2em; }
  @media screen and (max-width: 540px) {
    details.portfolio-item > summary {
      grid-template: "expander icon title      " auto "expander icon dates      " auto "expander icon description" auto / 1rem 2.5rem auto; }
      details.portfolio-item > summary span {
        text-align: left; }
    details.portfolio-item.no-logo > summary {
      grid-template: "expander title      " auto "expander dates      " auto "expander description" auto / 1rem auto; } }
details.portfolio-more-items {
  margin-bottom: 1em; }
  details.portfolio-more-items > summary {
    display: flex;
    justify-content: center; }
    details.portfolio-more-items > summary > div {
      background-color: var(--expander-summary-color);
      border-radius: 0.5rem;
      padding: 0.5rem 2rem;
      cursor: pointer;
      font-weight: bold;
      font-size: 1.1rem; }
    details.portfolio-more-items > summary:before {
      content: none; }
  details.portfolio-more-items:open > summary {
    display: none; }

header {
  --image-width: 150px;
  --col-gap: 1rem;
  display: grid;
  gap: 0.6rem var(--col-gap);
  grid-template: "name-and-subtitle site-image" auto "links site-image" auto "nav nav" auto/auto var(--image-width); }
  header a.site-image {
    grid-area: site-image; }
    header a.site-image picture {
      width: var(--image-width);
      height: var(--image-width); }
    header a.site-image picture,
    header a.site-image img {
      opacity: 1;
      border-radius: 50%; }
  header .name-and-subtitle {
    grid-area: name-and-subtitle;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start; }
    header .name-and-subtitle .site-title a {
      font-size: 3.5em;
      font-weight: bold;
      text-decoration: none;
      color: var(--fg-color); }
      header .name-and-subtitle .site-title a:active, header .name-and-subtitle .site-title a:hover, header .name-and-subtitle .site-title a:focus {
        color: var(--fg-color); }
    header .name-and-subtitle .site-subtitle {
      font-size: 1.3rem;
      color: var(--subtitle-color); }
  header div.links {
    grid-area: links;
    font-size: 1.7em;
    display: flex;
    gap: 0.8em;
    flex-wrap: wrap; }
    header div.links a {
      text-decoration: none;
      display: flex;
      align-items: center; }
  header nav {
    grid-area: nav;
    padding: 0.5rem 0;
    border-bottom: 2px solid var(--section-sep-color);
    display: grid;
    grid-template: "nav-links . search-link" auto "search-container search-container search-container" auto / auto 1fr; }
    header nav p {
      margin: 0.5rem 0; }
    header nav a {
      text-decoration: none; }
    header nav .nav-links {
      grid-area: nav-links;
      display: flex;
      align-items: center;
      gap: 0.5rem 1.5rem;
      flex-wrap: wrap;
      font-size: 1.2em; }
      header nav .nav-links a {
        display: flex;
        align-items: center;
        gap: 0.4rem; }
        header nav .nav-links a span {
          line-height: 1.4; }
        header nav .nav-links a:active, header nav .nav-links a:hover, header nav .nav-links a:focus {
          color: var(--link-active-color); }
      header nav .nav-links .categories-tags-collapsed {
        display: none; }
      header nav .nav-links .posts {
        display: flex;
        gap: 0.3rem; }
    @media screen and (max-width: 650px) {
      header nav .nav-links .categories-link,
      header nav .nav-links .tags-link {
        display: none; }
      header nav .nav-links .categories-tags-collapsed {
        display: flex; }
        header nav .nav-links .categories-tags-collapsed a:not(:first-child) {
          margin-left: 0.3rem; } }
    @media screen and (max-width: 550px) {
      header nav .nav-links {
        gap: 0.5rem 1rem; } }
    @media screen and (max-width: 400px) {
      header nav .nav-links > a > svg,
      header nav .nav-links > .posts > a > svg {
        display: none; } }
    header nav #toggle-search {
      grid-area: search-link;
      text-align: right;
      display: flex;
      align-items: center;
      justify-content: center; }
      header nav #toggle-search.hidden {
        display: none; }
    header nav #search-container {
      grid-area: search-container;
      margin: 20px 0;
      text-align: left; }
      header nav #search-container input[type=search] {
        padding: 8px;
        border: 1px solid var(--search-container-border-color);
        background-color: var(--search-container-bg-color);
        color: var(--search-container-fg-color);
        width: 100%; }
      header nav #search-container.hidden {
        display: none; }
      header nav #search-container #search-results {
        background-color: var(--search-container-bg-color);
        padding: .5rem 0; }
        header nav #search-container #search-results .no-results {
          text-align: center; }
        header nav #search-container #search-results hr {
          border: 1px solid var(--search-container-sep-color); }
        header nav #search-container #search-results .search-result {
          padding: 0 .5rem;
          margin: .5rem 0; }
          header nav #search-container #search-results .search-result h4 {
            margin: 0;
            font-size: 1.1rem; }
          header nav #search-container #search-results .search-result .categories {
            margin: 0; }
          header nav #search-container #search-results .search-result .tags {
            margin-top: 0; }
          header nav #search-container #search-results .search-result .content-summary {
            margin-top: 0.5rem;
            display: -webkit-box;
            overflow: hidden;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
            line-clamp: 3; }
          header nav #search-container #search-results .search-result:hover, header nav #search-container #search-results .search-result:active {
            padding-left: .25rem;
            border-left: 0.25rem solid var(--search-container-active-indicator-color); }
  @media screen and (max-width: 600px) {
    header {
      --image-width: 80px;
      --col-gap: 0.5rem; }
      header .name-and-subtitle .site-title a {
        font-size: 2rem; }
      header .name-and-subtitle .site-subtitle {
        font-size: 1rem; } }
dt {
  font-size: 1.15em; }

dd {
  margin-block-end: 1em; }
  dd p.first {
    margin-top: 0; }

.docutils.field-list th.field-name {
  text-align: left;
  padding-right: 1em; }

.next-prev {
  display: flex;
  flex-direction: row;
  justify-content: space-between; }
  .next-prev a {
    margin: 1em 0; }
  @media screen and (max-width: 600px) {
    .next-prev {
      align-items: center;
      flex-direction: column;
      text-align: center; } }
.related-posts .header,
.webring .header,
.comments .header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 0.5rem; }
  .related-posts .header h3,
  .webring .header h3,
  .comments .header h3 {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem; }
  .related-posts .header .attribution,
  .webring .header .attribution,
  .comments .header .attribution {
    font-size: 0.8rem;
    color: var(--sidebar-attribution-color); }

.related-posts .articles ul,
.webring .articles ul,
.comments .articles ul {
  margin: 0;
  padding-left: 1.5rem; }

footer {
  border-top: 2px solid var(--section-sep-color);
  margin-top: 2em;
  padding-top: 2em;
  text-align: center; }
  footer p:first-child {
    margin-top: 0; }

table:not(.gallery) {
  table-layout: fixed;
  border-collapse: collapse; }
  table:not(.gallery) thead tr {
    border-bottom: 1px solid var(--table-border-color); }
  table:not(.gallery) tbody tr:nth-child(odd) {
    background-color: var(--table-nth-child-bg-color); }
  table:not(.gallery) th,
  table:not(.gallery) td {
    padding: 4px 8px; }
    table:not(.gallery) th.align-right,
    table:not(.gallery) td.align-right {
      text-align: right; }
    table:not(.gallery) th.border-right,
    table:not(.gallery) td.border-right {
      border-right: 1px solid var(--table-border-color); }

.post-summary {
  display: flex;
  align-items: flex-start; }
  .post-summary .summary-image {
    width: 250px;
    margin: 4px 16px 0 0;
    flex-grow: 0;
    flex-shrink: 0; }
  .post-summary .summary-text {
    margin: 0; }
    .post-summary .summary-text .summary > p:first-child {
      margin-top: 0; }
  @media screen and (max-width: 600px) {
    .post-summary {
      flex-direction: column; }
      .post-summary .summary-image {
        width: 60%;
        margin: 0 auto; } }
  @media screen and (max-width: 400px) {
    .post-summary .summary-image {
      width: 100%; } }
.admonition {
  margin: 1rem 0;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
  transition: box-shadow 0.3s ease;
  position: relative; }
  .admonition .admonition-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    font-weight: 600;
    font-size: 1.1rem;
    border-radius: 4px 4px 0 0;
    position: relative;
    z-index: 1;
    transition: color 0.3s ease;
    color: var(--adm-type-header, var(--adm-type-color)); }
    .admonition .admonition-header svg {
      width: 1.1em;
      height: 1.1em;
      flex-shrink: 0;
      transition: fill 0.3s ease; }
    .admonition .admonition-header span {
      flex-grow: 1; }
  .admonition .admonition-content {
    padding: 1rem;
    border-radius: 0 0 4px 4px;
    background-color: var(--adm-bg);
    color: var(--adm-text);
    transition: background-color 0.3s ease, color 0.3s ease;
    position: relative; }
    .admonition .admonition-content p {
      margin-top: 0;
      margin-bottom: 0.75rem; }
    .admonition .admonition-content ul, .admonition .admonition-content ol {
      margin-top: 0;
      margin-bottom: 0.75rem;
      padding-left: 1.5rem; }
    .admonition .admonition-content blockquote {
      margin: 0 0 0.75rem 0;
      padding-left: 1rem;
      border-left: 3px solid var(--adm-blockquote-border);
      font-style: italic;
      color: inherit;
      transition: border-color 0.3s ease, color 0.3s ease; }
    .admonition .admonition-content code:not(pre > code) {
      padding: 0.2em 0.4em;
      border-radius: 3px;
      font-size: 0.9em;
      background-color: var(--adm-code-bg);
      color: var(--adm-code-text);
      transition: background-color 0.3s ease, color 0.3s ease; }
    .admonition .admonition-content pre {
      margin: 0 0 0.75rem 0;
      padding: 0.8rem 1rem;
      border-radius: 3px;
      overflow-x: auto;
      background-color: var(--adm-code-bg);
      transition: background-color 0.3s ease; }
      .admonition .admonition-content pre code {
        background-color: transparent !important;
        color: var(--adm-code-text);
        padding: 0;
        font-size: inherit;
        border-radius: 0; }
    .admonition .admonition-content > *:last-child {
      margin-bottom: 0; }
  .admonition > summary {
    list-style: none;
    cursor: pointer;
    position: relative;
    z-index: 2; }
    .admonition > summary::-webkit-details-marker {
      display: none; }
    .admonition > summary::after {
      content: ">";
      display: inline-block;
      font-weight: bold;
      margin-left: 0.6em;
      transition: transform 0.2s ease-in-out;
      transform-origin: center;
      color: currentColor; }
  .admonition[open] > summary::after {
    transform: rotate(90deg); }
  .admonition.abstract {
    border-left: 4px solid var(--adm-abstract);
    background-color: rgba(var(--adm-abstract-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-abstract);
    --adm-type-header: var(--adm-abstract-header, var(--adm-abstract)); }
  .admonition.caution {
    border-left: 4px solid var(--adm-caution);
    background-color: rgba(var(--adm-caution-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-caution);
    --adm-type-header: var(--adm-caution-header, var(--adm-caution)); }
  .admonition.code {
    border-left: 4px solid var(--adm-code);
    background-color: rgba(var(--adm-code-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-code);
    --adm-type-header: var(--adm-code-header, var(--adm-code)); }
  .admonition.conclusion {
    border-left: 4px solid var(--adm-conclusion);
    background-color: rgba(var(--adm-conclusion-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-conclusion);
    --adm-type-header: var(--adm-conclusion-header, var(--adm-conclusion)); }
  .admonition.danger {
    border-left: 4px solid var(--adm-danger);
    background-color: rgba(var(--adm-danger-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-danger);
    --adm-type-header: var(--adm-danger-header, var(--adm-danger)); }
  .admonition.error {
    border-left: 4px solid var(--adm-error);
    background-color: rgba(var(--adm-error-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-error);
    --adm-type-header: var(--adm-error-header, var(--adm-error)); }
  .admonition.example {
    border-left: 4px solid var(--adm-example);
    background-color: rgba(var(--adm-example-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-example);
    --adm-type-header: var(--adm-example-header, var(--adm-example)); }
  .admonition.experiment {
    border-left: 4px solid var(--adm-experiment);
    background-color: rgba(var(--adm-experiment-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-experiment);
    --adm-type-header: var(--adm-experiment-header, var(--adm-experiment)); }
  .admonition.goal {
    border-left: 4px solid var(--adm-goal);
    background-color: rgba(var(--adm-goal-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-goal);
    --adm-type-header: var(--adm-goal-header, var(--adm-goal)); }
  .admonition.idea {
    border-left: 4px solid var(--adm-idea);
    background-color: rgba(var(--adm-idea-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-idea);
    --adm-type-header: var(--adm-idea-header, var(--adm-idea)); }
  .admonition.important {
    border-left: 4px solid var(--adm-important);
    background-color: rgba(var(--adm-important-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-important);
    --adm-type-header: var(--adm-important-header, var(--adm-important)); }
  .admonition.info {
    border-left: 4px solid var(--adm-info);
    background-color: rgba(var(--adm-info-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-info);
    --adm-type-header: var(--adm-info-header, var(--adm-info)); }
  .admonition.memo {
    border-left: 4px solid var(--adm-memo);
    background-color: rgba(var(--adm-memo-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-memo);
    --adm-type-header: var(--adm-memo-header, var(--adm-memo)); }
  .admonition.note {
    border-left: 4px solid var(--adm-note);
    background-color: rgba(var(--adm-note-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-note);
    --adm-type-header: var(--adm-note-header, var(--adm-note)); }
  .admonition.notify {
    border-left: 4px solid var(--adm-notify);
    background-color: rgba(var(--adm-notify-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-notify);
    --adm-type-header: var(--adm-notify-header, var(--adm-notify)); }
  .admonition.question {
    border-left: 4px solid var(--adm-question);
    background-color: rgba(var(--adm-question-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-question);
    --adm-type-header: var(--adm-question-header, var(--adm-question)); }
  .admonition.quote {
    border-left: 4px solid var(--adm-quote);
    background-color: rgba(var(--adm-quote-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-quote);
    --adm-type-header: var(--adm-quote-header, var(--adm-quote)); }
  .admonition.success {
    border-left: 4px solid var(--adm-success);
    background-color: rgba(var(--adm-success-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-success);
    --adm-type-header: var(--adm-success-header, var(--adm-success)); }
  .admonition.task {
    border-left: 4px solid var(--adm-task);
    background-color: rgba(var(--adm-task-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-task);
    --adm-type-header: var(--adm-task-header, var(--adm-task)); }
  .admonition.tip {
    border-left: 4px solid var(--adm-tip);
    background-color: rgba(var(--adm-tip-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-tip);
    --adm-type-header: var(--adm-tip-header, var(--adm-tip)); }
  .admonition.warning {
    border-left: 4px solid var(--adm-warning);
    background-color: rgba(var(--adm-warning-rgb), var(--adm-header-bg-opacity));
    --adm-type-color: var(--adm-warning);
    --adm-type-header: var(--adm-warning-header, var(--adm-warning)); }

.admonition input[type="checkbox"] {
  pointer-events: auto; }

.post-nav {
  display: flex;
  gap: 1rem;
  margin-top: 2rem; }

.post-nav a {
  flex: 1; }

.post-nav .next {
  text-align: left; }

.post-nav .prev {
  text-align: right; }

.link-with-icon svg {
  width: 1.2em;
  height: 1.2em;
  vertical-align: top; }
