:root{color-scheme:light;font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:#203532;background:#f5f7f6}*{box-sizing:border-box}body{margin:0}a{color:#14796b;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #93d8bf;outline-offset:3px}[hidden]{display:none!important}.login-shell{min-height:100svh;display:grid;grid-template-columns:minmax(430px,1fr) minmax(460px,1fr)}.welcome{background:#102d29;color:#f6f9f5;padding:48px 9%;position:relative;overflow:hidden;display:flex;flex-direction:column}.brand{color:inherit;display:flex;align-items:center;gap:12px;font-size:20px;font-weight:650;letter-spacing:1px}.brand-mark{width:35px;height:35px;background:#cbe6a1;color:#173e33;display:grid;place-items:center;border-radius:10px;font-size:24px;letter-spacing:-4px;padding-right:4px;font-weight:800}.welcome-copy{margin-top:clamp(55px,11vh,120px);z-index:1}.eyebrow{font-size:11px;letter-spacing:3px;color:#a9c3b7}.welcome h1{font-size:clamp(35px,3.25vw,54px);line-height:1.35;font-weight:550;letter-spacing:1px;margin:22px 0}.welcome-copy>p:last-child{font-size:16px;line-height:1.9;color:#a9c3b7}.orbit{position:relative;height:300px;width:100%;max-width:440px;align-self:center;margin:20px 0}.orbit-line{width:270px;height:270px;border:1px solid #45655b;border-radius:50%;position:absolute;left:50%;top:14px;transform:translateX(-50%)}.orbit-line:after{content:"";position:absolute;inset:40px;border:1px dashed #45655b;border-radius:50%}.orbit-card{position:absolute;border:1px solid #4f6b5d;background:#25483d;border-radius:12px;padding:16px 20px;font-size:15px;box-shadow:0 16px 40px #091e2233;z-index:2}.orbit-card span{display:block;margin-top:7px;font-size:11px;color:#b3cbbb}.orbit-data{top:3px;left:0;transform:rotate(-6deg)}.orbit-canvas{top:95px;right:0;transform:rotate(6deg);background:#d7e6bb;color:#183c31}.orbit-canvas span{color:#4f674c}.orbit-knowledge{bottom:0;left:35px;transform:rotate(-2deg)}.orbit-center{position:absolute;left:45%;top:41%;font-size:48px;font-weight:800;color:#b7d28e;letter-spacing:-8px;opacity:.7}.welcome-foot{font-size:10px;letter-spacing:3px;color:#729b8c;margin-top:auto}.login-side{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:38px 30px;min-width:0}.login-card{width:100%;max-width:430px;padding:34px 34px 0}.card-top{color:#74847e;font-size:12px;display:flex;align-items:center;gap:8px}.status-dot{background:#399779;width:6px;height:6px;border-radius:50%}.login-card h2{font-size:31px;font-weight:600;letter-spacing:1px;margin:16px 0 10px}.intro{color:#72827c;font-size:14px;line-height:1.8;margin:0 0 28px}.login-tabs{display:flex;background:#e9eeeb;border-radius:10px;padding:4px;margin:22px 0 28px}.login-tabs button{border:0;padding:10px;border-radius:7px;background:transparent;flex:1;font-size:13px;color:#74847e}.login-tabs button[aria-selected=true]{background:white;box-shadow:0 2px 5px #182e2910;color:#203b33;font-weight:600}#qr-panel{text-align:center}.ding-icon{width:38px;height:38px;margin:auto;background:#0868ff;color:white;border-radius:11px}.ding-icon svg{width:100%;height:100%}h3{font-size:17px;font-weight:600;margin:15px 0 6px}.qr-caption{font-size:12px;color:#75847e;margin:0 0 14px}.dingtalk-authorize{display:block;width:300px;max-width:100%;margin:16px auto 0;border-radius:9px;background:#0868ff;color:white;padding:13px 10px;font-size:14px;font-weight:600;line-height:1.5}.dingtalk-authorize:hover{background:#075cdd}.authorize-hint{font-size:11px;color:#75847e;line-height:1.7;margin:9px 0 16px}.login-divider{display:flex;align-items:center;gap:12px;margin:18px auto;color:#84918b;font-size:11px;max-width:300px}.login-divider:before,.login-divider:after{content:"";height:1px;background:#dfe7e2;flex:1}.qr-host{width:300px;height:300px;max-width:100%;margin:0 auto;background:white;border:1px solid #e4eae7;border-radius:16px;overflow:hidden;display:grid;place-items:center}.qr-host iframe{display:block;max-width:100%;border:0}.qr-status{font-size:12px;color:#74847e;line-height:1.65;min-height:20px;margin:10px 0 3px}.qr-status.error-text{color:#a44f34}.qr-controls{display:flex;justify-content:center;gap:18px;min-height:21px;font-size:12px}.text-button{border:0;background:transparent;color:#14796b;padding:0;font-size:12px}.remember{display:flex;gap:9px;align-items:center;font-size:12px;line-height:1.6;margin:24px 0 9px}#qr-panel .remember{justify-content:center}.remember input{accent-color:#14796b;width:15px;height:15px;margin:0}.hint{font-size:11px;color:#84918b;line-height:1.8;margin:8px 0 18px}.field{display:block;font-size:13px;margin:20px 0 8px}input[type=text],input[type=password]{width:100%;border:1px solid #d3ded7;border-radius:9px;padding:12px 13px;background:white;font-size:14px}.primary-button,.secondary-button{display:block;border:0;border-radius:9px;background:#167c69;color:white;padding:12px 18px;width:100%;font-size:14px}.secondary-button{background:#e5eee8;color:#235e4b;font-size:12px}.error{background:#fff0e8;color:#984924;border-radius:8px;padding:12px;font-size:13px;line-height:1.7}.login-error{margin:0 0 20px}.login-error p{margin:5px 0 0}.foot{border-top:1px solid #e3e9e5;margin-top:25px;padding:20px 0;color:#819087;font-size:11px;line-height:1.8;text-align:center}.page-foot{color:#9aa49d;font-size:10px;letter-spacing:1px;margin:24px 0 0}.local-state{font-size:12px;color:#7a8c83;line-height:1.8;padding:25px}.local-state strong{display:block;color:#385c4b;font-size:16px;margin-top:17px}.local-badge{display:inline-block;background:#eff4e9;color:#5b7543;border-radius:5px;padding:3px 9px;font-size:11px}.dev-tools{text-align:left;border-top:1px dashed #dce5de;padding-top:12px;font-size:11px;color:#718375;margin-top:20px}.dev-tools summary{cursor:pointer}.dev-tools p{line-height:1.7}@media(min-width:1550px){.login-card{max-width:475px;padding:44px}.welcome{padding-left:14%}}@media(max-width:820px){.login-shell{grid-template-columns:1fr}.welcome{padding:24px 28px;min-height:0}.welcome-copy,.orbit,.welcome-foot{display:none}.brand{font-size:18px}.login-side{padding:20px 12px 30px}.login-card{padding:8px;max-width:430px}.login-card h2{font-size:27px}.login-tabs{margin-bottom:20px}.intro{margin-bottom:20px}.qr-host{height:280px;width:280px}.foot{margin-top:20px}.page-foot{margin-top:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Keep the original welcome illustration and palette; adapt only the login controls. */
.login-card{max-width:620px;padding:26px 24px 0}
.login-options{display:grid;grid-template-columns:280px minmax(180px,1fr);gap:20px;align-items:start}
.mock-options{display:flex;justify-content:center}
.qr-host{width:280px;height:280px;border-radius:14px}
.qr-controls{align-items:center;gap:14px;min-height:28px;margin-top:5px;font-size:11px;color:#74847e}
.qr-controls .text-button{font-size:11px;padding:6px 0}
.account-option{height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid #d9e4dd;border-radius:14px;background:#edf3ee;padding:20px 15px}
.account-symbol{width:58px;height:58px;color:#14796b;background:#dfece3;border-radius:16px;display:grid;place-items:center;margin-bottom:13px}
.account-symbol svg{width:45px;height:45px}
.account-option h3{font-size:16px;font-weight:600;margin:0 0 8px}
.account-option .authorize-hint{font-size:12px;color:#72827c;line-height:1.8;margin:0 0 18px}
.account-option .dingtalk-authorize{width:auto;min-height:44px;margin:0;padding:11px 18px;font-size:13px}
.qr-status{margin:8px 0 12px}
#qr-panel .remember{margin:14px 0 4px}
#qr-panel .hint{margin:4px 0 18px}
.unavailable{font-size:13px;line-height:1.8;color:#74847e;text-align:center;padding:26px 0 35px}
@media(min-width:1550px){.login-card{max-width:660px;padding:34px}}
@media(min-width:821px) and (max-width:1199px),(max-width:620px){
.login-options{grid-template-columns:1fr;gap:12px}
.account-option{height:auto;min-height:108px;max-width:280px;width:100%;margin:auto;padding:14px}
.account-symbol{display:none}
.account-option h3{font-size:14px;margin-bottom:5px}
.account-option .authorize-hint{font-size:11px;margin-bottom:10px}
.account-option .authorize-hint br{display:none}
.account-option .dingtalk-authorize{width:100%;padding:11px 12px}
}
@media(max-width:820px){.login-card{max-width:620px;padding:8px}}
