:root{--blue:#355cf5;--ink:#1d2a44;--muted:#7e8aa0;--line:#e5eaf4}
*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:#f6f8fc;color:var(--ink);-webkit-font-smoothing:antialiased}
a{color:var(--blue);text-decoration:none;font-weight:700}a:hover{text-decoration:underline}
.auth-layout{min-height:100vh;display:grid;grid-template-columns:minmax(380px,.9fr) minmax(480px,1fr)}
.auth-aside{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;min-height:100vh;padding:43px clamp(35px,4.8vw,85px);background:#18243b;color:white}
.auth-aside:before{content:"";position:absolute;right:-220px;top:15%;width:510px;height:510px;border-radius:50%;background:radial-gradient(circle,rgba(67,105,244,.27),rgba(67,105,244,0) 70%);pointer-events:none}
.auth-aside:after{content:"";position:absolute;left:-180px;bottom:-160px;width:450px;height:450px;border-radius:50%;border:1px solid rgba(166,192,255,.14);box-shadow:0 0 0 70px rgba(121,164,255,.025),0 0 0 150px rgba(121,164,255,.02)}
.auth-logo{position:relative;z-index:1;display:flex;align-items:center;gap:14px;font-size:24px;font-weight:830;letter-spacing:-.5px}.auth-logo-icon{display:grid;place-items:center;width:46px;height:46px;background:linear-gradient(130deg,#6289ff,#3561ef);border-radius:15px;color:#fff;font-size:25px;box-shadow:0 12px 24px rgba(28,57,161,.22)}
.auth-logo small{display:block;font-size:10px;letter-spacing:2px;font-weight:740;color:#a2b3d2;margin-top:2px}
.auth-aside-content{position:relative;z-index:1;max-width:495px;padding:35px 0}.auth-aside-content .eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:850;color:#8ca9ff;text-transform:uppercase}
.auth-aside-content h2{margin:15px 0 20px;font-size:clamp(32px,3.4vw,52px);line-height:1.17;letter-spacing:-2px;font-weight:840;color:white}
.auth-aside-content h2 span{color:#86a5ff}.auth-aside-content p{color:#bac6d9;font-size:14px;line-height:1.9;max-width:425px}
.auth-features{margin-top:36px;display:grid;gap:17px}.auth-feature{display:flex;align-items:center;gap:14px;color:#dbe5f7;font-size:13px;font-weight:600}.auth-feature-icon{height:36px;width:36px;border-radius:11px;background:rgba(134,168,255,.13);display:grid;place-items:center;color:#a6bbff;font-size:18px}
.auth-aside-footer{position:relative;z-index:1;color:#7c8caa;font-size:11px}
.auth-side{display:flex;align-items:center;justify-content:center;padding:50px 26px;background:#fbfcfe;min-height:100vh}
.auth-container{width:min(440px,100%)}.auth-mobile-brand{display:none}
.auth-heading{font-size:31px;line-height:1.2;font-weight:830;letter-spacing:-.9px;margin:0 0 8px}
.auth-description{font-size:13px;color:#8290a5;line-height:1.7;margin:0 0 29px}
.auth-form{display:grid;gap:17px}.auth-field label{display:block;font-size:12px;font-weight:750;color:#3c4b64;margin-bottom:8px}
.auth-control{height:48px;display:flex;align-items:center;gap:11px;padding:0 13px;background:white;border:1px solid #dce4ef;border-radius:11px;transition:border .15s,box-shadow .15s}
.auth-control:focus-within{border-color:#9caefc;box-shadow:0 0 0 4px rgba(53,92,245,.1)}
.auth-control>i{font-size:16px;color:#91a0b5}.auth-control input{min-width:0;flex:1;border:0;outline:0;background:transparent;font:inherit;font-size:14px;color:#22314d}
.auth-control input::placeholder{color:#a8b2c3}.auth-toggle{border:0;background:transparent;color:#5b71a7;font-size:11px;font-weight:750;cursor:pointer;padding:8px}
.auth-options{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px}.auth-options a{font-size:12px}
.auth-check{display:flex;align-items:flex-start;gap:8px;line-height:1.6;color:#70809a;font-size:12px;cursor:pointer}.auth-check input{accent-color:var(--blue);margin-top:3px}
.auth-button{display:flex;align-items:center;justify-content:center;gap:9px;height:48px;background:var(--blue);color:#fff;border:0;border-radius:11px;font-size:13px;font-weight:790;cursor:pointer;transition:background .15s,transform .15s}.auth-button:hover{background:#2447d4;transform:translateY(-1px)}
.auth-footer{margin-top:27px;padding-top:23px;border-top:1px solid var(--line);text-align:center;color:#8592a5;font-size:12px}.auth-footer a{margin-left:4px}
.auth-note{margin:20px 0 0;display:flex;align-items:center;justify-content:center;gap:6px;color:#97a2b4;font-size:11px}
.auth-alert{display:flex;gap:12px;align-items:center;border-radius:11px;padding:12px 13px;margin-bottom:20px;font-size:12px;line-height:1.55}.auth-alert.error{background:#fff0f0;color:#b52b38;border:1px solid #ffd7d9}.auth-alert.success{background:#e9f9f2;color:#157a53;border:1px solid #c8efdc}
.auth-password-rules{font-size:11px;color:#94a0b1;margin:7px 0 0;line-height:1.6}.auth-legal{font-size:11px;color:#91a0b3;text-align:center;margin-top:25px}
@media(max-width:950px){.auth-layout{grid-template-columns:minmax(270px,.75fr) minmax(420px,1fr)}.auth-aside{padding:30px}.auth-aside-content h2{font-size:34px}}
@media(max-width:700px){.auth-layout{display:block}.auth-aside{display:none}.auth-side{min-height:100dvh;padding:35px 20px 55px;align-items:flex-start}.auth-container{padding-top:20px}.auth-mobile-brand{display:flex;align-items:center;gap:10px;color:#213354;font-weight:840;font-size:20px;margin:0 0 38px}.auth-mobile-brand span{height:36px;width:36px;display:grid;place-items:center;border-radius:10px;background:#355cf5;color:#fff}.auth-heading{font-size:27px}.auth-description{margin-bottom:26px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
