:root{--paper:#fbf9f3;--canvas:#f4f1e8;--white:#fffefa;--ink:#26332c;--ink-2:#40514a;--muted:#5d6d63;--line:#e3e0d6;--line-soft:#edeade;--accent:#315b4a;--accent-hover:#244636;--mint:#2fa9a4;--serif:"Songti SC","Noto Serif SC","Source Han Serif SC",serif;--sans:"PingFang SC","Hiragino Sans GB","Noto Sans SC",sans-serif;--mono:"SF Mono",ui-monospace,Menlo,monospace;--sec-pad:140px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.9}::selection{color:var(--ink);background:#e4eae2}h1,h2,h3,p,dl,dd,figure,ol{margin:0}img{max-width:100%;display:block}a{color:inherit}.wrap{width:1120px;max-width:calc(100% - 64px);margin:0 auto}.site-nav{z-index:30;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0}.nav-inner{grid-template-columns:1fr auto 1fr;align-items:center;height:92px;display:grid}.brand{min-height:44px;color:var(--ink);justify-self:start;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand img{border-radius:7px;width:28px;height:28px}.brand span{letter-spacing:.01em;font-size:17px}.nav-collapse{display:contents}.nav-links{justify-content:center;gap:32px;display:flex}.nav-links a{min-width:44px;min-height:44px;color:var(--ink-2);justify-content:center;align-items:center;padding:0 4px;font-size:15px;text-decoration:none;display:inline-flex;position:relative}.nav-links a:after{content:"";background:var(--ink);transform-origin:0;height:1px;transition:transform .18s;position:absolute;bottom:12px;left:4px;right:4px;transform:scaleX(0)}.nav-links a:hover{color:var(--ink)}.nav-links a:hover:after,.nav-links a[aria-current=true]:after{transform:scaleX(1)}.nav-links a[aria-current=true]{color:var(--ink)}.nav-actions{justify-self:end;align-items:center;gap:26px;display:flex}.hero-band>*,.write-grid>*,.deploy-grid>*,.tech-grid>*,.nodes>*,.trio>*,.admin-grid>*,.compare-row>*,.footer-grid>*,.defs>*,.deploy-lower>*,.sec-head>*{min-width:0}.nav-actions .gh{min-height:44px;color:var(--ink-2);border-bottom:1px solid #0000;align-items:center;font-size:15px;text-decoration:none;transition:border-color .18s,color .18s;display:inline-flex}.nav-actions .gh:hover{color:var(--ink);border-bottom-color:var(--line)}.btn{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 26px;font-size:16px;text-decoration:none;transition:background-color .18s,color .18s,border-color .18s;display:inline-flex}.btn-primary{background:var(--accent);color:#fdfcf6}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{border-color:var(--accent);color:var(--accent);min-height:44px;padding:0 22px;font-size:15px}.btn-ghost:hover{background:var(--accent);color:#fdfcf6}.menu-toggle{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin-left:8px;padding:0;display:none}.icon-close,.menu-toggle[aria-expanded=true] .icon-open{display:none}.menu-toggle[aria-expanded=true] .icon-close{display:block}.hero{padding:104px 0}.hero h1{font-family:var(--serif);letter-spacing:.01em;max-width:720px;color:var(--ink);font-size:clamp(36px,4.72vw,68px);font-weight:400;line-height:1.22}.hero-band{grid-template-columns:480px 596px;align-items:start;gap:0 44px;margin-top:48px;display:grid}.lede{color:var(--ink-2);font-size:20px;line-height:1.95}.hero-actions{flex-wrap:wrap;align-items:center;gap:28px;margin-top:36px;display:flex}.link-plain{min-height:44px;color:var(--ink);text-underline-offset:6px;align-items:center;font-size:16px;-webkit-text-decoration:underline #c3c9bf;text-decoration:underline #c3c9bf;text-decoration-thickness:1px;transition:text-decoration-color .18s,color .18s;display:inline-flex}.link-plain:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.hero-facts{font-family:var(--mono);color:var(--muted);letter-spacing:.01em;margin-top:28px;font-size:14px;line-height:1.8}.plate{margin:0}.plate .mat{background:var(--white);border:1px solid var(--line);border-radius:4px;padding:8px}.plate .mat img{border-radius:2px;width:100%;height:auto}.plate figcaption{font-family:var(--mono);color:var(--muted);letter-spacing:.02em;margin-top:14px;font-size:13px;line-height:1.7}.plate-lg{width:980px;max-width:100%;margin:0 auto}.plate-lg figcaption{margin-top:16px}.section{padding:var(--sec-pad) 0;border-top:1px solid var(--line);scroll-margin-top:92px}.sec-head{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:0 96px;display:grid}.sec-head h2{font-family:var(--serif);letter-spacing:.01em;max-width:520px;color:var(--ink);font-size:clamp(30px,3.4vw,42px);font-weight:400;line-height:1.35}.sec-lede{color:var(--ink-2);max-width:520px;padding-top:6px;font-size:20px;line-height:1.95}.compare{border-top:1px solid var(--line);margin-top:84px}.compare-head,.compare-row{grid-template-columns:1fr 1fr;display:grid}.compare-head{padding:16px 0}.compare-head span{color:var(--muted);font-size:14px}.compare-head span:last-child{color:var(--ink);border-left:1px solid var(--line);padding-left:48px}.compare-row{border-top:1px solid var(--line-soft);padding:28px 0}.compare-row p{font-size:17px;line-height:1.85}.compare-row .was{color:var(--muted);padding-right:48px}.compare-row .now{color:var(--ink);border-left:1px solid var(--line);padding-left:48px}.compare-close{border-top:1px solid var(--line-soft);width:min(560px,100%);color:var(--ink-2);margin:64px 0 0 auto;padding-top:28px;font-size:17px;line-height:1.95}.write-grid{grid-template-columns:minmax(0,1fr) 420px;align-items:end;gap:0 72px;margin-top:96px;display:grid}.defs{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0 48px;display:grid}.def{border-top:1px solid var(--line);padding:24px 0 28px}.def h3{font-family:var(--serif);margin-bottom:8px;font-size:19px;font-weight:400;line-height:1.5}.def p{color:var(--muted);font-size:16px;line-height:1.85}.editor-defs{margin-top:96px}.support-line{max-width:880px;color:var(--muted);margin-top:26px;font-size:16px;line-height:1.9}.oss-band{border-top:1px solid var(--line);max-width:900px;margin-top:44px;padding-top:24px}.oss-band p{color:var(--muted);font-size:16px;line-height:1.9}.oss-band p+p{margin-top:6px}.oss-band a{color:var(--ink-2);text-underline-offset:4px;-webkit-text-decoration:underline #c3c9bf;text-decoration:underline #c3c9bf;transition:text-decoration-color .18s,color .18s}.oss-band a:hover{color:var(--ink);-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.oss-band .mono{font-family:var(--mono);color:var(--ink-2);letter-spacing:.01em;font-size:15px;line-height:1.8}.trio{grid-template-columns:repeat(3,1fr);gap:0 56px;margin-top:88px;display:grid}.trio .item{border-top:1px solid var(--line);padding-top:22px}.trio h3{font-family:var(--serif);margin-bottom:8px;font-size:19px;font-weight:400;line-height:1.5}.trio p{color:var(--muted);font-size:16px;line-height:1.85}.admin-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;margin-top:88px;display:grid}.admin-cell{border-bottom:1px solid var(--line-soft);padding:34px 56px 34px 0}.admin-cell:nth-child(2n){border-left:1px solid var(--line-soft);padding:34px 0 34px 56px}.admin-cell h3{font-family:var(--serif);margin-bottom:6px;font-size:18px;font-weight:400;line-height:1.5}.admin-cell p{color:var(--muted);font-size:16px;line-height:1.85}.nodes{grid-template-columns:repeat(3,1fr);gap:0 56px;margin-top:96px;display:grid;position:relative}.nodes:before{content:"";background:var(--line);height:1px;position:absolute;top:4px;left:0;right:0}.node{padding-top:40px;position:relative}.node .dot{background:var(--accent);border-radius:50%;width:9px;height:9px;position:absolute;top:0;left:0}.node:nth-child(2) .dot{background:var(--mint)}.node h3{font-family:var(--serif);margin-bottom:4px;font-size:19px;font-weight:400;line-height:1.5}.node p{font-family:var(--mono);color:var(--muted);letter-spacing:.01em;font-size:14px;line-height:1.8}.meta-line{border-top:1px solid var(--line);color:var(--muted);letter-spacing:.01em;margin-top:64px;padding-top:22px;font-size:15px;line-height:1.9}.deploy-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:0 72px;margin-top:96px;display:grid}.code{background:var(--canvas);border:1px solid var(--line);max-width:100%;font-family:var(--mono);color:var(--ink);white-space:pre;border-radius:4px;padding:24px;font-size:14px;line-height:2.1;overflow-x:auto}.code code{font-family:inherit;font-size:inherit}.addr{font-family:var(--mono);color:var(--muted);margin-top:20px;font-size:14px;line-height:1.9}.aside-block h3{font-family:var(--serif);margin-bottom:0;font-size:19px;font-weight:400;line-height:1.5}.aside-item{border-top:1px solid var(--line);padding:22px 0}.aside-block>.aside-item:first-of-type{border-top:1px solid var(--line)}.aside-item h3{margin-bottom:4px}.aside-item p{color:var(--muted);font-size:16px;line-height:1.8}.deploy-lower{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 72px;margin-top:84px;display:grid}.lower-block h3{font-family:var(--serif);margin-bottom:0;font-size:19px;font-weight:400;line-height:1.5}.paths{border-top:1px solid var(--line);margin-top:18px}.paths>div{border-bottom:1px solid var(--line-soft);grid-template-columns:72px 1fr;gap:24px;padding:16px 0;display:grid}.paths dt{color:var(--muted);font-size:15px}.paths dd{font-family:var(--mono);color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.7}.steps{counter-reset:s;border-top:1px solid var(--line);margin-top:18px;padding:0;list-style:none}.steps li{counter-increment:s;border-bottom:1px solid var(--line-soft);grid-template-columns:28px 1fr;gap:16px;padding:16px 0;font-size:16px;line-height:1.8;display:grid}.steps li:before{content:counter(s);font-family:var(--mono);color:var(--muted);padding-top:4px;font-size:13px}.tech-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:0 88px;margin-top:96px;display:grid}.tech-rows{border-top:1px solid var(--line)}.tech-row{border-bottom:1px solid var(--line-soft);grid-template-columns:64px 1fr;gap:24px;padding:20px 0;display:grid}.tech-row dt{color:var(--muted);font-size:15px}.tech-row dd{color:var(--ink);margin:0;font-size:16px;line-height:1.8}.stack-item{border-top:1px solid var(--line);padding:22px 0}.stack-item:last-child{border-bottom:1px solid var(--line-soft)}.stack-item h3{font-family:var(--serif);margin-bottom:4px;font-size:19px;font-weight:400;line-height:1.5}.stack-item p{color:var(--muted);font-size:16px;line-height:1.85}.cta{border-top:1px solid var(--line);text-align:center;padding:170px 0 180px}.cta .mark{background:var(--mint);width:26px;height:1px;margin:0 auto 48px}.cta h2{font-family:var(--serif);letter-spacing:.01em;max-width:940px;margin:0 auto;font-size:clamp(30px,3.5vw,50px);font-weight:400;line-height:1.4}.cta-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:32px;margin-top:56px;display:flex}.site-footer{border-top:1px solid var(--line);padding:64px 0 36px}.footer-grid{grid-template-columns:1.1fr 1.5fr 1fr;align-items:start;gap:40px;display:grid}.footer-brand{align-items:flex-start;gap:14px;display:flex}.footer-brand img{border-radius:8px;width:30px;height:30px;margin-top:4px}.footer-brand .name{letter-spacing:.01em;font-size:17px}.footer-brand .tag{color:var(--muted);margin-top:2px;font-size:15px;line-height:1.7}.footer-nav{flex-wrap:wrap;align-items:center;gap:0 8px;display:flex}.footer-nav a{min-width:44px;min-height:44px;color:var(--ink-2);justify-content:center;align-items:center;font-size:15px;text-decoration:none;display:inline-flex}.footer-nav a:hover{color:var(--ink);text-underline-offset:5px;text-decoration:underline}.footer-nav .sep{color:#a9b1a6;font-size:14px}.footer-meta{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:0 8px;font-size:15px;display:flex}.footer-meta a{min-width:44px;min-height:44px;color:var(--ink-2);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.footer-meta a:hover{color:var(--ink);text-underline-offset:5px;text-decoration:underline}.footer-meta .sep{color:#a9b1a6;font-size:14px}.footer-bottom{border-top:1px solid var(--line-soft);margin-top:44px;padding-top:24px}.footer-bottom p{color:var(--muted);letter-spacing:.01em;font-size:13px}@media (prefers-reduced-motion:no-preference){.rise{opacity:0;animation:.9s cubic-bezier(.2,.7,.2,1) forwards rise;transform:translateY(12px)}.rise.d1{animation-delay:50ms}.rise.d2{animation-delay:.11s}.rise.d3{animation-delay:.17s}.rise.d4{animation-delay:.23s}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}40%{opacity:1}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rise{opacity:1;transform:none}}.nw{white-space:nowrap}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}@media (width<=1240px){.hero-band{grid-template-columns:minmax(0,1fr) 520px}.deploy-grid{grid-template-columns:minmax(0,1fr) 300px}}@media (width<=1080px){.hero-band{grid-template-columns:1fr;gap:52px}.hero-band .plate{max-width:596px}.write-grid{grid-template-columns:1fr;gap:56px}.write-grid .plate{max-width:420px}.deploy-grid,.tech-grid{grid-template-columns:1fr;gap:56px}.sec-head{gap:0 64px}}@media (width<=900px){:root{--sec-pad:96px}.section{scroll-margin-top:76px}.sec-head{grid-template-columns:1fr;gap:24px}.sec-head h2{max-width:560px}.sec-lede{max-width:600px;padding-top:0}.compare{margin-top:56px}.compare-head{display:none}.compare-row{grid-template-columns:1fr;padding:24px 0}.compare-row .was{padding-right:0}.compare-row .now{border-left:1px solid var(--line);margin-top:12px;padding-left:16px}.compare-close{width:100%;margin-top:44px}.write-grid{margin-top:56px}.defs{border-bottom:0;grid-template-columns:1fr}.def:last-child{border-bottom:1px solid var(--line)}.trio{grid-template-columns:1fr;gap:0;margin-top:56px}.trio .item{padding:22px 0 26px}.admin-grid{grid-template-columns:1fr;margin-top:56px}.admin-cell{padding:26px 0}.admin-cell:nth-child(2n){border-left:0;padding:26px 0}.nodes{grid-template-columns:1fr;gap:0;margin-top:56px}.nodes:before{display:none}.node{border-top:1px solid var(--line);padding:22px 0 22px 26px}.node:first-child{border-top:0;padding-top:8px}.node .dot{top:30px}.node:first-child .dot{top:16px}.meta-line{margin-top:40px}.deploy-lower{grid-template-columns:1fr;gap:44px;margin-top:56px}.cta{padding:96px 0 104px}.cta .mark{margin-bottom:34px}.cta-actions{gap:22px;margin-top:40px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-meta{justify-content:flex-start}}@media (width<=860px){.wrap{max-width:calc(100% - 48px)}.nav-inner{height:68px}.nav-collapse{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;max-height:calc(100dvh - 68px);padding:6px 24px 30px;display:none;position:absolute;top:68px;left:0;right:0;overflow-y:auto}.nav-collapse.is-open{display:flex}.nav-links{flex-direction:column;justify-content:flex-start;gap:0}.nav-links a{border-bottom:1px solid var(--line-soft);justify-content:flex-start;width:100%;min-height:52px;font-size:16px}.nav-links a:after{display:none}.nav-actions{flex-direction:column;justify-self:stretch;align-items:stretch;gap:14px;margin-top:22px}.nav-actions .gh{border-bottom:0;justify-content:flex-start;min-height:44px;font-size:16px}.nav-actions .btn-ghost{min-height:48px;font-size:16px}.menu-toggle{grid-column:3;justify-self:end;display:inline-flex}.brand{font-size:16px}.hero{padding:56px 0 64px}.hero h1{max-width:100%;font-size:clamp(32px,8.4vw,46px)}.hero-band{gap:40px;margin-top:32px}.lede{font-size:18px;line-height:1.9}.hero-actions{gap:18px;margin-top:28px}.hero-actions .btn{width:100%}.link-plain{justify-content:center;width:100%}.hero-facts{margin-top:22px;font-size:14px;line-height:1.9}.plate .mat{padding:6px}.plate figcaption{margin-top:12px}.cta h2{font-size:clamp(28px,7.4vw,36px);line-height:1.45}.cta-actions .btn{width:100%}.cta-actions .link-plain{width:auto}.code{white-space:pre-wrap;overflow-wrap:anywhere;padding:18px 16px;font-size:14px;line-height:2}}@media (width<=420px){.wrap{max-width:calc(100% - 40px)}.nav-collapse{padding-left:20px;padding-right:20px}}.nav-actions{gap:20px}.theme-btn{border:1px solid var(--line);height:44px;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 13px;font-size:14px;line-height:1;transition:color .18s,border-color .18s,background-color .18s;display:inline-flex}.theme-btn:hover{color:var(--ink);border-color:var(--muted)}.theme-btn .ti{width:18px;height:18px;display:none}html[data-theme-mode=auto] .theme-btn .ti-auto,html[data-theme-mode=light] .theme-btn .ti-light,html[data-theme-mode=dark] .theme-btn .ti-dark,html:not([data-theme-mode]) .theme-btn .ti-auto{display:block}html[data-theme=dark]{--paper:#0b1411;--canvas:#0f1c18;--white:#101d18;--ink:#eef2ec;--ink-2:#c2d0c7;--muted:#9fb0a6;--line:#e9eee81f;--line-soft:#e9eee812;--accent:#4fbf94;--accent-hover:#74d3ad;--mint:#4fbf94;--serif:"PingFang SC","Hiragino Sans GB","Noto Sans SC",-apple-system,sans-serif}html[data-theme=dark] body{background:var(--paper);color:var(--ink)}html[data-theme=dark] .site-nav{-webkit-backdrop-filter:blur(16px)saturate(1.1);backdrop-filter:blur(16px)saturate(1.1);border-bottom-color:var(--line);background:#0b1411d1}html[data-theme=dark] .nav-collapse{background:var(--paper)}html[data-theme=dark] ::selection{color:#fff;background:#4fbf9442}html[data-theme=dark] .btn-primary{color:#08120e}html[data-theme=dark] .btn-ghost:hover{background:var(--accent);color:#08120e}html[data-theme=dark] .link-plain{text-decoration-color:#4fbf9473}html[data-theme=dark] .link-plain:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}html[data-theme=dark] .footer-nav .sep,html[data-theme=dark] .footer-meta .sep{color:var(--muted)}html[data-theme=dark] .hero h1{font-family:var(--sans);letter-spacing:-.03em;font-size:clamp(38px,5vw,72px);font-weight:600;line-height:1.1}html[data-theme=dark] .sec-head h2{font-family:var(--sans);letter-spacing:-.02em;font-size:clamp(32px,3.6vw,46px);font-weight:600;line-height:1.18}html[data-theme=dark] .cta h2{font-family:var(--sans);letter-spacing:-.02em;font-weight:600}html[data-theme=dark] .def h3,html[data-theme=dark] .trio h3,html[data-theme=dark] .admin-cell h3,html[data-theme=dark] .node h3,html[data-theme=dark] .aside-block h3,html[data-theme=dark] .lower-block h3,html[data-theme=dark] .stack-item h3{letter-spacing:-.01em;font-weight:600}html[data-theme=dark] .plate .mat{background:var(--white);border-color:#e9eee82b;border-radius:12px;padding:0;overflow:hidden;box-shadow:0 32px 90px #00000080}html[data-theme=dark] .plate .mat img{border-radius:12px}html[data-theme=dark] .hero .plate{position:relative}html[data-theme=dark] .hero .plate:before{content:"";z-index:-1;pointer-events:none;filter:blur(24px);background:radial-gradient(60% 60% at 50% 45%,#4fbf9424,#4fbf9400 70%);position:absolute;inset:-30px -10px 20px}html[data-theme=dark] .code{border-color:var(--line);color:#d7e4db;background:#08120e}html[data-theme=dark] .site-footer{background:#08100d}.shot-dark,html[data-theme=dark] .shot-light{display:none}html[data-theme=dark] .shot-dark{display:block}@media (width<=1200px){.theme-label{display:none}.theme-btn{width:44px;padding:0}}@media (width<=1080px){.nav-links{gap:22px}.nav-actions{gap:14px}}@media (width<=860px){.theme-btn{border-radius:10px;justify-content:flex-start;width:100%;height:48px;padding:0 14px}.theme-label{display:inline}html[data-theme=dark] .hero h1{letter-spacing:-.02em;font-size:clamp(30px,8.4vw,38px);line-height:1.16}}
