[data-wfr]{--wfr-spring:cubic-bezier(.34, 1.56, .64, 1);--wfr-ease:cubic-bezier(.22, 1, .36, 1)}.wfr-stage{border-block:1px solid var(--color-line);background-color:var(--color-ink-2);user-select:none;background-image:radial-gradient(#231c1738 1.2px,#0000 1.2px);background-size:22px 22px;width:100%;height:min(480px,64vh);position:relative;overflow:hidden}.wfr-world{transform-origin:0 0;transition:transform 1s var(--wfr-ease);position:absolute;top:0;left:0}.wfr-world.dim .wfr-node,.wfr-world.dim .wfr-edges{opacity:.25}.wfr-world .wfr-node,.wfr-world .wfr-edges{transition:opacity .4s}.wfr-edges{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.wfr-edges path{fill:none;stroke:var(--color-line-strong);stroke-width:2px;stroke-linecap:round;transition:stroke .3s}.wfr-edges path.flow{stroke:var(--color-signal);animation:.6s linear infinite wfr-flow;stroke-dasharray:6 8!important}@keyframes wfr-flow{to{stroke-dashoffset:-14px}}.wfr-node{width:72px;height:72px;position:absolute}.wfr-node .box{background:var(--color-ink-3);opacity:0;transition:transform .55s var(--wfr-spring), opacity .25s, border-color .3s, box-shadow .3s;border:2px solid #0000;border-radius:10px;position:absolute;inset:0;transform:scale(0)}.wfr-node.trigger .box{border-radius:36px 10px 10px 36px}.wfr-node .icon{opacity:0;transition:transform .5s var(--wfr-spring) .12s, opacity .3s .12s;place-items:center;display:grid;position:absolute;inset:0;transform:scale(.4)}.wfr-node .icon svg{width:32px;height:32px;stroke:var(--color-bone);stroke-width:1.7px;fill:none;stroke-linecap:round;stroke-linejoin:round}.wfr-node .icon img{object-fit:contain;width:36px;height:36px}.wfr-node .icon img.wide{width:46px}.wfr-node .sock{background:var(--color-dim);width:8px;height:8px;transition:transform .35s var(--wfr-spring) .25s;border-radius:50%;margin-top:-4px;position:absolute;top:50%;transform:scale(0)}.wfr-node .sock.l{left:-4px}.wfr-node .sock.r{right:-4px}.wfr-node .cap{text-align:center;width:170px;color:var(--color-bone);margin-top:10px;font-size:14px;font-weight:500;line-height:1.2;position:absolute;top:100%;left:50%;transform:translate(-50%)}.wfr-node .cap span{opacity:0;transition:opacity .15s}.wfr-node.in .box,.wfr-node.in .icon{opacity:1;transform:scale(1)}.wfr-node.in .sock{transform:scale(1)}.wfr-node.running .box{border-color:var(--color-signal);box-shadow:0 0 0 6px var(--color-signal-soft)}.wfr-node.done .box{border-color:var(--color-accent)}.wfr-node .check{background:var(--color-accent);width:20px;height:20px;transition:transform .4s var(--wfr-spring);border-radius:50%;place-items:center;display:grid;position:absolute;top:-8px;right:-8px;transform:scale(0)}.wfr-node .check svg{stroke:#fff;stroke-width:3px;fill:none;width:12px;height:12px}.wfr-node.done .check{transform:scale(1)}.wfr-plus{background:var(--color-bone);cursor:pointer;width:58px;height:58px;transition:transform .5s var(--wfr-spring), background .2s;border:0;border-radius:10px;place-items:center;margin:-29px 0 0 -29px;display:grid;position:absolute;transform:scale(0)}.wfr-plus.in{transform:scale(1)}.wfr-plus.in:hover{background:var(--color-accent);transform:scale(1.08)}.wfr-plus svg{width:24px;height:24px;stroke:var(--color-ink);stroke-width:2.2px;fill:none;stroke-linecap:round;stroke-linejoin:round;transition:transform .4s var(--wfr-ease)}.wfr-plus:before{content:"";background:#f6f4f099;border-radius:2px;width:0;height:3px;position:absolute;bottom:6px;left:8px}.wfr-plus.count:before{animation:wfr-cd var(--cd,3s) linear forwards}@keyframes wfr-cd{to{width:calc(100% - 16px)}}.wfr-plus .tip{white-space:nowrap;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-mute);font-size:11px;font-weight:500;position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%)}.wfr-plus.small{border-radius:8px;width:40px;height:40px;margin:-20px 0 0 -20px}.wfr-plus.small svg{width:18px;height:18px}.wfr-plus.hint:after{content:"";border:2px solid var(--color-bone);opacity:.4;animation:wfr-ping 1.8s var(--wfr-ease) infinite;border-radius:16px;position:absolute;inset:-8px}@keyframes wfr-ping{0%{opacity:.5;transform:scale(.85)}to{opacity:0;transform:scale(1.35)}}.wfr-prompt{background:var(--color-bone);opacity:0;pointer-events:none;width:58px;height:58px;transition:width .55s var(--wfr-ease), height .55s var(--wfr-ease), border-radius .55s var(--wfr-ease), background .4s, opacity .25s;z-index:5;border-radius:10px;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.wfr-prompt.show{opacity:1}.wfr-prompt.open{background:var(--color-ink-3);border-radius:16px;width:min(560px,92vw);height:150px}.wfr-prompt .wfr-inner{opacity:0;background:#fff;border-radius:11px;flex-direction:column;justify-content:space-between;padding:16px 18px;transition:opacity .25s;display:flex;position:absolute;inset:8px}.wfr-prompt.open .wfr-inner{opacity:1;transition-delay:.35s}.wfr-text{color:var(--color-bone);text-align:left;min-height:46px;font-size:16px;line-height:1.45}.wfr-text .caret{background:var(--color-bone);vertical-align:-2px;width:2px;height:1.05em;margin-left:1px;animation:1s step-end infinite wfr-blink;display:inline-block}@keyframes wfr-blink{50%{opacity:0}}.wfr-row{justify-content:space-between;align-items:center;display:flex}.wfr-step{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-dim);font-size:11px;font-weight:500}.wfr-send{background:var(--color-bone);border-radius:8px;place-items:center;width:36px;height:36px;transition:transform .15s;display:grid}.wfr-send.press{transform:scale(.85)}.wfr-send svg{width:16px;height:16px;stroke:var(--color-ink);stroke-width:2.2px;fill:none}@media (prefers-reduced-motion:reduce){[data-wfr] *{transition-duration:.01ms!important;animation:none!important}}
