.login-page{background:radial-gradient(circle at 12% 20%,#fff2f1,#0000 55%),radial-gradient(circle at 88% 80%,#fff6ef,#0000 50%),linear-gradient(#fdf7f7,#f7f7f8);min-height:calc(100vh - 120px);padding:50px 0 70px}.login-wrap{justify-content:space-between;align-items:center;gap:60px;min-height:520px;display:flex}.brand-side{flex:1;max-width:560px}.brand-logo{align-items:center;gap:16px;display:flex}.brand-logo .logo-mark{color:#fff;background:linear-gradient(135deg,#d3292c,#b42023);border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;font-size:34px;font-weight:700;display:flex;box-shadow:0 10px 24px #b4202340}.brand-logo .logo-text .name{color:#232323;font-size:30px;font-weight:700;line-height:1.2}.brand-logo .logo-text .slogan{color:#8b8b8b;letter-spacing:1px;padding-top:4px;font-size:15px}.brand-points{flex-direction:column;gap:26px;padding-top:54px;display:flex}.brand-points .point{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffb8;border:1px solid #f0e2e2;border-radius:12px;align-items:center;gap:16px;padding:16px 20px;display:flex}.brand-points .point .point-icon{color:#b42023;flex-shrink:0}.brand-points .point .point-title{color:#232323;font-size:17px;font-weight:600}.brand-points .point .point-desc{color:#8b8b8b;padding-top:3px;font-size:13px}.form-side{flex-shrink:0;width:420px}.login-card{background:#fff;border:1px solid #f2f2f2;border-radius:14px;padding:8px 34px 34px;box-shadow:0 18px 50px #2323231a}.tab-head{border-bottom:1px solid #eee;gap:34px;margin-bottom:26px;display:flex}.tab-head .tab-item{color:#8b8b8b;cursor:pointer;font-size:17px;line-height:56px;transition:color .15s;position:relative}.tab-head .tab-item:hover{color:#b42023}.tab-head .tab-item.active{color:#b42023;font-weight:600}.tab-head .tab-item.active:after{content:"";background:#b42023;border-radius:3px;height:3px;position:absolute;bottom:-1px;left:0;right:0}.login-form :deep(.el-input__wrapper){border-radius:8px;padding-left:12px;box-shadow:inset 0 0 0 1px #e3e1e1}.login-form :deep(.el-input__wrapper):hover{box-shadow:inset 0 0 0 1px #d9b7b8}.login-form :deep(.el-input__inner){height:46px}.login-form :deep(.el-form-item){margin-bottom:20px}.captcha-row{gap:10px;width:100%;display:flex}.captcha-row .el-input{flex:1}.captcha-row .captcha-img{cursor:pointer;background:#fafafa;border:1px solid #e3e1e1;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:116px;height:46px;display:flex;overflow:hidden}.captcha-row .captcha-img img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.captcha-row .captcha-img .captcha-loading{color:#b0b0b0;font-size:12px}.captcha-row .code-btn{color:#b42023;cursor:pointer;background:#fff;border:1px solid #b42023;border-radius:8px;flex-shrink:0;width:130px;height:46px;font-size:14px;transition:all .15s}.captcha-row .code-btn:hover:not(:disabled){background:#fdf3f3}.captcha-row .code-btn:disabled{cursor:not-allowed;color:#b0b0b0;background:#fafafa;border-color:#e3e1e1}.form-extra{margin-bottom:6px}.form-extra .agree-check :deep(.el-checkbox__label){color:#8b8b8b;font-size:13px}.link{color:#b42023;cursor:pointer;text-decoration:none}.submit-btn{text-align:center;color:#fff;letter-spacing:4px;cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(90deg,#d3292c,#b42023);border-radius:8px;height:50px;margin-top:6px;font-size:18px;line-height:50px;transition:all .15s;box-shadow:0 8px 18px #b4202338}.submit-btn:hover{filter:brightness(1.06)}.submit-btn.loading{cursor:not-allowed;opacity:.75;letter-spacing:1px}.form-foot{text-align:center;color:#8b8b8b;padding-top:18px;font-size:13px}.form-foot .link{margin-left:4px}@media (width<=1080px){.login-wrap{justify-content:center}.brand-side{display:none}.form-side{width:100%;max-width:420px}}
