:root {
  --bg: #0f1115;
  --panel: rgba(16, 20, 28, 0.88);
  --text: #d6dde9;
  --ok: #77d0b9;
  --warn: #e2b272;
  --err: #f27878;
}

* {
  box-sizing: border-box;
}

html,
body,
#app {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: radial-gradient(circle at 20% 20%, #1b2230 0%, var(--bg) 50%, #090b10 100%);
  color: var(--text);
  font-family: "Segoe UI", "SF Pro Text", "PingFang SC", sans-serif;
}

#scene-canvas {
  width: 100%;
  height: 100%;
  display: block;
}

.status {
  position: fixed;
  left: 16px;
  bottom: 16px;
  max-width: min(640px, calc(100vw - 32px));
  padding: 10px 12px;
  background: var(--panel);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 8px;
  backdrop-filter: blur(4px);
  line-height: 1.45;
  white-space: pre-wrap;
  font-size: 13px;
}

.status.ok {
  border-color: rgba(119, 208, 185, 0.5);
  color: var(--ok);
}

.status.warn {
  border-color: rgba(226, 178, 114, 0.55);
  color: var(--warn);
}

.status.error {
  border-color: rgba(242, 120, 120, 0.65);
  color: var(--err);
}
