html {
  word-wrap: break-word;
  /* Fallback for older browsers */
  overflow-wrap: break-word;
  /* Modern standard */
}

body {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

main {
  color: #0a0a0a;
  max-width: 777px;
  margin-left: auto;
  margin-right: auto;
  padding: 0 8px;
}

header h1 {
  font-size: 15px;
}

header,
footer {
  background: #f8f8f8;
  opacity: 0.75;
}

header>.section,
footer>.section {
  max-width: 777px;
  margin-left: auto;
  margin-right: auto;
  padding: 8px;
  font-size: 13px;
}

.meta {
  margin-bottom: 1rem;
}

canvas {
  display: block;
  margin: 1rem auto;
}

caption {
  text-align: start;
  margin-bottom: 25px;
}

table {
  border-collapse: collapse;
  width: 100%;
  margin-top: 29px;
}

td,
th {
  border: 1px solid #dddddd;
  text-align: left;
  padding: 6px;
}

th {
  color: #0a0a0a;
  background: #f2f2f2;
  cursor: pointer;
  user-select: none;
}

th:hover {
  background: rgba(0, 0, 0, 0.05);
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

ul {
  list-style-type: square;
}

footer p {
  display: inline-block;
}


@media (prefers-color-scheme: dark) {
  body {
    background: #141414;
    color: hsla(0, 0%, 100%, 0.9);
  }

  main {
    color: hsla(0, 0%, 100%, 0.9);
  }

  header,
  footer {
    background-color: black;
  }

  a,
  a:visited,
  a:hover,
  a:active {
    color: #e85d01;
  }

  summary::marker {
    color: #e85d01;
  }

  td,
  th {
    border: 1px solid #dddddd;
  }

  th {
    color: hsla(0, 0%, 100%, 0.9);
    background: rgba(255, 255, 255, 0.08);
  }

  th:hover {
    background: rgba(255, 255, 255, 0.08);
  }
}

@media screen and (max-width: 650px) {
  html {
    font-size: 0.85rem;
  }

  main {
    padding: 0;
  }

  header h1 {
    font-size: 14px;
  }
}

@media screen and (max-width: 480px) {
  html {
    font-size: 0.7rem;
  }

  main {
    padding: 0;
  }

  header h1 {
    font-size: 13px;
  }

  table {
    margin-top: 5px;
  }

  td,
  th {
    padding: 1px;
  }
}