:root{--bg:#f4f5f2;--panel:#fff;--ink:#111418;--muted:#5a616b;--line:#d5d9de;--grid:#1114180f;--accent:#ff5a1f;--accent-hover:#ff7a47;--accent-ink:#c2410c;--sans:"Helvetica Neue", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, "PingFang SC", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;background-color:var(--bg);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:32px 32px;margin:0}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}section[id],#main{scroll-margin-top:16px}.skip{background:var(--ink);color:#fff;z-index:10;padding:8px 12px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.wrap{max-width:1184px;margin:0 auto;padding:0 24px}.label{font:500 11px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.dot{background:var(--accent);vertical-align:1px;width:7px;height:7px;margin-right:8px;display:inline-block}.site-header{background:var(--ink);color:#fff}.nav{height:56px;font:13px var(--mono);justify-content:space-between;align-items:center;display:flex}.brand{font:700 15px var(--sans);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:10px;text-decoration:none;display:flex}.brand svg{color:var(--accent)}.nav-links{margin:0;padding:0;list-style:none;display:flex}.nav-links a{color:#b8bec7;border-left:1px solid #2a2f36;padding:0 18px;line-height:56px;text-decoration:none;display:block}.nav-links a:hover{color:#fff;background:#1c2027}.nav-right{align-items:stretch;display:flex}.lang{color:#b8bec7;border-left:1px solid #2a2f36;padding:0 16px;line-height:56px;text-decoration:none;display:block}.lang:hover{color:#fff;background:#1c2027}.nav .cta{background:var(--accent);color:#111;padding:0 20px;font-weight:600;line-height:56px;text-decoration:none}.nav .cta:hover{background:var(--accent-hover)}.frame{border:1px solid var(--ink);background:var(--panel)}.hero{padding:56px 0}.hero .frame{grid-template-columns:1.25fr .75fr;display:grid}.hero-main{border-right:1px solid var(--ink);padding:56px 48px}h1{letter-spacing:-.04em;text-transform:uppercase;margin:24px 0 28px;font-size:clamp(42px,6vw,80px);font-weight:800;line-height:.98}h1 .hl{color:var(--accent)}:lang(zh-CN) h1{letter-spacing:-.02em;line-height:1.12}.lead{color:var(--muted);max-width:32em;margin:0 0 36px;font-size:18px}.btns{flex-wrap:wrap;display:flex}.btn{font:600 13px var(--mono);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--ink);padding:14px 22px;text-decoration:none;display:inline-block}.btn-primary{background:var(--accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{margin-left:-1px}.btn-ghost:hover{background:var(--ink);color:#fff}.spec{flex-direction:column;display:flex}.spec-head{border-bottom:1px solid var(--ink);justify-content:space-between;padding:16px 20px;display:flex}.spec dl{flex-direction:column;margin:0;display:flex}.spec dl div{border-bottom:1px solid var(--line);font:13px var(--mono);justify-content:space-between;gap:16px;padding:14px 20px;display:flex}.spec dl div:last-child{border-bottom:0}.spec dt{color:var(--muted)}.spec dd{text-align:right;margin:0}.diagram{border-bottom:1px solid var(--line);flex:1;place-items:center;min-height:160px;padding:24px;display:grid}.diagram svg{max-width:100%;height:auto}section{padding:56px 0}.sec-head{grid-template-columns:200px 1fr;align-items:baseline;gap:24px;margin-bottom:28px;display:grid}h2{letter-spacing:-.03em;text-transform:uppercase;margin:0;font-size:clamp(28px,3.6vw,44px);font-weight:800;line-height:1.05}:lang(zh-CN) h2{letter-spacing:0;line-height:1.2}.grid3{border-left:1px solid var(--ink);border-top:1px solid var(--ink);grid-template-columns:repeat(3,1fr);display:grid}.cell{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--panel);padding:28px;position:relative}.cell .id{font:12px var(--mono);color:var(--accent-ink)}.cell h3{letter-spacing:-.01em;margin:18px 0 8px;font-size:19px}.cell p{color:var(--muted);margin:0;font-size:15px}.cell:hover{background:#fffaf7}.cell:hover:after{content:"";background:var(--accent);width:4px;height:100%;position:absolute;top:0;left:0}.table{border-collapse:collapse;background:var(--panel);border:1px solid var(--ink);width:100%}.table caption{caption-side:bottom;text-align:left;padding-top:12px}.table th,.table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:20px}.table thead th{font:500 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--ink);padding:14px 20px}.table td.n{font:12px var(--mono);color:var(--accent-ink);width:56px}.table td.client{font:12px/1.6 var(--mono);color:var(--muted);width:180px}.table h3{margin:0 0 6px;font-size:18px}.table p{color:var(--muted);margin:0;font-size:15px}.table td.tech{font:12px/1.8 var(--mono);width:200px}.wip{font:600 10px var(--mono);background:var(--accent);vertical-align:3px;letter-spacing:.06em;margin-left:8px;padding:2px 6px}.stack{border-left:1px solid var(--ink);border-top:1px solid var(--ink);grid-template-columns:repeat(6,1fr);margin:0;display:grid}.stack div{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--panel);padding:20px}.stack dt{font:500 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:12px}.stack dd{margin:0;font-size:15px;line-height:1.7}.steps{border:1px solid var(--ink);background:var(--panel);grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;display:grid}.steps li{border-right:1px solid var(--ink);padding:24px}.steps li:last-child{border-right:0}.steps .label{color:var(--accent-ink)}.steps h3{text-transform:uppercase;letter-spacing:-.01em;margin:14px 0 6px;font-size:18px}.steps p{color:var(--muted);margin:0;font-size:15px}.contact .frame{background:var(--ink);color:#fff;grid-template-columns:1fr auto;align-items:end;gap:32px;padding:64px 48px;display:grid}.contact .label{color:#9aa1ab}.contact h2{margin-top:16px;font-size:clamp(34px,5vw,64px)}.contact p{color:#b8bec7;margin:16px 0 0}.mail{background:var(--accent);color:#111;font:600 clamp(14px, 1.8vw, 18px) var(--mono);word-break:break-all;padding:18px 24px;text-decoration:none;display:inline-block}.mail:hover{background:var(--accent-hover)}.site-footer{font:12px var(--mono);color:var(--muted);padding:24px 0 48px}.site-footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}@media (width<=960px){.hero .frame,.contact .frame{grid-template-columns:1fr}.hero-main{border-right:0;border-bottom:1px solid var(--ink);padding:40px 28px}.grid3{grid-template-columns:1fr 1fr}.stack{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:1fr 1fr}.steps li:nth-child(2){border-right:0}.steps li:nth-child(-n+2){border-bottom:1px solid var(--ink)}.sec-head{grid-template-columns:1fr;gap:8px}.nav-links,.table .tech{display:none}}@media (width<=600px){.grid3,.steps{grid-template-columns:1fr}.stack{grid-template-columns:1fr 1fr}.steps li{border-right:0;border-bottom:1px solid var(--ink)}.steps li:last-child{border-bottom:0}.table .client,.table .n{display:none}.contact .frame{padding:40px 24px}.nav .cta{padding:0 14px;font-size:12px}.lang{padding:0 12px}.hero{padding:24px 0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
