.theater {
  position: relative;
}

table td {
  border: 1px solid black;
}

.scheme {
  transform-origin: 0 0;
}

.theater img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  user-select: none;
}

.seat {
  box-sizing: border-box;
  position: absolute;
  cursor: pointer;
  text-align: center;
  transition: all linear 0.2s;
  background-repeat: no-repeat;
  background-size: 20px 20px;
  background-position: center;
}

.seat:not(.landing) {
  background-image: url(../img/seats/circle.png);
  width: 20px;
  height: 20px;
}

.seat.landing {
  width: 345px !important;
  height: 70px !important;
  margin-top: calc(-71px / 2);
  margin-left: calc(-346px / 2);
  border-radius: 2px;
  border: 2px solid #83d89b;
  background-color: transparent;
}

.seat.landing:not(.selected):hover {
  background-color: rgba(131, 216, 155, 0.15);
}

.seat.selected {
  background-image: url(../img/seats/ok.png);
}

.seat.hidden {
  display: none;
}

.placement {
  position: relative;
  overflow: auto;
  height: 400px;
}

.scheme-wrap {
  max-height: 250px;
  overflow: auto;
  margin-bottom: 10px;
}

.scheme-wrap tbody tr td:last-child {
  text-align: center;
}

.scheme-scale-plus,
.scheme-scale-minus {
  border: 1px solid #ddd;
  font-size: 18px;
  font-weight: 500;
}

.scheme-scale-plus:hover,
.scheme-scale-minus:hover {
 background-color: #ddd;
}
