html {
  max-width: 70ch;
  padding: 1.5rem;
  margin: auto;

  border: 2px lightgray solid;
  border-radius: 0.25rem;
}

body {
  background-color: #dddddd;
  color: #222;
  font-family: system-ui, sans-serif;
  line-height: 1.5;
}

.gallery {
  text-align: center;
}
img, video {
  max-width: 70vw;
  max-height: 70vh;
}

kbd,
code {
  border-radius: 6px;
  background-color: #aaaaaa;
  padding: 0.2rem 0.3rem;
}

blockquote {
  background-color: #eeeeee;
  padding: 0.5rem;
  border-radius: 0.5rem;
  margin: 1rem 2rem 1rem 2rem;
}

/* table styling */
table {
  border-collapse: collapse;
  margin-bottom: 10px;
  width: 100%;
}

td, th {
  padding: 6px;
  text-align: left;
}

thead tr {
  background-color: #bbbbbb;
}

tbody tr:nth-child(even) {
  background-color: #cccccc;
}

/* table styling end */

/* TODO a:link, a:visited, a:focus, a:hover, a:active */

@media (prefers-color-scheme: dark) {
  body {
    /* simple algorithmic dark mode */
    background-color: #222;
    filter: invert(93%) hue-rotate(180deg);
  }

  img, video {
    filter: invert(100%) hue-rotate(180deg);
  }

  code {
    background-color: #bbbbbb;
  }

  blockquote {
    background-color: #ffffff;
  }

  tbody tr:nth-child(even) {
    background-color: #dddddd;
  }
}
