/* 子页面的「一个宇宙」（智慧官网项目 40 号文第 2 节，2026-10-04）。首页用 fx.css，其余页面都加载这一份。
   设计语言从首页长出来：同一片星空、同一种玻璃、同一套标题。新写下来的规矩是「光的语法」——
     光点 = 数据、系统；光线 = 关系、先后；光核（白热）= AI；灰 = 你现在的老系统；琥珀 = 断点、要人看一眼；叶绿 = 连上了、办成了。
   同一种光不许换意思；琥珀只给问题，不当装饰色。
   写法照首页：默认显示最后一帧（脚本没跑、减少动态效果时就是这个样子），html.anim 下才先藏起来再出现。 */

:root{--core:#F2FFE8;--leaf-hi:#A6E07F;--leaf-hi2:#B8EC93;--legacy:rgba(197,207,202,.55);--pain:var(--amber);--live:var(--leaf)}
body.u{font-size:16.5px;background:#080D11}
@media (max-width:760px){body.u{font-size:16px}}
.u main{position:relative;overflow-x:clip}

/* ---------- 换页：背景不动，内容对焦淡入（浏览器支持才生效） ---------- */
@view-transition{navigation:auto}
::view-transition-old(root){animation:u-vt-out .28s ease both}
::view-transition-new(root){animation:u-vt-in .42s cubic-bezier(.2,.7,.2,1) both}
@keyframes u-vt-out{to{opacity:0;filter:blur(6px)}}
@keyframes u-vt-in{from{opacity:0;filter:blur(8px)}}
.bar{view-transition-name:bar}
@media (prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}

/* ---------- 背景：同一片星空（轻量版：星点画一次就停，不用 WebGL） ---------- */
.u-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;overflow:hidden}
.u-bg canvas{position:absolute;top:0;left:0;width:100%;height:calc(100% + 160px)}
.u-bg .beams{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;background:
    radial-gradient(60vmax 20vmax at 12% 28%,rgba(107,173,70,.10),transparent 70%),
    radial-gradient(52vmax 18vmax at 88% 72%,rgba(134,196,99,.08),transparent 70%),
    radial-gradient(40vmax 26vmax at 70% 8%,rgba(220,164,92,.04),transparent 70%);
  animation:u-drift 28s ease-in-out infinite alternate}
@keyframes u-drift{to{transform:translate3d(-4%,3%,0) rotate(3deg)}}
.u-bg .grain{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.u-q3 .u-bg .beams{opacity:.6}   /* 查阅页更暗一档 */
.u .cursor-light{position:fixed;left:0;top:0;z-index:-1;pointer-events:none;width:560px;height:560px;margin:-280px 0 0 -280px;border-radius:50%;
  background:radial-gradient(circle,rgba(134,196,99,.13),rgba(107,173,70,.04) 40%,transparent 66%);transform:translate3d(var(--cx,-999px),var(--cy,-999px),0);opacity:0;transition:opacity .6s}
.u .cursor-light.on{opacity:1}

/* ---------- 首屏：眉标 + 广告句（大）+ h1（结论句）+ 一句 ---------- */
.u-hero{position:relative;padding:76px 0 24px}
.u-hero > .wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:center}
@media (min-width:960px){.u-hero.has-vis > .wrap{grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:44px;min-height:min(620px,calc(100svh - 150px))}}
@media (max-width:760px){.u-hero{padding-top:40px}}
.u-hero .crumb{font-size:13px;color:var(--t3);margin-bottom:18px}
.u-hero .crumb a{color:var(--t2);text-decoration:none}
.u-hero .crumb a:hover{color:var(--t)}
.u-kick{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:.12em;color:var(--t2)}
.u-kick svg{width:22px;height:22px;color:var(--leaf-hi);flex:none;filter:drop-shadow(0 0 6px rgba(107,173,70,.6))}
.u-ad{font:700 clamp(40px,5.6vw,76px)/1.14 var(--f-disp);letter-spacing:0;color:#E8EDEA;margin:18px 0 0;text-wrap:balance}
.u-ad em{display:inline-block;color:var(--leaf);text-shadow:0 0 34px rgba(107,173,70,.35)}
.u-ad .seg{display:inline-block}
.u-h1{margin-top:22px;max-width:34em;font:500 clamp(17px,1.55vw,20px)/1.65 var(--f-cjk);color:#C9D4CE}
.u-h1 b{font-weight:700;color:var(--t)}
.u-lede{margin-top:14px;max-width:38em;color:var(--t2)}
.u-hero .acts{margin-top:30px}
.u-hero.center{text-align:center}
.u-hero.center .u-kick{justify-content:center}
.u-hero.center .u-h1,.u-hero.center .u-lede{margin-left:auto;margin-right:auto}
.u-hero.center .acts{justify-content:center}
.u-q{font:700 clamp(28px,3.9vw,52px)/1.25 var(--f-disp);margin-top:16px;max-width:22em;text-wrap:balance}
.u-q em{color:var(--amber);text-shadow:0 0 28px rgba(220,164,92,.28)}

/* ---------- 版块节奏与标题（同首页：编号眉标 + 大标题） ---------- */
.u .u-sec{padding-top:128px}
@media (max-width:760px){.u .u-sec{padding-top:88px}}
.u .sec-head{max-width:820px;margin-bottom:44px}
.u .sec-head .eyebrow{display:flex;align-items:center;gap:12px;color:var(--t2)}
.u .idx{display:inline-flex;align-items:center;gap:10px;font:500 12px var(--f-mono);letter-spacing:.08em;color:var(--leaf)}
.u .idx::after{content:"";width:44px;height:1px;background:linear-gradient(90deg,var(--leaf),transparent);transform-origin:left;transition:transform 1s var(--ease) .2s}
.anim .u .rv:not(.is-in) .idx::after{transform:scaleX(0)}
.u .sec-head h2{font:700 clamp(30px,4.2vw,54px)/1.14 var(--f-disp);letter-spacing:0}
.u .sec-head h2 em{display:inline-block;text-shadow:0 0 34px rgba(107,173,70,.3)}
.u .sec-head .lede{font-size:17px;max-width:40em;color:var(--t2)}
.u .sec-head.center{margin-left:auto;margin-right:auto;text-align:center}
.u .sec-head.center .eyebrow{justify-content:center}
.u .sec-head.center .lede{margin-left:auto;margin-right:auto}

/* 进场：对焦（虚 → 实）；标题逐字（脚本拆成 .ch，HTML 里的字不变） */
.anim .u .rv{opacity:0;transform:translateY(26px) scale(.99);transition:opacity .9s var(--ease),transform 1s var(--ease),filter .9s var(--ease);transition-delay:var(--d,0s)}
.anim .u .rv:not(.is-in):not(.glass){filter:blur(6px)}
.anim .u .rv.is-in{opacity:1;transform:none;filter:none}
.anim .u [data-split] .ch{display:inline-block;opacity:0;transform:translateY(.5em) rotateX(40deg);filter:blur(10px);transition:opacity .7s var(--ease),transform .9s var(--ease),filter .8s var(--ease);transition-delay:calc(var(--i) * 22ms)}
.anim .u [data-split].go .ch{opacity:1;transform:none;filter:none}

/* ---------- 玻璃三档：亮玻璃（一屏最多一块）/ 玻璃 / 细线 ---------- */
.u .glass,.u .card,.u .block{position:relative;isolation:isolate;border-radius:20px;
  background:linear-gradient(160deg,rgba(30,46,52,.62),rgba(10,16,20,.58) 60%,rgba(12,22,18,.6));
  border:1px solid rgba(226,236,231,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 22px 60px rgba(0,0,0,.32)}
@media (min-width:900px) and (pointer:fine){
  .u .glass,.u .card,.u .block{background:linear-gradient(160deg,rgba(30,46,52,.44),rgba(10,16,20,.34) 60%,rgba(12,22,18,.4));-webkit-backdrop-filter:blur(14px) saturate(1.25);backdrop-filter:blur(14px) saturate(1.25)}}
@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}
.u .glass.lit::before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;padding:1.5px;pointer-events:none;z-index:1;
  background:conic-gradient(from var(--ang),transparent 0 60%,rgba(134,196,99,0) 62%,rgba(160,222,120,.95) 74%,rgba(220,164,92,.7) 80%,transparent 88%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;animation:u-ang 7s linear infinite}
@keyframes u-ang{to{--ang:360deg}}
.u .glass::after,.u .card::after,.u .block::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;z-index:-1;opacity:0;transition:opacity .4s;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(134,196,99,.14),transparent 60%)}
.u .glass:hover::after,.u .card:hover::after,.u .block:hover::after{opacity:1}
.u a.card:hover{border-color:rgba(134,196,99,.45);transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 30px 70px rgba(0,0,0,.42),0 0 36px rgba(107,173,70,.12)}
.u .rows{border-top:1px solid rgba(226,236,231,.10)}
.u .rows > div{border-bottom-color:rgba(226,236,231,.08)}
.u .btn-go{box-shadow:0 8px 30px rgba(107,173,70,.32)}
.u .btn:not(.btn-go){background:rgba(226,236,231,.04)}

/* ---------- 状态灯：已上线 / 测试中 / 演示阶段 / 方案阶段；清单里还有 做到了 / 可配合 / 不做 ---------- */
.lamp{display:inline-flex;align-items:baseline;gap:9px;color:var(--t)}
.lamp::before{content:"";flex:none;width:9px;height:9px;border-radius:50%;transform:translateY(-1px)}
.lamp.live::before,.lamp.ok::before{background:var(--leaf);box-shadow:0 0 0 4px rgba(107,173,70,.16),0 0 14px rgba(107,173,70,.85)}
.lamp.test::before{border:2px solid var(--leaf);box-shadow:0 0 10px rgba(107,173,70,.55);animation:u-breath 2.6s ease-in-out infinite}
.lamp.demo::before{background:var(--core);box-shadow:0 0 10px rgba(242,255,232,.5)}
.lamp.plan::before{border:1.5px solid var(--legacy)}
.lamp.can::before{background:var(--amber);box-shadow:0 0 0 4px rgba(220,164,92,.14),0 0 12px rgba(220,164,92,.6)}
.lamp.no::before{background:rgba(197,207,202,.35)}
@keyframes u-breath{50%{box-shadow:0 0 16px rgba(107,173,70,.9);opacity:.7}}
@media (prefers-reduced-motion:reduce){.lamp.test::before{animation:none}}

/* ---------- 产品符号（画布 + HTML 标签；标签只是装饰，aria-hidden） ---------- */
.gly{position:relative;width:100%;aspect-ratio:10/8;min-height:300px}
.gly canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}
.gly .gl{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);transform:translate(-50%,-50%);white-space:nowrap;pointer-events:none;
  font:600 12.5px/1.3 var(--f-cjk);letter-spacing:.04em;padding:3px 10px;border-radius:999px;color:#E6F7DA;border:1px solid rgba(134,196,99,.42);background:rgba(8,18,10,.78);
  transition:opacity .5s,border-color .5s,color .5s}
.gly .gl.src{color:#F3D7AE;border-color:rgba(220,164,92,.5);background:rgba(30,20,8,.72);transform:translate(-50%,-170%)}
.gly .gl.out{transform:translate(-78%,90%);font-weight:700;color:var(--leaf-ink);background:var(--leaf);border-color:transparent;box-shadow:0 0 24px rgba(107,173,70,.55)}
.gly .gl.ai{border:0;background:none;color:var(--core);font:700 11px var(--f-lat);letter-spacing:.14em;transform:translate(-50%,170%)}
.gly .gl.dim{color:#C5CFCA;border-color:rgba(226,236,231,.2);background:rgba(14,20,24,.7)}
.gly .gl.warn{color:#F6D9A8;border-color:rgba(220,164,92,.7);background:rgba(40,24,6,.78);box-shadow:0 0 20px rgba(220,164,92,.25)}
.gly .gl.ok{color:var(--leaf-ink);background:var(--leaf);border-color:transparent;font-weight:700;box-shadow:0 0 22px rgba(107,173,70,.5)}
.anim .gly .gl.p1,.anim .gly .gl.p2{opacity:0}
.anim .gly[data-ph="1"] .gl.p1,.anim .gly[data-ph="2"] .gl.p2{opacity:1}
@media (max-width:600px){.gly{min-height:260px}.gly .gl{font-size:11px;padding:2px 8px}}
.gly-sm{aspect-ratio:16/9;min-height:0}
.gly-sm .gl{display:none}

/* ---------- 以前（琥珀）：一句大痛点，背后几段断开的琥珀虚线 ---------- */
.u-pain{position:relative}
.u-pain .wrap{position:relative}
.u-painq{font:700 clamp(28px,3.8vw,50px)/1.32 var(--f-disp);max-width:20em;letter-spacing:0;text-wrap:balance;color:#DCE3DF}
.u-painq em{color:var(--amber);text-shadow:0 0 30px rgba(220,164,92,.3)}
.u-cut{position:relative;height:56px;margin-top:40px;max-width:900px}
.u-cut i{position:absolute;top:50%;height:1px;background:repeating-linear-gradient(90deg,rgba(220,164,92,.65) 0 6px,transparent 6px 12px)}
.u-cut i:nth-child(1){left:0;width:22%;top:30%}
.u-cut i:nth-child(2){left:26%;width:18%;top:62%}
.u-cut i:nth-child(3){left:48%;width:24%;top:22%}
.u-cut i:nth-child(4){left:76%;width:20%;top:70%}
.u-cut b{position:absolute;width:5px;height:5px;border-radius:50%;background:#F6D9A8;box-shadow:0 0 12px 3px rgba(220,164,92,.8)}
.u-cut b:nth-of-type(1){left:23%;top:28%}.u-cut b:nth-of-type(2){left:45%;top:60%}.u-cut b:nth-of-type(3){left:73%;top:20%}
.anim .u-cut b{animation:u-spark 2.4s ease-in-out infinite}
.anim .u-cut b:nth-of-type(2){animation-delay:.8s}.anim .u-cut b:nth-of-type(3){animation-delay:1.6s}
@keyframes u-spark{0%,100%{opacity:.2;transform:scale(.6)}50%{opacity:1;transform:scale(1.2)}}

/* ---------- 影院：大框 + 首页同款玻璃播放键 + 章节光线 ---------- */
.cine .pv-box{border-radius:20px;box-shadow:0 40px 110px rgba(0,0,0,.55),0 0 0 1px rgba(226,236,231,.12)}
.cine .pv-box::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 70% 70% at 50% 50%,rgba(5,9,12,0),rgba(5,9,12,.45))}
.cine .pv.playing .pv-box::before{display:none}
.cine .pv-play{z-index:2}
.cine .pv-play span{width:clamp(72px,8vw,96px);height:clamp(72px,8vw,96px);background:rgba(10,16,20,.32);box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.75),0 12px 40px rgba(0,0,0,.4)}
.cine .pv-play span::before,.cine .pv-play span::after{content:"";position:absolute;width:inherit;height:inherit;border-radius:50%;border:1px solid rgba(255,255,255,.5);animation:u-ring 2.8s ease-out infinite;pointer-events:none}
.cine .pv-play span::after{animation-delay:1.4s}
.cine .pv-play span{position:relative}
@keyframes u-ring{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.7);opacity:0}}
@media (prefers-reduced-motion:reduce){.cine .pv-play span::before,.cine .pv-play span::after{animation:none;opacity:0}}
.cine .pv-tag{display:none}   /* 片头自己就写着系统名，左上角再贴一个会压住片头的 logo */
.pv-rail{position:relative;height:18px;margin:22px 6px 0}
.pv-rail::before{content:"";position:absolute;left:0;right:0;top:8px;height:2px;border-radius:2px;background:rgba(226,236,231,.12)}
.pv-rail .prog{position:absolute;left:0;top:8px;height:2px;width:var(--pp,0%);border-radius:2px;background:linear-gradient(90deg,var(--leaf),var(--leaf-hi2));box-shadow:0 0 10px var(--leaf)}
.pv-rail b{position:absolute;left:var(--p);top:3px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--screen);border:2px solid rgba(226,236,231,.3);transition:all .4s}
.pv-rail b.on,.pv-rail b.done{background:var(--leaf);border-color:var(--leaf-hi2);box-shadow:0 0 14px 3px rgba(107,173,70,.7)}
.cine .pv-ch{margin-top:12px;gap:6px}
.cine .pv-ch button{border-top:0;border-radius:12px;background:rgba(226,236,231,.03);border:1px solid rgba(226,236,231,.07)}
.cine .pv-ch button:hover,.cine .pv-ch button.on{background:rgba(107,173,70,.10);border-color:rgba(134,196,99,.45);color:var(--t)}
.cine-note{margin-top:12px;font-size:13px;color:var(--t3)}

/* ---------- 交付与现状：三块玻璃（方法页「AI 能动什么」也用它：白 = AI 起草，绿 = 人点确认，琥珀 = 收不回来的） ---------- */
.u-trio{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:860px){.u-trio{grid-template-columns:repeat(3,minmax(0,1fr))}}
.u-trio > div{padding:24px 26px;display:flex;flex-direction:column;gap:10px}
.u-trio .k{font:500 12px var(--f-mono);letter-spacing:.08em;color:var(--leaf)}
.u-trio .v{font-size:16.5px;color:var(--t)}
.u-trio .v small{display:block;margin-top:6px;font-size:14px;color:var(--t2)}
.u-trio .link{margin-top:auto;font-size:14.5px}
.u-gate .k{display:flex;align-items:center;gap:10px}
.u-gate .k::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--leaf);box-shadow:0 0 12px rgba(107,173,70,.9)}
.u-gate .k.core{color:var(--core)}.u-gate .k.core::before{background:var(--core);box-shadow:0 0 12px rgba(242,255,232,.7)}
.u-gate .k.amber{color:var(--amber)}.u-gate .k.amber::before{background:var(--amber);box-shadow:0 0 12px rgba(220,164,92,.8)}
.u .addon{background:linear-gradient(90deg,rgba(107,173,70,.12),rgba(107,173,70,0));border-color:rgba(107,173,70,.3);border-radius:18px}

/* ---------- 抽象案例卡（同首页案例墙：五种纹理 + 系统名描边水印，不放截图） ---------- */
.u .wall{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media (max-width:900px){.u .wall{grid-template-columns:repeat(2,minmax(0,1fr))}}
.u .tile.abs{background:linear-gradient(160deg,rgba(24,38,44,.92),rgba(8,13,17,.96));box-shadow:0 0 0 1px rgba(134,196,99,.22);border-radius:16px;aspect-ratio:16/10}
.u .tile.abs::after{display:none}
.u .tile.abs::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;opacity:.9;pointer-events:none}
.u .tile.v0::before,.tex.v0{background:repeating-radial-gradient(circle at 85% 15%,rgba(134,196,99,.22) 0 1px,transparent 1.5px 16px)}
.u .tile.v1::before,.tex.v1{background:linear-gradient(rgba(134,196,99,.14) 1px,transparent 1px) 0 0/22px 22px,linear-gradient(90deg,rgba(134,196,99,.14) 1px,transparent 1px) 0 0/22px 22px}
.u .tile.v2::before,.tex.v2{background:repeating-linear-gradient(120deg,rgba(134,196,99,.16) 0 1px,transparent 1px 12px)}
.u .tile.v3::before,.tex.v3{background:radial-gradient(rgba(166,224,127,.5) 1px,transparent 1.6px) 0 0/10px 10px}
.u .tile.v4::before,.tex.v4{background:repeating-conic-gradient(from 0deg at 90% 10%,rgba(134,196,99,.16) 0 2deg,transparent 2deg 12deg)}
.u .tile.v1::before{-webkit-mask:radial-gradient(ellipse at 70% 30%,#000,transparent 75%);mask:radial-gradient(ellipse at 70% 30%,#000,transparent 75%)}
.u .tile.v2::before{-webkit-mask:linear-gradient(200deg,#000,transparent 70%);mask:linear-gradient(200deg,#000,transparent 70%)}
.u .tile.v3::before{-webkit-mask:radial-gradient(circle at 80% 25%,#000,transparent 65%);mask:radial-gradient(circle at 80% 25%,#000,transparent 65%)}
.u .tile.v4::before{-webkit-mask:radial-gradient(circle at 90% 10%,#000,transparent 70%);mask:radial-gradient(circle at 90% 10%,#000,transparent 70%)}
.u .tile.abs .wm{position:absolute;right:-6px;bottom:-14px;z-index:0;font:700 clamp(54px,6vw,86px)/1 var(--f-lat);letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px rgba(134,196,99,.3);white-space:nowrap;pointer-events:none;transition:-webkit-text-stroke-color .4s,transform .6s var(--ease)}
.u .tile.abs:hover .wm{-webkit-text-stroke-color:rgba(166,224,127,.65);transform:translateX(-6px)}
.u .tile.abs .k{z-index:1;gap:0;color:var(--leaf-hi)}
.u .tile.abs .l{z-index:1;word-break:keep-all;text-wrap:balance}
.u .tile.abs:hover{box-shadow:0 0 0 1px rgba(134,196,99,.7),0 0 34px rgba(107,173,70,.18)}
.u .tile.you{border-radius:16px;border-color:rgba(134,196,99,.55)}

/* ---------- 案例墙：分组吸顶条 + 大卡（左纹理水印、右问句） ---------- */
.u-rail{position:sticky;top:var(--bar);z-index:20;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:12px 0;margin:8px 0 18px;
  background:linear-gradient(180deg,rgba(8,13,17,.92),rgba(8,13,17,.78));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.u-rail::-webkit-scrollbar{display:none}
.u-rail a{display:inline-flex;align-items:center;gap:8px;flex:none;min-height:40px;padding:0 14px 0 6px;border-radius:999px;text-decoration:none;font-size:14px;color:var(--t2);border:1px solid rgba(226,236,231,.10);background:rgba(226,236,231,.03);transition:all .3s}
.u-rail a b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font:700 13px var(--f-disp);color:var(--leaf-hi);background:rgba(107,173,70,.12)}
.u-rail a.on,.u-rail a:hover{color:var(--t);border-color:rgba(134,196,99,.55);box-shadow:0 0 22px rgba(107,173,70,.18)}
.u-rail a.on b{background:var(--leaf);color:var(--leaf-ink)}
.u-group{padding-top:56px;scroll-margin-top:calc(var(--bar) + 70px)}
.u-group > header{display:flex;align-items:baseline;gap:16px;margin-bottom:18px}
.u-group > header .ch{font:700 clamp(40px,4.4vw,58px)/1 var(--f-disp);color:transparent;-webkit-text-stroke:1px rgba(134,196,99,.55);text-shadow:0 0 30px rgba(107,173,70,.2)}
.u-group > header h2{font:700 clamp(22px,2.2vw,28px)/1.2 var(--f-disp)}
.u-group > header p{color:var(--t2);font-size:15px}
.u-cases{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.u-case-card{display:grid;grid-template-columns:minmax(0,1fr);text-decoration:none;overflow:hidden;border-radius:20px;
  background:linear-gradient(160deg,rgba(30,46,52,.55),rgba(10,16,20,.55));border:1px solid rgba(226,236,231,.10);transition:border-color .3s,box-shadow .3s,transform .3s var(--ease)}
@media (min-width:820px){.u-case-card{grid-template-columns:minmax(0,320px) minmax(0,1fr)}}
.u-case-card:hover{border-color:rgba(134,196,99,.5);box-shadow:0 0 40px rgba(107,173,70,.14);transform:translateY(-2px)}
.u-case-card .tex{position:relative;min-height:150px;overflow:hidden;background-color:rgba(8,13,17,.6);border-right:1px solid rgba(226,236,231,.06)}
.u-case-card .tex .wm{position:absolute;left:22px;bottom:-12px;font:700 clamp(56px,6vw,84px)/1 var(--f-lat);letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px rgba(134,196,99,.42);white-space:nowrap;transition:-webkit-text-stroke-color .4s,transform .6s var(--ease)}
.u-case-card:hover .tex .wm{-webkit-text-stroke-color:rgba(166,224,127,.8);transform:translateX(6px)}
.u-case-card .txt{display:flex;flex-direction:column;gap:10px;padding:24px 28px}
.u-case-card .meta{font-size:13px;color:var(--t3);letter-spacing:.04em}
.u-case-card .q{font:700 clamp(19px,1.8vw,24px)/1.45 var(--f-cjk);color:var(--t)}
.u-case-card .q em{color:var(--amber)}
.u-case-card .head{color:var(--leaf);font-size:15px}
.u-you{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;margin-top:56px;min-height:150px;border-radius:20px;border:1px dashed rgba(134,196,99,.55);text-decoration:none}
.u-you .y1{font-size:12px;letter-spacing:.14em;color:var(--t2)}
.u-you .y2{font:700 clamp(26px,3vw,38px)/1.2 var(--f-disp);color:var(--leaf);text-shadow:0 0 30px rgba(107,173,70,.35)}

/* ---------- 案例单页：三拍 + 三条价值 ---------- */
.u-case-hero .cine{margin-top:36px}
.u-beats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:14px;position:relative}
@media (min-width:900px){.u-beats{grid-template-columns:repeat(3,minmax(0,1fr))}}
.u-beats li{padding:26px 26px 28px}
.u-beats .k{display:flex;align-items:center;gap:10px;font:500 12px var(--f-mono);letter-spacing:.08em;margin-bottom:12px}
.u-beats .k::before{content:"";width:9px;height:9px;border-radius:50%}
.u-beats .b-pain .k{color:var(--amber)}.u-beats .b-pain .k::before{background:var(--amber);box-shadow:0 0 12px rgba(220,164,92,.8)}
.u-beats .b-how .k{color:var(--core)}.u-beats .b-how .k::before{background:var(--core);box-shadow:0 0 12px rgba(242,255,232,.7)}
.u-beats .b-now .k{color:var(--leaf)}.u-beats .b-now .k::before{background:var(--leaf);box-shadow:0 0 12px rgba(107,173,70,.9)}
.u-beats p{color:var(--t2)}
.u-beats .b-now .big{font:700 clamp(22px,2.2vw,28px)/1.35 var(--f-disp);color:var(--t)}
.u-vals{list-style:none;margin:0;padding:0;border-top:1px solid rgba(226,236,231,.1)}
.u-vals li{display:flex;align-items:baseline;gap:18px;padding:22px 0;border-bottom:1px solid rgba(226,236,231,.08);font:700 clamp(20px,2.3vw,30px)/1.4 var(--f-disp);color:#DCE3DF}
.u-vals li::before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:var(--leaf);box-shadow:0 0 0 4px rgba(107,173,70,.16),0 0 16px rgba(107,173,70,.9);transform:translateY(-3px)}
.u-vals li b{color:var(--leaf-hi);text-shadow:0 0 26px rgba(107,173,70,.45)}
.anim .u-vals[data-light] li{color:rgba(220,227,223,.28);transition:color .6s}
.anim .u-vals[data-light] li::before{background:var(--screen);box-shadow:none;border:2px solid rgba(226,236,231,.25);transition:all .6s}
.anim .u-vals[data-light] li.on{color:#DCE3DF}
.anim .u-vals[data-light] li.on::before{background:var(--leaf);border-color:transparent;box-shadow:0 0 0 4px rgba(107,173,70,.16),0 0 16px rgba(107,173,70,.9)}
.u-used{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:8px}
@media (min-width:860px){.u-used{grid-template-columns:repeat(2,minmax(0,1fr))}}
.u-used a{display:flex;align-items:center;gap:18px;padding:20px 22px;text-decoration:none}
.u-used .ico-g{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:rgba(107,173,70,.1);border:1px solid rgba(134,196,99,.3);color:var(--leaf-hi)}
.u-used .ico-g svg{width:28px;height:28px}
.u-used b{display:block;font-size:17px}
.u-used span{display:block;color:var(--t2);font-size:14.5px}

/* ---------- 产品总览：四块大面板 + 宽面板 ---------- */
.u-panels{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:860px){.u-panels{grid-template-columns:repeat(2,minmax(0,1fr))}}
.u-panel{display:flex;flex-direction:column;gap:10px;padding:0 0 26px;text-decoration:none;overflow:hidden}
.u-panel .gly{border-bottom:1px solid rgba(226,236,231,.07);background:radial-gradient(ellipse 70% 80% at 50% 55%,rgba(107,173,70,.08),transparent 70%)}
.u-panel .pk{display:flex;align-items:center;gap:8px;padding:16px 26px 0;font-size:13px;color:var(--t2)}
.u-panel .pk svg{width:20px;height:20px;color:var(--leaf-hi)}
.u-panel h3{padding:0 26px;font:700 clamp(24px,2.4vw,32px)/1.25 var(--f-disp)}
.u-panel .pn{padding:0 26px;font-size:15px;color:var(--t2)}
.u-panel .go{padding:4px 26px 0;color:var(--leaf);font-size:14.5px}
.u-panel.wide{grid-column:1/-1}
@media (min-width:860px){.u-panel.wide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;padding:0}.u-panel.wide .gly{border-bottom:0;border-right:1px solid rgba(226,236,231,.07);height:100%}.u-panel.wide .txt{padding:28px 30px}}
.u-panel.wide .txt{display:flex;flex-direction:column;gap:12px}
.u-panel.wide .txt h3,.u-panel.wide .txt .pn,.u-panel.wide .txt .pk,.u-panel.wide .txt .go{padding-left:0;padding-right:0}
.u-tiers2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:6px}
.u-tiers2 div{padding:12px 14px;border-radius:12px;border:1px solid rgba(226,236,231,.1);background:rgba(226,236,231,.03)}
.u-tiers2 b{display:block;font-size:15px}
.u-tiers2 span{display:block;font-size:13.5px;color:var(--t2);margin-top:2px}
.u-rule{text-align:center;padding:40px 0 10px}
.u-rule .big{font:700 clamp(36px,5.4vw,76px)/1.18 var(--f-disp);letter-spacing:0}
.u-rule .big em{display:inline-block;text-shadow:0 0 34px rgba(107,173,70,.35)}
.u-rule p{margin:18px auto 0;max-width:36em;color:var(--t2)}
.u-rule .link{display:inline-block;margin-top:20px}
.u-stars{display:flex;flex-wrap:wrap;gap:10px}
.u-stars li{list-style:none;display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:14px;border:1px solid rgba(226,236,231,.09);background:rgba(226,236,231,.025);min-width:220px;flex:1 1 220px}
.u-stars b{font-size:15.5px}
.u-stars span{font-size:13.5px;color:var(--t2)}
.u-stars{margin:0;padding:0}
.u-roles{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.u-roles a{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border-radius:999px;text-decoration:none;font-size:14.5px;border:1px solid rgba(226,236,231,.12);background:rgba(226,236,231,.04);transition:all .2s}
.u-roles a:hover{border-color:rgba(134,196,99,.55);box-shadow:0 0 20px rgba(107,173,70,.2)}

/* ---------- 合作：一条光线串起四步 + 三块「按什么收」 + 四颗灯 ---------- */
.u-f4{position:relative}
.u-f4-line{position:absolute;left:12.5%;right:12.5%;top:7px;height:2px;border-radius:2px;background:rgba(226,236,231,.1)}
.u-f4-line i{position:absolute;left:0;top:0;bottom:0;width:100%;background:linear-gradient(90deg,var(--leaf),var(--leaf-hi2));box-shadow:0 0 14px var(--leaf);transition:width .7s var(--ease)}
.u-f4-line b{position:absolute;top:-4px;left:0;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--core);box-shadow:0 0 16px 5px rgba(134,196,99,.85);animation:u-travel 3.4s ease-in-out infinite}
@keyframes u-travel{0%{left:0}100%{left:100%}}
.u-f4 ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;position:relative;z-index:1}
.u-f4 li{display:flex;flex-direction:column;align-items:center;text-align:center}
.u-f4 .nd{width:16px;height:16px;border-radius:50%;margin-bottom:22px;background:var(--leaf);border:2px solid var(--leaf-hi2);box-shadow:0 0 18px 4px rgba(107,173,70,.7);transition:all .5s}
.u-f4 .c{width:100%;padding:22px 20px 24px;display:flex;flex-direction:column;gap:6px;text-align:left}
.u-f4 .c b{font:700 clamp(24px,2.4vw,32px)/1.2 var(--f-disp)}
.u-f4 .c small{font:500 13px var(--f-lat);letter-spacing:.04em;color:var(--leaf)}
.u-f4 .c p{margin-top:6px;font-size:15px;color:var(--t2)}
.anim .u-f4 .nd{background:var(--screen);border-color:rgba(226,236,231,.25);box-shadow:none}
.anim .u-f4-line i{width:0}.anim .u-f4-line b{opacity:0}
.anim .u-f4.s1 li:nth-child(1) .nd,.anim .u-f4.s2 li:nth-child(2) .nd,.anim .u-f4.s3 li:nth-child(3) .nd,.anim .u-f4.s4 li:nth-child(4) .nd{background:var(--leaf);border-color:var(--leaf-hi2);box-shadow:0 0 18px 4px rgba(107,173,70,.7)}
.anim .u-f4.s2 .u-f4-line i{width:33.3%}.anim .u-f4.s3 .u-f4-line i{width:66.6%}.anim .u-f4.s4 .u-f4-line i{width:100%}.anim .u-f4.s4 .u-f4-line b{opacity:1}
@media (max-width:860px){
  .u-f4 ol{grid-template-columns:minmax(0,1fr);gap:16px}
  .u-f4 li{flex-direction:row;align-items:flex-start;gap:18px;text-align:left}
  .u-f4 .nd{flex:none;margin:22px 0 0}
  .u-f4-line{left:7px;right:auto;top:24px;bottom:24px;width:2px;height:auto}
  .u-f4-line i{width:100%;height:100%}.anim .u-f4-line i{width:100%;height:0}
  .anim .u-f4.s2 .u-f4-line i{height:33.3%}.anim .u-f4.s3 .u-f4-line i{height:66.6%}.anim .u-f4.s4 .u-f4-line i{height:100%}
  .u-f4-line b{display:none}
}
.u-tiers{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:960px){.u-tiers{grid-template-columns:repeat(3,minmax(0,1fr))}}
.u-tiers > div{padding:28px 28px 24px;display:flex;flex-direction:column}
.u-tiers h3{font:700 22px/1.3 var(--f-disp)}
.u-tiers .note{font-size:13.5px;color:var(--t3);margin-top:4px}
.u-tiers .big{margin:22px 0 18px;padding-bottom:18px;border-bottom:1px solid rgba(226,236,231,.1);font:700 clamp(22px,2.1vw,27px)/1.35 var(--f-disp);color:var(--leaf-hi);text-shadow:0 0 26px rgba(107,173,70,.3)}
.u-tiers dl{margin:0}
.u-tiers dl div{padding:10px 0}
.u-tiers dt{font-weight:600;font-size:15.5px}
.u-tiers dd{margin:3px 0 0;color:var(--t2);font-size:14.5px}
.u-lamps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
@media (min-width:860px){.u-lamps{grid-template-columns:repeat(2,minmax(0,1fr))}}
.u-lamps li{display:flex;flex-direction:column;gap:6px;padding:20px 22px}
.u-lamps li b{font-size:17px}
.u-lamps li span{color:var(--t2);font-size:15px}
.u-lamps .lamp{font-weight:600}

/* ---------- 清单（安全）：问题 · 回答 · 状态灯 ---------- */
.u-check{list-style:none;margin:0;padding:0;border-top:1px solid rgba(226,236,231,.1)}
.u-check li{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr) auto;gap:8px 28px;align-items:baseline;padding:20px 0;border-bottom:1px solid rgba(226,236,231,.08)}
.u-check li b{font-weight:600;font-size:16.5px}
.u-check li p{color:var(--t2)}
.u-check .lamp{font-size:13.5px;color:var(--t2);white-space:nowrap}
@media (max-width:760px){.u-check li{grid-template-columns:minmax(0,1fr);gap:6px}}

/* ---------- 收尾带「先聊 30 分钟」：玻璃 + 一道光扫过 ---------- */
.u .band{position:relative;margin-top:140px;border-top:0;background:none;padding:0}
.u .band .wrap{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:40px 44px;border-radius:24px;
  background:linear-gradient(120deg,rgba(26,44,32,.75),rgba(10,16,20,.7) 55%,rgba(12,22,18,.75));border:1px solid rgba(134,196,99,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 30px 80px rgba(0,0,0,.4)}
.u .band .wrap::before{content:"";position:absolute;top:0;bottom:0;left:-40%;width:40%;z-index:-1;background:linear-gradient(100deg,transparent,rgba(166,224,127,.12),transparent);animation:u-sweep 6s ease-in-out infinite}
@keyframes u-sweep{0%{left:-40%}60%,100%{left:110%}}
.u .band h2{font:700 clamp(24px,2.8vw,36px)/1.25 var(--f-disp)}
.u .band p{color:var(--t2);margin-top:6px}
@media (max-width:760px){.u .band{margin-top:96px}.u .band .wrap{margin-left:16px;margin-right:16px;padding:28px 22px}}
@media (prefers-reduced-motion:reduce){.u .band .wrap::before{animation:none;opacity:0}}

/* ---------- 正文类页面（常问、事实、隐私、关于）在宇宙里读得舒服 ---------- */
.u .prose p,.u .prose ul{color:#C3CCC7}
.u .qa a{font-size:17px}
.u .facts-tbl td{color:#D3DBD6}

/* =====================================================================
   SRM 产品页（10/4 东杰：对标全球头部 SRM 官网 + 科技特效感，不呈现真实产品界面）
   全链路光线 → 重画的「界面瞬间」（演示数据）→ 供应商记分光环 → 客户原话 → 接现有系统 → 录屏弹窗
   ===================================================================== */
@property --fw{syntax:"<percentage>";inherits:true;initial-value:100%}
@property --p{syntax:"<percentage>";inherits:false;initial-value:0%}

/* ---------- 全链路：六站一条光线，「一笔采购」沿线走 ---------- */
.flow6{position:relative;margin-top:30px;--fw:100%}
.flow6-line{position:absolute;left:calc(100% / (var(--n, 6) * 2));right:calc(100% / (var(--n, 6) * 2));top:7px;height:2px;border-radius:2px;background:rgba(226,236,231,.1)}
.flow6-line i{position:absolute;left:0;top:0;bottom:0;width:var(--fw);border-radius:2px;background:linear-gradient(90deg,var(--leaf),var(--leaf-hi2));box-shadow:0 0 14px var(--leaf)}
.flow6-line b{position:absolute;top:-34px;left:var(--fw);transform:translateX(-50%);white-space:nowrap;font:700 11.5px/1 var(--f-cjk);color:var(--leaf-ink);background:var(--leaf-hi);padding:6px 10px;border-radius:999px;box-shadow:0 0 0 4px rgba(107,173,70,.18),0 0 24px rgba(107,173,70,.8)}
.anim .flow6{transition:--fw .45s var(--ease)}
.flow6 ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n, 6),minmax(0,1fr));gap:14px;position:relative;z-index:1}
.flow6 li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:0 2px;min-width:0}
.flow6 .nd{width:16px;height:16px;border-radius:50%;margin-bottom:14px;background:var(--leaf);border:2px solid var(--leaf-hi2);box-shadow:0 0 18px 4px rgba(107,173,70,.7)}
.flow6 li b{font:700 clamp(22px,2.2vw,30px)/1.2 var(--f-disp)}
.flow6 li p{font-size:14.5px;color:#DCE3DF;line-height:1.6}
.flow6 li small{font-size:13px;color:var(--t2);line-height:1.6}
.anim .flow6{--fw:0%}
.anim .flow6 .nd{background:var(--screen);border-color:rgba(226,236,231,.25);box-shadow:none;transition:all .45s}
.anim .flow6 li b{color:rgba(232,237,234,.32);transition:color .45s,text-shadow .45s}
.anim .flow6 li p,.anim .flow6 li small{opacity:.4;transition:opacity .45s}
.anim .flow6.s1 li:nth-child(1) .nd,.anim .flow6.s2 li:nth-child(2) .nd,.anim .flow6.s3 li:nth-child(3) .nd,.anim .flow6.s4 li:nth-child(4) .nd,.anim .flow6.s5 li:nth-child(5) .nd,.anim .flow6.s6 li:nth-child(6) .nd{background:var(--leaf);border-color:var(--leaf-hi2);box-shadow:0 0 18px 4px rgba(107,173,70,.7)}
.anim .flow6.s1 li:nth-child(1) b,.anim .flow6.s2 li:nth-child(2) b,.anim .flow6.s3 li:nth-child(3) b,.anim .flow6.s4 li:nth-child(4) b,.anim .flow6.s5 li:nth-child(5) b,.anim .flow6.s6 li:nth-child(6) b{color:var(--t);text-shadow:0 0 24px rgba(107,173,70,.35)}
.anim .flow6.s1 li:nth-child(1) :is(p,small),.anim .flow6.s2 li:nth-child(2) :is(p,small),.anim .flow6.s3 li:nth-child(3) :is(p,small),.anim .flow6.s4 li:nth-child(4) :is(p,small),.anim .flow6.s5 li:nth-child(5) :is(p,small),.anim .flow6.s6 li:nth-child(6) :is(p,small){opacity:1}
.anim .flow6.s2{--fw:calc(100% * 1 / (var(--n, 6) - 1))}.anim .flow6.s3{--fw:calc(100% * 2 / (var(--n, 6) - 1))}.anim .flow6.s4{--fw:calc(100% * 3 / (var(--n, 6) - 1))}.anim .flow6.s5{--fw:calc(100% * 4 / (var(--n, 6) - 1))}.anim .flow6.s6{--fw:calc(100% * 5 / (var(--n, 6) - 1))}
.flow6-base{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin-top:34px;padding:18px 24px;border-radius:18px;border:1px solid rgba(134,196,99,.32);background:linear-gradient(90deg,rgba(107,173,70,.05),rgba(107,173,70,.14),rgba(107,173,70,.05))}
.flow6-base .k{font:500 11.5px var(--f-mono);letter-spacing:.08em;color:var(--leaf-ink);background:var(--leaf);padding:2px 8px;border-radius:6px}
.flow6-base b{font-size:17px}
.flow6-base span:last-child{color:var(--t2)}
@media (max-width:899px){
  .flow6{margin-top:8px}
  .flow6 ol{grid-template-columns:minmax(0,1fr);gap:24px}
  .flow6 li{display:block;text-align:left;padding-left:36px;position:relative}
  .flow6 .nd{position:absolute;left:0;top:7px;margin:0}
  .flow6 li b{display:block;font-size:22px;margin-bottom:2px}
  .flow6 li small{display:block;margin-top:2px}
  .flow6-line{left:7px;right:auto;top:14px;bottom:14px;width:2px;height:auto}
  .flow6-line i{width:100%;height:var(--fw)}
  .flow6-line b{display:none}
}

/* ---------- 界面瞬间：按设计语言重画的小画面（演示数据），r1…r4 依次出现，停一会儿再来 ---------- */
.mos{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:860px){.mos{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mo{padding:18px 18px 24px;min-width:0}
.mo > h3{font:700 clamp(20px,1.9vw,24px)/1.35 var(--f-disp);margin:4px 6px 0}
.mo > p:not(.mo-tag){margin:8px 6px 0;color:var(--t2);font-size:15px}
.mo-tag{margin:0 6px;font:500 12px var(--f-mono);letter-spacing:.08em;color:var(--leaf)}
.mo-st{position:relative;height:284px;margin-bottom:18px;padding:18px;border-radius:14px;overflow:hidden;
  background:radial-gradient(ellipse 80% 70% at 50% 0%,rgba(107,173,70,.10),transparent 70%),rgba(5,9,12,.6);border:1px solid rgba(226,236,231,.07)}
.mo-h{display:flex;align-items:center;gap:8px;margin:0 0 12px;font:500 12px var(--f-mono);color:var(--t3)}
.mo-h i{width:7px;height:7px;border-radius:50%;background:var(--leaf);box-shadow:0 0 10px var(--leaf)}
.mo-st [class^="r"],.mo-st [class*=" r"]{transition:opacity .45s,border-color .45s,box-shadow .45s,background .45s,transform .45s var(--ease)}
/* 报价单 */
.mo-doc dl{margin:0;display:grid;gap:8px}
.mo-doc dl div{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;border-radius:10px;background:rgba(226,236,231,.04);border:1px solid rgba(226,236,231,.07)}
.mo-doc dt{color:var(--t2);font-size:13.5px}
.mo-doc dd{margin:0;font:700 14px var(--f-lat);color:var(--t)}
.mo-doc .no dd{font:600 13px var(--f-cjk);color:var(--amber)}
.mo-doc .r1,.mo-doc .r2,.mo-doc .r3{border-color:rgba(134,196,99,.45);box-shadow:0 0 16px rgba(107,173,70,.15)}
.mo-doc .r4{border-color:rgba(220,164,92,.55);background:rgba(40,24,6,.4)}
.mo-scan{position:absolute;left:0;right:0;top:44px;height:2px;background:linear-gradient(90deg,transparent,rgba(166,224,127,.9),transparent);box-shadow:0 0 14px var(--leaf);opacity:0}
.anim .mo-doc dl div{opacity:.35;border-color:rgba(226,236,231,.07);box-shadow:none;background:rgba(226,236,231,.04)}
.anim .mo-st.s1 .mo-doc .r1,.anim .mo-st.s2 .mo-doc .r2,.anim .mo-st.s3 .mo-doc .r3{opacity:1;border-color:rgba(134,196,99,.5);box-shadow:0 0 16px rgba(107,173,70,.18)}
.anim .mo-st.s4 .mo-doc .r4{opacity:1;border-color:rgba(220,164,92,.6);background:rgba(40,24,6,.45)}
.anim .mo-st.s1:not(.s4) .mo-scan{opacity:1;animation:u-scan 2.2s linear infinite}
@keyframes u-scan{0%{top:44px}100%{top:220px}}
/* 荐商：光环 */
.ring{--p:calc(var(--v, 0) * 1%);display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:conic-gradient(var(--leaf) var(--p),rgba(226,236,231,.1) 0)}
.ring span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#0B1216;font:700 12.5px var(--f-lat);color:var(--t)}
.ring.big{width:86px;height:86px}
.ring.big span{width:72px;height:72px;font-size:22px}
.mo-pick ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.mo-pick li{display:flex;align-items:center;gap:12px;padding:6px 10px 6px 6px;border-radius:12px;background:rgba(226,236,231,.035);border:1px solid rgba(226,236,231,.06)}
.mo-pick .nm{font-size:14px;font-weight:600}
.mo-pick .why{margin-left:auto;font-size:12.5px;color:var(--leaf-hi)}
.mo-act{display:flex;align-items:center;gap:10px;margin:12px 0 0}
.btn-mini{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:var(--leaf);color:var(--leaf-ink);font-size:12.5px;font-weight:700}
.mo-act small{color:var(--t3);font-size:12.5px}
.anim .mo-pick li{opacity:.35;transform:translateX(-6px)}
.anim .mo-pick .ring{transition:--p 1.1s var(--ease)}
.anim .mo-pick li .ring{--p:0%}
.anim .mo-st.s1 .mo-pick .r1,.anim .mo-st.s2 .mo-pick .r2,.anim .mo-st.s3 .mo-pick .r3{opacity:1;transform:none}
.anim .mo-st.s1 .mo-pick .r1 .ring,.anim .mo-st.s2 .mo-pick .r2 .ring,.anim .mo-st.s3 .mo-pick .r3 .ring{--p:calc(var(--v) * 1%)}
.anim .mo-pick .mo-act{opacity:.3}
.anim .mo-st.s4 .mo-pick .mo-act{opacity:1}
.anim .mo-st.s4 .btn-mini{animation:u-wait 1.6s ease-in-out infinite}
@keyframes u-wait{50%{box-shadow:0 0 0 6px rgba(107,173,70,.18),0 0 22px rgba(107,173,70,.6)}}
/* 盖章件比对 */
.mo-diff .cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mo-diff .cols > div{padding:10px 12px;border-radius:12px;background:rgba(226,236,231,.035);border:1px solid rgba(226,236,231,.07)}
.mo-diff small{display:block;font:500 11.5px var(--f-mono);color:var(--t3);margin-bottom:4px}
.mo-diff p{margin:0;padding:4px 6px;border-radius:7px;font-size:13px;color:var(--t2)}
.mo-diff p b{color:var(--t);font-weight:600}
.mo-diff .hit{background:rgba(220,164,92,.14)}
.mo-diff .hit s{color:var(--t3)}
.mo-diff .hit b{color:var(--amber)}
.mo-flag{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:12px 0 0}
.mo-flag b{font-size:12.5px;color:#F6D9A8;background:rgba(40,24,6,.75);border:1px solid rgba(220,164,92,.7);padding:4px 10px;border-radius:999px}
.mo-flag small{font-size:12.5px;color:var(--t3);margin:0}
.anim .mo-diff .hit{background:transparent}
.anim .mo-diff .hit b{color:var(--t)}
.anim .mo-st.s1 .mo-diff .r1,.anim .mo-st.s2 .mo-diff .r2{background:rgba(220,164,92,.16);box-shadow:inset 0 0 0 1px rgba(220,164,92,.45)}
.anim .mo-st.s1 .mo-diff .r1 b,.anim .mo-st.s2 .mo-diff .r2 b{color:var(--amber)}
/* 催交期：一句话 → 计划 → 确认卡 */
.mo-chase .mo-me{margin:0 0 10px auto;width:fit-content;max-width:90%;padding:7px 12px;border-radius:12px 12px 4px 12px;background:rgba(107,173,70,.16);border:1px solid rgba(134,196,99,.35);font-size:13px}
.mo-chase ol{list-style:none;margin:0;padding:0;display:grid;gap:5px}
.mo-chase li{position:relative;padding-left:24px;font-size:13px;color:var(--t2)}
.mo-chase li::before{content:"✓";position:absolute;left:0;top:1px;display:grid;place-items:center;width:16px;height:16px;border-radius:5px;background:var(--leaf);color:var(--leaf-ink);font:700 11px/1 var(--f-lat)}
.mo-card{margin-top:10px;display:grid;gap:4px;padding:10px 12px;border-radius:12px;border:1px solid rgba(220,164,92,.6);background:rgba(30,20,8,.55)}
.mo-card b{font-size:12px;color:var(--amber)}
.mo-card > span{font-size:13.5px;font-weight:600}
.mo-card .btns{display:flex;gap:6px;margin-top:2px}
.mo-card .btns i{font-style:normal;font-size:12px;padding:4px 10px;border-radius:999px;border:1px solid rgba(226,236,231,.2);color:var(--t2)}
.mo-card .btns i.ok{background:var(--leaf);border-color:transparent;color:var(--leaf-ink);font-weight:700}
.anim .mo-chase li,.anim .mo-chase .mo-card{opacity:0;transform:translateY(6px)}
.anim .mo-st.s1 .mo-chase .r1,.anim .mo-st.s2 .mo-chase .r2,.anim .mo-st.s3 .mo-chase .r3,.anim .mo-st.s4 .mo-chase .r4{opacity:1;transform:none}
.anim .mo-st.s4 .mo-card .ok{animation:u-wait 1.6s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.mo-scan{display:none}}
/* 供应商记分：三个满环 + 一个空着的（样本不够就不打） */
.mo-score{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:center;margin-top:16px;padding:26px}
@media (min-width:900px){.mo-score{grid-template-columns:auto minmax(0,1fr);gap:40px}}
.mo-score .rings{display:flex;flex-wrap:wrap;gap:18px}
.mo-score .rg{display:flex;flex-direction:column;align-items:center;gap:8px;width:96px}
.mo-score .rg small{font-size:12.5px;color:var(--t2);text-align:center;line-height:1.4}
.mo-score .rg.empty .ring{background:none;border:1.5px dashed rgba(197,207,202,.5)}
.mo-score .rg.empty .ring span{background:none;color:var(--t3)}
.mo-score h3{font:700 clamp(22px,2.2vw,28px)/1.3 var(--f-disp);margin-top:6px}
.mo-score .tx > p:not(.mo-tag){margin-top:10px;color:var(--t2)}
.mo-score .mo-tag{margin:0}
.mo-foot{margin-top:12px;font-size:13px;color:var(--t3)}

/* ---------- 客户原话 ---------- */
.u-quote{margin:0 auto;max-width:980px;text-align:center}
.u-quote blockquote{margin:22px 0 0}
.u-quote h2 span{display:inline-block}
.u-quote h2{font:700 clamp(40px,6.4vw,92px)/1.15 var(--f-disp);letter-spacing:0;background:linear-gradient(100deg,#E8EDEA 10%,#B8EC93 55%,#6BAD46 90%);-webkit-background-clip:text;background-clip:text;color:transparent;text-wrap:balance}
.u-quote figcaption{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:22px}
.u-quote figcaption b{font-size:16px}
.u-quote figcaption span{color:var(--t2);font-size:15px}

/* ---------- 接你现有的系统：灰色的老系统（一行不改）→ 适配层 → SRM ---------- */
.erp{display:flex;flex-direction:column;align-items:center;margin-top:10px}
.erp-chips{display:grid;grid-template-columns:repeat(var(--n, 7),minmax(0,1fr));gap:8px;width:min(780px,100%);text-align:center}
@media (max-width:760px){.erp .erp-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:22px}.erp .erp-wires{display:none}}
.erp-chips span{white-space:nowrap;padding:8px 10px;border-radius:999px;border:1px dashed rgba(197,207,202,.5);color:#C5CFCA;background:rgba(14,20,24,.75);font-size:14px}
.erp-wires{display:block;width:min(780px,100%);height:76px}
.erp-wires path{fill:none;stroke:rgba(134,196,99,.55);stroke-width:1.3;vector-effect:non-scaling-stroke;stroke-dasharray:4 7}
.anim .erp-wires path{animation:u-dash 1.4s linear infinite}
@keyframes u-dash{to{stroke-dashoffset:-22}}
.erp-bus{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 14px;width:min(780px,100%);padding:14px 18px;border-radius:14px;border:1px solid rgba(134,196,99,.55);
  background:linear-gradient(90deg,rgba(107,173,70,.06),rgba(107,173,70,.2),rgba(107,173,70,.06));box-shadow:0 0 34px rgba(107,173,70,.18)}
.erp-bus b{font-size:17px}
.erp-bus span{color:var(--t2);font-size:14px}
.erp-down{position:relative;width:2px;height:58px;background:linear-gradient(180deg,var(--leaf),var(--leaf-hi2));box-shadow:0 0 12px var(--leaf)}
.erp-down i{position:absolute;left:-3px;top:0;width:8px;height:8px;border-radius:50%;background:var(--core);box-shadow:0 0 12px 3px rgba(134,196,99,.9)}
.anim .erp-down i{animation:u-drop 1.8s ease-in infinite}
@keyframes u-drop{0%{top:0;opacity:0}20%{opacity:1}100%{top:50px;opacity:0}}
.erp-core span{display:grid;place-items:center;width:96px;height:96px;border-radius:50%;font:700 20px var(--f-lat);color:var(--leaf-ink);
  background:radial-gradient(circle at 35% 30%,#F2FFE8,#A6E07F 30%,#6BAD46 62%,#2E5A1E);box-shadow:0 0 50px 10px rgba(107,173,70,.42)}
@media (prefers-reduced-motion:reduce){.erp-wires path,.erp-down i{animation:none}}

/* ---------- 录屏：按钮 + 弹窗（真实界面只在这里，点了才放） ---------- */
.u-film-btn svg{width:26px;height:26px;margin-left:-10px;padding:8px 7px 8px 9px;border-radius:50%;background:rgba(107,173,70,.2);color:#C9EDB0}
.u-film{width:min(1100px,94vw);max-width:none;padding:0;border:0;border-radius:16px;background:#000;color:#fff;overflow:visible}
.u-film::backdrop{background:rgba(3,6,8,.86);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.u-film video{display:block;width:100%;aspect-ratio:16/9;border-radius:16px;background:#000}
.u-film-x{position:absolute;top:-48px;right:0;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:24px;line-height:40px}
.u-film-note{position:absolute;left:4px;bottom:-30px;margin:0;font-size:12.5px;color:rgba(255,255,255,.6)}

/* ---------- 界面瞬间的其余几种画面（CRM / APS / 战略洞察 / 智慧官网，10/4） ---------- */
.mo-doc dd small{margin-left:6px;font:500 11px var(--f-mono);color:var(--t3)}
.mo-flag{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:12px 0 0}
.mo-flag.ok b{color:var(--leaf-ink);background:var(--leaf);border-color:transparent}
.anim .mo-st .mo-flag{opacity:0;transform:translateY(6px)}
.anim .mo-st.s3 .mo-flag.r3,.anim .mo-st.s4 .mo-flag.r4{opacity:1;transform:none}
.mo-diff .fact{color:var(--t)}
.anim .mo-diff .fact{opacity:.35}
.anim .mo-st.s2 .mo-diff .fact{opacity:1;background:rgba(107,173,70,.14);box-shadow:inset 0 0 0 1px rgba(134,196,99,.45)}
/* 列表：一行一条，琥珀的是要人看的那条 */
.mo-list ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mo-list li{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:11px;background:rgba(226,236,231,.04);border:1px solid rgba(226,236,231,.07);min-width:0}
.mo-list li b{flex:none;font-size:13.5px}
.mo-list li span{min-width:0;font-size:13px;color:var(--t2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mo-list li span.eng{font:500 11.5px var(--f-lat);color:var(--leaf-hi)}
.mo-list li em{margin-left:auto;flex:none;font-style:normal;font-size:11.5px;padding:2px 8px;border-radius:999px;color:#F6D9A8;background:rgba(40,24,6,.75);border:1px solid rgba(220,164,92,.6)}
.mo-list li em.okc,.mo-list li.new em{color:var(--leaf-ink);background:var(--leaf);border-color:transparent}
.mo-list li.warn{border-color:rgba(220,164,92,.55);background:rgba(40,24,6,.35)}
.mo-list li.warn span{color:#F3D7AE}
.mo-list li.new{border-color:rgba(134,196,99,.5)}
.anim .mo-list li{opacity:.25;transform:translateX(-6px)}
.anim .mo-st.s1 .mo-list .r1,.anim .mo-st.s2 .mo-list .r2,.anim .mo-st.s3 .mo-list .r3,.anim .mo-st.s4 .mo-list .r4{opacity:1;transform:none}
/* 条形：费用归到每一个客户 */
.mo-bars ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mo-bars li{display:grid;grid-template-columns:62px minmax(0,1fr) 46px;align-items:center;gap:10px;font-size:13px}
.mo-bars li span{color:var(--t2)}
.mo-bars li i{height:10px;width:var(--w);border-radius:6px;background:linear-gradient(90deg,var(--leaf),var(--leaf-hi));box-shadow:0 0 12px rgba(107,173,70,.5)}
.mo-bars li b{text-align:right;font:700 13px var(--f-lat);color:var(--leaf-hi)}
.mo-bars li.warn i{background:linear-gradient(90deg,#B07A38,var(--amber));box-shadow:0 0 12px rgba(220,164,92,.55)}
.mo-bars li.warn b,.mo-bars li.warn span{color:var(--amber)}
.anim .mo-bars li i{width:0;transition:width 1s var(--ease)}
.anim .mo-st.s1 .mo-bars .r1 i,.anim .mo-st.s2 .mo-bars .r2 i,.anim .mo-st.s3 .mo-bars .r3 i{width:var(--w)}
/* 甘特：几台机，一块块排上去 */
.mo-gantt .ln{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;margin-bottom:12px}
.mo-gantt .ln span{font-size:12.5px;color:var(--t2)}
.mo-gantt .ln p{position:relative;height:26px;margin:0;border-radius:7px;background:rgba(226,236,231,.04);border:1px solid rgba(226,236,231,.06)}
.mo-gantt .ln i{position:absolute;top:3px;bottom:3px;left:var(--x);width:var(--w);border-radius:5px;background:rgba(107,173,70,.28);border:1px solid rgba(134,196,99,.6)}
.mo-gantt .ln i.hot{background:rgba(166,224,127,.5);box-shadow:0 0 16px rgba(107,173,70,.7)}
.anim .mo-gantt .ln i{transform:scaleX(0);transform-origin:left;opacity:.2;transition:transform .7s var(--ease),opacity .4s}
.anim .mo-st.s1 .mo-gantt .r1,.anim .mo-st.s2 .mo-gantt .r2,.anim .mo-st.s3 .mo-gantt .r3{transform:none;opacity:1}
/* 三种排法并排比 */
.mo-cols3 .cs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mo-cols3 .cs > div{display:flex;flex-direction:column;gap:6px;padding:12px 10px;border-radius:12px;background:rgba(226,236,231,.04);border:1px solid rgba(226,236,231,.08);min-width:0}
.mo-cols3 b{font-size:13.5px}
.mo-cols3 span{font-size:12.5px;color:var(--t2)}
.mo-cols3 span.bad{color:var(--amber)}
.mo-cols3 .pick{border-color:rgba(134,196,99,.6);background:rgba(107,173,70,.12);box-shadow:0 0 22px rgba(107,173,70,.2)}
.anim .mo-cols3 .cs > div{opacity:.25;transform:translateY(6px)}
.anim .mo-st.s1 .mo-cols3 .r1,.anim .mo-st.s2 .mo-cols3 .r2,.anim .mo-st.s3 .mo-cols3 .r3{opacity:1;transform:none}
/* 指标灯：一盏盏亮，「媒体」那盏还没亮就发了预警 = 比新闻早一步 */
.mo-lamps ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.mo-lamps li{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border-radius:12px;background:rgba(226,236,231,.035);border:1px solid rgba(226,236,231,.07);text-align:center}
.mo-lamps li i{width:18px;height:18px;border-radius:50%;background:var(--leaf);box-shadow:0 0 0 4px rgba(107,173,70,.16),0 0 18px rgba(107,173,70,.9)}
.mo-lamps li.off i{background:none;border:1.5px solid rgba(197,207,202,.4);box-shadow:none}
.mo-lamps li b{font-size:13px}
.mo-lamps li span{font-size:11.5px;color:var(--t2)}
.anim .mo-lamps li:not(.off) i{background:var(--screen);border:1.5px solid rgba(226,236,231,.25);box-shadow:none;transition:all .45s}
.anim .mo-st.s1 .mo-lamps .r1 i,.anim .mo-st.s2 .mo-lamps .r2 i,.anim .mo-st.s3 .mo-lamps .r3 i{background:var(--leaf);border-color:transparent;box-shadow:0 0 0 4px rgba(107,173,70,.16),0 0 18px rgba(107,173,70,.9)}
/* 决策卡：结论 + 证据链 */
.mo-deck .cl{margin:0 0 10px;padding:10px 12px;border-radius:11px;background:rgba(107,173,70,.1);border:1px solid rgba(134,196,99,.4);font-size:13.5px}
.mo-deck .cl b{color:var(--leaf-hi)}
.mo-deck ol{margin:0;padding:0 0 0 18px;display:grid;gap:5px;font-size:12.5px;color:var(--t2)}
.anim .mo-deck .cl,.anim .mo-deck li{opacity:.25}
.anim .mo-st.s1 .mo-deck .r1,.anim .mo-st.s2 .mo-deck .r2,.anim .mo-st.s3 .mo-deck .r3{opacity:1}
@media (max-width:420px){.mo-st{height:auto;min-height:284px}.mo-bars li{grid-template-columns:52px minmax(0,1fr) 40px}}

/* ---------- 证据：这条线跑在哪（案例）/ 这个网站就是用它接入的 ---------- */
.u-proof{display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;padding:0}
@media (min-width:900px){.u-proof{grid-template-columns:minmax(0,300px) minmax(0,1fr)}}
.u-proof .tex{position:relative;min-height:160px;background-color:rgba(8,13,17,.6);border-right:1px solid rgba(226,236,231,.06);overflow:hidden}
.u-proof .tex .wm{position:absolute;left:22px;bottom:-12px;font:700 clamp(56px,6vw,84px)/1 var(--f-lat);letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px rgba(134,196,99,.45);white-space:nowrap}
.u-proof .tx{display:flex;flex-direction:column;gap:12px;padding:28px 30px}
.u-proof .meta{font-size:13px;color:var(--t3)}
.u-proof .q{font:700 clamp(20px,2vw,26px)/1.45 var(--f-cjk)}
.u-proof .q em{color:var(--amber)}
.u-proof .u-vals li{font-size:clamp(16px,1.6vw,19px);padding:12px 0}
.u-proof .acts{margin-top:6px}

/* =====================================================================
   其余页面（10/4 第四轮）：产品总览首屏清单、方法页 3D 首屏与问数、关于、预约、自助体检、常问、事实、岗位清单、隐私
   ===================================================================== */
/* ---------- 产品总览首屏：左边五条线跟着右边的符号轮流点亮 ---------- */
.u-ov .u-hero-txt{min-width:0}
.u-spot{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:8px;max-width:520px}
.u-spot a{display:grid;grid-template-columns:34px minmax(0,auto) minmax(0,1fr);align-items:center;gap:12px;padding:10px 14px 10px 10px;border-radius:14px;text-decoration:none;
  border:1px solid rgba(226,236,231,.08);background:rgba(226,236,231,.025);transition:border-color .35s,background .35s,box-shadow .35s}
.u-spot i{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(107,173,70,.1);border:1px solid rgba(134,196,99,.25);color:var(--leaf-hi)}
.u-spot i svg{width:20px;height:20px}
.u-spot b{font-size:15px;white-space:nowrap}
.u-spot span{font-size:13.5px;color:var(--t2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.u-spot a:hover,.u-spot a.on{border-color:rgba(134,196,99,.55);background:rgba(107,173,70,.1);box-shadow:0 0 26px rgba(107,173,70,.16)}
.u-spot a.on span{color:var(--t)}
@media (max-width:520px){.u-spot a{grid-template-columns:34px minmax(0,1fr)}.u-spot span{grid-column:2}}

/* ---------- 方法页：首屏接首页「只加一层」那段 3D；问数的小画面 ---------- */
.u-stk{position:relative;min-width:0}
.u-stk .stk-vis3d{height:540px}
@media (max-width:959px){.u-stk .stk-vis3d{height:420px}}
.u-math{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:center}
@media (min-width:960px){.u-math{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}.u-math .sec-head{margin-bottom:0}}

/* ---------- 关于：为什么 / 三条规矩（滚到才点亮）/ 四张「别处 → 我们」/ 我们是谁 / 联系 ---------- */
.u-why{max-width:46em;display:grid;gap:14px;color:#C9D4CE;font-size:17px}
.u-rules{list-style:none;margin:0;padding:0;border-top:1px solid rgba(226,236,231,.1)}
.u-rules li{display:grid;grid-template-columns:72px minmax(0,1fr);gap:6px 18px;padding:26px 0;border-bottom:1px solid rgba(226,236,231,.08)}
.u-rules .no{grid-row:span 2;font:500 13px var(--f-mono);color:var(--leaf);padding-top:12px}
.u-rules b{font:700 clamp(26px,3.2vw,44px)/1.2 var(--f-disp)}
.u-rules p{color:var(--t2);font-size:16px}
.anim .u-rules li b{color:rgba(232,237,234,.3);transition:color .7s,text-shadow .7s}
.anim .u-rules li.on b{color:var(--t);text-shadow:0 0 30px rgba(107,173,70,.3)}
.u-habits{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:860px){.u-habits{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hb{padding:24px 26px;display:flex;flex-direction:column;gap:10px}
.hb .k{font:500 12px var(--f-mono);letter-spacing:.08em;color:var(--leaf)}
.hb .was{font-size:16px;color:var(--t3)}
.hb .was s{text-decoration-color:rgba(220,164,92,.8);text-decoration-thickness:1.5px}
.hb .now{font:700 clamp(19px,1.8vw,23px)/1.4 var(--f-disp);color:var(--t)}
.hb .now::before{content:"→ ";color:var(--leaf)}
.hb .d{font-size:14px;color:var(--t2);border-top:1px solid rgba(226,236,231,.08);padding-top:10px;margin-top:4px}
.anim .hb .was s{text-decoration:none;background:linear-gradient(rgba(220,164,92,.85),rgba(220,164,92,.85)) 0 58%/0% 1.5px no-repeat;transition:background-size .8s var(--ease) .35s}
.anim .hb.is-in .was s{background-size:100% 1.5px}
.anim .hb .now{opacity:0;transform:translateY(8px);transition:opacity .6s 1s,transform .7s var(--ease) 1s}
.anim .hb.is-in .now{opacity:1;transform:none}
.u-facts{margin:0;border-top:1px solid rgba(226,236,231,.1)}
.u-facts div{display:grid;grid-template-columns:minmax(0,140px) minmax(0,1fr);gap:6px 24px;padding:16px 0;border-bottom:1px solid rgba(226,236,231,.08)}
.u-facts dt{color:var(--t2)}
.u-facts dd{margin:0}
@media (max-width:640px){.u-facts div{grid-template-columns:minmax(0,1fr);gap:2px}}
.u-contacts{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
@media (min-width:860px){.u-contacts{grid-template-columns:repeat(3,minmax(0,1fr))}}
.u-contacts a{display:flex;flex-direction:column;gap:6px;padding:22px 24px;text-decoration:none}
.u-contacts small{font:500 12px var(--f-mono);letter-spacing:.08em;color:var(--leaf)}
.u-contacts b{font:600 17px/1.5 var(--f-lat)}
.u-say{margin-top:22px;color:var(--t2);max-width:52em}

/* ---------- 预约：左边表单，右边「接下来会怎样」 ---------- */
.u-demo{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
@media (min-width:900px){.u-demo{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}}
.u-form{padding:28px}
.u-next{display:grid;gap:14px}
.u-next > div{padding:24px 26px}
.u-next h2{font:700 20px/1.3 var(--f-disp);margin-bottom:14px}
.u-steps3{list-style:none;margin:0;padding:0;display:grid;gap:14px;counter-reset:u3}
.u-steps3 li{counter-increment:u3;position:relative;padding-left:40px;display:flex;flex-direction:column;gap:2px}
.u-steps3 li::before{content:counter(u3);position:absolute;left:0;top:0;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--leaf);color:var(--leaf-ink);font:700 13px var(--f-lat);box-shadow:0 0 14px rgba(107,173,70,.6)}
.u-steps3 b{font-size:16px}
.u-steps3 span{color:var(--t2);font-size:14.5px}

/* ---------- 自助体检：仪器面板 + 扫描线；结果每项一盏灯 ---------- */
.u-instr{position:relative;padding:28px;overflow:hidden}
.u-scan{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;transition:opacity .4s}
.u-scan i{position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,rgba(166,224,127,.95),transparent);box-shadow:0 0 18px var(--leaf)}
.u-instr.scanning .u-scan{opacity:1}
.u-instr.scanning .u-scan i{animation:u-scanv 1.8s linear infinite}
@keyframes u-scanv{0%{top:0}100%{top:100%}}
@media (prefers-reduced-motion:reduce){.u-instr.scanning .u-scan i{animation:none;top:50%}}
.u .audit-i{border-bottom-color:rgba(226,236,231,.08)}
.u .audit-i .r{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:none;padding:2px 0}
.u .audit-i .r::before{content:"";width:9px;height:9px;border-radius:50%;flex:none}
.u .audit-i .r-pass{color:var(--leaf-hi)}.u .audit-i .r-pass::before{background:var(--leaf);box-shadow:0 0 12px rgba(107,173,70,.9)}
.u .audit-i .r-warn{color:var(--amber)}.u .audit-i .r-warn::before{background:var(--amber);box-shadow:0 0 12px rgba(220,164,92,.8)}
.u .audit-i .r-fail{color:var(--red)}.u .audit-i .r-fail::before{background:var(--red);box-shadow:0 0 12px rgba(224,104,90,.8)}
.u .audit-i .r-unknown{color:var(--t3)}.u .audit-i .r-unknown::before{border:1.5px solid var(--t3)}
.u-four{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:760px){.u-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.u-four{grid-template-columns:repeat(4,minmax(0,1fr))}}
.u-four > div{padding:22px 22px 24px;display:flex;flex-direction:column;gap:8px}
.u-four .k{font:500 12px var(--f-mono);color:var(--leaf)}
.u-four h3{font:700 19px/1.35 var(--f-disp)}
.u-four p:not(.k){font-size:14.5px;color:var(--t2)}

/* ---------- 常问：左边分组吸顶，右边点开就看答案 ---------- */
.u-faq{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding-top:36px}
@media (min-width:960px){.u-faq{grid-template-columns:220px minmax(0,1fr);gap:56px}}
.u-faq-nav{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;align-self:start}
.u-faq-nav::-webkit-scrollbar{display:none}
.u-faq-nav a{flex:none;display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:14px;text-decoration:none;border:1px solid rgba(226,236,231,.1);background:rgba(226,236,231,.03)}
.u-faq-nav b{font-size:14.5px}
.u-faq-nav span{font-size:12px;color:var(--t3)}
.u-faq-nav a:hover{border-color:rgba(134,196,99,.5)}
@media (min-width:960px){.u-faq-nav{position:sticky;top:calc(var(--bar) + 24px);flex-direction:column;overflow:visible}}
.u-fg{scroll-margin-top:calc(var(--bar) + 24px)}
.u-fg + .u-fg{margin-top:48px}
.u-fg h2{font:700 clamp(22px,2.2vw,28px)/1.3 var(--f-disp);margin-bottom:14px}
.fq{border-top:1px solid rgba(226,236,231,.1)}
.fq:last-child{border-bottom:1px solid rgba(226,236,231,.1)}
.fq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 2px;cursor:pointer;list-style:none;font-size:17px}
.fq summary::-webkit-details-marker{display:none}
.fq summary::after{content:"";flex:none;width:9px;height:9px;margin-right:6px;border-right:1.5px solid var(--leaf);border-bottom:1.5px solid var(--leaf);transform:rotate(45deg);transition:transform .3s}
.fq[open] summary::after{transform:rotate(-135deg)}
.fq summary:hover{color:var(--leaf-hi)}
.fq .a{padding:0 2px 22px;display:grid;gap:10px}
.fq .a p:not(.src){color:#D3DBD6;font-size:16px}
.fq .a .src{margin-top:2px}
.u-qa .u-q{max-width:24em}
.u-ans{margin-top:30px;padding:28px 30px;max-width:900px}
.u-ans .acts{margin-top:18px}

/* ---------- 公司事实：每条一张卡（编号、原句、日期、复制） ---------- */
.u-fcs{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
@media (min-width:900px){.u-fcs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.fc{display:flex;flex-direction:column;gap:10px;padding:20px 22px;border-radius:18px;border:1px solid rgba(226,236,231,.09);background:linear-gradient(160deg,rgba(26,40,46,.5),rgba(10,16,20,.5));scroll-margin-top:calc(var(--bar) + 70px)}
.fc:target{border-color:rgba(134,196,99,.6);box-shadow:0 0 30px rgba(107,173,70,.2)}
.fc .id{font:500 11.5px var(--f-mono);color:var(--leaf)}
.fc .claim{font-size:16px;line-height:1.75;color:var(--t)}
.fc .meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto;font-size:12.5px;color:var(--t3)}
.cp{min-height:34px;padding:0 12px;border-radius:999px;border:1px solid rgba(226,236,231,.14);font-size:12.5px;color:var(--t2);transition:all .2s}
.cp:hover{border-color:rgba(134,196,99,.55);color:var(--t)}
.cp.ok{background:var(--leaf);border-color:transparent;color:var(--leaf-ink)}

/* ---------- 岗位清单 ---------- */
.u-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.u-list a{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;text-decoration:none;border:1px solid rgba(226,236,231,.09);background:rgba(226,236,231,.025);transition:border-color .3s,box-shadow .3s}
.u-list a:hover{border-color:rgba(134,196,99,.5);box-shadow:0 0 26px rgba(107,173,70,.14)}
.u-list i{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:rgba(107,173,70,.1);border:1px solid rgba(134,196,99,.28);color:var(--leaf-hi);font:700 11px var(--f-lat);font-style:normal}
.u-list i svg{width:24px;height:24px}
.u-list b{display:block;font-size:16px}
.u-list small{display:block;color:var(--t2);font-size:14px}
.u-list .lamp{font-size:13px;color:var(--t2);max-width:220px}
@media (max-width:640px){.u-list a{grid-template-columns:44px minmax(0,1fr)}.u-list .lamp{grid-column:2}}
.u-panels.three{grid-template-columns:minmax(0,1fr)}
@media (min-width:860px){.u-panels.three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.u-panels.three{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ---------- 隐私：阅读版式，左边目录吸顶 ---------- */
.u-read{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
@media (min-width:960px){.u-read{grid-template-columns:220px minmax(0,1fr);gap:56px}}
.u-toc{display:none}
@media (min-width:960px){.u-toc{display:flex;flex-direction:column;gap:2px;position:sticky;top:calc(var(--bar) + 24px);align-self:start}}
.u-toc a{padding:6px 10px;border-radius:8px;text-decoration:none;font-size:13.5px;color:var(--t2);border-left:1px solid rgba(226,236,231,.1)}
.u-toc a:hover{color:var(--t);border-left-color:var(--leaf)}
.u-read .prose{max-width:760px}
.u-read .prose h2{scroll-margin-top:calc(var(--bar) + 24px)}
