/* The game draws everything in the canvas (three.js + NGUI). The DOM only
   covers the page until the first frame and hosts native text entry. */
html, body { margin: 0; height: 100%; overflow: hidden; overscroll-behavior: none; background: #000; color: #fff;
  -webkit-user-select: none; user-select: none; -webkit-tap-highlight-color: transparent; -webkit-touch-callout: none; }
#stage { position: fixed; inset: 0; width: 100vw; height: 100vh; height: 100dvh; display: block; touch-action: none; outline: none; }
#overlay { position: fixed; inset: 0; pointer-events: none; }
#overlay > * { pointer-events: auto; }
#boot { position: fixed; inset: 0; z-index: 50; background: #000; }
#boot.error { display: grid; place-items: center; padding: 24px; font: 16px/1.4 system-ui, -apple-system, sans-serif; color: #aaa; text-align: center; }
#boot.error button { margin-top: 8px; padding: 10px 28px; border: 1px solid #ff7a1a; border-radius: 8px; background: transparent; color: #ffc45c; font: inherit; }
