/* Fireflies are separate from the clean painted forest and below all page UI. */
html:root body[data-page="welcome"] .nw-welcome-fireflies{
 position:absolute;inset:0;z-index:1;overflow:hidden;contain:paint;
 pointer-events:none!important;user-select:none;opacity:1;
}
html:root body[data-page="welcome"] .nw-welcome-fireflies *{pointer-events:none!important}
.nw-firefly-anchor{position:absolute;width:0;height:0;opacity:var(--light-strength,1);transition:opacity .6s}
.nw-firefly-flight{display:block;width:0;height:0;animation:nw-firefly-flight var(--flight-duration,19s) var(--flight-delay,0s) ease-in-out infinite}
.nw-firefly-light{
 display:block;width:var(--light-size,2px);height:var(--light-size,2px);border-radius:50%;
 position:absolute;left:0;top:0;transform:translate(-50%,-50%);
 background:#fff9dc;
 box-shadow:0 0 var(--core-blur,3.5px) var(--core-spread,.6px) #ffe992ff,
  0 0 var(--outer-blur,8px) var(--outer-spread,.7px) #ffdc75bb;
 opacity:0;animation:nw-firefly-pulse var(--pulse-duration,5.6s) var(--pulse-delay,0s) ease-in-out infinite;
}
.nw-firefly-light::after{
 content:"";position:absolute;inset:calc(-1 * var(--halo-radius,5px));border-radius:50%;
 background:radial-gradient(circle,#fff0accb 0%,#ffdd7b85 28%,transparent 70%);
}
@keyframes nw-firefly-pulse{
 0%,100%{opacity:var(--light-rest,.04);transform:translate(-50%,-50%) scale(.85)}
 15%{opacity:var(--light-low,.16);transform:translate(-50%,-50%) scale(.9)}
 29%,61%{opacity:var(--light-shoulder,.73);transform:translate(-50%,-50%) scale(1)}
 45%{opacity:var(--light-peak,.85);transform:translate(-50%,-50%) scale(1.04)}
 79%{opacity:var(--light-mid,.46);transform:translate(-50%,-50%) scale(.96)}
 94%{opacity:var(--light-tail,.08);transform:translate(-50%,-50%) scale(.9)}
}
@keyframes nw-firefly-flight{
 0%,100%{transform:translate3d(0,0,0)}
 28%{transform:translate3d(var(--flight-x,8px),var(--flight-y,-12px),0)}
 57%{transform:translate3d(var(--flight-x2,-5px),var(--flight-y2,-5px),0)}
 79%{transform:translate3d(var(--flight-x3,-9px),var(--flight-y3,6px),0)}
}
.nw-welcome-fireflies.is-paused *{animation-play-state:paused!important}
html:root[data-theme="dim"] body[data-page="welcome"] .nw-welcome-fireflies{opacity:.7}
html:root[data-theme="dawn"] body[data-page="welcome"] .nw-welcome-fireflies{opacity:.85}
.nw-welcome-fireflies[hidden],.nw-welcome-fireflies [hidden],html.forest-motion-off .nw-welcome-fireflies{display:none!important}
@media(prefers-reduced-motion:reduce){.nw-welcome-fireflies{display:none!important}}
