:root{color-scheme:light;--green:#1b4038;--gold:#c4b276;--ink:#203c36;--muted:#87917f;--line:#e3e7dc;font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:#f6f8f1;color:var(--ink)}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}.login-layout{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:minmax(360px,44%) minmax(0,1fr)}.login-intro{background:var(--green);color:#fff;position:relative;display:flex;flex-direction:column;padding:56px 13% 37px;overflow:hidden}.login-intro:after{content:"";pointer-events:none;position:absolute;width:500px;height:500px;border:1px solid #c4b27617;border-radius:50%;bottom:-285px;right:-210px;box-shadow:0 0 0 80px #c4b27607,0 0 0 160px #c4b27604}.brand{display:flex;align-items:center;gap:17px}.brand svg{width:44px;height:49px;flex:none;color:var(--gold)}.brand-name{font-size:27px;letter-spacing:3px;font-weight:600;line-height:1.6;overflow-wrap:anywhere}.brand-sub{font-size:10px;color:#c5cfbc;line-height:1.9;letter-spacing:1px;overflow-wrap:anywhere}.intro-copy{margin:auto 0;padding:100px 0}.eyebrow{font-size:10px;letter-spacing:3px;color:#929e82}.intro-copy .eyebrow{color:#bdc7aa}.intro-copy h1{font-size:clamp(26px,2.6vw,40px);font-weight:500;line-height:1.65;letter-spacing:1px;margin:24px 0}.intro-copy p{font-size:12px;line-height:2.2;color:#c2cfbe}.intro-foot{font-size:10px;letter-spacing:2px;color:#c3c9a7;margin:0}.login-panel{display:flex;justify-content:center;align-items:center;padding:72px 45px}.login-card{width:100%;max-width:364px}.login-card h2{margin:17px 0 12px;font-weight:600;font-size:26px;line-height:1.5}.login-description{font-size:12px;color:var(--muted);line-height:1.9;margin:0 0 31px}.session-status{font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 20px}.session-status:empty{display:none}.field{margin:0 0 22px}.field label{display:block;margin-bottom:10px;font-size:12px}.field input{width:100%;background:#fff;border:1px solid #dbe2d3;border-radius:7px;min-height:48px;padding:12px 14px;color:var(--ink);font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}.field input:focus{border-color:#6d8a6a;box-shadow:0 0 0 3px #8eaa6c20}.password-wrap{position:relative}.password-wrap input{padding-right:64px}.password-toggle{position:absolute;right:5px;top:5px;bottom:5px;padding:0 12px;cursor:pointer;border:0;border-radius:4px;background:transparent;color:#718568;font-size:11px}.password-toggle:hover{background:#f1f5eb}.password-toggle:focus-visible,.client-link:focus-visible{outline:2px solid #617fba;outline-offset:3px}.form-error{font-size:12px;color:#b24e35;background:#fff0e8;border-radius:6px;line-height:1.9;padding:10px 12px;margin:0 0 19px;white-space:pre-line;overflow-wrap:anywhere}.form-error:empty{display:none}.login-submit{width:100%;min-height:48px;display:flex;justify-content:space-between;align-items:center;padding:13px 17px;border:1px solid #245649;border-radius:7px;background:#285b4e;color:white;font-size:13px;cursor:pointer;transition:background .15s}.login-submit:hover{background:#1e493e}.login-submit:focus-visible{outline:3px solid #a6bca1;outline-offset:3px}.login-submit:disabled{opacity:.65;cursor:wait}.login-note{font-size:10px;color:#98a18d;line-height:1.9;margin:24px 0 27px;display:flex;align-items:flex-start;gap:8px}.login-note svg{flex:none;width:14px;height:14px;margin-top:2px}.client-link{display:flex;align-items:center;justify-content:space-between;font-size:11px;text-decoration:none;color:#6e8265;border-top:1px solid var(--line);padding-top:22px}.client-link:hover{color:var(--green)}@media(max-width:760px){.login-layout{display:block}.login-intro{padding:25px 28px 28px}.brand{gap:12px}.brand svg{width:32px;height:36px}.brand-name{font-size:22px;letter-spacing:2px}.brand-sub{font-size:9px}.intro-copy{padding:31px 0 0}.intro-copy .eyebrow{display:none}.intro-copy h1{font-size:25px;line-height:1.6;margin:0}.intro-copy h1 br{display:none}.intro-copy p,.intro-foot{display:none}.login-panel{padding:40px 28px 45px}.login-card{max-width:400px}.login-card h2{font-size:24px}.login-description{margin-bottom:26px}}
