:root{--jn-brand-1:262 83% 58%;--jn-brand-2:291 84% 61%;--jn-brand-3:199 89% 48%;--jn-trigger:152 55% 38%;--jn-trigger-2:168 64% 44%;--jn-action:209 84% 47%;--jn-action-2:232 76% 60%;--jn-logic:262 62% 57%;--jn-logic-2:288 64% 58%;--jn-ai:33 90% 45%;--jn-ai-2:12 84% 55%;--jn-exit:349 66% 52%;--jn-exit-2:328 70% 54%;--jn-good:152 52% 36%;--jn-warn:33 88% 43%;--jn-bad:349 62% 50%;--jn-neutral:220 9% 46%;--jn-node-w:268px;--jn-accent:var(--jn-neutral);--jn-accent-2:var(--jn-accent)}.dark{--jn-brand-1:258 90% 70%;--jn-brand-2:291 90% 72%;--jn-brand-3:199 95% 62%;--jn-trigger:152 58% 54%;--jn-trigger-2:168 66% 56%;--jn-action:201 92% 60%;--jn-action-2:226 88% 72%;--jn-logic:262 72% 72%;--jn-logic-2:288 74% 74%;--jn-ai:38 94% 60%;--jn-ai-2:16 90% 65%;--jn-exit:349 78% 67%;--jn-exit-2:330 80% 70%;--jn-good:152 55% 52%;--jn-warn:38 92% 58%;--jn-bad:349 75% 65%;--jn-neutral:220 12% 62%}.jn-root{position:relative;background:radial-gradient(70vmax 55vmax at 12% -10%,hsl(var(--jn-brand-1)/.1),transparent 62%),radial-gradient(60vmax 50vmax at 92% 108%,hsl(var(--jn-brand-3)/.08),transparent 60%),hsl(var(--background))}.jn-root .react-flow__background{background:transparent}.jn-root .react-flow__edge-path{stroke:hsl(var(--muted-foreground)/.45);stroke-width:2;stroke-linecap:round}.jn-root .react-flow__edge.selected .react-flow__edge-path,.jn-root .react-flow__edge:hover .react-flow__edge-path{stroke:hsl(var(--primary));stroke-width:2.5;filter:drop-shadow(0 0 6px hsl(var(--primary)/.4))}.jn-root .react-flow__edge.jn-edge-back .react-flow__edge-path{stroke-dasharray:6 5;stroke:hsl(var(--jn-warn))}.jn-root .react-flow__edge.jn-edge-live .react-flow__edge-path{stroke:hsl(var(--jn-good));stroke-width:3;filter:drop-shadow(0 0 8px hsl(var(--jn-good)/.6))}.jn-root .react-flow__edge.jn-edge-dim .react-flow__edge-path{opacity:.18}.jn-root .react-flow__connection-path{stroke:hsl(var(--primary));stroke-width:2.5;stroke-linecap:round;filter:drop-shadow(0 0 6px hsl(var(--primary)/.45))}.jn-root .react-flow__controls{box-shadow:0 1px 2px hsl(var(--foreground)/.06),0 12px 30px -14px hsl(var(--foreground)/.3);border-radius:12px;overflow:hidden;border:1px solid hsl(var(--border)/.8);backdrop-filter:blur(10px)}.jn-root .react-flow__controls-button{background:hsl(var(--card)/.8);border-bottom:1px solid hsl(var(--border)/.7);color:hsl(var(--foreground));width:30px;height:30px;transition:background .15s ease,color .15s ease}.jn-root .react-flow__controls-button:hover{background:hsl(var(--primary)/.14);color:hsl(var(--primary))}.jn-root .react-flow__controls-button svg{fill:currentColor}.jn-root .react-flow__minimap{background:hsl(var(--card)/.82);border:1px solid hsl(var(--border)/.8);border-radius:12px;overflow:hidden;backdrop-filter:blur(10px);box-shadow:0 12px 30px -16px hsl(var(--foreground)/.4)}.jn-root .react-flow__attribution{display:none}.jn-node{width:var(--jn-node-w);border-radius:16px;background:linear-gradient(hsl(var(--card)),hsl(var(--card))) padding-box,linear-gradient(150deg,hsl(var(--jn-accent)/.5),hsl(var(--jn-accent-2)/.22) 55%,hsl(var(--border)/.7)) border-box;border:1.5px solid transparent;box-shadow:0 1px 2px hsl(var(--foreground)/.05),0 14px 30px -20px hsl(var(--jn-accent)/.55);transition:box-shadow .18s ease,transform .18s cubic-bezier(.2,.8,.3,1),opacity .18s ease;position:relative}.jn-node:hover{transform:translateY(-2px);box-shadow:0 1px 2px hsl(var(--foreground)/.06),0 20px 38px -20px hsl(var(--jn-accent)/.7)}.jn-node.is-selected{background:linear-gradient(hsl(var(--card)),hsl(var(--card))) padding-box,linear-gradient(150deg,hsl(var(--jn-accent)),hsl(var(--jn-accent-2))) border-box;box-shadow:0 0 0 4px hsl(var(--jn-accent)/.16),0 22px 42px -20px hsl(var(--jn-accent)/.75)}.jn-node.has-error{background:linear-gradient(hsl(var(--card)),hsl(var(--card))) padding-box,linear-gradient(150deg,hsl(var(--jn-bad)/.9),hsl(var(--jn-bad)/.4)) border-box}.jn-node.has-error.is-selected{box-shadow:0 0 0 4px hsl(var(--jn-bad)/.2),0 22px 42px -20px hsl(var(--jn-bad)/.6)}.jn-node.is-dim{opacity:.35;box-shadow:none}.jn-node.is-active{background:linear-gradient(hsl(var(--card)),hsl(var(--card))) padding-box,linear-gradient(150deg,hsl(var(--jn-good)),hsl(var(--jn-good)/.5)) border-box;box-shadow:0 0 0 4px hsl(var(--jn-good)/.22),0 0 40px -4px hsl(var(--jn-good)/.55);animation:jn-pulse 1.8s ease-in-out infinite}.jn-node.is-visited{background:linear-gradient(hsl(var(--card)),hsl(var(--card))) padding-box,linear-gradient(150deg,hsl(var(--jn-good)/.55),hsl(var(--jn-good)/.2)) border-box}@keyframes jn-pulse{0%,to{box-shadow:0 0 0 4px hsl(var(--jn-good)/.22),0 0 40px -4px hsl(var(--jn-good)/.5)}50%{box-shadow:0 0 0 7px hsl(var(--jn-good)/.12),0 0 52px -2px hsl(var(--jn-good)/.7)}}.jn-head{border-radius:14.5px 14.5px 0 0;display:flex;align-items:center;gap:9px;padding:10px 12px;background:linear-gradient(100deg,hsl(var(--jn-accent)/.16),hsl(var(--jn-accent-2)/.08) 70%,transparent);border-bottom:1px solid hsl(var(--jn-accent)/.18)}.jn-badge{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:9px;background:linear-gradient(140deg,hsl(var(--jn-accent)),hsl(var(--jn-accent-2)));color:hsl(var(--card));box-shadow:0 2px 6px -1px hsl(var(--jn-accent)/.5),inset 0 1px 0 hsl(0 0% 100%/.25)}.dark .jn-badge{color:hsl(var(--background))}.jn-title{font-size:13px;font-weight:650;line-height:1.25;color:hsl(var(--foreground));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;letter-spacing:-.01em}.jn-kindtag{font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;flex:0 0 auto;padding:1px 6px;border-radius:999px;background:hsl(var(--jn-accent)/.16);color:hsl(var(--jn-accent))}.jn-kindtag.jn-soon{background:transparent;border:1px solid hsl(var(--border));padding:0 5px;line-height:14px}.jn-body,.jn-kindtag.jn-soon{color:hsl(var(--muted-foreground))}.jn-body{padding:9px 12px 8px;font-size:11.5px;line-height:1.4;min-height:34px;display:flex;align-items:center}.jn-body.is-placeholder{color:hsl(var(--jn-bad));font-style:italic}.jn-outlets{border-top:1px dashed hsl(var(--border));padding:3px 0 5px;border-radius:0 0 14.5px 14.5px;background:linear-gradient(hsl(var(--muted)/.35),transparent)}.jn-outlet{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:7px;height:24px;padding:0 14px 0 12px;font-size:11px;font-weight:600;color:hsl(var(--jn-tone,var(--jn-neutral)))}.jn-outlet.is-unwired{color:hsl(var(--muted-foreground))}.jn-node:hover .jn-outlet.is-unwired{color:hsl(var(--jn-tone,var(--jn-neutral)))}.jn-flow{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;margin-left:2px}.jn-flow-bar{display:block;height:4px;min-width:3px;max-width:40px;border-radius:999px;background:linear-gradient(90deg,hsl(var(--jn-tone,var(--jn-neutral))/.35),hsl(var(--jn-tone,var(--jn-neutral))))}.jn-flow-n{color:hsl(var(--muted-foreground))}.jn-flow-n,.jn-stat{font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}.jn-stat{position:absolute;top:-11px;right:10px;display:flex;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;background:hsl(var(--card)/.92);backdrop-filter:blur(6px);border:1px solid hsl(var(--jn-accent)/.35);color:hsl(var(--foreground));box-shadow:0 4px 12px -4px hsl(var(--jn-accent)/.6)}.jn-stat .jn-stat-cost{color:hsl(var(--jn-warn))}.jn-root .react-flow__handle{width:12px;height:12px;border-radius:50%;background:hsl(var(--card));border:2px solid hsl(var(--border));transition:border-color .12s ease,background .12s ease,box-shadow .12s ease,transform .12s ease}.jn-root .react-flow__handle:after{content:"";position:absolute;inset:-7px;border-radius:50%}.jn-root .jn-handle-target{left:-7px!important;top:26px!important}.jn-root .jn-handle-source{right:-7px!important;border-color:hsl(var(--jn-tone,var(--jn-neutral)));background:hsl(var(--jn-tone,var(--jn-neutral)));box-shadow:0 0 0 3px hsl(var(--jn-tone,var(--jn-neutral))/.14)}.jn-root .jn-handle-source[data-wired=false]{background:hsl(var(--card));border-style:dashed;border-color:hsl(var(--jn-tone,var(--jn-neutral))/.8);box-shadow:none}.jn-root .react-flow__handle.connecting,.jn-root .react-flow__handle.connectionindicator:hover,.jn-root .react-flow__handle:hover{border-color:hsl(var(--primary));border-style:solid;background:hsl(var(--primary));box-shadow:0 0 0 6px hsl(var(--primary)/.18);transform:scale(1.35)}.jn-palette-item{position:relative;display:flex;align-items:flex-start;gap:9px;width:100%;padding:8px 10px;border-radius:11px;border:1px solid transparent;background:transparent;text-align:left;cursor:grab;overflow:hidden;transition:background .15s ease,border-color .15s ease,transform .15s cubic-bezier(.2,.8,.3,1)}.jn-palette-item:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:linear-gradient(hsl(var(--jn-accent)),hsl(var(--jn-accent-2)));opacity:0;transition:opacity .15s ease}.jn-palette-item:hover{background:linear-gradient(100deg,hsl(var(--jn-accent)/.12),hsl(var(--jn-accent-2)/.05));border-color:hsl(var(--jn-accent)/.28);transform:translateX(2px)}.jn-palette-item:hover:before{opacity:1}.jn-palette-item:active{cursor:grabbing;transform:translateX(2px) scale(.99)}.jn-palette-item:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.jn-palette-icon{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:8px;background:linear-gradient(140deg,hsl(var(--jn-accent)/.9),hsl(var(--jn-accent-2)/.75));color:hsl(var(--card));margin-top:1px;box-shadow:inset 0 1px 0 hsl(0 0% 100%/.25);transition:transform .15s cubic-bezier(.2,.8,.3,1)}.dark .jn-palette-icon{color:hsl(var(--background))}.jn-palette-item:hover .jn-palette-icon{transform:scale(1.08) rotate(-3deg)}.jn-cat-dot{display:inline-block;width:14px;height:3px;border-radius:999px;background:linear-gradient(90deg,hsl(var(--jn-accent)),hsl(var(--jn-accent-2)))}.jn-step{position:relative;padding:0 0 14px 26px}.jn-step:before{content:"";position:absolute;left:6px;top:16px;bottom:-2px;width:2px;background:linear-gradient(hsl(var(--jn-accent)/.45),hsl(var(--border)))}.jn-step:last-child:before{display:none}.jn-step:after{content:"";position:absolute;left:1px;top:6px;width:12px;height:12px;border-radius:50%;background:hsl(var(--card));border:2px solid hsl(var(--jn-accent))}.jn-step.is-current:after{background:linear-gradient(140deg,hsl(var(--jn-accent)),hsl(var(--jn-accent-2)));border-color:transparent;box-shadow:0 0 0 4px hsl(var(--jn-accent)/.22)}.jn-step.is-future{opacity:.45}@keyframes jn-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.jn-shimmer{background-size:200% 100%;animation:jn-shimmer 3.5s linear infinite}@keyframes jn-breathe{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}.jn-live-dot{animation:jn-breathe 2.2s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.jn-node,.jn-palette-icon,.jn-palette-item,.jn-root .react-flow__handle{transition:none}.jn-node:hover,.jn-palette-item:hover{transform:none}.jn-live-dot,.jn-node.is-active,.jn-shimmer{animation:none}}.jn-cta{background-image:linear-gradient(100deg,hsl(var(--jn-brand-1)),hsl(var(--jn-brand-2)) 55%,hsl(var(--jn-brand-1)));background-size:160% 100%;background-position:0 0;color:#fff;border:0;box-shadow:0 8px 22px -10px hsl(var(--jn-brand-1)/.9);transition:background-position .45s ease,box-shadow .2s ease,transform .2s cubic-bezier(.2,.8,.3,1)}.jn-cta:hover:not(:disabled){background-position:100% 0;transform:translateY(-1px);box-shadow:0 14px 30px -10px hsl(var(--jn-brand-1)/1)}.jn-cta:disabled{box-shadow:none}@media (prefers-reduced-motion:reduce){.jn-cta{transition:none}.jn-cta:hover:not(:disabled){transform:none}}.jn-resizer{width:8px;cursor:col-resize;flex-shrink:0;position:relative;z-index:30;background:transparent;display:flex;align-items:center;justify-content:center;touch-action:none;user-select:none;transition:background .15s ease}.jn-resizer-left,.jn-resizer-right{margin-right:-4px;margin-left:-4px}.jn-resizer:after{content:"";position:absolute;top:0;bottom:0;left:50%;transform:translateX(-50%);width:2px;height:100%;background:transparent;border-radius:1px;transition:width .15s ease,background .15s ease,box-shadow .15s ease}.jn-resizer.dragging:after,.jn-resizer:hover:after{width:3px;background:#007acc;box-shadow:0 0 8px rgba(0,122,204,.7)}.dark .jn-resizer.dragging:after,.dark .jn-resizer:hover:after{background:#0ea5e9;box-shadow:0 0 10px rgba(14,165,233,.85)}.jn-resizer-handle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:14px;padding:8px 0;border-radius:6px;z-index:2;opacity:0;transition:opacity .15s ease,transform .15s ease;pointer-events:none;background:hsl(var(--card));border:1px solid hsl(var(--border));box-shadow:0 2px 8px -1px rgba(0,0,0,.2)}.jn-resizer.dragging .jn-resizer-handle,.jn-resizer:hover .jn-resizer-handle{opacity:1;transform:scale(1.05)}.jn-resizer-handle span{width:3px;height:3px;border-radius:50%;background:hsl(var(--muted-foreground));transition:background .15s ease}.jn-resizer.dragging .jn-resizer-handle span,.jn-resizer:hover .jn-resizer-handle span{background:#007acc}.dark .jn-resizer.dragging .jn-resizer-handle span,.dark .jn-resizer:hover .jn-resizer-handle span{background:#0ea5e9}body.jn-resizing{cursor:col-resize!important}body.jn-resizing,body.jn-resizing *{user-select:none!important}.jn-outlet-quickadd{position:absolute;right:-30px;top:50%;display:grid;place-items:center;width:18px;height:18px;margin-top:-9px;border-radius:999px;border:1px solid hsl(var(--jn-tone,var(--jn-neutral))/.55);background:hsl(var(--card));color:hsl(var(--jn-tone,var(--jn-neutral)));opacity:.45;cursor:pointer;transition:opacity .15s ease,transform .15s cubic-bezier(.2,.8,.3,1),background .15s ease}.jn-node.is-selected .jn-outlet-quickadd,.jn-node:hover .jn-outlet-quickadd,.jn-outlet-quickadd:focus-visible{opacity:1}.jn-outlet-quickadd:focus-visible,.jn-outlet-quickadd:hover{transform:scale(1.18);background:hsl(var(--jn-tone,var(--jn-neutral)));color:hsl(var(--card));outline:none}.jn-node.is-selected .jn-outlet-quickadd{animation:jn-quickadd-pulse 2.4s ease-in-out 2}@keyframes jn-quickadd-pulse{0%,to{box-shadow:0 0 0 0 hsl(var(--jn-tone,var(--jn-neutral))/0)}50%{box-shadow:0 0 0 5px hsl(var(--jn-tone,var(--jn-neutral))/.22)}}.jn-quickadd{position:absolute;z-index:30;display:flex;flex-direction:column;border-radius:14px;border:1px solid hsl(var(--border));background:hsl(var(--popover));color:hsl(var(--popover-foreground));box-shadow:0 18px 48px -16px hsl(var(--jn-brand-1)/.45),0 4px 14px -6px hsl(0 0% 0%/.25);animation:jn-quickadd-in .14s cubic-bezier(.2,.8,.3,1)}@keyframes jn-quickadd-in{0%{opacity:0;transform:translateY(4px) scale(.98)}}.jn-quickadd-item{display:flex;width:100%;align-items:center;gap:9px;border-radius:9px;padding:6px 7px}.jn-quickadd-item.is-active{background:hsl(var(--jn-accent)/.12);box-shadow:inset 0 0 0 1px hsl(var(--jn-accent)/.3)}.jn-nextbar-dock{position:absolute;left:182px;right:80px;bottom:16px;z-index:20;display:flex;justify-content:center;pointer-events:none;container-type:inline-size}.jn-nextbar{display:flex;align-items:center;gap:6px;max-width:100%;min-width:0;padding:6px 6px 6px 12px;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--card)/.86);backdrop-filter:blur(12px);box-shadow:0 14px 36px -18px hsl(var(--jn-brand-1)/.55);pointer-events:auto;animation:jn-nextbar-in .18s cubic-bezier(.2,.8,.3,1)}@keyframes jn-nextbar-in{0%{opacity:0;transform:translateY(6px)}}.jn-nextbar-label{flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:hsl(var(--muted-foreground))}@container (max-width: 640px){.jn-nextbar-label{display:none}}.jn-nextbar-outlet{display:inline-flex;flex-shrink:0;align-items:center;gap:4px;border-radius:999px;padding:2px 8px;font-size:10.5px;font-weight:700;color:hsl(var(--jn-tone,var(--jn-neutral)));background:hsl(var(--jn-tone,var(--jn-neutral))/.12)}button.jn-nextbar-outlet:hover{background:hsl(var(--jn-tone,var(--jn-neutral))/.2)}.jn-nextbar-pill{display:inline-flex;flex:0 1 auto;min-width:76px;white-space:nowrap;align-items:center;gap:5px;border-radius:999px;padding:5px 9px 5px 8px;font-size:11.5px;font-weight:600;color:hsl(var(--foreground));background:hsl(var(--jn-accent)/.1);border:1px solid hsl(var(--jn-accent)/.28);transition:transform .15s cubic-bezier(.2,.8,.3,1),background .15s ease}.jn-nextbar-pill svg{flex-shrink:0;color:hsl(var(--jn-accent))}.jn-nextbar-pill:focus-visible,.jn-nextbar-pill:hover{background:hsl(var(--jn-accent)/.2);transform:translateY(-1px);outline:none}.jn-nextbar-more{display:grid;flex-shrink:0;place-items:center;width:28px;height:28px;border-radius:999px;color:hsl(var(--muted-foreground))}.jn-nextbar-more:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}@media (prefers-reduced-motion:reduce){.jn-nextbar-pill,.jn-outlet-quickadd{transition:none}.jn-nextbar,.jn-node.is-selected .jn-outlet-quickadd,.jn-quickadd{animation:none}}