.login-shell[data-jiayou="ready"]{box-sizing:border-box;min-height:100vh;padding:48px;display:grid;grid-template-columns:minmax(360px,1fr) minmax(380px,.84fr);align-items:stretch;gap:0;background:#f3f5f1;font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;max-width:none}
.login-shell[data-jiayou="ready"] .jy-brand-panel{box-sizing:border-box;position:relative;overflow:hidden;background:#104638;color:#fff;border-radius:24px 0 0 24px;min-height:640px;padding:50px 58px;display:flex;flex-direction:column}
.jy-brand-panel::after{content:"";position:absolute;pointer-events:none;right:-120px;bottom:50px;width:420px;height:420px;border:1px solid #ffffff16;transform:rotate(45deg);border-radius:40px;box-shadow:0 0 0 70px #ffffff04,0 0 0 140px #ffffff03}
.jy-logo{width:218px;max-width:75%;position:relative;z-index:1}.jy-logo svg{display:block;width:100%;height:auto}.jy-brand-type{font-size:13px;letter-spacing:3px;margin-top:18px;color:#d6e8df}.jy-brand-type span{opacity:.4;margin:0 4px}
.jy-story{margin:auto 0;padding:62px 0;position:relative;z-index:1}.jy-overline{font-size:11px;letter-spacing:3px;color:#b8d6c8;margin:0 0 24px}.jy-story h2{font-size:clamp(40px,4.5vw,68px);line-height:1.3;font-weight:600;letter-spacing:3px;margin:0 0 26px;color:#fff}.jy-description{font-size:16px;line-height:1.9;color:#c7ddd2;margin:0}.jy-panel-foot{border-top:1px solid #ffffff26;padding-top:22px;display:flex;gap:16px;justify-content:space-between;font-size:11px;color:#b8cfc3;letter-spacing:1px;position:relative;z-index:1}
.login-shell[data-jiayou="ready"] .login-card{box-sizing:border-box;width:100%;max-width:none;border:0;border-radius:0 24px 24px 0;box-shadow:none;background:#fff;padding:85px clamp(36px,5vw,90px);display:flex;flex-direction:column;justify-content:center;align-self:stretch;margin:0;color:#203c32}
.login-shell[data-jiayou="ready"] .login-kicker{font-size:13px;font-weight:600;letter-spacing:1px;color:#31705a;margin-bottom:23px}
.login-shell[data-jiayou="ready"] .login-card h1{font-size:32px;line-height:1.4;letter-spacing:1px;margin:0 0 13px;color:#183b2d}
.login-shell[data-jiayou="ready"] .login-card>p{font-size:14px;color:#77847d;line-height:1.8;margin:0 0 34px}
.login-shell[data-jiayou="ready"] form{display:grid;gap:22px;margin:0}
.login-shell[data-jiayou="ready"] label{display:grid;gap:10px;font-size:13px;font-weight:500;color:#365144}
.login-shell[data-jiayou="ready"] input{box-sizing:border-box;width:100%;height:52px;border:1px solid #dce4dd;border-radius:8px;background:#f9fbf8;padding:12px 15px;font-size:16px;color:#203c32;outline:none;transition:border-color .15s,box-shadow .15s}
.login-shell[data-jiayou="ready"] input:focus{border-color:#2c7158;box-shadow:0 0 0 3px #dfeee5;background:#fff}
.login-shell[data-jiayou="ready"] button.primary{border:0;border-radius:8px;min-height:52px;background:#155b43;color:#fff;font-size:15px;letter-spacing:2px;font-weight:600;margin-top:8px;cursor:pointer}
.login-shell[data-jiayou="ready"] button.primary:hover{background:#104638}.login-shell[data-jiayou="ready"] button:focus-visible{outline:3px solid #89bca0;outline-offset:3px}.login-shell[data-jiayou="ready"] button:disabled{opacity:.55;cursor:wait}
.login-shell[data-jiayou="ready"] .login-card>small{font-size:11px;line-height:1.7;color:#89968f;border-top:1px solid #edf1ec;padding-top:24px;margin-top:38px;text-align:center}.login-shell[data-jiayou="ready"] .error-message{color:#b42318;font-size:13px;line-height:1.6;margin:0}.login-shell[data-jiayou="ready"] .migration-info{margin-bottom:20px}
@media(min-width:1600px){.login-shell[data-jiayou="ready"]{padding:72px max(72px,calc((100vw - 1440px)/2));}}
@media(max-width:850px){.login-shell[data-jiayou="ready"]{padding:24px;grid-template-columns:1fr}.login-shell[data-jiayou="ready"] .jy-brand-panel{min-height:0;padding:28px;border-radius:18px 18px 0 0}.jy-logo{width:174px}.jy-brand-type{font-size:11px;margin-top:12px;letter-spacing:2px}.jy-story{padding:30px 0 6px}.jy-overline,.jy-description,.jy-panel-foot{display:none}.jy-story h2{font-size:30px;line-height:1.4;margin:0;letter-spacing:2px}.jy-story h2 br{display:none}.login-shell[data-jiayou="ready"] .login-card{padding:36px 28px;border-radius:0 0 18px 18px}.login-shell[data-jiayou="ready"] .login-card h1{font-size:27px}.login-shell[data-jiayou="ready"] .login-kicker{margin-bottom:12px}.login-shell[data-jiayou="ready"] .login-card>p{margin-bottom:25px}.login-shell[data-jiayou="ready"] .login-card>small{margin-top:27px}}
@media(max-width:420px){.login-shell[data-jiayou="ready"]{padding:14px}.login-shell[data-jiayou="ready"] .login-card{padding:32px 24px}.login-shell[data-jiayou="ready"] .jy-brand-panel{padding:24px}}

/* JY_LOGIN_LAYOUT_FIX_V1 */
.login-shell[data-jiayou="ready"]{justify-items:stretch}
.login-shell[data-jiayou="ready"] > .jy-brand-panel{width:100%;min-width:0;max-width:none;inset:auto;gap:0;border:0;z-index:auto;box-shadow:none;justify-self:stretch;align-self:stretch}

/* JY_LOGIN_VIEWPORT_FIX_V2 */
.login-shell[data-jiayou="ready"]{min-height:100vh;min-height:100svh;height:auto;align-content:center;padding-top:24px;padding-bottom:24px}
.login-shell[data-jiayou="ready"] .login-card label{margin:0}
.login-shell[data-jiayou="ready"] .login-card form>button{margin:8px 0 0}
@media(min-width:851px){
.login-shell[data-jiayou="ready"] > .jy-brand-panel{min-height:0;padding:40px 56px}
.login-shell[data-jiayou="ready"] .login-card{padding:40px 56px}
.login-shell[data-jiayou="ready"] .jy-logo{width:190px}
.login-shell[data-jiayou="ready"] .jy-story{padding:28px 0}
.login-shell[data-jiayou="ready"] .jy-overline{margin-bottom:16px}
.login-shell[data-jiayou="ready"] .jy-story h2{font-size:48px;line-height:1.25;margin-bottom:20px}
.login-shell[data-jiayou="ready"] .jy-description{font-size:15px;line-height:1.7}
.login-shell[data-jiayou="ready"] .login-card>small{margin-top:26px;padding-top:20px}
}
@media(min-width:851px) and (max-height:700px){
.login-shell[data-jiayou="ready"]{padding-top:16px;padding-bottom:16px}
.login-shell[data-jiayou="ready"] > .jy-brand-panel,.login-shell[data-jiayou="ready"] .login-card{padding:28px 40px}
.login-shell[data-jiayou="ready"] .jy-story{padding:16px 0}
.login-shell[data-jiayou="ready"] .jy-story h2{font-size:40px}
.login-shell[data-jiayou="ready"] .login-card>p{margin-bottom:24px}
}
@media(max-width:850px){
.login-shell[data-jiayou="ready"]{padding:14px}
.login-shell[data-jiayou="ready"] > .jy-brand-panel{min-height:0}
.login-shell[data-jiayou="ready"] .login-card{padding-top:28px;padding-bottom:28px}
}
