.puzzle {
  height: 100%;
  width: 100%;
  text-align: center;
}

.slots {
  display: inline-block;
}

.slots table {
  margin: auto;
  margin-top: 1em;
  margin-bottom: 1em;
}

.slot {
  -webkit-box-shadow: 0px 0px 42px -2px rgba(0,0,0,0.75);
  -moz-box-shadow: 0px 0px 42px -2px rgba(0,0,0,0.75);
  box-shadow: 0px 0px 42px -2px rgba(0,0,0,0.75);
}

.slot:hover {
  background-color: rgba(230, 225, 200, 0.4);
}

.slot .piece {
  margin: 0;
}

.piece {
  display: inline-block;
  margin: 0.1em;
}

.puzzle .selected {
  transform: translateY(-5px);

  -webkit-box-shadow: 0px 6px 5px 0px rgba(130,130,130,1);
  -moz-box-shadow: 0px 6px 5px 0px rgba(130,130,130,1);
  box-shadow: 0px 6px 5px 0px rgba(130,130,130,1);
}

#pieces {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
}

#pieces .prompt {
  margin: 5px;
  padding: 5px;
  border-radius: 10px;
  font-size: 1.5em;
  -webkit-box-shadow: 0px 0px 42px -2px rgba(0,0,0,0.75);
  -moz-box-shadow: 0px 0px 42px -2px rgba(0,0,0,0.75);
  box-shadow: 0px 0px 42px -2px rgba(0,0,0,0.75);
}