html, body { margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden; background: #f3f3f3; }
#gridcraft_canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
#gridcraft_loading { position: absolute; inset: 0; z-index: 1; display: flex; align-items: center; justify-content: center;
  padding: 24px; box-sizing: border-box; text-align: center; background: #f3f3f3; color: #555;
  font: 15px system-ui, sans-serif; pointer-events: none; }
#gridcraft_loading.failed { color: #8a1c1c; font-size: 16px; pointer-events: auto; }
@media (prefers-color-scheme: dark) {
  html, body, #gridcraft_loading { background: #202020; }
  #gridcraft_loading { color: #bbb; }
  #gridcraft_loading.failed { color: #f0a0a0; }
}
