:root{--bg:#faf8f5;--paper:#fff;--ink:#26231f;--muted:#79746d;--orange:#ee6717;--line:#e7e2db;--soft:#f0eae2;--radius:16px;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}img{max-width:100%;display:block}::selection{background:#ffdbbd}.wrap{width:min(1160px,calc(100% - 80px));margin:auto}.header{position:sticky;top:0;z-index:10;background:rgba(250,248,245,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.nav{display:flex;align-items:center;justify-content:space-between;gap:28px;height:80px}.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:700;letter-spacing:-.5px;white-space:nowrap}.brand small{font-size:15px;font-weight:500;margin-left:6px}.nav nav{display:flex;gap:32px;color:var(--muted);font-size:14px}.nav nav a:hover,.text-link:hover,.footer a:hover{color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:13px 24px;background:var(--orange);color:#fff;border:1px solid transparent;border-radius:8px;font-size:15px;font-weight:600;line-height:1.5;transition:background .15s,transform .15s;white-space:nowrap}.button:hover{background:#d9560d;transform:translateY(-2px)}.button:active{transform:scale(.98)}.button.small{font-size:13px;padding:10px 16px;gap:18px}.button.neutral{background:var(--paper);color:var(--ink);border-color:var(--line);gap:10px}.button.neutral:hover{border-color:var(--orange);color:var(--orange)}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid var(--line);padding-bottom:4px}.hero{text-align:center;padding-top:74px}.eyebrow{font-size:12px;letter-spacing:1.5px;color:var(--muted);font-weight:600;margin:0 0 22px}.hero .eyebrow{display:flex;justify-content:center;align-items:center;gap:10px}.tiny-ring{height:9px;width:9px;display:block;border:2px solid var(--orange);border-radius:100%}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,5.8vw,76px);line-height:1.2;letter-spacing:-3px;font-weight:700;margin-bottom:26px}.orange{color:var(--orange)}.hero-copy{font-size:18px;color:var(--muted);line-height:1.85;margin-bottom:28px}.hero-actions{display:flex;align-items:center;justify-content:center;gap:28px}.hero-note{margin:18px 0 42px;font-size:12px;color:var(--muted);letter-spacing:.5px}.hero-note span{margin:0 12px;color:#c5bbb0}.product-stage{position:relative;width:100%;padding:28px 56px 52px;text-align:left;border:1px solid #eadbca;border-radius:24px;background:radial-gradient(ellipse at 90% 10%,#fbd6ad 0,transparent 60%),linear-gradient(130deg,#f3ebe0,#ede4d8);overflow:hidden}.stage-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;color:#746757;font-size:12px;letter-spacing:1px}.theme-switch{display:flex;border:1px solid #d9c8b2;border-radius:6px;padding:3px;gap:2px;background:#ffffff42}.theme-switch button{cursor:pointer;border:0;color:#766754;background:transparent;font-size:12px;padding:3px 12px;border-radius:4px}.theme-switch button[aria-pressed=true]{color:#29231c;background:#fff;box-shadow:0 1px 3px #38291514}.desktop-shot{border-radius:10px;overflow:hidden;border:1px solid #d4c6b6;box-shadow:0 22px 48px #4d361b20;margin-right:64px}.desktop-shot img{width:100%;height:auto}.phone-shot{position:absolute;right:28px;bottom:28px;width:18%;background:#252424;border:6px solid #252424;border-radius:26px;padding-top:12px;overflow:hidden;box-shadow:0 16px 32px #38291c26}.phone-shot img{width:100%;height:auto;border-radius:0 0 18px 18px}.phone-speaker{position:absolute;top:2px;left:38%;width:24%;height:4px;background:#606060;border-radius:9px}.stage-caption{position:absolute;bottom:17px;left:56px;color:#8e7f6e;font-size:10px;letter-spacing:1px}.platform-line{display:flex;justify-content:space-between;align-items:center;padding:30px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.platform-line div{color:#5b554e;font-size:14px}.platform-line i{font-style:normal;color:#cbbdaf;margin:0 18px}.section{padding-top:100px;padding-bottom:100px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:48px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:15px;color:var(--muted);margin:0}.section-heading .eyebrow{margin-bottom:14px}h2{font-size:40px;letter-spacing:-1.5px;line-height:1.4}h3{font-size:21px;letter-spacing:-.4px;line-height:1.5;margin-bottom:14px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.feature-grid article{padding:36px 48px 36px 0;border-bottom:1px solid var(--line)}.feature-grid article:nth-child(even){padding-left:48px;padding-right:0;border-left:1px solid var(--line)}.feature-number{display:block;color:var(--orange);font-size:11px;letter-spacing:1px;margin-bottom:20px}.feature-grid p{color:var(--muted);max-width:440px;font-size:14px;min-height:76px;margin-bottom:24px}.message-demo{min-height:108px;display:flex;flex-direction:column;gap:8px;align-items:flex-start;font-size:12px}.message-demo span{background:#eeeae5;padding:8px 14px;border-radius:8px}.message-demo span:nth-child(2){align-self:flex-end;background:#fff0e2;margin-right:12px}.message-demo small{align-self:flex-end;font-size:10px;color:#958776;margin-right:12px}.file-demo{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;display:flex;gap:16px;align-items:center;min-height:108px}.file-icon{font-size:24px;color:var(--orange)}.file-demo>div{flex:1}.file-demo strong{display:block;font-size:12px}.file-demo small{display:block;font-size:10px;color:var(--muted)}.file-demo>b{font-size:12px;font-weight:500;color:var(--muted)}.progress{margin-top:10px;height:3px;background:var(--soft);border-radius:9px;overflow:hidden}.progress span{display:block;height:100%;width:72%;background:var(--orange)}.route-demo,.server-demo{height:90px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.route-demo span{border:1px solid var(--line);background:#fff;padding:14px;border-radius:10px}.route-demo i{font-style:normal;color:var(--orange);font-size:11px}.server-demo span{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px}.server-demo b{color:var(--orange);margin-right:6px}.server-demo small{color:var(--muted);font-size:10px}.security-section{background:#292622;color:#f9f5ed;padding:84px 0}.security-inner{display:grid;grid-template-columns:1fr 1.25fr;gap:90px}.security-inner .eyebrow{color:#b7a68f}.security-inner h2{font-size:38px}.security-inner>div>p:not(.eyebrow){color:#bcb4aa;font-size:15px}.security-inner .text-link{color:#efc395;border-color:#635142}.security-list article{display:flex;gap:24px;padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid #484139}.security-list article>span{color:#ed9955;font-size:22px;width:26px;flex-shrink:0}.security-list h3{font-size:17px;margin:0 0 8px}.security-list p{color:#bcb4aa;font-size:13px;margin:0}.security-list .security-note{font-size:11px;line-height:1.8;color:#a79c8f}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.steps li{border-top:1px solid var(--line);padding-top:24px}.steps span{font-size:34px;color:#c9b8a3;font-weight:300}.steps h3{margin-top:16px;font-size:19px}.steps p{font-size:14px;color:var(--muted)}.service-note{background:var(--soft);padding:16px 20px;border-radius:8px;margin:32px 0 0;font-size:12px;color:var(--muted)}code{font-size:12px;overflow-wrap:anywhere}.download-section{background:#efe9e1;padding:78px 0}.download-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.download-grid article{background:var(--bg);border:1px solid #e1d7c9;border-radius:12px;padding:26px 20px;display:flex;flex-direction:column;align-items:flex-start}.os-symbol{font-size:30px;line-height:1.4;margin-bottom:20px;min-height:42px}.download-grid h3{font-size:21px;margin:0 0 6px}.download-grid p{font-size:12px;color:var(--muted);margin-bottom:24px}.download-grid .button{font-size:12px;white-space:normal;width:100%;padding:11px 10px}.download-grid small{margin-top:14px;font-size:10px;color:var(--muted)}.release-info{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted);text-align:right}.release-info a{text-decoration:underline;text-underline-offset:4px}.download-note{font-size:12px;color:var(--muted);margin:24px 0 0}.faq{display:grid;grid-template-columns:1fr 1.65fr;gap:60px}.faq .text-link{display:inline-block;margin-top:14px}.faq h2{margin-bottom:12px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:22px 0}summary{font-size:16px;font-weight:500;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:22px;color:var(--muted);line-height:1.2}details[open] summary:after{content:'−'}details p{color:var(--muted);font-size:14px;margin:16px 28px 0 0}details p a{display:block;color:var(--orange);margin-top:10px}.closing{text-align:center;border-top:1px solid var(--line);padding:65px 0 80px}.closing img{margin:0 auto 22px}.closing h2{font-size:32px;margin-bottom:12px}.closing p{color:var(--muted);font-size:14px;margin-bottom:24px}.footer{padding:28px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px}.footer .brand{font-size:17px}.footer .brand small{font-size:12px}.footer>span,.footer>div{font-size:11px;color:var(--muted)}.footer>div{display:flex;gap:20px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--ink);color:white;padding:12px}.skip:focus{top:10px}@media(min-width:1500px){.hero{padding-top:90px}}@media(max-width:900px){.wrap{width:calc(100% - 48px)}.nav nav{gap:20px}.nav-github{display:none}.hero{padding-top:52px}.product-stage{padding:22px 28px 44px}.desktop-shot{margin-right:42px}.stage-caption{left:28px}.phone-shot{right:16px;bottom:22px;border-width:4px;border-radius:19px}.section{padding-top:72px;padding-bottom:72px}.security-inner{gap:40px}.download-grid{grid-template-columns:repeat(2,1fr)}.steps{gap:24px}.platform-line i{margin:0 8px}.feature-grid article{padding-right:24px}.feature-grid article:nth-child(even){padding-left:24px}.faq{gap:32px}.section-heading>p{font-size:13px}}@media(max-width:600px){.wrap{width:calc(100% - 36px)}.nav{height:66px;gap:12px}.nav nav{display:none}.brand{font-size:19px}.brand small{font-size:13px}.button.small{padding:8px 12px}.hero{padding-top:40px}h1{font-size:42px;letter-spacing:-2px}.hero .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:22px}.hero-copy{font-size:14px}.hero-note{font-size:10px;letter-spacing:0;line-height:1.8;margin-bottom:28px}.hero-note span{margin:0 5px}.hero-actions{gap:22px}.button{font-size:14px;padding:12px 20px}.product-stage{padding:14px 12px 30px;border-radius:14px}.stage-label{font-size:9px;letter-spacing:0;margin-bottom:12px}.theme-switch button{font-size:10px;padding:2px 7px}.desktop-shot{margin-right:18px;border-radius:5px}.phone-shot{right:8px;bottom:16px;width:22%;border-radius:12px;border-width:3px;padding-top:8px}.phone-shot img{border-radius:0 0 8px 8px}.phone-speaker{height:2px;top:1px}.stage-caption{font-size:8px;left:12px;bottom:7px}.platform-line{flex-direction:column;gap:8px;padding:22px 0;font-size:11px}.platform-line div{font-size:12px}.section{padding-top:55px;padding-bottom:55px}.section-heading{display:block;margin-bottom:30px}.section-heading>p,.section-heading>.text-link,.release-info{margin-top:20px}h2{font-size:30px;letter-spacing:-1px}.eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:14px}.feature-grid{grid-template-columns:1fr}.feature-grid article,.feature-grid article:nth-child(even){border-left:0;padding:26px 0}.feature-grid p{min-height:0;font-size:13px}.feature-grid h3{font-size:20px}.security-section{padding:50px 0}.security-inner{grid-template-columns:1fr;gap:36px}.security-inner h2{font-size:30px}.security-list article{gap:16px}.steps{grid-template-columns:1fr;gap:14px}.steps li{display:grid;grid-template-columns:40px 1fr;column-gap:20px;padding-top:20px}.steps span{grid-row:1/3;font-size:28px}.steps h3{margin-top:0;font-size:17px;margin-bottom:8px}.steps p{font-size:13px}.download-section{padding:48px 0}.download-grid{gap:10px}.download-grid article{padding:20px 12px}.download-grid h3{font-size:18px}.download-grid p{font-size:10px;min-height:32px}.download-grid .button{font-size:11px;padding:10px 7px}.os-symbol{font-size:26px;margin-bottom:14px}.release-info{text-align:left}.faq{grid-template-columns:1fr;gap:26px}summary{font-size:14px}.closing{padding:45px 0 50px}.closing h2{font-size:26px}.closing p{font-size:12px}.footer{flex-wrap:wrap;gap:16px}.footer>span{order:3;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.brand-copy{display:flex;flex-direction:column;gap:2px;line-height:1.3}.brand .brand-tagline{font-size:10px;font-weight:400;letter-spacing:1px;color:var(--muted)}.nav .brand>img{width:40px;height:40px}@media(max-width:600px){.nav .brand>img{width:36px;height:36px}.brand .brand-tagline{font-size:9px;letter-spacing:.5px}}

/* Shared legal documents: readable text, linked outline, no runtime dependencies. */
.legal{padding-top:48px;padding-bottom:88px}.legal-heading{padding-bottom:40px;border-bottom:1px solid var(--line)}.legal-heading .eyebrow{margin-bottom:14px}.legal-heading h1{font-size:48px;letter-spacing:-1.5px;margin-bottom:18px}.legal-heading>p:not(.eyebrow){font-size:16px;color:var(--muted)}.legal-meta{color:var(--muted);font-size:12px}.legal-meta span{margin:0 12px}.legal-meta a{color:var(--orange)}.legal-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:70px;padding-top:40px;align-items:start}.legal-toc{position:sticky;top:108px;display:flex;flex-direction:column;gap:12px;font-size:12px;color:var(--muted)}.legal-toc strong{color:var(--ink);font-size:13px;margin-bottom:6px}.legal-toc a:hover{color:var(--orange)}.legal-body{min-width:0;max-width:800px}.legal-body section{scroll-margin-top:108px;padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid var(--line)}.legal-body h2{font-size:23px;letter-spacing:-.4px;margin-bottom:20px}.legal-body p,.legal-body li{font-size:14px;line-height:1.95;color:#625d56;overflow-wrap:anywhere}.legal-body strong{color:var(--ink);font-weight:600}.legal-body p{margin-bottom:16px}.legal-body ul{padding-left:20px;margin:0 0 18px}.legal-body li{padding-left:4px;margin-bottom:12px}.legal-body a{color:#c95410;text-decoration:underline;text-underline-offset:3px}.table-scroll{overflow-x:auto;margin-bottom:20px}.legal-body table{border-collapse:collapse;min-width:580px;width:100%;font-size:12px;line-height:1.8}.legal-body th,.legal-body td{text-align:left;vertical-align:top;border:1px solid var(--line);padding:12px}.legal-body th{background:var(--soft);font-weight:600}.legal-body td:first-child{width:20%}.legal-body td:nth-child(2){width:32%}.legal-body td{color:#625d56}.legal-contact{background:var(--soft);border-radius:12px;padding:24px}.legal-contact h3{font-size:19px}.legal-contact p{margin-bottom:12px}.footer>div{flex-wrap:wrap}@media(max-width:900px){.legal-layout{grid-template-columns:180px minmax(0,1fr);gap:32px}.footer{flex-wrap:wrap}}@media(max-width:600px){.legal{padding-top:28px;padding-bottom:50px}.legal-heading{padding-bottom:28px}.legal-heading h1{font-size:36px}.legal-heading>p:not(.eyebrow){font-size:14px}.legal-layout{grid-template-columns:1fr;gap:28px;padding-top:28px}.legal-toc{position:static;background:var(--soft);border-radius:10px;padding:20px;gap:10px}.legal-body h2{font-size:20px}.legal-body p,.legal-body li{font-size:13px}.legal-body section{scroll-margin-top:86px}.footer>div{gap:12px}.table-scroll{border:1px solid var(--line);border-radius:6px}}@media print{.header,.footer,.legal-toc,.skip{display:none}.legal{width:100%;padding:0}.legal-layout{display:block}.legal-body{max-width:none}.legal-body section{break-inside:avoid}.table-scroll{overflow:visible}.legal-body table{min-width:0}.legal-contact{background:white}}

.button .download-icon{flex-shrink:0;width:16px;height:16px;vertical-align:middle}.hero-actions .download-icon,.closing .download-icon{width:18px;height:18px}
