/* Grok Deck look — paper, ink, blob faces. No external deps. */
:root{
  --paper:#f6f3ec; --paper-2:#ece7dc; --ink:#111; --ink-2:#55524b; --ink-3:#8a857a;
  --blob:#0a0a0c; --teal:#25b3a2; --orange:#ff7a3c; --purple:#8c6cf2;
  --rule:rgba(17,17,17,.14);
  --sans:"PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Source Han Sans SC","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;
  --mono:ui-monospace,"SF Mono","JetBrains Mono","Menlo","Consolas","Noto Sans Mono CJK SC",monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;background:var(--paper-2);overflow:hidden}
body{font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}

/* Stage: fixed 1920x1080, scaled to viewport by JS */
#stage{position:absolute;left:50%;top:50%;width:1920px;height:1080px;transform-origin:0 0;background:var(--paper);overflow:hidden;box-shadow:0 10px 60px rgba(0,0,0,.08)}
.slide{position:absolute;inset:0;padding:110px 140px 120px;display:none;background:var(--paper)}
.slide.active{display:block}
.slide aside.notes{display:none}

/* Type */
.kicker{font-family:var(--sans);font-size:26px;letter-spacing:.08em;color:var(--ink-2);display:flex;align-items:center;gap:16px}
.kicker .dot{width:14px;height:14px;border-radius:50%;background:var(--orange)}
h1.hero{font-size:236px;line-height:1.02;font-weight:700;letter-spacing:-.02em}
h2.title{font-size:96px;line-height:1.1;font-weight:700;letter-spacing:-.01em}
.lede{font-size:40px;line-height:1.5;color:var(--ink-2);font-weight:400}
.mark{background:linear-gradient(transparent 62%, rgba(255,122,60,.38) 62%, rgba(255,122,60,.38) 92%, transparent 92%);padding:0 .06em}
.mark.teal{background:linear-gradient(transparent 62%, rgba(37,179,162,.35) 62%, rgba(37,179,162,.35) 92%, transparent 92%)}
.mark.purple{background:linear-gradient(transparent 62%, rgba(140,108,242,.32) 62%, rgba(140,108,242,.32) 92%, transparent 92%)}
.src{font-family:var(--mono);font-size:18px;color:var(--ink-3);letter-spacing:.02em}

/* Faces */
.face{display:block;overflow:visible}
.face.teal{color:var(--teal)} .face.orange{color:var(--orange)} .face.purple{color:var(--purple)}
.face.dark{color:var(--blob);--eye:var(--paper)}
.bob{animation:bob 5s ease-in-out infinite}
.bob.d2{animation-delay:-1.6s}.bob.d3{animation-delay:-3.1s}
@keyframes bob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(-3deg)}}

/* Chrome: counter, progress, notes */
#counter{position:absolute;right:56px;bottom:44px;font-family:var(--mono);font-size:22px;color:var(--ink-2);letter-spacing:.08em;z-index:20}
#counter b{color:var(--ink);font-weight:700}
#progress{position:absolute;left:0;bottom:0;height:6px;background:var(--blob);z-index:20;transition:width .5s cubic-bezier(.6,0,.2,1)}
#morph{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:30;display:none}
#notesPanel{position:fixed;left:0;right:0;bottom:0;max-height:38vh;overflow:auto;background:rgba(10,10,12,.94);color:#f6f3ec;font-size:18px;line-height:1.7;padding:20px 32px 26px;z-index:50;display:none}
#notesPanel.show{display:block}
#notesPanel h4{font-family:var(--mono);font-size:13px;letter-spacing:.14em;color:#9a958a;margin-bottom:8px;font-weight:400}
#notesPanel a{color:#7fe0d3}
#hint{position:fixed;left:16px;bottom:12px;font:12px var(--mono);color:#8a857a;z-index:40;opacity:.8;transition:opacity 1s}
.capture #hint,.capture #notesPanel{display:none!important}

/* ---------- Slide 1: cover ---------- */
.s-cover .hero{margin-top:120px}
.s-cover .sub{font-size:64px;font-weight:700;margin-top:20px;letter-spacing:.01em}
.s-cover .meta{position:absolute;left:140px;bottom:96px;display:flex;gap:48px;align-items:center;font-size:30px;color:var(--ink-2)}
.s-cover .meta .pill{border:2px solid var(--ink);border-radius:999px;padding:10px 26px;color:var(--ink);font-size:28px}
.s-cover .bigblob{position:absolute;right:-120px;top:120px;width:860px;height:860px}
.s-cover .f1{position:absolute;right:720px;top:96px;width:150px;height:150px}
.s-cover .f2{position:absolute;right:120px;bottom:70px;width:190px;height:190px}
.s-cover .f3{position:absolute;right:800px;bottom:230px;width:110px;height:110px}
.s-cover .tag{position:absolute;right:170px;top:470px;color:var(--paper);font-family:var(--mono);font-size:26px;letter-spacing:.12em;text-align:right;line-height:1.6}

/* ---------- Hotspot grid (slides 2,3) ---------- */
.s-hot{padding-top:96px}
.s-hot .head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:54px}
.s-hot .head .lede{font-size:34px;margin-top:14px}
.s-hot .month{display:flex;align-items:center;gap:22px}
.s-hot .month .face{width:120px;height:120px}
.hot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:3px solid var(--ink)}
.hot{padding:30px 36px 28px 0;border-bottom:1px solid var(--rule);min-height:300px;display:flex;flex-direction:column;position:relative}
.hot:not(:nth-child(3n+1)){padding-left:36px;border-left:1px solid var(--rule)}
.hot .date{font-family:var(--mono);font-size:26px;font-weight:700;display:flex;align-items:center;gap:12px}
.hot .date i{width:16px;height:16px;border-radius:50%;display:inline-block}
.hot h3{font-size:40px;line-height:1.28;font-weight:700;margin:16px 0 12px}
.hot p{font-size:25px;line-height:1.55;color:var(--ink-2);flex:1}
.hot .src{margin-top:16px}
.c-teal{background:var(--teal)}.c-orange{background:var(--orange)}.c-purple{background:var(--purple)}.c-dark{background:var(--blob)}

/* ---------- Slide 16: FastGPT capabilities ---------- */
.s-caps .lede{margin-top:20px;font-size:36px;max-width:1460px}
.caps{display:grid;grid-template-columns:repeat(5,1fr);margin-top:96px;border-top:3px solid var(--ink)}
.cap{padding:36px 30px 0 0;position:relative}
.cap + .cap{padding-left:30px;border-left:1px solid var(--rule)}
.cap .face{width:120px;height:120px;margin-bottom:30px}
.cap .num{font-family:var(--mono);font-size:22px;color:var(--ink-3);position:absolute;right:24px;top:40px}
.cap h3{font-size:44px;line-height:1.2;font-weight:700;margin-bottom:18px;white-space:nowrap}
.cap p{font-size:28px;line-height:1.6;color:var(--ink-2)}
.s-caps .foot{position:absolute;left:140px;bottom:64px;right:420px;display:flex;gap:40px;align-items:center}
.s-caps .corner{position:absolute;right:-60px;top:-80px;width:420px;height:420px}

/* ---------- shared bits ---------- */
.head-row{display:flex;justify-content:space-between;align-items:flex-start}
.title-sm{font-size:80px;line-height:1.12;font-weight:700;margin-top:18px}
.foot-src{position:absolute;left:140px;bottom:56px;right:360px}
.arrow{font-size:56px;color:var(--ink-3);align-self:center}
.chip{display:inline-block;font-size:24px;border:2px solid var(--ink);border-radius:999px;padding:6px 20px;margin:0 10px 10px 0}

/* timeline (4) */
.tl{position:relative;margin-top:70px;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.tl .era{padding:0 28px 0 0;position:relative}
.tl .era + .era{padding-left:28px;border-left:1px solid var(--rule)}
.tl .era-h{font-size:44px;font-weight:700}
.tl .era-y{font-family:var(--mono);font-size:24px;color:var(--ink-2);margin-top:6px}
.tl .era-t{font-size:28px;color:var(--ink-2);margin-top:4px}
.tl .bar{height:14px;border-radius:7px;margin:26px 0 30px}
.tl .ev{margin-bottom:24px}
.tl .ev b{font-family:var(--mono);font-size:42px;display:block}
.tl .ev span{font-size:30px;line-height:1.45;color:var(--ink)}
.tl .ev.hl b{color:var(--orange)}

/* big numbers (5, 18) */
.bigs{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:80px}
.big .n{font-size:168px;white-space:nowrap;line-height:1;font-weight:700;letter-spacing:-.03em}
.big .n small{font-size:64px;font-weight:700;margin-left:10px;letter-spacing:0}
.big .l{font-size:36px;margin-top:22px;color:var(--ink-2);line-height:1.5;border-top:3px solid var(--ink);padding-top:22px}

/* logos (6) */
.logos{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:56px}
.lg{background:#fff;border-radius:28px;padding:30px 34px;display:flex;gap:30px;align-items:center;min-height:300px;box-shadow:0 1px 0 rgba(0,0,0,.06)}
.lg img{width:170px;height:100px;object-fit:contain;flex:none}
.lg h3{font-size:50px;font-weight:700}
.lg .co{font-size:22px;color:var(--ink-3);margin:2px 0 12px}
.lg p{font-size:27px;line-height:1.5;color:var(--ink-2)}

/* glossary (7) */
.gl{display:grid;grid-template-columns:600px 1fr;gap:80px;margin-top:56px}
.story{background:var(--blob);color:var(--paper);border-radius:40px;padding:48px 50px;position:relative}
.story .face{position:absolute;right:-30px;top:-60px;width:150px;height:150px}
.story h4{font-size:26px;color:#b9b4a8;font-weight:400;margin-bottom:18px}
.story p{font-size:38px;line-height:1.6}
.terms .t{display:grid;grid-template-columns:280px 1fr;padding:20px 0;border-bottom:1px solid var(--rule);align-items:baseline}
.terms .t:first-child{border-top:3px solid var(--ink)}
.terms .t b{font-size:42px;font-weight:700}
.terms .t span{font-size:29px;line-height:1.5;color:var(--ink-2)}

/* prompt craft (8) */
.three{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:64px;margin-top:80px}
.col h3{font-size:54px;font-weight:700;margin:18px 0 14px}
.col p{font-size:32px;line-height:1.55;color:var(--ink-2)}
.col .face{width:120px;height:120px}
.bubble{background:#fff;border-radius:30px 30px 30px 8px;padding:32px 36px;font-size:31px;line-height:1.6;margin-top:22px}
.bubble em{font-style:normal;font-family:var(--sans);font-size:24px;padding:2px 10px;border-radius:8px;margin-right:6px;color:#111}
.win{margin-top:26px;height:64px;border:3px solid var(--ink);border-radius:16px;position:relative;overflow:hidden}
.win i{position:absolute;top:0;bottom:0;background:var(--teal)}
.temp{margin-top:30px;display:flex;justify-content:space-between;font-size:24px;color:var(--ink-2)}
.temp-bar{height:18px;border-radius:9px;background:linear-gradient(90deg,var(--teal),var(--purple),var(--orange));margin-top:26px;position:relative}
.temp-bar i{position:absolute;top:-12px;width:42px;height:42px;border-radius:50%;background:var(--blob);left:22%}

/* quote (9) */
.s-quote .q{font-size:116px;line-height:1.15;font-weight:700;margin-top:70px;white-space:nowrap}
.refcard{position:absolute;right:170px;top:480px;width:680px;background:#fff;border-radius:30px;padding:40px 44px;transform:rotate(2.5deg);box-shadow:0 18px 40px rgba(0,0,0,.08)}
.refcard h4{font-family:var(--mono);font-size:20px;color:var(--ink-3);font-weight:400;margin-bottom:18px}
.refcard p{font-size:26px;line-height:1.6;color:var(--ink-2);margin-bottom:14px}
.refcard p s{text-decoration-color:var(--orange);text-decoration-thickness:3px}
.stamp{position:absolute;right:-30px;bottom:-40px;background:var(--orange);color:#111;font-size:34px;font-weight:700;padding:16px 30px;border-radius:999px;transform:rotate(-8deg)}
.s-quote .sub2{font-size:40px;line-height:1.6;color:var(--ink-2);margin-top:60px;max-width:860px}

/* flow (10) */
.flow{display:flex;align-items:stretch;gap:22px;margin-top:80px}
.fs{flex:1;border-top:3px solid var(--ink);padding-top:28px}
.fs .face{width:130px;height:130px;margin-bottom:24px}
.fs .k{font-family:var(--mono);font-size:22px;color:var(--ink-3)}
.fs h3{font-size:50px;font-weight:700;margin:10px 0 14px}
.fs p{font-size:31px;line-height:1.55;color:var(--ink-2)}
.fs.end{background:var(--blob);color:var(--paper);border-radius:32px;padding:28px 32px;border-top:none}
.fs.end p{color:#cfcabe}.fs.end .k{color:#9a958a}
.banner{margin-top:70px;font-size:38px;font-weight:700;border-left:8px solid var(--teal);padding-left:28px}

/* statement (11) */
.s-state .big-s{font-size:100px;line-height:1.2;font-weight:700;margin-top:50px;max-width:1150px}
.s-state .bigblob{position:absolute;right:-120px;top:330px;width:640px;height:640px}
.probs{margin-top:60px;display:grid;grid-template-columns:1fr 1fr;gap:50px;max-width:1150px}
.probs div{border-top:3px solid var(--ink);padding-top:22px;font-size:30px;line-height:1.55;color:var(--ink-2)}
.probs b{display:block;font-size:24px;font-family:var(--mono);color:var(--orange);margin-bottom:8px}

/* quad (12) */
.quad-wrap{display:grid;grid-template-columns:1fr 560px;gap:70px;margin-top:56px}
.quad{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.qd{border-radius:30px;padding:44px 40px;min-height:300px}
.qd h3{font-size:54px;font-weight:700;margin-bottom:10px}
.qd p{font-size:32px;line-height:1.5}
.qd.t{background:rgba(37,179,162,.2)}.qd.o{background:rgba(255,122,60,.22)}.qd.p{background:rgba(140,108,242,.2)}.qd.d{background:var(--blob);color:var(--paper)}
.side h3{font-size:64px;font-weight:700;line-height:1.2}
.side p{font-size:34px;line-height:1.6;color:var(--ink-2);margin-top:18px}
.side .warn{margin-top:44px;border-left:8px solid var(--orange);padding-left:26px;font-size:34px;line-height:1.55}

/* stairs (13) */
.stairs{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;align-items:end;margin-top:40px;height:600px}
.st{border-radius:28px 28px 0 0;padding:30px 28px;display:flex;flex-direction:column}
.st .k{font-family:var(--mono);font-size:22px;opacity:.7}
.st h3{font-size:46px;font-weight:700;margin:8px 0 12px}
.st p{font-size:26px;line-height:1.5}
.st:nth-child(1){height:300px;background:rgba(37,179,162,.22)}
.st:nth-child(2){height:370px;background:rgba(37,179,162,.42)}
.st:nth-child(3){height:440px;background:rgba(140,108,242,.32)}
.st:nth-child(4){height:510px;background:rgba(255,122,60,.35)}
.st:nth-child(5){height:580px;background:var(--blob);color:var(--paper)}
.axis{display:flex;justify-content:space-between;font-family:var(--mono);font-size:22px;color:var(--ink-3);border-top:3px solid var(--ink);padding-top:14px}

/* equation (14) */
.eq{display:flex;align-items:center;gap:30px;margin-top:70px;font-weight:700}
.eq{white-space:nowrap}.eq .a{font-size:104px}.eq .op{font-size:80px;color:var(--ink-3);font-weight:400}
.eq .llm{font-size:96px;background:var(--blob);color:var(--paper);border-radius:999px;padding:0 50px;line-height:1.3}
.eq .par{font-size:60px}
.parts{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;margin-top:80px}
.pt{border-top:3px solid var(--ink);padding-top:24px}
.pt .face{width:116px;height:116px;margin-bottom:22px}
.pt h3{font-size:54px;font-weight:700;margin-bottom:10px}
.pt p{font-size:32px;line-height:1.5;color:var(--ink-2)}
.eq-note{font-size:30px;color:var(--ink-2);margin-top:30px}

/* stages (15) */
.stages{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:110px;align-items:end}
.sg{padding:0 30px 0 0;position:relative}
.sg .face{margin-bottom:24px}
.sg:nth-child(1) .face{width:120px;height:120px}.sg:nth-child(2) .face{width:170px;height:170px}.sg:nth-child(3) .face{width:220px;height:220px}.sg:nth-child(4) .face{width:270px;height:270px}
.sg .k{font-family:var(--mono);font-size:24px;color:var(--ink-3)}
.sg h3{font-size:68px;font-weight:700;margin:6px 0 4px}
.sg .en{font-size:30px;color:var(--ink-2)}
.sg .line{height:14px;border-radius:7px;margin-top:26px}
.stage-axis{margin-top:50px;font-size:34px;color:var(--ink-2);display:flex;justify-content:space-between}

/* cards (17) */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:64px}
.cd{border-radius:36px;padding:50px 46px 44px;min-height:640px;position:relative}
.cd .face{width:140px;height:140px;margin-bottom:30px}
.cd h3{font-size:54px;font-weight:700;margin-bottom:18px}
.cd p{font-size:34px;line-height:1.6}
.cd .tip{margin-top:24px;font-size:30px;font-weight:700;border-top:2px solid rgba(17,17,17,.25);padding-top:16px}
.cd.t{background:rgba(37,179,162,.22)}.cd.o{background:rgba(255,122,60,.24)}.cd.p{background:rgba(140,108,242,.22)}

/* stats (18) */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;margin-top:70px}
.sx .n{font-size:136px;font-weight:700;line-height:1;letter-spacing:-.02em}
.sx .n small{font-size:56px}
.sx .l{font-size:29px;line-height:1.5;color:var(--ink-2);margin-top:20px;border-top:3px solid var(--ink);padding-top:18px}
.two-ways{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:66px}
.two-ways div{border-radius:28px;padding:30px 36px;font-size:30px;line-height:1.55}
.two-ways b{display:block;font-size:40px;margin-bottom:8px}

/* steps (19) */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:70px}
.sp .no{font-size:220px;font-weight:700;line-height:1;color:var(--blob)}
.sp .no.t{color:var(--teal)}.sp .no.o{color:var(--orange)}.sp .no.p{color:var(--purple)}
.sp h3{font-size:56px;font-weight:700;margin:20px 0 14px;border-top:3px solid var(--ink);padding-top:24px}
.sp p{font-size:34px;line-height:1.6;color:var(--ink-2)}
.sp code{font-family:var(--mono);font-size:28px;background:#fff;padding:2px 12px;border-radius:8px;color:var(--ink)}

/* summary (20) */
.sums{margin-top:50px}
.sm{display:grid;grid-template-columns:140px 1fr;align-items:baseline;padding:30px 0;border-bottom:1px solid var(--rule)}
.sm:first-child{border-top:3px solid var(--ink)}
.sm b{font-family:var(--mono);font-size:52px}
.sm span{font-size:56px;font-weight:700;line-height:1.35}
.sm span small{display:block;font-size:32px;font-weight:400;color:var(--ink-2);margin-top:6px}
.acts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:56px}
.act{border-radius:26px;padding:28px 34px;font-size:31px;line-height:1.5;background:#fff}
.act b{display:block;font-family:var(--sans);font-size:26px;color:var(--ink-3);margin-bottom:6px}

/* end (21) */
.s-end .bigblob{position:absolute;right:-100px;top:140px;width:780px;height:780px}
.s-end .thanks{position:absolute;left:1440px;width:380px;text-align:center;top:690px;color:var(--paper);font-size:84px;font-weight:700}
.res{margin-top:70px;max-width:1000px}
.rs{padding:26px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:200px 1fr;align-items:baseline}
.rs:first-child{border-top:3px solid var(--ink)}
.rs span{font-size:28px;color:var(--ink-2)}
.rs a{font-family:var(--mono);font-size:44px;color:var(--ink);text-decoration:none;font-weight:700}
.star{margin-top:44px;font-size:30px;color:var(--ink-2)}
.star b{font-size:64px;color:var(--ink)}

@media (prefers-reduced-motion: reduce){.bob{animation:none}}
.ds-open{position:absolute;left:140px;right:140px;bottom:110px;background:var(--blob);color:var(--paper);border-radius:999px;padding:30px 56px;font-size:40px;font-weight:700;display:flex;gap:30px;align-items:center}
.ds-open span{font-weight:400;color:#cfcabe;font-size:34px}
.s-quote .todo{margin-top:40px;font-size:36px;line-height:1.6;max-width:860px;border-left:8px solid var(--teal);padding-left:28px}
.lg > div{flex:1;min-width:0}

/* ---------- video slides (2, 3) ---------- */
.vwrap{position:relative}
.vwrap video{display:block;width:100%;height:100%;background:#0a0a0c;cursor:pointer}
.vcap{font-family:var(--mono);font-size:18px;color:var(--ink-3);margin-top:14px;line-height:1.5}
.s-vid .grid{display:grid;grid-template-columns:1000px 1fr;gap:64px;margin-top:90px;align-items:start}
.s-vid .vwrap.wide{width:1000px;height:563px;border-radius:28px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.14)}
.s-vid .txt h2{font-size:58px;line-height:1.2;font-weight:700}
.s-vid blockquote{font-size:30px;line-height:1.6;color:var(--ink);border-left:8px solid var(--teal);padding-left:24px;margin-top:28px}
.s-vid blockquote cite{display:block;font-style:normal;font-size:22px;color:var(--ink-3);margin-top:8px}
.s-vid .facts{display:flex;flex-direction:column;gap:22px;margin-top:34px}
.s-vid .facts b{display:inline;font-size:56px;margin-right:12px;font-weight:700;line-height:1.1}
.s-vid .facts span{font-size:26px;color:var(--ink-2)}
.s-vid .facts code{font-family:var(--mono);font-size:34px;font-weight:700}
.pill-tag{display:inline-block;font-size:22px;border-radius:999px;padding:6px 18px;margin-top:22px;background:rgba(37,179,162,.2)}
.s-phone .grid{display:grid;grid-template-columns:1fr 430px;gap:110px;margin-top:10px;align-items:start}
.phone{width:430px;height:770px;border-radius:60px;background:#0a0a0c;padding:18px;box-shadow:0 22px 60px rgba(0,0,0,.18);position:relative}
.phone .vwrap{width:394px;height:734px;border-radius:44px;overflow:hidden}
.phone .vwrap video{object-fit:cover}
.s-phone .warn-tag{display:inline-block;margin-top:28px;font-size:28px;font-weight:700;border:3px solid var(--orange);color:#111;background:rgba(255,122,60,.14);border-radius:16px;padding:10px 22px}
.s-phone h2{font-size:84px;line-height:1.2;font-weight:700;margin-top:30px}
.s-phone ul{list-style:none;margin-top:40px}
.s-phone li{font-size:36px;line-height:1.55;padding:18px 0;border-bottom:1px solid var(--rule);color:var(--ink-2)}
.s-phone li:first-child{border-top:3px solid var(--ink)}
.s-phone li b{color:var(--ink)}
.s-phone .src{margin-top:26px;display:block;font-size:20px}
.s-phone .ptext{padding-top:40px}
.s-phone .vcap{position:absolute;left:0;right:0;bottom:-46px;text-align:center}
.s-phone .stmt{margin-top:40px;font-size:40px;font-weight:700;line-height:1.4}
.s-vid .facts .tryit span{display:block}

/* ---------- slide 4: AI video creators ---------- */
.s-creator .grid{display:grid;grid-template-columns:400px 1fr 500px;gap:56px;margin-top:34px;align-items:start}
.s-creator .phone{width:400px;height:716px;border-radius:56px;padding:16px}
.s-creator .phone .vwrap{width:368px;height:684px;border-radius:42px}
.s-creator .phone .vcap{position:absolute;left:0;right:0;bottom:-40px;text-align:center;white-space:nowrap;font-size:17px}
.s-creator h2{font-size:64px;line-height:1.2;font-weight:700}
.s-creator .who{font-size:26px;color:var(--ink-2);margin-top:14px}
.s-creator .prompt{background:#fff;border-radius:26px 26px 26px 8px;padding:24px 28px;font-size:27px;line-height:1.6;margin-top:22px}
.s-creator .prompt em{font-style:normal;font-size:20px;background:rgba(37,179,162,.28);border-radius:8px;padding:2px 10px;margin-right:8px}
.s-creator .say{font-size:28px;line-height:1.55;margin-top:18px;border-left:6px solid var(--orange);padding-left:18px}
.s-creator .nums{display:grid;grid-template-columns:repeat(4,1fr);margin-top:30px;border-top:3px solid var(--ink)}
.s-creator .nums div{padding-top:12px}
.s-creator .nums b{display:block;font-size:46px;font-weight:700;line-height:1.1}
.s-creator .nums span{font-size:21px;color:var(--ink-2)}
.s-creator .card{background:#fff;border-radius:30px;padding:28px 30px;box-shadow:0 10px 30px rgba(0,0,0,.06)}
.s-creator .card .tag2{font-size:20px;color:var(--ink-3)}
.s-creator .card h3{font-size:32px;font-weight:700;margin:6px 0 4px;line-height:1.3}
.s-creator .card .handle{font-size:22px;color:var(--ink-2)}
.s-creator .card img{width:100%;border-radius:14px;margin-top:16px;border:1px solid var(--rule)}
.s-creator .card p{font-size:23px;line-height:1.55;color:var(--ink-2);margin-top:12px}
.s-creator .card p b{color:var(--ink)}
.s-creator .card .models{background:rgba(140,108,242,.16);border-radius:14px;padding:12px 16px;color:var(--ink)}
.s-creator .fnote{position:absolute;left:140px;right:330px;bottom:46px;font-size:18px}

/* ---------- slide 5: before / after ---------- */
.s-ba h2{font-size:64px;line-height:1.15;font-weight:700;margin-top:10px}
.s-ba .ba{display:grid;grid-template-columns:720px 1fr;gap:0;margin-top:26px}
.s-ba .side{padding-right:50px}
.s-ba .side + .side{padding-right:0;padding-left:50px;border-left:3px dashed var(--rule)}
.s-ba .yr{display:inline-block;font-family:var(--mono);font-size:30px;font-weight:700;border-radius:999px;padding:4px 22px;margin-bottom:20px}
.s-ba .yr.old{background:rgba(17,17,17,.08);color:var(--ink-2)}
.s-ba .yr.new{background:var(--blob);color:var(--paper)}
.s-ba .left{display:grid;grid-template-columns:330px 1fr;gap:30px}
.s-ba .left .vwrap{width:330px;height:330px;border-radius:24px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.s-ba .q{font-size:36px;font-weight:700;line-height:1.35}
.s-ba .en{font-family:var(--mono);font-size:19px;color:var(--ink-3);margin-top:8px;line-height:1.5}
.s-ba .nuance{font-size:24px;line-height:1.55;color:var(--ink-2);margin-top:18px;border-left:6px solid var(--teal);padding-left:16px}
.s-ba .proof{width:100%;border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.s-ba .right .q{margin-top:16px;font-size:29px;line-height:1.4}
.s-ba .row2{display:grid;grid-template-columns:1fr 330px;gap:28px;margin-top:16px;align-items:start}
.s-ba .num{display:flex;flex-direction:column;gap:6px}
.s-ba .num b{font-size:88px;font-weight:700;line-height:1;color:var(--orange);white-space:nowrap}
.s-ba .num span{font-size:22px;line-height:1.5;color:var(--ink-2)}
.s-ba .num small{display:block;font-size:20px;color:var(--orange);font-weight:700}
.s-ba .status{font-size:22px;line-height:1.5;margin-top:10px;background:rgba(255,122,60,.14);border-radius:12px;padding:8px 16px;display:inline-block}
.s-ba .srcs{margin-top:10px;font-size:17px}
.s-ba .punch{position:absolute;left:140px;right:140px;bottom:78px;background:var(--blob);color:var(--paper);border-radius:999px;padding:18px 50px;font-size:34px;font-weight:700;text-align:center}
.s-ba .vcap{font-size:16px}

/* ---------- Transformer tip (after S7) ---------- */
.s-tip .grid{display:grid;grid-template-columns:1120px 1fr;gap:64px;margin-top:50px;align-items:center}
.s-tip .vwrap.wide{width:1120px;height:630px;border-radius:28px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.14)}
.s-tip h2{font-size:68px;line-height:1.25;font-weight:700}
.s-tip .credit{margin-top:40px;font-size:24px;white-space:nowrap;line-height:1.6;color:var(--ink-2)}
.s-tip .credit b{color:var(--ink);font-size:30px}
.s-tip .pill-tag{margin-top:28px;display:inline-block;background:rgba(37,179,162,.22);border-radius:999px;padding:10px 22px;font-size:24px;font-weight:700}
.s-tip .links{margin-top:48px;border-top:3px solid var(--ink);padding-top:22px}
.s-tip .links div{font-size:24px;line-height:1.7;color:var(--ink-2)}
.s-tip .links code{font-family:var(--mono);font-size:22px;color:var(--ink)}
.s-tip .vcap{font-size:18px}

/* X follow recommendations (new, before resources) */
.s-xf .xwrap{margin-top:40px;display:grid;grid-template-columns:1fr 400px;gap:56px;align-items:start}
.xlegend{display:flex;gap:34px;font-size:24px;color:var(--ink-2);align-items:center;padding-bottom:18px;border-bottom:3px solid var(--ink)}
.xlegend i,.xa .h i{display:inline-block;width:14px;height:14px;border-radius:50%;margin-right:10px;vertical-align:middle}
.xlegend .u{margin-left:auto;font-family:var(--mono);font-size:19px;color:var(--ink-3)}
.xgrid{display:grid;grid-template-columns:1fr 1fr;column-gap:44px}
.xa{display:grid;grid-template-columns:76px 1fr;gap:20px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule)}
.xa img{width:76px;height:76px;border-radius:50%;object-fit:cover;background:#fff;border:2px solid var(--ink)}
.xa .h{font-family:var(--mono);font-size:29px;font-weight:700;display:flex;align-items:center;white-space:nowrap}
.xa .h span{margin-left:auto;font-family:var(--mono);font-size:21px;font-weight:400;color:var(--ink-3);padding-left:12px}
.xa p{font-size:25px;line-height:1.35;color:var(--ink-2);margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.xqr{background:var(--blob);color:var(--paper);border-radius:40px;padding:40px 40px 36px;text-align:center}
.xqr img{width:300px;height:300px;display:block;margin:0 auto 26px;border-radius:18px;background:#fff}
.xqr b{display:block;font-size:44px;font-weight:700}
.xqr p{font-size:26px;line-height:1.5;margin-top:12px;color:#d8d3c8}
.xqr .src{margin-top:16px;color:#9a958a}
.xmore{margin-top:34px;font-size:28px;color:var(--ink-2);border-left:6px solid var(--teal);padding-left:20px}
.xmore b{color:var(--ink)}
.xlink{margin-top:30px;display:flex;align-items:baseline;gap:22px;font-size:28px;white-space:nowrap}
.xlink b{font-weight:700}
.xlink a{font-family:var(--mono);font-size:23px;color:var(--ink);text-decoration:none;border-bottom:3px solid var(--teal)}

/* ---------- Closing case: 实战案例 · 用 AI 全自动管理微信群 ---------- */
.shot{overflow:hidden;background:#fff;border-radius:18px;box-shadow:0 0 0 2px rgba(17,17,17,.12),0 10px 30px rgba(0,0,0,.07);flex:none}
.shot img{display:block;max-width:none;image-rendering:auto}
.shotsrc{position:absolute;right:140px;top:118px}
.unv{display:inline-block;font-size:19px;font-weight:700;color:#b4501f;background:rgba(255,122,60,.16);border:1.5px dashed var(--orange);border-radius:8px;padding:2px 10px;margin-left:8px;white-space:nowrap;vertical-align:2px}
.cap2{font-size:25px;line-height:1.45;color:var(--ink-2);margin-top:14px}
.cap2 b{color:var(--ink);margin-right:10px}
.cap2.c2s{font-size:21px}
.s-gate code,.s-route code{font-family:var(--mono);font-size:.92em;background:rgba(17,17,17,.06);padding:1px 8px;border-radius:6px}
/* cover */
.s-wcover .bigblob{position:absolute;right:-100px;top:150px;width:800px;height:800px}
.s-wcover .f1{position:absolute;right:760px;top:110px;width:140px;height:140px}
.s-wcover .f2{position:absolute;right:90px;bottom:60px;width:180px;height:180px}
.s-wcover .wh{font-size:150px;line-height:1.08;font-weight:700;letter-spacing:-.02em;margin-top:56px}
.s-wcover .wsub{font-size:32px;color:var(--ink-2);margin-top:36px;max-width:1080px;line-height:1.5}
.s-wcover .wmeta{position:absolute;left:140px;bottom:96px;display:flex;gap:30px;align-items:center;font-size:30px;color:var(--ink-2)}
.s-wcover .wmeta .pill{border:2px solid var(--ink);border-radius:999px;padding:8px 24px;color:var(--ink);font-size:26px}
.s-wcover .wtag{position:absolute;right:240px;top:720px;color:var(--paper);font-family:var(--mono);font-size:30px;letter-spacing:.08em;text-align:right;line-height:1.6}
/* why */
.whygrid{display:grid;grid-template-columns:1fr 700px;gap:64px;margin-top:56px}
.pains{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px}
.pn{border-top:3px solid var(--ink);padding-top:20px;font-size:30px;line-height:1.55;color:var(--ink-2)}
.pn b{display:block;font-size:36px;color:var(--ink);margin-bottom:8px}
.pn .by{font-family:var(--mono);font-size:19px;color:var(--ink-3);margin-left:8px}
.goal{background:#fff;border-radius:32px;padding:34px 38px 26px}
.goal h3{font-size:36px;font-weight:700;margin-bottom:14px}
.ex{display:flex;flex-direction:column;gap:8px;padding:18px 0;border-bottom:1px solid var(--rule)}
.ex .q{font-size:28px;font-weight:700}
.ex .r{font-size:25px;padding-left:22px;position:relative;color:var(--ink-2)}
.ex .r:before{content:"";position:absolute;left:0;top:10px;width:12px;height:12px;border-radius:50%}
.ex .r.t:before{background:var(--teal)}.ex .r.o:before{background:var(--orange)}.ex .r.p:before{background:var(--purple)}.ex .r.d:before{background:var(--ink-3)}
.gsrc{font-family:var(--mono);font-size:19px;color:var(--ink-3);margin-top:14px}
/* architecture */
.archwrap{margin-top:40px}
.arch{width:1640px;height:700px;display:block;overflow:visible}
.archnote{position:absolute;left:140px;bottom:56px;font-size:26px}
.archnote span{color:var(--ink-2);margin-left:10px;font-size:23px}
/* gate */
.gategrid{display:grid;grid-template-columns:1000px 600px;gap:40px;margin-top:34px}
.calls{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:26px}
.cl{font-size:25px;line-height:1.55;color:var(--ink-2);border-top:3px solid var(--ink);padding-top:14px}
.cl b{display:block;font-size:29px;color:var(--ink);margin-bottom:4px}
.cl.right{border-top:none;padding-top:0;margin-top:14px}
.cl.right b{display:inline;margin-right:10px}
.cl .unv{margin-left:0;margin-top:8px}
/* route */
.routegrid{display:grid;grid-template-columns:507px 547px 426px;gap:80px;margin-top:34px;justify-content:start}
.agents{margin-top:26px;display:grid;gap:14px}
.ag{border-radius:20px;padding:16px 22px;font-size:24px;line-height:1.45;color:var(--ink-2)}
.ag.p{background:rgba(140,108,242,.18)}
.ag b{display:block;font-size:27px;color:var(--ink)}
.ag0{font-family:var(--mono);font-size:20px;color:var(--ink-2)}
/* kb */
.kbgrid{display:grid;grid-template-columns:1080px 430px;gap:130px;margin-top:34px}
.kbrow{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:26px}
.kbrow div{border-top:3px solid var(--ink);padding-top:12px;font-size:23px;line-height:1.5;color:var(--ink-2)}
.kbrow b{display:block;font-size:27px;color:var(--ink);margin-bottom:2px}
.ledger .cap2{margin:12px 0 22px}
/* channels */
.changrid{display:grid;grid-template-columns:221px 1fr 360px;gap:50px;margin-top:38px;align-items:start}
.ch{display:grid;grid-template-columns:200px 1fr;gap:4px 18px;padding:16px 0;border-bottom:1px solid var(--rule);align-items:baseline}
.ch:first-child{border-top:3px solid var(--ink)}
.ch b{font-size:29px}
.ch span{font-size:24px;line-height:1.5;color:var(--ink-2)}
.ch i,.ch .unv{grid-column:2;justify-self:start;font-style:normal;margin-left:0}
.ch i.ok{font-size:19px;font-weight:700;color:#1a8a7c;background:rgba(37,179,162,.15);border-radius:8px;padding:2px 10px}
.ch.hl{background:rgba(255,122,60,.08)}
.aqr{background:var(--blob);color:var(--paper);border-radius:36px;padding:34px 30px 30px;text-align:center}
.aqr img{width:280px;height:280px;display:block;margin:0 auto 22px;border-radius:16px;background:#fff}
.aqr b{display:block;font-size:40px}
.aqr p{font-size:24px;line-height:1.5;margin-top:10px;color:#d8d3c8}
.alink{position:absolute;left:140px;bottom:52px;font-size:26px;display:flex;gap:18px;align-items:baseline}
.alink a{font-family:var(--mono);font-size:26px;color:var(--ink);text-decoration:none}
