:root{--bg: #0b0d11;--bg-elev: #14171d;--panel: #171b22;--panel-2: #1c212b;--border: #272d38;--border-strong: #353c49;--text: #dcdfe6;--text-dim: #9aa3b2;--text-faint: #6b7382;--accent: #6366f1;--accent-ink: #fff;--accent-hover: color-mix(in srgb, var(--accent) 85%, #fff);--accent-text: color-mix(in srgb, var(--accent) 35%, #fff);--accent-soft: color-mix(in srgb, var(--accent) 14%, transparent);--accent-line: color-mix(in srgb, var(--accent) 40%, transparent);--radius: 12px;--radius-sm: 8px;--shadow: 0 8px 30px rgba(0, 0, 0, .35);--shadow-float: 0 1px 2px rgba(0, 0, 0, .3), 0 20px 60px -20px rgba(0, 0, 0, .8);--header-h: 61px;--scrim: color-mix(in srgb, var(--bg) 68%, transparent);--measure: 42ch;--section-pad: clamp(40px, 6vw, 96px);--hero-pad-top: clamp(40px, 7vw, 112px);--hero-pad-bottom: clamp(32px, 5vw, 72px);--preview-scale: .62;--preview-slot: calc(1000px * var(--preview-scale));--preview-h-slot: calc(700px * var(--preview-scale));--preview-expand: 1;--font-sans-system: system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif;--font-sans: var(--font-sans-system);--font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;color-scheme:dark}:root.has-web-font{--font-sans: "Alibaba PuHuiTi 3", var(--font-sans-system)}:root[data-theme=light]{--bg: #f2f4f7;--bg-elev: #f8f9fb;--panel: #fff;--panel-2: #f1f3f6;--border: #dfe3ea;--border-strong: #c8cfda;--text: #1f2430;--text-dim: #5a6377;--text-faint: #8b93a5;--accent-hover: color-mix(in srgb, var(--accent) 82%, #000);--accent-text: color-mix(in srgb, var(--accent) 72%, #000);--accent-soft: color-mix(in srgb, var(--accent) 12%, transparent);--accent-line: color-mix(in srgb, var(--accent) 45%, transparent);--shadow: 0 10px 30px rgba(16, 24, 40, .14);--shadow-float: 0 1px 2px rgba(16, 24, 40, .06), 0 20px 40px -20px rgba(16, 24, 40, .2);--scrim: rgba(15, 23, 42, .35);color-scheme:light}@media (prefers-color-scheme: light){:root:not([data-theme]){--bg: #f2f4f7;--bg-elev: #f8f9fb;--panel: #fff;--panel-2: #f1f3f6;--border: #dfe3ea;--border-strong: #c8cfda;--text: #1f2430;--text-dim: #5a6377;--text-faint: #8b93a5;--accent-hover: color-mix(in srgb, var(--accent) 82%, #000);--accent-text: color-mix(in srgb, var(--accent) 72%, #000);--accent-soft: color-mix(in srgb, var(--accent) 12%, transparent);--accent-line: color-mix(in srgb, var(--accent) 45%, transparent);--shadow: 0 10px 30px rgba(16, 24, 40, .14);--shadow-float: 0 1px 2px rgba(16, 24, 40, .06), 0 20px 40px -20px rgba(16, 24, 40, .2);--scrim: rgba(15, 23, 42, .35);color-scheme:light}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:72px}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;cursor:default}::view-transition-old(root),::view-transition-new(root){animation-duration:.26s;animation-timing-function:ease}a{color:var(--accent-text);text-decoration:none}a:hover{color:var(--accent-hover)}img{max-width:100%;display:block}code{font-family:var(--font-mono);font-size:.9em;background:var(--panel-2);border:1px solid var(--border);border-radius:4px;padding:1px 5px}.mono{font-family:var(--font-mono)}.ico{display:block;flex:none}.plat,.faq details,.qs-lead{transition:border-color .14s ease}.plat:hover,.qs-lead:hover,.faq details:hover,.faq details[open]{border-color:var(--accent-line)}.cmp tbody tr:hover th,.cmp tbody tr:hover td:not(.is-self){background:color-mix(in srgb,var(--accent) 7%,transparent)}.wrap{width:min(1120px,100% - clamp(40px,8vw,72px));margin-inline:auto}.section{padding-block:var(--section-pad)}.section.download{border-top:1px solid var(--border)}.section-head{margin-bottom:clamp(24px,3vw,40px)}.section-head h2{font-size:clamp(24px,2.6vw,32px);line-height:1.2;letter-spacing:-.01em}.section-head p{max-width:52ch;margin-top:10px;color:var(--text-dim);font-size:15px;text-wrap:balance}.site-header{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.site-header .wrap{display:flex;align-items:center;gap:16px;height:60px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--text)}.brand img{width:28px;height:28px;border-radius:7px}.nav{display:flex;gap:20px;font-size:14px}.nav a{color:var(--text-dim)}.nav a:hover{color:var(--text)}.head-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.lang-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;font:inherit;font-size:13px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);cursor:pointer}.lang-btn:hover{color:var(--text);background:color-mix(in srgb,var(--text) 10%,transparent)}.gh-btn,.appear-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);font:inherit;cursor:pointer}.gh-btn:hover,.appear-btn:hover{color:var(--text);background:color-mix(in srgb,var(--text) 10%,transparent)}.appear-btn:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px}.gh-mark{display:inline-flex;flex:none}.gh-mark svg{display:block;width:16px;height:16px}.btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:inherit;font-weight:600;padding:11px 22px;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{color:var(--accent-ink);background:color-mix(in srgb,var(--accent) 85%,#000)}.btn-ghost{background:transparent;border-color:var(--border-strong);color:var(--text)}.btn-ghost:hover{color:var(--text);border-color:var(--accent-line)}.hero{position:relative;padding-block:var(--hero-pad-top) var(--hero-pad-bottom)}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) var(--preview-slot);align-items:start;gap:clamp(24px,4vw,56px)}.hero-slot{width:var(--preview-slot);height:var(--preview-h-slot)}.hero-copy h1{font-size:clamp(34px,4.4vw,58px);font-weight:800;line-height:1.08;letter-spacing:-.02em}.hero-copy .lede{max-width:var(--measure);margin-top:18px;color:var(--text-dim);font-size:16.5px;line-height:1.7;text-wrap:balance}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.hero-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:18px;font-family:var(--font-mono);font-size:12.5px;color:var(--text-faint)}.hero-meta .is-brand{font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--text)}.hero-meta a{color:var(--text-faint)}.hero-meta a:hover{color:var(--accent-text)}.hero-meta b{font-weight:600}.hero-meta .dot{color:var(--border-strong)}.hero-preview{position:absolute;right:0;top:var(--hero-pad-top);z-index:3;width:var(--preview-slot);height:var(--preview-h-slot);transition:width .32s cubic-bezier(.2,.7,.3,1),height .32s cubic-bezier(.2,.7,.3,1),top .32s cubic-bezier(.2,.7,.3,1),right .32s cubic-bezier(.2,.7,.3,1)}.hero-frame-wrap{position:relative;width:100%;height:100%;overflow:hidden;border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-float);background:var(--bg-elev)}.hero-frame{display:block;width:1000px;height:700px;border:0;transform:scale(var(--preview-scale));transform-origin:0 0;transition:transform .32s cubic-bezier(.2,.7,.3,1)}.hero-hint{margin-top:14px;text-align:center;font-size:12px;line-height:1.5;color:var(--text-faint);transition:opacity .18s ease}.hero-hint-touch{display:none}@media (hover: none){.hero-hint-pointer{display:none}.hero-hint-touch{display:inline}}.hero-tap{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}@media (hover: none){.hero-preview:not(.is-pinned) .hero-tap{pointer-events:auto}}.hero-shot-wrap{position:relative;overflow:hidden;aspect-ratio:16 / 10;border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow-float);background:var(--bg-elev)}.hero-shot-img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:left top}@keyframes hero-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes hero-fade{0%{opacity:0}to{opacity:1}}.hero-copy{animation:hero-in .36s cubic-bezier(.2,.7,.3,1) backwards}.hero-preview{animation:hero-in .42s cubic-bezier(.2,.7,.3,1) 80ms backwards}@media (prefers-reduced-motion: reduce){.hero-copy,.hero-preview{animation:hero-fade .2s linear backwards}.hero-preview,.hero-frame,.hero-copy,.hero-scrim{transition:none}}.hero-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;background:var(--scrim);opacity:0;pointer-events:none;transition:opacity .22s ease}@media (prefers-reduced-motion: reduce){.hero-scrim{transition:none}}@media (min-width: 1024px){.hero-preview:hover,.hero-preview:focus-within,.hero-preview.is-pinned{top:calc((100vh - var(--header-h) - 700px * var(--preview-expand)) / 2);width:min(calc(1000px * var(--preview-expand)),100%);height:calc(700px * var(--preview-expand));right:max(0px,calc((100% - 1000px * var(--preview-expand)) / 2));transition-delay:.16s}.hero-preview:hover .hero-frame,.hero-preview:focus-within .hero-frame,.hero-preview.is-pinned .hero-frame{transform:scale(var(--preview-expand));transition-delay:.16s}.hero-copy{transition:opacity .22s ease,visibility 0s linear 0s}.hero:has(.hero-preview:hover) .hero-copy,.hero:has(.hero-preview:focus-within) .hero-copy,.hero:has(.hero-preview.is-pinned) .hero-copy{opacity:0;visibility:hidden;transition:opacity .22s ease,visibility 0s linear .22s}.hero:has(.hero-preview:hover) .hero-scrim,.hero:has(.hero-preview:focus-within) .hero-scrim,.hero:has(.hero-preview.is-pinned) .hero-scrim{opacity:1}.hero:has(.hero-preview:hover) .hero-hint,.hero:has(.hero-preview:focus-within) .hero-hint,.hero:has(.hero-preview.is-pinned) .hero-hint{opacity:0}.hero:has(.hero-preview.is-pinned) .hero-scrim{pointer-events:auto;cursor:zoom-out}}.feature-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(26px,3.4vw,44px) clamp(24px,5vw,64px)}.fg{border-top:1px solid var(--border);padding-top:14px}.fg-title{font-size:13px;font-weight:600;color:var(--accent-text)}.fg-list{list-style:none;display:grid;gap:14px;margin-top:14px}.fg-list b{display:block;font-size:15px;font-weight:600;color:var(--text)}.fg-list span{display:block;margin-top:3px;font-size:14px;color:var(--text-dim)}.fg-evidence{margin-top:16px;font-family:var(--font-mono);font-size:12px;color:var(--text-faint);overflow-wrap:anywhere}.cmp-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,3vw,36px);margin-bottom:clamp(26px,4vw,40px)}.cmp-hl{padding-left:16px;border-left:2px solid var(--accent-line)}.cmp-hl-ico{display:inline-flex;color:var(--accent-text);vertical-align:-2px;margin-right:8px}.cmp-hl b{font-size:20px;color:var(--text)}.cmp-hl-label{display:block;margin-top:4px;font-size:13px;color:var(--accent-text)}.cmp-hl p{margin-top:8px;font-size:14px;color:var(--text-dim)}.cmp-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius)}.cmp{width:100%;min-width:760px;border-collapse:collapse;font-size:14px}.cmp th,.cmp td{text-align:left;vertical-align:top;padding:13px 16px;border-bottom:1px solid var(--border)}.cmp thead th{font-size:13px;color:var(--text-dim);background:var(--panel-2);white-space:nowrap}.cmp-ext{color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 32%,transparent);text-underline-offset:3px}.cmp-ext:hover{text-decoration-color:currentColor}.cmp tbody th{color:var(--text-dim);font-weight:600;white-space:nowrap}.cmp tbody tr:last-child th,.cmp tbody tr:last-child td{border-bottom:0}.cmp .is-self{background:var(--accent-soft);color:var(--text)}.cmp thead .is-self{color:var(--accent-text)}.cmp-note{margin-top:12px;font-size:13px;color:var(--text-faint)}.qs-lead{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px}.qs-lead .label{font-size:13px;color:var(--text-faint)}.qs-lead+.qs-lead{margin-top:12px}.qs-plats{display:grid;gap:7px;margin-top:12px}.qs-plats>div{display:grid;grid-template-columns:88px 1fr;gap:12px;align-items:baseline}.qs-plats dt{font-weight:600}.qs-plats dd{margin:0;color:var(--text-dim)}.qs-device{margin-top:12px;color:var(--text-dim)}.qs-note{margin-top:14px;padding-top:12px;border-top:1px solid var(--border);font-size:13px;color:var(--text-dim)}.steps{list-style:none;counter-reset:step;margin-top:28px;display:grid;gap:14px}.steps li{counter-increment:step;display:grid;grid-template-columns:32px 1fr;gap:14px}.steps li:before{content:counter(step);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent-text);font-weight:700;font-size:14px}.steps b{display:block}.steps span{color:var(--text-dim);font-size:14px}.build{margin-top:28px;color:var(--text-dim);font-size:14px}.build h3{color:var(--text);font-size:15px;margin-bottom:6px}.faq{display:grid;gap:8px}.faq details{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 18px}.faq summary{cursor:pointer;padding:14px 0;font-weight:600;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";float:right;color:var(--text-faint)}.faq details[open] summary:after{content:"−"}.faq details p{padding-bottom:16px;color:var(--text-dim);font-size:14px}.download{text-align:center}.get-hero{display:flex;flex-direction:column;align-items:center}.get-logo{width:88px;height:88px;border-radius:22px;margin-bottom:18px}.get-hero .title{font-size:clamp(26px,3vw,34px);line-height:1.2;letter-spacing:-.01em}.get-hero .lead{max-width:640px;margin-top:8px;color:var(--text-dim)}.get-main{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:26px}.get-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.btn-xl{padding:13px 26px;border-radius:var(--radius);font-size:16px}.btn-stack{display:flex;flex-direction:column;align-items:flex-start;line-height:1.25;text-align:left}.btn-stack small{font-weight:400;font-size:12px;opacity:.85}.get-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;font-size:13px;color:var(--text-dim)}.get-meta a{display:inline-flex;align-items:center;gap:6px;color:var(--text-dim)}.get-meta a:hover,.get-meta a:hover b{color:var(--accent-text)}.get-meta b{font-family:var(--font-mono);font-weight:600;color:var(--text)}.get-meta .sep{color:var(--border-strong)}.plats{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:36px;text-align:left}.plat{position:relative;isolation:isolate;overflow:hidden;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.plat.is-yours{border-color:var(--accent-line)}.plat:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:inherit;background:radial-gradient(260px circle at var(--mx, 50%) var(--my, 0%),color-mix(in srgb,var(--accent) 20%,transparent),transparent 70%);opacity:0;pointer-events:none;transition:opacity .22s ease}.plat:hover:before,.plat:focus-within:before{opacity:1}@media (prefers-reduced-motion: reduce){.plat:before{transition:none}}.plat header{display:flex;align-items:center;gap:10px}.plat header .plat-mark{display:inline-flex;flex:none;color:var(--accent-text)}.plat header .plat-mark svg{display:block;width:22px;height:22px}.plat header h4{font-size:16px;color:var(--text)}.plat-badge{margin-left:auto;padding:2px 10px;border-radius:999px;font-size:12px;color:var(--accent-text);background:var(--accent-soft)}.pkg-rows{display:grid;gap:10px;margin-top:14px}.pkg-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid var(--border)}.pkg-name{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.pkg-name b{font-family:var(--font-mono);font-size:14px;color:var(--text)}.pkg-name .pkg-arch{padding:0 7px;border:1px solid var(--border-strong);border-radius:999px;background:var(--panel-2);font-family:var(--font-mono);font-size:12px;line-height:1.6;color:var(--text)}.pkg-name small{flex-basis:100%;font-size:12px;color:var(--text-faint)}.pkg{display:inline-flex;align-items:center;gap:6px;margin-left:auto;min-height:32px;padding:4px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:13px;white-space:nowrap}.pkg:hover{color:var(--accent-text);border-color:var(--accent-line)}.plat-help{margin-top:12px;font-size:12px;color:var(--text-faint)}.site-footer{border-top:1px solid var(--border);padding-block:40px;color:var(--text-dim);font-size:14px}.foot-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px 24px}.foot-license{color:var(--text-dim)}.foot-built{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-left:auto}.foot-built .built-label{color:var(--text-faint)}.foot-built a{display:inline-flex;align-items:center;gap:6px}.foot-built a:hover{color:var(--text)}.foot-built img{display:block}.foot-built .built-dot{color:var(--text-faint)}@media (max-width: 1280px){:root{--preview-scale: .58}}@media (max-width: 1024px){:root{--preview-scale: .54}.cmp-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 1023px){.hero-grid{grid-template-columns:minmax(0,1fr);gap:clamp(24px,4vw,36px)}.hero-slot{display:none}.hero-preview{position:static;z-index:auto;width:100%;height:auto;transition:none}.hero-copy .lede{max-width:58ch}}@media (max-width: 720px){.nav{display:none}.lang-btn,.gh-btn{height:44px}.gh-btn{width:44px}.hero{text-align:left}.hero-copy .lede{max-width:none;font-size:16px}.hero-actions .btn{flex:1 1 auto;justify-content:center}.hero-shot-wrap{aspect-ratio:3 / 4;max-height:520px}.hero-shot-img{position:absolute;left:0;top:-3%;width:250%;height:auto;object-fit:fill}.feature-groups{grid-template-columns:minmax(0,1fr);gap:22px}.cmp-highlights{grid-template-columns:minmax(0,1fr);gap:18px}.cmp-scroll{overflow:visible;border:0;border-radius:0}.cmp{display:block;min-width:0}.cmp thead{display:none}.cmp tbody{display:grid;gap:10px}.cmp tbody tr{display:block;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel)}.cmp tbody th,.cmp tbody td{display:block;padding:0;border:0;white-space:normal}.cmp tbody th{margin-bottom:10px;font-size:13px;color:var(--text)}.cmp tbody td{margin-top:8px;font-size:13.5px;color:var(--text-dim)}.cmp tbody td:before{content:attr(data-col);display:block;margin-bottom:2px;font-size:11.5px;color:var(--text-faint)}.cmp .is-self{margin-top:10px;padding:8px 10px;border-left:3px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--text)}.cmp tbody tr:hover th,.cmp tbody tr:hover td:not(.is-self){background:transparent}.qs-plats>div{grid-template-columns:1fr;gap:2px}.pkg{min-height:44px;padding:10px 14px}.foot-row{flex-direction:column;justify-content:center;gap:14px}.foot-license{text-align:center}.foot-built{margin-left:0;justify-content:center}}@media (max-width: 480px){.hero-copy h1{font-size:32px}.hero-meta{font-size:12px;gap:6px}.qs-lead{padding:16px 18px}.plat{padding:16px}.get-logo{width:72px;height:72px;border-radius:18px}}@media (max-height: 899px){:root{--preview-expand: .9}}@media (max-height: 819px){:root{--preview-expand: .82}}
