/* Minimal New Year decorations: garland + snowfall */

/* Snow falling animation */
@keyframes snowfall {
  0%   { transform: translateY(-100vh) rotate(0deg);   opacity:1; }
  100% { transform: translateY(100vh)  rotate(360deg);  }
}

/* Garland twinkle animation */
@keyframes twinkle {
  0%,100% { opacity:.35 }
  50%     { opacity:1   }
}

/* Fixed containers */
.christmas-lights {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 40px;
  pointer-events: none;
  z-index: 1000;
}

.light {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  animation: twinkle 2s ease-in-out infinite;
}

/* Generate 20 evenly-spaced bulbs */
.light:nth-child(1)  { left:5%;  animation-delay:0s   }
.light:nth-child(2)  { left:10%; animation-delay:.2s }
.light:nth-child(3)  { left:15%; animation-delay:.4s }
.light:nth-child(4)  { left:20%; animation-delay:.6s }
.light:nth-child(5)  { left:25%; animation-delay:.8s }
.light:nth-child(6)  { left:30%; animation-delay:1s  }
.light:nth-child(7)  { left:35%; animation-delay:1.2s}
.light:nth-child(8)  { left:40%; animation-delay:1.4s}
.light:nth-child(9)  { left:45%; animation-delay:1.6s}
.light:nth-child(10) { left:50%; animation-delay:1.8s}
.light:nth-child(11) { left:55%; animation-delay:2s  }
.light:nth-child(12) { left:60%; animation-delay:2.2s}
.light:nth-child(13) { left:65%; animation-delay:2.4s}
.light:nth-child(14) { left:70%; animation-delay:2.6s}
.light:nth-child(15) { left:75%; animation-delay:2.8s}
.light:nth-child(16) { left:80%; animation-delay:3s  }
.light:nth-child(17) { left:85%; animation-delay:3.2s}
.light:nth-child(18) { left:90%; animation-delay:3.4s}
.light:nth-child(19) { left:95%; animation-delay:3.6s}
.light:nth-child(20) { left:100%;animation-delay:3.8s}

/* Snow container */
.snowflakes {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events:none;
  z-index: 999;
}

.snowflake {
  position:absolute;
  color:#fff;
  font-size:1em;
  text-shadow:0 0 5px rgba(255,255,255,.8);
  opacity:0;
  transform: translateY(-100vh) rotate(0deg);
  animation: snowfall linear infinite;
  animation-fill-mode: forwards;
}

/* Hidden state when snow disabled */
.snow-hidden { display:none !important; }
/* Remove individual snowflake style override if any */

/* Toggle button */
.snow-toggle {
  position: fixed;
  bottom: 20px;
  left: 20px;
  padding: 10px 16px;
  background: rgba(0,0,0,.6);
  color:#fff;
  border:none;
  border-radius:30px;
  cursor:pointer;
  z-index: 1001;
  backdrop-filter: blur(6px);
}

/* Festive message animation */
@keyframes festiveMessage {
  0% {
    transform: translate(-50%, -50%) scale(0);
    opacity: 0;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.1);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
}

.snow-toggle:hover { background: rgba(0,0,0,.75) }

/* Responsive */
@media(max-width:768px){
  .snow-toggle{ bottom:15px; left:10px; font-size:12px; padding:8px 14px; }
  .christmas-lights{ height:30px; }
  .light{ width:6px; height:6px; }
}