:root{--blue:#2563eb;--ink:#233148;--muted:#8795aa;--line:#e2e8f2;--bg:#f5f7fb;color-scheme:light;font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}a{text-decoration:none;color:var(--blue)}button,input{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.auth-topbar{background:#fff;border-bottom:1px solid var(--line)}.auth-topbar-inner{max-width:1080px;margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:15px}.auth-brand{display:flex;align-items:center;gap:11px;color:var(--ink);font-size:18px;font-weight:700}.auth-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:var(--blue);color:white}.auth-mark svg{width:24px;height:24px}.auth-top-link{font-size:12px;color:#7f8da3}.auth-main{max-width:460px;margin:58px auto;padding:0 20px}.auth-heading{text-align:center;margin-bottom:25px}.auth-heading h1{font-size:27px;margin:0 0 10px;letter-spacing:-.5px}.auth-heading p{font-size:13px;color:var(--muted);line-height:1.7;margin:0}.auth-card{padding:30px;background:white;border:1px solid var(--line);border-radius:13px;box-shadow:0 8px 30px #17304f05}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f5f7fc;border-radius:8px;padding:4px;margin-bottom:25px}.auth-tabs a{text-align:center;padding:9px;font-size:13px;color:#90a0b6;border-radius:6px}.auth-tabs a.active{background:white;color:var(--blue);font-weight:600;box-shadow:0 2px 7px #17304f07}.auth-field{margin-bottom:19px}.auth-field label{display:block;color:#475772;font-size:12px;font-weight:550;margin-bottom:9px}.auth-field input{width:100%;height:46px;border:1px solid #dfe6f0;border-radius:7px;outline:none;padding:0 13px;font-size:13px;color:var(--ink);background:white}.auth-field input:focus{border-color:#8caffc;box-shadow:0 0 0 3px #eff4ff}.auth-field input::placeholder{color:#a4afc0;font-size:12px}.auth-field small{display:block;font-size:11px;color:#9ba7ba;line-height:1.7;margin-top:6px}.auth-password{position:relative}.auth-password input{padding-right:45px}.auth-eye{border:0;background:none;color:#99a6bc;position:absolute;right:5px;top:5px;width:36px;height:36px;display:grid;place-items:center}.auth-eye svg{width:19px;height:19px}.auth-submit{display:flex;align-items:center;justify-content:center;width:100%;height:45px;background:var(--blue);border:0;border-radius:7px;box-shadow:0 4px 10px #2563eb1c;color:white;font-size:13px;font-weight:600;margin-top:22px}.auth-submit:hover{background:#2057d5}.auth-submit:disabled{cursor:wait;opacity:.6}.auth-note{font-size:11px;color:#98a5b8;line-height:1.8;text-align:center;margin:15px 0 0}.auth-foot{text-align:center;font-size:12px;color:#98a5b8;margin-top:22px}.auth-foot a{margin-left:5px}.auth-error{margin:15px 0 0;padding:10px 12px;border:1px solid #f5dedc;background:#fff6f4;border-radius:7px;font-size:12px;line-height:1.8;color:#bb7069}.auth-info{font-size:12px;color:#6987b6;border:1px solid #dce8ff;background:#f2f6ff;border-radius:8px;padding:14px 15px;line-height:1.8;margin-bottom:20px}.auth-status{display:flex;align-items:center;gap:11px;background:#f5f8fd;border-radius:8px;padding:13px;margin-bottom:20px}.auth-avatar{width:34px;height:34px;display:grid;place-items:center;background:#e5eeff;border-radius:50%;color:var(--blue);font-size:14px}.auth-status strong{display:block;font-size:12px;font-weight:550}.auth-status small{display:block;font-size:11px;color:#95a2b6;margin-top:3px}.auth-check{font-size:11px;color:#8997ac;display:flex;gap:7px;align-items:flex-start;line-height:1.8}.auth-check input{accent-color:var(--blue);margin-top:4px}.auth-back{display:block;text-align:center;font-size:11px;color:#a1acbd;margin-top:25px}button:focus-visible,a:focus-visible{outline:3px solid #a8c4ff;outline-offset:3px}.auth-site-footer{text-align:center;font-size:10px;color:#b0bac9;line-height:1.8;letter-spacing:.6px;padding-bottom:30px}@media(max-width:600px){.auth-topbar-inner{padding:18px 20px}.auth-brand{font-size:16px}.auth-mark{width:31px;height:31px}.auth-top-link{font-size:11px}.auth-main{margin-top:34px}.auth-heading h1{font-size:24px}.auth-heading p{font-size:12px}.auth-card{padding:24px}.auth-field input{height:46px;font-size:14px}}

.form-error.success{color:#28734c}

body[data-mode="login"]{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center}body[data-mode="login"] .auth-main{box-sizing:border-box;width:100%;margin:0 auto;padding:40px 20px}@media(max-height:650px){body[data-mode="login"]{justify-content:flex-start}body[data-mode="login"] .auth-main{padding-top:24px;padding-bottom:24px}}
body[data-mode="login"]{position:relative;isolation:isolate;background:#665a4d;min-height:100vh;min-height:100svh}body[data-mode="login"]::before,body[data-mode="login"]::after{content:'';position:fixed;inset:0;pointer-events:none;background-image:url('/login-background.png');background-position:center;background-repeat:no-repeat}body[data-mode="login"]::before{z-index:-2;background-size:cover;filter:blur(22px) brightness(.72);transform:scale(1.08)}body[data-mode="login"]::after{z-index:-1;background-size:contain}body[data-mode="login"] .auth-main{position:relative}body[data-mode="login"] .auth-heading h1{color:#fff;text-shadow:0 2px 12px #0009}body[data-mode="login"] .auth-card{background:rgba(255,255,255,.95);border-color:rgba(255,255,255,.8);box-shadow:0 18px 70px #0003}@media(max-width:600px){body[data-mode="login"]::before{filter:blur(14px) brightness(.8)}body[data-mode="login"]::before,body[data-mode="login"]::after{height:100vh;height:100svh;bottom:auto}body[data-mode="login"]::after{background-size:contain}}
@media(min-width:900px){body[data-mode="login"]::before{display:none}body[data-mode="login"]::after{background-size:cover;background-position:center 58%;filter:brightness(.86)}body[data-mode="login"] .auth-main{width:460px;max-width:calc(100% - 64px);margin-left:auto;margin-right:7vw;padding:32px 20px}body[data-mode="login"] .auth-card{background:rgba(255,255,255,.97);box-shadow:0 24px 80px #0004}body[data-mode="login"] .auth-heading{margin-bottom:22px}body[data-mode="login"] .auth-heading h1{text-shadow:0 2px 16px #000b}}
body[data-mode="login"] .auth-card{background:rgba(255,255,255,.68);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.55);box-shadow:0 20px 65px #0003}body[data-mode="login"] .auth-field input{background:rgba(255,255,255,.8)}body[data-mode="login"] .auth-note,body[data-mode="login"] .disclaimer-link{color:#52647d}
body[data-mode="login"] .auth-card{background:rgba(255,255,255,.4)}
body[data-mode="login"] .auth-card{background:rgba(255,255,255,.3)}
body[data-mode="login"] .auth-card{background:rgba(255,255,255,.1)}
body[data-mode="login"] .auth-card{background:transparent}
body[data-mode="login"]{background-color:#0b1427}body[data-mode="login"]::before{display:none}body[data-mode="login"]::after{background-image:url('/login-future-city.png');background-size:cover;background-position:center;filter:none}body[data-mode="login"] .auth-card{background:transparent}body[data-mode="login"] .auth-field label,body[data-mode="login"] .auth-note,body[data-mode="login"] .disclaimer-link{color:#e4edff;text-shadow:0 1px 4px #0009}body[data-mode="login"] .auth-foot a{color:#a6ceff}@media(max-width:600px){body[data-mode="login"]::after{background-size:cover;background-position:30% center}}
body[data-mode="login"]{background:#f5f7fb}body[data-mode="login"]::before,body[data-mode="login"]::after{display:none}body[data-mode="login"] .auth-main{box-sizing:border-box;width:100%;max-width:460px;margin:0 auto;padding:32px 20px}body[data-mode="login"] .auth-heading h1{color:#233148;text-shadow:none}body[data-mode="login"] .auth-card{background:#fff;border:1px solid #e2e8f2;box-shadow:0 8px 30px #17304f05;backdrop-filter:none;-webkit-backdrop-filter:none}body[data-mode="login"] .auth-field label{color:#233148;text-shadow:none}body[data-mode="login"] .auth-field input{background:#fff}body[data-mode="login"] .auth-note,body[data-mode="login"] .disclaimer-link{color:#8795aa;text-shadow:none}body[data-mode="login"] .auth-foot a{color:#2563eb}
body[data-mode="login"]{background-color:#f5f7fb;background-image:radial-gradient(ellipse at 8% 16%,rgba(136,181,255,.25),transparent 42%),radial-gradient(ellipse at 92% 82%,rgba(189,172,244,.2),transparent 44%),radial-gradient(circle,rgba(108,136,180,.15) .7px,transparent .9px);background-size:100% 100%,100% 100%,24px 24px;background-repeat:no-repeat,no-repeat,repeat}body[data-mode="login"] .auth-card{box-shadow:0 16px 48px rgba(67,93,139,.08);border-color:#e1e8f3}
body[data-mode="login"]::before{display:block;z-index:-1;background-image:url('/login-pattern.svg');background-size:cover;background-position:center;filter:none;transform:none;opacity:.85}body[data-mode="login"]::after{display:none}@media(max-width:600px){body[data-mode="login"]::before{background-size:auto 100%;background-position:center;opacity:.5}}
body[data-mode="login"]{background:#eef7ff}body[data-mode="login"]::before{display:none}body[data-mode="login"]::after{display:block;z-index:-1;background-image:url('/login-learning.png');background-size:cover;background-position:center;filter:none}body[data-mode="login"] .auth-main{width:100%;max-width:460px;margin:0 auto}body[data-mode="login"] .auth-card{background:rgba(255,255,255,.95);border-color:rgba(219,232,246,.9);box-shadow:0 16px 48px #37638c14}@media(max-width:600px){body[data-mode="login"]::after{background-size:auto 100%;background-position:center}}
body[data-mode="login"] .login-heading{margin-bottom:24px}.learning-emblem{position:relative;display:grid;place-items:center;width:64px;height:64px;margin:0 auto 16px;border:1px solid #fff;border-radius:20px;color:#2872e4;background:linear-gradient(145deg,#fff,#e5f4ff);box-shadow:0 8px 24px #6396cc1a}.learning-emblem svg{width:36px;height:36px}.emblem-spark{position:absolute;right:-4px;top:4px;width:11px;height:11px;background:#6ccdc5;border:3px solid #eff9ff;border-radius:50%}.learning-eyebrow{display:block;font-size:11px;letter-spacing:3px;color:#7194b7;margin-bottom:10px}body[data-mode="login"] .login-heading h1{margin-bottom:12px}body[data-mode="login"] .learning-caption{font-size:12px;color:#829bb3;letter-spacing:.6px}.learning-caption span{padding:0 7px;color:#9fc4de}@media(max-width:600px){.learning-emblem{width:56px;height:56px;border-radius:17px;margin-bottom:12px}.learning-emblem svg{width:32px;height:32px}.learning-eyebrow{font-size:10px;letter-spacing:2px}body[data-mode="login"] .login-heading{margin-bottom:22px}body[data-mode="login"] .learning-caption{font-size:11px}}@media(max-height:650px){.learning-emblem{width:44px;height:44px;margin-bottom:8px;border-radius:14px}.learning-emblem svg{width:27px;height:27px}.learning-eyebrow{margin-bottom:6px}body[data-mode="login"] .login-heading{margin-bottom:16px}}
