html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  background: #0a0a12;
  overflow: hidden;
  touch-action: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
  overscroll-behavior: none;
}
#game {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  image-rendering: auto;
}

/* touch controls shrink below usable size in portrait (magic button ~32 CSS px);
 * landscape restores >=56px so a rotate prompt beats shrunken controls */
#rotate-hint { display: none; }
@media (orientation: portrait) and (pointer: coarse) {
  #rotate-hint {
    display: flex; position: fixed; inset: 0; z-index: 10;
    align-items: center; justify-content: center;
    background: rgba(8, 6, 14, .92); color: #e8d9a8;
    font: 700 22px/1.4 Georgia, serif; text-align: center; padding: 24px;
  }
}
