:root {
  color-scheme: light dark;
  max-width: 42em;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.3;
}

@media screen {
  :root {
    font-family: sans-serif;
    font-size: 18px; /* Fallback if clamp() not available. */
    font-size: clamp(16px, 2vw, 20px);
  }
}

@media print {
  :root {
    font-family: serif;
    font-size: 10pt;
    padding-left: 2em;
    padding-right: 2em;
  }
}

code {
  font-family: monospace;
  background-color: #e0e0e0;
  border-radius: 3px;
}

pre {
  font-family: monospace;
  background-color: #e0e0e0;
  border-radius: 3px;
}

@media screen {
  pre {
    overflow: scroll;
  }
}

@media print {
  pre {
    white-space: pre-wrap;
  }
}

@media (prefers-color-scheme: dark) {
  code, pre {
    background-color: #303030;
  }
  a:not(.exhl-term-dfnlink) {
    color: #30a0f0;
  }
  a:visited:not(.exhl-term-dfnlink) {
    color: #a0a0f0;
  }
  a.exhl-term-dfnlink {
    text-decoration-color: #30a0f0;
  }
}

table, th, td {
  border: solid 1px black;
  border-collapse: collapse;
}

th, td {
  margin: 2px;
}

.identity .u-logo {
  width: 100px;
  height: 100%;
  border-radius: 15px;
  margin-right: 1em;
}

.identity {
  display: flex;
}

nav {
  speak: always;
}

nav ul {
  display: flex;
  border: solid 2px black;
  padding-left: 0;
  flex-flow: wrap;
}

nav li {
  list-style: none;
  border: solid 1px black;
  margin: 2px;
}

@media (prefers-color-scheme: dark) {
  nav ul, nav li {
    border-color: CanvasText;
  }
}

nav h1 {
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 10px;
}
