@import url('https://fonts.googleapis.com/css2?family=Noto+Sans&display=swap');

@media (prefers-color-scheme: light) {
  :root {
    --background-color: white;
    --text-color: black;
    --link-color: blue;
    --visited-link-color: purple;
  }
}

@media (prefers-color-scheme: dark) {
  :root {
    --background-color: #161616;
    --text-color: #e0e0e0;
    --link-color: SkyBlue;
    --visited-link-color: Orchid;
  }
}

@font-face {
  font-display: "optional";
  font-family: "Noto Sans", sans-serif;
}
a {
  hyphens: auto;
  color: var(--link-color);
  overflow-wrap: break-word;
  word-break: break-word;
  word-wrap: break-word;
}

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

a.eponymous {
  font-family: Monaco, Courier, monospace;
  overflow-wrap: break-word;
  word-break: break-all;
  word-wrap: break-word;
}

body {
  font-family: "Noto Sans", sans-serif;
  background-color: var(--background-color);
  color: var(--text-color);
  font-size: 18px;
  margin: 1em auto;
  max-width: 46em;
}
body h1:first-child {
  font-size: 150%;
  margin: 0;
}
.erratum:target {
  position: relative;
}
.erratum:target::before {
  color: #999;
  content: attr(id) "→";
  margin-right: 0.5em;
  position: absolute;
  right: 100%;
  white-space: nowrap;
}
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}
img.srfi-logo {
  margin-right: 0.5em;
  vertical-align: middle;
  width: 4em;
}
span.antispam {
  display: none;
}
pre {
  white-space: pre-wrap;
}
td, th {
  vertical-align: top;
}
.todo {
  color: red;
  font-family: monospace;
  font-weight: bold;
}