@font-face{font-family:"Mojian Local JinKai 04";src:local(TsangerJinKai04-W04),local(TsangerJinKai04 W04),local(仓耳今楷04 W04);font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:"Source Serif 4";src:url(./SourceSerif4Variable-Roman.ttf-mdpVL9bi.woff2)format("woff2");font-style:normal;font-weight:200 900;font-display:swap}@font-face{font-family:"Source Serif 4";src:url(./SourceSerif4Variable-Italic.ttf-CVdzAtxO.woff2)format("woff2");font-style:italic;font-weight:200 900;font-display:swap}:root{--read-local:"Mojian Local JinKai 04", "Canger JinKai 04", "Kaiti SC", "STKaiti", "KaiTi", "楷体", "Songti SC", "Noto Serif CJK SC", serif;--read-serif:Georgia, "Times New Roman", "Songti SC", "Noto Serif CJK SC", "Yu Mincho", serif;--read-source:"Source Serif 4", var(--read-local);--read-source-ja:"Source Serif 4", Georgia, "Times New Roman", "Yu Mincho", "Hiragino Mincho ProN", "Noto Serif CJK JP", serif;--read-project:"Mojian Project Reading Font", var(--read-local);--read-imported:"Mojian Imported Reading Font", var(--read-source);--read:var(--read-source);--sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--mono:ui-monospace, "SFMono-Regular", Menlo, Monaco, Consolas, monospace;--radius-control:4px;--radius-surface:8px;--radius-pill:999px;--fs-2xs:10px;--fs-xs:11px;--fs-sm:12px;--fs-md:13px;--fs-lg:14px;--fs-xl:16px;--fs-2xl:18px;--bg:#1a1b1d;--bg-2:#232427;--bg-3:#1e1f22;--bg-input:#1a1b1d;--bg-source:#202124;--pre-bg:#151619;--code-bg:#232427;--quote-bg:#1f2023;--th-bg:#2a2c30;--border:#3a3c41;--border-soft:#313338;--border-faint:#2a2c30;--text:#ecece9;--text-2:#c9c9c3;--text-3:#94948c;--text-4:#65655e;--accent:#f0a838;--accent-2:#d18a18;--accent-ink:#14110d;--accent-soft:#f0a83826;--mark-bg:#f0a83838;--sel:#f0a83847;--good:#8aa67c;--danger:#ba675f;--info:#86b8d6;--header-bg:#1a1b1deb;--tool-bg:#2c2d31f7;--tool-border:#45474d;--tool-text:#e8e8e2;--tool-divider:#515358;--tool-hover:#f0a83829;--paper-bg:#1c1a17;--paper-bg-soft:#211e1a;--paper-pre:#171512;--paper-code:#24211d;--paper-border:#3a332a;--paper-text:#f2ecdf;--paper-text-2:#cfc8b8;--paper-text-3:#958a76;--paper-accent:#f0a838;--paper-mark:#f0a83838;--paper-sel:#f0a83847;--paper-code-string:#8aa67c;--paper-code-number:#d69052;--paper-code-function:#d7ba7d;--paper-code-type:#86b8d6;--paper-font-heading:var(--read);--paper-font-body:var(--read);--paper-line-height:1.8;--paper-letter-spacing:0;--shadow-sm:0 1px 2px #00000059, 0 2px 6px #00000038;--shadow-md:0 3px 8px #0000004d, 0 10px 30px #00000073;--shadow-lg:0 10px 30px #0006, 0 30px 80px #00000073;--shadow:var(--shadow-md)}:root[data-theme=light],body.editor-active[data-theme=light]{--bg:#f5f5f3;--bg-2:#eaeae6;--bg-3:#f0f0ed;--bg-input:#fff;--bg-source:#edede9;--pre-bg:#ecece6;--code-bg:#e7e7e1;--quote-bg:#efefeb;--th-bg:#e2e2db;--border:#d6d5cd;--border-soft:#deddd6;--border-faint:#e4e3dc;--text:#26241f;--text-2:#4b4a43;--text-3:#6f6e65;--text-4:#a3a196;--accent:#bd7a0c;--accent-2:#9c6408;--accent-ink:#fffaf0;--accent-soft:#bd7a0c1f;--mark-bg:#f5c14a7a;--sel:#bd7a0c2e;--good:#5f8a4f;--danger:#a8524a;--info:#3d7ea6;--header-bg:#f5f5f3eb;--tool-bg:#fffffffa;--tool-border:#d6d5cd;--tool-text:#3a3931;--tool-divider:#d6d5cd;--tool-hover:#bd7a0c1a;--paper-bg:#f9ebcc;--paper-bg-soft:#f3e4c0;--paper-pre:#f2e2bc;--paper-code:#efdfb8;--paper-border:#ddcda2;--paper-text:#2b2218;--paper-text-2:#4f4334;--paper-text-3:#6e6249;--paper-accent:#bd7a0c;--paper-mark:#f5c14a7a;--paper-sel:#bd7a0c2e;--paper-code-string:#5f8a4f;--paper-code-number:#b06f2e;--paper-code-function:#8f6f28;--paper-code-type:#3d7ea6;--shadow-sm:0 1px 2px #78643c1f, 0 2px 6px #78643c14;--shadow-md:0 3px 8px #78643c1a, 0 10px 30px #78643c29;--shadow-lg:0 10px 30px #78643c24, 0 30px 80px #78643c2e}:root[data-paper=ink],body[data-paper=ink][data-paper]{--paper-bg:#1c1a17;--paper-bg-soft:#211e1a;--paper-pre:#171512;--paper-code:#24211d;--paper-border:#3a332a;--paper-text:#f2ecdf;--paper-text-2:#cfc8b8;--paper-text-3:#958a76;--paper-accent:#f0a838;--paper-mark:#f0a83838;--paper-sel:#f0a83847;--paper-code-string:#8aa67c;--paper-code-number:#d69052;--paper-code-function:#d7ba7d;--paper-code-type:#86b8d6}:root[data-paper=parchment],body[data-paper=parchment][data-paper]{--paper-bg:#f9ebcc;--paper-bg-soft:#f3e4c0;--paper-pre:#f2e2bc;--paper-code:#efdfb8;--paper-border:#ddcda2;--paper-text:#2b2218;--paper-text-2:#4f4334;--paper-text-3:#6e6249;--paper-accent:#bd7a0c;--paper-mark:#f5c14a7a;--paper-sel:#bd7a0c2e;--paper-code-string:#5f8a4f;--paper-code-number:#b06f2e;--paper-code-function:#8f6f28;--paper-code-type:#3d7ea6}:root[data-paper=cream],body[data-paper=cream][data-paper]{--paper-bg:#f0e9d1;--paper-bg-soft:#eae2c8;--paper-pre:#eae1c4;--paper-code:#e7dec2;--paper-border:#d5c9a9;--paper-text:#2b2218;--paper-text-2:#4f4334;--paper-text-3:#6e6249;--paper-accent:#bd7a0c;--paper-mark:#f5c14a7a;--paper-sel:#bd7a0c2e;--paper-code-string:#5f8a4f;--paper-code-number:#b06f2e;--paper-code-function:#8f6f28;--paper-code-type:#3d7ea6}:root[data-paper=snow],body[data-paper=snow][data-paper]{--paper-bg:#fff;--paper-bg-soft:#f6f7f8;--paper-pre:#f6f7f8;--paper-code:#eff1f3;--paper-border:#e2e4e8;--paper-text:#24262b;--paper-text-2:#3f434a;--paper-text-3:#6b7078;--paper-accent:#bd7a0c;--paper-mark:#f5c14a73;--paper-sel:#bd7a0c29;--paper-code-string:#5f8a4f;--paper-code-number:#b06f2e;--paper-code-function:#8f6f28;--paper-code-type:#3d7ea6}:root[data-paper=green],body[data-paper=green][data-paper]{--paper-bg:#c0edc6;--paper-bg-soft:#b6e5bb;--paper-pre:#b2e1b7;--paper-code:#aeddb2;--paper-border:#94cb98;--paper-text:#1f2b1c;--paper-text-2:#384733;--paper-text-3:#576851;--paper-accent:#8a6a0e;--paper-mark:#f0a8384d;--paper-sel:#8a6a0e33;--paper-code-string:#4a6d3c;--paper-code-number:#a05f24;--paper-code-function:#7a5e1e;--paper-code-type:#2f6a8e}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}textarea.md-source:focus-visible,.md-preview:focus-visible,#source:focus-visible{outline:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-reading-font=system-default]{--read:var(--sans)}[data-reading-font=system-serif]{--read:var(--read-serif)}[data-reading-font=source-serif-4]{--read:var(--read-source)}[data-reading-font=local-jinkai]{--read:var(--read-local)}[data-reading-font]{--paper-font-body:var(--read);--paper-font-heading:var(--read)}[data-reading-font=source-serif-4] .md-preview[lang=ja]{--paper-font-body:var(--read-source-ja);--paper-font-heading:var(--read-source-ja)}[data-reading-font=project-jinkai]{--read:var(--read-project);--paper-font-body:var(--read);--paper-font-heading:var(--read)}[data-reading-font=imported-font]{--read:var(--read-imported);--paper-font-body:var(--read);--paper-font-heading:var(--read)}:root{--landing-bg:#faf6ef;--landing-tint:#f4eee4;--landing-panel:#fffdf9;--landing-panel-2:#f2ece1;--landing-border:#e3d8c5;--landing-border-soft:#ece2d0;--landing-text:#2b2218;--landing-muted:#4f4334;--landing-faint:#7c6c56;--landing-quiet:#a89a84;--landing-accent:#a65339;--landing-accent-2:#8f4330;--landing-accent-soft:#f1e3d8;--landing-accent-ink:#fffdf9;--landing-mark:#f5c14a7a;--landing-shadow:0 10px 30px #78643c29;--landing-serif:var(--read);--landing-sans:var(--read);--landing-mono:var(--mono)}html,body{background:var(--bg);min-height:100%;margin:0}body:not(.editor-active){background:var(--landing-bg)}html:has(>body:not(.editor-active)){background:var(--landing-bg)}x-dc,body:not(.editor-active) .app-shell{display:none!important}body.editor-active #landing-page{display:none}#landing-page,#landing-page *{box-sizing:border-box}#landing-page{min-height:100%;color:var(--landing-muted);background:var(--landing-bg);font-family:var(--landing-sans);-webkit-font-smoothing:antialiased;line-height:1.8;overflow-x:hidden}#landing-page ::selection{background:#a653392e}#landing-page h1,#landing-page h2,#landing-page h3{color:var(--landing-text);font-family:var(--landing-serif);letter-spacing:.01em;margin:0;font-weight:600}#landing-page h1 em,#landing-page h2 em{color:var(--landing-accent);font-style:italic;font-weight:400}#landing-page p{margin:0}#landing-page code{font-family:var(--landing-mono)}.landing-wrap{width:min(1180px,100% - 48px);margin:0 auto}.landing-narrow{width:min(860px,100% - 48px);margin:0 auto}.landing-nav{z-index:20;border-bottom:1px solid var(--landing-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#faf6efeb;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;min-height:68px;padding:12px max(24px,50vw - 590px);display:flex;position:sticky;top:0}.landing-brand{min-width:0;color:var(--landing-text);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.landing-brand-mark{color:#e6a33a;background:var(--landing-text);width:30px;height:30px;font:400 17px/1 var(--landing-serif);border-radius:7px;flex:none;place-items:center;display:grid}.landing-brand-name{font:600 21px/1 var(--landing-serif);white-space:nowrap}.landing-button{border:1px solid var(--landing-border);min-height:46px;color:var(--landing-text);background:var(--landing-panel);font:600 15px/1.4 var(--sans);text-align:center;border-radius:5px;justify-content:center;align-items:center;padding:10px 22px;text-decoration:none;transition:border-color .2s,background .2s,color .2s,transform .2s;display:inline-flex}.landing-button:hover{border-color:var(--landing-accent);color:var(--landing-accent-2);transform:translateY(-1px)}.landing-button.primary{border-color:var(--landing-accent);color:var(--landing-accent-ink);background:var(--landing-accent)}.landing-button.primary:hover{border-color:var(--landing-accent-2);color:var(--landing-accent-ink);background:var(--landing-accent-2)}.landing-nav .landing-button{min-height:40px;padding:8px 16px;font-size:14px}#landing-page a:focus-visible,#landing-page summary:focus-visible,.landing-language-toggle:focus-visible{outline:2px solid var(--landing-accent);outline-offset:4px}.landing-mark{color:var(--landing-accent);font:600 11px/1.4 var(--landing-mono);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:11px;display:flex;margin-bottom:16px!important}.landing-mark:before{content:"";background:currentColor;flex:none;width:26px;height:1px}.landing-section{border-top:1px solid var(--landing-border);padding:108px 0}.landing-section.tinted{background:var(--landing-tint)}.landing-section h2{font-size:clamp(28px,3.4vw,44px);line-height:1.22}.landing-body{max-width:640px;font-size:17px;margin-top:20px!important}.landing-small{color:var(--landing-faint);font-size:14px;margin-top:16px!important}.landing-intro{max-width:860px}.landing-split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:60px;display:grid}.landing-split.reverse{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.landing-points{margin:24px 0 0;padding:0;list-style:none}.landing-points li{border-bottom:1px dashed var(--landing-border-soft);padding:10px 0 10px 22px;position:relative}.landing-points li:before{content:"—";color:var(--landing-accent);position:absolute;left:0}.landing-figure{margin:0}.landing-figure figcaption{color:var(--landing-faint);font:12px/1.6 var(--landing-mono);letter-spacing:.06em;margin-top:12px}.landing-figure.wide{margin-top:44px}.landing-shot{border:1px solid var(--landing-border);background:var(--landing-panel);width:100%;height:auto;box-shadow:var(--landing-shadow);border-radius:9px;display:block}.landing-phone{border:1px solid var(--landing-border);background:var(--landing-panel);width:100%;max-width:260px;height:auto;box-shadow:var(--landing-shadow);border-radius:22px;display:block}.landing-hero{padding:88px 0 0}.landing-copy{text-align:center}.landing-copy .landing-mark{justify-content:center;margin-bottom:22px!important}.landing-copy h1{font-size:clamp(40px,6vw,64px);line-height:1.16}.landing-lead{max-width:620px;font-size:19px;margin:26px auto 0!important}.landing-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:34px;display:flex}.landing-demo-note{color:var(--landing-faint);font-size:13px;margin-top:16px!important}.hero-shot{margin-top:60px}.hero-product-mobile{display:none}.pillar-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:64px 0 108px;display:grid}.pillar{border-top:1px solid var(--landing-border);padding-top:18px}.pillar.is-key{border-top-color:var(--landing-accent)}.pillar-num{color:var(--landing-quiet);font:italic 400 44px/1 var(--landing-serif);display:block}.pillar.is-key .pillar-num{color:var(--landing-accent)}.pillar h3{font-size:22px;line-height:1.3;margin:12px 0 6px!important}.pillar p{font-size:15px}.paper-list{flex-wrap:wrap;gap:14px;margin:26px 0 0;padding:0;list-style:none;display:flex}.paper-list li{color:var(--landing-faint);font:12px/1.3 var(--sans);flex-direction:column;align-items:center;gap:6px;display:flex}.paper-swatch{border:1px solid var(--landing-border);border-radius:999px;width:44px;height:44px}.file-list{border:1px solid var(--landing-border);background:var(--landing-panel);border-radius:7px;margin:24px 0 0;padding:0;list-style:none;overflow:hidden}.file-list li{border-top:1px solid var(--landing-border-soft);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:14px 18px;display:flex}.file-list li:first-child{border-top:0}.file-list li.is-key{background:var(--landing-accent-soft)}.file-list code{color:var(--landing-text);overflow-wrap:anywhere;font-size:13px}.file-list li.is-key code{color:var(--landing-accent-2)}.file-list span{color:var(--landing-faint);font:13px/1.6 var(--sans)}.mode-list{color:var(--landing-faint);font:14px/1.6 var(--sans);flex-wrap:wrap;gap:8px 28px;margin:18px 0 0;padding:0;list-style:none;display:flex}.mode-list strong{color:var(--landing-text)}.export-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:40px;display:grid}.export-card{border:1px solid var(--landing-border);background:var(--landing-panel);border-radius:5px;padding:26px;transition:border-color .2s,transform .2s}.export-card:hover{border-color:var(--landing-accent);transform:translateY(-2px)}.export-card code{color:var(--landing-accent);font-size:12px;font-weight:600}.export-card h3{font-size:23px;line-height:1.3;margin:10px 0 8px!important}.export-card p{font-size:15px}.phone-pair{justify-content:center;align-items:flex-start;gap:22px;display:flex}.phone-pair .landing-phone{width:min(260px,46%)}.phone-pair .landing-phone.offset{margin-top:56px}.landing-desktop-note{border:1px solid var(--landing-border);background:var(--landing-panel);border-radius:7px;margin-top:24px;padding:14px 18px;font-size:14px}.landing-desktop-note summary{cursor:pointer;color:var(--landing-muted);font-family:var(--sans);list-style-position:inside}.landing-desktop-note[open] summary{margin-bottom:12px}.landing-desktop-note p{color:var(--landing-muted);line-height:1.75;margin-top:10px!important}.landing-desktop-note a{color:var(--landing-accent);text-underline-offset:3px}.landing-desktop-badge{color:var(--landing-accent);font:600 10px/1.2 var(--landing-mono);letter-spacing:.06em;vertical-align:1px;border:1px solid #a6533973;border-radius:999px;margin-left:6px;padding:3px 8px;display:inline-block}.landing-signing-note{font-size:13px;color:var(--landing-faint)!important}.landing-code{border:1px solid var(--landing-border);color:var(--landing-muted);font:13px/1.75 var(--landing-mono);white-space:pre;background:#f3ebda;border-radius:5px;margin:10px 0 0;padding:12px 14px;overflow-x:auto}.faq-layout{grid-template-columns:minmax(0,4fr) minmax(0,7fr);align-items:start;gap:64px;display:grid}.faq-layout>div:first-child .landing-button{margin-top:26px}.faq-tldr{border:1px solid var(--landing-border);background:var(--landing-panel);border-radius:7px;margin-top:36px;padding:20px 22px}.faq-tldr-label{color:var(--landing-faint);font:11px/1.4 var(--landing-mono);letter-spacing:.14em;text-transform:uppercase}.faq-tldr p:last-child{color:var(--landing-text);font:19px/1.6 var(--landing-serif);margin-top:8px!important}.faq-list{border-top:1px solid var(--landing-border)}.faq-item{border-bottom:1px solid var(--landing-border)}.faq-item summary{min-height:64px;color:var(--landing-text);cursor:pointer;align-items:center;gap:18px;padding:16px 0;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--landing-accent);font:22px/1 var(--sans);flex:none}.faq-item[open] summary:after{content:"−"}.faq-num{color:var(--landing-quiet);font:italic 400 22px/1 var(--landing-serif);flex:0 0 34px}.faq-item[open] .faq-num{color:var(--landing-accent)}.faq-question{font:600 20px/1.4 var(--landing-serif);flex:1}.faq-answer{padding:0 40px 22px 52px;font-size:15.5px;line-height:1.85}.landing-closing{text-align:center;background:var(--landing-bg)}.landing-closing .landing-body{margin-inline:auto}.landing-footer{color:var(--landing-faint);font:12px/1.5 var(--landing-mono);flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding:28px 0 40px;display:flex}.landing-footer-link{color:var(--landing-muted);text-decoration:none}.landing-footer-link:hover{color:var(--landing-accent)}.landing-nav-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;max-width:100%;margin-left:auto;display:flex}.landing-language-menu{flex:none;max-width:100%;position:relative}.landing-language-toggle{border-radius:var(--radius-control);min-height:42px;color:var(--landing-muted);cursor:pointer;white-space:nowrap;font-size:var(--fs-md);align-items:center;gap:8px;padding:8px;list-style:none;display:flex}.landing-language-toggle::-webkit-details-marker{display:none}.landing-language-toggle:hover,.landing-language-menu[open] .landing-language-toggle{color:var(--landing-text);background:var(--landing-panel-2)}.landing-language-toggle svg{fill:none;stroke:currentColor;stroke-width:1.5px;flex:none;width:18px;height:18px}.landing-language-toggle .landing-language-chevron{width:12px;height:12px}.landing-language-menu[open] .landing-language-chevron{transform:rotate(180deg)}.landing-languages{border:1px solid var(--landing-border);border-radius:var(--radius-surface);background:var(--landing-panel);width:max-content;min-width:100%;box-shadow:var(--landing-shadow);flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.landing-languages a{border-radius:var(--radius-control);min-height:40px;color:var(--landing-muted);white-space:nowrap;font-size:var(--fs-md);justify-content:space-between;align-items:center;gap:16px;padding:8px 12px;text-decoration:none;display:flex}.landing-languages a:after{content:"";width:12px}.landing-languages a:hover{color:var(--landing-text);background:var(--landing-panel-2)}.landing-languages a[aria-current]{color:var(--landing-accent)}.landing-languages a[aria-current]:after{content:"✓"}.landing-languages a:focus-visible{outline-offset:-2px}#landing-page h1,#landing-page h2,#landing-page h3{overflow-wrap:anywhere}@media (width<=960px){.landing-split,.landing-split.reverse,.faq-layout{grid-template-columns:minmax(0,1fr);gap:36px}.landing-split.reverse>.landing-figure{order:2}.export-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=760px){.landing-wrap,.landing-narrow{width:calc(100% - 32px)}.landing-nav{gap:8px;padding:10px 16px}.landing-open{margin-left:auto}.landing-hero{padding-top:48px}.landing-copy h1{font-size:clamp(32px,9vw,44px)}.landing-lead{font-size:16px}.landing-actions{flex-direction:column;align-items:stretch}.landing-closing .landing-actions{align-items:stretch}#landing-page .hero-product{display:none}.hero-shot{margin-top:40px}.hero-product-mobile{justify-content:center;display:flex}.pillar-grid{grid-template-columns:minmax(0,1fr);gap:28px;padding:48px 0 72px}.landing-section{padding:72px 0}.phone-pair .landing-phone:not(.offset){display:none}.phone-pair .landing-phone.offset{width:min(260px,80%);margin-top:0}.faq-answer{padding:0 0 20px 52px}.faq-question{font-size:18px}.landing-footer{flex-direction:column}}@media (width<=600px){.landing-brand-name{display:none}.landing-nav-actions{min-width:0}}@media (prefers-reduced-motion:reduce){.landing-button:hover,.export-card:hover{transform:none}}#landing-page[lang=zh-CN],#landing-page[lang=zh-TW]{--landing-serif:var(--read-local);--landing-sans:var(--read-local)}#landing-page[lang=ja]{--landing-serif:var(--read-source-ja);--landing-sans:var(--read-source-ja)}.landing-languages,.landing-language-toggle,.landing-button{font-family:var(--sans)}
