.login-page{background:#f7f8fa;min-height:100dvh;display:flex;flex-direction:column}
.login-main{width:100%;max-width:none;min-height:100dvh;margin:0;flex:1;display:grid;place-items:center;padding:48px 20px}
.login-panel{width:100%;max-width:400px;background:white;border:1px solid #e1e4e9;border-radius:8px;padding:32px}
.login-panel h1{font-size:25px;line-height:1.3;margin:0 0 28px}
#login-form{display:flex;flex-direction:column;gap:10px}
#login-form label{font-size:13px;font-weight:600}
#login-form label[for=password]{margin-top:10px}
#login-form input{width:100%;min-width:0;height:46px;background:white;border:1px solid #cfd4dc;border-radius:5px;padding:0 12px;font-size:16px}
.password-field{position:relative}
.password-field input{padding-right:48px!important}
#show-password{position:absolute;right:1px;top:1px;width:44px;height:44px;display:grid;place-items:center;color:#747e8c;border-radius:4px}
#show-password:hover{background:#f2f4f7;color:#222830}
.sign-in{width:100%;height:46px;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--red);color:white;border-radius:5px;font-size:14px;font-weight:600;margin-top:14px}
.sign-in:hover{background:#b6313c}
.sign-in:disabled{opacity:.65}
.login-error{color:#ad2834;font-size:13px;line-height:1.5;margin-top:4px;overflow-wrap:anywhere}
@media(max-width:480px){.login-main{padding:32px 16px}.login-panel{padding:28px 24px}.login-panel h1{font-size:24px}}
@media(max-height:600px){.login-main{padding-top:24px;padding-bottom:24px}}
