/* business.nuttle.dev 行业页：版式与组件沿用首页（html.home + /style.css + /home.js），这里补行业工作台 .wb-* 与几种图形块。
   规范见 DESIGN.md §11.5.1。动效只在 .rv.in 之后跑；少动效时直接是最终样子 */
.biz-video{border-radius:var(--r-sm);overflow:hidden;background:#050b08;aspect-ratio:16/9;box-shadow:var(--shadow-lg);width:100%}
.biz-video video{display:block;width:100%;height:100%}
.biz-foot{font-size:13px;color:var(--mute);max-width:820px;margin:40px auto 0;text-align:center}
.bz-hero{position:relative;padding:120px 0 64px;text-align:center;overflow:hidden}
.bz-hero h1{font-size:var(--fs-hero);line-height:1.1;letter-spacing:-.02em;font-weight:800;margin:0 0 16px}
.bz-hero h1 em{font-style:normal;background:linear-gradient(180deg,#ffd47c,#eea52f);-webkit-background-clip:text;background-clip:text;color:transparent}
.bz-hero .lede{font-size:20px;color:var(--dim);margin:0 auto 48px;max-width:30em}
.bz-hero .hx-eye{justify-content:center;margin-left:auto;margin-right:auto}
.bz-sec{padding:96px 0}
.bz-sec h2{text-align:center;margin-bottom:48px}
.bz-sec h2 em{font-style:normal;color:var(--accent)}

/* 工作台框 */
.wb{max-width:1080px;margin:0 auto;text-align:left;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid var(--line2);border-radius:20px;box-shadow:var(--shadow-lg)}
.wb .bar{background:rgba(255,255,255,.03);border-bottom:1px solid var(--line)}
.wb-b{padding:18px}
.wb-g{display:grid;gap:14px;grid-template-columns:1fr 1.5fr 1fr}
.wb-g .c4{grid-column:1/-1}
.wb-g.ecom,.wb-g.xb,.wb-g.vg{grid-template-columns:1.4fr 1fr 1.2fr}
.wb-g.ops,.wb-g.creator,.wb-g.local{grid-template-columns:1fr 1.3fr 1.1fr}
.wc{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:14px;padding:14px 16px;min-width:0}
.wc-t{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--dim);margin-bottom:12px;letter-spacing:.02em}
.wb-badge{margin-left:auto;font-size:11px;font-weight:700;color:#1a1205;background:linear-gradient(180deg,#ffd47c,#eea52f);border-radius:999px;padding:2px 8px;white-space:nowrap}
.wc.row{display:flex;align-items:center;gap:32px;flex-wrap:wrap}
.wc.row .wc-t{margin:0 8px 0 0}
.wb-kpi{display:flex;flex-direction:column}
.wb-kpi b{font-size:26px;font-weight:800;line-height:1.1;color:var(--fg)}
.wb-kpi span{font-size:12px;color:var(--mute)}
.wb-big{font-size:34px;font-weight:800;line-height:1.1;margin-bottom:8px;letter-spacing:-.01em}
.wb-cap{font-size:12px;color:var(--mute);margin-top:10px}
.wb-cap b{color:var(--fg)}.wb-cap em{font-style:normal;color:var(--warn)}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none;box-shadow:0 0 10px rgba(var(--mint),.6)}
.dot.hot{background:#f5b947;box-shadow:0 0 10px rgba(var(--gold),.8);animation:bzPulse 1.6s infinite}
@keyframes bzPulse{50%{transform:scale(1.6);opacity:.6}}

/* 折线、柱、环、仪表 */
.wb-spark{width:64px;height:22px;flex:none;overflow:visible}
.wb-spark.big{width:100%;height:80px}
.wb-spark polyline,.wb-roi polyline{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:600;stroke-dashoffset:600}
.rv.in .wb-spark polyline,.rv.in .wb-roi polyline{animation:bzDraw 1.6s var(--ease) .3s forwards}
@keyframes bzDraw{to{stroke-dashoffset:0}}
.wb-x{display:flex;justify-content:space-between;font-size:11px;color:var(--mute)}
.wb-bars{display:grid;gap:7px}
.wb-br{display:grid;grid-template-columns:72px 1fr 44px;align-items:center;gap:8px;font-size:12px;color:var(--dim)}
.wb-br span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wb-br i{height:8px;border-radius:4px;background:linear-gradient(90deg,rgba(var(--mint),.35),var(--accent));width:0}
.wb-br b{text-align:right;color:var(--fg);font-size:12px}
.wb-br.bad i{background:linear-gradient(90deg,rgba(226,109,109,.4),#e26d6d)}
.wb-br.bad b,.wb-br.bad span{color:#ff8f8f}
.rv.in .wb-br i{animation:bzGrow 1s var(--ease) forwards}
.rv.in .wb-br:nth-child(2) i{animation-delay:.08s}.rv.in .wb-br:nth-child(3) i{animation-delay:.16s}.rv.in .wb-br:nth-child(4) i{animation-delay:.24s}
.rv.in .wb-br:nth-child(5) i{animation-delay:.32s}.rv.in .wb-br:nth-child(6) i{animation-delay:.4s}.rv.in .wb-br:nth-child(7) i{animation-delay:.48s}.rv.in .wb-br:nth-child(8) i{animation-delay:.56s}
@keyframes bzGrow{to{width:var(--w)}}
.wb-ring{display:flex;align-items:center;gap:14px}
.wb-ring svg{width:72px;height:72px;transform:rotate(-90deg)}
.wb-ring circle{fill:none;stroke:rgba(255,255,255,.08);stroke-width:7}
.wb-ring circle.on{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:163.4;stroke-dashoffset:163.4}
.rv.in .wb-ring circle.on{animation:bzRing 1.4s var(--ease) .2s forwards}
@keyframes bzRing{to{stroke-dashoffset:calc(163.4 * (1 - var(--p)))}}
.wb-ring b{font-size:28px;font-weight:800}.wb-ring small{font-size:14px;color:var(--mute);font-weight:600}
.wb-ring span{display:block;font-size:12px;color:var(--mute)}
.wb-gauge{position:relative;text-align:center;margin-bottom:10px}
.wb-gauge svg{width:150px;height:84px}
.wb-gauge path{fill:none;stroke:rgba(255,255,255,.08);stroke-width:10;stroke-linecap:round}
.wb-gauge path.on{stroke:#f5b947;stroke-dasharray:157;stroke-dashoffset:157}
.rv.in .wb-gauge path.on{animation:bzGauge 1.4s var(--ease) .2s forwards}
@keyframes bzGauge{to{stroke-dashoffset:calc(157 * (1 - var(--p)))}}
.wb-gauge b{position:absolute;left:0;right:0;top:34px;font-size:28px;font-weight:800}
.wb-gauge span{display:block;font-size:12px;color:var(--mute);margin-top:-6px}
.wb-pg{height:10px;border-radius:5px;background:rgba(255,255,255,.08);overflow:hidden}
.wb-pg i{display:block;height:100%;width:0;background:linear-gradient(90deg,#eea52f,#ffd47c)}
.rv.in .wb-pg i{animation:bzGrow 1.4s var(--ease) .3s forwards}

/* 短剧：起量列表、分镜格、轨道、账号灯 */
.wb-li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.wb-li:last-child{border:0}
.wb-li div{flex:1;min-width:0}
.wb-li b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wb-li small{font-size:11px;color:var(--mute)}
.wb-sb{display:grid;grid-template-columns:repeat(16,1fr);gap:3px}
.wb-sb i{aspect-ratio:16/10;border-radius:2px;background:rgba(255,255,255,.06)}
.rv.in .wb-sb i.on{animation:bzCell .3s ease forwards;animation-delay:calc(var(--k) * 18ms)}
.rv.in .wb-sb i.bad{animation:bzBad .3s ease forwards;animation-delay:calc(var(--k) * 18ms)}
@keyframes bzCell{to{background:linear-gradient(135deg,rgba(var(--mint),.55),rgba(var(--mint),.2))}}
@keyframes bzBad{to{background:#e26d6d}}
.wb-trk{display:grid;grid-template-columns:36px 1fr;gap:8px;align-items:center;font-size:11px;color:var(--mute);margin-top:8px}
.wb-trk div{position:relative;height:14px;border-radius:4px;background:rgba(255,255,255,.04)}
.wb-trk i{position:absolute;top:2px;bottom:2px;left:var(--x);width:var(--w);border-radius:3px;background:var(--c);opacity:.8}
.wb-ac{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;padding:5px 0;font-size:12px}
.wb-ac b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wb-ac small{color:var(--mute)}
.wb-ac.bad .dot{background:#e26d6d;box-shadow:0 0 10px rgba(226,109,109,.8);animation:bzPulse 1.2s infinite}
.wb-ac.bad small,.wb-ac.bad b{color:#ff8f8f}

/* 电商：测品表、直播排布 */
.wb-tr{display:grid;grid-template-columns:84px 1fr auto 52px;align-items:center;gap:8px;padding:6px 0;font-size:12px}
.wb-tr b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wb-tr i{height:6px;border-radius:3px;background:var(--accent);width:var(--w);opacity:.7}
.wb-tr span{color:var(--mute);white-space:nowrap}
.wb-tr em{font-style:normal;font-size:11px;text-align:center;border-radius:6px;padding:2px 0;background:var(--accent-soft);color:var(--accent)}
.wb-tr.bad em{background:rgba(226,109,109,.14);color:#ff8f8f}.wb-tr.bad i{background:#e26d6d}
.wb-seq{display:flex;gap:6px;margin-top:10px}
.wb-seq span{flex:1;text-align:center;font-size:12px;padding:6px 0;border-radius:8px;background:rgba(255,255,255,.05);color:var(--dim)}
.wb-seq span.on{background:linear-gradient(180deg,#ffd47c,#eea52f);color:#1a1205;font-weight:700}
.wb-g.ecom .c4{grid-column:auto}.wb-g.ecom{grid-template-areas:"a b c" "a d c"}
.wb-g.ecom .c1{grid-area:a}.wb-g.ecom .c2{grid-area:b}.wb-g.ecom .c3{grid-area:c}.wb-g.ecom .c4{grid-area:d}

/* 企业运营：清单、群消息 */
.wb-ck{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px;font-size:12px;color:var(--dim)}
.wb-ck li::before{content:"";display:inline-block;width:12px;height:12px;border-radius:3px;border:1.5px solid var(--line2);margin-right:8px;vertical-align:-2px}
.wb-ck li.on{color:var(--mute);text-decoration:line-through}
.wb-ck li.on::before{background:var(--accent);border-color:var(--accent)}
.wb-msg{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:6px 0;font-size:12px}
.wb-msg .av{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#3a5a4d;font-weight:700}
.wb-msg small{display:block;color:var(--mute);font-size:11px}
.wb-msg div{background:rgba(255,255,255,.04);border-radius:4px 10px 10px 10px;padding:6px 10px}
.wb-msg.boss .av{background:#c0544a}.wb-msg.boss div{border:1px solid rgba(245,185,71,.35)}

/* 自媒体：日历、漏斗、问题 */
.wb-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.wb-day{display:grid;gap:5px;text-align:center;font-size:11px;color:var(--mute)}
.wb-day i{height:18px;border-radius:4px;border:1px dashed var(--line2)}
.rv.in .wb-day i.on{animation:bzSlot .35s ease forwards;animation-delay:calc(var(--k) * 45ms)}
@keyframes bzSlot{to{background:rgba(var(--mint),.35);border-color:transparent}}
.wb-fn{display:flex;justify-content:space-between;align-items:center;margin:0 auto 5px;width:var(--w);padding:6px 10px;border-radius:8px;font-size:12px;background:linear-gradient(90deg,rgba(var(--mint),.22),rgba(var(--mint),.08))}
.wb-fn b{color:var(--fg)}
.wb-q{display:flex;flex-wrap:wrap;gap:8px}
.wb-q span{font-size:12px;padding:6px 10px;border-radius:999px;background:rgba(245,185,71,.1);color:var(--tint-fg);border:1px solid rgba(245,185,71,.25)}

/* 本地生活：地图、评分 */
.wb-map{position:relative;height:220px;border-radius:10px;background:radial-gradient(circle at 40% 50%,rgba(var(--mint),.08),transparent 70%),rgba(255,255,255,.02);overflow:hidden}
.wb-roads{position:absolute;inset:0;width:100%;height:100%}
.wb-roads path{fill:none;stroke:rgba(255,255,255,.08);stroke-width:2.5;vector-effect:non-scaling-stroke}
.wb-pin{position:absolute;transform:translate(-50%,-50%)}
.wb-pin i{display:block;width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(var(--mint),.18)}
.wb-pin small{position:absolute;left:16px;top:-3px;white-space:nowrap;font-size:10px;color:var(--mute)}
.wb-pin.l small{left:auto;right:16px}
.wb-pin.bad i{background:#e26d6d;box-shadow:0 0 0 4px rgba(226,109,109,.25);animation:bzPulse 1.2s infinite}
.wb-pin.bad small{color:#ff8f8f;font-weight:700}
.wb-st{display:grid;grid-template-columns:72px 1fr 28px;gap:8px;align-items:center;font-size:12px;color:var(--dim);margin-bottom:8px}
.wb-st i{height:8px;border-radius:4px;background:linear-gradient(90deg,#eea52f,#ffd47c);width:var(--w)}
.wb-st:last-child i{background:#e26d6d}.wb-st b{color:var(--fg)}

/* 跨境：站点、库存、时间轴 */
.wb-rg{display:grid;grid-template-columns:40px 1fr auto;gap:8px;padding:5px 0;font-size:13px}
.wb-rg span{color:var(--mute)}.wb-rg em{font-style:normal;font-weight:700;color:var(--accent)}
.wb-rg.bad em{color:#ff8f8f}
.wb-iv{display:grid;grid-template-columns:56px 1fr 40px;gap:8px;align-items:center;font-size:12px;color:var(--dim);margin-bottom:8px}
.wb-iv i{height:8px;border-radius:4px;background:var(--accent);width:var(--w)}
.wb-iv.bad i{background:#e26d6d}.wb-iv.bad b{color:#ff8f8f}.wb-iv b{text-align:right}
.wb-tl{display:flex;justify-content:space-between;position:relative;padding-top:6px}
.wb-tl::before{content:"";position:absolute;left:4%;right:4%;top:13px;height:2px;background:var(--line2)}
.wb-tl span{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:13px;font-weight:700}
.wb-tl span::before{content:"";width:14px;height:14px;border-radius:50%;background:var(--bg);border:2px solid var(--line2)}
.wb-tl span.on::before{background:var(--accent);border-color:var(--accent)}
.wb-tl small{font-size:11px;color:var(--mute);font-weight:500}

/* 虚拟产品：出单流水、投产线 */
.wb-ods{height:186px;overflow:hidden;-webkit-mask:linear-gradient(transparent,#000 12%,#000 88%,transparent);mask:linear-gradient(transparent,#000 12%,#000 88%,transparent)}
.wb-ods>*{animation:bzScroll 9s linear infinite}
@keyframes bzScroll{to{transform:translateY(-100%)}}
.wb-od{display:grid;grid-template-columns:18px 1fr auto;gap:8px;align-items:center;padding:7px 0;font-size:12px;border-bottom:1px solid var(--line)}
.wb-od .ok{color:var(--accent);font-weight:800}.wb-od small{color:var(--mute)}
.wb-roi{width:100%;height:90px;overflow:visible}
.wb-roi .be{stroke:#e26d6d;stroke-width:1.5;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}

/* 图形块：一天、数据在哪、卡点、数字、行话 */
.bz-day{display:flex;gap:0;overflow-x:auto;padding:8px 0 16px;scrollbar-width:none}
.bz-day li{list-style:none;flex:1;min-width:120px;position:relative;text-align:center;padding:0 8px}
.bz-day li::before{content:"";position:absolute;left:0;right:0;top:22px;height:2px;background:linear-gradient(90deg,rgba(var(--mint),.1),rgba(var(--mint),.5),rgba(var(--mint),.1))}
.bz-day b{position:relative;display:inline-grid;place-items:center;min-width:46px;height:46px;padding:0 10px;border-radius:23px;background:var(--panel2);border:1px solid var(--line2);color:var(--accent);font-size:14px}
.bz-day span{display:block;margin-top:12px;font-size:15px;color:var(--fg);font-weight:600}
.bz-src{max-width:880px;margin:0 auto}
.bz-stack{display:flex;height:44px;border-radius:12px;overflow:hidden;margin-bottom:24px;font-size:14px;font-weight:700}
.bz-stack span{display:grid;place-items:center;white-space:nowrap}
.bz-stack .web{background:var(--accent);color:var(--accent-fg)}.bz-stack .app{background:#f5b947;color:#1a1205}.bz-stack .unknown{background:rgba(255,255,255,.1);color:var(--dim)}
.bz-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.bz-chips span{font-size:13px;padding:6px 12px;border-radius:999px;border:1px solid var(--line2);color:var(--dim)}
.bz-chips span.web{border-color:rgba(var(--mint),.4);color:var(--fg)}.bz-chips span.app{border-color:rgba(var(--gold),.4)}
.bz-pain{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.bz-pain div{background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:16px;padding:22px 20px}
.bz-pain i{font-style:normal;font:700 12px/1 var(--mono);color:#f5b947;letter-spacing:.1em}
.bz-pain b{display:block;font-size:19px;margin-top:12px;line-height:1.35}
.bz-num{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bz-num div{border-left:2px solid var(--accent);padding:4px 0 4px 18px}
.bz-num b{display:block;font-size:28px;font-weight:800;line-height:1.2;color:var(--fg)}
.bz-num span{font-size:13px;color:var(--mute)}
.bz-terms{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:960px;margin:0 auto}
.bz-terms span{font-size:15px;padding:8px 16px;border-radius:12px;background:var(--panel2);border:1px solid var(--line);cursor:help}
.bz-terms span:hover{border-color:var(--accent);color:var(--accent)}
.bz-inds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.bz-ind{display:block;text-decoration:none;color:var(--fg);background:rgba(255,255,255,.035);border:1px solid var(--line);border-radius:18px;padding:24px 22px;transition:transform .25s var(--ease),border-color .25s}
.bz-ind:hover{transform:translateY(-3px);border-color:rgba(var(--mint),.5)}
.bz-ind b{display:block;font-size:22px;margin-bottom:10px}
.bz-ind span{display:flex;flex-wrap:wrap;gap:6px}
.bz-ind small{font-size:12px;padding:3px 8px;border-radius:6px;background:rgba(255,255,255,.05);color:var(--dim)}
.bz-ind em{display:block;font-style:normal;color:var(--accent);font-weight:700;font-size:14px;margin-top:16px}
@media (max-width:960px){.wb-g,.wb-g.ecom,.wb-g.xb,.wb-g.vg,.wb-g.ops,.wb-g.creator,.wb-g.local{grid-template-columns:1fr 1fr;grid-template-areas:none}.wb-g.ecom>*{grid-area:auto!important}.bz-pain,.bz-inds{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.wb-g,.wb-g.ecom,.wb-g.xb,.wb-g.vg,.wb-g.ops,.wb-g.creator,.wb-g.local,.bz-pain,.bz-inds,.bz-num{grid-template-columns:1fr}.bz-hero{padding-top:88px}}
@media (prefers-reduced-motion:reduce){.wb *{animation:none!important}.wb-br i,.wb-pg i{width:var(--w)}.wb-sb i.on{background:rgba(var(--mint),.4)}.wb-sb i.bad{background:#e26d6d}.wb-day i.on{background:rgba(var(--mint),.35)}
  .wb-spark polyline,.wb-roi polyline{stroke-dashoffset:0}.wb-ring circle.on{stroke-dashoffset:calc(163.4 * (1 - var(--p)))}.wb-gauge path.on{stroke-dashoffset:calc(157 * (1 - var(--p)))}}
