.login-page{place-items:center;min-height:100svh;display:grid}.login-shell{border:1px solid var(--line);background:#fff;border-radius:32px;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);width:min(1080px,100%);min-height:690px;display:grid;overflow:hidden}.login-brand{color:#fff;background:var(--ink);flex-direction:column;justify-content:space-between;padding:44px 48px 36px;display:flex;position:relative;overflow:hidden}.login-wordmark{color:inherit;font:400 25px var(--font-serif);letter-spacing:.28em;align-items:baseline;gap:14px;text-decoration:none;display:flex}.login-wordmark span{color:var(--gold-on-dark);font:500 12px var(--font-sans);letter-spacing:.2em}.login-kicker{background:var(--chip);color:var(--ink);letter-spacing:.08em;border-radius:999px;align-items:center;gap:8px;margin:0 0 20px;padding:5px 12px;font-size:12px;font-weight:500;display:inline-flex}.login-kicker:before{content:"";background:currentColor;border-radius:50%;width:4px;height:4px}.login-brand .login-kicker{background:var(--chip-on-dark);color:#fff}.login-brand h1{font:400 clamp(36px, 4.4vw, 56px)/1.3 var(--font-serif);margin:0}.login-brand h1 span{color:var(--gold-on-dark)}.login-brand-copy>p:last-child{color:#fffc;margin:25px 0 0;font-size:16px;line-height:1.85}.login-brand-foot{color:#ffffffa6;letter-spacing:.08em;margin:0;font-size:12px}.login-card{align-self:center;padding:48px 44px 30px}.login-card h2{color:var(--ink);font:400 36px/1.3 var(--font-serif);margin:0}.login-intro{color:var(--muted);margin:12px 0 30px;font-size:14px;line-height:1.8}#login-form{gap:10px;display:grid}#login-form>label:not(.remember-field){color:var(--ink);font-size:12px}#login-form input:not([type=checkbox]){border:1px solid var(--line-strong);width:100%;min-width:0;height:48px;color:var(--ink);font:14px var(--font-sans);background:#fff;border-radius:12px;padding:12px 14px}#login-form input:not([type=checkbox]):focus{border-color:var(--ink);outline:none}#username{margin-bottom:10px}.password-field{position:relative}#login-form #password{padding-right:64px}#toggle-password{color:var(--muted);font:12px var(--font-sans);cursor:pointer;background:0 0;border:0;padding:0 10px;position:absolute;inset:0 6px 0 auto}#login-form .remember-field{color:var(--muted);cursor:pointer;align-items:center;gap:8px;margin:9px 0 14px;font-size:12px;display:flex}.remember-field input{width:16px;height:16px;accent-color:var(--ink);margin:0}.remember-field span{color:var(--muted);margin-left:auto;font-size:12px}.login-primary,.login-wechat{width:100%;min-height:48px;font:500 14px var(--font-sans);letter-spacing:.025em;cursor:pointer;transition:background-color 1s var(--ease), border-color 1s var(--ease), color 1s var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:12px 22px;display:flex}.login-primary{color:#fff;background:var(--navy);border:1px solid var(--navy);justify-content:space-between}.login-primary:hover{background:var(--ink);border-color:var(--ink)}.login-primary:disabled{opacity:.65;cursor:wait}.login-status{min-height:20px;color:var(--muted);margin:10px 0;font-size:12px;line-height:1.6}.login-status.is-error{color:#b91c1c}.login-divider{color:var(--muted);align-items:center;gap:12px;margin:12px 0 18px;font-size:12px;display:flex}.login-divider:before,.login-divider:after{content:"";border-top:1px solid var(--line);flex:1}.login-wechat{border:1px solid var(--ink);color:var(--ink);background:0 0}.login-wechat:hover:not(:disabled){background:var(--ink);color:#fff}.login-wechat svg{width:24px;height:24px}.login-wechat:disabled{color:var(--muted);border-color:var(--line-strong);background:var(--cream);cursor:default}.wechat-note{min-height:18px;color:var(--muted);text-align:center;margin:10px 0 0;font-size:12px;line-height:1.7}.login-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:30px;padding-top:20px;font-size:12px;display:flex}.login-page :focus-visible{outline:2px solid var(--gold);outline-offset:3px}@media (max-width:760px){body.login-page{padding:16px}.login-shell{border-radius:24px;grid-template-columns:minmax(0,1fr);max-width:480px;min-height:0}.login-brand{gap:24px;padding:24px 26px}.login-brand h1{font-size:30px;line-height:1.3}.login-brand-copy>p,.login-brand-foot{display:none}.login-brand .login-kicker{margin-bottom:12px}.login-card{padding:30px 26px 24px}.login-card h2{font-size:30px}.login-intro{margin-bottom:24px}}
