@font-face{font-family:Geist;src:url(/fonts/Geist.woff2) format("woff2");font-display:swap;font-weight:100 900}
@font-face{font-family:GeistMono;src:url(/fonts/GeistMono.woff2) format("woff2");font-display:swap}
*{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#07070c;--fg:#f4f3fb;--mut:#a3a1b8;--line:rgba(255,255,255,.09);--card:rgba(255,255,255,.04);--v:#8b74ff;--c:#14d2ee;--p:#c3aeff}
html{scroll-behavior:smooth}
body{font-family:Geist,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--fg);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
.bg{position:fixed;inset:0;z-index:-1;overflow:hidden}
.orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;animation:float 18s ease-in-out infinite}
.o1{width:520px;height:520px;background:#5b3dff;top:-160px;left:-120px}
.o2{width:460px;height:460px;background:#0fb8d6;top:30%;right:-160px;animation-delay:-6s}
.o3{width:380px;height:380px;background:#b04dff;bottom:-160px;left:30%;animation-delay:-12s;opacity:.35}
.grid{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 50% 0%,#000 20%,transparent 70%);opacity:.5}
@keyframes float{50%{transform:translate(40px,30px) scale(1.08)}}
.nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:24px;padding:14px max(20px,calc(50% - 560px));backdrop-filter:blur(16px);background:rgba(7,7,12,.6);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;letter-spacing:-.01em}
.brand em{font-style:normal;color:var(--mut);font-weight:500}
.nav nav{display:flex;gap:22px;margin-left:auto}
.nav nav a{text-decoration:none;color:var(--mut);font-size:14px}.nav nav a:hover{color:var(--fg)}
.lang{background:var(--card);border:1px solid var(--line);color:var(--fg);border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;cursor:pointer}
main{max-width:1120px;margin:0 auto;padding:0 20px}
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;padding:96px 0 80px}
.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:6px 14px;font-size:13px;color:var(--mut)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--c);box-shadow:0 0 12px var(--c)}
h1{font-size:clamp(40px,6vw,68px);line-height:1.05;letter-spacing:-.035em;margin:22px 0;font-weight:700}
.grad{background:linear-gradient(100deg,var(--p),var(--v) 45%,var(--c));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:18px;color:var(--mut);max-width:560px}
.cta{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}
.btn{text-decoration:none;padding:13px 22px;border-radius:12px;font-weight:600;font-size:15px;transition:.2s}
.primary{background:linear-gradient(100deg,var(--v),var(--c));color:#05050a;box-shadow:0 8px 30px rgba(110,91,255,.35)}
.primary:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(20,210,238,.35)}
.ghost{border:1px solid var(--line);background:var(--card)}.ghost:hover{border-color:var(--v)}
.phone{justify-self:center;width:300px;padding:12px;border-radius:46px;background:linear-gradient(160deg,#2a2840,#0c0c14);box-shadow:0 40px 120px rgba(91,61,255,.35),inset 0 0 0 1px rgba(255,255,255,.12);transform:rotate(-3deg);animation:bob 7s ease-in-out infinite}
@keyframes bob{50%{transform:rotate(-3deg) translateY(-12px)}}
.screen{border-radius:36px;background:#0b0b13;padding:28px 18px;min-height:520px;display:flex;flex-direction:column;gap:14px}
.ph-top{display:flex;justify-content:space-between;font-size:12px;color:var(--mut)}
.ph-bal{font-size:40px;font-weight:700;letter-spacing:.08em}.ph-bal small{font-size:14px;color:var(--mut);letter-spacing:0}
.ph-agents{display:flex;gap:10px;margin:6px 0 10px}
.ag{position:relative;width:50px;height:50px;border-radius:16px;display:grid;place-items:center;font-weight:700}
.ag i{position:absolute;right:-3px;bottom:-3px;width:12px;height:12px;border-radius:50%;background:#2ee59d;border:2px solid #0b0b13}
.a1{background:linear-gradient(135deg,#ff7ab8,#ffb36b)}.a2{background:linear-gradient(135deg,#444,#999)}.a3{background:linear-gradient(135deg,#d97757,#f2b38f)}.a4{background:linear-gradient(135deg,#5b3dff,#14d2ee)}
.ph-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:13px 14px;border-radius:14px;background:rgba(255,255,255,.05);font-size:13px}
.ph-row b{font-weight:500}
.ok{color:#2ee59d;font-size:12px}.warn{color:#ffc36b;font-size:12px}
.sw{width:40px;height:24px;border-radius:12px;background:#333;position:relative}.sw i{position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff}
.sec{padding:90px 0;border-top:1px solid var(--line)}
.eyebrow{color:var(--c);font-family:GeistMono,monospace;font-size:13px;text-transform:uppercase;letter-spacing:.12em}
h2{font-size:clamp(30px,4vw,46px);letter-spacing:-.03em;line-height:1.1;margin:12px 0 18px}
.sub{color:var(--mut);max-width:640px;font-size:17px}
.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:36px}
.steps li,.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:26px;transition:.25s}
.steps li:hover,.card:hover{border-color:rgba(139,116,255,.5);transform:translateY(-4px)}
.steps span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--v),var(--c));color:#05050a;font-weight:700}
h3{font-size:19px;margin:14px 0 8px;letter-spacing:-.01em}
.steps p,.card p{color:var(--mut);font-size:15px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
.ic{font-size:24px}
.fees{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.fees>div{border:1px dashed var(--line);border-radius:16px;padding:20px}.fees p{color:var(--mut);font-size:15px;margin-top:6px}
.tag{display:inline-block;font-size:12px;font-family:GeistMono,monospace;padding:2px 9px;border-radius:999px;background:rgba(20,210,238,.12);color:var(--c);border:1px solid rgba(20,210,238,.3);margin-right:6px}
.tag.dim{background:rgba(255,195,107,.1);color:#ffc36b;border-color:rgba(255,195,107,.3)}
.repo{margin-top:30px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));padding:26px}
.repo-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.repo-head code{font-family:GeistMono,monospace;font-size:18px}
.repo-head a{color:var(--c)}
.tree{font-family:GeistMono,monospace;font-size:14px;line-height:1.9;margin:22px 0;padding:20px;border-radius:14px;background:#05050a;border:1px solid var(--line);overflow-x:auto;color:#d8d6ea}
.tree span{color:#6f6c88}
.arch{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.node{flex:1;min-width:120px;text-align:center;padding:14px;border-radius:14px;border:1px solid var(--line);background:var(--card);font-size:14px}
.node small{color:var(--mut)}.node.hl{border-color:var(--v);box-shadow:0 0 30px rgba(139,116,255,.25)}
.arrow{color:var(--mut)}
.secnote{margin-top:20px;color:var(--mut);font-size:14px}.secnote a{color:var(--c)}
details{border-bottom:1px solid var(--line);padding:18px 0}
summary{cursor:pointer;font-weight:600;font-size:17px}
details p{color:var(--mut);margin-top:10px}
footer{max-width:1120px;margin:0 auto;padding:40px 20px;border-top:1px solid var(--line);color:var(--mut);font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
.reveal{opacity:0;transform:translateY(24px);transition:.7s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}
@media (max-width:900px){.hero{grid-template-columns:1fr;padding:56px 0}.phone{transform:none;animation:none}.cards{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}.nav nav{display:none}.lang{margin-left:auto}}
@media (max-width:560px){.cards,.fees{grid-template-columns:1fr}.arrow{transform:rotate(90deg);width:100%;text-align:center}.node{flex-basis:100%}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.ag{overflow:visible;background:none!important}.ag img{width:100%;height:100%;border-radius:16px;object-fit:cover;display:block}
/* t961 pointer effects */
.cglow{position:fixed;left:0;top:0;width:560px;height:560px;margin:-280px 0 0 -280px;border-radius:50%;pointer-events:none;z-index:-1;background:radial-gradient(circle,rgba(139,116,255,.28),rgba(20,210,238,.12) 40%,transparent 68%);transform:translate3d(-999px,-999px,0);will-change:transform;opacity:0;transition:opacity .4s}
.cglow.on{opacity:1}
.fxs{position:relative;transform-style:preserve-3d;will-change:transform;transition:transform .25s ease-out,border-color .3s}
.fxs::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(139,116,255,.20),transparent 45%)}
.fxs:hover::after{opacity:1}
.fxs:hover{border-color:rgba(182,156,255,.45)}
.mag{transition:transform .2s ease-out}
.phone{transition:transform .3s ease-out;will-change:transform}
@media (prefers-reduced-motion:reduce),(hover:none){.cglow{display:none}.fxs,.mag,.phone{transform:none!important}}
.alogo{position:relative;display:inline-grid;place-items:center;width:var(--z,30px);height:var(--z,30px);border-radius:50%;background:#14141C;border:1px solid color-mix(in srgb,var(--g) 50%,transparent);box-shadow:0 0 calc(var(--z,30px)*.45) color-mix(in srgb,var(--g) 40%,transparent);flex:none}
.alogo img{width:calc(100% * var(--s));height:calc(100% * var(--s));object-fit:contain;border-radius:0!important;display:block}
.mqi .alogo{--z:46px}.sag .alogo{--z:46px}
