.cover-text {
  background-color: #93c47dff;
  color: #fff;
  width: 90%;
  height: 40%;
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  display: grid;
  place-content: center;
  border-radius: 0.5em;
  font-size: 5vmin;
  padding: 5%;
}

.cover-text.congrats {
  background-color: #6aa84fff;
}

.img-container {
  background-color: #d9ead3ff;
  height: 80%;
  width: 50%;
  top: 15%;
  left: 2%;
  border-radius: 0.5em;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 5%;
  padding: 3%;
}

.img-container .animal {
  width: 45%;
  height: 45%;
  object-fit: contain;
  filter: brightness(0);
  transition: filter 500ms ease;
}

.animal.cat {
  height: 35%;
}

.animal.duck {
  width: 25%;
}

.animal.bear {
  width: 70%;
}

.animal:is(.cow, .goat) {
  height: 35%;
}

.animal.dog {
  height: 25%;
}
.animal.human {
  height: 55%;
}

.animal:is(.tiger, .horse) {
  width: 35%;
}
.animal.rhino {
  width: 60%;
}

.animal.crab {
  width: 55%;
}
.animal.ladybug {
  width: 25%;
}

.animal.girraffe {
  position: absolute;
  height: 90%;
  left: 0;
}
.animal:is(.monkey.special, .penguin) {
  left: 30%;
}
.animal.human.special {
  left: 15%;
}

.option {
  --opt-border-color: #44ae17;
  width: 30%;
  height: 20%;
}
.option:is(:hover, :active, :focus) {
  --opt-bg: #44ae17;
}

table {
  font-size: 2.5vmin;
  width: 100%;
  height: 100%;
  color: #434343;
  gap: 5%;
  border-collapse: separate; /* Use separate border model */
  border-spacing: 2em 1em;
}
table thead {
  height: 15%;
  text-align: center;
}

table td {
  padding: 10em;
  background-color: #f6fbffff;
  border-radius: 0.5em;
}

table tbody td {
  opacity: 0;
  transition: opacity 600ms linear;
}

thead td:last-of-type {
  opacity: 0;
  transition: opacity 600ms linear;
}

table.summary-table tbody td {
  border-radius: 0;
  clip-path: polygon(50% 0, 90% 0, 100% 50%, 90% 100%, 0 100%, 10% 50%, 0 0);
  padding: 0 3em 0 4em;
  height: 3.5em;
  font-size: 2.8vmin;
}

@media screen and (min-aspect-ratio: 4/3) {
  .cover-text {
    font-size: 5.5vh;
  }
  table {
    font-size: 3vh;
  }
  table.summary-table tbody td {
    font-size: 2.8vh;
  }
}
