.pw[data-astro-cid-67lecco3]{--rail: 3.25rem;--node-y: 1.625rem;--gutter: 4rem;--x: calc(var(--gutter) / 2);--move: .8s;--t-cve: .4s;--t-m1: 2s;--t-stg: 2.8s;--t-test: 3.2s;--t-m2: 5.8s;--t-gate: 6.6s;--t-go: 8.4s;--t-m3: 8.9s;--t-live: 9.7s;--soft: color-mix(in srgb, var(--cx-ink) 22%, transparent);margin:0}.pw-head[data-astro-cid-67lecco3],.pw-kicker[data-astro-cid-67lecco3],.pw-token[data-astro-cid-67lecco3],.pw-chip[data-astro-cid-67lecco3],.pw-status[data-astro-cid-67lecco3],.pw-btn[data-astro-cid-67lecco3]{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.05em;text-transform:uppercase}.pw-frame[data-astro-cid-67lecco3]{border:1px solid var(--cx-line);border-radius:.75rem;background:var(--cx-line);overflow:hidden}.pw-head[data-astro-cid-67lecco3]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.25rem 1rem;padding:.75rem 1.25rem;background:var(--cx-paper);border-bottom:1px solid var(--cx-line);color:var(--cx-mute)}.pw-head-title[data-astro-cid-67lecco3]:before{content:"// ";color:var(--cx-green)}.pw-stack[data-astro-cid-67lecco3]{display:inline-grid;justify-items:start}.pw-stack[data-astro-cid-67lecco3]>[data-astro-cid-67lecco3]{grid-area:1 / 1}.pw-st[data-astro-cid-67lecco3]{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}.pw-head-status[data-astro-cid-67lecco3] .pw-st[data-astro-cid-67lecco3]:not(.pw-h5),.pw-status[data-astro-cid-67lecco3] .pw-a[data-astro-cid-67lecco3],.pw-ring[data-astro-cid-67lecco3],.pw-btn-idle[data-astro-cid-67lecco3],.pw-btn-wait[data-astro-cid-67lecco3]{opacity:0}@media(min-width:640px){.pw-head-status[data-astro-cid-67lecco3]{justify-items:end}}.pw-h4[data-astro-cid-67lecco3],.pw-h5[data-astro-cid-67lecco3]{color:var(--cx-green)}.pw-led[data-astro-cid-67lecco3]{width:6px;height:6px;border-radius:50%;background:var(--cx-mute);flex:none}.pw-led[data-astro-cid-67lecco3].is-ink{background:var(--cx-ink)}.pw-led[data-astro-cid-67lecco3].is-on{background:var(--cx-green)}.pw-ring[data-astro-cid-67lecco3]{display:block;width:8px;height:8px;border-radius:50%;border:1px solid var(--soft);flex:none}.pw-pro[data-astro-cid-67lecco3]{margin-top:.35rem;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--cx-green-deep)}.pw-check[data-astro-cid-67lecco3]{fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;flex:none}.pw-check[data-astro-cid-67lecco3] path[data-astro-cid-67lecco3]{stroke-width:1.5;stroke-dasharray:10}.pw-stations[data-astro-cid-67lecco3]{list-style:none;margin:0;padding:0;display:grid;gap:1px}.pw-station[data-astro-cid-67lecco3]{position:relative;background:var(--cx-paper);padding:1.125rem 1.25rem 1.25rem var(--gutter)}.pw-rail[data-astro-cid-67lecco3]{position:absolute;top:0;bottom:0;left:0;width:var(--gutter)}.pw-node[data-astro-cid-67lecco3],.pw-gate[data-astro-cid-67lecco3],.pw-token[data-astro-cid-67lecco3],.pw-seg[data-astro-cid-67lecco3]{position:absolute;z-index:1}.pw-node[data-astro-cid-67lecco3]{left:var(--x);top:var(--node-y);width:9px;height:9px;transform:translate(-50%,-50%);border-radius:50%;background:var(--cx-paper);border:1.5px solid var(--cx-green)}.pw-gate[data-astro-cid-67lecco3]{left:var(--x);top:calc(var(--node-y) + 1.5rem);width:24px;height:24px;transform:translate(-50%,-50%);z-index:2}.pw-gate[data-astro-cid-67lecco3]:before,.pw-gate[data-astro-cid-67lecco3]:after{content:"";position:absolute;top:50%;width:10px;height:2.5px;margin-top:-1.25px;border-radius:2px;background:var(--cx-green);translate:var(--o)}.pw-gate[data-astro-cid-67lecco3]:before{left:0;--o: -3px 0;--c: 2px 0}.pw-gate[data-astro-cid-67lecco3]:after{right:0;--o: 3px 0;--c: -2px 0}.pw-seg[data-astro-cid-67lecco3]{left:var(--x);top:var(--node-y);width:1px;height:calc(100% + 1px);transform:translate(-50%);background:var(--soft)}.pw-fill[data-astro-cid-67lecco3]{position:absolute;inset:0;background:var(--cx-green);transform-origin:top}.pw-dot[data-astro-cid-67lecco3]{position:absolute;left:50%;top:100%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:var(--cx-ink);opacity:0}.pw-token[data-astro-cid-67lecco3]{left:var(--x);top:var(--node-y);transform:translate(-50%,-50%);padding:.2rem .4rem;border-radius:.3rem;background:var(--cx-ink);color:var(--cx-paper);line-height:1;z-index:2;opacity:0}.pw-token[data-astro-cid-67lecco3].is-live{background:var(--cx-green);color:var(--cx-paper);opacity:1}.pw-pulse[data-astro-cid-67lecco3]{position:absolute;inset:-1px;border-radius:inherit;border:1px solid var(--cx-ink);opacity:0;pointer-events:none}.pw-kicker[data-astro-cid-67lecco3]{color:var(--cx-mute)}.pw-kicker[data-astro-cid-67lecco3] span[data-astro-cid-67lecco3]{color:var(--cx-green);margin-right:.25rem}.pw-title[data-astro-cid-67lecco3]{margin-top:.3rem;font-family:var(--font-display);font-weight:700;font-size:1.1875rem;line-height:1.15;color:var(--cx-ink)}.pw-note[data-astro-cid-67lecco3]{margin:.375rem 0 0;font-size:.8125rem;line-height:1.45;color:var(--cx-mute)}.pw-status[data-astro-cid-67lecco3]{margin-top:.875rem;color:var(--cx-mute)}.pw-status[data-astro-cid-67lecco3] .pw-b[data-astro-cid-67lecco3]{color:var(--cx-green)}.pw-chips[data-astro-cid-67lecco3]{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.75rem}.pw-chip[data-astro-cid-67lecco3]{padding:.25rem .45rem;border:1px solid var(--cx-line);border-radius:.375rem;color:var(--cx-mute);line-height:1}.pw-tests[data-astro-cid-67lecco3]{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.1rem 1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.pw-test[data-astro-cid-67lecco3]{display:flex;align-items:center;gap:.5rem;padding:.3rem 0;font-size:.875rem;color:var(--cx-ink)}.pw-test[data-astro-cid-67lecco3] .pw-check[data-astro-cid-67lecco3]{color:var(--cx-green)}.pw-test-icon[data-astro-cid-67lecco3]{width:14px;justify-items:center;align-items:center}.pw-test[data-astro-cid-67lecco3].is-compat{grid-column:1 / -1;margin-top:.25rem;padding-top:.5rem;border-top:1px dashed var(--cx-line)}.pw-button[data-astro-cid-67lecco3]{margin-top:.875rem}.pw-btn[data-astro-cid-67lecco3]{justify-content:center;gap:.4rem;padding:.5rem .75rem;border-radius:.5rem;border:1px solid var(--cx-line);line-height:1}.pw-btn-idle[data-astro-cid-67lecco3]{color:var(--cx-mute);border-style:dashed;border-color:var(--soft)}.pw-btn-wait[data-astro-cid-67lecco3]{color:var(--cx-ink);border-color:var(--cx-ink)}.pw-btn-go[data-astro-cid-67lecco3]{background:var(--cx-green);border-color:var(--cx-green);color:var(--cx-paper)}.pw-tick[data-astro-cid-67lecco3]{fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:14}@media(min-width:1024px){.pw-stations[data-astro-cid-67lecco3]{grid-template-columns:1fr 1.25fr 1.15fr .9fr}.pw-station[data-astro-cid-67lecco3]{padding:calc(var(--rail) + .25rem) 1.25rem 1.5rem}.pw-rail[data-astro-cid-67lecco3]{right:0;bottom:auto;width:auto;height:var(--rail)}.pw[data-astro-cid-67lecco3]{--x: calc(1.25rem + 5px) }.pw-gate[data-astro-cid-67lecco3]{left:calc(var(--x) + 3.75rem);top:var(--node-y)}.pw-gate[data-astro-cid-67lecco3]:before,.pw-gate[data-astro-cid-67lecco3]:after{left:50%;right:auto;top:auto;width:2.5px;height:10px;margin:0 0 0 -1.25px}.pw-gate[data-astro-cid-67lecco3]:before{top:0;--o: 0 -3px;--c: 0 2px}.pw-gate[data-astro-cid-67lecco3]:after{bottom:0;--o: 0 3px;--c: 0 -2px}.pw-token[data-astro-cid-67lecco3]{left:1.25rem;transform:translateY(-50%)}.pw-seg[data-astro-cid-67lecco3]{width:calc(100% + 1px);height:1px;transform:translateY(-50%)}.pw-fill[data-astro-cid-67lecco3]{transform-origin:left}.pw-dot[data-astro-cid-67lecco3]{top:50%;left:100%}.pw-tests[data-astro-cid-67lecco3]{grid-template-columns:1fr;gap:0}.pw-test[data-astro-cid-67lecco3].is-compat{margin-top:.35rem;padding-top:.55rem}}@media(prefers-reduced-motion:no-preference){.is-armed[data-astro-cid-67lecco3] .pw-h0[data-astro-cid-67lecco3],.is-armed[data-astro-cid-67lecco3] .pw-status[data-astro-cid-67lecco3] .pw-a[data-astro-cid-67lecco3],.is-armed[data-astro-cid-67lecco3] .pw-ring[data-astro-cid-67lecco3],.is-armed[data-astro-cid-67lecco3] .pw-btn-idle[data-astro-cid-67lecco3]{opacity:1}.is-armed[data-astro-cid-67lecco3] .pw-h5[data-astro-cid-67lecco3],.is-armed[data-astro-cid-67lecco3] .pw-status[data-astro-cid-67lecco3] .pw-b[data-astro-cid-67lecco3],.is-armed[data-astro-cid-67lecco3] .pw-test[data-astro-cid-67lecco3] .pw-check[data-astro-cid-67lecco3],.is-armed[data-astro-cid-67lecco3] .pw-btn-go[data-astro-cid-67lecco3],.is-armed[data-astro-cid-67lecco3] .pw-token[data-astro-cid-67lecco3].is-live{opacity:0}.is-armed[data-astro-cid-67lecco3] .pw-fill[data-astro-cid-67lecco3]{transform:scale(0)}.is-armed[data-astro-cid-67lecco3] .pw-test[data-astro-cid-67lecco3]{color:var(--cx-mute)}.is-armed[data-astro-cid-67lecco3] .pw-gate[data-astro-cid-67lecco3]:before,.is-armed[data-astro-cid-67lecco3] .pw-gate[data-astro-cid-67lecco3]:after{background:var(--cx-ink);translate:var(--c)}.is-armed[data-astro-cid-67lecco3] .pw-s4[data-astro-cid-67lecco3] .pw-node[data-astro-cid-67lecco3]{border-color:var(--soft)}.is-armed[data-astro-cid-67lecco3] .pw-s4[data-astro-cid-67lecco3] .pw-title[data-astro-cid-67lecco3]{color:var(--cx-mute)}.is-playing[data-astro-cid-67lecco3] .pw-h0[data-astro-cid-67lecco3]{animation:pw-out .25s ease var(--t-cve) both}.is-playing[data-astro-cid-67lecco3] .pw-h1[data-astro-cid-67lecco3]{animation:pw-win calc(var(--t-stg) - var(--t-cve)) linear var(--t-cve) both}.is-playing[data-astro-cid-67lecco3] .pw-h2[data-astro-cid-67lecco3]{animation:pw-win calc(var(--t-gate) - var(--t-stg)) linear var(--t-stg) both}.is-playing[data-astro-cid-67lecco3] .pw-h3[data-astro-cid-67lecco3]{animation:pw-win calc(var(--t-go) - var(--t-gate)) linear var(--t-gate) both}.is-playing[data-astro-cid-67lecco3] .pw-h4[data-astro-cid-67lecco3]{animation:pw-win calc(var(--t-live) - var(--t-go)) linear var(--t-go) both}.is-playing[data-astro-cid-67lecco3] .pw-h5[data-astro-cid-67lecco3]{animation:pw-in .3s ease var(--t-live) both}.is-playing[data-astro-cid-67lecco3] .pw-blink[data-astro-cid-67lecco3]{animation:pw-blink 1.1s ease-in-out infinite}.is-playing[data-astro-cid-67lecco3] .pw-s1[data-astro-cid-67lecco3] .pw-token[data-astro-cid-67lecco3]{animation:pw-park calc(var(--t-m1) - var(--t-cve)) ease var(--t-cve) both}.is-playing[data-astro-cid-67lecco3] .pw-s1[data-astro-cid-67lecco3] .pw-pulse[data-astro-cid-67lecco3]{animation:pw-ping 1s ease-out calc(var(--t-cve) + .2s) 2 both}.is-playing[data-astro-cid-67lecco3] .pw-s2[data-astro-cid-67lecco3] .pw-token[data-astro-cid-67lecco3]{animation:pw-park calc(var(--t-m2) - var(--t-stg)) ease var(--t-stg) both}.is-playing[data-astro-cid-67lecco3] .pw-s3[data-astro-cid-67lecco3] .pw-token[data-astro-cid-67lecco3]{animation:pw-park calc(var(--t-m3) - var(--t-gate)) ease var(--t-gate) both}.is-playing[data-astro-cid-67lecco3] .pw-token[data-astro-cid-67lecco3].is-live{animation:pw-arrive .45s cubic-bezier(.2,.7,.2,1) var(--t-live) both}.is-playing[data-astro-cid-67lecco3] .pw-s1[data-astro-cid-67lecco3] .pw-fill[data-astro-cid-67lecco3],.is-playing[data-astro-cid-67lecco3] .pw-s1[data-astro-cid-67lecco3] .pw-dot[data-astro-cid-67lecco3]{--d: var(--t-m1)}.is-playing[data-astro-cid-67lecco3] .pw-s2[data-astro-cid-67lecco3] .pw-fill[data-astro-cid-67lecco3],.is-playing[data-astro-cid-67lecco3] .pw-s2[data-astro-cid-67lecco3] .pw-dot[data-astro-cid-67lecco3]{--d: var(--t-m2)}.is-playing[data-astro-cid-67lecco3] .pw-s3[data-astro-cid-67lecco3] .pw-fill[data-astro-cid-67lecco3],.is-playing[data-astro-cid-67lecco3] .pw-s3[data-astro-cid-67lecco3] .pw-dot[data-astro-cid-67lecco3]{--d: var(--t-m3)}.is-playing[data-astro-cid-67lecco3] .pw-fill[data-astro-cid-67lecco3]{animation:pw-grow var(--move) cubic-bezier(.45,0,.25,1) var(--d) both}.is-playing[data-astro-cid-67lecco3] .pw-dot[data-astro-cid-67lecco3]{animation:pw-travel-v var(--move) cubic-bezier(.45,0,.25,1) var(--d) both}.is-playing[data-astro-cid-67lecco3] .pw-chip[data-astro-cid-67lecco3]{animation:pw-chip .9s ease calc(var(--t-cve) + var(--i) * .15s) both}.is-playing[data-astro-cid-67lecco3] .pw-s1[data-astro-cid-67lecco3] .pw-status[data-astro-cid-67lecco3] .pw-a[data-astro-cid-67lecco3]{animation:pw-out .25s ease 1.4s both}.is-playing[data-astro-cid-67lecco3] .pw-s1[data-astro-cid-67lecco3] .pw-status[data-astro-cid-67lecco3] .pw-b[data-astro-cid-67lecco3]{animation:pw-in .3s ease 1.4s both}.is-playing[data-astro-cid-67lecco3] .pw-s1[data-astro-cid-67lecco3] .pw-status[data-astro-cid-67lecco3] .pw-b[data-astro-cid-67lecco3] path[data-astro-cid-67lecco3]{animation:pw-draw .4s ease-out 1.45s both}.is-playing[data-astro-cid-67lecco3] .pw-test[data-astro-cid-67lecco3]{--t: calc(var(--t-test) + var(--i) * .5s);animation:pw-ink .3s ease var(--t) both}.is-playing[data-astro-cid-67lecco3] .pw-test[data-astro-cid-67lecco3] .pw-ring[data-astro-cid-67lecco3]{animation:pw-out .2s ease var(--t) both}.is-playing[data-astro-cid-67lecco3] .pw-test[data-astro-cid-67lecco3] .pw-check[data-astro-cid-67lecco3]{animation:pw-in .2s ease var(--t) both}.is-playing[data-astro-cid-67lecco3] .pw-test[data-astro-cid-67lecco3] .pw-check[data-astro-cid-67lecco3] path[data-astro-cid-67lecco3]{animation:pw-draw .35s ease-out var(--t) both}.is-playing[data-astro-cid-67lecco3] .pw-btn-idle[data-astro-cid-67lecco3]{animation:pw-out .25s ease var(--t-gate) both}.is-playing[data-astro-cid-67lecco3] .pw-btn-wait[data-astro-cid-67lecco3]{animation:pw-win calc(var(--t-go) - var(--t-gate)) linear var(--t-gate) both}.is-playing[data-astro-cid-67lecco3] .pw-btn-go[data-astro-cid-67lecco3]{animation:pw-press .45s cubic-bezier(.2,.7,.2,1) var(--t-go) both}.is-playing[data-astro-cid-67lecco3] .pw-tick[data-astro-cid-67lecco3]{animation:pw-draw-tick .35s ease-out calc(var(--t-go) + .1s) both}.is-playing[data-astro-cid-67lecco3] .pw-gate[data-astro-cid-67lecco3]:before,.is-playing[data-astro-cid-67lecco3] .pw-gate[data-astro-cid-67lecco3]:after{animation:pw-gate .5s cubic-bezier(.4,0,.2,1) var(--t-go) both}.is-playing[data-astro-cid-67lecco3] .pw-s4[data-astro-cid-67lecco3] .pw-node[data-astro-cid-67lecco3]{animation:pw-node-on .3s ease var(--t-live) both}.is-playing[data-astro-cid-67lecco3] .pw-s4[data-astro-cid-67lecco3] .pw-title[data-astro-cid-67lecco3]{animation:pw-ink .3s ease var(--t-live) both}.is-playing[data-astro-cid-67lecco3] .pw-s4[data-astro-cid-67lecco3] .pw-status[data-astro-cid-67lecco3] .pw-a[data-astro-cid-67lecco3]{animation:pw-out .25s ease var(--t-live) both}.is-playing[data-astro-cid-67lecco3] .pw-s4[data-astro-cid-67lecco3] .pw-status[data-astro-cid-67lecco3] .pw-b[data-astro-cid-67lecco3]{animation:pw-in .3s ease var(--t-live) both}.is-playing[data-astro-cid-67lecco3] .pw-live-led[data-astro-cid-67lecco3]{position:relative}.is-playing[data-astro-cid-67lecco3] .pw-live-led[data-astro-cid-67lecco3]:after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--cx-green);animation:pw-led-pulse 2.8s ease-out calc(var(--t-live) + .8s) infinite both}@media(min-width:1024px){.is-playing[data-astro-cid-67lecco3] .pw-dot[data-astro-cid-67lecco3]{animation-name:pw-travel-h}}}@keyframes pw-in{0%{opacity:0}to{opacity:1}}@keyframes pw-out{0%{opacity:1}to{opacity:0}}@keyframes pw-win{0%{opacity:0}4%,96%{opacity:1}to{opacity:0}}@keyframes pw-park{0%{opacity:0;scale:.85}12%,90%{opacity:1;scale:1}to{opacity:0;scale:.9}}@keyframes pw-arrive{0%{opacity:0;scale:.85}to{opacity:1;scale:1}}@keyframes pw-ping{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.35,1.9)}}@keyframes pw-blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes pw-grow{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes pw-travel-v{0%{top:0;opacity:0}12%,88%{opacity:1}to{top:100%;opacity:0}}@keyframes pw-travel-h{0%{left:0;opacity:0}12%,88%{opacity:1}to{left:100%;opacity:0}}@keyframes pw-chip{0%,to{color:var(--cx-mute);border-color:var(--cx-line)}35%,65%{color:var(--cx-ink);border-color:var(--soft)}}@keyframes pw-draw{0%{stroke-dashoffset:10}to{stroke-dashoffset:0}}@keyframes pw-draw-tick{0%{stroke-dashoffset:14}to{stroke-dashoffset:0}}@keyframes pw-ink{0%{color:var(--cx-mute)}to{color:var(--cx-ink)}}@keyframes pw-press{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes pw-gate{0%{background:var(--cx-ink);translate:var(--c)}to{background:var(--cx-green);translate:var(--o)}}@keyframes pw-node-on{0%{border-color:var(--soft)}to{border-color:var(--cx-green)}}@keyframes pw-led-pulse{0%{transform:scale(1);opacity:.45}70%,to{transform:scale(2.6);opacity:0}}
