body {
  font: 100%/1.6 sans-serif;
  max-width: 43em;
  margin: auto;
  padding: 1em;
}

.article-content {
  max-width: 40em;
  margin: auto;
}

/* {{{ General element tweaks*/
blockquote {
  padding-left: 1.25rem;
  border-left: 3px solid;
  margin-left: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  a {
    display: inline-block;
    text-decoration: none;
    /* Note: I need to check whether this only aligns things better with the font I use */
    transform: translateY(-2px);
  }
}

math[display="block"] {
  margin: 1.5em 0;
}
/* }}}*/
/* {{{ Asides */
/* TODO: remove aside-header altogether */
.aside-header {
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
}

.aside-header > img {
  height: 1.75em;
  margin-right: 0.75em;
}

.aside {
  background: #f4daf7;
  border-radius: 3px;

  box-sizing: border-box;
  padding-left: 1rem;
  padding-right: 1rem;
  margin: 1.5rem 0;

  /* Prevents margin-collapsing of the children. */
  border: 1px solid transparent;
}

.aside-long > :not(summary) {
  margin-left: 1rem;
}

.aside-long:has-child(.aside-header) > :not(summary):nth-child(2) {
  margin-top: 0;
  padding-top: 0;
}

/* {{{ Override marker*/
.aside-summary::marker {
  display: none;
}

.aside-summary:before {
  content: "▶";
  font-size: 0.75rem;
  padding: 0 0.75rem 0 0.25rem;
  box-sizing: border-box;
}

.aside[open] .aside-summary:before {
  content: "▼";
}

/* }}}*/
/* }}}*/
/* {{{ Tier lists */
.tier-list {
  background: #444;

  display: flex;
  flex-direction: column;

  padding: calc(3 * var(--spacing));
  box-sizing: border-box;

  --spacing: 0.75px;

  .tier:not(:last-child) {
    border-bottom: 1px solid #000;
  }

  .tier {
    display: flex;
    flex-direction: row;
    justify-items: center;

    .tier-elements {
      display: flex;
      flex-wrap: wrap;

      a > img,
      a {
        height: 3rem;
      }
    }

    .tier-heading,
    a {
      margin: var(--spacing);
    }

    .tier-heading {
      width: 6rem;
      min-width: 6rem;
      min-height: 3rem;
      margin: var(--spacing);
      color: unset;
      text-decoration: none;

      display: flex;
      flex-direction: row;
      justify-content: center;
      align-items: center;

      .tier-heading-text {
        padding: 0 0.5rem;
        font-size: 1em;
      }
    }
  }

  /* {{{ Tier colors*/
  .tier:nth-child(1) > .tier-heading {
    background: #b39ddb;
  }

  .tier:nth-child(2) > .tier-heading {
    background: #d7bde2;
  }

  .tier:nth-child(3) > .tier-heading {
    background: #e6b0b8;
  }

  .tier:nth-child(4) > .tier-heading {
    background: #f4c2c2;
  }

  .tier:nth-child(5) > .tier-heading {
    background: #dce8a7;
  }

  .tier:nth-child(6) > .tier-heading {
    background: #b5ead7;
  }

  .tier:nth-child(7) > .tier-heading {
    background: #a2d5ab;
  }

  .tier:nth-child(8) > .tier-heading {
    background: linear-gradient(
      45deg,
      #ffb3ba,
      #ffdfba,
      #ffffba,
      #baffc9,
      #bae1ff,
      #b3baff,
      #e2baff
    );
  }
  /* }}}*/
}
/* }}}*/