:root{--ah-white:#ffffff;--ah-gray-1:#f5f5f5;--ah-gray-2:#e8e8e8;--ah-gray-3:#c0c0c0;--ah-gray-4:#6b6b6b;--ah-black:#0a0a0a;--ah-black-2:#1a1a1a;--ah-neon:#00ff88;--ah-neon-dim:#00cc6a;--ah-yellow:#ffdd00;--ah-grad:linear-gradient(135deg,#0a0a0a 0%,#1a1a1a 100%);--ah-neon-glow:0 0 20px rgba(0,255,136,.35);--ah-shadow:0 18px 44px -16px rgba(0,0,0,.45);--ah-rd:6px;--ah-w:1180px;--ah-mono:"SF Mono","JetBrains Mono","Consolas","Courier New",monospace;--ah-face:"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei",-apple-system,BlinkMacSystemFont,system-ui,sans-serif}*{margin:0;padding:0;box-sizing:border-box}html,body{background:var(--ah-white);color:var(--ah-black);font-family:var(--ah-face);line-height:1.68;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.ah-shell{max-width:var(--ah-w);margin:0 auto;padding:0 24px}.ah-nav{position:sticky;top:0;z-index:50;background:var(--ah-white);border-bottom:1px solid var(--ah-gray-2)}.ah-nav-in{max-width:var(--ah-w);margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:24px}.ah-brand{display:flex;align-items:center;gap:10px;font-weight:800;font-family:var(--ah-mono)}.ah-brand-i{width:32px;height:32px}.ah-brand-t{font-size:15px;color:var(--ah-black);letter-spacing:.04em}.ah-nav-links{display:flex;gap:4px;margin-left:auto}.ah-nav-links a{padding:8px 14px;border-radius:var(--ah-rd);font-size:14px;color:var(--ah-gray-4);font-family:var(--ah-mono);transition:.2s}.ah-nav-links a:hover{color:var(--ah-black);background:var(--ah-gray-1)}.ah-nav-links a.ah-on{color:var(--ah-black);background:var(--ah-neon)}.ah-dl-btn{padding:10px 20px;border-radius:var(--ah-rd);font-size:13px;font-weight:800;background:var(--ah-black);color:var(--ah-neon);font-family:var(--ah-mono);border:1px solid var(--ah-black);box-shadow:var(--ah-neon-glow)}.ah-dl-btn:hover{background:var(--ah-neon);color:var(--ah-black);border-color:var(--ah-neon)}.ah-mnu{display:none;flex-direction:column;gap:5px;background:0;border:0;cursor:pointer;padding:6px;margin-left:auto}.ah-mnu span{width:24px;height:2px;background:var(--ah-black);border-radius:2px}.ah-drawer{position:fixed;inset:0 0 0 auto;width:78%;max-width:320px;background:var(--ah-white);border-left:1px solid var(--ah-gray-2);z-index:60;transform:translateX(100%);transition:transform .28s;padding:24px}.ah-drawer.ah-open{transform:translateX(0)}.ah-drawer a{display:block;padding:14px 6px;color:var(--ah-gray-4);border-bottom:1px solid var(--ah-gray-2);font-family:var(--ah-mono)}.ah-drawer-x{background:0;border:0;color:var(--ah-black);font-size:26px;float:right;cursor:pointer}.ah-scrim{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:55;opacity:0;transition:.28s}.ah-scrim.ah-open{opacity:1}.ah-trail{border-bottom:1px solid var(--ah-gray-2);background:var(--ah-gray-1)}.ah-trail-in{max-width:var(--ah-w);margin:0 auto;padding:12px 24px;font-size:13px;color:var(--ah-gray-4);font-family:var(--ah-mono)}.ah-trail-in a{color:var(--ah-black)}.ah-trail-in a:hover{color:var(--ah-neon-dim)}.ah-trail-in .ah-arr{margin:0 9px;color:var(--ah-gray-3)}.ah-hero{position:relative;background:var(--ah-black);color:var(--ah-white);padding:88px 0 68px;overflow:hidden}.ah-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(0,255,136,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,136,.04) 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(700px 400px at 30% 40%,#000,transparent 80%)}.ah-hero-in{position:relative;z-index:1;max-width:var(--ah-w);margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}.ah-label{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;margin-bottom:22px;border:1px solid var(--ah-neon);border-radius:3px;font-size:12px;letter-spacing:.16em;color:var(--ah-neon);background:rgba(0,255,136,.06);font-family:var(--ah-mono)}.ah-label::before{content:"▶"}.ah-h1{font-size:clamp(32px,5.5vw,56px);line-height:1.1;font-weight:900;letter-spacing:-.02em;margin-bottom:22px}.ah-h1 .ah-neon{color:var(--ah-neon)}.ah-lead{font-size:clamp(15px,2vw,18px);color:var(--ah-gray-3);max-width:560px;margin-bottom:32px}.ah-lead strong{color:var(--ah-white);font-weight:700}.ah-lead code{background:rgba(0,255,136,.12);padding:2px 8px;border-radius:3px;color:var(--ah-neon);font-family:var(--ah-mono);font-size:90%}.ah-btns{display:flex;gap:14px;flex-wrap:wrap}.ah-btn-hero{padding:14px 28px;border-radius:var(--ah-rd);font-weight:800;font-size:15px;background:var(--ah-neon);color:var(--ah-black);font-family:var(--ah-mono);box-shadow:var(--ah-neon-glow);transition:transform .2s,filter .2s}.ah-btn-hero:hover{transform:translateY(-2px);filter:brightness(1.1)}.ah-btn-hero-o{padding:14px 26px;border-radius:var(--ah-rd);font-weight:700;font-size:15px;border:1px solid var(--ah-gray-4);color:var(--ah-white);background:transparent;font-family:var(--ah-mono)}.ah-btn-hero-o:hover{border-color:var(--ah-neon);color:var(--ah-neon)}.ah-vis{position:relative;aspect-ratio:1/.85;border-radius:8px;overflow:hidden;background:var(--ah-black-2);border:1px solid var(--ah-gray-4)}.ah-vis svg{width:100%;height:100%;display:block}.ah-slab{padding:76px 0;background:var(--ah-white)}.ah-slab.ah-gray{background:var(--ah-gray-1)}.ah-slab-hd{margin-bottom:44px}.ah-eb{font-size:12px;letter-spacing:.18em;color:var(--ah-neon-dim);font-weight:700;font-family:var(--ah-mono);margin-bottom:10px;text-transform:uppercase}.ah-h2{font-size:clamp(24px,3.5vw,36px);font-weight:800;letter-spacing:-.01em;color:var(--ah-black)}.ah-h2 em{font-style:normal;color:var(--ah-neon-dim);position:relative;display:inline-block}.ah-h2 em::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:6px;background:var(--ah-neon);opacity:.3;z-index:-1}.ah-dls{display:grid;grid-template-columns:1fr;gap:12px;max-width:900px;margin:0 auto}.ah-dl-box{display:flex;align-items:center;padding:22px 24px;border-radius:var(--ah-rd);background:var(--ah-black);color:var(--ah-white);border:1px solid var(--ah-black);transition:.22s;font-family:var(--ah-mono)}.ah-dl-box:hover{transform:translateX(4px);border-color:var(--ah-neon)}.ah-dl-box .ah-dl-plat{font-size:15px;font-weight:800;color:var(--ah-neon);min-width:110px}.ah-dl-box .ah-dl-arch{font-size:12px;color:var(--ah-gray-3);margin-left:8px}.ah-dl-box .ah-dl-desc{flex:1;padding:0 24px;font-size:14px;color:var(--ah-gray-3)}.ah-dl-box .ah-dl-ver{font-size:13px;color:var(--ah-gray-4);margin-right:20px}.ah-dl-box .ah-dl-go{font-size:14px;font-weight:700;color:var(--ah-neon)}.ah-ft-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ah-ft{padding:26px 22px;border-radius:var(--ah-rd);background:var(--ah-white);border:1px solid var(--ah-gray-2);position:relative;transition:.22s}.ah-ft:hover{border-color:var(--ah-neon-dim);box-shadow:var(--ah-shadow)}.ah-ft::before{content:"";position:absolute;top:0;left:22px;width:32px;height:3px;background:var(--ah-neon)}.ah-ft-key{font-family:var(--ah-mono);font-size:11px;color:var(--ah-gray-4);margin-bottom:12px;margin-top:8px;letter-spacing:.1em}.ah-ft h3{font-size:17px;margin-bottom:8px;color:var(--ah-black)}.ah-ft p{color:var(--ah-gray-4);font-size:14px}.ah-ft code{background:var(--ah-gray-1);padding:1px 6px;border-radius:3px;color:var(--ah-black);font-family:var(--ah-mono);font-size:12px}.ah-code{max-width:900px;margin:0 auto;background:var(--ah-black);border-radius:8px;overflow:hidden}.ah-code-hd{display:flex;align-items:center;gap:8px;padding:12px 18px;background:var(--ah-black-2);border-bottom:1px solid var(--ah-gray-4);font-family:var(--ah-mono);font-size:12px;color:var(--ah-gray-3)}.ah-code-hd::before{content:"●●●";color:var(--ah-gray-4);letter-spacing:4px;margin-right:8px}.ah-code-body{padding:20px 24px}.ah-code-line{padding:16px 20px;margin-bottom:12px;border:1px solid var(--ah-gray-4);border-radius:var(--ah-rd);background:rgba(255,255,255,.02)}.ah-code-line:last-child{margin-bottom:0}.ah-code-cmd{font-family:var(--ah-mono);font-size:13px;color:var(--ah-neon);margin-bottom:6px}.ah-code-cmd .ah-hash{color:var(--ah-gray-4)}.ah-code-cmd .ah-fn{color:var(--ah-yellow)}.ah-code-txt{color:var(--ah-gray-3);font-size:14px;padding-left:20px}.ah-code-txt b{color:var(--ah-white)}.ah-code-txt code{background:var(--ah-black-2);padding:1px 6px;border-radius:3px;color:var(--ah-neon);font-family:var(--ah-mono);font-size:12px}.ah-subh{background:var(--ah-black);color:var(--ah-white);padding:60px 0 40px}.ah-subh h1{font-size:clamp(28px,4.2vw,42px);font-weight:900;margin-bottom:14px}.ah-subh h1 em{font-style:normal;color:var(--ah-neon)}.ah-subh .ah-sub-lead{color:var(--ah-gray-3);max-width:660px;font-size:16px;margin-bottom:24px}.ah-doc{max-width:820px}.ah-doc h2{font-size:24px;margin:38px 0 14px;font-weight:800;color:var(--ah-black)}.ah-doc h2:first-child{margin-top:0}.ah-doc h3{font-size:18px;margin:24px 0 10px;color:var(--ah-neon-dim)}.ah-doc p{color:var(--ah-gray-4);margin-bottom:14px;font-size:15px}.ah-doc ul{color:var(--ah-gray-4);margin:0 0 16px 22px}.ah-doc li{margin-bottom:8px;font-size:15px}.ah-doc strong{color:var(--ah-black)}.ah-doc a{color:var(--ah-neon-dim);text-decoration:underline;text-underline-offset:3px}.ah-doc code{background:var(--ah-gray-1);padding:1px 7px;border-radius:3px;color:var(--ah-black);font-family:var(--ah-mono);font-size:13px}.ah-doc pre{background:var(--ah-black);color:var(--ah-neon);padding:16px 20px;border-radius:var(--ah-rd);overflow-x:auto;margin:14px 0;font-family:var(--ah-mono);font-size:13px;line-height:1.6}.ah-qns{max-width:820px}.ah-qi{border:1px solid var(--ah-gray-2);border-radius:var(--ah-rd);margin-bottom:12px;background:var(--ah-white);overflow:hidden}.ah-qi summary{padding:18px 22px;cursor:pointer;font-weight:700;font-size:15px;list-style:none;position:relative;color:var(--ah-black)}.ah-qi summary::-webkit-details-marker{display:none}.ah-qi summary::before{content:">";position:absolute;right:22px;color:var(--ah-neon-dim);font-family:var(--ah-mono);font-weight:700;transition:transform .2s}.ah-qi[open] summary::before{transform:rotate(90deg)}.ah-ans{padding:0 22px 20px;color:var(--ah-gray-4);font-size:15px}.ah-ans a{color:var(--ah-neon-dim)}.ah-ans code{background:var(--ah-gray-1);padding:1px 6px;border-radius:3px;color:var(--ah-black);font-family:var(--ah-mono);font-size:13px}.ah-more{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ah-mo{padding:22px;border-radius:var(--ah-rd);background:var(--ah-white);border:1px solid var(--ah-gray-2);transition:.22s}.ah-mo:hover{border-color:var(--ah-black)}.ah-mo-tag{font-size:11px;letter-spacing:.14em;color:var(--ah-neon-dim);font-weight:700;font-family:var(--ah-mono)}.ah-mo h3{margin:8px 0;font-size:17px;color:var(--ah-black)}.ah-mo p{color:var(--ah-gray-4);font-size:13px;margin-bottom:12px}.ah-mo .ah-mo-go{color:var(--ah-neon-dim);font-weight:700;font-size:13px;font-family:var(--ah-mono)}.ah-btm{background:var(--ah-black);color:var(--ah-gray-3);padding:50px 0 30px}.ah-btm-grid{max-width:var(--ah-w);margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.ah-btm-name{font-weight:800;font-size:16px;margin-bottom:12px;color:var(--ah-neon);font-family:var(--ah-mono)}.ah-btm p,.ah-btm a{color:var(--ah-gray-3);font-size:14px}.ah-btm-col h4{color:var(--ah-neon);font-size:12px;margin-bottom:12px;letter-spacing:.12em;font-family:var(--ah-mono)}.ah-btm-col a{display:block;padding:4px 0}.ah-btm-col a:hover{color:var(--ah-white)}.ah-pals{max-width:var(--ah-w);margin:26px auto 0;padding:20px 24px 0;border-top:1px solid var(--ah-gray-4)}.ah-pals-l{display:block;color:var(--ah-neon);font-size:12px;letter-spacing:.12em;margin-bottom:12px;font-family:var(--ah-mono)}.ah-pals-row{display:flex;flex-wrap:wrap;gap:8px 18px}.ah-pals-row a{color:var(--ah-gray-3);font-size:14px}.ah-pals-row a:hover{color:var(--ah-white)}.ah-mark{max-width:var(--ah-w);margin:26px auto 0;padding:20px 24px 0;border-top:1px solid var(--ah-gray-4);color:var(--ah-gray-4);font-size:13px;text-align:center;font-family:var(--ah-mono)}.ah-quick{position:fixed;right:22px;bottom:22px;z-index:40;padding:12px 20px;border-radius:var(--ah-rd);background:var(--ah-neon);color:var(--ah-black);font-weight:800;box-shadow:var(--ah-neon-glow);font-family:var(--ah-mono);font-size:13px;letter-spacing:.04em}.ah-quick:hover{filter:brightness(1.1)}@media (max-width:900px){.ah-nav-links{display:none}.ah-mnu{display:flex}.ah-hero-in{grid-template-columns:1fr}.ah-ft-list,.ah-more{grid-template-columns:1fr}.ah-dl-box{flex-wrap:wrap}.ah-dl-box .ah-dl-desc{padding:8px 0}.ah-btm-grid{grid-template-columns:1fr;gap:22px}}