#njjs-root, .njjs-elementor #njjs-root, .njjs-block #njjs-root {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 9999;
}
.njjs-toggle {
  position: fixed;
  right: 12px;
  bottom: 12px;
  z-index: 10000;
  background: #1e293b;
  color: #fff;
  border-radius: 6px;
  padding: 8px 10px;
  font-size: 13px;
  cursor: pointer;
}
@media (prefers-reduced-motion: reduce) {
  .njjs-snowflake { animation: none !important; }
}
.njjs-snowflake {
  position: absolute;
  top: -10px;
  color: white;
  opacity: var(--njjs-opacity, 0.8);
  filter: drop-shadow(0 0 3px rgba(255,255,255,0.5));
  animation: fall linear var(--njjs-duration, 8s) forwards;
  transform: translate3d(0,0,0) rotate(var(--njjs-rotation, 0deg));
}
@keyframes fall {
  0% { transform: translate3d(0, -10px, 0) rotate(0deg); }
  100% { transform: translate3d(var(--njjs-wind, 30px), 100vh, 0) rotate(360deg); }
}
/* Temas */
.njjs-theme-navidad .njjs-snowflake { color: #ffffff; }
.njjs-theme-invierno .njjs-snowflake { color: #e0f2fe; }
.njjs-theme-neon .njjs-snowflake { color: #7c3aed; text-shadow: 0 0 6px #7c3aed; }
.njjs-theme-minimal .njjs-snowflake { color: #fff; opacity: 0.6; }