:root{font-family:Inter,Arial,sans-serif;color:#080b10;background:#f4f6fa;color-scheme:light}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}a{color:#2157bf}button,a{touch-action:manipulation}:is(button,a,input):focus-visible{outline:3px solid #7ca8fa;outline-offset:3px}.login-layout{min-height:100dvh;display:grid;grid-template-columns:minmax(300px,.85fr) minmax(460px,1.15fr)}.login-brand{background:#202934;color:white;padding:58px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.login-brand>span{font-size:11px;font-weight:650;letter-spacing:2px;width:170px;text-align:center}.login-brand>div{margin-block:auto}.login-brand h1{font-size:clamp(26px,3vw,44px);line-height:1.3;max-width:520px;margin:42px 0 20px}.login-brand p{font-size:15px;line-height:1.8;color:#d4dfed;max-width:380px}.login-main{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;gap:25px}.public-card{background:white;border:1px solid #dce3ee;border-radius:16px;padding:36px;box-shadow:0 12px 40px #25365508}.login-card{width:min(430px,100%)}.login-card h2{font-size:26px;margin:0 0 12px;line-height:1.4}.login-card>p{font-size:14px;line-height:1.7;color:#526174;margin:0 0 26px}.login-card label{display:grid;gap:9px;font-size:13px;font-weight:600;margin:20px 0}.login-card input{border:1px solid #cbd5e4;background:#f9fbfe;color:#05070a;border-radius:8px;padding:13px 14px;min-width:0;width:100%}.password-control{position:relative}.password-control input{padding-right:95px}.password-control button{position:absolute;right:8px;top:7px;bottom:7px;border:0;background:transparent;color:#2157bf;cursor:pointer;font-size:12px;padding:6px 10px;border-radius:6px}.public-primary{border:1px solid #315ecb;background:#315ecb;color:white;border-radius:8px;text-align:center;text-decoration:none;font-weight:650;cursor:pointer;padding:13px 20px;display:inline-block}.login-card>.public-primary{width:100%;margin-top:7px}.login-card>small{font-size:12px;line-height:1.7;color:#607086;display:block;margin-top:22px;text-align:center}.login-main footer{font-size:11px;color:#607086}.public-error{background:#fff0ed;border:1px solid #f0bcb3;color:#ac2c1c;padding:13px;border-radius:8px;font-size:13px;line-height:1.6}.public-error-layout{min-height:100dvh;display:grid;place-items:center;padding:24px}.public-error-card{width:min(620px,100%);text-align:center}.public-error-brand{background:#202934;display:inline-flex;padding:17px 22px;border-radius:12px}.public-error-brand img{max-width:140px;height:auto}.public-error-code{font-size:76px;font-weight:750;letter-spacing:-3px;margin:28px 0 14px;color:#315ecb}.public-error-card h1{font-size:28px;line-height:1.4;margin:0 0 16px}.public-error-card>p:not(.public-error-code){font-size:15px;line-height:1.9;color:#526174}.public-error-card nav{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:26px 0}.public-secondary{padding:13px 20px;border:1px solid #cbd5e4;border-radius:8px;text-decoration:none;background:white}.public-error-card>small{color:#607086;font-size:11px;line-height:1.8}
@media(max-width:800px){.login-layout{grid-template-columns:1fr}.login-brand{padding:24px;align-items:center}.login-brand img{width:125px;height:auto}.login-brand>span{width:125px;font-size:9px}.login-brand>div{display:none}.login-main{padding:24px 16px;justify-content:start}.public-card{padding:26px 22px}.login-card h2{font-size:24px}.public-error-code{font-size:62px}.public-error-card h1{font-size:23px}.public-error-layout{padding:15px}.public-error-card nav>a{flex:1 1 150px}}
.login-logo{display:block;flex:none;width:170px}.login-logo img{display:block;width:100%;height:auto}.login-card input{font-size:16px;line-height:1.4;font-weight:400;min-height:48px}.login-card h2{color:#000}
@media(max-width:800px){.login-layout{grid-template-rows:auto minmax(0,1fr)}.login-brand{background:transparent;color:#080b10;padding:26px 20px 6px;gap:8px;min-height:0}.login-logo{width:128px}.login-brand img{width:100%;height:auto}.login-brand>span{width:auto;font-size:9px;line-height:1.3;letter-spacing:1.6px;white-space:nowrap}.login-main{padding:18px 16px 22px;gap:18px;min-width:0}.login-card{max-width:430px}.password-control button{top:3px;bottom:3px;min-width:80px;font-size:13px}.login-card>p{margin-bottom:22px}.login-card>small{margin-top:20px}}
