#container {
  width: 100%;
}

.game {
  display: flex;
  justify-content: center;
  flex-direction: column;
  width: 100%;
}

* {
  box-sizing: border-box;
}

.card {
  height: 185px;
  aspect-ratio: 17 / 24;
  width: auto;
  margin-bottom: 2.1vh;
  border: 1px solid transparent;
}
.card.empty {
  border: 1px solid #ddd;
  border-radius: 6px;
}

.sideposition {
  display: flex;
  position: relative;
  height: 185px;
  margin-bottom: 2.1vh;
}

.left > .sideposition {
  direction: rtl;
}

.left .sideposition > *:not(:first-child) {
  margin-right: calc(1.1vw - 75px);
}
.right .sideposition > *:not(:first-child),
.piles .face-up-deck .card:not(:first-child) {
  margin-left: calc(1.1vw - 75px);
}

.piles {
  display: flex;
  position: relative;
  margin-top: 16px;
  column-gap: 30px;
}

.piles .face-down-deck:not(.empty) {
  cursor: pointer;
}

.piles .face-down-deck.empty {
  cursor: not-allowed;
}

.board-container {
  display: flex;
  font-size: 0px;
  column-gap: 30px;
  width: 100%;
  justify-content: center;
}
.piles-container {
  width: 100%;
  padding-left: 16px;
}

.undraggable {
  user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  pointer-events: none;
}

.draggable {
  cursor: pointer;
  transition: all .1s ease-out;

}
.draggable:hover {
  box-shadow: 1px 1px 5px 0px #88f;
}

@media screen and (max-width: 767px) {
  .sideposition {
    height: 125px;
    margin-bottom: 7px;
  }
  .card {
    height: 125px;
    margin-bottom: 7px;
  }

  .left .sideposition > *:not(:first-child) {
    margin-right: -53px;
  }
  .right .sideposition > *:not(:first-child),
  .piles .face-up-deck .card:not(:first-child) {
    margin-left: -53px;
  }
  .piles {
    margin-top: 8px;
    column-gap: 16px;
  }
  .board-container {
    column-gap: 12px;
  }
}
