/* Login and registration share a centered, responsive composition. */
.App:has(>.login-footer){grid-template-columns:minmax(0,1fr)!important;isolation:isolate;overflow-x:clip}
.App:has(>.login-footer)>.css-18895cs,.App:has(>.login-footer)>.css-ivkqqv{display:none!important}
.App:has(>.login-footer)>.css-3pw04s{grid-column:1!important;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:48px 20px;min-height:calc(100svh - 220px)}
.App:has(>.login-footer)>.css-3pw04s>section{margin:0 auto!important;padding:24px!important;max-width:560px;width:100%;min-width:0;text-align:center}
.App:has(>.login-footer) .form{width:100%;box-sizing:border-box}
.App:has(>.login-footer) .form>div{max-width:100%;box-sizing:border-box}
.App:has(>.login-footer)>.css-xr8mxk,.App:has(>.login-footer)>.css-17y9zm7{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly{position:absolute!important;left:8%;top:18%;width:2px!important;height:2px!important;margin:0!important;border-radius:50%;background:#9ccde3;box-shadow:0 0 7px 2px #82b9d21a;opacity:.22;animation:wonulla-auth-drift 28s ease-in-out infinite alternate!important;pointer-events:none}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly::before,:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly::after{display:none!important}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(2){left:20%;top:62%;}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(3){left:86%;top:24%;}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(4){left:93%;top:67%;}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(5){left:12%;top:83%;background:#d4bd8a}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(6){left:78%;top:86%;}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(7){left:32%;top:10%;background:#d4bd8a}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(8){left:68%;top:45%;}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(n+13){display:none!important}
@keyframes wonulla-auth-drift{0%{transform:translate3d(0,10px,0);opacity:.12}50%{opacity:.32}100%{transform:translate3d(14px,-18px,0);opacity:.18}}
@media(max-width:600px){.App:has(>.login-footer)>.css-3pw04s{padding:28px 16px}.App:has(>.login-footer)>.css-3pw04s>section{padding:12px 0!important}:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(n+9){display:none!important}}
@media(prefers-reduced-motion:reduce){:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly{animation:none!important;opacity:.15}}
/* Keep the original photographic background behind the centered form. */
.App:has(>.login-footer)>.css-18895cs,.App:has(>.login-footer)>.css-ivkqqv{
 display:block!important;position:absolute!important;inset:0!important;
 width:100%!important;height:100%!important;min-height:0!important;
 background-position:center!important;opacity:.65;z-index:0;pointer-events:none;
}
.App:has(>.login-footer)>.css-xr8mxk,.App:has(>.login-footer)>.css-17y9zm7{z-index:1}
.App:has(>.login-footer)>.css-3pw04s{z-index:2}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly{
 width:3px!important;height:3px!important;background:#f1d794!important;
 box-shadow:0 0 6px 2px rgba(239,204,116,.45);opacity:.6;
 animation-name:wonulla-auth-visible-drift!important;
}
@keyframes wonulla-auth-visible-drift{0%{transform:translate3d(0,10px,0);opacity:.4}50%{opacity:.8}100%{transform:translate3d(14px,-18px,0);opacity:.5}}
@media(prefers-reduced-motion:reduce){:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly{animation:none!important;opacity:.55}}
.App:has(>.login-footer)>.css-3pw04s{background:transparent!important}

/* Noticeable wandering and independent, staggered firefly pulses. */
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly{
 --drift-duration:17s;--pulse-duration:4.7s;--drift-delay:-4s;--pulse-delay:-1s;
 --drift-x:58px;--drift-y:-72px;
 animation:wonulla-auth-wander var(--drift-duration) ease-in-out var(--drift-delay) infinite alternate,
 wonulla-auth-flicker var(--pulse-duration) linear var(--pulse-delay) infinite!important;
}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(2){--drift-duration:21s;--pulse-duration:5.9s;--drift-delay:-12s;--pulse-delay:-3s;--drift-x:-48px;--drift-y:62px}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(3){--drift-duration:16s;--pulse-duration:4.1s;--drift-delay:-7s;--pulse-delay:-2s;--drift-x:-66px;--drift-y:52px}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(4){--drift-duration:23s;--pulse-duration:6.3s;--drift-delay:-18s;--pulse-delay:-4s;--drift-x:-52px;--drift-y:-86px}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(5){--drift-duration:18s;--pulse-duration:5.3s;--drift-delay:-9s;--pulse-delay:-2s;--drift-x:74px;--drift-y:-58px}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(6){--drift-duration:20s;--pulse-duration:4.9s;--drift-delay:-6s;--pulse-delay:-3s;--drift-x:44px;--drift-y:-78px}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(7){--drift-duration:19s;--pulse-duration:6.7s;--drift-delay:-14s;--pulse-delay:-5s;--drift-x:60px;--drift-y:64px}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(8){--drift-duration:22s;--pulse-duration:5.1s;--drift-delay:-11s;--pulse-delay:-1s;--drift-x:48px;--drift-y:-64px}
@keyframes wonulla-auth-wander{
 0%{transform:translate3d(0,0,0)}
 30%{transform:translate3d(calc(var(--drift-x)*.55),calc(var(--drift-y)*.18),0)}
 65%{transform:translate3d(calc(var(--drift-x)*.25),calc(var(--drift-y)*.72),0)}
 100%{transform:translate3d(var(--drift-x),var(--drift-y),0)}
}
@keyframes wonulla-auth-flicker{
 0%,18%,100%{opacity:.08;box-shadow:0 0 3px 1px rgba(239,204,116,.12)}
 36%{opacity:.92;box-shadow:0 0 11px 3px rgba(239,204,116,.6)}
 48%{opacity:.26;box-shadow:0 0 4px 1px rgba(239,204,116,.2)}
 60%{opacity:.75;box-shadow:0 0 8px 2px rgba(239,204,116,.45)}
 80%{opacity:.12;box-shadow:0 0 3px 1px rgba(239,204,116,.12)}
}
.App:has(>.login-footer)>.css-18895cs::after,.App:has(>.login-footer)>.css-ivkqqv::after{
 content:"";position:absolute;inset:0;pointer-events:none;
 background:radial-gradient(ellipse at 50% 42%,transparent 20%,rgba(0,0,0,.35) 55%,rgba(0,0,0,.92) 100%);
 box-shadow:inset 0 0 90px 25px rgba(0,0,0,.65);
}
@media(prefers-reduced-motion:reduce){:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly{animation:none!important;opacity:.55}}

/* Shared density: twelve lights on desktop, eight on small screens. */
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(9){left:42%;top:74%;--drift-duration:18s;--pulse-duration:5.7s;--drift-delay:-8s;--pulse-delay:-4s;--drift-x:-54px;--drift-y:-68px}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(10){left:55%;top:16%;--drift-duration:24s;--pulse-duration:4.3s;--drift-delay:-16s;--pulse-delay:-2s;--drift-x:62px;--drift-y:58px}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(11){left:6%;top:42%;--drift-duration:19s;--pulse-duration:6.1s;--drift-delay:-5s;--pulse-delay:-3s;--drift-x:48px;--drift-y:-74px}
:is(.App:has(>.login-footer),.wonulla-home-fireflies) .firefly:nth-child(12){left:89%;top:48%;--drift-duration:21s;--pulse-duration:5.5s;--drift-delay:-13s;--pulse-delay:-1s;--drift-x:-58px;--drift-y:66px}

/* Darken only the homepage background, behind cards and controls. */
.wonulla-firefly-home .wonulla-home-fireflies{
 background:radial-gradient(ellipse at 50% 42%,transparent 20%,rgba(0,0,0,.115) 55%,rgba(0,0,0,.325) 100%);
 box-shadow:inset 0 0 90px 25px rgba(0,0,0,.21);
}
/* Preserve the vignette when animation is disabled for reduced motion. */
@media(prefers-reduced-motion:reduce){.wonulla-firefly-home .wonulla-home-fireflies{display:block!important}}
