.universal-login-page{background-color: #f5f5f5;}
.header-universal-login{background-color: #fff;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);position: relative;z-index: 10;padding: 10px 0;}
.universal-login-logo img {max-height: 36px;}
.universal-login-link{position: absolute; top: 50%; right: 20px; transform: translateY(-50%); font-size: 12px;}
.universal-login-sprite{width: 900px; height: 530px;margin: 0 auto ;  background: url(../img/colorful.jpg) no-repeat; background-size: 100% ;border-radius: 30px;box-sizing: border-box;}
.universal-login-inner{display: table;width: 100%;height: 100%;}
.universal-login-left,
.universal-login-right{display: table-cell;vertical-align: middle;height: 100%;}
.universal-login-left{width: 42%;position: relative;}
.universal-login-box{background-color: #fff;height: 100%;border-radius: 30px;position: relative;}
.universal-login-painter{position: absolute;bottom: 0;left: 50%;transform: translateX(-50%);width: 260px;}
.universal-login-slogan{position: absolute; top: 80px; left: 50px; text-align: left;}
.universal-login-slogan img{height: 36px;}
.universal-login-slogan h3{font-size: 38px;color: #000000;text-shadow:1px 1px 0 #fff;font-weight: 200; padding-top: 0.25em;}
.universal-login-content{padding: 60px 0 0 0;text-align: center;}
.universal-login-content .main-title{font-size: 24px;color: #232529;font-weight: bold;}
.universal-login-content .main-title b{color:#eb5e51;}
.universal-login-content .sub-title{font-size: 14px;color: #888f98;margin: 10px 20px;}
.universal-login-content .logged-in {width: 180px;height: 180px;display: inline-block;box-sizing: border-box;}
.universal-login-content .qrcode{width: 180px;height: 180px;display: inline-block;box-sizing: border-box;padding:10px;border:#e8e8e8 1px solid;border-radius: 10px;margin-top: 20px;position: relative;}
.universal-login-content .qrcode img{width: 100%;height: 100%;}
.universal-login-content .qrcode::before {content: "";position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%); width: 30px; height: 30px; z-index: 10; background: center / contain no-repeat url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NzYgNTEyIiBzdHlsZT0iZmlsbDogIzA3QzE2MCI+PHBhdGggZD0iTTM4NS4yIDE2Ny42YzYuNCAwIDEyLjYuMyAxOC44IDEuMUMzODcuNCA5MC4zIDMwMy4zIDMyIDIwNy43IDMyIDEwMC41IDMyIDEzIDEwNC44IDEzIDE5Ny40YzAgNTMuNCAyOS4zIDk3LjUgNzcuOSAxMzEuNmwtMTkuMyA1OC42IDY4LTM0LjFjMjQuNCA0LjggNDMuOCA5LjcgNjguMiA5LjcgNi4yIDAgMTIuMS0uMyAxOC4zLS44LTQtMTIuOS02LjItMjYuNi02LjItNDAuOC0uMS04NC45IDcyLjktMTU0IDE2NS4zLTE1NHptLTEwNC41LTUyLjljMTQuNSAwIDI0LjIgOS43IDI0LjIgMjQuNCAwIDE0LjUtOS43IDI0LjItMjQuMiAyNC4yLTE0LjggMC0yOS4zLTkuNy0yOS4zLTI0LjIuMS0xNC43IDE0LjYtMjQuNCAyOS4zLTI0LjR6bS0xMzYuNCA0OC42Yy0xNC41IDAtMjkuMy05LjctMjkuMy0yNC4yIDAtMTQuOCAxNC44LTI0LjQgMjkuMy0yNC40IDE0LjggMCAyNC40IDkuNyAyNC40IDI0LjQgMCAxNC42LTkuNiAyNC4yLTI0LjQgMjQuMnpNNTYzIDMxOS40YzAtNzcuOS03Ny45LTE0MS4zLTE2NS40LTE0MS4zLTkyLjcgMC0xNjUuNCA2My40LTE2NS40IDE0MS4zUzMwNSA0NjAuNyAzOTcuNiA0NjAuN2MxOS4zIDAgMzguOS01LjEgNTguNi05LjlsNTMuNCAyOS4zLTE0LjgtNDguNkM1MzQgNDAyLjEgNTYzIDM2My4yIDU2MyAzMTkuNHptLTIxOS4xLTI0LjVjLTkuNyAwLTE5LjMtOS43LTE5LjMtMTkuNiAwLTkuNyA5LjctMTkuMyAxOS4zLTE5LjMgMTQuOCAwIDI0LjQgOS43IDI0LjQgMTkuMyAwIDEwLTkuNyAxOS42LTI0LjQgMTkuNnptMTA3LjEgMGMtOS43IDAtMTkuMy05LjctMTkuMy0xOS42IDAtOS43IDkuNy0xOS4zIDE5LjMtMTkuMyAxNC41IDAgMjQuNCA5LjcgMjQuNCAxOS4zLjEgMTAtOS45IDE5LjYtMjQuNCAxOS42eiIvPjwvc3ZnPg==');}
.wechat-qrcode-wrap{position: relative;display: inline-block;margin: 20px auto 0 auto;}
.wechat-qrcode-wrap .qrcode{margin-top: 0;display: block;}
.wechat-qrcode-mask{position: absolute;inset: 0;background: rgba(108, 108, 108, 0.58);border-radius: 10px;display: flex;align-items: center;justify-content: center;color: #fff;text-align: center;padding: 12px;z-index: 30;line-height: 1.5;}
.universal-login-form{width: 60%;margin: 20px auto 0 auto;}
.universal-login-form .c-input{position: relative;margin-bottom: 20px;display: block;}
.universal-login-form .c-input input{width: 100%;padding: 10px 40px 10px 10px;box-sizing: border-box;border: #e8e8e8 1px solid;border-radius: 5px;display: block;}
.agreement-warning{color: #d63638;font-size: 12px;margin: -8px 0 10px 0;text-align: left;}
.universal-login-form .c-input--verification{padding-right: 100px;}
.universal-login-form .c-input--verification img{ width: 90px; height: 36px; position: absolute; top: 50%; right: 0; transform: translateY(-50%);}
.universal-login-button{width: 100%;padding: 10px 0;background-color: #eb5e51;color: #fff;border: none;border-radius: 5px;cursor: pointer;}
.unified-plain-button{width: 100%;padding: 10px 0;background-color: #fff;color: #111;border: 1px solid #e8e8e8;border-radius: 5px;cursor: pointer;}
.unified-plain-button:disabled{background-color: #f1f1f1;opacity: 0.6;cursor: not-allowed;}
.account-helper{font-size: 12px;display:flex;margin-top: 10px;color: #888f98;}
.account-helper-item{flex: 1;}
.account-helper-item:first-child{text-align: left;}
.account-helper-item:last-child{text-align: right;}
.universal-login-content--register .c-input{margin-bottom: 10px;}
.universal-login-other{position: absolute; bottom: 0; width: 100%;text-align: center;}
.other-head{width: 80%;margin: 0 auto; height: 1px;background-color: #e8e8e8;margin-bottom: 20px;position: relative;}
.other-head .text{display: inline-block;position:absolute;top: -10px;left: 50%;padding: 0 20px;background-color: #fff;font-size: 14px;color: #888f98; transform: translateX(-50%);}
.other-content{padding: 20px 0 20px 0;}
.other-content .iconfont{vertical-align: middle;}
.other-content .text{font-size: 12px; color: #888f98;margin:0 13px 0 3px;}
.login-agreement{padding-bottom: 20px;font-size: 12px;color: #888f98;font-weight: 400;}
.agreement-checkbox{display: inline-flex;align-items: center;gap: 8px;cursor: pointer;line-height: 1.4;user-select: none;}
.agreement-checkbox input{position: absolute;opacity: 0;pointer-events: none;}
.agreement-checkbox__indicator{width: 16px;height: 16px;border: 1.5px solid #eb5e51;border-radius: 5px;background: #fff;position: relative;box-sizing: border-box;transition: all 0.2s ease;flex-shrink: 0;}
.agreement-checkbox input:checked + .agreement-checkbox__indicator{background: #eb5e51;border-color: #eb5e51;box-shadow: 0 0 0 3px rgba(235, 94, 81, 0.15);}
.agreement-checkbox input:checked + .agreement-checkbox__indicator::after{content: "";position: absolute;left: 4px;top: 1px;width: 4px;height: 8px;border: solid #fff;border-width: 0 2px 2px 0;transform: rotate(45deg);}
.agreement-checkbox input:focus-visible + .agreement-checkbox__indicator{box-shadow: 0 0 0 3px rgba(235, 94, 81, 0.22);}
.login-agreement .text{color: #6e7781;font-weight: 400;}
.login-agreement .text a{color: #6e7781;font-weight: 400;text-decoration: none;}
.login-agreement .text a:hover{color: #6e7781;text-decoration: underline;}

.footer-universal-login{background: none;border: none;text-align: center;padding: 20px 0 40px 0;margin-top:0;}
.footer-universal-login img{vertical-align: middle;}

.c-popup--login .c-popup__box{border-radius: 30px;}
/* 猫凑登录界面 */
body.universal-login-page{min-height:100vh;margin:0;display:flex;flex-direction:column;background:radial-gradient(ellipse at 20% 12%,rgba(39,91,180,.16),transparent 36%),radial-gradient(ellipse at 85% 80%,rgba(103,54,202,.12),transparent 35%),#0b1020;color:#edf3ff;font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif}
.header-universal-login{background:transparent;box-shadow:none;border-bottom:1px solid rgba(151,173,229,.1);padding:20px 32px}
.universal-login-header-inner{max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.universal-login-brand{display:block;line-height:0}.universal-login-brand img{width:152px;height:auto;max-height:none}
.universal-login-home{color:#aab9d9;text-decoration:none;font-size:14px;transition:color .2s}.universal-login-home span{margin-left:8px;color:#83bfff}.universal-login-home:hover{color:#fff}
.universal-login-main{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 24px}
.universal-login-sprite{width:min(100%,1040px);height:auto;min-height:580px;margin:0 auto;background:#111a30;border:1px solid #263450;border-radius:24px;overflow:hidden;box-shadow:0 28px 90px rgba(0,0,0,.3);box-sizing:border-box}
.universal-login-inner{display:flex;width:100%;height:auto;min-height:580px}
.universal-login-left{display:flex;flex:0 0 43%;width:auto;height:auto;position:relative;flex-direction:column;justify-content:space-between;overflow:hidden;padding:64px 48px 42px;box-sizing:border-box;background:radial-gradient(circle at 18% 12%,rgba(29,144,245,.22),transparent 45%),radial-gradient(circle at 85% 72%,rgba(131,55,239,.24),transparent 43%),#101a32}
.universal-login-slogan{position:relative;z-index:1;top:auto;left:auto;text-align:left}.universal-login-eyebrow{font-size:11px;letter-spacing:.19em;font-weight:700;color:#7fc6ff}.universal-login-slogan h3{margin:25px 0 18px;padding:0;font-size:36px;line-height:1.4;font-weight:750;letter-spacing:.02em;color:#f2f6ff;text-shadow:none}.universal-login-slogan h3 span{background:linear-gradient(105deg,#8cd9ff,#b48bff);background-clip:text;-webkit-background-clip:text;color:transparent}.universal-login-slogan p{margin:0;color:#9bacce;font-size:14px;line-height:2}
.universal-login-tags{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:8px}.universal-login-tags span{padding:6px 10px;border:1px solid rgba(159,185,241,.2);border-radius:20px;color:#aabce1;font-size:12px}
.universal-login-box{display:flex;flex:1;min-width:0;height:auto;position:relative;flex-direction:column;justify-content:center;padding:50px 64px;box-sizing:border-box;border-radius:0;background:#171f35}
.universal-login-content{padding:0;text-align:left}.universal-login-content .main-title{font-size:27px;line-height:1.4;color:#f0f4ff;font-weight:700}.universal-login-content .main-title b{color:#8bc7ff}.universal-login-content .sub-title{margin:10px 0;color:#98aacb;font-size:14px}.universal-login-content .logged-in{margin-top:24px}
.universal-login-form{width:100%;margin:26px 0 0}.universal-login-form .c-input{margin-bottom:14px}.universal-login-form .c-input input{height:50px;padding:0 15px;border:1px solid #34415f;border-radius:9px;background:#10192c;color:#edf3ff;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s}.universal-login-form .c-input input::placeholder{color:#7283a3}.universal-login-form .c-input input:focus{border-color:#719bff;box-shadow:0 0 0 3px rgba(102,137,255,.14)}.universal-login-form .c-input input:disabled{opacity:.55}
.universal-login-button{min-height:50px;margin-top:14px;padding:12px;border:0;border-radius:9px;background:linear-gradient(110deg,#3389d0,#4e60e9,#8245df);color:#fff;font-size:15px;font-weight:700;transition:filter .2s}.universal-login-button:hover{filter:brightness(1.12)}.universal-login-button:disabled{opacity:.5;cursor:not-allowed}.unified-plain-button{height:50px;border-color:#3b4b6e;border-radius:9px;background:#253353;color:#c6d8f9}.unified-plain-button:disabled{background:#253353}
.account-helper{gap:10px;margin-top:16px;color:#8d9fbe;font-size:13px}.account-helper a{color:#88bfff;text-decoration:none}.account-helper a:hover{text-decoration:underline}.universal-login-content--register .c-input{margin-bottom:10px}
.universal-login-other{position:static;width:100%;margin-top:35px;text-align:center}.other-head{width:100%;height:1px;margin:0;background:#35415b}.other-head .text{top:-9px;padding:0 14px;white-space:nowrap;background:#171f35;color:#8798b9;font-size:12px}.other-content{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:22px 0}.other-content .other-item{display:inline-flex;align-items:center;gap:5px;padding:7px 12px;border:1px solid #374562;border-radius:8px;color:#a9c9f7;text-decoration:none}.other-content .other-item:hover{border-color:#7399ef;background:#202d48}.other-content .text{margin:0;color:#bac8df}.login-agreement{padding:0;color:#8e9eba;line-height:1.7}.agreement-checkbox{align-items:flex-start;text-align:left}.agreement-checkbox__indicator{margin-top:2px;background:#10192c;border-color:#6487da}.agreement-checkbox input:checked + .agreement-checkbox__indicator{background:#566de8;border-color:#566de8;box-shadow:0 0 0 3px rgba(86,109,232,.15)}.agreement-checkbox input:focus-visible + .agreement-checkbox__indicator{box-shadow:0 0 0 3px rgba(126,166,255,.5)}.login-agreement .text,.login-agreement .text a{color:#9fafd0}.login-agreement .text a:hover{color:#b7d7ff}
.universal-login-content .qrcode{background:#fff;border-color:#fff}.universal-login-content--wechat{text-align:center}.wechat-qrcode-wrap{margin-top:20px}.agreement-warning{color:#ff9da5}.footer-universal-login{margin:0;padding:0 24px 28px;background:none;border:0;text-align:center;color:#7384a6;font-size:12px}.footer-universal-login p{margin:0}
.c-popup--login .c-popup__box{border-radius:24px;overflow:hidden}.c-popup--login .universal-login-sprite{min-height:0}
@media(max-width:760px){.header-universal-login{padding:16px 20px}.universal-login-brand img{width:130px}.universal-login-main{padding:30px 16px}.universal-login-sprite,.universal-login-inner{min-height:0}.universal-login-inner{display:block}.universal-login-left{width:100%;min-height:210px;padding:32px 28px}.universal-login-slogan h3{font-size:25px;margin:14px 0 10px}.universal-login-slogan p{font-size:13px}.universal-login-tags{display:none}.universal-login-box{padding:34px 28px}.universal-login-content .main-title{font-size:23px}.universal-login-other{margin-top:30px}}
@media(max-width:380px){.universal-login-left{padding:28px 22px}.universal-login-box{padding:30px 22px}.universal-login-slogan h3{font-size:23px}}

/* 验证组件与操作结果 */
.universal-login-form cap-widget{display:block;max-width:100%;margin:4px 0 14px;--cap-widget-width:100%;--cap-widget-height:50px;--cap-widget-padding:12px 15px;--cap-background:#10192c;--cap-color:#cbd9f2;--cap-border-color:#34415f;--cap-border-radius:9px;--cap-checkbox-background:#171f35;--cap-checkbox-border:1px solid #7898db;--cap-checkbox-border-radius:6px;--cap-spinner-color:#82bdff;--cap-spinner-background-color:#34415f;--cap-checkmark:#88d4ff;--cap-error-cross:#ff9da5;--cap-invalid-border-color:#ef8caa;--cap-invalid-ring-color:rgba(239,140,170,.18);--cap-font:system-ui,-apple-system,"Microsoft YaHei",sans-serif}
.universal-login-form cap-widget::part(label){font-size:14px}
.universal-login-form .error-message,.universal-login-form .agreement-warning{margin:0 0 12px;padding:10px 12px;border:1px solid rgba(255,139,167,.25);border-radius:8px;background:rgba(195,68,107,.1);color:#ffadbf;font-size:13px;line-height:1.6;text-align:left;overflow-wrap:anywhere}
.universal-login-form .error-message.is-success{border-color:rgba(94,207,189,.28);background:rgba(51,165,150,.1);color:#91e2d3}
.universal-login-status{text-align:center}.universal-login-status-icon{display:grid;place-items:center;width:80px;height:80px;margin:0 auto 25px;border:1px solid rgba(129,190,255,.35);border-radius:24px;color:#a8d8ff;background:linear-gradient(145deg,rgba(66,162,243,.22),rgba(117,79,232,.18));box-shadow:0 12px 38px rgba(35,98,200,.15)}.universal-login-status-icon svg{width:38px;height:38px}.universal-login-status--failure .universal-login-status-icon{color:#ffb4c9;border-color:rgba(255,150,182,.3);background:linear-gradient(145deg,rgba(225,93,139,.19),rgba(117,79,232,.15));box-shadow:0 12px 38px rgba(174,65,122,.13)}.universal-login-status-label{margin-bottom:10px;color:#89baf2;font-size:11px;font-weight:700;letter-spacing:.18em}.universal-login-status--failure .universal-login-status-label{color:#e8a3bd}.universal-login-status .main-title{font-size:28px}.universal-login-status .sub-title{margin:12px 0 0;line-height:1.7}.universal-login-status-redirect{display:inline-flex;align-items:center;gap:9px;margin-top:30px;padding:9px 14px;border:1px solid #34435f;border-radius:20px;background:#131d32;color:#a5b7d6;font-size:12px}.universal-login-status-spinner{width:13px;height:13px;border:2px solid #435779;border-top-color:#86c2ff;border-radius:50%;animation:universal-login-spin .8s linear infinite}@keyframes universal-login-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.universal-login-status-spinner{animation:none}}

