:root{font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:#243147;background:#f6f8fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:#315fd4;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #adc6ff;outline-offset:3px}[hidden]{display:none!important}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(360px, .95fr) minmax(460px,1.05fr)}.auth-story{background:#203c82;color:#fff;padding:48px 64px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-story:after{content:"";position:absolute;width:440px;height:440px;border:1px solid #ffffff17;border-radius:50%;bottom:-210px;right:-170px;pointer-events:none}.brand{display:flex;align-items:center;gap:12px;color:inherit;font-size:17px;font-weight:650;letter-spacing:-.3px}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#fff;color:#2d54b5;font-size:26px;font-weight:700}.story-copy{padding:56px 0}.eyebrow{font-size:13px;color:#bacced;letter-spacing:2px}.story-copy h1{font-size:clamp(34px,3.6vw,54px);line-height:1.45;font-weight:600;letter-spacing:-1px;margin:22px 0}.story-copy em{font-style:normal;color:#acc9ff}.story-copy p{font-size:15px;line-height:2;color:#c4d1e9}.story-note{display:flex;gap:28px;font-size:12px;color:#aebfe1;padding-top:22px;border-top:1px solid #ffffff24}.auth-panel{padding:50px 64px 24px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#fff}.auth-card{width:100%;max-width:390px;margin:auto 0;padding:24px 0 40px}.auth-tabs{display:flex;gap:30px;border-bottom:1px solid #e5eaf2;margin-bottom:36px}.auth-tabs a{padding:12px 2px 14px;color:#8290a3;font-size:15px}.auth-tabs a[aria-current=page]{color:#2f5bcc;border-bottom:2px solid #2f5bcc;font-weight:600}.auth-card h2{font-size:28px;font-weight:650;letter-spacing:-.6px;margin:0 0 12px}.auth-intro{color:#7a879a;font-size:14px;line-height:1.7;margin:0 0 30px}.field{margin:0 0 20px}.field label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}.field input{width:100%;height:47px;border:1px solid #dce3ed;border-radius:8px;padding:11px 13px;color:#263343;background:#fff;transition:border-color .15s}.field input:focus{border-color:#567bdd;outline:3px solid #edf2ff}.field input::placeholder{color:#a6afbc;font-size:13px}.field small{display:block;margin-top:8px;color:#8490a2;font-size:12px;line-height:1.6}.password-field{position:relative}.password-field input{padding-right:65px}.reveal{position:absolute;right:6px;top:6px;height:35px;padding:0 10px;border:0;background:transparent;color:#65758e;font-size:12px;cursor:pointer}.submit{display:flex;align-items:center;justify-content:center;width:100%;height:48px;border:0;border-radius:8px;background:#315fd4;color:white;padding:0 18px;margin-top:28px;font-size:14px;font-weight:600;cursor:pointer}.submit:hover{background:#274fb9}.submit:disabled{opacity:.65;cursor:wait}.auth-error{padding:11px 13px;border-radius:7px;background:#fff2f1;color:#b4443d;font-size:13px;line-height:1.7}.auth-switch{text-align:center;font-size:13px;color:#8490a2;margin:24px 0}.auth-switch a{margin-left:6px}.auth-footnote{border-top:1px solid #edf0f5;padding-top:20px;font-size:12px;color:#939cad;line-height:1.8}footer{display:flex;width:100%;justify-content:space-between;font-size:11px;color:#a0aaba;gap:16px}body[data-mode=register] .auth-card{padding-top:0}@media(max-width:900px){.auth-story{padding:36px}.auth-panel{padding:36px}.story-note{gap:18px}}@media(max-width:700px){.auth-shell{display:flex;flex-direction:column}.auth-story{padding:22px 26px}.story-copy,.story-note{display:none}.auth-panel{flex:1;min-height:calc(100vh - 80px);padding:24px}.auth-card{padding:12px 0 30px}.auth-tabs{margin-bottom:28px}footer{max-width:390px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.brand-name{display:flex;flex-direction:column;gap:5px;font-size:23px;letter-spacing:1px}.brand-name small{font-size:11px;letter-spacing:1px;font-weight:400;color:#c0ceea}.brand-mark{font-size:20px}.captcha-row,.email-code-row{display:flex;gap:10px;align-items:center}.captcha-row input,.email-code-row input{min-width:0;flex:1}.captcha-image{flex:none;width:152px;height:47px;padding:0;border:1px solid #dce3ed;border-radius:8px;background:#edf2fc;overflow:hidden;cursor:pointer}.captcha-image img{display:block;width:100%;height:100%;object-fit:contain}.captcha-image img:not([src]){display:none}.captcha-image span{font-size:12px;color:#65758e}.email-code-row button{flex:none;min-width:120px;height:47px;border:1px solid #dce3ed;border-radius:8px;color:#315fd4;background:#f6f8ff;cursor:pointer;font-size:13px}.email-code-row button:disabled{opacity:.6;cursor:wait}body[data-mode=register] .auth-panel{padding-top:22px}body[data-mode=register] .auth-tabs{margin-bottom:20px}body[data-mode=register] .field{margin-bottom:14px}body[data-mode=register] .auth-intro{margin-bottom:20px}
body[data-mode=register] .auth-card{max-width:460px}body[data-mode=register] #authForm{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px}body[data-mode=register] #captchaField,body[data-mode=register] #emailCodeField,body[data-mode=register] #authError,body[data-mode=register] #submit{grid-column:1/-1}body[data-mode=register] .submit{margin-top:12px}@media(max-width:700px){body[data-mode=register] #authForm{display:block}}
