@charset "UTF-8";
/* 登录页：浅底黑字（贴近后台），logo 红作轻量点缀 */
.login-container .header .brand-mark{padding:0!important;flex:none!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important}
.login-container .header .brand-mark img{width:100%;height:100%;display:block;object-fit:cover;border:0;outline:0;background:transparent}
html,body{height:100%;margin:0}body{min-width:320px;overflow:hidden;font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;background:#EDE8E6}
.login-container{width:100%;height:100%;min-height:640px;overflow:hidden;position:relative;color:#1A1A1A;isolation:isolate;background-color:#EDE8E6;background-size:cover;background-repeat:no-repeat;background-position:center;transition:background-image 1s linear}
.login-container:before{top:-18%;right:12%;width:520px;height:520px;content:"";z-index:-1;position:absolute;border-radius:50%;filter:blur(28px);background:radial-gradient(circle,rgba(216,32,32,.14),rgba(240,90,58,.06) 42%,rgba(216,32,32,0) 72%)}
.login-container:after{left:-10%;bottom:-30%;width:580px;height:580px;content:"";z-index:-1;position:absolute;border-radius:50%;filter:blur(20px);background:radial-gradient(circle,rgba(40,30,28,.08),rgba(40,30,28,0) 68%)}
.login-backdrop{inset:0;z-index:-2;position:absolute;background:
  linear-gradient(145deg,rgba(255,252,250,.72) 0%,rgba(245,240,237,.55) 42%,rgba(236,230,226,.68) 100%),
  linear-gradient(180deg,#F6F1EF 0%,#EBE4E1 100%)}
.login-grid{inset:0;z-index:-1;opacity:.22;position:absolute;background-image:linear-gradient(rgba(80,40,35,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(80,40,35,.05) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 80% 70% at 40% 45%,#000 20%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 40% 45%,#000 20%,transparent 75%)}
.login-container .header{top:34px;left:50%;z-index:5;width:calc(100% - 96px);max-width:1320px;height:50px;position:absolute;transform:translateX(-50%)}
.login-container .header .title{gap:13px;color:#1A1A1A;height:50px;display:inline-flex;align-items:center;text-decoration:none}
.login-container .header .brand-mark{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:0;padding:0;box-sizing:border-box;border:0;border-radius:8px;background:transparent;box-shadow:none}
.login-container .header .brand-mark i{width:5px;display:block;border-radius:3px 3px 1px 1px;background:#D82020}
.login-container .header .brand-mark i:nth-child(1){height:11px;opacity:.55}
.login-container .header .brand-mark i:nth-child(2){height:20px}
.login-container .header .brand-mark i:nth-child(3){height:15px;opacity:.78}
.login-container .header .brand-copy{line-height:1}
.login-container .header .brand-copy b{display:block;font-size:17px;font-weight:600;letter-spacing:1.5px;color:#1A1A1A}
.login-container .header .brand-copy small{color:#888;display:block;margin-top:7px;font-size:8px;letter-spacing:2.2px}
.login-container .header .brand-version{color:#999;font-size:10px;align-self:flex-start;margin-top:5px}
.login-container .header a,.login-container .header a:focus,.login-container .header a:hover{color:#1A1A1A;text-decoration:none}
.login-main{top:50%;left:50%;z-index:2;width:calc(100% - 96px);max-width:1180px;display:grid;grid-template-columns:minmax(0,1.1fr) 440px;gap:90px;align-items:center;position:absolute;transform:translate(-50%,-50%)}
.vision-panel{padding-top:28px}
.vision-tag{color:#666;font-size:13px;font-weight:500;letter-spacing:3px}
.vision-tag span{width:24px;height:2px;display:inline-block;margin-right:10px;vertical-align:middle;background:#D82020;border-radius:1px}
.vision-panel h1{color:#1A1A1A;margin:22px 0 18px;font-size:48px;line-height:1.35;font-weight:600;letter-spacing:2px}
.vision-panel h1 em{color:#D82020;font-style:normal;background:none;-webkit-text-fill-color:initial}
.vision-desc{color:#666;width:520px;max-width:100%;font-size:15px;line-height:2;letter-spacing:.3px}
.vision-features{display:flex;gap:38px;margin-top:42px}
.feature-item{gap:12px;display:flex;align-items:center}
.feature-icon{width:42px;height:42px;display:flex;flex:none;align-items:center;justify-content:center;border:1px solid rgba(216,32,32,.12);border-radius:12px;background:rgba(255,255,255,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.feature-icon i{color:#D82020;font-size:20px}
.feature-item b,.feature-item small{display:block}
.feature-item b{color:#222;font-size:14px;font-weight:500}
.feature-item small{color:#888;margin-top:6px;font-size:11px;white-space:nowrap}
.signal-card{width:370px;height:70px;display:flex;align-items:center;justify-content:space-between;margin-top:50px;padding:0 20px;box-sizing:border-box;border:1px solid rgba(255,255,255,.55);border-radius:14px;background:rgba(255,255,255,.42);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 24px rgba(60,30,25,.05)}
.signal-copy small,.signal-copy b{display:block}
.signal-copy small{color:#999;font-size:8px;letter-spacing:2px}
.signal-copy b{color:#333;margin-top:7px;font-size:12px;font-weight:400}
.signal-copy i{width:6px;height:6px;display:inline-block;margin-right:7px;border-radius:50%;background:#D82020}
.signal-bars{height:30px;display:flex;gap:5px;align-items:center}
.signal-bars i{width:3px;display:block;border-radius:2px;background:#D0D0D0}
.signal-bars i:nth-child(1){height:8px}
.signal-bars i:nth-child(2){height:15px}
.signal-bars i:nth-child(3){height:22px}
.signal-bars i:nth-child(4){height:12px}
.signal-bars i:nth-child(5){height:26px;background:#D82020}
.signal-bars i:nth-child(6){height:18px}
.signal-bars i:nth-child(7){height:10px}
.login-card-wrap{position:relative}
.login-card-wrap:before{top:-18px;left:24px;right:24px;height:40px;content:"";position:absolute;border:1px solid rgba(255,255,255,.45);border-radius:24px 24px 0 0;background:rgba(255,255,255,.28);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
form.login-card{width:100%;position:relative;padding:44px 44px 30px;box-sizing:border-box;border:1px solid rgba(255,255,255,.65);border-radius:24px;background:rgba(255,255,255,.58);box-shadow:0 24px 60px rgba(50,25,20,.08),inset 0 1px rgba(255,255,255,.75);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.form-heading{margin-bottom:30px}
.form-heading .form-kicker{color:#D82020;font-size:10px;font-weight:600;letter-spacing:3px}
form.login-card h2{color:#1A1A1A;margin:8px 0 0;padding:0;font-size:27px;line-height:1.4;text-align:left;font-weight:600;letter-spacing:1px}
.form-heading p{color:#888;margin-top:9px;font-size:13px}
form.login-card ul li{margin-top:20px}
.field-label{color:#555;display:block;margin-bottom:9px;font-size:12px;letter-spacing:.5px}
.input-wrap{display:block;position:relative}
form.login-card li>.input-wrap>i.layui-icon,.verify-row .input-wrap>i.layui-icon{top:50%;left:17px;z-index:1;color:#A0A0A0;padding:0;font-size:17px;position:absolute;transform:translateY(-50%)}
form.login-card li>.input-wrap:focus-within>i.layui-icon,.verify-row .input-wrap:focus-within>i.layui-icon{color:#D82020}
form.login-card input.layui-input{color:#1A1A1A;width:100%;height:50px;padding:0 42px 0 48px;box-sizing:border-box;font-size:13px;line-height:1em;text-indent:0;border:1px solid rgba(0,0,0,.08)!important;border-radius:10px;letter-spacing:.5px;background:rgba(255,255,255,.72);-webkit-text-fill-color:#1A1A1A!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.02)!important}
form.login-card input.layui-input::placeholder{color:#AAA;-webkit-text-fill-color:#AAA}
form.login-card input.layui-input:hover{border-color:#C8C8C8!important;background:#FFF}
form.login-card input.layui-input:focus,form.login-card input.layui-input:active{border-color:#D82020!important;background:#FFF;box-shadow:0 0 0 3px rgba(216,32,32,.10)!important}
form.login-card input.layui-input:-webkit-autofill,form.login-card input.layui-input:-webkit-autofill:hover,form.login-card input.layui-input:-webkit-autofill:focus{border-color:#D82020!important;-webkit-text-fill-color:#1A1A1A!important;-webkit-transition-delay:9999s!important;-webkit-transition:color 9999s ease-out,background-color 9999s ease-out!important}
.verify-row{gap:10px;display:grid;grid-template-columns:minmax(0,1fr) 112px}
.verify-row label{width:auto!important}
.verify-row input.layui-input{text-transform:uppercase}
.captcha-wrap{display:block;height:50px}
.captcha-wrap img{width:112px;height:50px;cursor:pointer;display:block;border-radius:10px;border:1px solid #E6E6E6;box-shadow:0 3px 10px rgba(0,0,0,.05)}
.submit-row{margin-top:28px!important;padding-top:0!important}
.submit-row button{color:#FFF!important;height:50px!important;display:flex;align-items:center;justify-content:center;border:0!important;border-radius:10px!important;background:#D82020!important;letter-spacing:2px!important;box-shadow:0 10px 24px rgba(216,32,32,.22);transition:.25s ease}
.submit-row button span{letter-spacing:2px;color:#FFF}
.submit-row button i.layui-icon{color:#FFF;margin-left:10px;font-size:16px;position:static;transform:none}
.submit-row button:hover{opacity:1;background:#C01C1C!important;transform:translateY(-1px);box-shadow:0 12px 28px rgba(216,32,32,.26)}
.secure-tip{color:#999;margin-top:24px;font-size:10px;text-align:center;letter-spacing:.5px}
.secure-tip i{color:#D82020;margin-right:5px;opacity:.85}
.login-container .footer{left:0;bottom:18px;z-index:3;color:#999;width:100%;position:absolute;text-align:center;line-height:24px;font-size:11px}
.login-container .footer a,.login-container .footer span{color:#777}
.login-container .footer a:hover{color:#D82020}
@media screen and (max-width:1050px){.login-main{grid-template-columns:minmax(0,1fr) 400px;gap:45px}.vision-panel h1{font-size:40px}.vision-features{gap:18px}.feature-icon{display:none}}
@media screen and (max-width:820px){body{overflow:auto}.login-container{min-height:720px;overflow:auto}.login-container .header{top:22px;width:calc(100% - 40px)}.login-grid{mask-image:none;-webkit-mask-image:none;opacity:.2}.login-main{top:112px;width:calc(100% - 40px);max-width:440px;display:block;transform:translateX(-50%)}.vision-panel{display:none}form.login-card{padding:38px 32px 28px}.login-container .footer{bottom:14px;padding:0 20px;box-sizing:border-box}}
@media screen and (max-width:480px){.login-container{min-height:680px}.login-container .header{top:18px}.login-container .header .brand-mark{width:38px;height:38px;border-radius:0;border:0;padding:0;box-shadow:none;background:transparent}.login-container .header .brand-copy b{max-width:210px;overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.login-container .header .brand-copy small,.login-container .header .brand-version{display:none}.login-main{top:90px;width:calc(100% - 28px)}form.login-card{padding:34px 22px 24px;border-radius:20px}form.login-card h2{font-size:24px}.login-container .footer{font-size:10px}}
