kanbaii 0.2.4 → 0.3.0
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.
- package/README.md +110 -172
- package/dashboard/404.html +1 -1
- package/dashboard/_next/static/chunks/{263-9b7bd29b47d5daa7.js → 193-e4d2dea3fdc64b33.js} +1 -1
- package/dashboard/_next/static/chunks/23-2e97e53d3c5bbe2d.js +1 -0
- package/dashboard/_next/static/chunks/app/layout-80932402bd5ccddf.js +1 -0
- package/dashboard/_next/static/chunks/app/{page-f8d26ef9ad72791e.js → page-81876f16bd9d3ebe.js} +1 -1
- package/dashboard/_next/static/css/2671f4087ec3bbc3.css +1 -0
- package/dashboard/index.html +1 -1
- package/dashboard/index.txt +3 -3
- package/dist/server/index.js +1 -0
- package/dist/server/services/projectStore.js +1 -1
- package/package.json +1 -1
- package/dashboard/_next/static/chunks/23-74779bf2fc2560e3.js +0 -1
- package/dashboard/_next/static/chunks/app/layout-3466de5187c06e06.js +0 -1
- package/dashboard/_next/static/css/b0704326f821d6ff.css +0 -1
- /package/dashboard/_next/static/{tvyA3lG1NUpTiHFaup_y- → dwjREEZVmsUge1LeMuNBi}/_buildManifest.js +0 -0
- /package/dashboard/_next/static/{tvyA3lG1NUpTiHFaup_y- → dwjREEZVmsUge1LeMuNBi}/_ssgManifest.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--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-divide-x-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--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-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:host,:root{--color-red-400:oklch(70.4% .191 22.216);--color-orange-600:oklch(64.6% .222 41.116);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-yellow-400:oklch(85.2% .199 91.936);--color-green-400:oklch(79.2% .209 151.711);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-800:oklch(43.2% .095 166.913);--color-teal-600:oklch(60% .118 184.704);--color-cyan-400:oklch(78.9% .154 211.53);--color-blue-500:oklch(62.3% .214 259.815);--color-indigo-400:oklch(67.3% .182 276.935);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-800:oklch(39.8% .195 277.366);--color-violet-600:oklch(54.1% .281 293.009);--color-purple-400:oklch(71.4% .203 305.504);--color-pink-400:oklch(71.8% .202 349.761);--color-rose-600:oklch(58.6% .253 17.585);--color-rose-700:oklch(51.4% .222 16.935);--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--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:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-light:300;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-bounce:bounce 1s infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;line-height:1.5}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,pre,samp{font-feature-settings:normal;font-variation-settings:normal;font-family:JetBrains Mono,Consolas,SF Mono,monospace;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}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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)}}}::-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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{color-scheme:dark;height:100%}[data-theme=light]{color-scheme:light}body{height:100%;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11";font-family:Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-size:13px;line-height:1.55;transition:background-color .3s cubic-bezier(.16,1,.3,1),color .3s cubic-bezier(.16,1,.3,1);overflow:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.015'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px;position:fixed;inset:0}[data-theme=light] body:before{opacity:.3}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0;margin:4px 0}::-webkit-scrollbar-thumb{background:#94a3f214 padding-box padding-box;border:1px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#94a3f229}::-webkit-scrollbar-corner{background:0 0}[data-theme=light] ::-webkit-scrollbar-thumb{background:#00001e14}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#00001e24}::selection{color:#fff;background:#6366f140}a{color:var(--accent);text-decoration:none;transition:color .1s cubic-bezier(.16,1,.3,1)}a:hover{color:var(--accent-hover)}:focus-visible{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent);border-radius:8px;outline:none}button{cursor:pointer;color:inherit;font-family:Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-size:inherit;font-feature-settings:inherit;background:0 0;border:none;outline:none}input,select,textarea{color:var(--text);background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;outline:none;padding:9px 12px;font-family:Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-size:13px;transition:all .15s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 1px 3px #00000026}input:focus,select:focus,textarea:focus{border-color:var(--border-focus);box-shadow:inset 0 1px 3px #00000026,0 0 0 3px var(--accent-muted),0 0 16px -4px #6366f11f;background:var(--bg)}input::placeholder,textarea::placeholder{color:var(--text-muted);font-weight:400}textarea{resize:vertical;min-height:80px}}@layer components{.btn-primary{align-items:center;gap:calc(var(--spacing) * 1.5);padding-inline:calc(var(--spacing) * 4);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);color:var(--color-white);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:cubic-bezier(.16,1,.3,1);background:var(--accent-gradient);border-radius:8px;padding-block:7px;transition-duration:.15s;transition-timing-function:cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;overflow:hidden}.btn-primary:before{content:"";pointer-events:none;inset:calc(var(--spacing) * 0);background:linear-gradient(#ffffff1f,#0000 50%);position:absolute}.btn-primary:hover{--tw-translate-y:-1px;--tw-shadow:0 0 20px var(--tw-shadow-color,#6366f14d),0 4px 12px var(--tw-shadow-color,#0000004d)}.btn-primary:active,.btn-primary:hover{translate:var(--tw-translate-x) var(--tw-translate-y);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.btn-primary:active{--tw-translate-y:calc(var(--spacing) * 0);--tw-shadow:0 0 #0000;scale:.97}.btn-primary:disabled{cursor:not-allowed;opacity:.3;--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);--tw-saturate:saturate(50%);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,);transform:none}.btn-ghost{align-items:center;gap:calc(var(--spacing) * 1.5);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);padding-inline:calc(var(--spacing) * 3.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-secondary);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:cubic-bezier(.16,1,.3,1);background-color:#0000;border-radius:8px;padding-block:7px;transition-duration:.15s;transition-timing-function:cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-ghost:hover{border-color:var(--border-light);background-color:var(--surface-hover);color:var(--text);box-shadow:inset 0 1px #ffffff05}.btn-icon{width:30px;height:30px;color:var(--text-muted);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.12s;--tw-ease:cubic-bezier(.16,1,.3,1);border-radius:8px;justify-content:center;align-items:center;transition-duration:.12s;transition-timing-function:cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-icon:hover{background-color:var(--surface-hover);color:var(--text-secondary)}.btn-danger{align-items:center;gap:calc(var(--spacing) * 1.5);padding-inline:calc(var(--spacing) * 3.5);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--text-secondary);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.15s;--tw-ease:cubic-bezier(.16,1,.3,1);border-radius:8px;padding-block:7px;transition-duration:.15s;transition-timing-function:cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-danger:hover{background:var(--danger-dim);color:var(--danger);box-shadow:0 0 16px #f8717114}.badge{border-radius:3.40282e+38px}.badge,.badge-feature{font-size:9px;line-height:var(--tw-leading,1.4);letter-spacing:var(--tw-tracking,.04em);--tw-leading:var(--leading-snug);line-height:var(--leading-snug);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);text-transform:uppercase;align-items:center;padding-block:2px;padding-inline:7px;display:inline-flex}.badge-feature{color:var(--feature);background:#818cf81a;border:1px solid #818cf82e;border-radius:3.40282e+38px}.badge-bug{color:var(--bug);background:#f871711a;border:1px solid #f871712e;border-radius:3.40282e+38px}.badge-bug,.badge-refactor{font-size:9px;line-height:var(--tw-leading,1.4);letter-spacing:var(--tw-tracking,.04em);--tw-leading:var(--leading-snug);line-height:var(--leading-snug);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);text-transform:uppercase;align-items:center;padding-block:2px;padding-inline:7px;display:inline-flex}.badge-refactor{color:var(--refactor);background:#fbbf241a;border:1px solid #fbbf242e;border-radius:3.40282e+38px}.card{border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--card-bg);padding:calc(var(--spacing) * 3.5);--tw-shadow:0 1px 2px var(--tw-shadow-color,#0006),0 0 0 1px var(--tw-shadow-color,var(--border)),inset 0 1px 0 var(--tw-shadow-color,#ffffff05);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));--tw-duration:.25s;--tw-ease:cubic-bezier(.16,1,.3,1);border-radius:10px;transition-duration:.25s;transition-timing-function:cubic-bezier(.16,1,.3,1);position:relative}.card:before{content:"";pointer-events:none;top:calc(var(--spacing) * 0);right:calc(var(--spacing) * 2);left:calc(var(--spacing) * 2);background:linear-gradient(90deg,#0000,#ffffff0a,#0000);border-radius:8px;height:1px;position:absolute}.card:hover{--tw-translate-y:calc(3px * -1);translate:var(--tw-translate-x) var(--tw-translate-y);border-color:var(--border-light);--tw-shadow:0 8px 24px var(--tw-shadow-color,#0006),0 0 0 1px var(--tw-shadow-color,var(--border-light)),0 0 40px -12px var(--tw-shadow-color,#6366f114),inset 0 1px 0 var(--tw-shadow-color,#ffffff08);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.glass-overlay{inset:calc(var(--spacing) * 0);z-index:300;background:var(--overlay-bg);-webkit-backdrop-filter:blur(20px)saturate(200%);backdrop-filter:blur(20px)saturate(200%);justify-content:center;align-items:center;animation:overlay-fade-in .25s cubic-bezier(.16,1,.3,1);display:flex;position:fixed}.modal-box{background:var(--modal-bg);border:1px solid var(--glass-border);border-radius:18px;animation:spring-pop .35s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden;box-shadow:0 32px 80px #0009,0 0 0 1px #94a3f214,0 0 120px -40px #6366f11a}.modal-box:before{top:calc(var(--spacing) * 0);background:linear-gradient(90deg,#0000,#818cf833,#0000);height:1px;left:15%;right:15%}.modal-box:after,.modal-box:before{content:"";pointer-events:none;position:absolute}.modal-box:after{z-index:-1;background:radial-gradient(#6366f10a,#0000 70%);width:80%;height:60%;top:-40%;left:50%;transform:translate(-50%)}.progress-bar{background:#94a3f20f;height:3px;overflow:hidden}.progress-bar,.progress-bar-fill{border-radius:3.40282e+38px;position:relative}.progress-bar-fill{height:100%;transition:width .8s cubic-bezier(.16,1,.3,1)}.progress-bar-fill:after{content:"";inset:calc(var(--spacing) * 0);background:linear-gradient(90deg,#0000,#ffffff26,#0000);animation:progress-shimmer 2.5s ease-in-out infinite;position:absolute}.skeleton{background:#94a3f208;border-radius:8px;position:relative;overflow:hidden}.skeleton:after{content:"";inset:calc(var(--spacing) * 0);background:linear-gradient(90deg,#0000 25%,#94a3f20a 50%,#0000 75%);animation:shimmer 2s ease-in-out infinite;position:absolute}.skeleton-element{background:#94a3f20a;border-radius:4px}}@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.-inset-px{inset:-1px}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-\[2px\]{top:-2px}.top-0{top:calc(var(--spacing) * 0)}.top-0\.5{top:calc(var(--spacing) * .5)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-\[15\%\]{top:15%}.top-\[35\%\]{top:35%}.top-\[calc\(100\%\+4px\)\]{top:calc(100% + 4px)}.top-\[calc\(100\%\+6px\)\]{top:calc(100% + 6px)}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-1{right:calc(var(--spacing) * 1)}.right-2{right:calc(var(--spacing) * 2)}.right-2\.5{right:calc(var(--spacing) * 2.5)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-\[10\%\]{right:10%}.right-\[15\%\]{right:15%}.right-\[20\%\]{right:20%}.-bottom-\[2px\]{bottom:-2px}.-bottom-px{bottom:-1px}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-4{bottom:calc(var(--spacing) * 4)}.left-0{left:calc(var(--spacing) * 0)}.left-0\.5{left:calc(var(--spacing) * .5)}.left-1{left:calc(var(--spacing) * 1)}.left-1\/2{left:50%}.left-\[10\%\]{left:10%}.left-\[15\%\]{left:15%}.left-\[20\%\]{left:20%}.left-\[35\%\]{left:35%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.z-\[100\]{z-index:100}.z-\[200\]{z-index:200}.z-\[300\]{z-index:300}.z-\[400\]{z-index:400}.z-\[500\]{z-index:500}.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}}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-2\.5{margin-inline:calc(var(--spacing) * 2.5)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-6{margin-inline:calc(var(--spacing) * 6)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-2{margin-block:calc(var(--spacing) * 2)}.my-\[2px_10px_6px\]{margin-block:2px 10px 6px}.my-\[2px_12px_6px\]{margin-block:2px 12px 6px}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-\[3px\]{margin-top:3px}.mr-0\.5{margin-right:calc(var(--spacing) * .5)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-auto{margin-right:auto}.-mb-0\.5{margin-bottom:calc(var(--spacing) * -.5)}.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-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-7{margin-bottom:calc(var(--spacing) * 7)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-3{margin-left:calc(var(--spacing) * 3)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-8{margin-left:calc(var(--spacing) * 8)}.ml-\[5px\]{margin-left:5px}.ml-\[22px\]{margin-left:22px}.ml-\[52px\]{margin-left:52px}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.\!h-5{height:calc(var(--spacing) * 5)!important}.h-1{height:calc(var(--spacing) * 1)}.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-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.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-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-20{height:calc(var(--spacing) * 20)}.h-\[2px\]{height:2px}.h-\[3px\]{height:3px}.h-\[4px\]{height:4px}.h-\[5px\]{height:5px}.h-\[7px\]{height:7px}.h-\[11px\]{height:11px}.h-\[13px\]{height:13px}.h-\[14px\]{height:14px}.h-\[15px\]{height:15px}.h-\[18px\]{height:18px}.h-\[22px\]{height:22px}.h-\[26px\]{height:26px}.h-\[30\%\]{height:30%}.h-\[70\%\]{height:70%}.h-\[72px\]{height:72px}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-20{max-height:calc(var(--spacing) * 20)}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-\[88vh\]{max-height:88vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[100px\]{max-height:100px}.max-h-\[120px\]{max-height:120px}.max-h-\[180px\]{max-height:180px}.max-h-\[200px\]{max-height:200px}.max-h-\[280px\]{max-height:280px}.max-h-\[320px\]{max-height:320px}.max-h-\[calc\(85vh-52px\)\]{max-height:calc(85vh - 52px)}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-40{min-height:calc(var(--spacing) * 40)}.min-h-\[16px\]{min-height:16px}.min-h-\[24px\]{min-height:24px}.min-h-\[48px\]{min-height:48px}.min-h-\[60px\]{min-height:60px}.min-h-\[90px\]{min-height:90px}.min-h-\[120px\]{min-height:120px}.min-h-\[140px\]{min-height:140px}.min-h-\[300px\]{min-height:300px}.min-h-\[460px\]{min-height:460px}.\!w-5{width:calc(var(--spacing) * 5)!important}.\!w-\[100px\]{width:100px!important}.w-1{width:calc(var(--spacing) * 1)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/2{width:50%}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-4\/5{width:80%}.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-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-40{width:calc(var(--spacing) * 40)}.w-56{width:calc(var(--spacing) * 56)}.w-60{width:calc(var(--spacing) * 60)}.w-80{width:calc(var(--spacing) * 80)}.w-\[5px\]{width:5px}.w-\[6px\]{width:6px}.w-\[7px\]{width:7px}.w-\[11px\]{width:11px}.w-\[15px\]{width:15px}.w-\[18px\]{width:18px}.w-\[22px\]{width:22px}.w-\[26px\]{width:26px}.w-\[30\%\]{width:30%}.w-\[40\%\]{width:40%}.w-\[50px\]{width:50px}.w-\[60px\]{width:60px}.w-\[70\%\]{width:70%}.w-\[90\%\]{width:90%}.w-\[92\%\]{width:92%}.w-\[94\%\]{width:94%}.w-\[95\%\]{width:95%}.w-\[100px\]{width:100px}.w-\[280px\]{width:280px}.w-\[300px\]{width:300px}.w-\[320px\]{width:320px}.w-\[380px\]{width:380px}.w-\[400px\]{width:400px}.w-\[440px\]{width:440px}.w-\[520px\]{width:520px}.w-\[540px\]{width:540px}.w-\[620px\]{width:620px}.w-full{width:100%}.w-px{width:1px}.w-screen{width:100vw}.w-sidebar{width:260px}.w-sidebar-collapsed{width:56px}.max-w-60{max-width:calc(var(--spacing) * 60)}.max-w-\[85\%\]{max-width:85%}.max-w-\[90\%\]{max-width:90%}.max-w-\[90vw\]{max-width:90vw}.max-w-\[92\%\]{max-width:92%}.max-w-\[110px\]{max-width:110px}.max-w-\[160px\]{max-width:160px}.max-w-\[200px\]{max-width:200px}.max-w-\[260px\]{max-width:260px}.max-w-\[360px\]{max-width:360px}.max-w-\[400px\]{max-width:400px}.max-w-\[440px\]{max-width:440px}.max-w-\[520px\]{max-width:520px}.max-w-\[680px\]{max-width:680px}.max-w-\[800px\]{max-width:800px}.max-w-\[920px\]{max-width:920px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[24px\]{min-width:24px}.min-w-\[28px\]{min-width:28px}.min-w-\[100px\]{min-width:100px}.min-w-\[110px\]{min-width:110px}.min-w-\[140px\]{min-width:140px}.min-w-\[160px\]{min-width:160px}.min-w-\[180px\]{min-width:180px}.min-w-\[200px\]{min-width:200px}.min-w-\[220px\]{min-width:220px}.flex-1{flex:1}.flex-\[2\]{flex:2}.flex-\[3\]{flex:3}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1)}.-translate-x-1\/2,.-translate-y-1\/2{translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-\[0\.97\]{scale:.97}.-rotate-45{rotate:-45deg}.rotate-0{rotate:0deg}.rotate-2{rotate:2deg}.rotate-180{rotate:180deg}.rotate-\[2deg\]{rotate:2deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[barSlide_1\.5s_ease-in-out_infinite\]{animation:barSlide 1.5s ease-in-out infinite}.animate-\[dotBounce_1\.4s_ease-in-out_infinite\]{animation:dotBounce 1.4s ease-in-out infinite}.animate-\[spin_0\.8s_cubic-bezier\(0\.4\,0\,0\.2\,1\)_infinite_reverse\]{animation:spin .8s cubic-bezier(.4,0,.2,1) infinite reverse}.animate-agent-in{animation:agent-card-enter .4s cubic-bezier(.16,1,.3,1) both}.animate-bounce{animation:var(--animate-bounce)}.animate-breathe{animation:breathe 2s ease-in-out infinite}.animate-card-in{animation:card-slide-in .25s cubic-bezier(.16,1,.3,1) both}.animate-dot-pulse{animation:sidebar-dot-pulse 2.4s ease-in-out infinite}.animate-fade-in-up{animation:fade-in-up .25s cubic-bezier(.16,1,.3,1)}.animate-filter-in{animation:filter-slide-down .18s cubic-bezier(.16,1,.3,1)}.animate-overlay-in{animation:overlay-fade-in .25s cubic-bezier(.16,1,.3,1)}.animate-post-move{animation:post-move-flash 1s ease-out}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-running-glow{animation:running-glow 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-spring-pop{animation:spring-pop .35s cubic-bezier(.34,1.56,.64,1)}.animate-stagger-in{animation:stagger-slide-in .4s cubic-bezier(.16,1,.3,1) both}.animate-tab-process{animation:tab-process-pulse 2s ease-in-out infinite}.animate-toast-in{animation:toast-slide-in .3s cubic-bezier(.16,1,.3,1)}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.resize-y{resize:vertical}.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-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-\[1fr_70px_70px_60px_40px\]{grid-template-columns:1fr 70px 70px 60px 40px}.grid-cols-\[repeat\(auto-fill\,minmax\(180px\,1fr\)\)\]{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.grid-rows-\[0fr\]{grid-template-rows:0fr}.grid-rows-\[1fr\]{grid-template-rows:1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.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-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-7{gap:calc(var(--spacing) * 7)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-\[3px\]{gap:3px}.gap-\[5px\]{gap:5px}.gap-\[22px\]{gap:22px}.gap-px{gap:1px}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px * var(--tw-divide-x-reverse));border-inline-end-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}:where(.divide-border\/20>:not(:last-child)){border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){:where(.divide-border\/20>:not(:last-child)){border-color:color-mix(in oklab,var(--border) 20%,transparent)}}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap}.overflow-hidden,.truncate{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:.25rem}.rounded-\[3px\]{border-radius:3px}.rounded-\[5px\]{border-radius:5px}.rounded-\[10px\]{border-radius:10px}.rounded-\[13px\]{border-radius:13px}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:14px}.rounded-md{border-radius:10px}.rounded-sm{border-radius:8px}.rounded-xl{border-radius:18px}.rounded-xs{border-radius:4px}.rounded-t-md{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-t-sm{border-top-left-radius:8px;border-top-right-radius:8px}.rounded-b-md{border-bottom-right-radius:10px;border-bottom-left-radius:10px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-\[3px\]{border-style:var(--tw-border-style);border-width:3px}.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-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);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.\!border-accent\/20{border-color:var(--accent)!important}@supports (color:color-mix(in lab,red,red)){.\!border-accent\/20{border-color:color-mix(in oklab,var(--accent) 20%,transparent)!important}}.border-\[rgba\(52\,211\,153\,0\.08\)\]{border-color:#34d39914}.border-\[rgba\(52\,211\,153\,0\.15\)\]{border-color:#34d39926}.border-\[rgba\(96\,165\,250\,0\.08\)\]{border-color:#60a5fa14}.border-\[rgba\(99\,102\,241\,0\.1\)\]{border-color:#6366f11a}.border-\[rgba\(99\,102\,241\,0\.2\)\]{border-color:#6366f133}.border-\[rgba\(99\,102\,241\,0\.06\)\]{border-color:#6366f10f}.border-\[rgba\(99\,102\,241\,0\.12\)\]{border-color:#6366f11f}.border-\[rgba\(99\,102\,241\,0\.15\)\]{border-color:#6366f126}.border-\[rgba\(99\,102\,241\,0\.25\)\]{border-color:#6366f140}.border-\[rgba\(148\,163\,242\,0\.1\)\]{border-color:#94a3f21a}.border-\[rgba\(148\,163\,242\,0\.03\)\]{border-color:#94a3f208}.border-\[rgba\(148\,163\,242\,0\.04\)\]{border-color:#94a3f20a}.border-\[rgba\(148\,163\,242\,0\.06\)\]{border-color:#94a3f20f}.border-\[rgba\(148\,163\,242\,0\.08\)\]{border-color:#94a3f214}.border-\[rgba\(248\,113\,113\,0\.2\)\]{border-color:#f8717133}.border-\[rgba\(248\,113\,113\,0\.3\)\]{border-color:#f871714d}.border-\[rgba\(251\,191\,36\,0\.15\)\]{border-color:#fbbf2426}.border-accent{border-color:var(--accent)}.border-accent-dim{border-color:var(--accent-dim)}.border-accent\/10{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/10{border-color:color-mix(in oklab,var(--accent) 10%,transparent)}}.border-accent\/15{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/15{border-color:color-mix(in oklab,var(--accent) 15%,transparent)}}.border-accent\/20{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/20{border-color:color-mix(in oklab,var(--accent) 20%,transparent)}}.border-accent\/25{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/25{border-color:color-mix(in oklab,var(--accent) 25%,transparent)}}.border-accent\/30{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/30{border-color:color-mix(in oklab,var(--accent) 30%,transparent)}}.border-accent\/40{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-accent\/40{border-color:color-mix(in oklab,var(--accent) 40%,transparent)}}.border-border{border-color:var(--border)}.border-border-light{border-color:var(--border-light)}.border-border\/20{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/20{border-color:color-mix(in oklab,var(--border) 20%,transparent)}}.border-border\/30{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/30{border-color:color-mix(in oklab,var(--border) 30%,transparent)}}.border-border\/40{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/40{border-color:color-mix(in oklab,var(--border) 40%,transparent)}}.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/50{border-color:color-mix(in oklab,var(--border) 50%,transparent)}}.border-border\/60{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/60{border-color:color-mix(in oklab,var(--border) 60%,transparent)}}.border-bug\/20{border-color:var(--bug)}@supports (color:color-mix(in lab,red,red)){.border-bug\/20{border-color:color-mix(in oklab,var(--bug) 20%,transparent)}}.border-danger\/20{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.border-danger\/20{border-color:color-mix(in oklab,var(--danger) 20%,transparent)}}.border-danger\/30{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.border-danger\/30{border-color:color-mix(in oklab,var(--danger) 30%,transparent)}}.border-emerald-500\/35{border-color:#00bb7f59}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/35{border-color:color-mix(in oklab,var(--color-emerald-500) 35%,transparent)}}.border-feature\/20{border-color:var(--feature)}@supports (color:color-mix(in lab,red,red)){.border-feature\/20{border-color:color-mix(in oklab,var(--feature) 20%,transparent)}}.border-glass-border{border-color:var(--glass-border)}.border-indigo-500\/12{border-color:#625fff1f}@supports (color:color-mix(in lab,red,red)){.border-indigo-500\/12{border-color:color-mix(in oklab,var(--color-indigo-500) 12%,transparent)}}.border-info\/20{border-color:var(--info)}@supports (color:color-mix(in lab,red,red)){.border-info\/20{border-color:color-mix(in oklab,var(--info) 20%,transparent)}}.border-input-border{border-color:var(--input-border)}.border-refactor\/20{border-color:var(--refactor)}@supports (color:color-mix(in lab,red,red)){.border-refactor\/20{border-color:color-mix(in oklab,var(--refactor) 20%,transparent)}}.border-success-dim{border-color:var(--success-dim)}.border-success\/20{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.border-success\/20{border-color:color-mix(in oklab,var(--success) 20%,transparent)}}.border-text{border-color:var(--text)}.border-text-muted\/20{border-color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.border-text-muted\/20{border-color:color-mix(in oklab,var(--text-muted) 20%,transparent)}}.border-transparent{border-color:#0000}.border-warning,.border-warning\/20{border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.border-warning\/20{border-color:color-mix(in oklab,var(--warning) 20%,transparent)}}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.border-t-\[var\(--accent-hover\)\]{border-top-color:var(--accent-hover)}.border-t-accent,.border-t-accent\/50{border-top-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.border-t-accent\/50{border-top-color:color-mix(in oklab,var(--accent) 50%,transparent)}}.border-t-white{border-top-color:var(--color-white)}.border-r-\[var\(--accent-hover\)\]{border-right-color:var(--accent-hover)}.border-b-\[rgba\(148\,163\,242\,0\.1\)\]{border-bottom-color:#94a3f21a}.border-b-\[rgba\(148\,163\,242\,0\.03\)\]{border-bottom-color:#94a3f208}.border-b-accent{border-bottom-color:var(--accent)}.border-b-transparent{border-bottom-color:#0000}.border-l-accent{border-left-color:var(--accent)}.border-l-bug{border-left-color:var(--bug)}.border-l-danger{border-left-color:var(--danger)}.border-l-feature{border-left-color:var(--feature)}.border-l-refactor{border-left-color:var(--refactor)}.border-l-success{border-left-color:var(--success)}.\!bg-accent-muted{background-color:var(--accent-muted)!important}.\!bg-emerald-500{background-color:var(--color-emerald-500)!important}.bg-\[\#28c840\]{background-color:#28c840}.bg-\[\#febc2e\]{background-color:#febc2e}.bg-\[\#ff5f57\]{background-color:#ff5f57}.bg-\[rgba\(6\,6\,10\,0\.7\)\]{background-color:#06060ab3}.bg-\[rgba\(96\,165\,250\,0\.05\)\]{background-color:#60a5fa0d}.bg-\[rgba\(96\,165\,250\,0\.08\)\]{background-color:#60a5fa14}.bg-\[rgba\(99\,102\,241\,0\.03\)\]{background-color:#6366f108}.bg-\[rgba\(99\,102\,241\,0\.04\)\]{background-color:#6366f10a}.bg-\[rgba\(99\,102\,241\,0\.06\)\]{background-color:#6366f10f}.bg-\[rgba\(99\,102\,241\,0\.08\)\]{background-color:#6366f114}.bg-\[rgba\(148\,163\,242\,0\.1\)\]{background-color:#94a3f21a}.bg-\[rgba\(148\,163\,242\,0\.04\)\]{background-color:#94a3f20a}.bg-\[rgba\(148\,163\,242\,0\.06\)\]{background-color:#94a3f20f}.bg-\[rgba\(251\,191\,36\,0\.04\)\]{background-color:#fbbf240a}.bg-\[var\(--console-bg\)\]{background-color:var(--console-bg)}.bg-\[var\(--modal-bg\,var\(--surface-elevated\)\)\]{background-color:var(--modal-bg,var(--surface-elevated))}.bg-accent{background-color:var(--accent)}.bg-accent-muted{background-color:var(--accent-muted)}.bg-accent\/5{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/5{background-color:color-mix(in oklab,var(--accent) 5%,transparent)}}.bg-accent\/8{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/8{background-color:color-mix(in oklab,var(--accent) 8%,transparent)}}.bg-accent\/10{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/10{background-color:color-mix(in oklab,var(--accent) 10%,transparent)}}.bg-accent\/15{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/15{background-color:color-mix(in oklab,var(--accent) 15%,transparent)}}.bg-accent\/20{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/20{background-color:color-mix(in oklab,var(--accent) 20%,transparent)}}.bg-accent\/40{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/40{background-color:color-mix(in oklab,var(--accent) 40%,transparent)}}.bg-accent\/50{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/50{background-color:color-mix(in oklab,var(--accent) 50%,transparent)}}.bg-accent\/\[0\.02\]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/\[0\.02\]{background-color:color-mix(in oklab,var(--accent) 2%,transparent)}}.bg-accent\/\[0\.03\]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/\[0\.03\]{background-color:color-mix(in oklab,var(--accent) 3%,transparent)}}.bg-accent\/\[0\.04\]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/\[0\.04\]{background-color:color-mix(in oklab,var(--accent) 4%,transparent)}}.bg-accent\/\[0\.06\]{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/\[0\.06\]{background-color:color-mix(in oklab,var(--accent) 6%,transparent)}}.bg-bg{background-color:var(--bg)}.bg-bg-subtle,.bg-bg-subtle\/30{background-color:var(--bg-subtle)}@supports (color:color-mix(in lab,red,red)){.bg-bg-subtle\/30{background-color:color-mix(in oklab,var(--bg-subtle) 30%,transparent)}}.bg-bg\/50{background-color:var(--bg)}@supports (color:color-mix(in lab,red,red)){.bg-bg\/50{background-color:color-mix(in oklab,var(--bg) 50%,transparent)}}.bg-border,.bg-border\/30{background-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.bg-border\/30{background-color:color-mix(in oklab,var(--border) 30%,transparent)}}.bg-bug,.bg-bug\/10{background-color:var(--bug)}@supports (color:color-mix(in lab,red,red)){.bg-bug\/10{background-color:color-mix(in oklab,var(--bug) 10%,transparent)}}.bg-card{background-color:var(--card-bg)}.bg-danger{background-color:var(--danger)}.bg-danger-dim{background-color:var(--danger-dim)}.bg-emerald-400{background-color:var(--color-emerald-400)}.bg-feature,.bg-feature\/10{background-color:var(--feature)}@supports (color:color-mix(in lab,red,red)){.bg-feature\/10{background-color:color-mix(in oklab,var(--feature) 10%,transparent)}}.bg-glass{background-color:var(--glass)}.bg-input{background-color:var(--input-bg)}.bg-modal{background-color:var(--modal-bg)}.bg-overlay{background-color:var(--overlay-bg)}.bg-pill{background-color:var(--pill-bg)}.bg-refactor,.bg-refactor\/10{background-color:var(--refactor)}@supports (color:color-mix(in lab,red,red)){.bg-refactor\/10{background-color:color-mix(in oklab,var(--refactor) 10%,transparent)}}.bg-success{background-color:var(--success)}.bg-success-dim{background-color:var(--success-dim)}.bg-success\/10{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,var(--success) 10%,transparent)}}.bg-success\/50{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/50{background-color:color-mix(in oklab,var(--success) 50%,transparent)}}.bg-success\/\[0\.02\]{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/\[0\.02\]{background-color:color-mix(in oklab,var(--success) 2%,transparent)}}.bg-surface{background-color:var(--surface)}.bg-surface-elevated{background-color:var(--surface-elevated)}.bg-surface\/20{background-color:var(--surface)}@supports (color:color-mix(in lab,red,red)){.bg-surface\/20{background-color:color-mix(in oklab,var(--surface) 20%,transparent)}}.bg-surface\/30{background-color:var(--surface)}@supports (color:color-mix(in lab,red,red)){.bg-surface\/30{background-color:color-mix(in oklab,var(--surface) 30%,transparent)}}.bg-surface\/40{background-color:var(--surface)}@supports (color:color-mix(in lab,red,red)){.bg-surface\/40{background-color:color-mix(in oklab,var(--surface) 40%,transparent)}}.bg-surface\/50{background-color:var(--surface)}@supports (color:color-mix(in lab,red,red)){.bg-surface\/50{background-color:color-mix(in oklab,var(--surface) 50%,transparent)}}.bg-surface\/80{background-color:var(--surface)}@supports (color:color-mix(in lab,red,red)){.bg-surface\/80{background-color:color-mix(in oklab,var(--surface) 80%,transparent)}}.bg-text-muted,.bg-text-muted\/30{background-color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.bg-text-muted\/30{background-color:color-mix(in oklab,var(--text-muted) 30%,transparent)}}.bg-transparent{background-color:#0000}.bg-warning{background-color:var(--warning)}.bg-warning-dim{background-color:var(--warning-dim)}.bg-warning\/10{background-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background-color:color-mix(in oklab,var(--warning) 10%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab}.bg-gradient-to-b,.bg-gradient-to-br{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-\[var\(--accent-hover\)\]{--tw-gradient-from:var(--accent-hover);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-accent{--tw-gradient-from:var(--accent);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-amber-400{--tw-gradient-from:var(--color-amber-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-bg-subtle{--tw-gradient-from:var(--bg-subtle);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-cyan-400{--tw-gradient-from:var(--color-cyan-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-emerald-400{--tw-gradient-from:var(--color-emerald-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-emerald-600{--tw-gradient-from:var(--color-emerald-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-emerald-800{--tw-gradient-from:var(--color-emerald-800);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-green-400{--tw-gradient-from:var(--color-green-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-indigo-400{--tw-gradient-from:var(--color-indigo-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-indigo-500{--tw-gradient-from:var(--color-indigo-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-indigo-600{--tw-gradient-from:var(--color-indigo-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-indigo-800{--tw-gradient-from:var(--color-indigo-800);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-pink-400{--tw-gradient-from:var(--color-pink-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-purple-400{--tw-gradient-from:var(--color-purple-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-red-400{--tw-gradient-from:var(--color-red-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-transparent{--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-yellow-400{--tw-gradient-from:var(--color-yellow-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-\[rgba\(129\,140\,248\,0\.2\)\]{--tw-gradient-via:#818cf833;--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-\[rgba\(129\,140\,248\,0\.12\)\]{--tw-gradient-via:#818cf81f;--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-\[var\(--accent-hover\)\]{--tw-gradient-via:var(--accent-hover);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-border-glow{--tw-gradient-via:var(--border-glow);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-white\/\[0\.04\]{--tw-gradient-via:#ffffff0a}@supports (color:color-mix(in lab,red,red)){.via-white\/\[0\.04\]{--tw-gradient-via:color-mix(in oklab,var(--color-white) 4%,transparent)}}.via-white\/\[0\.04\]{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-accent{--tw-gradient-to:var(--accent);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-amber-500{--tw-gradient-to:var(--color-amber-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-bg{--tw-gradient-to:var(--bg);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-blue-500{--tw-gradient-to:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-emerald-400{--tw-gradient-to:var(--color-emerald-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-emerald-500{--tw-gradient-to:var(--color-emerald-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-emerald-600{--tw-gradient-to:var(--color-emerald-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-indigo-400{--tw-gradient-to:var(--color-indigo-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-indigo-600{--tw-gradient-to:var(--color-indigo-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-orange-600{--tw-gradient-to:var(--color-orange-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-rose-600{--tw-gradient-to:var(--color-rose-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-rose-700{--tw-gradient-to:var(--color-rose-700);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-teal-600{--tw-gradient-to:var(--color-teal-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-violet-600{--tw-gradient-to:var(--color-violet-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.\!p-0\.5{padding:calc(var(--spacing) * .5)!important}.p-0{padding:calc(var(--spacing) * 0)}.p-0\.5{padding:calc(var(--spacing) * .5)}.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-3\.5{padding:calc(var(--spacing) * 3.5)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.p-\[3px\]{padding:3px}.px-0{padding-inline:calc(var(--spacing) * 0)}.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-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.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-7{padding-inline:calc(var(--spacing) * 7)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-9{padding-inline:calc(var(--spacing) * 9)}.px-\[5px\]{padding-inline:5px}.px-\[7px\]{padding-inline:7px}.px-\[11px\]{padding-inline:11px}.px-\[18px\]{padding-inline:18px}.px-\[var\(--space-lg\,24px\)\]{padding-inline:var(--space-lg,24px)}.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-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-\[2px\]{padding-block:2px}.py-\[3px\]{padding-block:3px}.py-\[5px\]{padding-block:5px}.py-\[6px\]{padding-block:6px}.py-\[7px\]{padding-block:7px}.py-\[22px\]{padding-block:22px}.py-px{padding-block:1px}.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-2\.5{padding-top:calc(var(--spacing) * 2.5)}.pt-3\.5{padding-top:calc(var(--spacing) * 3.5)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-\[20vh\]{padding-top:20vh}.pt-\[60px\]{padding-top:60px}.pr-3{padding-right:calc(var(--spacing) * 3)}.pb-0\.5{padding-bottom:calc(var(--spacing) * .5)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-2\.5{padding-bottom:calc(var(--spacing) * 2.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-5{padding-bottom:calc(var(--spacing) * 5)}.pb-\[18px\]{padding-bottom:18px}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-3\.5{padding-left:calc(var(--spacing) * 3.5)}.pl-\[15px\]{padding-left:15px}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.\!font-mono{font-family:JetBrains Mono,Consolas,SF Mono,monospace!important}.font-mono{font-family:JetBrains Mono,Consolas,SF Mono,monospace}.\!text-label{font-size:11px!important;line-height:var(--tw-leading,1.5)!important;letter-spacing:var(--tw-tracking,.06em)!important}.text-body{font-size:13px;line-height:var(--tw-leading,1.55);letter-spacing:var(--tw-tracking,-.01em)}.text-data{font-size:10px;line-height:var(--tw-leading,1.6);letter-spacing:var(--tw-tracking,.02em)}.text-h1{font-size:20px;line-height:var(--tw-leading,1.3);letter-spacing:var(--tw-tracking,-.03em)}.text-h2{font-size:15px;line-height:var(--tw-leading,1.4);letter-spacing:var(--tw-tracking,-.02em)}.text-label{font-size:11px;line-height:var(--tw-leading,1.5);letter-spacing:var(--tw-tracking,.06em)}.text-xxs{font-size:9px;line-height:var(--tw-leading,1.4);letter-spacing:var(--tw-tracking,.04em)}.\!text-xs{font-size:var(--text-xs)!important;line-height:var(--tw-leading,var(--text-xs--line-height))!important}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[7px\]{font-size:7px}.text-\[8px\]{font-size:8px}.text-\[9px\]{font-size:9px}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[22px\]{font-size:22px}.text-\[26px\]{font-size:26px}.text-\[44px\]{font-size:44px}.\!leading-\[1\.6\]{--tw-leading:1.6!important;line-height:1.6!important}.leading-\[1\.3\]{--tw-leading:1.3;line-height:1.3}.leading-\[1\.4\]{--tw-leading:1.4;line-height:1.4}.leading-\[1\.5\]{--tw-leading:1.5;line-height:1.5}.leading-\[1\.7\]{--tw-leading:1.7;line-height:1.7}.leading-\[1\.8\]{--tw-leading:1.8;line-height:1.8}.leading-\[1\.65\]{--tw-leading:1.65;line-height:1.65}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.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-light{--tw-font-weight:var(--font-weight-light);font-weight:var(--font-weight-light)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.01em\]{--tw-tracking:-.01em;letter-spacing:-.01em}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-\[0\.01em\]{--tw-tracking:.01em;letter-spacing:.01em}.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\.06em\]{--tw-tracking:.06em;letter-spacing:.06em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-\[0\.15em\]{--tw-tracking:.15em;letter-spacing:.15em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.\!text-accent{color:var(--accent)!important}.\!text-text-muted{color:var(--text-muted)!important}.text-\[var\(--accent-hover\)\]{color:var(--accent-hover)}.text-accent{color:var(--accent)}.text-accent-dim{color:var(--accent-dim)}.text-accent\/20{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.text-accent\/20{color:color-mix(in oklab,var(--accent) 20%,transparent)}}.text-accent\/30{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.text-accent\/30{color:color-mix(in oklab,var(--accent) 30%,transparent)}}.text-accent\/40{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.text-accent\/40{color:color-mix(in oklab,var(--accent) 40%,transparent)}}.text-accent\/50{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.text-accent\/50{color:color-mix(in oklab,var(--accent) 50%,transparent)}}.text-accent\/60{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.text-accent\/60{color:color-mix(in oklab,var(--accent) 60%,transparent)}}.text-accent\/70{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.text-accent\/70{color:color-mix(in oklab,var(--accent) 70%,transparent)}}.text-accent\/80{color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.text-accent\/80{color:color-mix(in oklab,var(--accent) 80%,transparent)}}.text-bug{color:var(--bug)}.text-danger{color:var(--danger)}.text-emerald-400{color:var(--color-emerald-400)}.text-emerald-400\/60{color:#00d29499}@supports (color:color-mix(in lab,red,red)){.text-emerald-400\/60{color:color-mix(in oklab,var(--color-emerald-400) 60%,transparent)}}.text-feature,.text-feature\/70{color:var(--feature)}@supports (color:color-mix(in lab,red,red)){.text-feature\/70{color:color-mix(in oklab,var(--feature) 70%,transparent)}}.text-info{color:var(--info)}.text-refactor{color:var(--refactor)}.text-success,.text-success\/40{color:var(--success)}@supports (color:color-mix(in lab,red,red)){.text-success\/40{color:color-mix(in oklab,var(--success) 40%,transparent)}}.text-success\/50{color:var(--success)}@supports (color:color-mix(in lab,red,red)){.text-success\/50{color:color-mix(in oklab,var(--success) 50%,transparent)}}.text-success\/60{color:var(--success)}@supports (color:color-mix(in lab,red,red)){.text-success\/60{color:color-mix(in oklab,var(--success) 60%,transparent)}}.text-success\/70{color:var(--success)}@supports (color:color-mix(in lab,red,red)){.text-success\/70{color:color-mix(in oklab,var(--success) 70%,transparent)}}.text-text{color:var(--text)}.text-text-muted,.text-text-muted\/20{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.text-text-muted\/20{color:color-mix(in oklab,var(--text-muted) 20%,transparent)}}.text-text-muted\/25{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.text-text-muted\/25{color:color-mix(in oklab,var(--text-muted) 25%,transparent)}}.text-text-muted\/30{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.text-text-muted\/30{color:color-mix(in oklab,var(--text-muted) 30%,transparent)}}.text-text-muted\/40{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.text-text-muted\/40{color:color-mix(in oklab,var(--text-muted) 40%,transparent)}}.text-text-muted\/50{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.text-text-muted\/50{color:color-mix(in oklab,var(--text-muted) 50%,transparent)}}.text-text-muted\/60{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.text-text-muted\/60{color:color-mix(in oklab,var(--text-muted) 60%,transparent)}}.text-text-secondary{color:var(--text-secondary)}.text-warning,.text-warning\/60{color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.text-warning\/60{color:color-mix(in oklab,var(--warning) 60%,transparent)}}.text-warning\/70{color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.text-warning\/70{color:color-mix(in oklab,var(--warning) 70%,transparent)}}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.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,)}.line-through{text-decoration-line:line-through}.accent-accent{accent-color:var(--accent)}.opacity-0{opacity:0}.opacity-15{opacity:.15}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-35{opacity:.35}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-100{opacity:1}.shadow-\[0_0_0_0_transparent\]{--tw-shadow:0 0 0 0 var(--tw-shadow-color,transparent)}.shadow-\[0_0_0_0_transparent\],.shadow-\[0_0_0_4px_var\(--accent-muted\)\,0_0_12px_var\(--accent-glow\)\]{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_4px_var\(--accent-muted\)\,0_0_12px_var\(--accent-glow\)\]{--tw-shadow:0 0 0 4px var(--tw-shadow-color,var(--accent-muted)),0 0 12px var(--tw-shadow-color,var(--accent-glow))}.shadow-\[0_0_6px_currentColor\]{--tw-shadow:0 0 6px var(--tw-shadow-color,currentColor)}.shadow-\[0_0_6px_currentColor\],.shadow-\[0_0_6px_rgba\(52\,211\,153\,0\.4\)\]{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_6px_rgba\(52\,211\,153\,0\.4\)\]{--tw-shadow:0 0 6px var(--tw-shadow-color,#34d39966)}.shadow-\[0_0_6px_rgba\(52\,211\,153\,0\.5\)\]{--tw-shadow:0 0 6px var(--tw-shadow-color,#34d39980)}.shadow-\[0_0_6px_rgba\(52\,211\,153\,0\.5\)\],.shadow-\[0_0_6px_var\(--accent-glow\)\]{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_6px_var\(--accent-glow\)\]{--tw-shadow:0 0 6px var(--tw-shadow-color,var(--accent-glow))}.shadow-\[0_0_8px_currentColor\]{--tw-shadow:0 0 8px var(--tw-shadow-color,currentColor)}.shadow-\[0_0_8px_currentColor\],.shadow-\[0_0_8px_rgba\(52\,211\,153\,0\.1\)\]{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_8px_rgba\(52\,211\,153\,0\.1\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#34d3991a)}.shadow-\[0_0_8px_rgba\(52\,211\,153\,0\.4\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#34d39966)}.shadow-\[0_0_8px_rgba\(52\,211\,153\,0\.4\)\],.shadow-\[0_0_8px_rgba\(52\,211\,153\,0\.5\)\]{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_8px_rgba\(52\,211\,153\,0\.5\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#34d39980)}.shadow-\[0_0_8px_rgba\(99\,102\,241\,0\.1\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#6366f11a)}.shadow-\[0_0_8px_rgba\(99\,102\,241\,0\.1\)\],.shadow-\[0_0_8px_rgba\(99\,102\,241\,0\.4\)\]{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_8px_rgba\(99\,102\,241\,0\.4\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#6366f166)}.shadow-\[0_0_8px_rgba\(99\,102\,241\,0\.06\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#6366f10f);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_8px_rgba\(99\,102\,241\,0\.15\)\,inset_0_0_6px_rgba\(99\,102\,241\,0\.06\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#6366f126),inset 0 0 6px var(--tw-shadow-color,#6366f10f);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_8px_var\(--accent-glow\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,var(--accent-glow))}.shadow-\[0_0_10px_rgba\(16\,185\,129\,0\.3\)\,0_0_20px_rgba\(16\,185\,129\,0\.1\)\],.shadow-\[0_0_8px_var\(--accent-glow\)\]{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_10px_rgba\(16\,185\,129\,0\.3\)\,0_0_20px_rgba\(16\,185\,129\,0\.1\)\]{--tw-shadow:0 0 10px var(--tw-shadow-color,#10b9814d),0 0 20px var(--tw-shadow-color,#10b9811a)}.shadow-\[0_0_10px_rgba\(99\,102\,241\,0\.4\)\]{--tw-shadow:0 0 10px var(--tw-shadow-color,#6366f166)}.shadow-\[0_0_10px_rgba\(99\,102\,241\,0\.4\)\],.shadow-\[0_0_12px_rgba\(99\,102\,241\,0\.5\)\]{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_12px_rgba\(99\,102\,241\,0\.5\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#6366f180)}.shadow-\[0_0_12px_rgba\(99\,102\,241\,0\.06\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#6366f10f)}.shadow-\[0_0_12px_rgba\(99\,102\,241\,0\.06\)\],.shadow-\[0_0_12px_rgba\(99\,102\,241\,0\.08\)\]{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_12px_rgba\(99\,102\,241\,0\.08\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#6366f114)}.shadow-\[0_0_12px_rgba\(99\,102\,241\,0\.15\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,#6366f126)}.shadow-\[0_0_12px_rgba\(99\,102\,241\,0\.15\)\],.shadow-\[0_0_12px_var\(--accent-glow\)\]{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_12px_var\(--accent-glow\)\]{--tw-shadow:0 0 12px var(--tw-shadow-color,var(--accent-glow))}.shadow-\[0_0_16px_rgba\(99\,102\,241\,0\.12\)\]{--tw-shadow:0 0 16px var(--tw-shadow-color,#6366f11f)}.shadow-\[0_0_16px_rgba\(99\,102\,241\,0\.12\)\],.shadow-\[0_0_20px_rgba\(99\,102\,241\,0\.2\)\]{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_20px_rgba\(99\,102\,241\,0\.2\)\]{--tw-shadow:0 0 20px var(--tw-shadow-color,#6366f133)}.shadow-\[0_0_20px_rgba\(99\,102\,241\,0\.4\)\]{--tw-shadow:0 0 20px var(--tw-shadow-color,#6366f166)}.shadow-\[0_0_20px_rgba\(99\,102\,241\,0\.15\)\],.shadow-\[0_0_20px_rgba\(99\,102\,241\,0\.4\)\]{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_20px_rgba\(99\,102\,241\,0\.15\)\]{--tw-shadow:0 0 20px var(--tw-shadow-color,#6366f126)}.shadow-\[0_2px_6px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow:0 2px 6px var(--tw-shadow-color,#0000004d)}.shadow-\[0_2px_6px_rgba\(0\,0\,0\,0\.3\)\],.shadow-\[0_8px_24px_rgba\(0\,0\,0\,0\.4\)\]{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_8px_24px_rgba\(0\,0\,0\,0\.4\)\]{--tw-shadow:0 8px 24px var(--tw-shadow-color,#0006)}.shadow-\[0_12px_40px_rgba\(0\,0\,0\,0\.4\)\]{--tw-shadow:0 12px 40px var(--tw-shadow-color,#0006);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_16px_48px_rgba\(0\,0\,0\,0\.5\)\,0_0_0_1px_rgba\(99\,102\,241\,0\.05\)\]{--tw-shadow:0 16px 48px var(--tw-shadow-color,#00000080),0 0 0 1px var(--tw-shadow-color,#6366f10d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[inset_0_0_30px_rgba\(99\,102\,241\,0\.03\)\]{--tw-shadow:inset 0 0 30px var(--tw-shadow-color,#6366f108)}.shadow-\[inset_0_0_30px_rgba\(99\,102\,241\,0\.03\)\],.shadow-\[inset_0_1px_4px_rgba\(0\,0\,0\,0\.15\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[inset_0_1px_4px_rgba\(0\,0\,0\,0\.15\)\]{--tw-shadow:inset 0 1px 4px var(--tw-shadow-color,#00000026)}.shadow-\[inset_0_2px_6px_rgba\(0\,0\,0\,0\.1\)\]{--tw-shadow:inset 0 2px 6px var(--tw-shadow-color,#0000001a)}.shadow-\[inset_0_2px_6px_rgba\(0\,0\,0\,0\.1\)\],.shadow-\[inset_0_2px_6px_rgba\(0\,0\,0\,0\.3\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[inset_0_2px_6px_rgba\(0\,0\,0\,0\.3\)\]{--tw-shadow:inset 0 2px 6px var(--tw-shadow-color,#0000004d)}.shadow-\[inset_3px_0_8px_rgba\(99\,102\,241\,0\.1\)\]{--tw-shadow:inset 3px 0 8px var(--tw-shadow-color,#6366f11a)}.shadow-\[inset_3px_0_8px_rgba\(99\,102\,241\,0\.1\)\],.shadow-card{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-card{--tw-shadow:0 1px 2px var(--tw-shadow-color,#0006),0 0 0 1px var(--tw-shadow-color,var(--border)),inset 0 1px 0 var(--tw-shadow-color,#ffffff05)}.shadow-drag{--tw-shadow:0 20px 60px var(--tw-shadow-color,#00000080),0 0 0 2px var(--tw-shadow-color,var(--accent)),0 0 40px var(--tw-shadow-color,#6366f126)}.shadow-drag,.shadow-elevated{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-elevated{--tw-shadow:0 12px 40px var(--tw-shadow-color,#00000080),0 0 0 1px var(--tw-shadow-color,var(--glass-border))}.shadow-inset{--tw-shadow:inset 0 1px 3px var(--tw-shadow-color,#00000026)}.shadow-inset,.shadow-modal{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-modal{--tw-shadow:0 32px 80px var(--tw-shadow-color,#0009),0 0 0 1px var(--tw-shadow-color,#94a3f214),0 0 120px -40px var(--tw-shadow-color,#6366f11a)}.shadow-none{--tw-shadow:0 0 #0000}.ring-1,.shadow-none{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.ring-accent\/15{--tw-ring-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ring-accent\/15{--tw-ring-color:color-mix(in oklab,var(--accent) 15%,transparent)}}.ring-accent\/20{--tw-ring-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ring-accent\/20{--tw-ring-color:color-mix(in oklab,var(--accent) 20%,transparent)}}.outline{outline-width:1px}.outline,.outline-\[1\.5px\]{outline-style:var(--tw-outline-style)}.outline-\[1\.5px\]{outline-width:1.5px}.-outline-offset-1{outline-offset:calc(1px * -1)}.outline-\[rgba\(99\,102\,241\,0\.2\)\]{outline-color:#6366f133}.blur-\[20px\]{--tw-blur:blur(20px)}.blur-\[20px\],.blur-\[24px\]{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,)}.blur-\[24px\]{--tw-blur:blur(24px)}.drop-shadow-\[0_0_4px_currentColor\]{--tw-drop-shadow-size:drop-shadow(0 0 4px var(--tw-drop-shadow-color,currentColor));--tw-drop-shadow:var(--tw-drop-shadow-size)}.drop-shadow-\[0_0_4px_currentColor\],.drop-shadow-\[0_0_4px_var\(--accent-glow\)\]{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,)}.drop-shadow-\[0_0_4px_var\(--accent-glow\)\]{--tw-drop-shadow-size:drop-shadow(0 0 4px var(--tw-drop-shadow-color,var(--accent-glow)));--tw-drop-shadow:var(--tw-drop-shadow-size)}.drop-shadow-\[0_0_6px_var\(--accent-glow\)\]{--tw-drop-shadow-size:drop-shadow(0 0 6px var(--tw-drop-shadow-color,var(--accent-glow)));--tw-drop-shadow:var(--tw-drop-shadow-size)}.drop-shadow-\[0_0_6px_var\(--accent-glow\)\],.saturate-\[180\%\]{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,)}.saturate-\[180\%\]{--tw-saturate:saturate(180%)}.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,)}.backdrop-blur-\[12px\]{--tw-backdrop-blur:blur(12px)}.backdrop-blur-\[12px\],.backdrop-blur-\[16px\]{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-\[16px\]{--tw-backdrop-blur:blur(16px)}.backdrop-blur-glass{--tw-backdrop-blur:blur(20px)}.backdrop-blur-glass,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm))}.backdrop-saturate-\[160\%\]{--tw-backdrop-saturate:saturate(160%)}.backdrop-saturate-\[160\%\],.backdrop-saturate-\[180\%\]{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-saturate-\[180\%\]{--tw-backdrop-saturate:saturate(180%)}.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-\[background\]{transition-property:background;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[height\]{transition-property:height;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-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))}.duration-75{--tw-duration:75ms;transition-duration:75ms}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-120{--tw-duration:.12s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-180{--tw-duration:.18s;transition-duration:.18s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-250{--tw-duration:.25s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-400{--tw-duration:.4s;transition-duration:.4s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.duration-\[180ms\]{--tw-duration:.18s;transition-duration:.18s}.duration-\[280ms\]{--tw-duration:.28s;transition-duration:.28s}.duration-\[800ms\]{--tw-duration:.8s;transition-duration:.8s}.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)}.ease-out-expo{--tw-ease:cubic-bezier(.16,1,.3,1);transition-timing-function:cubic-bezier(.16,1,.3,1)}.outline-dashed{--tw-outline-style:dashed;outline-style:dashed}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:text-accent:is(:where(.group):hover *){color:var(--accent)}.group-hover\/card\:opacity-100:is(:where(.group\/card):hover *),.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.placeholder\:text-text-muted::placeholder,.placeholder\:text-text-muted\/30::placeholder{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.placeholder\:text-text-muted\/30::placeholder{color:color-mix(in oklab,var(--text-muted) 30%,transparent)}}.placeholder\:text-text-muted\/40::placeholder{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.placeholder\:text-text-muted\/40::placeholder{color:color-mix(in oklab,var(--text-muted) 40%,transparent)}}.before\:pointer-events-none:before{content:var(--tw-content);pointer-events:none}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-0:before{content:var(--tw-content);inset:calc(var(--spacing) * 0)}.before\:top-0:before{content:var(--tw-content);top:calc(var(--spacing) * 0)}.before\:right-0:before{content:var(--tw-content);right:calc(var(--spacing) * 0)}.before\:right-2\.5:before{content:var(--tw-content);right:calc(var(--spacing) * 2.5)}.before\:right-\[10\%\]:before{content:var(--tw-content);right:10%}.before\:right-\[15\%\]:before{content:var(--tw-content);right:15%}.before\:right-\[20\%\]:before{content:var(--tw-content);right:20%}.before\:bottom-0:before{content:var(--tw-content);bottom:calc(var(--spacing) * 0)}.before\:left-0:before{content:var(--tw-content);left:calc(var(--spacing) * 0)}.before\:left-2\.5:before{content:var(--tw-content);left:calc(var(--spacing) * 2.5)}.before\:left-\[10\%\]:before{content:var(--tw-content);left:10%}.before\:left-\[15\%\]:before{content:var(--tw-content);left:15%}.before\:left-\[20\%\]:before{content:var(--tw-content);left:20%}.before\:h-\[2px\]:before{content:var(--tw-content);height:2px}.before\:h-px:before{content:var(--tw-content);height:1px}.before\:w-\[3px\]:before{content:var(--tw-content);width:3px}.before\:rounded-t-md:before{content:var(--tw-content);border-top-left-radius:10px;border-top-right-radius:10px}.before\:rounded-l-\[3px\]:before{content:var(--tw-content);border-top-left-radius:3px;border-bottom-left-radius:3px}.before\:rounded-l-md:before{content:var(--tw-content);border-top-left-radius:10px;border-bottom-left-radius:10px}.before\:bg-\[var\(--cat-color\)\]:before{content:var(--tw-content);background-color:var(--cat-color)}.before\:bg-\[var\(--priority-color\)\]:before{content:var(--tw-content);background-color:var(--priority-color)}.before\:bg-gradient-to-b:before{--tw-gradient-position:to bottom in oklab}.before\:bg-gradient-to-b:before,.before\:bg-gradient-to-r:before{content:var(--tw-content);background-image:linear-gradient(var(--tw-gradient-stops))}.before\:bg-gradient-to-r:before{--tw-gradient-position:to right in oklab}.before\:bg-\[linear-gradient\(90deg\,transparent\,rgba\(52\,211\,153\,0\.15\)\,transparent\)\]:before{content:var(--tw-content);background-image:linear-gradient(90deg,#0000,#34d39926,#0000)}.before\:bg-\[linear-gradient\(90deg\,transparent\,rgba\(129\,140\,248\,0\.15\)\,transparent\)\]:before{content:var(--tw-content);background-image:linear-gradient(90deg,#0000,#818cf826,#0000)}.before\:bg-\[linear-gradient\(90deg\,transparent\,rgba\(255\,255\,255\,0\.02\)\,transparent\)\]:before{content:var(--tw-content);background-image:linear-gradient(90deg,#0000,#ffffff05,#0000)}.before\:from-transparent:before{content:var(--tw-content);--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.before\:from-white\/15:before{content:var(--tw-content);--tw-gradient-from:#ffffff26}@supports (color:color-mix(in lab,red,red)){.before\:from-white\/15:before{--tw-gradient-from:color-mix(in oklab,var(--color-white) 15%,transparent)}}.before\:from-white\/15:before{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.before\:\!via-\[rgba\(99\,102\,241\,0\.12\)\]:before{content:var(--tw-content);--tw-gradient-via:#6366f11f!important;--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position)!important;--tw-gradient-stops:var(--tw-gradient-via-stops)!important}.before\:via-\[rgba\(129\,140\,248\,0\.15\)\]:before{content:var(--tw-content);--tw-gradient-via:#818cf826;--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.before\:via-\[rgba\(148\,163\,242\,0\.04\)\]:before{content:var(--tw-content);--tw-gradient-via:#94a3f20a;--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.before\:via-\[rgba\(255\,255\,255\,0\.02\)\]:before{content:var(--tw-content);--tw-gradient-via:#ffffff05;--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.before\:via-white\/\[0\.02\]:before{content:var(--tw-content);--tw-gradient-via:#ffffff05}@supports (color:color-mix(in lab,red,red)){.before\:via-white\/\[0\.02\]:before{--tw-gradient-via:color-mix(in oklab,var(--color-white) 2%,transparent)}}.before\:via-white\/\[0\.02\]:before{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.before\:via-white\/\[0\.03\]:before{content:var(--tw-content);--tw-gradient-via:#ffffff08}@supports (color:color-mix(in lab,red,red)){.before\:via-white\/\[0\.03\]:before{--tw-gradient-via:color-mix(in oklab,var(--color-white) 3%,transparent)}}.before\:via-white\/\[0\.03\]:before{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.before\:via-white\/\[0\.025\]:before{content:var(--tw-content);--tw-gradient-via:#ffffff06}@supports (color:color-mix(in lab,red,red)){.before\:via-white\/\[0\.025\]:before{--tw-gradient-via:color-mix(in oklab,var(--color-white) 2.5%,transparent)}}.before\:via-white\/\[0\.025\]:before{--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.before\:to-transparent:before{content:var(--tw-content);--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.before\:transition-\[background\]:before{content:var(--tw-content);transition-property:background;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.before\:duration-300:before{content:var(--tw-content);--tw-duration:.3s;transition-duration:.3s}.before\:ease-out-expo:before{content:var(--tw-content);--tw-ease:cubic-bezier(.16,1,.3,1);transition-timing-function:cubic-bezier(.16,1,.3,1)}.before\:content-\[\'\'\]:before{--tw-content:"";content:var(--tw-content)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:right-\[5\%\]:after{content:var(--tw-content);right:5%}.after\:bottom-0:after{content:var(--tw-content);bottom:calc(var(--spacing) * 0)}.after\:left-\[5\%\]:after{content:var(--tw-content);left:5%}.after\:h-px:after{content:var(--tw-content);height:1px}.after\:bg-gradient-to-r:after{content:var(--tw-content);--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.after\:bg-\[linear-gradient\(90deg\,transparent\,var\(--border-glow\)\,transparent\)\]:after{content:var(--tw-content);background-image:linear-gradient(90deg,transparent,var(--border-glow),transparent)}.after\:from-transparent:after{content:var(--tw-content);--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.after\:via-border-glow:after{content:var(--tw-content);--tw-gradient-via:var(--border-glow);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-via) var(--tw-gradient-via-position),var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.after\:to-transparent:after{content:var(--tw-content);--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from) var(--tw-gradient-from-position),var(--tw-gradient-to) var(--tw-gradient-to-position))}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.focus-within\:border-accent\/40:focus-within{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.focus-within\:border-accent\/40:focus-within{border-color:color-mix(in oklab,var(--accent) 40%,transparent)}}.focus-within\:shadow-\[0_0_12px_rgba\(99\,102\,241\,0\.06\)\]:focus-within{--tw-shadow:0 0 12px var(--tw-shadow-color,#6366f10f);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){.hover\:translate-x-0\.5:hover{--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:-translate-y-\[3px\]:hover{--tw-translate-y:calc(3px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:-translate-y-px:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:scale-\[1\.2\]:hover{scale:1.2}.hover\:border-\[rgba\(99\,102\,241\,0\.2\)\]:hover{border-color:#6366f133}.hover\:border-\[rgba\(248\,113\,113\,0\.2\)\]:hover{border-color:#f8717133}.hover\:border-accent:hover,.hover\:border-accent\/25:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-accent\/25:hover{border-color:color-mix(in oklab,var(--accent) 25%,transparent)}}.hover\:border-accent\/30:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-accent\/30:hover{border-color:color-mix(in oklab,var(--accent) 30%,transparent)}}.hover\:border-accent\/40:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:border-accent\/40:hover{border-color:color-mix(in oklab,var(--accent) 40%,transparent)}}.hover\:border-border:hover{border-color:var(--border)}.hover\:border-border-light:hover{border-color:var(--border-light)}.hover\:border-border\/80:hover{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.hover\:border-border\/80:hover{border-color:color-mix(in oklab,var(--border) 80%,transparent)}}.hover\:border-danger-dim:hover{border-color:var(--danger-dim)}.hover\:border-danger\/30:hover{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.hover\:border-danger\/30:hover{border-color:color-mix(in oklab,var(--danger) 30%,transparent)}}.hover\:bg-\[rgba\(148\,163\,242\,0\.02\)\]:hover{background-color:#94a3f205}.hover\:bg-accent-muted:hover{background-color:var(--accent-muted)}.hover\:bg-accent\/5:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/5:hover{background-color:color-mix(in oklab,var(--accent) 5%,transparent)}}.hover\:bg-accent\/10:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/10:hover{background-color:color-mix(in oklab,var(--accent) 10%,transparent)}}.hover\:bg-accent\/15:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/15:hover{background-color:color-mix(in oklab,var(--accent) 15%,transparent)}}.hover\:bg-danger-dim:hover{background-color:var(--danger-dim)}.hover\:bg-danger\/5:hover{background-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-danger\/5:hover{background-color:color-mix(in oklab,var(--danger) 5%,transparent)}}.hover\:bg-success-dim:hover{background-color:var(--success-dim)}.hover\:bg-surface:hover{background-color:var(--surface)}.hover\:bg-surface-hover:hover{background-color:var(--surface-hover)}.hover\:bg-surface\/50:hover{background-color:var(--surface)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-surface\/50:hover{background-color:color-mix(in oklab,var(--surface) 50%,transparent)}}.hover\:\!text-danger:hover{color:var(--danger)!important}.hover\:text-accent:hover{color:var(--accent)}.hover\:text-accent-hover:hover{color:var(--accent-hover)}.hover\:text-danger:hover{color:var(--danger)}.hover\:text-success:hover{color:var(--success)}.hover\:text-text:hover{color:var(--text)}.hover\:text-text-secondary:hover{color:var(--text-secondary)}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_8px_rgba\(52\,211\,153\,0\.2\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,#34d39933)}.hover\:shadow-\[0_0_8px_rgba\(52\,211\,153\,0\.2\)\]:hover,.hover\:shadow-\[0_0_8px_var\(--accent-glow\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_8px_var\(--accent-glow\)\]:hover{--tw-shadow:0 0 8px var(--tw-shadow-color,var(--accent-glow))}.hover\:shadow-\[0_0_12px_currentColor\]:hover{--tw-shadow:0 0 12px var(--tw-shadow-color,currentColor)}.hover\:shadow-\[0_0_12px_currentColor\]:hover,.hover\:shadow-\[0_0_16px_rgba\(99\,102\,241\,0\.12\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_16px_rgba\(99\,102\,241\,0\.12\)\]:hover{--tw-shadow:0 0 16px var(--tw-shadow-color,#6366f11f)}.hover\:shadow-\[0_0_16px_rgba\(248\,113\,113\,0\.08\)\]:hover{--tw-shadow:0 0 16px var(--tw-shadow-color,#f8717114)}.hover\:shadow-\[0_0_16px_rgba\(248\,113\,113\,0\.08\)\]:hover,.hover\:shadow-\[0_0_20px_rgba\(52\,211\,153\,0\.25\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_0_20px_rgba\(52\,211\,153\,0\.25\)\]:hover{--tw-shadow:0 0 20px var(--tw-shadow-color,#34d39940)}.hover\:shadow-\[0_0_24px_rgba\(52\,211\,153\,0\.25\)\]:hover{--tw-shadow:0 0 24px var(--tw-shadow-color,#34d39940)}.hover\:shadow-\[0_0_24px_rgba\(52\,211\,153\,0\.25\)\]:hover,.hover\:shadow-\[0_4px_12px_rgba\(0\,0\,0\,0\.2\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_4px_12px_rgba\(0\,0\,0\,0\.2\)\]:hover{--tw-shadow:0 4px 12px var(--tw-shadow-color,#0003)}.hover\:shadow-\[0_8px_20px_rgba\(0\,0\,0\,0\.2\)\]:hover{--tw-shadow:0 8px 20px var(--tw-shadow-color,#0003)}.hover\:shadow-\[0_8px_20px_rgba\(0\,0\,0\,0\.2\)\]:hover,.hover\:shadow-\[0_8px_24px_rgba\(0\,0\,0\,0\.25\)\]:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_8px_24px_rgba\(0\,0\,0\,0\.25\)\]:hover{--tw-shadow:0 8px 24px var(--tw-shadow-color,#00000040)}.hover\:shadow-card-hover:hover{--tw-shadow:0 8px 24px var(--tw-shadow-color,#0006),0 0 0 1px var(--tw-shadow-color,var(--border-light)),0 0 40px -12px var(--tw-shadow-color,#6366f114),inset 0 1px 0 var(--tw-shadow-color,#ffffff08)}.hover\:shadow-card-hover:hover,.hover\:shadow-glow-accent:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-glow-accent:hover{--tw-shadow:0 0 20px var(--tw-shadow-color,#6366f14d),0 4px 12px var(--tw-shadow-color,#0000004d)}}.focus\:border-b:focus{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.focus\:border-\[rgba\(99\,102\,241\,0\.3\)\]:focus{border-color:#6366f14d}.focus\:border-accent\/30:focus{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.focus\:border-accent\/30:focus{border-color:color-mix(in oklab,var(--accent) 30%,transparent)}}.focus\:shadow-\[0_0_16px_rgba\(99\,102\,241\,0\.06\)\]:focus{--tw-shadow:0 0 16px var(--tw-shadow-color,#6366f10f)}.focus\:shadow-\[0_0_16px_rgba\(99\,102\,241\,0\.06\)\]:focus,.focus\:shadow-none:focus{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:shadow-none:focus{--tw-shadow:0 0 #0000}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media (hover:hover){.hover\:enabled\:-translate-y-px:hover:enabled{--tw-translate-y:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:enabled\:bg-accent\/20:hover:enabled{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:enabled\:bg-accent\/20:hover:enabled{background-color:color-mix(in oklab,var(--accent) 20%,transparent)}}.hover\:enabled\:shadow-\[0_0_20px_rgba\(52\,211\,153\,0\.25\)\]:hover:enabled{--tw-shadow:0 0 20px var(--tw-shadow-color,#34d39940);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:enabled\:shadow-\[0_0_24px_rgba\(99\,102\,241\,0\.3\)\]:hover:enabled{--tw-shadow:0 0 24px var(--tw-shadow-color,#6366f14d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.disabled\:transform-none:disabled{transform:none}.disabled\:cursor-default:disabled{cursor:default}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-20:disabled{opacity:.2}.disabled\:opacity-25:disabled{opacity:.25}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:shadow-none:disabled{--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)}.disabled\:saturate-50:disabled{--tw-saturate:saturate(50%);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,)}@media not all and (min-width:48rem){.max-md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-color-scheme:dark){.dark\:text-accent{color:var(--accent)}.dark\:text-text-muted\/60{color:var(--text-muted)}@supports (color:color-mix(in lab,red,red)){.dark\:text-text-muted\/60{color:color-mix(in oklab,var(--text-muted) 60%,transparent)}}@media (hover:hover){.dark\:hover\:text-accent:hover{color:var(--accent)}}}.\[\&_svg\]\:rotate-180 svg{rotate:180deg}.text-gradient{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.surface-gradient{background:linear-gradient(#94a3f205,#0000)}.glow-accent{box-shadow:0 0 40px -12px #6366f11f}.duration-120{transition-duration:.12s}.duration-250{transition-duration:.25s}}:root{--bg:#050509;--bg-subtle:#07070d;--surface:#0b0b13;--surface-hover:#101018;--surface-elevated:#0d0d15;--card-bg:#0c0c14;--border:#94a3f20f;--border-light:#94a3f21f;--border-focus:#6366f18c;--border-glow:#6366f126;--text:#e8e8f0;--text-secondary:#9898a8;--text-muted:#5c5c6e;--accent:#6366f1;--accent-hover:#818cf8;--accent-dim:#4f52c4;--accent-muted:#6366f114;--accent-glow:#6366f140;--accent-gradient:linear-gradient(135deg,#5558e6,#7c7fff);--overlay-bg:#030308cc;--glass:#0c0c14d9;--glass-border:#94a3f214;--shadow-card:0 1px 2px #0006,0 0 0 1px var(--border),inset 0 1px 0 #ffffff05;--shadow-card-hover:0 8px 24px #0006,0 0 0 1px var(--border-light),0 0 40px -12px #6366f114,inset 0 1px 0 #ffffff08;--console-bg:#06060a;--console-fg:#e8e8f0;--console-cursor:#6366f1;--modal-bg:#0a0a12;--modal-border:#94a3f214;--input-bg:#07070d;--input-border:#94a3f20f;--pill-bg:#94a3f20a;--success:#34d399;--success-dim:#34d3991f;--warning:#fbbf24;--warning-dim:#fbbf241f;--danger:#f87171;--danger-dim:#f871711f;--info:#60a5fa;--feature:#818cf8;--bug:#f87171;--refactor:#fbbf24;--priority-urgent:#fb7185;--priority-high:#fbbf24;--priority-medium:#818cf8;--priority-low:#464654}[data-theme=light]{--bg:#f8f8fb;--bg-subtle:#f0f0f5;--surface:#fff;--surface-hover:#f5f5f9;--surface-elevated:#fff;--card-bg:#fff;--border:#00001e0f;--border-light:#00001e1a;--border-focus:#4f46e573;--border-glow:#4f46e514;--text:#0f0f18;--text-secondary:#3d3d4d;--text-muted:#6e6e82;--accent:#4f46e5;--accent-hover:#4338ca;--accent-dim:#6366f1;--accent-muted:#4f46e50f;--accent-glow:#4f46e514;--accent-gradient:linear-gradient(135deg,#4f46e5,#6366f1);--overlay-bg:#00000040;--glass:#ffffffeb;--glass-border:#00001e0f;--shadow-card:0 1px 3px #0000140a,0 0 0 1px #00001e0a;--shadow-card-hover:0 4px 16px #0000140f,0 0 0 1px #00001e0f;--console-bg:#f4f4f8;--console-fg:#1a1a2e;--console-cursor:#4f46e5;--modal-bg:#fff;--modal-border:#00001e0f;--input-bg:#f2f2f6;--input-border:#00001e0f;--pill-bg:#00001e0a;--success-dim:#34d39914;--warning-dim:#fbbf2414;--danger-dim:#f8717114;--feature:#6366f1;--bug:#ef4444;--refactor:#d97706}@keyframes progress-shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes barSlide{0%{transform:translate(-100%)}to{transform:translate(350%)}}@keyframes dotBounce{0%,80%,to{opacity:1;transform:translateY(0)}40%{opacity:.5;transform:translateY(-16px)}}@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-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@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-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{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(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@keyframes card-slide-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes stagger-slide-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes spring-pop{0%{opacity:0;transform:scale(.9)}60%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes overlay-fade-in{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(20px)saturate(200%);backdrop-filter:blur(20px)saturate(200%)}}@keyframes toast-slide-in{0%{opacity:0;transform:translate(40px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes running-glow{0%,to{box-shadow:0 0 6px #6366f114,inset 0 0 0 1px #6366f11a}50%{box-shadow:0 0 20px #6366f126,inset 0 0 0 1px #6366f133}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes breathe{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes post-move-flash{0%{border-color:#6366f166;box-shadow:0 0 20px #6366f126}to{border-color:var(--border);box-shadow:var(--shadow-card)}}@keyframes sidebar-dot-pulse{0%,to{box-shadow:0 0 4px rgba(var(--dot-r,99),var(--dot-g,102),var(--dot-b,241),.5),0 0 12px rgba(var(--dot-r,99),var(--dot-g,102),var(--dot-b,241),.2);transform:scale(1)}50%{box-shadow:0 0 8px rgba(var(--dot-r,99),var(--dot-g,102),var(--dot-b,241),.7),0 0 20px rgba(var(--dot-r,99),var(--dot-g,102),var(--dot-b,241),.3);transform:scale(1.25)}}@keyframes filter-slide-down{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes agent-card-enter{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tab-process-pulse{0%,to{color:#34d399b3;filter:drop-shadow(0 0 #34d39900)}50%{color:#34d399;filter:drop-shadow(0 0 6px #34d39966)}}
|
package/dashboard/index.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/
|
|
1
|
+
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/2671f4087ec3bbc3.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5c1d03322d6ecf76.js"/><script src="/_next/static/chunks/fd9d1056-1f1f859026f5f0fa.js" async=""></script><script src="/_next/static/chunks/117-93de0183f63af83e.js" async=""></script><script src="/_next/static/chunks/main-app-2f313c3206a6e049.js" async=""></script><script src="/_next/static/chunks/947-6596e9d0905e814e.js" async=""></script><script src="/_next/static/chunks/193-e4d2dea3fdc64b33.js" async=""></script><script src="/_next/static/chunks/23-2e97e53d3c5bbe2d.js" async=""></script><script src="/_next/static/chunks/app/page-81876f16bd9d3ebe.js" async=""></script><script src="/_next/static/chunks/app/layout-80932402bd5ccddf.js" async=""></script><meta name="theme-color" content="#6366f1"/><title>KANBAII</title><meta name="description" content="Structure for your ideas. AI to move them forward."/><link rel="manifest" href="/manifest.json" crossorigin="use-credentials"/><link rel="icon" href="/favicon.svg" type="image/svg+xml"/><link rel="icon" href="/favicon-16x16.svg" sizes="16x16" type="image/svg+xml"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><script src="/_next/static/chunks/webpack-5c1d03322d6ecf76.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/css/2671f4087ec3bbc3.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"2:I[2846,[],\"\"]\n4:I[9107,[],\"ClientPageRoot\"]\n5:I[4961,[\"947\",\"static/chunks/947-6596e9d0905e814e.js\",\"193\",\"static/chunks/193-e4d2dea3fdc64b33.js\",\"23\",\"static/chunks/23-2e97e53d3c5bbe2d.js\",\"931\",\"static/chunks/app/page-81876f16bd9d3ebe.js\"],\"default\",1]\n6:I[792,[\"947\",\"static/chunks/947-6596e9d0905e814e.js\",\"23\",\"static/chunks/23-2e97e53d3c5bbe2d.js\",\"185\",\"static/chunks/app/layout-80932402bd5ccddf.js\"],\"AppShell\"]\n7:I[4707,[],\"\"]\n8:I[6423,[],\"\"]\na:I[1060,[],\"\"]\nb:[]\n0:[\"$\",\"$L2\",null,{\"buildId\":\"dwjREEZVmsUge1LeMuNBi\",\"assetPrefix\":\"\",\"urlParts\":[\"\",\"\"],\"initialTree\":[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"__PAGE__\",{},[[\"$L3\",[\"$\",\"$L4\",null,{\"props\":{\"params\":{},\"searchParams\":{}},\"Component\":\"$5\"}],null],null],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/2671f4087ec3bbc3.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$L7\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"pad"])</script><script>self.__next_f.push([1,"ding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[]}]}]}]}]],null],null],\"couldBeIntercepted\":false,\"initialHead\":[null,\"$L9\"],\"globalErrorComponent\":\"$a\",\"missingSlots\":\"$Wb\"}]\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"name\":\"theme-color\",\"content\":\"#6366f1\"}],[\"$\",\"meta\",\"2\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"3\",{\"children\":\"KANBAII\"}],[\"$\",\"meta\",\"4\",{\"name\":\"description\",\"content\":\"Structure for your ideas. AI to move them forward.\"}],[\"$\",\"link\",\"5\",{\"rel\":\"manifest\",\"href\":\"/manifest.json\",\"crossOrigin\":\"use-credentials\"}],[\"$\",\"link\",\"6\",{\"rel\":\"icon\",\"href\":\"/favicon.svg\",\"type\":\"image/svg+xml\"}],[\"$\",\"link\",\"7\",{\"rel\":\"icon\",\"href\":\"/favicon-16x16.svg\",\"sizes\":\"16x16\",\"type\":\"image/svg+xml\"}]]\n3:null\n"])</script></body></html>
|
package/dashboard/index.txt
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
2:I[9107,[],"ClientPageRoot"]
|
|
2
|
-
3:I[4961,["947","static/chunks/947-6596e9d0905e814e.js","
|
|
3
|
-
4:I[792,["947","static/chunks/947-6596e9d0905e814e.js","23","static/chunks/23-
|
|
2
|
+
3:I[4961,["947","static/chunks/947-6596e9d0905e814e.js","193","static/chunks/193-e4d2dea3fdc64b33.js","23","static/chunks/23-2e97e53d3c5bbe2d.js","931","static/chunks/app/page-81876f16bd9d3ebe.js"],"default",1]
|
|
3
|
+
4:I[792,["947","static/chunks/947-6596e9d0905e814e.js","23","static/chunks/23-2e97e53d3c5bbe2d.js","185","static/chunks/app/layout-80932402bd5ccddf.js"],"AppShell"]
|
|
4
4
|
5:I[4707,[],""]
|
|
5
5
|
6:I[6423,[],""]
|
|
6
|
-
0:["
|
|
6
|
+
0:["dwjREEZVmsUge1LeMuNBi",[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",{"children":["__PAGE__",{},[["$L1",["$","$L2",null,{"props":{"params":{},"searchParams":{}},"Component":"$3"}],null],null],null]},[[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/2671f4087ec3bbc3.css","precedence":"next","crossOrigin":"$undefined"}]],["$","html",null,{"lang":"en","children":["$","body",null,{"children":["$","$L4",null,{"children":["$","$L5",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[]}]}]}]}]],null],null],["$L7",null]]]]
|
|
7
7
|
7:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"name":"theme-color","content":"#6366f1"}],["$","meta","2",{"charSet":"utf-8"}],["$","title","3",{"children":"KANBAII"}],["$","meta","4",{"name":"description","content":"Structure for your ideas. AI to move them forward."}],["$","link","5",{"rel":"manifest","href":"/manifest.json","crossOrigin":"use-credentials"}],["$","link","6",{"rel":"icon","href":"/favicon.svg","type":"image/svg+xml"}],["$","link","7",{"rel":"icon","href":"/favicon-16x16.svg","sizes":"16x16","type":"image/svg+xml"}]]
|
|
8
8
|
1:null
|
package/dist/server/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[23],{1171:function(t,e,a){a.d(e,{N:function(){return n}});var o=a(2265);function n(t,e){let a=(0,o.useRef)(null);return{overlayProps:{onMouseDown:(0,o.useCallback)(t=>{a.current=t.target},[]),onClick:(0,o.useCallback)(o=>{null!=e&&e.disabled||(a.current===o.currentTarget&&o.target===o.currentTarget&&t(),a.current=null)},[t,null==e?void 0:e.disabled])}}}},9116:function(t,e,a){a.d(e,{h:function(){return r}});let o=a(257).env.NEXT_PUBLIC_API_URL||"http://localhost:5555";async function n(t,e){let a=await fetch("".concat(o).concat(t),{headers:{"Content-Type":"application/json"},...e}),n=await a.json();if(!a.ok||!n.ok)throw Error(n.error||"API error: ".concat(a.status));return n.data}let r={listProjects:()=>n("/api/projects"),getProject:t=>n("/api/projects/".concat(t)),createProject:t=>n("/api/projects",{method:"POST",body:JSON.stringify(t)}),updateProject:(t,e)=>n("/api/projects/".concat(t),{method:"PATCH",body:JSON.stringify(e)}),deleteProject:t=>n("/api/projects/".concat(t),{method:"DELETE"}),listWorkItems:t=>n("/api/projects/".concat(t,"/work-items")),getWorkItem:(t,e)=>n("/api/projects/".concat(t,"/work-items/").concat(e)),createWorkItem:(t,e)=>n("/api/projects/".concat(t,"/work-items"),{method:"POST",body:JSON.stringify(e)}),updateWorkItem:(t,e,a)=>n("/api/projects/".concat(t,"/work-items/").concat(e),{method:"PATCH",body:JSON.stringify(a)}),deleteWorkItem:(t,e)=>n("/api/projects/".concat(t,"/work-items/").concat(e),{method:"DELETE"}),createTask:(t,e,a)=>n("/api/projects/".concat(t,"/work-items/").concat(e,"/tasks"),{method:"POST",body:JSON.stringify(a)}),updateTask:(t,e,a,o)=>n("/api/projects/".concat(t,"/work-items/").concat(e,"/tasks/").concat(a),{method:"PATCH",body:JSON.stringify(o)}),moveTask:(t,e,a,o)=>n("/api/projects/".concat(t,"/work-items/").concat(e,"/tasks/").concat(a,"/move"),{method:"POST",body:JSON.stringify(o)}),deleteTask:(t,e,a)=>n("/api/projects/".concat(t,"/work-items/").concat(e,"/tasks/").concat(a),{method:"DELETE"})}},6766:function(t,e,a){a.d(e,{h:function(){return l},l:function(){return s}});var o=a(8680);let n=a(257).env.NEXT_PUBLIC_API_URL||"http://localhost:5555",r=null;function l(){return r||(r=(0,o.io)(n,{transports:["websocket","polling"],autoConnect:!0,reconnection:!0,reconnectionDelay:1e3,reconnectionAttempts:10})),r}function s(){r&&(r.disconnect(),r=null)}},2569:function(t,e,a){a.d(e,{q:function(){return i}});var o=a(3011),n=a(257);let r={status:"idle",runId:null,projectSlug:null,workItemSlug:null,currentTaskId:null,currentTaskTitle:null,inputNeeded:null,stats:{total:0,completed:0,failed:0,skipped:0,startedAt:null},output:[]},l={active:!1,projectSlug:null,workers:[],metrics:null,logs:[],workerLogs:{},inputNeeded:null,coordinatorThinking:[],coordinatorToolCalls:[],coordinatorStatus:"idle"},s={active:!1,projectSlug:null,messages:[],discoveredItems:[],escalation:null,escalationMessageId:null},c=n.env.NEXT_PUBLIC_API_URL||"http://localhost:5555",i=(0,o.U)((t,e)=>({ralph:{...r},setRalphState:e=>t(t=>({ralph:{...t.ralph,...e}})),appendRalphOutput:e=>t(t=>({ralph:{...t.ralph,output:[...t.ralph.output.slice(-500),e]}})),resetRalph:()=>t({ralph:{...r}}),onRalphStarted:e=>t({ralph:{status:"running",runId:null,projectSlug:e.projectSlug,workItemSlug:null,currentTaskId:null,currentTaskTitle:null,inputNeeded:null,stats:{total:e.total,completed:0,failed:0,skipped:0,startedAt:new Date().toISOString()},output:[]}}),onRalphProgress:e=>t(t=>{var a,o;return{ralph:{...t.ralph,status:"running",currentTaskId:(null===(a=e.currentTask)||void 0===a?void 0:a.id)||null,currentTaskTitle:(null===(o=e.currentTask)||void 0===o?void 0:o.title)||null,stats:{...t.ralph.stats,total:e.total}}}}),onRalphOutput:t=>{e().appendRalphOutput(t.message)},onRalphCompleted:()=>t(t=>({ralph:{...t.ralph,status:"idle",currentTaskId:null,currentTaskTitle:null}})),onRalphError:t=>{t.message&&e().appendRalphOutput("ERROR: ".concat(t.message))},onRalphInputNeeded:e=>t(t=>({ralph:{...t.ralph,inputNeeded:e}})),clearRalphInput:()=>t(t=>({ralph:{...t.ralph,inputNeeded:null}})),teams:{...l},onTeamsStarted:e=>t({teams:{...l,active:!0,projectSlug:e.projectSlug,logs:["Teams started: ".concat(e.workItemSlugs.length," work items, ").concat(e.maxWorkers," workers")]}}),onTeamsWorkerAssigned:e=>t(t=>{let a={id:e.workerId,taskId:e.taskId,taskTitle:e.taskTitle,agentName:e.agentName,workItemSlug:e.workItemSlug,status:"running"};return{teams:{...t.teams,workers:[...t.teams.workers,a],logs:[...t.teams.logs,"".concat(e.agentName||"Worker"," → ").concat(e.taskTitle)]}}}),onTeamsWorkerCompleted:e=>t(t=>{let a=t.teams.workers.map(t=>t.id===e.workerId?{...t,status:e.status}:t);return{teams:{...t.teams,workers:a,logs:[...t.teams.logs,"".concat("completed"===e.status?"✓":"✗"," Task ").concat(e.taskId)]}}}),onTeamsMetrics:e=>t(t=>({teams:{...t.teams,metrics:e}})),onTeamsOutput:e=>t(t=>{let a=e.workerId?"[".concat(e.workerId.slice(-4),"] "):"",o={...t.teams.workerLogs};if(e.workerId&&"coordinator"!==e.workerId){let t=o[e.workerId]||[];o[e.workerId]=[...t.slice(-1e3),e.message]}return{teams:{...t.teams,logs:[...t.teams.logs.slice(-500),"".concat(a).concat(e.message)],workerLogs:o}}}),onTeamsStopped:e=>t(t=>({teams:{...t.teams,active:!1,inputNeeded:null,logs:[...t.teams.logs,"\n--- ".concat(e.message," ---")]}})),onTeamsInputNeeded:e=>t(t=>({teams:{...t.teams,inputNeeded:e}})),clearTeamsInput:()=>t(t=>({teams:{...t.teams,inputNeeded:null}})),resetTeams:()=>t({teams:{...l}}),onCoordinatorThinking:e=>t(t=>({teams:{...t.teams,coordinatorThinking:[...t.teams.coordinatorThinking.slice(-200),e.text],coordinatorStatus:"thinking"}})),onCoordinatorToolCall:e=>t(t=>{var a;return{teams:{...t.teams,coordinatorToolCalls:[...t.teams.coordinatorToolCalls.slice(-30),{tool:e.tool,input:e.input,timestamp:new Date().toISOString()}],coordinatorStatus:"calling-tool",logs:[...t.teams.logs,"\uD83D\uDD27 ".concat(e.tool).concat((null===(a=e.input)||void 0===a?void 0:a.taskId)?" → ".concat(e.input.taskId):"")]}}}),onCoordinatorCompleted:e=>t(t=>({teams:{...t.teams,active:!1,coordinatorStatus:"idle",logs:[...t.teams.logs,"\n--- ".concat(e.message," ---")]}})),terminal:{status:"idle",output:[],projectSlug:null},appendTerminalOutput:e=>t(t=>({terminal:{...t.terminal,output:[...t.terminal.output.slice(-500),e]}})),setTerminalStatus:e=>t(t=>({terminal:{...t.terminal,status:e}})),resetTerminal:()=>t({terminal:{status:"idle",output:[],projectSlug:null}}),escalation:null,onEscalationCreated:e=>t({escalation:e}),onEscalationResponded:()=>t({escalation:null}),onEscalationTimeout:()=>t({escalation:null}),planner:{...s},onPlannerStarted:e=>t({planner:{...s,active:!0,projectSlug:e.projectSlug}}),onPlannerMessage:e=>t(t=>({planner:{...t.planner,messages:[...t.planner.messages.slice(-200),{id:e.id,role:e.role,content:e.content,timestamp:new Date().toISOString()}]}})),onPlannerItemDiscovered:e=>t(t=>({planner:{...t.planner,discoveredItems:[...t.planner.discoveredItems,{id:e.id,title:e.title,category:e.category,status:"identified",plan:null,tasks:[],approvedAs:null}]}})),onPlannerItemUpdated:e=>t(t=>({planner:{...t.planner,discoveredItems:t.planner.discoveredItems.map(t=>{var a,o;return t.id===e.id?{...t,status:e.status,plan:null!==(a=e.plan)&&void 0!==a?a:t.plan,tasks:null!==(o=e.tasks)&&void 0!==o?o:t.tasks}:t})}})),onPlannerEscalation:e=>t(t=>({planner:{...t.planner,escalation:{id:e.id,source:"planner",taskId:e.taskId,taskTitle:e.taskTitle,question:e.question,options:e.options,timeoutMs:e.timeoutMs},escalationMessageId:e.messageId||null}})),onPlannerEscalationResponded:e=>t(t=>({planner:{...t.planner,escalation:null,escalationMessageId:null,messages:t.planner.messages.map(a=>a.id===t.planner.escalationMessageId?{...a,respondedWith:e}:a)}})),onPlannerItemApproved:e=>t(t=>({planner:{...t.planner,discoveredItems:t.planner.discoveredItems.map(t=>t.id===e.id?{...t,approvedAs:e.workItemSlug}:t)}})),onPlannerStopped:()=>t(t=>({planner:{...t.planner,active:!1,escalation:null,escalationMessageId:null}})),isSystemBusy:()=>{let t=e();return"running"===t.ralph.status||"paused"===t.ralph.status||t.teams.active||"running"===t.terminal.status||t.planner.active},rehydrate:async()=>{try{var e;let[a,o,n]=await Promise.all([fetch("".concat(c,"/api/ralph/state")).then(t=>t.json()).catch(()=>null),fetch("".concat(c,"/api/teams/state")).then(t=>t.json()).catch(()=>null),fetch("".concat(c,"/api/planner/state")).then(t=>t.json()).catch(()=>null)]);if((null==a?void 0:a.ok)&&a.data){let e=a.data;t(t=>({ralph:{...t.ralph,status:"stopping"===e.status?"idle":e.status,runId:e.runId,projectSlug:e.projectSlug,workItemSlug:e.workItemSlug,currentTaskId:e.currentTaskId,currentTaskTitle:e.currentTaskTitle,stats:e.stats}}))}(null==o?void 0:o.ok)&&o.data&&t(t=>({teams:{...t.teams,active:o.data.active}})),(null==n?void 0:n.ok)&&(null===(e=n.data)||void 0===e?void 0:e.active)&&t(t=>({planner:{...t.planner,active:!0,projectSlug:n.data.projectSlug,messages:n.data.messages||[],discoveredItems:n.data.discoveredItems||[]}}))}catch(t){}}}))},9747:function(t,e,a){a.d(e,{i:function(){return r}});var o=a(3011),n=a(9116);let r=(0,o.U)((t,e)=>({projects:[],activeSlug:null,loading:!1,error:null,setActiveSlug:e=>t({activeSlug:e}),fetchProjects:async()=>{t({loading:!0,error:null});try{let e=await n.h.listProjects();t({projects:e,loading:!1})}catch(e){t({error:e.message,loading:!1})}},createProject:async e=>{let a=await n.h.createProject(e);return t(t=>t.projects.some(t=>t.id===a.id)?{}:{projects:[a,...t.projects]}),a},updateProject:async(e,a)=>{let o=await n.h.updateProject(e,a);t(t=>({projects:t.projects.map(t=>t.slug===e?o:t)}))},deleteProject:async e=>{await n.h.deleteProject(e),t(t=>({projects:t.projects.filter(t=>t.slug!==e),activeSlug:t.activeSlug===e?null:t.activeSlug}))},onProjectUpdated:e=>{t(t=>t.projects.some(t=>t.id===e.id)?{projects:t.projects.map(t=>t.id===e.id?e:t)}:{projects:[e,...t.projects]})},onProjectDeleted:e=>{t(t=>({projects:t.projects.filter(t=>t.slug!==e),activeSlug:t.activeSlug===e?null:t.activeSlug}))}}))},9449:function(t,e,a){a.d(e,{U:function(){return s}});var o=a(3011),n=a(2569);let r=new Map;function l(t,e){let a=n.q.getState();t&&r.set(t,{terminal:{...a.terminal},ralph:{...a.ralph},teams:{...a.teams}});let o=r.get(e);o?n.q.setState({terminal:o.terminal,ralph:o.ralph,teams:o.teams}):(a.resetTerminal(),a.resetRalph(),a.resetTeams())}let s=(0,o.U)((t,e)=>({projectSlug:null,workItemSlug:null,view:"work-items",goToProject:a=>{let o=e().projectSlug;o!==a&&l(o,a),t({projectSlug:a,workItemSlug:null,view:"work-items"})},goToWorkItem:(a,o)=>{let n=e().projectSlug;n!==a&&l(n,a),t({projectSlug:a,workItemSlug:o,view:"board"})},goBack:()=>{e().workItemSlug?t({workItemSlug:null,view:"work-items"}):t({projectSlug:null,view:"work-items"})},goHome:()=>t({projectSlug:null,workItemSlug:null,view:"work-items"}),setView:e=>t({view:e})}))},9405:function(t,e,a){a.d(e,{E:function(){return r}});var o=a(3011);let n=0,r=(0,o.U)(t=>({toasts:[],addToast:function(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"info",o="toast-".concat(++n);t(t=>({toasts:[...t.toasts,{id:o,message:e,type:a}]})),setTimeout(()=>{t(t=>({toasts:t.toasts.filter(t=>t.id!==o)}))},3e3)},removeToast:e=>{t(t=>({toasts:t.toasts.filter(t=>t.id!==e)}))}}))},15:function(t,e,a){a.d(e,{o:function(){return r}});var o=a(3011),n=a(9116);let r=(0,o.U)((t,e)=>({workItems:[],projectSlug:null,loading:!1,error:null,fetchWorkItems:async e=>{t({loading:!0,error:null,projectSlug:e});try{let a=await n.h.listWorkItems(e);t({workItems:a,loading:!1})}catch(e){t({error:e.message,loading:!1})}},createWorkItem:async(e,a)=>{let o=await n.h.createWorkItem(e,a);return t(t=>({workItems:[o,...t.workItems]})),o},updateWorkItem:async(e,a,o)=>{let r=await n.h.updateWorkItem(e,a,o);t(t=>({workItems:t.workItems.map(t=>t.id===r.id||t.slug===a?r:t)}))},deleteWorkItem:async(e,a)=>{await n.h.deleteWorkItem(e,a),t(t=>({workItems:t.workItems.filter(t=>t.slug!==a&&t.id!==a)}))},onWorkItemUpdated:(a,o)=>{e().projectSlug===a&&t(t=>t.workItems.some(t=>t.id===o.id)?{workItems:t.workItems.map(t=>t.id===o.id?o:t)}:{workItems:[o,...t.workItems]})},onWorkItemDeleted:(a,o)=>{e().projectSlug===a&&t(t=>({workItems:t.workItems.filter(t=>t.id!==o&&t.slug!==o)}))},clear:()=>t({workItems:[],projectSlug:null,loading:!1,error:null})}))}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[185],{4732:function(e,t,s){Promise.resolve().then(s.t.bind(s,7960,23)),Promise.resolve().then(s.bind(s,792))},792:function(e,t,s){"use strict";s.d(t,{AppShell:function(){return ev}});var a=s(7437),n=s(2265);let r=(0,n.createContext)(void 0);function o(e){let{children:t}=e,[s,o]=(0,n.useState)("dark"),[l,i]=(0,n.useState)(!1);return((0,n.useEffect)(()=>{let e=localStorage.getItem("kanbaii-theme");"light"===e||"dark"===e?o(e):o("dark"),i(!0)},[]),(0,n.useEffect)(()=>{l&&(document.documentElement.setAttribute("data-theme",s),localStorage.setItem("kanbaii-theme",s))},[s,l]),l)?(0,a.jsx)(r.Provider,{value:{theme:s,toggleTheme:()=>{o(e=>"dark"===e?"light":"dark")}},children:t}):null}function l(){let e=(0,n.useContext)(r);if(!e)throw Error("useTheme must be used within ThemeProvider");return e}var i=s(2829);let c=(0,i.Z)("pin",[["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z",key:"1nkz8b"}]]);var d=s(9397);let x=(0,i.Z)("folder-open",[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]]),u=(0,i.Z)("archive",[["rect",{width:"20",height:"5",x:"2",y:"3",rx:"1",key:"1wp1u1"}],["path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8",key:"1s80jp"}],["path",{d:"M10 12h4",key:"a56b0p"}]]);var p=s(8930);let m=(0,i.Z)("chart-column",[["path",{d:"M3 3v16a2 2 0 0 0 2 2h16",key:"c24i48"}],["path",{d:"M18 17V9",key:"2bz60n"}],["path",{d:"M13 17V5",key:"1frdt8"}],["path",{d:"M8 17v-3",key:"17ska0"}]]);var h=s(8728),f=s(9747),b=s(9449),g=s(2569),v=s(9405),j=s(1347);function y(){let{theme:e,toggleTheme:t}=l();return(0,a.jsxs)("button",{className:"relative w-12 h-[26px] rounded-[13px] border border-border bg-surface cursor-pointer p-0 transition-all duration-250 ease-out-expo overflow-hidden shrink-0 hover:border-accent hover:bg-surface-hover hover:shadow-[0_0_8px_var(--accent-glow)]",onClick:t,title:"Switch to ".concat("dark"===e?"light":"dark"," theme"),children:[(0,a.jsx)(j.E.div,{className:"absolute top-0.5 left-0.5 w-5 h-5 rounded-[10px] bg-accent shadow-[0_2px_6px_rgba(0,0,0,0.3)] flex items-center justify-center",initial:!1,animate:{x:"dark"===e?0:22},transition:{type:"spring",stiffness:300,damping:30},children:"dark"===e?(0,a.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"#fff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,a.jsx)("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})}):(0,a.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"#fff",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("circle",{cx:"12",cy:"12",r:"5"}),(0,a.jsx)("line",{x1:"12",y1:"1",x2:"12",y2:"3"}),(0,a.jsx)("line",{x1:"12",y1:"21",x2:"12",y2:"23"}),(0,a.jsx)("line",{x1:"4.22",y1:"4.22",x2:"5.64",y2:"5.64"}),(0,a.jsx)("line",{x1:"18.36",y1:"18.36",x2:"19.78",y2:"19.78"}),(0,a.jsx)("line",{x1:"1",y1:"12",x2:"3",y2:"12"}),(0,a.jsx)("line",{x1:"21",y1:"12",x2:"23",y2:"12"}),(0,a.jsx)("line",{x1:"4.22",y1:"19.78",x2:"5.64",y2:"18.36"}),(0,a.jsx)("line",{x1:"18.36",y1:"5.64",x2:"19.78",y2:"4.22"})]})}),(0,a.jsxs)("div",{className:"absolute inset-0 flex items-center justify-between px-1.5 pointer-events-none",children:[(0,a.jsx)("div",{className:"ml-0.5 transition-opacity duration-250 ease-out-expo ".concat("dark"===e?"opacity-30":"opacity-0"),children:(0,a.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"var(--text-muted)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:(0,a.jsx)("path",{d:"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"})})}),(0,a.jsx)("div",{className:"mr-0.5 transition-opacity duration-250 ease-out-expo ".concat("light"===e?"opacity-30":"opacity-0"),children:(0,a.jsxs)("svg",{width:"10",height:"10",viewBox:"0 0 24 24",fill:"none",stroke:"var(--text-muted)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("circle",{cx:"12",cy:"12",r:"5"}),(0,a.jsx)("line",{x1:"12",y1:"1",x2:"12",y2:"3"}),(0,a.jsx)("line",{x1:"12",y1:"21",x2:"12",y2:"23"})]})})]})]})}var k=s(2489),N=s(1171);let w=["#6366f1","#ef4444","#f59e0b","#22c55e","#3b82f6","#8b5cf6","#ec4899","#14b8a6"];function C(e){let{onClose:t}=e,s=(0,b.U)(e=>e.goToProject),r=(0,f.i)(e=>e.createProject),[o,l]=(0,n.useState)(""),[i,c]=(0,n.useState)(""),[d,x]=(0,n.useState)(""),[u,p]=(0,n.useState)(w[0]),[m,h]=(0,n.useState)(!1),{overlayProps:g}=(0,N.N)(t,{disabled:m}),v=async e=>{if(e.preventDefault(),o.trim()){h(!0);try{let e=await r({title:o.trim(),description:i.trim()||void 0,color:u,workingDir:d.trim()||void 0});t(),s(e.slug)}catch(e){h(!1)}}};return(0,a.jsx)("div",{className:"glass-overlay",...g,children:(0,a.jsxs)("div",{className:"modal-box w-[440px] max-w-[92%] p-7",onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-7",children:[(0,a.jsx)("span",{className:"text-h2 font-semibold tracking-tight",children:"New Project"}),(0,a.jsx)("button",{className:"btn-icon",onClick:t,children:(0,a.jsx)(k.Z,{size:16})})]}),(0,a.jsxs)("form",{className:"flex flex-col gap-5",onSubmit:v,children:[(0,a.jsxs)("div",{className:"flex flex-col",children:[(0,a.jsx)("label",{className:"text-[10px] font-semibold text-text-muted uppercase tracking-widest mb-2 font-mono",children:"Title"}),(0,a.jsx)("input",{value:o,onChange:e=>l(e.target.value),placeholder:"Project name...",autoFocus:!0})]}),(0,a.jsxs)("div",{className:"flex flex-col",children:[(0,a.jsx)("label",{className:"text-[10px] font-semibold text-text-muted uppercase tracking-widest mb-2 font-mono",children:"Description (optional)"}),(0,a.jsx)("input",{value:i,onChange:e=>c(e.target.value),placeholder:"Brief description..."})]}),(0,a.jsxs)("div",{className:"flex flex-col",children:[(0,a.jsx)("label",{className:"text-[10px] font-semibold text-text-muted uppercase tracking-widest mb-2 font-mono",children:"Working Directory"}),(0,a.jsx)("input",{value:d,onChange:e=>x(e.target.value),placeholder:"C:\\Users\\...\\my-project"})]}),(0,a.jsxs)("div",{className:"flex flex-col",children:[(0,a.jsx)("label",{className:"text-[10px] font-semibold text-text-muted uppercase tracking-widest mb-2 font-mono",children:"Color"}),(0,a.jsx)("div",{className:"flex gap-2",children:w.map(e=>(0,a.jsx)("button",{type:"button",className:"w-6 h-6 rounded-full border-2 cursor-pointer transition-all duration-150 ease-out-expo\n ".concat(u===e?"border-text shadow-[0_0_8px_currentColor]":"border-transparent shadow-[0_0_0_0_transparent]","\n hover:scale-[1.2] hover:shadow-[0_0_12px_currentColor]"),style:{background:e},onClick:()=>p(e)},e))})]}),(0,a.jsxs)("div",{className:"flex justify-end gap-2 pt-2",children:[(0,a.jsx)("button",{type:"button",className:"btn-ghost",onClick:t,children:"Cancel"}),(0,a.jsx)("button",{type:"submit",className:"btn-primary",disabled:!o.trim()||m,children:m?"Creating...":"Create"})]})]})]})})}let S=s(257).env.NEXT_PUBLIC_API_URL||"http://localhost:5555",T=[{key:"general",label:"General"},{key:"ralph",label:"Ralph"},{key:"scheduler",label:"Scheduler"},{key:"terminal",label:"Terminal"},{key:"auth",label:"Auth"},{key:"integrations",label:"Integrations"}];function E(e){let{onClose:t}=e,s=(0,v.E)(e=>e.addToast),[r,o]=(0,n.useState)("general"),[l,i]=(0,n.useState)(null),[c,d]=(0,n.useState)(!1),{overlayProps:x}=(0,N.N)(t),u=(0,n.useCallback)(async()=>{try{let e=await fetch("".concat(S,"/api/settings")),t=await e.json();t.ok&&i(t.data)}catch(e){}},[]);(0,n.useEffect)(()=>{u()},[u]);let p=async(e,t)=>{d(!0);try{await fetch("".concat(S,"/api/settings/").concat(e),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),s("Settings saved","success"),u()}catch(e){s("Failed to save","error")}d(!1)};return l?(0,a.jsx)("div",{className:"glass-overlay",...x,children:(0,a.jsxs)("div",{className:"modal-box max-w-[680px] w-[95%] max-h-[80vh] flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between px-6 pt-5 pb-4 shrink-0",children:[(0,a.jsxs)("div",{className:"text-h2 font-semibold tracking-tight flex items-center gap-2",children:[(0,a.jsx)(h.Z,{size:16})," Settings"]}),(0,a.jsx)("button",{className:"btn-icon",onClick:t,children:(0,a.jsx)(k.Z,{size:16})})]}),(0,a.jsxs)("div",{className:"flex flex-1 overflow-hidden",children:[(0,a.jsx)("div",{className:"w-40 shrink-0 border-r border-border p-2 flex flex-col gap-0.5 bg-bg-subtle",children:T.map(e=>(0,a.jsx)("button",{className:"px-3 py-2 text-xs font-medium text-text-muted rounded-sm text-left transition-all duration-150 ease-out-expo hover:text-text-secondary hover:bg-surface-hover ".concat(r===e.key?"text-text bg-accent-muted":""),onClick:()=>o(e.key),children:e.label},e.key))}),(0,a.jsxs)("div",{className:"flex-1 overflow-y-auto px-6 py-5",children:["general"===r&&(0,a.jsxs)(z,{title:"General",onSave:e=>p("general",e),saving:c,children:[(0,a.jsx)(P,{label:"Default Model",type:"select",value:l.general.defaultModel,options:["haiku","sonnet","opus"],field:"defaultModel"}),(0,a.jsx)(P,{label:"Timezone",value:l.general.timezone,field:"timezone"}),(0,a.jsx)(P,{label:"Port",type:"number",value:l.general.port,field:"port"})]}),"ralph"===r&&(0,a.jsxs)(z,{title:"Ralph",onSave:e=>p("ralph",e),saving:c,children:[(0,a.jsx)(P,{label:"Max Iterations",type:"number",value:l.ralph.maxIterations,field:"maxIterations"}),(0,a.jsx)(P,{label:"Circuit Breaker (max errors)",type:"number",value:l.ralph.circuitBreaker,field:"circuitBreaker"}),(0,a.jsx)(P,{label:"Task Filter",type:"select",value:l.ralph.taskFilter,options:["todo-only","all"],field:"taskFilter"})]}),"scheduler"===r&&(0,a.jsxs)(z,{title:"Scheduler",onSave:e=>p("scheduler",e),saving:c,children:[(0,a.jsx)(P,{label:"Enabled",type:"toggle",value:l.scheduler.enabled,field:"enabled"}),(0,a.jsx)(P,{label:"Max Concurrent",type:"number",value:l.scheduler.maxConcurrent,field:"maxConcurrent"}),(0,a.jsx)(P,{label:"Timeout (ms)",type:"number",value:l.scheduler.timeout,field:"timeout"}),(0,a.jsx)(P,{label:"Stale Threshold (min)",type:"number",value:l.scheduler.staleThreshold,field:"staleThreshold"})]}),"terminal"===r&&(0,a.jsxs)(z,{title:"Terminal",onSave:e=>p("terminal",e),saving:c,children:[(0,a.jsx)(P,{label:"Inactivity Warn (min)",type:"number",value:l.terminal.inactivityWarn,field:"inactivityWarn"}),(0,a.jsx)(P,{label:"Inactivity Kill (min)",type:"number",value:l.terminal.inactivityKill,field:"inactivityKill"}),(0,a.jsx)(P,{label:"Max Timeout (min)",type:"number",value:l.terminal.maxTimeout,field:"maxTimeout"})]}),"auth"===r&&(0,a.jsxs)(z,{title:"Authentication",onSave:e=>p("auth",e),saving:c,children:[(0,a.jsx)(P,{label:"Enabled",type:"toggle",value:l.auth.enabled,field:"enabled"}),(0,a.jsx)(P,{label:"Secret Key",value:l.auth.secret,field:"secret",placeholder:"auto-generated if empty"}),(0,a.jsx)(P,{label:"Token Expiry",value:l.auth.tokenExpiry,field:"tokenExpiry",placeholder:"24h"})]}),"integrations"===r&&(0,a.jsxs)("div",{className:"flex flex-col gap-6",children:[(0,a.jsxs)(z,{title:"Telegram",onSave:e=>p("integrations",{telegram:e}),saving:c,children:[(0,a.jsx)(P,{label:"Enabled",type:"toggle",value:l.integrations.telegram.enabled,field:"enabled"}),(0,a.jsx)(P,{label:"Bot Token",value:l.integrations.telegram.botToken,field:"botToken",placeholder:"123456:ABC-DEF..."}),(0,a.jsx)(P,{label:"Chat ID",value:l.integrations.telegram.chatId,field:"chatId",placeholder:"-100123456789"})]}),(0,a.jsxs)(z,{title:"Voice Input",onSave:e=>p("integrations",{voice:e}),saving:c,children:[(0,a.jsx)(P,{label:"Enabled",type:"toggle",value:l.integrations.voice.enabled,field:"enabled"}),(0,a.jsx)(P,{label:"OpenAI API Key",value:l.integrations.voice.openaiApiKey||"",field:"openaiApiKey",placeholder:"sk-... (for Whisper fallback)"})]})]})]})]})]})}):null}function z(e){let{title:t,children:s,onSave:r,saving:o}=e,[l,i]=(0,n.useState)({});(0,n.useEffect)(()=>{let e={};n.Children.forEach(s,t=>{var s;(null==t?void 0:null===(s=t.props)||void 0===s?void 0:s.field)&&(e[t.props.field]=t.props.value)}),i(e)},[s]);let c=(e,t)=>{i(s=>({...s,[e]:t}))};return(0,a.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("span",{className:"text-body font-semibold text-text tracking-tight",children:t}),(0,a.jsx)("button",{className:"btn-primary",onClick:()=>r(l),disabled:o,children:o?"Saving...":"Save"})]}),(0,a.jsx)("div",{className:"flex flex-col gap-3",children:n.Children.map(s,e=>{var t,s;return(null==e?void 0:null===(t=e.props)||void 0===t?void 0:t.field)?n.cloneElement(e,{value:null!==(s=l[e.props.field])&&void 0!==s?s:e.props.value,onChange:t=>c(e.props.field,t)}):e})})]})}function P(e){let{label:t,value:s,field:n,type:r,options:o,placeholder:l,onChange:i}=e;return"toggle"===r?(0,a.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,a.jsx)("span",{className:"text-xs font-medium text-text-secondary min-w-[140px] shrink-0",children:t}),(0,a.jsx)("button",{className:"px-3 py-1 text-data font-semibold rounded-xs font-mono border transition-all duration-150 ease-out-expo tracking-wide ".concat(s?"text-success border-success-dim bg-success-dim":"text-text-muted border-border"),onClick:()=>null==i?void 0:i(!s),children:s?"ON":"OFF"})]}):"select"===r&&o?(0,a.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,a.jsx)("span",{className:"text-xs font-medium text-text-secondary min-w-[140px] shrink-0",children:t}),(0,a.jsx)("div",{className:"flex gap-1",children:o.map(e=>(0,a.jsx)("button",{className:"px-2.5 py-1 text-data font-medium rounded-full border font-mono transition-all duration-150 ease-out-expo ".concat(s===e?"border-accent-dim text-accent bg-accent-muted":"border-border text-text-muted hover:border-border-light hover:text-text-secondary"),onClick:()=>null==i?void 0:i(e),children:e},e))})]}):(0,a.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,a.jsx)("span",{className:"text-xs font-medium text-text-secondary min-w-[140px] shrink-0",children:t}),(0,a.jsx)("input",{type:r||"text",value:null!=s?s:"",onChange:e=>null==i?void 0:i("number"===r?Number(e.target.value):e.target.value),placeholder:l,className:"flex-1 max-w-[200px] text-right font-mono text-xs"})]})}let M=(0,i.Z)("dollar-sign",[["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",key:"1b0p4s"}]]);var _=s(1239),I=s(1723);let A=s(257).env.NEXT_PUBLIC_API_URL||"http://localhost:5555";function R(e){return e<.01?"$".concat(e.toFixed(4)):"$".concat(e.toFixed(2))}function Z(e){var t;let{projectSlug:s}=e,r=(0,v.E)(e=>e.addToast),[o,l]=(0,n.useState)(null),[i,c]=(0,n.useState)([]),[d,x]=(0,n.useState)("30d"),[u,h]=(0,n.useState)(s?"project":"global"),f=(0,n.useCallback)(async()=>{let e="project"===u&&s?s:void 0,t="7d"===d?7:"30d"===d?30:void 0,[a,n]=await Promise.all([fetch("".concat(A,"/api/costs/summary").concat(e?"?projectSlug=".concat(e):"")).then(e=>e.json()).catch(()=>({data:null})),fetch("".concat(A,"/api/costs/executions?limit=50").concat(e?"&projectSlug=".concat(e):"").concat(t?"&days=".concat(t):"")).then(e=>e.json()).catch(()=>({data:[]}))]);l(a.data||null),c(n.data||[])},[s,u,d]);(0,n.useEffect)(()=>{f()},[f]);let b=async()=>{let e="project"===u&&s?"?projectSlug=".concat(s):"";await fetch("".concat(A,"/api/costs/clear").concat(e),{method:"DELETE"}),r("Execution history cleared","info"),f()},g={opus:"#a855f7",sonnet:"#6366f1",haiku:"#22c55e"};return(0,a.jsxs)("div",{className:"flex flex-col h-full overflow-y-auto gap-5 p-5",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between flex-wrap gap-3",children:[(0,a.jsxs)("div",{className:"text-h2 font-semibold tracking-tight flex items-center gap-2",children:[(0,a.jsx)(m,{size:18})," Costs & Analytics"]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[s&&(0,a.jsxs)("div",{className:"flex border border-border rounded-sm overflow-hidden",children:[(0,a.jsx)("button",{className:"px-2.5 py-1 text-xxs font-semibold font-mono tracking-wide uppercase text-text-muted transition-all duration-150 ease-out-expo hover:text-text-secondary hover:bg-surface-hover ".concat("project"===u?"text-accent bg-accent-muted":""),onClick:()=>h("project"),children:"Project"}),(0,a.jsx)("button",{className:"px-2.5 py-1 text-xxs font-semibold font-mono tracking-wide uppercase text-text-muted transition-all duration-150 ease-out-expo hover:text-text-secondary hover:bg-surface-hover ".concat("global"===u?"text-accent bg-accent-muted":""),onClick:()=>h("global"),children:"Global"})]}),(0,a.jsx)("div",{className:"flex border border-border rounded-sm overflow-hidden",children:["7d","30d","all"].map(e=>(0,a.jsx)("button",{className:"px-2.5 py-1 text-xxs font-semibold font-mono tracking-wide uppercase text-text-muted transition-all duration-150 ease-out-expo hover:text-text-secondary hover:bg-surface-hover ".concat(d===e?"text-accent bg-accent-muted":""),onClick:()=>x(e),children:e},e))})]})]}),o&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"grid grid-cols-4 gap-2 max-md:grid-cols-2",children:[(0,a.jsxs)("div",{className:"p-4 border border-border rounded-md bg-card text-center relative overflow-hidden",children:[(0,a.jsx)("div",{className:"text-accent mb-1.5 flex justify-center",children:(0,a.jsx)(M,{size:14})}),(0,a.jsx)("div",{className:"text-h1 font-bold text-text font-mono tracking-tight",children:R(o.todayCost)}),(0,a.jsx)("div",{className:"text-xxs font-semibold text-text-muted uppercase tracking-widest font-mono mt-1",children:"Today"})]}),(0,a.jsxs)("div",{className:"p-4 border border-border rounded-md bg-card text-center relative overflow-hidden",children:[(0,a.jsx)("div",{className:"text-accent mb-1.5 flex justify-center",children:(0,a.jsx)(M,{size:14})}),(0,a.jsx)("div",{className:"text-h1 font-bold text-text font-mono tracking-tight",children:R(o.monthlyCost)}),(0,a.jsx)("div",{className:"text-xxs font-semibold text-text-muted uppercase tracking-widest font-mono mt-1",children:"This Month"})]}),(0,a.jsxs)("div",{className:"p-4 border border-border rounded-md bg-card text-center relative overflow-hidden",children:[(0,a.jsx)("div",{className:"text-accent mb-1.5 flex justify-center",children:(0,a.jsx)(_.Z,{size:14})}),(0,a.jsx)("div",{className:"text-h1 font-bold text-text font-mono tracking-tight",children:(t=o.monthlyTokens)>=1e6?"".concat((t/1e6).toFixed(1),"M"):t>=1e3?"".concat((t/1e3).toFixed(0),"K"):"".concat(t)}),(0,a.jsx)("div",{className:"text-xxs font-semibold text-text-muted uppercase tracking-widest font-mono mt-1",children:"Tokens (Month)"})]}),(0,a.jsxs)("div",{className:"p-4 border border-border rounded-md bg-card text-center relative overflow-hidden",children:[(0,a.jsx)("div",{className:"text-accent mb-1.5 flex justify-center",children:(0,a.jsx)(I.Z,{size:14})}),(0,a.jsx)("div",{className:"text-h1 font-bold text-text font-mono tracking-tight",children:o.monthlyExecutions}),(0,a.jsx)("div",{className:"text-xxs font-semibold text-text-muted uppercase tracking-widest font-mono mt-1",children:"Executions (Month)"})]})]}),Object.keys(o.byModel).length>0&&(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)("div",{className:"text-data font-semibold text-text-muted uppercase tracking-widest font-mono",children:"Model Breakdown"}),(0,a.jsx)("div",{className:"flex flex-col gap-1.5",children:Object.entries(o.byModel).map(e=>{let[t,s]=e;return(0,a.jsxs)("div",{className:"flex items-center gap-2.5 px-3 py-2.5 border border-border rounded-sm bg-card",children:[(0,a.jsx)("div",{className:"w-2 h-2 rounded-full shrink-0",style:{background:g[t]||"#6366f1"}}),(0,a.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,a.jsx)("span",{className:"text-xs font-semibold text-text",children:t}),(0,a.jsxs)("span",{className:"text-data text-text-muted font-mono ml-2",children:[s.count," runs — ",R(s.cost)]})]}),(0,a.jsx)("div",{className:"w-20 h-1 rounded-full overflow-hidden",style:{background:"rgba(148, 163, 242, 0.06)"},children:(0,a.jsx)("div",{className:"h-full rounded-full transition-[width] duration-500 ease-out-expo",style:{width:"".concat(o.totalExecutions>0?s.count/o.totalExecutions*100:0,"%"),background:g[t]||"#6366f1"}})})]},t)})})]})]}),(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("div",{className:"text-data font-semibold text-text-muted uppercase tracking-widest font-mono",children:"Recent Executions"}),(0,a.jsxs)("button",{className:"inline-flex items-center gap-[3px] text-xxs text-text-muted px-2 py-[3px] rounded-xs font-mono border border-border transition-all duration-120 ease-out-expo hover:text-danger hover:border-danger-dim",onClick:b,children:[(0,a.jsx)(p.Z,{size:10})," Clear"]})]}),0===i.length?(0,a.jsx)("div",{className:"text-text-muted text-label text-center py-8 font-mono opacity-50",children:"No executions recorded yet"}):(0,a.jsxs)("div",{className:"border border-border rounded-md overflow-hidden bg-card",children:[(0,a.jsxs)("div",{className:"grid grid-cols-[1fr_70px_70px_60px_40px] px-3.5 py-2 text-xxs font-semibold text-text-muted uppercase tracking-wide font-mono border-b border-border bg-bg-subtle",children:[(0,a.jsx)("span",{children:"Task"}),(0,a.jsx)("span",{children:"Model"}),(0,a.jsx)("span",{children:"Duration"}),(0,a.jsx)("span",{children:"Cost"}),(0,a.jsx)("span",{children:"Status"})]}),i.map(e=>{var t;return(0,a.jsxs)("div",{className:"grid grid-cols-[1fr_70px_70px_60px_40px] px-3.5 py-2 text-label border-b border-b-[rgba(148,163,242,0.03)] last:border-b-0 transition-colors duration-120 ease-out-expo hover:bg-surface-hover",children:[(0,a.jsx)("span",{className:"text-text overflow-hidden text-ellipsis whitespace-nowrap",children:e.taskTitle||e.projectSlug}),(0,a.jsx)("span",{className:"font-mono text-data font-semibold",style:{color:g[e.model]||"#6366f1"},children:e.model}),(0,a.jsx)("span",{className:"text-text-muted font-mono text-data",children:(t=e.duration)<1e3?"".concat(t,"ms"):"".concat((t/1e3).toFixed(1),"s")}),(0,a.jsx)("span",{className:"text-text-secondary font-mono text-data font-medium",children:R(e.costUsd)}),(0,a.jsx)("span",{className:"text-center ".concat("success"===e.status?"text-success":"text-danger"),children:"success"===e.status?"✓":"✗"})]},e.id)})]})]})]})}var D=s(7168),L=s(4401),F=s(6766);let q=s(257).env.NEXT_PUBLIC_API_URL||"http://localhost:5555",U="kanbaii-claude-usage";function B(e){return e>=80?"#ef4444":e>=60?"#f59e0b":"#6366f1"}function O(){try{var e;let t=sessionStorage.getItem(U);if(!t)return null;let s=JSON.parse(t);if((null==s?void 0:null===(e=s.entries)||void 0===e?void 0:e.length)>0&&Date.now()-new Date(s.timestamp).getTime()<3e5)return s}catch(e){}return null}function K(e){let{isExpanded:t}=e,[s,r]=(0,n.useState)(O),[o,l]=(0,n.useState)(!1),i=(0,n.useRef)(!0),c=(0,n.useCallback)(e=>{if(i.current){r(e),l(!1);try{sessionStorage.setItem(U,JSON.stringify(e))}catch(e){}}},[]),d=(0,n.useCallback)(async()=>{try{var e;let t=await fetch("".concat(q,"/api/costs/claude-usage")),s=await t.json(),a=(null==s?void 0:s.data)||s;if((null==a?void 0:null===(e=a.entries)||void 0===e?void 0:e.length)>0)return c(a),!0}catch(e){}return!1},[c]);(0,n.useEffect)(()=>{i.current=!0;let e=null,t=null,a=null,n=()=>{t=setInterval(async()=>{await d()&&t&&(clearInterval(t),t=null)},3e3),a=setTimeout(()=>{t&&(clearInterval(t),t=null),i.current&&!s&&l(!0)},3e4)};return e=setInterval(d,6e4),d().then(e=>{e||n()}),()=>{i.current=!1,e&&clearInterval(e),t&&clearInterval(t),a&&clearTimeout(a)}},[]),(0,n.useEffect)(()=>{let e=(0,F.h)(),t=e=>{var t;(null==e?void 0:null===(t=e.entries)||void 0===t?void 0:t.length)>0&&c(e)};return e.on("claude-usage",t),e.on("connect",()=>{d()}),()=>{e.off("claude-usage",t)}},[c,d]);let x=s?Math.max(...s.entries.map(e=>e.percent),0):0;return t?s?(0,a.jsxs)("div",{className:"px-3 py-2 flex flex-col gap-1.5",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5 mb-0.5",children:[(0,a.jsx)(L.Z,{size:10,className:"text-text-muted opacity-50"}),(0,a.jsx)("span",{className:"text-[8px] font-semibold text-text-muted uppercase tracking-[0.1em] font-mono opacity-60",children:"Rate Limits"})]}),s.entries.map((e,t)=>{var s;let n=B(e.percent),r=(s=e.percent)>=80?"rgba(239,68,68,0.3)":s>=60?"rgba(245,158,11,0.2)":"rgba(99,102,241,0.15)";return(0,a.jsxs)("div",{className:"flex flex-col gap-[3px]",children:[(0,a.jsxs)("div",{className:"flex justify-between items-baseline",children:[(0,a.jsx)("span",{className:"text-[9px] text-text-muted truncate max-w-[110px] font-mono",children:e.label}),(0,a.jsxs)("span",{className:"text-[10px] font-bold font-mono tabular-nums ".concat(e.percent>=80?"animate-breathe":""),style:{color:n},children:[e.percent,"%"]})]}),(0,a.jsx)("div",{className:"w-full h-[3px] rounded-full overflow-hidden",style:{background:"rgba(148,163,242,0.06)"},children:(0,a.jsx)("div",{className:"h-full rounded-full transition-[width] duration-700 ease-out",style:{width:"".concat(Math.min(e.percent,100),"%"),background:n,boxShadow:e.percent>40?"0 0 6px ".concat(r):"none"}})}),e.resetsAt&&(0,a.jsxs)("span",{className:"text-[7px] text-text-muted font-mono opacity-40",children:["Resets ",e.resetsAt]})]},t)})]}):o?(0,a.jsxs)("div",{className:"px-3 py-2 flex items-center justify-center gap-2",children:[(0,a.jsx)("span",{className:"text-[8px] text-text-muted font-mono opacity-40",children:"Unavailable"}),(0,a.jsxs)("button",{className:"text-[8px] text-accent font-mono opacity-60 hover:opacity-100 transition-opacity flex items-center gap-1",onClick:()=>{l(!1),d()},children:[(0,a.jsx)(D.Z,{size:8})," Retry"]})]}):(0,a.jsxs)("div",{className:"px-3 py-2 flex items-center justify-center gap-2",children:[(0,a.jsx)("div",{className:"w-2.5 h-2.5 border border-text-muted/20 border-t-accent/50 rounded-full animate-spin"}),(0,a.jsx)("span",{className:"text-[8px] text-text-muted font-mono opacity-40",children:"Loading usage..."})]}):s?(0,a.jsxs)("div",{className:"flex flex-col items-center gap-1 py-1",title:s.entries.map(e=>"".concat(e.label,": ").concat(e.percent,"%")).join("\n"),children:[(0,a.jsx)("div",{className:"w-[5px] h-5 rounded-full overflow-hidden flex flex-col-reverse",style:{background:"rgba(148, 163, 242, 0.06)"},children:(0,a.jsx)("div",{className:"w-full rounded-full transition-[height] duration-500",style:{height:"".concat(Math.min(x,100),"%"),background:B(x)}})}),(0,a.jsxs)("span",{className:"text-[7px] text-text-muted font-mono opacity-50",children:[x,"%"]})]}):null}let W=s(257).env.NEXT_PUBLIC_API_URL||"http://localhost:5555";function G(){let{projects:e,fetchProjects:t,setActiveSlug:s,deleteProject:r,updateProject:o}=(0,f.i)(),{projectSlug:l,goToProject:i,goHome:j}=(0,b.U)(),k=(0,g.q)(e=>e.ralph),N=(0,g.q)(e=>e.teams),w=(0,v.E)(e=>e.addToast),[S,T]=(0,n.useState)(!1),[z,P]=(0,n.useState)(!1),[M,_]=(0,n.useState)(!1),[I,A]=(0,n.useState)(null),[R,D]=(0,n.useState)(null),[L,F]=(0,n.useState)(null),[q,U]=(0,n.useState)(!0),[B,O]=(0,n.useState)(!1),G=(0,n.useRef)(null),V=q||B,J=(0,g.q)(e=>e.terminal.status),X=(0,g.q)(e=>e.planner.active),$="running"===k.status||"paused"===k.status||N.active||"running"===J||X;(0,n.useEffect)(()=>{t()},[t]),(0,n.useEffect)(()=>{if(!L)return;let e=()=>F(null),t=setTimeout(()=>document.addEventListener("click",e),0);return()=>{clearTimeout(t),document.removeEventListener("click",e)}},[L]);let Q=e=>{s(e.slug),i(e.slug)},Y=async(e,t)=>{e.stopPropagation(),F(null);try{await o(t.slug,{status:"archived"}),l===t.slug&&j(),w("".concat(t.title," archived"),"success")}catch(e){w("Failed to archive","error")}},ee=async(e,t)=>{if(e.stopPropagation(),R!==t.slug){D(t.slug),setTimeout(()=>D(null),3e3);return}F(null);try{await r(t.slug),l===t.slug&&j(),w("".concat(t.title," deleted"),"success"),D(null)}catch(e){w("Failed to delete","error")}};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("aside",{className:"flex-shrink-0 border-r border-border bg-bg-subtle flex flex-col overflow-hidden relative z-10\n transition-all duration-300 ease-out-expo ".concat(V?"w-sidebar":"w-sidebar-collapsed"),onMouseEnter:()=>{G.current&&clearTimeout(G.current),O(!0)},onMouseLeave:()=>{G.current=setTimeout(()=>O(!1),200)},children:[(0,a.jsxs)("div",{className:"flex items-center flex-shrink-0 min-h-[48px]\n ".concat(V?"px-3 pt-3.5 pb-2.5 justify-between":"px-0 pt-3.5 pb-[18px] justify-center"),children:[(0,a.jsxs)("div",{className:"flex items-center ".concat(V?"gap-2.5":"gap-0"),children:[(0,a.jsx)("div",{className:"rounded-sm flex items-center justify-center flex-shrink-0 overflow-hidden relative\n transition-all duration-400\n ".concat(V?"w-[26px] h-[26px]":"w-7 h-7","\n ").concat($?"bg-gradient-to-br from-emerald-800 to-emerald-500 shadow-[0_0_10px_rgba(16,185,129,0.3),0_0_20px_rgba(16,185,129,0.1)] border border-emerald-500/35 animate-breathe":"bg-gradient-to-br from-indigo-800 to-indigo-400 shadow-[0_0_8px_rgba(99,102,241,0.15),inset_0_0_6px_rgba(99,102,241,0.06)] border border-indigo-500/12"),children:(0,a.jsxs)("svg",{width:V?26:28,height:V?26:28,viewBox:"0 0 32 32",className:"block",children:[(0,a.jsxs)("defs",{children:[(0,a.jsxs)("linearGradient",{id:"kc1",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,a.jsx)("stop",{offset:"0%",stopColor:$?"#d1fae5":"#e0e7ff"}),(0,a.jsx)("stop",{offset:"100%",stopColor:$?"#a7f3d0":"#c7d2fe"})]}),(0,a.jsxs)("linearGradient",{id:"kc2",x1:"0",y1:"0",x2:"0",y2:"1",children:[(0,a.jsx)("stop",{offset:"0%",stopColor:$?"#f0fdf4":"#f5f3ff"}),(0,a.jsx)("stop",{offset:"100%",stopColor:$?"#d1fae5":"#e0e7ff"})]}),(0,a.jsxs)("filter",{id:"kglow",children:[(0,a.jsx)("feGaussianBlur",{stdDeviation:"1.5",result:"b"}),(0,a.jsxs)("feMerge",{children:[(0,a.jsx)("feMergeNode",{in:"b"}),(0,a.jsx)("feMergeNode",{in:"SourceGraphic"})]})]})]}),(0,a.jsxs)("g",{filter:"url(#kglow)",children:[(0,a.jsx)("rect",{x:"7",y:"10",width:"4.5",height:"12",fill:"url(#kc1)",rx:"1.5"}),(0,a.jsx)("rect",{x:"13.75",y:"7.5",width:"4.5",height:"17",fill:"url(#kc2)",rx:"1.5"}),(0,a.jsx)("rect",{x:"20.5",y:"11",width:"4.5",height:"10",fill:"url(#kc1)",rx:"1.5"})]})]})}),V&&(0,a.jsx)("span",{className:"text-[17px] font-light tracking-[0.15em] uppercase text-gradient opacity-90",children:"KANBAII"})]}),V&&(0,a.jsx)("button",{className:"w-[26px] h-[26px] flex items-center justify-center rounded-md transition-all duration-200\n ".concat(q?"text-accent bg-accent-muted":"text-text-muted bg-transparent opacity-50 hover:opacity-100 hover:bg-surface hover:text-text"),onClick:()=>U(!q),title:q?"Unpin sidebar":"Pin sidebar",children:(0,a.jsx)(c,{size:13,fill:q?"currentColor":"none",className:"transition-transform duration-300 ".concat(q?"rotate-0":"-rotate-45")})})]}),(0,a.jsx)("div",{className:"h-px flex-shrink-0 opacity-50 ".concat(V?"mx-3 my-[2px_12px_6px]":"mx-2.5 my-[2px_10px_6px]"),style:{background:"linear-gradient(90deg, transparent 10%, var(--border-glow) 50%, transparent 90%)",margin:V?"2px 12px 6px":"2px 10px 6px"}}),(0,a.jsx)("div",{className:"flex-shrink-0 px-2 py-1",children:(0,a.jsxs)("button",{className:"w-full rounded-sm border border-dashed border-border-light bg-transparent text-text-muted text-xs font-medium\n flex items-center gap-2 cursor-pointer transition-all duration-200 ease-out-expo\n hover:bg-accent-muted hover:border-accent/25 hover:text-accent\n ".concat(V?"py-2 px-2.5 justify-start":"py-2 px-0 justify-center"),onClick:()=>T(!0),children:[(0,a.jsx)(d.Z,{size:14}),V&&"New Project"]})}),(0,a.jsx)("div",{className:"flex-1 overflow-y-auto overflow-x-hidden px-2 py-1 pb-4",children:0===e.length?(0,a.jsx)("div",{className:"text-center text-text-muted text-body py-8 px-3 transition-opacity duration-150 ".concat(V?"opacity-100":"opacity-0"),children:"No projects yet"}):e.map(e=>{let t=l===e.slug,s=k.projectSlug===e.slug&&("running"===k.status||"paused"===k.status),n=N.active&&N.projectSlug===e.slug,r=X&&g.q.getState().planner.projectSlug===e.slug,o=s||n||r,i=function(e){let t=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(e);return t?{r:parseInt(t[1],16),g:parseInt(t[2],16),b:parseInt(t[3],16)}:{r:99,g:102,b:241}}(e.color);return(0,a.jsxs)("div",{className:"relative mb-0.5 group",children:[(0,a.jsxs)("button",{className:"w-full rounded-sm text-left flex items-center transition-all duration-200 cursor-pointer\n ".concat(V?"py-3 px-3.5 justify-start gap-3":"py-2.5 px-0 justify-center gap-0","\n ").concat(t?"bg-surface border border-border":"bg-transparent border border-transparent hover:bg-surface"),onClick:()=>Q(e),children:[(0,a.jsx)("div",{className:"rounded-full flex-shrink-0 transition-all duration-400\n ".concat(V?"w-2.5 h-2.5":"w-3 h-3","\n ").concat(o?"!bg-emerald-500 animate-dot-pulse":""),style:{"--dot-r":i.r,"--dot-g":i.g,"--dot-b":i.b,...o?{}:{background:e.color,boxShadow:t?"0 0 8px ".concat(e.color,"50"):"none"}}}),V&&(0,a.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,a.jsx)("div",{className:"text-sm font-medium whitespace-nowrap overflow-hidden text-ellipsis tracking-tight\n ".concat(t?"text-text":"text-text-secondary"),children:e.title}),e.workingDir?(0,a.jsxs)("div",{className:"text-label flex items-center gap-1 mt-0.5 whitespace-nowrap overflow-hidden text-ellipsis text-text-muted",children:[(0,a.jsx)(x,{size:10}),e.workingDir.split(/[/\\]/).slice(-2).join("/")]}):(0,a.jsxs)("button",{className:"text-label flex items-center gap-1 mt-0.5 text-warning hover:text-accent transition-colors duration-150",onClick:t=>{t.stopPropagation(),A({slug:e.slug,current:""})},title:"Click to set project folder",children:[(0,a.jsx)(x,{size:10})," Set folder"]})]})]}),V&&(0,a.jsx)("div",{className:"absolute right-2 top-1/2 -translate-y-1/2",children:(0,a.jsx)("button",{className:"w-[22px] h-[22px] flex items-center justify-center rounded-sm text-text-muted bg-transparent transition-all duration-150 opacity-0 group-hover:opacity-100 hover:bg-surface hover:text-text-secondary",onClick:t=>{t.stopPropagation(),F(L===e.slug?null:e.slug),D(null)},children:(0,a.jsxs)("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"currentColor",children:[(0,a.jsx)("circle",{cx:"12",cy:"5",r:"2"}),(0,a.jsx)("circle",{cx:"12",cy:"12",r:"2"}),(0,a.jsx)("circle",{cx:"12",cy:"19",r:"2"})]})})}),L===e.slug&&V&&(0,a.jsxs)("div",{className:"absolute right-1 top-full mt-0.5 min-w-[160px] bg-glass backdrop-blur-[12px] backdrop-saturate-[160%] border border-glass-border rounded-md shadow-elevated z-[100] py-1 overflow-hidden animate-filter-in",onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)("button",{className:"w-full py-2 px-3 flex items-center gap-2 bg-transparent text-text-secondary text-xs text-left transition-colors duration-100 hover:bg-surface-hover",onClick:t=>{t.stopPropagation(),F(null),A({slug:e.slug,current:e.workingDir||""})},children:[(0,a.jsx)(x,{size:14})," ",e.workingDir?"Change Folder":"Set Folder"]}),e.workingDir&&(0,a.jsxs)("button",{className:"w-full py-2 px-3 flex items-center gap-2 bg-transparent text-text-secondary text-xs text-left transition-colors duration-100 hover:bg-surface-hover",onClick:t=>{t.stopPropagation(),F(null),fetch("".concat(W,"/api/system/open-folder"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e.workingDir})}).catch(()=>w("Failed to open folder","error"))},children:[(0,a.jsx)(x,{size:14})," Open Folder"]}),(0,a.jsxs)("button",{className:"w-full py-2 px-3 flex items-center gap-2 bg-transparent text-text-secondary text-xs text-left transition-colors duration-100 hover:bg-surface-hover",onClick:t=>Y(t,e),children:[(0,a.jsx)(u,{size:14})," Archive"]}),(0,a.jsxs)("button",{className:"w-full py-2 px-3 flex items-center gap-2 text-xs text-left transition-colors duration-100\n ".concat(R===e.slug?"text-danger bg-danger-dim":"text-danger bg-transparent hover:bg-danger-dim"),onClick:t=>{t.stopPropagation(),R===e.slug?(F(null),ee(t,e)):(D(e.slug),setTimeout(()=>D(null),3e3))},children:[(0,a.jsx)(p.Z,{size:14})," ",R===e.slug?"Confirm Delete?":"Move to Trash"]})]})]},e.id)})}),(0,a.jsx)("div",{className:"border-t border-[rgba(148,163,242,0.03)] flex-shrink-0",children:(0,a.jsx)(K,{isExpanded:V})}),(0,a.jsxs)("div",{className:"border-t border-[rgba(148,163,242,0.03)] flex-shrink-0 flex items-center\n ".concat(V?"px-3 py-2.5 flex-row gap-1 justify-center":"px-0 py-3 flex-col gap-3 justify-center"),children:[(0,a.jsx)("button",{className:"inline-flex items-center justify-center w-7 h-7 rounded-sm text-text-muted transition-all duration-150 hover:text-accent hover:bg-accent-muted",onClick:()=>_(!0),title:"Costs & Analytics",children:(0,a.jsx)(m,{size:14})}),(0,a.jsx)("button",{className:"inline-flex items-center justify-center w-7 h-7 rounded-sm text-text-muted transition-all duration-150 hover:text-text-secondary hover:bg-surface-hover",onClick:()=>P(!0),title:"Settings",children:(0,a.jsx)(h.Z,{size:14})}),(0,a.jsx)(y,{}),V&&(0,a.jsx)("span",{className:"text-data text-text-muted opacity-30 font-mono ml-auto",children:"H"})]})]}),S&&(0,a.jsx)(C,{onClose:()=>T(!1)}),I&&(0,a.jsx)(H,{currentPath:I.current,onSave:async e=>{try{await o(I.slug,{workingDir:e}),w("Folder linked","success")}catch(e){w("Failed to set folder","error")}A(null)},onClose:()=>A(null)}),z&&(0,a.jsx)(E,{onClose:()=>P(!1)}),M&&(0,a.jsx)("div",{className:"fixed inset-0 z-[200] bg-overlay backdrop-blur-[16px] backdrop-saturate-[180%] flex items-center justify-center animate-overlay-in",onClick:()=>_(!1),children:(0,a.jsxs)("div",{className:"bg-modal border border-glass-border rounded-lg shadow-modal max-w-[800px] w-[95%] max-h-[85vh] overflow-hidden animate-spring-pop",onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between px-5 py-3 border-b border-border",children:[(0,a.jsxs)("span",{className:"text-h2 font-semibold flex items-center gap-2",children:[(0,a.jsx)(m,{size:16})," Costs & Analytics"]}),(0,a.jsx)("button",{className:"btn-icon",onClick:()=>_(!1),children:(0,a.jsx)("span",{className:"text-text-muted",children:"\xd7"})})]}),(0,a.jsx)("div",{className:"overflow-y-auto max-h-[calc(85vh-52px)]",children:(0,a.jsx)(Z,{projectSlug:l||void 0})})]})})]})}function H(e){let{currentPath:t,onSave:s,onClose:r}=e,[o,l]=(0,n.useState)(t),i=(0,n.useRef)(null);return(0,n.useEffect)(()=>{var e,t;null===(e=i.current)||void 0===e||e.focus(),null===(t=i.current)||void 0===t||t.select()},[]),(0,a.jsx)("div",{className:"fixed inset-0 z-[200] bg-overlay backdrop-blur-[16px] backdrop-saturate-[180%] flex items-center justify-center animate-overlay-in",onClick:r,children:(0,a.jsxs)("div",{className:"bg-modal border border-glass-border rounded-lg shadow-modal max-w-[440px] w-[92%] animate-spring-pop relative overflow-hidden",onClick:e=>e.stopPropagation(),children:[(0,a.jsx)("div",{className:"absolute top-0 left-[15%] right-[15%] h-px pointer-events-none",style:{background:"linear-gradient(90deg, transparent, rgba(129, 140, 248, 0.2), transparent)"}}),(0,a.jsxs)("div",{className:"px-6 pt-5 pb-4",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-1",children:[(0,a.jsx)(x,{size:16,className:"text-accent"}),(0,a.jsx)("span",{className:"text-h2 font-semibold tracking-tight",children:t?"Change Folder":"Link Project Folder"})]}),(0,a.jsx)("p",{className:"text-label text-text-muted leading-relaxed",children:"Set the local directory where this project's code lives. Ralph and the terminal will use this path."})]}),(0,a.jsxs)("form",{onSubmit:e=>{e.preventDefault(),o.trim()&&s(o.trim())},className:"px-6 pb-5 flex flex-col gap-4",children:[(0,a.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,a.jsx)("label",{className:"text-data font-semibold text-text-muted uppercase tracking-widest font-mono",children:"Folder Path"}),(0,a.jsx)("input",{ref:i,value:o,onChange:e=>l(e.target.value),placeholder:"C:\\Users\\marti\\projects\\my-app",className:"w-full font-mono text-xs",spellCheck:!1})]}),(0,a.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,a.jsx)("button",{type:"button",className:"btn-ghost",onClick:r,children:"Cancel"}),(0,a.jsxs)("button",{type:"submit",className:"btn-primary",disabled:!o.trim(),children:[(0,a.jsx)(x,{size:12})," ",t?"Update":"Link Folder"]})]})]})]})})}var V=s(401);let J=(0,i.Z)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]),X=(0,i.Z)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]),$={success:{accent:"border-l-success",iconColor:"text-success",icon:(0,a.jsx)(V.Z,{size:14})},error:{accent:"border-l-danger",iconColor:"text-danger",icon:(0,a.jsx)(J,{size:14})},info:{accent:"border-l-accent",iconColor:"text-accent",icon:(0,a.jsx)(X,{size:14})}};function Q(){let{toasts:e,removeToast:t}=(0,v.E)();return 0===e.length?null:(0,a.jsx)("div",{className:"fixed bottom-4 right-4 flex flex-col gap-1.5 z-[400] pointer-events-none",children:e.map((s,n)=>{let r=$[s.type]||$.info,o=n<e.length-1;return(0,a.jsxs)("div",{className:"bg-glass backdrop-blur-[16px] backdrop-saturate-[160%] border border-glass-border rounded-md\n px-3.5 py-2.5 text-xs font-medium text-text shadow-elevated\n flex items-center gap-2.5 animate-toast-in pointer-events-auto min-w-[220px]\n relative overflow-hidden border-l-2 ".concat(r.accent,"\n transition-all duration-200 ease-out-expo\n ").concat(o?"scale-[0.97] opacity-80":""),children:[(0,a.jsx)("div",{className:"absolute top-0 left-[15%] right-[15%] h-px bg-gradient-to-r from-transparent via-white/[0.04] to-transparent pointer-events-none"}),(0,a.jsx)("span",{className:"flex flex-shrink-0 ".concat(r.iconColor),children:r.icon}),(0,a.jsx)("span",{className:"flex-1",children:s.message}),(0,a.jsx)("button",{className:"text-text-muted p-0.5 flex rounded-xs transition-all duration-120 ease-out-expo hover:text-text hover:bg-surface-hover",onClick:()=>t(s.id),children:(0,a.jsx)(k.Z,{size:12})})]},s.id)})})}let Y=[{title:"Navigation",shortcuts:[{keys:["↑","↓"],desc:"Previous / next project"},{keys:["B"],desc:"Board view"},{keys:["C"],desc:"Console / Terminal"},{keys:["R"],desc:"Ralph / Agents"},{keys:["S"],desc:"Soul"}]},{title:"Actions",shortcuts:[{keys:["N"],desc:"New task"},{keys:["Ctrl","F"],desc:"Toggle filter bar"}]},{title:"General",shortcuts:[{keys:["H"],desc:"Show this help"},{keys:["Esc"],desc:"Close modal / go back"}]}];function ee(e){let{onClose:t}=e,{overlayProps:s}=(0,N.N)(t);return(0,a.jsx)("div",{className:"glass-overlay",...s,children:(0,a.jsxs)("div",{className:"modal-box w-[400px] max-w-[90%] p-7",onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-6",children:[(0,a.jsx)("span",{className:"text-h2 font-semibold tracking-tight",children:"Keyboard Shortcuts"}),(0,a.jsx)("button",{className:"btn-icon",onClick:t,children:(0,a.jsx)(k.Z,{size:16})})]}),(0,a.jsx)("div",{className:"flex flex-col gap-[22px]",children:Y.map(e=>(0,a.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,a.jsx)("div",{className:"text-xxs font-semibold text-text-muted uppercase tracking-widest font-mono mb-1",children:e.title}),e.shortcuts.map(e=>(0,a.jsxs)("div",{className:"flex items-center justify-between py-1",children:[(0,a.jsx)("div",{className:"flex items-center gap-[3px]",children:e.keys.map((t,s)=>(0,a.jsxs)("span",{children:[(0,a.jsx)("kbd",{className:"inline-flex items-center justify-center min-w-[24px] h-6 px-[7px] bg-[rgba(148,163,242,0.04)] border border-[rgba(148,163,242,0.08)] border-b-2 border-b-[rgba(148,163,242,0.1)] rounded-[5px] text-[10px] font-semibold text-text font-mono",children:t}),s<e.keys.length-1&&(0,a.jsx)("span",{className:"text-xxs text-text-muted opacity-50",children:"+"})]},s))}),(0,a.jsx)("span",{className:"text-xs text-text-secondary",children:e.desc})]},e.desc))]},e.title))})]})})}let et=(0,i.Z)("sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]),es=(0,i.Z)("moon",[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401",key:"kfwtm"}]]),ea=(0,i.Z)("keyboard",[["path",{d:"M10 8h.01",key:"1r9ogq"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M14 8h.01",key:"1primd"}],["path",{d:"M16 12h.01",key:"1l6xoz"}],["path",{d:"M18 8h.01",key:"emo2bl"}],["path",{d:"M6 8h.01",key:"x9i8wu"}],["path",{d:"M7 16h10",key:"wp8him"}],["path",{d:"M8 12h.01",key:"czm47f"}],["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}]]);var en=s(3468),er=s(2222),eo=s(221),el=s(5805),ei=s(2208),ec=s(3247),ed=s(15);function ex(e){let{onClose:t,onShowCreateProject:s,onShowCreateWorkItem:r,onShowHelp:o}=e,[i,c]=(0,n.useState)(""),[u,p]=(0,n.useState)(0),m=(0,n.useRef)(null),h=(0,n.useRef)(null),g=(0,f.i)(e=>e.projects),v=(0,ed.o)(e=>e.workItems),{goToProject:j,goToWorkItem:y,setView:k,projectSlug:N,workItemSlug:w}=(0,b.U)(),{theme:C,toggleTheme:S}=l(),T=(0,n.useMemo)(()=>{let e=[];return e.push({id:"create-project",label:"Create Project",section:"Actions",icon:(0,a.jsx)(d.Z,{size:14}),action:()=>{t(),null==s||s()}}),N&&e.push({id:"create-wi",label:"Create Work Item",section:"Actions",icon:(0,a.jsx)(d.Z,{size:14}),action:()=>{t(),null==r||r()}}),e.push({id:"toggle-theme",label:"Switch to ".concat("dark"===C?"Light":"Dark"," mode"),section:"Actions",icon:"dark"===C?(0,a.jsx)(et,{size:14}):(0,a.jsx)(es,{size:14}),action:()=>{S(),t()}}),e.push({id:"keyboard-shortcuts",label:"Keyboard Shortcuts",section:"Actions",icon:(0,a.jsx)(ea,{size:14}),shortcut:"H",action:()=>{t(),null==o||o()}}),N&&(w?[{key:"board",label:"Go to Board",icon:(0,a.jsx)(en.Z,{size:14}),shortcut:"B"},{key:"ralph",label:"Go to Ralph",icon:(0,a.jsx)(er.Z,{size:14}),shortcut:"R"}]:[{key:"work-items",label:"Go to Work Items",icon:(0,a.jsx)(en.Z,{size:14}),shortcut:"W"},{key:"console",label:"Go to Console",icon:(0,a.jsx)(eo.Z,{size:14}),shortcut:"C"},{key:"teams",label:"Go to Teams",icon:(0,a.jsx)(el.Z,{size:14}),shortcut:"T"},{key:"soul",label:"Go to Soul",icon:(0,a.jsx)(ei.Z,{size:14}),shortcut:"S"}]).forEach(s=>{e.push({id:"nav-".concat(s.key),label:s.label,section:"Navigation",icon:s.icon,shortcut:s.shortcut,action:()=>{k(s.key),t()}})}),g.forEach(s=>{e.push({id:"project-".concat(s.slug),label:s.title,section:"Projects",icon:(0,a.jsx)(x,{size:14}),action:()=>{j(s.slug),t()}})}),N&&v.forEach(s=>{e.push({id:"wi-".concat(s.slug),label:s.title,section:"Work Items",icon:(0,a.jsx)(_.Z,{size:14}),action:()=>{y(N,s.slug),t()}})}),e},[g,v,N,C,t,s,r,o,j,y,k,S]),E=(0,n.useMemo)(()=>{if(!i.trim())return T;let e=i.toLowerCase();return T.filter(t=>t.label.toLowerCase().includes(e)||t.section.toLowerCase().includes(e))},[T,i]);(0,n.useEffect)(()=>{p(0)},[E.length]),(0,n.useEffect)(()=>{var e;null===(e=m.current)||void 0===e||e.focus()},[]);let z=(0,n.useCallback)(e=>{"ArrowDown"===e.key?(e.preventDefault(),p(e=>Math.min(e+1,E.length-1))):"ArrowUp"===e.key?(e.preventDefault(),p(e=>Math.max(e-1,0))):"Enter"===e.key&&E[u]?(e.preventDefault(),E[u].action()):"Escape"===e.key&&t()},[E,u,t]);(0,n.useEffect)(()=>{var e;let t=null===(e=h.current)||void 0===e?void 0:e.querySelector('[data-selected="true"]');null==t||t.scrollIntoView({block:"nearest"})},[u]);let P=(0,n.useMemo)(()=>{let e=new Map;return E.forEach(t=>{let s=e.get(t.section)||[];s.push(t),e.set(t.section,s)}),e},[E]),M=-1;return(0,a.jsx)("div",{className:"fixed inset-0 z-[500] flex items-start justify-center pt-[20vh] animate-overlay-in",style:{background:"rgba(0,0,0,0.5)",backdropFilter:"blur(8px)"},onClick:t,children:(0,a.jsxs)("div",{className:"w-full max-w-[520px] bg-modal rounded-xl overflow-hidden shadow-modal animate-spring-pop border border-glass-border relative",onClick:e=>e.stopPropagation(),children:[(0,a.jsx)("div",{className:"absolute top-0 left-[15%] right-[15%] h-px bg-gradient-to-r from-transparent via-[rgba(129,140,248,0.2)] to-transparent pointer-events-none z-10"}),(0,a.jsxs)("div",{className:"flex items-center gap-3 px-4 py-3 border-b border-border",children:[(0,a.jsx)(ec.Z,{size:16,className:"text-text-muted flex-shrink-0"}),(0,a.jsx)("input",{ref:m,type:"text",value:i,onChange:e=>c(e.target.value),onKeyDown:z,placeholder:"Type a command or search...",className:"flex-1 bg-transparent border-none outline-none text-body text-text placeholder:text-text-muted p-0 shadow-none"}),(0,a.jsx)("kbd",{className:"text-data font-mono text-text-muted bg-surface px-1.5 py-0.5 rounded border border-border",children:"ESC"})]}),(0,a.jsx)("div",{ref:h,className:"max-h-[320px] overflow-y-auto py-1",children:0===E.length?(0,a.jsx)("div",{className:"px-4 py-8 text-center text-text-muted text-xs",children:"No results found"}):Array.from(P.entries()).map(e=>{let[t,s]=e;return(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"px-4 pt-2 pb-1 text-xxs font-semibold text-text-muted uppercase tracking-[0.08em]",children:t}),s.map(e=>{let t=++M===u,s=M;return(0,a.jsxs)("button",{"data-selected":t,className:"w-full flex items-center gap-3 px-4 py-2 text-xs text-left transition-colors duration-75\n ".concat(t?"bg-accent-muted text-text":"text-text-secondary hover:bg-surface-hover hover:text-text"),onClick:e.action,onMouseEnter:()=>p(s),children:[(0,a.jsx)("span",{className:"flex-shrink-0 ".concat(t?"text-accent":"text-text-muted"),children:e.icon}),(0,a.jsx)("span",{className:"flex-1 truncate",children:e.label}),e.shortcut&&(0,a.jsx)("kbd",{className:"text-data font-mono text-text-muted bg-surface px-1.5 py-0.5 rounded border border-border",children:e.shortcut})]},e.id)})]},t)})})]})})}var eu=s(4822);let ep=(0,i.Z)("skip-forward",[["path",{d:"M21 4v16",key:"7j8fe9"}],["path",{d:"M6.029 4.285A2 2 0 0 0 3 6v12a2 2 0 0 0 3.029 1.715l9.997-5.998a2 2 0 0 0 .003-3.432z",key:"zs4d6"}]]);var em=s(1094),eh=s(4743);let ef=s(257).env.NEXT_PUBLIC_API_URL||"http://localhost:5555";function eb(){let e=(0,g.q)(e=>e.escalation),t=(0,v.E)(e=>e.addToast),[s,r]=(0,n.useState)(""),[o,l]=(0,n.useState)(!1),i=(0,n.useRef)(null);if((0,n.useEffect)(()=>{e&&(r(""),setTimeout(()=>{var e;return null===(e=i.current)||void 0===e?void 0:e.focus()},100),"undefined"!=typeof Notification&&("granted"===Notification.permission?new Notification("KANBAII — ".concat("ralph"===e.source?"Ralph":"Teams"," needs input"),{body:e.question.slice(0,120),icon:"/favicon.svg"}):"denied"!==Notification.permission&&Notification.requestPermission()))},[e]),!e||"planner"===e.source)return null;let c=async a=>{let n=a||s.trim();if(n&&!o){l(!0);try{await fetch("".concat(ef,"/api/escalation/respond"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e.id,response:n})}),t("Response sent to Claude","success")}catch(e){t("Failed to send response","error")}l(!1)}},d="ralph"===e.source,x=d?eu.Z:el.Z,u=d?"Ralph":"Teams",p=function(e){try{let t=JSON.parse(e);if(t.questions&&Array.isArray(t.questions)&&t.questions.length>0){let s=t.questions[0];return{question:s.question||s.header||e,options:(s.options||[]).map(e=>({label:"string"==typeof e?e:e.label||e.text||"",description:e.description}))}}if(t.question)return{question:t.question,options:(t.options||[]).map(e=>({label:"string"==typeof e?e:e.label||""}))}}catch(e){}return{question:e,options:[]}}(e.question),m=p.question,h=p.options.length>0?p.options:e.options;return(0,a.jsx)("div",{className:"fixed inset-0 z-[300] flex items-center justify-center animate-overlay-in",style:{background:"rgba(3, 3, 8, 0.85)",backdropFilter:"blur(20px) saturate(180%)"},children:(0,a.jsxs)("div",{className:"max-w-[520px] w-[94%] animate-spring-pop relative",children:[(0,a.jsx)("div",{className:"absolute -inset-px rounded-lg animate-breathe",style:{background:d?"linear-gradient(135deg, rgba(99,102,241,0.3), rgba(129,140,248,0.1), rgba(99,102,241,0.3))":"linear-gradient(135deg, rgba(16,185,129,0.3), rgba(52,211,153,0.1), rgba(16,185,129,0.3))"}}),(0,a.jsxs)("div",{className:"relative bg-modal border border-glass-border rounded-lg shadow-modal overflow-hidden",children:[(0,a.jsx)("div",{className:"absolute top-0 left-[10%] right-[10%] h-px pointer-events-none",style:{background:d?"linear-gradient(90deg, transparent, rgba(99,102,241,0.4), transparent)":"linear-gradient(90deg, transparent, rgba(52,211,153,0.4), transparent)"}}),(0,a.jsxs)("div",{className:"flex items-center gap-3 px-6 pt-5 pb-3",children:[(0,a.jsx)("div",{className:"w-8 h-8 rounded-full flex items-center justify-center animate-breathe\n ".concat(d?"bg-accent-muted border border-accent/20":"bg-success-dim border border-success/20"),children:(0,a.jsx)(x,{size:16,className:d?"text-accent":"text-success"})}),(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"text-sm font-semibold text-text tracking-tight",children:[u," needs your input"]}),e.taskTitle&&(0,a.jsxs)("div",{className:"text-xxs text-text-muted font-mono mt-0.5",children:["Task: ",e.taskTitle]})]})]}),(0,a.jsx)("div",{className:"mx-6 mb-4 p-3 bg-bg border border-border rounded-md shadow-inset",children:(0,a.jsx)("div",{className:"text-sm text-text leading-relaxed",children:m})}),h.length>0&&(0,a.jsx)("div",{className:"mx-6 mb-3 flex flex-col gap-1.5",children:h.map((e,t)=>(0,a.jsxs)("button",{className:"flex flex-col gap-0.5 px-3 py-2.5 text-left rounded-sm border border-border transition-all duration-150 hover:border-accent hover:bg-accent-muted group",onClick:()=>c("string"==typeof e?e:e.label),disabled:o,children:[(0,a.jsx)("span",{className:"text-xs font-semibold text-text group-hover:text-accent transition-colors",children:"string"==typeof e?e:e.label}),"string"!=typeof e&&e.description&&(0,a.jsx)("span",{className:"text-xxs text-text-muted leading-snug",children:e.description})]},t))}),(0,a.jsxs)("div",{className:"px-6 pb-5",children:[(0,a.jsx)("textarea",{ref:i,value:s,onChange:e=>r(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),c())},placeholder:"Type your response... (Enter to send)",rows:2,className:"w-full resize-none text-xs",disabled:o}),(0,a.jsxs)("div",{className:"flex items-center gap-2 mt-3",children:[(0,a.jsxs)("button",{className:"inline-flex items-center gap-1.5 text-xxs text-text-muted font-mono px-3 py-1.5 rounded-sm border border-border transition-all duration-150 hover:text-text-secondary hover:bg-surface-hover",onClick:()=>c("yes"),disabled:o,children:[(0,a.jsx)(ep,{size:11})," Skip (yes)"]}),(0,a.jsxs)("button",{className:"inline-flex items-center gap-1.5 text-xxs text-danger font-mono px-3 py-1.5 rounded-sm border border-danger/20 transition-all duration-150 hover:bg-danger-dim",onClick:async()=>{await fetch(d?"".concat(ef,"/api/ralph/stop"):"".concat(ef,"/api/teams/stop"),{method:"POST"}),c("STOP"),t("".concat(u," stopped"),"info")},disabled:o,children:[(0,a.jsx)(em.Z,{size:11})," Stop ",u]}),(0,a.jsx)("div",{className:"flex-1"}),(0,a.jsxs)("button",{className:"inline-flex items-center gap-1.5 px-4 py-1.5 text-white text-xs font-semibold rounded-sm\n bg-gradient-to-br ".concat(d?"from-indigo-600 to-indigo-400":"from-emerald-600 to-emerald-400","\n relative overflow-hidden\n before:absolute before:inset-0 before:bg-gradient-to-b before:from-white/15 before:to-transparent before:pointer-events-none\n transition-all duration-150 hover:shadow-glow-accent hover:-translate-y-px disabled:opacity-40"),onClick:()=>c(),disabled:!s.trim()||o,children:[o?(0,a.jsx)("span",{className:"inline-block w-3 h-3 border-2 border-white/20 border-t-white rounded-full animate-spin"}):(0,a.jsx)(eh.Z,{size:12}),"Send"]})]})]})]})]})})}function eg(e){let{children:t}=e;!function(){let e=(0,n.useRef)(!1);(0,n.useEffect)(()=>{if(e.current)return;e.current=!0;let t=(0,F.h)(),s=g.q.getState,a=f.i.getState,n=ed.o.getState;return t.on("project:updated",e=>{let{project:t}=e;return a().onProjectUpdated(t)}),t.on("project:deleted",e=>{let{slug:t}=e;return a().onProjectDeleted(t)}),t.on("workItem:updated",e=>{let{projectSlug:t,workItem:s}=e;return n().onWorkItemUpdated(t,s)}),t.on("workItem:deleted",e=>{let{projectSlug:t,workItemId:s}=e;return n().onWorkItemDeleted(t,s)}),t.on("ralph:started",e=>s().onRalphStarted(e)),t.on("ralph:progress",e=>s().onRalphProgress(e)),t.on("ralph:output",e=>s().onRalphOutput(e)),t.on("ralph:completed",e=>s().onRalphCompleted(e)),t.on("ralph:error",e=>s().onRalphError(e)),t.on("ralph:input-needed",e=>s().onRalphInputNeeded(e)),t.on("live:started",e=>s().onTeamsStarted(e)),t.on("live:worker-assigned",e=>s().onTeamsWorkerAssigned(e)),t.on("live:worker-completed",e=>s().onTeamsWorkerCompleted(e)),t.on("live:metrics",e=>s().onTeamsMetrics(e)),t.on("live:output",e=>s().onTeamsOutput(e)),t.on("live:stopped",e=>s().onTeamsStopped(e)),t.on("teams:input-needed",e=>s().onTeamsInputNeeded(e)),t.on("coordinator:thinking",e=>s().onCoordinatorThinking(e)),t.on("coordinator:tool_call",e=>s().onCoordinatorToolCall(e)),t.on("coordinator:completed",e=>s().onCoordinatorCompleted(e)),t.on("escalation:created",e=>{if("planner"===e.source){s().onPlannerEscalation({id:e.id,source:"planner",taskId:e.taskId||"planner",taskTitle:e.taskTitle||"AI Planner",question:e.question,options:e.options||[],timeoutMs:e.timeoutMs||18e5});return}s().onEscalationCreated(e)}),t.on("escalation:responded",e=>{s().planner.escalation?s().onPlannerEscalationResponded((null==e?void 0:e.response)||"responded"):s().onEscalationResponded()}),t.on("escalation:timeout",()=>{s().planner.escalation?s().onPlannerEscalationResponded("(timed out)"):s().onEscalationTimeout()}),t.on("planner:started",e=>s().onPlannerStarted(e)),t.on("planner:message",e=>s().onPlannerMessage(e)),t.on("planner:item-discovered",e=>s().onPlannerItemDiscovered(e)),t.on("planner:item-updated",e=>s().onPlannerItemUpdated(e)),t.on("planner:escalation",e=>s().onPlannerEscalation(e)),t.on("planner:item-approved",e=>s().onPlannerItemApproved(e)),t.on("planner:stopped",()=>s().onPlannerStopped()),t.on("terminal:output",e=>{let t=b.U.getState().projectSlug;e.projectSlug&&e.projectSlug!==t||(s().appendTerminalOutput(e.text),s().setTerminalStatus("running"))}),t.on("terminal:closed",e=>{let t=b.U.getState().projectSlug;null!=e&&e.projectSlug&&e.projectSlug!==t||s().setTerminalStatus("idle")}),t.on("terminal:error",e=>{let t=b.U.getState().projectSlug;null!=e&&e.projectSlug&&e.projectSlug!==t||(s().appendTerminalOutput("ERROR: ".concat(e.message)),s().setTerminalStatus("error"))}),s().rehydrate(),t.on("connect",()=>s().rehydrate()),()=>{(0,F.l)(),e.current=!1}},[])}();let[s,r]=(0,n.useState)(!1),[o,l]=(0,n.useState)(!1),i=(0,n.useCallback)(()=>r(e=>!e),[]),c=(0,n.useCallback)(()=>r(!1),[]),d=(0,n.useCallback)(()=>l(e=>!e),[]),x=(0,n.useCallback)(()=>l(!1),[]);return!function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{projectSlug:t,workItemSlug:s,setView:a,goToProject:r}=(0,b.U)(),o=(0,f.i)(e=>e.projects);(0,n.useEffect)(()=>{let n=n=>{var l,i,c,d,x;let u=n.target.tagName;if("INPUT"!==u&&"TEXTAREA"!==u&&"SELECT"!==u&&!n.target.isContentEditable){if((n.ctrlKey||n.metaKey)&&"k"===n.key){n.preventDefault(),null===(l=e.onToggleCommandPalette)||void 0===l||l.call(e);return}if((n.ctrlKey||n.metaKey)&&"f"===n.key){n.preventDefault(),null===(i=e.onToggleFilter)||void 0===i||i.call(e);return}if(!n.ctrlKey&&!n.metaKey&&!n.altKey)switch(n.key.toLowerCase()){case"w":t&&!s&&a("work-items");break;case"c":t&&!s&&a("console");break;case"t":t&&!s&&a("teams");break;case"s":t&&!s&&a("soul");break;case"b":s&&a("board");break;case"r":s&&a("ralph");break;case"n":null===(c=e.onNewTask)||void 0===c||c.call(e);break;case"h":null===(d=e.onToggleHelp)||void 0===d||d.call(e);break;case"escape":null===(x=e.onEscape)||void 0===x||x.call(e);break;case"arrowup":{n.preventDefault();let e=o.findIndex(e=>e.slug===t);e>0&&r(o[e-1].slug);break}case"arrowdown":{n.preventDefault();let e=o.findIndex(e=>e.slug===t);e<o.length-1&&r(o[e+1].slug)}}}};return window.addEventListener("keydown",n),()=>window.removeEventListener("keydown",n)},[t,s,o,a,r,e])}({onToggleHelp:i,onToggleCommandPalette:d,onEscape:()=>{o?x():c()}}),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"flex h-screen w-screen overflow-hidden",children:[(0,a.jsx)(G,{}),(0,a.jsx)("div",{className:"w-px flex-shrink-0 bg-gradient-to-b from-transparent via-border-glow to-transparent"}),(0,a.jsx)("main",{className:"flex-1 overflow-hidden flex flex-col surface-gradient",children:t})]}),(0,a.jsx)(Q,{}),(0,a.jsx)(eb,{}),s&&(0,a.jsx)(ee,{onClose:c}),o&&(0,a.jsx)(ex,{onClose:x,onShowHelp:()=>{x(),i()}})]})}function ev(e){let{children:t}=e;return(0,a.jsx)(o,{children:(0,a.jsx)(eg,{children:t})})}},7960:function(){}},function(e){e.O(0,[587,947,23,971,117,744],function(){return e(e.s=4732)}),_N_E=e.O()}]);
|