:root{color-scheme:light;--paper:#f7f8f4;--ink:#202923;--muted:#748078;--line:#dce1d9;--blue:#2468e5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.65 "Segoe UI","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #8cafea;outline-offset:6px}a:hover{color:var(--blue)}.site-wrap{max-width:1440px;margin:auto;padding:0 64px}.skip-link{position:absolute;top:-60px;left:20px;padding:10px;background:white;z-index:5}.skip-link:focus{top:12px}.site-header{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:26px}.wordmark img{display:block;width:116px;height:auto}.wordmark>span{border-left:1px solid #cdd4ce;padding-left:24px;color:#6b766e;font-size:12px;letter-spacing:1px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:13px}.nav-register{display:flex;gap:24px;border:1px solid #b9c3b9;padding:9px 16px}.nav-register:hover{border-color:var(--blue)}.hero{min-height:570px;display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:center;padding:68px 0 60px}.eyebrow{font:10px/1.5 Consolas,monospace;letter-spacing:1.7px;color:#65746a;margin:0 0 26px;display:flex;gap:10px;align-items:center}.eyebrow>span{width:6px;height:6px;background:var(--blue)}h1{font-size:clamp(35px,3.6vw,53px);line-height:1.43;letter-spacing:-2px;font-weight:500;margin:0 0 24px;white-space:nowrap}.accent{color:var(--blue)}.hero-description{font-size:14px;color:#717c73;line-height:1.95;margin:0 0 30px}.hero-actions{display:flex;gap:28px;align-items:center}.primary-link{background:var(--blue);color:#fff;padding:13px 22px;min-width:172px;display:flex;justify-content:space-between;gap:28px;font-size:13px}.primary-link:hover{background:#1857c4;color:#fff}.primary-link>span{font-size:19px;line-height:1.2}.plain-link{font-size:12px}.plain-link>span{margin-left:12px}.access-note{font-size:10px;color:#8d968e;letter-spacing:1px;margin:21px 0 0}.hero-visual{min-width:0;max-width:500px;width:100%;justify-self:end;position:relative}.figure-caption,.figure-foot{display:flex;align-items:center;justify-content:space-between;font:9px/1.8 Consolas,"Microsoft YaHei",monospace;color:#8a958c;letter-spacing:1px}.figure-caption{border-bottom:1px solid var(--line);padding-bottom:12px}.connection-map{display:block;width:100%;height:auto;margin:14px 0}.orbit{fill:none;stroke:#d2dacf;stroke-width:1}.orbit.inner{stroke-dasharray:3 5}.connector{fill:none;stroke:#5481ce;stroke-width:1.2}.return-path{fill:none;stroke:#bcc9c0;stroke-dasharray:4 6}.map-label{font:13px "Microsoft YaHei",sans-serif;fill:#536257}.map-micro{font:8px Consolas,monospace;letter-spacing:1px;fill:#91a095}.map-brand{font:12px "Microsoft YaHei",sans-serif;fill:#2c58a0}.signal{fill:var(--blue)}.figure-foot{padding-top:13px;border-top:1px solid var(--line);font-size:9px;letter-spacing:0}.figure-key{display:flex;align-items:center;gap:8px}.figure-key i{width:5px;height:5px;background:var(--blue);display:inline-block}.capabilities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);padding:32px 0 36px;gap:36px;scroll-margin-top:25px}.capabilities article+article{border-left:1px solid var(--line);padding-left:35px}.feature-index{font:9px Consolas,monospace;letter-spacing:1px;color:#89988a}.capabilities h2{font-size:16px;font-weight:500;letter-spacing:.4px;margin:16px 0 11px}.capabilities p{font-size:12px;color:#7d887f;line-height:1.9;margin:0}.site-footer{border-top:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#929b92}.footer-divider{margin:0 12px;color:#c1c7bd}@keyframes signal{0%,100%{opacity:.3;transform:translateY(-12px)}50%{opacity:1;transform:translateY(18px)}}@media(min-width:1500px){.hero{min-height:650px}}@media(max-width:1100px){.site-wrap{padding:0 36px}.hero{gap:25px;grid-template-columns:1.15fr 1fr}.wordmark>span{display:none}h1{font-size:clamp(30px,3.5vw,39px)}.hero-actions{gap:18px}}@media(max-width:800px){.site-wrap{padding:0 24px}.site-header{height:80px}.site-header nav{gap:20px}.capability-link{display:none}.hero{grid-template-columns:1fr;padding:48px 0 35px;gap:35px;min-height:0}.hero-copy{max-width:600px}h1{font-size:clamp(29px,6.3vw,47px);letter-spacing:-1px}.hero-visual{max-width:450px;justify-self:center}.capabilities{gap:22px}.capabilities article+article{padding-left:20px}.capabilities h2{font-size:14px}.capabilities p br{display:none}.site-footer{font-size:9px}}@media(max-width:500px){.site-wrap{padding:0 22px}.wordmark img{width:100px}.site-header nav{gap:19px;font-size:12px}.nav-register{padding:7px 11px;gap:12px}.eyebrow{font-size:8px;letter-spacing:1.4px;margin-bottom:24px}.hero-description{font-size:12px}.hero-actions{gap:22px}.primary-link{min-width:152px;padding:12px 17px}.plain-link{font-size:11px}.plain-link>span{margin-left:4px}.access-note{font-size:9px}.hero-visual{padding:0 6px}.capabilities{grid-template-columns:1fr;padding-top:5px;gap:0}.capabilities article{padding:23px 0;display:grid;grid-template-columns:55px 1fr;column-gap:12px}.capabilities article+article{border-left:0;border-top:1px solid var(--line);padding-left:0}.feature-index{grid-row:1/3;font-size:0;line-height:2.4}.capabilities article:nth-child(1) .feature-index:after{content:'01';font-size:12px}.capabilities article:nth-child(2) .feature-index:after{content:'02';font-size:12px}.capabilities article:nth-child(3) .feature-index:after{content:'03';font-size:12px}.capabilities h2{margin:0 0 6px;font-size:15px}.capabilities p{font-size:11px}.site-footer{flex-direction:column;gap:7px;padding:21px 0}.site-footer>span:last-child{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.signal{animation:none}}

/* Homepage motion: brief entrances, then an optional, pausable flow illustration. */
.site-header{animation:home-enter .65s cubic-bezier(.2,.7,.3,1) both}
.hero-copy>*{animation:home-enter .8s cubic-bezier(.2,.7,.3,1) both}
.hero-copy>.eyebrow{animation-delay:.08s}.hero-copy>h1{animation-delay:.16s}.hero-description{animation-delay:.24s}.hero-actions{animation-delay:.32s}.hero-copy>.access-note{animation-delay:.4s}
.hero-visual{animation:home-enter 1s cubic-bezier(.2,.7,.3,1) .25s both}
.capabilities article{animation:home-enter .8s cubic-bezier(.2,.7,.3,1) .45s both}.capabilities article:nth-child(2){animation-delay:.53s}.capabilities article:nth-child(3){animation-delay:.61s}
.primary-link,.nav-register,.plain-link{transition:background-color .2s,border-color .2s,color .2s,transform .2s}
.primary-link>span,.plain-link>span,.nav-register>span{display:inline-block;transition:transform .25s cubic-bezier(.2,.7,.3,1)}
.primary-link:focus-visible>span,.primary-link:hover>span{transform:translateX(4px)}
.plain-link:focus-visible>span,.plain-link:hover>span,.nav-register:focus-visible>span,.nav-register:hover>span{transform:translate(2px,-2px)}
.primary-link:active,.nav-register:active{transform:translateY(1px)}
.figure-controls{display:flex;align-items:center;gap:12px}.figure-controls button{font:inherit;color:#65746a;border:0;border-left:1px solid var(--line);background:transparent;padding:0 0 0 12px;cursor:pointer;min-height:28px;letter-spacing:0}.figure-controls button:hover{color:var(--blue)}.figure-controls button:focus-visible{outline:2px solid #8cafea;outline-offset:3px}.figure-controls button:disabled{color:#929b92;cursor:default}[hidden]{display:none!important}
.flow-trace{fill:none;stroke:var(--blue);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:10 100;stroke-dashoffset:12;opacity:0;pointer-events:none}
.motion-enabled .flow-trace{animation:home-flow 6s linear infinite}.motion-enabled .flow-send{animation-delay:1.45s}.motion-enabled .flow-verify{animation-delay:1.75s}
.motion-enabled .signal{animation:signal 4s ease-in-out infinite}.motion-enabled .bridge-node{animation:bridge-breathe 6s ease-in-out infinite}
.motion-paused .connection-map *{animation-play-state:paused!important}
@keyframes home-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes home-flow{0%{stroke-dashoffset:12;opacity:0}5%{opacity:1}43%{stroke-dashoffset:-100;opacity:1}47%,100%{stroke-dashoffset:-100;opacity:0}}
@keyframes bridge-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.flow-trace{opacity:0}}

@media(max-width:500px){.figure-foot{flex-wrap:wrap;gap:8px}.figure-controls{margin-left:auto}.figure-controls button{min-height:36px}}
