:root { color-scheme: dark; }
* { box-sizing: border-box; }
html, body {
  margin: 0; height: 100%; overflow: hidden; background: #0a0d18;
  font-family: system-ui, "Segoe UI", Roboto, sans-serif;
  -webkit-user-select: none; user-select: none; touch-action: none;
}
#stage { position: fixed; inset: 0; }
#gl, #ui { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
#ui { pointer-events: none; image-rendering: auto; }
#gl { background: #1a2740; }

.boot {
  position: fixed; inset: 0; display: grid; place-content: center; gap: .35rem;
  background: radial-gradient(60% 60% at 50% 40%, #2a3a63, #0a0d18 70%);
  text-align: center; transition: opacity .5s ease; z-index: 10;
}
.boot.hidden { opacity: 0; pointer-events: none; }
.boot-logo {
  font-size: clamp(28px, 6vw, 68px); font-weight: 900; letter-spacing: .08em;
  color: #fff; text-shadow: 0 3px 0 #d0202a, 0 6px 0 #7a0f16, 0 10px 22px rgba(0,0,0,.6);
}
.boot-sub { color: #9fb4e6; font-size: clamp(12px, 1.6vw, 18px); letter-spacing: .28em; }
