/* base.css — html/body, global typography, utilities */
html, body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  background: black;

  /* allow page scroll */
  overflow-x: hidden;
  overflow-y: auto;

  font-family: "OCRA", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.hidden { display: none; }

/* Generic developer preview box (top-left) */
.preview {
  position: fixed;
  top: 10px;
  left: 10px;
  max-width: 70vw;
  max-height: 70vh;
  border: 2px solid #0f0;
  background: rgba(0,0,0,.85);
  z-index: 10000;
  padding: 4px;
}
.preview img { width: 100%; height: auto; }

/* Dev script upload affordance (top-right) */
.script-upload {
  position: fixed;
  top: 10px;
  right: 12px;
  z-index: 5;
  padding: 6px 10px;
  background: rgba(0,0,0,.6);
  color: #0f0;
  border-radius: 4px;
  font-size: 14px;
  pointer-events: auto;
}
.script-upload input {
  cursor: pointer;
  opacity: 0;
  position: absolute;
  inset: 0;
}

/* Simple utility text tones */
.sn-muted { color:#9f9; opacity:.7; font-size:12px; }
.sn-error { color:#f88; font-size:12px; }
.sn-k     { color:#9f9; }
