@copilotkit/web-inspector 1.68.0 → 1.68.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.umd.js CHANGED
@@ -6,7 +6,7 @@
6
6
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
7
7
 
8
8
  //#region src/styles/generated.css
9
- var generated_default = "/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight: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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-green-100:oklch(96.2% .044 156.743);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-700:oklch(50.8% .118 165.612);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-700:oklch(50% .134 242.749);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-700:oklch(49.1% .27 292.581);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-700:oklch(49.6% .265 301.924);--color-fuchsia-50:oklch(97.7% .017 320.058);--color-fuchsia-200:oklch(90.3% .076 319.62);--color-fuchsia-700:oklch(51.8% .253 323.949);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-700:oklch(51.4% .222 16.935);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--font-weight-medium:500;--font-weight-semibold:600;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:host{font-family:var(--font-sans);color:var(--color-slate-900);background-color:#0000;display:block}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:calc(var(--spacing)*0)}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.bottom-1{bottom:calc(var(--spacing)*1)}.left-0{left:calc(var(--spacing)*0)}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.m-0{margin:calc(var(--spacing)*0)}.mx-4{margin-inline:calc(var(--spacing)*4)}.my-1{margin-block:calc(var(--spacing)*1)}.my-3{margin-block:calc(var(--spacing)*3)}.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-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1\\.5{height:calc(var(--spacing)*1.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-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-full{height:100%}.max-h-64{max-height:calc(var(--spacing)*64)}.w-1\\.5{width:calc(var(--spacing)*1.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\\.5{width:calc(var(--spacing)*3.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-40{width:calc(var(--spacing)*40)}.w-auto{width:auto}.w-full{width:100%}.max-w-\\[240px\\]{max-width:240px}.max-w-md{max-width:var(--container-md)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\\[160px\\]{min-width:160px}.min-w-\\[200px\\]{min-width:200px}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.translate-x-0\\.5{--tw-translate-x:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-\\[2px\\]{--tw-translate-y:calc(2px*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-nwse-resize{cursor:nwse-resize}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-gray-200>:not(:last-child)){border-color:var(--color-gray-200)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.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-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber-200{border-color:var(--color-amber-200)}.border-blue-200{border-color:var(--color-blue-200)}.border-emerald-200{border-color:var(--color-emerald-200)}.border-fuchsia-200{border-color:var(--color-fuchsia-200)}.border-gray-200{border-color:var(--color-gray-200)}.border-purple-200{border-color:var(--color-purple-200)}.border-rose-200{border-color:var(--color-rose-200)}.border-sky-200{border-color:var(--color-sky-200)}.border-slate-200{border-color:var(--color-slate-200)}.border-violet-200{border-color:var(--color-violet-200)}.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)}}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-fuchsia-50{background-color:var(--color-fuchsia-50)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-50\\/50{background-color:#f9fafb80}@supports (color:color-mix(in lab, red, red)){.bg-gray-50\\/50{background-color:color-mix(in oklab,var(--color-gray-50)50%,transparent)}}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-green-100{background-color:var(--color-green-100)}.bg-purple-50{background-color:var(--color-purple-50)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-rose-500{background-color:var(--color-rose-500)}.bg-sky-50{background-color:var(--color-sky-50)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-slate-950\\/95{background-color:#020618f2}@supports (color:color-mix(in lab, red, red)){.bg-slate-950\\/95{background-color:color-mix(in oklab,var(--color-slate-950)95%,transparent)}}.bg-violet-50{background-color:var(--color-violet-50)}.bg-white{background-color:var(--color-white)}.bg-white\\/60{background-color:#fff9}@supports (color:color-mix(in lab, red, red)){.bg-white\\/60{background-color:color-mix(in oklab,var(--color-white)60%,transparent)}}.bg-white\\/95{background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.bg-white\\/95{background-color:color-mix(in oklab,var(--color-white)95%,transparent)}}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.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-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-0\\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.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-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[9px\\]{font-size:9px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.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)}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-emerald-700{color:var(--color-emerald-700)}.text-fuchsia-700{color:var(--color-fuchsia-700)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-purple-700{color:var(--color-purple-700)}.text-rose-700{color:var(--color-rose-700)}.text-sky-700{color:var(--color-sky-700)}.text-slate-500{color:var(--color-slate-500)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-violet-700{color:var(--color-violet-700)}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-black\\/5{--tw-ring-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.ring-black\\/5{--tw-ring-color:color-mix(in oklab,var(--color-black)5%,transparent)}}.ring-transparent{--tw-ring-color:transparent}.ring-white\\/10{--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.ring-white\\/10{--tw-ring-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-md{--tw-backdrop-blur:blur(var(--blur-md));-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));-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,)}.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-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-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))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\\:border-gray-300:hover{border-color:var(--color-gray-300)}.hover\\:border-white\\/30:hover{border-color:#ffffff4d}@supports (color:color-mix(in lab, red, red)){.hover\\:border-white\\/30:hover{border-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.hover\\:bg-blue-50\\/50:hover{background-color:#eff6ff80}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-blue-50\\/50:hover{background-color:color-mix(in oklab,var(--color-blue-50)50%,transparent)}}.hover\\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\\:bg-gray-800:hover{background-color:var(--color-gray-800)}.hover\\:bg-slate-900\\/95:hover{background-color:#0f172bf2}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-slate-900\\/95:hover{background-color:color-mix(in oklab,var(--color-slate-900)95%,transparent)}}.hover\\:text-gray-600:hover{color:var(--color-gray-600)}.hover\\:text-gray-900:hover{color:var(--color-gray-900)}.hover\\:text-slate-900:hover{color:var(--color-slate-900)}}.focus\\:border-gray-300:focus{border-color:var(--color-gray-300)}.focus\\:bg-gray-50:focus{background-color:var(--color-gray-50)}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\\:ring-gray-200:focus{--tw-ring-color:var(--color-gray-200)}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\\:outline-\\[\\#BEC2FF\\]:focus-visible{outline-color:#bec2ff}.focus-visible\\:outline-gray-300:focus-visible{outline-color:var(--color-gray-300)}.focus-visible\\:outline-gray-400:focus-visible{outline-color:var(--color-gray-400)}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-50:disabled{opacity:.5}@media (min-width:48rem){.md\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\\[\\&\\>svg\\]\\:\\!h-8>svg{height:calc(var(--spacing)*8)!important}.\\[\\&\\>svg\\]\\:\\!w-8>svg{width:calc(var(--spacing)*8)!important}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.inspector-account-strip{color:#fff;background-color:#010507;width:100%;min-width:0}.inspector-account-logo{filter:brightness(0)invert()}.inspector-agent-placeholder{color:#afafb7;border-color:#ffffff47}.inspector-primary-navigation,.inspector-child-navigation{cursor:default;background-color:#fff;border-bottom:1px solid #dbdbe5;flex:none;align-items:center;gap:4px;width:100%;min-width:0;padding:6px 12px;display:flex}.inspector-primary-navigation{overflow:auto hidden}.inspector-child-navigation{overscroll-behavior-inline:contain;white-space:nowrap;overflow:auto hidden}.inspector-nav-control{color:#57575b;min-height:32px;font:inherit;outline-offset:2px;cursor:pointer;background-color:#0000;border:1px solid #0000;border-radius:4px;outline:2px solid #0000;flex:none;justify-content:center;align-items:center;gap:6px;padding:6px 9px;font-size:12px;font-weight:600;line-height:1.25;display:inline-flex}.inspector-nav-control:hover{color:#010507;background-color:#f0f0f4}.inspector-nav-control-active{color:#3f176f;background-color:#eee6fe;border-color:#bec2ff}.inspector-nav-icon{flex:none;align-items:center;display:inline-flex}.inspector-nav-icon svg{width:15px;height:15px}.inspector-nav-control:focus-visible,.inspector-nav-control:focus,.inspector-account-control:focus-visible,.inspector-account-control:focus,[data-inspector-thread-cta]:focus-visible,[data-inspector-thread-cta]:focus,[data-inspector-action-placement=threads-footer]:focus-visible,[data-inspector-action-placement=threads-footer]:focus{outline-offset:2px;outline:2px solid #6430ab!important}.inspector-account-control{color:#afafb7;outline-offset:2px;cursor:pointer;outline:2px solid #0000}.inspector-account-control:hover,.inspector-account-control-active{color:#fff;background-color:#ffffff1f}[data-inspector-thread-cta]{color:#57575b;white-space:nowrap;outline-offset:2px;cursor:pointer;background-color:#fff;border:1px solid #dbdbe5;border-radius:4px;outline:2px solid #0000;flex:none;justify-content:center;align-items:center;min-height:32px;margin-left:auto;padding:6px 9px;font-size:11px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}[data-inspector-account-strip] button,[data-inspector-account-strip] a{cursor:pointer}[data-inspector-thread-cta]:hover{color:#010507;background-color:#f7f7f9;border-color:#afafb7}[data-inspector-threads-setup-prompt],[data-inspector-threads-setup-link]{min-height:34px;font:inherit;outline-offset:2px;cursor:pointer;border:1px solid #dbdbe5;border-radius:6px;outline:2px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}[data-inspector-threads-setup-prompt]{color:#fff;background-color:#010507;border-color:#010507}[data-inspector-threads-setup-prompt]:hover{background-color:#2b2b2b;border-color:#2b2b2b}[data-inspector-threads-setup-link]{color:#57575b;background-color:#fff}[data-inspector-threads-setup-link]:hover{color:#010507;background-color:#f7f7f9;border-color:#afafb7}[data-inspector-threads-setup-prompt]:focus-visible,[data-inspector-threads-setup-link]:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.inspector-threads-footer{color:#57575b;background-color:#f7f7f9;border-top:1px solid #dbdbe5;flex:none;gap:10px;padding:12px;font-size:11px;line-height:1.35;display:grid}.inspector-threads-usage{gap:6px;display:grid}[data-inspector-thread-count]{color:#010507;font-weight:600}[data-inspector-thread-expiry]{color:#57575b}.inspector-thread-progress{--inspector-thread-progress-color:#189370;width:100%;height:6px;accent-color:var(--inspector-thread-progress-color);border-radius:999px;overflow:hidden}.inspector-thread-progress[data-inspector-thread-capacity=warning]{--inspector-thread-progress-color:#b45309}.inspector-thread-progress[data-inspector-thread-capacity=critical]{--inspector-thread-progress-color:#be123c}.inspector-thread-progress::-webkit-progress-bar{background-color:#dbdbe5;border-radius:999px}.inspector-thread-progress::-webkit-progress-value{background-color:var(--inspector-thread-progress-color);border-radius:999px}.inspector-thread-progress::-moz-progress-bar{background-color:var(--inspector-thread-progress-color);border-radius:999px}[data-inspector-action-placement=threads-footer]{color:#57575b;outline-offset:2px;cursor:pointer;background-color:#fff;border:1px solid #dbdbe5;border-radius:4px;outline:2px solid #0000;justify-content:center;align-items:center;width:100%;min-height:32px;padding:6px 9px;font-size:11px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}[data-inspector-action-placement=threads-footer][data-inspector-action-intent=upgrade]{color:#fff;background-color:#6430ab;border-color:#6430ab}[data-inspector-action-placement=threads-footer][data-inspector-action-intent=upgrade]:hover{color:#fff;background-color:#3f176f;border-color:#3f176f}[data-inspector-action-placement=threads-footer]:hover{color:#010507;background-color:#fff;border-color:#afafb7}.cpk-threads-overview-video{opacity:0;transition:opacity .22s}.cpk-threads-overview-video[data-loaded=true]{opacity:1}.cpk-threads-overview-video-control{color:#3f176f;min-height:32px;font:inherit;outline-offset:2px;cursor:pointer;background-color:#fff;border:1px solid #dbdbe5;border-radius:4px;outline:2px solid #0000;justify-content:center;align-items:center;margin:0 0 14px;padding:6px 10px;font-size:12px;font-weight:600;line-height:1.25;display:inline-flex}.cpk-threads-overview-video-control:hover{color:#010507;background-color:#f7f7f9;border-color:#afafb7}.cpk-threads-overview-video-control:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.cpk-threads-overview-video-fallback{color:#57575b;max-width:440px;margin:-4px 0 14px;font-size:12px;line-height:1.5}@media (prefers-reduced-motion:reduce){.cpk-threads-overview-video{transition:none}}@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-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-space-y-reverse{syntax:\"*\";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:\"*\";inherits:false;initial-value:0}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-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-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}@keyframes pulse{50%{opacity:.5}}";
9
+ var generated_default = "/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight: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-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-900:oklch(41.4% .112 45.904);--color-green-100:oklch(96.2% .044 156.743);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-200:oklch(90.5% .093 164.15);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-700:oklch(50.8% .118 165.612);--color-sky-50:oklch(97.7% .013 236.62);--color-sky-200:oklch(90.1% .058 230.902);--color-sky-700:oklch(50% .134 242.749);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-700:oklch(49.1% .27 292.581);--color-purple-50:oklch(97.7% .014 308.299);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-700:oklch(49.6% .265 301.924);--color-fuchsia-50:oklch(97.7% .017 320.058);--color-fuchsia-200:oklch(90.3% .076 319.62);--color-fuchsia-700:oklch(51.8% .253 323.949);--color-rose-50:oklch(96.9% .015 12.422);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-700:oklch(51.4% .222 16.935);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-slate-950:oklch(12.9% .042 264.695);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--font-weight-medium:500;--font-weight-semibold:600;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:host{font-family:var(--font-sans);color:var(--color-slate-900);background-color:#0000;display:block}}@layer components;@layer utilities{.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:calc(var(--spacing)*0)}.right-0{right:calc(var(--spacing)*0)}.right-1{right:calc(var(--spacing)*1)}.bottom-1{bottom:calc(var(--spacing)*1)}.left-0{left:calc(var(--spacing)*0)}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.m-0{margin:calc(var(--spacing)*0)}.mx-4{margin-inline:calc(var(--spacing)*4)}.my-1{margin-block:calc(var(--spacing)*1)}.my-3{margin-block:calc(var(--spacing)*3)}.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-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-auto{margin-left:auto}.box-border{box-sizing:border-box}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1\\.5{height:calc(var(--spacing)*1.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-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-full{height:100%}.max-h-64{max-height:calc(var(--spacing)*64)}.w-1\\.5{width:calc(var(--spacing)*1.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\\.5{width:calc(var(--spacing)*3.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-40{width:calc(var(--spacing)*40)}.w-auto{width:auto}.w-full{width:100%}.max-w-\\[240px\\]{max-width:240px}.max-w-md{max-width:var(--container-md)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\\[160px\\]{min-width:160px}.min-w-\\[200px\\]{min-width:200px}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.translate-x-0\\.5{--tw-translate-x:calc(var(--spacing)*.5);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-4{--tw-translate-x:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-\\[2px\\]{--tw-translate-y:calc(2px*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-nwse-resize{cursor:nwse-resize}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-gray-200>:not(:last-child)){border-color:var(--color-gray-200)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.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-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber-200{border-color:var(--color-amber-200)}.border-blue-200{border-color:var(--color-blue-200)}.border-emerald-200{border-color:var(--color-emerald-200)}.border-fuchsia-200{border-color:var(--color-fuchsia-200)}.border-gray-200{border-color:var(--color-gray-200)}.border-purple-200{border-color:var(--color-purple-200)}.border-rose-200{border-color:var(--color-rose-200)}.border-sky-200{border-color:var(--color-sky-200)}.border-slate-200{border-color:var(--color-slate-200)}.border-violet-200{border-color:var(--color-violet-200)}.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)}}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-fuchsia-50{background-color:var(--color-fuchsia-50)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-50\\/50{background-color:#f9fafb80}@supports (color:color-mix(in lab, red, red)){.bg-gray-50\\/50{background-color:color-mix(in oklab,var(--color-gray-50)50%,transparent)}}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-gray-800{background-color:var(--color-gray-800)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-green-100{background-color:var(--color-green-100)}.bg-purple-50{background-color:var(--color-purple-50)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-rose-500{background-color:var(--color-rose-500)}.bg-sky-50{background-color:var(--color-sky-50)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-slate-950\\/95{background-color:#020618f2}@supports (color:color-mix(in lab, red, red)){.bg-slate-950\\/95{background-color:color-mix(in oklab,var(--color-slate-950)95%,transparent)}}.bg-violet-50{background-color:var(--color-violet-50)}.bg-white{background-color:var(--color-white)}.bg-white\\/60{background-color:#fff9}@supports (color:color-mix(in lab, red, red)){.bg-white\\/60{background-color:color-mix(in oklab,var(--color-white)60%,transparent)}}.bg-white\\/95{background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.bg-white\\/95{background-color:color-mix(in oklab,var(--color-white)95%,transparent)}}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.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-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.py-0\\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.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-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[9px\\]{font-size:9px}.text-\\[10px\\]{font-size:10px}.text-\\[11px\\]{font-size:11px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.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)}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-amber-900{color:var(--color-amber-900)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-emerald-700{color:var(--color-emerald-700)}.text-fuchsia-700{color:var(--color-fuchsia-700)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-gray-900{color:var(--color-gray-900)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-purple-700{color:var(--color-purple-700)}.text-rose-700{color:var(--color-rose-700)}.text-sky-700{color:var(--color-sky-700)}.text-slate-500{color:var(--color-slate-500)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-violet-700{color:var(--color-violet-700)}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-black\\/5{--tw-ring-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.ring-black\\/5{--tw-ring-color:color-mix(in oklab,var(--color-black)5%,transparent)}}.ring-transparent{--tw-ring-color:transparent}.ring-white\\/10{--tw-ring-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.ring-white\\/10{--tw-ring-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-md{--tw-backdrop-blur:blur(var(--blur-md));-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));-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,)}.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-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-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))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\\:opacity-100:is(:where(.group):hover *){opacity:1}.hover\\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\\:border-gray-300:hover{border-color:var(--color-gray-300)}.hover\\:border-white\\/30:hover{border-color:#ffffff4d}@supports (color:color-mix(in lab, red, red)){.hover\\:border-white\\/30:hover{border-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.hover\\:bg-blue-50\\/50:hover{background-color:#eff6ff80}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-blue-50\\/50:hover{background-color:color-mix(in oklab,var(--color-blue-50)50%,transparent)}}.hover\\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\\:bg-gray-800:hover{background-color:var(--color-gray-800)}.hover\\:bg-slate-900\\/95:hover{background-color:#0f172bf2}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-slate-900\\/95:hover{background-color:color-mix(in oklab,var(--color-slate-900)95%,transparent)}}.hover\\:text-gray-600:hover{color:var(--color-gray-600)}.hover\\:text-gray-900:hover{color:var(--color-gray-900)}.hover\\:text-slate-900:hover{color:var(--color-slate-900)}}.focus\\:border-gray-300:focus{border-color:var(--color-gray-300)}.focus\\:bg-gray-50:focus{background-color:var(--color-gray-50)}.focus\\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\\:ring-gray-200:focus{--tw-ring-color:var(--color-gray-200)}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\\:outline-\\[\\#BEC2FF\\]:focus-visible{outline-color:#bec2ff}.focus-visible\\:outline-gray-300:focus-visible{outline-color:var(--color-gray-300)}.focus-visible\\:outline-gray-400:focus-visible{outline-color:var(--color-gray-400)}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:opacity-50:disabled{opacity:.5}@media (min-width:48rem){.md\\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.\\[\\&\\>svg\\]\\:\\!h-8>svg{height:calc(var(--spacing)*8)!important}.\\[\\&\\>svg\\]\\:\\!w-8>svg{width:calc(var(--spacing)*8)!important}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.inspector-account-strip{color:#fff;background-color:#010507;width:100%;min-width:0}.inspector-account-logo{filter:brightness(0)invert()}.inspector-agent-placeholder{color:#afafb7;border-color:#ffffff47}.inspector-primary-navigation,.inspector-child-navigation{cursor:default;background-color:#fff;border-bottom:1px solid #dbdbe5;flex:none;align-items:center;gap:4px;width:100%;min-width:0;padding:6px 12px;display:flex}.inspector-primary-navigation{overflow:auto hidden}.inspector-child-navigation{overscroll-behavior-inline:contain;white-space:nowrap;overflow:auto hidden}.inspector-nav-control{color:#57575b;min-height:32px;font:inherit;outline-offset:2px;cursor:pointer;background-color:#0000;border:1px solid #0000;border-radius:4px;outline:2px solid #0000;flex:none;justify-content:center;align-items:center;gap:6px;padding:6px 9px;font-size:12px;font-weight:600;line-height:1.25;display:inline-flex}.inspector-nav-control:hover{color:#010507;background-color:#f0f0f4}.inspector-nav-control-active{color:#3f176f;background-color:#eee6fe;border-color:#bec2ff}.inspector-nav-icon{flex:none;align-items:center;display:inline-flex}.inspector-nav-icon svg{width:15px;height:15px}.inspector-nav-control:focus-visible,.inspector-nav-control:focus,.inspector-account-control:focus-visible,.inspector-account-control:focus,[data-inspector-thread-cta]:focus-visible,[data-inspector-thread-cta]:focus,[data-inspector-action-placement=threads-footer]:focus-visible,[data-inspector-action-placement=threads-footer]:focus{outline-offset:2px;outline:2px solid #6430ab!important}.inspector-account-control{color:#afafb7;font:inherit;outline-offset:2px;cursor:pointer;background-color:#0000;border:1px solid #0000;outline:2px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.inspector-account-control:hover,.inspector-account-control-active{color:#fff;background-color:#ffffff1f}.inspector-account-control-icon{flex:none;justify-content:center;align-items:center;display:inline-flex}.inspector-account-control-icon svg{width:15px;height:15px}[data-inspector-thread-cta]{color:#57575b;white-space:nowrap;outline-offset:2px;cursor:pointer;background-color:#fff;border:1px solid #dbdbe5;border-radius:4px;outline:2px solid #0000;flex:none;justify-content:center;align-items:center;min-height:32px;margin-left:auto;padding:6px 9px;font-size:11px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}[data-inspector-account-strip] button,[data-inspector-account-strip] a{cursor:pointer}[data-inspector-thread-cta]:hover{color:#010507;background-color:#f7f7f9;border-color:#afafb7}[data-inspector-threads-setup-prompt],[data-inspector-threads-setup-link]{min-height:34px;font:inherit;outline-offset:2px;cursor:pointer;border:1px solid #dbdbe5;border-radius:6px;outline:2px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}[data-inspector-threads-setup-prompt]{color:#fff;background-color:#010507;border-color:#010507}[data-inspector-threads-setup-prompt]:hover{background-color:#2b2b2b;border-color:#2b2b2b}[data-inspector-threads-setup-link]{color:#57575b;background-color:#fff}[data-inspector-threads-setup-link]:hover{color:#010507;background-color:#f7f7f9;border-color:#afafb7}[data-inspector-threads-setup-prompt]:focus-visible,[data-inspector-threads-setup-link]:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.inspector-threads-footer{color:#57575b;background-color:#f7f7f9;border-top:1px solid #dbdbe5;flex:none;gap:10px;padding:12px;font-size:11px;line-height:1.35;display:grid}.inspector-threads-usage{gap:6px;display:grid}[data-inspector-thread-count]{color:#010507;font-weight:600}[data-inspector-thread-expiry]{color:#57575b}.inspector-thread-progress{--inspector-thread-progress-color:#189370;width:100%;height:6px;accent-color:var(--inspector-thread-progress-color);border-radius:999px;overflow:hidden}.inspector-thread-progress[data-inspector-thread-capacity=warning]{--inspector-thread-progress-color:#b45309}.inspector-thread-progress[data-inspector-thread-capacity=critical]{--inspector-thread-progress-color:#be123c}.inspector-thread-progress::-webkit-progress-bar{background-color:#dbdbe5;border-radius:999px}.inspector-thread-progress::-webkit-progress-value{background-color:var(--inspector-thread-progress-color);border-radius:999px}.inspector-thread-progress::-moz-progress-bar{background-color:var(--inspector-thread-progress-color);border-radius:999px}[data-inspector-action-placement=threads-footer]{color:#57575b;outline-offset:2px;cursor:pointer;background-color:#fff;border:1px solid #dbdbe5;border-radius:4px;outline:2px solid #0000;justify-content:center;align-items:center;width:100%;min-height:32px;padding:6px 9px;font-size:11px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}[data-inspector-action-placement=threads-footer][data-inspector-action-intent=upgrade]{color:#fff;background-color:#6430ab;border-color:#6430ab}[data-inspector-action-placement=threads-footer][data-inspector-action-intent=upgrade]:hover{color:#fff;background-color:#3f176f;border-color:#3f176f}[data-inspector-action-placement=threads-footer]:hover{color:#010507;background-color:#fff;border-color:#afafb7}.cpk-threads-overview-video{opacity:0;transition:opacity .22s}.cpk-threads-overview-video[data-loaded=true]{opacity:1}.cpk-threads-overview-video-control{color:#3f176f;min-height:32px;font:inherit;outline-offset:2px;cursor:pointer;background-color:#fff;border:1px solid #dbdbe5;border-radius:4px;outline:2px solid #0000;justify-content:center;align-items:center;margin:0 0 14px;padding:6px 10px;font-size:12px;font-weight:600;line-height:1.25;display:inline-flex}.cpk-threads-overview-video-control:hover{color:#010507;background-color:#f7f7f9;border-color:#afafb7}.cpk-threads-overview-video-control:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.cpk-threads-overview-video-fallback{color:#57575b;max-width:440px;margin:-4px 0 14px;font-size:12px;line-height:1.5}@media (prefers-reduced-motion:reduce){.cpk-threads-overview-video{transition:none}}@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-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-space-y-reverse{syntax:\"*\";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:\"*\";inherits:false;initial-value:0}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-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-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}@keyframes pulse{50%{opacity:.5}}";
10
10
 
11
11
  //#endregion
12
12
  //#region src/assets/inspector-logo.svg
@@ -189,6 +189,71 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
189
189
  });
190
190
  }
191
191
 
192
+ //#endregion
193
+ //#region src/lib/pop-out.ts
194
+ const INSPECTOR_POP_OUT_NAME = "CPK-Inspector-Panel";
195
+ const POP_OUT_BLOCKED_MESSAGE = "Failed to open popup. Please allow popups for this site to view the Inspector in its own window.";
196
+ const BRAND_FONT_LINK_ID = "cpk-inspector-brand-fonts";
197
+ const BRAND_FONT_HREF = "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;600&family=Spline+Sans+Mono:wght@600&display=swap";
198
+ function buildPopOutFeatures(size) {
199
+ return `width=${Math.round(size.width)},height=${Math.round(size.height)},popup`;
200
+ }
201
+ function copyStyleSheets(fromDoc, toDoc) {
202
+ for (const styleSheet of Array.from(fromDoc.styleSheets)) try {
203
+ const cssRules = Array.from(styleSheet.cssRules).map((rule) => rule.cssText).join("");
204
+ const style = toDoc.createElement("style");
205
+ const owner = styleSheet.ownerNode;
206
+ if (owner && "id" in owner && typeof owner.id === "string" && owner.id) style.id = owner.id;
207
+ style.textContent = cssRules;
208
+ toDoc.head.appendChild(style);
209
+ } catch (_unused) {
210
+ if (!styleSheet.href) continue;
211
+ const link = toDoc.createElement("link");
212
+ link.rel = "stylesheet";
213
+ link.href = styleSheet.href;
214
+ toDoc.head.appendChild(link);
215
+ }
216
+ }
217
+ function applyInspectorOwnedStyles(toDoc, cssTexts) {
218
+ for (const cssText of cssTexts) {
219
+ const style = toDoc.createElement("style");
220
+ style.setAttribute("data-cpk-inspector-pop-out", "");
221
+ style.textContent = cssText;
222
+ toDoc.head.appendChild(style);
223
+ }
224
+ }
225
+ function ensureBrandFont(doc) {
226
+ if (doc.getElementById(BRAND_FONT_LINK_ID)) return;
227
+ const link = doc.createElement("link");
228
+ link.id = BRAND_FONT_LINK_ID;
229
+ link.rel = "stylesheet";
230
+ link.href = BRAND_FONT_HREF;
231
+ doc.head.appendChild(link);
232
+ }
233
+ function openPopOutWindow(args) {
234
+ const win = args.open("", INSPECTOR_POP_OUT_NAME, args.features);
235
+ if (!win) throw new Error(POP_OUT_BLOCKED_MESSAGE);
236
+ win.document.head.innerHTML = "";
237
+ win.document.body.innerHTML = "";
238
+ win.document.title = args.title;
239
+ win.document.body.style.margin = "0";
240
+ copyStyleSheets(args.sourceDocument, win.document);
241
+ applyInspectorOwnedStyles(win.document, args.cssTexts);
242
+ ensureBrandFont(win.document);
243
+ const onPageHide = () => {
244
+ args.onClose();
245
+ };
246
+ const close = () => {
247
+ win.removeEventListener("pagehide", onPageHide);
248
+ win.close();
249
+ };
250
+ win.addEventListener("pagehide", onPageHide);
251
+ return {
252
+ win,
253
+ close
254
+ };
255
+ }
256
+
192
257
  //#endregion
193
258
  //#region src/lib/inspector-metadata.ts
194
259
  /** Maps the runtime's legacy license status to the inspector's four states. */
@@ -282,7 +347,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
282
347
 
283
348
  //#endregion
284
349
  //#region package.json
285
- var version = "1.68.0";
350
+ var version = "1.68.2";
286
351
 
287
352
  //#endregion
288
353
  //#region src/lib/telemetry.ts
@@ -1040,7 +1105,25 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1040
1105
  hour12: false
1041
1106
  }) + "." + ms;
1042
1107
  }
1043
- var CpkThreadList = class extends lit.LitElement {
1108
+ /**
1109
+ * Lit's constructable stylesheets belong to the document that created them.
1110
+ * These child elements move between the app and pop-out documents, so keep
1111
+ * their styles as shadow-root style nodes that travel with the live element.
1112
+ */
1113
+ var PortableLitElement = class extends lit.LitElement {
1114
+ createRenderRoot() {
1115
+ var _this$shadowRoot;
1116
+ const elementClass = this.constructor;
1117
+ const renderRoot = (_this$shadowRoot = this.shadowRoot) !== null && _this$shadowRoot !== void 0 ? _this$shadowRoot : this.attachShadow(elementClass.shadowRootOptions);
1118
+ for (const style of elementClass.elementStyles) {
1119
+ const styleElement = this.ownerDocument.createElement("style");
1120
+ styleElement.textContent = "cssText" in style ? style.cssText : Array.from(style.cssRules, (rule) => rule.cssText).join("");
1121
+ renderRoot.append(styleElement);
1122
+ }
1123
+ return renderRoot;
1124
+ }
1125
+ };
1126
+ var CpkThreadList = class extends PortableLitElement {
1044
1127
  constructor(..._args) {
1045
1128
  super(..._args);
1046
1129
  this.threads = [];
@@ -1340,7 +1423,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1340
1423
  color: #c0c0c8;
1341
1424
  }
1342
1425
  `;
1343
- var CpkThreadInspector = class CpkThreadInspector extends lit.LitElement {
1426
+ var CpkThreadInspector = class CpkThreadInspector extends PortableLitElement {
1344
1427
  constructor(..._args2) {
1345
1428
  super(..._args2);
1346
1429
  this.threadId = null;
@@ -1352,6 +1435,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1352
1435
  this.agentStateInput = null;
1353
1436
  this.agentEventsInput = [];
1354
1437
  this.liveMessageVersion = 0;
1438
+ this.focusMessageId = null;
1439
+ this.focusRequestId = 0;
1355
1440
  this._tab = "timeline";
1356
1441
  this._fetchedMetadata = null;
1357
1442
  this._conversation = [];
@@ -1371,6 +1456,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1371
1456
  this._detailPanelWidth = 250;
1372
1457
  this._eventsNotAvailable = false;
1373
1458
  this._stateNotAvailable = false;
1459
+ this._scrolledFocusRequestId = 0;
1460
+ this._highlightedFocusRequestId = -1;
1374
1461
  this._panelInitializing = false;
1375
1462
  this._activatedTabs = new Set(["timeline"]);
1376
1463
  this._panelTplCache = /* @__PURE__ */ new Map();
@@ -1449,7 +1536,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1449
1536
  }
1450
1537
  /** Selects and focuses the tab targeted by an ARIA tabs navigation key. */
1451
1538
  handleTabKeyDown(event, currentId) {
1452
- var _this$shadowRoot;
1539
+ var _this$shadowRoot2;
1453
1540
  const currentIndex = CpkThreadInspector.TAB_LIST.findIndex((tab) => tab.id === currentId);
1454
1541
  if (currentIndex < 0) return;
1455
1542
  let targetIndex = null;
@@ -1462,7 +1549,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1462
1549
  if (!target) return;
1463
1550
  event.preventDefault();
1464
1551
  this.activateTab(target.id);
1465
- (_this$shadowRoot = this.shadowRoot) === null || _this$shadowRoot === void 0 || (_this$shadowRoot = _this$shadowRoot.querySelector(`#${this.tabDomId(target.id)}`)) === null || _this$shadowRoot === void 0 || _this$shadowRoot.focus();
1552
+ (_this$shadowRoot2 = this.shadowRoot) === null || _this$shadowRoot2 === void 0 || (_this$shadowRoot2 = _this$shadowRoot2.querySelector(`#${this.tabDomId(target.id)}`)) === null || _this$shadowRoot2 === void 0 || _this$shadowRoot2.focus();
1466
1553
  }
1467
1554
  activateTab(id) {
1468
1555
  if (this._tab === id) return;
@@ -1514,6 +1601,32 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1514
1601
  this._messagesAbort = null;
1515
1602
  this.fetchMessages(this.threadId, true);
1516
1603
  }
1604
+ const focusedContentChanged = _changed.has("_fetchedEvents") || _changed.has("agentEventsInput") || _changed.has("_conversation");
1605
+ if (this.focusMessageId && (this.focusRequestId > this._scrolledFocusRequestId || focusedContentChanged)) {
1606
+ if (this._tab !== "timeline") {
1607
+ this._activatedTabs = new Set([...this._activatedTabs, "timeline"]);
1608
+ this._tab = "timeline";
1609
+ this.requestUpdate();
1610
+ }
1611
+ requestAnimationFrame(() => this.scrollToFocusedMessage());
1612
+ }
1613
+ }
1614
+ scrollToFocusedMessage() {
1615
+ var _this$shadowRoot$quer, _this$shadowRoot3, _message$scrollIntoVi;
1616
+ if (!this.focusMessageId) return;
1617
+ const message = Array.from((_this$shadowRoot$quer = (_this$shadowRoot3 = this.shadowRoot) === null || _this$shadowRoot3 === void 0 ? void 0 : _this$shadowRoot3.querySelectorAll("[data-message-id]")) !== null && _this$shadowRoot$quer !== void 0 ? _this$shadowRoot$quer : []).find((candidate) => candidate.dataset.messageId === this.focusMessageId);
1618
+ if (!message) return;
1619
+ (_message$scrollIntoVi = message.scrollIntoView) === null || _message$scrollIntoVi === void 0 || _message$scrollIntoVi.call(message, { block: "center" });
1620
+ this._scrolledFocusRequestId = this.focusRequestId;
1621
+ this.pulseFocusedMessage(message);
1622
+ }
1623
+ pulseFocusedMessage(message) {
1624
+ if (this.focusRequestId === this._highlightedFocusRequestId) return;
1625
+ this._highlightedFocusRequestId = this.focusRequestId;
1626
+ message.classList.remove("cpk-td__focus-pulse");
1627
+ message.offsetWidth;
1628
+ message.classList.add("cpk-td__focus-pulse");
1629
+ message.addEventListener("animationend", () => message.classList.remove("cpk-td__focus-pulse"), { once: true });
1517
1630
  }
1518
1631
  connectedCallback() {
1519
1632
  super.connectedCallback();
@@ -1883,6 +1996,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
1883
1996
  if (!item) {
1884
1997
  item = {
1885
1998
  id: `message-${key}`,
1999
+ messageId: key,
1886
2000
  kind: "message",
1887
2001
  title: `${role || "message"} message`,
1888
2002
  body: "",
@@ -2377,8 +2491,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2377
2491
  this._tab = "raw-events";
2378
2492
  this.requestUpdate();
2379
2493
  requestAnimationFrame(() => {
2380
- var _this$shadowRoot2, _source$scrollIntoVie;
2381
- const source = (_this$shadowRoot2 = this.shadowRoot) === null || _this$shadowRoot2 === void 0 ? void 0 : _this$shadowRoot2.querySelector(`[data-source-index="${sourceIndex}"]`);
2494
+ var _this$shadowRoot4, _source$scrollIntoVie;
2495
+ const source = (_this$shadowRoot4 = this.shadowRoot) === null || _this$shadowRoot4 === void 0 ? void 0 : _this$shadowRoot4.querySelector(`[data-source-index="${sourceIndex}"]`);
2382
2496
  source === null || source === void 0 || (_source$scrollIntoVie = source.scrollIntoView) === null || _source$scrollIntoVie === void 0 || _source$scrollIntoVie.call(source, { block: "center" });
2383
2497
  });
2384
2498
  }
@@ -2422,11 +2536,13 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2422
2536
  return this.cachedPanelTpl("timeline", [events, this._expandedTimelineDetails], () => lit.html`${timelineItems.map((item) => this.renderTimelineItem(item))}`);
2423
2537
  }
2424
2538
  renderTimelineItem(item) {
2539
+ var _item$messageId;
2425
2540
  const isWarning = item.kind === "warning";
2426
2541
  const detailsExpanded = this._expandedTimelineDetails.has(item.id);
2427
2542
  return lit.html`
2428
2543
  <div
2429
2544
  class="cpk-td__timeline-item ${isWarning ? "cpk-td__timeline-item--warning" : ""}"
2545
+ data-message-id=${(_item$messageId = item.messageId) !== null && _item$messageId !== void 0 ? _item$messageId : lit.nothing}
2430
2546
  >
2431
2547
  <div class="cpk-td__timeline-header">
2432
2548
  <span class="cpk-td__timeline-kind"
@@ -2563,6 +2679,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2563
2679
  return lit.html`
2564
2680
  <div
2565
2681
  class="cpk-td__bubble ${isUser ? "cpk-td__bubble--user" : "cpk-td__bubble--assistant"}"
2682
+ data-message-id=${item.id}
2566
2683
  >
2567
2684
  <div
2568
2685
  class="cpk-td__bubble-inner ${isUser ? "cpk-td__bubble-inner--user" : "cpk-td__bubble-inner--assistant"}"
@@ -2900,6 +3017,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
2900
3017
  agentStateInput: { attribute: false },
2901
3018
  agentEventsInput: { attribute: false },
2902
3019
  liveMessageVersion: { attribute: false },
3020
+ focusMessageId: { attribute: false },
3021
+ focusRequestId: { attribute: false },
2903
3022
  _tab: { state: true },
2904
3023
  _fetchedMetadata: { state: true },
2905
3024
  _conversation: { state: true },
@@ -3183,6 +3302,37 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
3183
3302
  color: #c0333a;
3184
3303
  }
3185
3304
 
3305
+ @keyframes cpk-td-focus-pulse {
3306
+ 0% {
3307
+ outline-color: rgba(100, 48, 171, 0);
3308
+ box-shadow: 0 0 0 rgba(100, 48, 171, 0);
3309
+ animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
3310
+ }
3311
+ 24%,
3312
+ 50% {
3313
+ outline-color: rgba(100, 48, 171, 0.78);
3314
+ box-shadow: 0 7px 20px rgba(100, 48, 171, 0.2);
3315
+ }
3316
+ 100% {
3317
+ outline-color: rgba(100, 48, 171, 0);
3318
+ box-shadow: 0 0 0 rgba(100, 48, 171, 0);
3319
+ }
3320
+ }
3321
+
3322
+ .cpk-td__focus-pulse {
3323
+ position: relative;
3324
+ z-index: 1;
3325
+ outline: 2px solid transparent;
3326
+ outline-offset: 3px;
3327
+ animation: cpk-td-focus-pulse 760ms linear;
3328
+ }
3329
+
3330
+ @media (prefers-reduced-motion: reduce) {
3331
+ .cpk-td__focus-pulse {
3332
+ animation-duration: 320ms;
3333
+ }
3334
+ }
3335
+
3186
3336
  /* ── Conversation bubbles ────────────────────────────────────────── */
3187
3337
  .cpk-td__bubble {
3188
3338
  display: flex;
@@ -3725,7 +3875,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
3725
3875
  function relevanceBarWidth(relevance) {
3726
3876
  return Math.max(6, Math.min(100, Math.round(relevance * 100)));
3727
3877
  }
3728
- var CpkMemoryList = class extends lit.LitElement {
3878
+ var CpkMemoryList = class extends PortableLitElement {
3729
3879
  constructor(..._args3) {
3730
3880
  super(..._args3);
3731
3881
  this.memories = [];
@@ -4278,7 +4428,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4278
4428
  function defineElementOnce(registry, tag, ctor) {
4279
4429
  if (!registry.get(tag)) registry.define(tag, ctor);
4280
4430
  }
4281
- var WebInspectorElement = class extends lit.LitElement {
4431
+ var WebInspectorElement = class WebInspectorElement extends lit.LitElement {
4282
4432
  constructor(..._args4) {
4283
4433
  super(..._args4);
4284
4434
  this._core = null;
@@ -4334,6 +4484,9 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4334
4484
  this.selectedThreadId = null;
4335
4485
  this.selectedRealThreadIsExplicit = false;
4336
4486
  this.selectedLocalExampleThreadId = null;
4487
+ this.requestedThreadId = null;
4488
+ this.focusedThreadMessageId = null;
4489
+ this.threadFocusRequestId = 0;
4337
4490
  this.threadListWidth = 290;
4338
4491
  this.threadDividerResizing = false;
4339
4492
  this.threadDividerPointerId = -1;
@@ -4349,6 +4502,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4349
4502
  this.threadCapabilityGeneration = 0;
4350
4503
  this.contextMenuOpen = false;
4351
4504
  this.dockMode = "floating";
4505
+ this.popOut = null;
4506
+ this.inspectorPortal = null;
4352
4507
  this.previousBodyMargins = null;
4353
4508
  this.transitionTimeoutId = null;
4354
4509
  this.bodyTransitionTimeoutIds = /* @__PURE__ */ new Set();
@@ -4531,6 +4686,45 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4531
4686
  this.handleCloseClick = () => {
4532
4687
  this.closeInspector();
4533
4688
  };
4689
+ this.requestPopOut = () => {
4690
+ if (this.isPoppedOut) return;
4691
+ const size = this.contextState.window.size;
4692
+ const handle = openPopOutWindow({
4693
+ open: window.open.bind(window),
4694
+ features: buildPopOutFeatures(size),
4695
+ title: "CopilotKit Inspector",
4696
+ cssTexts: this.getPopOutCssTexts(),
4697
+ sourceDocument: document,
4698
+ onClose: () => this.handlePopOutClosed()
4699
+ });
4700
+ this.popOut = handle;
4701
+ try {
4702
+ defineWebInspector(handle.win.customElements);
4703
+ if (this.dockMode !== "floating") this.removeDockStyles();
4704
+ handle.win.addEventListener("pointerdown", this.handleGlobalPointerDown);
4705
+ this.syncInspectorPortal();
4706
+ this.requestUpdate();
4707
+ } catch (error) {
4708
+ this.popOut = null;
4709
+ this.unbindPopOutPointerDown(handle.win);
4710
+ handle.close();
4711
+ if (this.isConnected && this.isOpen && this.dockMode !== "floating") this.applyDockStyles();
4712
+ this.requestUpdate();
4713
+ throw error;
4714
+ }
4715
+ };
4716
+ this.handlePopOutClosed = () => {
4717
+ const handle = this.popOut;
4718
+ if (!handle) return;
4719
+ this.popOut = null;
4720
+ this.unbindPopOutPointerDown(handle.win);
4721
+ this.syncInspectorPortal();
4722
+ if (this.isConnected && this.isOpen && this.dockMode !== "floating") this.applyDockStyles();
4723
+ this.requestUpdate();
4724
+ };
4725
+ this.handleAppBeforeUnload = () => {
4726
+ this.closePopOut();
4727
+ };
4534
4728
  this.handleResizePointerDown = (event) => {
4535
4729
  var _target$setPointerCap2;
4536
4730
  event.stopPropagation();
@@ -4593,6 +4787,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4593
4787
  this.resetResizeTracking();
4594
4788
  };
4595
4789
  this.handleResize = () => {
4790
+ if (this.isPoppedOut) return;
4596
4791
  this.measureContext("button");
4597
4792
  this.applyAnchorPosition("button");
4598
4793
  this.measureContext("window");
@@ -4690,8 +4885,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4690
4885
  }
4691
4886
  this.playThreadsExampleOverviewVideo(video, lifecycleGeneration);
4692
4887
  };
4693
- this.handleThreadsSetupPromptCopy = async () => {
4694
- var _navigator$clipboard;
4888
+ this.handleThreadsSetupPromptCopy = async (event) => {
4695
4889
  const generation = this.threadsSetupPromptCopyGeneration += 1;
4696
4890
  if (this.threadsSetupPromptCopyResetTimeoutId !== null) {
4697
4891
  window.clearTimeout(this.threadsSetupPromptCopyResetTimeoutId);
@@ -4699,12 +4893,13 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4699
4893
  }
4700
4894
  this.threadsSetupPromptCopyState = "idle";
4701
4895
  this.requestUpdate();
4702
- if (typeof navigator === "undefined" || !((_navigator$clipboard = navigator.clipboard) === null || _navigator$clipboard === void 0 ? void 0 : _navigator$clipboard.writeText)) {
4896
+ const clipboard = this.getClipboard(event);
4897
+ if (!(clipboard === null || clipboard === void 0 ? void 0 : clipboard.writeText)) {
4703
4898
  this.showThreadsSetupPromptCopyState("error", generation);
4704
4899
  return;
4705
4900
  }
4706
4901
  try {
4707
- await navigator.clipboard.writeText(THREADS_RUNTIME_SETUP_PROMPT);
4902
+ await clipboard.writeText(THREADS_RUNTIME_SETUP_PROMPT);
4708
4903
  this.showThreadsSetupPromptCopyState("copied", generation);
4709
4904
  } catch (_unused5) {
4710
4905
  this.showThreadsSetupPromptCopyState("error", generation);
@@ -4725,8 +4920,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4725
4920
  this.handleGlobalPointerDown = (event) => {
4726
4921
  if (!this.contextMenuOpen) return;
4727
4922
  if (!event.composedPath().some((node) => {
4728
- var _node$dataset;
4729
- return node instanceof HTMLElement && ((_node$dataset = node.dataset) === null || _node$dataset === void 0 ? void 0 : _node$dataset.contextDropdownRoot) === "true";
4923
+ const candidate = node;
4924
+ return typeof candidate.getAttribute === "function" && candidate.getAttribute("data-context-dropdown-root") === "true";
4730
4925
  })) {
4731
4926
  this.contextMenuOpen = false;
4732
4927
  this.requestUpdate();
@@ -4738,10 +4933,11 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4738
4933
  };
4739
4934
  this.copyResetTimeouts = /* @__PURE__ */ new WeakMap();
4740
4935
  this.handleAnnouncementContentClick = (event) => {
4741
- var _button$getAttribute, _navigator$clipboard2;
4742
- const target = event.target instanceof HTMLElement ? event.target : null;
4743
- const button = target === null || target === void 0 ? void 0 : target.closest(".announcement-code__copy");
4744
- if (!(button instanceof HTMLButtonElement)) {
4936
+ var _button$getAttribute;
4937
+ const target = event.target;
4938
+ const closest = typeof (target === null || target === void 0 ? void 0 : target.closest) === "function" ? target.closest(".announcement-code__copy") : null;
4939
+ const button = (closest === null || closest === void 0 ? void 0 : closest.tagName) === "BUTTON" ? closest : null;
4940
+ if (!button) {
4745
4941
  this.trackBannerClickedOnce({ cta: "body" });
4746
4942
  return;
4747
4943
  }
@@ -4751,12 +4947,14 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4751
4947
  const code = this.decodeBase64(encoded);
4752
4948
  if (!code) return;
4753
4949
  const showCopied = () => {
4950
+ var _button$ownerDocument;
4951
+ const view = (_button$ownerDocument = button.ownerDocument.defaultView) !== null && _button$ownerDocument !== void 0 ? _button$ownerDocument : window;
4754
4952
  const existing = this.copyResetTimeouts.get(button);
4755
- if (existing !== void 0) window.clearTimeout(existing);
4953
+ if (existing !== void 0) view.clearTimeout(existing);
4756
4954
  button.setAttribute("data-copied", "true");
4757
4955
  button.setAttribute("aria-label", "Code copied");
4758
4956
  button.textContent = "Copied";
4759
- const id = window.setTimeout(() => {
4957
+ const id = view.setTimeout(() => {
4760
4958
  button.removeAttribute("data-copied");
4761
4959
  button.setAttribute("aria-label", "Copy code");
4762
4960
  button.textContent = "Copy";
@@ -4764,7 +4962,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
4764
4962
  }, 1500);
4765
4963
  this.copyResetTimeouts.set(button, id);
4766
4964
  };
4767
- if (typeof navigator !== "undefined" && ((_navigator$clipboard2 = navigator.clipboard) === null || _navigator$clipboard2 === void 0 ? void 0 : _navigator$clipboard2.writeText)) navigator.clipboard.writeText(code).then(showCopied, () => {});
4965
+ const clipboard = this.getClipboard(event);
4966
+ if (clipboard === null || clipboard === void 0 ? void 0 : clipboard.writeText) clipboard.writeText(code).then(showCopied, () => {});
4768
4967
  };
4769
4968
  }
4770
4969
  get core() {
@@ -5054,6 +5253,12 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
5054
5253
  if (!this.areThreadEndpointsAvailable()) return;
5055
5254
  const { displayThreads } = this.getActiveThreadsState();
5056
5255
  const previousSelectedThreadId = this.selectedThreadId;
5256
+ if (this.requestedThreadId !== null) {
5257
+ this.selectedThreadId = this.requestedThreadId;
5258
+ this.selectedRealThreadIsExplicit = true;
5259
+ if (displayThreads.some((thread) => thread.id === this.requestedThreadId)) this.requestedThreadId = null;
5260
+ return;
5261
+ }
5057
5262
  if (this.selectedLocalExampleThreadId !== null && previousSelectedThreadId === this.selectedLocalExampleThreadId && displayThreads.length === 0) {
5058
5263
  this.selectedRealThreadIsExplicit = false;
5059
5264
  return;
@@ -5684,6 +5889,27 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(stateValue))}</p
5684
5889
  if (this.selectedContext === "all-agents") return this.flattenedEvents;
5685
5890
  return (_this$agentEvents$get2 = this.agentEvents.get(this.selectedContext)) !== null && _this$agentEvents$get2 !== void 0 ? _this$agentEvents$get2 : [];
5686
5891
  }
5892
+ focusThread(options) {
5893
+ var _options$messageId;
5894
+ if (!options.threadId) return;
5895
+ this.pendingPersistedMenu = null;
5896
+ this.selectedMenu = "threads";
5897
+ this.settingsOpen = false;
5898
+ this.lastSelectedMenuByGroup.threads = "threads";
5899
+ this.contextMenuOpen = false;
5900
+ this.selectedLocalExampleThreadId = null;
5901
+ this.exampleTourActive = false;
5902
+ this.selectedContext = options.agentId && this.contextOptions.some((option) => option.key === options.agentId) ? options.agentId : "all-agents";
5903
+ this.requestedThreadId = options.threadId;
5904
+ this.selectedThreadId = options.threadId;
5905
+ this.selectedRealThreadIsExplicit = true;
5906
+ this.focusedThreadMessageId = (_options$messageId = options.messageId) !== null && _options$messageId !== void 0 ? _options$messageId : null;
5907
+ this.threadFocusRequestId += 1;
5908
+ const { displayThreads } = this.getActiveThreadsState();
5909
+ if (displayThreads.some((thread) => thread.id === options.threadId)) this.requestedThreadId = null;
5910
+ this.persistState();
5911
+ this.requestUpdate();
5912
+ }
5687
5913
  filterEvents(events) {
5688
5914
  const query = this.eventFilterText.trim().toLowerCase();
5689
5915
  return events.filter((event) => {
@@ -5834,9 +6060,26 @@ ${argsString}</pre
5834
6060
  if (payload && typeof payload === "object" && "event" in payload) return payload.event;
5835
6061
  return payload;
5836
6062
  }
5837
- async copyToClipboard(text, eventId) {
6063
+ /** Prefer the window that owns the UI: the popup while popped out. */
6064
+ getClipboard(event) {
6065
+ if (this.isPoppedOut) {
6066
+ var _this$popOut;
6067
+ const popped = (_this$popOut = this.popOut) === null || _this$popOut === void 0 ? void 0 : _this$popOut.win.navigator.clipboard;
6068
+ if (popped) return popped;
6069
+ }
6070
+ const view = event && "view" in event ? event.view : null;
6071
+ const viewClipboard = view === null || view === void 0 ? void 0 : view.navigator.clipboard;
6072
+ if (viewClipboard) return viewClipboard;
6073
+ if (typeof navigator !== "undefined" && "clipboard" in navigator) return navigator.clipboard;
6074
+ }
6075
+ async copyToClipboard(text, eventId, event) {
6076
+ const clipboard = this.getClipboard(event);
6077
+ if (!clipboard) {
6078
+ console.error("Failed to copy to clipboard:", "Clipboard API is not available");
6079
+ return;
6080
+ }
5838
6081
  try {
5839
- await navigator.clipboard.writeText(text);
6082
+ await clipboard.writeText(text);
5840
6083
  this.copiedEvents.add(eventId);
5841
6084
  this.requestUpdate();
5842
6085
  setTimeout(() => {
@@ -5855,6 +6098,9 @@ ${argsString}</pre
5855
6098
  this.ensureBrandFonts();
5856
6099
  window.addEventListener("resize", this.handleResize);
5857
6100
  window.addEventListener("pointerdown", this.handleGlobalPointerDown);
6101
+ window.addEventListener("beforeunload", this.handleAppBeforeUnload);
6102
+ const viteHot = {}.hot;
6103
+ if (viteHot) viteHot.on("vite:beforeUpdate", this.handleAppBeforeUnload);
5858
6104
  this.hydrateStateFromStorageEarly();
5859
6105
  this.exampleTourDismissed = this.readThreadsExampleTourDismissed();
5860
6106
  this.tryAutoAttachCore();
@@ -5863,19 +6109,15 @@ ${argsString}</pre
5863
6109
  this.requestUpdate();
5864
6110
  }
5865
6111
  ensureBrandFonts() {
5866
- const FONT_LINK_ID = "cpk-inspector-brand-fonts";
5867
- if (document.getElementById(FONT_LINK_ID)) return;
5868
- const link = document.createElement("link");
5869
- link.id = FONT_LINK_ID;
5870
- link.rel = "stylesheet";
5871
- link.href = "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;600&family=Spline+Sans+Mono:wght@600&display=swap";
5872
- document.head.appendChild(link);
6112
+ ensureBrandFont(document);
5873
6113
  }
5874
6114
  disconnectedCallback() {
5875
6115
  super.disconnectedCallback();
6116
+ this.closePopOut();
5876
6117
  if (typeof window !== "undefined") {
5877
6118
  window.removeEventListener("resize", this.handleResize);
5878
6119
  window.removeEventListener("pointerdown", this.handleGlobalPointerDown);
6120
+ window.removeEventListener("beforeunload", this.handleAppBeforeUnload);
5879
6121
  }
5880
6122
  for (const id of this.bodyTransitionTimeoutIds) clearTimeout(id);
5881
6123
  this.bodyTransitionTimeoutIds.clear();
@@ -5925,20 +6167,22 @@ ${argsString}</pre
5925
6167
  this.updateHostTransform(this.isOpen ? "window" : "button");
5926
6168
  }
5927
6169
  render() {
5928
- return this.isOpen ? this.renderWindow() : this.renderButton();
6170
+ return this.isOpen ? lit.html`
6171
+ <div data-inspector-portal-anchor></div>
6172
+ ` : this.renderButton();
5929
6173
  }
5930
6174
  willUpdate() {
5931
6175
  this.reconcileSelectedMenuVisibility();
5932
6176
  }
5933
6177
  updated() {
5934
- var _this$shadowRoot3;
6178
+ this.syncInspectorPortal();
5935
6179
  this.syncThreadsExampleOverviewVideo();
5936
6180
  this.maybeTrackInspectorMetadataViews();
5937
6181
  if (!this.isOpen || this.selectedGroup !== "agents") {
5938
6182
  this.lastScrolledAgentNavigationLayout = null;
5939
6183
  return;
5940
6184
  }
5941
- const navigation = (_this$shadowRoot3 = this.shadowRoot) === null || _this$shadowRoot3 === void 0 ? void 0 : _this$shadowRoot3.querySelector("nav[aria-label=\"Agent navigation\"]");
6185
+ const navigation = this.activeRoot.querySelector("nav[aria-label=\"Agent navigation\"]");
5942
6186
  if (!navigation) return;
5943
6187
  const activeControl = navigation.querySelector("[aria-current=\"page\"]");
5944
6188
  if (!activeControl) return;
@@ -6069,8 +6313,19 @@ ${argsString}</pre
6069
6313
  renderWindow() {
6070
6314
  const windowState = this.contextState.window;
6071
6315
  const isDocked = this.dockMode !== "floating";
6316
+ const isPoppedOut = this.isPoppedOut;
6072
6317
  const isTransitioning = this.hasAttribute("data-transitioning");
6073
- const windowStyles = isDocked ? {
6318
+ const disableDrag = isDocked || isPoppedOut;
6319
+ const windowStyles = isPoppedOut ? {
6320
+ position: "fixed",
6321
+ inset: "0",
6322
+ width: "100%",
6323
+ height: "100%",
6324
+ minWidth: "0",
6325
+ minHeight: "0",
6326
+ borderRadius: "0",
6327
+ overflowX: "hidden"
6328
+ } : isDocked ? {
6074
6329
  ...this.getDockedWindowStyles(),
6075
6330
  overflowX: "hidden"
6076
6331
  } : {
@@ -6098,7 +6353,7 @@ ${argsString}</pre
6098
6353
  data-docked=${isDocked}
6099
6354
  data-transitioning=${isTransitioning}
6100
6355
  >
6101
- ${isDocked ? lit.html`
6356
+ ${isDocked && !isPoppedOut ? lit.html`
6102
6357
  <div
6103
6358
  class="dock-resize-handle pointer-events-auto"
6104
6359
  role="presentation"
@@ -6113,12 +6368,12 @@ ${argsString}</pre
6113
6368
  class="flex flex-1 flex-col overflow-hidden bg-white text-gray-800"
6114
6369
  >
6115
6370
  <div
6116
- class="drag-handle relative z-30 flex flex-col border-b border-gray-200 bg-white/95 backdrop-blur-sm ${isDocked ? "" : this.isDragging && this.pointerContext === "window" ? "cursor-grabbing" : "cursor-grab"}"
6371
+ class="drag-handle relative z-30 flex flex-col border-b border-gray-200 bg-white/95 backdrop-blur-sm ${disableDrag ? "" : this.isDragging && this.pointerContext === "window" ? "cursor-grabbing" : "cursor-grab"}"
6117
6372
  data-drag-context="window"
6118
- @pointerdown=${isDocked ? void 0 : this.handlePointerDown}
6119
- @pointermove=${isDocked ? void 0 : this.handlePointerMove}
6120
- @pointerup=${isDocked ? void 0 : this.handlePointerUp}
6121
- @pointercancel=${isDocked ? void 0 : this.handlePointerCancel}
6373
+ @pointerdown=${disableDrag ? void 0 : this.handlePointerDown}
6374
+ @pointermove=${disableDrag ? void 0 : this.handlePointerMove}
6375
+ @pointerup=${disableDrag ? void 0 : this.handlePointerUp}
6376
+ @pointercancel=${disableDrag ? void 0 : this.handlePointerCancel}
6122
6377
  >
6123
6378
  <div
6124
6379
  class="inspector-account-strip flex flex-wrap items-center gap-3 px-4 py-3"
@@ -6139,27 +6394,46 @@ ${argsString}</pre
6139
6394
  ${agentSelector}
6140
6395
  </div>
6141
6396
  <div class="flex items-center gap-1">
6142
- ${this.renderDockControls()}
6397
+ ${isPoppedOut ? lit.nothing : lit.html`
6398
+ ${this.renderDockControls()}
6399
+ <button
6400
+ class="inspector-account-control flex h-8 w-8 items-center justify-center rounded-md focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2"
6401
+ type="button"
6402
+ aria-label="Detach Inspector into its own window"
6403
+ title="Detach into its own window"
6404
+ data-testid="cpk-inspector-pop-out"
6405
+ style=${INTERACTIVE_FOCUS_BASE_STYLE}
6406
+ .click=${this.requestPopOut}
6407
+ @click=${this.requestPopOut}
6408
+ >
6409
+ ${this.renderIcon("PictureInPicture2")}
6410
+ </button>
6411
+ `}
6143
6412
  <button
6144
6413
  class="inspector-account-control flex h-8 w-8 items-center justify-center rounded-md focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 ${this.settingsOpen ? "inspector-account-control-active" : ""}"
6145
6414
  type="button"
6146
6415
  aria-label="Settings"
6147
6416
  aria-pressed=${this.settingsOpen}
6417
+ title="Settings"
6148
6418
  style=${INTERACTIVE_FOCUS_BASE_STYLE}
6149
6419
  @click=${this.handleSettingsToggle}
6150
6420
  >
6151
- ${this.renderIcon("Settings")}
6152
- </button>
6153
- <button
6154
- class="inspector-account-control flex h-8 w-8 items-center justify-center rounded-md focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2"
6155
- type="button"
6156
- aria-label="Close Web Inspector"
6157
- style=${INTERACTIVE_FOCUS_BASE_STYLE}
6158
- @pointerdown=${this.handleClosePointerDown}
6159
- @click=${this.handleCloseClick}
6160
- >
6161
- ${this.renderIcon("X")}
6421
+ <span class="inspector-account-control-icon" aria-hidden="true">
6422
+ ${this.renderIcon("Settings")}
6423
+ </span>
6162
6424
  </button>
6425
+ ${isPoppedOut ? lit.nothing : lit.html`
6426
+ <button
6427
+ class="inspector-account-control flex h-8 w-8 items-center justify-center rounded-md focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2"
6428
+ type="button"
6429
+ aria-label="Close Web Inspector"
6430
+ style=${INTERACTIVE_FOCUS_BASE_STYLE}
6431
+ @pointerdown=${this.handleClosePointerDown}
6432
+ @click=${this.handleCloseClick}
6433
+ >
6434
+ ${this.renderIcon("X")}
6435
+ </button>
6436
+ `}
6163
6437
  </div>
6164
6438
  </div>
6165
6439
  </div>
@@ -6255,27 +6529,29 @@ ${argsString}</pre
6255
6529
  </div>
6256
6530
  </div>
6257
6531
  </div>
6258
- <div
6259
- class="resize-handle pointer-events-auto absolute bottom-1 right-1 flex h-5 w-5 cursor-nwse-resize items-center justify-center text-gray-400 transition hover:text-gray-600"
6260
- role="presentation"
6261
- aria-hidden="true"
6262
- @pointerdown=${this.handleResizePointerDown}
6263
- @pointermove=${this.handleResizePointerMove}
6264
- @pointerup=${this.handleResizePointerUp}
6265
- @pointercancel=${this.handleResizePointerCancel}
6266
- >
6267
- <svg
6268
- class="h-3 w-3"
6269
- viewBox="0 0 16 16"
6270
- fill="none"
6271
- stroke="currentColor"
6272
- stroke-linecap="round"
6273
- stroke-width="1.5"
6274
- >
6275
- <path d="M5 15L15 5" />
6276
- <path d="M9 15L15 9" />
6277
- </svg>
6278
- </div>
6532
+ ${isPoppedOut ? lit.nothing : lit.html`
6533
+ <div
6534
+ class="resize-handle pointer-events-auto absolute bottom-1 right-1 flex h-5 w-5 cursor-nwse-resize items-center justify-center text-gray-400 transition hover:text-gray-600"
6535
+ role="presentation"
6536
+ aria-hidden="true"
6537
+ @pointerdown=${this.handleResizePointerDown}
6538
+ @pointermove=${this.handleResizePointerMove}
6539
+ @pointerup=${this.handleResizePointerUp}
6540
+ @pointercancel=${this.handleResizePointerCancel}
6541
+ >
6542
+ <svg
6543
+ class="h-3 w-3"
6544
+ viewBox="0 0 16 16"
6545
+ fill="none"
6546
+ stroke="currentColor"
6547
+ stroke-linecap="round"
6548
+ stroke-width="1.5"
6549
+ >
6550
+ <path d="M5 15L15 5" />
6551
+ <path d="M9 15L15 9" />
6552
+ </svg>
6553
+ </div>
6554
+ `}
6279
6555
  </section>
6280
6556
  `;
6281
6557
  }
@@ -6339,6 +6615,65 @@ ${argsString}</pre
6339
6615
  get activeContext() {
6340
6616
  return this.isOpen ? "window" : "button";
6341
6617
  }
6618
+ get isPoppedOut() {
6619
+ return this.popOut !== null && !this.popOut.win.closed;
6620
+ }
6621
+ get activeRoot() {
6622
+ if (this.isPoppedOut) return this.popOut.win.document;
6623
+ return this.renderRoot;
6624
+ }
6625
+ getPopOutCssTexts() {
6626
+ const fromStatic = WebInspectorElement.styles.map((sheet) => "cssText" in sheet ? String(sheet.cssText) : "");
6627
+ const overlay = `
6628
+ html, body { margin: 0; height: 100%; background: #ffffff; }
6629
+ .inspector-window {
6630
+ position: fixed !important;
6631
+ inset: 0 !important;
6632
+ width: 100% !important;
6633
+ height: 100% !important;
6634
+ min-width: 0 !important;
6635
+ min-height: 0 !important;
6636
+ border-radius: 0 !important;
6637
+ }
6638
+ `;
6639
+ return [...fromStatic.filter(Boolean), overlay];
6640
+ }
6641
+ unbindPopOutPointerDown(win) {
6642
+ try {
6643
+ win.removeEventListener("pointerdown", this.handleGlobalPointerDown);
6644
+ } catch (_unused13) {}
6645
+ }
6646
+ closePopOut() {
6647
+ const handle = this.popOut;
6648
+ if (!handle) return;
6649
+ this.handlePopOutClosed();
6650
+ handle.close();
6651
+ }
6652
+ syncInspectorPortal() {
6653
+ var _this$ownerDocument3;
6654
+ if (!this.inspectorPortal) {
6655
+ var _this$ownerDocument;
6656
+ const portal = ((_this$ownerDocument = this.ownerDocument) !== null && _this$ownerDocument !== void 0 ? _this$ownerDocument : document).createElement("div");
6657
+ portal.dataset.inspectorPortal = "true";
6658
+ portal.style.display = "contents";
6659
+ this.inspectorPortal = portal;
6660
+ }
6661
+ if (!this.isOpen) {
6662
+ var _this$ownerDocument2;
6663
+ (0, lit.render)(lit.nothing, this.inspectorPortal, {
6664
+ host: this,
6665
+ creationScope: (_this$ownerDocument2 = this.ownerDocument) !== null && _this$ownerDocument2 !== void 0 ? _this$ownerDocument2 : document
6666
+ });
6667
+ this.inspectorPortal.remove();
6668
+ return;
6669
+ }
6670
+ (0, lit.render)(this.renderWindow(), this.inspectorPortal, {
6671
+ host: this,
6672
+ creationScope: (_this$ownerDocument3 = this.ownerDocument) !== null && _this$ownerDocument3 !== void 0 ? _this$ownerDocument3 : document
6673
+ });
6674
+ const target = this.isPoppedOut ? this.popOut.win.document.body : this.renderRoot.querySelector("[data-inspector-portal-anchor]");
6675
+ if (target && this.inspectorPortal.parentNode !== target) target.appendChild(this.inspectorPortal);
6676
+ }
6342
6677
  measureContext(context) {
6343
6678
  var _this$renderRoot;
6344
6679
  const selector = context === "window" ? ".inspector-window" : ".console-button";
@@ -6478,6 +6813,7 @@ ${argsString}</pre
6478
6813
  } else document.body.style.transition = "";
6479
6814
  }
6480
6815
  updateHostTransform(context = this.activeContext) {
6816
+ if (this.isPoppedOut) return;
6481
6817
  if (context !== this.activeContext) return;
6482
6818
  if (this.isOpen && this.dockMode === "docked-left") this.style.transform = `translate3d(0, 0, 0)`;
6483
6819
  else {
@@ -6514,6 +6850,7 @@ ${argsString}</pre
6514
6850
  this.applyAnchorPosition("button");
6515
6851
  }
6516
6852
  applyAnchorPosition(context) {
6853
+ if (this.isPoppedOut) return;
6517
6854
  if (typeof window === "undefined") return;
6518
6855
  const viewport = this.getViewportSize();
6519
6856
  applyAnchorPosition(this.contextState[context], viewport, EDGE_MARGIN);
@@ -6533,7 +6870,9 @@ ${argsString}</pre
6533
6870
  this.setDragging(false);
6534
6871
  this.draggedDuringInteraction = false;
6535
6872
  }
6536
- openInspector(source) {
6873
+ openInspector(source, options = {}) {
6874
+ if (options.threadId) this.focusThread(options);
6875
+ if (this.isPoppedOut) return;
6537
6876
  if (this.isOpen) return;
6538
6877
  const hadUnseenAnnouncement = this.hasUnseenAnnouncement;
6539
6878
  this.showAnnouncementPreview = false;
@@ -6553,6 +6892,7 @@ ${argsString}</pre
6553
6892
  });
6554
6893
  }
6555
6894
  closeInspector() {
6895
+ if (this.isPoppedOut) return;
6556
6896
  if (!this.isOpen) return;
6557
6897
  this.isOpen = false;
6558
6898
  if (this.dockMode !== "floating") this.removeDockStyles();
@@ -6668,7 +7008,7 @@ ${argsString}</pre
6668
7008
  if (content === null || content === void 0) return "";
6669
7009
  if (typeof content === "object") try {
6670
7010
  return JSON.stringify(this.sanitizeForLogging(content));
6671
- } catch (_unused13) {
7011
+ } catch (_unused14) {
6672
7012
  return "";
6673
7013
  }
6674
7014
  return String(content);
@@ -6868,7 +7208,7 @@ ${argsString}</pre
6868
7208
  this.metadataTelemetryFingerprints.set(props.module, fingerprint);
6869
7209
  try {
6870
7210
  trackMetadataModuleViewed(props);
6871
- } catch (_unused14) {}
7211
+ } catch (_unused15) {}
6872
7212
  }
6873
7213
  maybeTrackInspectorMetadataViews() {
6874
7214
  var _this$core17, _telemetryContext$gro, _telemetryContext$lea;
@@ -7048,8 +7388,8 @@ ${argsString}</pre
7048
7388
  const step = (_THREADS_EXAMPLE_TOUR = THREADS_EXAMPLE_TOUR_STEPS[this.exampleTourStep]) !== null && _THREADS_EXAMPLE_TOUR !== void 0 ? _THREADS_EXAMPLE_TOUR : THREADS_EXAMPLE_TOUR_STEPS[0];
7049
7389
  if (!step) return;
7050
7390
  this.updateComplete.then(() => {
7051
- var _this$shadowRoot4, _details$selectTab;
7052
- const details = (_this$shadowRoot4 = this.shadowRoot) === null || _this$shadowRoot4 === void 0 ? void 0 : _this$shadowRoot4.querySelector("cpk-thread-details");
7391
+ var _details$selectTab;
7392
+ const details = this.activeRoot.querySelector("cpk-thread-details");
7053
7393
  details === null || details === void 0 || (_details$selectTab = details.selectTab) === null || _details$selectTab === void 0 || _details$selectTab.call(details, step.tab);
7054
7394
  });
7055
7395
  }
@@ -7100,6 +7440,8 @@ ${argsString}</pre
7100
7440
  this.requestUpdate();
7101
7441
  }
7102
7442
  handleThreadsThreadSelected(threadId, showingExamples) {
7443
+ this.requestedThreadId = null;
7444
+ this.focusedThreadMessageId = null;
7103
7445
  if (showingExamples && this.selectedThreadId === threadId && this.selectedLocalExampleThreadId === threadId) {
7104
7446
  this.selectedThreadId = null;
7105
7447
  this.selectedRealThreadIsExplicit = false;
@@ -7129,7 +7471,7 @@ ${argsString}</pre
7129
7471
  const raw = window.localStorage.getItem(THREADS_EXAMPLE_TOUR_STORAGE_KEY);
7130
7472
  if (!raw) return false;
7131
7473
  return JSON.parse(raw).dismissed === true;
7132
- } catch (_unused15) {
7474
+ } catch (_unused16) {
7133
7475
  return false;
7134
7476
  }
7135
7477
  }
@@ -7137,7 +7479,7 @@ ${argsString}</pre
7137
7479
  if (typeof window === "undefined") return;
7138
7480
  try {
7139
7481
  window.localStorage.setItem(THREADS_EXAMPLE_TOUR_STORAGE_KEY, JSON.stringify({ dismissed: true }));
7140
- } catch (_unused16) {}
7482
+ } catch (_unused17) {}
7141
7483
  }
7142
7484
  /** Cancels the one deferred gate without disturbing a newer lifecycle. */
7143
7485
  cancelThreadsExampleOverviewVideoGate() {
@@ -7175,7 +7517,7 @@ ${argsString}</pre
7175
7517
  this.threadsExampleOverviewVideoState = "playing";
7176
7518
  this.requestUpdate();
7177
7519
  }
7178
- } catch (_unused17) {
7520
+ } catch (_unused18) {
7179
7521
  if (this.isCurrentThreadsExampleOverviewVideo(video, lifecycleGeneration) && this.threadsExampleOverviewVideoPlayAttemptGeneration === playAttemptGeneration) this.failThreadsExampleOverviewVideo(video, lifecycleGeneration);
7180
7522
  } finally {
7181
7523
  if (this.threadsExampleOverviewVideoPlayAttemptGeneration === playAttemptGeneration) this.threadsExampleOverviewVideoPlayPromise = null;
@@ -7189,7 +7531,7 @@ ${argsString}</pre
7189
7531
  try {
7190
7532
  const playback = Promise.resolve(video.play());
7191
7533
  this.threadsExampleOverviewVideoPlayPromise = this.settleThreadsExampleOverviewVideoPlay(video, lifecycleGeneration, playAttemptGeneration, playback);
7192
- } catch (_unused18) {
7534
+ } catch (_unused19) {
7193
7535
  this.failThreadsExampleOverviewVideo(video, lifecycleGeneration);
7194
7536
  }
7195
7537
  }
@@ -7282,19 +7624,18 @@ ${argsString}</pre
7282
7624
  if (video) {
7283
7625
  try {
7284
7626
  video.pause();
7285
- } catch (_unused19) {}
7627
+ } catch (_unused20) {}
7286
7628
  video.removeAttribute("src");
7287
7629
  try {
7288
7630
  video.load();
7289
- } catch (_unused20) {}
7631
+ } catch (_unused21) {}
7290
7632
  }
7291
7633
  this.threadsExampleOverviewVideoLoaded = false;
7292
7634
  this.threadsExampleOverviewVideoState = "deferred";
7293
7635
  }
7294
7636
  /** Reconciles the rendered media node with its current lifecycle. */
7295
7637
  syncThreadsExampleOverviewVideo() {
7296
- var _this$shadowRoot5;
7297
- const video = (_this$shadowRoot5 = this.shadowRoot) === null || _this$shadowRoot5 === void 0 ? void 0 : _this$shadowRoot5.querySelector(".cpk-threads-overview-video");
7638
+ const video = this.activeRoot.querySelector(".cpk-threads-overview-video");
7298
7639
  if (!video) {
7299
7640
  if (this.threadsExampleOverviewVideoElement || this.threadsExampleOverviewVideoState !== "deferred" || this.threadsExampleOverviewVideoLoadTimer !== null || this.threadsExampleOverviewVideoIdleCallbackId !== null || this.threadsExampleOverviewVideoPlayOnNextBind) this.cleanupThreadsExampleOverviewVideo();
7300
7641
  return;
@@ -8210,6 +8551,8 @@ ${argsString}</pre
8210
8551
  .headers=${(_this$_core$headers = (_this$_core7 = this._core) === null || _this$_core7 === void 0 ? void 0 : _this$_core7.headers) !== null && _this$_core$headers !== void 0 ? _this$_core$headers : {}}
8211
8552
  .threadInspectionAvailable=${selectedThreadIsLocalExample || this.areThreadEndpointsAvailable() && ((_this$_core8 = this._core) === null || _this$_core8 === void 0 || (_this$_core8 = _this$_core8.threadEndpoints) === null || _this$_core8 === void 0 ? void 0 : _this$_core8.inspect) !== false}
8212
8553
  .liveMessageVersion=${(_this$liveMessageVers2 = this.liveMessageVersion.get(selectedThread.id)) !== null && _this$liveMessageVers2 !== void 0 ? _this$liveMessageVers2 : 0}
8554
+ .focusMessageId=${this.focusedThreadMessageId}
8555
+ .focusRequestId=${this.threadFocusRequestId}
8213
8556
  .agentStateInput=${this.getLatestStateForAgent(selectedThread.agentId)}
8214
8557
  .agentEventsInput=${(_this$agentEvents$get6 = this.agentEvents.get(selectedThread.agentId)) !== null && _this$agentEvents$get6 !== void 0 ? _this$agentEvents$get6 : []}
8215
8558
  ></cpk-thread-details>
@@ -8399,7 +8742,7 @@ ${argsString}</pre
8399
8742
  return lit.html`
8400
8743
  <tr
8401
8744
  class="${rowBg} cursor-pointer transition hover:bg-blue-50/50"
8402
- @click=${() => this.toggleRowExpansion(event.id)}
8745
+ @click=${(clickEvent) => this.toggleRowExpansion(event.id, clickEvent)}
8403
8746
  >
8404
8747
  <td
8405
8748
  class="border-l border-r border-b border-gray-200 px-3 py-2"
@@ -8432,7 +8775,7 @@ ${prettyEvent}</pre
8432
8775
  class="absolute right-0 top-0 cursor-pointer rounded px-2 py-1 text-[10px] opacity-0 transition group-hover:opacity-100 ${this.copiedEvents.has(event.id) ? "bg-green-100 text-green-700" : "bg-gray-100 text-gray-600 hover:bg-gray-200 hover:text-gray-900"}"
8433
8776
  @click=${(e) => {
8434
8777
  e.stopPropagation();
8435
- this.copyToClipboard(prettyEvent, event.id);
8778
+ this.copyToClipboard(prettyEvent, event.id, e);
8436
8779
  }}
8437
8780
  >
8438
8781
  ${this.copiedEvents.has(event.id) ? lit.html`
@@ -8786,8 +9129,7 @@ ${prettyEvent}</pre
8786
9129
  if (previousMenu !== "memories" && !((_this$core29 = this.core) === null || _this$core29 === void 0 ? void 0 : _this$core29.telemetryDisabled)) trackMemoriesTabClicked(this.getMemoriesTelemetryProps());
8787
9130
  }
8788
9131
  if (key === "ag-ui-events" || key === "agents") requestAnimationFrame(() => {
8789
- var _this$shadowRoot6;
8790
- const scroller = (_this$shadowRoot6 = this.shadowRoot) === null || _this$shadowRoot6 === void 0 ? void 0 : _this$shadowRoot6.getElementById("cpk-main-scroll");
9132
+ const scroller = this.activeRoot.querySelector("#cpk-main-scroll");
8791
9133
  if (scroller) scroller.scrollTop = 0;
8792
9134
  });
8793
9135
  this.contextMenuOpen = false;
@@ -9301,7 +9643,7 @@ ${prettyEvent}</pre
9301
9643
  class="cpk-copy-btn"
9302
9644
  @click=${(e) => {
9303
9645
  e.stopPropagation();
9304
- this.copyContextValue(id, `${id}:id`);
9646
+ this.copyContextValue(id, `${id}:id`, e);
9305
9647
  }}
9306
9648
  >
9307
9649
  ${this.copiedContextItems.has(`${id}:id`) ? "✓" : "Copy"}
@@ -9317,7 +9659,7 @@ ${prettyEvent}</pre
9317
9659
  class="cpk-copy-btn"
9318
9660
  @click=${(e) => {
9319
9661
  e.stopPropagation();
9320
- this.copyContextValue(context.value, id);
9662
+ this.copyContextValue(context.value, id, e);
9321
9663
  }}
9322
9664
  >
9323
9665
  ${this.copiedContextItems.has(id) ? "Copied" : "Copy JSON"}
@@ -9367,19 +9709,19 @@ ${prettyEvent}</pre
9367
9709
  if (typeof value === "function") return value.toString();
9368
9710
  try {
9369
9711
  return JSON.stringify(value, null, 2);
9370
- } catch (_unused21) {
9712
+ } catch (_unused22) {
9371
9713
  return String(value);
9372
9714
  }
9373
9715
  }
9374
- async copyContextValue(value, contextId) {
9375
- var _navigator$clipboard3;
9376
- if (typeof navigator === "undefined" || !((_navigator$clipboard3 = navigator.clipboard) === null || _navigator$clipboard3 === void 0 ? void 0 : _navigator$clipboard3.writeText)) {
9716
+ async copyContextValue(value, contextId, event) {
9717
+ const clipboard = this.getClipboard(event);
9718
+ if (!(clipboard === null || clipboard === void 0 ? void 0 : clipboard.writeText)) {
9377
9719
  console.warn("Clipboard API is not available in this environment.");
9378
9720
  return;
9379
9721
  }
9380
9722
  const serialized = this.formatContextValue(value);
9381
9723
  try {
9382
- await navigator.clipboard.writeText(serialized);
9724
+ await clipboard.writeText(serialized);
9383
9725
  this.copiedContextItems.add(contextId);
9384
9726
  this.requestUpdate();
9385
9727
  setTimeout(() => {
@@ -9395,8 +9737,10 @@ ${prettyEvent}</pre
9395
9737
  else this.expandedContextItems.add(contextId);
9396
9738
  this.requestUpdate();
9397
9739
  }
9398
- toggleRowExpansion(eventId) {
9399
- const selection = window.getSelection();
9740
+ toggleRowExpansion(eventId, event) {
9741
+ const target = event === null || event === void 0 ? void 0 : event.currentTarget;
9742
+ const ownerDocument = target && "ownerDocument" in target ? target.ownerDocument : this.ownerDocument;
9743
+ const selection = ownerDocument === null || ownerDocument === void 0 ? void 0 : ownerDocument.getSelection();
9400
9744
  if (selection && selection.toString().length > 0) return;
9401
9745
  if (this.expandedRows.has(eventId)) this.expandedRows.delete(eventId);
9402
9746
  else this.expandedRows.add(eventId);
@@ -9584,7 +9928,7 @@ ${prettyEvent}</pre
9584
9928
  try {
9585
9929
  const url = new URL(href, typeof window !== "undefined" ? window.location.href : "https://copilotkit.ai");
9586
9930
  return url.protocol === "http:" || url.protocol === "https:" || url.protocol === "mailto:";
9587
- } catch (_unused22) {
9931
+ } catch (_unused23) {
9588
9932
  return false;
9589
9933
  }
9590
9934
  }
@@ -9614,7 +9958,7 @@ ${prettyEvent}</pre
9614
9958
  }
9615
9959
  if (isRootRelative) return `${url.pathname}${url.search}${url.hash}`;
9616
9960
  return url.toString();
9617
- } catch (_unused23) {
9961
+ } catch (_unused24) {
9618
9962
  return href;
9619
9963
  }
9620
9964
  }
@@ -9633,7 +9977,7 @@ ${prettyEvent}</pre
9633
9977
  const parsed = JSON.parse(raw);
9634
9978
  if (parsed && typeof parsed.timestamp === "string") return parsed.timestamp;
9635
9979
  return null;
9636
- } catch (_unused24) {}
9980
+ } catch (_unused25) {}
9637
9981
  return null;
9638
9982
  }
9639
9983
  persistAnnouncementTimestamp(timestamp) {
@@ -9641,7 +9985,7 @@ ${prettyEvent}</pre
9641
9985
  try {
9642
9986
  const payload = JSON.stringify({ timestamp });
9643
9987
  window.localStorage.setItem(ANNOUNCEMENT_STORAGE_KEY, payload);
9644
- } catch (_unused25) {}
9988
+ } catch (_unused26) {}
9645
9989
  }
9646
9990
  markAnnouncementSeen() {
9647
9991
  this.hasUnseenAnnouncement = false;