h1 {
  margin-block: 1em 0.2em;
}

p.lead {
  font-family: "DIN Next Pro", sans-serif;
  font-size: clamp(1.1em, 1.8vw, 1.8em);
  color: #333;
  margin-block: 0.5em 0;
  text-wrap: pretty;
}

section.search {
  font-family: "DIN Next Pro", sans-serif;
}

section.search p {
  line-height: 1.2;
  margin-block: 0;
}

.database-selector {
  margin-block: 2em 0.2em;
  font-family: "DIN Next Pro", sans-serif;
  font-size: clamp(1em, 1.6vw, 1.6em);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

input#searchInput {
  font-size: clamp(1em, 1.6vw, 1.6em);
  font-family: "DIN Next Pro", sans-serif;
  border: 1px solid #999;
  padding: 6px 12px 3px;
  flex: 1;
  width: 100%;
}
button {
  font-family: "DIN Next Pro", sans-serif;
  font-size: clamp(1em, 1.6vw, 1.6em);
  color: #888;
  padding: 6px 6px 3px;
  margin-left: 2px;
  border: 1px solid #999;
  background: transparent;
}
button:hover {
  color: #000;
  border: 1px solid #000;
}
.term-header {
  font-size: clamp(1.2em, 2vw, 2em);
  display: flex;
  justify-content: space-between;
  padding: 0 0.3em;
  margin-block: 0.2em 0.1em;
}
.results {
  margin-top: 2rem;
}
.open-state {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  display: block;
  font-family: "DIN Next Pro", sans-serif;
  width: clamp(1em, 1.6vw, 1.6em);
}
.node.has-children .node-label {
  cursor: pointer;
}
.big-count {
  font-family: "DIN Next Pro", sans-serif;
  color: #000;
  text-align: right;
}
.count {
  font-family: "DIN Next Pro", sans-serif;
  margin-left: 2rem;
}
.relfreq {
  color: #888;
}
.level-2, .level-3, .level-4, .level-5, .level-6 {
  margin-left: 1rem;
}
.level-1 .node-label {
  font-size: clamp(1em, 1.6vw, 1.6em);
  display: flex;
  justify-content: space-between;
}
.level-1 .citation {
  color: #000;
  text-align: left;
}
.level-2 .node-label {
  font-size: clamp(0.9em, 1.4vw, 1.4em);
}
.level-2 .citation {
  color: #444;
}
.level-2:not(.has-children) .citation {
  color: #666;
}
.level-3 .node-label {
  font-size: clamp(0.8em, 1.2vw, 1.2em);
}
.level-3 .citation {
  color: #666;
}
.level-3:not(.has-children) .citation {
  color: #888;
}
.help {
  font-size: clamp(0.75em, 1.4vw, 1.2em);
  margin: 0;
}
.citation {
  flex: 1;
}
.node.has-children > .node-label {
  background: #F7F7F7;
}
.node-label {
  padding: 2px 8px;
}
.open-to-level {
  text-align: right;
  padding: 0px;
  font-family: "DIN Next Pro", sans-serif;
  font-size: clamp(1em, 1.6vw, 1.6em);
  border-bottom: 1px solid #CCC;
}
.open-to-level button {
  background: none;
  border: none;
  margin: 0;
  font: inherit;
  padding: 0.2em 0.2em 0;
  cursor: pointer;
  color: #666;
}
.open-to-level button:hover {
  color: #000;
  background: #CCC;
}
button.primary {
  color: #000;
  font-weight: 700;
}
.results-footer {
  margin-top: 0.5em;
  color: #888;
  font-size: clamp(0.75em, 1.4vw, 1.2em);
  text-align: right;
  font-style: italic;
}
