@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:optional;src:url(../media/033400d475fad6b1-s.197tvtifbphtu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:optional;src:url(../media/26daee0352f50a5f-s.2e115y8-hourl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:optional;src:url(../media/017d9bea37084d9b-s.p.41rroleoq1br7.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}.bricolage_grotesque_82bad395-module__w_n2ua__className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.bricolage_grotesque_82bad395-module__w_n2ua__variable{--font-display-ls:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/91bd2e40df15814e-s.19s5evoqhirey.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/a63431c4ac64ea8b-s.386o_ri1vb0yv.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/8b4ed0a90d903ab5-s.44dak0sams9f0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:100 900;font-display:optional;src:url(../media/c47649aa31f9e140-s.p.3lxpqujs87tck.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk Fallback;src:local(Arial);ascent-override:99.07%;descent-override:30.02%;line-gap-override:0.0%;size-adjust:100.94%}.hanken_grotesk_b7f021d8-module__6bzQ_a__className{font-family:Hanken Grotesk,Hanken Grotesk Fallback;font-style:normal}.hanken_grotesk_b7f021d8-module__6bzQ_a__variable{--font-body-ls:"Hanken Grotesk", "Hanken Grotesk Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:optional;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:optional;src:url(../media/cc545e633e20c56d-s.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:optional;src:url(../media/71b036adf157cdcf-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:optional;src:url(../media/89b21bb081cb7469-s.1fby2rem9ngyr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:optional;src:url(../media/3fe682a82f50d426-s.0vfdmo25voy_0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:optional;src:url(../media/70bc3e132a0a741e-s.3t6q91iet4nsy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_f9db7bfd-module__sfcMKq__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_f9db7bfd-module__sfcMKq__variable{--font-mono-js:"JetBrains Mono", "JetBrains Mono Fallback"}
.ls-root{--ls-canvas:#f1f3fa;--ls-surface:#fff;--ls-surface2:#eaeef8;--ls-text:#0b0d14;--ls-mute:#545b70;--ls-brand:#2563eb;--ls-brand2:#1e4fd1;--ls-signal:#2563eb;--ls-signal-ink:#1d4ed8;--ls-signal-dim:#c6d8ff;--ls-accent:#7c5cff;--ls-accent-ink:#6a3df5;--ls-accent-dim:#e4dcff;--ls-accent2:#0ea79e;--ls-accent2-ink:#0b8f88;--ls-accent2-dim:#bfede9;--ls-ok:#0e9f6e;--ls-amber:#b45309;--ls-line:#e2e6f1;--ls-line-soft:#edeff7;--ls-hi:#ffffffe6;--ls-glow:#2563eb24;--ls-grain:.02;--ls-shadow:0 1px 2px #0f172a0d, 0 20px 46px -22px #18204038;--ls-cta-text:#fff;background:var(--ls-canvas);color:var(--ls-text);font-family:var(--font-sans-ls,"Roboto",system-ui,sans-serif);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100vh;position:relative}.dark .ls-root{--ls-canvas:#08090d;--ls-surface:#101218;--ls-surface2:#181b23;--ls-text:#f5f7fb;--ls-mute:#98a0b2;--ls-brand:#3b82f6;--ls-brand2:#5b9bff;--ls-signal:#4f8bff;--ls-signal-ink:#83aeff;--ls-signal-dim:#1c2a49;--ls-accent:#9b7cff;--ls-accent-ink:#b7a2ff;--ls-accent-dim:#241e44;--ls-accent2:#2cd4c4;--ls-accent2-ink:#5fe3d6;--ls-accent2-dim:#0e3330;--ls-ok:#2dd4a7;--ls-amber:#fbbf24;--ls-line:#20232d;--ls-line-soft:#15171e;--ls-hi:#ffffff0f;--ls-glow:#4f8bff33;--ls-grain:.04;--ls-shadow:0 1px 2px #00000080, 0 30px 70px -28px #000000d9}.ls-atmosphere{pointer-events:none;z-index:0;position:fixed;inset:0}.ls-atmosphere:before{content:"";background:radial-gradient(58% 44% at 86% -6%, color-mix(in srgb, var(--ls-signal) 24%, transparent), transparent 60%), radial-gradient(48% 42% at 2% 4%, color-mix(in srgb, var(--ls-accent) 18%, transparent), transparent 62%), radial-gradient(54% 48% at 50% 114%, color-mix(in srgb, var(--ls-accent2) 15%, transparent), transparent 60%);position:absolute;inset:0}.ls-atmosphere:after{content:"";opacity:var(--ls-grain);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.ls-content{z-index:1;position:relative}.ls-display{font-family:var(--font-display,"Georgia",serif);letter-spacing:-.022em;font-weight:700;line-height:1.03}.ls-serif{font-family:var(--font-display,"Georgia",serif);letter-spacing:-.012em;font-weight:600}.ls-mono{font-family:var(--font-mono-ls,ui-monospace,monospace)}.ls-em{color:var(--ls-signal-ink);font-style:italic}.ls-eyebrow{font-family:var(--font-mono-ls,ui-monospace,monospace);letter-spacing:.2em;text-transform:uppercase;color:var(--ls-signal-ink);font-size:11px;font-weight:500}.ls-muted{color:var(--ls-mute)}.ls-card{background:linear-gradient(180deg, color-mix(in srgb, var(--ls-surface) 94%, var(--ls-canvas)), var(--ls-surface));border:1px solid var(--ls-line);box-shadow:var(--ls-shadow), inset 0 1px 0 var(--ls-hi);border-radius:18px;transition:transform .24s cubic-bezier(.22,.61,.36,1),box-shadow .24s,border-color .24s;position:relative}a.ls-card:hover,.ls-card.group:hover{border-color:var(--ls-signal-dim);box-shadow:var(--ls-shadow), inset 0 1px 0 var(--ls-hi), 0 0 0 1px color-mix(in srgb, var(--ls-signal) 20%, transparent);transform:translateY(-3px)}.ls-hairline{border-color:var(--ls-line)}.ls-chip{font-family:var(--font-mono-ls,"Roboto Mono",monospace);letter-spacing:.04em;color:var(--ls-mute);background:var(--ls-surface2);border:1px solid var(--ls-line);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;display:inline-flex}.ls-chip--on{color:var(--ls-signal-ink);border-color:var(--ls-signal-dim);background:0 0}.ls-chip--ok{color:var(--ls-ok);border-color:color-mix(in srgb, var(--ls-ok) 45%, transparent);background:0 0}.ls-ico{background:color-mix(in srgb, var(--ls-signal) 12%, var(--ls-surface));width:44px;height:44px;color:var(--ls-signal-ink);border:1px solid color-mix(in srgb, var(--ls-signal) 22%, transparent);border-radius:13px;justify-content:center;align-items:center;display:inline-flex}.ls-ico--violet{background:color-mix(in srgb, var(--ls-accent) 13%, var(--ls-surface));color:var(--ls-accent-ink);border-color:color-mix(in srgb, var(--ls-accent) 24%, transparent)}.ls-ico--teal{background:color-mix(in srgb, var(--ls-accent2) 15%, var(--ls-surface));color:var(--ls-accent2-ink);border-color:color-mix(in srgb, var(--ls-accent2) 28%, transparent)}.ls-ico--ok{background:color-mix(in srgb, var(--ls-ok) 13%, var(--ls-surface));color:var(--ls-ok);border-color:color-mix(in srgb, var(--ls-ok) 26%, transparent)}.ls-ico--amber{background:color-mix(in srgb, var(--ls-amber) 13%, var(--ls-surface));color:var(--ls-amber);border-color:color-mix(in srgb, var(--ls-amber) 26%, transparent)}.ls-btn{letter-spacing:-.01em;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;display:inline-flex}.ls-btn--primary{color:var(--ls-cta-text);background:linear-gradient(180deg, var(--ls-brand2), var(--ls-brand));box-shadow:0 10px 24px -10px color-mix(in srgb, var(--ls-brand) 70%, transparent), inset 0 1px 0 #ffffff4d}.ls-btn--primary:hover{box-shadow:0 16px 34px -10px color-mix(in srgb, var(--ls-brand) 78%, transparent), inset 0 1px 0 #ffffff61;transform:translateY(-1px)}.ls-btn--ghost{color:var(--ls-text);background:color-mix(in srgb, var(--ls-surface) 55%, transparent);border-color:var(--ls-line)}.ls-btn--ghost:hover{border-color:var(--ls-signal-dim);background:var(--ls-surface2)}.ls-btn:focus-visible{outline:2px solid var(--ls-signal);outline-offset:3px}.ls-link{color:var(--ls-signal-ink);font-weight:500;text-decoration:none}.ls-link:hover{text-underline-offset:3px;text-decoration:underline}.ls-navlink{color:var(--ls-mute);letter-spacing:-.01em;font-size:14px;font-weight:500;transition:color .15s}.ls-navlink:hover{color:var(--ls-text)}.ls-icon-btn{border:1px solid var(--ls-line);background:var(--ls-surface);width:38px;height:38px;color:var(--ls-text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:border-color .15s,background .15s;display:inline-flex}.ls-icon-btn:hover{border-color:var(--ls-signal-dim)}.ls-icon-btn:focus-visible{outline:2px solid var(--ls-signal);outline-offset:2px}.ls-sectionlabel{align-items:center;gap:14px;display:flex}.ls-sectionlabel .num{font-family:var(--font-mono-ls,"Roboto Mono",monospace);color:var(--ls-signal-ink);letter-spacing:.18em;font-size:11px}.ls-sectionlabel .rule{background:var(--ls-line);flex:1;height:1px}.ls-logomark{color:var(--ls-brand)}.sf-wrap{width:100%;position:relative}.sf-svg{width:100%;height:auto;display:block;overflow:visible}.sf-line{stroke:var(--ls-line);stroke-width:2px;fill:none}.sf-node-ring{fill:var(--ls-surface);stroke:var(--ls-signal-dim);stroke-width:1.5px}.sf-node-ring--src{stroke:var(--ls-brand)}.sf-node-ring--ok{stroke:color-mix(in srgb, var(--ls-ok) 60%, transparent)}.sf-node-ico{fill:var(--ls-signal-ink)}.sf-label{fill:var(--ls-mute);font-family:var(--font-mono-ls,"Roboto Mono",monospace);font-size:11px}.sf-stamp{fill:var(--ls-mute);font-family:var(--font-mono-ls,"Roboto Mono",monospace);font-size:12px}.sf-stamp b,.sf-stamp .hl{fill:var(--ls-signal-ink)}.sf-pulse{r:4;fill:var(--ls-signal);filter:drop-shadow(0 0 6px var(--ls-glow))}.sf-travel{offset-rotate:0deg;animation:2.8s linear infinite sf-travel}.sf-travel-1{animation-delay:0s}.sf-travel-2{animation-delay:.55s}.sf-travel-3{animation-delay:1.1s}@keyframes sf-travel{0%{offset-distance:0%;opacity:0}8%{opacity:1}92%{opacity:1}to{offset-distance:100%;opacity:0}}@media (prefers-reduced-motion:reduce){.sf-travel{offset-distance:60%;opacity:1;animation:none}}.reveal{opacity:1;transform:none}.reveal[data-reveal]{transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}.reveal[data-reveal=hidden]{opacity:0;transform:translateY(16px)}.reveal[data-reveal=in]{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal[data-reveal]{opacity:1;transition:none;transform:none}}.ls-meter{background:var(--ls-surface2);border:1px solid var(--ls-line);border-radius:999px;height:10px;overflow:hidden}.ls-meter>span{background:linear-gradient(90deg, var(--ls-brand2), var(--ls-signal));border-radius:999px;height:100%;display:block}.ls-rail{flex-wrap:wrap;align-items:center;gap:40px;display:flex}.ls-rail span{color:var(--ls-mute);font-family:var(--font-display,"Lato",Arial,sans-serif);opacity:.85;font-size:20px;font-weight:700}.ls-shot{border:1px solid var(--ls-line);background:var(--ls-surface2);box-shadow:inset 0 1px 0 var(--ls-hi);border-radius:12px;display:block;position:relative;overflow:hidden}.ls-shot__img{width:100%;height:auto;display:block}.ls-shot__bar{background:linear-gradient(180deg, var(--ls-surface), var(--ls-surface2));border-bottom:1px solid var(--ls-line);align-items:center;gap:6px;height:28px;padding:0 12px;display:flex}.ls-shot__dot{background:var(--ls-line);border-radius:999px;flex:none;width:8px;height:8px}.ls-shot__label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono-ls,ui-monospace,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--ls-mute);margin-left:8px;font-size:10px;overflow:hidden}.ls-shot__img--dark,.dark .ls-shot__img--light{display:none}.dark .ls-shot__img--dark{display:block}.dark .ls-shot{border-color:color-mix(in srgb, var(--ls-line) 60%, var(--ls-surface2));box-shadow:0 0 0 1px #ffffff0a}.ls-shot--pending{background:color-mix(in srgb, var(--ls-surface2) 65%, transparent);border-style:dashed;justify-content:center;align-items:center;display:flex}.ls-shot--pending span{font-family:var(--font-mono-ls,ui-monospace,monospace);letter-spacing:.18em;text-transform:uppercase;color:var(--ls-mute);font-size:11px}
