@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/hanken-grotesk-latin-300-normal-wosZoRtn.woff2) format("woff2"),url(/assets/hanken-grotesk-latin-300-normal-Baw5zh9H.woff) format("woff")}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/hanken-grotesk-latin-400-normal-DvAPX8Ky.woff2) format("woff2"),url(/assets/hanken-grotesk-latin-400-normal-aeCyImQL.woff) format("woff")}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/hanken-grotesk-latin-500-normal-CMx6WMv6.woff2) format("woff2"),url(/assets/hanken-grotesk-latin-500-normal-DxXXtZGF.woff) format("woff")}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/hanken-grotesk-latin-600-normal-Bb1smyI_.woff2) format("woff2"),url(/assets/hanken-grotesk-latin-600-normal-DdwR8jjJ.woff) format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2) format("woff2"),url(/assets/dm-mono-latin-400-normal--0xN8mdc.woff) format("woff")}:root{color-scheme:light dark;--bg: #f7f6f2;--card: #fdfcf8;--ink: #302d35;--muted: #6a636d;--line: #ddd7da;--dot: #d9d4cb;--violet: #6f4fa8;--violet-soft: #ece4f1;--sage: #4a6f54;--clay: #b04a3a;--unknown: #716b77;--edge: #8f7ab5;--edge-quiet: #857f8b;--font-sans: "Hanken Grotesk", system-ui, sans-serif;--font-mono: "DM Mono", ui-monospace, monospace}@media(prefers-color-scheme:dark){:root{--bg: #16141a;--card: #201d27;--ink: #ece8ee;--muted: #a8a1b0;--line: #3a3542;--dot: #2a2631;--violet: #b9a0e6;--violet-soft: #2c2538;--sage: #8fbf9a;--clay: #ec9482;--unknown: #9a94a2;--edge: #8c76b8;--edge-quiet: #8f8998}}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 1px 1px,var(--dot) 1px,transparent 0);background-size:22px 22px}button,a{font:inherit}:focus-visible{outline:2px solid var(--violet);outline-offset:3px}.mono{font-family:var(--font-mono)}.muted{color:var(--muted)}.eyebrow{margin:0;font:400 11px var(--font-mono);letter-spacing:.12em;color:var(--muted)}.button,.icon-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 15px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink);font-size:13px;text-decoration:none;cursor:pointer;transition:border-color .15s,background-color .15s}.button:hover,.icon-button:hover{border-color:var(--violet)}.button.primary{background:var(--violet);border-color:var(--violet);color:var(--bg);font-weight:500;padding:11px 20px;font-size:14px}.button.primary:hover{filter:brightness(1.08)}.login{position:relative;min-height:100%;display:grid;place-items:center start;padding:clamp(24px,8vw,120px);overflow:hidden}.login-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.login:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 88%,transparent) 30%,transparent 62%)}@media(max-width:760px){.login:after{background:color-mix(in srgb,var(--bg) 78%,transparent)}}.login-body{position:relative;z-index:1;max-width:560px}.github-mark{flex:none;fill:currentColor}.button.primary:has(.github-mark){gap:10px}.login h1{margin:18px 0 16px;font-weight:300;font-size:clamp(34px,5vw,60px);line-height:1.08;letter-spacing:-.035em}.lede{margin:0 0 28px;color:var(--muted);max-width:460px}.login-problem{margin:0 0 20px;padding:10px 14px;border-left:3px solid var(--clay);background:var(--card);color:var(--ink);font-size:14px}.boot{padding:40px;color:var(--muted);font-size:13px}.shell{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}.masthead{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:clamp(18px,3vw,36px) clamp(16px,3.4vw,48px) 0}.titles h1{margin:10px 0 6px;font-weight:300;font-size:clamp(28px,3.8vw,50px);line-height:1.1;letter-spacing:-.035em}.sub{margin:0;font-size:13px;color:var(--muted)}.actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.who{font-size:12px;color:var(--muted)}.banner{margin:14px clamp(16px,3.4vw,48px) 0;padding:9px 14px;border-left:3px solid var(--clay);background:var(--card);font-size:13px}.stage{position:relative;min-height:0;display:flex}.map-host{flex:1;min-width:0;min-height:0}svg.map{width:100%;height:100%;display:block}.edge{fill:none;stroke:var(--edge);stroke-width:1.6;transition:opacity .25s,stroke-width .25s}.edge[data-kind=api]{stroke:var(--edge-quiet);stroke-dasharray:7 6;stroke-width:1.4}.edge[data-kind=protocol]{stroke:var(--edge-quiet);stroke-dasharray:1 7;stroke-linecap:round;stroke-width:2.2}.edge[data-hot=true]{stroke-width:2.6}.edge[data-dim=true]{opacity:.08}.arrowhead{fill:var(--edge);fill:context-stroke}.particle{fill:var(--violet);opacity:0;transition:opacity .25s}.particle[data-active=true]{opacity:.95}.particle[data-dim=true]{opacity:.05}.node{cursor:pointer;outline:none;--state: var(--unknown)}.node[data-state=ready]{--state: var(--sage)}.node[data-state=not-ready]{--state: var(--clay)}.node[data-state=unknown],.node[data-state=not-deployed]{--state: var(--unknown)}.node .disc,.node .ring,.node .halo{transition:opacity .25s,stroke .6s}.node[data-dim=true] .disc,.node[data-dim=true] .ring{opacity:.2}.node[data-dim=true] .glyph,.node[data-dim=true] .name,.node[data-dim=true] .rev,.node[data-state=not-deployed] .glyph,.node[data-state=not-deployed] .name,.node[data-state=not-deployed] .rev{fill:var(--muted)}.node[data-state=not-deployed] .disc{opacity:.5}.node[data-state=not-deployed] .ring{opacity:.8}.node[data-state=not-deployed][data-dim=true] .disc,.node[data-state=not-deployed][data-dim=true] .ring{opacity:.12}.node .disc{fill:var(--card);stroke:var(--line);stroke-width:1}.node .ring{fill:none;stroke:var(--state);stroke-width:4;transition:stroke .6s}.node[data-state=unknown] .ring{stroke-dasharray:5 6;stroke-linecap:round}.node[data-state=not-deployed] .ring{stroke-dasharray:1 7;stroke-linecap:round;stroke-width:2.5}.node .halo{fill:none;stroke:var(--violet);stroke-width:2;opacity:0;transition:opacity .15s}.node:focus-visible .halo,.node[data-selected=true] .halo{opacity:1}.node[data-role=upstream] .disc,.node[data-role=downstream] .disc,.node[data-role=both] .disc,.node[data-role=self] .disc{stroke:var(--violet);stroke-width:1.5}.node .glyph{fill:var(--state);font:500 20px var(--font-mono);text-anchor:middle;pointer-events:none;transition:fill .6s}.node .name,.node .rev{text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:var(--bg);stroke-width:6px;stroke-linejoin:round}.node .name{fill:var(--ink);font:500 15px var(--font-sans)}.node .rev{fill:var(--muted);font:400 12px var(--font-mono)}.node[data-state=not-ready] .ring{animation:attention 2.4s ease-in-out infinite}@keyframes attention{50%{stroke-width:6}}.panel{flex:0 0 min(400px,38vw);margin:0 clamp(12px,3.4vw,48px) 12px 0;overflow:auto;padding:22px 22px 26px;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:0 18px 40px -24px #00000059;animation:slide .25s ease both}.panel[hidden]{display:none}@keyframes slide{0%{opacity:0;transform:translate(14px)}}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.panel h2{margin:6px 0 12px;font-weight:300;font-size:30px;letter-spacing:-.03em;line-height:1.1}.pill{display:inline-flex;align-items:center;gap:8px;margin:0 0 18px;padding:3px 12px 3px 4px;border:1px solid var(--state, var(--line));border-radius:99px;font-size:13px;color:var(--ink);--state: var(--unknown)}.pill[data-state=ready]{--state: var(--sage)}.pill[data-state=not-ready]{--state: var(--clay)}.pill-glyph{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--state);color:var(--bg);font:500 12px var(--font-mono)}.panel-label{margin:0 0 4px;font:400 11px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.facts{margin:0 0 22px}.facts dd{margin:0 0 14px;font-size:13px;word-break:break-all}.panel-section{margin-bottom:22px}.checks,.links{list-style:none;margin:0;padding:0}.check{display:grid;grid-template-columns:18px 1fr auto;gap:2px 8px;padding:9px 0;border-top:1px solid var(--line);font-size:14px}.check-glyph{font-family:var(--font-mono);color:var(--sage)}.check[data-ok=false] .check-glyph,.check[data-ok=false] .check-state{color:var(--clay)}.check-state{font:400 12px var(--font-mono);color:var(--muted)}.check-detail{grid-column:2 / 4;font-size:12px;word-break:break-word}.links li{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;padding:8px 0;border-top:1px solid var(--line);font-size:13px}.link{padding:0;border:0;background:none;color:var(--violet);font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.edge-kind{font:400 11px var(--font-mono);color:var(--muted)}.edge-label{flex-basis:100%;font-size:12px}.legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;padding:12px clamp(16px,3.4vw,48px) 18px;font-size:12px;color:var(--muted)}.legend-item{display:inline-flex;align-items:center;gap:7px;text-transform:capitalize}.legend-ring{width:18px;height:18px;fill:none;stroke-width:3;stroke:var(--unknown)}.legend-ring[data-state=ready]{stroke:var(--sage)}.legend-ring[data-state=not-ready]{stroke:var(--clay)}.legend-ring[data-state=unknown]{stroke-dasharray:4 4}.legend-ring[data-state=not-deployed]{stroke-dasharray:1 5;stroke-linecap:round}.legend-note{flex-basis:100%;max-width:760px}@media(max-width:720px){.masthead{flex-direction:column}.panel{position:absolute;left:12px;right:12px;bottom:12px;margin:0;max-height:70%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.space-step{max-width:420px}.space-form{display:grid;gap:8px;justify-items:start}.field-label{font-size:14px;font-weight:500}.field{width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--muted);border-radius:6px;background:var(--card);color:var(--ink);font:inherit;font-size:16px}.field[aria-invalid=true]{border-color:var(--clay)}.field-hint{margin:0;color:var(--muted);font-size:13px}.form-error{margin:0;color:var(--clay);font-size:14px;font-weight:500}.space-form .button{margin-top:10px}.space-form .button:disabled,.space-option:disabled{opacity:.6;cursor:progress}.space-list{display:grid;gap:8px;margin:0 0 12px;padding:0;list-style:none}.space-option{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;gap:16px;padding:10px 14px;border:1px solid var(--muted);border-radius:6px;background:var(--card);color:var(--ink);font:inherit;cursor:pointer;text-align:left}.space-option:hover{border-color:var(--violet)}.space-option-role{color:var(--muted);font-size:13px}
