html:has(.nstack-landing){scroll-behavior:smooth}.nstack-landing{--ns-paper:var(--background);--ns-paper-2:var(--muted);--ns-paper-3:var(--card);--ns-ink:var(--ink);--ns-ink-2:var(--ink-2);--ns-ink-3:var(--ink-mute);--ns-muted:var(--ink-mute);--ns-rule:var(--rule-strong);--ns-rule-soft:var(--rule);--ns-accent:var(--brand);--ns-accent-ink:var(--brand-deep);--ns-accent-soft:var(--brand-soft);--ns-online:var(--bar-done-ink);--ns-term-bg:#0d0f12;--ns-term-fg:#e6e6e6;--ns-term-muted:#8e8e94;--ns-term-accent:#ffb454;--ns-term-prompt:#5dd39e;--ns-amb-peach-1:#ffd7c48c;--ns-amb-peach-2:#ffe8db00;--ns-amb-sky-1:#bed3ff8c;--ns-amb-sky-2:#d9e5ff00;--ns-amb-violet-1:#d6d3ff4d;--ns-amb-violet-2:#e4e2ff00;--ns-display:var(--font-serif), "Source Serif 4", "Iowan Old Style", Baskerville, Georgia, serif;--ns-body:var(--font-sans), -apple-system, "Segoe UI", Roboto, system-ui, sans-serif;--ns-mono:var(--font-mono), "JetBrains Mono", "SF Mono", ui-monospace, Menlo, monospace;--ns-serif:var(--font-serif), "Source Serif 4", "Iowan Old Style", Georgia, serif;background:var(--ns-paper);color:var(--ns-ink);font-family:var(--ns-body);font-feature-settings:"ss01" on, "cv11" on;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;isolation:isolate;min-height:100vh;position:relative}.nstack-landing .ns-ambient{z-index:-1;pointer-events:none;background:radial-gradient(60vmax 60vmax at 100% 0%, var(--ns-amb-peach-1) 0%, var(--ns-amb-peach-2) 60%), radial-gradient(70vmax 70vmax at 0% 100%, var(--ns-amb-sky-1) 0%, var(--ns-amb-sky-2) 65%), radial-gradient(80vmax 60vmax at 50% 40%, var(--ns-amb-violet-1) 0%, var(--ns-amb-violet-2) 60%);position:fixed;inset:0}.nstack-landing a{color:inherit;text-decoration:none}.nstack-landing code{font-family:var(--ns-mono);background:var(--ns-paper-2);border:1px solid var(--ns-rule-soft);white-space:nowrap;word-break:keep-all;border-radius:4px;padding:1px 6px;font-size:.86em}.nstack-landing .ns-shell{max-width:1240px;margin:0 auto;padding:0 36px}.nstack-landing .ns-rule{background:var(--ns-rule);height:1px;margin:0}.nstack-landing .ns-topbar{z-index:40;background:color-mix(in oklab, var(--ns-paper) 94%, transparent);-webkit-backdrop-filter:saturate(140%)blur(14px);backdrop-filter:saturate(140%)blur(14px);border:1px solid color-mix(in oklab, var(--ns-rule) 55%, transparent);border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;margin:14px -20px 0;padding:14px 20px;display:grid;position:sticky;top:12px;box-shadow:inset 0 1px #ffffff80,0 6px 24px -16px #0f121d29}.nstack-landing .ns-brand{color:var(--ns-ink);align-items:center;text-decoration:none;display:inline-flex}.nstack-landing .ns-brand-lockup{color:var(--ns-ink);align-items:baseline;display:inline-flex}.nstack-landing .ns-brand-logo-img{color:var(--ns-ink);background-color:var(--ns-ink);margin-bottom:-3px}.nstack-landing .ns-brand-sep{background:color-mix(in oklab, var(--ns-rule-strong) 65%, transparent);width:1px;height:16px;margin:0 14px;display:inline-block;transform:translateY(2px)}.nstack-landing .ns-brand-product{font-size:16px}.nstack-landing .ns-topnav{font-family:var(--ns-body);justify-self:center;align-items:center;gap:26px;font-size:14px;display:inline-flex}.nstack-landing .ns-topnav .topnav-link{color:var(--ns-ink-2);padding:6px 2px;transition:color .12s;position:relative}.nstack-landing .ns-topnav .topnav-link:after{content:"";background:var(--ns-ink);transform-origin:0;height:1px;transition:transform .16s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nstack-landing .ns-topnav .topnav-link:hover{color:var(--ns-ink)}.nstack-landing .ns-topnav .topnav-link:hover:after{transform:scaleX(1)}.nstack-landing .ns-topactions{align-items:center;gap:10px;display:inline-flex}.nstack-landing .signin-pill{background:var(--ns-ink);color:var(--ns-paper);font-family:var(--ns-body);letter-spacing:.005em;border-radius:999px;align-items:center;padding:9px 18px;font-size:13.5px;font-weight:500;transition:background .12s,transform .12s;display:inline-flex}.nstack-landing .signin-pill:hover{background:var(--ns-ink-2);transform:translateY(-1px)}.nstack-landing .ns-hero{text-align:center;flex-direction:column;align-items:center;gap:0;padding:88px 0 56px;display:flex}.nstack-landing .ns-eyebrow-pill{background:color-mix(in oklab, var(--ns-paper-3) 92%, transparent);border:1px solid color-mix(in oklab, var(--ns-rule) 70%, transparent);font-family:var(--ns-mono);letter-spacing:.02em;color:var(--ns-ink-2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:999px;align-items:center;gap:10px;margin-bottom:28px;padding:7px 16px;font-size:11.5px;display:inline-flex;box-shadow:inset 0 1px #ffffff80}.nstack-landing .ns-eyebrow-pill .dot{background:var(--ns-online);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #2e8b5724}.nstack-landing .ns-eyebrow-pill .arrow{color:var(--ns-muted);font-family:var(--ns-mono);margin-left:2px}.nstack-landing h1.ns-hero-title{font-family:var(--ns-display);font-variation-settings:"opsz" 144, "wght" 380, "SOFT" 50;font-feature-settings:"ss01";letter-spacing:-.026em;color:var(--ns-ink);text-wrap:balance;max-width:18ch;margin:0;font-size:clamp(44px,7.2vw,96px);font-weight:400;line-height:1.02}.nstack-landing h1.ns-hero-title .line{display:block}.nstack-landing h1.ns-hero-title .line.accent{font-variation-settings:"WONK" 1, "opsz" 144, "wght" 400, "SOFT" 90;color:var(--ns-accent-ink);letter-spacing:-.022em;padding-bottom:.14em;font-style:italic;position:relative}.nstack-landing h1.ns-hero-title .line.accent:after{content:"";background:linear-gradient(to right, transparent 0%, color-mix(in oklab, var(--ns-accent) 40%, transparent) 18%, color-mix(in oklab, var(--ns-accent) 65%, transparent) 50%, color-mix(in oklab, var(--ns-accent) 40%, transparent) 82%, transparent 100%);pointer-events:none;border-radius:2px;height:max(2px,.038em);position:absolute;bottom:.02em;left:18%;right:18%}.nstack-landing .ns-hero-sub{font-family:var(--ns-body);color:var(--ns-ink-2);text-wrap:pretty;max-width:56ch;margin:28px 0 0;font-size:17px;line-height:1.55}.nstack-landing .ns-hero-sub strong{color:var(--ns-ink);font-weight:540}.nstack-landing .ns-hero-cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:36px;display:flex}.nstack-landing .ns-cta-primary{background:var(--ns-ink);color:var(--ns-paper);font-family:var(--ns-body);letter-spacing:.005em;border-radius:999px;align-items:center;gap:10px;padding:13px 22px;font-size:14.5px;font-weight:500;transition:background .12s,transform .12s,box-shadow .12s;display:inline-flex;box-shadow:inset 0 1px #ffffff26,0 10px 30px -16px #0f121d99}.nstack-landing .ns-cta-primary:hover{background:var(--ns-accent-ink);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff2e,0 14px 36px -16px #1f51b88c}.nstack-landing .ns-cta-primary svg{width:14px;height:14px}.nstack-landing .ns-cta-ghost{font-family:var(--ns-body);color:var(--ns-ink);background:color-mix(in oklab, var(--ns-paper-3) 88%, transparent);border:1px solid var(--ns-rule);border-radius:999px;align-items:center;gap:10px;padding:12px 18px;font-size:14.5px;transition:background .12s,border-color .12s,transform .12s;display:inline-flex}.nstack-landing .ns-cta-ghost:hover{background:var(--ns-paper);border-color:var(--ns-ink-3);transform:translateY(-1px)}.nstack-landing .ns-cta-ghost .kbd{font-family:var(--ns-mono);letter-spacing:.08em;border:1px solid var(--ns-rule);color:var(--ns-muted);background:var(--ns-paper-2);border-radius:4px;padding:2px 6px;font-size:10.5px}.nstack-landing .ns-runtimes{flex-direction:column;align-items:center;gap:12px;margin:40px 0 0;display:flex}.nstack-landing .ns-runtimes-label{font-family:var(--ns-mono);letter-spacing:.08em;color:var(--ns-muted);text-transform:lowercase;font-size:11px}.nstack-landing .ns-runtimes ul{font-family:var(--ns-body);color:var(--ns-ink-2);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 18px;margin:0;padding:0;font-size:13.5px;list-style:none;display:flex}.nstack-landing .ns-runtimes li{padding:0 9px;position:relative}.nstack-landing .ns-runtimes li+li:before{content:"·";color:var(--ns-rule);position:absolute;left:-10px}.nstack-landing .ns-runtimes li.more{color:var(--ns-muted)}.nstack-landing .ns-snapshot{filter:drop-shadow(0 24px 60px #0f121d1a)drop-shadow(0 2px #fff6);margin:40px 0 64px}.nstack-landing .ns-snapshot-card{border:1px solid var(--ns-rule);background:var(--ns-paper);border-radius:16px;overflow:hidden}.nstack-landing .snap-chrome{border-bottom:1px solid var(--ns-rule);background:linear-gradient(180deg, color-mix(in oklab, var(--ns-paper-2) 80%, transparent), var(--ns-paper-2));grid-template-columns:auto 1fr;align-items:center;gap:16px;padding:10px 14px;display:grid}.nstack-landing .snap-dots{align-items:center;gap:6px;display:inline-flex}.nstack-landing .snap-dots span{border-radius:50%;width:11px;height:11px}.nstack-landing .snap-dots .r{background:#ff5f57}.nstack-landing .snap-dots .y{background:#febc2e}.nstack-landing .snap-dots .g{background:#28c840}.nstack-landing .snap-url{background:var(--ns-paper);border:1px solid var(--ns-rule-soft);min-width:320px;max-width:520px;font-family:var(--ns-mono);color:var(--ns-ink-2);border-radius:999px;justify-self:center;align-items:center;gap:10px;padding:5px 14px;font-size:11.5px;display:inline-flex}.nstack-landing .snap-url .dot{background:var(--ns-online);border-radius:50%;width:6px;height:6px}.nstack-landing .snap-url .path{white-space:nowrap;gap:0;display:inline-flex;overflow:hidden}.nstack-landing .snap-url .sep{color:var(--ns-rule);margin:0 4px}.nstack-landing .snap-url .seg{color:var(--ns-ink-2)}.nstack-landing .snap-url .seg.active{color:var(--ns-ink);font-weight:500}.nstack-landing .snap-toolbar{border-bottom:1px solid var(--ns-rule-soft);justify-content:space-between;align-items:center;gap:16px;padding:14px 22px;display:flex}.nstack-landing .snap-title{font-family:var(--ns-body);color:var(--ns-ink);font-size:14.5px;font-weight:600}.nstack-landing .snap-title-sub{color:var(--ns-muted);margin-left:4px;font-size:12.5px;font-weight:400}.nstack-landing .snap-meta{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.nstack-landing .snap-chip{font-family:var(--ns-body);border:1px solid var(--ns-rule);background:var(--ns-paper);color:var(--ns-ink-2);border-radius:999px;align-items:center;gap:8px;padding:5px 11px;font-size:12px;display:inline-flex}.nstack-landing .snap-chip .dot{border-radius:50%;width:6px;height:6px}.nstack-landing .snap-chip.amber{color:#7a5a14;background:#fff4d6eb;background:lab(96.484% .269651 15.9106/.92);border-color:#f3c87a99;border-color:lab(83.193% 8.84223 44.7759/.6)}.nstack-landing .snap-chip.amber .dot{background:#f5a623}.nstack-landing .snap-chip.ink{color:var(--ns-ink)}.nstack-landing .snap-chip.ink .dot.blue{background:var(--ns-accent-ink)}.nstack-landing .snap-board{display:block}.nstack-landing .snap-row{border-bottom:1px solid var(--ns-rule-soft);grid-template-columns:200px repeat(6,minmax(0,1fr)) 72px;align-items:stretch;display:grid}.nstack-landing .snap-row:last-child{border-bottom:none}.nstack-landing .snap-cell{border-right:1px solid var(--ns-rule-soft);min-height:64px;padding:14px 12px}.nstack-landing .snap-cell:last-child{border-right:none}.nstack-landing .snap-row-head .snap-cell{font-family:var(--ns-mono);letter-spacing:.12em;color:var(--ns-muted);background:color-mix(in oklab, var(--ns-paper-2) 50%, transparent);align-items:center;gap:8px;min-height:0;padding:10px 12px;font-size:10.5px;display:inline-flex}.nstack-landing .snap-row-head .snap-cell .dot{border-radius:2px;width:8px;height:8px}.nstack-landing .snap-row-head .snap-cell.muted .dot{background:#c4c8cf}.nstack-landing .snap-row-head .snap-cell.ink .dot{background:#4a4f5a}.nstack-landing .snap-row-head .snap-cell.amber .dot{background:#f5a623}.nstack-landing .snap-row-head .snap-cell.green .dot{background:#2eb874}.nstack-landing .snap-row-head .snap-cell.blue .dot{background:#3478f6}.nstack-landing .snap-row-head .snap-cell.violet .dot{background:#8a5cf6}.nstack-landing .snap-cell-stream{background:color-mix(in oklab, var(--ns-paper-2) 35%, transparent);flex-direction:column;gap:6px;padding:14px 18px 14px 22px;display:flex}.nstack-landing .snap-stream-name{font-family:var(--ns-body);color:var(--ns-ink);font-size:13.5px;font-weight:600}.nstack-landing .snap-stream-meta{flex-wrap:wrap;gap:4px;display:inline-flex}.nstack-landing .snap-stream-meta .meta-pill{font-family:var(--ns-mono);letter-spacing:.1em;background:var(--ns-paper-3);border:1px solid var(--ns-rule-soft);color:var(--ns-ink-2);border-radius:3px;padding:1px 6px;font-size:9.5px}.nstack-landing .snap-stream-squad{font-family:var(--ns-mono);color:var(--ns-muted);flex-direction:column;gap:2px;margin:4px 0 0;padding:0;font-size:10.5px;list-style:none;display:flex}.nstack-landing .snap-cell-col{align-items:flex-start;padding:14px 10px;display:flex}.nstack-landing .snap-cells{flex-wrap:wrap;align-content:flex-start;gap:3px;width:100%;display:flex}.nstack-landing .snap-square{border-radius:2px;width:10px;height:10px}.nstack-landing .snap-square.muted{background:#d2d6dd}.nstack-landing .snap-square.ink{background:#545863}.nstack-landing .snap-square.amber{background:#f5a623}.nstack-landing .snap-square.green{background:#2eb874}.nstack-landing .snap-square.blue{background:#3478f6}.nstack-landing .snap-square.violet{background:#8a5cf6}.nstack-landing .snap-cell-total{background:color-mix(in oklab, var(--ns-paper-2) 35%, transparent);flex-direction:column;justify-content:center;align-items:flex-end;padding:14px 18px;display:flex}.nstack-landing .snap-total{font-family:var(--ns-display);font-variation-settings:"opsz" 24, "wght" 460, "SOFT" 40;color:var(--ns-ink);font-variant-numeric:tabular-nums;font-size:20px;line-height:1}.nstack-landing .snap-total-unit{font-family:var(--ns-mono);color:var(--ns-muted);margin-top:4px;font-size:10px}.nstack-landing .snap-footer{border-top:1px solid var(--ns-rule-soft);background:color-mix(in oklab, var(--ns-paper-2) 50%, transparent);font-family:var(--ns-mono);color:var(--ns-ink-2);flex-wrap:wrap;align-items:baseline;gap:6px 14px;padding:12px 22px;font-size:11.5px;display:flex}.nstack-landing .snap-footer strong{font-family:var(--ns-display);font-variation-settings:"opsz" 18, "wght" 460, "SOFT" 40;color:var(--ns-ink);font-variant-numeric:tabular-nums;font-weight:460}.nstack-landing .snap-footer .sep{color:var(--ns-rule)}.nstack-landing .snap-footer .ts{color:var(--ns-muted);margin-left:auto}.nstack-landing .ns-section{padding:72px 0}.nstack-landing .ns-section-header{grid-template-columns:180px 1fr;align-items:baseline;gap:24px;margin-bottom:40px;display:grid}.nstack-landing .ns-section-header .num{font-family:var(--ns-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ns-muted);font-size:11px}.nstack-landing .ns-section-header h2{font-family:var(--ns-display);letter-spacing:-.02em;max-width:26ch;color:var(--ns-ink);margin:0;font-size:clamp(28px,3vw,36px);font-weight:600;line-height:1.12}.nstack-landing .ns-quick-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.nstack-landing .qcard{border:1px solid var(--ns-rule);background:var(--ns-paper-3);border-radius:12px;flex-direction:column;padding:22px 22px 0;display:flex;overflow:hidden}.nstack-landing .qcard-h{align-items:center;gap:12px;margin-bottom:12px;display:flex}.nstack-landing .qcard-h .step{font-family:var(--ns-mono);letter-spacing:.18em;color:var(--ns-accent);background:var(--ns-accent-soft);border-radius:4px;padding:2px 8px;font-size:11px}.nstack-landing .qcard-h .label{font-family:var(--ns-display);letter-spacing:-.005em;color:var(--ns-ink);font-size:16px;font-weight:600}.nstack-landing .qcard p{color:var(--ns-ink-2);margin:0 0 16px;font-size:14px;line-height:1.55}.nstack-landing .qcard pre.term{background:var(--ns-term-bg);color:var(--ns-term-fg);font-family:var(--ns-mono);white-space:pre;border-top:1px solid #ffffff0f;margin:0 -22px;padding:16px 18px;font-size:12.5px;line-height:1.6;overflow-x:auto}.nstack-landing .ns-grid-3{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.nstack-landing .ns-grid-3 .col{background:var(--ns-paper-3);border:1px solid var(--ns-rule);border-radius:12px;flex-direction:column;gap:14px;padding:24px 22px 18px;display:flex}.nstack-landing .ns-grid-3 .col .kicker{font-family:var(--ns-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ns-accent);font-size:10.5px}.nstack-landing .ns-grid-3 .col h3{font-family:var(--ns-display);letter-spacing:-.012em;color:var(--ns-ink);margin:0;font-size:19px;font-weight:600;line-height:1.25}.nstack-landing .ns-grid-3 .col p{color:var(--ns-ink-2);margin:0;font-size:13.5px;line-height:1.55}.nstack-landing .ns-grid-3 .col ul.kv{font-family:var(--ns-mono);color:var(--ns-ink-2);border-top:1px solid var(--ns-rule-soft);margin:4px 0 0;padding:0;font-size:12px;list-style:none}.nstack-landing .ns-grid-3 .col ul.kv li{border-bottom:1px solid var(--ns-rule-soft);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.nstack-landing .ns-grid-3 .col ul.kv li:last-child{border-bottom:none}.nstack-landing .ns-grid-3 .col ul.kv li>span:first-child{color:var(--ns-muted)}.nstack-landing .ns-grid-3 .col .col-cta{font-family:var(--ns-mono);color:var(--ns-ink);margin-top:auto;padding-top:10px;font-size:12px}.nstack-landing .ns-grid-3 .col .col-cta:hover{color:var(--ns-accent)}.nstack-landing .ns-api{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.nstack-landing .ns-api-table{border:1px solid var(--ns-rule);background:var(--ns-term-bg);border-radius:12px;overflow:hidden}.nstack-landing .ns-api-table .row{font-family:var(--ns-mono);color:var(--ns-term-fg);border-top:1px solid #ffffff0f;grid-template-columns:70px 1fr auto;align-items:center;gap:18px;padding:12px 18px;font-size:12.5px;display:grid}.nstack-landing .ns-api-table .row:first-child{border-top:none}.nstack-landing .ns-api-table .m{letter-spacing:.14em;text-align:center;color:var(--ns-term-fg);background:#ffffff0f;border-radius:4px;padding:3px 8px;font-size:10.5px;font-weight:600}.nstack-landing .ns-api-table .m-get{color:var(--ns-term-prompt)}.nstack-landing .ns-api-table .m-put{color:var(--ns-term-accent)}.nstack-landing .ns-api-table .m-delete{color:#ff6e6e}.nstack-landing .ns-api-table .p{color:#dce0e5}.nstack-landing .ns-api-table .n{color:var(--ns-term-muted);text-align:right;font-size:11.5px}.nstack-landing .ns-api-aside{flex-direction:column;gap:10px;display:flex}.nstack-landing .ns-api-aside .h{font-family:var(--ns-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ns-accent);margin-top:6px;font-size:10.5px}.nstack-landing .ns-api-aside .h:first-child{margin-top:0}.nstack-landing .ns-api-aside p{color:var(--ns-ink-2);margin:0;font-size:14px;line-height:1.6}.nstack-landing .ns-section-arch{padding-bottom:96px}.nstack-landing .ns-arch{gap:24px;display:grid}.nstack-landing .ns-arch-diagram{grid-template-columns:1fr 32px 1fr 32px 1fr;align-items:stretch;gap:0;display:grid}.nstack-landing .ns-arch-diagram .arrow{font-family:var(--ns-mono);color:var(--ns-muted);justify-content:center;align-items:center;font-size:18px;display:flex}.nstack-landing .ns-arch-diagram .lane{background:var(--ns-paper-3);border:1px solid var(--ns-rule);border-radius:12px;flex-direction:column;gap:10px;padding:14px;display:flex}.nstack-landing .ns-arch-diagram .lane-h{font-family:var(--ns-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ns-muted);margin-bottom:4px;font-size:10.5px}.nstack-landing .ns-arch-diagram .box{border:1px solid var(--ns-rule-soft);background:var(--ns-paper);border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.nstack-landing .ns-arch-diagram .box.accent{border-color:var(--ns-accent);background:var(--ns-accent-soft)}.nstack-landing .ns-arch-diagram .box.muted{opacity:.7}.nstack-landing .ns-arch-diagram .box strong{font-family:var(--ns-display);letter-spacing:-.005em;color:var(--ns-ink);font-size:13px;font-weight:600}.nstack-landing .ns-arch-diagram .box span{font-family:var(--ns-mono);color:var(--ns-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.nstack-landing .ns-arch-note{color:var(--ns-ink-2);max-width:88ch;margin:8px 0 0;font-size:14px;line-height:1.6}.nstack-landing .ns-footer{border-top:1px solid var(--ns-rule);grid-template-columns:1fr auto;align-items:center;gap:24px;padding:28px 0 56px;display:grid}.nstack-landing .ns-footer .left .mark{color:var(--ns-ink);align-items:baseline;gap:8px;display:inline-flex}.nstack-landing .ns-footer .left .ns-footer-mark{margin-bottom:6px}.nstack-landing .ns-footer .left .meta{font-family:var(--ns-mono);letter-spacing:.06em;color:var(--ns-muted);text-transform:uppercase;margin-top:4px;font-size:11px}.nstack-landing .ns-footer .right{font-family:var(--ns-mono);letter-spacing:.04em;color:var(--ns-ink-2);text-transform:lowercase;gap:22px;font-size:12px;display:flex}.nstack-landing .ns-footer .right a:hover{color:var(--ns-accent)}.nstack-landing .ns-doc-grid{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:56px;padding:24px 0 0;display:grid}.nstack-landing .ns-doc-main{min-width:0}.nstack-landing .ns-toc{font-family:var(--ns-mono);align-self:start;padding:24px 0 0;font-size:12px;position:sticky;top:32px}.nstack-landing .ns-toc-head{letter-spacing:.18em;text-transform:uppercase;color:var(--ns-muted);margin-bottom:16px;padding-left:14px;font-size:10.5px}.nstack-landing .ns-toc-list{border-left:1px solid var(--ns-rule-soft);flex-direction:column;display:flex}.nstack-landing .ns-toc-link{color:var(--ns-ink-3);border-left:1px solid #0000;grid-template-columns:24px 1fr;align-items:baseline;gap:10px;margin-left:-1px;padding:7px 14px;transition:color .16s,border-color .16s,background .16s;display:grid}.nstack-landing .ns-toc-link:hover{color:var(--ns-ink);background:var(--ns-paper-2)}.nstack-landing .ns-toc-link.active{color:var(--ns-ink);border-left-color:var(--ns-accent)}.nstack-landing .ns-toc-num{letter-spacing:.14em;color:var(--ns-muted);font-variant-numeric:tabular-nums;font-size:9.5px}.nstack-landing .ns-toc-link.active .ns-toc-num{color:var(--ns-accent)}.nstack-landing .ns-toc-label{font-family:var(--ns-body);letter-spacing:0;text-transform:none;font-size:13px;line-height:1.35}.nstack-landing .ns-doc-main .ns-section{scroll-margin-top:32px}.nstack-landing .ns-doc-main .ns-section:first-child{padding-top:16px}.nstack-landing .ns-lede{font-family:var(--ns-display);font-variation-settings:"opsz" 24, "wght" 380, "SOFT" 60;color:var(--ns-ink-2);letter-spacing:-.005em;text-wrap:pretty;max-width:64ch;margin:0 0 36px;font-size:19px;line-height:1.5}.nstack-landing .ns-lede strong{color:var(--ns-ink);font-weight:480}.nstack-landing .ns-section-header h2 em{font-variation-settings:"opsz" 36, "wght" 360, "SOFT" 80;color:var(--ns-accent-ink);font-style:italic}.nstack-landing .ns-flow{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;gap:0;margin-top:8px;display:grid}.nstack-landing .ns-flow-step{background:var(--ns-paper-3);border:1px solid var(--ns-rule-soft);border-radius:12px;flex-direction:column;gap:8px;min-width:0;padding:16px 16px 18px;display:flex}.nstack-landing .ns-flow-eyebrow{font-family:var(--ns-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ns-accent);font-size:10.5px}.nstack-landing .ns-flow-title{font-family:var(--ns-display);font-variation-settings:"opsz" 24, "wght" 460, "SOFT" 40;letter-spacing:-.008em;color:var(--ns-ink);margin:0;font-size:16px;line-height:1.25}.nstack-landing .ns-flow-body{color:var(--ns-ink-2);margin:0;font-size:12.5px;line-height:1.55}.nstack-landing .ns-flow-arrow{color:var(--ns-rule);place-self:center;padding:0 6px}.nstack-landing .ns-flow-arrow svg{width:22px;height:8px;display:block}.nstack-landing .ns-method-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.nstack-landing .ns-method-card{background:var(--ns-paper-3);border:1px solid var(--ns-rule);border-radius:12px;flex-direction:column;gap:8px;padding:18px 20px 20px;display:flex}.nstack-landing .ns-method-card .kicker{font-family:var(--ns-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ns-accent);font-size:10.5px}.nstack-landing .ns-method-value{font-family:var(--ns-display);font-variation-settings:"opsz" 144, "wght" 380, "SOFT" 60;letter-spacing:-.022em;color:var(--ns-ink);font-variant-numeric:tabular-nums;font-size:44px;line-height:1}.nstack-landing .ns-method-card p{color:var(--ns-ink-2);margin:0;font-size:13px;line-height:1.55}.nstack-landing .ns-method-note{color:var(--ns-ink-2);max-width:78ch;margin-top:24px;font-size:14px;line-height:1.6}.nstack-landing .ns-method-note strong{color:var(--ns-ink);font-variant-numeric:tabular-nums;font-weight:540}.nstack-landing .ns-start-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.nstack-landing .ns-start-card{background:var(--ns-paper-3);border:1px solid var(--ns-rule);border-radius:12px;grid-template-columns:56px 1fr;align-items:start;gap:18px;padding:22px 22px 24px;display:grid}.nstack-landing .ns-start-step{font-family:var(--ns-display);font-variation-settings:"opsz" 144, "wght" 380, "SOFT" 60;letter-spacing:-.022em;color:var(--ns-accent);font-variant-numeric:tabular-nums;font-size:36px;line-height:1}.nstack-landing .ns-start-body h3{font-family:var(--ns-display);font-variation-settings:"opsz" 24, "wght" 480, "SOFT" 40;color:var(--ns-ink);letter-spacing:-.008em;margin:0 0 6px;font-size:18px}.nstack-landing .ns-start-body p{color:var(--ns-ink-2);margin:0 0 12px;font-size:13.5px;line-height:1.55}.nstack-landing .ns-start-cta{font-family:var(--ns-mono);color:var(--ns-accent);font-size:12px}.nstack-landing .ns-start-cta:hover{text-decoration:underline}@media (max-width:1180px){.nstack-landing .ns-hero,.nstack-landing .ns-api,.nstack-landing .ns-doc-grid{grid-template-columns:1fr;gap:32px}.nstack-landing .ns-toc{position:static}.nstack-landing .ns-method-grid,.nstack-landing .ns-start-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nstack-landing .ns-flow{grid-template-columns:minmax(0,1fr);gap:10px}.nstack-landing .ns-flow-arrow{display:none}.nstack-landing .ns-section-header{grid-template-columns:1fr;gap:10px;margin-bottom:28px}.nstack-landing .ns-quick-grid,.nstack-landing .ns-grid-3{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:14px}.nstack-landing .qcard,.nstack-landing .ns-grid-3 .col{padding:18px 16px 12px}.nstack-landing .qcard pre.term{margin:0 -16px;padding:14px 16px;font-size:11.5px}.nstack-landing .ns-arch-diagram{grid-template-columns:1fr}.nstack-landing .ns-arch-diagram .arrow{display:none}.nstack-landing .ns-topnav{gap:18px;font-size:13.5px}}@media (max-width:1024px){.nstack-landing .ns-topbar{grid-template-columns:1fr auto;gap:16px;padding:12px 16px}.nstack-landing .ns-brand-logo-img{margin-bottom:-2px;width:130px!important;height:20px!important}.nstack-landing .ns-brand-sep{height:14px;margin:0 12px;transform:translateY(2px)}.nstack-landing .ns-brand-product{font-size:15px}.nstack-landing .ns-topnav{border-top:1px solid var(--ns-rule-soft);-webkit-overflow-scrolling:touch;scrollbar-width:none;order:3;grid-column:1/-1;justify-content:flex-start;justify-self:stretch;gap:22px;padding:6px 24px 2px 0;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 0% calc(100% - 28px),#0000 100%);mask-image:linear-gradient(90deg,#000 0% calc(100% - 28px),#0000 100%)}.nstack-landing .ns-topnav::-webkit-scrollbar{display:none}.nstack-landing .ns-topnav .topnav-link{white-space:nowrap}}@media (max-width:860px){.nstack-landing .ns-quick-grid,.nstack-landing .ns-grid-3{grid-template-columns:1fr}.nstack-landing .qcard,.nstack-landing .ns-grid-3 .col{padding:22px 22px 0}.nstack-landing .qcard pre.term{margin:0 -22px;padding:16px 18px;font-size:12.5px}.nstack-landing .ns-grid-3 .col{padding-bottom:18px}.nstack-landing .ns-hero{padding:56px 0 40px}.nstack-landing h1.ns-hero-title{font-size:clamp(40px,8.5vw,64px)}}@media (max-width:720px){.nstack-landing .ns-shell{padding:0 16px}.nstack-landing .ns-topbar{border-radius:14px;margin:10px -16px 0;padding:10px 14px;top:8px}.nstack-landing .ns-brand-product{font-size:14px}.nstack-landing .ns-brand-sep{height:13px;margin:0 10px;transform:translateY(2px)}.nstack-landing .ns-brand-logo-img{margin-bottom:-2px;width:117px!important;height:18px!important}.nstack-landing .signin-pill{padding:7px 14px;font-size:12.5px}.nstack-landing .ns-eyebrow-pill{padding:6px 12px;font-size:10.5px}.nstack-landing .ns-footer{grid-template-columns:1fr;gap:16px}.nstack-landing .ns-footer .right{flex-wrap:wrap;gap:14px}.nstack-landing .ns-api-table .row{grid-template-rows:auto auto;grid-template-columns:60px 1fr}.nstack-landing .ns-api-table .n{text-align:left;color:var(--ns-term-muted);grid-column:2/-1}.nstack-landing .ns-snapshot{margin:32px -16px 48px}.nstack-landing .ns-snapshot-card{border-radius:12px}.nstack-landing .snap-board{-webkit-overflow-scrolling:touch;overflow-x:auto}.nstack-landing .snap-row{min-width:720px}.nstack-landing .snap-chrome{grid-template-columns:auto 1fr;gap:10px;padding:8px 10px}.nstack-landing .snap-url{min-width:0;max-width:100%;padding:4px 10px;font-size:10.5px}.nstack-landing .snap-url .path{text-overflow:ellipsis}.nstack-landing .snap-toolbar{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 16px}.nstack-landing .snap-footer{padding:10px 16px;font-size:10.5px}.nstack-landing .snap-footer .ts{width:100%;margin-left:0}}@media (max-width:520px){.nstack-landing .ns-topnav{gap:18px;font-size:13px}.nstack-landing h1.ns-hero-title{font-size:clamp(34px,10vw,52px);line-height:1.02}.nstack-landing .ns-hero-sub{max-width:42ch;font-size:15.5px}.nstack-landing .ns-hero-cta{gap:10px}.nstack-landing .ns-cta-primary,.nstack-landing .ns-cta-ghost{padding:11px 16px;font-size:13.5px}.nstack-landing .ns-runtimes ul{gap:6px 14px;font-size:12.5px}}.nstack-download-shell{--dl-paper:var(--background);--dl-paper-2:var(--muted);--dl-paper-3:var(--card);--dl-ink:var(--ink);--dl-ink-2:var(--ink-body);--dl-muted:var(--ink-mute);--dl-rule:var(--rule);--dl-rule-soft:var(--rule-soft);--dl-brand:var(--brand);--dl-brand-ink:var(--brand-deep);--dl-brand-soft:var(--brand-soft);--dl-term-bg:#0d0f12;--dl-term-fg:#e6e6e6;--dl-display:var(--font-serif), "Source Serif 4", "Iowan Old Style", Georgia, serif;--dl-body:var(--font-sans), -apple-system, "Segoe UI", Roboto, system-ui, sans-serif;--dl-mono:var(--font-mono), "JetBrains Mono", "SF Mono", ui-monospace, Menlo, monospace;background:var(--dl-paper);color:var(--dl-ink);font-family:var(--dl-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;isolation:isolate;justify-content:center;min-height:100vh;padding:64px 24px 96px;display:flex;position:relative}.nstack-download-shell:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(60vmax 60vmax at 100% 0%, color-mix(in oklab, var(--dl-brand) 9%, transparent) 0%, transparent 60%), radial-gradient(70vmax 70vmax at 0% 100%, color-mix(in oklab, var(--dl-brand) 6%, transparent) 0%, transparent 65%);position:fixed;inset:0}.nstack-download-card{background:color-mix(in oklab, var(--dl-paper-3) 96%, transparent);-webkit-backdrop-filter:saturate(140%)blur(10px);backdrop-filter:saturate(140%)blur(10px);border:1px solid color-mix(in oklab, var(--dl-rule) 55%, transparent);border-radius:16px;width:100%;max-width:720px;padding:48px 56px 44px;box-shadow:inset 0 1px #fff9,0 1px #15171c0a,0 24px 60px -28px #15171c38;box-shadow:inset 0 1px lab(100% -.0000298023 .0000119209/.6),0 1px lab(7.69138% .083901 -3.87992/.0392157),0 24px 60px -28px lab(7.69138% .083901 -3.87992/.219608)}.nstack-download-lockup{color:var(--dl-ink);align-items:center;margin-bottom:28px;text-decoration:none;display:inline-flex}.nstack-download-shell .ns-brand-lockup{color:var(--dl-ink);align-items:baseline;display:inline-flex}.nstack-download-shell .ns-brand-logo-img{color:var(--dl-ink);background-color:var(--dl-ink);margin-bottom:-3px}.nstack-download-shell .ns-brand-sep{background:color-mix(in oklab, var(--dl-rule) 65%, transparent);width:1px;height:16px;margin:0 14px;display:inline-block;transform:translateY(2px)}.nstack-download-shell .ns-brand-product{font-size:16px}.nstack-download-eyebrow{font-family:var(--dl-mono);letter-spacing:.16em;color:var(--dl-brand-ink);text-transform:uppercase;margin-bottom:14px;font-size:11px}.nstack-download-title{font-family:var(--dl-display);letter-spacing:-.018em;color:var(--dl-ink);font-variation-settings:"opsz" 96, "wght" 480, "SOFT" 60;margin:0 0 18px;font-size:44px;font-weight:480;line-height:1.04}.nstack-download-title em{font-variation-settings:"opsz" 96, "wght" 460, "SOFT" 80, "WONK" 1;color:var(--dl-brand-ink);font-style:italic}.nstack-download-lede{color:var(--dl-ink-2);max-width:56ch;margin:0 0 32px;font-size:15.5px;line-height:1.6}.nstack-download-lede code{font-family:var(--dl-mono);background:var(--dl-paper-2);border:1px solid var(--dl-rule-soft);border-radius:4px;padding:1px 6px;font-size:13.5px}.nstack-download-primary{border-top:1px solid var(--dl-rule-soft);margin-bottom:28px;padding-top:28px}.nstack-download-button{background:var(--dl-ink);width:100%;color:var(--dl-paper);border:1px solid var(--dl-ink);font-family:var(--dl-body);letter-spacing:-.005em;cursor:pointer;border-radius:999px;justify-content:space-between;align-items:center;gap:24px;padding:16px 22px 16px 26px;font-size:15px;font-weight:500;text-decoration:none;transition:transform 80ms,background .12s,box-shadow .12s;display:flex;box-shadow:inset 0 1px #ffffff26,0 10px 30px -16px #0f121d99}.nstack-download-button:hover{background:var(--dl-brand-ink);border-color:var(--dl-brand-ink);box-shadow:0 1px 0 #ffffff2e inset, 0 14px 36px -16px color-mix(in oklab, var(--dl-brand-ink) 60%, transparent);transform:translateY(-1px)}.nstack-download-button .nstack-download-meta{font-family:var(--dl-mono);letter-spacing:.04em;color:color-mix(in oklab, var(--dl-paper) 70%, transparent);text-transform:lowercase;font-size:11.5px;font-weight:400}.nstack-download-button:hover .nstack-download-meta{color:color-mix(in oklab, var(--dl-paper) 85%, transparent)}.nstack-download-autonote{color:var(--dl-muted);font-size:12.5px;font-family:var(--dl-mono);letter-spacing:.02em;margin:14px 4px 0}.nstack-download-empty{border-top:1px solid var(--dl-rule-soft);margin-bottom:28px;padding-top:28px}.nstack-download-empty p{color:var(--dl-ink-2);margin:0 0 12px;font-size:14.5px;line-height:1.6}.nstack-download-empty pre{background:var(--dl-term-bg);color:var(--dl-term-fg);font-family:var(--dl-mono);border-radius:8px;margin:0 0 16px;padding:16px 18px;font-size:12.5px;line-height:1.65;overflow-x:auto}.nstack-download-others{border-top:1px solid var(--dl-rule-soft);margin-bottom:28px;padding-top:22px}.nstack-download-others h2{font-family:var(--dl-mono);letter-spacing:.14em;color:var(--dl-muted);text-transform:uppercase;margin:0 0 12px;font-size:11px;font-weight:500}.nstack-download-others ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.nstack-download-others li{border-radius:6px;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 12px;transition:background .12s;display:flex}.nstack-download-others li:hover{background:color-mix(in oklab, var(--dl-brand) 8%, transparent)}.nstack-download-others li a{color:var(--dl-ink);font-size:14.5px;font-weight:500;text-decoration:none}.nstack-download-others li a:hover{color:var(--dl-brand-ink)}.nstack-download-others li span{font-family:var(--dl-mono);color:var(--dl-muted);font-size:12px}.nstack-download-install{border-top:1px solid var(--dl-rule-soft);margin-bottom:28px;padding-top:24px}.nstack-download-install h3{font-family:var(--dl-mono);letter-spacing:.14em;color:var(--dl-muted);text-transform:uppercase;margin:0 0 14px;font-size:11px;font-weight:500}.nstack-download-install ol{color:var(--dl-ink-2);flex-direction:column;gap:12px;margin:0;padding-left:22px;font-size:14.5px;line-height:1.6;display:flex}.nstack-download-install ol li code{font-family:var(--dl-mono);background:var(--dl-paper-2);border:1px solid var(--dl-rule-soft);border-radius:4px;padding:1px 6px;font-size:13px}.nstack-download-install ol li strong{color:var(--dl-ink);font-weight:600}.nstack-download-install pre{background:var(--dl-term-bg);color:var(--dl-term-fg);font-family:var(--dl-mono);border-radius:6px;margin:8px 0 0;padding:12px 16px;font-size:12px;line-height:1.7;overflow-x:auto}.nstack-download-back{font-family:var(--dl-mono);color:var(--dl-muted);letter-spacing:.02em;margin-top:16px;font-size:12.5px;text-decoration:none;transition:color .12s;display:inline-block}.nstack-download-back:hover{color:var(--dl-brand-ink)}@media (max-width:720px){.nstack-download-shell{padding:40px 16px 64px}.nstack-download-card{padding:32px 24px 28px}.nstack-download-title{font-size:30px}.nstack-download-button{flex-direction:column;align-items:flex-start;gap:8px}}
