.scaffold-outer {
  width: 100%;
  height: 100%;
}

.scaffold-inner {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
}

.scaffold-board {
  width: calc(100% - 400px);
  margin-top: unset !important;
  pointer-events: none;
}

.scaffold-controls {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-direction: column;
  width: 200px;
}

#scaffold-controls-bottom {
  display: none;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.scaffold-dpad {
  width: 124px;
}

.scaffold-buttons {
  width: 160px;
}

.scaffold-button {
  border: 1px solid white;
  border-radius: 4px;
  touch-action: manipulation;
  color: white;
  font-family: monospace;
  font-size: 16px;
  padding: 16px;
  text-align: center;
  min-width: 48px;
}
.scaffold-button:active {
  border: 1px solid black;
}

.scaffold-button-direction {
  background: #333;
}

.scaffold-button-confirm {
  background: green;
  margin: 4px;
}

.scaffold-button-cancel {
  background: red;
  margin: 4px;
}

.scaffold-button-shift {
  background: darkgoldenrod;
  margin: 4px;
}

.scaffold-flex-row-center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.scaffold-flex-row-flex-end {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.scaffold-flex-row-space-between {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.scaffold-vertical-spacer {
  height: 32px;
}

@media screen and (orientation: portrait) {
  .scaffold-board {
    width: 100%;
  }
  #scaffold-controls-left {
    display: none;
  }
  #scaffold-controls-right {
    display: none;
  }
  #scaffold-controls-bottom {
    display: flex !important;
  }
  .scaffold-inner {
    flex-direction: column;
    align-items: center;
  }
  canvas {
    max-width: 60vh;
  }
}
