* { margin: 0; padding: 0; box-sizing: border-box; }

html, body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #05070a;
  color: #eee;
  font-family: system-ui, sans-serif;
}

#app { position: fixed; inset: 0; }

#game {
  display: block;
  width: 100vw;
  height: 100vh;
  image-rendering: pixelated;
  image-rendering: crisp-edges;
  background: #000;
  cursor: crosshair;
}

#boot {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #05070a;
  z-index: 10;
  transition: opacity .4s ease;
}
#boot.hidden { opacity: 0; pointer-events: none; }
.boot-inner { text-align: center; width: min(420px, 80vw); }
.boot-inner h1 {
  font-weight: 700;
  letter-spacing: .12em;
  font-size: 34px;
  margin-bottom: 18px;
  color: #ffcd5a;
  text-shadow: 0 2px 0 #000;
}
#boot-status { font-size: 13px; opacity: .8; margin-bottom: 12px; font-variant-numeric: tabular-nums; }
.bar { height: 8px; background: #1b2129; border-radius: 4px; overflow: hidden; }
#boot-bar { height: 100%; width: 0; background: linear-gradient(90deg, #7ea94b, #ffcd5a); transition: width .15s ease; }
