:root {
  --bg2: #FFF3;
  --content-width: 60%;
  --text-shadow: 0px 1px 5px black;
  --icon-arrow-left: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%23fff'><path d='M560.67-240 320-480.67l240.67-240.66L608-674 414.67-480.67 608-287.33 560.67-240Z'/></svg>");
  --icon-eye: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%23fff'><path d='M480-320q75 0 127.5-52.5T660-500q0-75-52.5-127.5T480-680q-75 0-127.5 52.5T300-500q0 75 52.5 127.5T480-320Zm0-72q-45 0-76.5-31.5T372-500q0-45 31.5-76.5T480-608q45 0 76.5 31.5T588-500q0 45-31.5 76.5T480-392Zm0 192q-146 0-266-81.5T40-500q54-137 174-218.5T480-800q146 0 266 81.5T920-500q-54 137-174 218.5T480-200Zm0-300Zm0 220q113 0 207.5-59.5T832-500q-50-101-144.5-160.5T480-720q-113 0-207.5 59.5T128-500q50 101 144.5 160.5T480-280Z'/></svg>");
  --icon-eye-off: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%23fff'><path d='m644-428-58-58q9-47-27-88t-93-32l-58-58q17-8 34.5-12t37.5-4q75 0 127.5 52.5T660-500q0 20-4 37.5T644-428Zm128 126-58-56q38-29 67.5-63.5T832-500q-50-101-143.5-160.5T480-720q-29 0-57 4t-55 12l-62-62q41-17 84-25.5t90-8.5q151 0 269 83.5T920-500q-23 59-60.5 109.5T772-302Zm20 246L624-222q-35 11-70.5 16.5T480-200q-151 0-269-83.5T40-500q21-53 53-98.5t73-81.5L56-792l56-56 736 736-56 56ZM222-624q-29 26-53 57t-41 67q50 101 143.5 160.5T480-280q20 0 39-2.5t39-5.5l-36-38q-11 3-21 4.5t-21 1.5q-75 0-127.5-52.5T300-500q0-11 1.5-21t4.5-21l-84-82Zm319 93Zm-151 75Z'/></svg>");
  --icon-play: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%23fff'><path d='M320-200v-560l440 280-440 280Zm80-280Zm0 134 210-134-210-134v268Z'/></svg>");
  --icon-pause: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%23fff'><path d='M520-200v-560h240v560H520Zm-320 0v-560h240v560H200Zm400-80h80v-400h-80v400Zm-320 0h80v-400h-80v400Zm0-400v400-400Zm320 0v400-400Z'/></svg>");
  --icon-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%23fff'><path d='M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm40-80h480L570-480 450-320l-90-120-120 160Zm-40 80v-560 560Z'/></svg>");
  --icon-bottom-bar: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='%23fff'><path d='M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-240h560v-400H200v400Zm0 80v80h560v-80H200Zm0 0v80-80Z'/></svg>");
}

.hide-on-defocus {
  transition: opacity 1s;
}

.hide-ui:not(.scrolled):not(.scrolled) .hide-on-defocus {
  opacity: 0;
}

header {
  justify-content: center;
  padding: 0px;
  height: 50px;
}

main {
  margin: 0px auto;
}

main,
.description {
  text-shadow: var(--text-shadow);
  width: 100%;
}

#online {
  /* need this, otherwise it disappears behind the slideshow */
  position: relative;
  margin-bottom: 20px;
  text-shadow: var(--text-shadow);
}

.page {
  padding: 80px 0px;
}
.page:first-of-type {
  position: relative;
  height: 100svh;
  box-sizing: border-box;
}
.page:not(:first-of-type) {
  box-shadow: 0px 50px 50px -60px black inset;
}
.page > *:first-child {
  margin-top: 0px;
}

.mainimg {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: auto auto;
  max-height: min(300px, 80svh);
  max-width: 100%;
  filter: drop-shadow(0px 15px 4px rgba(0, 0, 0, 0.6666666667));
  transition: filter 0.3s, opacity 1s;
}

hr {
  position: relative;
  width: var(--content-width);
  height: 40px;
  margin: 20px auto;
  border: none;
  background: center/contain no-repeat url("/img/planet.png");
}
hr::before {
  content: "";
  background: rgba(255, 255, 255, 0.5333333333);
  position: absolute;
  left: 0px;
  top: 50%;
  width: calc(50% - 40px);
  height: 1px;
}
hr::after {
  content: "";
  background: rgba(255, 255, 255, 0.5333333333);
  position: absolute;
  right: 0px;
  top: 50%;
  width: calc(50% - 40px);
  height: 1px;
}

.season-recaps {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.season-recaps > * {
  margin: 10px;
  margin-top: 0px;
  text-shadow: var(--text-shadow);
}

.admin-heads {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.admin-heads > * {
  width: 110px;
  padding: 10px;
  text-shadow: var(--text-shadow);
  color: #D52F2F;
}
.admin-heads img {
  display: block;
  width: 50px;
  margin: 0px auto 10px auto;
  filter: drop-shadow(0px 5px 5px rgba(0, 0, 0, 0.4));
}

/* PROGRESS GIF */
.progress-gif {
  display: inline-block;
  max-width: var(--content-width);
}

.progress-gif img,
.jsgif canvas {
  max-width: 100%;
  image-rendering: crisp-edges;
  transition: opacity 0.5s;
}

.progress-gif:not(.loaded),
.jsgif:not(.loaded),
.jsgif:not(.clicked) {
  position: relative;
}
.progress-gif:not(.loaded) canvas,
.progress-gif:not(.loaded) img,
.jsgif:not(.loaded) canvas,
.jsgif:not(.loaded) img,
.jsgif:not(.clicked) canvas,
.jsgif:not(.clicked) img {
  opacity: 0.5;
}
.progress-gif:not(.loaded)::after,
.jsgif:not(.loaded)::after,
.jsgif:not(.clicked)::after {
  content: "Loading GIF...";
  position: absolute;
  top: 50%;
  left: 0px;
  width: 100%;
  text-align: center;
}

.jsgif.loaded:not(.clicked)::after {
  content: "Click and drag to change the time";
}

.progress-gif .gif-date {
  display: block;
  width: 100%;
  margin: -30px 0px 0px auto;
  padding-right: 40px;
  box-sizing: border-box;
  opacity: 0.5;
  text-align: right;
}

#scroll-indicator {
  position: absolute;
  bottom: 30px;
  left: calc(50% - 16px);
  animation: bob ease-in-out 500ms infinite alternate;
  cursor: pointer;
}

html.scrolled #scroll-indicator {
  opacity: 0;
}

@keyframes bob {
  from {
    bottom: 30px;
  }
  to {
    bottom: 10px;
  }
}
/* CAROUSEL / SLIDESHOW */
.carousel {
  --thumbnail-size: 50px;
  position: absolute;
  top: 0px;
  width: 100%;
  height: 100%;
}

.carousel-item {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0s 0.5s;
  z-index: -1;
}
.carousel-item.active {
  pointer-events: initial;
  opacity: 1;
  transition: opacity 0.5s;
  z-index: 0;
}

.carousel-item > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  filter: brightness(80%);
  transition: filter 1s;
}

html.hide-ui:not(.scrolled) .carousel-item > img {
  filter: brightness(100%);
}

.carousel-caption {
  position: absolute;
  width: 100%;
  bottom: 70px;
  text-align: center;
  line-height: 1.5em;
  text-shadow: var(--text-shadow);
  opacity: 0.8;
  transition: bottom 0.2s;
}

.carousel-controls {
  position: absolute;
  bottom: 20px;
  right: 20px;
  transition: bottom 0.2s;
}

.thumbnails-visible .carousel-controls {
  bottom: calc(20px + var(--thumbnail-size) + 1em);
}

.carousel-controls > a {
  display: inline-block;
  padding-inline: 5px;
  background: transparent;
  border: none;
  opacity: 0.5;
  transition: opacity 0.2s;
}
.carousel-controls > a:hover {
  opacity: 1;
  cursor: pointer;
}

.thumbnails {
  position: absolute;
  display: none;
  bottom: 0px;
  right: 0px;
  width: min(100%, max(300px, 50% - 200px));
  flex-wrap: nowrap;
  gap: calc(var(--thumbnail-size) / 2);
  overflow-x: scroll;
}

.thumbnails-visible .thumbnails {
  display: flex;
}

.thumbnail-group {
  flex-shrink: 0;
}
.thumbnail-group::before {
  content: attr(data-season);
  position: sticky;
  display: block;
  left: 0;
  width: -moz-max-content;
  width: max-content;
  margin-bottom: 5px;
  font-size: 0.8em;
  text-shadow: var(--text-shadow);
}

.thumbnail {
  width: var(--thumbnail-size);
  height: var(--thumbnail-size);
  margin-right: 5px;
  border: 0px solid white;
  box-sizing: border-box;
  cursor: pointer;
  transition: border-width 0.1s;
}

.thumbnail.selected {
  border-width: 3px;
}

/* ICONS */
.icon {
  display: inline-block;
  width: 2em;
  height: 2em;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100% 100%;
}

.icon-arrow-left,
.icon-arrow-right,
.icon-arrow-down {
  background-image: var(--icon-arrow-left);
  background-size: 125% 125%;
}

.icon-arrow-right {
  transform: rotate(180deg);
}

.icon-arrow-down {
  transform: rotate(-90deg);
}

.icon-arrow-up {
  transform: rotate(90deg);
}

.icon-hideui {
  background-image: var(--icon-eye-off);
  background-size: 90% 90%;
}

html.hide-ui .icon-hideui {
  background-image: var(--icon-eye);
  background-size: 90% 90%;
}

.icon-open-image {
  background-image: var(--icon-image);
  background-size: 90% 90%;
}

.icon-bottom-bar {
  background-image: var(--icon-bottom-bar);
  background-size: 90% 90%;
}

.icon-playpause {
  background-image: var(--icon-play);
}

.playing .icon-playpause {
  background-image: var(--icon-pause);
}

/* MEDIA DIRECTIVES */
@media (prefers-color-scheme: dark) {
  :root {
    --bg2: #0005;
    --text: #fff;
  }
}
@media screen and (max-width: 1200px) {
  header {
    padding: 0px;
  }
}
@media screen and (max-width: 900px) {
  header > * {
    flex-direction: row;
  }
  :root {
    --content-width: 80%;
  }
}
@media screen and (max-width: 700px) {
  #scroll-indicator {
    left: 20px;
  }
  .carousel.thumbnails-visible .carousel-caption {
    bottom: calc(70px + var(--thumbnail-size) + 1em);
  }
}
@media screen and (max-width: 500px) {
  .mainimg {
    filter: drop-shadow(0px 10px 3px rgba(0, 0, 0, 0.5333333333));
  }
}
@media screen and (max-width: 400px) {
  #scroll-indicator {
    display: none;
  }
  .thumbnails {
    width: 100%;
  }
  .thumbnail-group::before {
    left: 1em;
  }
}/*# sourceMappingURL=index.css.map */