signetai 0.31.1 → 0.31.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +2 -5
  2. package/dashboard/_app/immutable/assets/0.ackDaIZQ.css +1 -0
  3. package/dashboard/_app/immutable/chunks/{Bfzcd63A.js → 1BXnJqFr.js} +1 -1
  4. package/dashboard/_app/immutable/chunks/{DsN0PPTs.js → B2_Am0rf.js} +1 -1
  5. package/dashboard/_app/immutable/chunks/{D54wyKGs.js → BJpQPeV3.js} +1 -1
  6. package/dashboard/_app/immutable/chunks/{DMDlTKpf.js → BNUvdTU4.js} +1 -1
  7. package/dashboard/_app/immutable/chunks/{B-1TjjYA.js → Bm0MMajT.js} +1 -1
  8. package/dashboard/_app/immutable/chunks/{C1L1lIPL.js → BuL0KwYw.js} +1 -1
  9. package/dashboard/_app/immutable/chunks/{CAkDUFcu.js → C677qxhD.js} +1 -1
  10. package/dashboard/_app/immutable/chunks/{Mjf0Ob3o.js → CCim3qTc.js} +1 -1
  11. package/dashboard/_app/immutable/chunks/{BZwXM_Mi.js → CHRhNFId.js} +1 -1
  12. package/dashboard/_app/immutable/chunks/{CKPn5_zx.js → CnVzncoI.js} +1 -1
  13. package/dashboard/_app/immutable/chunks/{DLLneOBY.js → Coh8pPy2.js} +1 -1
  14. package/dashboard/_app/immutable/chunks/{BemNI_nj.js → CszZ9S61.js} +1 -1
  15. package/dashboard/_app/immutable/chunks/{DBsebiX4.js → CvOTQ1jq.js} +1 -1
  16. package/dashboard/_app/immutable/chunks/{B_BbxwV4.js → D1nJPFMG.js} +1 -1
  17. package/dashboard/_app/immutable/chunks/{DFliBdid.js → DGR6CBfw.js} +15 -15
  18. package/dashboard/_app/immutable/chunks/{CUIggBT6.js → DVkFg6ZB.js} +1 -1
  19. package/dashboard/_app/immutable/chunks/{D9Wen9_c.js → DjErFSCz.js} +1 -1
  20. package/dashboard/_app/immutable/chunks/{CKsWNUQn.js → DknXDOV5.js} +1 -1
  21. package/dashboard/_app/immutable/chunks/{C3QGzwEO.js → Drvr6A5N.js} +1 -1
  22. package/dashboard/_app/immutable/chunks/{DhIjPM6p.js → GkyRQ6bk.js} +1 -1
  23. package/dashboard/_app/immutable/chunks/swYeBDtA.js +11 -0
  24. package/dashboard/_app/immutable/chunks/{fO7i5GuJ.js → v84hpOQe.js} +1 -1
  25. package/dashboard/_app/immutable/entry/{app.TD6vOvwR.js → app.ry_trtBf.js} +2 -2
  26. package/dashboard/_app/immutable/entry/start.CeLjMeN2.js +1 -0
  27. package/dashboard/_app/immutable/nodes/{1.ChqvZi9G.js → 1.CGpEAh93.js} +1 -1
  28. package/dashboard/_app/immutable/nodes/2.nW52qYOa.js +1 -0
  29. package/dashboard/_app/version.json +1 -1
  30. package/dashboard/index.html +6 -6
  31. package/dist/daemon.js +88 -14
  32. package/package.json +1 -1
  33. package/dashboard/_app/immutable/assets/0.CwSABvrI.css +0 -1
  34. package/dashboard/_app/immutable/chunks/BCA6vG3q.js +0 -11
  35. package/dashboard/_app/immutable/entry/start.s0EVBMZW.js +0 -1
  36. package/dashboard/_app/immutable/nodes/2.DGuwWhHk.js +0 -1
  37. /package/dashboard/_app/immutable/nodes/{0.DZWF52el.js → 0.DAN2sVFW.js} +0 -0
package/README.md CHANGED
@@ -7,14 +7,11 @@ Signet gives your AI agents persistent memory and identity that follows them acr
7
7
  ## Install
8
8
 
9
9
  ```bash
10
- # npm
11
- npm install -g signetai
12
-
13
10
  # bun (recommended)
14
11
  bun add -g signetai
15
12
 
16
- # or run directly
17
- npx signetai
13
+ # npm
14
+ npm install -g signetai
18
15
  ```
19
16
 
20
17
  ## Quick Start
@@ -0,0 +1 @@
1
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-amber-400:oklch(82.8% .189 84.429);--color-emerald-400:oklch(76.5% .177 163.223);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-xs:.125rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-border:var(--border)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,:after,:before,::backdrop{border-color:var(--color-border,currentcolor)}::file-selector-button{border-color:var(--color-border,currentcolor)}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring) 50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.start-0{inset-inline-start:calc(var(--spacing) * 0)}.end{inset-inline-end:var(--spacing)}.end-0{inset-inline-end:calc(var(--spacing) * 0)}.end-1{inset-inline-end:calc(var(--spacing) * 1)}.end-2{inset-inline-end:calc(var(--spacing) * 2)}.end-3{inset-inline-end:calc(var(--spacing) * 3)}.end-4{inset-inline-end:calc(var(--spacing) * 4)}.top-0{top:calc(var(--spacing) * 0)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.top-4{top:calc(var(--spacing) * 4)}.top-\[10px\]{top:10px}.top-\[20\%\]{top:20%}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-\[10px\]{right:10px}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-3{bottom:calc(var(--spacing) * 3)}.bottom-\[10px\]{bottom:10px}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing) * 3)}.left-\[10px\]{left:10px}.left-\[14px\]{left:14px}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[5\]{z-index:5}.z-\[6\]{z-index:6}.z-\[8\]{z-index:8}.z-\[9\]{z-index:9}.col-span-2{grid-column:span 2/span 2}.col-span-full{grid-column:1/-1}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing) * 0)}.m-2{margin:calc(var(--spacing) * 2)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.my-1{margin-block:calc(var(--spacing) * 1)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-\[4px\]{margin-top:4px}.mt-auto{margin-top:auto}.mt-px{margin-top:1px}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-\[var\(--space-sm\)\]{margin-bottom:var(--space-sm)}.-ml-1{margin-left:calc(var(--spacing) * -1)}.ml-0{margin-left:calc(var(--spacing) * 0)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-4{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.size-\(--cell-size\){width:var(--cell-size);height:var(--cell-size)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-full{width:100%;height:100%}.h-\(--bits-select-anchor-height\){height:var(--bits-select-anchor-height)}.h-\(--cell-size\){height:var(--cell-size)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-32{height:calc(var(--spacing) * 32)}.h-\[1\.15rem\]{height:1.15rem}.h-\[6px\]{height:6px}.h-\[7px\]{height:7px}.h-\[8px\]{height:8px}.h-\[9px\]{height:9px}.h-\[12px\]{height:12px}.h-\[14px\]{height:14px}.h-\[26px\]{height:26px}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.h-svh{height:100svh}.max-h-\(--bits-select-content-available-height\){max-height:var(--bits-select-content-available-height)}.max-h-\[40vh\]{max-height:40vh}.max-h-\[120px\]{max-height:120px}.max-h-\[200px\]{max-height:200px}.max-h-\[300px\]{max-height:300px}.max-h-\[320px\]{max-height:320px}.max-h-\[400px\]{max-height:400px}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-\[30px\]{min-height:30px}.min-h-\[46vh\]{min-height:46vh}.min-h-\[220px\]{min-height:220px}.\!w-\[520px\]{width:520px!important}.\!w-\[560px\]{width:560px!important}.w-\(--cell-size\){width:var(--cell-size)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-72{width:calc(var(--spacing) * 72)}.w-\[6px\]{width:6px}.w-\[7px\]{width:7px}.w-\[8px\]{width:8px}.w-\[9px\]{width:9px}.w-\[12px\]{width:12px}.w-\[14px\]{width:14px}.w-\[34px\]{width:34px}.w-\[48px\]{width:48px}.w-\[52px\]{width:52px}.w-\[60px\]{width:60px}.w-\[70px\]{width:70px}.w-\[110px\]{width:110px}.w-\[130px\]{width:130px}.w-\[140px\]{width:140px}.w-\[170px\]{width:170px}.w-\[320px\]{width:320px}.w-\[360px\]{width:360px}.w-\[380px\]{width:380px}.w-\[420px\]{width:420px}.w-\[520px\]{width:520px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.\!max-w-\[90vw\]{max-width:90vw!important}.\!max-w-\[96vw\]{max-width:96vw!important}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-\[180px\]{max-width:180px}.max-w-\[200px\]{max-width:200px}.max-w-\[220px\]{max-width:220px}.max-w-\[320px\]{max-width:320px}.max-w-\[480px\]{max-width:480px}.min-w-\(--bits-select-anchor-width\){min-width:var(--bits-select-anchor-width)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[40px\]{min-width:40px}.min-w-\[100px\]{min-width:100px}.min-w-\[120px\]{min-width:120px}.min-w-\[320px\]{min-width:320px}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--bits-popover-content-transform-origin\){transform-origin:var(--bits-popover-content-transform-origin)}.origin-\(--bits-select-content-transform-origin\){transform-origin:var(--bits-select-content-transform-origin)}.origin-\(--bits-tooltip-content-transform-origin\){transform-origin:var(--bits-tooltip-content-transform-origin)}.origin-left{transform-origin:0}.origin-right{transform-origin:100%}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-90{--tw-scale-x:90%;--tw-scale-y:90%;--tw-scale-z:90%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-45{rotate:45deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.\[animation\:pulse_2s_infinite\]{animation:2s infinite pulse}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:calc(var(--spacing) * 1)}.list-none{list-style-type:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.grid-cols-\[80px_1fr\]{grid-template-columns:80px 1fr}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-cols-\[repeat\(auto-fill\,minmax\(320px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.content-start{align-content:flex-start}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-0{gap:calc(var(--spacing) * 0)}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-\[5px\]{gap:5px}.gap-\[6px\]{gap:6px}.gap-\[var\(--space-md\)\]{gap:var(--space-md)}.gap-\[var\(--space-sm\)\]{gap:var(--space-sm)}.gap-\[var\(--space-xs\)\]{gap:var(--space-xs)}.gap-px{gap:1px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-px>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(1px * var(--tw-space-y-reverse));margin-block-end:calc(1px * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[4px\]{border-radius:4px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.border-t-2{border-top-style:var(--tw-border-style);border-top-width:2px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.\!border-l{border-left-style:var(--tw-border-style)!important;border-left-width:1px!important}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.\!border-\[var\(--sig-border-strong\)\]{border-color:var(--sig-border-strong)!important}.border-\[\#4a7a5e\]{border-color:#4a7a5e}.border-\[\#4ade80\]{border-color:#4ade80}.border-\[\#8a4a48\]{border-color:#8a4a48}.border-\[\#94a3b8\]{border-color:#94a3b8}.border-\[\#b8860b\]{border-color:#b8860b}.border-\[\#f87171\]{border-color:#f87171}.border-\[\#fbbf24\]{border-color:#fbbf24}.border-\[rgba\(255\,255\,255\,0\.1\)\]{border-color:#ffffff1a}.border-\[rgba\(255\,255\,255\,0\.2\)\]{border-color:#fff3}.border-\[rgba\(255\,255\,255\,0\.14\)\]{border-color:#ffffff24}.border-\[rgba\(255\,255\,255\,0\.22\)\]{border-color:#ffffff38}.border-\[rgba\(255\,255\,255\,0\.24\)\]{border-color:#ffffff3d}.border-\[rgba\(255\,255\,255\,0\.26\)\]{border-color:#ffffff42}.border-\[rgba\(255\,255\,255\,0\.28\)\]{border-color:#ffffff47}.border-\[rgba\(255\,255\,255\,0\.32\)\]{border-color:#ffffff52}.border-\[var\(--sig-accent\)\]{border-color:var(--sig-accent)}.border-\[var\(--sig-border\)\],.border-\[var\(--sig-border\)\]\/30{border-color:var(--sig-border)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--sig-border\)\]\/30{border-color:color-mix(in oklab,var(--sig-border) 30%,transparent)}}.border-\[var\(--sig-border-strong\)\]{border-color:var(--sig-border-strong)}.border-\[var\(--sig-danger\)\]{border-color:var(--sig-danger)}.border-\[var\(--sig-success\)\]{border-color:var(--sig-success)}.border-\[var\(--sig-text-bright\)\]{border-color:var(--sig-text-bright)}.border-\[var\(--sig-text-muted\)\]{border-color:var(--sig-text-muted)}.border-\[var\(--sig-warning\,\#f59e0b\)\]\/20{border-color:var(--sig-warning,#f59e0b)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--sig-warning\,\#f59e0b\)\]\/20{border-color:color-mix(in oklab,var(--sig-warning,#f59e0b) 20%,transparent)}}.border-input{border-color:var(--input)}.border-red-500{border-color:var(--color-red-500)}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\/20{border-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-s-transparent{border-inline-start-color:#0000}.border-t-\[var\(--sig-text-muted\)\]{border-top-color:var(--sig-text-muted)}.border-t-transparent{border-top-color:#0000}.border-b-transparent{border-bottom-color:#0000}.\!border-l-\[var\(--sig-border\)\]{border-left-color:var(--sig-border)!important}.\!bg-\[var\(--sig-surface\)\]{background-color:var(--sig-surface)!important}.\!bg-\[var\(--sig-surface-raised\)\]{background-color:var(--sig-surface-raised)!important}.bg-\[\#4ade80\]{background-color:#4ade80}.bg-\[\#050505\]{background-color:#050505}.bg-\[\#f87171\]{background-color:#f87171}.bg-\[rgba\(5\,5\,5\,0\.72\)\]{background-color:#050505b8}.bg-\[rgba\(5\,5\,5\,0\.74\)\]{background-color:#050505bd}.bg-\[rgba\(5\,5\,5\,0\.75\)\]{background-color:#050505bf}.bg-\[rgba\(5\,5\,5\,0\.92\)\]{background-color:#050505eb}.bg-\[rgba\(138\,138\,150\,0\.1\)\]{background-color:#8a8a961a}.bg-\[rgba\(255\,255\,255\,0\.02\)\]{background-color:#ffffff05}.bg-\[rgba\(255\,255\,255\,0\.03\)\]{background-color:#ffffff08}.bg-\[rgba\(255\,255\,255\,0\.04\)\]{background-color:#ffffff0a}.bg-\[rgba\(255\,255\,255\,0\.06\)\]{background-color:#ffffff0f}.bg-\[rgba\(255\,255\,255\,0\.08\)\]{background-color:#ffffff14}.bg-\[var\(--sig-accent\)\]{background-color:var(--sig-accent)}.bg-\[var\(--sig-bg\)\]{background-color:var(--sig-bg)}.bg-\[var\(--sig-success\)\]{background-color:var(--sig-success)}.bg-\[var\(--sig-surface\)\]{background-color:var(--sig-surface)}.bg-\[var\(--sig-surface-raised\)\]{background-color:var(--sig-surface-raised)}.bg-\[var\(--sig-text-bright\)\]{background-color:var(--sig-text-bright)}.bg-\[var\(--sig-warning\,\#f59e0b\)\]\/8{background-color:var(--sig-warning,#f59e0b)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--sig-warning\,\#f59e0b\)\]\/8{background-color:color-mix(in oklab,var(--sig-warning,#f59e0b) 8%,transparent)}}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-foreground{background-color:var(--foreground)}.bg-muted,.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-red-500\/8{background-color:#fb2c3614}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/8{background-color:color-mix(in oklab,var(--color-red-500) 8%,transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.bg-clip-padding{background-clip:padding-box}.\!p-0{padding:calc(var(--spacing) * 0)!important}.p-0{padding:calc(var(--spacing) * 0)}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-8{padding:calc(var(--spacing) * 8)}.p-\[3px\]{padding:3px}.p-\[var\(--space-md\)\]{padding:var(--space-md)}.p-\[var\(--space-sm\)\]{padding:var(--space-sm)}.p-px{padding:1px}.px-\(--cell-size\){padding-inline:var(--cell-size)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\[5px\]{padding-inline:5px}.px-\[7px\]{padding-inline:7px}.px-\[9px\]{padding-inline:9px}.px-\[var\(--space-md\)\]{padding-inline:var(--space-md)}.py-0{padding-block:calc(var(--spacing) * 0)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-\[1px\]{padding-block:1px}.py-\[2px\]{padding-block:2px}.py-\[3px\]{padding-block:3px}.py-\[4px\]{padding-block:4px}.py-\[5px\]{padding-block:5px}.py-\[6px\]{padding-block:6px}.py-\[7px\]{padding-block:7px}.py-\[var\(--space-sm\)\]{padding-block:var(--space-sm)}.py-\[var\(--space-xl\)\]{padding-block:var(--space-xl)}.py-\[var\(--space-xs\)\]{padding-block:var(--space-xs)}.py-px{padding-block:1px}.ps-2{padding-inline-start:calc(var(--spacing) * 2)}.pe-1{padding-inline-end:calc(var(--spacing) * 1)}.pe-8{padding-inline-end:calc(var(--spacing) * 8)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-1\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pr-\[var\(--space-md\)\]{padding-right:var(--space-md)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-\[1px\]{padding-bottom:1px}.pb-\[var\(--space-md\)\]{padding-bottom:var(--space-md)}.pl-\[56px\]{padding-left:56px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-start{text-align:start}.align-middle{vertical-align:middle}.\!font-\[family-name\:var\(--font-mono\)\]{font-family:var(--font-mono)!important}.font-\[family-name\:var\(--font-display\)\]{font-family:var(--font-display)}.font-\[family-name\:var\(--font-mono\)\]{font-family:var(--font-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\!text-\[12px\]{font-size:12px!important}.text-\[0\.8rem\]{font-size:.8rem}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[length\:var\(--font-size-base\)\]{font-size:var(--font-size-base)}.text-\[length\:var\(--font-size-sm\)\]{font-size:var(--font-size-sm)}.text-\[length\:var\(--font-size-xs\)\]{font-size:var(--font-size-xs)}.leading-\[1\.3\]{--tw-leading:1.3;line-height:1.3}.leading-\[1\.5\]{--tw-leading:1.5;line-height:1.5}.leading-\[1\.6\]{--tw-leading:1.6;line-height:1.6}.leading-\[1\.35\]{--tw-leading:1.35;line-height:1.35}.leading-\[1\.45\]{--tw-leading:1.45;line-height:1.45}.leading-\[1\.55\]{--tw-leading:1.55;line-height:1.55}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.1em\]{--tw-tracking:.1em;letter-spacing:.1em}.tracking-\[0\.02em\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\[0\.04em\]{--tw-tracking:.04em;letter-spacing:.04em}.tracking-\[0\.05em\]{--tw-tracking:.05em;letter-spacing:.05em}.tracking-\[0\.06em\]{--tw-tracking:.06em;letter-spacing:.06em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.\!text-\[var\(--sig-text-bright\)\]{color:var(--sig-text-bright)!important}.text-\[\#4a7a5e\]{color:#4a7a5e}.text-\[\#4ade80\]{color:#4ade80}.text-\[\#6b6b76\]{color:#6b6b76}.text-\[\#8a4a48\]{color:#8a4a48}.text-\[\#94a3b8\]{color:#94a3b8}.text-\[\#b8860b\]{color:#b8860b}.text-\[\#c4a24a\]{color:#c4a24a}.text-\[\#e5c07b\]{color:#e5c07b}.text-\[\#e06c75\]{color:#e06c75}.text-\[\#f87171\]{color:#f87171}.text-\[\#fbbf24\]{color:#fbbf24}.text-\[var\(--sig-accent\)\]{color:var(--sig-accent)}.text-\[var\(--sig-bg\)\]{color:var(--sig-bg)}.text-\[var\(--sig-border-strong\)\]{color:var(--sig-border-strong)}.text-\[var\(--sig-danger\)\]{color:var(--sig-danger)}.text-\[var\(--sig-success\)\]{color:var(--sig-success)}.text-\[var\(--sig-text\)\]{color:var(--sig-text)}.text-\[var\(--sig-text-bright\)\]{color:var(--sig-text-bright)}.text-\[var\(--sig-text-dim\)\]{color:var(--sig-text-dim)}.text-\[var\(--sig-text-muted\)\]{color:var(--sig-text-muted)}.text-\[var\(--sig-warning\)\]{color:var(--sig-warning)}.text-\[var\(--sig-warning\,\#f59e0b\)\]{color:var(--sig-warning,#f59e0b)}.text-amber-400{color:var(--color-amber-400)}.text-background{color:var(--background)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-emerald-400{color:var(--color-emerald-400)}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-red-400{color:var(--color-red-400)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab,red,red)){.text-sidebar-foreground\/70{color:color-mix(in oklab,var(--sidebar-foreground) 70%,transparent)}}.text-white{color:var(--color-white)}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_1px_var\(--sidebar-border\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-border));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-ring\/10{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.ring-ring\/10{--tw-ring-color:color-mix(in oklab, var(--ring) 10%, transparent)}}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-ring\/50{outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.outline-ring\/50{outline-color:color-mix(in oklab,var(--ring) 50%,transparent)}}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,width\]{transition-property:opacity,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[--cell-size\:--spacing\(8\)\]{--cell-size:calc(var(--spacing) * 8)}.paused{animation-play-state:paused}.running{animation-play-state:running}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media(hover:hover){.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pe-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-inline-end:calc(var(--spacing) * 8)}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-0:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 0)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 0)!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:start-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){inset-inline-start:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:end-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(:where(.group)[data-collapsible=offcanvas] *){inset-inline-end:calc(var(--sidebar-width) * -1)}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:calc(var(--spacing) * 0)}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\[side\=left\]\:-end-4:is(:where(.group)[data-side=left] *){inset-inline-end:calc(var(--spacing) * -4)}.group-data-\[side\=right\]\:start-0:is(:where(.group)[data-side=right] *){inset-inline-start:calc(var(--spacing) * 0)}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:border:is(:where(.group)[data-variant=floating] *){border-style:var(--tw-border-style);border-width:1px}.group-data-\[variant\=floating\]\:border-sidebar-border:is(:where(.group)[data-variant=floating] *){border-color:var(--sidebar-border)}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media(hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button)[data-active=true]~*){color:var(--sidebar-accent-foreground)}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:calc(var(--spacing) * 1)}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.placeholder\:text-\[var\(--sig-text-muted\)\]::placeholder{color:var(--sig-text-muted)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:left-1\/2:before{content:var(--tw-content);left:50%}.before\:h-full:before{content:var(--tw-content);height:100%}.before\:w-px:before{content:var(--tw-content);width:1px}.before\:bg-\[var\(--sig-accent\)\]:before{content:var(--tw-content);background-color:var(--sig-accent)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}.after\:start-\[calc\(1\/2\*100\%-1px\)\]:after{content:var(--tw-content);inset-inline-start:calc(50% - 1px)}.after\:top-1\/2:after{content:var(--tw-content);top:50%}.after\:h-px:after{content:var(--tw-content);height:1px}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:w-full:after{content:var(--tw-content);width:100%}.after\:bg-\[var\(--sig-accent\)\]:after{content:var(--tw-content);background-color:var(--sig-accent)}.group-data-\[collapsible\=offcanvas\]\:after\:start-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);inset-inline-start:100%}.focus-within\:z-20:focus-within{z-index:20}@media(hover:hover){.hover\:border-\[var\(--sig-accent\)\]:hover{border-color:var(--sig-accent)}.hover\:border-\[var\(--sig-border\)\]:hover{border-color:var(--sig-border)}.hover\:border-\[var\(--sig-border-strong\)\]:hover{border-color:var(--sig-border-strong)}.hover\:border-\[var\(--sig-danger\)\]:hover{border-color:var(--sig-danger)}.hover\:border-\[var\(--sig-text-bright\)\]:hover{border-color:var(--sig-text-bright)}.hover\:border-\[var\(--sig-text-muted\)\]:hover{border-color:var(--sig-text-muted)}.hover\:bg-\[var\(--sig-accent\)\]:hover{background-color:var(--sig-accent)}.hover\:bg-\[var\(--sig-accent-hover\,var\(--sig-accent\)\)\]:hover{background-color:var(--sig-accent-hover,var(--sig-accent))}.hover\:bg-\[var\(--sig-danger\)\]:hover{background-color:var(--sig-danger)}.hover\:bg-\[var\(--sig-surface\)\]:hover{background-color:var(--sig-surface)}.hover\:bg-\[var\(--sig-surface-raised\)\]:hover{background-color:var(--sig-surface-raised)}.hover\:bg-\[var\(--sig-text\)\]:hover{background-color:var(--sig-text)}.hover\:bg-\[var\(--sig-text-bright\)\]:hover{background-color:var(--sig-text-bright)}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary) 90%,transparent)}}.hover\:bg-red-500:hover{background-color:var(--color-red-500)}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary) 80%,transparent)}}.hover\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:text-\[var\(--sig-accent\)\]:hover{color:var(--sig-accent)}.hover\:text-\[var\(--sig-bg\)\]:hover{color:var(--sig-bg)}.hover\:text-\[var\(--sig-text\)\]:hover{color:var(--sig-text)}.hover\:text-\[var\(--sig-text-bright\)\]:hover{color:var(--sig-text-bright)}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-red-400:hover{color:var(--color-red-400)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-accent));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.focus\:relative:focus{position:relative}.focus\:border-\[var\(--sig-accent\)\]:focus{border-color:var(--sig-accent)}.focus\:border-ring:focus{border-color:var(--ring)}.focus\:ring-ring\/50:focus{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus\:ring-ring\/50:focus{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:border-\[var\(--sig-accent\)\]:focus-visible{border-color:var(--sig-accent)}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-4:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.focus-visible\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}@media(hover:hover){.enabled\:hover\:bg-\[var\(--sig-text-bright\)\]:enabled:hover{background-color:var(--sig-text-bright)}.enabled\:hover\:text-\[var\(--sig-bg\)\]:enabled:hover{color:var(--sig-bg)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:no-underline:disabled{text-decoration-line:none}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}.has-focus\:border-ring:has(:focus){border-color:var(--ring)}.has-focus\:ring-\[3px\]:has(:focus){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:var(--sidebar-accent)}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:var(--sidebar-accent-foreground)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:text-muted-foreground[data-disabled]{color:var(--muted-foreground)}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[highlighted\]\:bg-accent[data-highlighted]{background-color:var(--accent)}.data-\[highlighted\]\:text-accent-foreground[data-highlighted]{color:var(--accent-foreground)}.data-\[orientation\=horizontal\]\:h-px[data-orientation=horizontal]{height:1px}.data-\[orientation\=horizontal\]\:w-full[data-orientation=horizontal]{width:100%}.data-\[orientation\=vertical\]\:min-h-full[data-orientation=vertical]{min-height:100%}.data-\[orientation\=vertical\]\:w-px[data-orientation=vertical]{width:1px}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[selected\]\:bg-primary[data-selected]{background-color:var(--primary)}.data-\[selected\]\:text-primary-foreground[data-selected]{color:var(--primary-foreground)}.data-\[side\=bottom\]\:-translate-x-1\/2[data-side=bottom]{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:-translate-y-\[calc\(-50\%_\+_1px\)\][data-side=bottom]{--tw-translate-y: calc((-50% + 1px)*-1) ;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:-translate-y-\[calc\(50\%_-_3px\)\][data-side=left]{--tw-translate-y: calc((50% - 3px)*-1) ;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-end-2[data-side=left]:where(:dir(ltr),[dir=ltr]){--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:slide-in-from-end-2[data-side=left]:where(:dir(rtl),[dir=rtl]){--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:translate-x-\[calc\(50\%_\+_2px\)\][data-side=right]{--tw-translate-x: calc(50% + 2px) ;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:translate-y-1\/2[data-side=right]{--tw-translate-y: 50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-start-2[data-side=right]:where(:dir(ltr),[dir=ltr]){--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=right\]\:slide-in-from-start-2[data-side=right]:where(:dir(rtl),[dir=rtl]){--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=top\]\:translate-x-1\/2[data-side=top]{--tw-translate-x: 50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:translate-y-\[calc\(-50\%_\+_2px\)\][data-side=top]{--tw-translate-y: calc(-50% + 2px) ;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=active\]\:border-b-\[var\(--sig-text-bright\)\][data-state=active]{border-bottom-color:var(--sig-text-bright)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-\[var\(--sig-text-bright\)\][data-state=active]{color:var(--sig-text-bright)}.data-\[state\=active\]\:shadow-none[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state=checked]{--tw-translate-x: calc(100% - 2px) ;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:slide-out-to-end[data-state=closed]:dir(ltr){--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-end[data-state=closed]:dir(rtl){--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-start[data-state=closed]:dir(ltr){--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-start[data-state=closed]:dir(rtl){--tw-exit-translate-x:100%}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:slide-in-from-end[data-state=open]:dir(ltr){--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-end[data-state=open]:dir(rtl){--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-start[data-state=open]:dir(ltr){--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-start[data-state=open]:dir(rtl){--tw-enter-translate-x:100%}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}@media(hover:hover){.data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:var(--sidebar-accent)}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:var(--sidebar-accent-foreground)}}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\[unavailable\]\:text-muted-foreground[data-unavailable]{color:var(--muted-foreground)}.data-\[unavailable\]\:line-through[data-unavailable]{text-decoration-line:line-through}@media not all and (min-width:64rem){.max-lg\:max-h-\[48\%\]{max-height:48%}.max-lg\:max-h-none{max-height:none}.max-lg\:w-full{width:100%}.max-lg\:min-w-0{min-width:calc(var(--spacing) * 0)}.max-lg\:flex-col{flex-direction:column}.max-lg\:border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.max-lg\:border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.max-lg\:border-t-\[var\(--sig-border\)\]{border-top-color:var(--sig-border)}}@media(min-width:40rem){.sm\:flex{display:flex}.sm\:max-w-\[420px\]{max-width:420px}.sm\:max-w-\[520px\]{max-width:520px}.sm\:max-w-sm{max-width:var(--container-sm)}}@media(min-width:48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media(min-width:64rem){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:max-h-none{max-height:none}.lg\:min-h-0{min-height:calc(var(--spacing) * 0)}.lg\:w-\[320px\]{width:320px}.lg\:w-\[420px\]{width:420px}.lg\:grid-cols-\[minmax\(0\,1\.5fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.lg\:flex-row{flex-direction:row}.lg\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}}@media(min-width:80rem){.xl\:grid-cols-\[1\.2fr_0\.8fr\]{grid-template-columns:1.2fr .8fr}}.rtl\:rotate-180:where(:dir(rtl),[dir=rtl],[dir=rtl] *){rotate:180deg}.dark\:border-input:is(:root:not([data-theme=light]) *){border-color:var(--input)}.dark\:bg-destructive\/60:is(:root:not([data-theme=light]) *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is(:root:not([data-theme=light]) *){background-color:color-mix(in oklab,var(--destructive) 60%,transparent)}}.dark\:bg-destructive\/70:is(:root:not([data-theme=light]) *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/70:is(:root:not([data-theme=light]) *){background-color:color-mix(in oklab,var(--destructive) 70%,transparent)}}.dark\:bg-input\/30:is(:root:not([data-theme=light]) *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(:root:not([data-theme=light]) *){background-color:color-mix(in oklab,var(--input) 30%,transparent)}}.dark\:bg-popover:is(:root:not([data-theme=light]) *){background-color:var(--popover)}.dark\:text-muted-foreground:is(:root:not([data-theme=light]) *){color:var(--muted-foreground)}.dark\:text-popover-foreground:is(:root:not([data-theme=light]) *){color:var(--popover-foreground)}.dark\:ring-ring\/20:is(:root:not([data-theme=light]) *){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.dark\:ring-ring\/20:is(:root:not([data-theme=light]) *){--tw-ring-color:color-mix(in oklab, var(--ring) 20%, transparent)}}.dark\:outline-ring\/40:is(:root:not([data-theme=light]) *){outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.dark\:outline-ring\/40:is(:root:not([data-theme=light]) *){outline-color:color-mix(in oklab,var(--ring) 40%,transparent)}}@media(hover:hover){.dark\:hover\:bg-accent\/50:is(:root:not([data-theme=light]) *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(:root:not([data-theme=light]) *):hover{background-color:color-mix(in oklab,var(--accent) 50%,transparent)}}.dark\:hover\:bg-input\/50:is(:root:not([data-theme=light]) *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(:root:not([data-theme=light]) *):hover{background-color:color-mix(in oklab,var(--input) 50%,transparent)}}.dark\:hover\:text-accent-foreground:is(:root:not([data-theme=light]) *):hover{color:var(--accent-foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(:root:not([data-theme=light]) *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(:root:not([data-theme=light]) *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(:root:not([data-theme=light]) *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(:root:not([data-theme=light]) *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}@media(hover:hover){.dark\:data-\[selected\]\:hover\:bg-accent\/50:is(:root:not([data-theme=light]) *)[data-selected]:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[selected\]\:hover\:bg-accent\/50:is(:root:not([data-theme=light]) *)[data-selected]:hover{background-color:color-mix(in oklab,var(--accent) 50%,transparent)}}}.dark\:data-\[state\=active\]\:border-input:is(:root:not([data-theme=light]) *)[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30:is(:root:not([data-theme=light]) *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(:root:not([data-theme=light]) *)[data-state=active]{background-color:color-mix(in oklab,var(--input) 30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(:root:not([data-theme=light]) *)[data-state=active]{color:var(--foreground)}.dark\:data-\[state\=checked\]\:bg-primary:is(:root:not([data-theme=light]) *)[data-state=checked]{background-color:var(--primary)}.dark\:data-\[state\=checked\]\:bg-primary-foreground:is(:root:not([data-theme=light]) *)[data-state=checked]{background-color:var(--primary-foreground)}.dark\:data-\[state\=unchecked\]\:bg-foreground:is(:root:not([data-theme=light]) *)[data-state=unchecked]{background-color:var(--foreground)}.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(:root:not([data-theme=light]) *)[data-state=unchecked]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(:root:not([data-theme=light]) *)[data-state=unchecked]{background-color:color-mix(in oklab,var(--input) 80%,transparent)}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker{display:none}.\[\&\:first-child\[data-selected\]_\[data-bits-day\]\]\:rounded-s-md:first-child[data-selected] [data-bits-day]{border-start-start-radius:calc(var(--radius) - 2px);border-end-start-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pe-0:has([role=checkbox]){padding-inline-end:calc(var(--spacing) * 0)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}.\[\&\:last-child\[data-selected\]_\[data-bits-day\]\]\:rounded-e-md:last-child[data-selected] [data-bits-day]{border-start-end-radius:calc(var(--radius) - 2px);border-end-end-radius:calc(var(--radius) - 2px)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--muted-foreground)}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}@media(hover:hover){:is(.hover\:\[\&\,\&\>svelte-css-wrapper\]\:\[\&\>th\,td\]\:bg-muted\/50:hover,.hover\:\[\&\,\&\>svelte-css-wrapper\]\:\[\&\>th\,td\]\:bg-muted\/50:hover>svelte-css-wrapper)>th,:is(.hover\:\[\&\,\&\>svelte-css-wrapper\]\:\[\&\>th\,td\]\:bg-muted\/50:hover,.hover\:\[\&\,\&\>svelte-css-wrapper\]\:\[\&\>th\,td\]\:bg-muted\/50:hover>svelte-css-wrapper) td{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){:is(.hover\:\[\&\,\&\>svelte-css-wrapper\]\:\[\&\>th\,td\]\:bg-muted\/50:hover,.hover\:\[\&\,\&\>svelte-css-wrapper\]\:\[\&\>th\,td\]\:bg-muted\/50:hover>svelte-css-wrapper)>th,:is(.hover\:\[\&\,\&\>svelte-css-wrapper\]\:\[\&\>th\,td\]\:bg-muted\/50:hover,.hover\:\[\&\,\&\>svelte-css-wrapper\]\:\[\&\>th\,td\]\:bg-muted\/50:hover>svelte-css-wrapper) td{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[data-outside-month\]\:not\(\[data-selected\]\)\]\:text-muted-foreground[data-outside-month]:not([data-selected]){color:var(--muted-foreground)}@media(hover:hover){.\[\&\[data-outside-month\]\:not\(\[data-selected\]\)\]\:hover\:text-accent-foreground[data-outside-month]:not([data-selected]):hover{color:var(--accent-foreground)}}.\[\&\[data-today\]\:not\(\[data-selected\]\)\]\:bg-accent[data-today]:not([data-selected]){background-color:var(--accent)}.\[\&\[data-today\]\:not\(\[data-selected\]\)\]\:text-accent-foreground[data-today]:not([data-selected]){color:var(--accent-foreground)}.\[\&\[data-today\]\[data-disabled\]\]\:text-muted-foreground[data-today][data-disabled]{color:var(--muted-foreground)}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-end-2{inset-inline-end:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-start-2{inset-inline-start:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}@media(hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--accent)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary) 90%,transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,var(--secondary) 90%,transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--accent-foreground)}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--radius:0px;--background:#08080a;--foreground:#d4d4d8;--card:#0e0e12;--card-foreground:#d4d4d8;--popover:#0e0e12;--popover-foreground:#d4d4d8;--primary:#f0f0f2;--primary-foreground:#08080a;--secondary:#151519;--secondary-foreground:#d4d4d8;--muted:#151519;--muted-foreground:#6b6b76;--accent:#151519;--accent-foreground:#d4d4d8;--destructive:#8a4a48;--destructive-foreground:#f0f0f2;--border:#ffffff0f;--input:#ffffff1f;--ring:#6b6b76;--sidebar:#0b0b0f;--sidebar-foreground:#d4d4d8;--sidebar-primary:#f0f0f2;--sidebar-primary-foreground:#08080a;--sidebar-accent:#ffffff14;--sidebar-accent-foreground:#d4d4d8;--sidebar-border:#ffffff0f;--sidebar-ring:#6b6b76;--sig-bg:#08080a;--sig-surface:#0e0e12;--sig-surface-raised:#151519;--sig-border:#ffffff0f;--sig-border-strong:#ffffff1f;--sig-text:#d4d4d8;--sig-text-bright:#f0f0f2;--sig-text-muted:#6b6b76;--sig-accent:#8a8a96;--sig-accent-hover:#c0c0c8;--sig-danger:#8a4a48;--sig-success:#4a7a5e;--sig-dither:#f0f0f2;--sig-grain-opacity:.04;--font-display:"Chakra Petch", sans-serif;--font-mono:"IBM Plex Mono", monospace;--font-sans:var(--font-display);--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:48px;--space-2xl:80px;--font-size-xs:10px;--font-size-sm:11px;--font-size-base:13px;--font-size-lg:15px;--ease:cubic-bezier(.16, 1, .3, 1);--dur:.2s}[data-theme=light]{--background:#e4dfd8;--foreground:#2a2a2e;--card:#dbd5cd;--card-foreground:#2a2a2e;--popover:#dbd5cd;--popover-foreground:#2a2a2e;--primary:#0a0a0c;--primary-foreground:#e4dfd8;--secondary:#d1cbc2;--secondary-foreground:#2a2a2e;--muted:#d1cbc2;--muted-foreground:#7a756e;--accent:#d1cbc2;--accent-foreground:#2a2a2e;--destructive:#8a4a48;--destructive-foreground:#f0f0f2;--border:#0000000f;--input:#0000001f;--ring:#7a756e;--sidebar:#d6d0c8;--sidebar-foreground:#2a2a2e;--sidebar-primary:#0a0a0c;--sidebar-primary-foreground:#e4dfd8;--sidebar-accent:#00000014;--sidebar-accent-foreground:#2a2a2e;--sidebar-border:#0000000f;--sidebar-ring:#7a756e;--sig-bg:#e4dfd8;--sig-surface:#dbd5cd;--sig-surface-raised:#d1cbc2;--sig-border:#0000000f;--sig-border-strong:#0000001f;--sig-text:#2a2a2e;--sig-text-bright:#0a0a0c;--sig-text-muted:#7a756e;--sig-accent:#6a6660;--sig-accent-hover:#3a3832;--sig-danger:#8a4a48;--sig-success:#4a7a5e;--sig-dither:#0a0a0c;--sig-grain-opacity:.06}html{background:var(--sig-bg);color:var(--sig-text);font-family:var(--font-mono);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .4s var(--ease),color .4s var(--ease);font-size:13px;line-height:1.55}body{min-height:100vh;margin:0}body:before{content:"";z-index:9999;pointer-events:none;opacity:var(--sig-grain-opacity);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px;position:fixed;inset:0}::selection{background:var(--sig-border-strong);color:var(--sig-text-bright)}::-webkit-scrollbar{width:3px;height:3px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--sig-border-strong);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--sig-text-muted)}:focus-visible{outline:1px solid var(--sig-text-muted);outline-offset:1px}button,a,input,select,textarea{transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}h1,h2,h3{font-family:var(--font-display);color:var(--sig-text-bright);text-transform:uppercase;font-weight:600;line-height:1.1}h1{letter-spacing:.06em;font-size:1.5rem}h2{letter-spacing:.05em;font-size:1rem}h3{letter-spacing:.04em;font-size:.875rem}.prose{font-family:var(--font-mono);color:var(--sig-text);font-size:13px;line-height:1.7}.prose h1,.prose h2,.prose h3{font-family:var(--font-display);color:var(--sig-text-bright);text-transform:uppercase;margin:1.5em 0 .5em;font-weight:600;line-height:1.2}.prose h1{letter-spacing:.06em;border-bottom:1px solid var(--sig-border);padding-bottom:.4em;font-size:1.25rem}.prose h2{letter-spacing:.05em;font-size:1rem}.prose h3{letter-spacing:.04em;font-size:.875rem}.prose p{margin:.75em 0}.prose ul,.prose ol{margin:.5em 0;padding-left:1.5em}.prose li{margin:.25em 0}.prose code{font-family:var(--font-mono);background:var(--sig-surface-raised);border:1px solid var(--sig-border);padding:1px 5px;font-size:.9em}.prose pre{background:var(--sig-bg);border:1px solid var(--sig-border);padding:var(--space-sm) var(--space-md);margin:.75em 0;overflow-x:auto}.prose pre code{background:0 0;border:none;padding:0}.prose a{color:var(--sig-accent);text-underline-offset:2px;text-decoration:underline}.prose a:hover{color:var(--sig-accent-hover)}.prose strong{color:var(--sig-text-bright);font-weight:600}.prose em{font-style:italic}.prose blockquote{border-left:2px solid var(--sig-border-strong);padding:.25em 0 .25em var(--space-md);color:var(--sig-text-muted);margin:.75em 0}.prose hr{border:none;border-top:1px solid var(--sig-border);margin:1.5em 0}.prose table{border-collapse:collapse;width:100%;margin:.75em 0;font-size:12px}.prose th,.prose td{border:1px solid var(--sig-border);text-align:left;padding:4px 8px}.prose th{background:var(--sig-surface-raised);color:var(--sig-text-bright);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:600}@media(prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes pulse{50%{opacity:.5}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}
@@ -1 +1 @@
1
- import{a as $,F as c,m as d,q as o,G as i,S as y,B as P,H as q,g as l,h as u,u as h,l as z,E as B}from"./cZT7cFE6.js";import{e as g}from"./DFliBdid.js";function H(f,e){$(e,!0);let a=c(e,"ref",15,null),r=c(e,"checked",15,!1),p=B(e,["$$slots","$$events","$$legacy","ref","class","checked"]);var s=d(),b=o(s);{let k=h(()=>g("data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 peer inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e.class));i(b,()=>y,(m,v)=>{v(m,P({"data-slot":"switch",get class(){return l(k)}},()=>p,{get ref(){return a()},set ref(t){a(t)},get checked(){return r()},set checked(t){r(t)},children:(t,E)=>{var n=d(),w=o(n);{let x=h(()=>g("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"));i(w,()=>q,(_,S)=>{S(_,{"data-slot":"switch-thumb",get class(){return l(x)}})})}u(t,n)},$$slots:{default:!0}}))})}u(f,s),z()}export{H as S};
1
+ import{a as $,F as c,m as d,q as o,G as i,S as y,B as P,H as q,g as l,h as u,u as h,l as z,E as B}from"./cZT7cFE6.js";import{e as g}from"./DGR6CBfw.js";function H(f,e){$(e,!0);let a=c(e,"ref",15,null),r=c(e,"checked",15,!1),p=B(e,["$$slots","$$events","$$legacy","ref","class","checked"]);var s=d(),b=o(s);{let k=h(()=>g("data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 peer inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e.class));i(b,()=>y,(m,v)=>{v(m,P({"data-slot":"switch",get class(){return l(k)}},()=>p,{get ref(){return a()},set ref(t){a(t)},get checked(){return r()},set checked(t){r(t)},children:(t,E)=>{var n=d(),w=o(n);{let x=h(()=>g("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"));i(w,()=>q,(_,S)=>{S(_,{"data-slot":"switch-thumb",get class(){return l(x)}})})}u(t,n)},$$slots:{default:!0}}))})}u(f,s),z()}export{H as S};
@@ -1 +1 @@
1
- import{a as p,B as l,m as c,q as i,C as d,D as m,h,l as f,E as u}from"./cZT7cFE6.js";import{I as $}from"./DFliBdid.js";function P(e,a){p(a,!0);let o=u(a,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}],["path",{d:"m15 5 4 4"}]];$(e,l({name:"pencil"},()=>o,{get iconNode(){return t},children:(n,_)=>{var s=c(),r=i(s);d(r,()=>a.children??m),h(n,s)},$$slots:{default:!0}})),f()}export{P};
1
+ import{a as p,B as l,m as c,q as i,C as d,D as m,h,l as f,E as u}from"./cZT7cFE6.js";import{I as $}from"./DGR6CBfw.js";function P(e,a){p(a,!0);let o=u(a,["$$slots","$$events","$$legacy"]);const t=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}],["path",{d:"m15 5 4 4"}]];$(e,l({name:"pencil"},()=>o,{get iconNode(){return t},children:(n,_)=>{var s=c(),r=i(s);d(r,()=>a.children??m),h(n,s)},$$slots:{default:!0}})),f()}export{P};
@@ -1,3 +1,3 @@
1
- import{p as tr,a as vt,P as Xt,g as e,b as h,c as a,i as O,d as i,r as t,e as b,M as $e,N as d,f as m,y as De,h as f,l as ft,u as C,s as U,al as ae,A as Rt,q as re,v as Ne,w as lt,a6 as kt,am as Nt,m as st,G as Ee,n as dt,t as At,z as M,o as rr,I as ar,ab as qt,J as or}from"./cZT7cFE6.js";import{B as zt}from"./DLLneOBY.js";import{S as nr}from"./Bfzcd63A.js";import{P as ir,a as sr,b as lr}from"./BemNI_nj.js";import{D as dr,S as cr,E as vr,F as fr,G as ur,H as mr}from"./DFliBdid.js";import{w as wt,s as Gt}from"./Br6JlEV2.js";const ye={harness:"#4dabf7",daemon:"#ff922b",pipeline:"#da77f2",db:"#ffd43b",search:"#da77f2",files:"#20c997",configs:"#4dabf7",llm:"#fcc419"},Oe={harness:"AI Harness",daemon:"Signet Daemon",pipeline:"Pipeline Workers",db:"memories.db",search:"Hybrid Recall",files:"~/.agents/",configs:"Harness Configs",llm:"LLM Provider"},gr={harness:{x:20,y:20,w:240,h:120,label:Oe.harness,color:ye.harness},daemon:{x:300,y:20,w:340,h:280,label:Oe.daemon,color:ye.daemon},pipeline:{x:20,y:360,w:620,h:140,label:Oe.pipeline,color:ye.pipeline},db:{x:680,y:160,w:200,h:200,label:Oe.db,color:ye.db},search:{x:920,y:160,w:200,h:140,label:Oe.search,color:ye.search},files:{x:680,y:400,w:200,h:100,label:Oe.files,color:ye.files},configs:{x:920,y:400,w:200,h:100,label:Oe.configs,color:ye.configs},llm:{x:680,y:540,w:200,h:80,label:Oe.llm,color:ye.llm}},Ue=[{id:"harness",label:"AI Client",group:"harness",x:40,y:55,w:200,h:50,logCategories:["hooks","session-tracker"],icon:"terminal",description:"Claude Code / OpenCode / OpenClaw — sends session hooks"},{id:"hooks",label:"Hook Handlers",group:"daemon",x:320,y:50,w:140,h:40,logCategories:["hooks"],icon:"webhook",description:"Session lifecycle hooks (start, submit, remember, recall, end)"},{id:"mutex",label:"Session Mutex",group:"daemon",x:320,y:110,w:140,h:40,logCategories:["session-tracker"],icon:"lock",description:"Plugin vs legacy runtime path enforcement"},{id:"queue",label:"Job Queues",group:"daemon",x:320,y:170,w:140,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"layers",description:"memory_jobs + summary_jobs durable queues"},{id:"watcher",label:"File Watcher",group:"daemon",x:490,y:110,w:130,h:40,logCategories:["watcher"],icon:"eye",description:"Chokidar file change detection on ~/.agents/"},{id:"sync",label:"Harness Sync",group:"daemon",x:490,y:170,w:130,h:40,logCategories:["sync"],diagnosticDomain:"connector",icon:"refresh-cw",description:"Generate CLAUDE.md, AGENTS.md from identity files"},{id:"extraction",label:"Extraction",group:"pipeline",x:40,y:395,w:110,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"cpu",description:"LLM extracts facts + entities (2s poll)"},{id:"summary",label:"Summary",group:"pipeline",x:165,y:395,w:100,h:40,logCategories:["summary-worker"],icon:"file-text",description:"Session-end transcript summarizer (5s poll)"},{id:"document",label:"Document",group:"pipeline",x:280,y:395,w:100,h:40,logCategories:["document-worker"],icon:"file-plus",description:"Chunk + embed documents (10s poll)"},{id:"retention",label:"Retention",group:"pipeline",x:395,y:395,w:100,h:40,logCategories:["retention"],diagnosticDomain:"mutation",icon:"trash-2",description:"Purge expired data (6h interval)"},{id:"maintenance",label:"Maintenance",group:"pipeline",x:510,y:395,w:110,h:40,logCategories:["maintenance"],icon:"wrench",description:"Self-repair + diagnostics (30min interval)"},{id:"database",label:"SQLite",group:"db",x:710,y:220,w:140,h:80,logCategories:["memory","embedding"],diagnosticDomain:"storage",icon:"database",description:"memories, embeddings, entities, relations, history"},{id:"search",label:"Hybrid Recall",group:"search",x:940,y:200,w:160,h:60,logCategories:["memory"],diagnosticDomain:"index",icon:"search",description:"BM25 + vector similarity + graph boost"},{id:"files",label:"Identity Files",group:"files",x:710,y:430,w:140,h:40,logCategories:["sync"],icon:"folder",description:"AGENTS.md, SOUL.md, IDENTITY.md, USER.md, MEMORY.md"},{id:"configs",label:"CLAUDE.md",group:"configs",x:950,y:430,w:140,h:40,logCategories:["harness"],icon:"file-code",description:"Generated harness config files"},{id:"llm",label:"LLM Provider",group:"llm",x:710,y:560,w:140,h:40,logCategories:["llm"],diagnosticDomain:"provider",icon:"brain",description:"Ollama qwen3:4b (or configured provider)"}],It=new Map(Ue.map(u=>[u.id,u])),pr=[{from:"harness",to:"hooks",label:"POST"},{from:"hooks",to:"mutex"},{from:"hooks",to:"queue",label:"enqueue"},{from:"queue",to:"extraction"},{from:"queue",to:"summary"},{from:"queue",to:"document"},{from:"extraction",to:"database",label:"write"},{from:"summary",to:"database"},{from:"document",to:"database"},{from:"retention",to:"database"},{from:"maintenance",to:"database"},{from:"extraction",to:"llm"},{from:"summary",to:"llm"},{from:"database",to:"search"},{from:"search",to:"harness",dashed:!0,label:"recall"},{from:"watcher",to:"sync"},{from:"files",to:"watcher"},{from:"sync",to:"configs"},{from:"files",to:"sync"},{from:"summary",to:"files",label:".md"},{from:"configs",to:"harness",dashed:!0,label:"next session"}];function xr(){return{health:"unknown",score:0,lastActivity:null,pulseCount:0,queueDepth:0,processingRate:0,errorCount:0,recentLogs:[],metrics:{}}}const $t=new Map;for(const u of Ue)for(const o of u.logCategories){const l=$t.get(o);l?l.push(u.id):$t.set(o,[u.id])}const Ht=20;function hr(){const u={};for(const o of Ue)u[o.id]=xr();return u}const Ft=50,_=tr({nodes:hr(),mode:"unknown",connected:!1,lastPoll:null,selectedNodeId:null,feed:[]});let fe=null;function Bt(){fe&&(fe.close(),fe=null);const u="";fe=new EventSource(`${u}/api/logs/stream`),fe.onopen=()=>{_.connected=!0},fe.onmessage=o=>{try{const l=JSON.parse(o.data);if(l.type==="connected"){_.connected=!0;return}const s=[..._.feed,l];_.feed=s.length>Ft?s.slice(-Ft):s;const c=$t.get(l.category);if(!c)return;for(const N of c){const D=_.nodes[N];if(!D)continue;D.pulseCount+=1,D.lastActivity=l.timestamp;const L=[...D.recentLogs,l];D.recentLogs=L.length>Ht?L.slice(-Ht):L,l.level==="error"&&(D.errorCount+=1)}}catch{}},fe.onerror=()=>{_.connected=!1,fe?.close(),fe=null,setTimeout(()=>{fe||Bt()},3e3)}}function br(){_.connected=!1,fe?.close(),fe=null}let ct=null;function yr(u){return u>=.8?"healthy":u>=.5?"degraded":u>0?"unhealthy":"unknown"}function _r(u){for(const o of Ue){if(!o.diagnosticDomain)continue;const l=u[o.diagnosticDomain];if(!l)continue;const s=_.nodes[o.id];if(!s)continue;const c=typeof l.score=="number"?l.score:0;s.score=c,s.health=yr(c),s.metrics=l}}function wr(u){const o=_.nodes.queue;if(o){const c=u.memory,N=u.summary;o.queueDepth=c.pending+c.leased+N.pending+N.leased,o.metrics={memory:c,summary:N}}const l=_.nodes.extraction;l&&(l.queueDepth=u.memory.pending);const s=_.nodes.summary;s&&(s.queueDepth=u.summary.pending)}async function Yt(){try{const u=await dr();if(!u)return;if(_.mode=u.mode,_.lastPoll=new Date().toISOString(),u.diagnostics&&_r(u.diagnostics),u.queues&&wr(u.queues),u.workers)for(const[o,l]of Object.entries(u.workers)){const s=_.nodes[o];s&&l.running&&s.health==="unknown"&&(s.health="healthy",s.score=1)}if(u.errorSummary)for(const[o,l]of Object.entries(u.errorSummary)){const s=o==="extraction"||o==="decision"?"extraction":o==="embedding"||o==="mutation"?"database":o==="connector"?"sync":null;if(s){const c=_.nodes[s];c&&(c.errorCount=l)}}}catch{}}function kr(u=5e3){ct||(Yt(),ct=setInterval(Yt,u))}function Sr(){ct&&(clearInterval(ct),ct=null)}function Ut(u){_.selectedNodeId=u}var Cr=ae('<rect class="glow-bg svelte-1tib701" x="-6" y="-6" rx="10" ry="10" opacity="0.12"></rect>'),Pr=ae('<rect class="pulse-ring svelte-1tib701" x="-4" y="-4" rx="10" ry="10" fill="none"></rect>'),Er=ae('<rect class="flash-overlay svelte-1tib701" rx="6" ry="6"></rect>'),Dr=ae('<animate attributeName="opacity" values="1;0.4;1" dur="1.5s" repeatCount="indefinite" class="svelte-1tib701"></animate>'),Mr=ae('<g class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),Lr=ae('<g transform="translate(8, -6)" class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" fill="#ef4444" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),Tr=ae('<g style="cursor: pointer"><!><!><rect class="node-rect svelte-1tib701" rx="6" ry="6"></rect><!><circle cx="10" class="svelte-1tib701"><!></circle><text text-anchor="middle" dominant-baseline="middle" font-size="11" font-family="var(--font-mono)" class="svelte-1tib701"> </text><!><!></g>');function Or(u,o){vt(o,!0);let l=C(()=>ye[o.def.group]);const s={healthy:"#4ade80",degraded:"#fbbf24",unhealthy:"#f87171",unknown:"#6b6b76"};let c=C(()=>s[o.nodeState.health]),N=C(()=>o.nodeState.health==="unknown"?e(l)+"88":e(c)),D=U(0),L=U(!1),y=U(!1),k=null;Xt(()=>{if(o.nodeState.pulseCount>e(D)){h(D,o.nodeState.pulseCount,!0),h(L,!0);const p=setTimeout(()=>{h(L,!1)},1200);return h(y,!0),k&&clearTimeout(k),k=setTimeout(()=>{h(y,!1)},3e3),()=>{clearTimeout(p),k&&clearTimeout(k)}}});function oe(){o.onselectnode(o.def.id)}var G=Tr();let A;var V=a(G);{var _e=p=>{var x=Cr();b(()=>{d(x,"width",o.def.w+12),d(x,"height",o.def.h+12),d(x,"fill",e(l))}),f(p,x)};O(V,p=>{e(y)&&p(_e)})}var de=i(V);{var ue=p=>{var x=Pr();b(()=>{d(x,"width",o.def.w+8),d(x,"height",o.def.h+8),d(x,"stroke",e(l))}),f(p,x)};O(de,p=>{e(L)&&p(ue)})}var E=i(de),S=i(E);{var P=p=>{var x=Er();b(()=>{d(x,"width",o.def.w),d(x,"height",o.def.h),d(x,"fill",e(l))}),f(p,x)};O(S,p=>{e(L)&&p(P)})}var T=i(S),Q=a(T);{var F=p=>{var x=Dr();f(p,x)};O(Q,p=>{e(y)&&p(F)})}t(T);var $=i(T),v=a($,!0);t($);var w=i($);{var H=p=>{var x=Mr(),z=a(x),ne=i(z),Re=a(ne,!0);t(ne),t(x),b(()=>{d(x,"transform",`translate(${o.def.w-8}, -6)`),d(z,"fill",e(l)),m(Re,o.nodeState.queueDepth)}),f(p,x)};O(w,p=>{o.nodeState.queueDepth>0&&p(H)})}var R=i(w);{var W=p=>{var x=Lr(),z=i(a(x)),ne=a(z,!0);t(z),t(x),b(()=>m(ne,o.nodeState.errorCount)),f(p,x)};O(R,p=>{o.nodeState.errorCount>0&&p(W)})}t(G),b(()=>{A=$e(G,0,"pipeline-node svelte-1tib701",null,A,{"pipeline-node--selected":o.selected,"pipeline-node--active":e(y)}),d(G,"transform",`translate(${o.def.x??""}, ${o.def.y??""})`),d(E,"width",o.def.w),d(E,"height",o.def.h),d(E,"fill",e(y)?e(l)+"18":"var(--sig-surface-raised)"),d(E,"stroke",e(y)?e(l):e(N)),d(E,"stroke-width",o.selected?2.5:e(y)?1.5:1),d(T,"cy",o.def.h/2),d(T,"r",e(y)?4:3),d(T,"fill",e(y)?e(l):e(c)),d(T,"opacity",e(y)?1:.7),d($,"x",o.def.w/2),d($,"y",o.def.h/2+1),d($,"fill",e(y)?e(l):"var(--sig-text-bright)"),d($,"font-weight",e(y)?"600":"400"),m(v,o.def.label)}),De("click",G,oe),f(u,G),ft()}Rt(["click"]);var Nr=ae('<path fill="none" stroke-width="4" opacity="0.15" class="edge-glow svelte-kl8ook"></path>'),Ar=ae('<circle r="2" opacity="0.6" class="svelte-kl8ook"><animateMotion repeatCount="indefinite" begin="0.5s" class="svelte-kl8ook"></animateMotion></circle>'),Ir=ae('<circle class="svelte-kl8ook"><animateMotion repeatCount="indefinite" class="svelte-kl8ook"></animateMotion></circle><!>',1),$r=ae('<text text-anchor="middle" font-size="9" font-family="var(--font-mono)" class="svelte-kl8ook"> </text>'),Rr=ae('<g class="pipeline-edge svelte-kl8ook"><path fill="none"></path><!><!><!></g>');function jr(u,o){vt(o,!0);let l=C(()=>It.get(o.edge.from)),s=C(()=>It.get(o.edge.to)),c=C(()=>e(l)?ye[e(l).group]:"#6b6b76"),N=C(()=>{if(!e(l)||!e(s))return"";const E=e(l).x+e(l).w/2,S=e(l).y+e(l).h/2,P=e(s).x+e(s).w/2,T=e(s).y+e(s).h/2,Q=(E+P)/2,F=(S+T)/2,$=Math.abs(P-E),v=Math.abs(T-S);return $>v?`M ${E} ${S} Q ${Q} ${S}, ${Q} ${F} Q ${Q} ${T}, ${P} ${T}`:`M ${E} ${S} Q ${E} ${F}, ${Q} ${F} Q ${P} ${F}, ${P} ${T}`}),D=C(()=>!e(l)||!e(s)?{x:0,y:0}:{x:(e(l).x+e(l).w/2+e(s).x+e(s).w/2)/2,y:(e(l).y+e(l).h/2+e(s).y+e(s).h/2)/2-8}),L=C(()=>o.active?"1s":"3s");var y=Rr(),k=a(y);let oe;var G=i(k);{var A=E=>{var S=Nr();b(()=>{d(S,"d",e(N)),d(S,"stroke",e(c))}),f(E,S)};O(G,E=>{o.active&&!o.edge.dashed&&E(A)})}var V=i(G);{var _e=E=>{var S=Ir(),P=re(S),T=a(P);t(P);var Q=i(P);{var F=$=>{var v=Ar(),w=a(v);t(v),b(()=>{d(v,"fill",e(c)),d(w,"dur",e(L)),d(w,"path",e(N))}),f($,v)};O(Q,$=>{o.active&&$(F)})}b(()=>{d(P,"r",o.active?3.5:2),d(P,"fill",o.active?e(c):"var(--sig-border)"),d(P,"opacity",o.active?1:.3),d(T,"dur",e(L)),d(T,"path",e(N))}),f(E,S)};O(V,E=>{o.edge.dashed||E(_e)})}var de=i(V);{var ue=E=>{var S=$r(),P=a(S,!0);t(S),b(()=>{d(S,"x",e(D).x),d(S,"y",e(D).y),d(S,"fill",o.active?e(c):"var(--sig-text-muted)"),d(S,"opacity",o.active?.9:.45),m(P,o.edge.label)}),f(E,S)};O(de,E=>{o.edge.label&&E(ue)})}t(y),b(()=>{d(k,"d",e(N)),d(k,"stroke",o.active?e(c):"var(--sig-border)"),d(k,"stroke-width",o.active?1.5:.8),d(k,"stroke-dasharray",o.edge.dashed?"6 4":"none"),d(k,"opacity",o.active?.8:.25),oe=$e(k,0,"svelte-kl8ook",null,oe,{"edge-active":o.active})}),f(u,y),ft()}var qr=ae('<g><rect rx="8" ry="8" fill-opacity="0.06" stroke-opacity="0.25" stroke-width="1" stroke-dasharray="4 3"></rect><text font-size="9" font-family="var(--font-mono)" opacity="0.6" letter-spacing="0.08em"> </text></g>'),Gr=ae('<svg viewBox="0 0 1160 650" preserveAspectRatio="xMidYMid meet" class="w-full h-full select-none" xmlns="http://www.w3.org/2000/svg" role="application" aria-label="Pipeline graph. Use mouse wheel to zoom, drag background to pan, double-click to reset."><defs><filter id="glow" x="-50%" y="-50%" width="200%" height="200%"><feGaussianBlur stdDeviation="3" result="blur"></feGaussianBlur><feMerge><feMergeNode in="blur"></feMergeNode><feMergeNode in="SourceGraphic"></feMergeNode></feMerge></filter><marker id="arrow" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="var(--sig-border-strong)"></path></marker></defs><g><!><!><!></g></svg>');function Hr(u,o){vt(o,!0);const l=Object.entries(gr),s=.7,c=2.4,N=.12;let D=U(1),L=U(0),y=U(0),k=U(!1),oe=U(0),G=U(0);function A(v){const w=_.nodes[v];return w?.lastActivity?Date.now()-new Date(w.lastActivity).getTime()<5e3:!1}function V(v){return Math.min(c,Math.max(s,v))}function _e(){h(D,1),h(L,0),h(y,0)}function de(v){v.preventDefault();const w=v.currentTarget;if(!(w instanceof SVGSVGElement))return;const H=w.getBoundingClientRect(),R=v.clientX-H.left,W=v.clientY-H.top,p=v.deltaY<0?1:-1,x=V(e(D)+p*N);if(x===e(D))return;const z=(R-e(L))/e(D),ne=(W-e(y))/e(D);h(D,x,!0),h(L,R-z*x),h(y,W-ne*x)}function ue(v){if(v.button!==0||v.target!==v.currentTarget)return;const w=v.currentTarget;w instanceof SVGSVGElement&&w.setPointerCapture(v.pointerId),h(k,!0),h(oe,v.clientX,!0),h(G,v.clientY,!0)}function E(v){if(!e(k))return;const w=v.clientX-e(oe),H=v.clientY-e(G);h(oe,v.clientX,!0),h(G,v.clientY,!0),h(L,e(L)+w),h(y,e(y)+H)}function S(v){if(!e(k))return;const w=v.currentTarget;w instanceof SVGSVGElement&&w.releasePointerCapture(v.pointerId),h(k,!1)}var P=Gr(),T=i(a(P)),Q=a(T);Ne(Q,17,()=>l,lt,(v,w)=>{var H=C(()=>Nt(e(w),2));let R=()=>e(H)[1];var W=qr(),p=a(W),x=i(p),z=a(x,!0);t(x),t(W),b(ne=>{d(p,"x",R().x),d(p,"y",R().y),d(p,"width",R().w),d(p,"height",R().h),d(p,"fill",R().color),d(p,"stroke",R().color),d(x,"x",R().x+8),d(x,"y",R().y+14),d(x,"fill",R().color),m(z,ne)},[()=>R().label.toUpperCase()]),f(v,W)});var F=i(Q);Ne(F,17,()=>pr,v=>v.from+"-"+v.to,(v,w)=>{{let H=C(()=>A(e(w).from));jr(v,{get edge(){return e(w)},get active(){return e(H)}})}});var $=i(F);Ne($,17,()=>Ue,v=>v.id,(v,w)=>{{let H=C(()=>_.selectedNodeId===e(w).id);Or(v,{get def(){return e(w)},get nodeState(){return _.nodes[e(w).id]},get selected(){return e(H)},get onselectnode(){return o.onselectnode}})}}),t(T),t(P),b(()=>d(T,"transform",`translate(${e(L)} ${e(y)}) scale(${e(D)})`)),kt("wheel",P,de),De("pointerdown",P,ue),De("pointermove",P,E),De("pointerup",P,S),kt("pointercancel",P,S),kt("pointerleave",P,S),De("dblclick",P,_e),f(u,P),ft()}Rt(["pointerdown","pointermove","pointerup","dblclick"]);var Fr=M(" <!>",1),Yr=M("<!> <!>",1),Xr=M('<div class="flex justify-between px-2"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),zr=M('<div class="text-[var(--sig-text-muted)] mt-1"> </div> <!>',1),Br=M('<div class="flex justify-between"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),Ur=M('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Queue Details</h4> <div class="space-y-1 text-[11px] font-[family-name:var(--font-mono)]"></div></section>'),Vr=M('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-1 font-[family-name:var(--font-display)]">Last Activity</h4> <span class="text-[11px] text-[var(--sig-text)] font-[family-name:var(--font-mono)]"> </span></section>'),Qr=M('<div class="flex gap-2 py-1 px-1 text-[10px] font-[family-name:var(--font-mono)] hover:bg-[var(--sig-surface-raised)] rounded"><span class="text-[var(--sig-text-muted)] shrink-0 w-[52px]"> </span> <span> </span> <span class="text-[var(--sig-text)] truncate"> </span></div>'),Wr=M('<div class="text-[10px] text-[var(--sig-text-muted)] italic py-2">No recent activity</div>'),Zr=M('<!> <div class="mt-4 space-y-4 overflow-y-auto pr-2" style="max-height: calc(100vh - 140px);"><section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Metrics</h4> <div class="grid grid-cols-3 gap-2"><div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Score</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Queue</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Errors</div> <div> </div></div></div></section> <!> <!> <section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]"> </h4> <div class="space-y-px max-h-[300px] overflow-y-auto"><!> <!></div></section></div>',1);function Jr(u,o){vt(o,!0);let l=C(()=>_.selectedNodeId),s=C(()=>e(l)?It.get(e(l))??null:null),c=C(()=>e(l)?_.nodes[e(l)]??null:null),N=C(()=>e(l)!==null);function D(A){A||Ut(null)}function L(A){try{return new Date(A).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return A}}function y(A){switch(A){case"error":return"text-[#e06c75]";case"warn":return"text-[#e5c07b]";case"debug":return"text-[#6b6b76]";default:return"text-[var(--sig-text)]"}}let k=C(()=>{if(!e(c)?.metrics)return null;const A=e(c).metrics;return A.memory||A.summary||typeof A.depth=="number"?A:null});var oe=st(),G=re(oe);Ee(G,()=>ur,(A,V)=>{V(A,{get open(){return e(N)},onOpenChange:D,children:(_e,de)=>{var ue=st(),E=re(ue);Ee(E,()=>cr,(S,P)=>{P(S,{side:"right",class:"w-[380px] bg-[var(--sig-bg)] border-l border-[var(--sig-border)]",children:(T,Q)=>{var F=st(),$=re(F);{var v=w=>{var H=Zr(),R=re(H);Ee(R,()=>vr,(I,j)=>{j(I,{children:(Z,ce)=>{var pe=Yr(),J=re(pe);Ee(J,()=>fr,(ie,ve)=>{ve(ie,{class:"flex items-center gap-2 font-[family-name:var(--font-display)] text-[var(--sig-text-bright)]",children:(ke,Me)=>{dt();var X=Fr(),se=re(X),K=i(se);{let xe=C(()=>e(c).health==="healthy"?"border-[#4a7a5e] text-[#4a7a5e]":e(c).health==="degraded"?"border-[#b8860b] text-[#b8860b]":e(c).health==="unhealthy"?"border-[#8a4a48] text-[#8a4a48]":"border-[var(--sig-border)] text-[var(--sig-text-muted)]");zt(K,{variant:"outline",get class(){return`text-[9px] px-1.5 py-0 font-[family-name:var(--font-mono)]
1
+ import{p as tr,a as vt,P as Xt,g as e,b as h,c as a,i as O,d as i,r as t,e as b,M as $e,N as d,f as m,y as De,h as f,l as ft,u as C,s as U,al as ae,A as Rt,q as re,v as Ne,w as lt,a6 as kt,am as Nt,m as st,G as Ee,n as dt,t as At,z as M,o as rr,I as ar,ab as qt,J as or}from"./cZT7cFE6.js";import{B as zt}from"./Coh8pPy2.js";import{S as nr}from"./1BXnJqFr.js";import{P as ir,a as sr,b as lr}from"./CszZ9S61.js";import{D as dr,S as cr,E as vr,F as fr,G as ur,H as mr}from"./DGR6CBfw.js";import{w as wt,s as Gt}from"./Br6JlEV2.js";const ye={harness:"#4dabf7",daemon:"#ff922b",pipeline:"#da77f2",db:"#ffd43b",search:"#da77f2",files:"#20c997",configs:"#4dabf7",llm:"#fcc419"},Oe={harness:"AI Harness",daemon:"Signet Daemon",pipeline:"Pipeline Workers",db:"memories.db",search:"Hybrid Recall",files:"~/.agents/",configs:"Harness Configs",llm:"LLM Provider"},gr={harness:{x:20,y:20,w:240,h:120,label:Oe.harness,color:ye.harness},daemon:{x:300,y:20,w:340,h:280,label:Oe.daemon,color:ye.daemon},pipeline:{x:20,y:360,w:620,h:140,label:Oe.pipeline,color:ye.pipeline},db:{x:680,y:160,w:200,h:200,label:Oe.db,color:ye.db},search:{x:920,y:160,w:200,h:140,label:Oe.search,color:ye.search},files:{x:680,y:400,w:200,h:100,label:Oe.files,color:ye.files},configs:{x:920,y:400,w:200,h:100,label:Oe.configs,color:ye.configs},llm:{x:680,y:540,w:200,h:80,label:Oe.llm,color:ye.llm}},Ue=[{id:"harness",label:"AI Client",group:"harness",x:40,y:55,w:200,h:50,logCategories:["hooks","session-tracker"],icon:"terminal",description:"Claude Code / OpenCode / OpenClaw — sends session hooks"},{id:"hooks",label:"Hook Handlers",group:"daemon",x:320,y:50,w:140,h:40,logCategories:["hooks"],icon:"webhook",description:"Session lifecycle hooks (start, submit, remember, recall, end)"},{id:"mutex",label:"Session Mutex",group:"daemon",x:320,y:110,w:140,h:40,logCategories:["session-tracker"],icon:"lock",description:"Plugin vs legacy runtime path enforcement"},{id:"queue",label:"Job Queues",group:"daemon",x:320,y:170,w:140,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"layers",description:"memory_jobs + summary_jobs durable queues"},{id:"watcher",label:"File Watcher",group:"daemon",x:490,y:110,w:130,h:40,logCategories:["watcher"],icon:"eye",description:"Chokidar file change detection on ~/.agents/"},{id:"sync",label:"Harness Sync",group:"daemon",x:490,y:170,w:130,h:40,logCategories:["sync"],diagnosticDomain:"connector",icon:"refresh-cw",description:"Generate CLAUDE.md, AGENTS.md from identity files"},{id:"extraction",label:"Extraction",group:"pipeline",x:40,y:395,w:110,h:40,logCategories:["pipeline"],diagnosticDomain:"queue",icon:"cpu",description:"LLM extracts facts + entities (2s poll)"},{id:"summary",label:"Summary",group:"pipeline",x:165,y:395,w:100,h:40,logCategories:["summary-worker"],icon:"file-text",description:"Session-end transcript summarizer (5s poll)"},{id:"document",label:"Document",group:"pipeline",x:280,y:395,w:100,h:40,logCategories:["document-worker"],icon:"file-plus",description:"Chunk + embed documents (10s poll)"},{id:"retention",label:"Retention",group:"pipeline",x:395,y:395,w:100,h:40,logCategories:["retention"],diagnosticDomain:"mutation",icon:"trash-2",description:"Purge expired data (6h interval)"},{id:"maintenance",label:"Maintenance",group:"pipeline",x:510,y:395,w:110,h:40,logCategories:["maintenance"],icon:"wrench",description:"Self-repair + diagnostics (30min interval)"},{id:"database",label:"SQLite",group:"db",x:710,y:220,w:140,h:80,logCategories:["memory","embedding"],diagnosticDomain:"storage",icon:"database",description:"memories, embeddings, entities, relations, history"},{id:"search",label:"Hybrid Recall",group:"search",x:940,y:200,w:160,h:60,logCategories:["memory"],diagnosticDomain:"index",icon:"search",description:"BM25 + vector similarity + graph boost"},{id:"files",label:"Identity Files",group:"files",x:710,y:430,w:140,h:40,logCategories:["sync"],icon:"folder",description:"AGENTS.md, SOUL.md, IDENTITY.md, USER.md, MEMORY.md"},{id:"configs",label:"CLAUDE.md",group:"configs",x:950,y:430,w:140,h:40,logCategories:["harness"],icon:"file-code",description:"Generated harness config files"},{id:"llm",label:"LLM Provider",group:"llm",x:710,y:560,w:140,h:40,logCategories:["llm"],diagnosticDomain:"provider",icon:"brain",description:"Ollama qwen3:4b (or configured provider)"}],It=new Map(Ue.map(u=>[u.id,u])),pr=[{from:"harness",to:"hooks",label:"POST"},{from:"hooks",to:"mutex"},{from:"hooks",to:"queue",label:"enqueue"},{from:"queue",to:"extraction"},{from:"queue",to:"summary"},{from:"queue",to:"document"},{from:"extraction",to:"database",label:"write"},{from:"summary",to:"database"},{from:"document",to:"database"},{from:"retention",to:"database"},{from:"maintenance",to:"database"},{from:"extraction",to:"llm"},{from:"summary",to:"llm"},{from:"database",to:"search"},{from:"search",to:"harness",dashed:!0,label:"recall"},{from:"watcher",to:"sync"},{from:"files",to:"watcher"},{from:"sync",to:"configs"},{from:"files",to:"sync"},{from:"summary",to:"files",label:".md"},{from:"configs",to:"harness",dashed:!0,label:"next session"}];function xr(){return{health:"unknown",score:0,lastActivity:null,pulseCount:0,queueDepth:0,processingRate:0,errorCount:0,recentLogs:[],metrics:{}}}const $t=new Map;for(const u of Ue)for(const o of u.logCategories){const l=$t.get(o);l?l.push(u.id):$t.set(o,[u.id])}const Ht=20;function hr(){const u={};for(const o of Ue)u[o.id]=xr();return u}const Ft=50,_=tr({nodes:hr(),mode:"unknown",connected:!1,lastPoll:null,selectedNodeId:null,feed:[]});let fe=null;function Bt(){fe&&(fe.close(),fe=null);const u="";fe=new EventSource(`${u}/api/logs/stream`),fe.onopen=()=>{_.connected=!0},fe.onmessage=o=>{try{const l=JSON.parse(o.data);if(l.type==="connected"){_.connected=!0;return}const s=[..._.feed,l];_.feed=s.length>Ft?s.slice(-Ft):s;const c=$t.get(l.category);if(!c)return;for(const N of c){const D=_.nodes[N];if(!D)continue;D.pulseCount+=1,D.lastActivity=l.timestamp;const L=[...D.recentLogs,l];D.recentLogs=L.length>Ht?L.slice(-Ht):L,l.level==="error"&&(D.errorCount+=1)}}catch{}},fe.onerror=()=>{_.connected=!1,fe?.close(),fe=null,setTimeout(()=>{fe||Bt()},3e3)}}function br(){_.connected=!1,fe?.close(),fe=null}let ct=null;function yr(u){return u>=.8?"healthy":u>=.5?"degraded":u>0?"unhealthy":"unknown"}function _r(u){for(const o of Ue){if(!o.diagnosticDomain)continue;const l=u[o.diagnosticDomain];if(!l)continue;const s=_.nodes[o.id];if(!s)continue;const c=typeof l.score=="number"?l.score:0;s.score=c,s.health=yr(c),s.metrics=l}}function wr(u){const o=_.nodes.queue;if(o){const c=u.memory,N=u.summary;o.queueDepth=c.pending+c.leased+N.pending+N.leased,o.metrics={memory:c,summary:N}}const l=_.nodes.extraction;l&&(l.queueDepth=u.memory.pending);const s=_.nodes.summary;s&&(s.queueDepth=u.summary.pending)}async function Yt(){try{const u=await dr();if(!u)return;if(_.mode=u.mode,_.lastPoll=new Date().toISOString(),u.diagnostics&&_r(u.diagnostics),u.queues&&wr(u.queues),u.workers)for(const[o,l]of Object.entries(u.workers)){const s=_.nodes[o];s&&l.running&&s.health==="unknown"&&(s.health="healthy",s.score=1)}if(u.errorSummary)for(const[o,l]of Object.entries(u.errorSummary)){const s=o==="extraction"||o==="decision"?"extraction":o==="embedding"||o==="mutation"?"database":o==="connector"?"sync":null;if(s){const c=_.nodes[s];c&&(c.errorCount=l)}}}catch{}}function kr(u=5e3){ct||(Yt(),ct=setInterval(Yt,u))}function Sr(){ct&&(clearInterval(ct),ct=null)}function Ut(u){_.selectedNodeId=u}var Cr=ae('<rect class="glow-bg svelte-1tib701" x="-6" y="-6" rx="10" ry="10" opacity="0.12"></rect>'),Pr=ae('<rect class="pulse-ring svelte-1tib701" x="-4" y="-4" rx="10" ry="10" fill="none"></rect>'),Er=ae('<rect class="flash-overlay svelte-1tib701" rx="6" ry="6"></rect>'),Dr=ae('<animate attributeName="opacity" values="1;0.4;1" dur="1.5s" repeatCount="indefinite" class="svelte-1tib701"></animate>'),Mr=ae('<g class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),Lr=ae('<g transform="translate(8, -6)" class="svelte-1tib701"><rect x="-12" y="-7" width="24" height="14" rx="7" fill="#ef4444" opacity="0.95" class="svelte-1tib701"></rect><text x="0" y="1" text-anchor="middle" dominant-baseline="middle" fill="#fff" font-size="9" font-weight="600" font-family="var(--font-mono)" class="svelte-1tib701"> </text></g>'),Tr=ae('<g style="cursor: pointer"><!><!><rect class="node-rect svelte-1tib701" rx="6" ry="6"></rect><!><circle cx="10" class="svelte-1tib701"><!></circle><text text-anchor="middle" dominant-baseline="middle" font-size="11" font-family="var(--font-mono)" class="svelte-1tib701"> </text><!><!></g>');function Or(u,o){vt(o,!0);let l=C(()=>ye[o.def.group]);const s={healthy:"#4ade80",degraded:"#fbbf24",unhealthy:"#f87171",unknown:"#6b6b76"};let c=C(()=>s[o.nodeState.health]),N=C(()=>o.nodeState.health==="unknown"?e(l)+"88":e(c)),D=U(0),L=U(!1),y=U(!1),k=null;Xt(()=>{if(o.nodeState.pulseCount>e(D)){h(D,o.nodeState.pulseCount,!0),h(L,!0);const p=setTimeout(()=>{h(L,!1)},1200);return h(y,!0),k&&clearTimeout(k),k=setTimeout(()=>{h(y,!1)},3e3),()=>{clearTimeout(p),k&&clearTimeout(k)}}});function oe(){o.onselectnode(o.def.id)}var G=Tr();let A;var V=a(G);{var _e=p=>{var x=Cr();b(()=>{d(x,"width",o.def.w+12),d(x,"height",o.def.h+12),d(x,"fill",e(l))}),f(p,x)};O(V,p=>{e(y)&&p(_e)})}var de=i(V);{var ue=p=>{var x=Pr();b(()=>{d(x,"width",o.def.w+8),d(x,"height",o.def.h+8),d(x,"stroke",e(l))}),f(p,x)};O(de,p=>{e(L)&&p(ue)})}var E=i(de),S=i(E);{var P=p=>{var x=Er();b(()=>{d(x,"width",o.def.w),d(x,"height",o.def.h),d(x,"fill",e(l))}),f(p,x)};O(S,p=>{e(L)&&p(P)})}var T=i(S),Q=a(T);{var F=p=>{var x=Dr();f(p,x)};O(Q,p=>{e(y)&&p(F)})}t(T);var $=i(T),v=a($,!0);t($);var w=i($);{var H=p=>{var x=Mr(),z=a(x),ne=i(z),Re=a(ne,!0);t(ne),t(x),b(()=>{d(x,"transform",`translate(${o.def.w-8}, -6)`),d(z,"fill",e(l)),m(Re,o.nodeState.queueDepth)}),f(p,x)};O(w,p=>{o.nodeState.queueDepth>0&&p(H)})}var R=i(w);{var W=p=>{var x=Lr(),z=i(a(x)),ne=a(z,!0);t(z),t(x),b(()=>m(ne,o.nodeState.errorCount)),f(p,x)};O(R,p=>{o.nodeState.errorCount>0&&p(W)})}t(G),b(()=>{A=$e(G,0,"pipeline-node svelte-1tib701",null,A,{"pipeline-node--selected":o.selected,"pipeline-node--active":e(y)}),d(G,"transform",`translate(${o.def.x??""}, ${o.def.y??""})`),d(E,"width",o.def.w),d(E,"height",o.def.h),d(E,"fill",e(y)?e(l)+"18":"var(--sig-surface-raised)"),d(E,"stroke",e(y)?e(l):e(N)),d(E,"stroke-width",o.selected?2.5:e(y)?1.5:1),d(T,"cy",o.def.h/2),d(T,"r",e(y)?4:3),d(T,"fill",e(y)?e(l):e(c)),d(T,"opacity",e(y)?1:.7),d($,"x",o.def.w/2),d($,"y",o.def.h/2+1),d($,"fill",e(y)?e(l):"var(--sig-text-bright)"),d($,"font-weight",e(y)?"600":"400"),m(v,o.def.label)}),De("click",G,oe),f(u,G),ft()}Rt(["click"]);var Nr=ae('<path fill="none" stroke-width="4" opacity="0.15" class="edge-glow svelte-kl8ook"></path>'),Ar=ae('<circle r="2" opacity="0.6" class="svelte-kl8ook"><animateMotion repeatCount="indefinite" begin="0.5s" class="svelte-kl8ook"></animateMotion></circle>'),Ir=ae('<circle class="svelte-kl8ook"><animateMotion repeatCount="indefinite" class="svelte-kl8ook"></animateMotion></circle><!>',1),$r=ae('<text text-anchor="middle" font-size="9" font-family="var(--font-mono)" class="svelte-kl8ook"> </text>'),Rr=ae('<g class="pipeline-edge svelte-kl8ook"><path fill="none"></path><!><!><!></g>');function jr(u,o){vt(o,!0);let l=C(()=>It.get(o.edge.from)),s=C(()=>It.get(o.edge.to)),c=C(()=>e(l)?ye[e(l).group]:"#6b6b76"),N=C(()=>{if(!e(l)||!e(s))return"";const E=e(l).x+e(l).w/2,S=e(l).y+e(l).h/2,P=e(s).x+e(s).w/2,T=e(s).y+e(s).h/2,Q=(E+P)/2,F=(S+T)/2,$=Math.abs(P-E),v=Math.abs(T-S);return $>v?`M ${E} ${S} Q ${Q} ${S}, ${Q} ${F} Q ${Q} ${T}, ${P} ${T}`:`M ${E} ${S} Q ${E} ${F}, ${Q} ${F} Q ${P} ${F}, ${P} ${T}`}),D=C(()=>!e(l)||!e(s)?{x:0,y:0}:{x:(e(l).x+e(l).w/2+e(s).x+e(s).w/2)/2,y:(e(l).y+e(l).h/2+e(s).y+e(s).h/2)/2-8}),L=C(()=>o.active?"1s":"3s");var y=Rr(),k=a(y);let oe;var G=i(k);{var A=E=>{var S=Nr();b(()=>{d(S,"d",e(N)),d(S,"stroke",e(c))}),f(E,S)};O(G,E=>{o.active&&!o.edge.dashed&&E(A)})}var V=i(G);{var _e=E=>{var S=Ir(),P=re(S),T=a(P);t(P);var Q=i(P);{var F=$=>{var v=Ar(),w=a(v);t(v),b(()=>{d(v,"fill",e(c)),d(w,"dur",e(L)),d(w,"path",e(N))}),f($,v)};O(Q,$=>{o.active&&$(F)})}b(()=>{d(P,"r",o.active?3.5:2),d(P,"fill",o.active?e(c):"var(--sig-border)"),d(P,"opacity",o.active?1:.3),d(T,"dur",e(L)),d(T,"path",e(N))}),f(E,S)};O(V,E=>{o.edge.dashed||E(_e)})}var de=i(V);{var ue=E=>{var S=$r(),P=a(S,!0);t(S),b(()=>{d(S,"x",e(D).x),d(S,"y",e(D).y),d(S,"fill",o.active?e(c):"var(--sig-text-muted)"),d(S,"opacity",o.active?.9:.45),m(P,o.edge.label)}),f(E,S)};O(de,E=>{o.edge.label&&E(ue)})}t(y),b(()=>{d(k,"d",e(N)),d(k,"stroke",o.active?e(c):"var(--sig-border)"),d(k,"stroke-width",o.active?1.5:.8),d(k,"stroke-dasharray",o.edge.dashed?"6 4":"none"),d(k,"opacity",o.active?.8:.25),oe=$e(k,0,"svelte-kl8ook",null,oe,{"edge-active":o.active})}),f(u,y),ft()}var qr=ae('<g><rect rx="8" ry="8" fill-opacity="0.06" stroke-opacity="0.25" stroke-width="1" stroke-dasharray="4 3"></rect><text font-size="9" font-family="var(--font-mono)" opacity="0.6" letter-spacing="0.08em"> </text></g>'),Gr=ae('<svg viewBox="0 0 1160 650" preserveAspectRatio="xMidYMid meet" class="w-full h-full select-none" xmlns="http://www.w3.org/2000/svg" role="application" aria-label="Pipeline graph. Use mouse wheel to zoom, drag background to pan, double-click to reset."><defs><filter id="glow" x="-50%" y="-50%" width="200%" height="200%"><feGaussianBlur stdDeviation="3" result="blur"></feGaussianBlur><feMerge><feMergeNode in="blur"></feMergeNode><feMergeNode in="SourceGraphic"></feMergeNode></feMerge></filter><marker id="arrow" viewBox="0 0 10 10" refX="10" refY="5" markerWidth="6" markerHeight="6" orient="auto-start-reverse"><path d="M 0 0 L 10 5 L 0 10 z" fill="var(--sig-border-strong)"></path></marker></defs><g><!><!><!></g></svg>');function Hr(u,o){vt(o,!0);const l=Object.entries(gr),s=.7,c=2.4,N=.12;let D=U(1),L=U(0),y=U(0),k=U(!1),oe=U(0),G=U(0);function A(v){const w=_.nodes[v];return w?.lastActivity?Date.now()-new Date(w.lastActivity).getTime()<5e3:!1}function V(v){return Math.min(c,Math.max(s,v))}function _e(){h(D,1),h(L,0),h(y,0)}function de(v){v.preventDefault();const w=v.currentTarget;if(!(w instanceof SVGSVGElement))return;const H=w.getBoundingClientRect(),R=v.clientX-H.left,W=v.clientY-H.top,p=v.deltaY<0?1:-1,x=V(e(D)+p*N);if(x===e(D))return;const z=(R-e(L))/e(D),ne=(W-e(y))/e(D);h(D,x,!0),h(L,R-z*x),h(y,W-ne*x)}function ue(v){if(v.button!==0||v.target!==v.currentTarget)return;const w=v.currentTarget;w instanceof SVGSVGElement&&w.setPointerCapture(v.pointerId),h(k,!0),h(oe,v.clientX,!0),h(G,v.clientY,!0)}function E(v){if(!e(k))return;const w=v.clientX-e(oe),H=v.clientY-e(G);h(oe,v.clientX,!0),h(G,v.clientY,!0),h(L,e(L)+w),h(y,e(y)+H)}function S(v){if(!e(k))return;const w=v.currentTarget;w instanceof SVGSVGElement&&w.releasePointerCapture(v.pointerId),h(k,!1)}var P=Gr(),T=i(a(P)),Q=a(T);Ne(Q,17,()=>l,lt,(v,w)=>{var H=C(()=>Nt(e(w),2));let R=()=>e(H)[1];var W=qr(),p=a(W),x=i(p),z=a(x,!0);t(x),t(W),b(ne=>{d(p,"x",R().x),d(p,"y",R().y),d(p,"width",R().w),d(p,"height",R().h),d(p,"fill",R().color),d(p,"stroke",R().color),d(x,"x",R().x+8),d(x,"y",R().y+14),d(x,"fill",R().color),m(z,ne)},[()=>R().label.toUpperCase()]),f(v,W)});var F=i(Q);Ne(F,17,()=>pr,v=>v.from+"-"+v.to,(v,w)=>{{let H=C(()=>A(e(w).from));jr(v,{get edge(){return e(w)},get active(){return e(H)}})}});var $=i(F);Ne($,17,()=>Ue,v=>v.id,(v,w)=>{{let H=C(()=>_.selectedNodeId===e(w).id);Or(v,{get def(){return e(w)},get nodeState(){return _.nodes[e(w).id]},get selected(){return e(H)},get onselectnode(){return o.onselectnode}})}}),t(T),t(P),b(()=>d(T,"transform",`translate(${e(L)} ${e(y)}) scale(${e(D)})`)),kt("wheel",P,de),De("pointerdown",P,ue),De("pointermove",P,E),De("pointerup",P,S),kt("pointercancel",P,S),kt("pointerleave",P,S),De("dblclick",P,_e),f(u,P),ft()}Rt(["pointerdown","pointermove","pointerup","dblclick"]);var Fr=M(" <!>",1),Yr=M("<!> <!>",1),Xr=M('<div class="flex justify-between px-2"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),zr=M('<div class="text-[var(--sig-text-muted)] mt-1"> </div> <!>',1),Br=M('<div class="flex justify-between"><span class="text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-bright)]"> </span></div>'),Ur=M('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Queue Details</h4> <div class="space-y-1 text-[11px] font-[family-name:var(--font-mono)]"></div></section>'),Vr=M('<section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-1 font-[family-name:var(--font-display)]">Last Activity</h4> <span class="text-[11px] text-[var(--sig-text)] font-[family-name:var(--font-mono)]"> </span></section>'),Qr=M('<div class="flex gap-2 py-1 px-1 text-[10px] font-[family-name:var(--font-mono)] hover:bg-[var(--sig-surface-raised)] rounded"><span class="text-[var(--sig-text-muted)] shrink-0 w-[52px]"> </span> <span> </span> <span class="text-[var(--sig-text)] truncate"> </span></div>'),Wr=M('<div class="text-[10px] text-[var(--sig-text-muted)] italic py-2">No recent activity</div>'),Zr=M('<!> <div class="mt-4 space-y-4 overflow-y-auto pr-2" style="max-height: calc(100vh - 140px);"><section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]">Metrics</h4> <div class="grid grid-cols-3 gap-2"><div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Score</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Queue</div> <div class="text-[15px] text-[var(--sig-text-bright)] font-[family-name:var(--font-mono)]"> </div></div> <div class="p-2 rounded bg-[var(--sig-surface)] border border-[var(--sig-border)]"><div class="text-[9px] text-[var(--sig-text-muted)] uppercase">Errors</div> <div> </div></div></div></section> <!> <!> <section><h4 class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] mb-2 font-[family-name:var(--font-display)]"> </h4> <div class="space-y-px max-h-[300px] overflow-y-auto"><!> <!></div></section></div>',1);function Jr(u,o){vt(o,!0);let l=C(()=>_.selectedNodeId),s=C(()=>e(l)?It.get(e(l))??null:null),c=C(()=>e(l)?_.nodes[e(l)]??null:null),N=C(()=>e(l)!==null);function D(A){A||Ut(null)}function L(A){try{return new Date(A).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return A}}function y(A){switch(A){case"error":return"text-[#e06c75]";case"warn":return"text-[#e5c07b]";case"debug":return"text-[#6b6b76]";default:return"text-[var(--sig-text)]"}}let k=C(()=>{if(!e(c)?.metrics)return null;const A=e(c).metrics;return A.memory||A.summary||typeof A.depth=="number"?A:null});var oe=st(),G=re(oe);Ee(G,()=>ur,(A,V)=>{V(A,{get open(){return e(N)},onOpenChange:D,children:(_e,de)=>{var ue=st(),E=re(ue);Ee(E,()=>cr,(S,P)=>{P(S,{side:"right",class:"w-[380px] bg-[var(--sig-bg)] border-l border-[var(--sig-border)]",children:(T,Q)=>{var F=st(),$=re(F);{var v=w=>{var H=Zr(),R=re(H);Ee(R,()=>vr,(I,j)=>{j(I,{children:(Z,ce)=>{var pe=Yr(),J=re(pe);Ee(J,()=>fr,(ie,ve)=>{ve(ie,{class:"flex items-center gap-2 font-[family-name:var(--font-display)] text-[var(--sig-text-bright)]",children:(ke,Me)=>{dt();var X=Fr(),se=re(X),K=i(se);{let xe=C(()=>e(c).health==="healthy"?"border-[#4a7a5e] text-[#4a7a5e]":e(c).health==="degraded"?"border-[#b8860b] text-[#b8860b]":e(c).health==="unhealthy"?"border-[#8a4a48] text-[#8a4a48]":"border-[var(--sig-border)] text-[var(--sig-text-muted)]");zt(K,{variant:"outline",get class(){return`text-[9px] px-1.5 py-0 font-[family-name:var(--font-mono)]
2
2
  ${e(xe)??""}`},children:(Se,Fe)=>{dt();var Ce=At();b(()=>m(Ce,e(c).health)),f(Se,Ce)},$$slots:{default:!0}})}b(()=>m(se,`${e(s).label??""} `)),f(ke,X)},$$slots:{default:!0}})});var we=i(J,2);{var me=ie=>{var ve=st(),ke=re(ve);Ee(ke,()=>mr,(Me,X)=>{X(Me,{class:"text-[11px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)]",children:(se,K)=>{dt();var xe=At();b(()=>m(xe,e(s).description)),f(se,xe)},$$slots:{default:!0}})}),f(ie,ve)};O(we,ie=>{e(s).description&&ie(me)})}f(Z,pe)},$$slots:{default:!0}})});var W=i(R,2),p=a(W),x=i(a(p),2),z=a(x),ne=i(a(z),2),Re=a(ne,!0);t(ne),t(z);var Ae=i(z,2),je=i(a(Ae),2),Ve=a(je,!0);t(je),t(Ae);var qe=i(Ae,2),Ge=i(a(qe),2);let Qe;var ut=a(Ge,!0);t(Ge),t(qe),t(x),t(p);var mt=i(p,2);{var gt=I=>{var j=Ur(),Z=i(a(j),2);Ne(Z,21,()=>Object.entries(e(k)),lt,(ce,pe)=>{var J=C(()=>Nt(e(pe),2));let we=()=>e(J)[0],me=()=>e(J)[1];var ie=st(),ve=re(ie);{var ke=X=>{var se=zr(),K=re(se),xe=a(K,!0);t(K);var Se=i(K,2);Ne(Se,17,()=>Object.entries(me()),lt,(Fe,Ce)=>{var et=C(()=>Nt(e(Ce),2));let Et=()=>e(et)[0],Dt=()=>e(et)[1];var tt=Xr(),r=a(tt),n=a(r,!0);t(r);var g=i(r,2),q=a(g,!0);t(g),t(tt),b(()=>{m(n,Et()),m(q,Dt())}),f(Fe,tt)}),b(()=>m(xe,we())),f(X,se)},Me=X=>{var se=Br(),K=a(se),xe=a(K,!0);t(K);var Se=i(K,2),Fe=a(Se,!0);t(Se),t(se),b(()=>{m(xe,we()),m(Fe,me())}),f(X,se)};O(ve,X=>{typeof me()=="object"&&me()!==null?X(ke):X(Me,!1)})}f(ce,ie)}),t(Z),t(j),f(I,j)};O(mt,I=>{e(k)&&I(gt)})}var pt=i(mt,2);{var St=I=>{var j=Vr(),Z=i(a(j),2),ce=a(Z,!0);t(Z),t(j),b(pe=>m(ce,pe),[()=>L(e(c).lastActivity)]),f(I,j)};O(pt,I=>{e(c).lastActivity&&I(St)})}var We=i(pt,2),Ze=a(We),Ct=a(Ze);t(Ze);var Je=i(Ze,2),He=a(Je);Ne(He,17,()=>e(c).recentLogs,lt,(I,j)=>{var Z=Qr(),ce=a(Z),pe=a(ce,!0);t(ce);var J=i(ce,2),we=a(J,!0);t(J);var me=i(J,2),ie=a(me,!0);t(me),t(Z),b((ve,ke)=>{m(pe,ve),$e(J,1,`${ke??""} shrink-0 w-[34px] uppercase`),m(we,e(j).level),m(ie,e(j).message)},[()=>L(e(j).timestamp),()=>y(e(j).level)]),f(I,Z)});var Pt=i(He,2);{var Ke=I=>{var j=Wr();f(I,j)};O(Pt,I=>{e(c).recentLogs.length===0&&I(Ke)})}t(Je),t(We),t(W),b(I=>{m(Re,I),m(Ve,e(c).queueDepth),Qe=$e(Ge,1,"text-[15px] font-[family-name:var(--font-mono)]",null,Qe,{"text-[#8a4a48]":e(c).errorCount>0,"text-[var(--sig-text-bright)]":e(c).errorCount===0}),m(ut,e(c).errorCount),m(Ct,`Recent Logs (${e(c).recentLogs.length??""})`)},[()=>e(c).score>0?(e(c).score*100).toFixed(0)+"%":"--"]),f(w,H)};O($,w=>{e(s)&&e(c)&&w(v)})}f(T,F)},$$slots:{default:!0}})}),f(_e,ue)},$$slots:{default:!0}})}),f(u,oe),ft()}var Kr=M('<span class="text-[10px] text-[#4ade80] font-[family-name:var(--font-mono)]"> </span>'),ea=M('<span class="text-[9px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)]"> </span>'),ta=M("<button>Feed actions</button>"),ra=M('<div class="flex flex-col gap-1"><button type="button" class="w-full text-left px-2 py-1 text-[10px] uppercase tracking-[0.08em] font-[family-name:var(--font-mono)] border border-[var(--sig-border)] text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]"> </button> <button type="button" class="w-full text-left px-2 py-1 text-[10px] uppercase tracking-[0.08em] font-[family-name:var(--font-mono)] border border-[var(--sig-border)] text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]"> </button></div>'),aa=M("<!> <!>",1),oa=M('<div class="flex items-start justify-between gap-2 border-b border-[var(--sig-border)]/30 pb-[1px]"><span class="text-[var(--sig-text-muted)] uppercase tracking-[0.05em]"> </span> <span class="text-[var(--sig-text)] break-all text-right"> </span></div>'),na=M('<div class="mt-1 pl-[56px] text-[8px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)] uppercase tracking-[0.05em]"> </div>'),ia=M('<div class="mt-1 pl-[56px] text-[9px] text-[#f87171] font-[family-name:var(--font-mono)] whitespace-pre-wrap break-words"> </div>'),sa=M('<details class="mt-1 pl-[56px]"><summary class="cursor-pointer text-[8px] text-[var(--sig-text-muted)] uppercase tracking-[0.05em] font-[family-name:var(--font-mono)]">Raw payload</summary> <pre class="mt-1 p-2 border border-[var(--sig-border)] bg-[var(--sig-surface)] text-[8px] text-[var(--sig-text)] whitespace-pre-wrap break-words font-[family-name:var(--font-mono)]"> </pre></details>'),la=M('<div class="mt-1 pl-[56px] inline-flex items-center gap-2 text-[8px] uppercase tracking-[0.06em] font-[family-name:var(--font-mono)]"><span class="px-1 py-[1px] border border-[var(--sig-border)] text-[var(--sig-text-muted)]"> </span> <span class="text-[var(--sig-text-muted)]"> </span></div> <div class="text-[10px] text-[var(--sig-text)] font-[family-name:var(--font-mono)] mt-0.5 pl-[56px] whitespace-pre-wrap break-words"> </div> <div class="mt-1 pl-[56px] grid grid-cols-1 md:grid-cols-2 gap-x-3 gap-y-1 text-[8px] font-[family-name:var(--font-mono)]"></div> <!> <!> <!>',1),da=M('<details class="mt-0.5 pl-[56px] group"><summary class="list-none cursor-pointer text-[10px] text-[var(--sig-text)] font-[family-name:var(--font-mono)] line-clamp-2 break-words [&amp;::-webkit-details-marker]:hidden"> </summary> <div class="mt-1 text-[10px] text-[var(--sig-text)] font-[family-name:var(--font-mono)] whitespace-pre-wrap break-words"> </div></details>'),ca=M('<div class="text-[10px] text-[var(--sig-text)] font-[family-name:var(--font-mono)] mt-0.5 pl-[56px] whitespace-pre-wrap break-words"> </div>'),va=M('<span class="text-[8px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)] pl-[56px]"> </span>'),fa=M("<!> <!>",1),ua=M('<div class="feed-entry px-2 py-1.5 rounded hover:bg-[var(--sig-surface-raised)] transition-colors svelte-1kgvdra"><div class="flex items-center gap-1.5"><span class="text-[9px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)] shrink-0 w-[48px]"> </span> <span class="inline-block w-1.5 h-1.5 rounded-full shrink-0"></span> <span class="text-[9px] font-[family-name:var(--font-mono)] shrink-0"> </span></div> <!></div>'),ma=M('<div class="flex items-center justify-center h-full text-[11px] text-[var(--sig-text-muted)] italic">Waiting for events...</div>'),ga=M('<div class="flex flex-col h-full overflow-hidden"><div class="flex items-center justify-between px-4 py-2 border-b border-[var(--sig-border)] shrink-0"><div class="flex items-center gap-3"><div class="flex items-center gap-1.5"><span></span> <span class="text-[10px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)]"> </span></div> <!> <!></div> <div class="flex items-center gap-3"><!></div></div> <div class="flex flex-1 min-h-0 flex-col lg:flex-row"><div class="flex-1 min-w-0 min-h-[46vh] lg:min-h-0 p-4 overflow-auto"><!></div> <div><div class="px-3 py-2 border-b border-[var(--sig-border)] space-y-2"><div class="flex items-center justify-between gap-2"><span class="text-[10px] uppercase tracking-[0.1em] text-[var(--sig-text-muted)] font-[family-name:var(--font-display)]">Live Feed</span> <div class="flex items-center gap-2"><span class="text-[9px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)]"> </span> <span> </span></div></div> <div class="flex items-center justify-between gap-2 min-w-0"><label class="inline-flex items-center gap-1.5 text-[10px] text-[var(--sig-text)] font-[family-name:var(--font-mono)] cursor-pointer min-w-0"><!> <span>Auto-scroll</span></label> <div class="hidden lg:flex items-center gap-1.5 shrink-0"><button type="button" class="px-2 py-[3px] text-[9px] uppercase tracking-[0.08em] font-[family-name:var(--font-mono)] border border-[var(--sig-border)] text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]"> </button> <button type="button" class="px-2 py-[3px] text-[9px] uppercase tracking-[0.08em] font-[family-name:var(--font-mono)] border border-[var(--sig-border)] text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]"> </button></div> <div class="lg:hidden shrink-0"><!></div></div></div> <div class="flex-1 overflow-y-auto px-1 py-1"><!> <!></div></div></div></div> <!>',1);function wa(u,o){vt(o,!0);function l(r){Ut(_.selectedNodeId===r?null:r)}let s=U(null),c=U(!0),N=U(!1),D=U(!1);const L=24;let y=U(!0),k=U(!0),oe=C(()=>e(N)?"lg:w-[420px]":"lg:w-[320px]"),G=C(()=>e(y)?"Latest":"Oldest"),A=C(()=>e(N)?"Expanded":"Compact");function V(r="smooth"){e(s)&&e(s).scrollTo({top:e(s).scrollHeight,behavior:r})}function _e(){return e(s)?e(s).scrollHeight-e(s).scrollTop-e(s).clientHeight<=L:!0}function de(){if(!(!e(s)||(h(k,_e(),!0),!(e(s).scrollHeight-e(s).clientHeight>L)))){if(e(k)){h(y,!0);return}e(s).scrollTop<=L&&h(y,!1)}}function ue(r){e(s)&&(e(y)?(h(c,!1),h(k,!1),h(y,!1),e(s).scrollTo({top:0,behavior:"smooth"})):(h(c,!0),h(k,!0),h(y,!0),V("auto")),r?.currentTarget instanceof HTMLElement&&r.currentTarget.blur(),h(D,!1))}function E(r){h(c,r,!0),wt.pipeline.autoScroll=r,Gt(),r&&(h(k,!0),h(y,!0),requestAnimationFrame(()=>{V("auto"),de()}))}function S(r){h(N,!e(N)),wt.pipeline.feedExpanded=e(N),Gt(),r?.currentTarget instanceof HTMLElement&&r.currentTarget.blur(),h(D,!1)}function P(r){if(!r)return"";const n=Object.keys(r);if(n.length===0)return"";const g=n.slice(0,4).join(", ");return n.length>4?`${g} +${n.length-4}`:g}Xt(()=>{if(_.feed.length,de(),e(c)&&e(s)){if(!e(k))return;requestAnimationFrame(()=>{V("auto"),h(k,!0),h(y,!0),de()})}}),rr(()=>(Bt(),kr(),h(c,wt.pipeline.autoScroll,!0),h(N,wt.pipeline.feedExpanded,!0),()=>{br(),Sr()}));const T={"controlled-write":"border-[#4ade80] text-[#4ade80]",shadow:"border-[#fbbf24] text-[#fbbf24]",frozen:"border-[#94a3b8] text-[#94a3b8]",disabled:"border-[#f87171] text-[#f87171]",unknown:"border-[var(--sig-border)] text-[var(--sig-text-muted)]"};let Q=C(()=>T[_.mode]??T.unknown),F=C(()=>Ue.filter(r=>{const n=_.nodes[r.id];return n?.lastActivity?Date.now()-new Date(n.lastActivity).getTime()<5e3:!1}).length);function $(r){try{return new Date(r).toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return r}}const v={error:"#f87171",warn:"#fbbf24",info:"#4ade80",debug:"#6b6b76"},w={hooks:"#4dabf7","session-tracker":"#4dabf7",pipeline:"#da77f2","summary-worker":"#da77f2","document-worker":"#da77f2",retention:"#da77f2",maintenance:"#da77f2",memory:"#ffd43b",embedding:"#ffd43b",sync:"#ff922b",watcher:"#ff922b",harness:"#4dabf7",llm:"#fcc419"},H=["jobId","memoryId","sessionKey","project","attempt","maxRetries","mode","provider","model","facts","entities","proposals","added","updated","deleted","deduped","skippedLowConfidence","blockedDestructive","runId","taskId","path","port","pid","error"];function R(r){const n=Date.now()-new Date(r).getTime();if(!Number.isFinite(n)||n<0)return"just now";const g=Math.floor(n/1e3);if(g<60)return`${g}s ago`;const q=Math.floor(g/60);if(q<60)return`${q}m ago`;const Y=Math.floor(q/60);return Y<24?`${Y}h ago`:`${Math.floor(Y/24)}d ago`}function W(r){return r.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").replace(/^./,n=>n.toUpperCase())}function p(r){return r===null?"null":r===void 0?"undefined":typeof r=="string"?r:typeof r=="number"||typeof r=="boolean"?String(r):Array.isArray(r)?`[${r.length} items]`:typeof r=="object"?"{object}":String(r)}function x(r){const n=r.message.toLowerCase(),g=r.category.replace(/-/g," ");if(n.includes("job failed")){const q=r.data?.attempt;return typeof q=="number"?`${g} failed (attempt ${q})`:`${g} failed`}return n.includes("completed")?`${g} completed`:n.includes("started")||n.includes("starting")?`${g} started`:n.includes("enqueued")?`${g} queued`:n.includes("failed")?`${g} warning`:n.includes("file changed")?"watcher detected file change":`${g} event`}function z(r){const n=[{label:"Level",value:r.level},{label:"Category",value:r.category}];r.duration!==void 0&&n.push({label:"Duration",value:`${r.duration} ms`});const g=r.data;if(!g)return n;const q=new Set;for(const Y of H)Y in g&&(n.push({label:W(Y),value:p(g[Y])}),q.add(Y));for(const Y of Object.keys(g).sort())q.has(Y)||n.push({label:W(Y),value:p(g[Y])});return n}function ne(r){const n={};if(r.data&&(n.data=r.data),r.error&&(n.error=r.error),Object.keys(n).length===0)return"";const g=JSON.stringify(n,null,2);if(!g)return"";const q=3200;return g.length<=q?g:`${g.slice(0,q)}
3
3
  ...truncated`}var Re=ga(),Ae=re(Re),je=a(Ae),Ve=a(je),qe=a(Ve),Ge=a(qe);let Qe;var ut=i(Ge,2),mt=a(ut,!0);t(ut),t(qe);var gt=i(qe,2);zt(gt,{variant:"outline",get class(){return`text-[9px] px-1.5 py-0 font-[family-name:var(--font-mono)] ${e(Q)??""}`},children:(r,n)=>{dt();var g=At();b(()=>m(g,_.mode)),f(r,g)},$$slots:{default:!0}});var pt=i(gt,2);{var St=r=>{var n=Kr(),g=a(n);t(n),b(()=>m(g,`${e(F)??""} active`)),f(r,n)};O(pt,r=>{e(F)>0&&r(St)})}t(Ve);var We=i(Ve,2),Ze=a(We);{var Ct=r=>{var n=ea(),g=a(n);t(n),b(q=>m(g,`polled ${q??""}`),[()=>$(_.lastPoll)]),f(r,n)};O(Ze,r=>{_.lastPoll&&r(Ct)})}t(We),t(je);var Je=i(je,2),He=a(Je),Pt=a(He);Hr(Pt,{onselectnode:l}),t(He);var Ke=i(He,2),I=a(Ke),j=a(I),Z=i(a(j),2),ce=a(Z),pe=a(ce);t(ce);var J=i(ce,2);let we;var me=a(J,!0);t(J),t(Z),t(j);var ie=i(j,2),ve=a(ie),ke=a(ve);Ee(ke,()=>nr,(r,n)=>{n(r,{get checked(){return e(c)},onCheckedChange:g=>E(g),class:"scale-90"})}),dt(2),t(ve);var Me=i(ve,2),X=a(Me),se=a(X,!0);t(X);var K=i(X,2),xe=a(K,!0);t(K),t(Me);var Se=i(Me,2),Fe=a(Se);Ee(Fe,()=>lr,(r,n)=>{n(r,{get open(){return e(D)},set open(g){h(D,g,!0)},children:(g,q)=>{var Y=aa(),Ye=re(Y);{const rt=(Le,Pe)=>{let Xe=()=>Pe?.().props;var he=ta();ar(he,()=>({...Xe(),type:"button",class:"px-2 py-[3px] text-[9px] uppercase tracking-[0.08em] font-[family-name:var(--font-mono)] border border-[var(--sig-border)] text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] hover:border-[var(--sig-border-strong)]"}),void 0,void 0,void 0,"svelte-1kgvdra"),f(Le,he)};Ee(Ye,()=>ir,(Le,Pe)=>{Pe(Le,{child:rt,$$slots:{child:!0}})})}var Mt=i(Ye,2);Ee(Mt,()=>sr,(rt,Le)=>{Le(rt,{align:"end",side:"bottom",class:"w-[170px] p-1 bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] rounded-none",children:(Pe,Xe)=>{var he=ra(),ze=a(he),xt=a(ze,!0);t(ze);var Ie=i(ze,2),Lt=a(Ie,!0);t(Ie),t(he),b(()=>{m(xt,e(G)),m(Lt,e(A))}),De("click",ze,at=>ue(at)),De("click",Ie,at=>S(at)),f(Pe,he)},$$slots:{default:!0}})}),f(g,Y)},$$slots:{default:!0}})}),t(Se),t(ie),t(I);var Ce=i(I,2),et=a(Ce);Ne(et,19,()=>_.feed,(r,n)=>r.timestamp+"-"+n,(r,n)=>{const g=C(()=>w[e(n).category]??"var(--sig-text-muted)"),q=C(()=>v[e(n).level]??"#6b6b76"),Y=C(()=>e(n).message.length>72),Ye=C(()=>P(e(n).data)),Mt=C(()=>x(e(n))),rt=C(()=>z(e(n))),Le=C(()=>ne(e(n)));var Pe=ua(),Xe=a(Pe),he=a(Xe),ze=a(he,!0);t(he);var xt=i(he,2),Ie=i(xt,2),Lt=a(Ie,!0);t(Ie),t(Xe);var at=i(Xe,2);{var Vt=Te=>{var ot=la(),Be=re(ot),nt=a(Be),Tt=a(nt,!0);t(nt);var ht=i(nt,2),Ot=a(ht,!0);t(ht),t(Be);var ee=i(Be,2),le=a(ee,!0);t(ee);var ge=i(ee,2);Ne(ge,21,()=>e(rt),lt,(B,te)=>{var be=oa(),it=a(be),Kt=a(it,!0);t(it);var jt=i(it,2),er=a(jt,!0);t(jt),t(be),b(()=>{m(Kt,e(te).label),m(er,e(te).value)}),f(B,be)}),t(ge);var bt=i(ge,2);{var yt=B=>{var te=na(),be=a(te);t(te),b(()=>m(be,`Data keys: ${e(Ye)??""}`)),f(B,te)};O(bt,B=>{e(Ye)&&B(yt)})}var _t=i(bt,2);{var Wt=B=>{var te=ia(),be=a(te);t(te),b(()=>m(be,`${e(n).error.name??""}: ${e(n).error.message??""}`)),f(B,te)};O(_t,B=>{e(n).error&&B(Wt)})}var Zt=i(_t,2);{var Jt=B=>{var te=sa(),be=i(a(te),2),it=a(be,!0);t(be),t(te),b(()=>m(it,e(Le))),f(B,te)};O(Zt,B=>{e(Le)&&B(Jt)})}b(B=>{m(Tt,e(Mt)),m(Ot,B),m(le,e(n).message)},[()=>R(e(n).timestamp)]),f(Te,ot)},Qt=Te=>{var ot=fa(),Be=re(ot);{var nt=ee=>{var le=da(),ge=a(le),bt=a(ge,!0);t(ge);var yt=i(ge,2),_t=a(yt,!0);t(yt),t(le),b(()=>{m(bt,e(n).message),m(_t,e(n).message)}),f(ee,le)},Tt=ee=>{var le=ca(),ge=a(le,!0);t(le),b(()=>m(ge,e(n).message)),f(ee,le)};O(Be,ee=>{e(Y)?ee(nt):ee(Tt,!1)})}var ht=i(Be,2);{var Ot=ee=>{var le=va(),ge=a(le);t(le),b(()=>m(ge,`${e(n).duration??""}ms`)),f(ee,le)};O(ht,ee=>{e(n).duration&&ee(Ot)})}f(Te,ot)};O(at,Te=>{e(N)?Te(Vt):Te(Qt,!1)})}t(Pe),b(Te=>{m(ze,Te),qt(xt,`background-color: ${e(q)??""}`),qt(Ie,`color: ${e(g)??""}`),m(Lt,e(n).category)},[()=>$(e(n).timestamp)]),f(r,Pe)});var Et=i(et,2);{var Dt=r=>{var n=ma();f(r,n)};O(Et,r=>{_.feed.length===0&&r(Dt)})}t(Ce),or(Ce,r=>h(s,r),()=>e(s)),t(Ke),t(Je),t(Ae);var tt=i(Ae,2);Jr(tt,{}),b(()=>{Qe=$e(Ge,1,"inline-block w-2 h-2 rounded-full",null,Qe,{"bg-[#4ade80]":_.connected,"bg-[#f87171]":!_.connected,"animate-pulse":_.connected}),m(mt,_.connected?"LIVE":"DISCONNECTED"),$e(Ke,1,`w-full shrink-0 border-t lg:border-t-0 border-[var(--sig-border)] flex flex-col bg-[var(--sig-bg)] min-h-[220px] max-h-[40vh] lg:max-h-none ${e(oe)}`,"svelte-1kgvdra"),m(pe,`${_.feed.length??""} events`),we=$e(J,1,"text-[9px] font-[family-name:var(--font-mono)]",null,we,{"text-[#4ade80]":e(c)&&e(k),"text-[var(--sig-text-muted)]":!e(c)||!e(k)}),m(me,e(c)&&e(k)?"following":"paused"),m(se,e(G)),m(xe,e(A))}),De("click",X,r=>ue(r)),De("click",K,r=>S(r)),kt("scroll",Ce,de),f(u,Re),ft()}Rt(["click"]);export{wa as default};
@@ -1,4 +1,4 @@
1
- import{a as Z,P as Et,g as t,b as w,m as z,q as u,G as b,n as q,t as L,e as S,f as F,h as r,d as l,i as K,c as x,r as f,a6 as Bt,l as ee,u as E,s as Te,v as Oe,z as _,F as j,au as Wt,B as pe,E as ce,C as st,av as Vt,aw as qt,ax as Rt,ay as Ut,az as Yt,I as ct,D as vt,J as Pt,aA as Jt,aB as Gt,aC as Kt,aD as Ht,aE as Qt,aF as Xt,aG as Zt,aH as gt,M as nt,aI as zt,aJ as er,aK as wt,aL as Ft,j as ht,w as xt,y as Fe,L as bt,aM as tr,N as rr,A as ar}from"./cZT7cFE6.js";import{S as nr,E as sr,F as or,H as lr,B as ir,G as dr,aj as cr,ak as vr,T as ur,e as he,al as Ct,I as kt,x as $,am as fr,an as gr,ao as mr,A as It,ap as xr,aq as _t,ar as ft,as as Dt}from"./DFliBdid.js";import{I as yt}from"./C1L1lIPL.js";import{L as Qe,T as $t}from"./CUIggBT6.js";import{c as Nt,S as At,a as Lt,b as mt}from"./CKsWNUQn.js";import{S as Mt}from"./Bfzcd63A.js";import{B as dt}from"./DLLneOBY.js";import{P as _r,a as pr,b as hr}from"./BemNI_nj.js";import{C as jt}from"./C3QGzwEO.js";var br=_("<!> <!>",1),yr=_("<!> <!> <!>",1),$r=_("<!> <!>",1),wr=_('<div class="flex flex-col gap-1"><!> <!></div>'),Pr=_('Reason for change <span class="text-[var(--sig-accent)]">*</span>',1),Cr=_('<div class="flex flex-col gap-1"><!> <!></div> <div class="grid grid-cols-2 gap-3"><div class="flex flex-col gap-1"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div></div> <!> <div class="flex flex-col gap-1"><!> <!></div> <div class="flex items-center justify-between"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div>',1),kr=_('<span class="px-1.5 py-px border border-[var(--sig-border-strong)]"> </span>'),Sr=_(`This memory is <strong>pinned</strong>. Deleting it requires
1
+ import{a as Z,P as Et,g as t,b as w,m as z,q as u,G as b,n as q,t as L,e as S,f as F,h as r,d as l,i as K,c as x,r as f,a6 as Bt,l as ee,u as E,s as Te,v as Oe,z as _,F as j,au as Wt,B as pe,E as ce,C as st,av as Vt,aw as qt,ax as Rt,ay as Ut,az as Yt,I as ct,D as vt,J as Pt,aA as Jt,aB as Gt,aC as Kt,aD as Ht,aE as Qt,aF as Xt,aG as Zt,aH as gt,M as nt,aI as zt,aJ as er,aK as wt,aL as Ft,j as ht,w as xt,y as Fe,L as bt,aM as tr,N as rr,A as ar}from"./cZT7cFE6.js";import{S as nr,E as sr,F as or,H as lr,B as ir,G as dr,aj as cr,ak as vr,T as ur,e as he,al as Ct,I as kt,x as $,am as fr,an as gr,ao as mr,A as It,ap as xr,aq as _t,ar as ft,as as Dt}from"./DGR6CBfw.js";import{I as yt}from"./BuL0KwYw.js";import{L as Qe,T as $t}from"./DVkFg6ZB.js";import{c as Nt,S as At,a as Lt,b as mt}from"./DknXDOV5.js";import{S as Mt}from"./1BXnJqFr.js";import{B as dt}from"./Coh8pPy2.js";import{P as _r,a as pr,b as hr}from"./CszZ9S61.js";import{C as jt}from"./Drvr6A5N.js";var br=_("<!> <!>",1),yr=_("<!> <!> <!>",1),$r=_("<!> <!>",1),wr=_('<div class="flex flex-col gap-1"><!> <!></div>'),Pr=_('Reason for change <span class="text-[var(--sig-accent)]">*</span>',1),Cr=_('<div class="flex flex-col gap-1"><!> <!></div> <div class="grid grid-cols-2 gap-3"><div class="flex flex-col gap-1"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div></div> <!> <div class="flex flex-col gap-1"><!> <!></div> <div class="flex items-center justify-between"><!> <!></div> <div class="flex flex-col gap-1"><!> <!></div>',1),kr=_('<span class="px-1.5 py-px border border-[var(--sig-border-strong)]"> </span>'),Sr=_(`This memory is <strong>pinned</strong>. Deleting it requires
2
2
  force, which removes it permanently from search results.`,1),Fr=_('<div class="flex items-center gap-2"><!> <!></div>'),Ir=_('Reason for deletion <span class="text-[var(--sig-accent)]">*</span>',1),Dr=_(`<div class="flex flex-col gap-2 p-3 border border-[var(--sig-border-strong)]
3
3
  bg-[var(--sig-surface-raised)]"><p class="m-0 text-[var(--sig-text-bright)] text-[11px]
4
4
  leading-[1.5] whitespace-pre-wrap break-words"> </p> <div class="flex flex-wrap gap-1 text-[9px]
@@ -1 +1 @@
1
- import{a as y,F as a,m as x,q as i,G as c,R as I,B as q,g as B,C as D,D as E,d as b,T as J,h as d,l as F,E as G,u as T,z as U,U as K,i as Y,V as L,W as M}from"./cZT7cFE6.js";import{e as V}from"./DFliBdid.js";var N=U("<!> <!>",1);function $(h,r){y(r,!0);let o=a(r,"ref",15,null),l=a(r,"orientation",3,"vertical"),t=G(r,["$$slots","$$events","$$legacy","ref","class","orientation","children"]);var f=x(),m=i(f);{let S=T(()=>V("flex touch-none p-px transition-colors select-none",l()==="vertical"&&"h-full w-2.5 border-s border-s-transparent",l()==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent",r.class));c(m,()=>I,(u,p)=>{p(u,q({"data-slot":"scroll-area-scrollbar",get orientation(){return l()},get class(){return B(S)}},()=>t,{get ref(){return o()},set ref(n){o(n)},children:(n,z)=>{var v=N(),s=i(v);D(s,()=>r.children??E);var P=b(s,2);c(P,()=>J,(_,g)=>{g(_,{"data-slot":"scroll-area-thumb",class:"bg-border relative flex-1 rounded-full"})}),d(n,v)},$$slots:{default:!0}}))})}d(h,f),F()}var O=U("<!> <!> <!> <!>",1);function er(h,r){y(r,!0);let o=a(r,"ref",15,null),l=a(r,"viewportRef",15,null),t=a(r,"orientation",3,"vertical"),f=a(r,"scrollbarXClasses",3,""),m=a(r,"scrollbarYClasses",3,""),S=G(r,["$$slots","$$events","$$legacy","ref","viewportRef","class","orientation","scrollbarXClasses","scrollbarYClasses","children"]);var u=x(),p=i(u);{let n=T(()=>V("relative",r.class));c(p,()=>M,(z,v)=>{v(z,q({"data-slot":"scroll-area",get class(){return B(n)}},()=>S,{get ref(){return o()},set ref(s){o(s)},children:(s,P)=>{var _=O(),g=i(_);c(g,()=>K,(e,w)=>{w(e,{"data-slot":"scroll-area-viewport",class:"ring-ring/10 dark:ring-ring/20 dark:outline-ring/40 outline-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] focus-visible:ring-4 focus-visible:outline-1",get ref(){return l()},set ref(C){l(C)},children:(C,Q)=>{var X=x(),H=i(X);D(H,()=>r.children??E),d(C,X)},$$slots:{default:!0}})});var R=b(g,2);{var W=e=>{$(e,{orientation:"vertical",get class(){return m()}})};Y(R,e=>{(t()==="vertical"||t()==="both")&&e(W)})}var k=b(R,2);{var j=e=>{$(e,{orientation:"horizontal",get class(){return f()}})};Y(k,e=>{(t()==="horizontal"||t()==="both")&&e(j)})}var A=b(k,2);c(A,()=>L,(e,w)=>{w(e,{})}),d(s,_)},$$slots:{default:!0}}))})}d(h,u),F()}export{er as S,$ as a};
1
+ import{a as y,F as a,m as x,q as i,G as c,R as I,B as q,g as B,C as D,D as E,d as b,T as J,h as d,l as F,E as G,u as T,z as U,U as K,i as Y,V as L,W as M}from"./cZT7cFE6.js";import{e as V}from"./DGR6CBfw.js";var N=U("<!> <!>",1);function $(h,r){y(r,!0);let o=a(r,"ref",15,null),l=a(r,"orientation",3,"vertical"),t=G(r,["$$slots","$$events","$$legacy","ref","class","orientation","children"]);var f=x(),m=i(f);{let S=T(()=>V("flex touch-none p-px transition-colors select-none",l()==="vertical"&&"h-full w-2.5 border-s border-s-transparent",l()==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent",r.class));c(m,()=>I,(u,p)=>{p(u,q({"data-slot":"scroll-area-scrollbar",get orientation(){return l()},get class(){return B(S)}},()=>t,{get ref(){return o()},set ref(n){o(n)},children:(n,z)=>{var v=N(),s=i(v);D(s,()=>r.children??E);var P=b(s,2);c(P,()=>J,(_,g)=>{g(_,{"data-slot":"scroll-area-thumb",class:"bg-border relative flex-1 rounded-full"})}),d(n,v)},$$slots:{default:!0}}))})}d(h,f),F()}var O=U("<!> <!> <!> <!>",1);function er(h,r){y(r,!0);let o=a(r,"ref",15,null),l=a(r,"viewportRef",15,null),t=a(r,"orientation",3,"vertical"),f=a(r,"scrollbarXClasses",3,""),m=a(r,"scrollbarYClasses",3,""),S=G(r,["$$slots","$$events","$$legacy","ref","viewportRef","class","orientation","scrollbarXClasses","scrollbarYClasses","children"]);var u=x(),p=i(u);{let n=T(()=>V("relative",r.class));c(p,()=>M,(z,v)=>{v(z,q({"data-slot":"scroll-area",get class(){return B(n)}},()=>S,{get ref(){return o()},set ref(s){o(s)},children:(s,P)=>{var _=O(),g=i(_);c(g,()=>K,(e,w)=>{w(e,{"data-slot":"scroll-area-viewport",class:"ring-ring/10 dark:ring-ring/20 dark:outline-ring/40 outline-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] focus-visible:ring-4 focus-visible:outline-1",get ref(){return l()},set ref(C){l(C)},children:(C,Q)=>{var X=x(),H=i(X);D(H,()=>r.children??E),d(C,X)},$$slots:{default:!0}})});var R=b(g,2);{var W=e=>{$(e,{orientation:"vertical",get class(){return m()}})};Y(R,e=>{(t()==="vertical"||t()==="both")&&e(W)})}var k=b(R,2);{var j=e=>{$(e,{orientation:"horizontal",get class(){return f()}})};Y(k,e=>{(t()==="horizontal"||t()==="both")&&e(j)})}var A=b(k,2);c(A,()=>L,(e,w)=>{w(e,{})}),d(s,_)},$$slots:{default:!0}}))})}d(h,u),F()}export{er as S,$ as a};
@@ -1 +1 @@
1
- import{a as _,F as o,m as w,q as k,i as I,h as s,l as q,I as c,J as f,K as z,L as v,z as g,E}from"./cZT7cFE6.js";import{e as b}from"./DFliBdid.js";var F=g("<input/>"),J=g("<input/>");function P(m,e){_(e,!0);let t=o(e,"ref",15,null),d=o(e,"value",15),p=o(e,"files",15),n=o(e,"data-slot",3,"input"),l=E(e,["$$slots","$$events","$$legacy","ref","value","type","files","class","data-slot"]);var u=w(),x=k(u);{var h=a=>{var i=F();c(i,r=>({"data-slot":n(),class:r,type:"file",...l}),[()=>b("selection:bg-primary dark:bg-input/30 selection:text-primary-foreground border-input ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 pt-1.5 text-sm font-medium shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e.class)],void 0,void 0,void 0,!0),f(i,r=>t(r),()=>t()),z(i,p),v(i,d),s(a,i)},y=a=>{var i=J();c(i,r=>({"data-slot":n(),class:r,type:e.type,...l}),[()=>b("border-input bg-background selection:bg-primary dark:bg-input/30 selection:text-primary-foreground ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e.class)],void 0,void 0,void 0,!0),f(i,r=>t(r),()=>t()),v(i,d),s(a,i)};I(x,a=>{e.type==="file"?a(h):a(y,!1)})}s(m,u),q()}export{P as I};
1
+ import{a as _,F as o,m as w,q as k,i as I,h as s,l as q,I as c,J as f,K as z,L as v,z as g,E}from"./cZT7cFE6.js";import{e as b}from"./DGR6CBfw.js";var F=g("<input/>"),J=g("<input/>");function P(m,e){_(e,!0);let t=o(e,"ref",15,null),d=o(e,"value",15),p=o(e,"files",15),n=o(e,"data-slot",3,"input"),l=E(e,["$$slots","$$events","$$legacy","ref","value","type","files","class","data-slot"]);var u=w(),x=k(u);{var h=a=>{var i=F();c(i,r=>({"data-slot":n(),class:r,type:"file",...l}),[()=>b("selection:bg-primary dark:bg-input/30 selection:text-primary-foreground border-input ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 pt-1.5 text-sm font-medium shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e.class)],void 0,void 0,void 0,!0),f(i,r=>t(r),()=>t()),z(i,p),v(i,d),s(a,i)},y=a=>{var i=J();c(i,r=>({"data-slot":n(),class:r,type:e.type,...l}),[()=>b("border-input bg-background selection:bg-primary dark:bg-input/30 selection:text-primary-foreground ring-offset-background placeholder:text-muted-foreground flex h-9 w-full min-w-0 rounded-md border px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e.class)],void 0,void 0,void 0,!0),f(i,r=>t(r),()=>t()),v(i,d),s(a,i)};I(x,a=>{e.type==="file"?a(h):a(y,!1)})}s(m,u),q()}export{P as I};
@@ -1,4 +1,4 @@
1
- import{a as Ct,s as P,p as Tt,o as At,P as zt,c as a,G as O,q as V,n as Pe,t as Ce,e as C,f as d,g as e,h as l,d as o,v as me,m as fe,w as xe,b as i,r as s,i as J,M as ie,y as _e,u as Te,N as Et,l as Nt,z as u,A as Rt}from"./cZT7cFE6.js";import{S as Ue,a as Xe,b as be,c as Ge}from"./CKsWNUQn.js";import{C as jt}from"./BZwXM_Mi.js";import{S as Mt}from"./B-1TjjYA.js";import{A as Ie}from"./DFliBdid.js";var Ft=u("<!> <!>",1),qt=u("<!> <!>",1),Ot=u("<!> <!>",1),Vt=u("<!> <!>",1),Bt=u('<span class="text-[var(--sig-success)] text-[length:var(--font-size-sm)] font-medium [animation:pulse_2s_infinite]">● Live</span>'),Jt=u('<span class="text-[var(--sig-text-muted)] text-[length:var(--font-size-sm)] [animation:pulse_2s_infinite]">↺</span>'),Dt=u('<span class="text-[10px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)] truncate max-w-[220px]"> </span>'),Kt=u('<div class="py-[var(--space-xl)] text-center text-[var(--sig-text-muted)] font-[family-name:var(--font-display)] text-[length:var(--font-size-base)]">Loading logs...</div>'),Ut=u('<div class="py-[var(--space-xl)] text-center text-[var(--sig-danger)] font-[family-name:var(--font-display)] text-[length:var(--font-size-base)]"> </div>'),Xt=u('<div class="py-[var(--space-xl)] text-center text-[var(--sig-text-muted)] font-[family-name:var(--font-display)] text-[length:var(--font-size-base)]">No logs found</div>'),Gt=u('<span class="text-[var(--sig-text-muted)]"> </span>'),It=u('<div class="mt-1 text-[11px] text-[var(--sig-text-muted)] whitespace-pre-wrap break-words"> </div>'),Ht=u('<button type="button"><div class="flex flex-wrap items-baseline gap-[var(--space-xs)]"><span class="text-[var(--sig-text-muted)] shrink-0"> </span> <span> </span> <span class="text-[var(--sig-text)] shrink-0"> </span> <span class="text-[var(--sig-text-bright)] break-all"> </span> <!></div> <!></button>'),Qt=u('<div class="font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)] leading-relaxed"><!></div>'),Wt=u('<div class="text-[var(--sig-text-muted)]">Duration</div> <div class="text-[var(--sig-text-bright)]"> </div>',1),Yt=u('<details class="mb-1 border border-[var(--sig-border)] bg-[var(--sig-surface)]"><summary class="cursor-pointer px-2 py-1 text-[10px] text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] select-none"><span class="font-semibold text-[var(--sig-text)]"> </span> <span class="ml-1 opacity-60"> </span> <span class="ml-1 opacity-40"> </span></summary> <pre class="m-0 px-2 py-1 text-[10px] leading-relaxed whitespace-pre-wrap break-words text-[var(--sig-text)]"> </pre></details>'),Zt=u('<div class="mb-1"><div class="text-[10px] text-[var(--sig-text-muted)] font-semibold mb-0.5"> </div> <pre class="m-0 p-2 text-[10px] leading-relaxed whitespace-pre-wrap break-words border border-[var(--sig-border)] bg-[var(--sig-surface)] text-[var(--sig-text)]"> </pre></div>'),er=u('<div class="mb-[var(--space-sm)]"><div class="text-[var(--sig-text-muted)] text-[length:var(--font-size-xs)] uppercase tracking-[0.08em] mb-1">Readable output</div> <!></div>'),tr=u('<div class="flex items-center justify-between gap-2 mb-[var(--space-sm)]"><div class="text-[var(--sig-text-muted)] text-[length:var(--font-size-xs)] uppercase tracking-[0.08em]">Log details</div> <button type="button" class="text-[10px] px-2 py-1 border border-[var(--sig-border)] text-[var(--sig-text)] hover:border-[var(--sig-border-strong)] hover:text-[var(--sig-text-bright)]"> </button></div> <div class="grid grid-cols-[80px_1fr] gap-y-1 gap-x-2 mb-[var(--space-sm)]"><div class="text-[var(--sig-text-muted)]">Time</div> <div class="text-[var(--sig-text-bright)] break-all"> </div> <div class="text-[var(--sig-text-muted)]">Level</div> <div> </div> <div class="text-[var(--sig-text-muted)]">Category</div> <div class="text-[var(--sig-text-bright)]"> </div> <div class="text-[var(--sig-text-muted)]">Message</div> <div class="text-[var(--sig-text-bright)] break-all"> </div> <!></div> <!> <pre class="m-0 p-2 text-[10px] leading-relaxed whitespace-pre-wrap break-all border border-[var(--sig-border)] bg-[var(--sig-surface-raised)] text-[var(--sig-text-muted)]"> </pre>',1),rr=u('<div class="text-[var(--sig-text-muted)]">Select a log entry to inspect details.</div>'),ar=u('<div class="flex flex-col flex-1 min-h-0"><div class="flex items-center gap-[var(--space-sm)] px-[var(--space-md)] py-[var(--space-sm)] border-b border-[var(--sig-border)] shrink-0"><!> <!> <label class="flex items-center gap-1.5 text-[length:var(--font-size-sm)] text-[var(--sig-text)] cursor-pointer"><!> Auto-scroll</label> <span> </span> <button class="text-[11px] px-2 py-1 border border-[var(--sig-border)] text-[var(--sig-text)] hover:border-[var(--sig-border-strong)] hover:text-[var(--sig-text-bright)]" title="Reload logs"> </button> <button><!></button> <!></div> <div class="flex-1 min-h-0 grid grid-cols-1 lg:grid-cols-[minmax(0,1.5fr)_minmax(0,1fr)]"><!> <div class="min-h-0 overflow-auto p-[var(--space-md)] font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)]"><!></div></div></div>');function cr(He,Qe){Ct(Qe,!0);const We=2e3,Ye=3e4,Ae=5;let p=P(Tt([])),he=P(!1),le=P(""),H=P(!1),D=P(!1),Q=P(""),T=null,K=0,A=null,W=P(""),Y=P(""),Z=P(!0),ze=null,U=P(null),ve=P(!1),ee=P(!0);const Ze=["daemon","api","memory","sync","git","watcher","embedding","harness","system","hooks","pipeline","skills","secrets","auth","session-tracker","summary-worker","document-worker","maintenance","retention","llm"],et=["debug","info","warn","error"];function ye(t){switch(t){case"error":return"log-level--error";case"warn":return"log-level--warn";case"debug":return"log-level--debug";default:return"log-level--info"}}function re(t,r){return`${t.timestamp}-${t.level}-${t.category}-${r}`}function tt(){return e(p).length===0||!e(U)?!0:e(U)===re(e(p)[e(p).length-1],e(p).length-1)}function Ee(){if(e(p).length===0){i(U,null);return}i(U,re(e(p)[e(p).length-1],e(p).length-1),!0)}function rt(){if(!e(U))return e(p).at(-1)??null;for(let t=0;t<e(p).length;t+=1)if(re(e(p)[t],t)===e(U))return e(p)[t];return e(p).at(-1)??null}const S=Te(rt);function sr(t="smooth"){}function at(t){return!0}async function ce(){i(he,!0),i(le,"");try{const t=new URLSearchParams({limit:"200"});e(W)&&t.set("level",e(W)),e(Y)&&t.set("category",e(Y));const n=await(await fetch(`/api/logs?${t}`)).json();i(p,n.logs||[],!0),Ee(),setTimeout(()=>{i(ee,!0)},0)}catch{i(le,"Failed to fetch logs")}finally{i(he,!1)}}function Ne(){A!==null&&(clearTimeout(A),A=null),T&&T.close(),i(H,!0),T=new EventSource("/api/logs/stream"),T.onmessage=t=>{try{const r=JSON.parse(t.data);if(r.type==="connected"){K=0,i(D,!1),i(Q,"");return}if(e(W)&&r.level!==e(W)||e(Y)&&r.category!==e(Y))return;const n=at(ze),y=e(Z)&&(e(ee)||n),f=tt();i(p,[...e(p).slice(-499),r],!0),f&&Ee(),y&&setTimeout(()=>{i(ee,!0)},0)}catch{}},T.onerror=()=>{if(i(H,!1),T?.close(),T=null,A===null)if(K<Ae){const t=Math.min(We*2**K,Ye);K++,i(D,!0),i(Q,`Stream lost — reconnecting in ${t/1e3}s (${K}/${Ae})`),A=setTimeout(()=>{A=null,Ne()},t)}else i(D,!1),i(Q,"Stream disconnected. Click ▶ to reconnect."),K=0}}function st(){K=0,i(D,!1),i(Q,""),Ne()}function nt(){i(H,!1),i(D,!1),i(Q,""),K=0,A!==null&&(clearTimeout(A),A=null),T?.close(),T=null}function ot(){e(H)||e(D)?nt():st()}function it(t){return t.split("T")[1]?.slice(0,8)||""}function lt(t){try{return new Date(t).toLocaleString()}catch{return t}}function Re(t){return JSON.stringify(t,null,2)}function M(t){return typeof t=="string"&&t.length>0?t:null}function vt(t){return Array.isArray(t)?t.filter(r=>typeof r=="string"&&r.length>0):[]}function je(t){const r=t.data;if(!r)return[];const n=[],y=M(r.inject)??M(r.injectPreview);y&&n.push({label:"Inject",content:y});const f=M(r.prompt)??M(r.promptPreview);f&&n.push({label:"Prompt",content:f});const $=M(r.summaryPrompt)??M(r.summaryPromptPreview);$&&n.push({label:"Summary Prompt",content:$});const L=M(r.summary)??M(r.summaryPreview);L&&n.push({label:"Summary",content:L});const x=M(r.transcript)??M(r.transcriptPreview);x&&n.push({label:"Transcript",content:x});const v=vt(r.factsPreview);if(v.length>0){const c=v.map(z=>`- ${z}`).join(`
1
+ import{a as Ct,s as P,p as Tt,o as At,P as zt,c as a,G as O,q as V,n as Pe,t as Ce,e as C,f as d,g as e,h as l,d as o,v as me,m as fe,w as xe,b as i,r as s,i as J,M as ie,y as _e,u as Te,N as Et,l as Nt,z as u,A as Rt}from"./cZT7cFE6.js";import{S as Ue,a as Xe,b as be,c as Ge}from"./DknXDOV5.js";import{C as jt}from"./CHRhNFId.js";import{S as Mt}from"./Bm0MMajT.js";import{A as Ie}from"./DGR6CBfw.js";var Ft=u("<!> <!>",1),qt=u("<!> <!>",1),Ot=u("<!> <!>",1),Vt=u("<!> <!>",1),Bt=u('<span class="text-[var(--sig-success)] text-[length:var(--font-size-sm)] font-medium [animation:pulse_2s_infinite]">● Live</span>'),Jt=u('<span class="text-[var(--sig-text-muted)] text-[length:var(--font-size-sm)] [animation:pulse_2s_infinite]">↺</span>'),Dt=u('<span class="text-[10px] text-[var(--sig-text-muted)] font-[family-name:var(--font-mono)] truncate max-w-[220px]"> </span>'),Kt=u('<div class="py-[var(--space-xl)] text-center text-[var(--sig-text-muted)] font-[family-name:var(--font-display)] text-[length:var(--font-size-base)]">Loading logs...</div>'),Ut=u('<div class="py-[var(--space-xl)] text-center text-[var(--sig-danger)] font-[family-name:var(--font-display)] text-[length:var(--font-size-base)]"> </div>'),Xt=u('<div class="py-[var(--space-xl)] text-center text-[var(--sig-text-muted)] font-[family-name:var(--font-display)] text-[length:var(--font-size-base)]">No logs found</div>'),Gt=u('<span class="text-[var(--sig-text-muted)]"> </span>'),It=u('<div class="mt-1 text-[11px] text-[var(--sig-text-muted)] whitespace-pre-wrap break-words"> </div>'),Ht=u('<button type="button"><div class="flex flex-wrap items-baseline gap-[var(--space-xs)]"><span class="text-[var(--sig-text-muted)] shrink-0"> </span> <span> </span> <span class="text-[var(--sig-text)] shrink-0"> </span> <span class="text-[var(--sig-text-bright)] break-all"> </span> <!></div> <!></button>'),Qt=u('<div class="font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)] leading-relaxed"><!></div>'),Wt=u('<div class="text-[var(--sig-text-muted)]">Duration</div> <div class="text-[var(--sig-text-bright)]"> </div>',1),Yt=u('<details class="mb-1 border border-[var(--sig-border)] bg-[var(--sig-surface)]"><summary class="cursor-pointer px-2 py-1 text-[10px] text-[var(--sig-text-muted)] hover:text-[var(--sig-text)] select-none"><span class="font-semibold text-[var(--sig-text)]"> </span> <span class="ml-1 opacity-60"> </span> <span class="ml-1 opacity-40"> </span></summary> <pre class="m-0 px-2 py-1 text-[10px] leading-relaxed whitespace-pre-wrap break-words text-[var(--sig-text)]"> </pre></details>'),Zt=u('<div class="mb-1"><div class="text-[10px] text-[var(--sig-text-muted)] font-semibold mb-0.5"> </div> <pre class="m-0 p-2 text-[10px] leading-relaxed whitespace-pre-wrap break-words border border-[var(--sig-border)] bg-[var(--sig-surface)] text-[var(--sig-text)]"> </pre></div>'),er=u('<div class="mb-[var(--space-sm)]"><div class="text-[var(--sig-text-muted)] text-[length:var(--font-size-xs)] uppercase tracking-[0.08em] mb-1">Readable output</div> <!></div>'),tr=u('<div class="flex items-center justify-between gap-2 mb-[var(--space-sm)]"><div class="text-[var(--sig-text-muted)] text-[length:var(--font-size-xs)] uppercase tracking-[0.08em]">Log details</div> <button type="button" class="text-[10px] px-2 py-1 border border-[var(--sig-border)] text-[var(--sig-text)] hover:border-[var(--sig-border-strong)] hover:text-[var(--sig-text-bright)]"> </button></div> <div class="grid grid-cols-[80px_1fr] gap-y-1 gap-x-2 mb-[var(--space-sm)]"><div class="text-[var(--sig-text-muted)]">Time</div> <div class="text-[var(--sig-text-bright)] break-all"> </div> <div class="text-[var(--sig-text-muted)]">Level</div> <div> </div> <div class="text-[var(--sig-text-muted)]">Category</div> <div class="text-[var(--sig-text-bright)]"> </div> <div class="text-[var(--sig-text-muted)]">Message</div> <div class="text-[var(--sig-text-bright)] break-all"> </div> <!></div> <!> <pre class="m-0 p-2 text-[10px] leading-relaxed whitespace-pre-wrap break-all border border-[var(--sig-border)] bg-[var(--sig-surface-raised)] text-[var(--sig-text-muted)]"> </pre>',1),rr=u('<div class="text-[var(--sig-text-muted)]">Select a log entry to inspect details.</div>'),ar=u('<div class="flex flex-col flex-1 min-h-0"><div class="flex items-center gap-[var(--space-sm)] px-[var(--space-md)] py-[var(--space-sm)] border-b border-[var(--sig-border)] shrink-0"><!> <!> <label class="flex items-center gap-1.5 text-[length:var(--font-size-sm)] text-[var(--sig-text)] cursor-pointer"><!> Auto-scroll</label> <span> </span> <button class="text-[11px] px-2 py-1 border border-[var(--sig-border)] text-[var(--sig-text)] hover:border-[var(--sig-border-strong)] hover:text-[var(--sig-text-bright)]" title="Reload logs"> </button> <button><!></button> <!></div> <div class="flex-1 min-h-0 grid grid-cols-1 lg:grid-cols-[minmax(0,1.5fr)_minmax(0,1fr)]"><!> <div class="min-h-0 overflow-auto p-[var(--space-md)] font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)]"><!></div></div></div>');function cr(He,Qe){Ct(Qe,!0);const We=2e3,Ye=3e4,Ae=5;let p=P(Tt([])),he=P(!1),le=P(""),H=P(!1),D=P(!1),Q=P(""),T=null,K=0,A=null,W=P(""),Y=P(""),Z=P(!0),ze=null,U=P(null),ve=P(!1),ee=P(!0);const Ze=["daemon","api","memory","sync","git","watcher","embedding","harness","system","hooks","pipeline","skills","secrets","auth","session-tracker","summary-worker","document-worker","maintenance","retention","llm"],et=["debug","info","warn","error"];function ye(t){switch(t){case"error":return"log-level--error";case"warn":return"log-level--warn";case"debug":return"log-level--debug";default:return"log-level--info"}}function re(t,r){return`${t.timestamp}-${t.level}-${t.category}-${r}`}function tt(){return e(p).length===0||!e(U)?!0:e(U)===re(e(p)[e(p).length-1],e(p).length-1)}function Ee(){if(e(p).length===0){i(U,null);return}i(U,re(e(p)[e(p).length-1],e(p).length-1),!0)}function rt(){if(!e(U))return e(p).at(-1)??null;for(let t=0;t<e(p).length;t+=1)if(re(e(p)[t],t)===e(U))return e(p)[t];return e(p).at(-1)??null}const S=Te(rt);function sr(t="smooth"){}function at(t){return!0}async function ce(){i(he,!0),i(le,"");try{const t=new URLSearchParams({limit:"200"});e(W)&&t.set("level",e(W)),e(Y)&&t.set("category",e(Y));const n=await(await fetch(`/api/logs?${t}`)).json();i(p,n.logs||[],!0),Ee(),setTimeout(()=>{i(ee,!0)},0)}catch{i(le,"Failed to fetch logs")}finally{i(he,!1)}}function Ne(){A!==null&&(clearTimeout(A),A=null),T&&T.close(),i(H,!0),T=new EventSource("/api/logs/stream"),T.onmessage=t=>{try{const r=JSON.parse(t.data);if(r.type==="connected"){K=0,i(D,!1),i(Q,"");return}if(e(W)&&r.level!==e(W)||e(Y)&&r.category!==e(Y))return;const n=at(ze),y=e(Z)&&(e(ee)||n),f=tt();i(p,[...e(p).slice(-499),r],!0),f&&Ee(),y&&setTimeout(()=>{i(ee,!0)},0)}catch{}},T.onerror=()=>{if(i(H,!1),T?.close(),T=null,A===null)if(K<Ae){const t=Math.min(We*2**K,Ye);K++,i(D,!0),i(Q,`Stream lost — reconnecting in ${t/1e3}s (${K}/${Ae})`),A=setTimeout(()=>{A=null,Ne()},t)}else i(D,!1),i(Q,"Stream disconnected. Click ▶ to reconnect."),K=0}}function st(){K=0,i(D,!1),i(Q,""),Ne()}function nt(){i(H,!1),i(D,!1),i(Q,""),K=0,A!==null&&(clearTimeout(A),A=null),T?.close(),T=null}function ot(){e(H)||e(D)?nt():st()}function it(t){return t.split("T")[1]?.slice(0,8)||""}function lt(t){try{return new Date(t).toLocaleString()}catch{return t}}function Re(t){return JSON.stringify(t,null,2)}function M(t){return typeof t=="string"&&t.length>0?t:null}function vt(t){return Array.isArray(t)?t.filter(r=>typeof r=="string"&&r.length>0):[]}function je(t){const r=t.data;if(!r)return[];const n=[],y=M(r.inject)??M(r.injectPreview);y&&n.push({label:"Inject",content:y});const f=M(r.prompt)??M(r.promptPreview);f&&n.push({label:"Prompt",content:f});const $=M(r.summaryPrompt)??M(r.summaryPromptPreview);$&&n.push({label:"Summary Prompt",content:$});const L=M(r.summary)??M(r.summaryPreview);L&&n.push({label:"Summary",content:L});const x=M(r.transcript)??M(r.transcriptPreview);x&&n.push({label:"Transcript",content:x});const v=vt(r.factsPreview);if(v.length>0){const c=v.map(z=>`- ${z}`).join(`
2
2
  `);n.push({label:"Facts",content:c})}return n}function Me(t){const r=je(t);if(r.length===0)return"";const n=r.map(y=>y.content).join(`
3
3
 
4
4
  `).trim();return n.length<=220?n:`${n.slice(0,220)}...`}async function ct(){if(e(S))try{await navigator.clipboard.writeText(Re(e(S))),i(ve,!0),setTimeout(()=>{i(ve,!1)},1200)}catch{i(ve,!1)}}At(()=>(ce(),()=>{A!==null&&clearTimeout(A),T&&T.close()})),zt(()=>{});var we=ar(),Se=a(we),Fe=a(Se);O(Fe,()=>Ge,(t,r)=>{r(t,{type:"single",get value(){return e(W)},onValueChange:n=>{i(W,n??"",!0),ce()},children:(n,y)=>{var f=qt(),$=V(f);O($,()=>Ue,(x,v)=>{v(x,{class:"font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)] bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] text-[var(--sig-text-bright)] rounded-none h-auto py-1 px-2 min-w-[100px]",children:(c,z)=>{Pe();var m=Ce();C(()=>d(m,e(W)||"All levels")),l(c,m)},$$slots:{default:!0}})});var L=o($,2);O(L,()=>Xe,(x,v)=>{v(x,{class:"bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] rounded-none",children:(c,z)=>{var m=Ft(),g=V(m);O(g,()=>be,(b,h)=>{h(b,{value:"",label:"All levels"})});var F=o(g,2);me(F,17,()=>et,xe,(b,h)=>{var E=fe(),X=V(E);O(X,()=>be,(q,G)=>{G(q,{get value(){return e(h)},get label(){return e(h)}})}),l(b,E)}),l(c,m)},$$slots:{default:!0}})}),l(n,f)},$$slots:{default:!0}})});var qe=o(Fe,2);O(qe,()=>Ge,(t,r)=>{r(t,{type:"single",get value(){return e(Y)},onValueChange:n=>{i(Y,n??"",!0),ce()},children:(n,y)=>{var f=Vt(),$=V(f);O($,()=>Ue,(x,v)=>{v(x,{class:"font-[family-name:var(--font-mono)] text-[length:var(--font-size-sm)] bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] text-[var(--sig-text-bright)] rounded-none h-auto py-1 px-2 min-w-[100px]",children:(c,z)=>{Pe();var m=Ce();C(()=>d(m,e(Y)||"All categories")),l(c,m)},$$slots:{default:!0}})});var L=o($,2);O(L,()=>Xe,(x,v)=>{v(x,{class:"bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)] rounded-none",children:(c,z)=>{var m=Ot(),g=V(m);O(g,()=>be,(b,h)=>{h(b,{value:"",label:"All categories"})});var F=o(g,2);me(F,17,()=>Ze,xe,(b,h)=>{var E=fe(),X=V(E);O(X,()=>be,(q,G)=>{G(q,{get value(){return e(h)},get label(){return e(h)}})}),l(b,E)}),l(c,m)},$$slots:{default:!0}})}),l(n,f)},$$slots:{default:!0}})});var $e=o(qe,2),dt=a($e);jt(dt,{get checked(){return e(Z)},onCheckedChange:t=>{i(Z,t===!0)},class:"rounded-none"}),Pe(),s($e);var de=o($e,2);let Oe;var ut=a(de,!0);s(de);var ue=o(de,2),gt=a(ue,!0);s(ue);var te=o(ue,2),pt=a(te);{var mt=t=>{var r=Bt();l(t,r)},ft=t=>{var r=Jt();l(t,r)},xt=t=>{var r=Ce("▶");l(t,r)};J(pt,t=>{e(H)?t(mt):e(D)?t(ft,1):t(xt,!1)})}s(te);var _t=o(te,2);{var bt=t=>{var r=Dt(),n=a(r,!0);s(r),C(()=>d(n,e(Q))),l(t,r)};J(_t,t=>{e(Q)&&t(bt)})}s(Se);var Ve=o(Se,2),Be=a(Ve);Mt(Be,{class:"min-h-0 border-r border-[var(--sig-border)]",viewportRef:ze,children:(t,r)=>{var n=Qt(),y=a(n);{var f=v=>{var c=Kt();l(v,c)},$=v=>{var c=Ut(),z=a(c,!0);s(c),C(()=>d(z,e(le))),l(v,c)},L=v=>{var c=Xt();l(v,c)},x=v=>{var c=fe(),z=V(c);me(z,17,()=>e(p),xe,(m,g,F)=>{var b=Ht(),h=a(b),E=a(h),X=a(E,!0);s(E);var q=o(E,2),G=a(q,!0);s(q);var ae=o(q,2),N=a(ae);s(ae);var k=o(ae,2),I=a(k,!0);s(k);var se=o(k,2);{var B=R=>{var _=Gt(),w=a(_);s(_),C(()=>d(w,`(${e(g).duration??""}ms)`)),l(R,_)};J(se,R=>{e(g).duration!==void 0&&R(B)})}s(h);var ge=o(h,2);{var Le=R=>{var _=It(),w=a(_,!0);s(_),C(j=>d(w,j),[()=>Me(e(g))]),l(R,_)},ke=Te(()=>Me(e(g)));J(ge,R=>{e(ke)&&R(Le)})}s(b),C((R,_,w,j)=>{ie(b,1,R,"svelte-q4aevr"),d(X,_),ie(q,1,w,"svelte-q4aevr"),d(G,j),d(N,`[${e(g).category??""}]`),d(I,e(g).message)},[()=>`log-row ${ye(e(g).level)} w-full text-left px-[var(--space-md)] py-1.5 border-b border-[var(--sig-border)] hover:bg-[var(--sig-surface-raised)] cursor-pointer ${e(U)===re(e(g),F)?"bg-[var(--sig-surface-raised)] border-[var(--sig-border-strong)]":""}`,()=>it(e(g).timestamp),()=>`font-semibold shrink-0 min-w-[40px] ${ye(e(g).level)}`,()=>e(g).level.toUpperCase()]),_e("click",b,()=>{i(U,re(e(g),F),!0)}),l(m,b)}),l(v,c)};J(y,v=>{e(he)?v(f):e(le)?v($,1):e(p).length===0?v(L,2):v(x,!1)})}s(n),l(t,n)},$$slots:{default:!0}});var Je=o(Be,2),ht=a(Je);{var yt=t=>{const r=Te(()=>je(e(S)));var n=tr(),y=V(n),f=o(a(y),2),$=a(f,!0);s(f),s(y);var L=o(y,2),x=o(a(L),2),v=a(x,!0);s(x);var c=o(x,4),z=a(c,!0);s(c);var m=o(c,4),g=a(m,!0);s(m);var F=o(m,4),b=a(F,!0);s(F);var h=o(F,2);{var E=N=>{var k=Wt(),I=o(V(k),2),se=a(I);s(I),C(()=>d(se,`${e(S).duration??""}ms`)),l(N,k)};J(h,N=>{e(S).duration!==void 0&&N(E)})}s(L);var X=o(L,2);{var q=N=>{var k=er(),I=o(a(k),2);me(I,17,()=>e(r),xe,(se,B)=>{var ge=fe(),Le=V(ge);{var ke=_=>{var w=Yt(),j=a(w),ne=a(j),pe=a(ne,!0);s(ne);var oe=o(ne,2),St=a(oe);s(oe);var De=o(oe,2),$t=a(De);s(De),s(j);var Ke=o(j,2),Lt=a(Ke,!0);s(Ke),s(w),C((kt,Pt)=>{d(pe,e(B).label),d(St,`(${kt??""} chars)`),d($t,`${Pt??""}...`),d(Lt,e(B).content)},[()=>e(B).content.length.toLocaleString(),()=>e(B).content.slice(0,100).replace(/\n/g," ")]),l(_,w)},R=_=>{var w=Zt(),j=a(w),ne=a(j,!0);s(j);var pe=o(j,2),oe=a(pe,!0);s(pe),s(w),C(()=>{d(ne,e(B).label),d(oe,e(B).content)}),l(_,w)};J(Le,_=>{e(B).content.length>500?_(ke):_(R,!1)})}l(se,ge)}),s(k),l(N,k)};J(X,N=>{e(r).length>0&&N(q)})}var G=o(X,2),ae=a(G,!0);s(G),C((N,k,I)=>{d($,e(ve)?"Copied":Ie.CopyJson),d(v,N),ie(c,1,k,"svelte-q4aevr"),d(z,e(S).level),d(g,e(S).category),d(b,e(S).message),d(ae,I)},[()=>lt(e(S).timestamp),()=>`uppercase ${ye(e(S).level)}`,()=>Re(e(S))]),_e("click",f,ct),l(t,n)},wt=t=>{var r=rr();l(t,r)};J(ht,t=>{e(S)?t(yt):t(wt,!1)})}s(Je),s(Ve),s(we),C(()=>{Oe=ie(de,1,"text-[10px] font-[family-name:var(--font-mono)]",null,Oe,{"text-[#4ade80]":e(Z)&&e(ee),"text-[var(--sig-text-muted)]":!e(Z)||!e(ee)}),d(ut,e(Z)&&e(ee)?"following":"paused"),d(gt,Ie.Refresh),ie(te,1,`flex items-center justify-center w-7 h-7 bg-transparent border border-transparent cursor-pointer hover:text-[var(--sig-text)] hover:border-[var(--sig-border)] ${e(H)?"text-[var(--sig-success)]":"text-[var(--sig-text-muted)]"}`,"svelte-q4aevr"),Et(te,"title",e(H)?"Stop stream":e(D)?"Cancel reconnect":"Start stream")}),_e("click",ue,ce),_e("click",te,ot),l(He,we),Nt()}Rt(["click"]);export{cr as default};