.auth{
 min-height:clamp(600px,calc(100svh - 180px),780px);
 max-width:none;
 margin:0;
 padding:72px 24px 96px;
 display:grid;
 place-items:start center;
 background:linear-gradient(180deg,#f7f9fc 0%,#fff 68%);
}
.auth-card{
 width:min(100%,440px);
 padding:42px 40px 38px;
 border:1px solid #e4e8ef;
 border-radius:22px;
 background:#fff;
 box-shadow:0 18px 55px rgba(20,38,77,.07);
 text-align:center;
}
.auth-mark{
 display:grid;
 width:64px;
 height:64px;
 margin:0 auto 20px;
 place-items:center;
 border-radius:18px;
 background:#f3f6fb;
}
.auth-mark img{width:48px;height:48px;object-fit:contain}
.auth-kicker{margin:0 0 8px;color:#46618e;font-size:11px;font-weight:800;letter-spacing:.13em}
.auth-card h1{margin:0;color:#09185a;font-family:'Roboto Condensed',sans-serif;font-size:36px;letter-spacing:-.025em}
.auth-lead{max-width:350px;margin:12px auto 0;color:#63708a;font-size:14px;line-height:1.55}
.auth-form{display:grid;gap:17px;margin-top:31px;text-align:left}
.auth-field{display:grid;gap:7px}
.auth-field label{color:#1f2e50;font-size:13px;font-weight:700}
.auth-field input:not([type=checkbox]){
 min-height:54px;
 padding:14px 15px;
 border:1px solid #cdd4df;
 border-radius:12px;
 background:#fff;
 color:#121d36;
 font-size:16px;
 line-height:1.2;
 transition:border-color .16s,box-shadow .16s,background .16s;
}
.auth-field input::placeholder{color:#949dac;opacity:1}
.auth-field input:hover{border-color:#aeb8c8}
.auth-field input:focus{border-color:#1764eb;outline:0;box-shadow:0 0 0 4px rgba(23,100,235,.13)}
.auth-field small{color:#758198;font-size:12px;line-height:1.45}
.auth-help{margin:0;color:#6b778e;font-size:12px;line-height:1.5}
.auth-help a{color:#155dd2;font-weight:700}
.auth-submit{
 width:100%;
 min-height:52px;
 margin-top:3px;
 justify-content:space-between;
 padding:12px 18px;
 border-radius:12px;
 box-shadow:none;
}
.auth-error{margin:24px 0 -8px;border-color:#f0c2bd;border-radius:12px;background:#fff5f4;font-size:13px;text-align:left}
.auth-links{display:flex;justify-content:center;gap:12px 20px;margin-top:24px;padding-top:22px;border-top:1px solid #edf0f4}
.auth-links a{color:#315681;font-size:13px;font-weight:700}

@media(max-width:680px){
 .auth{min-height:calc(100svh - 77px);padding:42px 22px 72px;background:#fff;place-items:start center}
 .auth-card{width:100%;padding:0;border:0;border-radius:0;box-shadow:none}
 .auth-mark{width:58px;height:58px;margin-bottom:18px;border-radius:16px}
 .auth-mark img{width:43px;height:43px}
 .auth-card h1{font-size:32px}
 .auth-lead{max-width:330px;margin-top:10px;font-size:14px}
 .auth-form{gap:15px;margin-top:30px}
 .auth-field{gap:6px}
 .auth-field label{font-size:12px}
 .auth-field input:not([type=checkbox]){min-height:56px;padding:15px 16px;border-color:#c7cbd2;border-radius:13px;background:#fbfbfc;font-size:16px}
 .auth-field input:focus{background:#fff;box-shadow:0 0 0 4px rgba(0,113,227,.14)}
 .auth-submit{min-height:54px;margin-top:4px;border-radius:13px;font-size:15px}
 .auth-links{margin-top:25px;padding-top:21px}
}

@media(max-width:390px){
 .auth{padding-inline:18px}
 .auth-links{flex-direction:column;gap:10px}
}

@media(prefers-reduced-motion:reduce){
 .auth-field input:not([type=checkbox]){transition:none}
}
