/* A short, self-contained convergence. Orbit hooks keep all auth pages in sync.
   Its ancestors and the form are never transformed. */
.aioness-auth-brand .auth-orbit[data-auth-orbit] {
    --orbit-green: #008000;
    --orbit-navy: #191970;
    --orbit-charge: 0;
    position: relative;
    isolation: isolate;
    width: min(400px, 100%);
    max-width: 400px;
    height: var(--auth-orbit-height, 220px);
    flex: 0 0 auto;
    margin: 0 auto;
}
.auth-orbit__atmosphere,
.auth-orbit__canvas,
.auth-orbit__fallback {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.auth-orbit__atmosphere {
    background:
        radial-gradient(ellipse 30% 35% at 65% 40%, rgba(25, 25, 112, .05), transparent),
        radial-gradient(ellipse 30% 35% at 35% 60%, rgba(0, 128, 0, .045), transparent);
}
.auth-orbit__canvas { opacity: 0; }
.auth-orbit[data-orbit-ready="true"] .auth-orbit__canvas { opacity: 1; }
.auth-orbit[data-orbit-ready="true"] .auth-orbit__fallback { display: none; }
/* The head script sets this before any body content can be painted.
   Without JavaScript (or after a load failure), static branding stays visible. */
html[data-auth-orbit-boot="pending"] .auth-orbit:not([data-orbit-ready="true"]) {
    --orbit-logo-opacity: 0;
}
html[data-auth-orbit-boot="pending"] .auth-orbit:not([data-orbit-ready="true"]) .auth-orbit__fallback {
    visibility: hidden;
}
.auth-orbit__brand {
    position: absolute;
    z-index: 2;
    top: 47.5%;
    left: 50%;
    display: grid;
    place-items: center;
    width: 166px;
    height: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    transform: translate(-50%, -50%);
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
}
.auth-orbit .auth-orbit__brand:focus-visible {
    outline: 2px solid var(--auth-link, var(--orbit-navy));
    outline-offset: 5px;
}
.auth-orbit .auth-orbit__logo {
    display: block;
    width: 166px;
    max-width: 100%;
    height: auto;
    margin: 0;
}
.auth-orbit .auth-orbit__logo--dark { display: none; }
.auth-orbit .auth-orbit__logo {
    opacity: var(--orbit-logo-opacity, 1);
}
.auth-orbit .auth-orbit__brand:focus-visible .auth-orbit__logo {
    opacity: 1;
}
.auth-orbit__glow {
    position: absolute;
    z-index: 3;
    top: 64%;
    left: 32.65%;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    background: #e2ffe9;
    box-shadow: 0 0 7px 3px rgba(229, 255, 238, .85), 0 0 20px 10px rgba(0, 159, 18, .28);
    opacity: var(--orbit-charge, 0);
    pointer-events: none;
}
.auth-orbit__fallback-lines { stroke: var(--orbit-navy); stroke-width: .85; opacity: .18; }
.auth-orbit__fallback-node circle { stroke: rgba(255, 255, 255, .3); stroke-width: .7; }
.auth-orbit__fallback-node path { stroke: #fff; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
html[data-auth-theme="dark"] .auth-orbit[data-auth-orbit] {
    --orbit-green: #73efaa;
    --orbit-navy: #abb7ff;
}
html[data-auth-theme="dark"] .auth-orbit__atmosphere {
    background:
        radial-gradient(ellipse 30% 35% at 65% 40%, rgba(137, 151, 255, .12), transparent),
        radial-gradient(ellipse 30% 35% at 35% 60%, rgba(70, 225, 139, .09), transparent);
}
html[data-auth-theme="dark"] .auth-orbit__fallback-lines { opacity: .3; }
html[data-auth-theme="dark"] .auth-orbit__logo--light { display: none; }
html[data-auth-theme="dark"] .auth-orbit__logo--dark {
    display: block;
    /* Recolor the original SVG, preserving its shape and transparent cutouts. */
    filter: brightness(0) invert(1);
}
@media (max-width: 600px) {
    .aioness-auth-brand .auth-orbit[data-auth-orbit] { height: var(--auth-orbit-mobile-height, 180px); }
    .auth-orbit__brand { width: 148px; }
    .auth-orbit .auth-orbit__logo { width: 148px; }
}

@media (forced-colors: active) {
    .auth-orbit__canvas, .auth-orbit__fallback, .auth-orbit__atmosphere, .auth-orbit__glow { display: none; }
    .auth-orbit .auth-orbit__logo { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
    .auth-orbit__canvas, .auth-orbit__fallback, .auth-orbit__glow { display: none; }
    .auth-orbit .auth-orbit__logo { opacity: 1; }
}
