/* Emoji Background Layer */
.emoji-bg {
  position: fixed;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 0;
}

/* Individual Emoji */
.emoji {
  position: absolute;
  font-size: var(--size);
  opacity: var(--opacity);
  filter: blur(var(--blur));
  animation: float var(--duration) linear infinite;
}

/* Floating Animation */
@keyframes float {
  from {
    transform: translateY(0) translateX(0) rotate(0deg);
  }
  to {
    transform: translateY(-120vh) translateX(var(--drift)) rotate(8deg);
  }
}

/* Make sure page content stays above emojis */
body > *:not(.emoji-bg) {
  position: relative;
  z-index: 2;
}
