html {
  font-family: 'Times New Roman', Times, serif;
}

body {
  margin: 10px 24px;
}

ul,
ol {
  padding-left: 16px;
}

sup {
  line-height: 0;
}

h2 {
  margin: 0.415em 0;
}

p + h2,
ul + h2,
ol + h2,
table + h2 {
  margin-top: 1.245em;
}

h3 {
  margin: 0.5em 0;
}

p + h3,
ul + h3,
ol + h3,
table + h3 {
  margin-top: 1.5em;
}

h4 {
  margin: 0.665em 0;
}

p + h4,
ul + h4,
ol + h4,
table + h4 {
  margin-top: 1.995em;
}

table {
  width: 100%;
  font-size: 13.3333px;
  border-spacing: 0;
  margin: 1rem auto;
}

h2 + table,
h3 + table,
h4 + table {
  margin-top: 0;
}

table caption {
  font-weight: bold;
  text-align: left;
}

th,
td {
  border-bottom: 1px solid currentColor;
  border-spacing: 0;
  vertical-align: top;
}

th {
  text-align: left;
}

.full-width-table {
  display: block;
  overflow-x: auto;
}

.full-width-table caption {
  display: block;
}

.full-width-table tbody {
  display: table;
  min-width: 653.3px;
  width: 100%;
}

.by-level-table {
  font-size: 16px;
}

.by-level-table th,
.by-level-table td {
  border: 0;
}

@media screen and (min-width: 832px) {
  body {
    max-width: 784px;
    margin: 0 auto;
  }

  table {
    font-size: inherit;
  }

  .full-width-table {
    display: table;
    margin: 2rem auto;
  }

  h2 + .full-width-table,
  h3 + .full-width-table,
  h4 + .full-width-table {
    margin-top: 0;
  }

  .full-width-table caption {
    display: table-caption;
  }

  .full-width-table tbody {
    display: table-row-group;
    min-width: 0;
    width: auto;
  }

  .half-width-table {
    width: calc(50% - 1.2rem);
    float: left;
    clear: left;
    margin: 0 1.2rem 2rem 0;
  }
}

@media (prefers-color-scheme: dark) {
  html {
    background: #1e1e1e;
    color: #d4d4d4;
  }

  [style*='background-color: #fff'] {
    background-color: #1e1e1e !important;
  }

  a:link {
    color: #569cd6;
  }

  a:visited {
    color: #c586c0;
  }

  a:active {
    color: #d16969;
  }
}
