:root {
  --top: 140px;
}

body {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100vh;
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  background-color: rgb(149, 149, 149);
}
.container {
  position: relative;
  width: 600px;
}
.puzzle-container {
  width: 100%;
  height: auto;
  margin-bottom: 5px;
}
#puzzle-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.puzzle-piece,
.circle-piece {
  position: absolute;
  width: 50px;
  height: 50px;
  top: var(--top);
}
.puzzle-piece {
  left: 10px;
  background-color: rgba(0, 0, 0, 0.5);
  border: solid 2px rgb(255, 255, 255);
}
.circle-piece {
  left: 72px;
  background-color: rgb(255, 255, 255, 0.5);
  border: solid 2px rgb(0, 0, 0);
  border-radius: 50%;
}
.target-area {
  position: absolute;
  width: 50px;
  height: 50px;
  top: var(--top);
  left: 400px;
  background-color: rgba(0, 255, 0, 0.5);
  border: dashed 2px green;
}
#slider {
  width: 100%;
}
