#snow-container {
  pointer-events: none;
  position: fixed;
  inset: 0;
  overflow: hidden;
  z-index: 9999;
}

.snowflake {
  position: absolute;
  top: -10px;
  background-color: #ffffff;
  border-radius: 50%;
  opacity: 0.3;
  filter: drop-shadow(0 0 2px rgba(255, 255, 255, 0.7));
  animation-name: snowfall;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

@keyframes snowfall {
  0% { transform: translate3d(0,0,0); opacity: 0; }
  10% { opacity: 0.4; }
  100% { transform: translate3d(var(--drift-x, 30px), 110vh, 0); opacity: 0; }
}