*, *:before, *:after { box-sizing: border-box; }

html, body, canvas {
  width: 100%;
  height: 100%;
}

html {
  font-family: sans-serif;
  font-size: 12px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  overflow: hidden;
}

body {
  margin: 0;
  background: #24282e;
}

canvas {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}

.preload {
  position: absolute;
  font-size: 2em;
  top: calc(50% - 2em);
  width: 100%;
  text-align: center;
  color: white;
  cursor: pointer;
}

.buttons {
  position: absolute;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  width: 100%;
  padding: 1px;
  padding-left: 3px;
  z-index: 10;
}

.button {
  margin-left: -1px;
  margin-bottom: .6em;
  padding: .45em .8em .3em;
  color: white;
  border: 1px solid currentColor;
}

.button:hover {
  opacity: 1;
  cursor: pointer;
  touch-action: manipulation;
}

.button[active] {
  background: #555;
}

[hide] {
  display: none;
}
