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

html, body {
  width: 100%; height: 100%;
  overflow: hidden;
  background: #0d0a07;
}

canvas {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}

/* ── DOF blur per layer (CSS filter, applied to entire canvas) ── */
#c0 {
  z-index: 1;
  filter: blur(24px) brightness(0.6) saturate(0.75);
}

#c1 {
  z-index: 2;
  filter: blur(7px) brightness(0.82) saturate(0.9);
}

#c2 {
  z-index: 3;
  /* sharp foreground — no blur */
}

/* ── Hint label ── */
#hint {
  position: fixed;
  bottom: 1.6rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  font-family: 'Courier New', monospace;
  font-size: 0.52rem;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: rgba(255, 220, 180, 0.15);
  pointer-events: none;
  white-space: nowrap;
  user-select: none;
}