:root {
  --color-text: #e8e8e8;
  --color-link: #99c3ff;
  --color-link-visited: #c58af9;
  --color-background: #1c1c1c;
}

@media (prefers-color-scheme: light) {
  :root {
    --color-text: #1c1c1c;
    --color-link: #1a0dab;
    --color-link-visited: #681da8;
    --color-background: #ffffff;
  }
}

* {
  box-sizing: border-box;
}

body {
  font-family: "DejaVu Sans", "Verdana", sans-serif;
  line-height: 1.4;
  background-color: var(--color-background);
  color: var(--color-text);
}

main {
  margin: 0 auto;
  width: 90%;
  max-width: 1000px;
}

article {
  margin: 0 auto;
  max-width: 800px;
}

article p {
  max-width: 60ch;
}

h1 { font-size: 1.8em; }
h2 { font-size: 1.4em; }
h3 { font-size: 1.1em; }

h1 {
  display: inline-block;
  padding: 8px 16px;
  font-family: "DejaVu Sans Mono", monospace;
  background-color: black;
  color: lightgreen;
}
h1::before { content: ">"; }
h1::after  { content: "_"; }

h1, img, iframe {
  border-radius: 10px;
}

a         { color: var(--color-link); }
a:visited { color: var(--color-link-visited); }

hr {
  margin-top: 2rem;
  border: none;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}

pre {
  margin: 0;
  white-space: pre-wrap;
}

iframe {
  width: 100%;
}

footer {
  margin-bottom: 4rem;
  font-size: 0.9em;
}

footer nav a         { color: unset; }
footer nav a:visited { color: unset; }

footer nav a {
  padding-right: 0.5ch;
  border-right: 1px solid;
}

footer nav a:last-of-type {
  padding-right: 0;
  border-right: none;
}

.dim {
  opacity: 0.7;
}

@media print {
  h1 {
    padding: 0;
    background-color: revert;
    color: darkgreen;
  }

  footer nav {
    display: none;
  }

  .no-print {
    display: none;
  }
}
