.kicker{font:600 14px var(--mono);letter-spacing:.08em;color:#7fd1e2;text-transform:uppercase;margin:0 0 12px}body.dark h2{color:#fff}.g-lead{color:#a9bac0;max-width:640px;margin:0 0 24px;font-size:18px}.g-note{color:#7d9096;font-size:15px}.g-note a{color:#7fd1e2}.g-block{border-top:1px solid #141d21;padding:120px 0}.g-block h2{letter-spacing:-.02em;margin:0 0 18px;font-size:clamp(32px,4.4vw,54px);line-height:1.1}.g-two{grid-template-columns:1fr 1fr;align-items:center;gap:64px;display:grid}.g-two>*{min-width:0}.g-hero{background:radial-gradient(80% 60% at 30% 40%,#0f2a31 0%,#07090a 65%);align-items:center;min-height:calc(100vh - 64px);display:flex}.g-prompt{font:600 clamp(48px,10vw,128px)/1 var(--mono);color:#fff;letter-spacing:-.03em;align-items:center;gap:.4em;display:flex}.g-prompt span{color:#4fb3c9}.g-prompt em{font-style:normal}.g-prompt .caret{background:#fff;width:.08em;height:.9em;animation:1s step-end infinite blink}.g-hero-title{color:#fff;opacity:0;margin:36px 0 0;font-size:clamp(30px,4.5vw,56px);transition:opacity .8s,transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(20px)}.g-hero-sub{color:#a9bac0;opacity:0;max-width:680px;margin:18px 0 0;font-size:clamp(17px,2vw,21px);transition:opacity .8s .15s,transform .8s cubic-bezier(.16,1,.3,1) .15s;transform:translateY(20px)}.g-cue{color:#7d9096;font:14px var(--mono);opacity:0;margin-top:48px;text-decoration:none;transition:opacity .8s .4s;animation:2s ease-in-out infinite bob;display:inline-block}.hero-done .g-hero-title,.hero-done .g-hero-sub{opacity:1;transform:none}.hero-done .g-cue{opacity:1}@keyframes bob{50%{transform:translateY(6px)}}@keyframes blink{50%{opacity:0}}.g-cmds{gap:14px;display:grid}.g-cmd{opacity:0;transition:opacity .7s calc(var(--i) * .18s),transform .7s cubic-bezier(.16,1,.3,1) calc(var(--i) * .18s);background:#0f1719;border:1px solid #1d2a30;border-radius:14px;grid-template-columns:36px 1fr auto;align-items:center;gap:14px;padding:16px 18px;display:grid;transform:translate(30px)}.g-cmds.in .g-cmd{opacity:1;transform:none}.g-cmd .n{color:#fff;width:34px;height:34px;font:600 15px var(--mono);background:#0d5f74;border-radius:50%;place-items:center;display:grid}.g-cmd small{color:#7d9096;margin-bottom:4px;font-size:13px;display:block}.g-cmd code{font:14px/1.5 var(--mono);color:#e8eef5;white-space:pre-wrap;word-break:break-all;display:block}.copy{font:13px var(--sans);color:#a9bac0;cursor:pointer;background:0 0;border:1px solid #33444c;border-radius:8px;padding:6px 10px}.copy:hover{color:#7fd1e2;border-color:#7fd1e2}.copy.copied{color:#7ddc8a;border-color:#7ddc8a}.flowx{background:#07090a;border-top:1px solid #141d21;padding:110px 0 60px}.flowx-head{margin-bottom:40px}.flowx-head h2{letter-spacing:-.02em;margin:0 0 14px;font-size:clamp(32px,4.4vw,54px)}.fx-story{grid-template-columns:minmax(0,1.6fr) minmax(0,.85fr) 28px;align-items:start;gap:48px;max-width:1600px;margin:0 auto;padding:0 32px;display:grid}.fx-sticky{order:-1}.fx-mini{gap:2px;width:28px;font-size:13px;display:grid;position:sticky;top:30vh}.fx-sticky{--th:min(860px,calc(100vh - 64px));top:calc((100vh - var(--th)) / 2);position:sticky}.fx-steps{margin:0;padding:0 0 30vh;list-style:none;position:relative}.fx-steps:before{content:"";background:#1b262b;width:2px;position:absolute;top:0;bottom:0;left:21px}.fx-step{opacity:.32;grid-template-columns:44px 1fr;align-items:center;gap:18px;min-height:78vh;transition:opacity .4s;display:grid;position:relative}.fx-step.on{opacity:1}.fx-step.done{opacity:.55}.fx-step .no{z-index:1;color:#7d9096;width:44px;height:44px;font:600 16px var(--mono);cursor:pointer;background:#11181b;border:2px solid #22313a;border-radius:50%;place-items:center;transition:all .3s;display:grid;position:relative}.fx-step.on .no{color:#fff;background:#0d5f74;border-color:#4fb3c9;box-shadow:0 0 0 6px #4fb3c926}.fx-step.done .no{color:#7fd1e2;border-color:#0d5f74}.fx-step h3{color:#fff;margin:0 0 16px;font-size:clamp(24px,2.4vw,32px)}.fx-step h3 small{font:500 13px var(--mono);color:#f4b860;margin-top:6px;display:block}.fx-step .who{margin-bottom:12px}.fx-step .who b{font:600 12px var(--mono);letter-spacing:.08em;color:#7d9096;margin-bottom:3px;display:block}.fx-step .who p{color:#c7d6db;margin:0;font-size:16px}.term{height:var(--th);font:15.5px/1.65 var(--mono);background:#11181b;border:1px solid #22313a;border-radius:16px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 60px 120px -40px #000000d9,0 0 100px -20px #4fb3c91f}.term-bar{color:#7d9096;background:#172126;flex:none;align-items:center;gap:7px;padding:10px 14px;font-size:13px;display:flex}.term-bar>i{background:#e06c5f;border-radius:50%;width:11px;height:11px}.term-bar>i:nth-child(2){background:#e3b341}.term-bar>i:nth-child(3){background:#5fb15f}.term-bar>span{margin-left:12px}.mode{background:#0f1719;border:1px solid #22313a;border-radius:999px;margin-left:auto;padding:2px;display:flex}.mode button{font:600 12px var(--sans);color:#7d9096;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:4px 12px}.mode button.on{color:#fff;background:#0d5f74}.term-body{flex:1;grid-template-columns:1fr 240px;min-height:0;display:grid}.term-log{flex-direction:column;justify-content:flex-end;gap:14px;padding:22px 24px;display:flex;overflow:hidden}.term-log>div{white-space:pre-wrap;animation:.4s cubic-bezier(.16,1,.3,1) msg}.term-log .you{color:#e8eef5;background:#1b262b;border-left:3px solid #7d9096;border-radius:4px;padding:6px 12px}.term-log .you:before{content:"> ";color:#7d9096}.term-log .ai,.term-log .tool,.term-log .think{color:#e8eef5;padding-left:20px;position:relative}.term-log .ai:before{content:"⏺";position:absolute;left:0}.term-log .tool:before{content:"⏺";color:#7ddc8a;position:absolute;left:0}.term-log .tool b{font-weight:600}.term-log .tool em{color:#7d9096;font-style:normal;display:block}.term-log .think{color:#d97757}.term-log .think:before{content:"✻";animation:1.2s linear infinite spin;position:absolute;left:0}.term-log .think i{display:none}.term-log .old{opacity:.45}@keyframes spin{to{transform:rotate(360deg)}}@keyframes msg{0%{opacity:0;transform:translateY(8px)}}.term-tree{color:#7d9096;white-space:pre;border-left:1px solid #22313a;padding:22px 16px;font-size:13.5px;line-height:1.9;overflow:hidden}.term-tree b{color:#e8eef5;font-weight:600}.term-tree .new{color:#7ddc8a;animation:.5s cubic-bezier(.16,1,.3,1) both msg}.term-tree .new:after{content:"  新";font-size:11px}.term-tree .mod{color:#f4b860}.term-tree .mod:after{content:"  改";font-size:11px}html[data-lang=en] .term-tree .new:after{content:"  new"}html[data-lang=en] .term-tree .mod:after{content:"  edited"}.term-tree .empty{color:#4a5a60;font-style:italic}.term-input{color:#e8eef5;border:1px solid #33444c;border-radius:8px;flex:none;align-items:center;gap:10px;min-height:46px;margin:0 16px 16px;padding:11px 14px;display:flex}.term-input .ps{color:#7d9096}.term-input em{white-space:pre;font-style:normal}.term-input .caret{background:#e8eef5;width:8px;height:18px;animation:1s step-end infinite blink}.term-input .hint{display:none}.term.chat{font-family:var(--sans);font-size:15.5px}.term.chat .term-log{gap:10px}.term.chat .term-log .you{color:#fff;background:#0d5f74;border:0;border-radius:16px 16px 4px;align-self:flex-end;max-width:80%;padding:10px 14px}.term.chat .term-log .you:before{content:none}.term.chat .term-log .ai{background:#1f2b31;border-radius:16px 16px 16px 4px;align-self:flex-start;max-width:85%;padding:10px 14px}.term.chat .term-log .ai:before{content:none}.term.chat .term-log .tool{color:#7d9096;background:#141d21;border-radius:999px;align-self:center;padding:3px 12px;font-size:12.5px}.term.chat .term-log .tool:before{content:"⚙ ";color:#7d9096;position:static}.term.chat .term-log .tool b{font-weight:500}.term.chat .term-log .tool span,.term.chat .term-log .tool em{display:none}.term.chat .term-log .think{background:#1f2b31;border-radius:16px;align-self:flex-start;gap:5px;padding:12px 14px;display:flex}.term.chat .term-log .think:before,.term.chat .term-log .think span{display:none}.term.chat .term-log .think i{background:#7d9096;border-radius:50%;width:7px;height:7px;animation:1s infinite dot;display:block}.term.chat .term-log .think i:nth-child(3){animation-delay:.15s}.term.chat .term-log .think i:nth-child(4){animation-delay:.3s}@keyframes dot{30%{opacity:1;transform:translateY(-4px)}0%,60%,to{opacity:.4}}.term.chat .term-input{font-family:var(--sans);border-radius:999px}.term.chat .term-input .ps{display:none}.term.chat .term-input .hint{color:#4a5a60;display:inline}.term.chat .term-input em:not(:empty)~.hint,.inline-cli{display:none}.folders{height:340px;position:relative}.folder{left:calc(var(--i) * 70px);top:calc(var(--i) * 40px);border:1px solid #22313a;border-top:3px solid var(--c);width:300px;transform:rotate(calc((var(--i) - 1) * -4deg)) translateY(30px);opacity:0;transition:transform .8s cubic-bezier(.16,1,.3,1) calc(var(--i) * .15s),opacity .6s calc(var(--i) * .15s);background:#10171a;border-radius:6px 14px 14px;padding:0 0 18px;position:absolute;box-shadow:0 30px 60px -30px #000c}.folders.in .folder{opacity:1;transform:rotate(calc((var(--i) - 1) * -4deg))}.folders.in:hover .folder{transform:rotate(0) translateX(calc(var(--i) * 40px))}.folder .tab{background:var(--c);color:#fff;font:600 13px var(--mono);border-radius:0 0 10px;margin:-3px 0 0 -1px;padding:6px 14px;display:inline-block}.folder .files{font:14px/1.8 var(--mono);color:#a9bac0;padding:14px 18px 0;display:block}.folder small{color:var(--c);filter:brightness(1.6)}.g-cases{gap:18px;display:grid}.g-cases b{color:#fff;margin-bottom:4px;font-size:18px;display:block}.g-cases p{color:#a9bac0;margin:0;font-size:16px}.g-cases code{font:13px var(--mono);color:#c7d6db;background:#141d21;border-radius:5px;padding:1px 6px}.g-keys{grid-template-columns:1.3fr 1fr;align-items:center;gap:48px;margin-top:20px;display:grid}.keyboard{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.cap{aspect-ratio:1;font:600 clamp(20px,2.4vw,30px) var(--mono);color:#e8eef5;cursor:pointer;background:linear-gradient(#1f2b31,#141d21);border:1px solid #33444c;border-radius:14px;transition:transform 80ms,box-shadow 80ms,color .2s,border-color .2s;box-shadow:0 7px #0b1013,0 12px 24px #00000080}.cap:hover{border-color:#7d9096}.cap.on{color:#7fd1e2;border-color:#4fb3c9}.cap.down{animation:.22s press}@keyframes press{40%{transform:translateY(6px);box-shadow:0 1px #0b1013,0 4px 10px #00000080}}.key-screen{background:#0f1719;border:1px solid #1d2a30;border-radius:18px;min-height:220px;padding:28px 30px;box-shadow:inset 0 0 60px #4fb3c90f}.key-screen kbd{font:700 72px/1 var(--mono);color:#7fd1e2;margin-bottom:16px;display:block}.key-screen p{color:#e8eef5;margin:0;font-size:20px;line-height:1.5}.g-tree{font:15px/1.9 var(--mono);color:#c7d6db;background:#0f1719;border:1px solid #1d2a30;border-radius:16px;margin:0;padding:24px 26px;overflow-x:auto}.g-tree span{opacity:.15;transition:opacity .5s calc(var(--i) * 90ms)}.g-tree.in span{opacity:1}.g-end{text-align:center;background:radial-gradient(60% 70% at 50% 60%,#0f2a31 0%,#07090a 70%);border-top:1px solid #141d21;padding:140px 0}.g-end h2{color:#a9bac0;margin:0 0 22px;font-size:clamp(26px,3vw,36px);font-weight:500}.g-big{font:600 clamp(40px,8vw,96px)/1 var(--mono);color:#fff;cursor:pointer;background:0 0;border:0;padding:10px 20px}.g-big>span{color:#4fb3c9}.g-big small{font:14px var(--sans);color:#7d9096;margin-top:16px;display:block}.g-big.copied small{color:#7ddc8a}@media (width<=960px){.g-two,.g-keys{grid-template-columns:1fr;gap:40px}.g-block{padding:80px 0}.fx-story{grid-template-columns:1fr;padding:0 20px}.fx-sticky,.fx-mini{display:none}.fx-steps:before{left:17px}.fx-step{opacity:1;grid-template-columns:36px 1fr;min-height:0;padding:18px 0}.fx-step .no{width:36px;height:36px}.inline-cli{font:13px/1.6 var(--mono);background:#11181b;border:1px solid #22313a;border-radius:10px;gap:8px;margin-top:6px;padding:12px;display:grid}.inline-cli p{white-space:pre-wrap;color:#e8eef5;margin:0}.inline-cli .you:before{content:"> ";color:#7d9096}.inline-cli .ai:before,.inline-cli .tool:before{content:"⏺ "}.inline-cli .tool:before{color:#7ddc8a}.inline-cli em{color:#7d9096;font-style:normal;display:block}.folders{height:300px}.folder{width:230px;left:calc(var(--i) * 34px);top:calc(var(--i) * 34px)}.folders.in:hover .folder{transform:none}}@media (prefers-reduced-motion:reduce){.term-log>div,.term-tree .new,.g-cue{animation:none}}
