:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#233249;background:#f5f7fb;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;min-height:100svh;background:#f5f7fb}
a{color:#245fc3;text-decoration:none}a:hover{text-decoration:underline}
button,input{font:inherit}button{cursor:pointer}
.auth-layout{min-height:100svh;display:grid;grid-template-columns:minmax(300px,.88fr) minmax(460px,1.12fr)}
.auth-intro{display:flex;flex-direction:column;padding:42px clamp(32px,6vw,88px);background:radial-gradient(circle at 85% 15%,#345a884d,transparent 40%),linear-gradient(145deg,#111e32,#1e3755);color:#fff}
.auth-brand{display:inline-flex;align-items:center;gap:12px;color:#fff!important;text-decoration:none;font-size:21px;font-weight:750;letter-spacing:-.6px}
.auth-brand img{height:40px;width:40px;object-fit:cover;border-radius:12px;background:#fff1}
.auth-intro-content{margin:auto 0;max-width:540px;padding:70px 0}
.auth-eyebrow{display:inline-flex;align-items:center;gap:9px;color:#98bff7;text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:800}
.auth-eyebrow:before{content:"";height:7px;width:7px;border-radius:50%;background:#4aca98;box-shadow:0 0 0 4px #3dd29d24}
.auth-intro h2{margin:18px 0 16px;font-size:clamp(34px,3.5vw,54px);line-height:1.12;letter-spacing:-1.9px;font-weight:780;max-width:500px}
.auth-intro p{max-width:445px;color:#b6c6da;line-height:1.8;font-size:15px;margin:0}
.auth-benefits{display:grid;gap:15px;margin-top:42px}
.auth-benefit{display:flex;align-items:center;gap:12px;color:#d3deed;font-size:13px}
.auth-check{display:grid;place-items:center;width:25px;height:25px;border:1px solid #6590c7;border-radius:50%;color:#7ae4b3;font-weight:900}
.auth-footer{font-size:12px;color:#98acc4;margin-top:24px}
.auth-content{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:56px 28px}
.auth-box{width:min(100%,460px)}
.auth-box .auth-overline{font-size:11px;font-weight:800;letter-spacing:1.8px;color:#4b78bb;margin-bottom:12px;text-transform:uppercase}
.auth-box h1{font-size:clamp(28px,3vw,36px);line-height:1.2;letter-spacing:-1px;color:#182a42;margin:0 0 11px}
.auth-box .auth-description{font-size:14px;color:#77899d;line-height:1.7;margin:0 0 30px}
.auth-card{background:#fff;border:1px solid #e1e8f2;border-radius:18px;padding:32px;box-shadow:0 20px 60px #17345310}
.auth-field{margin:0 0 19px}
.auth-field label{display:block;font-size:12px;color:#3a4e6c;font-weight:750;margin-bottom:8px}
.auth-field input{width:100%;min-width:0;height:48px;padding:12px 14px;border:1px solid #d7e1ee;border-radius:10px;background:#fff;color:#1f314a;font-size:14px;outline:none}
.auth-field input:focus{border-color:#4b7fde;box-shadow:0 0 0 4px #357de119}
.auth-field input::placeholder{color:#a0afbf}
.auth-button{display:block;width:100%;min-height:47px;border:0;border-radius:10px;background:#2866d8;color:#fff;font-size:13px;font-weight:750;margin-top:8px}
.auth-button:hover{background:#1953bb}
.auth-help{text-align:center;font-size:12px;color:#91a0af;margin:23px 0 0;line-height:1.6}
.auth-back{display:inline-block;margin-top:20px;font-size:13px;font-weight:700}
.auth-alert{border:1px solid #efc4cc;background:#fff0f3;color:#b03c51;padding:12px 14px;border-radius:10px;font-size:13px;margin-bottom:21px;line-height:1.6}
.auth-alert.success{background:#ebf8f1;border-color:#b9e8ce;color:#217a50}
.auth-alert:empty{display:none}
.auth-content-footer{margin:36px 0 0;color:#9ba9b8;font-size:12px;text-align:center}
.auth-box a:focus-visible,.auth-box button:focus-visible{outline:3px solid #a3c3ff;outline-offset:3px}
@media(max-width:980px){.auth-layout{grid-template-columns:minmax(0,1fr)}.auth-intro{padding:20px 28px 27px}.auth-intro-content{padding:23px 0 0}.auth-intro h2{font-size:25px;letter-spacing:-.7px;margin:12px 0 7px}.auth-intro p{font-size:13px}.auth-benefits{display:none}.auth-footer{display:none}.auth-content{padding:32px 20px 55px}}
@media(max-width:520px){.auth-intro{padding:18px 18px 22px}.auth-brand{font-size:18px}.auth-brand img{height:34px;width:34px}.auth-intro-content{padding:18px 0 0}.auth-content{padding:24px 14px 45px}.auth-card{padding:23px 20px}.auth-box h1{font-size:27px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
