:root{--bg:#fff;--bg-soft:#f7f7f7;--ink:#111;--ink-2:#555;--ink-3:#8a8a8a;--line:#e7e7e7;--line-2:#d2d2d2;--dark:#111;--dark-soft:#1c1c1c;--dark-line:#3a3a3a;--radius:14px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--mono:"SFMono-Regular", Consolas, "JetBrains Mono", "Courier New", monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}code{font-family:var(--mono);border:1px solid var(--line);background:#f0f0f0;border-radius:5px;padding:1px 6px;font-size:.9em}.nav{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#ffffffe0;justify-content:space-between;align-items:center;height:56px;padding:0 28px;display:flex;position:sticky;top:0}.brand{color:var(--ink);align-items:center;gap:12px;display:flex}.brand:hover{text-decoration:none}.brand-svg{width:auto;height:21px;color:var(--ink);--bc-badge-inv:#fff;display:block}.brand-divider{background:var(--line-2);width:1px;height:18px}.brand-name{letter-spacing:.3px;font-size:16px;font-weight:700}.nav-links{align-items:center;gap:6px;display:flex}.nav-links a{color:var(--ink-2);border-radius:8px;align-items:center;padding:6px 14px;font-size:13.5px;font-weight:500;transition:color .15s;display:inline-flex;position:relative}.nav-links a:hover{color:var(--ink);background:var(--bg-soft);text-decoration:none}.nav-links .nav-auth{color:var(--bg);background:var(--dark);border-radius:8px;padding:6px 18px;font-weight:600}.nav-links .nav-auth:hover{color:var(--bg);background:#000}.nav-links .nav-gh{color:var(--ink);font-weight:600}.nav-indicator{background:var(--ink);pointer-events:none;border-radius:1px;height:2px;transition:left .2s,width .2s;position:absolute;bottom:-1px;left:0}.hamburger{display:none}.nav-overlay{z-index:18;background:#1116;display:none;position:fixed;inset:0}.nav-overlay.open{display:block}.mobile-nav{z-index:19;background:var(--bg);border-left:1px solid var(--line);flex-direction:column;gap:6px;width:min(300px,80vw);padding:24px 18px;transition:transform .22s;display:none;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%)}.mobile-nav.open{display:flex;transform:translate(0)}.mobile-nav .mobile-brand{border-bottom:1px solid var(--line);align-items:center;gap:10px;margin-bottom:10px;padding:8px 6px 20px;display:flex}.mobile-nav .mobile-brand .brand-svg{height:19px}.mobile-nav .mobile-brand .brand-name{font-size:15px}.mobile-nav a{color:var(--ink);border-radius:10px;align-items:center;gap:10px;padding:12px 10px;font-size:15px;font-weight:500;display:flex}.mobile-nav a:hover{background:var(--bg-soft);text-decoration:none}.mobile-nav a .ico{width:18px;height:18px;color:var(--ink-2)}.mobile-nav .nav-auth-mob{color:var(--bg);background:var(--dark);border-radius:10px;justify-content:center;margin-top:12px;padding:14px;font-weight:700}.mobile-nav .nav-auth-mob:hover{background:#000}.mobile-nav .mobile-foot{color:var(--ink-3);border-top:1px solid var(--line);margin-top:auto;padding:20px 6px 10px;font-size:12px}.btn{cursor:pointer;white-space:nowrap;font-size:15px;font-weight:600;font-family:var(--font);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;text-decoration:none;transition:all .16s;display:inline-flex}.btn:hover{text-decoration:none}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:#000}.btn-ghost{color:var(--ink);border-color:var(--line-2);background:0 0}.btn-ghost:hover{border-color:var(--ink)}.btn-inverse{color:var(--ink);background:#fff}.btn-inverse:hover{background:#e8e8e8}.btn-outline-inverse{color:#fff;border-color:var(--dark-line);background:0 0}.btn-outline-inverse:hover{border-color:#fff}.btn-block{width:100%}.btn-sm{padding:8px 14px;font-size:13px}.hero{text-align:center;padding:96px 24px 0;position:relative}.hero-gradient{z-index:0;pointer-events:none;position:absolute;inset:0}.hero-inner{z-index:1;max-width:900px;margin:0 auto;position:relative}.hero-devices{z-index:1;max-width:900px;margin:60px auto 0;padding-bottom:34px;position:relative}.eyebrow{letter-spacing:2px;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line-2);background:var(--bg);border-radius:999px;align-items:center;gap:8px;margin-bottom:24px;padding:6px 14px;font-size:12px;display:inline-flex}.eyebrow svg{width:13px;height:13px;color:var(--ink)}.hero-title{letter-spacing:-1px;margin-bottom:20px;font-size:56px;font-weight:800;line-height:1.1}.hero-title .thin{font-weight:400}.hero-sub{color:var(--ink-2);margin-bottom:34px;font-size:18px}.hero-sub b{color:var(--ink);font-weight:600}.hero-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-bottom:30px;display:flex}.hero-tags{color:var(--ink-2);flex-wrap:wrap;justify-content:center;gap:10px 26px;font-size:13.5px;display:flex}.hero-tags span{align-items:center;gap:7px;display:inline-flex}.hero-tags svg{width:14px;height:14px;color:var(--ink)}.hero-devices{max-width:900px;margin:60px auto 0;padding-bottom:34px;position:relative}.dev-laptop{border:1px solid var(--line-2);text-align:left;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 34px 70px -42px #1111114d}.dev-bar{border-bottom:1px solid var(--line);background:var(--bg-soft);align-items:center;gap:7px;padding:10px 14px;display:flex}.dev-bar .dot{border:1.5px solid var(--ink-3);border-radius:50%;width:9px;height:9px}.dev-url{max-width:340px;font-family:var(--mono);color:var(--ink-3);border:1px solid var(--line);white-space:nowrap;text-overflow:ellipsis;background:#fff;border-radius:6px;flex:1;margin-left:12px;padding:4px 10px;font-size:11.5px;overflow:hidden}.dev-body{height:330px;display:flex}.dev-side{border-right:1px solid var(--line);flex-direction:column;gap:11px;width:150px;padding:16px;display:flex}.dev-side .si{background:var(--line);border-radius:4px;height:12px}.dev-side .si.on{background:var(--ink);width:62%}.dev-main{flex-direction:column;flex:1;gap:13px;padding:22px 26px;display:flex}.dev-title{background:var(--ink);border-radius:4px;width:42%;height:20px}.dev-sub{background:var(--line-2);border-radius:4px;width:68%;height:11px}.dev-row{grid-template-columns:repeat(3,1fr);gap:13px;margin-top:10px;display:grid}.dev-card{border:1px solid var(--line);border-radius:8px;height:66px;position:relative}.dev-card:after{content:"";background:var(--line);border-radius:3px;height:8px;position:absolute;top:15px;left:12px;right:12px}.dev-card:before{content:"";background:var(--line-2);border-radius:3px;width:55%;height:8px;position:absolute;bottom:15px;left:12px}.dev-line{background:var(--line);border-radius:4px;height:11px}.dev-line.w60{width:60%}.dev-line.w80{width:82%}.dev-phone{border:1px solid var(--line-2);background:#fff;border-radius:24px;width:178px;padding:11px;position:absolute;bottom:-46px;right:6px;box-shadow:0 30px 60px -34px #11111161}.phone-notch{background:var(--ink);border-radius:0 0 8px 8px;width:66px;height:13px;margin:0 auto 12px}.phone-body{border:1px solid var(--line);border-radius:15px;flex-direction:column;gap:11px;padding:15px;display:flex}.phone-top{background:var(--ink);border-radius:3px;width:68%;height:13px}.phone-bubble{background:var(--line);border-radius:10px 10px 10px 3px;height:34px}.phone-bubble.alt{background:var(--line-2);border-radius:10px 10px 3px;align-self:flex-end;width:82%}.phone-btn{border:1.5px solid var(--ink);border-radius:8px;height:34px;margin-top:6px}.sec{max-width:1080px;margin:0 auto;padding:88px 24px}.band{padding:88px 24px}.band .inner{max-width:1080px;margin:0 auto}.band-dark{background:var(--dark);color:#fff;border-top:1px solid var(--dark-line);border-bottom:1px solid var(--dark-line)}.band-soft{background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sec-head{text-align:center;max-width:720px;margin:0 auto 46px}.sec-head .kicker{letter-spacing:2.5px;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px;font-size:12px}.sec-head h2{letter-spacing:-.5px;margin-bottom:12px;font-size:34px;font-weight:800;line-height:1.25}.sec-head p{color:var(--ink-2);font-size:16px}.band-dark .sec-head h2{color:#fff}.band-dark .sec-head p{color:#b0b0b0}.band-dark .sec-head .kicker{color:#888}.strip{border:1px solid var(--line);border-radius:var(--radius);background:#fff;align-items:center;gap:22px;max-width:820px;margin:0 auto;padding:30px 34px;display:flex}.strip svg{width:34px;height:34px;color:var(--ink);flex-shrink:0}.strip h3{letter-spacing:-.2px;margin-bottom:6px;font-size:21px;font-weight:700}.strip p{color:var(--ink-2);font-size:15px}.feature-grid{grid-template-rows:auto auto;grid-template-columns:2fr 1fr 1fr;gap:16px;max-width:1000px;margin:0 auto;display:grid}.feature{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:28px;transition:border-color .18s,box-shadow .18s;position:relative;overflow:hidden}.feature:hover{border-color:var(--ink);box-shadow:0 22px 44px -32px #11111140}.feature svg{width:26px;height:26px;color:var(--ink);margin-bottom:16px}.feature h3{margin-bottom:8px;font-size:17px}.feature p{color:var(--ink-2);font-size:14.5px;line-height:1.7}.feature.wide{background:var(--bg-soft);border-color:var(--line-2);flex-direction:column;grid-area:1/1/3;justify-content:center;padding:34px 32px;display:flex}.feature.wide svg{width:32px;height:32px;margin-bottom:18px}.feature.wide h3{margin-bottom:10px;font-size:20px}.feature.wide p{max-width:400px;font-size:15px}.feature.wide .tags{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.feature.wide .tags span{border:1px solid var(--line-2);color:var(--ink-2);background:var(--bg);border-radius:6px;padding:4px 10px;font-size:12px}.feature:before{content:"";background:radial-gradient(600px circle at var(--mx,50%) var(--my,50%), #1111110a, transparent 60%);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.feature:hover:before{opacity:1}.feature.slim{align-items:center;gap:12px;padding:18px 22px;display:flex}.feature.slim svg{flex-shrink:0;margin-bottom:0}.feature.slim .fb{flex:1}.feature.slim h3{margin-bottom:2px;font-size:15px}.feature.slim p{font-size:13px}.flow-wrap{max-width:1080px;margin:0 auto}.flow-wrap img,.flow-wrap svg{width:100%;height:auto;display:block}.flow-note{text-align:center;color:#b0b0b0;max-width:720px;margin:30px auto 0;font-size:14.5px}.flow-note code{border-color:var(--dark-line);color:#e8e8e8;background:#262626}.download-grid{grid-template-columns:repeat(2,1fr);gap:20px;max-width:820px;margin:0 auto 44px;display:grid}.dcard{border:1px solid var(--line);border-radius:var(--radius);text-align:center;background:#fff;padding:30px 28px}.dcard:hover{border-color:var(--ink)}.dcard svg{width:30px;height:30px;color:var(--ink);margin:0 auto 16px}.dcard h3{margin-bottom:8px;font-size:18px}.dcard p{color:var(--ink-2);margin-bottom:22px;font-size:14px}.quickstart{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--radius);max-width:820px;margin:0 auto;padding:32px 34px}.quickstart h3{margin-bottom:14px;font-size:18px}.qs-steps{color:var(--ink-2);margin-bottom:20px;padding-left:20px;font-size:14.5px}.qs-steps li{margin-bottom:7px}.code-block{background:var(--ink);color:#ececec;font-family:var(--mono);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;font-size:13.5px;display:flex;overflow-x:auto}.code-block pre{white-space:pre;margin:0}.copy-btn{font-family:var(--font);color:var(--ink);cursor:pointer;background:#fff;border:1px solid #fff;border-radius:7px;flex-shrink:0;padding:7px 14px;font-size:12.5px;font-weight:600;transition:all .14s}.copy-btn:hover{background:#e4e4e4}.two{grid-template-columns:repeat(2,1fr);gap:20px;max-width:860px;margin:0 auto;display:grid}.self-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex-direction:column;padding:30px;display:flex}.self-card:hover{border-color:var(--ink)}.self-tag{letter-spacing:1.5px;color:#fff;background:var(--ink);border-radius:6px;align-self:flex-start;margin-bottom:16px;padding:4px 10px;font-size:11.5px;font-weight:700}.self-card h3{margin-bottom:8px;font-size:18px}.self-card p{color:var(--ink-2);flex:1;margin-bottom:22px;font-size:14.5px;line-height:1.7}.self-card .btn{margin-top:auto}.faq{max-width:780px;margin:0 auto}.faq-item{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:12px;overflow:hidden}.faq-item.open{border-color:var(--ink)}.faq-q{cursor:pointer;text-align:left;width:100%;font-family:var(--font);color:var(--ink);background:0 0;border:none;justify-content:space-between;align-items:center;gap:18px;padding:19px 24px;font-size:15.5px;font-weight:600;display:flex}.faq-q svg{width:17px;height:17px;color:var(--ink);flex-shrink:0;transition:transform .2s}.faq-item.open .faq-q svg{transform:rotate(45deg)}.faq-a{max-height:0;transition:max-height .25s;overflow:hidden}.faq-a-inner{color:var(--ink-2);padding:0 24px 20px;font-size:14.5px;line-height:1.75}.faq-a-inner a{text-decoration:underline}.cta{text-align:center}.cta h2{letter-spacing:-.5px;color:#fff;margin-bottom:16px;font-size:40px;font-weight:800;line-height:1.2}.cta p{color:#b0b0b0;margin-bottom:30px;font-size:16px}.cta .btn{margin-top:4px}.shots-grid{grid-template-columns:1fr 1fr;align-items:start;gap:28px;max-width:860px;margin:0 auto;display:grid}.shot{margin:0}.shot-frame{border:1px solid var(--line);background:var(--dark);border-radius:14px;padding:10px;box-shadow:0 18px 44px #00000059}.shot-frame img{filter:grayscale()contrast(1.04);border-radius:8px;width:100%;height:auto;display:block}.shot figcaption{text-align:center;color:#9a9a9a;margin-top:12px;font-size:13.5px}.footer{background:var(--dark);color:#a7a7a7;border-top:1px solid var(--dark-line);padding:52px 24px 40px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px;max-width:1080px;margin:0 auto;display:flex}.footer-brand{align-items:center;gap:14px;display:flex}.footer-svg{color:#fff;--bc-badge-inv:#111;width:auto;height:20px;display:block}.fb-name{color:#fff;font-size:15px;font-weight:700}.footer-tag{color:#9a9a9a;font-size:13.5px}.footer-links{gap:26px;display:flex}.footer-links a{color:#c8c8c8;font-size:14px}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid var(--dark-line);text-align:center;color:#888;max-width:1080px;margin:34px auto 0;padding-top:22px;font-size:13px}.footer-bottom a{color:#aaa}.footer-bottom a:hover{color:#fff}@media (width<=900px){.feature-grid{grid-template-columns:repeat(2,1fr)}.dev-side{display:none}}@media (width<=640px){.hero{padding:68px 18px 0}.hero-title{font-size:36px}.hero-sub{font-size:16px}.hero-actions .btn{width:100%}.hero-devices{margin-top:44px}.dev-phone{width:190px;margin:22px auto 0;position:static}.dev-body{height:auto;padding:18px;display:block}.dev-row{grid-template-columns:1fr}.dev-main{padding:0}.feature-grid{grid-template-columns:1fr}.feature.wide{flex-direction:column;align-items:flex-start;gap:14px}.download-grid,.two,.shots-grid{grid-template-columns:1fr}.strip{text-align:center;flex-direction:column;padding:26px 22px}.sec-head h2{font-size:28px}.cta h2{font-size:30px}.nav{padding:12px 18px}.nav-links{gap:14px 18px}.sec,.band{padding:64px 18px}.footer-inner{text-align:center;flex-direction:column}.footer-links{flex-wrap:wrap;justify-content:center}}.auth-mask{z-index:200;background:#1111118c;justify-content:center;align-items:center;padding:20px;animation:.18s ease-out fadeIn;display:flex;position:fixed;inset:0}.auth-mask[hidden]{display:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.auth-card{width:min(400px,100%);color:var(--ink);border:1px solid var(--line-2);background:#fff;border-radius:16px;padding:28px 26px;animation:.22s ease-out slideUp;position:relative;box-shadow:0 24px 80px #00000040}.auth-card.shake{animation:.32s ease-out shake}.auth-close{cursor:pointer;color:var(--ink-3);background:0 0;border:none;padding:4px;font-size:22px;line-height:1;position:absolute;top:12px;right:14px}.auth-close:hover{color:var(--ink)}.auth-title{letter-spacing:-.01em;margin-bottom:4px;font-size:19px;font-weight:650}.auth-sub{color:var(--ink-3);margin-bottom:18px;font-size:12.5px;line-height:1.6}.auth-input{border:1px solid var(--line-2);width:100%;height:44px;font-size:14px;font-family:var(--font);color:var(--ink);background:#fff;border-radius:10px;outline:none;margin-bottom:10px;padding:0 14px;transition:border-color .15s,box-shadow .15s}.auth-input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #0000000f}.auth-input.transition-out{opacity:0;transform:translateY(-6px)}.auth-err{color:#b00020;min-height:16px;margin:2px 0 10px;font-size:12px}.auth-btn{border:1px solid var(--dark);background:var(--dark);color:#fff;cursor:pointer;width:100%;height:44px;font-size:14px;font-weight:600;font-family:var(--font);border-radius:10px;margin-bottom:8px;transition:opacity .15s}.auth-btn:hover{background:#000}.auth-btn:disabled{opacity:.6;cursor:default}.auth-btn.ghost{color:var(--ink);border-color:var(--line-2);background:#fff}.auth-btn.ghost:hover{background:var(--bg-soft)}.auth-note{color:var(--ink-3);margin-top:6px;font-size:12px;line-height:1.7}.auth-note b{color:var(--ink)}.nav-auth{font-weight:600}.auth-code-box{animation:.2s ease-out slideUp}.auth-code-box input{transition:border-color .15s}.auth-code-box input:focus{border-color:#111}
