@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(./jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(./jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(./jetbrains-mono-latin-700-normal-D3wTyLJW.woff)format("woff")}:root{--bg:#010603;--panel:#020e08f0;--line:#0f3a23;--line-hi:#1f7a47;--fg:#b9ffd6;--fg-strong:#effff5;--muted:#7fcf9f;--accent:#39ff88;--overlay:#7fd9ff;--warn:#ffb547;--stage-glow:#03160c;--font:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-cloud=azure]{--bg:#01030a;--panel:#020814f0;--line:#0d2547;--line-hi:#1f5aa8;--fg:#cfe6ff;--fg-strong:#f2f8ff;--muted:#8dbbf0;--accent:#2ea8ff;--overlay:#a9cbff;--stage-glow:#031331}:root[data-cloud=gcp]{--bg:#070401;--panel:#120a02f0;--line:#3d2708;--line-hi:#9a6212;--fg:#ffe8c2;--fg-strong:#fff7ea;--muted:#e0b574;--accent:#ffb000;--overlay:#ffdc8f;--stage-glow:#1e1102}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);font:13px/1.55 var(--font);-webkit-font-smoothing:antialiased}h1,h2,h3{color:var(--fg-strong);margin:0;font-weight:700}a{color:var(--accent)}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}ul,ol{margin:0;padding:0;list-style:none}.app{grid-template-rows:auto minmax(0,1fr);grid-template-columns:290px minmax(0,1fr) 390px;height:100vh;display:grid}.topbar{border-bottom:1px solid var(--line);background:var(--panel);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px 20px;padding:10px 16px;display:flex}.clouds{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cloud-aws{--c:#39ff88}.cloud-azure{--c:#2ea8ff}.cloud-gcp{--c:#ffb000}.cloud{letter-spacing:.14em;text-transform:uppercase;color:var(--c);border:1px solid color-mix(in srgb, var(--c) 40%, transparent);cursor:pointer;background:0 0;padding:6px 16px;font-size:12px}.cloud:hover{border-color:var(--c)}.cloud[aria-pressed=true]{border-color:var(--c);background:color-mix(in srgb, var(--c) 14%, transparent);box-shadow:0 0 14px color-mix(in srgb, var(--c) 45%, transparent)}.outline{border-right:1px solid var(--line);background:var(--panel);padding:18px 14px 24px;overflow-y:auto}.brand h1{letter-spacing:.02em;font-size:15px}.brand .eyebrow{margin-bottom:2px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 4px;font-size:11px}.section{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:18px 0 6px;font-size:11px}.sub{color:var(--muted);margin:10px 0 4px 10px;font-size:11px;font-weight:400}.row{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;align-items:baseline;gap:8px;width:100%;padding:5px 8px;display:flex}.row:hover{border-color:var(--line-hi)}.row[aria-current],.row[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent);color:var(--fg-strong)}.row .lvl{color:var(--accent);flex:0 0 2.2em}.row.node{color:var(--muted);padding-left:34px}.row.node[aria-current]{color:var(--fg-strong)}.toggle{justify-content:space-between}.toggle .state{color:var(--muted)}.toggle[aria-pressed=true] .state{color:var(--overlay)}.legend{color:var(--muted);grid-template-columns:max-content 1fr;gap:2px 10px;margin:0;display:grid}.legend dt{color:var(--fg)}.legend dd{margin:0}.fineprint{color:var(--muted);margin-top:18px;font-size:11px}.stage{background:radial-gradient(ellipse at 50% 55%, var(--stage-glow) 0%, var(--bg) 70%);min-width:0;position:relative;overflow:hidden}.canvas{position:absolute;inset:0}.stage:before,.stage:after{content:"";border:2px solid var(--line-hi);pointer-events:none;z-index:2;width:28px;height:28px;position:absolute}.stage:before{border-bottom:0;border-right:0;top:12px;left:12px}.stage:after{border-top:0;border-left:0;bottom:12px;right:12px}.explore{background:var(--panel);border:1px solid var(--line-hi);cursor:pointer;padding:5px 10px;position:absolute;top:14px;right:16px}.explore[aria-pressed=true]{border-color:var(--accent);color:var(--fg-strong)}.notice{border:1px solid var(--line-hi);background:var(--panel);margin:0;padding:10px 12px;position:absolute;inset:auto 24px 24px}.inline{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.perf{color:var(--accent);pointer-events:none;font-size:11px;position:absolute;bottom:14px;left:16px}.panel{border-left:1px solid var(--line);background:var(--panel);padding:18px 18px 28px;overflow-y:auto}.panel h2{margin-bottom:8px;font-size:17px;line-height:1.3}.panel h2:focus{outline:none}.panel h2:focus-visible{outline:2px solid var(--accent)}.panel h3{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:16px 0 6px;font-size:11px}.role{color:var(--fg-strong);margin:0 0 12px}.facts{margin:0}.facts dt{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:10px;font-size:11px}.facts dd{margin:2px 0 0}.facts li{margin:2px 0}.proto{color:var(--muted);font-size:11px;display:block}.link{color:var(--accent);text-align:left;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.doc{border-top:1px solid var(--line);margin-top:14px;padding-top:10px}.doc p{margin:0 0 10px}.doc ul{margin:0 0 10px 1.2em;list-style:square}.doc code{color:var(--fg-strong)}.actions{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.actions button,.controls button{border:1px solid var(--line-hi);cursor:pointer;background:0 0;padding:5px 10px}.actions button:hover,.controls button:hover:not(:disabled){border-color:var(--accent)}.controls{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.controls button[aria-pressed=true]{border-color:var(--accent);color:var(--fg-strong);background:color-mix(in srgb, var(--accent) 8%, transparent)}.controls button:disabled{opacity:.45;cursor:default}.sources li{overflow-wrap:anywhere;margin:3px 0;font-size:12px}.narration{border-left:2px solid var(--accent);min-height:5.5em;color:var(--fg-strong);margin:8px 0 0;padding-left:10px;font-size:14px}.steps{counter-reset:step;margin-top:8px}.steps li{counter-increment:step}.step{text-align:left;width:100%;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;padding:5px 8px 5px 34px;display:block;position:relative}.step:before{content:counter(step, decimal-leading-zero);color:var(--muted);position:absolute;left:8px}.steps li[aria-current=step] .step{border-color:var(--accent);color:var(--fg-strong)}.steps li[aria-current=step] .step:before{color:var(--accent)}.cards li{margin:0 0 6px}.card{text-align:left;border:1px solid var(--line);cursor:pointer;background:0 0;width:100%;padding:8px 10px;display:block}.card:hover{border-color:var(--accent)}.card strong{color:var(--fg-strong);display:block}.card span{color:var(--muted);margin-top:2px;display:block}.intro ul{margin:0 0 4px 1.2em;list-style:square}.intro li{margin:3px 0}.scanlines{z-index:10;pointer-events:none;background:repeating-linear-gradient(#0000 0 2px,#00000029 2px 3px);position:fixed;inset:0}@media (width<=767px){.app{flex-direction:column;height:auto;display:flex}.topbar{order:0}.stage{order:1;height:46vh;min-height:280px}.outline{border-right:0;border-bottom:1px solid var(--line);order:2;padding:14px 16px}.panel{border-left:0;order:3;padding:16px}.floors{flex-wrap:wrap;gap:6px;display:flex}.floors>li{flex:100%}.explore,.legend{display:none}}
