:root {
  --bg-color: #f4f4f4;
  --txt-color: #333333;
  --txt-color-light: #555555;
  --btn-color: #ffffff;
  --btn-color-back: #dddddd;
  --btn-border: #888888;
  --btn-shadow: 6px 20px 25px rgba(0, 0, 0, 0.3);
  --card-color: var(--btn-color);
  --card-shadow: 2px 10px 10px rgba(0, 0, 0, 0.1);
}

@media (prefers-color-scheme: dark) {
  :root {
    --bg-color: #1a1a1a;
    --txt-color: #ffffff;
    --btn-color: #303030;
    --btn-color-back: #262626;
    --btn-border: #3a3a3a;
    --btn-border: var(--btn-color-back);
  }
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  min-height: 100svh;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--bg-color);
  color: var(--txt-color);
  font-family:
    -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu",
    "Helvetica Neue", Arial, sans-serif;
}

.stats {
  position: fixed;
  right: 0;
  top: 0;
  margin: 2rem;
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  gap: 1rem;
}
.stats-card {
  padding: 0.5em 0.8em;
  font-weight: 700;
  text-align: center;
  background-color: var(--card-color);
  border-radius: 9999px;
  box-shadow: var(--card-shadow);
  user-select: none;
}

@media screen and (max-width: 768px) {
  .stats {
    left: 0;
    justify-content: center;
  }
}

.clicker {
  position: relative;
  width: 16rem;
  height: 16rem;
  border-radius: 50%;
  cursor: pointer;
  touch-action: manipulation;
  margin-bottom: 10vh;
  outline: none;
  border: 3px solid var(--btn-border);
  background-color: var(--btn-color-back);
  box-shadow: var(--btn-shadow);
  transition: 0.05s ease-in-out;
}
.clicker_content {
  height: 100%;
  background-image: url(/assets/maus-emoji.svg);
  background-repeat: no-repeat;
  background-size: 80%;
  background-position: 50% 30%;
  user-select: none;

  background-color: var(--btn-color);
  border-radius: 50%;
  transform: translate3d(0, -6px, 0);
  transition: 0.05s ease-in-out;

  z-index: 1;
}
.clicker:active {
  box-shadow: none;
}
.clicker:active .clicker_content {
  transform: translate3d(0, 0, 0);
}

.maus-stage {
  position: fixed;
  inset: 0;
  pointer-events: none;
}
.maus {
  position: fixed;

  width: 4rem;
  height: 4rem;
  
  background-image: url(/assets/maus-emoji.svg);
  background-repeat: no-repeat;
  background-size: 4rem 4rem;
  z-index: 1000;
  user-select: none;

  animation: maus-animated 2s linear 1 forwards;
}

@keyframes maus-animated {
  0% {
    opacity: 0;
    transform: translate3d(-50%, 100%, 0) scale(0.5);
  }
  10% {
    opacity: 1;
    transform: translate3d(-50%, 70%, 0) scale(1);
  }
  20% {
    opacity: 1;
    transform: translate3d(-50%, 40%, 0) scale(1.2);
  }
  40% {
    opacity: 1;
    transform: translate3d(-50%, 0%, 0) scale(1.1);
  }
  60% {
    opacity: .5;
    transform: translate3d(-50%, -30%, 0) scale(.9);
  }
  100% {
    opacity: 0;
    transform: translate3d(-50%, -100%, 0) scale(0.5);
  }
}

.footer {
  position: fixed;
  bottom: .75rem;
  left: 0;
  right: 0;
}
.footer_content {
  margin: 0 auto;
  padding: 4px 12px;
  max-width: 90vw;
  font-size: 12px;
  white-space: nowrap;
  text-align: center;
  color: var(--txt-color-light);
  z-index: 1000;
}
.footer_content a {
  text-decoration: underline;
  color: inherit;
  font-weight: 700;
}