@keyframes authFloat{0%,100%{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-18px) rotate(2deg)}50%{transform:translateY(-8px) rotate(-1deg)}75%{transform:translateY(-22px) rotate(1.5deg)}}@keyframes authPulseGlow{0%,100%{filter:drop-shadow(0 0 8px rgba(0,200,255,.35))}50%{filter:drop-shadow(0 0 22px rgba(0,200,255,.6))}}@keyframes authIconBounce{0%{transform:translateY(0)}50%{transform:translateY(-8px)}100%{transform:translateY(0)}}@keyframes authShimmer{0%{background-position:-200% center}100%{background-position:200% center}}@keyframes authFadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes authSlideRight{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes authRotateSlow{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes authDash{to{stroke-dashoffset:0}}@keyframes authPulseRing{0%{transform:scale(.85);opacity:.6}50%{transform:scale(1.15);opacity:.2}100%{transform:scale(.85);opacity:.6}}@keyframes glitchSkew{0%{transform:skew(0deg)}20%{transform:skew(-4deg)}40%{transform:skew(2deg)}60%{transform:skew(-1deg)}80%{transform:skew(3deg)}100%{transform:skew(0deg)}}@keyframes glitchShift{0%,100%{clip-path:inset(0 0 95% 0);transform:translateX(0)}20%{clip-path:inset(30% 0 50% 0);transform:translateX(-6px)}40%{clip-path:inset(60% 0 10% 0);transform:translateX(6px)}60%{clip-path:inset(10% 0 70% 0);transform:translateX(-3px)}80%{clip-path:inset(50% 0 20% 0);transform:translateX(4px)}}@keyframes spinCog{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes floatAstronaut{0%,100%{transform:translate(0,0) rotate(-5deg)}25%{transform:translate(12px,-18px) rotate(0deg)}50%{transform:translate(-8px,-28px) rotate(5deg)}75%{transform:translate(6px,-14px) rotate(-3deg)}}@keyframes twinkle{0%,100%{opacity:.3}50%{opacity:1}}@keyframes errorCodeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}@keyframes countdownPulse{0%,100%{box-shadow:0 0 0 0 rgba(0,200,255,.4)}50%{box-shadow:0 0 0 12px rgba(0,200,255,0)}}@keyframes shapeOrbit{from{transform:rotate(0deg) translateX(120px) rotate(0deg)}to{transform:rotate(360deg) translateX(120px) rotate(-360deg)}}.auth-split{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 80px);width:100%}.auth-deco{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px 48px;overflow:hidden;background:radial-gradient(ellipse at 30% 40%,rgba(0,200,255,.12) 0%,transparent 60%),radial-gradient(ellipse at 70% 80%,rgba(0,255,170,.08) 0%,transparent 60%),var(--bg-secondary);border-right:1px solid var(--glass-border)}.auth-deco-shapes{position:absolute;inset:0;overflow:hidden;pointer-events:none}.auth-deco-shape{position:absolute;border-radius:50%;border:1px solid rgba(0,200,255,.15);background:rgba(0,200,255,.04)}.auth-deco-shape:nth-child(1){width:240px;height:240px;top:10%;left:-40px;animation:authFloat 3s ease-in-out infinite}.auth-deco-shape:nth-child(2){width:140px;height:140px;bottom:15%;right:20px;animation:authFloat 4s ease-in-out infinite 0.5s;border-color:rgba(0,255,170,.15);background:rgba(0,255,170,.04)}.auth-deco-shape:nth-child(3){width:80px;height:80px;top:50%;left:60%;animation:authFloat 2.5s ease-in-out infinite 1s}.auth-deco-shape:nth-child(4){width:180px;height:180px;bottom:30%;left:10%;border-radius:30%;animation:authFloat 5s ease-in-out infinite 0.25s;border-color:rgba(0,229,255,.1);background:rgba(0,229,255,.02)}.auth-deco-shape:nth-child(5){width:60px;height:60px;top:20%;right:15%;animation:shapeOrbit 8s linear infinite;border-color:rgba(0,255,170,.2);background:rgba(0,255,170,.06)}.auth-deco-content{position:relative;z-index:2;text-align:center;max-width:400px}.auth-deco-tagline{font-size:2.6rem;font-weight:900;line-height:1.15;letter-spacing:-0.03em;margin-bottom:16px;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-deco-sub{color:var(--text-secondary);font-size:1.05rem;line-height:1.6;margin-bottom:40px}.auth-deco-stats{display:flex;gap:32px;justify-content:center}.auth-deco-stat{text-align:center}.auth-deco-stat-num{font-size:1.8rem;font-weight:800;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-deco-stat-label{font-size:0.78rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.08em;font-weight:600;margin-top:2px}.auth-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px 48px;position:relative}.auth-panel-inner{width:100%;max-width:440px;animation:authFadeUp .12s ease both}.auth-icon-wrap{display:flex;justify-content:center;margin-bottom:28px}.auth-icon-circle{width:80px;height:80px;border-radius:50%;background:rgba(0,200,255,.06);border:1.5px solid rgba(0,200,255,.2);display:flex;align-items:center;justify-content:center;position:relative;animation:authIconBounce 1.2s ease-in-out infinite}.auth-icon-circle::before{content:'';position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(0,200,255,.08);animation:authPulseRing 1.2s ease-in-out infinite}.auth-icon-circle svg{width:36px;height:36px;stroke:url(#authIconGrad);stroke-width:2;fill:none;animation:authPulseGlow 1.2s ease-in-out infinite}.auth-title{font-size:1.9rem;font-weight:800;text-align:center;margin-bottom:8px;letter-spacing:-0.02em}.auth-subtitle-new{text-align:center;color:var(--text-secondary);font-size:0.95rem;margin-bottom:32px;line-height:1.5}.auth-subtitle-new strong{color:var(--accent-primary)}.auth-field{position:relative;margin-bottom:22px}.auth-field input,.auth-field select{width:100%;padding:16px 18px 8px;background:var(--bg-input);border:1.5px solid var(--glass-border);border-radius:var(--radius);font-size:0.95rem;color:var(--text-primary);outline:none;transition:var(--transition);font-family:inherit}.auth-field input::placeholder{color:transparent}.auth-field label{position:absolute;top:50%;left:18px;transform:translateY(-50%);color:var(--text-muted);font-size:0.9rem;font-weight:500;pointer-events:none;transition:all .25s cubic-bezier(.4,0,.2,1);background:transparent;padding:0 4px}.auth-field input:focus~label,.auth-field input:not(:placeholder-shown)~label,.auth-field input:-webkit-autofill~label{top:6px;transform:translateY(0);font-size:0.7rem;color:var(--accent-primary);font-weight:600;letter-spacing:0.04em}.auth-field input:focus{border-color:var(--accent-primary);background:var(--bg-input-focus);box-shadow:0 0 0 4px var(--accent-primary-glow),0 0 24px rgba(0,200,255,.08)}.auth-field .error{color:var(--danger);font-size:0.78rem;margin-top:6px;padding-left:4px;animation:authFadeUp .15s ease}.auth-field>label:first-child{position:absolute;top:50%;left:18px}.auth-checkbox{display:flex;align-items:center;gap:12px;margin-bottom:24px;cursor:pointer}.auth-checkbox input[type="checkbox"]{-webkit-appearance:none;appearance:none;width:20px;height:20px;border:1.5px solid var(--glass-border);border-radius:6px;background:var(--bg-input);cursor:pointer;transition:var(--transition);position:relative;flex-shrink:0}.auth-checkbox input[type="checkbox"]:checked{background:var(--accent-gradient);border-color:transparent}.auth-checkbox input[type="checkbox"]:checked::after{content:'';position:absolute;top:3px;left:6px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.auth-checkbox label{color:var(--text-secondary);font-size:0.88rem;font-weight:500;cursor:pointer;position:static !important;transform:none !important}.auth-submit-wrap{margin-bottom:24px}.auth-submit-wrap input[type="submit"],.auth-submit-wrap button{width:100%;padding:16px;background:var(--accent-gradient);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden;letter-spacing:0.02em;text-shadow:0 1px 2px rgba(0,0,0,.2);box-shadow:0 4px 20px var(--accent-primary-glow)}.auth-submit-wrap input[type="submit"]:hover,.auth-submit-wrap button:hover{transform:translateY(-2px);box-shadow:0 8px 30px var(--accent-primary-glow);filter:brightness(1.1)}.auth-submit-wrap input[type="submit"]::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform:translateX(-100%);transition:transform .6s}.auth-submit-wrap input[type="submit"]:hover::before{transform:translateX(100%)}.auth-divider{display:flex;align-items:center;gap:16px;margin:28px 0}.auth-divider-line{flex:1;height:1px;background:var(--accent-gradient);opacity:.3}.auth-divider-text{color:var(--text-muted);font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.1em}.auth-social-row{display:flex;gap:14px;margin-bottom:28px}.auth-social-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 16px;background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius);color:var(--text-primary);font-size:0.88rem;font-weight:600;cursor:pointer;transition:var(--transition);backdrop-filter:blur(8px);text-decoration:none}.auth-social-btn:hover{border-color:var(--accent-primary);background:rgba(0,200,255,.06);transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.2)}.auth-social-btn svg{width:20px;height:20px;flex-shrink:0}.auth-footer-links{text-align:center;color:var(--text-muted);font-size:0.88rem}.auth-footer-links a{color:var(--accent-primary);text-decoration:none;font-weight:600;transition:var(--transition-fast)}.auth-footer-links a:hover{color:var(--accent-primary-hover);text-decoration:underline}.auth-footer-links .auth-link-sep{margin:0 6px;color:var(--text-muted);opacity:.4}.auth-centered{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 200px);padding:40px 24px}.auth-card-free{width:100%;max-width:480px;background:var(--bg-card);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:48px 40px;position:relative;overflow:hidden;animation:authFadeUp .12s ease both}.auth-card-free::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent-gradient)}.auth-info-callout{display:flex;gap:14px;padding:16px 20px;background:rgba(0,200,255,.06);border:1px solid rgba(0,200,255,.12);border-radius:var(--radius);margin-bottom:28px;animation:authSlideRight .1s ease both .05s}.auth-info-callout svg{flex-shrink:0;margin-top:2px}.auth-info-callout p{color:var(--text-secondary);font-size:0.88rem;line-height:1.55}.auth-otp-field input{text-align:center;font-size:1.8rem;font-weight:700;letter-spacing:0.6em;padding:16px 18px 10px !important;font-family:'Inter',monospace}.pw-strength{margin-top:6px;margin-bottom:4px}.pw-strength-bar{height:4px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;position:relative}.pw-strength-fill{height:100%;border-radius:4px;width:0;transition:width .4s ease,background .4s ease}.pw-strength-text{font-size:0.72rem;margin-top:4px;color:var(--text-muted);font-weight:500}.pw-strength[data-strength="weak"] .pw-strength-fill{width:25%;background:var(--danger)}.pw-strength[data-strength="fair"] .pw-strength-fill{width:50%;background:var(--warning)}.pw-strength[data-strength="good"] .pw-strength-fill{width:75%;background:#66d9ef}.pw-strength[data-strength="strong"] .pw-strength-fill{width:100%;background:var(--success)}.auth-steps{display:flex;justify-content:center;gap:0;margin-bottom:36px}.auth-step{display:flex;align-items:center;gap:10px;position:relative}.auth-step-dot{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.8rem;font-weight:700;border:2px solid var(--glass-border);background:var(--bg-input);color:var(--text-muted);transition:var(--transition)}.auth-step.completed .auth-step-dot{background:var(--accent-gradient);border-color:transparent;color:#fff}.auth-step.active .auth-step-dot{border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:0 0 0 4px var(--accent-primary-glow)}.auth-step-label{font-size:0.78rem;font-weight:600;color:var(--text-muted);margin-right:6px}.auth-step.completed .auth-step-label{color:var(--accent-secondary)}.auth-step.active .auth-step-label{color:var(--text-primary)}.auth-step-connector{width:48px;height:2px;background:var(--glass-border);margin:0 8px}.auth-step.completed+.auth-step-connector,.auth-step-connector.done{background:var(--accent-gradient)}.auth-timer-wrap{text-align:center;margin-top:20px}.auth-resend-btn{background:none;border:1px solid var(--glass-border);border-radius:var(--radius);color:var(--accent-primary);padding:12px 24px;font-size:0.88rem;font-weight:600;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:8px}.auth-resend-btn:hover:not(:disabled){border-color:var(--accent-primary);background:rgba(0,200,255,.06)}.auth-resend-btn:disabled{opacity:.4;cursor:not-allowed}.auth-timer-text{color:var(--text-muted);font-size:0.85rem;margin-top:10px}.auth-timer-text span{color:var(--accent-primary);font-weight:700;font-variant-numeric:tabular-nums}.error-free{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:calc(100vh - 200px);padding:60px 24px;position:relative;overflow:hidden}.error-stars{position:absolute;inset:0;pointer-events:none}.error-star{position:absolute;width:3px;height:3px;border-radius:50%;background:rgba(0,200,255,.6);animation:twinkle var(--dur,1.2s) ease-in-out infinite;animation-delay:var(--delay,0s)}.error-code{font-size:clamp(6rem,18vw,12rem);font-weight:900;line-height:1;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:errorCodeFloat 1.5s ease-in-out infinite;margin-bottom:8px;position:relative;letter-spacing:-0.04em}.error-code-glow{position:absolute;inset:0;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:blur(30px);opacity:.3;z-index:-1;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit}.error-title{font-size:1.6rem;font-weight:700;margin-bottom:12px;color:var(--text-primary)}.error-desc{color:var(--text-secondary);font-size:1.05rem;max-width:520px;line-height:1.6;margin-bottom:32px}.astro-wrap{width:180px;height:180px;position:relative;margin:0 auto 24px;animation:floatAstronaut 3s ease-in-out infinite}.astro-body{position:absolute;width:64px;height:74px;background:rgba(224,247,255,.15);border:2px solid rgba(0,200,255,.3);border-radius:16px;top:50%;left:50%;transform:translate(-50%,-50%)}.astro-helmet{position:absolute;width:50px;height:50px;background:rgba(0,200,255,.08);border:2px solid rgba(0,200,255,.35);border-radius:50%;top:12%;left:50%;transform:translateX(-50%)}.astro-visor{position:absolute;width:32px;height:20px;background:linear-gradient(135deg,rgba(0,200,255,.3),rgba(0,255,170,.2));border-radius:50%;top:28%;left:50%;transform:translateX(-50%)}.astro-line{position:absolute;width:2px;height:60px;background:linear-gradient(to bottom,rgba(0,200,255,.4),transparent);top:75%;left:50%;transform:translateX(-50%)}.astro-arm{position:absolute;width:30px;height:6px;background:rgba(224,247,255,.12);border:1px solid rgba(0,200,255,.2);border-radius:4px;top:56%}.astro-arm-l{left:10%;transform:rotate(-20deg)}.astro-arm-r{right:10%;transform:rotate(20deg)}.error-search{max-width:400px;width:100%;margin-bottom:28px}.error-search form{display:flex;gap:0}.error-search input{flex:1;padding:14px 20px;background:var(--bg-input);border:1.5px solid var(--glass-border);border-radius:var(--radius) 0 0 var(--radius);color:var(--text-primary);font-size:0.95rem;outline:none;transition:var(--transition);font-family:inherit}.error-search input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px var(--accent-primary-glow)}.error-search button{padding:14px 22px;background:var(--accent-gradient);border:none;border-radius:0 var(--radius) var(--radius) 0;color:#fff;cursor:pointer;transition:var(--transition);display:flex;align-items:center}.error-search button:hover{filter:brightness(1.2)}.error-links{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.error-links a{color:var(--accent-primary);text-decoration:none;font-weight:600;font-size:0.92rem;padding:10px 20px;border:1px solid var(--glass-border);border-radius:var(--radius);transition:var(--transition);backdrop-filter:blur(8px);background:var(--bg-card)}.error-links a:hover{border-color:var(--accent-primary);background:rgba(0,200,255,.06);transform:translateY(-2px)}.error-lock-wrap{position:relative;width:120px;height:120px;margin:0 auto 20px}.error-lock-wrap svg{width:80px;height:80px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);stroke:url(#errorIconGrad);fill:none;stroke-width:2}.error-lock-wrap::before,.error-lock-wrap::after{content:'';position:absolute;inset:0;border-radius:50%;border:1px solid rgba(0,200,255,.15)}.error-lock-wrap::before{animation:authPulseRing 1s ease-in-out infinite}.error-lock-wrap::after{animation:authPulseRing 1s ease-in-out infinite .3s}.error-code.glitch{position:relative}.error-code.glitch::before,.error-code.glitch::after{content:attr(data-text);position:absolute;inset:0;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.error-code.glitch::before{animation:glitchShift 1.2s infinite linear alternate-reverse;color:var(--accent-primary)}.error-code.glitch::after{animation:glitchShift 1.2s infinite linear alternate;color:var(--accent-secondary)}.error-why{max-width:460px;margin:0 auto 28px;text-align:left}.error-why-item{display:flex;align-items:flex-start;gap:12px;padding:10px 0;color:var(--text-secondary);font-size:0.92rem}.error-why-item svg{flex-shrink:0;margin-top:2px}.error-cog-wrap{position:relative;width:120px;height:120px;margin:0 auto 20px}.error-cog-wrap svg{width:70px;height:70px;position:absolute;top:50%;left:50%;transform-origin:center;stroke:url(#errorIconGrad);fill:none;stroke-width:1.5}.error-cog-wrap svg:first-child{transform:translate(-50%,-50%);animation:spinCog 2.5s linear infinite}.error-cog-wrap svg:nth-child(2){width:40px;height:40px;transform:translate(10%,-80%);animation:spinCog 1.5s linear infinite reverse;opacity:.5}.error-tips{max-width:400px;margin:0 auto 28px;text-align:left}.error-tips li{color:var(--text-secondary);font-size:0.9rem;padding:6px 0;list-style:none;display:flex;align-items:center;gap:10px}.error-tips li::before{content:'→';color:var(--accent-primary);font-weight:700}.error-auto-refresh{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius);color:var(--text-secondary);font-size:0.88rem;margin-bottom:20px;animation:countdownPulse 0.8s ease-in-out infinite}.error-auto-refresh span{color:var(--accent-primary);font-weight:700;font-variant-numeric:tabular-nums;min-width:24px;text-align:center}.error-btn-group{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}@media (max-width:900px){.auth-split{grid-template-columns:1fr}.auth-deco{display:none}.auth-panel{padding:40px 24px}}@media (max-width:600px){.auth-card-free{padding:36px 24px;border-radius:var(--radius-lg)}.auth-social-row{flex-direction:column}.error-code{font-size:6rem}.auth-steps{flex-direction:column;align-items:center;gap:8px}.auth-step-connector{width:2px;height:20px}.error-links{flex-direction:column;align-items:stretch}}.oauth-divider{display:flex;align-items:center;gap:16px;margin:24px 0;color:var(--text-muted);font-size:0.85rem}.oauth-divider::before,.oauth-divider::after{content:'';flex:1;height:1px;background:var(--border-primary)}.oauth-divider span{white-space:nowrap;opacity:0.7}.oauth-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.oauth-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 20px;border-radius:12px;font-size:0.9rem;font-weight:600;text-decoration:none;transition:all 0.2s ease;border:1px solid var(--border-primary);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer}.oauth-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(0,0,0,0.3);text-decoration:none}.oauth-btn svg{flex-shrink:0}.oauth-discord:hover{border-color:#5865F2;background:rgba(88,101,242,0.1);color:#5865F2}.oauth-discord svg{color:#5865F2}.oauth-google:hover{border-color:#4285F4;background:rgba(66,133,244,0.1);color:#4285F4}.oauth-google svg{color:#4285F4}