details {
  font-size: 18px;
  font-weight: normal;
  margin: 0;
  transition: all 0.3s;
}
/* details:nth-of-type(odd) > summary { background: var(--color-lightgrey); } */
details::details-content { transition: all 0.4s ease-in-out, padding 0s; }
details[open]::details-content {
  margin: 4px auto 0;
  padding: 10px 6px;
}
summary {
  align-items: center;
  border: 0 dotted #0a0a0a;
  border-bottom-width: 1px;
  cursor: pointer;
  display: flex !important;
  flex-wrap: nowrap;
  font-size: 20px;
  /* font-weight: var(--weight-light); */
  gap: 14px;
  justify-content: space-between;
  margin: 0;
  padding: 6px 20px 6px 6px;
  width: 100%;
}
summary::marker { content: none; }
summary::after { content: '+'; font-size: 1rem; font-weight: bold; line-height: 1; }
details[open] summary::after { content: '-'; }
