.landing{--ink: #edf2fa;--muted: #9ba8bc;--accent: #83acff;--accent-bright: #83acff;--lp-bg: #090c12;--lp-panel: #121925;--lp-line: #252e3e;background:var(--lp-bg);color:var(--ink);color-scheme:dark;min-height:100vh}.landing h1,.landing h2,.landing h3{font-family:var(--sans)}.landing a{text-decoration:none}.landing a:hover{color:#fff}.landing p{text-wrap:pretty}.lp-wrap{width:min(1240px,100% - 96px);margin-inline:auto}.lp-skip{position:absolute;top:-80px;left:24px;z-index:60;padding:12px 20px;background:var(--lp-panel)}.lp-skip:focus{top:12px}.lp-header{border-bottom:1px solid #1c2330}.lp-nav{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:88px}.landing .wordmark{font-family:var(--sans);font-size:21px;letter-spacing:-.7px;gap:10px}.lp-nav-links,.lp-nav-actions{display:flex;align-items:center;gap:30px}.lp-nav a:not(.wordmark):not(.lp-button),.lp-footer a:not(.wordmark){color:var(--muted);font-size:14px}.lp-nav a:hover,.lp-footer a:hover{color:#fff}.lp-button{display:inline-flex;justify-content:center;align-items:center;gap:28px;min-height:50px;padding:13px 20px;border:1px solid #a5c2ff;border-radius:6px;background:#a5c2ff;color:#0a162c;font-size:15px;font-weight:650;white-space:nowrap}.landing .lp-button:hover{background:#c3d6ff;color:#0a162c;border-color:#c3d6ff}.lp-button--small{min-height:38px;padding:8px 13px;font-size:13px;gap:18px;background:#19243a;color:#d4e1ff;border-color:#33476a}.lp-hero{display:grid;grid-template-columns:1fr 1fr;gap:0 62px;padding-top:84px}.lp-hero-copy{padding-top:35px}.lp-hero h1{font-size:clamp(56px,6.15vw,84px);letter-spacing:-.065em;line-height:1.06;font-weight:560;margin:0 0 29px}.lp-lead{max-width:440px;font-size:21px;line-height:1.5;color:#c9d2e1;letter-spacing:-.3px}.lp-hero-detail{color:var(--muted);font-size:15px;line-height:1.8;max-width:425px;margin-top:19px}.lp-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:32px}.lp-text-link{font-size:14px;color:#c4cede;border-bottom:1px solid #596477;padding-block:5px}.lp-signup-note{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;margin-top:18px}.lp-signup-note svg{flex-shrink:0}.lp-hero-foot{grid-column:1 / -1;display:flex;gap:38px;align-items:center;padding:47px 0 32px;color:#a8b3c5;font-size:13px}.lp-hero-foot>span{display:inline-flex;align-items:center;gap:9px}.lp-hero-foot svg{color:#7889a4}.lp-demo{position:relative;margin:0;min-width:0;padding:0 15px}.lp-demo:before{content:"";pointer-events:none;position:absolute;inset:-32px -25px 15px;background-image:radial-gradient(#34435c .7px,transparent .7px);background-size:16px 16px;opacity:.35;mask-image:linear-gradient(transparent,black 20%,black 75%,transparent)}.lp-demo>*{position:relative}.lp-demo-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;color:#b5c2d7;font-size:12px}.lp-demo-label>:last-child{color:#91a0b8;font-size:11px}.lp-machine{background:#0f141f;border:1px solid #36435a;border-radius:8px;overflow:hidden;box-shadow:0 14px 50px #0004}.lp-window-bar{display:flex;align-items:center;gap:12px;padding:13px 15px;border-bottom:1px solid var(--lp-line);font-size:11px;color:#aeb9cb}.lp-window-dots{display:flex;gap:5px}.lp-window-dots i{width:6px;height:6px;background:#485266;border-radius:50%}.lp-online{display:flex;align-items:center;gap:6px;margin-left:auto;color:#a9bccc}.lp-online i,.lp-response i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#8dd8bb}.lp-terminal{font-family:var(--mono);font-size:12px;padding:18px 16px}.lp-prompt{color:#7e93b3}.lp-terminal-command{color:#dee7f8}.lp-services{border-top:1px solid #202938;padding:5px}.lp-service{display:flex;align-items:center;gap:20px;width:100%;min-height:39px;font:12px var(--sans);color:#aebbd0;background:transparent;border:1px solid transparent;border-radius:4px;padding:8px 10px;text-align:left;cursor:pointer}.lp-service svg{margin-left:auto;width:12px;opacity:.5}.lp-service-port{font-family:var(--mono);color:#c7d4ec}.lp-service[aria-pressed=true]{background:#1c2c47;border-color:#304e7d;color:#e5eeff}.lp-service[aria-pressed=true] svg{opacity:1;color:#9abdff}.lp-service:hover{background:#1a2538}.lp-tunnel{display:flex;align-items:center;justify-content:center;height:83px}.lp-tunnel-line{position:absolute;left:50%;top:0;bottom:0;width:1px;background:#729be7}.lp-tunnel-line:before,.lp-tunnel-line:after{content:"";position:absolute;width:5px;height:5px;background:#a1c3ff;border-radius:50%;left:-2px}.lp-tunnel-line:before{top:0}.lp-tunnel-line:after{bottom:0}.lp-tunnel-label{position:relative;display:flex;align-items:center;gap:7px;background:#101a2b;border:1px solid #334968;color:#b5cefb;border-radius:20px;padding:7px 11px;font-size:10px}.lp-tunnel-label svg{width:12px;height:12px}.lp-tunnel-label>span{color:#9cadc8;border-left:1px solid #37465e;padding-left:7px}.lp-browser{border:1px solid #3b4b66;border-radius:8px;overflow:hidden;background:#141d2c;box-shadow:0 15px 55px #0005}.lp-browser-bar{display:flex;align-items:center;gap:8px;padding:11px 14px;font-size:11px;color:#cad6e9}.lp-browser-bar>svg{width:13px}.lp-browser-private{display:flex;align-items:center;gap:5px;margin-left:auto;color:#a0b3cf;font-size:10px}.lp-browser-private svg{width:10px;height:10px}.lp-address-row{display:flex;align-items:center;gap:7px;margin:0 10px 10px;padding:8px;background:#0c121e;border:1px solid #26344a;border-radius:4px;font:10px var(--mono)}.lp-address-row>svg{color:#7d8da8;width:12px;height:12px}.lp-address-row>:last-child{margin-left:auto;color:#8d9fbb;font:9px var(--sans)}.lp-browser-content{background:#dce6f6;color:#18283f;height:180px;overflow:hidden}.lp-sample-app,.lp-sample-dashboard{padding:16px 20px}.lp-sample-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px}.lp-sample-top>:last-child{color:#52647e;font-size:9px}.lp-sample-brand{font-weight:600;display:flex;gap:5px;align-items:center}.lp-sample-brand>span{font-size:16px}.lp-sample-center{display:flex;align-items:center;flex-direction:column;padding-top:12px}.lp-sample-symbol{color:#496cba;font-size:34px;line-height:1.2}.lp-sample-center strong{font-size:23px;font-weight:550;letter-spacing:-.8px}.lp-sample-center>:last-child{font-size:10px;color:#596c87;margin-top:5px}.lp-response{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font:9px var(--mono);color:#a5b6d2}.lp-response>:first-child{display:inline-flex;align-items:center;gap:6px}.lp-demo figcaption{margin-top:13px;text-align:center;font-size:11px;color:#a5b3cb;min-height:38px}.lp-demo-hint{display:block;color:#8393ac;font-size:10px;margin-top:3px}.lp-json{margin:0;padding:25px;font:12px/1.9 var(--mono);color:#283e64}.lp-json .lp-code-key{color:#37559c}.lp-code-value{color:#27694c}.lp-chart{display:flex;align-items:end;gap:8px;height:96px;margin:14px 0 8px;border-bottom:1px solid #abbfdc}.lp-chart span{flex:1;background:#6a8fda;border-radius:2px 2px 0 0}.lp-sample-bottom{display:flex;justify-content:space-between;font-size:10px;color:#52647e}.lp-usecases{border-block:1px solid #252d3a;background:#0d111a}.lp-usecase-grid{display:grid;grid-template-columns:repeat(3,1fr)}.lp-usecase-grid article{padding:32px 32px 34px;border-left:1px solid #252d3a}.lp-usecase-grid article:first-child{border-left:0;padding-left:0}.lp-usecase-grid article:last-child{padding-right:0}.lp-port-label{font:11px var(--mono);color:#90a7ce}.lp-port-label>span{color:#6584b8;margin-right:6px}.lp-usecase-grid h2{font-size:18px;letter-spacing:-.4px;margin-top:15px;font-weight:550}.lp-usecase-grid p{font-size:14px;line-height:1.75;color:var(--muted);margin-top:9px;max-width:325px}.lp-section{padding-block:100px;scroll-margin-top:24px}.lp-section-title{font-size:clamp(32px,3.5vw,46px);letter-spacing:-.045em;line-height:1.12;font-weight:550}.lp-section-description{margin-top:20px;color:var(--muted);font-size:16px;line-height:1.75;max-width:430px}.lp-setup{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.lp-steps{list-style:none;counter-reset:setup;margin:35px 0 0;padding:0}.lp-steps li{counter-increment:setup;position:relative;padding:0 0 25px 43px}.lp-steps li:last-child{padding-bottom:0}.lp-steps li:before{content:counter(setup);position:absolute;top:0;left:0;width:25px;height:25px;display:grid;place-items:center;border:1px solid #34415a;border-radius:50%;color:#a7bee5;font:11px var(--mono);background:var(--lp-bg);z-index:1}.lp-steps li:not(:last-child):after{content:"";position:absolute;left:12px;top:25px;bottom:0;width:1px;background:#273143}.lp-steps h3{font-size:16px;font-weight:550;padding-top:1px}.lp-steps p{margin-top:7px;color:var(--muted);font-size:14px;line-height:1.7;max-width:360px}.lp-install{border:1px solid #303b50;border-radius:8px;background:#101620;overflow:hidden}.lp-install-head{display:flex;justify-content:space-between;gap:15px;padding:17px 22px;border-bottom:1px solid var(--lp-line);font-size:13px}.lp-install-head>:last-child{font-size:11px;color:var(--muted)}.lp-install-body{padding:27px 22px}.lp-code-note{color:#8c9cb6;font:10px/1.7 var(--mono)}.lp-install pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0 0;font:11px/2 var(--mono);color:#d3dff2}.lp-code-key{color:#9abaff}.lp-install-divider{height:1px;background:#252e3e;margin:30px 0 23px}.lp-install-result{display:flex;gap:13px}.lp-install-result>svg{color:#9abaff;margin-top:3px;flex-shrink:0}.lp-install-result strong{font-size:13px;font-weight:500}.lp-install-result p{font-size:12px;line-height:1.7;color:var(--muted);margin-top:5px;max-width:280px}.lp-install-foot{border-top:1px solid #252e3e;padding:16px 22px;display:flex;flex-wrap:wrap;gap:9px 18px;justify-content:space-between;font-size:11px;color:var(--muted)}.lp-architecture{border-block:1px solid #252d3a;background:#0d111a}.lp-section-heading{display:flex;justify-content:space-between;gap:60px;align-items:center}.lp-section-heading .lp-section-description{margin-top:0}.lp-network{padding:42px 55px 26px;margin-top:43px;border:1px solid #2b374b;border-radius:8px;background:#0b1019}.lp-control{display:flex;gap:13px;align-items:center;width:fit-content;margin:0 auto;padding:14px 22px;border:1px solid #34415a;border-radius:5px;background:#121a27}.lp-control strong,.lp-network strong{font-size:13px;font-weight:500;display:block}.lp-control span,.lp-network-node span,.lp-relay span{display:block;color:var(--muted);font-size:11px;margin-top:4px}.lp-control-lines{height:49px;width:calc(100% - 160px);margin:20px auto 0;border:1px dashed #3a4a65;border-bottom:0;border-radius:12px 12px 0 0;position:relative}.lp-control-lines:before{content:"";position:absolute;bottom:100%;left:50%;height:20px;border-left:1px dashed #3a4a65}.lp-network-route{display:grid;grid-template-columns:190px 1fr 158px 1fr 190px;align-items:center}.lp-network-node{border:1px solid #3b4b66;border-radius:6px;background:#151e2e;padding:21px 15px;text-align:center}.lp-network-node>svg{color:#a5c2ff;width:24px;height:24px;margin-bottom:8px}.lp-network-wire{height:2px;background:#709de9;position:relative}.lp-network-wire:after{content:"";position:absolute;height:6px;width:6px;border-right:1px solid #a5c2ff;border-top:1px solid #a5c2ff;transform:rotate(45deg);right:4px;top:-2px}.lp-relay{text-align:center;padding:17px 10px;border:1px solid #41618d;border-radius:30px;background:#14213a}.lp-relay>svg{color:#9abaff;margin-bottom:4px}.lp-network-caption{color:#9bb8e9;font:11px var(--mono);text-align:center;margin-top:25px}.lp-architecture-notes{display:grid;grid-template-columns:1fr 1fr;gap:75px;margin-top:30px}.lp-architecture-notes h3{font-size:16px;font-weight:500}.lp-architecture-notes p{color:var(--muted);font-size:14px;line-height:1.8;margin-top:9px;max-width:465px}.lp-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.lp-questions{border-top:1px solid var(--lp-line)}.lp-questions details{border-bottom:1px solid var(--lp-line)}.lp-questions summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;cursor:pointer;font-size:16px;list-style:none}.lp-questions summary::-webkit-details-marker{display:none}.lp-questions summary svg{flex-shrink:0;color:#8599b9}.lp-questions details[open] summary svg{transform:rotate(45deg)}.lp-questions details p{font-size:14px;line-height:1.8;color:var(--muted);padding:0 32px 23px 0}.lp-closing{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #34425b;padding-block:64px 78px}.lp-closing h2{font-size:42px;line-height:1.15;letter-spacing:-.045em;font-weight:550}.lp-closing-action{text-align:center}.lp-closing-action p{color:var(--muted);font-size:12px;margin-top:14px}.lp-footer{border-top:1px solid #242e3f;padding-block:32px 27px}.lp-footer-top,.lp-footer-bottom{display:flex;justify-content:space-between;gap:24px;align-items:center}.lp-footer-top nav{display:flex;gap:25px}.lp-footer-bottom{margin-top:27px;color:#8696ad;font-size:12px}.lp-footer .lp-footer-bottom a{font-size:inherit;text-decoration:underline;text-underline-offset:3px}@media(min-width:1500px){.lp-hero{padding-top:105px}.lp-hero-foot{padding-top:60px}}@media(max-width:1100px){.lp-wrap{width:calc(100% - 64px)}.lp-nav-links,.lp-nav-actions{gap:20px}.lp-hero{gap:0 28px;padding-top:60px}.lp-hero h1{font-size:64px}.lp-hero-copy{padding-top:35px}.lp-demo{padding:0}.lp-hero-actions{gap:17px}.lp-lead{font-size:19px}.lp-hero-detail{font-size:14px}.lp-setup{gap:44px}.lp-faq{gap:50px}.lp-network{padding-inline:32px}.lp-network-route{grid-template-columns:170px 1fr 140px 1fr 170px}}@media(max-width:850px){.lp-nav-links{display:none}.lp-nav{min-height:76px}.lp-hero{grid-template-columns:1fr;gap:45px;padding-top:35px}.lp-hero-copy{padding-top:0;max-width:620px}.lp-hero h1{font-size:76px}.lp-lead{max-width:540px;font-size:21px}.lp-hero-detail{max-width:520px}.lp-demo{max-width:510px;width:100%;justify-self:center}.lp-hero-foot{padding-top:0;gap:20px;justify-content:space-between;font-size:11px}.lp-usecase-grid article{padding-inline:20px}.lp-usecase-grid h2{font-size:17px}.lp-section{padding-block:72px}.lp-setup{gap:40px;grid-template-columns:1fr}.lp-install{max-width:580px}.lp-steps p{max-width:520px}.lp-section-heading{gap:30px;align-items:start}.lp-section-heading .lp-section-description{max-width:300px;font-size:14px}.lp-network{padding-inline:24px}.lp-network-route{grid-template-columns:145px 1fr 120px 1fr 145px}.lp-network-node{padding-inline:8px}.lp-network-node span,.lp-relay span{font-size:9px}.lp-architecture-notes{gap:35px}.lp-faq{grid-template-columns:1fr;gap:30px}.lp-faq h2 br{display:none}.lp-closing h2{font-size:34px}}@media(max-width:580px){.lp-wrap{width:calc(100% - 40px)}.landing .wordmark{font-size:18px;gap:8px}.lp-nav{gap:10px;min-height:70px}.lp-nav-actions{gap:12px}.lp-signin{display:none}.lp-nav .lp-button--small{font-size:11px;padding:8px 10px;gap:9px}.lp-button--small svg{width:13px}.lp-hero{padding-top:44px;gap:38px}.lp-hero h1{font-size:clamp(49px,12vw,68px);margin-bottom:22px}.lp-lead{font-size:19px}.lp-hero-detail{margin-top:16px;font-size:14px}.lp-hero-actions{margin-top:26px;gap:19px}.lp-button{gap:20px}.lp-text-link{font-size:13px}.lp-signup-note{font-size:11px}.lp-demo:before{inset-inline:-10px}.lp-demo-label{font-size:11px}.lp-demo-label>:last-child{font-size:10px}.lp-online{font-size:10px}.lp-window-bar{gap:8px}.lp-browser-content{height:170px}.lp-sample-center strong{font-size:22px}.lp-tunnel{height:70px}.lp-response{font-size:9px;padding-inline:9px}.lp-hero-foot{flex-wrap:wrap;justify-content:flex-start;gap:14px 22px;padding-bottom:27px;font-size:11px}.lp-usecase-grid{grid-template-columns:1fr}.lp-usecase-grid article,.lp-usecase-grid article:first-child,.lp-usecase-grid article:last-child{border-left:0;padding:27px 0}.lp-usecase-grid article+article{border-top:1px solid #252d3a}.lp-usecase-grid p{max-width:none}.lp-usecase-grid h2{font-size:19px;margin-top:11px}.lp-section{padding-block:58px}.lp-section-title{font-size:35px}.lp-section-description{font-size:15px;margin-top:17px}.lp-setup{gap:32px}.lp-steps{margin-top:28px}.lp-steps li{padding-left:38px}.lp-install-head,.lp-install-foot{padding:15px}.lp-install-body{padding:22px 15px}.lp-install pre{font-size:10px}.lp-code-note{font-size:9px}.lp-section-heading{display:block}.lp-section-heading .lp-section-description{max-width:none;margin-top:20px}.lp-network{margin-top:30px;padding:25px 16px}.lp-control{padding:12px 15px}.lp-control strong{font-size:12px}.lp-control span{font-size:10px}.lp-control-lines{display:none}.lp-network-route{display:flex;flex-direction:column;margin-top:30px}.lp-network-node{width:100%;display:grid;grid-template-columns:32px 1fr;text-align:left;padding:15px;align-items:center}.lp-network-node>svg{grid-row:span 2;margin:0;width:20px}.lp-network-node span{font-size:11px}.lp-network-wire{width:2px;height:26px}.lp-network-wire:after{transform:rotate(135deg);right:-2px;top:14px}.lp-relay{width:155px;border-radius:8px}.lp-relay span{font-size:10px}.lp-network-caption{font-size:10px;line-height:1.8}.lp-architecture-notes{grid-template-columns:1fr;gap:25px;margin-top:27px}.lp-questions summary{font-size:15px;padding-block:20px}.lp-questions details p{padding-right:0}.lp-faq h2 br{display:initial}.lp-closing{flex-direction:column;align-items:flex-start;gap:28px;padding-block:43px 50px}.lp-closing h2{font-size:34px}.lp-closing-action{text-align:left}.lp-footer{padding-block:25px}.lp-footer-top{flex-wrap:wrap;gap:22px}.lp-footer-top nav{gap:23px}.lp-footer-bottom{flex-direction:column;align-items:flex-start;gap:9px;margin-top:22px;font-size:11px}}.docs-page{background:var(--panel)}.docs-header{border-bottom:1px solid var(--line);padding:1.2rem 0}.docs-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1180px;margin:auto;padding:0 2rem}.docs-header nav{display:flex;gap:1.4rem;align-items:center;font-size:.875rem}#docs-theme{display:flex}.docs-layout{display:grid;grid-template-columns:220px minmax(0,760px);gap:4rem;max-width:1180px;margin:auto;padding:3rem 2rem 6rem}.docs-toc{position:sticky;top:2rem;align-self:start;font-size:.875rem;max-height:calc(100vh - 4rem);overflow-y:auto}.docs-toc a{display:block;padding:.45rem 0;color:var(--ink-2);text-decoration:none}.docs-toc a:hover{color:var(--accent);text-decoration:underline}.docs-toc__downloads{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--line)}.docs-content{min-width:0;color:var(--ink-2);font-size:1rem;line-height:1.75}.docs-content h1{font:600 clamp(2.2rem,4vw,3.5rem)/1.1 var(--display);letter-spacing:-.04em;color:var(--ink);margin:0 0 1.5rem}.docs-content h2{font:600 1.75rem/1.3 var(--display);color:var(--ink);margin:3.5rem 0 1.2rem;padding-top:1rem;border-top:1px solid var(--line);scroll-margin-top:1.5rem}.docs-content h3{font:600 1.15rem/1.4 var(--sans);margin:2rem 0 1rem;color:var(--ink)}.docs-content p,.docs-content ul{margin:1rem 0}.docs-content ul{padding-left:1.3rem}.docs-content li{margin:.45rem 0}.docs-content a{color:var(--accent-ink);text-underline-offset:.2em}.docs-content code{font:.83em/1.6 var(--mono);overflow-wrap:anywhere;background:var(--panel-2);padding:.15em .3em;border-radius:3px;color:var(--ink)}.docs-content pre{position:relative;background:var(--code-bg);padding:1.4rem;border-radius:var(--radius);overflow:auto;margin:1.5rem 0}.docs-content pre code{color:var(--code-fg);padding:0;background:none;overflow-wrap:normal}.docs-table{overflow-x:auto;margin:1.5rem 0}.docs-content table{border-collapse:collapse;font-size:.875rem;width:100%;text-align:left}.docs-content th,.docs-content td{padding:.75rem;border-bottom:1px solid var(--line);vertical-align:top}.docs-content th{color:var(--ink);background:var(--panel-2);font-weight:600}.docs-content td:first-child{min-width:10rem}.docs-content footer{margin-top:4rem;padding-top:1rem;border-top:1px solid var(--line);font-size:.875rem}.docs-skip{position:fixed;top:-100px;left:1rem;z-index:100;padding:1rem;background:var(--panel)}.docs-skip:focus{top:1rem}@media(max-width:850px){.docs-layout{grid-template-columns:minmax(0,1fr);gap:2rem;padding:2rem 1.25rem 4rem}.docs-toc{position:static;max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}.docs-toc__downloads{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:0 1rem}.docs-header__inner{padding:0 1.25rem}.docs-header nav{gap:.75rem}.docs-content h2{margin-top:2.5rem}}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/bricolage-grotesque-latin.woff2) format("woff2")}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/instrument-sans-latin.woff2) format("woff2")}:root{color-scheme:light;--bg: #eceef1;--bg-grid: rgba(25, 27, 33, .035);--panel: #fafbfc;--panel-2: #f2f4f6;--ink: #191b21;--ink-2: #414652;--muted: #6d7380;--line: rgba(25, 27, 33, .12);--line-strong: rgba(25, 27, 33, .24);--accent: #b45309;--accent-bright: #f59e0b;--accent-soft: rgba(245, 158, 11, .14);--accent-ink: #8a4a07;--green: #15803d;--green-bright: #22c55e;--green-soft: rgba(34, 197, 94, .14);--red: #b91c1c;--red-soft: rgba(185, 28, 28, .1);--blue: #1d4ed8;--topbar-bg: rgba(236, 238, 241, .86);--backdrop: rgba(25, 27, 33, .45);--hover-wash: rgba(25, 27, 33, .05);--btn-primary-bg: #191b21;--btn-primary-fg: #ffffff;--btn-primary-hover: #2a2e37;--input-bg: #ffffff;--code-bg: #17191f;--code-fg: #e8eaf0;--code-line: rgba(255, 255, 255, .08);--toast-bg: #191b21;--toast-fg: #ffffff;--alert-error-bg: rgba(185, 28, 28, .1);--alert-error-line: rgba(185, 28, 28, .3);--alert-error-fg: #7f1d1d;--alert-ok-bg: rgba(34, 197, 94, .14);--alert-ok-line: rgba(21, 128, 61, .3);--alert-ok-fg: #14532d;--led-off: #c3c8d0;--shadow: 0 1px 2px rgba(25, 27, 33, .06), 0 8px 24px -16px rgba(25, 27, 33, .25);--modal-shadow: 0 24px 64px -24px rgba(25, 27, 33, .5);--mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--sans: "Instrument Sans", system-ui, -apple-system, sans-serif;--display: "Bricolage Grotesque", "Instrument Sans", system-ui, sans-serif;--radius: 6px}[data-color-scheme=dark]{color-scheme:dark;--bg: #101319;--bg-grid: rgba(232, 235, 241, .045);--panel: #171a21;--panel-2: #1d212a;--ink: #e8ebf1;--ink-2: #b7bdc9;--muted: #7f8695;--line: rgba(232, 235, 241, .11);--line-strong: rgba(232, 235, 241, .2);--accent: #e8a33d;--accent-bright: #fbbf24;--accent-soft: rgba(251, 191, 36, .16);--accent-ink: #f0b45a;--green: #4ade80;--green-bright: #34d399;--green-soft: rgba(52, 211, 153, .18);--red: #f87171;--red-soft: rgba(248, 113, 113, .14);--blue: #7aa2ff;--topbar-bg: rgba(16, 19, 25, .82);--backdrop: rgba(6, 8, 12, .62);--hover-wash: rgba(232, 235, 241, .06);--btn-primary-bg: #e8ebf1;--btn-primary-fg: #12151b;--btn-primary-hover: #ffffff;--input-bg: #12151c;--code-bg: #0b0e13;--code-fg: #dfe3ea;--code-line: rgba(255, 255, 255, .1);--toast-bg: #22262f;--toast-fg: #e8ebf1;--alert-error-bg: rgba(248, 113, 113, .12);--alert-error-line: rgba(248, 113, 113, .32);--alert-error-fg: #fecaca;--alert-ok-bg: rgba(52, 211, 153, .12);--alert-ok-line: rgba(52, 211, 153, .3);--alert-ok-fg: #bbf7d0;--led-off: #444b58;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px -16px rgba(0, 0, 0, .7);--modal-shadow: 0 24px 64px -24px rgba(0, 0, 0, .75)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background-color:var(--bg);background-image:linear-gradient(var(--bg-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px);background-size:28px 28px;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:-.015em;margin:0}p{margin:0}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px;border-radius:2px}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.shell{min-height:100vh;display:flex;flex-direction:column}.wrap{width:100%;max-width:74rem;margin:0 auto;padding:0 1.5rem}.topbar{position:sticky;top:0;z-index:40;background:var(--topbar-bg);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.topbar__inner{display:flex;align-items:center;gap:1rem;height:3.5rem}.logomark{display:inline-block;vertical-align:-.125em;color:var(--ink)}.logomark__node{fill:var(--accent-bright)}.wordmark{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--display);font-weight:650;font-size:1.0625rem;letter-spacing:-.01em;color:var(--ink);text-decoration:none;white-space:nowrap}.topbar__spacer{flex:1}.topbar__user{display:flex;align-items:center;gap:.75rem;color:var(--muted);font-size:.875rem}.topbar .topbar__account-icon{display:none;border-color:transparent;color:var(--muted)}.topbar .topbar__account-icon:hover{background:var(--hover-wash);color:var(--ink)}.topbar__user-link{color:var(--ink-2);text-decoration:none}.topbar__user-link:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:var(--radius);font-family:var(--sans);font-size:.9375rem;font-weight:550;line-height:1;padding:.625rem 1rem;cursor:pointer;text-decoration:none;transition:background-color .12s ease,border-color .12s ease,transform 60ms ease;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--btn-primary-bg);color:var(--btn-primary-fg);box-shadow:inset 0 1px #ffffff24}[data-color-scheme=dark] .btn--primary{box-shadow:none}.btn--primary:hover{background:var(--btn-primary-hover)}.btn--accent{background:var(--accent);color:#fff}.btn--accent:hover{filter:brightness(.92)}.btn--ghost{background:transparent;border-color:var(--line-strong);color:var(--ink)}.btn--ghost:hover{background:var(--hover-wash)}.btn--text{background:none;border:none;padding:.25rem .375rem;color:var(--ink-2);font-size:.875rem}.btn--text:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.btn--danger-text{background:none;border:none;padding:.25rem .375rem;color:var(--red);font-size:.875rem}.btn--danger-text:hover{text-decoration:underline;text-underline-offset:3px}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--sm{padding:.4375rem .75rem;font-size:.875rem}.btn--xs{padding:.25rem .5rem;font-size:.8125rem}.btn--lg{padding:.8125rem 1.375rem;font-size:1rem}.btn--block{width:100%}.theme-toggle{appearance:none;display:inline-flex;align-items:center;justify-content:center;flex:none;width:2.25rem;height:2.25rem;border-radius:var(--radius);border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;transition:background-color .12s ease,color .12s ease}.theme-toggle:hover{background:var(--hover-wash);color:var(--ink)}.led{flex:none;width:8px;height:8px;border-radius:50%;background:var(--led-off)}.led--on{background:var(--green-bright);box-shadow:0 0 0 3px var(--green-soft),0 0 8px color-mix(in srgb,var(--green-bright) 60%,transparent)}.led--wait{background:var(--accent-bright);box-shadow:0 0 0 3px var(--accent-soft);animation:led-pulse 1.4s ease-in-out infinite}.led--err{background:#ef4444;box-shadow:0 0 0 3px var(--red-soft)}@keyframes led-pulse{0%,to{opacity:1}50%{opacity:.35}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.panel--shadow{box-shadow:var(--shadow)}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.card__header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line);flex-wrap:wrap}.card__title{font-family:var(--display);font-weight:600;font-size:1.0625rem;display:flex;align-items:center;gap:.625rem;min-width:0}.card__meta{color:var(--muted);font-size:.875rem}.card__spacer{flex:1}.card__body{padding:1.25rem}.card+.card{margin-top:1rem}.chip{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--ink-2);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:.125rem .625rem;white-space:nowrap}.chip--mono{font-family:var(--mono);font-size:.8125rem}.chip--public{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-soft);color:var(--accent-ink)}.chip--private{color:var(--muted)}.chip--xs{font-size:.6875rem;padding:.0625rem .5rem;gap:.25rem}.chip--xs svg{width:12px;height:12px}.field{display:flex;flex-direction:column;gap:.375rem;min-width:0}.field__label{font-size:.875rem;font-weight:550;color:var(--ink-2)}.field__hint{font-size:.8125rem;color:var(--muted)}.input{font-family:var(--sans);font-size:.9375rem;color:var(--ink);background:var(--input-bg);border:1px solid var(--line-strong);border-radius:var(--radius);padding:.5625rem .75rem;width:100%}.input:focus{outline:2px solid var(--accent-bright);outline-offset:1px;border-color:transparent}.input--mono{font-family:var(--mono)}.codeblock{position:relative;background:var(--code-bg);color:var(--code-fg);border-radius:var(--radius);border:1px solid var(--code-line);font-family:var(--mono);font-size:.8125rem;line-height:1.6;padding:.875rem 3.25rem .875rem 1rem;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.codeblock__copy{position:absolute;top:.5rem;right:.5rem;background:#ffffff14;color:var(--code-fg);border:1px solid rgba(255,255,255,.14);border-radius:4px;font-size:.75rem;font-family:var(--sans);padding:.25rem .5rem;cursor:pointer}.codeblock__copy:hover{background:#ffffff29}.alert{border-radius:var(--radius);padding:.75rem .875rem;font-size:.875rem;border:1px solid transparent}.alert--error{background:var(--alert-error-bg);border-color:var(--alert-error-line);color:var(--alert-error-fg)}.alert--ok{background:var(--alert-ok-bg);border-color:var(--alert-ok-line);color:var(--alert-ok-fg)}.alert--note{background:var(--panel-2);border-color:var(--line);color:var(--ink-2)}.svc{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;border-top:1px solid var(--line);flex-wrap:wrap}.svc:first-child{border-top:none}.svc__port{font-family:var(--mono);font-size:.875rem;font-weight:600;color:var(--ink)}.svc__label{color:var(--ink-2);font-size:.9375rem}.svc__state{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--muted);min-width:9.5rem}.svc__actions{margin-left:auto;display:flex;align-items:center;gap:.5rem}.svc__add{display:flex;align-items:flex-end;gap:.75rem;padding:.875rem 1.25rem;border-top:1px dashed var(--line);background:var(--panel-2);flex-wrap:wrap}.svc__add .field{margin:0}.svc__add .input--port{width:6.5rem}.svc__auth-fields{width:100%;display:flex;gap:.75rem;flex-wrap:wrap;padding-top:.25rem}.svc__auth-fields .field{flex:1;min-width:10rem}.svc__add-mobile{display:none;width:100%;align-items:center;justify-content:center;gap:.5rem;border:none;border-top:1px dashed var(--line);background:var(--panel-2);color:var(--ink-2);font:inherit;font-size:.9375rem;padding:.875rem 1rem;cursor:pointer}.svc__add-mobile:hover{color:var(--ink)}.svc__add-mobile svg{opacity:.7}.hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,6fr);gap:3rem;align-items:center;padding:4.5rem 0 4rem}.hero__title{font-size:clamp(2.4rem,5.2vw,3.5rem);line-height:1.04;letter-spacing:-.025em;font-weight:650}.hero__sub{margin-top:1.25rem;font-size:1.0625rem;color:var(--ink-2);max-width:34rem;line-height:1.6}.hero__cta{margin-top:1.75rem;display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.hero__aside{min-width:0}.hero__caption{margin-top:.875rem;font-size:.8125rem;color:var(--muted);line-height:1.55;max-width:30rem}.hero__caption--cta{margin-top:1rem}@media(max-width:56rem){.hero{grid-template-columns:1fr;gap:2.5rem;padding-top:3rem}}.diagram{width:100%;height:auto;display:block}.diagram text{font-family:var(--sans)}.diagram .dg-card{fill:var(--panel);stroke:var(--line-strong)}.diagram .dg-title{fill:var(--ink)}.diagram .dg-muted{fill:var(--muted)}.diagram .dg-chip{fill:var(--panel-2);stroke:var(--line-strong)}.diagram .dg-chip-text{fill:var(--ink)}.diagram .dg-link{stroke:var(--accent)}.diagram .dg-faint{stroke:var(--muted);opacity:.55}.diagram .dg-dot{fill:var(--accent-bright)}.diagram .dg-led-green{fill:var(--green-bright)}.diagram .dg-accent{fill:var(--accent)}.diagram .dg-accent-stroke{stroke:var(--accent)}.diagram-link{stroke-dasharray:220;stroke-dashoffset:220;animation:diagram-draw 1.1s ease-out .25s forwards}@keyframes diagram-draw{to{stroke-dashoffset:0}}.hv{position:relative;display:flex;flex-direction:column}.hv__card{background:var(--panel);border:1px solid var(--line-strong);border-radius:10px;box-shadow:var(--shadow);padding:.875rem 1.125rem;max-width:26.5rem}.hv__head{display:flex;align-items:center;gap:.5rem;padding:.375rem 0 .75rem;border-bottom:1px dashed var(--line)}.hv__name{font-family:var(--display);font-weight:600;font-size:.9375rem}.hv__svc{display:flex;align-items:center;gap:.75rem;padding:.6875rem .125rem;border-bottom:1px dashed var(--line);font-size:.875rem;min-width:0}.hv__port{font-family:var(--mono);color:var(--ink);min-width:3.25rem}.hv__label{color:var(--ink-2);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hv__state{display:inline-flex;align-items:center;gap:.375rem;color:var(--muted);font-size:.8125rem;white-space:nowrap}.hv__add{display:flex;align-items:center;gap:.75rem;padding:.6875rem .125rem .5rem;font-size:.8125rem}.hv__add-port{font-family:var(--mono);color:var(--muted);border:1px dashed var(--line-strong);border-radius:var(--radius);padding:.25rem .625rem;min-width:3.25rem;text-align:center}.hv__add-label{color:var(--muted);flex:1;border-bottom:1px dashed var(--line);padding:.3125rem 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hv__phone{position:relative;z-index:1;align-self:flex-end;width:17rem;max-width:100%;background:var(--panel);border:1px solid var(--line-strong);border-radius:12px;box-shadow:0 2px 4px #191b2114,0 24px 48px -20px #191b2173;overflow:hidden}.hv__bar{display:flex;align-items:center;gap:.375rem;padding:.5rem .625rem;border-bottom:1px solid var(--line)}.hv__bar-btn{display:inline-flex;color:var(--muted)}.hv__bar-title{flex:1;min-width:0;font-size:.75rem;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hv__app{display:flex;flex-direction:column;gap:.5rem;padding:1rem .75rem}.hv__line{height:.5rem;border-radius:3px;background:var(--panel-2);border:1px solid var(--line)}.hv__line--t{width:58%;height:.625rem;background:color-mix(in srgb,var(--ink) 16%,transparent);border:none}.hv__line--s{width:72%}.hv__status{font-family:var(--mono);font-size:.6875rem;color:var(--ink-2);padding:.4rem .75rem;border-top:1px solid var(--line)}.hv__link{display:block;width:100%;height:4rem;pointer-events:none}.hv__link svg{width:100%;height:100%;display:block;overflow:visible}.hv__arc{stroke:var(--accent-bright);stroke-width:1.8}.hv__dot{fill:var(--accent-bright)}@media(max-width:56rem){.hv__link{height:2.75rem}}.proc{padding:4rem 0 3.5rem;border-top:1px solid var(--line)}.proc__title,.trust__title{font-family:var(--display);font-size:1.75rem;font-weight:650;letter-spacing:-.02em;margin:0}.proc__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;margin-top:2rem}.proc__artifact{display:flex;align-items:center;min-height:5rem}.proc__key{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);background:var(--accent-soft);color:var(--accent)}.proc__term{display:block;width:100%;background:var(--code-bg);color:var(--code-fg);border:1px solid var(--code-line);border-radius:8px;padding:.875rem 1rem;font-family:var(--mono);font-size:.75rem;line-height:1.8;overflow-x:auto}.proc__term-line{display:block;white-space:pre}.proc__prompt{color:var(--accent-bright);user-select:none}.proc__term-em{color:#fff}.proc__term-dim{color:#e8ebf173}.proc__portrow{display:inline-flex;align-items:center;gap:.75rem;background:var(--panel);border:1px solid var(--line-strong);border-radius:8px;box-shadow:var(--shadow);padding:.6875rem .875rem;font-size:.875rem}.proc__step-title{margin-top:1.125rem;font-family:var(--display);font-weight:600;font-size:1.0625rem}.proc__step-text{margin-top:.5rem;color:var(--ink-2);font-size:.9375rem;line-height:1.6}@media(max-width:56rem){.proc__grid{grid-template-columns:minmax(0,1fr);gap:2rem}.proc__portrow{gap:.5rem;font-size:.8125rem;padding:.6875rem .625rem}}.trust{padding:3.5rem 0 4.5rem;border-top:1px solid var(--line)}.trust__sub{margin:.875rem 0 0;color:var(--ink-2);font-size:1.0625rem;line-height:1.6;max-width:40rem}.trust__diagram{max-width:42rem;margin-top:2rem}.trust__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}@media(max-width:56rem){.trust__facts{grid-template-columns:1fr}.trust__diagram{display:none}}.fact{padding:1.25rem}.fact__title{font-family:var(--display);font-weight:600;font-size:1rem;display:flex;gap:.625rem;align-items:center}.fact__list{margin:.75rem 0 0;padding-left:1.1rem;color:var(--ink-2);font-size:.9375rem;line-height:1.65}[data-color-scheme=dark] .diagram .dg-faint{opacity:.75}@media(prefers-reduced-motion:reduce){.hv__dot{animation:none;opacity:0}.diagram-link{animation:none;stroke-dashoffset:0}}.footer{margin-top:auto;border-top:1px solid var(--line);padding:1.5rem 0 2rem;color:var(--muted);font-size:.8125rem}.footer__inner{display:flex;gap:1rem;justify-content:space-between;flex-wrap:wrap}.footer__links{display:inline-flex;align-items:center;gap:1rem}.prose{max-width:46rem;padding-top:3rem;padding-bottom:4rem}.prose__title{font-size:clamp(1.75rem,4vw,2.25rem);letter-spacing:-.02em}.prose h2{font-size:1.1875rem;margin-top:2.25rem}.prose p{margin-top:.875rem;color:var(--ink-2);font-size:1rem;line-height:1.7}.prose ul{margin:.875rem 0 0;padding-left:1.1rem;color:var(--ink-2);line-height:1.7;display:flex;flex-direction:column;gap:.5rem}.auth{display:flex;justify-content:center;padding:4rem 1.5rem 5rem}.auth__card{width:100%;max-width:26rem}.auth__title{font-size:1.625rem;letter-spacing:-.02em}.auth__sub{margin-top:.5rem;color:var(--ink-2);font-size:.9375rem;line-height:1.6}.auth__form{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}.auth__steps{display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem;color:var(--muted);font-size:.8125rem}.auth__step{display:inline-flex;align-items:center;gap:.375rem}.auth__step-dot{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.6875rem;font-family:var(--mono);border:1px solid var(--line-strong);color:var(--muted);background:var(--panel)}.auth__step--active .auth__step-dot{border-color:var(--accent);color:#fff;background:var(--accent)}.auth__step--done .auth__step-dot{border-color:var(--green);background:var(--green);color:#fff}.auth__divider{width:1.25rem;height:1px;background:var(--line-strong)}.auth__alt{margin-top:1.5rem;font-size:.875rem;color:var(--muted)}.passkey-note{display:flex;gap:.75rem;align-items:flex-start;border:1px solid var(--line);background:var(--panel);border-radius:var(--radius);padding:.875rem;font-size:.8125rem;color:var(--ink-2);line-height:1.55}.passkey-note svg{flex:none;margin-top:1px}.page{padding-top:2.5rem;padding-bottom:4rem;flex:1}.page__head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:1rem;row-gap:.375rem}.page__title{font-size:1.75rem;letter-spacing:-.02em}.page__sub{grid-column:1 / -1;color:var(--muted);font-size:.9375rem}.page__actions{grid-column:2;grid-row:1}.machine-list{margin-top:1.5rem;display:flex;flex-direction:column;gap:1rem}.machine__status{font-size:.875rem;color:var(--muted)}.machine__empty{padding:1rem 1.25rem;color:var(--muted);font-size:.9375rem;border-top:1px solid var(--line)}.empty-state{margin-top:1.5rem;text-align:left;padding:2.5rem}.empty-state__title{font-size:1.25rem}.empty-state__text{margin-top:.625rem;color:var(--ink-2);max-width:34rem;line-height:1.6}.account__form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.account__static{font-size:.9375rem;color:var(--ink-2);padding:.5625rem 0}.account__row{display:flex;gap:.5rem;align-items:center}.account__hint{padding:.875rem 1.25rem;border-top:1px dashed var(--line);color:var(--muted);font-size:.8125rem;line-height:1.6}.passkey-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;border-top:1px solid var(--line)}.passkey-row:first-child{border-top:none}.passkey-row__icon{color:var(--muted);display:inline-flex}.passkey-row__text{display:flex;flex-direction:column;min-width:0}.passkey-row__name{font-size:.9375rem;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.passkey-row__meta{color:var(--muted);font-size:.8125rem}.passkey-row__actions{margin-left:auto}.menu{position:relative;display:inline-flex}.menu__trigger{padding:.4375rem .5rem;border-color:transparent;color:var(--muted)}.menu__trigger:hover{background:var(--hover-wash);color:var(--ink)}.menu__panel{display:none;position:absolute;right:0;top:calc(100% + 6px);min-width:11rem;background:var(--panel);border:1px solid var(--line-strong);border-radius:8px;box-shadow:var(--shadow);padding:.25rem;z-index:60}.menu--open .menu__panel{display:block}.menu__item{display:flex;align-items:center;gap:.5rem;width:100%;border:none;background:none;color:var(--ink);font:inherit;font-size:.9375rem;text-align:left;padding:.5rem .625rem;border-radius:4px;cursor:pointer;white-space:nowrap}.menu__item:hover{background:var(--hover-wash)}.menu__item--danger{color:var(--red)}.modal-backdrop{position:fixed;inset:0;z-index:100;background:var(--backdrop);display:flex;align-items:flex-start;justify-content:center;padding:4rem 1rem 2rem;overflow-y:auto}.modal{width:100%;max-width:34rem;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--modal-shadow)}.modal__header{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem 0}.modal__title{font-size:1.25rem}.modal__close{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--muted);font-size:1.125rem;padding:.25rem .5rem;border-radius:4px}.modal__close:hover{background:var(--hover-wash);color:var(--ink)}.modal__body{padding:1rem 1.5rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--line)}.tab{appearance:none;border:none;background:none;font-family:var(--sans);font-size:.9375rem;color:var(--muted);padding:.5rem .75rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.tab--active{color:var(--ink);border-bottom-color:var(--accent);font-weight:550}.toasts{position:fixed;left:50%;bottom:calc(1.5rem + env(safe-area-inset-bottom));transform:translate(-50%);z-index:200;display:flex;flex-direction:column;gap:.5rem;align-items:center;pointer-events:none;width:max-content;max-width:calc(100vw - 2rem)}.toast{background:var(--toast-bg);color:var(--toast-fg);border:1px solid var(--line);border-radius:999px;padding:.5rem 1rem;font-size:.875rem;box-shadow:0 8px 24px -12px #00000080;animation:toast-in .16s ease;max-width:100%;overflow:hidden;text-overflow:ellipsis}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.viewer{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.viewer__bar{position:relative;flex:none;display:flex;align-items:center;gap:.75rem;padding:.5rem .875rem;padding-top:max(.5rem,env(safe-area-inset-top));background:var(--panel);border-bottom:1px solid var(--line);min-height:3.25rem;flex-wrap:wrap}.viewer__title{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:550;min-width:0}.viewer__title-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:16rem}.viewer__title-path{display:none;font-family:var(--mono);font-size:.8125rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.viewer__path{flex:1;min-width:10rem;display:flex;align-items:center;gap:.5rem}.viewer__path .input{font-family:var(--mono);font-size:.8125rem;padding:.375rem .625rem}.viewer__actions{display:flex;align-items:center;gap:.375rem;margin-left:auto}.viewer__menu{position:relative;display:none}.viewer__menu-panel{display:none;position:absolute;right:0;top:calc(100% + 8px);min-width:13rem;background:var(--panel);border:1px solid var(--line-strong);border-radius:8px;box-shadow:var(--shadow);padding:.25rem;z-index:60}.viewer__menu--open .viewer__menu-panel{display:block}.viewer__menu-info{padding:.5rem .625rem;border-bottom:1px solid var(--line);margin-bottom:.25rem;color:var(--muted);font-size:.8125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewer__menu-item{display:flex;align-items:center;gap:.5rem;width:100%;border:none;background:none;color:var(--ink);font:inherit;font-size:.9375rem;text-align:left;padding:.5rem .625rem;border-radius:4px;cursor:pointer}.viewer__menu-item:hover{background:var(--hover-wash)}.viewer__frame-wrap{position:relative;flex:1;background:var(--panel)}.viewer__frame{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}.viewer__overlay{position:absolute;inset:0;z-index:5;background:var(--bg);display:flex;align-items:center;justify-content:center;padding:1.5rem}.viewer__overlay--hidden{display:none}.viewer-state{max-width:26rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem}.viewer-state__title{font-size:1.25rem}.viewer-state__text{color:var(--ink-2);font-size:.9375rem;line-height:1.6}.spinner{width:22px;height:22px;border-radius:50%;border:2px solid var(--line-strong);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.viewer__bar .chip--mono{max-width:40vw;overflow:hidden}.viewer__title .chip{flex:none}@media(max-width:640px){.wrap{padding:0 1.25rem}.topbar__inner{height:3.125rem;gap:.625rem}.topbar__user-name,.topbar__signout{display:none}.topbar .topbar__account-icon{display:inline-flex}.page{padding-top:1.25rem;padding-bottom:2.5rem}.page__title{font-size:1.5rem}.page__sub{font-size:.875rem}.page__actions .btn__label{display:none}.page__actions .btn{padding:.625rem}.machine-list{margin-top:1rem}.machine .card__header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"led title menu" "chip chip meta" "cli cli cli";column-gap:.5rem;row-gap:.375rem;align-items:center;padding:.875rem 1rem}.machine .card__header>.led{grid-area:led}.machine .card__header .card__title{grid-area:title;font-size:1.0625rem;min-width:0}.machine .card__title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.machine .card__header>.chip{grid-area:chip;justify-self:start}.machine .card__meta{grid-area:meta;justify-self:end;text-align:right;font-size:.75rem;min-width:0;overflow:hidden;text-overflow:ellipsis}.machine .card__header>.menu{grid-area:menu;justify-self:end;align-self:start}.machine .card__spacer{display:none}.machine__cli{grid-area:cli;justify-self:start;margin-top:.375rem}.machine .card__body{padding:0}.machine__empty{padding:.75rem 1rem}.chip{font-size:.75rem;padding:.0625rem .5rem}.svc{display:flex;flex-wrap:nowrap;align-items:center;gap:.5rem;padding:.625rem 1rem .625rem 1.25rem;position:relative}.svc:before{content:"";position:absolute;left:0;top:.25rem;bottom:.25rem;width:4px;border-radius:0 2px 2px 0;background:var(--led-off)}.svc--ready:before{background:var(--green-bright)}.svc--warming:before{background:var(--accent-bright)}.svc--offline:before{background:var(--led-off)}.svc__port{flex:none}.svc__label{flex:1;font-size:.875rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.svc__state{display:none}.svc__actions{margin-left:auto;width:auto;gap:.375rem}.svc__actions .btn__label{display:none}.svc__actions .btn{padding:.5625rem .625rem}.svc__add{display:none}.svc__add-mobile{display:flex}.empty-state{padding:1.5rem 1.25rem}.modal-backdrop{align-items:flex-end;padding:.75rem .75rem calc(.75rem + env(safe-area-inset-bottom))}.modal{border-radius:12px}.modal__header{padding:1rem 1.125rem 0}.modal__body{padding:.875rem 1.125rem 1.25rem}.hero{padding:2.25rem 0 2.5rem;gap:2rem}.hero__cta{gap:.625rem}.steps{padding:2.5rem 0 2rem}.two-col{padding:0 0 3rem}.fact{padding:1rem}.auth{padding:2rem 1rem 3rem}.prose{padding-top:2rem;padding-bottom:3rem}.account__form{grid-template-columns:1fr}.account__row{flex-direction:column;align-items:stretch}.account__row .btn{width:100%}.passkey-row{padding:.875rem 1rem}.footer{padding:1.25rem 0 1.75rem}.btn:not(.btn--text):not(.btn--danger-text){min-height:2.625rem}.btn--sm:not(.btn--text):not(.btn--danger-text){min-height:2.375rem}.viewer__bar{flex-wrap:nowrap;gap:.375rem;padding:.4375rem .625rem;padding-top:max(.4375rem,env(safe-area-inset-top));min-height:3rem}.viewer__title{flex:1;min-width:0}.viewer__title-name{max-width:none;min-width:0;flex-shrink:1}.viewer__title-path{display:block}.viewer__path{display:none}.viewer__bar--editing .viewer__path{display:flex;position:absolute;left:.5rem;right:.5rem;top:calc(100% + 6px);z-index:55;padding:.4375rem;background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:var(--shadow)}.viewer__visibility,.viewer__open{display:none}.viewer__menu{display:block}}@media(max-width:480px){.hero__cta .btn{width:100%}.topbar__signin{display:none}.wordmark{font-size:1rem;gap:.4rem}.wordmark .logomark{width:19px;height:24px}}@media(max-width:340px){.wrap{padding:0 .75rem}.topbar__inner{gap:.375rem}.wordmark__text{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
