:root{--bg:#f6f7fb;--card:#fff;--ink:#1f2430;--sub:#7a8194;--brand:#ff6f06;--brand2:#ff8f3d;--line:#e6e8ef;--dark:#171b26}
*{margin:0;padding:0;box-sizing:border-box;font-family:"PingFang SC","Microsoft YaHei",sans-serif}
body{min-height:100vh;display:flex;background:var(--bg)}
a{text-decoration:none;color:inherit}
.brand-side{flex:1;background:linear-gradient(150deg,#171b26,#232a3d);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:60px}
.brand-side .logo{font-size:30px;font-weight:800}.brand-side .logo span{color:var(--brand)}
.brand-side h1{font-size:26px;margin:26px 0 14px;line-height:1.4}
.brand-side p{color:#aab1c2;font-size:15px;line-height:1.9;max-width:420px}
.brand-side ul{margin-top:26px;color:#c6cbd8;font-size:14px;line-height:2.2;list-style:none}
.brand-side li::before{content:"✓";color:var(--brand);font-weight:700;margin-right:10px}
.ai-card{margin-top:28px;background:#232a3d;border:1px solid #3a4358;border-radius:12px;padding:0 16px 14px;max-width:470px}
.ai-card .card-head{display:flex;align-items:center;gap:6px;padding:12px 0 10px;border-bottom:1px solid #3a4358}
.ai-card .cdot{width:8px;height:8px;border-radius:50%}
.ai-card .card-title{font-size:12px;color:#7a8194;margin-left:8px}
.ai-card .ask{display:flex;justify-content:flex-end;margin-top:14px}
.ai-card .ask span{background:#171b26;border:1px solid var(--brand);border-radius:10px 10px 2px 10px;padding:8px 12px;font-size:13px;color:#e6e8ef;line-height:1.6}
.ai-card .answer{margin-top:12px;background:#1c2230;border-radius:10px 10px 10px 2px;padding:10px 14px;font-size:13px;color:#c6cbd8;line-height:1.8}
.ai-card .hit{margin-top:6px;background:rgba(255,111,6,.14);border:1px solid var(--brand);border-radius:8px;padding:5px 10px;color:#fff}
.ai-frame{display:none}
.ai-frame.active{display:block}
.ai-nav{display:flex;align-items:center;gap:8px;margin-top:14px}
.ai-nav .ndot{width:8px;height:8px;border-radius:50%;background:#3a4358;cursor:pointer;transition:.2s}
.ai-note{margin-top:14px;font-size:12px;color:#7a8194}
.form-side{width:480px;background:var(--card);display:flex;flex-direction:column;justify-content:center;padding:0 56px;box-shadow:-4px 0 24px rgba(20,30,60,.06)}
.form-side h2{font-size:22px;margin-bottom:6px}
.form-side .sub{color:var(--sub);font-size:14px;margin-bottom:30px}
.field{margin-bottom:18px}
.field label{display:block;font-size:13px;color:var(--sub);margin-bottom:7px}
.field input{width:100%;height:46px;border:1px solid var(--line);border-radius:10px;padding:0 14px;font-size:15px;outline:none;transition:.2s}
.field input:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(255,111,6,.12)}
.code-row{display:flex;gap:10px}.code-row input{flex:1}
.code-row img{height:46px;border-radius:10px;border:1px solid var(--line);cursor:pointer}
.code-row .btn-code{height:46px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--brand);font-size:13px;cursor:pointer;white-space:nowrap;transition:.15s}
.code-row .btn-code:hover{border-color:var(--brand);background:#fff7f0}
.code-row .btn-code[disabled]{color:var(--sub);background:#f6f7fb;cursor:not-allowed}
.login-tabs{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:24px}
.login-tabs a{position:relative;padding:0 2px 12px;font-size:15px;color:var(--sub);cursor:pointer}
.login-tabs a.on{color:var(--ink);font-weight:600}
.login-tabs a.on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:2px;background:var(--brand)}
.login-panel{display:none}.login-panel.on{display:block}
.btn-login{width:100%;height:48px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font-size:16px;font-weight:700;cursor:pointer;margin-top:6px;box-shadow:0 6px 18px rgba(255,111,6,.3)}
.btn-login:hover{filter:brightness(1.05)}
.links{display:flex;justify-content:space-between;margin-top:18px;font-size:14px}
.links a{color:var(--sub)}.links a:hover{color:var(--brand)}
.links .reg{color:var(--brand);font-weight:600}
.oauth{margin-top:22px}
.oauth-line{display:flex;align-items:center;gap:12px;color:var(--sub);font-size:12px;margin-bottom:14px}
.oauth-line::before,.oauth-line::after{content:"";flex:1;height:1px;background:var(--line)}
.oauth-btns{display:flex;gap:12px}
.btn-qq,.btn-weixin{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:14px;color:var(--ink);cursor:pointer;transition:.15s}
.btn-qq:hover{border-color:#12B7F5;background:#f2fbff}
.btn-weixin:hover{border-color:#07C160;background:#f0fbf4}
.qic{width:24px;height:24px;border-radius:50%;background:#12B7F5;color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.btn-weixin .qic{background:#07C160}
.qic svg{width:15px;height:15px;fill:#fff}
.btn-weixin .qic svg{width:16px;height:16px}
.agreement{margin-top:22px;font-size:12px;color:var(--sub);text-align:center}
.agreement a{color:var(--brand)}
.back-home{position:absolute;top:24px;right:32px;font-size:13px;color:var(--sub)}
.back-home:hover{color:var(--brand)}
@media(max-width:900px){.brand-side{display:none}.form-side{width:100%;box-shadow:none}}
