@import url("./main.css");

:root {
  --project-bg: #0d0e10;
  --project-bg-alt: #17191c;
  --project-surface: rgba(255, 255, 255, .045);
  --project-surface-strong: #1d2024;
  --project-text: #f0f1f2;
  --project-text-muted: rgba(240, 241, 242, .58);
  --project-accent: #c8ff4a;
  --project-accent-secondary: #8e969d;
  --project-warning: #f0c36a;
  --project-error: #ff6b57;
  --project-border: rgba(240, 241, 242, .16);
  --project-radius: 10px;
  --project-shadow: 0 32px 90px rgba(0, 0, 0, .55);
  --project-glow: 0 0 55px rgba(200, 255, 74, .08);
  --project-font: Arial, sans-serif;
  --project-font-mono: "Courier New", monospace;
  --project-grid: 56px;
  --project-noise: .06;
  --project-transition: 220ms ease;
}

body[data-project]:not([data-project=""]) {
  --ink: var(--project-text);
  --muted: var(--project-text-muted);
  --line: var(--project-border);
  --accent: var(--project-accent);
  color: var(--project-text);
  background-color: var(--project-bg);
  font-family: var(--project-font);
}

body[data-project]:not([data-project=""])::after { opacity: var(--project-noise); }
body[data-project]:not([data-project=""]) :is(.room-id,.coordinate,[data-system-label],.debug-panel) { font-family: var(--project-font-mono); }
body[data-project]:not([data-project=""]) :focus-visible { outline-color: var(--project-accent); }

.project-room-shell {
  overflow: hidden;
  border: 1px solid var(--project-border);
  border-radius: var(--project-radius);
  background: var(--project-surface);
  box-shadow: var(--project-shadow), var(--project-glow);
}

.project-room-system { font-family: var(--project-font-mono); }
.project-room-primary,.project-room-door { border-color: var(--project-border); border-radius: calc(var(--project-radius) * .72); background: var(--project-surface); }

[data-door-type="locked-door"],[data-door-state="locked"] { border-color: var(--project-warning); }
[data-door-type="hidden-door"] { --door-signal: var(--project-accent-secondary); }
[data-door-type="portal-door"] { --door-signal: var(--project-text-muted); }
[data-project-fragment].is-discovered { border-color: var(--project-accent); box-shadow: var(--project-glow); }

@media (prefers-reduced-motion: reduce) {
  body[data-project]:not([data-project=""]) { --project-transition: .01ms linear; }
}
