@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/inter-var-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/assets/fonts/jetbrains-mono-var-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Zhaohua Typewriter Hero;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/zhaohua-typewriter-hero.woff2)format("woff2")}@font-face{font-family:Orbitron Logo;font-style:normal;font-weight:400 900;font-display:swap;src:url(/assets/fonts/orbitron-logo.woff2)format("woff2")}:root{--bg:#fafafa;--bg-panel:#fff;--bg-raised:#f4f4f5;--border:#e4e4e7;--fg:#0a0a0a;--fg-secondary:#52525b;--fg-muted:#a1a1aa;--accent:#0294fe;--accent-deep:#5505ff;--accent-cyan:#0284c7;--accent-soft:#0294fe1a;--glow:radial-gradient(closest-side, #0294fe1a, transparent 70%);--glow-cta:0 4px 24px #0294fe40;--card-hover-shadow:0 12px 40px #00000014, 0 0 60px #0294fe14;--glass-bg:#ffffffb8;--glass-border:#00000014;--glass-nav:#fffc;--card-border:linear-gradient(150deg, #0000001a, #00000008);--dot-grid:#0000000f;--pill-bg:#0000000d;--pill-border:#0000001a;--pill-icon:#71717a;--pill-icon-active:#0a0a0a;--pill-active-bg:#fff;--pill-active-ring:#00000038;--font-main:"Inter", -apple-system, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, Menlo, Monaco, monospace;--nav-h:64px;--content-w:1080px;--radius-md:6px;--radius:8px;--radius-lg:16px;color-scheme:light}[data-theme=dark]{--bg:#07080a;--bg-panel:#0c0d0f;--bg-raised:#111214;--border:#242728;--fg:#fff;--fg-secondary:#9c9c9d;--fg-muted:#6a6b6c;--accent:#0294fe;--accent-deep:#5505ff;--accent-cyan:#4dbfce;--accent-soft:#0294fe26;--glow:radial-gradient(closest-side, #0294fe38, transparent 70%);--glow-cta:0 4px 24px #0294fe59;--card-hover-shadow:0 12px 40px #00000073, 0 0 60px #0294fe2e;--glass-bg:#ffffff0a;--glass-border:#ffffff1a;--glass-nav:linear-gradient(#000000a6 0% 100%), #ffffff05;--card-border:linear-gradient(150deg, #ffffff3b, #ffffff12);--dot-grid:#ffffff0d;--pill-bg:#ffffff0f;--pill-border:#ffffff1f;--pill-icon:#9c9c9d;--pill-icon-active:#fff;--pill-active-bg:#ffffff1f;--pill-active-ring:#ffffff59;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 24px)}body{font-family:var(--font-main);background:var(--bg);color:var(--fg);letter-spacing:.2px;-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.7;transition:background .25s,color .25s}::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none}.container{max-width:var(--content-w);margin:0 auto;padding:0 24px}.nav{z-index:100;width:min(960px,100% - 32px);min-height:var(--nav-h);background:var(--glass-nav);border:1px solid var(--glass-border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px);justify-content:space-between;align-items:center;padding:0 16px 0 20px;transition:background .25s;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.nav-logo{letter-spacing:1px;white-space:nowrap;font-family:Orbitron Logo,Avenir Next,Futura,sans-serif;font-size:17px;font-weight:700}.theme-pill{background:var(--pill-bg);border:1px solid var(--pill-border);border-radius:999px;align-items:center;gap:2px;padding:2px;display:flex}.theme-pill button{width:28px;height:28px;color:var(--pill-icon);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:color .15s,background .15s,box-shadow .15s;display:flex}.theme-pill button:hover{color:var(--pill-icon-active)}.theme-pill button.active{background:var(--pill-active-bg);color:var(--pill-icon-active);box-shadow:0 0 0 1px var(--pill-active-ring), 0 1px 2px #0000001f}.theme-pill svg{width:15px;height:15px}.btn{border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:8px;padding:10px 22px;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.btn-primary{color:#fff;background:linear-gradient(135deg, var(--accent) 0%, var(--accent-deep) 100%);border:none}.btn-primary:hover{box-shadow:var(--glow-cta);transform:translateY(-1px)}.btn-glass{color:var(--fg);background:var(--glass-bg);border:1px solid var(--glass-border);backdrop-filter:blur(8px)}.btn-glass:hover{background:var(--pill-active-bg)}.hero{min-height:100svh;padding:var(--nav-h) 0 16vh;padding:var(--nav-h) 0 16svh;text-align:center;flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:var(--glow);filter:blur(40px);pointer-events:none;width:900px;height:480px;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}.hero:after{content:"";background-image:radial-gradient(var(--dot-grid) .5px, transparent .5px);pointer-events:none;background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 60% at 50% 0,#000 30%,#0000 75%);mask-image:radial-gradient(80% 60% at 50% 0,#000 30%,#0000 75%)}.hero h1{letter-spacing:-.5px;background:linear-gradient(94deg, var(--fg) 0%, var(--accent-cyan) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:28px;font-size:clamp(44px,7vw,76px);font-weight:700;line-height:1.12;position:relative}.hero h1.hero-display{letter-spacing:.02em;white-space:nowrap;font-family:Zhaohua Typewriter Hero,Kaiti SC,STKaiti,KaiTi,serif;font-size:min(88px,10.8108svw - 5.18919px);font-weight:500;line-height:1.05}.hero .sub{max-width:720px;color:var(--fg-secondary);margin:0 auto;font-size:26px;line-height:1.7;position:relative}.hero .sub-line{white-space:nowrap}@media (width<=720px){.hero .sub{font-size:20px}.hero .sub-line{display:block}.hero .sub-line+.sub-line{margin-top:6px}}.section{padding:72px 0}.section-title{text-align:center;margin-bottom:12px;font-size:32px;font-weight:700}.section-sub{text-align:center;color:var(--fg-secondary);margin-bottom:48px;font-size:15px}.card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.card{background:var(--glass-bg);border-radius:var(--radius-lg);background-clip:padding-box;border:1px solid #0000;padding:28px 26px;transition:transform .2s,box-shadow .2s;display:block;position:relative}.card:before{content:"";border-radius:inherit;background:var(--card-border);-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}.card:hover{box-shadow:var(--card-hover-shadow);transform:translateY(-3px)}.card .tag{font-family:var(--font-mono);color:var(--accent);background:var(--accent-soft);border:1px solid #0294fe40;border-radius:999px;margin-bottom:16px;padding:3px 10px;font-size:11px;display:inline-block}.card h3{margin-bottom:10px;font-size:19px;font-weight:650}.card p{color:var(--fg-secondary);font-size:14px}.stack{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.stack span{font-family:var(--font-mono);color:var(--fg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);padding:4px 10px;font-size:12px}.media-placeholder{border:1px dashed var(--border);border-radius:var(--radius-lg);min-height:220px;color:var(--fg-muted);background:repeating-linear-gradient(45deg, transparent 0 12px, var(--accent-soft) 12px 24px);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.media-placeholder .icon{opacity:.5;font-size:22px}.arch-figure{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-panel);margin:0;overflow:hidden}.arch-figure svg{width:100%;height:auto;display:block}:root{--arch-bg:#fff;--arch-node:#f4f4f5;--arch-stroke:#e4e4e7;--arch-arrow:#a1a1aa;--arch-text:#0a0a0a;--arch-text-sub:#71717a;--arch-text-mono:#52525b}[data-theme=dark]{--arch-bg:#0c0d0f;--arch-node:#111214;--arch-stroke:#242728;--arch-arrow:#4b5563;--arch-text:#fff;--arch-text-sub:#6a6b6c;--arch-text-mono:#9c9c9d}.psr{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.psr .card h3 .num{font-family:var(--font-mono);color:var(--accent);margin-right:8px}.flow{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;max-width:900px;margin:0 auto;display:grid}.flow .step{text-align:center;padding:24px 16px}.flow .step .n{font-family:var(--font-mono);color:var(--accent);margin-bottom:8px;font-size:22px;display:block}.flow .step h4{margin-bottom:6px;font-size:15px}.flow .step p{color:var(--fg-secondary);font-size:13px}.disclaimer{text-align:center;font-family:var(--font-mono);color:var(--fg-muted);margin-top:24px;font-size:12px}.footer{border-top:1px solid var(--border);margin-top:40px;padding:48px 0 40px}.footer-grid{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:32px;display:flex}.footer .col{color:var(--fg-muted);font-size:13px}.footer .col a{padding:3px 0;transition:color .15s;display:block}.footer .col a:hover{color:var(--fg)}.footer .brand{letter-spacing:1px;color:var(--fg);margin-bottom:8px;font-family:Orbitron Logo,Avenir Next,Futura,sans-serif;font-size:14px;font-weight:700}.footer .email{font-family:var(--font-mono);color:var(--accent)}.footer-qr-col{align-items:flex-start;display:flex}.footer .qr-card{background:0 0;border:none;padding:0;transition:transform .25s;display:inline-flex}.footer .qr-card:hover{transform:translateY(-3px)}.footer .qr-card img{border-radius:var(--radius);width:96px;height:auto;display:block}.footer-bottom{border-top:1px solid var(--border);font-family:var(--font-mono);color:var(--fg-muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:36px;padding-top:20px;font-size:12px;display:flex}.fade-in{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(16px)}.fade-in.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.fade-in{opacity:1;transition:none;transform:none}html{scroll-behavior:auto}}@media (width<=720px){.hero{min-height:88svh;padding-bottom:10svh}.hero h1{font-size:clamp(34px,9vw,44px)}.section{padding:48px 0}.section-title{font-size:26px}}.nav-links{color:var(--fg-secondary);gap:24px;font-size:14px;display:flex}.nav-links a{padding:4px 2px;transition:color .15s}.nav-links a:hover,.nav-links a.active{color:var(--fg)}.nav-right{align-items:center;gap:12px;display:flex}.nav-burger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:4px;width:36px;height:36px;padding:0 9px;display:none}.nav-burger span{background:var(--fg);border-radius:1px;width:18px;height:1.5px;transition:transform .2s,opacity .2s;display:block}.nav-burger.open span:first-child{transform:translateY(5.5px)rotate(45deg)}.nav-burger.open span:nth-child(2){opacity:0}.nav-burger.open span:nth-child(3){transform:translateY(-5.5px)rotate(-45deg)}.nav-mobile-panel{background:var(--glass-nav);border:1px solid var(--glass-border);border-radius:var(--radius);-webkit-backdrop-filter:blur(16px);opacity:0;pointer-events:none;flex-direction:column;padding:12px;transition:opacity .2s,transform .2s;display:flex;position:absolute;top:calc(100% + 8px);left:0;right:0;transform:translateY(-8px)}.nav-mobile-panel.open{opacity:1;pointer-events:auto;transform:none}.nav-mobile-panel a{color:var(--fg-secondary);border-radius:var(--radius-md);padding:14px 12px;font-size:15px;transition:color .15s,background .15s}.nav-mobile-panel a:hover{color:var(--fg);background:var(--pill-bg)}.nav-mobile-panel a.active{color:var(--fg)}.nav-mobile-panel .btn{justify-content:center;margin-top:8px}@media (width<=720px){.nav-links,.nav-right .btn{display:none}.nav-burger{display:flex}}.work-head{text-align:center;margin:48px 0 24px}.work-head h3{font-size:26px;font-weight:700}.work-head p{color:var(--fg-secondary);font-size:15px}.work-cta-btn{padding:14px 36px;font-size:16px}.work-cta-box{text-align:center;border:1px dashed var(--border);border-radius:var(--radius-lg);margin-top:20px;padding:28px 24px}.work-cta-box .lead{margin-bottom:6px;font-size:15px;font-weight:600}.work-cta-box .note{color:var(--fg-secondary);margin-bottom:16px;font-size:13px}.work-cta-box .btn{padding:8px 18px;font-size:13px}.arch-figure,.work-block .stack{margin-top:24px}.svc-list{gap:16px;max-width:800px;margin:0 auto;display:grid}.svc-list .card{align-items:flex-start;gap:16px;display:flex}.svc-list .num{font-family:var(--font-mono);color:var(--accent);font-size:14px}.svc-list h3{margin-bottom:6px;font-size:16px}.flow-title{margin-top:72px;font-size:26px}.nav-wip{opacity:.45;pointer-events:none}.blog-hero{padding-bottom:8px}.blog-kicker{font-family:var(--font-mono);color:var(--accent);letter-spacing:3px;margin-bottom:12px;font-size:12px}.blog-title{margin-bottom:16px;font-size:clamp(34px,5vw,52px);font-weight:700;line-height:1.15}.blog-sub{color:var(--fg-secondary);font-size:16px}.blog-list{padding-top:40px}.blog-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;display:grid}.blog-card h3{font-size:20px;line-height:1.4}.blog-card .blog-card-meta{font-family:var(--font-mono);color:var(--accent);margin-bottom:10px;font-size:12px}.post{padding-top:48px}.post-container{max-width:720px}.post-back{color:var(--fg-muted);font-size:13px;transition:color .15s}.post-back:hover{color:var(--fg)}.post-head{margin:20px 0 36px}.post-head h1{margin-bottom:18px;font-size:clamp(26px,4vw,36px);line-height:1.3}.post-facts{font-family:var(--font-mono);color:var(--fg-secondary);flex-wrap:wrap;gap:6px 16px;font-size:12.5px;display:flex}.post-body{color:var(--fg);font-size:16px;line-height:2}.post-body p{margin-bottom:1.25em}.post-body h2{margin:2em 0 1em;font-size:20px}.post-body blockquote{border-left:3px solid var(--accent);color:var(--fg-secondary);margin:1.5em 0;padding:4px 0 4px 16px}.post-body a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.post-foot{border-top:1px solid var(--border);flex-direction:column;gap:14px;margin-top:48px;padding-top:24px;display:flex}.post-foot p{color:var(--fg-muted);font-size:13px}.post-wx-link{color:var(--accent);font-size:14px}.post-wx-link:hover{text-underline-offset:3px;text-decoration:underline}.wx-toolbar{flex-direction:column;align-items:center;gap:10px;display:flex}.wx-toolbar-tip{font-family:var(--font-mono);color:var(--fg-secondary);font-size:12.5px}
