.toc {
  display: block;
  margin: var(--spacing) 0;
  line-height: 25px;
  contain: content;
}

.toc:not([open]) {
  width: fit-content;
}

.toc:not([open]):hover {
  border-color: var(--primary);
}

.toc:not([open]):hover summary {
  color: var(--primary);
}

.toc summary {
  font-weight: 500;
  color: var(--dark);
  margin-bottom: 16px;
}

.toc summary::-webkit-details-marker,
.toc summary::marker {
  content: "";
  display: none;
}

.toc summary:hover {
  cursor: pointer;
}

.toc[open] summary .hide,
.toc summary .show {
  display: inline;
}

.toc summary .hide,
.toc[open] summary .show {
  display: none;
}

.intoc {
  margin: 0;
  list-style-type: none;
}

.intoc ul {
  margin-left: 1em;
}

.intoc ul > li {
  margin-left: 1em;
  padding-left: .5em;
}

.intoc a {
  display: block;
  font-weight: 500;
  padding: 10px 24px;
  border-left: 4px solid rgba(147, 147, 147, 0.20);
  text-wrap: balance;
  color: var(--dark);
}

.item-h2:not(.active) a:hover {
  border-color: var(--dark-secondary);
  background-color: var(--secondary);
  color: var(--lightest);
}

.item-h2.active a {
  border-color: var(--primary);
  background-color: var(--grass);
  color: var(--primary);
}