* {
  box-sizing: border-box;
}

body {
  background-color: darkgreen;
}

div {
  max-width: 18vw;
  max-height: 20vw;
}

table {
  max-width: 5em;
}

audio {
  width: 50%;
  height: 10%;
}

img {
  width: 90%;
  height: 80%;
  position: relative;
  bottom: 2em;
}

td {
  padding: 0.1vw;
  font-size: 2vw;
}

h1 {
  color: rgb(237, 228, 220);
  text-shadow: rgb(48, 61, 49) 2px 2px;
  font-size: 5vw;
}

p {
  color: rgb(237, 228, 220);
  text-shadow: rgb(48, 61, 49) 2px 1px;
  font-size: 2vw;
}

.flip-box a {
  color: rgb(159, 235, 164);
  font-size: 1.8vw;
}

a:visited {
  color: rgb(237, 228, 220);
  font-size: xx-smallvw;
}

footer {
  font-size: xx-smallvw;
}

.flip-box {
  width: 12em;
  height: 12em;
  perspective: 1000px;
}

.flip-box-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

.flip-box-closed .flip-box-inner {
  transform: rotateY(0deg);
}

.flip-box-open .flip-box-inner {
  transform: rotateY(180deg);
}

.flip-box-front,
.flip-box-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  border-radius: 6vw;
  border: 1.7vw solid goldenrod;
  cursor: pointer;
}

.flip-box-front {
  background-color: antiquewhite;
  color: rgb(1, 26, 1);
}

.flip-box-back {
  background-color: darkred;
  color: antiquewhite;
  transform: rotateY(180deg);
}

.flip-box-locked .flip-box-front {
  border-radius: 6vw;
  border: 1.7vw solid rgb(145, 125, 90);
  background-color: rgb(175, 175, 175);
  transform: rotateY("0deg");
  pointer-events: none;
}

footer {
  font-size: xx-small;
}

footer a {
  color: rgb(237, 228, 220);
}
