.flex {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}

.gallery {
  display: grid;
  gap: 1em;
}

.rows-3 {
  grid-template-columns: repeat(3, 1fr);
}

.rows-5 {
  grid-template-columns: repeat(5, 1fr);
}

.align-end {
  align-items: end;
}

.align-start {
  align-items: start;
}

.terminal-card > * {
  padding: var(--global-space);
}

.toc > ul {
  margin: 0;
}

.fig {
  max-width: 20em;
  margin: 1em;
}

.left {
  float: left;
  margin-left: 0;
}

.right {
  float: right;
  margin-right: 0;
}

.top {
  margin-top: 0;
}

.full-width {
  width: 100%;
}

.flex .full-width {
  width: unset;
  flex: 1;
}

#characters li {
  display: flex;
  justify-content: right;
  gap: 1em;
  padding: 0;
}

#characters li::after {
  content: none;
}

#characters li a:first-child {
  margin-left: auto;
}
