/* Shared forced-password feedback; server policy remains authoritative. */
.login-right .field{width:100%}.login-right form[hidden]{display:none!important}.login-right .password-rules{padding:12px 14px;border:1px solid #66517e;border-radius:10px;background:#282237;color:#ded3f5;font-size:14px;line-height:1.7;margin:12px 0 18px}.login-right .password-field-error{min-height:18px;margin:5px 0 8px;color:#ffb1b8;font-size:14px;line-height:1.5}.login-right [aria-invalid="true"]{border-color:#ff8e9b;outline:1px solid #ff8e9b}.login-right #clientLoginError{color:#ffb1b8;font-size:15px;line-height:1.6;margin:14px 0}.login-right #clientLoginStatus{color:#b5e7d1;font-size:15px;line-height:1.6}.login-right button:disabled{opacity:.65;cursor:wait}.login-right .password-relogin{background:#282237;border:1px solid #ad8cf2;border-radius:8px;padding:12px 16px;color:#e2d2ff;font:inherit;cursor:pointer}.login-right #clientPasswordForm .label{margin-top:10px}.login-right #clientLoginForm button{width:100%;margin-top:18px}.login-right #clientPasswordForm .primary{width:100%;margin-top:10px}

/* The client login is a compact card. Administrator layout is intentionally unchanged. */
body.lj-login-compact{min-width:0;min-height:100vh;min-height:100dvh;overflow:auto;background:radial-gradient(ellipse at 50% 0,#2c233e 0,#11121b 58%);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
.lj-login-compact #root{width:100%;min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:28px 16px}
.lj-login-compact .app{width:100%;max-width:420px;min-height:0;height:auto;margin:0;overflow:visible;background:transparent;zoom:1}
.lj-login-compact .window,.lj-login-compact .login-left{display:none}
.lj-login-compact .login{display:block;height:auto;background:transparent}
.lj-login-compact .login-right{padding:30px;border:1px solid #4b405e;border-radius:20px;background:#1b1a27;box-shadow:0 24px 80px #0005}
.lj-login-compact .lj-login-brand{display:flex;align-items:center;gap:11px;margin-bottom:26px;color:#f5f1ff;font-size:22px;letter-spacing:.5px}
.lj-login-compact .lj-login-brand .logo{width:36px;height:36px}
.lj-login-compact .login-right h1{font-size:25px;line-height:1.4;margin-bottom:10px;letter-spacing:0}
.lj-login-compact .section-title{color:#c2afe4;font-size:11px;letter-spacing:1.6px;margin-bottom:8px}
.lj-login-compact .login-right .sub{font-size:14px;color:#bbb7cb;line-height:1.7}
.lj-login-compact .login-right .label{font-size:14px;color:#e5def1;margin:19px 0 8px;display:block}
.lj-login-compact .login-right .field{display:block;min-width:0;min-height:46px;margin:0;padding:11px 12px;font:inherit;font-size:16px;color:#f5f1ff;background:#252330;border-color:#625772}
.lj-login-compact .login-right .primary{min-height:46px;font-size:15px;font-weight:600;white-space:normal;background:#9870f6}
.lj-login-compact :is(input,button,a):focus-visible{outline:3px solid #d5bfff;outline-offset:3px}
.lj-login-compact .login-right .password-rules{font-size:13px;padding:10px 12px;margin:15px 0}
.lj-login-compact .login-right .password-field-error{font-size:13px;min-height:0;margin:5px 0 8px}
.lj-login-compact .login-right #clientLoginError:empty,.lj-login-compact .login-right #clientLoginStatus:empty{display:none}
.lj-login-compact .login-right #clientLoginStatus{margin-top:12px}
.lj-login-compact .lj-login-browse{display:block;margin-top:24px;padding-top:18px;border-top:1px solid #3c354a;text-align:center;color:#d2baff;font-size:14px;line-height:1.6}
body.lj-login-embedded{background:#1b1a27;min-height:100vh;min-height:100dvh}
.lj-login-embedded #root{min-height:0;display:block;padding:0}
.lj-login-embedded .app{max-width:none}
.lj-login-embedded .login-right{padding:24px;border:0;border-radius:0;box-shadow:none}
.lj-login-embedded .section-title{display:none}
.lj-login-compact .lj-login-icp{margin-top:16px;padding-top:8px;border-top:1px solid #4b405e;color:#c1bacd;font-size:12px;line-height:1.5;text-align:center;overflow-wrap:anywhere}
.lj-login-compact .lj-login-icp a{display:inline-block;max-width:100%;padding:6px 2px;color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(max-width:480px){.lj-login-compact #root{padding:20px 16px}.lj-login-compact .login-right{padding:24px 22px}.lj-login-embedded #root{padding:0}.lj-login-embedded .login-right{padding:20px}}

/* Inline client mount owns only this dialog subtree; it never styles the page body. */
.lj-login-mount{box-sizing:border-box;height:calc(100% - 65px);min-width:0;overflow:auto;background:#1b1a27;color:#f5f1ff;font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
.lj-login-mount *{box-sizing:border-box}.lj-login-mount .field{border:1px solid #625772;border-radius:8px}.lj-login-mount .primary{border:1px solid #ad8cf2;border-radius:8px;cursor:pointer}.lj-login-mount .login-right p{margin-top:0}.lj-login-mount .login-right .sub{margin-bottom:0}
