.diagram-frame{box-sizing:border-box;background:#ffffff02;border:1px solid #383838;min-width:0}.node-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px;min-height:44px;padding:8px 14px;display:flex;position:relative}.node-card-inset{pointer-events:none;border:1px solid #292929;position:absolute;inset:3px}.node-card-name{color:#aaa;align-items:center;gap:7px;min-width:0;font-size:11px;display:flex}.node-card-icon{color:#777;flex-shrink:0}.node-card-label{overflow-wrap:anywhere;min-width:0}.node-card-detail{color:#858585;white-space:nowrap;margin-left:auto;font-size:11px}@media (width<=500px){.node-card{min-height:58px;padding-inline:8px}.node-card-name{font-size:10px}}.pulse-rim,.pulse-glow,.pulse-ring{pointer-events:none}.pulse-rim{fill:none}.tuning-panel,.tuning-panel-tab{z-index:50;cursor:default;font:400 11px/1.4 var(--font-text), monospace;color:#aaa;background:#0b0b0bf2;border:1px solid #333;position:fixed;bottom:12px;right:12px}.tuning-panel{width:300px;max-height:calc(100vh - 24px);padding:8px 10px 10px;overflow:auto}.tuning-panel-tab{cursor:pointer;padding:4px 8px}.tuning-panel header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.tuning-panel header span{color:#e8e4dc;flex:1}.tuning-panel button{font:inherit;color:#888;cursor:pointer;background:0 0;border:0;padding:0}.tuning-panel button:hover{color:#e8e4dc}.tuning-panel-row{grid-template-columns:84px 1fr 40px;align-items:center;gap:8px;height:20px;display:grid}.tuning-panel-row[data-locked] .tuning-panel-label{color:#e8e4dc;text-underline-offset:3px;text-decoration:underline}.tuning-panel-label{text-align:left}.tuning-panel-row output{text-align:right;font-variant-numeric:tabular-nums;color:#777}.tuning-panel input[type=range]{accent-color:#e8e4dc;width:100%;height:14px}.tunnel-scene{color:#aaa;font:13px/1.5 var(--font-text), monospace;font-variant-numeric:tabular-nums lining-nums;margin:0;padding:0 0 28px;position:relative;container-type:inline-size}.tunnel-panels{grid-template-columns:150px 180px minmax(0,1fr);align-items:center;gap:40px;padding-top:0;display:grid;position:relative}.tunnel-column{min-width:0}.tunnel-routes{gap:10px;padding:16px;display:grid}.tunnel-signals{z-index:2;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}@container (width>=900px){.tunnel-panels{grid-template-columns:200px 230px minmax(0,460px);justify-content:space-between;gap:80px}}.tunnel-relay-field{pointer-events:none;width:calc(100% - 2px);height:calc(100% - 2px);display:block;position:absolute;inset:1px}.tunnel-scene .node-card{flex-wrap:nowrap;gap:12px;min-height:52px;padding:10px 14px}.tunnel-scene .node-card-name{font:500 13px/18px var(--font-text), monospace;gap:10px}.tunnel-scene .node-card-label{white-space:nowrap;overflow-wrap:normal}.tunnel-scene .node-card-icon{width:16px;height:16px;display:inline-flex}.tunnel-scene .node-card-detail{font:400 12px/18px var(--font-text), monospace;color:#858585}.tunnel-card-field{pointer-events:none;width:calc(100% - 2px);height:calc(100% - 2px);display:block;position:absolute;inset:1px}.tunnel-scene .node-card-name,.tunnel-scene .node-card-detail{z-index:1;position:relative}.tunnel-scene .node-card[data-node=relay] .node-card-name{text-shadow:0 0 2px #000,0 0 4px #000,0 0 8px #000}.tunnel-machine{margin-top:24px;position:relative}.tunnel-machine-label{color:#aaa;font:400 12px/16px var(--font-text), monospace;margin-bottom:8px;position:absolute;bottom:100%;left:0}.tunnel-panels{cursor:pointer}.tunnel-sound{color:#fff;opacity:0;font:400 11px/16px var(--font-text), monospace;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;transition:opacity .2s;display:inline-flex;position:absolute;bottom:0;right:0}.tunnel-scene:hover .tunnel-sound,.tunnel-sound:focus-visible{opacity:.5}.tunnel-sound:focus-visible{outline-offset:4px;outline:1px solid #fff}@container (width<=560px){.tunnel-panels{grid-template-columns:52px minmax(96px,128px) 96px;justify-content:space-between;gap:16px}.tunnel-scene .node-card{justify-content:center;min-height:52px;padding:0}.tunnel-scene .node-card-label,.tunnel-scene .node-card-detail{display:none}.tunnel-scene .node-card-name{gap:0}.tunnel-scene .node-card-icon,.tunnel-scene .node-card-icon svg{width:20px;height:20px}.tunnel-routes{gap:14px;padding:14px}.tunnel-machine .tunnel-machine-label{white-space:nowrap;left:auto;right:0}.tunnel-visitor .node-card-icon{opacity:calc(1 - var(--choosing,0))}}.tunnel-machine .tunnel-routes{padding-left:84px}@container (width<=899px){.tunnel-machine .tunnel-routes{padding-left:64px}}@container (width<=560px){.tunnel-machine .tunnel-routes{padding-left:28px}}.tunnel-cipher-canvas{z-index:2;pointer-events:none;position:absolute;inset:0}.tunnel-gate-field{z-index:2;pointer-events:none;position:absolute}@container (width>=561px){.tunnel-routes .node-card-icon{display:none}}.og-card{--ink:#ff2a2a;--ink-dim:#ff2a2a8c;width:1200px;height:630px;color:var(--ink);font:400 14px/1.6 var(--font-text), monospace;text-transform:lowercase;background:#000;grid-template-columns:430px minmax(0,1fr);align-items:stretch;gap:0 40px;padding:90px 88px;display:grid;position:relative;overflow:hidden}.og-frame{border:1px solid var(--ink-dim);pointer-events:none;position:absolute;inset:24px}.og-reg{width:14px;height:14px;color:var(--ink);position:absolute}.og-reg-tl{top:-7.5px;left:-7.5px}.og-reg-tr{top:-7.5px;right:-7.5px}.og-reg-bl{bottom:-7.5px;left:-7.5px}.og-reg-br{bottom:-7.5px;right:-7.5px}.og-print{aspect-ratio:1;position:relative;overflow:hidden}.og-canvas{width:100%;height:100%;image-rendering:pixelated;display:block;position:absolute;inset:0}.og-right{filter:url(#ink);grid-template-rows:auto auto 1fr auto;display:grid}.og-print{filter:url(#ink)}.og-mark{position:relative;container-type:inline-size}.og-mark .splatter{width:54cqw;top:-40%}.og-wordmark{aspect-ratio:4.6;width:100%;color:var(--ink);font-family:var(--font-wordmark), sans-serif;text-transform:none;display:block;overflow:visible}.og-caption{text-transform:uppercase;margin:20px 0 0;font-size:22px;line-height:1.75}.og-caption b{align-items:center;font-weight:400;display:flex}.og-caption .fill{opacity:.6;border-bottom:1px dotted;flex:1;margin:0 .7em}.og-caption .tail{flex:none;margin-left:.6em;position:relative;top:.5px}.og-facts{grid-template-columns:repeat(3,1fr);align-self:end;gap:12px;margin:24px 0 20px;padding:0;list-style:none;display:grid}.og-facts li{border:1px solid var(--ink-dim);align-content:center;place-items:center;gap:14px;height:128px;display:grid}.og-facts b{letter-spacing:.1em;text-transform:uppercase;font-size:13px;font-weight:400}.og-foot{letter-spacing:.1em;justify-content:space-between;align-self:end;align-items:center;gap:24px;font-size:13px;display:flex}.og-barcode{width:240px;height:22px;color:var(--ink)}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-400.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-500.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Anton;src:url(/fonts/anton.woff2)format("woff2");font-weight:400;font-display:swap}:root{--font-text:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-wordmark:"Anton", Impact, "Arial Narrow Bold", sans-serif;--s1:8px;--s2:16px;--s3:32px;--s4:64px;--s5:128px}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:#000}body{color:#fff;font-family:var(--font-text), monospace;background:#000;margin:0}::selection{color:#000;background:#fff}a{color:#fff;text-decoration:none}main{width:min(100% - 48px,66ch);padding:var(--s5) 0 var(--s5);margin:0 auto;font-size:clamp(14px,2vw,17px)}.wordmark,.masthead h1,h2{filter:url(#ink)}.ink-defs{position:absolute}.ink-grain{pointer-events:none;z-index:5;mix-blend-mode:multiply;opacity:.2;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='260' height='260'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' seed='4'/><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncR type='linear' slope='4' intercept='-1.1'/><feFuncG type='linear' slope='4' intercept='-1.1'/><feFuncB type='linear' slope='4' intercept='-1.1'/></feComponentTransfer></filter><rect width='100%' height='100%' filter='url(%23g)'/></svg>");background-size:260px 260px;position:fixed;inset:0}.masthead{position:relative}.splatter{pointer-events:none;z-index:4;width:54cqw;position:absolute;transform:translate(-50%,-50%)}.masthead{grid-template-columns:calc(17.8571% - 2.85714px) minmax(0,1fr);align-items:stretch;gap:0 16px;display:grid;container-type:inline-size}.masthead-print{aspect-ratio:1;position:relative;overflow:hidden}.masthead-canvas{width:100%;height:100%;image-rendering:pixelated;display:block;position:absolute;inset:0}.wordmark{aspect-ratio:4.6;color:#ff2a2a;width:100%;font-family:var(--font-wordmark), sans-serif;display:block;overflow:visible}h1{font:400 1.5cqw/1.75 var(--font-text), monospace;letter-spacing:0;text-transform:uppercase;color:#ff2a2a;grid-area:2/1;margin:12px 0 0}h1 b{align-items:center;font-weight:400;display:flex}h1 .fill{opacity:.6;border-bottom:1px dotted;flex:1;margin:0 .7em}h1 .tail{flex:none;margin-left:.6em;position:relative;top:.5px}h2{margin:0 0 var(--s3);letter-spacing:.02em;font-size:clamp(20px,3.2vw,27px);font-weight:500}.description{margin:var(--s4) 0 0;font-size:clamp(15px,2vw,18px);line-height:1.7}.install{margin-top:var(--s3);font-size:clamp(14px,2vw,17px);line-height:1.7}.tabs{margin-bottom:var(--s1);gap:24px;display:flex}.tabs button{appearance:none;color:#fff;font:inherit;cursor:pointer;opacity:.45;background:0 0;border:0;margin:0;padding:0}.tabs a{opacity:.45}.tabs button:hover,.tabs a:hover,.tabs button[data-current]{opacity:1}.command{white-space:nowrap;overflow-x:auto}.usage,.sdk,.how,.privacy{margin-top:var(--s5)}pre{color:#fff;font:clamp(14px, 2vw, 17px)/1.8 var(--font-text), monospace;margin:0;overflow-x:auto}.output{opacity:.55}.steps{gap:var(--s3);counter-reset:step;grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;grid-template-columns:44px minmax(0,1fr);font-size:clamp(14px,2vw,17px);line-height:1.7;display:grid}.steps li:before{content:"0" counter(step);opacity:.45}.steps p{margin:0}.justified-line{white-space:nowrap;display:block}.privacy-list{gap:var(--s3);grid-template-columns:minmax(0,1fr);margin:0;display:grid}.privacy-list dt{margin-bottom:var(--s1);font-size:clamp(14px,2vw,17px);line-height:1.7}.privacy-list dd{opacity:.55;margin:0;font-size:clamp(14px,2vw,17px);line-height:1.7}.diagram-wrap{--bleed:min(940px, 100vw - 48px);width:var(--bleed);margin:var(--s4) 0 0 calc((100% - var(--bleed)) / 2)}@media (width<=600px){:root{--s4:48px;--s5:80px}main{width:min(100% - 32px,760px)}h1{grid-column:1/-1;font-size:11px}}@media (width<=380px){.tabs{justify-content:space-between;gap:12px}}.site-footer{padding:0 0 var(--s4);justify-content:center;display:flex}.copyright{color:#909090;font:400 13px/24px var(--font-text), monospace;position:relative}.copyright img{pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.copyright p{margin:0;position:relative}.copyright a{color:inherit;text-underline-offset:2px;-webkit-text-decoration:underline #fff3;text-decoration:underline #fff3}
