/* 独立页面（登录/注册/找回、协议、联系我们、404）：与 app.css 共用令牌和顶栏。 */
.auth-header{justify-content:space-between}
.auth-brand{display:flex;align-items:center;gap:10px;color:var(--tx)}
.back-link{font-size:14px;font-weight:600;color:var(--tx2);padding:7px 16px;border-radius:99px;background:var(--bg)}.back-link:hover{background:var(--br-bg);color:var(--br)}
.auth-layout{max-width:1040px;margin:28px auto 40px;padding:0;display:grid;grid-template-columns:1fr 1fr;border-radius:var(--r-xl);overflow:hidden;background:#fff;box-shadow:var(--sh-l);border:1px solid var(--ln);min-height:560px;width:calc(100% - 2*var(--gut))}
.auth-story{position:relative;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:44px 44px 36px;color:#fff;overflow:hidden;background:radial-gradient(420px 300px at 80% 25%,#7a6cf0 0,transparent 65%),linear-gradient(160deg,var(--br),var(--br-d) 60%,var(--br-dd))}
.auth-story::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Ccircle cx='40' cy='40' r='1.2' fill='%23fff' fill-opacity='.18'/%3E%3C/svg%3E")}
.auth-story>*{position:relative}
.eyebrow{display:inline-flex;align-self:flex-start;height:28px;align-items:center;padding:0 14px;border-radius:99px;background:#ffffff1f;border:1px solid #ffffff3a;font-size:13px;font-weight:600}
.auth-story h1{color:#fff;font-size:clamp(30px,3.4vw,42px);font-weight:800;line-height:1.2}
.auth-story p{color:#ffffffd0;font-size:16px}
.mascot-scene{position:relative;margin-top:14px;height:210px}
.mascot-scene img{position:absolute;left:50%;bottom:-6px;width:170px;margin-left:-85px;filter:drop-shadow(0 14px 16px #0005);animation:float 6s ease-in-out infinite}
.word-chip{position:absolute;background:#fff;color:var(--tx);font-family:var(--mono);font-size:13px;font-weight:700;padding:8px 14px;border-radius:12px;box-shadow:0 18px 30px -16px #0007}
.chip-one{left:0;top:18px}.chip-two{right:0;top:92px}
.story-caption{display:flex;align-items:center;gap:12px;font-size:12.5px;color:#ffffffb3}.story-caption i{flex:1;height:1px;background:#ffffff40}
.auth-form-panel{display:flex;align-items:center;padding:44px}
#auth-root{width:100%;max-width:400px;margin:0 auto}
.form-kicker{display:block;font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--br);margin-bottom:6px}
#auth-root h2{font-size:28px;font-weight:800;margin-bottom:6px}
.form-description{color:var(--tx2);font-size:14.5px;margin-bottom:18px}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:var(--bg);border-radius:99px;margin-bottom:18px}
.auth-tabs a{text-align:center;padding:8px;border-radius:99px;font-weight:700;font-size:14.5px;color:var(--tx2)}.auth-tabs a.active{background:#fff;color:var(--br);box-shadow:var(--sh-s)}
.auth-form{display:grid;gap:8px}
.field-label{margin-top:6px}
.auth-form input{width:100%;min-height:46px;border-radius:12px}
.field-hint{font-size:12.5px;color:var(--tx3);margin-top:-2px}
.verification-preview{display:grid;gap:8px}
.verification-row{display:flex;gap:8px}.verification-row input{flex:1}.verification-row button{border-radius:12px;white-space:nowrap}
.password-wrap{position:relative}.password-wrap input{padding-right:64px}
.password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--br);font-size:13px;padding:6px 10px}
.agreement{display:flex;gap:8px;align-items:flex-start;font-size:13px;font-weight:400;color:var(--tx2);margin-top:6px}.agreement input{width:auto;min-height:0;margin-top:4px}
.submit-auth{height:48px;margin-top:10px;border-radius:12px;background:var(--br);border-color:var(--br);color:#fff;font-size:16px;font-weight:700}.submit-auth:hover{background:var(--br-d);border-color:var(--br-d);color:#fff}
.switch-auth,.forgot-password-link{font-size:13.5px;color:var(--br);text-align:center;display:block;margin-top:8px;font-weight:600}
.recovery-login-button{border-radius:12px;height:44px}
.legal-layout{max-width:820px;margin:28px auto 40px;background:#fff;border:1px solid var(--ln);border-radius:var(--r-xl);padding:34px 38px;width:calc(100% - 2*var(--gut));box-shadow:var(--sh-s)}
.legal-layout h1{font-size:28px;font-weight:800;margin-bottom:6px}.legal-layout h2{font-size:18px;margin:24px 0 8px}
.legal-layout p,.legal-layout li{color:var(--tx2);font-size:14.5px}.legal-layout ul,.legal-layout ol{padding-left:22px;display:grid;gap:6px}
.contact-layout{text-align:left}
@media(max-width:820px){
 .auth-layout{grid-template-columns:1fr;margin-top:12px;min-height:0}
 .auth-story{padding:26px 24px 20px}.auth-story h1{font-size:28px}.mascot-scene{height:130px;margin-top:0}.mascot-scene img{width:110px;margin-left:-55px}.chip-two{top:56px}.story-caption{display:none}
 .auth-form-panel{padding:26px 22px}
 .legal-layout{padding:22px 18px}
}

/* 手机登录/注册：整屏表单，不要卡片、圆角和品牌插画 */
@media(max-width:820px){
 body:has(.auth-layout){background:#fff}
 .auth-header{padding-block:10px;border-bottom:1px solid var(--ln)}
 .auth-layout{margin:0;width:100%;max-width:none;border-radius:0;box-shadow:none;border:0;background:#fff;display:block}
 .auth-story{display:none}
 .auth-form-panel{display:block;padding:20px 20px 28px}
 #auth-root{max-width:none}
 #auth-root h2{font-size:24px;margin-bottom:4px}
 #auth-root .form-kicker{display:none}
 #auth-root .form-description{font-size:14px;margin-bottom:12px}
 .auth-tabs{margin-bottom:12px}
}
body:has(.auth-layout) main::before{display:none!important}

/* 联系我们 / 商务合作 */
.ct-topnav{display:flex;align-items:center;gap:8px}.ct-topnav a:not(.back-link){font-size:14px;font-weight:600;color:var(--tx2);padding:7px 12px;border-radius:99px}.ct-topnav a:not(.back-link):hover{color:var(--br)}
.ct-main{max-width:1040px;margin:24px auto 40px;width:calc(100% - 2*var(--gut));display:grid;gap:22px}
.ct-loading{text-align:center;color:var(--tx3);padding:60px 0}
.ct-k{display:inline-flex;align-self:flex-start;height:28px;align-items:center;padding:0 14px;border-radius:99px;background:#ffffff26;border:1px solid #ffffff44;font-size:13px;font-weight:700;color:#fff}
.ct-hero,.biz-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:40px 44px;border-radius:var(--r-xl);color:#fff;overflow:hidden;background:radial-gradient(420px 300px at 85% 20%,#7a63ff55,transparent 70%),linear-gradient(135deg,#4b3bd6,#3a2cb8)}
.ct-hero-copy,.biz-hero-copy{display:flex;flex-direction:column;gap:14px;max-width:600px;position:relative;z-index:1}
.ct-hero h1,.biz-hero h1{color:#fff;font-size:clamp(30px,4vw,44px);font-weight:800;line-height:1.2}
.biz-hero h1 em{font-style:normal;color:#ffb866}
.ct-hero p,.biz-hero p{color:#ffffffdd;font-size:16px;line-height:1.7}.biz-hero p b{color:#fff}
.ct-fox{width:210px;height:auto;flex:none;filter:drop-shadow(0 16px 18px #0004);animation:float 6s ease-in-out infinite}
.ct-tip{padding:10px 14px;border-radius:12px;background:#ffffff1c;font-size:13.5px;color:#ffffffdd}.ct-tip b{color:#ffd9a8}
.ct-grid{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:18px;align-items:start}
.ct-grid:has(.ct-side:only-child){grid-template-columns:1fr}
.ct-card{background:#fff;border:1px solid var(--ln);border-radius:var(--r-l,20px);box-shadow:var(--sh-s);padding:20px}
.ct-qr{text-align:center;display:grid;gap:12px}.ct-qr h2{font-size:18px;font-weight:800}
.ct-qr figure{margin:0;padding:10px;border-radius:16px;background:var(--bg)}.ct-qr img{display:block;width:100%;max-width:260px;aspect-ratio:1;object-fit:contain;margin:0 auto;border-radius:10px;background:#fff}
.ct-qr p{font-size:13.5px;color:var(--tx3)}
.ct-side{display:grid;gap:14px;min-width:0}
.ct-channel{display:flex;align-items:center;gap:14px;padding:16px 18px}.ct-channel>div{flex:1;min-width:0}
.ct-channel small{display:block;font-size:12.5px;color:var(--tx3)}.ct-channel b{display:block;font-size:17px;word-break:break-all}
.ct-ico{width:44px;height:44px;border-radius:14px;background:var(--br-bg);color:var(--br);display:grid;place-items:center;flex:none}
.ct-copy{border:1px solid var(--ln);background:#fff;color:var(--br);font-weight:700;font-size:13.5px;padding:7px 16px;border-radius:99px;cursor:pointer}.ct-copy:hover{background:var(--br-bg)}.ct-copy.ok{background:var(--br);color:#fff;border-color:var(--br)}
.ct-biz{display:grid;gap:4px;background:linear-gradient(135deg,#fff4e6,#ffe7cc);border-color:#ffd2a1;color:var(--tx)}.ct-biz-k{font-size:12.5px;font-weight:800;color:#c2610a;letter-spacing:.08em}.ct-biz b{font-size:18px}.ct-biz-go{font-weight:700;color:#c2610a;font-size:14px}.ct-biz:hover{transform:translateY(-2px)}
.ct-help h2,.biz-section h2{font-size:22px;font-weight:800;margin-bottom:14px}
.ct-help-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ct-help-grid a{display:grid;gap:4px;padding:16px;border-radius:16px;background:#fff;border:1px solid var(--ln);color:var(--tx)}.ct-help-grid a:hover{border-color:var(--br);box-shadow:var(--sh-s)}
.ct-help-grid b{font-size:15px}.ct-help-grid span{font-size:13px;color:var(--tx3)}
/* 商务合作 */
.biz-hero{background:radial-gradient(420px 300px at 85% 20%,#ff8a1f55,transparent 70%),linear-gradient(135deg,#4b3bd6,#3a2cb8)}
.biz-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.biz-btn{display:inline-flex;align-items:center;height:46px;padding:0 24px;border-radius:99px;background:#ff8a1f;color:#fff;font-weight:800;font-size:15.5px;box-shadow:0 10px 20px -10px #ff8a1f}.biz-btn:hover{background:#ff9a3d}
.biz-btn.ghost{background:#ffffff1f;border:1px solid #ffffff55;box-shadow:none;font-weight:700}.biz-btn.ghost:hover{background:#ffffff33}
.biz-points{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:4px 0 0}.biz-points li{font-size:13px;font-weight:600;padding:5px 12px;border-radius:99px;background:#ffffff1c}
.biz-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.biz-card{background:#fff;border:1px solid var(--ln);border-radius:20px;padding:20px;box-shadow:var(--sh-s);display:grid;gap:8px;align-content:start}
.biz-card h3{font-size:17px;font-weight:800}.biz-card p{font-size:14px;color:var(--tx2);line-height:1.65}
.biz-ico{width:44px;height:44px;border-radius:14px;background:#fff1e0;color:#e8730a;display:grid;place-items:center;font-size:22px;font-weight:800}
.biz-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.biz-steps li{display:flex;gap:12px;background:#fff;border:1px solid var(--ln);border-radius:18px;padding:16px}
.biz-steps i{flex:none;width:32px;height:32px;border-radius:50%;background:var(--br);color:#fff;font-style:normal;font-weight:800;display:grid;place-items:center}
.biz-steps b{display:block;font-size:15px;margin-bottom:4px}.biz-steps span{font-size:13.5px;color:var(--tx2);line-height:1.6}
.biz-tags{display:flex;flex-wrap:wrap;gap:10px}.biz-tags span{padding:9px 18px;border-radius:99px;background:var(--br-bg);color:var(--br);font-weight:700;font-size:14.5px}
.biz-faq{display:grid;gap:10px}
.biz-faq details{background:#fff;border:1px solid var(--ln);border-radius:16px;padding:14px 18px}
.biz-faq summary{cursor:pointer;font-weight:700;font-size:15.5px}.biz-faq details p{margin-top:8px;color:var(--tx2);font-size:14.5px;line-height:1.7}
.biz-contact{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:32px 36px;border-radius:var(--r-xl);background:linear-gradient(135deg,#fff4e6,#ffe7cc);border:1px solid #ffd2a1;scroll-margin-top:80px}
.biz-contact-copy{display:grid;gap:10px;min-width:0}.biz-contact .ct-k{background:#ff8a1f;border-color:#ff8a1f}.biz-contact h2{margin:0}.biz-contact p{color:var(--tx2)}
.biz-channels{display:grid;gap:8px}.biz-channels div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.biz-channels small{color:var(--tx3);width:64px}.biz-channels b{word-break:break-all}
.biz-channels button{border:1px solid #ffc88f;background:#fff;color:#c2610a;font-weight:700;font-size:13px;padding:4px 12px;border-radius:99px;cursor:pointer}
.biz-qr{margin:0;flex:none;text-align:center;background:#fff;padding:14px;border-radius:20px;box-shadow:var(--sh-s)}.biz-qr img{display:block;width:200px;max-width:100%;aspect-ratio:1;object-fit:contain}.biz-qr figcaption{font-size:13px;color:var(--tx3);margin-top:8px}
@media(max-width:900px){.biz-benefits,.biz-steps,.ct-help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 .ct-main{margin-top:12px;gap:16px}
 .ct-hero,.biz-hero{padding:26px 22px;flex-direction:column;align-items:flex-start;border-radius:22px}
 .ct-fox{display:none}
 .ct-grid{grid-template-columns:1fr}
 .biz-benefits,.biz-steps,.ct-help-grid{grid-template-columns:1fr}
 .biz-contact{flex-direction:column;align-items:stretch;padding:24px 20px}.biz-qr{align-self:center}
 .ct-topnav a:not(.back-link){display:none}
 .biz-btn{flex:1;justify-content:center;padding:0 14px;white-space:nowrap;font-size:14.5px}
}

.ct-main::before,body.page-contact main::before{display:none!important}
