body.auth-page{min-height:100vh;margin:0;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}body.auth-page .auth-wrap{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 24px;overflow:hidden;background-color:var(--theme-bg);background-image:radial-gradient(ellipse 90% 70% at 10% 0%,rgba(100,108,255,0.14),transparent 50%),radial-gradient(ellipse 70% 60% at 100% 100%,rgba(139,92,246,0.1),transparent 45%),linear-gradient(180deg,var(--theme-bg) 0%,color-mix(in srgb,var(--theme-bg) 92%,var(--theme-primary)) 100%);}body.auth-page .auth-backdrop{position:absolute;inset:0;pointer-events:none;overflow:hidden;}body.auth-page .auth-grid{position:absolute;inset:0;opacity:0.35;background-image:linear-gradient(var(--theme-border) 1px,transparent 1px),linear-gradient(90deg,var(--theme-border) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse 70% 60% at 50% 40%,#000 20%,transparent 75%);}body.auth-page .auth-orb{position:absolute;border-radius:50%;filter:blur(80px);animation:auth-orb-float 18s ease-in-out infinite;}body.auth-page .auth-orb-a{width:420px;height:420px;top:-120px;right:10%;background:var(--theme-primary);opacity:0.28;}body.auth-page .auth-orb-b{width:360px;height:360px;bottom:-140px;left:5%;background:#a78bfa;opacity:0.2;animation-delay:-6s;}body.auth-page .auth-orb-c{width:240px;height:240px;top:40%;left:45%;background:#6366f1;opacity:0.12;animation-delay:-12s;}body.auth-page .auth-shell{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,420px);gap:0;width:100%;max-width:960px;min-height:580px;border-radius:24px;overflow:hidden;border:1px solid color-mix(in srgb,var(--theme-border) 80%,var(--theme-primary) 20%);box-shadow:0 0 0 1px rgba(255,255,255,0.04) inset,0 25px 50px -12px rgba(0,0,0,0.18),0 0 80px -20px rgba(100,108,255,0.25);animation:auth-shell-in 0.65s cubic-bezier(0.16,1,0.3,1);}body.auth-page .auth-showcase{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:48px 44px;background:linear-gradient(145deg,color-mix(in srgb,var(--theme-primary) 88%,#1e1b4b) 0%,#4c1d95 48%,color-mix(in srgb,var(--theme-primary) 75%,#312e81) 100%);color:#fff;overflow:hidden;}body.auth-page .auth-showcase::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgba(255,255,255,0.12),transparent 40%),radial-gradient(circle at 80% 20%,rgba(255,255,255,0.08),transparent 35%);pointer-events:none;}body.auth-page .auth-showcase::after{content:"";position:absolute;top:-50%;right:-30%;width:80%;height:100%;border-radius:50%;background:rgba(255,255,255,0.04);pointer-events:none;}body.auth-page .auth-showcase-inner{position:relative;z-index:1;}body.auth-page .auth-brand{display:flex;align-items:center;gap:14px;margin-bottom:0;}body.auth-page .auth-brand-mark{width:46px;height:46px;border-radius:14px;background:rgba(255,255,255,0.16);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,0.22);color:#fff;font-size:15px;font-weight:800;letter-spacing:-0.03em;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 8px 32px rgba(0,0,0,0.15);}body.auth-page .auth-brand-text{display:flex;flex-direction:column;gap:2px;}body.auth-page .auth-brand-name{font-size:17px;font-weight:700;color:#fff;letter-spacing:-0.02em;}body.auth-page .auth-brand-tag{font-size:11px;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.55);}body.auth-page .auth-showcase-title{margin:40px 0 14px;font-size:clamp(28px,4vw,36px);font-weight:700;line-height:1.15;letter-spacing:-0.03em;color:#fff;}body.auth-page .auth-showcase-desc{margin:0;max-width:320px;font-size:15px;line-height:1.65;color:rgba(255,255,255,0.72);}body.auth-page .auth-features{position:relative;z-index:1;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;}body.auth-page .auth-features li{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:500;color:rgba(255,255,255,0.88);letter-spacing:0.01em;}body.auth-page .auth-svg-sprite{position:absolute;width:0;height:0;overflow:hidden;}body.auth-page .auth-feature-icon{flex-shrink:0;width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.16);box-shadow:0 4px 12px rgba(0,0,0,0.08);color:rgba(255,255,255,0.95);}body.auth-page .auth-feature-icon svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;}body.auth-page .auth-card{display:flex;flex-direction:column;justify-content:center;padding:44px 40px 36px;background:color-mix(in srgb,var(--theme-card) 88%,transparent);backdrop-filter:blur(24px) saturate(1.2);border:none;border-radius:0;box-shadow:none;max-width:none;animation:none;}body.auth-page .auth-card::before{display:none;}body.auth-page .auth-header{margin-bottom:32px;}body.auth-page .auth-header .auth-brand{display:none;}body.auth-page h1{font-size:24px;font-weight:700;margin:0 0 6px;color:var(--theme-text);letter-spacing:-0.03em;line-height:1.2;}body.auth-page .subtitle{margin:0;color:var(--theme-muted);font-size:14px;line-height:1.55;}body.auth-page .form-group{margin-bottom:20px;}body.auth-page label{display:block;margin-bottom:8px;color:var(--theme-muted);font-size:12px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;}body.auth-page input,body.auth-page select,body.auth-page textarea{width:100%;padding:13px 16px;background:var(--theme-input-bg);border:1px solid var(--theme-border);border-radius:12px;color:var(--theme-text);font-size:15px;line-height:1.4;transition:border-color 0.2s ease,box-shadow 0.2s ease,background 0.2s ease;box-shadow:0 1px 2px rgba(0,0,0,0.04);}body.auth-page input::placeholder{color:var(--theme-subtle);font-weight:400;}body.auth-page input:hover,body.auth-page select:hover,body.auth-page textarea:hover{border-color:color-mix(in srgb,var(--theme-border) 55%,var(--theme-primary));background:color-mix(in srgb,var(--theme-input-bg) 96%,var(--theme-primary));}body.auth-page input:focus,body.auth-page select:focus,body.auth-page textarea:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 4px var(--theme-primary-soft),0 1px 2px rgba(0,0,0,0.04);background:var(--theme-input-bg);}body.auth-page .inline-form{display:flex;gap:10px;align-items:stretch;}body.auth-page .inline-form input{flex:1;min-width:0;}body.auth-page .btn{border-radius:12px;font-weight:600;font-size:15px;letter-spacing:0.01em;transition:transform 0.2s cubic-bezier(0.16,1,0.3,1),box-shadow 0.2s ease,filter 0.2s ease;}body.auth-page .btn-block{width:100%;margin-top:10px;padding:14px 20px;border:none;background:linear-gradient(135deg,var(--theme-primary) 0%,#7c3aed 55%,#6d28d9 100%);color:#fff;box-shadow:0 1px 2px rgba(0,0,0,0.08),0 8px 24px -6px rgba(100,108,255,0.55);position:relative;overflow:hidden;}body.auth-page .btn-block::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,0.12) 50%,transparent 60%);transform:translateX(-100%);transition:transform 0.55s ease;}body.auth-page .btn-block:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 2px 4px rgba(0,0,0,0.08),0 14px 32px -8px rgba(100,108,255,0.65);}body.auth-page .btn-block:hover::after{transform:translateX(100%);}body.auth-page .btn-block:active{transform:translateY(0);filter:brightness(0.98);}body.auth-page .btn-secondary{flex-shrink:0;padding:13px 16px;white-space:nowrap;background:var(--theme-btn-secondary-bg);color:var(--theme-text);border:1px solid var(--theme-border);box-shadow:0 1px 2px rgba(0,0,0,0.04);}body.auth-page .btn-secondary:hover:not(:disabled){background:var(--theme-btn-secondary-hover);border-color:color-mix(in srgb,var(--theme-border) 50%,var(--theme-primary));}body.auth-page .btn-secondary:disabled{opacity:0.5;cursor:not-allowed;}body.auth-page .alert{margin-bottom:22px;padding:13px 16px;font-size:13px;line-height:1.5;border-radius:12px;backdrop-filter:blur(8px);}body.auth-page .alert-error{background:color-mix(in srgb,var(--theme-danger) 8%,var(--theme-card));color:var(--theme-danger);border:1px solid color-mix(in srgb,var(--theme-danger) 25%,transparent);}body.auth-page .alert-success{background:color-mix(in srgb,var(--theme-success) 8%,var(--theme-card));color:var(--theme-success);border:1px solid color-mix(in srgb,var(--theme-success) 25%,transparent);}body.auth-page .auth-footer{margin:28px 0 0;padding-top:22px;border-top:1px solid var(--theme-border);text-align:center;font-size:13px;line-height:1.6;}body.auth-page .auth-footer a{color:var(--theme-primary);text-decoration:none;font-weight:600;transition:color 0.15s ease;}body.auth-page .auth-footer a:hover{color:var(--theme-primary-hover);}body.auth-page .auth-footer-divider{margin:0 10px;color:var(--theme-subtle);opacity:0.6;}body.auth-page .muted{color:var(--theme-muted);}body.auth-page .form-hint{margin:8px 0 0;font-size:12px;line-height:1.5;color:var(--theme-subtle);}body.auth-page .auth-captcha-hint{font-size:11px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--theme-subtle);}body.auth-page .auth-captcha-row{display:flex;align-items:center;gap:12px;}body.auth-page .auth-captcha-input,body.auth-page #authCaptchaInput{flex:1;min-width:0;margin-top:0;order:1;}body.auth-page .auth-captcha-image{display:block;flex-shrink:0;height:46px;width:auto;order:2;border:1px solid var(--theme-border);border-radius:12px;cursor:pointer;background:#fff;transition:box-shadow 0.2s ease,transform 0.2s ease;box-shadow:0 1px 3px rgba(0,0,0,0.06);}body.auth-page .auth-captcha-image:hover{transform:scale(1.02);box-shadow:0 0 0 4px var(--theme-primary-soft);}@keyframes auth-shell-in{from{opacity:0;transform:translateY(24px) scale(0.97);}to{opacity:1;transform:translateY(0) scale(1);}}@keyframes auth-orb-float{0%,100%{transform:translate(0,0) scale(1);}33%{transform:translate(24px,-16px) scale(1.04);}66%{transform:translate(-16px,12px) scale(0.96);}}@media (max-width:860px){body.auth-page .auth-shell{grid-template-columns:1fr;max-width:440px;min-height:auto;}body.auth-page .auth-showcase{display:none;}body.auth-page .auth-card{padding:36px 28px 28px;border-radius:24px;}body.auth-page .auth-header .auth-brand{display:flex;margin-bottom:28px;}body.auth-page .auth-header .auth-brand-mark{background:linear-gradient(135deg,var(--theme-primary),#8b5cf6);border:none;box-shadow:0 8px 24px -8px rgba(100,108,255,0.5);}body.auth-page .auth-header .auth-brand-name{color:var(--theme-text);}body.auth-page .auth-header .auth-brand-tag{color:var(--theme-subtle);letter-spacing:0.08em;}}@media (max-width:480px){body.auth-page .auth-wrap{padding:20px 16px;align-items:flex-start;padding-top:32px;}body.auth-page .auth-shell{border-radius:20px;}body.auth-page .auth-card{padding:28px 22px 24px;}body.auth-page h1{font-size:22px;}body.auth-page .inline-form{flex-direction:column;}body.auth-page .btn-secondary{width:100%;}}@media (prefers-color-scheme:dark){body.auth-page .auth-shell{box-shadow:0 0 0 1px rgba(255,255,255,0.06) inset,0 25px 60px -12px rgba(0,0,0,0.55),0 0 100px -30px rgba(100,108,255,0.2);}body.auth-page .auth-card{background:color-mix(in srgb,var(--theme-card) 92%,transparent);}body.auth-page .auth-grid{opacity:0.18;}body.auth-page .auth-orb-a{opacity:0.18;}body.auth-page .auth-orb-b{opacity:0.12;}}@media (prefers-reduced-motion:reduce){body.auth-page .auth-shell,body.auth-page .auth-orb{animation:none;}body.auth-page .btn-block:hover{transform:none;}body.auth-page .btn-block::after{display:none;}}body.auth-page.unauthorized-page .unauthorized-shell{position:relative;z-index:1;width:min(560px,100%);}body.auth-page.unauthorized-page .unauthorized-card{padding:36px 32px 32px;text-align:center;border-radius:20px;border:1px solid var(--theme-border);background:color-mix(in srgb,var(--theme-card) 96%,transparent);box-shadow:0 24px 60px rgba(15,23,42,0.12);}body.auth-page.unauthorized-page .unauthorized-icon{width:72px;height:72px;margin:0 auto 18px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#ef4444;background:rgba(239,68,68,0.12);}body.auth-page.unauthorized-page .unauthorized-icon svg{width:36px;height:36px;}body.auth-page.unauthorized-page .unauthorized-title{margin:0 0 10px;font-size:28px;font-weight:800;letter-spacing:-0.03em;color:var(--theme-text);}body.auth-page.unauthorized-page .unauthorized-desc{margin:0 0 20px;font-size:15px;line-height:1.7;color:var(--theme-muted);}body.auth-page.unauthorized-page .unauthorized-tips{margin-bottom:18px;padding:14px 16px;border-radius:12px;text-align:left;background:var(--theme-elevated);border:1px solid var(--theme-border);}body.auth-page.unauthorized-page .unauthorized-tips p{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--theme-text);}body.auth-page.unauthorized-page .unauthorized-tips ul{margin:0;padding-left:18px;color:var(--theme-muted);font-size:13px;line-height:1.7;}body.auth-page.unauthorized-page .unauthorized-tips code{padding:1px 6px;border-radius:4px;font-size:12px;background:color-mix(in srgb,var(--theme-primary) 10%,var(--theme-card));color:var(--theme-text);}body.auth-page.unauthorized-page .unauthorized-contact{margin:0 0 20px;font-size:13px;}body.auth-page.unauthorized-page .unauthorized-actions{display:flex;justify-content:center;gap:10px;}@media (max-width:640px){body.auth-page.unauthorized-page .unauthorized-card{padding:28px 20px 24px;}body.auth-page.unauthorized-page .unauthorized-title{font-size:24px;}}