:root{color-scheme:light;--ink:#26344c;--muted:#69768a;--link:#4961a4;--line:#e4e8f0;--focus:#8397d2;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:#fbfcfe;color:var(--ink);font-size:14px;line-height:1.65}h1,p{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}[hidden]{display:none!important}button:disabled{cursor:default;opacity:.65}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.skip-link{position:fixed;top:12px;left:16px;padding:9px 14px;background:var(--ink);color:#fff;border-radius:7px;transform:translateY(-160%);z-index:10}.skip-link:focus{transform:translateY(0)}
.auth-main{display:flex;justify-content:center;align-items:flex-start;flex:1;padding:clamp(36px,7vh,74px) 24px 70px}.auth-panel{width:100%;max-width:400px;padding:31px 34px 27px;border:1px solid #e6eaf1;border-radius:12px;background:#fff;box-shadow:0 7px 27px #29395806}.auth-heading{margin-bottom:27px;text-align:center}.auth-heading h1{font-size:24px;line-height:1.5;font-weight:550;letter-spacing:-.2px}.auth-heading p{font-size:12px;color:var(--muted);margin-top:8px}
.form-field{margin-bottom:19px}.form-field>label,.label-row label{display:block;font-size:13px;font-weight:500;margin-bottom:7px}.label-row{display:flex;align-items:baseline;justify-content:space-between;gap:18px}.label-row a{font-size:12px;white-space:nowrap}.form-field input{display:block;width:100%;min-width:0;height:44px;padding:10px 12px;border:1px solid #d9dfeb;border-radius:7px;background:#fff;color:var(--ink);font-size:14px;line-height:1.5;transition:border-color .15s,box-shadow .15s}.form-field input::placeholder{color:#8b94a3}.form-field input:hover{border-color:#b9c4d9}.form-field input:focus{border-color:#8498cf;box-shadow:0 0 0 3px #7389c511;outline:none}.form-field input[aria-invalid=true]{border-color:#bb7272}.form-field input[aria-invalid=true]:focus{box-shadow:0 0 0 3px #bb727214}.password-field{position:relative}.password-field input{padding-right:63px}.password-toggle{position:absolute;right:6px;top:5px;min-height:34px;min-width:45px;padding:4px 7px;border:none;border-radius:5px;background:none;color:#687794;font-size:12px;cursor:pointer}.password-toggle:hover{background:#f4f6fa;color:#3d548e}.field-hint{font-size:11px;color:#748095;line-height:1.8;margin-top:6px}.field-error{font-size:12px;color:#a15151;line-height:1.7;margin-top:6px;overflow-wrap:anywhere}
.submit-button{display:block;width:100%;min-height:43px;border:1px solid #5163a9;border-radius:7px;background:linear-gradient(180deg,#6474bc,#5262a8);box-shadow:0 2px 3px #23325c16,inset 0 1px 0 #ffffff20;padding:9px 16px;color:#fff;font-size:13px;font-weight:500;line-height:1.7;cursor:pointer;transition:box-shadow .15s,background .15s}.submit-button:hover{background:linear-gradient(180deg,#5c6eb9,#495ba3);box-shadow:0 3px 7px #26365924}.form-status{padding:11px 12px;border:1px solid #eadfc9;border-radius:7px;background:#fbf8f1;color:#836d45;font-size:12px;line-height:1.85;margin:0 0 17px}.form-status.validation-status{border-color:#ead5d5;background:#fdf7f7;color:#9c5656}.form-status:focus{outline:2px solid #c5ac80;outline-offset:3px}.auth-switch{text-align:center;border-top:1px solid #edf0f5;margin-top:24px;padding-top:20px;font-size:12px;color:var(--muted)}.auth-switch a{font-weight:500}
@media(max-width:600px){.auth-main{padding:35px 20px 45px}.auth-panel{max-width:400px;padding:27px 25px 24px}.auth-heading h1{font-size:22px}.auth-heading{margin-bottom:24px}.form-field{margin-bottom:18px}}@media(max-width:360px){.auth-panel{padding:25px 20px}.auth-main{padding-left:15px;padding-right:15px}}@media(prefers-reduced-motion:reduce){.form-field input,.submit-button{transition:none}}





/* Forms share the site chrome; readable field and help text on every viewport. */
.auth-heading h1{font-size:28px}
.auth-heading p,.label-row a,.password-toggle,.field-hint,.field-error,.form-status,.auth-switch{font-size:14px}
.form-field>label,.label-row label,.form-field input,.submit-button{font-size:16px}
.form-field input{height:48px}
.form-field input::placeholder{color:#637087}
.password-toggle{top:7px}
.field-hint,.password-toggle{color:var(--muted)}
.form-status{color:#735724}
.form-status.validation-status,.field-error{color:#964747}
.auth-panel{padding:31px 30px 27px}
@media(max-width:600px){
 .auth-heading h1{font-size:26px}
 .auth-panel{padding:27px 24px 24px}
}
@media(max-width:360px){
 .auth-panel{padding:25px 20px}
 .label-row{gap:9px}
}

