:root{
  --brand:#FF552E;              /* 品牌橙 */
  --brand-dark:#E8431D;
  --navy-1:#0B2447;             /* 深海军蓝 */
  --navy-2:#123A6F;
  --navy-3:#1E53A0;
  --text-1:#1F2D3D;
  --text-2:#5E6D82;
  --text-3:#9AA5B5;
  --line:#E8ECF2;
  --bg:#F5F7FB;
  --white:#FFFFFF;
  --shadow-card:0 20px 50px rgba(15,36,72,.14);
  --radius:12px;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{font-family:"Microsoft YaHei","PingFang SC","Helvetica Neue",Arial,sans-serif;color:var(--text-1);background:var(--bg);font-size:14px;line-height:1.6;}
a{color:inherit;text-decoration:none;transition:color .2s;}
a:hover{color:var(--brand);}
ul,ol{list-style:none;}
img{display:block;border:0;}
input,button{font-family:inherit;outline:none;}
.clearfix::after{content:"";display:table;clear:both;}
.container{width:1200px;margin:0 auto;}
@media (max-width:1240px){ .container{width:96%;} }

/* ==================== 顶部导航 ==================== */
.header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.98);backdrop-filter:blur(6px);border-bottom:1px solid var(--line);}
.header .container{display:flex;align-items:center;justify-content:space-between;padding:16px 0;}
.logo{display:flex;align-items:center;}
.logo img{width:auto;max-height:100px;}
.nav{display:flex;align-items:center;gap:40px;}
.nav a{font-size:20px;color:var(--text-1);position:relative;padding:4px 0;}

.nav .nav-hot{color:#ff6600;}

/* ==================== 主视觉区 ==================== */
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#0B2447 0%,#123A6F 55%,#1E53A0 100%);color:#fff;}
.hero::before{content:"";position:absolute;inset:0;
  background:
    radial-gradient(600px 300px at 12% 18%,rgba(255,85,46,.18),transparent 60%),
    radial-gradient(700px 400px at 88% 85%,rgba(30,83,160,.55),transparent 62%);
}
/* 装饰网格点 */
.hero::after{content:"";position:absolute;inset:0;
  background-image:radial-gradient(rgba(255,255,255,.10) 1px,transparent 1px);
  background-size:26px 26px;
  opacity:.35;
}
.hero-inner{position:relative;z-index:2;display:flex;align-items:center;min-height:560px;padding:70px 0;gap:60px;}
/* 左侧品牌文案 */
.hero-slogan{flex:1;min-width:0;}
.hero-slogan .tag{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:6px 16px;border-radius:30px;font-size:13px;letter-spacing:2px;margin-bottom:26px;}
.hero-slogan .tag i{width:6px;height:6px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 4px rgba(255,85,46,.25);}
.hero-slogan h1{font-size:46px;font-weight:800;line-height:1.28;letter-spacing:1px;}
.hero-slogan h1 em{font-style:normal;color:#FFB59E;}
.hero-slogan p.desc{margin:20px 0 34px;font-size:16px;color:rgba(255,255,255,.82);max-width:520px;}
/* 服务数据 */
.stats{display:flex;gap:52px;}
.stats .item .num{font-size:30px;font-weight:800;line-height:1.2;}
.stats .item .num i{font-style:normal;color:#FFB59E;}
.stats .item .lab{margin-top:6px;font-size:13px;color:rgba(255,255,255,.66);letter-spacing:1px;}

/* 右侧登录卡片 */
.login-card{width:392px;flex-shrink:0;background:#fff;color:var(--text-1);border-radius:16px;box-shadow:var(--shadow-card);overflow:hidden;}
.login-tabs{display:flex;border-bottom:1px solid var(--line);}
.login-tabs .tab{flex:1;text-align:center;padding:18px 0;font-size:22px;color:var(--text-2);cursor:pointer;position:relative;transition:color .2s;user-select:none;}
.login-tabs .tab.active{color:var(--brand);}
.login-tabs .tab.active::after{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:-1px;width:56px;height:3px;border-radius:3px;background:var(--brand);}
.login-body{padding:30px 34px 26px;}
.field{margin-bottom:20px;}
.field .label{display:block;font-size:14px;color:var(--text-2);margin-bottom:8px;font-weight:600;}
.input-wrap{position:relative;display:flex;align-items:center;border:1px solid #D9E0EA;border-radius:10px;background:#FBFCFE;transition:border-color .2s,box-shadow .2s;}
.input-wrap:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(255,85,46,.12);background:#fff;}
.input-wrap .ico{width:46px;height:46px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#A8B3C4;}
.input-wrap .ico svg{width:19px;height:19px;}
.input-wrap input{flex:1;min-width:0;height:46px;border:none;background:transparent;font-size:15px;color:var(--text-1);padding-right:12px;}
.input-wrap input::placeholder{color:#B7C0CC;}
.input-wrap .eye{width:42px;height:46px;display:none;align-items:center;justify-content:center;cursor:pointer;color:#A8B3C4;flex-shrink:0;}
.input-wrap .eye:hover{color:var(--text-1);}
.input-wrap .eye svg{width:19px;height:19px;}
.input-wrap.show-eye .eye{display:flex;}
/* 验证提示条 */
.msg{display:none;align-items:center;gap:6px;margin:-8px 0 16px;padding:9px 12px;border-radius:8px;background:#FFF3EE;border:1px solid #FFD9CD;color:#D54801;font-size:13px;}
.msg.show{display:flex;}
.msg svg{width:15px;height:15px;flex-shrink:0;}
/* 登录按钮 */
.btn-login{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--brand) 0%,#FF6A3D 100%);color:#fff;font-size:16px;font-weight:700;letter-spacing:6px;cursor:pointer;box-shadow:0 10px 24px rgba(255,85,46,.32);transition:transform .15s,box-shadow .2s,filter .2s;}
.btn-login:hover{filter:brightness(1.05);box-shadow:0 14px 30px rgba(255,85,46,.4);transform:translateY(-1px);}
.btn-login:active{transform:translateY(0);}
.btn-login.loading{pointer-events:none;opacity:.8;}
.btn-login.loading .spin{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}
/* 辅助链接 */
.login-extra{display:flex;align-items:center;justify-content:space-between;margin-top:18px;font-size:13px;}
.login-extra .register{color:var(--brand);font-weight:600;}
.login-extra .forget{color:var(--text-3);}
.login-extra .forget:hover{color:var(--brand);}
.login-agree{margin-top:20px;padding-top:16px;border-top:1px dashed var(--line);font-size:12px;color:var(--text-3);text-align:center;}
.login-agree a{color:var(--text-2);}
.login-agree a:hover{color:var(--brand);}

/* ==================== 底部 ==================== */
.footer{margin-top:0;background:#0E1F38;color:rgba(255,255,255,.66);}
.footer .foot-top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:30px;padding:44px 0 30px;border-bottom:1px solid rgba(255,255,255,.08);}
.foot-brand .name{font-size:20px;font-weight:700;color:#fff;margin-bottom:12px;}
.foot-brand p{font-size:13px;line-height:2;max-width:420px;}
.foot-col .tit{color:#fff;font-size:15px;font-weight:700;margin-bottom:14px;}
.foot-col a{display:block;font-size:13px;line-height:2.2;color:rgba(255,255,255,.66);}
.foot-col a:hover{color:#FFB59E;}
.footer .foot-bottom{padding:20px 0;text-align:center;font-size:13px;color:rgba(255,255,255,.5);line-height:2;}
.footer .foot-bottom a{color:rgba(255,255,255,.6);}
.footer .foot-bottom a:hover{color:#FFB59E;}

/* ==================== 轻提示 ==================== */
.toast{position:fixed;left:50%;top:80px;transform:translate(-50%,-12px);z-index:3000;display:flex;align-items:center;gap:8px;padding:13px 22px;border-radius:10px;background:#fff;box-shadow:0 14px 40px rgba(15,36,72,.2);font-size:14px;opacity:0;visibility:hidden;transition:all .28s cubic-bezier(.2,.8,.3,1);border:1px solid var(--line);}
.toast.show{opacity:1;visibility:visible;transform:translate(-50%,0);}
.toast.success .t-ico{color:#22A06B;}
.toast.error .t-ico{color:var(--brand);}
.toast .t-ico{display:flex;font-size:18px;font-weight:700;}

/* ==================== 响应式 ==================== */
@media (max-width:960px){
  .nav{display:none;}
  .hero-inner{flex-direction:column;min-height:0;padding:44px 0;gap:36px;}
  .hero-slogan h1{font-size:32px;}
  .stats{gap:34px;flex-wrap:wrap;}
  .login-card{width:100%;max-width:420px;}
}
@media (max-width:600px){
  .header .container{padding:10px 0;}
  .logo img{height:44px;}
  .stats .item .num{font-size:24px;}
  .login-body{padding:24px 20px 20px;}
}