html, body {
  margin: 0; padding: 0; height: 100%; background: #000; overflow: hidden;
  touch-action: none; overscroll-behavior: none;
  -webkit-user-select: none; user-select: none; -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent; -webkit-text-size-adjust: 100%;
}
body { position: fixed; inset: 0; }
#screen { position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; touch-action: none; outline: none; }
#safe {
  position: fixed; left: 0; top: 0; visibility: hidden; pointer-events: none;
  padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
}
#rotate { display: none; }
@media (orientation: portrait) and (hover: none) and (pointer: coarse) {
  #rotate {
    display: flex; position: fixed; inset: 0; z-index: 10; background: #0b0a16;
    align-items: center; justify-content: center; color: #f8d860;
    font: 700 18px/1.3 -apple-system, system-ui, sans-serif; text-align: center;
  }
  .rot-phone {
    width: 46px; height: 80px; margin: 0 auto 18px; border: 4px solid #f8d860; border-radius: 9px;
    animation: rot 2.2s ease-in-out infinite;
  }
}
@keyframes rot { 0%, 25% { transform: rotate(0); } 60%, 100% { transform: rotate(-90deg); } }
.noscript { color: #fff; font: 16px system-ui; padding: 20px; }
