@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/familjen-grotesk-latin-400-normal.DOvmqNol.woff2)format("woff2"),url(/_astro/familjen-grotesk-latin-400-normal.DYohiwGD.woff)format("woff")}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/familjen-grotesk-latin-500-normal.BASv1Bog.woff2)format("woff2"),url(/_astro/familjen-grotesk-latin-500-normal.BJWE1t8Q.woff)format("woff")}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/familjen-grotesk-latin-600-normal.DR8FYmV8.woff2)format("woff2"),url(/_astro/familjen-grotesk-latin-600-normal.Cchso0CV.woff)format("woff")}@font-face{font-family:Familjen Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/familjen-grotesk-latin-700-normal.DP3KK2u2.woff2)format("woff2"),url(/_astro/familjen-grotesk-latin-700-normal.Cqh4U_Q6.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/jetbrains-mono-latin-400-normal.V6pRDFza.woff2)format("woff2"),url(/_astro/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(/_astro/jetbrains-mono-latin-700-normal.BYuf6tUa.woff2)format("woff2"),url(/_astro/jetbrains-mono-latin-700-normal.D3wTyLJW.woff)format("woff")}.reviewer-panel figcaption{font-family:var(--mono);color:var(--text-muted);text-align:center;margin-top:10px;font-size:13px}.reviewer-diagram{width:100%;height:auto;font-family:var(--font);display:block}.reviewer-diagram-narrow{max-width:520px;margin:0 auto;display:none}@media (width<=720px){.reviewer-diagram-wide{display:none}.reviewer-diagram-narrow{display:block}}.reviewer-diagram text{text-anchor:start}.reviewer-diagram text.mid,.reviewer-diagram .lane-label,.reviewer-diagram .boundary-label{text-anchor:middle}.reviewer-diagram text.tag[text-anchor=end]{text-anchor:end}.reviewer-diagram .boundary{fill:none;stroke:var(--line-strong);stroke-width:1px}.reviewer-diagram .boundary-gap{fill:var(--ground)}.reviewer-diagram .boundary-label{font-family:var(--mono);fill:var(--text-soft);font-size:12px}.reviewer-diagram .lane{fill:var(--surface);stroke:var(--line)}.reviewer-diagram .lane-label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;fill:var(--tangerine);font-size:11.5px}.reviewer-diagram .node{fill:var(--surface-2);stroke:var(--line-strong)}.reviewer-diagram .node.stops{stroke:var(--pink)}.reviewer-diagram .name{fill:var(--text);font-size:14px;font-weight:600}.reviewer-diagram .sub{fill:var(--text-soft);font-size:12.5px}.reviewer-diagram .sub.muted{fill:var(--text-muted)}.reviewer-diagram .sub.stops{fill:var(--pink)}.reviewer-diagram .label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;fill:var(--tangerine);font-size:10.5px}.reviewer-diagram .arrow{fill:none;stroke:var(--text-muted);stroke-width:1.25px}.reviewer-diagram .arrow-head{fill:var(--text-muted)}.reviewer-diagram .tag{font-family:var(--mono);fill:var(--text-soft);font-size:11.5px}:root{--ground:#160a22;--surface:#1e0f2e;--surface-2:#231236;--line:#33204a;--line-strong:#4a3462;--outline:#7a6690;--text:#fbf6f2;--text-soft:#d9cce6;--text-muted:#a898ba;--pink:#ff3b9e;--pink-deep:#c2186f;--tangerine:#ff8a3d;--cobalt:#3a5bff;--cobalt-text:#8ea0ff;--green-text:#7fe0a8;--plum:#2a1240;--paper:#fbf6f2;--paper-ink-2:#5a4c66;--paper-line:#e6d9e0;--font:"Familjen Grotesk", "Helvetica Neue", Arial, sans-serif;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--radius-s:12px;--radius-card:20px;--radius-l:24px;--pill:999px;--max:1240px;--gutter:24px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;color-scheme:dark;scroll-padding-top:24px}body{background:var(--ground);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:18px;line-height:1.55;overflow-x:clip}img,svg{max-width:100%;height:auto;display:block}a{color:var(--text);text-underline-offset:3px}a:hover{color:var(--pink)}:focus-visible{outline:3px solid var(--pink);outline-offset:3px;border-radius:6px}h1,h2,h3{letter-spacing:-.03em;margin:0;line-height:1.08}p{margin:0}button{font:inherit;cursor:pointer}.mono{font-family:var(--mono)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.honeypot{width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}.skip-link{z-index:50;background:var(--pink);color:var(--plum);border-radius:var(--pill);padding:10px 16px;font-weight:700;position:absolute;top:-60px;left:16px}.skip-link:focus{color:var(--plum);top:12px}.js [data-enhance][hidden]{display:flex}.js [data-tabs]:not([data-ready]) [role=tabpanel]:not(:first-of-type),.js [data-replay]:not([data-ready]) .step:not(:first-child){display:none}.container{max-width:var(--max);padding:0 var(--gutter);margin:0 auto}.narrow{max-width:820px;padding:0 var(--gutter);margin:0 auto}.section{padding-bottom:80px}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:28px;display:flex}.h-section{letter-spacing:-.035em;font-size:clamp(30px,4vw,44px)}.h-section small{color:var(--text-muted);letter-spacing:-.01em;margin-left:6px;font-size:.55em;font-weight:400}.grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:20px;display:grid}.grid-wide{grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr))}.split{flex-wrap:wrap;gap:24px;display:flex}.split>*{flex:320px;min-width:0}.split>.grow{flex:2 520px}.kicker{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--tangerine);font-size:13px}.label{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:12px}.meta{font-family:var(--mono);color:var(--text-muted);font-size:13px}.lede{color:var(--text-soft);max-width:720px;font-size:clamp(18px,2vw,21px);line-height:1.5}.h-page{letter-spacing:-.035em;font-size:clamp(38px,6vw,60px);line-height:1.04}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:24px}.card-raised{background:var(--surface-2);border-color:var(--line-strong)}.paper{background:var(--paper);color:var(--plum)}.paper a{color:var(--plum)}.paper a:hover{color:var(--pink-deep)}.btn{border-radius:var(--pill);border:1px solid var(--outline);min-height:48px;color:var(--text);background:0 0;justify-content:center;align-items:center;gap:8px;padding:12px 22px;font-size:17px;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--pink);color:var(--text)}.btn-primary{background:var(--pink);border-color:var(--pink);color:var(--plum);font-weight:700}.btn-primary:hover{background:var(--text);border-color:var(--text);color:var(--plum)}.btn-small{min-height:40px;padding:8px 16px;font-size:15px}.badge{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--pill);border:1px solid;align-items:center;gap:6px;padding:4px 10px;font-size:12px;line-height:1.4;display:inline-flex}.chip{border-radius:var(--pill);border:1px solid var(--outline);min-height:40px;color:var(--text-soft);font-family:var(--mono);background:0 0;align-items:center;padding:8px 16px;font-size:13px;text-decoration:none;display:inline-flex}.chip[aria-pressed=true],.chip[aria-selected=true],.chip[aria-current=page]{background:var(--paper);color:var(--plum);border-color:var(--paper)}.s-exploring{color:var(--cobalt-text)}.s-building{color:var(--tangerine)}.s-live{color:var(--green-text)}.s-finished{color:var(--text-soft)}.s-retired,.s-parked{color:var(--text-muted)}.draft-banner{color:var(--text);border-bottom:1px solid var(--tangerine);background:repeating-linear-gradient(135deg,#3a1a10 0 14px,#2e140c 14px 28px)}.draft-banner .container{font-family:var(--mono);padding-top:10px;padding-bottom:10px;font-size:13px}.draft-banner strong{color:var(--tangerine);letter-spacing:.08em}.draft-tag{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--tangerine);border:1px dashed var(--tangerine);border-radius:6px;padding:2px 6px;font-size:11px}.prose{color:#e9e0f0;font-size:19px;line-height:1.65}.prose>*+*,.prose>article>*+*{margin-top:1em}.prose h2{letter-spacing:-.02em;color:var(--text);margin-top:1.6em;font-size:30px}.prose h3{letter-spacing:-.015em;color:var(--text);margin-top:1.4em;font-size:23px}.prose a{color:var(--pink)}.prose a:hover{color:var(--text)}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.4em}.prose blockquote{border-left:3px solid var(--pink);color:var(--text-soft);margin:1.5em 0;padding-left:20px}.prose>blockquote:first-child:has(>p:first-child>strong:first-child),.prose>article>blockquote:first-child:has(>p:first-child>strong:first-child){background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--pink);border-radius:var(--radius-card);color:var(--text);margin-top:0;padding:20px 24px}.prose #a-real-review-abridged+blockquote{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:24px;font-size:17px;line-height:1.6}.prose #a-real-review-abridged+blockquote>*+*{margin-top:.9em}.prose #a-real-review-abridged+blockquote>ul{margin-top:.4em}.prose #a-real-review-abridged+blockquote>p:first-child em{font-family:var(--mono);color:var(--text-muted);font-size:13px;font-style:normal}.prose #a-real-review-abridged+blockquote strong{color:var(--text)}.prose code{font-family:var(--mono);background:var(--surface-2);border-radius:6px;padding:2px 6px;font-size:.85em}.prose pre{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-s);padding:16px;font-size:15px;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose img,.prose figure{border-radius:var(--radius-s);margin:1.5em 0}.held{border:1px dashed var(--tangerine);border-radius:var(--radius-card);margin:1.5em 0;padding:4px 20px 8px}.held-label{font-family:var(--mono);letter-spacing:.06em;color:var(--tangerine);font-size:12px}.prose figcaption{font-family:var(--mono);color:var(--text-muted);margin-top:8px;font-size:13px}.prose table{border-collapse:collapse;width:100%;font-size:16px;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;border-top:1px solid var(--line);vertical-align:top;padding:10px 8px}.annotation{background:var(--paper);color:var(--plum);border-radius:var(--radius-s);margin:.6em 0 1.4em;padding:14px 18px;font-size:16px;line-height:1.55;display:block}.annotation strong.annotation-label{color:var(--pink-deep);margin-right:4px}.annotation a{color:var(--pink-deep)}.paper .prose,.prose.on-paper{color:var(--plum)}.paper .prose a{color:var(--pink-deep)}.data-table{border-collapse:collapse;width:100%;font-size:15px}.data-table th,.data-table td{text-align:left;border-top:1px solid var(--line);vertical-align:top;padding:12px 8px}.data-table thead th{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);border-top:0;font-size:11px;font-weight:400}.table-scroll{overflow-x:auto}@media (width<=560px){:root{--gutter:16px}body{font-size:17px}.prose{font-size:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.wordmark[data-astro-cid-qisgtjgl]{letter-spacing:-.035em;color:var(--text);align-items:center;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.wordmark[data-astro-cid-qisgtjgl]:hover{color:var(--text)}.cursor[data-astro-cid-qisgtjgl]{background:var(--pink);width:.42em;height:.92em;margin-left:.12em;animation:1.1s step-end 4 blink;display:inline-block}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.cursor[data-astro-cid-qisgtjgl]{opacity:1;animation:none}}.site-header[data-astro-cid-nen7h5rs]{border-bottom:1px solid #2e1a44;position:relative}.bar[data-astro-cid-nen7h5rs]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:18px;padding-bottom:18px;display:flex}ul[data-astro-cid-nen7h5rs]{flex-wrap:wrap;align-items:center;gap:4px 20px;margin:0;padding:0;font-size:16px;list-style:none;display:flex}a[data-astro-cid-nen7h5rs]{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--pink);text-underline-offset:6px;text-decoration:underline 2px}.try[data-astro-cid-nen7h5rs],.out[data-astro-cid-nen7h5rs]{color:var(--pink);font-weight:600}.try[data-astro-cid-nen7h5rs]:hover,.out[data-astro-cid-nen7h5rs]:hover{color:var(--text)}.palette-open[data-astro-cid-nen7h5rs]{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--outline);border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:8px 12px;font-size:13px;display:inline-flex}.palette-open[data-astro-cid-nen7h5rs]:hover{color:var(--text);border-color:var(--pink)}.palette-icon[data-astro-cid-nen7h5rs]{display:none}@media (width<=560px),(hover:none){.palette-keys[data-astro-cid-nen7h5rs]{display:none}.palette-icon[data-astro-cid-nen7h5rs]{display:block}}@media (width<=560px){.palette-word[data-astro-cid-nen7h5rs]{display:none}ul[data-astro-cid-nen7h5rs]{gap:0 14px;font-size:15px}}.phone-tools[data-astro-cid-nen7h5rs]{display:none}.menu-btn[data-astro-cid-nen7h5rs]{border:1px solid var(--outline);border-radius:var(--pill);min-height:44px;color:var(--text);background:0 0;padding:8px 18px;font-size:15px;font-weight:600}.menu-btn[data-astro-cid-nen7h5rs]:hover,.menu-btn[data-astro-cid-nen7h5rs][aria-expanded=true]{border-color:var(--pink)}.phone-search[data-astro-cid-nen7h5rs] .palette-icon[data-astro-cid-nen7h5rs]{display:block}.phone-search[data-astro-cid-nen7h5rs]{border-radius:var(--pill);justify-content:center;min-width:44px;min-height:44px;padding:0}@media (width<=640px){.has-menu[data-astro-cid-nen7h5rs] .bar[data-astro-cid-nen7h5rs]{flex-wrap:nowrap}.has-menu[data-astro-cid-nen7h5rs] .phone-tools[data-astro-cid-nen7h5rs]{align-items:center;gap:10px;margin-left:auto;display:flex}.has-menu[data-astro-cid-nen7h5rs] nav[data-astro-cid-nen7h5rs]{z-index:40;background:var(--ground);padding:8px var(--gutter) 20px;border-bottom:1px solid #2e1a44;display:none;position:absolute;top:100%;left:0;right:0}.has-menu[data-astro-cid-nen7h5rs].menu-open nav[data-astro-cid-nen7h5rs]{animation:.16s ease-out menu-in;display:block}.has-menu[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{flex-direction:column;align-items:stretch;gap:0;font-size:18px}.has-menu[data-astro-cid-nen7h5rs] li[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--line)}.has-menu[data-astro-cid-nen7h5rs] li[data-astro-cid-nen7h5rs]:last-child{border-bottom:0}.has-menu[data-astro-cid-nen7h5rs] nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{min-height:52px;display:flex}.has-menu[data-astro-cid-nen7h5rs] nav[data-astro-cid-nen7h5rs] .palette-open[data-astro-cid-nen7h5rs]:not(.phone-search),.has-menu[data-astro-cid-nen7h5rs] li[data-astro-cid-nen7h5rs]:has(>.palette-open){display:none}}@keyframes menu-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.has-menu[data-astro-cid-nen7h5rs].menu-open nav[data-astro-cid-nen7h5rs]{animation:none}}html.menu-lock,html.menu-lock body{overflow:hidden}.nl-heading[data-astro-cid-drywyjjs]{letter-spacing:-.03em;font-size:26px}.nl-blurb[data-astro-cid-drywyjjs]{color:var(--text-soft);margin:10px 0 18px;font-size:16px}.nl-form[data-astro-cid-drywyjjs]{flex-wrap:wrap;gap:8px;display:flex}input[data-astro-cid-drywyjjs]{background:var(--surface-2);border:1px solid var(--outline);min-width:0;color:var(--text);border-radius:var(--pill);font:inherit;flex:220px;min-height:48px;padding:12px 18px;font-size:16px}input[data-astro-cid-drywyjjs]::placeholder{color:var(--text-muted)}.nl-wrap[data-astro-cid-jo6i4kqk]{border-top:1px solid #2e1a44;margin-top:40px;padding-top:48px;padding-bottom:56px}.site-footer[data-astro-cid-jo6i4kqk]{background:var(--plum);color:var(--text)}.cols[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:48px;padding-top:64px;padding-bottom:40px;display:flex}.brand[data-astro-cid-jo6i4kqk]{flex-direction:column;flex:2 320px;align-items:flex-start;gap:16px;display:flex}.brand-line[data-astro-cid-jo6i4kqk]{letter-spacing:-.02em;max-width:22ch;margin:0;font-size:22px;font-weight:700;line-height:1.25}.brand-muted[data-astro-cid-jo6i4kqk]{color:var(--text-soft);margin:0;font-size:15px}.brand-muted[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--pink)}.nowrap[data-astro-cid-jo6i4kqk]{white-space:nowrap}.fnav[data-astro-cid-jo6i4kqk]{flex-direction:column;flex:180px;gap:2px;font-size:17px;font-weight:600;display:flex}.fnav[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{min-height:44px;color:var(--text);align-items:center;gap:14px;text-decoration:none;display:flex}.fnav[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--pink)}.flabel[data-astro-cid-jo6i4kqk]{letter-spacing:.1em;text-transform:uppercase;color:var(--pink);margin-bottom:6px;font-size:12px;font-weight:700}.slot[data-astro-cid-jo6i4kqk]{width:28px;color:var(--text-soft);flex:none;justify-content:center;display:flex}.slot[data-astro-cid-jo6i4kqk] svg{display:block}.legal[data-astro-cid-jo6i4kqk]{border-top:1px solid #4a3360}.legal-row[data-astro-cid-jo6i4kqk]{color:var(--text-soft);flex-wrap:wrap;justify-content:space-between;gap:12px 24px;padding-top:24px;padding-bottom:40px;font-size:14px;display:flex}.legal-row[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--text-soft);align-items:center;min-height:44px;display:inline-flex}.deploy[data-astro-cid-jo6i4kqk]{color:var(--text-muted);align-self:center;font-size:13px}code[data-astro-cid-jo6i4kqk]{font-family:var(--mono)}@media (width<=640px){.cols[data-astro-cid-jo6i4kqk]{flex-direction:column;gap:36px;padding-top:48px}.brand[data-astro-cid-jo6i4kqk],.fnav[data-astro-cid-jo6i4kqk]{flex:none}.legal-row[data-astro-cid-jo6i4kqk]{flex-direction:column;gap:4px}.deploy[data-astro-cid-jo6i4kqk]{align-self:flex-start}}.palette[data-astro-cid-n5udgzh5]{border-radius:var(--radius-card);background:var(--surface-2);color:var(--text);border:1px solid #3a2552;width:min(640px,100vw - 32px);margin:12vh auto auto;padding:0}.palette[data-astro-cid-n5udgzh5]::backdrop{background:#0a0410b3}.field[data-astro-cid-n5udgzh5]{border-bottom:1px solid #3a2552;align-items:center;gap:12px;padding:14px 20px;display:flex}.prompt[data-astro-cid-n5udgzh5]{color:var(--text-muted);font-size:14px}input[data-astro-cid-n5udgzh5]{min-width:0;color:var(--text);font:inherit;background:0 0;border:0;flex:1;padding:6px 0;font-size:18px}input[data-astro-cid-n5udgzh5]:focus{outline:none}.field[data-astro-cid-n5udgzh5]:focus-within{box-shadow:inset 0 -2px 0 var(--pink)}ul[data-astro-cid-n5udgzh5]{max-height:50vh;margin:0;padding:8px;list-style:none;overflow-y:auto}ul[data-astro-cid-n5udgzh5] a{border-radius:10px;justify-content:space-between;gap:16px;padding:12px;text-decoration:none;display:flex}ul[data-astro-cid-n5udgzh5] [aria-selected=true] a{background:#2e1a44}ul[data-astro-cid-n5udgzh5] .kind{font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);flex-shrink:0;font-size:11px}.close[data-astro-cid-n5udgzh5]{width:40px;height:40px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex-shrink:0;place-items:center;margin-right:-8px;display:inline-grid}.close[data-astro-cid-n5udgzh5]:hover{color:var(--text);border-color:var(--outline)}.close[data-astro-cid-n5udgzh5]:focus-visible{outline:3px solid var(--pink);outline-offset:2px}.hint[data-astro-cid-n5udgzh5]{color:var(--text-muted);padding:0 20px 14px;font-size:12px}
