/* globals */
:root {
  --background: url(../images/background.png);
  --text-color: #e0d0d0;
}

* {
  padding: 0;
  margin: 0;
  margin-left: auto;
  margin-right: auto;
  image-rendering: optimizeSpeed;
  font-family: Arial, Helvetica, sans-serif;
  text-shadow: 1px 1px 1px black;
  color: var(--text-color);
}
li {
  margin-left: 2rem;
}
iframe {
  aspect-ratio: 16/9;
  max-width: 100vw;
  height: fit-content;
}
img {
  max-width: min(640px, 100vw);
  --margin: min(8px, 100vw - 640px);
  margin: var(--margin);
  margin-top: 8px;
  margin-bottom: 8px;
}
.center {
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
  align-content: center;
  text-align: center;
}
.flex {
  display: flex;
  flex: auto;
  flex-wrap: wrap;
  max-width: min(100%, 768px);
}
.glow {
  animation: glow 1s infinite ease-in-out;
  background-color: yellow;
  border-radius: 10px;
}
.scale-on-hover:hover {
  transform: scale(110%, 110%);
}
.scale-on-hover:active {
  transform: scale(95%, 95%);
}
.no-padding {
  padding: 0px;
}
.no-margins {
  margin: 0px;
}

a:link,
a:visited {
  color: #aaf;
  text-decoration: none;
}
a:hover {
  color: #fff;
}
a:active {
  color: #ff0;
}

/* prettier-ignore */
h1, h2, h3, h4, h5, h6 {
  text-align: left;
  margin-top: 6px;
  margin-bottom: 8px;
}

#page {
  /* min-height: 100vh; */
  background-image: var(--background);
  background-position: left;
  background-size: 48px;
  background-position-y: 48px;
}
#page-content {
  /* height without navbav or footer */
  /* height - navbar.height - navbar.border - footer.height - footer.margin-top - footer.padding - footer.padding */
  min-height: calc(100vh - 48px - 3px - 48px - 24px - 12px - 12px);
  max-width: calc(768px + 1rem);
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.wip {
  margin-bottom: 1rem;
  padding: 1rem;
  background-image: url(../images/lava.gif);
  background-size: auto 48px;
  color: white;
  font-size: 2rem;
  text-align: center;
  text-shadow: 3px 3px 2px black;
  font-weight: 900;
}
/* end globals */

/* navbar */
#navbar {
  display: flex;
  flex: 1 0 auto;
  min-height: 48px;
  background-image: url(../images/nav-bar.gif);
  background-size: auto 100%;
  background-repeat: repeat-x;
  border-bottom: 3px solid black;
  text-align: right;
  overflow: hidden;
}
#navbar * {
  font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
  font-weight: bold;
}
#navbar #navbar-contents {
  display: flex;
  flex: 1 1 auto;
  flex-flow: row wrap;
  justify-content: start;
  /* vertical */
  align-items: center;
  height: 100%;
  max-width: 960px;
}

#navbar #navbar-contents > div {
  min-height: 48px;
  align-items: center;
}

#navbar #navbar-logo {
  display: flex;
  flex: 0 0 auto;
  min-height: 40px;
}
#navbar #logo {
  aspect-ratio: 222/29;
  max-height: 40px;
}
#navbar #navbar-links {
  display: flex;
  flex-flow: row wrap;
  flex: 1 1 auto;
}
/* end navbar */

/* Footer */
footer {
  background: #111;
  margin-top: 24px;
  padding: 12px;
  height: 48px;
  text-align: center;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  /* animation: rainbow 20s infinite ease; */
}

/* animations */
@keyframes glow {
  0% {
    box-shadow: 1px 0px 8px 0px yellow;
  }
  50% {
    box-shadow: 0px 0px 8px 4px yellow;
  }
  100% {
    box-shadow: 0px 0px 8px 0px yellow;
  }
}
