:root{--royal:#03499D;--logo:#1C5195;--navy:#0F2B53;--beak:#F9930B;--tutu:#F5DAD3;--paper:#F4F6FA;--line:#E1E6EF;--ink:#14213A;--mute:#6B7690}
*{box-sizing:border-box}body{margin:0;font:15px/1.55 -apple-system,"PingFang SC","Noto Sans CJK SC","Microsoft YaHei",sans-serif;background:var(--paper);color:var(--ink);height:100dvh;-webkit-font-smoothing:antialiased}
.hidden{display:none!important}button{font:inherit;cursor:pointer}a{color:var(--logo)}
/* 登录 */
.login{position:relative;min-height:100dvh;display:flex;align-items:center;justify-content:center;gap:clamp(16px,3vw,48px);padding:24px;overflow:auto;background:radial-gradient(120% 90% at 50% 40%,#0A55B4 0%,var(--royal) 45%,#013A85 100%)}
.login{--gh:min(56vh,420px,calc((100vw - 540px)/2.2))}.goose{flex:0 0 auto;height:var(--gh);width:calc(var(--gh) * 1.04);object-fit:contain;object-position:center bottom;pointer-events:none;user-select:none;filter:drop-shadow(0 18px 24px rgba(1,30,80,.35))}
.card{position:relative;z-index:2;flex:0 0 auto;background:#fff;width:min(380px,100%);border-radius:22px;text-align:center;box-shadow:0 24px 60px rgba(6,24,64,.35);overflow:hidden}
.hero{position:relative;background:#074C9A;aspect-ratio:570/360;line-height:0}
.hero video,.hero img{width:100%;height:100%;object-fit:cover;display:block}
#snd{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;gap:5px;height:28px;padding:0 11px 0 9px;border-radius:99px;border:1px solid rgba(255,255,255,.55);background:rgba(15,43,83,.35);color:#fff;font-size:12px;letter-spacing:1px;cursor:pointer;backdrop-filter:blur(6px);transition:.15s}
#snd:hover{background:rgba(15,43,83,.55)}
#snd .on{display:none}#snd[aria-pressed="true"]{background:rgba(15,43,83,.35);border-color:rgba(255,255,255,.55)}#snd[aria-pressed="true"] .on{display:inline}#snd[aria-pressed="true"] .off{display:none}
.card .body{padding:20px 30px 22px}
.card h1{margin:0;font-size:26px;letter-spacing:6px;color:var(--navy);font-weight:700}
.card .sub{display:inline-block;margin:6px 0 16px;font-size:13px;letter-spacing:4px;color:var(--logo);padding:2px 12px;border-radius:99px;background:var(--tutu)}
.card input{display:block;width:100%;margin:10px 0;padding:13px 14px;border:1px solid var(--line);border-radius:12px;font-size:16px;background:#F8FAFD;outline:none;transition:.15s}
.card input:focus{border-color:var(--logo);background:#fff;box-shadow:0 0 0 3px rgba(28,81,149,.12)}
.card .body>button,.primary{background:var(--royal);color:#fff;border:0;border-radius:12px;padding:12px 14px;width:100%;font-weight:600;letter-spacing:2px}
.card .body>button{margin-top:6px}.card .body>button:hover,.primary:hover{background:var(--logo)}
.err{color:#C0392B;min-height:1.4em;font-size:13px;margin-top:6px}.tip{color:var(--mute);font-size:12px}
@media(max-width:820px){.login{flex-wrap:wrap;align-content:flex-start;padding:16px 12px 20px;gap:12px}.card{order:0;width:100%;max-width:420px}
 .login{--gh:min(24vh,200px,calc((100vw - 48px)/2.1))}.goose{order:1}.g-left{margin-left:auto}.g-right{margin-right:auto}
 .card .body{padding:14px 24px 16px}}
/* 主界面 */
#app{display:flex;flex-direction:column;height:100dvh}
header{background:var(--royal);color:#fff;padding:10px 16px;padding-top:max(10px,env(safe-area-inset-top));display:flex;align-items:center;gap:10px;font-weight:600;box-shadow:0 1px 0 rgba(0,0,0,.06)}
.hlogo{height:26px}#title{flex:1;letter-spacing:1px}
.bud{font-weight:400;font-size:12px;background:#0F2B53;border:1px solid #fff;padding:2px 10px;border-radius:99px}.bud.warn{background:var(--beak);color:#fff}
main{flex:1;overflow:hidden}.view{height:100%;overflow:auto}#v-chat{display:flex;overflow:hidden}
aside{width:232px;background:#fff;border-right:1px solid var(--line);overflow:auto;padding:12px}
aside .primary{margin-bottom:10px}
aside .it{padding:10px 12px;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;color:var(--navy);border-left:3px solid transparent;margin-bottom:2px}
aside .it:hover{background:var(--paper)}aside .it.on{background:#EAF0FA;border-left-color:var(--beak)}aside .it small{color:var(--mute);display:block;font-weight:400;font-size:12px}
.chat{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--paper)}#msgs{flex:1;overflow:auto;padding:16px}
.m{display:flex;margin:12px 0}.m .b{max-width:80%;padding:10px 14px;border-radius:14px;white-space:pre-wrap;word-break:break-word;background:#fff;box-shadow:0 1px 2px rgba(15,43,83,.08);border-top-left-radius:4px}
.m.user{justify-content:flex-end}.m.user .b{background:var(--logo);color:#fff;border-top-left-radius:14px;border-top-right-radius:4px}.m.user .b a{color:#fff}
.b a{color:var(--logo);word-break:break-all}
.send{display:flex;gap:8px;padding:10px 12px;background:#fff;border-top:1px solid var(--line);padding-bottom:max(10px,env(safe-area-inset-bottom))}
.send textarea{flex:1;border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:10px 12px;font:inherit;resize:none;outline:none}.send textarea:focus{border-color:var(--logo)}
.send button{background:var(--beak);color:#fff;border:0;border-radius:12px;padding:0 20px;font-weight:600}
.intake{background:#fff;margin:14px;padding:16px;border-radius:16px;overflow:auto;box-shadow:0 1px 3px rgba(15,43,83,.08)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.intake label{font-size:12px;color:var(--mute)}.intake input,.intake select,.intake textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#F8FAFD;margin-top:3px}
.intake textarea{margin:10px 0;height:64px}.chk{display:flex;align-items:center;gap:6px}.chk input{width:auto}
.hint{font-size:12px;color:var(--navy);background:var(--tutu);padding:6px 10px;border-radius:8px;margin-bottom:12px}
.side{width:340px;border-left:1px solid var(--line);background:#fff;overflow:auto;padding:12px;font-size:13px}.side>b{color:var(--navy)}
.pc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:10px}.pc b{display:block;color:var(--navy)}
#sres .pc{cursor:pointer}#sres .pc:hover{border-color:var(--logo)}
.tag{display:inline-block;background:#EAF0FA;color:var(--logo);border-radius:6px;padding:0 6px;margin:2px 2px 2px 0;font-size:11px}.tag.r{background:#FDEBD8;color:#A85A00}.tag.g{background:var(--tutu);color:var(--navy)}
.kpi{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;padding:14px}.kpi div{background:#fff;border-radius:14px;padding:14px;text-align:center;color:var(--mute);font-size:13px;box-shadow:0 1px 3px rgba(15,43,83,.08)}.kpi b{font-size:24px;display:block;color:var(--royal)}
#v-panel h3{color:var(--navy)}table{width:calc(100% - 28px);margin:0 14px 14px;border-collapse:collapse;background:#fff;font-size:13px;border-radius:12px;overflow:hidden}th{background:#EAF0FA;color:var(--navy)}td,th{padding:8px;border-bottom:1px solid var(--line);text-align:left}
.sbar{padding:12px 14px;position:sticky;top:0;background:var(--paper);z-index:1}.sbar input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font-size:16px;outline:none}.sbar input:focus{border-color:var(--logo)}#sres{padding:0 14px}#sres>button{border:0;background:none;color:var(--logo);padding:4px 0 10px}
nav{display:flex;background:#fff;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}nav button{flex:1;border:0;background:none;padding:7px 4px;font-size:12px;color:var(--mute);display:flex;flex-direction:column;align-items:center;gap:1px}nav button i{font-style:normal;font-size:18px;filter:grayscale(1);opacity:.6}
nav button.on{color:var(--royal);font-weight:600}nav button.on i{filter:none;opacity:1}
@media(max-width:820px){aside{position:absolute;z-index:3;left:0;top:48px;bottom:58px;transform:translateX(-100%);transition:.2s;box-shadow:4px 0 20px rgba(0,0,0,.12)}aside.open{transform:none}.side{display:none}#title::before{content:"";cursor:pointer}.m .b{max-width:88%}}

.home{max-width:720px;margin:0 auto;padding:20px 14px;display:grid;gap:14px}.home h2{color:var(--navy);margin:4px 0;font-size:20px}
.entry{display:grid;grid-template-columns:48px 1fr;gap:2px 12px;text-align:left;background:#fff;border:1px solid var(--line);border-left:4px solid var(--royal);border-radius:16px;padding:16px;box-shadow:0 1px 3px rgba(15,43,83,.08)}
.entry i{grid-row:span 2;font-style:normal;font-size:30px;align-self:center}.entry b{color:var(--navy);font-size:17px}.entry span{color:var(--mute);font-size:13px}.entry:hover{background:#EAF0FA}.entry.hot{border-left-color:var(--beak)}
#v-quick .chat{height:100%}.msgs{flex:1;overflow:auto;padding:16px}.qh{margin:10px 12px 0}
.steps{display:grid;gap:6px;margin-bottom:10px}.steps div{background:#EAF0FA;color:var(--navy);border-radius:10px;padding:8px 10px;font-size:13px}.steps b{background:var(--royal);color:#fff;border-radius:6px;padding:1px 8px;margin-right:6px;font-size:12px}
.ghost{background:#fff;color:var(--royal);border:1px solid var(--royal);border-radius:10px;padding:8px 14px;font-weight:600}.ghost:hover{background:#EAF0FA}
#pmsg.bad{color:#C0392B;font-size:13px}#pmsg.ok{color:#1E7B3A}
.codebar{margin:12px 14px 0;background:var(--tutu);border:2px solid var(--beak);border-radius:14px;padding:12px 14px;color:var(--navy);display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.codebar b{font-size:24px;letter-spacing:1px;color:var(--royal)}.codebar button{background:var(--beak);color:#fff;border:0;border-radius:10px;padding:6px 14px;font-weight:600}
.sugg{margin-top:8px;background:var(--tutu);border-radius:10px;padding:8px 10px;font-size:13px;color:var(--navy)}.sugg button{margin-left:8px;background:var(--beak);color:#fff;border:0;border-radius:8px;padding:4px 10px;font-weight:600}

.home{max-width:760px;padding:28px 18px 40px;gap:16px}
.hhero{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;background:radial-gradient(120% 120% at 50% 30%,#0A55B4 0%,var(--royal) 50%,#013A85 100%);border-radius:22px;padding:22px 18px 0;color:#fff;overflow:hidden;box-shadow:0 10px 30px rgba(3,73,157,.18)}
.hhero img{height:118px;width:auto;flex:0 0 auto;filter:drop-shadow(0 10px 14px rgba(1,30,80,.35))}.hhero div{text-align:center;padding-bottom:22px}
.hhero small{letter-spacing:4px;font-size:11px;opacity:.75}.hhero h2{color:#fff;font-size:22px;letter-spacing:3px;margin:6px 0}.hhero p{margin:0;font-size:13px;opacity:.85}
.hhero div p{display:inline-block;background:var(--tutu);color:var(--navy);border-radius:99px;padding:2px 12px;letter-spacing:2px}
.entry{border:1px solid var(--line);border-left:1px solid var(--line);padding:18px 20px;transition:.15s;gap:4px 16px}
.entry:hover{background:#fff;border-color:var(--logo);box-shadow:0 6px 18px rgba(15,43,83,.10);transform:translateY(-1px)}
.entry i{width:48px;height:48px;border-radius:14px;background:#EAF0FA;color:var(--royal);font-size:20px;font-weight:700;display:flex;align-items:center;justify-content:center}
.entry.hot i{background:var(--tutu);color:var(--beak)}.entry b{letter-spacing:1px}
@media(max-width:600px){.hhero img{height:78px}.hhero h2{font-size:18px;letter-spacing:1px}.hhero{padding:16px 10px 0}.home{padding:16px 12px 30px}}
#paste{height:110px;background:#fff;border-style:dashed;border-color:var(--logo)}
.hhero{line-height:1.5}.hhero div{flex:1;min-width:0}.hhero h2{line-height:1.3}
.codebar{margin:12px 14px 4px;box-shadow:0 4px 14px rgba(249,147,11,.15)}.codebar span{flex-basis:100%;font-size:13px}

/* v2 排版 */
.steps div{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;line-height:1.6;min-width:0}
.steps b{flex:0 0 auto;margin:1px 0 0;white-space:nowrap}.steps span{flex:1;min-width:0;overflow-wrap:anywhere}
.intake,.intake *{min-width:0}.intake{max-width:100%}.intake .grid{min-width:0}.hint,.tip,#pmsg{overflow-wrap:anywhere}
.b{overflow-wrap:anywhere}
.codebar{position:relative;display:block;margin:16px 14px 6px;padding:22px 20px 18px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--beak);border-radius:18px;box-shadow:0 8px 24px rgba(15,43,83,.10)}
.cb-top{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding-bottom:16px;border-bottom:1px solid var(--line)}
.cb-top small{color:var(--mute);font-size:12px;letter-spacing:3px}
.codebar .cb-top b{font-size:30px;letter-spacing:2px;color:var(--royal);line-height:1.2;overflow-wrap:anywhere}
.codebar .cb-top button{background:var(--beak);color:#fff;border:0;border-radius:12px;padding:9px 26px;font-weight:600;letter-spacing:2px}
.cb-steps{list-style:none;margin:14px auto 0;padding:0;max-width:420px;display:grid;gap:10px}
.cb-steps li{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.7;color:var(--ink)}
.cb-steps i{flex:0 0 24px;height:24px;border-radius:50%;background:var(--tutu);color:var(--navy);font-style:normal;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:2px}
.cb-steps span{flex:1;min-width:0}
.cb-x{position:absolute;top:10px;right:12px;background:none;border:0;color:var(--mute);font-size:12px;padding:4px 6px}
.cb-x:hover{color:var(--navy)}
.codebar span{flex-basis:auto;font-size:inherit}
@media(max-width:600px){.codebar{margin:12px 10px 6px;padding:20px 14px 16px}.codebar .cb-top b{font-size:26px}.intake{margin:10px;padding:14px}}
.codebar .cb-x{background:none;color:var(--mute);border:0;font-weight:400;padding:4px 8px}
.hhero small,.hhero h2,.hhero p{white-space:nowrap}
@media(max-width:600px){.hhero{display:grid;grid-template-columns:1fr 1fr;align-items:end;padding:14px 6px 0}.hhero div{grid-column:1/3;grid-row:1;padding-bottom:6px}.hhero img{height:88px}.hhero img:first-child{grid-row:2;justify-self:start}.hhero img:last-child{grid-row:2;justify-self:end}.hhero h2{font-size:21px}.hhero small{letter-spacing:3px}}
.hhero img{filter:drop-shadow(0 8px 10px rgba(1,30,80,.18))}
aside:not(.open){box-shadow:none}
.hhero{background:var(--royal);box-shadow:none}

.sbar{display:grid;gap:10px}
.seg{display:flex;background:#EAF0FA;border-radius:12px;padding:4px;gap:4px;max-width:360px}
.seg button{flex:1;border:0;background:none;color:var(--navy);border-radius:9px;padding:8px 0;font-weight:600;letter-spacing:2px}
.seg button.on{background:var(--royal);color:#fff;box-shadow:0 2px 6px rgba(3,73,157,.25)}
.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chips .ck{color:var(--mute);font-size:12px;margin-right:2px}
.chips button{border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:99px;padding:4px 12px;font-size:13px}
.chips button.on{background:var(--tutu);border-color:var(--beak);color:var(--navy);font-weight:600}
#sres .pc small.sp{color:var(--mute)}#sres{overflow-wrap:anywhere}
#msgs:empty{display:none}
html{background:var(--royal)}body{background:var(--paper)}
header{background:var(--royal)!important;padding-top:calc(10px + env(safe-area-inset-top));backdrop-filter:none!important;-webkit-backdrop-filter:none!important;position:relative;z-index:5}
header::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:200px;background:var(--royal)}
html,body{background:#03499D!important}
#app{background:#03499D}
main{background:var(--paper)}nav{background:#fff}
header{position:sticky;top:0;opacity:1;box-shadow:none!important}
.bud{background:#0F2B53!important;color:#fff;border:1px solid rgba(15,43,83,1)}
.bud.warn{background:var(--beak)!important}

/* v6 */
.rem{display:flex;align-items:center;gap:8px;margin:2px 0 10px;font-size:13px;color:var(--mute);cursor:pointer;user-select:none}
.card .rem input{width:16px;height:16px;margin:0;accent-color:var(--royal)}
.home{grid-template-columns:1fr 1fr;max-width:820px}.home .hhero{grid-column:1/-1}
.entry{align-content:start;min-height:112px}
@media(max-width:640px){.home{grid-template-columns:1fr}.entry{min-height:0}}
.sseg{max-width:none;margin:0 0 8px}.sseg button{letter-spacing:0;font-size:13px;padding:7px 0}
.cq{width:100%;padding:9px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;font-size:14px;background:#F8FAFD;outline:none;margin-bottom:10px}.cq:focus{border-color:var(--logo);background:#fff}
.casebar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 14px 0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 14px;flex-wrap:wrap}
.casebar b{color:var(--royal);font-size:16px;letter-spacing:1px}.casebar label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mute)}
.casebar select{border:1px solid var(--line);border-radius:10px;padding:6px 10px;font:inherit;color:var(--navy);background:#F8FAFD}
.dupbar{margin:12px 14px 0;background:#fff;border:1px solid var(--line);border-top:4px solid var(--beak);border-radius:16px;padding:14px 16px;display:grid;gap:12px}
.dupbar b{display:block;color:var(--navy);font-size:15px}.dupbar span{color:var(--mute);font-size:13px}
.dupact{display:flex;gap:10px;flex-wrap:wrap}.dupact button{width:auto;padding:9px 18px}
.goose,.hhero img,#v-home img{filter:none!important;box-shadow:none!important;background:transparent!important}
#lf>button{display:block;background:var(--royal);color:#fff;border:0;border-radius:12px;padding:12px 14px;width:100%;font-weight:600;letter-spacing:2px;margin-top:6px}#lf>button:hover{background:var(--logo)}
/* v7 登录页紧凑（手机） */
.hero{background:#074C9A}
@media(max-width:820px){
 .login{padding:max(12px,env(safe-area-inset-top)) 12px 12px;gap:10px;align-content:flex-start}
 .card{max-width:380px;border-radius:20px}
 .hero{aspect-ratio:auto;height:clamp(110px,19vh,160px)}
 .hero video,.hero img{object-fit:contain;background:#074C9A}
 .card .body{padding:12px 22px 12px}
 .card h1{font-size:22px;letter-spacing:5px;line-height:1.3}
 .card .sub{margin:4px 0 8px;font-size:12px;padding:1px 10px}
 .card input{margin:7px 0;padding:11px 13px}
 .rem{margin:4px 0 8px;font-size:12px;white-space:nowrap;justify-content:flex-start}
 #lf>button{padding:11px 14px;margin-top:2px}
 .err{min-height:0;margin-top:4px;font-size:12px}.err:empty{display:none}
 .card .tip{font-size:11px;margin-top:6px;line-height:1.4}
 #snd{height:24px;font-size:11px;right:8px;bottom:8px}
 .login{--gh:min(calc(100dvh - 470px),200px,calc((100vw - 48px)/2.1))}
 .goose{height:max(var(--gh),110px);width:calc(max(var(--gh),110px) * 1.04)}
}
@media(max-width:820px){.login{align-content:center;row-gap:18px}}
/* v8 首页手机紧凑 */
@media(max-width:640px){
 .home{padding:10px 12px 18px;gap:10px}
 .hhero{padding:10px 8px 0;border-radius:18px;row-gap:0}
 .hhero div{padding-bottom:0}.hhero small{font-size:10px}.hhero h2{font-size:19px;margin:2px 0 4px}.hhero div p{font-size:12px;padding:1px 10px}
 .hhero img{height:72px;margin-top:-26px}
 .entry{padding:12px 14px;gap:2px 12px;grid-template-columns:40px 1fr}
 .entry i{width:40px;height:40px;font-size:17px;border-radius:12px}
 .entry b{font-size:16px}.entry span{font-size:12.5px;line-height:1.5}
}
@media(max-width:640px){.hhero img{margin-top:-14px;height:68px}}

/* v9 案例库 + 图标字 */
.entry i{font-family:"PingFang SC","Noto Sans CJK SC","Noto Sans SC","Microsoft YaHei",sans-serif;font-weight:700;font-size:20px;line-height:1}
@media(max-width:640px){.entry i{font-size:19px}}
.clres{padding:4px 14px 20px;display:grid;gap:12px;max-width:860px;margin:0 auto}
.case{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:0 1px 3px rgba(15,43,83,.06);overflow-wrap:anywhere}
.ch{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px}.ch b{color:var(--navy);font-size:15px;margin-right:4px}.ch small{margin-left:auto;color:var(--mute);font-size:11px}
.cr{display:grid;grid-template-columns:52px 1fr;gap:8px;padding:6px 0;border-top:1px dashed var(--line)}.cr span{color:var(--mute);font-size:12px;padding-top:2px}.cr p{margin:0;font-size:13.5px;line-height:1.65;color:var(--ink)}
.cf{margin-top:8px}
nav button{min-width:0}

/* v10 数据面板 + 5 导航 */
#v-panel{overflow-x:hidden;max-width:100vw}
.ptop{display:flex;justify-content:flex-end;padding:10px 14px 0}
#lo{background:none;border:1px solid var(--line);color:var(--mute);font-size:12px;border-radius:99px;padding:4px 12px;letter-spacing:1px}#lo:hover{color:var(--navy);border-color:var(--logo)}
.kpi{grid-template-columns:repeat(auto-fill,minmax(min(130px,40vw),1fr))}.kpi div{min-width:0;overflow-wrap:anywhere}
.tscroll{margin:0 14px 14px;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px;background:#fff;border:1px solid var(--line)}
.tscroll table{width:100%;margin:0;min-width:520px}
#v-panel td,#v-panel th{overflow-wrap:anywhere;vertical-align:top}#v-panel .tip,#v-panel h3{overflow-wrap:anywhere}
@media(max-width:640px){.kpi{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 12px}.kpi div{padding:10px 6px;font-size:12px}.kpi b{font-size:19px}.tscroll{margin:0 12px 12px}#v-panel h3{padding:0 12px!important;font-size:16px}}
nav button{flex:1 1 0;min-width:0;white-space:nowrap}
@media(max-width:640px){
 .tscroll{overflow:visible;background:none;border:0}
 .tscroll table{min-width:0;background:none}
 .tscroll tr:first-child{display:none}
 .tscroll tr{display:grid;grid-template-columns:auto 1fr auto;gap:2px 10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:8px}
 .tscroll td{display:block;border:0;padding:0;font-size:13px}
 .tscroll td:nth-child(1){color:var(--royal);font-weight:600;white-space:nowrap}
 .tscroll td:nth-child(2){color:var(--beak);font-weight:600}
 .tscroll td:nth-child(3){grid-column:1/-1;grid-row:2;color:var(--ink);line-height:1.55}
 .tscroll td:nth-child(4){grid-column:3;grid-row:1;text-align:right}
}
.hhero{padding-bottom:14px!important}@media(max-width:640px){.hhero{padding-bottom:10px!important}.hhero img{height:62px;margin-top:-10px}}

/* v11 排版：不重叠、不孤字 */
.afrow{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:2px 0 14px}
.afrow #autofill{display:block;margin:0;-webkit-appearance:none;appearance:none;line-height:1.4}
.afrow #pmsg{margin:0;line-height:1.5}.afrow #pmsg:empty{display:none}
.intake .hint{display:grid;gap:2px;margin:0 0 14px;padding:8px 12px;line-height:1.55;clear:both}
.steps span{display:grid;gap:1px}.steps em,.entry em,.hint span,.qh span{font-style:normal;display:block}
.steps small{color:var(--mute);font-size:12px}
.entry span{display:grid;gap:0}
.qh{display:grid;gap:1px;line-height:1.55}
.hint,.tip,.steps,.entry span,.cb-steps,.case p,#pmsg,.cr p,.dupbar,.casebar{text-wrap:pretty;line-break:strict}
.entry em,.steps em,.steps small,.hint span{white-space:normal;text-wrap:balance}
aside .it small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.casebar label{white-space:nowrap}

/* ===== v13 设计系统：HIG 字号 + 8pt 网格 ===== */
:root{--font:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Microsoft YaHei",sans-serif;
--fs-lt:30px;--fs-t:21px;--fs-h:17px;--fs-b:15px;--fs-f:13px;--fs-c:12px;
--s1:8px;--s2:16px;--s3:24px;--s4:32px;--r1:12px;--r2:16px;--r3:20px;--ink2:#5B6680}
body,button,input,select,textarea{font-family:var(--font)}
body{font-size:var(--fs-b);line-height:1.5;letter-spacing:0}
header{font-size:var(--fs-h);font-weight:600;letter-spacing:.2px}
#title::before{content:none!important}
#title{display:flex;align-items:center;gap:6px}
@media(max-width:820px){#title::after{content:"";width:16px;height:12px;order:-1;background:linear-gradient(#fff 0 0) top/100% 2px no-repeat,linear-gradient(#fff 0 0) center/100% 2px no-repeat,linear-gradient(#fff 0 0) bottom/100% 2px no-repeat;opacity:.9;margin-right:2px}}
.bud{font-size:var(--fs-c)}
nav i{display:block;height:24px;line-height:0}nav i svg{width:22px;height:22px}
nav button{font-size:11px;letter-spacing:.2px;padding:6px 2px 4px}
nav button.on{color:var(--royal)}
/* 首页 */
.home{gap:12px;padding:var(--s2) var(--s2) var(--s3)}
.hhero small{font-size:var(--fs-c);letter-spacing:3px;opacity:.7}
.hhero h2{font-size:var(--fs-lt)!important;font-weight:700;letter-spacing:.5px!important;line-height:1.2;margin:6px 0 8px!important}
.hhero div p{font-size:var(--fs-b)!important;letter-spacing:.5px!important;padding:3px 14px!important;font-weight:500}
.entry{display:flex!important;align-items:center;gap:var(--s2)!important;min-height:72px!important;height:72px;padding:0 var(--s2)!important;border-radius:var(--r2)}
.entry i{flex:0 0 44px;width:44px!important;height:44px!important;font-size:20px!important;border-radius:12px!important}
.entry .et{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.entry .et b{font-size:19px;font-weight:700;color:var(--navy);letter-spacing:.3px;line-height:1.25}
.entry .et em{font-style:normal;font-size:var(--fs-f);color:var(--ink2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}
.entry .chev{flex:0 0 8px;width:8px;height:14px;color:#AEB7C8}
.entry.hot .chev{color:var(--beak)}
@media(min-width:641px){.home{gap:var(--s2)}.hhero h2{font-size:34px!important}.entry{height:84px;min-height:84px!important}.entry .et b{font-size:20px}.entry .et em{font-size:14px}}
@media(max-width:640px){.hhero{padding:var(--s2) var(--s1) 10px!important}.hhero h2{font-size:28px!important}.hhero img{height:60px;margin-top:-8px}.home{padding:12px 12px var(--s2)}}
/* 页面标题与卡片层级 */
.sbar{gap:12px;padding:var(--s2)}
.seg button{font-size:var(--fs-b);font-weight:600;letter-spacing:.5px;padding:8px 0}
.sbar input{font-size:16px}
.chips button{font-size:var(--fs-f)}.chips .ck{font-size:var(--fs-c)}
#sres{padding:0 var(--s2) var(--s3)}
.pc{padding:14px var(--s2);border-radius:var(--r2);margin-bottom:12px;font-size:var(--fs-f);color:var(--ink2);line-height:1.55}
.pc b{font-size:var(--fs-h);font-weight:600;line-height:1.35;margin-bottom:4px;color:var(--navy)}
.pc small.sp{font-size:var(--fs-c)}
.tag{font-size:var(--fs-c);padding:1px 8px;border-radius:6px}
.side .pc b{font-size:var(--fs-b)}
.tip{font-size:var(--fs-c)}
/* 新学员表单 */
.intake{padding:var(--s3) var(--s2)!important;border-radius:var(--r3)}
.steps{gap:var(--s1);margin-bottom:var(--s2)}
.steps div{padding:12px 14px!important;border-radius:var(--r1);gap:12px!important}
.steps b{font-size:var(--fs-c)!important;letter-spacing:.5px;padding:2px 8px!important}
.steps em{font-size:var(--fs-h);font-weight:600;color:var(--navy);line-height:1.35}
.steps small{font-size:var(--fs-f)!important;line-height:1.45}
#paste{font-size:var(--fs-b);line-height:1.6;margin:0 0 12px!important;padding:12px!important;border-radius:var(--r1)}
.afrow{margin:0 0 var(--s2)!important}
.afrow #autofill{font-size:var(--fs-b);padding:10px 20px;border-radius:var(--r1)}
#pmsg{font-size:var(--fs-f)!important}
.intake .hint{font-size:var(--fs-f)!important;padding:12px 14px!important;border-radius:var(--r1);margin-bottom:var(--s3)!important}
.intake .grid{gap:var(--s2) 12px}
.intake label{font-size:var(--fs-f)!important;font-weight:500;color:var(--ink2)}
.intake input,.intake select,.intake textarea{font-size:16px!important;padding:10px 12px!important;border-radius:10px!important;margin-top:6px!important}
.intake textarea[name=补充]{margin:var(--s2) 0!important;height:88px}
#gen{font-size:var(--fs-h);padding:14px;border-radius:var(--r1)}
/* 对话 */
.m .b{font-size:var(--fs-b);line-height:1.65}
.send textarea{font-size:16px}
.casebar b{font-size:var(--fs-h)}
.codebar .cb-top b{font-size:30px}.cb-top small{font-size:var(--fs-c)}.cb-steps li{font-size:var(--fs-b)}
/* 案例库 / 面板 */
.ch b{font-size:var(--fs-h)!important}.cr p{font-size:var(--fs-b)!important;line-height:1.65}.cr span{font-size:var(--fs-c)!important}
.case{padding:var(--s2)!important;border-radius:var(--r2)!important}
#v-panel h3{font-size:var(--fs-t)!important;font-weight:700;margin:var(--s3) 0 12px}
.kpi b{font-size:26px}.kpi div{font-size:var(--fs-f)}
@media(max-width:640px){.kpi b{font-size:22px}}
.pc .alias{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:6px;font-size:var(--fs-c);color:var(--mute)}
.pc,.pc b,.cr p,.ch b,#v-panel td{text-wrap:pretty}
#sres .pc b{font-size:var(--fs-h);line-height:1.35}

/* v14 节点卡片（jobs-typography） */
.dl{display:grid;gap:8px;padding:0 16px 24px;max-width:860px}
.dli{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 16px;display:grid;gap:4px}
.dlh{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.dlh time{font-size:var(--fs-h);font-weight:600;color:var(--royal);letter-spacing:.2px}
.dlt{font-size:var(--fs-f);color:var(--ink2)}
.st{margin-left:auto;font-size:var(--fs-c);font-weight:600;border-radius:99px;padding:2px 10px;white-space:nowrap}
.st.ok{background:#E6F0FB;color:var(--royal)}.st.wait{background:#FDEEDB;color:#B5650A}.st.na{background:#EEF0F4;color:var(--mute)}
.dln{font-size:var(--fs-b);color:var(--ink);line-height:1.5;text-wrap:pretty;overflow-wrap:anywhere}
.dlp{font-size:var(--fs-f);color:var(--ink2);line-height:1.45}
.dla{font-size:var(--fs-c);color:var(--logo);justify-self:start;margin-top:4px}
@media(max-width:640px){.dl{padding:0 12px 24px}}

.codebar.ff{margin:8px 16px 0;padding:8px 16px;border:0;border-radius:12px;background:transparent;box-shadow:none}.cb-ff{margin:0;font-size:13px;font-weight:400;line-height:1.5;color:var(--mute)}
