.tf-zone.svelte-oavqmf{z-index:2;filter:drop-shadow(0 5px 14px #00000052);transition:filter var(--dur-fast);position:absolute}.tf-zone.svelte-oavqmf:hover{filter:drop-shadow(0 6px 18px #0000006b)}.tf-zone.zooming.svelte-oavqmf .tf-grip:where(.svelte-oavqmf),.tf-zone.zooming.svelte-oavqmf .tf-size:where(.svelte-oavqmf){opacity:0;transition:opacity .3s var(--ease-standard)}.tf-frame.svelte-oavqmf{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:visible}.fr-plate.svelte-oavqmf{fill:color-mix(in oklab, var(--surface) 13%, transparent)}.fr-outline.svelte-oavqmf{stroke:var(--border);stroke-width:1px;transition:stroke var(--dur-fast)}.tf-zone.svelte-oavqmf:hover .fr-outline:where(.svelte-oavqmf){stroke:var(--border-strong)}.tf-zone.selected.svelte-oavqmf .fr-outline:where(.svelte-oavqmf){stroke:var(--border-focus);stroke-width:1.5px}.tf-head.svelte-oavqmf{z-index:1;box-sizing:border-box;border-bottom:1px solid var(--border);background:color-mix(in oklab, var(--surface) 88%, transparent);clip-path:polygon(16px 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%,0 16px);cursor:grab;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;height:64px;padding:0 12px 0 14px;display:grid;position:relative}.tf-head.svelte-oavqmf:active{cursor:grabbing}.tf-h-l.svelte-oavqmf{justify-content:flex-start;align-items:center;min-width:0;display:flex}.tf-h-m.svelte-oavqmf{flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;display:flex}.tf-h-name.svelte-oavqmf{align-items:center;gap:8px;min-width:0;display:flex}.tf-h-meta.svelte-oavqmf{font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--fg-3);white-space:nowrap;font-size:9.5px}.tf-h-r.svelte-oavqmf{justify-content:flex-end;align-items:center;min-width:0;display:flex}.tf-kick.svelte-oavqmf{border:1.5px solid var(--border-strong);flex:none;width:9px;height:9px;transform:rotate(45deg)}.tf-zone.running.svelte-oavqmf .tf-kick:where(.svelte-oavqmf){animation:1.6s ease-in-out infinite svelte-oavqmf-nhKick}.tf-zone.review.svelte-oavqmf .tf-kick:where(.svelte-oavqmf){animation:2.4s ease-in-out infinite svelte-oavqmf-nhKickW}@keyframes svelte-oavqmf-nhKick{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 9px 1px color-mix(in oklab, var(--info) 55%, transparent)}}@keyframes svelte-oavqmf-nhKickW{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 9px 1px color-mix(in oklab, var(--warning) 55%, transparent)}}.tf-name.svelte-oavqmf{font-family:var(--font-mono);color:var(--fg-1);white-space:nowrap;text-overflow:ellipsis;font-size:18px;font-style:italic;font-weight:700;overflow:hidden}.tf-act.svelte-oavqmf{border:1px solid var(--border);border-radius:var(--radius-2);background:var(--surface);color:var(--fg-1);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast), border-color var(--dur-fast);align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:500;display:inline-flex}.tf-act.tf-unravel.svelte-oavqmf{background:var(--accent);border-color:var(--orange-600);color:var(--fg-on-accent);font-weight:600}.tf-act.tf-review.svelte-oavqmf{background:var(--warning-bg);border-color:var(--warning);color:var(--warning);font-weight:600}.tf-act.tf-review.svelte-oavqmf:hover{background:color-mix(in oklab, var(--warning) 24%, transparent)}.tf-act.tf-live.svelte-oavqmf{border-color:color-mix(in oklab, var(--info) 45%, var(--border));color:var(--info);background:var(--info-bg);font-weight:600}.tf-act.tf-live.svelte-oavqmf:hover{background:color-mix(in oklab, var(--info) 22%, transparent)}.tf-act.tf-live.svelte-oavqmf .dotp:where(.svelte-oavqmf){background:var(--info);border-radius:50%;flex:none;width:7px;height:7px;position:relative}.tf-act.tf-live.svelte-oavqmf .dotp:where(.svelte-oavqmf):after{content:"";border:1px solid var(--info);border-radius:50%;animation:1.7s ease-out infinite svelte-oavqmf-nhPing;position:absolute;inset:-4px}.tf-ws.svelte-oavqmf{z-index:3;gap:6px;max-width:55%;display:flex;position:absolute;bottom:-11px;left:12px}.tf-ws-chip.svelte-oavqmf{border:1px solid var(--border);background:var(--surface);min-width:0;color:var(--fg-2);transition:color var(--dur-fast), border-color var(--dur-fast);border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;text-decoration:none;display:inline-flex}.tf-ws-chip.svelte-oavqmf:hover{color:var(--fg);border-color:var(--border-strong)}.tf-ws-chip.live.svelte-oavqmf{border-color:color-mix(in oklab, var(--info) 45%, var(--border));color:var(--fg)}.tf-ws-n.svelte-oavqmf{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tf-ws-chip.svelte-oavqmf .lw:where(.svelte-oavqmf){background:var(--info);border-radius:50%;flex:none;width:7px;height:7px;position:relative}.tf-ws-chip.svelte-oavqmf .lw:where(.svelte-oavqmf):after{content:"";border:1px solid var(--info);border-radius:50%;animation:1.7s ease-out infinite svelte-oavqmf-nhPing;position:absolute;inset:-4px}@keyframes svelte-oavqmf-nhPing{0%{opacity:1;transform:scale(.35)}75%,to{opacity:0;transform:scale(1.1)}}.tf-open.svelte-oavqmf{width:34px;height:34px;color:var(--brand-fg);background:color-mix(in oklab, var(--bg-inset) 72%, transparent);border:1px solid var(--border);transition:background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);flex:none;place-items:center;margin-left:10px;display:grid;position:relative}.tf-open.svelte-oavqmf:before,.tf-open.svelte-oavqmf:after{content:"";pointer-events:none;width:9px;height:9px;transition:transform var(--dur-fast);position:absolute}.tf-open.svelte-oavqmf:before{border-top:2px solid var(--brand-fg);border-left:2px solid var(--brand-fg);top:-1px;left:-1px}.tf-open.svelte-oavqmf:after{border-bottom:2px solid var(--brand-fg);border-right:2px solid var(--brand-fg);bottom:-1px;right:-1px}.tf-open.svelte-oavqmf:hover{background:var(--accent);border-color:var(--orange-600);color:var(--fg-on-accent)}.tf-open.svelte-oavqmf:hover:before{transform:translate(-2.5px,-2.5px)}.tf-open.svelte-oavqmf:hover:after{transform:translate(2.5px,2.5px)}.tf-open.svelte-oavqmf:active{transform:scale(.96)}.tf-body.svelte-oavqmf{z-index:1;width:100%;height:calc(100% - 64px);position:relative;overflow:hidden}.tf-body.svelte-oavqmf .figure-canvas{height:100%;overflow:hidden}.tf-body.svelte-oavqmf .knot{--knot-shadow:drop-shadow(0 3px 6px #00000059)}.tf-body.svelte-oavqmf .tbubble{opacity:.6;transition:opacity var(--dur-fast) var(--ease-standard)}.tf-zone.svelte-oavqmf:hover .tf-body:where(.svelte-oavqmf) .tbubble{opacity:.9}.tf-body.svelte-oavqmf .tbubble:hover{opacity:1;transform:translate(-50%,-50%)translateY(-1px)}.tf-body.svelte-oavqmf .tbubble .b{box-shadow:none;padding:3px 8px}.tf-body.svelte-oavqmf .tbubble .b .mono{opacity:0;max-width:0;transition:max-width var(--dur-base) var(--ease-standard), opacity var(--dur-fast) var(--ease-standard), margin-left var(--dur-base) var(--ease-standard);overflow:hidden}.tf-body.svelte-oavqmf .tbubble .b .mono:not(:first-child){margin-left:-7px}.tf-body.svelte-oavqmf .tbubble:hover .b .mono{opacity:1;max-width:120px;margin-left:0}@media (prefers-reduced-motion:reduce){.tf-body.svelte-oavqmf .tbubble,.tf-body.svelte-oavqmf .tbubble .b .mono{transition:none}}.tf-foot.svelte-oavqmf{z-index:2;border:1px solid var(--border);background:color-mix(in oklab, var(--surface) 62%, transparent);max-width:calc(100% - 68px);padding:2px;position:absolute;bottom:0;left:50%;transform:translate(-50%,50%)}.tf-stat.svelte-oavqmf{background:color-mix(in oklab, var(--bg-inset) 78%, transparent);border:1px solid var(--border);flex:none;display:flex;position:relative}.tf-stat.svelte-oavqmf:before{content:"";border-top:2px solid var(--thread-active);border-left:2px solid var(--thread-active);pointer-events:none;width:8px;height:8px;position:absolute;top:-1px;left:-1px}.tf-stat.svelte-oavqmf:after{content:"";border-bottom:2px solid var(--thread-active);border-right:2px solid var(--thread-active);pointer-events:none;width:8px;height:8px;position:absolute;bottom:-1px;right:-1px}.tf-stat.svelte-oavqmf .s:where(.svelte-oavqmf){flex-direction:column;align-items:center;gap:2px;min-width:52px;padding:3px 12px;display:flex}.tf-stat.svelte-oavqmf .s:where(.svelte-oavqmf)+.s:where(.svelte-oavqmf){border-left:1px solid var(--border)}.tf-stat.svelte-oavqmf .sk:where(.svelte-oavqmf){font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--fg-3);font-size:9px}.tf-stat.svelte-oavqmf .sk:where(.svelte-oavqmf) .sym:where(.svelte-oavqmf){color:var(--fg-2);font-weight:700}.tf-stat.svelte-oavqmf .sv:where(.svelte-oavqmf){font-family:var(--font-mono);color:var(--fg-1);font-size:14px;font-weight:700;line-height:1}.tf-stat.svelte-oavqmf .sv.c-in:where(.svelte-oavqmf){color:var(--brand-fg)}.tf-stat.svelte-oavqmf .sv.c-out:where(.svelte-oavqmf){color:var(--accent-fg)}.tf-stat.svelte-oavqmf .sv:where(.svelte-oavqmf) .u:where(.svelte-oavqmf){color:var(--fg-3);margin-left:1px;font-size:10px;font-weight:400}.tf-grip.svelte-oavqmf{cursor:nwse-resize;z-index:5;width:30px;height:30px;position:absolute;bottom:-3px;right:-3px}.tf-grip.svelte-oavqmf svg:where(.svelte-oavqmf){fill:none;width:30px;height:30px;stroke:var(--border-strong);stroke-width:2px;stroke-linecap:round;transition:stroke var(--dur-fast)}.tf-grip.svelte-oavqmf:hover svg:where(.svelte-oavqmf),.tf-zone.resizing.svelte-oavqmf .tf-grip:where(.svelte-oavqmf) svg:where(.svelte-oavqmf){stroke:var(--accent)}.tf-size.svelte-oavqmf{z-index:5;font-family:var(--font-mono);color:var(--fg-2);background:color-mix(in oklab, var(--bg-inset) 88%, transparent);border:1px solid var(--border);pointer-events:none;padding:2px 7px;font-size:10.5px;font-weight:700;display:none;position:absolute;bottom:10px;right:12px}.tf-zone.resizing.svelte-oavqmf .tf-size:where(.svelte-oavqmf){display:block}@media (prefers-reduced-motion:reduce){.tf-zone.running.svelte-oavqmf .tf-kick:where(.svelte-oavqmf),.tf-zone.review.svelte-oavqmf .tf-kick:where(.svelte-oavqmf),.tf-act.tf-live.svelte-oavqmf .dotp:where(.svelte-oavqmf):after{animation:none}}.nh-stage.no-dots.svelte-17fv0xm{background-image:none}.nh-leg.svelte-17fv0xm{align-items:center;gap:9px;padding:4px 0;display:flex}.nh-leg-w.svelte-17fv0xm svg:where(.svelte-17fv0xm){display:block;overflow:visible}.nh-leg-w.svelte-17fv0xm line:where(.svelte-17fv0xm){stroke:var(--thread-active);stroke-width:2.2px;stroke-linecap:round}.nh-leg-w.svelte-17fv0xm polygon:where(.svelte-17fv0xm){fill:var(--thread-active)}.nh-leg-w.cycle.svelte-17fv0xm line:where(.svelte-17fv0xm){stroke:var(--warning);stroke-width:1.8px;stroke-dasharray:4 4}.nh-leg-w.cycle.svelte-17fv0xm polygon:where(.svelte-17fv0xm){fill:var(--warning)}.nh-leg-w.gate.svelte-17fv0xm line:where(.svelte-17fv0xm){stroke:var(--border-strong);stroke-dasharray:1.5 5}.nh-leg-w.gate.svelte-17fv0xm polygon:where(.svelte-17fv0xm){fill:var(--border-strong)}.nh-leg-t.svelte-17fv0xm{flex-direction:column;min-width:0;line-height:1.3;display:flex}.nh-leg-t.svelte-17fv0xm b:where(.svelte-17fv0xm){font-size:12px;font-weight:600}.nh-leg-t.svelte-17fv0xm span:where(.svelte-17fv0xm){color:var(--fg-3);font-size:11px}.nh-stage.svelte-17fv0xm{touch-action:none;-webkit-user-select:none;user-select:none;background-color:var(--bg-inset);background-image:radial-gradient(circle, var(--canvas-dot) var(--dr,.8px), transparent var(--dr,.8px));background-size:var(--grid,26px) var(--grid,26px);background-position:var(--gx,13px) var(--gy,13px);flex:1;min-height:0;position:relative;overflow:hidden}.nh-stage.nh-zooming.svelte-17fv0xm{transition:background-size .64s cubic-bezier(.5,.06,.18,1),background-position .64s cubic-bezier(.5,.06,.18,1)}.nh-stage.nh-zooming.svelte-17fv0xm .nh-canvas:where(.svelte-17fv0xm){transition:transform .64s cubic-bezier(.5,.06,.18,1)}.nh-stage.nh-zooming.svelte-17fv0xm .tf-zone:not(.zooming),.nh-stage.nh-zooming.svelte-17fv0xm .nh-tools:where(.svelte-17fv0xm),.nh-stage.nh-zooming.svelte-17fv0xm .nh-settings:where(.svelte-17fv0xm){opacity:0;pointer-events:none;transition:opacity .4s var(--ease-standard)}@media (prefers-reduced-motion:reduce){.nh-stage.nh-zooming.svelte-17fv0xm,.nh-stage.nh-zooming.svelte-17fv0xm .nh-canvas:where(.svelte-17fv0xm),.nh-stage.nh-zooming.svelte-17fv0xm .tf-zone:not(.zooming),.nh-stage.nh-zooming.svelte-17fv0xm .nh-tools:where(.svelte-17fv0xm),.nh-stage.nh-zooming.svelte-17fv0xm .nh-settings:where(.svelte-17fv0xm){transition:none}}.nh-canvas.svelte-17fv0xm{transform-origin:0 0;width:0;height:0;position:absolute;top:0;left:0;overflow:visible}.nh-canvas.hide-names.svelte-17fv0xm .knot-name{opacity:0}.nh-canvas.hide-names.svelte-17fv0xm .knot:hover .knot-name{opacity:1}.nh-legend.svelte-17fv0xm{z-index:6;position:absolute;top:14px;left:16px}.nh-tools.svelte-17fv0xm{pointer-events:none;z-index:20;position:absolute;inset:0}.nh-tools.svelte-17fv0xm .canvas-tools{pointer-events:auto}.nh-tools.svelte-17fv0xm .ct-btn.nh-add{background:color-mix(in oklab, var(--accent) 20%, var(--bg-inset));border-color:var(--accent);color:var(--accent)}.nh-tools.svelte-17fv0xm .ct-div{background:var(--border);height:1px;margin:1px 2px}.nh-zoom.svelte-17fv0xm{font-family:var(--font-mono);letter-spacing:-.03em;color:var(--fg-2);text-align:center;padding:2px 0;font-size:10px;font-weight:700}.nh-settings.svelte-17fv0xm{z-index:25;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-3);width:250px;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-standard), transform var(--dur-base) var(--ease-standard);position:absolute;top:50%;left:70px;transform:translateY(-50%)translate(-8px)}.nh-settings.open.svelte-17fv0xm{opacity:1;pointer-events:auto;transform:translateY(-50%)translate(0)}@media (prefers-reduced-motion:reduce){.nh-settings.svelte-17fv0xm{transition:none}}.nh-set-h.svelte-17fv0xm{font-family:var(--font-mono);color:var(--fg-1);align-items:center;gap:8px;padding:11px 13px;font-size:13px;font-style:italic;font-weight:700;display:flex}.nh-set-sec.svelte-17fv0xm{border-top:1px solid var(--border);padding:11px 13px}.nh-set-lbl.svelte-17fv0xm{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);margin-bottom:9px;font-size:9px}.nh-row.svelte-17fv0xm{color:var(--fg-1);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:5px 0;font-size:13px;display:flex}.nh-set-note.svelte-17fv0xm{color:var(--fg-3);text-wrap:pretty;margin:8px 0 0;font-size:11px;line-height:1.4}.sw.svelte-17fv0xm{appearance:none;background:var(--bg-inset);border:1px solid var(--border);cursor:pointer;width:34px;height:19px;transition:background var(--dur-fast);border-radius:999px;flex:none;position:relative}.sw.svelte-17fv0xm:after{content:"";background:var(--fg-3);width:14px;height:14px;transition:transform var(--dur-fast), background var(--dur-fast);border-radius:50%;position:absolute;top:2px;left:2px}.sw.svelte-17fv0xm:checked{background:var(--brand);border-color:var(--brand)}.sw.svelte-17fv0xm:checked:after{background:#fff;transform:translate(15px)}.sw.svelte-17fv0xm:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.home-page.svelte-1uha8ag{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.home-msg.svelte-1uha8ag{flex:1;width:100%;max-width:1080px;min-height:0;margin:0 auto;padding:28px 24px 40px;overflow-y:auto}.empty.svelte-1uha8ag{text-align:center;flex-direction:column;align-items:center;gap:12px;max-width:480px;margin:8vh auto 0;display:flex}.empty.svelte-1uha8ag h1:where(.svelte-1uha8ag){font-size:22px}.empty.svelte-1uha8ag p:where(.svelte-1uha8ag){color:var(--fg-3);text-wrap:pretty;margin:0;font-size:13px;line-height:1.6}.first-run.svelte-1uha8ag{margin-bottom:24px}.first-run.over-canvas.svelte-1uha8ag{z-index:30;width:min(560px,100% - 120px);margin:0;position:absolute;top:16px;left:50%;transform:translate(-50%)}
