:root{--bg: oklch(.985 0 0);--surface: oklch(1 0 0);--surface-2: oklch(.965 0 0);--ink: oklch(.18 0 0);--muted: oklch(.52 0 0);--line: oklch(.9 0 0);--ok: oklch(.48 .1 150);--ok-soft: oklch(.95 .03 150);--d-bg: oklch(.13 0 0);--d-surface: oklch(.17 0 0);--d-surface-2: oklch(.22 0 0);--d-ink: oklch(.96 0 0);--d-muted: oklch(.68 0 0);--d-line: oklch(.31 0 0);--d-ok: oklch(.85 .09 150);--font-sans: "Geist Sans", "SF Pro Display", "Helvetica Neue", system-ui, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: "Geist Mono", "SF Mono", "JetBrains Mono", "PingFang SC", monospace;--ease-enter: cubic-bezier(.16, 1, .3, 1);--ease-out: cubic-bezier(.32, .72, 0, 1);--r: 10px;--r-lg: 16px;--r-xl: 24px;--nav-h: 64px;--container: 1200px;--gutter: clamp(1.25rem, 4vw, 2.5rem)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;height:100%}body{margin:0;min-height:100%;font-family:var(--font-sans);background:var(--bg);color:var(--ink);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip;opacity:0}html.ready body{opacity:1;transition:opacity .25s var(--ease-out)}::selection{background:var(--ink);color:var(--bg)}img,video{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}.tabnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:0;left:0;z-index:100;padding:.65rem 1.1rem;background:var(--ink);color:var(--bg);font-size:.9rem;font-weight:600;border-radius:0 0 10px;transform:translateY(-120%);transition:transform .2s var(--ease-out)}.skip-link:focus{transform:translateY(0);outline:2px solid var(--ok);outline-offset:2px}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}section{scroll-margin-top:calc(var(--nav-h) + 16px);content-visibility:auto;contain-intrinsic-size:auto 720px}section.hero{content-visibility:visible}h1,h2,h3{text-wrap:balance;margin:0}p{margin:0}.dots{position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,oklch(.88 0 0) 1.1px,transparent 1.1px);background-size:26px 26px;mask-image:linear-gradient(to bottom,black 0%,black 55%,transparent 92%);-webkit-mask-image:linear-gradient(to bottom,black 0%,black 55%,transparent 92%);transform:translateZ(0)}.nav{position:fixed;top:0;left:0;right:0;z-index:50;height:var(--nav-h);display:flex;align-items:center;transition:background .3s var(--ease-out),border-color .3s var(--ease-out),backdrop-filter .3s;border-bottom:1px solid transparent}.nav.scrolled{background:#fafafad1;backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);border-bottom-color:var(--line)}@media(max-width:860px){.nav.scrolled{background:#fafafaf5;backdrop-filter:none;-webkit-backdrop-filter:none}}.nav-inner{display:flex;align-items:center;gap:1.5rem;width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.nav-brand{display:flex;align-items:center;gap:.6rem;font-weight:650;font-size:1.06rem;letter-spacing:-.01em;margin-right:auto}.nav-brand img{width:28px;height:28px;border-radius:7px}.nav-links{display:flex;gap:1.35rem;font-size:.92rem;color:var(--muted)}.nav-links a{position:relative;padding:4px 0;transition:color .2s}.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1.5px;background:var(--ink);transition:right .28s var(--ease-enter)}.nav-links a:hover{color:var(--ink)}.nav-links a:hover:after{right:0}.nav-right{display:flex;align-items:center;gap:.6rem}.lang-toggle{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-size:.85rem;font-weight:550;letter-spacing:.01em;transition:border-color .2s,transform .15s var(--ease-out)}.lang-toggle:hover{border-color:var(--ink)}.lang-toggle:active{transform:scale(.95)}.lang-toggle svg{width:14px;height:14px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 20px;border-radius:999px;font-size:.93rem;font-weight:580;letter-spacing:-.005em;white-space:nowrap;transition:transform .16s var(--ease-out),background .2s,border-color .2s,color .2s,box-shadow .2s}.btn:active{transform:scale(.96)}.btn-primary{background:var(--ink);color:var(--bg)}.btn-primary:hover{background:#2e2e2e;box-shadow:0 8px 24px -12px #12121280}.btn-ghost{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.btn-ghost:hover{border-color:var(--ink)}.btn svg{width:16px;height:16px}.btn-lg{height:52px;padding:0 28px;font-size:1.02rem}.btn-lg svg{width:18px;height:18px}.nav .btn{height:36px;padding:0 16px;font-size:.88rem}.hero{padding:calc(var(--nav-h) + clamp(3rem,7vh,5.5rem)) 0 clamp(3.5rem,7vw,5.5rem)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(2rem,4vw,3.5rem);align-items:center}.hero-copy{min-width:0;transform:translate3d(0,calc(var(--hero-out, 0) * 56px),0);opacity:calc(1 - var(--hero-out, 0) * .85)}.hero-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.02em;color:var(--muted);border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 14px 6px 10px;margin-bottom:1.75rem}.hero-badge .dot{width:7px;height:7px;border-radius:50%;background:var(--ok)}.hero-badge .dot.pulse{animation:breathe 2.2s ease-in-out infinite}.display{font-size:clamp(2.7rem,5vw,4.05rem);font-weight:680;line-height:1.06;letter-spacing:-.04em}html[data-lang=zh] .display{letter-spacing:-.015em;font-weight:700;line-height:1.12}.display .hl{display:block;overflow:hidden;overflow-x:clip;padding-bottom:.17em;margin-bottom:-.17em}html.ready .display .hl{overflow:visible}.display .hl>span{display:inline-block}html.js:not(.ready) .display .hl>span{transform:translateY(115%)}html.ready .display .hl>span{animation:hl-up .9s var(--ease-enter) both;animation-delay:calc(.08s + var(--i) * .09s)}@keyframes hl-up{0%{transform:translateY(115%)}to{transform:translateY(0)}}.mark{position:relative;white-space:nowrap}.mark>svg{position:absolute;left:-2%;bottom:-.07em;width:104%;height:.24em;overflow:visible}.mark>svg path{fill:none;stroke:var(--ok);stroke-width:4.5;stroke-linecap:round;opacity:.55;stroke-dasharray:1;stroke-dashoffset:1}html.ready .mark>svg path{animation:draw .7s var(--ease-enter) .85s forwards}@keyframes draw{to{stroke-dashoffset:0}}.hero-sub{margin-top:1.6rem;font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.7;color:var(--muted);max-width:34rem;text-wrap:pretty}.hero-ctas{margin-top:2.4rem;display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}html.js:not(.ready) .hero-sub,html.js:not(.ready) .hero-ctas,html.js:not(.ready) .hero-badge{opacity:0}html.ready .hero-sub,html.ready .hero-ctas,html.ready .hero-badge{animation:fade-up .8s var(--ease-enter) both}html.ready .hero-badge{animation-delay:.02s}html.ready .hero-sub{animation-delay:.45s}html.ready .hero-ctas{animation-delay:.58s}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.sim-wrap{position:relative;width:100%;max-width:430px;justify-self:end;perspective:1400px;--sim-ty: calc(var(--hero-out, 0) * 110px);--sim-sc: calc(1 - var(--hero-out, 0) * .05);transform:translate3d(0,var(--sim-ty),0) scale(var(--sim-sc));transform-origin:center top}html.js:not(.ready) .sim-wrap{opacity:0;transform:translate3d(0,28px,0) scale(1)}html.ready .sim-wrap{animation:sim-in 1s var(--ease-enter) .35s both}html.ready .sim-wrap.is-settled{animation:none;opacity:1}@keyframes sim-in{0%{opacity:0;transform:translate3d(0,28px,0) scale(1)}to{opacity:1;transform:translateZ(0) scale(1)}}.sim-tilt{position:relative;transform-style:preserve-3d;transform:rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg))}.sim{position:relative;width:100%;border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--line);box-shadow:0 1px 2px #1212120a,0 24px 64px -32px #12121238;overflow:hidden}.sim-tag{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:3;font-family:var(--font-mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:var(--surface);border:1px solid var(--line);padding:3px 10px;border-radius:999px;display:flex;align-items:center;gap:6px}.sim-tag .dot{width:6px;height:6px;border-radius:50%;background:var(--ok);animation:breathe 2.2s ease-in-out infinite}.sim-top{display:flex;align-items:center;justify-content:space-between;padding:12px 14px}.sim-iconbtn{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--ink);background:var(--surface)}.sim-iconbtn svg{width:16px;height:16px}.sim-scroll{height:min(460px,58vh);overflow-y:auto;position:relative;padding:4px 14px 14px;display:flex;flex-direction:column;gap:12px;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(to bottom,transparent 0,black 14px,black 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0,black 14px,black 100%)}.sim-scroll::-webkit-scrollbar{display:none}.sim-task{background:var(--surface-2);border-radius:var(--r-lg);padding:12px 16px;font-size:.92rem;line-height:1.55;font-weight:500;transition:opacity .4s var(--ease-out),transform .4s var(--ease-out)}.sim-group{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--surface);transition:border-color .4s,opacity .4s var(--ease-out),transform .4s var(--ease-out)}.sim-group.done{border-color:#71c69a}.sim-group-head{display:flex;align-items:center;gap:10px;padding:12px 14px;font-size:.9rem;font-weight:600}.sim-cluster{display:flex}.sim-cluster span{width:26px;height:26px;border-radius:50%;background:var(--surface-2);border:1.5px solid var(--surface);display:grid;place-items:center;color:var(--muted);margin-left:-7px}.sim-cluster span:first-child{margin-left:0}.sim-cluster span svg{width:13px;height:13px}.sim-group-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .3s}.sim-group.done .sim-group-title{color:var(--ok)}.sim-chip{font-size:.72rem;font-weight:550;color:var(--muted);background:var(--surface-2);border-radius:999px;padding:3px 9px;font-variant-numeric:tabular-nums}.sim-timer{font-size:.85rem;font-weight:650;font-variant-numeric:tabular-nums}.sim-chev{width:15px;height:15px;color:var(--muted);flex:none}.sim-steps{display:flex;flex-direction:column;gap:8px;padding:0 10px 10px}.sim-step{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:9px 12px;font-size:.86rem;background:var(--surface);transition:opacity .35s var(--ease-out),transform .35s var(--ease-out)}.sim-step.enter{opacity:0;transform:translateY(10px)}.sim-step-icon{width:28px;height:28px;flex:none;border-radius:50%;background:var(--surface-2);display:grid;place-items:center;color:var(--ink)}.sim-step-icon svg{width:14px;height:14px}.sim-step-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.sim-step-state{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.8rem;font-weight:550;flex:none}.sim-step.finished .sim-step-state{color:var(--ok)}.sim-spinner{width:13px;height:13px;border-radius:50%;border:1.8px solid var(--line);border-top-color:var(--ink);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sim-check{width:14px;height:14px}.sim-check path{stroke-dasharray:1;stroke-dashoffset:1}.sim-step.finished .sim-check path{animation:draw .4s var(--ease-enter) forwards}.sim-answer{display:flex;flex-direction:column;gap:6px;font-size:.9rem;line-height:1.6;padding:2px 4px}.sim-answer .a-line{transition:opacity .4s var(--ease-out),transform .4s var(--ease-out)}.sim-answer .a-line.enter{opacity:0;transform:translateY(8px)}.sim-answer .a-strong{font-weight:650}.sim-sources{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:14px;padding:9px 13px;font-size:.8rem;color:var(--muted);background:var(--surface);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out)}.sim-sources.enter{opacity:0;transform:translateY(8px)}.sim-sources svg{width:14px;height:14px;flex:none}.sim-sources .src-n{margin-left:auto;font-variant-numeric:tabular-nums;white-space:nowrap}.sim-scroll.fading .sim-task,.sim-scroll.fading .sim-group,.sim-scroll.fading .sim-answer .a-line,.sim-scroll.fading .sim-sources{opacity:0;transform:translateY(-12px)}.sim-statusbar{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding:12px 16px;background:var(--surface)}.sim-statusicon{width:32px;height:32px;border-radius:50%;background:var(--surface-2);display:grid;place-items:center;color:var(--ink);position:relative;flex:none}.sim-statusicon svg{width:15px;height:15px}.sim-statusicon:after{content:"";position:absolute;inset:-3px;border-radius:50%;border:1.5px solid var(--ink);opacity:0}.sim.run .sim-statusicon:after{animation:ring 2s var(--ease-out) infinite}@keyframes ring{0%{transform:scale(.8);opacity:.5}70%{transform:scale(1.15);opacity:0}to{opacity:0}}.sim-statustext{flex:1;font-size:.92rem;font-weight:600;min-width:0}.sim-stop{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;background:var(--surface);transition:border-color .2s,transform .15s var(--ease-out),background .2s;flex:none}.sim-stop:hover{border-color:var(--ink)}.sim-stop:active{transform:scale(.92)}.sim-stop .sq{width:12px;height:12px;border-radius:3px;background:var(--ink)}.sim-stop .pl{width:0;height:0;border-left:11px solid var(--ink);border-top:7px solid transparent;border-bottom:7px solid transparent;margin-left:2px;display:none}.sim.paused .sim-stop .sq{display:none}.sim.paused .sim-stop .pl{display:block}.sim.paused .sim-spinner{animation-play-state:paused}.sim.paused .sim-statusicon:after{animation:none;opacity:0}.sim-statusicon .ok-badge{display:none}.sim.finished-task .sim-statusicon .ok-badge{display:grid}.sim:not(.finished-task) .sim-statusicon .work-badge{display:grid}.sim.finished-task .sim-statusicon .work-badge{display:none}.sim-statusicon span{display:grid;place-items:center}.sim-statusicon .ok-badge{color:var(--ok)}@keyframes breathe{0%,to{opacity:.55}50%{opacity:1}}.hero-cursor-outer{position:absolute;left:-118px;bottom:-78px;z-index:0;pointer-events:none;transform:translate3d(0,calc(var(--hero-out, 0) * 150px),0) rotate(calc(var(--hero-out, 0) * -22deg))}.hero-cursor{width:235px;height:auto;display:block;animation:cursor-float 7s ease-in-out infinite}@keyframes cursor-float{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-12px) rotate(-2deg)}}html.js:not(.ready) .hero-cursor-outer{opacity:0}html.ready .hero-cursor-outer{animation:cursor-in 1.1s var(--ease-enter) .6s both}html.ready .hero-cursor-outer.is-settled{animation:none;opacity:1}@keyframes cursor-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:14px 0;background:var(--surface);position:relative;min-height:3rem}.marquee:before,.marquee:after{content:"";position:absolute;top:0;bottom:0;width:clamp(24px,6vw,48px);z-index:1;pointer-events:none}.marquee:before{left:0;background:linear-gradient(to right,var(--surface),transparent)}.marquee:after{right:0;background:linear-gradient(to left,var(--surface),transparent)}.marquee-track{display:flex;flex-wrap:nowrap;width:max-content;animation:mq 46s linear infinite;will-change:transform}@media(pointer:fine){.marquee:hover .marquee-track{animation-play-state:paused}}@keyframes mq{to{transform:translate(-50%)}}.mq-item{display:flex;align-items:center;gap:12px;white-space:nowrap;font-family:var(--font-mono);font-size:.86rem;color:var(--muted);letter-spacing:.01em;padding-right:3rem;flex:none}.mq-item:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--line);flex:none}.section{padding:clamp(5rem,10vw,8.5rem) 0;position:relative}.sec-title{font-size:clamp(2.05rem,4.2vw,3.3rem);font-weight:660;line-height:1.08;letter-spacing:-.032em}html[data-lang=zh] .sec-title{letter-spacing:-.01em;font-weight:700;line-height:1.16}.sec-lede{margin-top:1.15rem;font-size:clamp(1.02rem,1.3vw,1.15rem);color:var(--muted);line-height:1.75;max-width:36rem;text-wrap:pretty}html.js .rv{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease-enter),transform .7s var(--ease-enter);transition-delay:calc(min(var(--i, 0),5)*60ms)}html.js .rv.in{opacity:1;transform:none}@media(pointer:fine)and (min-width:861px){html.js .rv{filter:blur(4px);transition:opacity .8s var(--ease-enter),transform .8s var(--ease-enter),filter .8s var(--ease-enter)}html.js .rv.in{filter:none}}.ev-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(2.5rem,6vw,5rem);align-items:start}.ev-copy{position:sticky;top:calc(var(--nav-h) + 40px);min-width:0}.ev-points{margin-top:2.6rem;display:flex;flex-direction:column}.ev-point{display:flex;gap:14px;padding:1.15rem 0;border-top:1px solid var(--line)}.ev-point:last-child{border-bottom:1px solid var(--line)}.ev-point svg{width:19px;height:19px;flex:none;margin-top:3px;color:var(--ok)}.ev-point h3{font-size:1.02rem;font-weight:640;letter-spacing:-.01em}.ev-point p{margin-top:4px;font-size:.93rem;color:var(--muted);line-height:1.65}.ev-shots{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2.5vw,1.75rem);align-items:start;min-width:0}.shot{margin:0;border-radius:22px;border:1px solid var(--line);overflow:hidden;background:var(--surface);box-shadow:0 1px 2px #1212120a,0 28px 70px -36px #12121247}.shot img{width:100%;height:auto}.ev-shots .shot:nth-child(2){margin-top:clamp(2.5rem,5vw,4.5rem)}.shot-cap{font-family:var(--font-mono);font-size:.74rem;color:var(--muted);padding:10px 14px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:8px}.para-shot{transform:translate3d(0,var(--para-y, 0px),0) rotate(var(--para-r, 0deg))}.demo-head{text-align:center;max-width:44rem;margin-inline:auto}.demo-head .sec-lede{margin-inline:auto}.demo-frame{margin:clamp(2.5rem,5vw,4rem) auto 0;max-width:960px;border-radius:var(--r-xl);border:1px solid var(--line);overflow:hidden;background:var(--surface);box-shadow:0 1px 2px #1212120a,0 40px 90px -44px #12121259;transform:translate3d(0,var(--demo-ty, 0px),0) scale(var(--demo-sc, 1));transform-origin:center top}.demo-bar{display:flex;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--line);background:var(--surface)}.demo-dots{display:flex;gap:6px}.demo-dots span{width:10px;height:10px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2)}.demo-url{flex:1;max-width:380px;margin-inline:auto;display:flex;align-items:center;gap:7px;background:var(--surface-2);border-radius:999px;padding:5px 14px;font-family:var(--font-mono);font-size:.76rem;color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.demo-url svg{width:12px;height:12px;flex:none}.demo-frame video{width:100%;height:auto;aspect-ratio:1490 / 894;background:var(--d-bg);object-fit:cover}.skills-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(2.5rem,6vw,5rem);align-items:center}.chips{margin-top:2rem;display:flex;flex-wrap:wrap;gap:9px}.chip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:8px 16px;font-size:.88rem;font-weight:550;transition:transform .2s var(--ease-enter),border-color .2s,box-shadow .2s}@media(pointer:fine){.chip:hover{transform:translateY(-2px);border-color:var(--ink);box-shadow:0 8px 20px -12px #12121259}}.chip svg{width:13px;height:13px;color:var(--ok)}.skills-shot{max-width:420px;width:100%;position:relative;justify-self:center}.skills-shot .shot{transform:rotate(1.2deg);transition:transform .5s var(--ease-enter)}@media(pointer:fine){.skills-shot:hover .shot{transform:rotate(0)}}.doc-outer{position:absolute;left:-84px;bottom:-46px;z-index:2;pointer-events:none;transform:rotate(var(--doc-rot, 0deg))}.doc-3d{width:min(200px,42vw);height:auto;display:block;animation:doc-float 8s ease-in-out infinite}@keyframes doc-float{0%,to{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-11px) rotate(-3deg)}}html.js .doc-outer{opacity:0;transition:opacity .9s var(--ease-enter)}html.js .doc-outer.in{opacity:1}.hood{border-top:1px solid var(--line);padding:2rem 0}.hood-inner{display:flex;flex-wrap:wrap;align-items:baseline;gap:.6rem 1.4rem;font-family:var(--font-mono);font-size:.8rem}.hood-label{color:var(--ink);font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}.hood-tools{color:var(--ink);word-break:break-word}.hood-note{color:var(--muted)}.mp-grid{margin-top:clamp(2.5rem,5vw,3.75rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4rem)}.mp-col h3{display:flex;align-items:center;gap:10px;font-size:1.08rem;font-weight:640;letter-spacing:-.01em;margin-bottom:1.4rem}.mp-col h3 svg{width:19px;height:19px;color:var(--ok);flex:none}.mp-list{display:flex;flex-direction:column}.mp-item{display:flex;gap:13px;padding:1.05rem 0;border-top:1px solid var(--line);align-items:flex-start}.mp-item:last-child{border-bottom:1px solid var(--line)}.mp-item svg{width:17px;height:17px;flex:none;margin-top:4px;color:var(--muted)}.mp-item p{font-size:.95rem;line-height:1.65;color:var(--muted)}.mp-item p strong{color:var(--ink);font-weight:620}.install-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(2.5rem,6vw,5rem);align-items:center}.install-copy{position:relative;min-width:0}.install-note{margin-top:1.15rem;font-family:var(--font-mono);font-size:.8rem;color:var(--muted)}.folder-outer{margin-top:clamp(2rem,4vw,3.25rem);width:178px;transform:rotate(var(--folder-rot, 0deg))}.folder-3d{width:100%;height:auto;display:block;animation:doc-float 8s ease-in-out -2.2s infinite}.install-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;min-width:0}.install-step{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:18px 20px;box-shadow:0 1px 2px #1212120a,0 22px 54px -32px #12121233;transition:transform .35s var(--ease-enter),box-shadow .35s var(--ease-out)}@media(pointer:fine){.install-step:hover{transform:translateY(-3px);box-shadow:0 2px 4px #1212120d,0 30px 64px -34px #12121247}}.step-num{width:34px;height:34px;flex:none;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-weight:650;font-size:.95rem;font-variant-numeric:tabular-nums}.step-text{flex:1;min-width:0}.step-text h3{font-size:1.02rem;font-weight:640;letter-spacing:-.01em}.step-text p{margin-top:3px;font-size:.9rem;color:var(--muted);line-height:1.6}.step-vis{flex:none;display:flex;align-items:center}.step-vis-col{flex-direction:column;align-items:flex-end;gap:8px}.vis-zip{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:.72rem;color:var(--muted);border:1px solid var(--line);background:var(--surface-2);border-radius:9px;padding:8px 11px;white-space:nowrap}.vis-zip svg{width:13px;height:13px;color:var(--ink)}.vis-url{font-family:var(--font-mono);font-size:.72rem;color:var(--muted);border:1px solid var(--line);background:var(--surface-2);border-radius:999px;padding:6px 12px;white-space:nowrap}.vis-toggle{width:40px;height:24px;border-radius:999px;background:var(--ink);position:relative;flex:none}.vis-knob{position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:50%;background:var(--surface)}.vis-drop{width:84px;height:56px;border:1.5px dashed oklch(.78 0 0);border-radius:14px;display:grid;place-items:center;color:var(--muted);position:relative}.vis-drop>svg:last-child{width:20px;height:20px}.vis-drop-arr{position:absolute;top:-11px;width:16px;height:16px;color:var(--ink);animation:drop-bob 1.7s ease-in-out infinite}@keyframes drop-bob{0%,to{transform:translateY(-2px)}50%{transform:translateY(3px)}}.footer{border-top:1px solid var(--line);padding:2.6rem 0 3rem;background:var(--surface)}.footer-inner{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem 2rem}.footer-brand{display:flex;align-items:center;gap:10px;font-weight:620}.footer-brand img{width:26px;height:26px;border-radius:6px}.footer-tag{color:var(--muted);font-size:.9rem;margin-right:auto}.footer-links{display:flex;flex-wrap:wrap;gap:1.4rem;font-size:.88rem;color:var(--muted)}.footer-links a{transition:color .2s}.footer-links a:hover{color:var(--ink)}.footer-copy{width:100%;font-size:.8rem;color:var(--muted);font-family:var(--font-mono)}@media(max-width:1020px){.hero-grid{grid-template-columns:minmax(0,1fr);gap:2.25rem;justify-items:stretch}.hero-grid>*{min-width:0;max-width:100%}.sim-wrap{justify-self:center;margin-inline:auto;width:min(100%,430px);max-width:100%;--hero-out: 0 !important;--sim-ty: 0px;--sim-sc: 1}html.ready .sim-wrap.is-settled{animation:none;opacity:1;transform:none}.hero-copy{--hero-out: 0 !important;transform:none}.hero-sub{max-width:40rem}.ev-grid,.skills-grid,.install-grid{grid-template-columns:minmax(0,1fr)}.ev-grid>*,.skills-grid>*,.install-grid>*{min-width:0;max-width:100%}.ev-copy{position:static}.skills-shot{margin-inline:auto;order:-1}.hero-cursor-outer{display:none}.folder-outer{width:140px;margin-top:1.5rem}.demo-frame{--demo-ty: 0px !important;--demo-sc: 1 !important;transform:none}.para-shot,.doc-outer,.folder-outer{transform:none!important}.section{padding:clamp(3.5rem,8vw,6rem) 0}.hero{padding:calc(var(--nav-h) + clamp(1.75rem,4vh,3rem)) 0 clamp(2.5rem,5vw,3.5rem)}}@media(max-width:860px){.nav-links{display:none}.mp-grid{grid-template-columns:minmax(0,1fr)}.step-vis{display:none}.install-step{padding:16px 18px}}@media(max-width:640px){.display{text-wrap:unset;font-size:clamp(1.85rem,8vw,2.4rem);letter-spacing:-.035em;line-height:1.12}html[data-lang=zh] .display{font-size:clamp(1.9rem,8.2vw,2.5rem);line-height:1.2;letter-spacing:-.02em}.display .hl{overflow:visible}.display .hl>span{display:inline-block;max-width:100%}.display .hl[style*="--i:1"]>span,.display .hl.hl-2>span{white-space:nowrap}html.js:not(.ready) .display .hl>span{transform:none;opacity:0}html.ready .display .hl>span{animation:fade-up .75s var(--ease-enter) both;animation-delay:calc(.08s + var(--i) * .09s)}.hero-badge{font-size:.72rem;padding:5px 12px 5px 9px;margin-bottom:1.15rem;max-width:100%}.hero-sub{margin-top:1.1rem;font-size:1.02rem;line-height:1.65}.hero-ctas{margin-top:1.5rem;flex-direction:column;align-items:stretch;gap:.65rem}.hero-ctas .btn-lg{width:100%;height:48px;font-size:.98rem}.nav .btn span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.nav .btn{width:36px;padding:0}.lang-toggle{padding:0 10px;gap:4px}.section{padding:clamp(2.75rem,9vw,4rem) 0}.sec-title{font-size:clamp(1.7rem,7.2vw,2.15rem)}.sec-lede{margin-top:.85rem;font-size:1rem}.ev-shots{display:flex;grid-template-columns:none;gap:12px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-inline:calc(var(--gutter) * -1);padding-inline:var(--gutter);padding-bottom:4px}.ev-shots::-webkit-scrollbar{display:none}.ev-shots .shot{flex:0 0 min(72vw,280px);scroll-snap-align:start;margin-top:0!important;border-radius:16px}.ev-shots .shot img{width:100%;height:min(52vh,420px);object-fit:cover;object-position:top center}.ev-points{margin-top:1.75rem}.ev-point{padding:.95rem 0}.skills-shot .shot img{max-height:min(56vh,460px);object-fit:cover;object-position:top center;width:100%}.sim-scroll{height:min(340px,46vh)}.sim-tag{font-size:.6rem;top:10px}.marquee{padding:12px 0}.marquee-track{flex-wrap:nowrap;animation-duration:38s}.mq-item{font-size:.8rem;padding-right:2.25rem}.demo-frame{margin-top:1.75rem;border-radius:16px}.demo-bar{padding:9px 12px}.chips{gap:7px}.chip{padding:7px 12px;font-size:.82rem}.mp-grid{margin-top:1.75rem;gap:2rem}.hood{padding:1.35rem 0}.hood-inner{gap:.4rem .9rem;font-size:.74rem}.install-steps{gap:10px}.footer{padding:2rem 0 2.4rem}.footer-tag{width:100%;margin-right:0}.footer-links{gap:1rem 1.2rem}.doc-outer{left:-28px;bottom:-22px}.doc-3d{width:108px}}@media(max-width:360px){.display{font-size:clamp(1.65rem,7vw,1.95rem)}html[data-lang=zh] .display{font-size:clamp(1.7rem,7.4vw,2.05rem)}.container,.nav-inner{padding-inline:1.1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html.js .rv{opacity:1;transform:none;filter:none}html.js:not(.ready) .display .hl>span{transform:none}html.js:not(.ready) .hero-sub,html.js:not(.ready) .hero-ctas,html.js:not(.ready) .hero-badge,html.js:not(.ready) .sim-wrap,html.js:not(.ready) .hero-cursor-outer{opacity:1;transform:none}.mark>svg path{stroke-dashoffset:0}.marquee-track{animation:none!important;will-change:auto;transform:none}.marquee.is-static{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.marquee.is-static::-webkit-scrollbar{display:none}.marquee.is-static .marquee-track{width:max-content;padding-inline:var(--gutter)}.sim-step.enter,.sim-answer .a-line.enter,.sim-sources.enter{opacity:1;transform:none}.hero-copy,.sim-wrap,.demo-frame,.para-shot,.doc-outer,.folder-outer,.sim-tilt{transform:none!important}}
