:root{color-scheme:light;--bg:#fbfcfb;--panel:#fff;--panel-soft:#f6f8f6;--text:#101512;--muted:#58635d;--line:#dce2de;--line-strong:#bdc8c0;--green:#087b32;--green-bright:#16a34a;--green-soft:#e9f7ee;--orange:#df6c13;--orange-soft:#fff3e8;--purple:#7142c7;--purple-soft:#f2edfc;--blue:#2467ce;--blue-soft:#edf4ff;--shadow:0 14px 42px #18271d0f;--radius:10px;--ease-out:cubic-bezier(.22, .68, .36, 1);--ease-spring:cubic-bezier(.32, 1.42, .5, 1);--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", "PingFang SC", "Microsoft YaHei", sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg:#0d120f;--panel:#121915;--panel-soft:#17201a;--text:#edf5ef;--muted:#a7b4ab;--line:#2b372f;--line-strong:#405045;--green:#43c66d;--green-bright:#4ade80;--green-soft:#173b24;--orange:#fb923c;--orange-soft:#3b2517;--purple:#a78bfa;--purple-soft:#2d2445;--blue:#60a5fa;--blue-soft:#182d4b;--shadow:0 14px 42px #00000040}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:106.25%}body{background:var(--bg);min-width:320px;color:var(--text);font-family:var(--sans);margin:0;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}::selection{background:var(--green);color:#fff}:focus-visible{outline:3px solid color-mix(in srgb, var(--green) 55%, transparent);outline-offset:3px}.skip-link{z-index:100;background:var(--text);color:var(--bg);padding:10px 14px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:20;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 92%, transparent);backdrop-filter:blur(16px);grid-template-columns:minmax(230px,1fr) auto minmax(230px,1fr);align-items:stretch;height:72px;padding:0 clamp(20px,3vw,52px);display:grid;position:sticky;top:0}.brand{justify-self:start;align-items:center;gap:10px;display:flex}.primary-nav{align-items:stretch;gap:10px;display:flex}.primary-nav a{color:var(--muted);align-items:center;gap:5px;padding:0 16px;font-size:1rem;font-weight:520;transition:color .18s;display:inline-flex;position:relative}.primary-nav a:hover,.primary-nav a.active{color:var(--text)}.primary-nav a:after{content:"";background:var(--green);transform-origin:50%;height:2px;transition:transform .22s;position:absolute;bottom:-1px;left:14px;right:14px;transform:scaleX(0)}.primary-nav a:hover:after,.primary-nav a.active:after{transform:scaleX(1)}.header-actions{justify-self:end;align-items:center;gap:7px;display:flex}.icon-button,.locale-button{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;min-width:38px;height:38px;transition:border-color .18s,background-color .18s,color .18s;display:inline-grid}.locale-button{color:var(--muted);font-family:var(--mono);padding:0 9px;font-size:.85rem}.icon-button:hover,.locale-button:hover{border-color:var(--line);background:var(--panel)}.theme-icon{place-items:center;display:grid}.theme-icon.sun,:root[data-theme=dark] .theme-icon.moon{display:none}:root[data-theme=dark] .theme-icon.sun{display:grid}.mobile-github{display:none}.page-shell{width:min(1450px,100% - 64px);min-height:calc(100vh - 145px);margin:0 auto;padding:48px 0 72px}.page-shell.wide{width:min(1580px,100% - 52px)}.page-shell.docs{width:min(1560px,100% - 48px)}.site-footer{border-top:1px solid var(--line);min-height:72px;color:var(--muted);justify-content:space-between;align-items:center;gap:18px;padding:0 clamp(24px,4vw,64px);font-size:.9rem;display:flex}.site-footer a{color:var(--green)}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.065em;text-wrap:balance;margin-bottom:12px;font-size:clamp(2.4rem,5vw,4.8rem);line-height:.98}h2{letter-spacing:-.04em;text-wrap:balance;margin-bottom:10px;font-size:clamp(1.55rem,2.4vw,2.25rem);line-height:1.1}h3{letter-spacing:-.018em;margin-bottom:7px;font-size:1.08rem}:lang(zh-CN) h1{letter-spacing:-.03em;line-height:1.08}:lang(zh-CN) h2{letter-spacing:-.015em}.eyebrow{color:var(--green);font-family:var(--mono);letter-spacing:.11em;text-transform:uppercase;margin-bottom:18px;font-size:.85rem;font-weight:700}.lede{max-width:780px;color:var(--muted);font-size:clamp(1.05rem,1.4vw,1.22rem)}.panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.panel-flat{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.button{border:1px solid var(--line-strong);background:var(--panel);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:0 20px;font-weight:650;transition:transform .18s,border-color .18s,background-color .18s,box-shadow .18s;display:inline-flex}.button:hover{border-color:var(--green);transform:translateY(-1px)}.button:active{transform:translateY(0)scale(.97)}.button.primary{border-color:var(--green);background:var(--green);color:#fff;box-shadow:0 8px 20px color-mix(in srgb, var(--green) 26%, transparent)}.button.primary:hover{box-shadow:0 11px 28px color-mix(in srgb, var(--green) 34%, transparent)}.button.small{min-height:38px;padding:0 13px;font-size:.9rem}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.green{color:var(--green)}.badge{background:var(--green-soft);color:var(--green);font-family:var(--mono);letter-spacing:.04em;border-radius:4px;align-items:center;gap:5px;padding:3px 8px;font-size:.76rem;font-weight:700;display:inline-flex}.badge.orange{background:var(--orange-soft);color:var(--orange)}.badge.purple{background:var(--purple-soft);color:var(--purple)}.badge.blue{background:var(--blue-soft);color:var(--blue)}.badge.slate{background:var(--panel-soft);color:var(--muted)}.lifecycle{grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;gap:13px;display:grid;position:relative}.lifecycle:not(.compact):before{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--green) 80%, transparent), transparent) -40% 0 / 30% 100% no-repeat, var(--line-strong);height:1.5px;animation:5.2s cubic-bezier(.45,0,.3,1) infinite track-flow;position:absolute;top:36px;left:calc(7.14286% + 37px);right:calc(7.14286% + 37px)}@keyframes track-flow{0%{background-position:-40% 0}65%,to{background-position:140% 0}}.lifecycle-step{text-align:center;flex-direction:column;align-items:center;gap:8px;min-width:0;display:flex;position:relative}.step-orb{z-index:1;border:1.5px solid var(--line-strong);background:var(--panel);width:74px;height:74px;color:var(--muted);transition:border-color .25s var(--ease-out), color .25s var(--ease-out), background-color .25s var(--ease-out), box-shadow .25s var(--ease-out), transform .32s var(--ease-spring);border-radius:50%;place-items:center;display:grid;position:relative}.lifecycle-step:hover .step-orb{border-color:currentColor;transform:translateY(-4px)scale(1.05)}.lifecycle-step strong{font-size:.95rem}.lifecycle-step small{max-width:150px;color:var(--muted);font-size:.8rem;line-height:1.4}.step-arrow{z-index:1;color:var(--muted);transition:color .25s var(--ease-out), transform .25s var(--ease-out);font-size:1.25rem;position:absolute;top:27px;left:calc(50% + 43px)}.lifecycle-step:hover .step-arrow{color:var(--green);transform:translate(3px)}.lifecycle-step.clarify .step-orb,.lifecycle-step.verify .step-orb{border-color:var(--green);color:var(--green)}.lifecycle-step.checkpoint .step-orb,.lifecycle-step.approval .step-orb{border-color:var(--orange);color:var(--orange)}.lifecycle-step.implement .step-orb{border-color:var(--purple);color:var(--purple)}.lifecycle-step.active .step-orb{border-color:var(--orange);color:var(--orange);background:color-mix(in srgb, var(--orange) 7%, var(--panel));animation:3.4s ease-in-out infinite orb-breathe}@keyframes orb-breathe{0%,to{box-shadow:0 0 0 4px color-mix(in srgb, var(--orange) 9%, transparent), 0 0 20px color-mix(in srgb, var(--orange) 10%, transparent)}50%{box-shadow:0 0 0 9px color-mix(in srgb, var(--orange) 6%, transparent), 0 0 34px color-mix(in srgb, var(--orange) 18%, transparent)}}.lifecycle.compact{gap:8px}.lifecycle.compact .step-orb{width:45px;height:45px}.lifecycle.compact .step-arrow{top:12px;left:calc(50% + 26px)}.lifecycle.compact .lifecycle-step strong{font-size:.76rem}.lifecycle.compact .lifecycle-step.active .step-orb{box-shadow:0 0 0 3px color-mix(in srgb, var(--orange) 10%, transparent);animation:none}.page-heading{justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px;display:flex}.page-heading h1{margin-bottom:8px;font-size:clamp(2.7rem,4vw,4rem)}.page-heading .lede{margin-bottom:0}.source-stamp{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);grid-template-columns:repeat(2,auto);gap:1px;display:grid;overflow:hidden}.source-stamp>span{background:var(--panel);min-width:150px;padding:13px 16px}.source-stamp small{color:var(--muted);font-family:var(--mono);letter-spacing:.08em;margin-bottom:5px;font-size:.74rem;display:block}code,pre{font-family:var(--mono)}.wf-icon{--wf:0;overflow:visible}:is(a,button,tr,li,article,.demo-tab,.guide-icon,.map-node):hover .wf-icon,.wf-icon:hover,.wf-live .wf-icon{--wf:1}.wf-rail-a{transform:translateX(calc(var(--wf) * 2.5px));transition:transform .4s var(--ease-out)}.wf-rail-b{transform:translateX(calc(var(--wf) * -2.5px));transition:transform .4s var(--ease-out)}.wf-ring{transform-box:fill-box;transform-origin:50%;transform:scale(calc(1 + var(--wf) * .09));transition:transform .42s var(--ease-spring)}.wf-lens,.wf-lens-handle{transform:translate(calc(var(--wf) * -2.5px), calc(var(--wf) * 2.5px));transition:transform .45s var(--ease-spring)}.wf-branch{stroke-dasharray:3 3;opacity:calc(.5 - var(--wf) * .22);transition:opacity .35s var(--ease-out)}.wf-origin{fill:currentColor;stroke:none}.wf-pick{fill:currentColor;stroke:none;transform-box:fill-box;transform-origin:50%;transform:scale(calc(1 + var(--wf) * .2));transition:transform .42s var(--ease-spring)}.wf-doc-line{opacity:calc(.5 + var(--wf) * .3);transition:opacity .3s var(--ease-out)}.wf-scan{fill:currentColor;opacity:calc(.4 + var(--wf) * .45);transition:opacity .3s var(--ease-out)}.wf-hand-rail{stroke-dasharray:3 3;opacity:.6}.wf-parcel{fill:var(--panel);transform:translateX(calc(var(--wf) * 8.5px));transition:transform .5s var(--ease-spring)}.wf-hand-target{fill:color-mix(in srgb, currentColor calc(var(--wf) * 100%), transparent);transition:fill .4s var(--ease-out) .12s}:is(a,button,tr,li,article,.demo-tab,.guide-icon,.map-node):hover .wf-check,.wf-icon:hover .wf-check{--wf-len:11;stroke-dasharray:11;animation:wf-draw .5s var(--ease-out)}:is(a,button,tr,li,article,.demo-tab,.guide-icon,.map-node):hover .wf-wave,.wf-icon:hover .wf-wave{--wf-len:40;stroke-dasharray:40;animation:wf-draw .8s var(--ease-out)}:is(a,button,tr,li,article,.demo-tab,.guide-icon,.map-node):hover .wf-branch-main,.wf-icon:hover .wf-branch-main{--wf-len:15;stroke-dasharray:15;animation:wf-draw .55s var(--ease-out)}:is(a,button,tr,li,article,.demo-tab,.guide-icon,.map-node):hover .wf-scan,.wf-icon:hover .wf-scan{animation:wf-scan 1.5s var(--ease-out) infinite}@keyframes wf-draw{0%{stroke-dashoffset:var(--wf-len)}}@keyframes wf-scan{0%,to{transform:translateY(0)}50%{transform:translateY(11px)}}.code-block{border:1px solid var(--line);background:var(--panel-soft);color:var(--text);white-space:pre-wrap;border-radius:8px;margin:12px 0 22px;padding:16px 58px 16px 18px;font-size:.9rem;position:relative;overflow-x:auto}.code-block:before{content:"";background:linear-gradient(90deg, var(--green), transparent 40%);border-radius:8px 8px 0 0;height:3px;position:absolute;top:0;left:0;right:0}.copy-button{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:6px;place-items:center;width:36px;height:34px;transition:border-color .18s,color .18s,background-color .18s;display:grid;position:absolute;top:8px;right:8px}.copy-button:hover{border-color:var(--green);color:var(--green)}.copy-button.copied{animation:.3s copy-pop}@keyframes copy-pop{50%{transform:scale(1.15)}}@media (width<=980px){.site-header{grid-template-columns:auto 1fr auto}.primary-nav{justify-self:center}.primary-nav a{padding:0 8px;font-size:.92rem}.github-nav{display:none!important}.mobile-github{display:inline-grid}.lifecycle{grid-template-columns:repeat(4,1fr);row-gap:28px}.step-arrow{display:none}.page-heading{flex-direction:column;align-items:start}}@media (width<=700px){.site-header{grid-template-columns:1fr auto;height:auto;min-height:64px;padding:0 18px}.brand-name{font-size:1.05rem}.primary-nav{order:3;grid-column:1/-1;justify-content:start;width:calc(100vw - 36px);overflow-x:auto}.primary-nav a{white-space:nowrap;min-height:45px}.header-actions{height:64px}.mobile-github{display:none}.page-shell,.page-shell.wide,.page-shell.docs{width:min(100% - 28px,1450px);padding-top:34px}.site-footer{flex-direction:column;align-items:flex-start;padding-top:25px;padding-bottom:25px}.lifecycle,.lifecycle.compact{grid-template-columns:1fr;gap:0}.lifecycle-step,.lifecycle.compact .lifecycle-step{text-align:left;flex-direction:row;justify-content:flex-start;min-height:62px}.lifecycle-step small{max-width:none}.source-stamp{grid-template-columns:1fr 1fr;width:100%}.source-stamp>span{min-width:0}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.page-shell>*,.workflow-layout>*,.playground>*{animation:.55s cubic-bezier(.22,.61,.36,1) both rise}.page-shell>:nth-child(2),.workflow-layout>:nth-child(2),.playground>:nth-child(2){animation-delay:70ms}.page-shell>:nth-child(3),.workflow-layout>:nth-child(3),.playground>:nth-child(3){animation-delay:.14s}.page-shell>:nth-child(4),.playground>:nth-child(4){animation-delay:.21s}.page-shell>:nth-child(5){animation-delay:.28s}.reveal-on .reveal{opacity:0;transform:translateY(22px)}.reveal-on .reveal.shown{opacity:1;transform:none}.reveal-on .reveal{transition:opacity .72s var(--ease-out), transform .72s var(--ease-out);transition-delay:var(--reveal-delay,0s)}.reveal-on .reveal.grow{transform:translateY(14px)scale(.965)}.reveal-on .reveal.grow.shown{transform:none}html{scrollbar-width:thin;scrollbar-color:var(--line-strong) var(--bg)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal-on .reveal{opacity:1!important;transform:none!important}}
