.auth-ambient {
    --space-blue: #6596ff;
    --space-cyan: #6de6ff;
    --space-violet: #8b7cff;
    position: fixed;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
    background:
        radial-gradient(circle at 14% 45%, rgba(48, 83, 205, 0.17), transparent 29rem),
        radial-gradient(circle at 88% 52%, rgba(55, 94, 202, 0.13), transparent 31rem),
        radial-gradient(circle at 50% 110%, rgba(70, 51, 154, 0.09), transparent 38rem);
}

.auth-ambient::before,
.auth-ambient::after {
    content: "";
    position: absolute;
    inset: 0;
}

.auth-ambient::before {
    opacity: 0.48;
    background:
        radial-gradient(ellipse at 18% 32%, rgba(61, 104, 255, 0.1), transparent 24%),
        radial-gradient(ellipse at 80% 66%, rgba(84, 67, 191, 0.08), transparent 27%);
    filter: blur(18px);
    animation: authNebulaBreathe 20s ease-in-out infinite;
}

.auth-ambient::after {
    z-index: 4;
    background: radial-gradient(circle at center, transparent 19%, rgba(9, 9, 11, 0.12) 58%, rgba(9, 9, 11, 0.76) 100%);
}

.auth-ambient-grid {
    position: absolute;
    inset: -12%;
    opacity: 0.09;
    background-image:
        linear-gradient(rgba(121, 159, 255, 0.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(121, 159, 255, 0.08) 1px, transparent 1px);
    background-size: 68px 68px;
    mask-image: radial-gradient(circle at center, #000 0%, transparent 75%);
    animation: authGridDrift 42s linear infinite;
}

.auth-star-field {
    position: absolute;
    inset: -8%;
    background-repeat: repeat;
    transform: translate3d(0, 0, 0);
}

.auth-star-field-near {
    opacity: 0.62;
    background-image:
        radial-gradient(circle, rgba(127, 169, 255, 0.9) 0 1px, transparent 1.7px),
        radial-gradient(circle, rgba(180, 207, 255, 0.7) 0 1.2px, transparent 1.8px),
        radial-gradient(circle, rgba(101, 150, 255, 0.55) 0 0.8px, transparent 1.5px);
    background-position: 14px 22px, 97px 136px, 42px 91px;
    background-size: 190px 210px, 310px 280px, 145px 170px;
    animation: authStarsDrift 58s linear infinite, authStarGlow 9s ease-in-out infinite;
}

.auth-star-field-far {
    opacity: 0.3;
    background-image:
        radial-gradient(circle, rgba(145, 178, 255, 0.75) 0 0.7px, transparent 1.3px),
        radial-gradient(circle, rgba(111, 153, 255, 0.48) 0 0.8px, transparent 1.4px);
    background-position: 58px 31px, 16px 73px;
    background-size: 118px 126px, 172px 184px;
    animation: authStarsDrift 84s linear infinite reverse, authStarGlow 13s ease-in-out -4s infinite;
}

.auth-comet {
    --auth-comet-angle: -22deg;
    position: absolute;
    z-index: 1;
    width: clamp(92px, 9vw, 160px);
    height: 1px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(121, 171, 255, 0.12) 36%, rgba(143, 201, 255, 0.85));
    opacity: 0;
    filter: drop-shadow(0 0 7px rgba(103, 173, 255, 0.44));
    transform: translate3d(-24vw, -8vh, 0) rotate(var(--auth-comet-angle));
    transform-origin: right center;
    will-change: transform, opacity;
}

.auth-comet::after {
    content: "";
    position: absolute;
    right: -2px;
    top: 50%;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #b9ddff;
    box-shadow: 0 0 10px rgba(111, 183, 255, 0.9);
    transform: translateY(-50%);
}

.auth-comet-one { left: -13%; top: 12%; animation: authCometPass 25s linear -7s infinite; }
.auth-comet-two { --auth-comet-angle: -15deg; left: -20%; top: 48%; width: clamp(70px, 7vw, 124px); animation: authCometPass 34s linear -23s infinite; }

.auth-ambient-orb {
    position: absolute;
    width: clamp(290px, 27vw, 500px);
    aspect-ratio: 1;
    border-radius: 50%;
    border: 1px solid rgba(112, 153, 255, 0.07);
    opacity: 0.5;
}

.auth-ambient-orb::before,
.auth-ambient-orb::after {
    content: "";
    position: absolute;
    border-radius: inherit;
    border: 1px solid rgba(112, 153, 255, 0.055);
}

.auth-ambient-orb::before { inset: 15%; }
.auth-ambient-orb::after { inset: 32%; }
.auth-ambient-orb-left { left: -10%; top: 20%; animation: authOrbFloat 25s ease-in-out infinite; }
.auth-ambient-orb-right { right: -11%; bottom: 4%; animation: authOrbFloat 29s ease-in-out -9s infinite reverse; }

.auth-flow {
    position: absolute;
    z-index: 1;
    width: clamp(280px, 29vw, 520px);
    height: auto;
    opacity: 0.32;
    overflow: visible;
}

.auth-flow-left { left: 0; bottom: 4%; }
.auth-flow-right { right: -1%; top: 6%; transform: scaleX(-1); }
.auth-flow path { fill: none; stroke: url(#authFlowGradient); stroke-width: 1; stroke-dasharray: 7 11; animation: authFlowMove 28s linear infinite; }
.auth-flow circle { fill: #76a4ff; filter: drop-shadow(0 0 7px rgba(104, 157, 255, 0.78)); }

.auth-space-scene {
    position: absolute;
    z-index: 2;
    width: clamp(280px, 26vw, 430px);
    aspect-ratio: 1;
    color: #dce7ff;
}

.auth-code-universe {
    left: clamp(22px, 4.2vw, 82px);
    top: 20%;
}

.auth-orbit {
    position: absolute;
    left: 50%;
    top: 50%;
    border-radius: 50%;
    border: 1px solid rgba(111, 155, 255, 0.17);
    transform: translate(-50%, -50%);
}

.auth-orbit::before,
.auth-orbit::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 6px;
    height: 6px;
    margin-top: -3px;
    border-radius: 50%;
    background: #78a8ff;
    box-shadow: 0 0 13px rgba(105, 160, 255, 0.9);
}

.auth-orbit::before { left: -3px; }
.auth-orbit::after { right: -3px; }
.auth-orbit-outer {
    width: 91%;
    height: 66%;
    border-style: dashed;
    animation: authOrbitSpin 58s linear infinite;
}

.auth-orbit-inner {
    width: 66%;
    height: 91%;
    border-color: rgba(117, 102, 255, 0.14);
    animation: authOrbitSpin 46s linear infinite reverse;
}

.auth-code-core {
    position: absolute;
    left: 50%;
    top: 50%;
    display: grid;
    place-items: center;
    width: clamp(96px, 8vw, 128px);
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    border: 1px solid rgba(133, 172, 255, 0.3);
    border-radius: 50%;
    background:
        radial-gradient(circle at 35% 28%, rgba(129, 166, 255, 0.28), transparent 36%),
        linear-gradient(145deg, rgba(24, 35, 67, 0.82), rgba(11, 15, 27, 0.62));
    box-shadow:
        0 0 0 14px rgba(91, 128, 255, 0.025),
        0 0 46px rgba(70, 118, 255, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(9px);
    animation: authCodeCoreFloat 14s ease-in-out infinite;
}

.auth-code-core::after {
    content: "";
    position: absolute;
    inset: -12px;
    border-radius: inherit;
    border: 1px solid rgba(117, 155, 255, 0.08);
}

.auth-code-core svg {
    width: 58%;
    fill: none;
    stroke: #79a8ff;
    stroke-width: 5.5;
    stroke-linecap: round;
    stroke-linejoin: round;
    filter: drop-shadow(0 0 8px rgba(99, 154, 255, 0.42));
}

.auth-code-core span {
    margin-top: -12px;
    color: rgba(179, 202, 255, 0.62);
    font-family: "SFMono-Regular", Consolas, monospace;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.24em;
}

.auth-code-node {
    position: absolute;
    display: grid;
    place-items: center;
    width: 44px;
    aspect-ratio: 1;
    border: 1px solid rgba(122, 163, 255, 0.16);
    border-radius: 50%;
    background: rgba(13, 19, 34, 0.64);
    box-shadow: 0 13px 36px rgba(0, 0, 0, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.04);
    color: rgba(183, 205, 255, 0.72);
    font-family: "SFMono-Regular", Consolas, monospace;
    font-size: 11px;
    font-weight: 700;
    backdrop-filter: blur(8px);
}

.auth-code-node-one { left: 5%; top: 26%; animation: authNodeFloat 16s ease-in-out infinite; }
.auth-code-node-two { right: 7%; top: 17%; animation: authNodeFloat 19s ease-in-out -6s infinite reverse; }
.auth-code-node-three { right: 10%; bottom: 18%; animation: authNodeFloat 17s ease-in-out -4s infinite; }
.auth-code-node-four { left: 11%; bottom: 14%; animation: authNodeFloat 21s ease-in-out -10s infinite reverse; }

.auth-orbit-dot {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #70dfff;
    box-shadow: 0 0 12px rgba(102, 222, 255, 0.92);
}

.auth-orbit-dot-one { left: 34%; top: 8%; animation: authDotPulse 6s ease-in-out infinite; }
.auth-orbit-dot-two { right: 23%; bottom: 8%; animation: authDotPulse 7.5s ease-in-out -3s infinite; }

.auth-code-caption,
.auth-flight-caption {
    position: absolute;
    color: rgba(164, 190, 250, 0.48);
    font-family: "SFMono-Regular", Consolas, monospace;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.auth-code-caption { left: 50%; bottom: -2%; transform: translateX(-50%); white-space: nowrap; }

.auth-flight-universe {
    right: clamp(24px, 4.5vw, 90px);
    bottom: 13%;
    animation: authFlightSceneDrift 28s ease-in-out infinite;
}

.auth-rocket-path {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
}

.auth-rocket-path path {
    fill: none;
    stroke: rgba(102, 151, 255, 0.25);
    stroke-width: 1.2;
    stroke-dasharray: 6 10;
    animation: authFlowMove 24s linear infinite;
}

.auth-space-planet {
    position: absolute;
    right: 2%;
    bottom: 5%;
    width: 34%;
    aspect-ratio: 1;
    border-radius: 50%;
    background:
        radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.2), transparent 15%),
        linear-gradient(145deg, #263b7e, #171b45 56%, #0e102a);
    box-shadow: -18px 20px 60px rgba(17, 28, 79, 0.35), inset -22px -18px 34px rgba(4, 6, 21, 0.34);
    opacity: 0.72;
    animation: authPlanetFloat 22s ease-in-out infinite;
}

.auth-space-planet::before,
.auth-space-planet::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 154%;
    height: 38%;
    border: 1px solid rgba(121, 160, 255, 0.24);
    border-radius: 50%;
    transform: translate(-50%, -50%) rotate(-13deg);
}

.auth-space-planet::before {
    --auth-ring-scale: 1;
    animation: authPlanetRing 24s ease-in-out infinite;
}

.auth-space-planet::after {
    --auth-ring-scale: 0.58;
    width: 132%;
    border-color: rgba(117, 107, 255, 0.13);
    transform: translate(-50%, -50%) rotate(-13deg) scaleY(var(--auth-ring-scale));
    animation: authPlanetRing 29s ease-in-out -8s infinite reverse;
}

.auth-space-planet span {
    position: absolute;
    left: 22%;
    top: 55%;
    width: 48%;
    height: 8%;
    border-radius: 50%;
    background: rgba(123, 158, 255, 0.12);
    transform: rotate(-16deg);
}

.auth-space-rocket {
    position: absolute;
    left: 42%;
    top: 27%;
    width: clamp(68px, 6vw, 96px);
    aspect-ratio: 4 / 5;
    filter: drop-shadow(0 18px 24px rgba(16, 30, 75, 0.42));
    animation: authRocketCruise 19s ease-in-out infinite;
    will-change: transform;
}

.auth-space-rocket svg {
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    overflow: visible;
    transform-origin: 50% 56%;
    animation: authRocketTilt 7s ease-in-out infinite;
}

.auth-rocket-body {
    fill: rgba(232, 240, 255, 0.96);
    stroke: rgba(119, 160, 255, 0.82);
    stroke-width: 2;
    stroke-linejoin: round;
}

.auth-space-rocket circle {
    fill: #172653;
    stroke: #7fb1ff;
    stroke-width: 3;
}

.auth-rocket-window-glow {
    fill: rgba(202, 231, 255, 0.92) !important;
    stroke: none !important;
    filter: drop-shadow(0 0 5px rgba(127, 192, 255, 0.92));
}

.auth-rocket-highlight {
    fill: none;
    stroke: rgba(255, 255, 255, 0.46);
    stroke-width: 4;
    stroke-linecap: round;
}

.auth-rocket-wing {
    fill: rgba(82, 124, 240, 0.82);
    stroke: rgba(139, 176, 255, 0.76);
    stroke-width: 1.5;
    stroke-linejoin: round;
}

.auth-rocket-nozzle {
    fill: rgba(70, 89, 147, 0.92);
    stroke: rgba(139, 174, 255, 0.68);
    stroke-width: 1.5;
}

.auth-rocket-flame {
    transform-box: fill-box;
    transform-origin: center top;
    animation: authRocketFlame 1.8s ease-in-out infinite;
}

.auth-rocket-flame-outer {
    fill: rgba(91, 205, 255, 0.82);
    filter: drop-shadow(0 0 9px rgba(75, 194, 255, 0.82));
}

.auth-rocket-flame-inner {
    fill: rgba(218, 246, 255, 0.92);
    animation-delay: -0.65s;
}

.auth-rocket-trail {
    position: absolute;
    z-index: 1;
    left: 50%;
    bottom: -11%;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: rgba(114, 214, 255, 0.78);
    box-shadow: 0 0 9px rgba(85, 194, 255, 0.72);
    opacity: 0;
    animation: authRocketTrail 4.2s ease-out infinite;
}

.auth-rocket-trail-one { margin-left: -8px; animation-delay: -0.4s; }
.auth-rocket-trail-two { margin-left: 2px; animation-delay: -1.9s; animation-duration: 5.1s; }
.auth-rocket-trail-three { margin-left: -1px; animation-delay: -3.2s; animation-duration: 4.7s; }

.auth-space-satellite {
    position: absolute;
    left: 7%;
    top: 16%;
    display: flex;
    align-items: center;
    transform: rotate(-13deg);
    opacity: 0.74;
    filter: drop-shadow(0 12px 20px rgba(0, 0, 0, 0.22));
    animation: authSatelliteFloat 21s ease-in-out infinite;
}

.auth-satellite-panel {
    width: 34px;
    height: 22px;
    border: 1px solid rgba(119, 162, 255, 0.35);
    background:
        linear-gradient(90deg, transparent 47%, rgba(128, 166, 255, 0.22) 48% 52%, transparent 53%),
        linear-gradient(rgba(128, 166, 255, 0.22) 48%, transparent 49% 52%, rgba(128, 166, 255, 0.22) 53%),
        rgba(39, 60, 119, 0.5);
}

.auth-satellite-panel-left { border-radius: 4px 0 0 4px; }
.auth-satellite-panel-right { border-radius: 0 4px 4px 0; }
.auth-satellite-body {
    position: relative;
    width: 23px;
    height: 31px;
    border: 1px solid rgba(185, 207, 255, 0.38);
    border-radius: 6px;
    background: linear-gradient(145deg, rgba(213, 225, 255, 0.78), rgba(86, 113, 179, 0.62));
}

.auth-satellite-body::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -15px;
    width: 1px;
    height: 15px;
    background: rgba(139, 175, 255, 0.45);
}

.auth-flight-caption { right: 8%; top: 1%; }
.auth-flight-code {
    position: absolute;
    left: 21%;
    bottom: 17%;
    display: grid;
    place-items: center;
    width: 54px;
    aspect-ratio: 1;
    border: 1px solid rgba(114, 157, 255, 0.14);
    border-radius: 50%;
    background: rgba(12, 17, 31, 0.46);
    color: rgba(143, 182, 255, 0.56);
    font-family: "SFMono-Regular", Consolas, monospace;
    font-size: 12px;
    box-shadow: 0 0 28px rgba(74, 115, 234, 0.08);
}

.auth-float-chip {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 11px;
    border: 1px solid rgba(125, 161, 255, 0.12);
    border-radius: 999px;
    background: rgba(12, 17, 29, 0.45);
    color: rgba(183, 202, 247, 0.5);
    font-family: "SFMono-Regular", Consolas, monospace;
    font-size: 9px;
    backdrop-filter: blur(9px);
}

.auth-float-chip::before {
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #5a91ff;
    box-shadow: 0 0 9px rgba(90, 145, 255, 0.68);
}

.auth-chip-one { left: 7%; bottom: 9%; animation: authChipFloat 17s ease-in-out infinite; }
.auth-chip-two { right: 9%; top: 14%; animation: authChipFloat 19s ease-in-out -7s infinite reverse; }

.auth-particle {
    position: absolute;
    z-index: 1;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: rgba(125, 169, 255, 0.65);
    box-shadow: 0 0 12px rgba(89, 145, 255, 0.7);
    animation: authParticleDrift 24s ease-in-out infinite;
}

.auth-particle:nth-of-type(1) { left: 4%; top: 18%; animation-delay: -3s; }
.auth-particle:nth-of-type(2) { left: 18%; top: 72%; animation-delay: -11s; animation-duration: 29s; }
.auth-particle:nth-of-type(3) { left: 29%; top: 11%; animation-delay: -7s; animation-duration: 27s; }
.auth-particle:nth-of-type(4) { left: 38%; bottom: 12%; animation-delay: -14s; animation-duration: 32s; }
.auth-particle:nth-of-type(5) { right: 39%; top: 13%; animation-delay: -9s; animation-duration: 28s; }
.auth-particle:nth-of-type(6) { right: 28%; top: 82%; animation-delay: -16s; animation-duration: 31s; }
.auth-particle:nth-of-type(7) { right: 18%; top: 24%; animation-delay: -5s; animation-duration: 26s; }
.auth-particle:nth-of-type(8) { right: 5%; top: 67%; animation-delay: -12s; animation-duration: 34s; }
.auth-particle:nth-of-type(9) { left: 9%; top: 49%; animation-delay: -18s; animation-duration: 30s; }
.auth-particle:nth-of-type(10) { right: 9%; top: 44%; animation-delay: -8s; animation-duration: 33s; }

body { position: relative; overflow-x: hidden; isolation: isolate; }
body > .card { position: relative; z-index: 5; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }

@keyframes authGridDrift {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(68px, 68px, 0); }
}

@keyframes authStarsDrift {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(-36px, 28px, 0); }
}

@keyframes authStarGlow {
    0%, 100% { filter: brightness(0.86); }
    50% { filter: brightness(1.18); }
}

@keyframes authCometPass {
    0% { opacity: 0; transform: translate3d(-24vw, -8vh, 0) rotate(var(--auth-comet-angle)); }
    8% { opacity: 0; }
    12% { opacity: 0.72; }
    43% { opacity: 0.4; }
    52% { opacity: 0; }
    100% { opacity: 0; transform: translate3d(138vw, 58vh, 0) rotate(var(--auth-comet-angle)); }
}

@keyframes authNebulaBreathe {
    0%, 100% { opacity: 0.36; transform: scale(1); }
    50% { opacity: 0.58; transform: scale(1.04); }
}

@keyframes authOrbFloat {
    0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
    50% { transform: translate3d(15px, -20px, 0) scale(1.03); }
}

@keyframes authOrbitSpin {
    from { transform: translate(-50%, -50%) rotate(0deg); }
    to { transform: translate(-50%, -50%) rotate(360deg); }
}

@keyframes authCodeCoreFloat {
    0%, 100% { transform: translate(-50%, -50%) translate3d(0, 0, 0); }
    50% { transform: translate(-50%, -50%) translate3d(0, -9px, 0); }
}

@keyframes authNodeFloat {
    0%, 100% { transform: translate3d(0, 0, 0); }
    50% { transform: translate3d(7px, -10px, 0); }
}

@keyframes authDotPulse {
    0%, 100% { opacity: 0.32; transform: scale(0.8); }
    50% { opacity: 0.92; transform: scale(1.15); }
}

@keyframes authFlightSceneDrift {
    0%, 100% { transform: translate3d(0, 0, 0); }
    50% { transform: translate3d(-8px, -10px, 0); }
}

@keyframes authRocketCruise {
    0%, 100% { transform: translate3d(-8px, 7px, 0) rotate(38deg); }
    42% { transform: translate3d(22px, -18px, 0) rotate(41deg); }
    72% { transform: translate3d(8px, -31px, 0) rotate(36deg); }
}

@keyframes authRocketTilt {
    0%, 100% { transform: rotate(-1.5deg) translate3d(0, 0, 0); }
    50% { transform: rotate(1.8deg) translate3d(0, -2px, 0); }
}

@keyframes authRocketFlame {
    0%, 100% { opacity: 0.62; transform: scaleX(0.9) scaleY(0.82); }
    50% { opacity: 1; transform: scaleX(1.04) scaleY(1.16); }
}

@keyframes authRocketTrail {
    0% { opacity: 0; transform: translate3d(-50%, -4px, 0) scale(0.5); }
    18% { opacity: 0.68; }
    100% { opacity: 0; transform: translate3d(calc(-50% - 5px), 42px, 0) scale(0.12); }
}

@keyframes authPlanetRing {
    0%, 100% { transform: translate(-50%, -50%) rotate(-13deg) scaleY(var(--auth-ring-scale)); opacity: 0.5; }
    50% { transform: translate(-50%, -50%) rotate(-8deg) scaleY(var(--auth-ring-scale)); opacity: 0.9; }
}

@keyframes authSatelliteFloat {
    0%, 100% { transform: translate3d(-4px, 3px, 0) rotate(-13deg); }
    50% { transform: translate3d(14px, -15px, 0) rotate(-6deg); }
}

@keyframes authPlanetFloat {
    0%, 100% { transform: translate3d(0, 0, 0); }
    50% { transform: translate3d(-7px, -9px, 0); }
}

@keyframes authFlowMove {
    to { stroke-dashoffset: -180; }
}

@keyframes authChipFloat {
    0%, 100% { transform: translate3d(0, 0, 0); }
    50% { transform: translate3d(7px, -9px, 0); }
}

@keyframes authParticleDrift {
    0%, 100% { transform: translate3d(0, 0, 0) scale(0.8); opacity: 0.12; }
    42% { transform: translate3d(11px, -23px, 0) scale(1.12); opacity: 0.7; }
    72% { transform: translate3d(-6px, -35px, 0) scale(0.92); opacity: 0.3; }
}

@media (max-width: 1240px) {
    .auth-space-scene { width: 255px; opacity: 0.7; }
    .auth-code-universe { left: 18px; }
    .auth-flight-universe { right: 18px; }
    .auth-flow { opacity: 0.2; }
    .auth-float-chip { opacity: 0.58; }
}

@media (max-width: 980px) {
    .auth-space-scene,
    .auth-flow,
    .auth-float-chip,
    .auth-comet,
    .auth-particle { display: none; }

    .auth-ambient-grid { opacity: 0.07; }
    .auth-star-field-near { opacity: 0.42; }
    .auth-star-field-far { opacity: 0.24; }
    .auth-ambient-orb { opacity: 0.35; }
    body > .card { box-shadow: 0 26px 80px rgba(0, 0, 0, 0.52); }
}

@media (max-width: 575px) {
    .auth-ambient-grid { background-size: 48px 48px; animation-duration: 58s; }
    .auth-ambient-orb { width: 260px; opacity: 0.27; }
    .auth-ambient-orb-left { left: -48%; top: 8%; }
    .auth-ambient-orb-right { right: -52%; bottom: 4%; }
}

@keyframes authRocketReduced {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(30deg); }
    50% { transform: translate3d(3px, -4px, 0) rotate(31deg); }
}

@keyframes authReducedFloat {
    0%, 100% { transform: translate3d(0, 0, 0); }
    50% { transform: translate3d(2px, -3px, 0); }
}

@media (prefers-reduced-motion: reduce) {
    .auth-ambient *,
    .auth-ambient *::before,
    .auth-ambient *::after { animation: none !important; }

    .auth-star-field-near { animation: authStarGlow 18s ease-in-out infinite !important; }
    .auth-star-field-far { animation: authStarGlow 24s ease-in-out -8s infinite !important; }
    .auth-space-rocket { animation: authRocketReduced 24s ease-in-out infinite !important; }
    .auth-rocket-flame { animation: authRocketFlame 3.6s ease-in-out infinite !important; }
    .auth-space-satellite,
    .auth-space-planet { animation: authReducedFloat 28s ease-in-out infinite !important; }
    .auth-comet,
    .auth-rocket-trail { display: none !important; }
}

.auth-turnstile-wrap {
    display: flex;
    justify-content: center;
    width: 100%;
    min-height: 65px;
    margin: 16px 0;
    overflow: hidden;
}

.auth-turnstile-wrap .cf-turnstile {
    max-width: 100%;
}

@media (max-width: 380px) {
    .auth-turnstile-wrap {
        justify-content: flex-start;
        min-height: 58px;
    }

    .auth-turnstile-wrap .cf-turnstile {
        transform: scale(.86);
        transform-origin: left top;
        margin-right: -42px;
        margin-bottom: -10px;
    }
}
