/* XiANGYANG V942 native login product canvas */
/* __XY_V942_NATIVE_LOGIN_CANVAS__ */
:root{--xy-navy:#0b2b60;--xy-navy-deep:#071d42;--xy-blue:#2c63c7;--xy-ink:#10213d;--xy-muted:#66778d;--xy-line:#cbd8e7;--xy-soft:#f5f8fc;--xy-green:#087d58;--xy-danger:#b63d3d;--xy-font-ui:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Noto Sans SC","Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}[hidden]{display:none!important}html,body{min-width:320px;min-height:100%;margin:0}body.xy-v940-login{min-height:100dvh;padding:24px;display:grid;place-items:center;overflow:auto;color:var(--xy-ink);background:#e9eff5;font-family:var(--xy-font-ui);-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}.login-shell{width:min(1180px,100%);min-height:690px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);overflow:hidden;border:1px solid #c4d2e2;border-radius:8px;background:#fff;box-shadow:0 22px 60px rgba(17,49,89,.14)}
.product-panel{position:relative;isolation:isolate;min-width:0;overflow:hidden;background:#dce5ee}.product-preview{position:absolute;inset:76px 0 184px;width:100%;height:calc(100% - 260px);padding:18px;object-fit:contain;object-position:center;background:#e5ebf2;filter:saturate(.9) contrast(1.01)}.brand-header{position:absolute;inset:0 0 auto;z-index:2;height:76px;padding:0 30px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(190,204,220,.92);background:rgba(255,255,255,.96)}.brand-mark{width:45px;height:45px;padding:4px;display:grid;place-items:center;border:1px solid #cfdae6;border-radius:8px;background:#fff}.brand-mark img{width:100%;height:100%;object-fit:contain;border-radius:5px}.brand-name{display:grid;gap:3px}.brand-name strong{color:var(--xy-ink);font-size:15px;line-height:1.1}.brand-name span{color:#6f8198;font-size:8px;font-weight:800}.hero-copy{position:absolute;inset:auto 0 0;z-index:2;min-height:184px;padding:27px 30px 24px;color:#fff;background:rgba(7,29,66,.96)}.hero-kicker{display:block;color:#9ebcec;font-size:8px;font-weight:800}.hero-copy h1{margin:11px 0 9px;font-size:30px;line-height:1.22;letter-spacing:0}.hero-copy p{max-width:570px;margin:0;color:#becde0;font-size:10px;line-height:1.7}.login-chain{margin-top:18px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22)}.login-chain span{position:relative;min-width:0;padding:9px 6px;border-left:1px solid rgba(255,255,255,.17);color:#b7c7dc;font-size:8px;font-weight:700;text-align:center}.login-chain span:first-child{border-left:0}.login-chain span:not(:last-child):after{content:"›";position:absolute;right:-3px;color:#82a5d2}
.login-context{position:absolute;inset:96px 22px 202px;z-index:1;overflow:hidden;border:1px solid #bdcddd;border-radius:7px;background:#fff}.lc-heading{height:56px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d2dee9;background:#f6f9fc}.lc-heading span,.lc-proceeds span{display:grid}.lc-heading small,.lc-metrics small,.lc-proceeds small{color:#77889e;font-size:7px}.lc-heading b{margin-top:4px;color:#194f9b;font-size:11px}.lc-heading em{padding:5px 8px;border-radius:999px;color:#087554;background:#e5f5ed;font-size:7px;font-style:normal;font-weight:800}.lc-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #d2dee9}.lc-metrics div{min-width:0;padding:13px 10px;border-left:1px solid #dbe4ed}.lc-metrics div:first-child{border-left:0}.lc-metrics b{display:block;margin-top:6px;overflow:hidden;color:#183b69;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.lc-metrics div:last-child b{color:#087d58}.lc-status{display:grid}.lc-status div{min-height:48px;padding:0 14px;display:grid;grid-template-columns:88px 1fr auto;gap:8px;align-items:center;border-bottom:1px solid #dce5ed}.lc-status span{color:#6f8096;font-size:8px}.lc-status b{font-size:9px}.lc-status i{color:#3567a7;font-size:8px;font-style:normal;font-weight:800}.lc-proceeds{min-height:128px;padding:0 18px;display:flex;align-items:center;justify-content:space-between;background:#edf5f1}.lc-proceeds b{margin-top:5px;color:#087d58;font-size:24px}.lc-proceeds em{color:#477461;font-size:8px;font-style:normal;font-weight:800}
.auth-panel{min-width:0;display:flex;background:#fff}.auth-inner{width:100%;max-width:480px;margin:auto;padding:42px 42px 28px}.auth-heading{margin-bottom:20px}.auth-badge{color:var(--xy-blue);font-size:8px;font-weight:800}.auth-heading h2{margin:9px 0 8px;font-size:27px;line-height:1.25;letter-spacing:0}.auth-heading p{margin:0;color:var(--xy-muted);font-size:10px;line-height:1.7}.trust-row{margin-bottom:20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #d8e2ed;border-radius:6px;background:#f7f9fc}.trust-row div{min-width:0;padding:10px 7px;border-left:1px solid #dde5ef;text-align:center}.trust-row div:first-child{border-left:0}.trust-row b,.trust-row span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trust-row b{color:#2c486b;font-size:9px}.trust-row span{margin-top:3px;color:#8794a6;font-size:7px}.error,.notice{display:none;margin:0 0 13px;padding:10px 11px;border-radius:6px;font-size:10px;line-height:1.55}.error{border:1px solid #e7bbb8;color:var(--xy-danger);background:#fff2f1}.notice{border:1px solid #b9dcc9;color:#176a49;background:#eef9f3}.error.show,.notice.show{display:block}.field{margin-bottom:13px}.field label,.secret-label{display:block;margin-bottom:6px;color:#344d6c;font-size:9px;font-weight:800}.field input{width:100%;height:45px;padding:0 12px;border:1px solid #bfcede;border-radius:6px;outline:0;color:var(--xy-ink);background:#fff;font-size:11px;transition:border-color .15s,box-shadow .15s}.field input::placeholder{color:#98a5b5}.field input:hover{border-color:#94abc4}.field input:focus{border-color:#5f88cd;box-shadow:0 0 0 3px rgba(44,99,199,.1)}.password-wrap{position:relative}.password-wrap input{padding-right:61px}.password-toggle{position:absolute;top:6px;right:6px;height:33px;min-width:46px;padding:0 8px;border:1px solid #d3deea;border-radius:5px;color:#536b87;background:#f5f8fb;font-size:8px;font-weight:800}.password-toggle:hover{color:#174b94;border-color:#a9bfd8;background:#edf4fb}.security-hint{margin:-3px 0 13px;color:#77869a;font-size:8px;line-height:1.6}.security-callout{margin:0 0 14px;padding:11px 12px;border:1px solid #c7d7e9;border-radius:6px;color:#334f72;background:#f3f7fb;font-size:9px;line-height:1.65}.success-callout{border-color:#b7d9c4;color:#23683f;background:#eff9f3}.setup-steps{display:grid;gap:4px}.setup-steps b{color:#1e477f}.secret-box{margin-bottom:11px;padding:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;border:1px solid #c7d5e4;border-radius:6px;background:#f8fafc}.secret-box code{overflow-wrap:anywhere;color:#193c75;font:11px/1.5 Consolas,monospace}.secret-box button,.secondary{min-height:32px;padding:0 11px;border:1px solid #c7d4e4;border-radius:5px;color:#35557e;background:#fff;font-size:8px;font-weight:800}.uri-box{margin-top:8px}.uri-box code{max-height:66px;overflow:auto;font-size:8px}details{margin:0 0 13px;color:#63758e;font-size:8px}summary{cursor:pointer}.mfa-code-field input{font:20px Consolas,monospace;letter-spacing:7px;text-align:center}.remember-device{margin:2px 0 13px;padding:10px 11px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;border:1px solid #cfdae8;border-radius:6px;color:#304c70;background:#f4f8fc;cursor:pointer}.remember-device input{width:16px;height:16px;margin:1px 0 0;accent-color:var(--xy-blue)}.remember-device b,.remember-device small{display:block}.remember-device b{font-size:9px}.remember-device small{margin-top:3px;color:#76869a;font-size:8px;line-height:1.55}.submit{width:100%;height:47px;margin-top:4px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--xy-blue);border-radius:6px;color:#fff;background:var(--xy-blue);box-shadow:0 9px 22px rgba(44,99,199,.2);font-size:10px;font-weight:800;transition:background .15s,transform .15s}.submit:hover{transform:translateY(-1px);background:#214f9e}.submit:disabled{cursor:wait;opacity:.74;transform:none;box-shadow:none}.submit-arrow{font-size:14px}.submit:hover .submit-arrow{transform:translateX(2px)}.submit.loading .submit-arrow{width:13px;height:13px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;font-size:0;animation:xy-v940-spin .75s linear infinite}.secondary{width:100%;margin-bottom:8px}.recovery-download{width:100%;min-height:42px;margin:0 0 8px;padding:0 12px;border:1px solid #267848;border-radius:6px;color:#fff;background:#2f8555;font-size:9px;font-weight:800}.recovery-details{margin:4px 0 8px;padding:10px 11px;border:1px solid #d6e1ec;border-radius:6px;background:#f8fafc}.recovery-details summary{color:#3d587d;font-weight:800}.recovery-codes{margin:10px 0 0;padding:12px 12px 12px 34px;column-count:2;column-gap:26px;border:1px dashed #9eb2cd;border-radius:6px;color:#183c74;background:#fff;font:700 11px/1.8 Consolas,monospace}.recovery-codes li{padding-left:2px;break-inside:avoid}.recovery-codes code{white-space:nowrap}.recovery-hint{margin:0 0 12px;color:#7b8798;font-size:8px;line-height:1.6}.auth-footer{margin-top:23px;padding-top:14px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;border-top:1px solid #e5ebf2;color:#94a0b0;font-size:7px}.auth-footer>div{display:grid;gap:4px}.auth-footer a{color:#6f84a1;text-decoration:none}.auth-footer a:hover{color:var(--xy-blue)}.version{max-width:190px;text-align:right;line-height:1.5}@keyframes xy-v940-spin{to{transform:rotate(360deg)}}
@media(max-width:980px){body.xy-v940-login{padding:16px;align-items:start}.login-shell{width:min(100%,820px);min-height:0;margin:auto;grid-template-columns:1fr}.product-panel{min-height:270px}.login-context{display:none}.product-preview{inset:0;width:100%;height:100%;padding:0;object-fit:cover;object-position:center 32%}.brand-header{height:64px;padding:0 25px}.brand-mark{width:42px;height:42px}.hero-copy{min-height:138px;padding:20px 25px 18px}.hero-copy h1{margin:8px 0 7px;font-size:25px}.hero-copy br{display:none}.login-chain{margin-top:13px}.auth-inner{max-width:610px;padding:34px 40px 30px}}
@media(max-width:620px){body.xy-v940-login{min-height:100dvh;padding:0;background:#fff}.login-shell{min-height:100dvh;grid-template-rows:162px auto;border:0;border-radius:0;box-shadow:none}.product-panel{min-height:162px;background:#0b2b60}.product-preview{display:none}.brand-header{height:54px;padding:0 18px}.brand-mark{width:37px;height:37px}.brand-name strong{font-size:13px}.brand-name span{font-size:7px}.hero-copy{min-height:108px;padding:15px 19px}.hero-kicker{font-size:7px}.hero-copy h1{margin:7px 0 0;font-size:20px}.hero-copy p,.login-chain{display:none}.auth-inner{padding:27px 21px calc(22px + env(safe-area-inset-bottom,0))}.auth-heading h2{font-size:23px}.trust-row span{display:none}.trust-row div{padding:9px 3px}.field input{font-size:16px}.submit,.secondary,.recovery-download{min-height:46px}.auth-footer{align-items:flex-start;flex-direction:column}.version{text-align:left}}
@media(max-height:760px) and (min-width:981px){body.xy-v940-login{padding:12px}.login-shell{min-height:660px}.auth-inner{padding-top:28px;padding-bottom:22px}.hero-copy{min-height:170px;padding-top:22px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* XiANGYANG V944 refined public brand context */
/* __XY_V944_PUBLIC_BRAND_CONTEXT_REFINED__ */
body.xy-v943-login{background:#e9eff5}
body.xy-v943-login .login-shell{grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr)}
body.xy-v943-login .product-panel{padding:36px 40px 30px;display:flex;flex-direction:column;color:#fff;background:#0b2b60}
body.xy-v943-login .product-panel:before{content:"";position:absolute;inset:0;z-index:-1;border:1px solid rgba(255,255,255,.05);pointer-events:none}
body.xy-v943-login .brand-header{position:static;height:auto;padding:0;gap:13px;border:0;background:transparent}
body.xy-v943-login .brand-mark{width:49px;height:49px;padding:4px;border:0;background:#fff}
body.xy-v943-login .brand-name strong{color:#fff;font-size:16px}
body.xy-v943-login .brand-name span{color:#91acd0;font-size:8px}
body.xy-v943-login .hero-copy{position:static;min-height:0;margin-top:42px;padding:0;color:#fff;background:transparent}
body.xy-v943-login .hero-kicker{color:#9db9df;font-size:8px}
body.xy-v943-login .hero-copy h1{margin:15px 0 13px;font-size:38px;line-height:1.22}
body.xy-v943-login .hero-copy p{max-width:610px;color:#b9c9df;font-size:11px;line-height:1.8}
body.xy-v943-login .capability-list{margin-top:30px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}
body.xy-v943-login .capability-list article{min-width:0;min-height:137px;padding:18px 14px;display:block;border-left:1px solid rgba(255,255,255,.18)}
body.xy-v943-login .capability-list article:first-child{border-left:0}
body.xy-v943-login .capability-list article>span{width:31px;height:31px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);border-radius:6px;color:#fff;font-size:8px;font-weight:800}
body.xy-v943-login .capability-list h3{margin:15px 0 6px;color:#fff;font-size:10px;line-height:1.45}
body.xy-v943-login .capability-list p{margin:0;color:#9fb4d0;font-size:8px;line-height:1.6}
body.xy-v943-login .workflow-strip{margin-top:auto;padding-top:24px;display:flex;align-items:center;gap:10px;color:#c0cee1;font-size:8px;font-weight:800}
body.xy-v943-login .workflow-strip i{position:relative;width:30px;height:1px;background:#55749c}
body.xy-v943-login .workflow-strip i:after{content:"";position:absolute;top:-2px;right:0;width:5px;height:5px;border-top:1px solid #7e9cc2;border-right:1px solid #7e9cc2;transform:rotate(45deg)}
@media(max-width:980px){body.xy-v943-login .login-shell{grid-template-columns:1fr}body.xy-v943-login .product-panel{min-height:255px;padding:24px 30px 22px}body.xy-v943-login .brand-header{height:auto;padding:0}body.xy-v943-login .hero-copy{min-height:0;margin-top:25px;padding:0}body.xy-v943-login .hero-copy h1{margin:10px 0 8px;font-size:25px}body.xy-v943-login .capability-list{display:none}body.xy-v943-login .workflow-strip{padding-top:18px}}
@media(max-width:620px){body.xy-v943-login .login-shell{grid-template-rows:172px auto}body.xy-v943-login .product-panel{min-height:172px;padding:17px 19px 15px}body.xy-v943-login .brand-header{height:auto;padding:0}body.xy-v943-login .brand-mark{width:38px;height:38px}body.xy-v943-login .hero-copy{margin-top:17px;padding:0}body.xy-v943-login .hero-copy h1{margin:7px 0 0;font-size:20px}body.xy-v943-login .hero-copy p,body.xy-v943-login .workflow-strip{display:none}}
@media(max-width:620px){body.xy-v944-login .hero-copy h1 br{display:block}}

/* XiANGYANG V945 complete login business journey */
/* __XY_V945_LOGIN_COMPLETE_BUSINESS_JOURNEY__ */
body.xy-v945-login .workflow-strip{gap:7px;justify-content:space-between}
body.xy-v945-login .workflow-strip span{white-space:nowrap}
body.xy-v945-login .workflow-strip i{width:auto;min-width:10px;max-width:30px;flex:1}

/* XiANGYANG V946 unified login business journey */
/* __XY_V946_LOGIN_UNIFIED_BUSINESS_JOURNEY__ */
body.xy-v946-login .hero-copy{margin-top:34px}
body.xy-v946-login .journey-map{margin-top:27px;border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22)}
body.xy-v946-login .journey-map-head{min-height:53px;padding:0 2px;display:flex;align-items:center;justify-content:space-between;gap:18px}
body.xy-v946-login .journey-map-head span{color:#92afd5;font-size:7px;font-weight:800}
body.xy-v946-login .journey-map-head b{color:#fff;font-size:11px}
body.xy-v946-login .journey-groups{display:grid;grid-template-columns:1.2fr .9fr .9fr;border-top:1px solid rgba(255,255,255,.14)}
body.xy-v946-login .journey-groups section{position:relative;min-width:0;min-height:180px;padding:17px 16px 14px;border-left:1px solid rgba(255,255,255,.17)}
body.xy-v946-login .journey-groups section:first-child{padding-left:2px;border-left:0}
body.xy-v946-login .journey-groups section:last-child{padding-right:2px}
body.xy-v946-login .journey-groups section:not(:last-child):after{content:"";position:absolute;top:31px;right:-4px;z-index:1;width:7px;height:7px;border-top:1px solid #7393bd;border-right:1px solid #7393bd;transform:rotate(45deg)}
body.xy-v946-login .journey-groups small{display:block;color:#7f9ec7;font-size:6px;font-weight:800}
body.xy-v946-login .journey-groups h3{margin:6px 0 13px;color:#fff;font-size:11px}
body.xy-v946-login .journey-groups ol{margin:0;padding:0;display:grid;gap:10px;list-style:none}
body.xy-v946-login .journey-groups li{min-width:0;display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start}
body.xy-v946-login .journey-groups li>b{width:24px;height:24px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.23);border-radius:5px;color:#d9e6f6;font-size:7px}
body.xy-v946-login .journey-groups li span,body.xy-v946-login .journey-groups li strong,body.xy-v946-login .journey-groups li em{display:block;min-width:0}
body.xy-v946-login .journey-groups li strong{color:#fff;font-size:9px;line-height:1.45}
body.xy-v946-login .journey-groups li em{margin-top:2px;color:#8fa8c9;font-size:7px;font-style:normal;line-height:1.45}
@media(max-width:980px){body.xy-v946-login .hero-copy{margin-top:25px}body.xy-v946-login .journey-map{display:none}}

/* XiANGYANG V947 unified public entry */
/* __XY_V947_UNIFIED_PUBLIC_ENTRY__ */
body.xy-v947-login .journey-groups section{min-height:174px;padding-top:16px}
body.xy-v947-login .journey-groups section>h3{margin-bottom:4px}
body.xy-v947-login .journey-groups section>p{min-height:25px;margin:0 0 10px;color:#8fa8c9;font-size:7px;line-height:1.55}
body.xy-v947-login .journey-groups ol{gap:0;border-top:1px solid rgba(255,255,255,.13)}
body.xy-v947-login .journey-groups li{min-height:31px;padding:7px 0;grid-template-columns:23px minmax(0,1fr);gap:7px;align-items:center;border-bottom:1px solid rgba(255,255,255,.11)}
body.xy-v947-login .journey-groups li>b{width:auto;height:auto;border:0;border-radius:0;color:#7898c2;font-size:7px}
body.xy-v947-login .journey-groups li>strong{color:#fff;font-size:9px;line-height:1.45}
