
@import "https://unpkg.com/@lumeland/ds@0.5.2/ds.css";
/* Lume's design system */
/* Custom components */
.navbar {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  row-gap: 1rem;
  justify-content: space-between;
  padding: 2rem min(5vw, 5rem);
  align-items: center;
}
.navbar-links {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  font: var(--font-ui-bold);
  align-items: center;

  & [aria-current="page"] {
    text-decoration: none;
  }
}
.navbar-search {
  padding: 0 1em;
  margin-left: auto;
  display: flex;
  align-items: center;
}
.navbar-home {
  text-decoration: none;
}
.page-header {
  margin-bottom: var(--row-gap-small);

  &>p:first-child {
    margin-top: 0;
  }
}
.page-title {
  font: var(--font-display);
  letter-spacing: var(--font-display-spacing);
  margin: 0;
  text-wrap: balance;
  color: var(--color-base);
}
.page-navigation {
  margin-bottom: var(--row-gap-small);

  & ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    gap: .5em;
  }

  & h2 {
    font: var(--font-body-bold);
    letter-spacing: var(--font-body-spacing);
    margin: .5em 0;
  }
}
.page-pagination {
  border-top: solid 1px var(--color-line);
  margin-top: var(--row-gap-xsmall);
}
.postList {
  list-style: none;
  padding: 0;

  & article.post+article.post {
    margin-top: var(--row-gap-xsmall);
  }

  & li.post+li.post {
    margin-top: var(--row-gap-xsmall);
  }

  & .post-header {
    margin-bottom: var(--row-gap-xsmall);
  }

  & .post-details {
    font: var(--font-small);
  }

  & .post-title {
    font: var(--font-title);
    letter-spacing: var(--font-title-spacing);
    display: block;

    & a {
      text-decoration: none;
    }
  }
}
.post-header {
  margin-bottom: var(--row-gap-small);
}
.post-title {
  font: var(--font-display);
  letter-spacing: var(--font-display-spacing);
  margin: 0 0 0.2em;
  text-wrap: balance;
  color: var(--color-base);
}
.post-description {
  letter-spacing: var(--font-display-spacing);
  margin: 0 0 0.2em;
  text-wrap: balance;
  color: var(--color-base);
}
.post-details {
  display: flex;
  flex-flow: row wrap;
  row-gap: 1em;
  -moz-column-gap: .5em;
       column-gap: .5em;
  align-items: center;
  font: var(--font-small);
  color: var(--color-dim);

  & p {
    margin: 0;
  }

  & p:nth-child(-n+2)::after {
    content: "•";
    padding-left: .5em;
    align-self: stretch;
  }

  & p:last-of-type {
    margin-right: .5em;
  }

  & a {
    color: inherit;
  }
}
.post-tags {
  display: flex;
  flex-flow: row wrap;
  gap: .5em;
  align-items: center;
}
.post-link {
  display: inline-block;
}
pre code.hljs{display:block;overflow-x:auto;padding:1em}
code.hljs{padding:3px 5px}
.hljs{background:#000;color:#f8f8f8}
.hljs-comment,.hljs-quote{color:#aeaeae;font-style:italic}
.hljs-keyword,.hljs-selector-tag,.hljs-type{color:#e28964}
.hljs-string{color:#65b042}
.hljs-subst{color:#daefa3}
.hljs-link,.hljs-regexp{color:#e9c062}
.hljs-name,.hljs-section,.hljs-tag,.hljs-title{color:#89bdff}
.hljs-class .hljs-title,.hljs-doctag,.hljs-title.class_{text-decoration:underline}
.hljs-bullet,.hljs-number,.hljs-symbol{color:#3387cc}
.hljs-params,.hljs-template-variable,.hljs-variable{color:#3e87e3}
.hljs-attribute{color:#cda869}
.hljs-meta{color:#8996a8}
.hljs-formula{background-color:#0e2231;color:#f8f8f8;font-style:italic}
.hljs-addition{background-color:#253b22;color:#f8f8f8}
.hljs-deletion{background-color:#420e09;color:#f8f8f8}
.hljs-selector-class{color:#9b703f}
.hljs-selector-id{color:#8b98ab}
.hljs-emphasis{font-style:italic}
.hljs-strong{font-weight:700}
/* Make the links black */
:root {
  --color-link: var(--color-base);
  --color-link-hover: var(--color-dim);
}
/* Page layout */
main {
  padding: var(--row-gap-medium) 0;
  max-width: min(100% - 15vw, 70em);
  margin: 0 auto;

  &> :first-child {
    margin-top: 0;
  }
}
/* Search tweak */
.search {
  margin-top: var(--row-gap-xsmall);
}
code[class*="language-"] {
  color: aliceblue;
}