@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/instrument-sans-latin-ext-wght-normal.B5bTHO_g.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/instrument-sans-latin-wght-normal.BbzFLZTg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--paper:#fafafa;--ink:#222720;--muted:#62675e;--soft:#f0f1ec;--accent:#416a35;--focus:#376bdc;--hycow:#f4e5b3;--swipeaway:#e7ede5;--yandian:#e8edf0;--ease:cubic-bezier(.23, 1, .32, 1);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Instrument Sans Variable,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}:root[data-theme=dark]{color-scheme:dark;--paper:#171816;--ink:#eceee8;--muted:#b0b5aa;--soft:#242721;--accent:#abd396;--focus:#abc4ff;--hycow:#3c3827;--swipeaway:#2a3529;--yandian:#2b3338}@media (prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--paper:#171816;--ink:#eceee8;--muted:#b0b5aa;--soft:#242721;--accent:#abd396;--focus:#abc4ff;--hycow:#3c3827;--swipeaway:#2a3529;--yandian:#2b3338}}*{box-sizing:border-box}html{background:var(--paper);-webkit-tap-highlight-color:transparent;scrollbar-color:var(--muted) var(--paper);scroll-padding-top:24px}body{color:var(--ink);margin:0;font-size:18px;line-height:1.7}::selection{background:var(--ink);color:var(--paper)}a{color:inherit;text-underline-offset:5px;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{touch-action:manipulation}button{-webkit-user-select:none;user-select:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:5px;border-radius:5px}button[hidden]{display:none}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em;text-wrap:balance;font-weight:580;line-height:1.15}h1{font-size:clamp(42px,6.8vw,76px)}h2{font-size:clamp(28px,3.8vw,38px)}h3{letter-spacing:-.025em;font-size:24px}p{overflow-wrap:break-word}svg{flex-shrink:0;width:22px;height:22px}.wrap{width:min(1060px,100% - 80px);margin-inline:auto}.reading-width{max-width:720px}.muted{color:var(--muted)}.skip-link{z-index:20;background:var(--ink);color:var(--paper);padding:12px 20px;position:fixed;top:12px;left:20px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{align-items:center;gap:44px;padding-block:28px;display:flex}.wordmark{letter-spacing:-.065em;font-size:35px;font-weight:720;line-height:1.2}.wordmark span{color:var(--accent)}.main-nav{align-items:center;gap:30px;margin-left:auto;display:flex}.main-nav a{color:var(--muted);align-items:center;min-height:44px;font-size:16px;display:flex}.main-nav a[aria-current=page]{color:var(--ink);text-underline-offset:8px;text-decoration:underline 2px}.display-controls{align-items:center;gap:10px;display:flex}.language-control{place-items:center;min-width:44px;min-height:44px;font-size:14px;font-weight:600;display:grid}.theme-control{background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid}.sun-icon{display:none}[data-theme=dark] .sun-icon{display:block}[data-theme=dark] .moon-icon{display:none}.hero{grid-template-columns:1fr auto;align-items:end;gap:50px;padding-top:86px;padding-bottom:66px;display:grid}.hero-copy{max-width:700px}.hero-intro{letter-spacing:-.02em;max-width:660px;margin-top:24px;font-size:clamp(22px,2.5vw,27px);line-height:1.65}.hero-body{max-width:620px;color:var(--muted);margin-top:18px}.hero-links{flex-wrap:wrap;align-items:center;gap:24px;margin-top:32px;display:flex}.text-link{color:var(--accent);align-items:center;gap:9px;min-height:44px;font-size:16px;display:inline-flex}.text-link .arrow{transition:transform .16s var(--ease);display:inline-block}.hero-app-links{align-self:start;gap:10px;padding-top:10px;display:flex}.hero-app-links a{transition:transform .18s var(--ease);border-radius:14px;display:block}.hero-app-links img{border-radius:11px;width:48px;height:48px}.section{padding-block:62px}.section-heading{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:30px;display:flex}.section-intro{color:var(--muted);max-width:700px;margin-top:14px}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}.product-card{min-width:0}.product-art{background:var(--hycow);border-radius:16px;justify-content:center;align-items:flex-start;height:300px;padding:28px 22px 0;display:flex;position:relative;overflow:hidden}.swipeaway .product-art{background:var(--swipeaway)}.yandian .product-art{background:var(--yandian)}.product-art .screen{width:184px;max-width:76%;height:auto;transition:transform .35s var(--ease);border-radius:20px 20px 0 0;transform:translateY(5px)}.product-art .illustration{object-fit:contain;object-position:center;mix-blend-mode:multiply;background:#fff;width:100%;height:100%}.yandian .product-art{background:#e8edf0;padding:20px 12px 30px}.art-caption{text-align:center;color:#505a61;font-size:12px;position:absolute;bottom:9px;left:0;right:0}.product-heading{align-items:center;gap:12px;margin-top:24px;display:flex}.product-heading img{border-radius:9px;width:38px;height:38px}.product-heading h3{font-size:24px}.product-arrow{color:var(--muted);transition:transform .18s var(--ease);margin-left:auto;font-size:21px}.product-card p{color:var(--muted);min-height:54px;margin-top:12px;font-size:16px;line-height:1.65}.product-small-links{color:var(--muted);flex-wrap:wrap;gap:8px 18px;margin-top:14px;font-size:13px;line-height:1.5;display:flex}.product-small-links a{padding-block:5px}.product-small-links span{width:100%;color:var(--accent)}.writing-section{max-width:860px}.post-row a{grid-template-columns:155px 1fr auto;align-items:start;gap:24px;padding-block:25px;display:grid}.post-row time{color:var(--muted);font-variant-numeric:tabular-nums;padding-top:4px;font-size:14px}.post-row h3{font-size:23px;line-height:1.4}.post-row p{color:var(--muted);margin-top:7px;font-size:16px}.post-row a>span{color:var(--muted);transition:transform .18s var(--ease)}.about-strip{background:var(--soft);border-radius:16px;grid-template-columns:1fr 1.2fr;gap:70px;padding:40px;display:grid}.about-strip p{color:var(--muted);font-size:17px}.about-strip .text-link{margin-top:16px}.site-footer{padding-top:66px;padding-bottom:max(34px, env(safe-area-inset-bottom));grid-template-columns:1fr auto;gap:30px;margin-top:64px;display:grid}.wordmark.small{font-size:28px}.site-footer p{color:var(--muted);margin-top:10px;font-size:14px}.footer-links{flex-wrap:wrap;align-items:flex-start;gap:14px 22px;font-size:14px;display:flex}.footer-links a{padding-block:7px}.site-footer .copyright{grid-column:1/-1;margin-top:0;font-size:12px}.page-heading{max-width:800px;padding-block:72px 46px}.page-heading>p{color:var(--muted);margin-top:22px;font-size:22px}.page-heading h1{font-size:clamp(40px,6vw,62px)}.back-link{color:var(--muted);min-height:44px;margin-bottom:20px;font-size:15px;display:inline-block}.back-link:before{content:"←";margin-right:10px}.product-hero{grid-template-columns:1.1fr .85fr;align-items:center;gap:96px;padding-block:36px 58px;display:grid}.product-identity{align-items:center;gap:16px;margin-bottom:30px;display:flex}.product-identity img{border-radius:14px;width:62px;height:62px}.product-identity strong{letter-spacing:-.025em;font-size:25px;font-weight:600}.platform{color:var(--muted);font-size:14px}.product-hero h1{font-size:clamp(38px,4.6vw,54px);line-height:1.2}.product-hero h1 span{display:block}.product-description{color:var(--muted);margin-top:24px;font-size:21px;line-height:1.7}.product-actions{flex-wrap:wrap;gap:12px 25px;margin-top:28px;display:flex}.button{background:var(--ink);min-height:48px;color:var(--paper);transition:transform .13s var(--ease), opacity .13s ease;border:0;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:10px 22px;font-size:15px;font-weight:550;display:inline-flex}.button:active,.theme-control:active,.hero-app-links a:active{transform:scale(.97)}.research-note{color:var(--muted);margin-top:22px;font-size:14px;line-height:1.7}.research-note strong{color:var(--ink)}.product-showcase{background:var(--hycow);border-radius:16px;justify-content:center;align-items:flex-start;height:560px;padding:30px 20px 0;display:flex;overflow:hidden}.swipeaway.product-showcase{background:var(--swipeaway)}.yandian.product-showcase{background:#e8edf0;align-items:center;padding:20px}.product-showcase .screen{border-radius:26px 26px 0 0;width:255px;max-width:90%}.product-showcase .illustration{object-fit:contain;mix-blend-mode:multiply;width:100%}.figure-caption{color:var(--muted);text-align:center;margin-top:12px;font-size:12px}.feature-list{max-width:830px}.feature-row{grid-template-columns:1fr 1.5fr;gap:55px;padding-block:28px;display:grid}.feature-row h2{font-size:25px;line-height:1.45}.feature-row p{color:var(--muted)}.product-notes{background:var(--soft);border-radius:16px;max-width:830px;margin-top:30px;padding:30px}.product-notes h2{font-size:24px}.product-notes p{color:var(--muted);margin-top:12px;font-size:16px}.product-notes a{text-decoration:underline}.document-layout{grid-template-columns:220px minmax(0,720px);align-items:start;gap:65px;padding-top:16px;display:grid}.document-toc{font-size:14px;position:sticky;top:28px}.document-toc p{color:var(--muted);margin-bottom:14px;font-size:13px}.document-toc a{color:var(--muted);padding:7px 0;line-height:1.5;display:block}.prose{overflow-wrap:anywhere;font-size:18px;line-height:1.95}.prose h2{margin-top:42px;margin-bottom:15px;scroll-margin-top:28px;font-size:27px;line-height:1.4}.prose h2:first-child{margin-top:0}.prose h3{margin-top:30px;margin-bottom:12px;font-size:22px}.prose p+p{margin-top:18px}.prose a{color:var(--accent);text-decoration:underline}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:8px}.prose img{border-radius:12px;margin-block:28px}.prose pre{border-radius:12px;padding:20px;font-size:14px;line-height:1.7;overflow:auto;background:var(--soft)!important}.prose code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.9em}.article-header{max-width:760px;padding-block:50px 45px}.article-header h1{font-size:clamp(36px,5vw,54px);line-height:1.25}.article-meta{color:var(--muted);flex-wrap:wrap;gap:20px;margin-top:22px;font-size:14px;display:flex}.article-body{max-width:720px}.article-end{background:var(--soft);border-radius:14px;margin-top:55px;padding:25px 28px;font-size:16px}.article-end .text-link{margin-top:8px}.about-copy{max-width:700px}.about-copy p+p{margin-top:24px}.contact-panel{background:var(--soft);border-radius:16px;margin-top:50px;padding:35px}.contact-panel h2{font-size:28px}.contact-panel p{color:var(--muted);margin-top:15px}.contact-panel .text-link{margin-top:20px}.policy-index{max-width:760px}.policy-product{align-items:center;gap:20px;padding:24px 0;display:flex}.policy-product img{border-radius:12px;width:52px;height:52px}.policy-product h2{font-size:24px}.policy-product .text-link{margin-top:5px}.policy-product .links{flex-wrap:wrap;gap:20px;margin-left:auto;display:flex}.error-page{max-width:680px;padding-block:100px}.error-page p{color:var(--muted);margin-block:24px}@media (hover:hover) and (pointer:fine){.text-link:hover,.footer-links a:hover,.product-small-links a:hover,.document-toc a:hover{color:var(--ink);text-decoration:underline}.text-link:hover .arrow,.product-link:hover .product-arrow,.post-row a:hover>span{transform:translate(3px,-3px)}.product-link:hover .screen,.hero-app-links a:hover{transform:translateY(-4px)}.theme-control:hover,.language-control:hover{background:var(--soft)}.button:hover{opacity:.85}.post-row a:hover h3{text-underline-offset:5px;text-decoration:underline 1.5px}.main-nav a:hover{color:var(--ink)}}@media (width<=900px){.hero{grid-template-columns:1fr}.hero-app-links{display:none}.product-grid{gap:20px}.product-art{height:260px}.product-hero{grid-template-columns:1fr 1fr;gap:45px}.product-showcase{height:500px}.document-layout{grid-template-columns:170px 1fr;gap:35px}.site-footer{grid-template-columns:1fr}.about-strip{gap:30px}}@media (width<=640px){body{font-size:17px}.wrap{width:calc(100% - 40px)}.site-header{flex-wrap:wrap;gap:16px;padding-top:20px;padding-bottom:15px}.wordmark{font-size:31px}.display-controls{order:2;gap:6px;margin-left:auto}.main-nav{order:3;gap:28px;width:100%;margin:0;padding-top:6px}.main-nav a{font-size:15px}.hero{gap:0;padding-top:48px;padding-bottom:28px}.hero h1{letter-spacing:-.035em;font-size:45px}.hero-intro{margin-top:22px;font-size:22px;line-height:1.65}.hero-body{margin-top:17px;font-size:16px;line-height:1.8}.hero-links{gap:20px;margin-top:22px}.section{padding-block:43px}.section-heading{gap:12px;margin-bottom:24px}.section-heading h2{font-size:28px}.section-heading .text-link{white-space:nowrap;font-size:13px}.section-intro{font-size:16px}.product-grid{grid-template-columns:1fr;gap:40px}.product-art{height:300px}.product-art .screen{width:190px}.product-heading{margin-top:20px}.product-card p{min-height:0;font-size:16px}.product-small-links{font-size:13px}.product-small-links span{width:auto}.post-row a{grid-template-columns:1fr auto;gap:10px 18px;padding-block:24px}.post-row time{grid-column:1/-1;font-size:13px}.post-row h3{font-size:22px}.post-row p{font-size:15px}.about-strip{grid-template-columns:1fr;gap:20px;padding:27px}.about-strip p{font-size:16px}.site-footer{gap:20px;margin-top:38px;padding-top:38px}.footer-links{gap:8px 22px;font-size:13px}.page-heading{padding-block:45px 30px}.page-heading h1{font-size:42px}.page-heading>p{margin-top:20px;font-size:19px}.product-hero{grid-template-columns:1fr;gap:36px;padding-top:15px;padding-bottom:32px}.product-identity{margin-bottom:26px}.product-hero h1{letter-spacing:-.035em;font-size:42px}.product-description{margin-top:20px;font-size:18px}.product-showcase{height:450px}.product-showcase .screen{width:240px}.product-showcase.yandian{height:340px}.feature-row{grid-template-columns:1fr;gap:12px;padding-block:22px}.feature-row h2{font-size:25px}.product-notes{padding:24px}.document-layout{padding-top:0;display:block}.document-toc{flex-wrap:wrap;gap:4px 18px;margin-bottom:35px;font-size:13px;display:flex;position:static}.document-toc p{width:100%;margin-bottom:4px}.document-toc a{padding-block:5px}.prose{font-size:17px;line-height:1.95}.prose h2{margin-top:35px;font-size:25px}.article-header{padding-block:35px}.article-header h1{font-size:36px}.article-meta{margin-top:20px;font-size:13px}.article-end{padding:22px}.contact-panel{padding:26px}.policy-product{flex-wrap:wrap;align-items:flex-start;gap:16px}.policy-product .links{gap:12px 22px;margin-left:68px}.error-page{padding-block:60px}.error-page h1{font-size:40px}}@media (width<=360px){.hero h1{font-size:38px}.product-hero h1{font-size:34px}.page-heading h1{font-size:36px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
