html, body {
  margin-bottom: 0;
  min-height: 100%;
}

body {
  background: linear-gradient(#ffb8b8, #a277ae);
  font-family: monospace;
  color: black;
}

summary::marker, h1, h2, h3, h4 {
  text-shadow: 0 0 4px #555;
  color: white;
}

a {
  color: #333;
}

a:visited {
  color: #555;
}

tt {
  text-shadow: 0 0 10px black;
  color: white;
}

details {
  padding-top: 1em;
}

summary > * {
  display: inline;
}

table {
  border-collapse: collapse;
  /*border: 2px solid rgb(140 140 140);
  font-family: sans-serif;
  font-size: 0.8rem;
  letter-spacing: 1px;*/
}

th, td {
  border-bottom: 1px solid black;
  border-right: 1px solid black;
  width: 1.5em;
  height: 1em;
}

.green {
  background-color: #93f993;
}

.blue {
  background-color: #6969ff;
}

.red {
  background-color: #ff5a5a;
}

/* this stands for "carousel container". sorry. */
.cc {
  display: flex;
  width: 100%;
}

/* adapted from https://css-tricks.com/css-only-carousel/. thank you csstricks! */

.carousel {
  width: 300px;
  text-align: center;
  overflow: hidden;
  filter: drop-shadow(0 0 0.75rem white);
}

.swipe {
  font-size: 0.95em;
  color: black;
  padding-bottom: 10px;
  display: none;
}

.carousel > a:focus {
  color: #000;
}

.slides {
  padding-top: 15px;
  display: flex;

  overflow-x: auto;
  scroll-snap-type: x mandatory;

  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;

  border-radius: 10px;
}

.slides::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

.slides::-webkit-scrollbar-thumb {
  background: black;
  border-radius: 10px;
}

.slides::-webkit-scrollbar-track {
  background: transparent;
}

.slides > img {
  scroll-snap-align: start;
  flex-shrink: 0;
  width: 300px;
  height: 300px;
  margin-right: 50px;
  border-radius: 10px;
  transform-origin: center center;
  transform: scale(1);
  transition: transform 0.5s;
  position: relative;
}

img {
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* mobile adaptations */
@media only screen and (max-device-width: 480px) {
  * {
    font-size-adjust: 0.75;
  }

  summary::marker {
    font-size: 1.75em;
  }

  h1, h2, h3, h4 {
    padding-top: 1.5em;
  }

  .cc {
    justify-content: center;
  }

  .carousel {
    width: 500px;
    padding: 50px;
  }

  .swipe {
    display: block;
  }

  .carousel > a {
    display: none; /* you can just swipe thru */
  }

  .slides, .slides > img {
    border-radius: 30px;
  }

  .slides > img {
    width: 500px;
    height: 500px;
  }
}
