html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #1d2428;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

/* A área do jogo respeita o entalhe e a barra inferior dos celulares */
#game {
  position: absolute;
  top: env(safe-area-inset-top, 0px);
  bottom: env(safe-area-inset-bottom, 0px);
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 60px rgba(0, 0, 0, 0.5);
}

canvas {
  display: block;
  width: 100%;
  height: 100%;
}

/* Celular deitado: o jogo é vertical */
#rotate {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 10;
  background: #1d2428;
  color: #ffffff;
  font: 700 18px "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  text-align: center;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 12px;
  padding: 0 24px;
}

#rotate .rotate-icon {
  font-size: 48px;
  transform: rotate(90deg);
}

@media (orientation: landscape) and (max-height: 520px) and (pointer: coarse) {
  #rotate {
    display: flex;
  }
}

.noscript {
  color: #ffffff;
  font: 16px Arial, sans-serif;
  text-align: center;
  padding: 40px 16px;
}
