/* GRAIN + VIGNETTE */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  background:
    radial-gradient(circle at center, transparent 60%, rgba(0,0,0,0.08)),
    repeating-linear-gradient(
      0deg,
      rgba(80,50,30,0.03),
      rgba(80,50,30,0.03) 1px,
      transparent 1px,
      transparent 3px
    );
  pointer-events: none;
  z-index: 0;
}

body::after {
  content: "";
  position: fixed;
  inset: 0;
  background-image:
    radial-gradient(circle at 18% 42%, rgba(0,0,0,0.05) 0%, transparent 35%),
    radial-gradient(circle at 72% 68%, rgba(0,0,0,0.04) 0%, transparent 40%);
  pointer-events: none;
  z-index: 1;
}

@keyframes lightDrift {
  0% { background-position: 0% 0%; }
  100% { background-position: 100% 100%; }
}

/* AMBIENT LAYER */
.ambient {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,0.05),
    transparent 40%,
    rgba(0,0,0,0.04)
  );
  pointer-events: none;
  animation: lightDrift 120s linear infinite;
}
