:root { color-scheme: dark; }
* { box-sizing: border-box; }
html, body { margin: 0; height: 100%; background: #000; overflow: hidden; }
body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: #fff; }

#stage {
  position: fixed; inset: 0;
  display: grid; place-items: center;
  background: #000; outline: none;
  cursor: none;               /* the game draws its own cursor sprite */
  touch-action: none; user-select: none; -webkit-user-select: none;
}
#game { display: block; image-rendering: auto; background: #000; }

#loading { position: absolute; left: 25%; right: 25%; top: 50%; height: 4px; background: #ffffff1f; border-radius: 2px; overflow: hidden; }
#loading.hidden { display: none; }
#loadingBar { height: 100%; width: 0; background: #fff; }
