:root {
  --line-height: 1.19em;
}


@font-face {
  font-family: 'dejavu_sans_monobook';
  src: url('/fonts/dejavusansmono.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

* {
  font-size: 1em;
  font-family: "dejavu_sans_monobook", "DejaVu Sans Mono";
  line-height: var(--line-height);
}


/* Reset margins */
h1, h2, h3, ul, p {
  margin: 0;
}

/* Headings */
h1, h2, h3 {
  display: table;
  position: relative;
 
  font-weight: normal;

  margin-bottom: calc(2 * var(--line-height));
}

/* Decoration */
h1::before, h2::before, h3::before {
  position: absolute;

  bottom: calc(var(--line-height) * -1);

  width: 100%;
  overflow: hidden;

  pointer-events: none;
  white-space: nowrap;
}

h1::before {
  content: "================================================================================";
}
h2::before {
  content: "--------------------------------------------------------------------------------";
}
h3::before {
  content: "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~";
}

/* Lists */
ul {
  list-style: none;
  padding-left: 1ch;
}

li {
  text-indent: -2ch;
  padding-left: 1ch;
}

li::before {
  content: ">";
  padding-right: 1ch;
}

/* Insert new lines between elements */
ul:not(:last-child)::after, p:not(:last-child)::after {
  content: "\A";
  white-space: pre-line;
  display: block;
}
