body {
  margin: 0;
  overflow: hidden;
  image-rendering: pixelated;
  background: black;
}

#bg, #sprite, #hearts {
  position: absolute;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  user-select: none;
  pointer-events: none;
}

#hitbox {
  position: absolute;
  top: 20%;
  left: 35%;
  width: 30%;
  height: 40%;
  cursor: grab;
  /* optional: show hitbox for testing */
  /* background: rgba(255,0,0,0.2); */
}

.shake {
  animation: shake 0.333s infinite;
}

@keyframes shake {
  0% { transform: translate(0px,0px); }
  25% { transform: translate(0px,2px); }
  50% { transform: translate(0px,0px); }
  75% { transform: translate(0px,-2px); }
  100% { transform: translate(0px,0px); }
}
