@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-mono-latin-400-normal-DTRLJnHl.woff2)format("woff2"),url(/assets/geist-mono-latin-400-normal-B2yvC1Cq.woff)format("woff")}@layer reset{*,:before,:after{box-sizing:border-box}html,body{background:var(--color-canvas);min-block-size:100%;margin:0}button,input{font:inherit}}@layer tokens{@property --orange-500{syntax:"<color>";inherits:true;initial-value:oklch(67.1% .199 34.283)}:root{--orange-500:oklch(67.1% .199 34.283);--orange-700:oklch(57.6% .172 33.988);--salmon-300:oklch(84.1% .096 53.099);--red-400:oklch(72% .14 25);--gray-0:oklch(0% 0 0);--gray-50:oklch(96.1% 0 0);--gray-100:oklch(100% 0 0);--gray-300:oklch(75.4% 0 0);--gray-400:oklch(64.7% 0 0);--gray-800:oklch(32.1% 0 0);--gray-900:oklch(20% 0 0);--stone-300:oklch(82.6% .018 81.324);--sky-400:oklch(75.6% .113 247.375);--blue-600:oklch(56.7% .161 251.722);--navy-800:oklch(29.1% .114 266.769);--violet-400:oklch(67.3% .206 307.319);--lime-400:oklch(80.3% .174 129.553);--font-heading:"Plus Jakarta Sans Variable", "Plus Jakarta Sans", Arial, sans-serif;--font-body:"Inter Variable", Inter, Arial, sans-serif;--text-display-xl-size:5rem;--text-display-xl-leading:1;--text-display-xl-tracking:0;--text-display-xl-weight:400;--text-display-lg-size:3.75rem;--text-display-lg-leading:1.13;--text-display-lg-tracking:-.02em;--text-display-lg-weight:400;--text-display-md-size:2.75rem;--text-display-md-leading:1.11;--text-display-md-tracking:-.02em;--text-display-md-weight:500;--text-heading-md-size:2.25rem;--text-heading-md-leading:1.11;--text-heading-md-tracking:0;--text-heading-md-weight:500;--text-heading-sm-size:1.5rem;--text-heading-sm-leading:1.33;--text-heading-sm-tracking:0;--text-heading-sm-weight:500;--text-heading-xs-size:1.5rem;--text-heading-xs-leading:1.33;--text-heading-xs-tracking:0;--text-heading-xs-weight:400;--text-body-lg-size:1.25rem;--text-body-lg-leading:1.33;--text-body-lg-tracking:0;--text-body-lg-weight:400;--text-body-md-size:1.125rem;--text-body-md-leading:1.33;--text-body-md-tracking:0;--text-body-md-weight:400;--text-body-sm-size:1rem;--text-body-sm-leading:1.4;--text-body-sm-tracking:0;--text-body-sm-weight:400;--text-label-md-size:1rem;--text-label-md-leading:1.5;--text-label-md-tracking:0;--text-label-md-weight:500;--text-label-sm-size:.875rem;--text-label-sm-leading:1.52;--text-label-sm-tracking:0;--text-label-sm-weight:500;--text-caption-size:.875rem;--text-caption-leading:1.33;--text-caption-tracking:0;--text-caption-weight:400;--text-nav-size:.875rem;--text-nav-leading:1.43;--text-nav-tracking:0;--text-nav-weight:400;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:2.5rem;--space-7:5rem;--measure-wide:86rem;--radius-none:0;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.5rem;--radius-pill:6.25rem;--radius-full:9999px;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-brand:var(--orange-500);--color-brand-hover:var(--orange-700);--color-canvas:var(--gray-0);--color-surface:var(--gray-900);--color-ink:var(--gray-100);--color-ink-muted:var(--gray-400);--color-ink-subtle:var(--gray-300);--color-hairline:oklch(42% 0 0);--color-frame:oklch(48% 0 0);--color-danger:var(--red-400);--graph-accent:var(--color-brand);--font-display:var(--font-heading);--font-ui:var(--font-body);--font-mono:"Geist Mono", ui-monospace, monospace;--button-primary-bg:var(--color-brand);--button-primary-fg:var(--color-canvas);--button-primary-radius:var(--radius-none);--button-primary-pad-block:.75rem;--button-primary-pad-inline:var(--space-3);--button-primary-min-block:2.75rem;--button-secondary-bg:transparent;--button-secondary-fg:var(--color-ink);--button-secondary-border:var(--color-ink);--button-secondary-radius:var(--radius-none);--card-bg:transparent;--card-fg:var(--color-ink);--card-pad:var(--space-4);--card-radius-tight:var(--radius-none);--input-bg:transparent;--input-fg:var(--color-ink-subtle);--input-border:var(--color-hairline);--input-radius:var(--radius-none);--input-min-block:2.75rem}}@layer layouts{.page{--measure:48rem;--page-gutter:var(--space-5);gap:var(--space-4);inline-size:min(var(--measure), calc(100% - var(--page-gutter)));min-block-size:100dvh;padding-block:max(var(--space-5), env(safe-area-inset-top)) max(var(--space-5), env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);place-content:center;justify-items:stretch;margin-inline:auto;display:grid}}@layer base{html{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;scrollbar-gutter:stable}body{background:var(--color-canvas);color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-body-sm-size);font-variant-numeric:tabular-nums;font-weight:var(--text-body-sm-weight);letter-spacing:var(--text-body-sm-tracking);min-block-size:100dvh;line-height:1.5}a{color:var(--graph-accent);text-underline-offset:.18em;text-underline-position:from-font;text-decoration-thickness:from-font}a:hover{color:var(--color-ink)}::selection{background:var(--graph-accent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--graph-accent);outline-offset:2px}}@layer components{.intro h1{font-size:var(--text-heading-sm-size);letter-spacing:.02em;font-weight:400;line-height:var(--text-heading-sm-leading);text-wrap:balance;margin:0}.lede{color:var(--color-ink-muted);margin-block:var(--space-2) 0;text-wrap:pretty}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.found-note,.hint{color:var(--color-ink-muted);margin:0}.locker-href{overflow-wrap:anywhere;margin:0}.graph-frame{background:var(--color-canvas);border:1px dashed var(--color-frame);border-radius:var(--radius-none);color:var(--color-ink);gap:var(--space-4);padding:var(--space-5) var(--space-4);display:grid;position:relative}.graph-frame:before{background:var(--color-canvas);color:var(--color-ink);content:"[ " attr(data-title) " ]";letter-spacing:.04em;padding-inline:.5ch;position:absolute;inset-block-start:0;inset-inline-start:var(--space-4);translate:0 -50%}.graph-corner{background:var(--color-canvas);color:var(--color-ink-muted);pointer-events:none;padding-inline:.15ch;line-height:1;position:absolute}.graph-corner[data-edge=start-start]{inset-block-start:0;inset-inline-start:0;translate:-50% -50%}.graph-corner[data-edge=start-end]{inset-block-start:0;inset-inline-end:0;translate:50% -50%}.graph-corner[data-edge=end-start]{inset-block-end:0;inset-inline-start:0;translate:-50% 50%}.graph-corner[data-edge=end-end]{inset-block-end:0;inset-inline-end:0;translate:50% 50%}.field{gap:var(--space-2);display:grid}.field-label{color:var(--color-ink-muted);font-size:var(--text-caption-size);letter-spacing:.04em;line-height:var(--text-caption-leading)}.field input{background:var(--input-bg);border:0;border-block-end:1px solid var(--input-border);border-radius:var(--input-radius);caret-color:var(--graph-accent);color:var(--input-fg);font-size:var(--text-body-md-size);min-block-size:3.25rem;min-inline-size:0;padding-block:var(--space-3);inline-size:100%;padding-inline:0}.field input::placeholder{color:var(--color-ink-muted)}.field input:focus-visible,button:focus-visible{outline:2px solid var(--graph-accent);outline-offset:2px}.actions-row{gap:var(--space-2);grid-template-columns:1fr auto;display:grid}.result .actions-row{grid-template-columns:auto auto;justify-content:start}.button-primary,.button-secondary{min-block-size:var(--button-primary-min-block);padding-block:var(--button-primary-pad-block);padding-inline:var(--space-4);transition:background-color .22s cubic-bezier(.215,.61,.355,1),border-color .22s cubic-bezier(.215,.61,.355,1),color .22s cubic-bezier(.215,.61,.355,1),opacity .22s cubic-bezier(.215,.61,.355,1),scale .22s cubic-bezier(.215,.61,.355,1)}.button-primary:active:not(:disabled),.button-secondary:active:not(:disabled){scale:.96}.button-primary{background:var(--button-primary-bg);border-radius:var(--button-primary-radius);color:var(--button-primary-fg);cursor:pointer;border:0}.button-primary:hover:not(:disabled){background:var(--color-brand-hover)}.button-secondary{background:var(--button-secondary-bg);border:1px solid var(--button-secondary-border);border-radius:var(--button-secondary-radius);color:var(--button-secondary-fg);cursor:pointer}.paste .button-secondary{min-inline-size:7.5rem}.button-secondary:hover:not(:disabled){border-color:var(--graph-accent);color:var(--graph-accent)}button:disabled{cursor:not-allowed;opacity:.45}.result{color:var(--color-ink-muted);opacity:1;transition:opacity .22s cubic-bezier(.215,.61,.355,1),translate .22s cubic-bezier(.215,.61,.355,1);translate:0}.result[data-kind=ok]{color:var(--color-ink)}.result[data-kind=invalid],.result[data-kind=blocked],.result[data-kind=limited],.result[data-kind=failed]{color:var(--color-danger)}.status{margin:0}@starting-style{.result{opacity:0;translate:0 .25rem}}@media (prefers-reduced-motion:reduce){.result,.button-primary,.button-secondary{transition:none}.button-primary:active:not(:disabled),.button-secondary:active:not(:disabled){scale:1}.chain-spin{stroke:var(--graph-accent);animation:none}.chain-edge path{stroke-dashoffset:0;animation:none}}.destination{font-size:var(--text-body-md-size);font-variant-numeric:tabular-nums;line-height:var(--text-body-md-leading);overflow-wrap:anywhere;text-wrap:pretty;margin:0}.method{color:var(--color-ink-muted);margin-block:var(--space-1) 0}.chain{--chain-curve:.65em;--chain-indent:var(--space-3);--chain-node:.95lh;--chain-line:var(--color-ink);margin-block:var(--space-3) 0;padding:0;list-style:none;display:grid}.chain .chain{margin-block:0;margin-inline-start:.5lh;padding-inline-start:var(--chain-indent)}.chain li{--chain-guide:1lh;opacity:.4;display:grid}.chain-row{align-items:start;column-gap:var(--space-2);grid-template-columns:var(--chain-guide) 1fr;isolation:isolate;padding-block:var(--space-1);z-index:1;display:grid;position:relative}.chain .chain>li{position:relative}.chain-edge{pointer-events:none;z-index:0;position:absolute;overflow:visible}.chain-edge path{fill:none;stroke:var(--chain-line);stroke-dasharray:1;stroke-dashoffset:1px;stroke-linecap:butt;stroke-linejoin:round;stroke-width:1px;vector-effect:non-scaling-stroke}.chain-edge[data-draw] path{animation:.22s cubic-bezier(.215,.61,.355,1) forwards chain-draw}.chain li[data-state=current],.chain li[data-state=done]{color:var(--color-ink);opacity:1}.chain li[data-state=failed]{color:var(--color-danger);opacity:1}.chain-mark{background:var(--color-canvas);block-size:var(--chain-node);border:1px solid var(--color-ink);inline-size:var(--chain-node);z-index:1;border-radius:50%;justify-self:center;place-items:center;margin-block-start:calc((1lh - var(--chain-node)) / 2);display:grid;position:relative}.chain-icon{block-size:72%;inline-size:72%;display:block;overflow:visible}.chain-icon path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.15px}.chain li[data-state=done] .chain-mark,.chain li[data-state=current] .chain-mark{color:var(--graph-accent)}.chain li[data-state=pending] .chain-mark{color:var(--color-ink-muted)}.chain li[data-state=failed] .chain-mark{color:var(--color-danger)}.chain-spin{animation:.7s linear infinite chain-spin}.chain-hop{overflow-wrap:anywhere;gap:.1em;min-inline-size:0;display:grid}.chain-detail{color:var(--color-ink-muted);overflow-wrap:anywhere}@keyframes chain-spin{to{rotate:1turn}}@keyframes chain-draw{to{stroke-dashoffset:0}}@media (forced-colors:active){.chain{--chain-line:CanvasText}.chain-mark{background:canvas;border-color:canvastext}.chain-edge path{stroke:canvastext}.graph-frame{border:1px dashed canvastext}.button-primary{color:buttontext;background:buttonface}.button-secondary{color:buttontext;border-color:buttonborder}:focus-visible{outline:2px solid highlight}}}@layer utilities;
