:root {
  --page-art: url("./assets/theme-dark.webp");
  --page-art-top: rgba(8, 10, 15, 0.34);
  --page-art-bottom: rgba(8, 10, 15, 0.58);
}

:root.light {
  --page-art: url("./assets/theme-light.webp");
  --page-art-top: rgba(245, 247, 251, 0.34);
  --page-art-bottom: rgba(245, 247, 251, 0.58);
}

.app {
  isolation: isolate;
}

.app::before {
  z-index: -1;
  background-image:
    linear-gradient(180deg, var(--page-art-top), var(--page-art-bottom)),
    var(--page-art);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  transition: background-image 0.35s ease;
}

@media (max-width: 720px) {
  .app::before {
    background-attachment: scroll;
    background-position: center center;
    background-size: auto 100vh;
  }
}

@media (prefers-reduced-motion: reduce) {
  .app::before {
    transition: none;
  }
}
