*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fafafc;--bg-alt:#fff;--text:#1d1d1f;--text-muted:#86868b;--text-soft:#c7c7cc;--accent:#7c3aed;--accent-soft:#7c3aed14;--border:#0000000f;--border-strong:#0000001a;--terminal:#0f172a;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 12px #0000000f;--shadow-lg:0 24px 60px -20px #0f172a38;--radius:16px;--radius-sm:10px;--radius-pill:999px;--nav-h:64px;--container:1200px}html,body{background:var(--bg);width:100%;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif}body{min-height:100vh}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.page{flex-direction:column;min-height:100vh;display:flex}main{flex:1}.btn{border-radius:var(--radius-pill);letter-spacing:-.005em;white-space:nowrap;align-items:center;gap:8px;padding:12px 22px;font-size:15px;font-weight:500;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.btn-sm{padding:8px 16px;font-size:13px}.btn-primary{background:var(--text);color:var(--bg-alt)}.btn-primary:hover{box-shadow:var(--shadow-md);background:#000;transform:translateY(-1px)}.btn-arrow{transition:transform .2s;display:inline-block}.btn:hover .btn-arrow{transform:translate(3px)}.topnav{height:var(--nav-h);-webkit-backdrop-filter:blur(20px)saturate(180%);border-bottom:1px solid var(--border);z-index:50;background:#fafafccc;position:sticky;top:0}.topnav-inner{max-width:var(--container);align-items:center;gap:32px;height:100%;margin:0 auto;padding:0 24px;display:flex}.topnav-brand{letter-spacing:-.01em;color:var(--text);align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.brand-mark{flex-shrink:0;width:22px;height:22px;display:block}.topnav-links{color:var(--text-muted);gap:28px;margin-left:auto;font-size:14px;font-weight:500;display:flex}.topnav-links a{transition:color .15s}.topnav-links a:hover{color:var(--text)}.hero{padding:80px 24px 96px}.hero-inner{max-width:var(--container);grid-template-columns:1.05fr .95fr;align-items:stretch;gap:64px;margin:0 auto;display:grid}.hero-left,.hero-right{flex-direction:column;justify-content:center;display:flex}.hero-headline{letter-spacing:-.035em;color:var(--text);font-size:clamp(40px,5.5vw,64px);font-weight:700;line-height:1.03}.accent{color:var(--accent)}.hero-sub{color:var(--text-muted);max-width:520px;margin-top:20px;font-size:17px;line-height:1.55}.hero-cta{align-items:center;gap:12px;margin-top:32px;display:flex}.terminal-card{background:var(--terminal);border-radius:var(--radius);box-shadow:var(--shadow-lg), 0 0 0 .5px #0f172a4d;animation:.32s cubic-bezier(.2,.8,.2,1) both riseIn;overflow:hidden}@keyframes riseIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.terminal-head{background:#ffffff08;border-bottom:.5px solid #ffffff14;align-items:center;gap:12px;padding:10px 14px;display:flex}.terminal-dots{gap:6px;display:inline-flex}.terminal-dots i{opacity:.85;border-radius:50%;width:9px;height:9px}.terminal-label{color:#f8fafc80;letter-spacing:.04em;text-transform:uppercase;font-family:SF Mono,Menlo,Consolas,monospace;font-size:11px}.terminal-copy{color:#f8fafccc;letter-spacing:.01em;background:#ffffff14;border:.5px solid #ffffff1f;border-radius:6px;margin-left:auto;padding:5px 11px;font-size:11px;font-weight:500;transition:background .15s,color .15s}.terminal-copy:hover{color:#f8fafc;background:#ffffff24}.terminal-copy.is-copied{color:#34c759;background:#34c75924;border-color:#34c7594d}.terminal-body{scrollbar-width:thin;scrollbar-color:#fff3 transparent;gap:10px;padding:18px;display:flex;overflow-x:auto}.terminal-body::-webkit-scrollbar{height:4px}.terminal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.terminal-prompt{color:#64748b;-webkit-user-select:none;user-select:none;flex-shrink:0;font-family:SF Mono,Menlo,Consolas,monospace;font-size:13px}.terminal-code{color:#f8fafc;white-space:nowrap;font-family:SF Mono,Menlo,Consolas,monospace;font-size:13px;line-height:1.55}.terminal-hint{color:#f8fafc8c;border-top:.5px solid #ffffff0f;padding:12px 18px 16px;font-size:12.5px;line-height:1.55}.terminal-hint a{color:#f8fafce6;text-underline-offset:3px;-webkit-text-decoration:underline #f8fafc40;text-decoration:underline #f8fafc40;transition:text-decoration-color .15s}.terminal-hint a:hover{text-decoration-color:#f8fafce6}.terminal-hint code{color:#f8fafc;background:#ffffff14;border-radius:4px;padding:1px 6px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.terminal-sep{color:#f8fafc4d;margin:0 8px}.terminal-video{background:#000;border-top:.5px solid #ffffff14;width:100%;height:auto;display:block}.stats{padding:0 24px 8px}.stats-inner{max-width:var(--container);background:var(--border);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);grid-template-columns:repeat(4,1fr);gap:1px;margin:0 auto;display:grid;overflow:hidden}.stat{background:var(--bg-alt);flex-direction:column;gap:6px;padding:22px 24px;display:flex}.stat-value{color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;align-items:center;min-height:33px;font-size:30px;font-weight:600;line-height:1.1;display:flex}.stat-label{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:500}.live-dot{background:#34c759;border-radius:50%;width:10px;height:10px;transition:opacity .8s;display:inline-block;box-shadow:0 0 0 4px #34c75926}.features{padding:80px 24px 96px}.features-inner{max-width:var(--container);margin:0 auto}.features-heading{text-align:center;margin-bottom:48px}.features-title{letter-spacing:-.025em;color:var(--text);font-size:clamp(28px,3.2vw,36px);font-weight:700;line-height:1.15}.features-sub{color:var(--text-muted);max-width:540px;margin-top:14px;margin-left:auto;margin-right:auto;font-size:16px;line-height:1.5}.features-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.feature-card{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);padding:28px;transition:transform .2s,box-shadow .2s,border-color .2s}.feature-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}.feature-icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border-radius:12px;justify-content:center;align-items:center;margin-bottom:18px;display:inline-flex}.feature-title{color:var(--text);letter-spacing:-.01em;margin-bottom:8px;font-size:17px;font-weight:600}.feature-desc{color:var(--text-muted);font-size:14px;line-height:1.55}.routers-page{padding:64px 24px 96px}.routers-inner{max-width:var(--container);margin:0 auto}.routers-heading{text-align:center;margin-bottom:48px}.routers-title{letter-spacing:-.03em;color:var(--text);font-size:clamp(36px,4.5vw,48px);font-weight:700;line-height:1.05}.routers-sub{color:var(--text-muted);max-width:560px;margin-top:16px;margin-left:auto;margin-right:auto;font-size:16px;line-height:1.55}.routers-empty{text-align:center;color:var(--text-muted);padding:64px 0;font-size:14px}.routers-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.router-card{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:24px 26px;transition:transform .2s,box-shadow .2s,border-color .2s;display:block;position:relative}.router-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}.router-card-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.router-card-live{color:#34c759;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;font-weight:600;display:inline-flex}.router-card-arrow{color:var(--text-soft);transition:color .15s,transform .15s}.router-card:hover .router-card-arrow{color:var(--accent);transform:translate(2px,-2px)}.router-card-region{letter-spacing:-.02em;color:var(--text);font-size:24px;font-weight:600;line-height:1.15}.router-card-coords{color:var(--text-muted);letter-spacing:.02em;margin-top:4px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:12px}.router-card-url{border-top:.5px solid var(--border);color:var(--text);letter-spacing:.01em;margin-top:16px;padding-top:16px;font-family:SF Mono,Menlo,Consolas,monospace;font-size:13px}@media (width<=820px){.routers-page{padding:48px 24px 72px}.routers-grid{grid-template-columns:1fr}}@media (width<=640px){.routers-page{padding:36px 20px 56px}.router-card{padding:20px}.router-card-region{font-size:20px}}.footer{border-top:1px solid var(--border);background:var(--bg);padding:32px 24px}.footer-inner{max-width:var(--container);color:var(--text-muted);justify-content:space-between;align-items:center;margin:0 auto;font-size:13px;display:flex}.footer-links{gap:16px;display:flex}.footer-links a{transition:color .15s}.footer-links a:hover{color:var(--text)}.how{padding:24px 24px 96px}.how-inner{max-width:var(--container);margin:0 auto}.how-heading{text-align:center;margin-bottom:36px}.how-title{letter-spacing:-.025em;color:var(--text);font-size:clamp(28px,3.2vw,36px);font-weight:700;line-height:1.15}.how-sub{color:var(--text-muted);max-width:560px;margin-top:14px;margin-left:auto;margin-right:auto;font-size:16px;line-height:1.5}.how-diagram-wrap{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:24px}.how-diagram{width:100%;height:auto;font-family:inherit;display:block}.how-node-bg{fill:var(--bg-alt);stroke:var(--border-strong);stroke-width:1px}.how-node-icon{color:#94a3b8}.how-node-label{fill:var(--text);font-size:14px;font-weight:600}.how-node-caption{fill:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.how-path{fill:none;stroke-linecap:round}.how-path-tunnel{stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:5 5;opacity:.65}.how-path-req{stroke:#3b82f6;stroke-width:1.5px;opacity:.22}.how-path-back{stroke:#10b981;stroke-width:1.5px;opacity:.22}.how-dot-req{fill:#3b82f6;filter:drop-shadow(0 0 6px #3b82f68c)}.how-dot-route{fill:var(--accent);filter:drop-shadow(0 0 6px #7c3aed8c)}.how-dot-back{fill:#10b981;filter:drop-shadow(0 0 6px #10b9818c)}.how-label{fill:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;text-anchor:middle;font-size:10px;font-weight:500}.how-label-req{fill:#3b82f6}.how-label-back{fill:#10b981}.how-steps{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;list-style:none;display:grid}.how-step{align-items:flex-start;gap:12px;display:flex}.how-step-num{background:var(--accent-soft);width:24px;height:24px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.how-step p{color:var(--text-muted);font-size:14px;line-height:1.55}.how-step p b{color:var(--text);font-weight:600}@media (prefers-reduced-motion:reduce){.how-dot{opacity:0!important}}.map-section{padding:0 24px 96px}.map-section-inner{max-width:var(--container);margin:0 auto}.map-section-heading{text-align:center;margin-bottom:36px}.map-section-title{letter-spacing:-.025em;color:var(--text);font-size:clamp(28px,3.2vw,36px);font-weight:700;line-height:1.15}.map-section-sub{color:var(--text-muted);margin-top:14px;font-size:16px}.map-section-frame{aspect-ratio:16/9;background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-height:640px;box-shadow:var(--shadow-md);position:relative;overflow:hidden}.world-map{width:100%;height:100%;position:relative}.world-canvas{cursor:grab;touch-action:none;width:100%;height:100%;display:block}.world-canvas:active{cursor:grabbing}.map-tooltip{z-index:30;pointer-events:none;color:#f8fafc;letter-spacing:.01em;background:#0f172ae6;border-radius:10px;padding:8px 10px;font-size:12px;font-weight:600;line-height:1;position:fixed;box-shadow:0 12px 30px #0f172a33}@media (width<=960px){.hero{padding:64px 24px 72px}.hero-inner{grid-template-columns:1fr;gap:48px}.hero-sub{max-width:none}.features-grid{grid-template-columns:1fr}.features{padding:64px 24px 72px}.map-section{padding:0 24px 72px}.map-section-frame{aspect-ratio:4/3}.how{padding:16px 24px 72px}.how-steps{grid-template-columns:1fr;gap:14px}.how-diagram-wrap{padding:16px}}@media (width<=640px){.topnav-links{display:none}.topnav-inner{gap:16px}.hero{padding:48px 20px 56px}.hero-headline{letter-spacing:-.03em;font-size:38px}.hero-sub{font-size:15px}.terminal-code,.terminal-prompt{font-size:12px}.stats{padding:0 20px 8px}.stats-inner{grid-template-columns:repeat(2,1fr)}.stat{padding:18px 20px}.stat-value{font-size:24px}.features{padding:48px 20px 56px}.feature-card{padding:22px}.map-section{padding:0 20px 56px}.map-section-frame{aspect-ratio:1}.how{padding:8px 20px 56px}.how-diagram-wrap{padding:12px}.footer-inner{flex-direction:column;gap:12px}}
