body {
  font-family: Arial, sans-serif;
  background-color: #313338;
  color: #dbdee1;
}

.container {
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
  padding: 10px;
  text-align: left;
  background-color: #1e1f22;
  border-radius: 10px;
  width: 1000px;
}

.subcontainer {
  background-color: #2b2d31;
  margin: 1px;
  padding: 10px;
  border-radius: 10px;
}

h1 {
  font-size: 36px;
  margin-bottom: 40px;
  margin-top: 30px;
  color: #f2f3f5;
  text-align: center;
}

p {
  font-size: 24px;
  margin: 0;
}

.container p:not(:first-child) {
  margin-top: 15px;
}

span {
  display: inline-block;
}

.infobox {
  margin-top: 20px;
  background-color: #444037;
  border-color: #f0b132;
  border-style: solid;
  border-width: 1px;
  border-radius: 3px;
  padding: 10px;
  font-size: 20px;
  display: none;
  align-items: center;
}

.infobox img {
  width: 1.75em;
  height: 1.75em;
  object-fit: contain;
  pointer-events: none;
  margin-right: 20px;
}

.primary {
  color: #5865f2;
}

.danger {
  color: #da373c;
}

.bold {
  font-weight: bold;
}

.summer {
  color: #ffac33;
}

.winter {
  color: #88c9f9;
}

.none {
  color: #5d5e62;
  font-weight: normal;
}

footer {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  background-color: #2b2d31;
  text-align: center;
  padding: 20px;
}

footer span:not(:first-child) {
  margin-left: 30px;
}

a {
  color: #00a8fc;
  text-decoration: none;
  font-weight: bold;
}

button {
  display: block;
  outline: none;
  cursor: pointer;
  border-radius: 3px;
  font-size: 14px;
  font-weight: 500;
  line-height: 16px;
  padding: 2px 16px;
  height: 32px;
  min-width: 60px;
  min-height: 32px;
  border: none;
  color: #fff;
  background-color: rgb(78, 80, 88);
  /*   transition: background-color 0.17s ease, color 0.17s ease; */
  transition: background-color 250ms linear;
  float: right;
}
button:hover {
  background-color: rgb(109, 111, 120);
}

img.emoji {
  width: 1.375em;
  height: 1.375em;
  object-fit: contain;
  pointer-events: none;
  vertical-align: bottom;
}

span.strong-hover-shake {
  animation: tilt-shaking 0.15s infinite;
}

span.gentle-hover-shake {
  animation: tilt-shaking 0.25s infinite;
}

span.gentle-tilt-move-shake {
  animation: tilt-n-move-shaking 0.25s infinite;
}

span.strong-tilt-move-shake {
  animation: tilt-n-move-shaking 0.15s infinite;
}

span.very-strong-tilt-move-shake {
  animation: tilt-n-move-shaking 0.05s infinite;
}

span.constant-tilt-shake {
  animation: tilt-shaking 0.3s infinite;
}

span.vertical-shake {
  animation: vertical-shaking 0.35s infinite;
}

span.strong-vertical-shake {
  animation: vertical-shaking 0.1s infinite;
}

span.horizontal-shake {
  animation: horizontal-shaking 0.35s infinite;
}

span.rise-shake {
  animation: jump-shaking 0.83s infinite;
}

span.skew-shake-x {
  animation: skew-x-shake 1.3s infinite;
}

span.skew-shake-y {
  animation: skew-y-shake 1.3s infinite;
}

@keyframes tilt-shaking {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(5deg);
  }
  50% {
    transform: rotate(0eg);
  }
  75% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}

@keyframes tilt-n-move-shaking {
  0% {
    transform: translate(0, 0) rotate(0deg);
  }
  25% {
    transform: translate(5px, 5px) rotate(5deg);
  }
  50% {
    transform: translate(0, 0) rotate(0eg);
  }
  75% {
    transform: translate(-5px, 5px) rotate(-5deg);
  }
  100% {
    transform: translate(0, 0) rotate(0deg);
  }
}

@keyframes vertical-shaking {
  0% {
    transform: translateY(0);
  }
  25% {
    transform: translateY(5px);
  }
  50% {
    transform: translateY(-5px);
  }
  75% {
    transform: translateY(5px);
  }
  100% {
    transform: translateY(0);
  }
}

@keyframes horizontal-shaking {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(5px);
  }
  50% {
    transform: translateX(-5px);
  }
  75% {
    transform: translateX(5px);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes jump-shaking {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateY(-9px);
  }
  35% {
    transform: translateY(-9px) rotate(17deg);
  }
  55% {
    transform: translateY(-9px) rotate(-17deg);
  }
  65% {
    transform: translateY(-9px) rotate(17deg);
  }
  75% {
    transform: translateY(-9px) rotate(-17deg);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}

@keyframes skew-x-shake {
  0% {
    transform: skewX(-15deg);
  }
  5% {
    transform: skewX(15deg);
  }
  10% {
    transform: skewX(-15deg);
  }
  15% {
    transform: skewX(15deg);
  }
  20% {
    transform: skewX(0deg);
  }
  100% {
    transform: skewX(0deg);
  }
}

@keyframes skew-y-shake {
  0% {
    transform: skewY(-15deg);
  }
  5% {
    transform: skewY(15deg);
  }
  10% {
    transform: skewY(-15deg);
  }
  15% {
    transform: skewY(15deg);
  }
  20% {
    transform: skewY(0deg);
  }
  100% {
    transform: skewY(0deg);
  }
}
