@copilotkit/web-inspector 1.73.2 → 1.74.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +363 -271
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +29 -6
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +29 -6
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +364 -272
- package/dist/index.mjs.map +1 -1
- package/dist/index.umd.js +1274 -628
- package/dist/index.umd.js.map +1 -1
- package/dist/lib/notification-loader.cjs +38 -0
- package/dist/lib/notification-loader.cjs.map +1 -0
- package/dist/lib/notification-loader.mjs +38 -0
- package/dist/lib/notification-loader.mjs.map +1 -0
- package/dist/lib/notifications.cjs +173 -0
- package/dist/lib/notifications.cjs.map +1 -0
- package/dist/lib/notifications.d.cts +17 -0
- package/dist/lib/notifications.d.cts.map +1 -0
- package/dist/lib/notifications.d.mts +17 -0
- package/dist/lib/notifications.d.mts.map +1 -0
- package/dist/lib/notifications.mjs +168 -0
- package/dist/lib/notifications.mjs.map +1 -0
- package/dist/lib/onboarding-prompt.cjs +11 -17
- package/dist/lib/onboarding-prompt.cjs.map +1 -1
- package/dist/lib/onboarding-prompt.mjs +11 -17
- package/dist/lib/onboarding-prompt.mjs.map +1 -1
- package/dist/lib/persistence.cjs +124 -48
- package/dist/lib/persistence.cjs.map +1 -1
- package/dist/lib/persistence.mjs +121 -45
- package/dist/lib/persistence.mjs.map +1 -1
- package/dist/lib/telemetry.cjs +42 -0
- package/dist/lib/telemetry.cjs.map +1 -1
- package/dist/lib/telemetry.d.cts.map +1 -1
- package/dist/lib/telemetry.d.mts.map +1 -1
- package/dist/lib/telemetry.mjs +35 -1
- package/dist/lib/telemetry.mjs.map +1 -1
- package/dist/package.cjs +1 -1
- package/dist/package.mjs +1 -1
- package/dist/styles/generated.cjs +1 -1
- package/dist/styles/generated.cjs.map +1 -1
- package/dist/styles/generated.mjs +1 -1
- package/dist/styles/generated.mjs.map +1 -1
- package/dist/styles/notification-article.cjs +244 -0
- package/dist/styles/notification-article.cjs.map +1 -0
- package/dist/styles/notification-article.mjs +244 -0
- package/dist/styles/notification-article.mjs.map +1 -0
- package/package.json +4 -3
package/dist/index.umd.js
CHANGED
|
@@ -1,12 +1,776 @@
|
|
|
1
1
|
(function(global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('lit'), require('marked'), require('lit/directives/style-map.js'), require('lit/directives/unsafe-html.js'), require('lucide'), require('@copilotkit/core'), require('@copilotkit/shared')) :
|
|
3
|
-
typeof define === 'function' && define.amd ? define(['exports', 'lit', 'marked', 'lit/directives/style-map.js', 'lit/directives/unsafe-html.js', 'lucide', '@copilotkit/core', '@copilotkit/shared'], factory) :
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.CopilotKitWebInspector = {}), global.Lit,global.marked,global.LitDirectivesStyleMap,global.LitDirectivesUnsafeHtml,global.lucide,global.CopilotKitCore,global.CopilotKitShared));
|
|
5
|
-
})(this, function(exports, lit, marked, lit_directives_style_map_js, lit_directives_unsafe_html_js, lucide, _copilotkit_core, _copilotkit_shared) {
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('semver'), require('lit'), require('marked'), require('lit/directives/style-map.js'), require('lit/directives/unsafe-html.js'), require('lucide'), require('@copilotkit/core'), require('@copilotkit/shared')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define(['exports', 'semver', 'lit', 'marked', 'lit/directives/style-map.js', 'lit/directives/unsafe-html.js', 'lucide', '@copilotkit/core', '@copilotkit/shared'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.CopilotKitWebInspector = {}), global.semver,global.Lit,global.marked,global.LitDirectivesStyleMap,global.LitDirectivesUnsafeHtml,global.lucide,global.CopilotKitCore,global.CopilotKitShared));
|
|
5
|
+
})(this, function(exports, semver, lit, marked, lit_directives_style_map_js, lit_directives_unsafe_html_js, lucide, _copilotkit_core, _copilotkit_shared) {
|
|
6
6
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
7
7
|
|
|
8
|
+
//#region src/lib/notifications.ts
|
|
9
|
+
function emptyNotificationState() {
|
|
10
|
+
return {
|
|
11
|
+
schemaVersion: 1,
|
|
12
|
+
eligibleIds: [],
|
|
13
|
+
readIds: [],
|
|
14
|
+
suppressedIds: [],
|
|
15
|
+
activeId: null
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
const priorities = {
|
|
19
|
+
Low: 10,
|
|
20
|
+
Normal: 20,
|
|
21
|
+
High: 30,
|
|
22
|
+
Urgent: 40
|
|
23
|
+
};
|
|
24
|
+
const conditionValues = {
|
|
25
|
+
framework: [
|
|
26
|
+
"react",
|
|
27
|
+
"vue",
|
|
28
|
+
"angular"
|
|
29
|
+
],
|
|
30
|
+
intelligence: ["enabled", "disabled"],
|
|
31
|
+
deployment: ["managed", "self-hosted"]
|
|
32
|
+
};
|
|
33
|
+
function record(value) {
|
|
34
|
+
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
35
|
+
}
|
|
36
|
+
function onlyKeys(value, keys) {
|
|
37
|
+
return Object.keys(value).every((key) => keys.includes(key));
|
|
38
|
+
}
|
|
39
|
+
function text(value, max = 256) {
|
|
40
|
+
return typeof value === "string" && value.trim().length > 0 && value.length <= max;
|
|
41
|
+
}
|
|
42
|
+
function isNotificationId(value) {
|
|
43
|
+
return typeof value === "string" && /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value);
|
|
44
|
+
}
|
|
45
|
+
function ids(value) {
|
|
46
|
+
return Array.isArray(value) && value.every(isNotificationId) && new Set(value).size === value.length;
|
|
47
|
+
}
|
|
48
|
+
/** Validate authored conditions; unsupported predicates cannot broaden the audience. */
|
|
49
|
+
function validNotificationConditions(value) {
|
|
50
|
+
if (!record(value)) return false;
|
|
51
|
+
if (value.sdkVersion !== void 0 && value.framework === void 0) return false;
|
|
52
|
+
return Object.entries(value).every(([key, expected]) => {
|
|
53
|
+
var _conditionValues$key$, _conditionValues$key;
|
|
54
|
+
if (!text(expected)) return false;
|
|
55
|
+
if (key === "sdkVersion") return (0, semver.validRange)(expected) !== null;
|
|
56
|
+
if (key === "plan") return /^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(expected);
|
|
57
|
+
return Object.prototype.hasOwnProperty.call(conditionValues, key) && ((_conditionValues$key$ = (_conditionValues$key = conditionValues[key]) === null || _conditionValues$key === void 0 ? void 0 : _conditionValues$key.includes(expected)) !== null && _conditionValues$key$ !== void 0 ? _conditionValues$key$ : false);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
/** Parse the public envelope. Any invalid entry rejects the whole feed. */
|
|
61
|
+
function parseNotificationFeed(value) {
|
|
62
|
+
if (!record(value) || !onlyKeys(value, ["schemaVersion", "notifications"]) || value.schemaVersion !== 1) return null;
|
|
63
|
+
if (!Array.isArray(value.notifications) || value.notifications.length > 100) return null;
|
|
64
|
+
const notifications = [];
|
|
65
|
+
for (const notice of value.notifications) {
|
|
66
|
+
if (!record(notice) || !onlyKeys(notice, [
|
|
67
|
+
"id",
|
|
68
|
+
"title",
|
|
69
|
+
"body",
|
|
70
|
+
"publishedAt",
|
|
71
|
+
"audiences",
|
|
72
|
+
"priority",
|
|
73
|
+
"priorityOverride"
|
|
74
|
+
])) return null;
|
|
75
|
+
if (!isNotificationId(notice.id) || !text(notice.title) || !text(notice.body, 1e5) || !text(notice.publishedAt)) return null;
|
|
76
|
+
if (!/^\d{4}-\d\d-\d\dT\d\d:\d\d:\d\d\.\d{3}Z$/.test(notice.publishedAt) || !Number.isFinite(Date.parse(notice.publishedAt)) || new Date(notice.publishedAt).toISOString() !== notice.publishedAt) return null;
|
|
77
|
+
if (!Array.isArray(notice.audiences) || !notice.audiences.length || notice.audiences.length > 100 || !notice.audiences.every(validNotificationConditions)) return null;
|
|
78
|
+
if (!text(notice.priority) || !Object.prototype.hasOwnProperty.call(priorities, notice.priority)) return null;
|
|
79
|
+
if (notice.priorityOverride !== void 0 && (typeof notice.priorityOverride !== "number" || !Number.isSafeInteger(notice.priorityOverride) || notice.priorityOverride < 0)) return null;
|
|
80
|
+
if (notifications.some((n) => n.id === notice.id)) return null;
|
|
81
|
+
notifications.push({
|
|
82
|
+
id: notice.id,
|
|
83
|
+
title: notice.title,
|
|
84
|
+
body: notice.body,
|
|
85
|
+
publishedAt: notice.publishedAt,
|
|
86
|
+
audiences: notice.audiences,
|
|
87
|
+
priority: notice.priority,
|
|
88
|
+
...notice.priorityOverride === void 0 ? {} : { priorityOverride: notice.priorityOverride }
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
return {
|
|
92
|
+
schemaVersion: 1,
|
|
93
|
+
notifications
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
/** Ignore malformed or incompatible browser state. */
|
|
97
|
+
function parseNotificationState(value) {
|
|
98
|
+
if (!record(value) || value.schemaVersion !== 1 || !ids(value.eligibleIds) || !ids(value.readIds) || !ids(value.suppressedIds) || value.activeId !== null && !isNotificationId(value.activeId)) return null;
|
|
99
|
+
return {
|
|
100
|
+
schemaVersion: 1,
|
|
101
|
+
eligibleIds: value.eligibleIds,
|
|
102
|
+
readIds: value.readIds,
|
|
103
|
+
suppressedIds: value.suppressedIds,
|
|
104
|
+
activeId: value.activeId
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
/** Internal priority never becomes a developer-facing badge. */
|
|
108
|
+
function notificationPriority(notice) {
|
|
109
|
+
var _notice$priorityOverr;
|
|
110
|
+
return (_notice$priorityOverr = notice.priorityOverride) !== null && _notice$priorityOverr !== void 0 ? _notice$priorityOverr : priorities[notice.priority];
|
|
111
|
+
}
|
|
112
|
+
/** Stable ordering used by authoring reports and first-time selection. */
|
|
113
|
+
function compareNotifications(a, b) {
|
|
114
|
+
return notificationPriority(b) - notificationPriority(a) || Date.parse(b.publishedAt) - Date.parse(a.publishedAt) || (a.id < b.id ? -1 : a.id > b.id ? 1 : 0);
|
|
115
|
+
}
|
|
116
|
+
/** Refresh eligibility without promoting the previously delivered backlog. */
|
|
117
|
+
function reconcileNotifications(state, feed, context) {
|
|
118
|
+
var _eligible$find, _winner$id;
|
|
119
|
+
const eligible = feed.notifications.filter((n) => matchNotification(n, context).matches);
|
|
120
|
+
const quiet = (n) => state.readIds.includes(n.id) || state.suppressedIds.includes(n.id);
|
|
121
|
+
const active = (_eligible$find = eligible.find((n) => n.id === state.activeId && !quiet(n))) !== null && _eligible$find !== void 0 ? _eligible$find : feed.notifications.find((n) => n.id === state.activeId && !quiet(n) && n.audiences.some((conditions) => {
|
|
122
|
+
const entries = Object.entries(conditions);
|
|
123
|
+
if (!entries.some(([key]) => context[key] === void 0)) return false;
|
|
124
|
+
const known = Object.fromEntries(entries.filter(([key]) => context[key] !== void 0));
|
|
125
|
+
return matchNotification({
|
|
126
|
+
...n,
|
|
127
|
+
audiences: [known]
|
|
128
|
+
}, context).matches;
|
|
129
|
+
}));
|
|
130
|
+
const newcomer = eligible.filter((n) => !quiet(n) && !state.eligibleIds.includes(n.id)).sort(compareNotifications)[0];
|
|
131
|
+
const winner = active && (!newcomer || notificationPriority(active) >= notificationPriority(newcomer)) ? active : newcomer;
|
|
132
|
+
return {
|
|
133
|
+
...state,
|
|
134
|
+
eligibleIds: eligible.map((n) => n.id),
|
|
135
|
+
activeId: (_winner$id = winner === null || winner === void 0 ? void 0 : winner.id) !== null && _winner$id !== void 0 ? _winner$id : null
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
/** Reading or closing the highlight quiets its delivered backlog, not future IDs. */
|
|
139
|
+
function acknowledgeNotification(state, noticeId) {
|
|
140
|
+
if (!state.eligibleIds.includes(noticeId)) return state;
|
|
141
|
+
const highlighted = state.activeId === noticeId;
|
|
142
|
+
return {
|
|
143
|
+
...state,
|
|
144
|
+
readIds: [...new Set([...state.readIds, noticeId])],
|
|
145
|
+
suppressedIds: [...new Set([...state.suppressedIds, ...highlighted ? state.eligibleIds : [noticeId]])],
|
|
146
|
+
activeId: highlighted ? null : state.activeId
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
/** Explain targeting using the same rules in CI and the Inspector. */
|
|
150
|
+
function matchNotification(notice, context) {
|
|
151
|
+
if (!context.development) return {
|
|
152
|
+
matches: false,
|
|
153
|
+
reasons: ["Development only"]
|
|
154
|
+
};
|
|
155
|
+
if (!context.sdkVersion || !(0, semver.valid)(context.sdkVersion) || (0, semver.prerelease)(context.sdkVersion) !== null) return {
|
|
156
|
+
matches: false,
|
|
157
|
+
reasons: ["Known stable SDK required"]
|
|
158
|
+
};
|
|
159
|
+
const reasons = [];
|
|
160
|
+
const matches = notice.audiences.some((conditions) => {
|
|
161
|
+
return Object.entries(conditions).every(([field, expected]) => {
|
|
162
|
+
const actual = context[field];
|
|
163
|
+
const matches = field === "sdkVersion" ? actual !== void 0 && (0, semver.valid)(actual) !== null && (0, semver.prerelease)(actual) === null && (0, semver.satisfies)(actual, expected) : actual === expected;
|
|
164
|
+
if (!matches) reasons.push(`${field} ${actual === void 0 ? "is unknown" : `requires ${expected} (got ${actual})`}`);
|
|
165
|
+
return matches;
|
|
166
|
+
});
|
|
167
|
+
});
|
|
168
|
+
return {
|
|
169
|
+
matches,
|
|
170
|
+
reasons: matches ? [] : reasons
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
//#endregion
|
|
175
|
+
//#region src/lib/notification-loader.ts
|
|
176
|
+
const NOTIFICATION_FEED_URL = "https://cdn.copilotkit.ai/notifications/v1.json";
|
|
177
|
+
const requests = /* @__PURE__ */ new Map();
|
|
178
|
+
/** New SDKs read only cohorts; announcements.json remains the older SDK channel.
|
|
179
|
+
* Share one request per framework/version per page. Missing context gets the full
|
|
180
|
+
* feed so future servers cannot exclude notices the client may still match.
|
|
181
|
+
*/
|
|
182
|
+
function loadNotificationFeed(context) {
|
|
183
|
+
if (typeof window === "undefined" || typeof fetch === "undefined") return Promise.resolve(null);
|
|
184
|
+
const url = new URL(NOTIFICATION_FEED_URL);
|
|
185
|
+
if (context.framework && context.sdkVersion) {
|
|
186
|
+
url.searchParams.set("framework", context.framework);
|
|
187
|
+
url.searchParams.set("sdkVersion", context.sdkVersion);
|
|
188
|
+
}
|
|
189
|
+
const key = url.toString();
|
|
190
|
+
const existing = requests.get(key);
|
|
191
|
+
if (existing) return existing;
|
|
192
|
+
const request = fetch(key, {
|
|
193
|
+
cache: "no-cache",
|
|
194
|
+
credentials: "omit"
|
|
195
|
+
}).then(async (response) => {
|
|
196
|
+
if (!response.ok) throw new Error(`Feed request failed (${response.status})`);
|
|
197
|
+
const feed = parseNotificationFeed(await response.json());
|
|
198
|
+
if (!feed) throw new Error("Feed failed validation");
|
|
199
|
+
return feed;
|
|
200
|
+
}).catch((error) => {
|
|
201
|
+
console.warn("[CopilotKit Inspector] Failed to load notifications", error);
|
|
202
|
+
return null;
|
|
203
|
+
});
|
|
204
|
+
requests.set(key, request);
|
|
205
|
+
return request;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
//#endregion
|
|
209
|
+
//#region src/lib/persistence.ts
|
|
210
|
+
function loadInspectorState(storageKey) {
|
|
211
|
+
if (typeof window === "undefined") return null;
|
|
212
|
+
const raw = window.localStorage.getItem(storageKey);
|
|
213
|
+
if (raw) try {
|
|
214
|
+
const parsed = JSON.parse(raw);
|
|
215
|
+
if (parsed && typeof parsed === "object") return parsed;
|
|
216
|
+
} catch (_unused2) {}
|
|
217
|
+
if (typeof document !== "undefined") {
|
|
218
|
+
const prefix = `${storageKey}=`;
|
|
219
|
+
const entry = document.cookie.split("; ").find((cookie) => cookie.startsWith(prefix));
|
|
220
|
+
if (entry) {
|
|
221
|
+
const legacyRaw = entry.substring(prefix.length);
|
|
222
|
+
try {
|
|
223
|
+
const parsed = JSON.parse(decodeURIComponent(legacyRaw));
|
|
224
|
+
if (parsed && typeof parsed === "object") return parsed;
|
|
225
|
+
} catch (_unused3) {
|
|
226
|
+
return null;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
return null;
|
|
231
|
+
}
|
|
232
|
+
function saveInspectorState(storageKey, state) {
|
|
233
|
+
if (typeof window === "undefined") return;
|
|
234
|
+
try {
|
|
235
|
+
window.localStorage.setItem(storageKey, JSON.stringify(state));
|
|
236
|
+
} catch (error) {
|
|
237
|
+
console.warn("Failed to persist inspector state", error);
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
function isValidAnchor(value) {
|
|
241
|
+
if (!value || typeof value !== "object") return false;
|
|
242
|
+
const candidate = value;
|
|
243
|
+
return (candidate.horizontal === "left" || candidate.horizontal === "right") && (candidate.vertical === "top" || candidate.vertical === "bottom");
|
|
244
|
+
}
|
|
245
|
+
function isValidPosition(value) {
|
|
246
|
+
if (!value || typeof value !== "object") return false;
|
|
247
|
+
const candidate = value;
|
|
248
|
+
return isFiniteNumber(candidate.x) && isFiniteNumber(candidate.y);
|
|
249
|
+
}
|
|
250
|
+
function isValidSize(value) {
|
|
251
|
+
if (!value || typeof value !== "object") return false;
|
|
252
|
+
const candidate = value;
|
|
253
|
+
return isFiniteNumber(candidate.width) && isFiniteNumber(candidate.height);
|
|
254
|
+
}
|
|
255
|
+
function isFiniteNumber(value) {
|
|
256
|
+
return typeof value === "number" && Number.isFinite(value);
|
|
257
|
+
}
|
|
258
|
+
function isValidDockMode(value) {
|
|
259
|
+
return value === "floating" || value === "docked-left";
|
|
260
|
+
}
|
|
261
|
+
const INSPECTOR_DISMISSAL_MIRROR_KEY = "cpk:inspector:dismissed_until";
|
|
262
|
+
const INSPECTOR_DISMISSAL_COOKIE_NAME = "cpk_inspector_dismissed_until";
|
|
263
|
+
const INSPECTOR_DISMISSAL_MAX_DURATION_MS = 10080 * 60 * 1e3;
|
|
264
|
+
/** Return the active host-scoped Inspector dismissal deadline, if any. */
|
|
265
|
+
function loadInspectorDismissedUntil(now = Date.now()) {
|
|
266
|
+
var _parseInspectorDismis;
|
|
267
|
+
const until = (_parseInspectorDismis = parseInspectorDismissalPayload(readCookie(INSPECTOR_DISMISSAL_COOKIE_NAME))) !== null && _parseInspectorDismis !== void 0 ? _parseInspectorDismis : parseInspectorDismissalPayload(readLocalStorageItem(INSPECTOR_DISMISSAL_MIRROR_KEY));
|
|
268
|
+
if (until === null) return null;
|
|
269
|
+
if (until <= now) {
|
|
270
|
+
clearInspectorDismissal();
|
|
271
|
+
return null;
|
|
272
|
+
}
|
|
273
|
+
const maximumUntil = now + INSPECTOR_DISMISSAL_MAX_DURATION_MS;
|
|
274
|
+
if (until > maximumUntil) {
|
|
275
|
+
saveInspectorDismissedUntil(maximumUntil, now);
|
|
276
|
+
return maximumUntil;
|
|
277
|
+
}
|
|
278
|
+
return until;
|
|
279
|
+
}
|
|
280
|
+
/** Persist a dismissal across browser sessions and localhost ports. */
|
|
281
|
+
function saveInspectorDismissedUntil(until, now = Date.now()) {
|
|
282
|
+
if (!Number.isFinite(until) || until <= now) {
|
|
283
|
+
clearInspectorDismissal();
|
|
284
|
+
return;
|
|
285
|
+
}
|
|
286
|
+
const boundedUntil = Math.min(until, now + INSPECTOR_DISMISSAL_MAX_DURATION_MS);
|
|
287
|
+
const payload = JSON.stringify({ until: boundedUntil });
|
|
288
|
+
writeCookie(INSPECTOR_DISMISSAL_COOKIE_NAME, payload, `Max-Age=${Math.max(1, Math.ceil((boundedUntil - now) / 1e3))}`);
|
|
289
|
+
writeLocalStorageItem(INSPECTOR_DISMISSAL_MIRROR_KEY, payload);
|
|
290
|
+
}
|
|
291
|
+
/** Clear both persistence layers, including an expired host cookie. */
|
|
292
|
+
function clearInspectorDismissal() {
|
|
293
|
+
writeCookie(INSPECTOR_DISMISSAL_COOKIE_NAME, "", "Max-Age=0");
|
|
294
|
+
removeLocalStorageItem(INSPECTOR_DISMISSAL_MIRROR_KEY);
|
|
295
|
+
}
|
|
296
|
+
/** Parse a finite deadline from either persistence layer. */
|
|
297
|
+
function parseInspectorDismissalPayload(raw) {
|
|
298
|
+
if (!raw) return null;
|
|
299
|
+
try {
|
|
300
|
+
const parsed = JSON.parse(raw);
|
|
301
|
+
return typeof parsed.until === "number" && Number.isFinite(parsed.until) ? parsed.until : null;
|
|
302
|
+
} catch (_unused4) {
|
|
303
|
+
return null;
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
const LEGACY_ANNOUNCEMENT_READ_KEY = "cpk:inspector:announcements";
|
|
307
|
+
const ANNOUNCEMENT_PULSED_SESSION_KEY = "cpk:inspector:pulsed";
|
|
308
|
+
/**
|
|
309
|
+
* Deletes the superseded origin-scoped read state. Safe to call on every
|
|
310
|
+
* startup: nothing writes that key any more, so the value cannot come back.
|
|
311
|
+
*/
|
|
312
|
+
function clearLegacyAnnouncementReadState() {
|
|
313
|
+
removeLocalStorageItem(LEGACY_ANNOUNCEMENT_READ_KEY);
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* The announcement timestamp this browser tab has already pulsed for, or
|
|
317
|
+
* `null` when it hasn't pulsed yet.
|
|
318
|
+
*/
|
|
319
|
+
function loadAnnouncementPulsedTimestamp() {
|
|
320
|
+
if (typeof window === "undefined") return null;
|
|
321
|
+
try {
|
|
322
|
+
return window.sessionStorage.getItem(ANNOUNCEMENT_PULSED_SESSION_KEY);
|
|
323
|
+
} catch (_unused5) {
|
|
324
|
+
return null;
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
function readCookie(name) {
|
|
328
|
+
if (typeof document === "undefined") return null;
|
|
329
|
+
try {
|
|
330
|
+
for (const entry of document.cookie.split(";")) {
|
|
331
|
+
const separator = entry.indexOf("=");
|
|
332
|
+
if (separator === -1) continue;
|
|
333
|
+
if (entry.slice(0, separator).trim() !== name) continue;
|
|
334
|
+
return decodeURIComponent(entry.slice(separator + 1).trim());
|
|
335
|
+
}
|
|
336
|
+
} catch (_unused6) {}
|
|
337
|
+
return null;
|
|
338
|
+
}
|
|
339
|
+
function writeCookie(name, value, lifetime) {
|
|
340
|
+
if (typeof document === "undefined") return;
|
|
341
|
+
try {
|
|
342
|
+
document.cookie = `${name}=${encodeURIComponent(value)}; Path=/; ${lifetime}; SameSite=Lax`;
|
|
343
|
+
} catch (_unused7) {}
|
|
344
|
+
}
|
|
345
|
+
function readLocalStorageItem(key) {
|
|
346
|
+
if (typeof window === "undefined") return null;
|
|
347
|
+
try {
|
|
348
|
+
return window.localStorage.getItem(key);
|
|
349
|
+
} catch (_unused8) {
|
|
350
|
+
return null;
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
function writeLocalStorageItem(key, value) {
|
|
354
|
+
if (typeof window === "undefined") return;
|
|
355
|
+
try {
|
|
356
|
+
window.localStorage.setItem(key, value);
|
|
357
|
+
} catch (_unused9) {}
|
|
358
|
+
}
|
|
359
|
+
function removeLocalStorageItem(key) {
|
|
360
|
+
if (typeof window === "undefined") return;
|
|
361
|
+
try {
|
|
362
|
+
window.localStorage.removeItem(key);
|
|
363
|
+
} catch (_unused10) {}
|
|
364
|
+
}
|
|
365
|
+
const TELEMETRY_DISTINCT_ID_KEY = "cpk:inspector:telemetry:distinct_id";
|
|
366
|
+
const TELEMETRY_OPT_OUT_KEY = "cpk:inspector:telemetry:opt_out";
|
|
367
|
+
const TELEMETRY_DISCLOSURE_SHOWN_KEY = "cpk:inspector:telemetry:disclosure_shown";
|
|
368
|
+
let inMemoryFallbackId = null;
|
|
369
|
+
function getOrCreateTelemetryDistinctId() {
|
|
370
|
+
if (typeof window === "undefined") return generateUuidV4();
|
|
371
|
+
try {
|
|
372
|
+
const existing = window.localStorage.getItem(TELEMETRY_DISTINCT_ID_KEY);
|
|
373
|
+
if (existing && existing.length > 0) return existing;
|
|
374
|
+
const fresh = generateUuidV4();
|
|
375
|
+
window.localStorage.setItem(TELEMETRY_DISTINCT_ID_KEY, fresh);
|
|
376
|
+
return fresh;
|
|
377
|
+
} catch (_unused11) {
|
|
378
|
+
var _inMemoryFallbackId;
|
|
379
|
+
return (_inMemoryFallbackId = inMemoryFallbackId) !== null && _inMemoryFallbackId !== void 0 ? _inMemoryFallbackId : inMemoryFallbackId = generateUuidV4();
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
function isTelemetryOptedOut() {
|
|
383
|
+
if (typeof window === "undefined") return false;
|
|
384
|
+
try {
|
|
385
|
+
return window.localStorage.getItem(TELEMETRY_OPT_OUT_KEY) === "true";
|
|
386
|
+
} catch (_unused12) {
|
|
387
|
+
return false;
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
function hasTelemetryDisclosureBeenShown() {
|
|
391
|
+
if (typeof window === "undefined") return false;
|
|
392
|
+
try {
|
|
393
|
+
return window.localStorage.getItem(TELEMETRY_DISCLOSURE_SHOWN_KEY) === "true";
|
|
394
|
+
} catch (_unused14) {
|
|
395
|
+
return false;
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
function markTelemetryDisclosureShown() {
|
|
399
|
+
if (typeof window === "undefined") return;
|
|
400
|
+
try {
|
|
401
|
+
window.localStorage.setItem(TELEMETRY_DISCLOSURE_SHOWN_KEY, "true");
|
|
402
|
+
} catch (_unused15) {}
|
|
403
|
+
}
|
|
404
|
+
function generateUuidV4() {
|
|
405
|
+
if (typeof globalThis.crypto !== "undefined" && typeof globalThis.crypto.randomUUID === "function") return globalThis.crypto.randomUUID();
|
|
406
|
+
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
|
|
407
|
+
const r = Math.random() * 16 | 0;
|
|
408
|
+
return (c === "x" ? r : r & 3 | 8).toString(16);
|
|
409
|
+
});
|
|
410
|
+
}
|
|
411
|
+
const NOTIFICATION_COOKIE = "cpk_inspector_notifications_v1";
|
|
412
|
+
const NOTIFICATION_STORAGE = "cpk:inspector:notifications:v1";
|
|
413
|
+
const NOTIFICATION_COOKIE_MAX_LENGTH = 1024;
|
|
414
|
+
const LEGACY_ANNOUNCEMENT_ID = "16f7d877-49e3-41c3-9ca6-f951d3d8ba80";
|
|
415
|
+
/** Read host-wide acknowledgements from either the new compact cookie or an old full-state cookie. */
|
|
416
|
+
function readNotificationAcknowledgements() {
|
|
417
|
+
try {
|
|
418
|
+
const raw = readCookie(NOTIFICATION_COOKIE);
|
|
419
|
+
if (raw) {
|
|
420
|
+
const value = JSON.parse(raw);
|
|
421
|
+
if (value && typeof value === "object") {
|
|
422
|
+
const state = parseNotificationState({
|
|
423
|
+
...emptyNotificationState(),
|
|
424
|
+
...value
|
|
425
|
+
});
|
|
426
|
+
if (state) return {
|
|
427
|
+
readIds: state.readIds,
|
|
428
|
+
suppressedIds: state.suppressedIds
|
|
429
|
+
};
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
} catch (_unused16) {}
|
|
433
|
+
return {
|
|
434
|
+
readIds: [],
|
|
435
|
+
suppressedIds: []
|
|
436
|
+
};
|
|
437
|
+
}
|
|
438
|
+
/** Load per-origin selection and merge host-wide read and suppressed notices. */
|
|
439
|
+
function loadNotificationState() {
|
|
440
|
+
const raw = readLocalStorageItem(NOTIFICATION_STORAGE);
|
|
441
|
+
let localState = emptyNotificationState();
|
|
442
|
+
if (raw) try {
|
|
443
|
+
var _parseNotificationSta;
|
|
444
|
+
localState = (_parseNotificationSta = parseNotificationState(JSON.parse(raw))) !== null && _parseNotificationSta !== void 0 ? _parseNotificationSta : localState;
|
|
445
|
+
} catch (_unused17) {}
|
|
446
|
+
const host = readNotificationAcknowledgements();
|
|
447
|
+
return {
|
|
448
|
+
...localState,
|
|
449
|
+
readIds: [...new Set([...localState.readIds, ...host.readIds])],
|
|
450
|
+
suppressedIds: [...new Set([...localState.suppressedIds, ...host.suppressedIds])]
|
|
451
|
+
};
|
|
452
|
+
}
|
|
453
|
+
/** Preserve a legacy acknowledgement only for the known announcement entering the new feed. */
|
|
454
|
+
function migrateAnnouncementReadState(state, feed) {
|
|
455
|
+
for (const raw of [readCookie("cpk_inspector_announcements"), readLocalStorageItem("cpk:inspector:announcement_read")]) {
|
|
456
|
+
if (!raw) continue;
|
|
457
|
+
try {
|
|
458
|
+
const value = JSON.parse(raw);
|
|
459
|
+
if (!value || typeof value !== "object" || !("timestamp" in value)) continue;
|
|
460
|
+
const legacyNotice = feed.notifications.find((notice) => notice.id === LEGACY_ANNOUNCEMENT_ID && notice.publishedAt === value.timestamp);
|
|
461
|
+
if (!legacyNotice) continue;
|
|
462
|
+
const migrated = {
|
|
463
|
+
...state,
|
|
464
|
+
readIds: [...new Set([...state.readIds, legacyNotice.id])],
|
|
465
|
+
suppressedIds: [...new Set([...state.suppressedIds, legacyNotice.id])]
|
|
466
|
+
};
|
|
467
|
+
saveNotificationState(migrated);
|
|
468
|
+
writeCookie("cpk_inspector_announcements", "", "Max-Age=0");
|
|
469
|
+
removeLocalStorageItem("cpk:inspector:announcement_read");
|
|
470
|
+
return migrated;
|
|
471
|
+
} catch (_unused18) {}
|
|
472
|
+
}
|
|
473
|
+
return state;
|
|
474
|
+
}
|
|
475
|
+
/** Save full state per origin and a bounded host-wide acknowledgement cookie. */
|
|
476
|
+
function saveNotificationState(state) {
|
|
477
|
+
const host = readNotificationAcknowledgements();
|
|
478
|
+
const merged = {
|
|
479
|
+
...state,
|
|
480
|
+
readIds: [...new Set([...state.readIds, ...host.readIds])],
|
|
481
|
+
suppressedIds: [...new Set([...state.suppressedIds, ...host.suppressedIds])]
|
|
482
|
+
};
|
|
483
|
+
writeLocalStorageItem(NOTIFICATION_STORAGE, JSON.stringify(merged));
|
|
484
|
+
const cookieState = {
|
|
485
|
+
schemaVersion: 1,
|
|
486
|
+
readIds: [...merged.readIds],
|
|
487
|
+
suppressedIds: [...merged.suppressedIds]
|
|
488
|
+
};
|
|
489
|
+
let raw = JSON.stringify(cookieState);
|
|
490
|
+
while (encodeURIComponent(raw).length >= NOTIFICATION_COOKIE_MAX_LENGTH) {
|
|
491
|
+
if (cookieState.readIds.length >= cookieState.suppressedIds.length) cookieState.readIds.shift();
|
|
492
|
+
else cookieState.suppressedIds.shift();
|
|
493
|
+
raw = JSON.stringify(cookieState);
|
|
494
|
+
}
|
|
495
|
+
writeCookie(NOTIFICATION_COOKIE, raw, "Max-Age=31536000");
|
|
496
|
+
}
|
|
497
|
+
/** ID-based pulse state is separate from the legacy announcement timestamp. */
|
|
498
|
+
const NOTIFICATION_PULSED_SESSION_KEY = "cpk:inspector:notification-pulsed-id";
|
|
499
|
+
const MAX_PULSED_NOTIFICATION_IDS = 100;
|
|
500
|
+
function pulsedNotificationIds(raw) {
|
|
501
|
+
if (!raw) return [];
|
|
502
|
+
if (!raw.startsWith("[")) return [raw];
|
|
503
|
+
try {
|
|
504
|
+
const ids = JSON.parse(raw);
|
|
505
|
+
return Array.isArray(ids) ? ids.filter((id) => typeof id === "string") : [];
|
|
506
|
+
} catch (_unused19) {
|
|
507
|
+
return [];
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
function saveNotificationPulsedId(id) {
|
|
511
|
+
if (typeof window === "undefined") return;
|
|
512
|
+
try {
|
|
513
|
+
const ids = pulsedNotificationIds(window.sessionStorage.getItem(NOTIFICATION_PULSED_SESSION_KEY));
|
|
514
|
+
if (!ids.includes(id)) ids.push(id);
|
|
515
|
+
window.sessionStorage.setItem(NOTIFICATION_PULSED_SESSION_KEY, JSON.stringify(ids.slice(-MAX_PULSED_NOTIFICATION_IDS)));
|
|
516
|
+
} catch (_unused20) {}
|
|
517
|
+
}
|
|
518
|
+
function hasNotificationPulsed(id, publishedAt) {
|
|
519
|
+
if (typeof window === "undefined") return false;
|
|
520
|
+
try {
|
|
521
|
+
const current = window.sessionStorage.getItem(NOTIFICATION_PULSED_SESSION_KEY);
|
|
522
|
+
if (current !== null) return pulsedNotificationIds(current).includes(id);
|
|
523
|
+
if (loadAnnouncementPulsedTimestamp() === publishedAt) {
|
|
524
|
+
saveNotificationPulsedId(id);
|
|
525
|
+
return true;
|
|
526
|
+
}
|
|
527
|
+
} catch (_unused21) {}
|
|
528
|
+
return false;
|
|
529
|
+
}
|
|
530
|
+
|
|
531
|
+
//#endregion
|
|
8
532
|
//#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-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-duration:initial;--tw-ease:initial}}}@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-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-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-100:oklch(94.3% .029 294.588);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-400:oklch(70.2% .183 293.541);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-violet-800:oklch(43.2% .232 292.759);--color-violet-950:oklch(28.3% .141 291.089);--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-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--color-rose-950:oklch(27.1% .105 12.094);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--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;--container-3xl:48rem;--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;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--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{.\\@container{container-type:inline-size}.pointer-events-auto{pointer-events:auto}.collapse{visibility:collapse}.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)}.bottom-0{bottom:calc(var(--spacing)*0)}.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}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-3{margin-inline:calc(var(--spacing)*3)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-auto{margin-inline:auto}.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-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-auto{margin-right:auto}.mb-0\\.5{margin-bottom:calc(var(--spacing)*.5)}.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-1{margin-left:calc(var(--spacing)*-1)}.ml-1{margin-left:calc(var(--spacing)*1)}.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-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-\\[28rem\\]{height:28rem}.h-full{height:100%}.max-h-32{max-height:calc(var(--spacing)*32)}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-7{min-height:calc(var(--spacing)*7)}.min-h-\\[20rem\\]{min-height:20rem}.min-h-\\[40px\\]{min-height:40px}.min-h-\\[420px\\]{min-height:420px}.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-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-40{width:calc(var(--spacing)*40)}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.max-w-3xl{max-width:var(--container-3xl)}.max-w-\\[80\\%\\]{max-width:80%}.max-w-\\[200px\\]{max-width:200px}.max-w-\\[240px\\]{max-width:240px}.max-w-full{max-width:100%}.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-\\[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-not-allowed{cursor:not-allowed}.cursor-nwse-resize{cursor:nwse-resize}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.list-none{list-style-type:none}.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-end{align-items:flex-end}.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)))}.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-\\[16px\\]{border-radius:16px}.rounded-\\[28px\\]{border-radius:28px}.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-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-rose-300{border-color:var(--color-rose-300)}.border-slate-200{border-color:var(--color-slate-200)}.border-violet-200{border-color:var(--color-violet-200)}.bg-\\[\\#00000014\\]{background-color:#00000014}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-black{background-color:var(--color-black)}.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-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-200{background-color:var(--color-gray-200)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-gray-500{background-color:var(--color-gray-500)}.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-slate-900{background-color:var(--color-slate-900)}.bg-transparent{background-color:#0000}.bg-violet-50{background-color:var(--color-violet-50)}.bg-white{background-color:var(--color-white)}.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-0\\.5{padding:calc(var(--spacing)*.5)}.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-2\\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.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)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-1\\.5{padding-top:calc(var(--spacing)*1.5)}.pt-8{padding-top:calc(var(--spacing)*8)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-5{padding-bottom:calc(var(--spacing)*5)}.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}.text-\\[13px\\]{font-size:13px}.leading-4{--tw-leading:calc(var(--spacing)*4);line-height:calc(var(--spacing)*4)}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.leading-\\[22px\\]{--tw-leading:22px;line-height:22px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.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-wrap{white-space:pre-wrap}.text-\\[rgb\\(13\\,13\\,13\\)\\]{color:#0d0d0d}.text-amber-600{color:var(--color-amber-600)}.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-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-rose-800{color:var(--color-rose-800)}.text-rose-950{color:var(--color-rose-950)}.text-slate-500{color:var(--color-slate-500)}.text-slate-800{color:var(--color-slate-800)}.text-violet-500{color:var(--color-violet-500)}.text-violet-600{color:var(--color-violet-600)}.text-violet-950{color:var(--color-violet-950)}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-violet-300{-webkit-text-decoration-color:var(--color-violet-300);-webkit-text-decoration-color:var(--color-violet-300);text-decoration-color:var(--color-violet-300)}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.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-\\[0_4px_4px_0_\\#0000000a\\,0_0_1px_0_\\#0000009e\\]{--tw-shadow:0 4px 4px 0 var(--tw-shadow-color,#0000000a),0 0 1px 0 var(--tw-shadow-color,#0000009e);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,.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-transparent{--tw-ring-color:transparent}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.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,)}.backdrop-filter{-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-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.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}}.placeholder\\:text-gray-500::placeholder{color:var(--color-gray-500)}.focus-within\\:shadow-\\[0_6px_18px_0_\\#00000014\\,0_0_1px_0_\\#0000009e\\]:focus-within{--tw-shadow:0 6px 18px 0 var(--tw-shadow-color,#00000014),0 0 1px 0 var(--tw-shadow-color,#0000009e);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (hover:hover){.hover\\:border-gray-300:hover{border-color:var(--color-gray-300)}.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-rose-100:hover{background-color:var(--color-rose-100)}.hover\\:bg-violet-100:hover{background-color:var(--color-violet-100)}.hover\\:text-gray-900:hover{color:var(--color-gray-900)}.hover\\:text-violet-800:hover{color:var(--color-violet-800)}.hover\\:decoration-violet-700:hover{-webkit-text-decoration-color:var(--color-violet-700);-webkit-text-decoration-color:var(--color-violet-700);text-decoration-color:var(--color-violet-700)}.hover\\:opacity-70:hover{opacity:.7}}.focus\\:border-gray-300:focus{border-color:var(--color-gray-300)}.focus\\:border-violet-400:focus{border-color:var(--color-violet-400)}.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\\:ring-violet-100:focus{--tw-ring-color:var(--color-violet-100)}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\\:rounded:focus-visible{border-radius:.25rem}.focus-visible\\:rounded-sm:focus-visible{border-radius:var(--radius-sm)}.focus-visible\\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\\:ring-rose-300:focus-visible{--tw-ring-color:var(--color-rose-300)}.focus-visible\\:ring-violet-300:focus-visible{--tw-ring-color:var(--color-violet-300)}.focus-visible\\:ring-violet-400:focus-visible{--tw-ring-color:var(--color-violet-400)}.focus-visible\\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\\:outline: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-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\\:opacity-60:active{opacity:.6}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:text-gray-500:disabled{color:var(--color-gray-500)}.disabled\\:opacity-50:disabled{opacity:.5}.disabled\\:opacity-60:disabled{opacity:.6}@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\\]\\:h-3>svg{height:calc(var(--spacing)*3)}.\\[\\&\\>svg\\]\\:h-3\\.5>svg{height:calc(var(--spacing)*3.5)}.\\[\\&\\>svg\\]\\:h-\\[18px\\]>svg{height:18px}.\\[\\&\\>svg\\]\\:\\!w-8>svg{width:calc(var(--spacing)*8)!important}.\\[\\&\\>svg\\]\\:w-3>svg{width:calc(var(--spacing)*3)}.\\[\\&\\>svg\\]\\:w-3\\.5>svg{width:calc(var(--spacing)*3.5)}.\\[\\&\\>svg\\]\\:w-\\[18px\\]>svg{width:18px}.\\[\\&\\>svg\\]\\:animate-spin>svg{animation:var(--animate-spin)}.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}}.cpk-ephemeral-threads-banner{color:#37314f;text-align:left;cursor:pointer;background:#f3f0ff;border-bottom:1px solid #dbdbe5;flex-shrink:0;align-items:flex-start;gap:8px;width:100%;padding:12px;font-size:12px;display:flex}.cpk-ephemeral-threads-banner:hover{background:#ebe5fc}.cpk-ephemeral-threads-description{color:#686078;font-size:11px}.cpk-ephemeral-threads-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.cpk-ephemeral-threads-headline{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.cpk-ephemeral-threads-icon{color:#7762b4;flex-shrink:0}.cpk-ephemeral-threads-icon svg{width:18px;height:18px}.cpk-ephemeral-threads-upgrade{color:#6750a4;align-items:center;gap:5px;margin-top:4px;font-size:11px;font-weight:600;display:inline-flex}.cpk-ephemeral-threads-banner:hover .cpk-ephemeral-threads-upgrade{text-decoration:underline}.cpk-ephemeral-threads-upgrade svg{width:14px;height:14px}.cpk-threads-setup-navigation{z-index:2;background:#fff;border-bottom:1px solid #e9e7ef;padding:12px 24px;position:sticky;top:0}.cpk-threads-setup-back{color:#51416f;cursor:pointer;align-items:center;gap:8px;padding:4px 0;font-size:12px;font-weight:600;display:inline-flex}.cpk-threads-setup-back span{font-size:18px;line-height:1}.cpk-threads-setup-back:hover{color:#221238;text-decoration:underline}.cpk-threads-setup-back:focus-visible,.cpk-ephemeral-threads-banner:focus-visible{outline-offset:3px;outline:2px solid #8b78bd}.cpk-ephemeral-threads-banner:focus-visible{outline-offset:-3px}.inspector-window[data-color-scheme=dark] .cpk-ephemeral-threads-banner{color:#d8d9ff;background:#292b43;border-color:#464957}.inspector-window[data-color-scheme=dark] .cpk-ephemeral-threads-description{color:#beb8d1}.inspector-window[data-color-scheme=dark] .cpk-ephemeral-threads-upgrade{color:#d8d9ff}.inspector-window[data-color-scheme=dark] .cpk-ephemeral-threads-banner:hover{background:#343650}.inspector-window[data-color-scheme=dark] .cpk-threads-setup-navigation{background:#111319;border-color:#343742}.inspector-window[data-color-scheme=dark] .cpk-threads-setup-back{color:#d8d9ff}.cpk-json-block{white-space:pre-wrap;word-break:break-all;color:#57575b;margin:0;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:11px;line-height:1.8;overflow:auto}.inspector-account-strip{border-bottom:1px solid #d8d8e8;width:100%;min-width:0;color:#010507!important;background:#f7f6fd!important}.inspector-account-logo{filter:none}.inspector-account-brand{position:relative}.inspector-account-logo-accent{clip-path:inset(0 0 0 80%);pointer-events:none;display:none;position:absolute;inset:0}.inspector-account-cta{isolation:isolate;color:#3f176f;white-space:nowrap;cursor:pointer;background-color:#eee6fe;border:0;border-radius:5px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:32px;padding:7px 10px;font-size:11px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.inspector-account-cta:after{z-index:0;content:\"\";opacity:0;pointer-events:none;background:linear-gradient(105deg,#0000 0%,#ffffff14 32%,#ffffffad 50%,#ffffff14 68%,#0000 100%);width:68%;animation:3.8s cubic-bezier(.16,1,.3,1) infinite inspector-account-cta-shimmer;position:absolute;inset:0;transform:translate(-180%)skew(-14deg)}.inspector-account-cta>*{z-index:1;position:relative}.inspector-account-cta[data-motion-paused=true]:after{animation-play-state:paused}@keyframes inspector-account-cta-shimmer{0%{opacity:0;transform:translate(-180%)skew(-14deg)}12%{opacity:1}82%{opacity:.8}to{opacity:0;transform:translate(280%)skew(-14deg)}}.inspector-account-cta:hover{color:#32105d;background-color:#e4d8fc}.inspector-account-cta svg{width:14px;height:14px}@media (prefers-reduced-motion:reduce){.inspector-account-cta:after{animation:none}}.inspector-window-layout{position:relative}.inspector-window-layout-menu{z-index:60;color:#010507;background-color:#fff;border:1px solid #d8d8e8;border-radius:5px;width:188px;padding:4px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 10px 24px #1f173924}.inspector-window-layout-menu button{min-height:34px;color:inherit;text-align:left;cursor:pointer;background-color:#0000;border:0;border-radius:4px;align-items:center;gap:9px;padding:7px 9px;font-size:12px;font-weight:600;display:flex}.inspector-window-layout-menu button:hover,.inspector-window-layout-menu button:focus-visible{color:#3f176f;background-color:#eee6fe;outline:none}.inspector-window-layout-menu button span:first-child{flex:none;display:inline-flex}.inspector-agent-placeholder{color:#68686e;border-color:#c8c8d8}.inspector-primary-navigation,.inspector-child-navigation{display:none}.inspector-shell{background-color:#f7f6fd;flex:auto;min-height:0;display:flex}.inspector-sidebar{z-index:20;background-color:#f7f6fd;border-right:1px solid #d8d8e8;flex-direction:column;flex:none;gap:8px;width:224px;min-width:224px;padding:12px 10px;transition:width .22s,min-width .22s,padding .22s;display:flex;position:relative;overflow:visible}.inspector-sidebar[data-icon-rail=true]{align-items:center;width:52px;min-width:52px;padding:8px}.inspector-sidebar-agent-scope{border-bottom:1px solid #d8d8e8;flex:none;min-width:0;padding-bottom:10px}.inspector-sidebar .inspector-agent-selector{width:100%;min-width:0}.inspector-sidebar .inspector-agent-selector>[data-context-dropdown-root=true]>button{background-color:#fff;border-radius:5px;max-width:none;min-height:34px;padding:6px 8px}.inspector-context-dropdown-icon{color:#68686e;display:inline-flex}.inspector-context-dropdown-icon svg,.inspector-context-dropdown-chevron svg{width:14px;height:14px}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-agent-scope{padding-bottom:8px}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-agent-scope,.inspector-sidebar[data-icon-rail=true] .inspector-agent-selector,.inspector-sidebar[data-icon-rail=true] .inspector-agent-selector>[data-context-dropdown-root=true],.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-footer{flex:none;justify-content:center;align-items:center;width:36px;min-width:36px;max-width:36px;display:flex}.inspector-sidebar[data-icon-rail=true] .inspector-agent-selector>[data-context-dropdown-root=true]>button,.inspector-sidebar[data-icon-rail=true] .inspector-agent-placeholder{box-sizing:border-box;justify-content:center;align-items:center;gap:0;width:36px;min-width:36px;max-width:36px;height:36px;min-height:36px;padding:0;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s;display:flex;overflow:visible}.inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-label,.inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-chevron,.inspector-sidebar[data-icon-rail=true] .inspector-agent-placeholder span:last-child{display:none}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-agent-scope [data-context-dropdown-root=true]>div{margin-top:0;top:0;left:calc(100% + 8px)}.inspector-icon-rail-menu{transform-origin:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,transform .18s,visibility .18s;transform:translate(-8px)scale(.96)}.inspector-icon-rail-menu[data-open=true]{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0)scale(1)}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-section+.inspector-sidebar-section{border-top:1px solid #dbdbe5;margin-top:4px;padding-top:10px}.inspector-sidebar-nav{cursor:default;flex-direction:column;flex:auto;gap:14px;min-height:0;display:flex;overflow:hidden auto}.inspector-sidebar-section{flex-direction:column;gap:4px;display:flex}.inspector-sidebar-label{color:#838389;letter-spacing:.02em;text-align:left;text-transform:none;background:0 0;border:0;width:100%;margin:0 0 2px;padding:0 8px;font-size:11px;font-weight:600;display:block}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-label,.inspector-sidebar[data-icon-rail=true] .inspector-nav-label{display:none}.inspector-sidebar-rail-tooltip{z-index:60;color:#fff;pointer-events:none;white-space:nowrap;background-color:#242331;border-radius:6px;max-width:220px;padding:6px 9px;font-size:11px;font-weight:600;line-height:1.2;position:absolute;left:calc(100% + 8px);transform:translateY(-50%);box-shadow:0 7px 18px #1a172a2e}.inspector-sidebar-control{justify-content:flex-start;width:100%;min-height:36px;display:flex;position:relative}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-nav{overflow:visible}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-control,.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-toggle,.inspector-sidebar[data-icon-rail=true] .inspector-nav-control{box-sizing:border-box;justify-content:center;align-items:center;gap:0;width:36px;min-width:36px;height:36px;min-height:36px;padding:0;overflow:visible}.inspector-sidebar[data-icon-rail=true] .inspector-nav-icon,.inspector-sidebar[data-icon-rail=true] .inspector-nav-icon svg,.inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-icon,.inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-icon svg{width:18px;height:18px;overflow:visible}.inspector-home-badge{background-color:#fa5f67;border-radius:999px;width:7px;height:7px;position:absolute;top:8px;right:8px}.inspector-sidebar[data-icon-rail=true] .inspector-home-badge{top:6px;right:8px}.inspector-sidebar-toggle{color:#57575b;width:100%;min-height:32px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;justify-content:flex-start;align-items:center;gap:6px;padding:6px 9px;font-size:12px;font-weight:600;display:flex}.inspector-sidebar-toggle:hover{color:#010507;background-color:#f0f0f4}.inspector-sidebar-footer{flex-direction:column;flex:none;gap:6px;padding:2px 0 0;display:flex}.inspector-sidebar-status-list{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.inspector-sidebar-status-card{color:#2b2b2b;background-color:#fff;border:1px solid #d8d8e8;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:52px;padding:9px 10px;display:grid;position:relative}.inspector-sidebar-status-copy{flex-direction:column;gap:2px;min-width:0;line-height:1.25;display:flex}.inspector-sidebar-status-copy strong{color:#010507;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.inspector-sidebar-status-copy>span{color:#57575b;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.inspector-sidebar-status-card[data-state=disconnected] .inspector-sidebar-status-copy>span{color:#68686e}.inspector-sidebar-status-action{color:#3f176f;white-space:nowrap;background-color:#0000;border:0;border-radius:5px;justify-content:center;align-items:center;gap:0;width:28px;height:28px;padding:0;font-size:10px;font-weight:700;text-decoration:none;display:inline-flex}.inspector-sidebar-status-action:hover{color:#6430ab;background-color:#eee7f8;text-decoration:none}.inspector-sidebar-status-action svg{width:12px;height:12px}.inspector-sidebar-status-action-label{display:none}.inspector-sidebar-intelligence-setup{color:#3f176f;cursor:pointer;background-color:#eee7f8;border-color:#bba5df;text-decoration:none;transition:border-color .12s,background-color .12s,box-shadow .3s;animation:3.2s ease-in-out infinite inspector-sidebar-intelligence-setup-glow}@keyframes inspector-sidebar-intelligence-setup-glow{0%,to{box-shadow:0 0 #6430ab00}50%{box-shadow:0 0 16px 2px #6430ab26}}.inspector-sidebar-intelligence-setup:hover{background-color:#e4d9f4;border-color:#8e6fc0}.inspector-sidebar-intelligence-setup .inspector-sidebar-status-copy strong{color:#3f176f}.inspector-sidebar-setup-arrow{background-color:#6430ab1a;border-radius:5px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.inspector-sidebar-setup-arrow svg{width:13px;height:13px}.inspector-main{background-color:#fff;flex-direction:column;flex:auto;min-width:0;display:flex;position:relative}.inspector-home{background-color:#fff;min-height:100%;padding:30px 32px 40px;position:relative;overflow:auto}.inspector-home:before{display:none}.inspector-home>*{width:min(100%,960px);margin-left:auto;margin-right:auto}.inspector-settings{color:#010507;background-color:#fff;min-height:100%;padding:34px 32px 48px;container:inspector-settings/inline-size}.inspector-settings-header{width:min(100%,720px);margin-left:auto;margin-right:auto;padding-bottom:30px}.inspector-settings-title{color:#010507;margin:0;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:30px;font-weight:600;line-height:1.15}.inspector-settings-subtitle{color:#57575b;max-width:60ch;margin:8px 0 0;font-size:14px;line-height:1.5}.inspector-settings-section{border-top:1px solid #d5d3e4;width:min(100%,720px);margin-left:auto;margin-right:auto;padding:24px 0 26px}.inspector-settings-section-heading{align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.inspector-settings-section-icon{color:#3f176f;background-color:#eee6fe;border:1px solid #bec2ff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.inspector-settings-section-icon svg{width:17px;height:17px}.inspector-settings-section-heading h2,.inspector-settings-status-row h3,.inspector-settings-visibility h3{color:#010507;margin:0;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-weight:600}.inspector-settings-section-heading h2{font-size:17px;line-height:1.3}.inspector-settings-section-heading p{color:#68686e;max-width:54ch;margin:4px 0 0;font-size:12px;line-height:1.5}.inspector-settings-privacy{margin-left:46px}.inspector-settings-status-row{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.inspector-settings-status-row>div,.inspector-settings-visibility>div{min-width:0}.inspector-settings-status-row h3{font-size:14px;line-height:1.3}.inspector-settings-status-row p{color:#57575b;max-width:56ch;margin:8px 0 0;font-size:12px;line-height:1.55}.inspector-settings-status{color:#087653;text-align:center;white-space:nowrap;background-color:#e5f7f1;border:1px solid #85d3bb;border-radius:999px;flex:none;align-items:center;min-height:24px;padding:3px 8px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.inspector-settings-privacy[data-state=disabled] .inspector-settings-status{color:#7d4d0a;background-color:#fff5df;border-color:#dfc08f}.inspector-settings-private-content{border-top:1px solid #e4e4ec;margin-top:22px;padding-top:18px}.inspector-settings-private-content strong{color:#010507;font-size:13px;font-weight:700}.inspector-settings-private-content>p{color:#68686e;margin:4px 0 0;font-size:11px;line-height:1.45}.inspector-settings-private-content ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:12px 0 0;display:grid}.inspector-settings-private-content li{color:#3e3d48;align-items:center;gap:7px;min-width:0;font-size:12px;line-height:1.35;display:flex}.inspector-settings-private-content li span{color:#087653;flex:none;display:inline-flex}.inspector-settings-private-content li svg{width:14px;height:14px}.inspector-settings-policy-link{color:#3f176f;text-underline-offset:3px;outline-offset:2px;outline:2px solid #0000;align-items:center;gap:6px;min-height:36px;margin-top:20px;font-size:12px;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.inspector-settings-policy-link:hover{color:#6430ab}.inspector-settings-policy-link:focus-visible{outline-color:#6430ab}.inspector-settings-policy-link svg{width:14px;height:14px}.inspector-settings-visibility{margin-left:46px}.inspector-settings-visibility h3{font-size:14px;line-height:1.3}.inspector-settings-visibility p{color:#57575b;max-width:48ch;margin:8px 0 0;font-size:12px;line-height:1.55}.inspector-settings-dismiss{color:#3f176f;text-align:center;cursor:pointer;background-color:#f5f2ff;border:1px solid #c9c2e6;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:40px;margin-top:16px;padding:8px 12px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.inspector-settings-dismiss:hover{background-color:#eee8ff;border-color:#a69aca}.inspector-settings-dismiss:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.inspector-settings-dismiss svg{width:14px;height:14px}@media (max-width:720px){.inspector-settings{padding:28px 24px 40px}.inspector-settings-section-heading p{max-width:42ch}}@media (max-width:480px){.inspector-settings{padding-left:18px;padding-right:18px}}@container inspector-settings (max-width:520px){.inspector-settings-privacy,.inspector-settings-visibility{margin-left:0}.inspector-settings-status-row{flex-direction:column;gap:12px}.inspector-settings-private-content ul{grid-template-columns:1fr}.inspector-settings-dismiss{width:100%}}.inspector-home-card,.inspector-home-story{background-color:#ffffffd1;border:1px solid #deddea;border-radius:5px;padding:18px 18px 16px;position:relative}.inspector-home-eyebrow,.inspector-home-card-label,.inspector-home-meta{color:#57575b;margin:0;font-size:12px;font-weight:600}.inspector-home-title,.inspector-home-section-title,.inspector-home-card-title{color:#010507;margin:8px 0 0;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:28px;font-weight:600;line-height:1.15}.inspector-home-section-title{letter-spacing:-.015em;margin:0 0 14px;font-size:17px}.inspector-home-card-title{font-size:16px}.inspector-home-body,.inspector-home-card-copy{color:#57575b;max-width:52ch;margin:10px 0 0;font-size:15px;line-height:1.5}.inspector-home-section{margin-top:24px;position:relative}.inspector-home>.inspector-home-section:first-child{margin-top:0}.inspector-whats-new-preview+.inspector-home-section{margin-top:20px}.inspector-home-section-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.inspector-home-section-header .inspector-home-section-title{margin-bottom:0}.inspector-home-section-header>span{color:#68686e;font-size:11px;font-weight:600;line-height:1.35}.inspector-system-health-header>span[data-tone=success]{color:#087653}.inspector-system-health-header>span[data-tone=checking]{color:#8a5900}.inspector-system-health-header>span[data-tone=offline],.inspector-system-health-header>span[data-tone=error]{color:#b32d3b}.inspector-system-health-section{background-color:#f7f4fe;border:1px solid #c8c6e6;border-radius:5px;overflow:hidden}.inspector-system-health-section .inspector-system-health-header{background-color:#f7f4fe;border-bottom:1px solid #d5d3e4;align-items:center;min-height:76px;margin:0;padding:18px}.inspector-system-health-heading{min-width:0}.inspector-system-health-heading .inspector-home-section-title{color:#010507;letter-spacing:-.025em;font-size:18px}.inspector-system-health-state,.inspector-intelligence-hud-state{color:#087653;background-color:#e5f7f1;border:1px solid #85d3bb;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:24px;padding:4px 8px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.inspector-system-health-state>span,.inspector-intelligence-hud-state>span{background-color:currentColor;border-radius:999px;width:6px;height:6px}.inspector-system-health-state[data-tone=checking],.inspector-intelligence-hud-state[data-tone=checking]{background-color:#fff5df;border-color:#dfc08f;color:#7d4d0a!important}.inspector-system-health-state[data-tone=offline],.inspector-system-health-state[data-tone=error],.inspector-intelligence-hud-state[data-tone=offline],.inspector-intelligence-hud-state[data-tone=error]{background-color:#fff0f1;border-color:#e7a7ac;color:#b32d3b!important}.inspector-system-health-state[data-tone=unavailable],.inspector-intelligence-hud-state[data-tone=unavailable]{background-color:#f0f0f4;border-color:#c8c8d2;color:#57575b!important}.inspector-system-health{background-color:#d5d3e4;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.inspector-system-health-signal{background-color:#fff;grid-template-columns:minmax(0,1fr);align-items:start;min-width:0;min-height:84px;padding:15px 16px 14px;display:grid}.inspector-system-health-copy{flex-direction:column;min-width:0;display:flex}.inspector-system-health-signal dt{color:#68686e;letter-spacing:.035em;text-transform:uppercase;font-size:10px;font-weight:700;line-height:1.3}.inspector-system-health-signal dd{color:#010507;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:5px 0 0;font-size:15px;font-weight:700;overflow:hidden}.inspector-system-health-signal small{color:#68686e;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-top:4px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;line-height:1.4;overflow:hidden}small.inspector-system-health-detail{letter-spacing:0;font-family:inherit;font-size:11px;font-weight:500;line-height:1.4}.inspector-system-health-url{cursor:help;outline:none;position:relative;overflow:visible!important}.inspector-system-health-url>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inspector-system-health-url:after{z-index:30;color:#f3f4f8;content:attr(data-full-value);opacity:0;overflow-wrap:anywhere;pointer-events:none;white-space:normal;background-color:#15171e;border:1px solid #3a3d49;border-radius:4px;width:max-content;max-width:min(360px,70vw);padding:7px 9px;font-size:10px;font-weight:500;line-height:1.45;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 7px);left:0;transform:translateY(3px);box-shadow:0 8px 20px #0105072e}.inspector-system-health-url:hover:after,.inspector-system-health-url:focus-visible:after{opacity:1;transform:translateY(0)}.inspector-system-health-url:focus-visible>span{outline-offset:2px;border-radius:3px;outline:2px solid #6430ab}.inspector-system-health-signal[data-tone=success] dd{color:#087653}.inspector-system-health-signal[data-tone=active] dd{color:#8a5900}.inspector-system-health-event-link{width:100%;min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;display:block}.inspector-system-health-event-link>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inspector-system-health-event-link>.inspector-system-health-event-type{color:#57575b;letter-spacing:.025em;background-color:#f1f1f3;border-radius:999px;align-items:center;width:fit-content;max-width:100%;padding:3px 6px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;font-weight:700;line-height:1.25;display:inline-flex}.inspector-system-health-event-link>small{color:#68686e;align-items:center;gap:6px;margin:5px 0 0;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:10px;font-weight:500;line-height:1.25;display:flex}.inspector-system-health-event-meta strong{color:#6430ab;text-underline-offset:3px;font-weight:700;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.inspector-system-health-signal[data-tone=error] .inspector-system-health-event-type{color:#b32d3b;background-color:#fff0f1}.inspector-system-health-signal[data-tone=success] .inspector-system-health-event-type{color:#087653;background-color:#e3f5ee}.inspector-system-health-signal[data-tone=active] .inspector-system-health-event-type{color:#8a5900;background-color:#fff5df}.inspector-system-health-event-link:hover .inspector-system-health-event-meta strong{text-decoration-color:currentColor}.inspector-system-health-event-link:focus-visible{outline-offset:3px;border-radius:3px;outline:2px solid #6430ab}.inspector-intelligence-hud{background-color:#f7f4fe;border:1px solid #c8c6e6;border-radius:5px;overflow:hidden}.inspector-intelligence-hud-header{justify-content:space-between;align-items:center;gap:24px;padding:18px;display:flex}.inspector-intelligence-hud[data-state=disconnected]{border-color:#bba5df}.inspector-intelligence-hud[data-state=disconnected] .inspector-intelligence-hud-header{align-items:center;min-height:132px;padding:22px}.inspector-intelligence-hud[data-state=disconnected] .inspector-intelligence-hud-header-actions{flex-direction:column;align-items:flex-end;gap:10px}.inspector-intelligence-hud-heading{min-width:0}.inspector-intelligence-hud-header-actions{flex:none;align-items:center;gap:8px;display:flex}.inspector-intelligence-hud-heading .inspector-home-section-title{margin:0;font-size:18px}.inspector-intelligence-hud-description{color:#4f4f55;max-width:64ch;margin:10px 0 0;font-size:12px;line-height:1.55}.inspector-intelligence-hud-action{color:#fff;background-color:#6430ab;border:1px solid #6430ab;border-radius:4px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:8px 11px;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.inspector-intelligence-hud-action:hover{background-color:#4e238c;border-color:#4e238c}.inspector-intelligence-hud-action svg{width:13px;height:13px}.inspector-intelligence-hud-connect-action{min-height:38px;padding:10px 14px;font-size:12px}.inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-header{background:linear-gradient(100deg,#fbfaff 0%,#f2eeff 52%,#edfaf5 100%);border-bottom:1px solid #d5d3e4;align-items:center;min-height:76px;padding:18px}.inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-heading .inspector-home-section-title{color:#010507;letter-spacing:-.025em;align-items:center;gap:8px;font-size:18px;display:inline-flex}.inspector-intelligence-mark{flex:none;width:17px;height:17px;display:block}.inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-header-actions{flex-direction:column;align-items:flex-end;gap:6px}.inspector-intelligence-sr-summary{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.inspector-intelligence-copy{padding:16px 18px 0;display:grid}.inspector-intelligence-copy-slide{opacity:0;flex-direction:column;grid-area:1/1;gap:4px;transition:opacity .32s cubic-bezier(.22,1,.36,1),transform .38s cubic-bezier(.22,1,.36,1);display:flex}.inspector-intelligence-copy-slide[data-position=after]{transform:translate(14px)}.inspector-intelligence-copy-slide[data-position=before]{transform:translate(-14px)}.inspector-intelligence-copy-slide[data-position=active]{opacity:1;transform:none}.inspector-intelligence-copy-slide>strong{color:#2b2b31;text-wrap:balance;max-width:52ch;font-size:12.5px;font-weight:650;line-height:1.4}.inspector-intelligence-copy-slide>span{color:#4f4f55;max-width:64ch;font-size:11px;line-height:1.55}.inspector-intelligence-install{justify-content:flex-end;align-items:center;gap:12px;display:flex}.inspector-intelligence-install-copy{cursor:pointer;min-height:34px;transition:background-color .14s,border-color .14s}.inspector-intelligence-install-copy svg{width:13px;height:13px}.inspector-intelligence-install[data-copy-state=copied] .inspector-intelligence-install-copy{color:#4e238c;background-color:#fff;border-color:#bba5df}.inspector-intelligence-install-secondary{color:#6430ab;align-items:center;gap:5px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.inspector-intelligence-install-secondary:hover{text-underline-offset:2px;text-decoration:underline}.inspector-intelligence-install-secondary svg{width:12px;height:12px}.inspector-intelligence-install-hint{color:#68686e;white-space:nowrap;margin:0;font-size:11px;font-weight:600;line-height:1.4}.inspector-intelligence-install-hint[data-tone=success]{color:#4e238c;font-weight:600}.inspector-intelligence-install-hint[data-tone=error]{color:#a3341f;font-weight:600}.inspector-intelligence-install-fallback{color:#4f4f55;-webkit-user-select:all;user-select:all;white-space:pre-wrap;word-break:break-word;background-color:#fff;border-bottom:1px solid #d5d3e4;max-height:96px;padding:10px 18px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10.5px;line-height:1.65;display:block;overflow:auto}.inspector-intelligence-story{background-color:#fff;container:cpk-intel-story/inline-size}.inspector-intelligence-story-stage{padding:16px 18px;display:grid}.inspector-intelligence-beat{visibility:hidden;opacity:0;grid-area:1/1;align-items:center;transition:opacity .32s cubic-bezier(.22,1,.36,1),transform .38s cubic-bezier(.22,1,.36,1),visibility 0s linear .38s;display:flex}.inspector-intelligence-beat[data-position=after]{transform:translate(14px)}.inspector-intelligence-beat[data-position=before]{transform:translate(-14px)}.inspector-intelligence-beat[data-position=active]{visibility:visible;opacity:1;transition:opacity .32s cubic-bezier(.22,1,.36,1),transform .38s cubic-bezier(.22,1,.36,1),visibility;transform:none}.inspector-intelligence-beat[data-beat-id=threads]{flex-direction:column;justify-content:center;gap:6px}.inspector-intelligence-threads{flex-direction:column;gap:6px;width:100%;display:flex}.inspector-intelligence-thread{opacity:0;background-color:#faf9fe;border:1px solid #e6e3f2;border-radius:4px;align-items:center;gap:9px;padding:8px 10px;transition:opacity .3s,transform .3s;display:flex;transform:translateY(3px)}.inspector-intelligence-thread>i{background-color:#9b8cc4;border-radius:999px;flex:none;width:6px;height:6px}.inspector-intelligence-thread>strong{color:#2b2b31;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.inspector-intelligence-thread>small{color:#68686e;flex:none;margin-left:auto;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:9.5px}.inspector-intelligence-thread[data-failed=true]{background-color:#fdf6f4;border-color:#f0d5cf}.inspector-intelligence-thread[data-failed=true]>i{background-color:#c2410c}.inspector-intelligence-thread[data-failed=true]>strong,.inspector-intelligence-thread[data-failed=true]>small{color:#8f2f1c;font-weight:650}.inspector-intelligence-story[data-beat=threads] .inspector-intelligence-thread{opacity:1;transition-delay:calc(var(--thread-index)*80ms + 90ms);transform:none}.inspector-intelligence-beat[data-beat-id=learning]{grid-template-columns:minmax(0,1.15fr) auto minmax(0,.85fr);align-items:center;gap:12px;display:grid}.inspector-intelligence-beat-col{flex-direction:column;gap:6px;min-width:0;display:flex}.inspector-intelligence-beat-label{color:#68686e;letter-spacing:.06em;text-transform:uppercase;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:9px;font-weight:600}.inspector-intelligence-signal,.inspector-intelligence-rule{color:#4f4f55;opacity:0;background-color:#faf9fe;border:1px solid #e6e3f2;border-radius:4px;align-items:flex-start;gap:6px;padding:6px 8px;font-size:10.5px;line-height:1.4;transition:opacity .3s,transform .3s;display:flex;transform:translateY(3px)}.inspector-intelligence-signal{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inspector-intelligence-rule{color:#21543f;background-color:#f4fbf8;border-color:#cfe9dd;font-weight:600}.inspector-intelligence-rule>i{color:#1f8a5f;flex:none;align-items:center;display:inline-flex}.inspector-intelligence-rule>i svg{stroke-width:2.4px;width:11px;height:11px}.inspector-intelligence-story[data-beat=learning] .inspector-intelligence-signal,.inspector-intelligence-story[data-beat=learning] .inspector-intelligence-rule{opacity:1;transform:none}.inspector-intelligence-story[data-beat=learning] .inspector-intelligence-signal{transition-delay:calc(var(--signal-index)*80ms + .1s)}.inspector-intelligence-story[data-beat=learning] .inspector-intelligence-rule{transition-delay:calc(var(--rule-index)*80ms + .42s)}.inspector-intelligence-beat-flow{color:#9b8cc4;justify-content:center;align-items:center;display:inline-flex}.inspector-intelligence-beat-flow svg{width:15px;height:15px}.inspector-intelligence-beat[data-beat-id=skill]{justify-content:center}.inspector-intelligence-skill-file{background-color:#fff;border:1px solid #d5d3e4;border-radius:5px;width:min(100%,30rem);overflow:hidden;box-shadow:0 1px 2px #100c280f}.inspector-intelligence-skill-file>header{background-color:#faf9fe;border-bottom:1px solid #ebe9f4;align-items:center;gap:7px;padding:7px 10px;display:flex}.inspector-intelligence-skill-file>header svg{color:#6430ab;width:12px;height:12px}.inspector-intelligence-skill-file>header strong{color:#2b2b31;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10.5px;font-weight:600}.inspector-intelligence-skill-file>header em{color:#68686e;letter-spacing:.05em;text-transform:uppercase;margin-left:auto;font-size:9px;font-style:normal;font-weight:600}.inspector-intelligence-skill-code{flex-direction:column;padding:8px 0;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10.5px;line-height:1.75;display:flex}.inspector-intelligence-skill-code>span{color:#4f4f55;gap:10px;padding:0 12px;display:flex}.inspector-intelligence-skill-code>span:before{color:#a9a7bb;content:attr(data-line);text-align:right;min-width:8px}.inspector-intelligence-skill-code>span>b{color:#6430ab;font-weight:600}.inspector-intelligence-skill-code>span[style*=--rule-index]{opacity:0;transition:opacity .26s,transform .26s;transform:translateY(2px)}.inspector-intelligence-story[data-beat=skill] .inspector-intelligence-skill-code>span[style*=--rule-index]{opacity:1;transition-delay:calc(var(--rule-index)*.11s + .26s);transform:none}.inspector-intelligence-beat[data-beat-id=intelligence]{flex-direction:column;justify-content:center;gap:12px}.inspector-intelligence-chain{justify-content:center;align-items:stretch;gap:6px;width:100%;display:flex}.inspector-intelligence-chain-step{opacity:0;background-color:#faf9fe;border:1px solid #e6e3f2;border-radius:5px;flex-direction:column;flex:1 1 0;align-items:flex-start;gap:3px;min-width:0;padding:9px 10px;transition:opacity .28s,transform .28s;display:flex;transform:translateY(4px)}.inspector-intelligence-chain-step>i{color:#6430ab;display:inline-flex}.inspector-intelligence-chain-step>i svg{width:14px;height:14px}.inspector-intelligence-chain-step>strong{color:#2b2b31;font-size:11px;font-weight:700;line-height:1.25}.inspector-intelligence-chain-step>small{color:#68686e;font-size:9.5px;line-height:1.3}.inspector-intelligence-chain-arrow{color:#bba5df;opacity:0;flex:none;align-items:center;transition:opacity .28s;display:inline-flex}.inspector-intelligence-chain-arrow svg{width:13px;height:13px}.inspector-intelligence-story[data-beat=intelligence] .inspector-intelligence-chain-step,.inspector-intelligence-story[data-beat=intelligence] .inspector-intelligence-chain-arrow{opacity:1;transition-delay:calc(var(--step-index)*90ms + 80ms);transform:none}.inspector-intelligence-chain-proof{color:#21543f;opacity:0;background-color:#f4fbf8;border:1px solid #cfe9dd;border-radius:999px;align-self:center;align-items:center;gap:6px;padding:5px 11px;font-size:10.5px;font-weight:600;transition:opacity .3s,transform .3s;display:inline-flex;transform:translateY(3px)}.inspector-intelligence-chain-proof svg{color:#1f8a5f;width:12px;height:12px}.inspector-intelligence-chain-proof code{font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;font-weight:600}.inspector-intelligence-story[data-beat=intelligence] .inspector-intelligence-chain-proof{opacity:1;transition-delay:.46s;transform:none}.inspector-intelligence-story-rail{border-top:1px solid #ebe9f4;align-items:center;gap:2px;padding:8px 18px 9px;display:flex}.inspector-intelligence-story-tab{color:#68686e;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:3px 7px 5px;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:10.5px;font-weight:600;transition:color .16s;position:relative}.inspector-intelligence-story-tab:after{content:\"\";transform-origin:0;background-color:#6430ab;border-radius:2px;height:1.5px;transition:transform .28s cubic-bezier(.22,1,.36,1);position:absolute;bottom:1px;left:7px;right:7px;transform:scaleX(0)}.inspector-intelligence-story-tab:hover{color:#2b2b31}.inspector-intelligence-story-tab[data-active=true]{color:#4e238c}.inspector-intelligence-story-tab[data-active=true]:after{transform:scaleX(1)}@container cpk-intel-story (max-width:30rem){.inspector-intelligence-chain-step>small{display:none}.inspector-intelligence-story-rail{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.inspector-intelligence-copy-slide,.inspector-intelligence-thread,.inspector-intelligence-beat,.inspector-intelligence-signal,.inspector-intelligence-rule,.inspector-intelligence-chain-step,.inspector-intelligence-chain-arrow,.inspector-intelligence-chain-proof,.inspector-intelligence-skill-code>span[style*=--rule-index],.inspector-intelligence-story-tab:after{transition-duration:0s;transition-delay:0s}}.inspector-intelligence-hud-details{background-color:#d5d3e4;border-top:1px solid #d5d3e4;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:1px;display:grid}.inspector-intelligence-hud-details>section{background-color:#fff;min-width:0;padding:15px 18px 17px}.inspector-intelligence-hud-detail-label{color:#68686e;font-size:11px;font-weight:600;display:block}.inspector-intelligence-hud-detail-value{color:#010507;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:5px 0 0;font-size:14px;font-weight:700;display:block;overflow:hidden}.inspector-intelligence-hud-detail-subvalue{color:#68686e;text-transform:capitalize;margin-top:3px;font-size:10px;font-weight:500;display:block}.inspector-intelligence-hud-plan{grid-template-columns:minmax(0,1fr) minmax(120px,1fr);align-items:start;gap:24px;display:grid}.inspector-intelligence-hud-usage{min-width:0}.inspector-intelligence-hud-plan-action{color:#6430ab;text-underline-offset:3px;background-color:#0000;border:0;border-radius:0;gap:4px;min-height:auto;margin-top:9px;padding:0;font-size:10px;font-weight:700;line-height:1.2;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px}.inspector-intelligence-hud-plan-action:hover{color:#4e238c;background-color:#0000;border-color:#0000;text-decoration-color:currentColor}.inspector-intelligence-hud-plan-action svg{width:11px;height:11px}.inspector-home-usage-bar{background-color:#dbdbe5;border-radius:999px;width:min(160px,100%);height:5px;margin-top:8px;display:block;overflow:hidden}.inspector-home-usage-bar>span{background-color:#bec2ff;height:100%;display:block}.inspector-home-feature-groups{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));align-items:start;gap:12px;display:grid}.inspector-home-feature-group{background-color:#fff;border:1px solid #d5d3e4;border-radius:5px;overflow:visible}.inspector-home-feature-group-header{color:#57575b;background-color:#f7f7f9;border-bottom:1px solid #e4e4ec;border-radius:4px 4px 0 0;justify-content:space-between;align-items:center;gap:12px;min-height:40px;padding:9px 12px;display:flex}.inspector-home-feature-group-header strong{font-size:12px;font-weight:700}.inspector-home-feature-group-header>span{background-color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;min-height:20px;padding:2px 6px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;font-weight:700;display:inline-flex}.inspector-home-feature-group[data-feature-state-group=active] .inspector-home-feature-group-header{color:#087653;background-color:#e5f7f1;border-color:#b9e3d6}.inspector-home-feature-list{background-color:#fff;flex-direction:column;margin:0;display:flex}.inspector-home-feature{color:#010507;background-color:#fff;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:52px;padding:9px 12px;font-size:12px;font-weight:600;display:grid;container-type:inline-size}.inspector-home-feature+.inspector-home-feature{border-top:1px solid #ececf1}.inspector-home-feature:last-child{border-radius:0 0 4px 4px}.inspector-home-feature-group-empty{color:#68686e;margin:0;padding:15px 12px;font-size:11px}.inspector-home-feature:hover{background-color:#f7f7f9}.inspector-home-feature-label{min-width:0;color:inherit;cursor:pointer;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.inspector-home-feature-label>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.inspector-home-feature-label-icon{flex:none;display:inline-flex!important;overflow:visible!important}.inspector-home-feature-label-icon svg{width:12px;height:12px}.inspector-home-feature-label:hover{color:#3f176f;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.inspector-home-feature-label:focus-visible{outline-offset:2px;border-radius:3px;outline:2px solid #6430ab}.inspector-home-feature-actions{justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.inspector-home-feature-status{flex:none;justify-content:center;align-items:center;width:18px;height:28px;display:inline-flex}.inspector-home-feature-status>span{background-color:#fff;border:1px solid #9ca0ab;border-radius:999px;width:8px;height:8px}.inspector-home-feature[data-state=on] .inspector-home-feature-status>span{background-color:#087653;border-color:#087653}.inspector-home-feature[data-state=off]{color:#68686e}.inspector-home-feature-action{color:#4f4f55;min-width:28px;height:28px;min-height:28px;font:inherit;white-space:nowrap;cursor:pointer;background-color:#fff;border:1px solid #d5d3e4;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:10px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.inspector-home-feature-action svg{width:14px;height:14px}.inspector-home-feature-action-icon{flex:none;display:inline-flex!important;overflow:visible!important}.inspector-home-feature-action-label{line-height:1}.inspector-home-feature-action.inspector-system-health-url:after{content:none;left:50%;right:auto;transform:translate(-50%,3px)}.inspector-home-feature-action.inspector-system-health-url:hover:after,.inspector-home-feature-action.inspector-system-health-url:focus-visible:after{transform:translate(-50%)}.inspector-home-feature-action:hover{color:#3f176f;background-color:#f7f4fe;border-color:#bba5df}.inspector-home-feature-action:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.inspector-home-feature-action[data-copy-state=copied]{color:#087653;background-color:#e5f7f1;border-color:#b9e3d6}.inspector-home-feature-action[data-copy-state=error]{color:#b32d3b;background-color:#fff0f1;border-color:#e7a7ac}@container (max-width:286px){.inspector-home-feature-action{width:28px;padding:0}.inspector-home-feature-action-label{display:none!important}.inspector-home-feature-action.inspector-system-health-url:after{content:attr(data-full-value)}}.inspector-home-features-empty{color:#57575b;border-top:1px solid #deddea;border-bottom:1px solid #deddea;margin:14px 0 0;padding:16px 0;font-size:12px}.inspector-home-news{gap:12px;display:grid}.inspector-whats-new-preview{color:#010507;background-color:#f7f4fe;border:1px solid #c8c6e6;border-radius:5px;align-items:stretch;width:100%;min-height:64px;display:flex;position:relative;overflow:hidden;container-type:inline-size}.inspector-whats-new-preview:has(.inspector-whats-new-preview-body:hover){background-color:#f1ebfc;border-color:#8f91d7}.inspector-whats-new-preview-body{min-width:0;color:inherit;text-align:left;cursor:pointer;background-color:#0000;border:0;flex:auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.inspector-whats-new-preview-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.inspector-whats-new-preview-title{align-items:center;gap:8px;min-width:0;display:flex}.inspector-whats-new-preview-copy strong{text-overflow:ellipsis;white-space:nowrap;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:13px;line-height:1.25;overflow:hidden}.inspector-whats-new-preview-copy>span:last-child{color:#4e4c63;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.4;overflow:hidden}.inspector-whats-new-preview-action{color:#3f176f;white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.inspector-whats-new-preview-action svg{width:15px;height:15px}@container (max-width:640px){.inspector-whats-new-preview-body{grid-template-columns:minmax(0,1fr)}.inspector-whats-new-preview-action{display:none}}.inspector-whats-new-preview-dismiss{color:#68686e;cursor:pointer;background-color:#0000;border:0;border-radius:5px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.inspector-whats-new-preview-dismiss:hover{color:#3f176f;background-color:#6430ab1a}.inspector-whats-new-preview-dismiss svg{width:14px;height:14px}@media (max-width:720px){.inspector-account-cta{width:32px;padding-inline:0}.inspector-account-cta-label{display:none}.inspector-home{padding:24px 22px 34px}.inspector-intelligence-hud-header{flex-wrap:wrap}.inspector-intelligence-hud-details{grid-template-columns:1fr}.inspector-intelligence-hud-plan{grid-template-columns:repeat(2,minmax(0,1fr))}.inspector-whats-new-preview-action{display:none}}@media (max-width:600px){.inspector-system-health{grid-template-columns:1fr}}@media (max-width:480px){.inspector-home-feature{grid-template-columns:18px minmax(0,1fr);gap:8px}.inspector-home-feature-actions{grid-column:1/-1;justify-content:flex-end}.inspector-system-health-section .inspector-system-health-header{align-items:flex-start}.inspector-intelligence-hud-header{flex-direction:column;align-items:stretch}.inspector-intelligence-hud-header-actions{justify-content:space-between}.inspector-intelligence-hud-header-actions .inspector-intelligence-hud-action,.inspector-intelligence-hud-plan{width:100%}.inspector-intelligence-hud-plan{grid-template-columns:1fr;align-items:stretch}.inspector-intelligence-hud-plan-action{justify-self:start}.inspector-whats-new-header{align-items:center;gap:16px;width:calc(100% - 24px);padding:24px 22px}.inspector-whats-new-document,.inspector-whats-new-empty{padding:20px 22px 36px}.inspector-whats-new-document .announcement-content h1+p{font-size:16px}}.inspector-whats-new-header{background:#f8f7ff;border:1px solid #d8d8e8;border-radius:5px;justify-content:space-between;align-items:center;gap:24px;width:calc(100% - 44px);max-width:calc(70ch - 44px);padding:30px 32px 28px;display:flex;box-shadow:0 12px 28px #26224e0f}.inspector-whats-new-header .inspector-home-title{letter-spacing:-.035em;margin:0;font-size:clamp(27px,3.6vw,36px)}.inspector-whats-new-updated{color:#6c687c;letter-spacing:.01em;white-space:nowrap;flex:none;margin:0;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:11px;font-weight:600}.inspector-whats-new .inspector-home-news{max-width:70ch;margin-top:0}.inspector-whats-new-document,.inspector-whats-new-empty{max-width:70ch;padding:22px 32px 52px}.inspector-whats-new-document .announcement-content{color:#2b2b39;font-size:15px;line-height:1.72}.inspector-whats-new-document .announcement-content h1{color:#15131d;letter-spacing:-.032em;max-width:24ch;margin:0 0 16px;font-size:clamp(26px,3.2vw,34px);line-height:1.1}.inspector-whats-new-document .announcement-content h1+p{color:#504d61;max-width:58ch;margin-top:0;font-size:18px;line-height:1.58}.inspector-whats-new-document .announcement-content>hr:first-child{display:none}.inspector-whats-new-document .announcement-content h2:first-of-type{border-top:0;margin-top:14px;padding-top:0}.inspector-whats-new-document .announcement-content h2{color:#1b1924;letter-spacing:-.024em;border-top:1px solid #dfdeea;margin:44px 0 14px;padding-top:24px;font-size:21px;line-height:1.2}.inspector-whats-new-document .announcement-content p{max-width:70ch;margin:.85rem 0}.inspector-whats-new-document .announcement-content ul,.inspector-whats-new-document .announcement-content ol{max-width:68ch;margin:1.25rem 0 1.5rem;padding-left:1.4rem}.inspector-whats-new-document .announcement-content li+li{margin-top:.7rem}.inspector-whats-new-document .announcement-content a{color:#4e46a5;text-underline-offset:4px;font-weight:600;text-decoration-color:#4e46a56b;text-decoration-thickness:1px;transition:color .16s,text-decoration-color .16s}.inspector-whats-new-document .announcement-content a:hover{color:#312879;text-decoration-color:currentColor}.inspector-whats-new-empty{color:#5e5b70}.inspector-whats-new-empty .inspector-home-card-title{color:#1b1924;margin:0}.inspector-whats-new-empty .inspector-home-card-copy{max-width:48ch;margin:8px 0 0}.inspector-home-story-featured{padding:22px}.inspector-home-story-link{color:inherit;cursor:pointer;text-decoration:none;display:block}.inspector-home-story-link:hover{background-color:#fff;border-color:#8f91d7}.inspector-home-story[data-unread=true]{border-color:#bec2ff;padding-right:64px;box-shadow:0 0 0 1px #6430ab}.inspector-home-story-unread{color:#fff;letter-spacing:.04em;text-transform:uppercase;background-color:#6430ab;border-radius:999px;align-items:center;min-height:18px;padding:0 7px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;font-weight:700;display:inline-flex}.inspector-nav-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:opacity .18s,width .22s;overflow:hidden}.inspector-nav-control{color:#57575b;min-height:32px;font:inherit;text-align:left;outline-offset:-2px;cursor:pointer;background-color:#0000;border:1px solid #0000;border-radius:5px;outline:2px solid #0000;flex:none;justify-content:flex-start;align-items:center;gap:6px;padding:6px 9px;font-size:12px;font-weight:600;line-height:1.25;display: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-account-control:focus-visible,[data-inspector-thread-cta]:focus-visible,[data-inspector-sidebar-intelligence-action]:focus-visible,[data-inspector-whats-new-preview]:focus-visible,[data-inspector-whats-new-dismiss]:focus-visible,[data-inspector-home-intelligence-action]:focus-visible,.inspector-home-feature:focus-visible,[data-inspector-action-placement=threads-footer]:focus-visible{outline-offset:2px;outline:2px solid #6430ab!important}.inspector-sidebar .inspector-nav-control:focus-visible,.inspector-sidebar .inspector-sidebar-label:focus-visible,.inspector-sidebar [data-inspector-thread-cta]:focus-visible{outline-offset:-2px!important}.inspector-account-control{color:#57575b;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:#3f176f;background-color:#6430ab17}:host ::selection{color:#010507;background-color:#cfd2ff}:host *{scrollbar-color:#aaa9c1 transparent;scrollbar-width:thin}:host ::-webkit-scrollbar{width:8px;height:8px}:host ::-webkit-scrollbar-thumb{background:#aaa9c1 padding-box padding-box;border:2px solid #0000;border-radius:999px}.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],[data-inspector-account-strip] button,[data-inspector-account-strip] a{cursor:pointer}@media (prefers-reduced-motion:reduce){.inspector-sidebar,.inspector-nav-label,.inspector-sidebar[data-icon-rail=true] .inspector-agent-selector>[data-context-dropdown-root=true]>button{transition:none}.inspector-icon-rail-menu{transition:none;animation:none}}.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:#0000;border:1px solid #d5d3e4;border-radius:5px;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:#f7f4fe;border-color:#c8c6e6}.cpk-threads-overview-video{opacity:0;transition:opacity .22s}.cpk-threads-overview{background-color:#f7f7f9;flex:1;justify-content:center;align-items:center;min-width:0;padding:32px;display:flex}.cpk-threads-overview-content{color:#57575b;width:100%;max-width:440px}.cpk-locked-feature{box-sizing:border-box;background:#fff;align-items:flex-start;width:100%;min-height:100%;padding:52px 24px 56px;display:flex;position:relative;overflow:auto;container:cpk-locked-feature/inline-size}.cpk-locked-feature-layout{box-sizing:border-box;width:100%;min-width:0;max-width:600px;margin:0 auto}.cpk-locked-feature-hero{box-sizing:border-box;grid-template-columns:minmax(0,1fr);gap:36px;width:100%;min-width:0;margin:0 auto;display:grid}.cpk-locked-feature-copy{color:#57575b;min-width:0}.cpk-locked-feature-name{color:#5558b2;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:20px;font-size:11px;font-weight:700;line-height:1.25;display:inline-flex}.cpk-locked-feature-icon{width:15px;height:15px;color:inherit;flex:none;justify-content:center;align-items:center;display:inline-flex}.cpk-locked-feature-icon svg{width:15px;height:15px;display:block}.cpk-locked-feature-title{color:#010507;letter-spacing:-.025em;max-width:680px;margin:0 0 18px;font-size:clamp(25px,2.6vw,34px);font-weight:600;line-height:1.08}.cpk-locked-feature-description{color:#57575b;max-width:680px;margin:0 0 28px;font-size:14px;line-height:1.6}.cpk-locked-feature-media{justify-self:stretch;width:100%;min-width:0}.cpk-threads-overview-video-frame.cpk-locked-feature-video{background:#000;border-color:#e4e4ec;border-radius:12px;width:100%;min-width:0;max-width:none;margin:0;box-shadow:0 14px 32px #2c2b441f}.cpk-locked-feature-outline{box-sizing:border-box;width:100%;max-width:none;margin:40px 0 0}.cpk-locked-feature-outline-list{margin:0;display:block}.cpk-locked-feature-outline-item{min-width:0;padding:0 0 28px;display:block}.cpk-locked-feature-outline-item+.cpk-locked-feature-outline-item{border-top:1px solid #e4e4ec;padding-top:28px}.cpk-locked-feature-outline-item h3,.cpk-locked-feature-outline-item p{margin:0}.cpk-locked-feature-outline-item h3{color:#010507;letter-spacing:-.018em;align-items:center;gap:10px;margin-bottom:10px;font-size:20px;font-weight:600;line-height:1.25;display:flex}.cpk-locked-feature-outline-icon{color:#5558b2;flex:0 0 20px;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.cpk-locked-feature-outline-icon svg{width:18px;height:18px}.cpk-locked-feature-outline-item p{color:#57575b;max-width:68ch;font-size:15px;line-height:1.65}.cpk-threads-overview-title{color:#010507;margin:0 0 10px;font-size:20px;font-weight:600;line-height:1.25}.cpk-threads-overview-copy{color:#57575b;margin:0 0 16px;font-size:13px;line-height:1.55}.cpk-threads-overview-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cpk-locked-feature .cpk-locked-feature-setup-cta,.cpk-locked-feature .cpk-threads-overview-action{box-sizing:border-box;align-items:center;height:44px;min-height:44px;padding:12px 16px;font-size:13px;font-weight:700;line-height:1}.cpk-threads-overview-action{outline-offset:2px;cursor:pointer;border:1px solid #0000;border-radius:7px;outline:2px solid #0000;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:8px 12px;font-size:12px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}[data-inspector-feature-setup-prompt][data-copy-state=copied]{color:#fff;background-color:#087653;border-color:#087653}[data-inspector-feature-setup-prompt][data-copy-state=error]{color:#fff;background-color:#b32d3b;border-color:#b32d3b}[data-inspector-feature-setup-prompt]:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.cpk-threads-overview-action-primary{color:#fff;background-color:#010507;border-color:#010507}.cpk-threads-overview-action-primary:hover{background-color:#2b2b2b;border-color:#2b2b2b}.cpk-threads-overview-action-secondary{color:#010507;background-color:#fff;border-color:#dbdbe5}.cpk-threads-overview-action-secondary:hover{background-color:#fff;border-color:#afafb7}.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:5px;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}.cpk-threads-tour-launch{z-index:2;color:#57575b;outline-offset:2px;cursor:pointer;background-color:#fff;border:1px solid #dbdbe5;border-radius:7px;outline:2px solid #0000;padding:7px 10px;font-size:12px;font-weight:600;position:absolute;bottom:16px;right:16px;box-shadow:0 8px 18px #01050714}.cpk-threads-tour{z-index:3;color:#57575b;background-color:#fff;border:1px solid #dbdbe5;border-radius:10px;width:min(340px,100% - 32px);padding:14px;position:absolute;bottom:16px;right:16px;box-shadow:0 16px 36px #01050724}.cpk-threads-tour-step{color:#087653;text-transform:uppercase;margin-bottom:8px;font-family:Spline Sans Mono,monospace;font-size:10px;font-weight:600}.cpk-threads-tour-title{color:#010507;margin-bottom:6px;font-size:14px;font-weight:600;line-height:1.35}.cpk-threads-tour-copy{color:#57575b;font-size:12px;line-height:1.5}.cpk-threads-tour-actions{justify-content:space-between;gap:8px;margin-top:14px;display:flex}.cpk-threads-tour-nav{gap:8px;display:flex}.cpk-threads-tour-skip,.cpk-threads-tour-button{font:inherit;outline-offset:2px;cursor:pointer;border-radius:7px;outline:2px solid #0000;padding:7px 10px;font-size:12px;font-weight:600}.cpk-threads-overview-action:focus-visible,.cpk-threads-tour-launch:focus-visible,.cpk-threads-tour-skip:focus-visible,.cpk-threads-tour-button:focus-visible{outline-color:#6430ab}.cpk-threads-tour-skip{color:#68686e;background-color:#0000;border:0;padding-inline:0}.cpk-threads-tour-button-secondary{color:#57575b;background-color:#fff;border:1px solid #dbdbe5}.cpk-threads-tour-button-primary{color:#fff;background-color:#010507;border:1px solid #010507}.cpk-threads-tour-button:disabled{cursor:not-allowed;opacity:.45}@container cpk-locked-feature (max-width:440px){.cpk-locked-feature .cpk-threads-overview-actions{flex-direction:column;align-items:stretch}.cpk-locked-feature .cpk-locked-feature-setup-cta,.cpk-locked-feature .cpk-threads-overview-action{width:100%}}@media (max-width:720px){.cpk-threads-overview{padding:24px}}@media (prefers-reduced-motion:reduce){.cpk-threads-overview-video{transition:none}}.inspector-window[data-color-scheme=dark]{color-scheme:dark;background-color:var(--cpk-inspector-surface-dark)!important;color:#f3f4f8!important;border-color:#7b7d89!important}.inspector-window[data-color-scheme=dark] .inspector-shell,.inspector-window[data-color-scheme=dark] .inspector-main,.inspector-window[data-color-scheme=dark] #cpk-main-scroll{color:#f3f4f8!important;background-color:#111319!important}.inspector-window[data-color-scheme=dark] .resize-handle,.inspector-window[data-color-scheme=dark] .edge-resize-handle,.inspector-window[data-color-scheme=dark] .dock-resize-handle{background:0 0!important}.inspector-window[data-color-scheme=dark] .drag-handle,.inspector-window[data-color-scheme=dark] .inspector-account-strip{color:#f3f4f8!important;background:#15171e!important;border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .inspector-account-logo{filter:brightness(0)invert();clip-path:inset(0 20% 0 0)}.inspector-window[data-color-scheme=dark] .inspector-account-logo-accent{filter:none;display:block}.inspector-window[data-color-scheme=dark] .inspector-agent-placeholder{color:#b8bbc7!important;border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .inspector-account-control{color:#b8bbc7!important;border:0!important}.inspector-window[data-color-scheme=dark] .inspector-account-control:hover,.inspector-window[data-color-scheme=dark] .inspector-account-control-active{color:#d8d9ff!important;background-color:#292c38!important}.inspector-window[data-color-scheme=dark] .inspector-account-cta{color:#d8d9ff;background-color:#292b43}.inspector-window[data-color-scheme=dark] .inspector-account-cta:hover{color:#fff;background-color:#353854}.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu{box-shadow:0 12px 28px #00000052;color:#f3f4f8!important;background-color:#111319!important;border-color:#5c6173!important}.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button,.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button span{color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button:hover,.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button:focus-visible,.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button:hover span,.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button:focus-visible span{color:#fff!important;background-color:#3a3f52!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar .inspector-agent-selector>[data-context-dropdown-root=true]>button{color:#f3f4f8!important;background-color:#20232c!important;border-color:#464957!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar .inspector-agent-selector>[data-context-dropdown-root=true]>button:hover{background-color:#292c38!important;border-color:#777aae!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar .inspector-agent-selector>[data-context-dropdown-root=true]>button>span:last-child{color:#aeb1bd!important}.inspector-window[data-color-scheme=dark] .inspector-context-dropdown-icon{color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar[data-icon-rail=true] .inspector-agent-selector>[data-context-dropdown-root=true]>button{color:#fff!important;background-color:#2f3340!important;border-color:#8b90a5!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-icon,.inspector-window[data-color-scheme=dark] .inspector-sidebar[data-icon-rail=true] .inspector-agent-placeholder{color:#fff!important}.inspector-window[data-color-scheme=dark] [data-context-dropdown-root=true]>div{color:#f3f4f8!important;box-shadow:none!important;background-color:#191c24!important;border-color:#464957!important}.inspector-window[data-color-scheme=dark] [data-context-dropdown-root=true]>div button:hover,.inspector-window[data-color-scheme=dark] [data-context-dropdown-root=true]>div button:focus{color:#f3f4f8!important;background-color:#343746!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar{color:#f3f4f8;background-color:#15171e;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-sidebar-label{color:#8f93a1}.inspector-window[data-color-scheme=dark] .inspector-sidebar-rail-tooltip{color:#191c24;background-color:#e9e9f1;box-shadow:0 7px 18px #00000047}.inspector-window[data-color-scheme=dark] .inspector-nav-control,.inspector-window[data-color-scheme=dark] .inspector-sidebar-toggle{color:#b8bbc7}.inspector-window[data-color-scheme=dark] .inspector-nav-control:hover,.inspector-window[data-color-scheme=dark] .inspector-sidebar-toggle:hover{color:#fff;background-color:#22252f}.inspector-window[data-color-scheme=dark] .inspector-nav-control-active{color:#d8d9ff;background-color:#292b43;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-sidebar-agent-scope{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-card{background-color:#191c24;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-copy strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-copy>span,.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-card[data-state=disconnected] .inspector-sidebar-status-copy>span{color:#9da1af}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-action{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-action:hover{color:#fff;background-color:#292b43}.inspector-window[data-color-scheme=dark] .inspector-sidebar-intelligence-setup{color:#d8d9ff;background-color:#292b43;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-sidebar-intelligence-setup:hover{background-color:#343653;border-color:#777aae}.inspector-window[data-color-scheme=dark] .inspector-sidebar-intelligence-setup .inspector-sidebar-status-copy strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-sidebar-setup-arrow{background-color:#caccff1f}@media (prefers-reduced-motion:reduce){.inspector-sidebar-intelligence-setup{animation:none}}.inspector-window[data-color-scheme=dark] .inspector-home{background-color:#111319}.inspector-window[data-color-scheme=dark] .inspector-settings{color:#f3f4f8;background-color:#111319}.inspector-window[data-color-scheme=dark] .inspector-settings-header,.inspector-window[data-color-scheme=dark] .inspector-settings-section,.inspector-window[data-color-scheme=dark] .inspector-settings-privacy,.inspector-window[data-color-scheme=dark] .inspector-settings-visibility,.inspector-window[data-color-scheme=dark] .inspector-settings-private-content{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-settings-title,.inspector-window[data-color-scheme=dark] .inspector-settings-section-heading h2,.inspector-window[data-color-scheme=dark] .inspector-settings-status-row h3,.inspector-window[data-color-scheme=dark] .inspector-settings-visibility h3,.inspector-window[data-color-scheme=dark] .inspector-settings-private-content strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-settings-subtitle,.inspector-window[data-color-scheme=dark] .inspector-settings-section-heading p,.inspector-window[data-color-scheme=dark] .inspector-settings-status-row p,.inspector-window[data-color-scheme=dark] .inspector-settings-visibility p,.inspector-window[data-color-scheme=dark] .inspector-settings-private-content>p{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-settings-section-icon{color:#d8d9ff;background-color:#292b43;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-settings-private-content li{color:#c9ccd6}.inspector-window[data-color-scheme=dark] .inspector-settings-private-content li span{color:#75d8b9}.inspector-window[data-color-scheme=dark] .inspector-settings-status{color:#8ce1c5;background-color:#173b32;border-color:#347d69}.inspector-window[data-color-scheme=dark] .inspector-settings-privacy[data-state=disabled] .inspector-settings-status{color:#f2cf8f;background-color:#342916;border-color:#866932}.inspector-window[data-color-scheme=dark] .inspector-settings-policy-link{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-settings-policy-link:hover{color:#fff}.inspector-window[data-color-scheme=dark] .inspector-settings-dismiss{color:#ded7ff;background-color:#272438;border-color:#5d5975}.inspector-window[data-color-scheme=dark] .inspector-settings-dismiss:hover{background-color:#322e47;border-color:#8179a7}.inspector-window[data-color-scheme=dark] .inspector-settings-dismiss:focus-visible{outline-color:#bec2ff}.inspector-window[data-color-scheme=dark] .inspector-home-card,.inspector-window[data-color-scheme=dark] .inspector-home-story,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud,.inspector-window[data-color-scheme=dark] .inspector-home-feature-list,.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview{color:#f3f4f8;background:#191c24;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud[data-state=disconnected]{background-color:#1d1e2b;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud[data-state=disconnected] .inspector-intelligence-hud-description{color:#c5c7d0}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-header{background:linear-gradient(100deg,#1d1e2b 0%,#221f31 54%,#1a2523 100%);border-bottom-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-heading .inspector-home-section-title{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-hint{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-hint[data-tone=success]{color:#d5cbff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-hint[data-tone=error]{color:#ffb3a1}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install[data-copy-state=copied] .inspector-intelligence-install-copy{color:#d5cbff;background-color:#0000;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-secondary{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-fallback{color:#c5c7d0;background-color:#15171e;border-bottom-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story{background-color:#15171e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-beat-label,.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-step>small,.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread>small,.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file>header em{color:#8f93a1}.inspector-window[data-color-scheme=dark] .inspector-intelligence-copy-slide>strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-copy-slide>span{color:#c5c7d0}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread{background-color:#1c1f2b;border-color:#33364a}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread>strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread>i{background-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread[data-failed=true]{background-color:#2a1a16;border-color:#5a3129}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread[data-failed=true]>i{background-color:#f97316}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread[data-failed=true]>strong,.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread[data-failed=true]>small{color:#ffb3a1}.inspector-window[data-color-scheme=dark] .inspector-intelligence-signal{color:#c5c7d0;background-color:#1c1f2b;border-color:#33364a}.inspector-window[data-color-scheme=dark] .inspector-intelligence-rule,.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-proof{color:#8fd9b8;background-color:#16241f;border-color:#2f5748}.inspector-window[data-color-scheme=dark] .inspector-intelligence-rule>i,.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-proof svg{color:#5be4bb}.inspector-window[data-color-scheme=dark] .inspector-intelligence-beat-flow{color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file{box-shadow:none;background-color:#191c24;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file>header{background-color:#1c1f2b;border-bottom-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file>header strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file>header svg,.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-code>span>b,.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-step>i{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-code>span{color:#c5c7d0}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-code>span:before{color:#6d7180}.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-step{background-color:#1c1f2b;border-color:#33364a}.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-step>strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-arrow{color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-rail{border-top-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-tab{color:#8f93a1}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-tab:hover{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-tab[data-active=true]{color:#d5cbff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-tab:after{background-color:#a78bfa}.inspector-window[data-color-scheme=dark] .inspector-system-health,.inspector-window[data-color-scheme=dark] .inspector-system-health-section{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-system-health-section{background-color:#191c24}.inspector-window[data-color-scheme=dark] .inspector-system-health-section .inspector-system-health-header{background-color:#191c24;border-bottom-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-system-health{background-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal{background-color:#191c24}.inspector-window[data-color-scheme=dark] .inspector-system-health-event-link>small{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-system-health-header>span[data-tone=success]{color:#8ce1c5}.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=success],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=success]{background-color:#173b32;border-color:#347d69;color:#8ce1c5!important}.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=checking],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=checking]{background-color:#342916;border-color:#866932;color:#f2cf8f!important}.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=offline],.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=error],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=offline],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=error]{background-color:#3b1c22;border-color:#87424a;color:#ff9aa0!important}.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=unavailable],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=unavailable]{background-color:#242731;border-color:#464957;color:#aeb1bd!important}.inspector-window[data-color-scheme=dark] .inspector-system-health-header>span[data-tone=checking]{color:#f2cf8f}.inspector-window[data-color-scheme=dark] .inspector-system-health-header>span[data-tone=offline],.inspector-window[data-color-scheme=dark] .inspector-system-health-header>span[data-tone=error]{color:#ff9aa0}.inspector-window[data-color-scheme=dark] .inspector-home-story-link:hover,.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview:has(.inspector-whats-new-preview-body:hover){background:#242131;border-color:#777aae}.inspector-window[data-color-scheme=dark] .inspector-home-title,.inspector-window[data-color-scheme=dark] .inspector-home-section-title,.inspector-window[data-color-scheme=dark] .inspector-home-card-title,.inspector-window[data-color-scheme=dark] .inspector-system-health-signal dd,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details .inspector-intelligence-hud-detail-value,.inspector-window[data-color-scheme=dark] .inspector-home-feature{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-home-eyebrow,.inspector-window[data-color-scheme=dark] .inspector-home-card-label,.inspector-window[data-color-scheme=dark] .inspector-home-meta,.inspector-window[data-color-scheme=dark] .inspector-home-body,.inspector-window[data-color-scheme=dark] .inspector-home-card-copy,.inspector-window[data-color-scheme=dark] .inspector-system-health-signal dt,.inspector-window[data-color-scheme=dark] .inspector-system-health-signal small,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-heading p,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details .inspector-intelligence-hud-detail-label,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details .inspector-intelligence-hud-detail-subvalue,.inspector-window[data-color-scheme=dark] .inspector-home-section-header>span,.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview-copy>span:last-child{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details{background-color:#3a3d49;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details>section{background-color:#15171e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-plan-action{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-plan-action:hover{color:#fff;background-color:#0000;border-color:#0000}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal+.inspector-system-health-signal,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details>section+section,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details,.inspector-window[data-color-scheme=dark] .inspector-home-features-empty{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=success] dd,.inspector-window[data-color-scheme=dark] .inspector-home-feature small{color:#8ce1c5}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=active] dd{color:#f2cf8f}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=error] .inspector-system-health-event-type{color:#ff9aa0;background-color:#3b1c22}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=success] .inspector-system-health-event-type{color:#8ce1c5;background-color:#173b32}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=active] .inspector-system-health-event-type{color:#f2cf8f;background-color:#342916}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group{background-color:#191c24;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group-header{color:#c9ccd6;background-color:#20232d;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group-header>span{color:#c9ccd6;background-color:#191c24}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group[data-feature-state-group=active] .inspector-home-feature-group-header{color:#8ce1c5;background-color:#173b32;border-color:#347d69}.inspector-window[data-color-scheme=dark] .inspector-home-feature{background-color:#191c24}.inspector-window[data-color-scheme=dark] .inspector-home-feature:hover{background-color:#20232d}.inspector-window[data-color-scheme=dark] .inspector-home-feature+.inspector-home-feature{border-color:#2f323d}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group-empty{color:#9da1af}.inspector-window[data-color-scheme=dark] .inspector-home-feature[data-state=off]{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-home-feature-status>span{background-color:#191c24;border-color:#6f7484}.inspector-window[data-color-scheme=dark] .inspector-home-feature[data-state=on] .inspector-home-feature-status>span{background-color:#8ce1c5;border-color:#8ce1c5}.inspector-window[data-color-scheme=dark] .inspector-home-feature-action{color:#d4d7e0;background-color:#20232d;border-color:#464957}.inspector-window[data-color-scheme=dark] .inspector-home-feature-label:hover{color:#d8d9ff}.inspector-window[data-color-scheme=dark] .inspector-home-feature-action:hover{color:#fff;background-color:#292b43;border-color:#777aae}.inspector-window[data-color-scheme=dark] .inspector-home-feature-action[data-copy-state=copied]{color:#8ce1c5;background-color:#173b32;border-color:#347d69}.inspector-window[data-color-scheme=dark] .inspector-home-feature-action[data-copy-state=error]{color:#ff9aa0;background-color:#3b1c22;border-color:#87424a}.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview-dismiss{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview-dismiss:hover{color:#fff;background-color:#302a40}.inspector-window[data-color-scheme=dark] .inspector-home-usage-bar{background-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-thread-progress::-webkit-progress-bar{background-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-whats-new-header{box-shadow:none;background-color:#1d1e2b;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-whats-new-updated,.inspector-window[data-color-scheme=dark] .inspector-whats-new-empty{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview-action{color:#d8d9ff}.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview:hover .inspector-whats-new-preview-action{color:#fff}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document,.inspector-window[data-color-scheme=dark] .inspector-whats-new-empty{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content{color:#c9ccd6}.inspector-window[data-color-scheme=dark] .inspector-whats-new-empty .inspector-home-card-title{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h1+p{color:#c9ccd6}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h2{border-top-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h1,.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h2,.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h3,.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content a{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-threads-footer{color:#aeb1bd;background-color:#15171e;border-color:#343742}.inspector-window[data-color-scheme=dark] [data-inspector-thread-count]{color:#f3f4f8}.inspector-window[data-color-scheme=dark] [data-inspector-thread-expiry]{color:#aeb1bd}.inspector-window[data-color-scheme=dark] [data-inspector-action-placement=threads-footer]{color:#d8d9ff;background-color:#191c24;border-color:#464957}.inspector-window[data-color-scheme=dark] [data-inspector-action-placement=threads-footer]:hover{color:#fff;background-color:#20232d;border-color:#777aae}.inspector-window[data-color-scheme=dark] .cpk-threads-overview{background-color:#111319}.inspector-window[data-color-scheme=dark] .cpk-locked-feature{background:#111319}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-copy,.inspector-window[data-color-scheme=dark] .cpk-locked-feature-description{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-name{color:#caccff}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-title{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline{box-shadow:none;background:0 0}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-item h3{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-icon{color:#caccff}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-item{box-shadow:none;color:#f3f4f8;background:0 0}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-item+.cpk-locked-feature-outline-item{border-top-color:#3a3d49}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-item p,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-content,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-copy,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-video-fallback,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-copy{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-title,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-title{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-video-frame{background:linear-gradient(135deg,#666a9e3d,#347d6929),#191c24;border-color:#3a3d49;box-shadow:0 8px 20px #00000038}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-video-control,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action-secondary,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-launch,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button-secondary{color:#d8d9ff;background-color:#191c24;border-color:#464957}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-video-control:hover,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action-secondary:hover,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-launch:hover,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button-secondary:hover{color:#fff;background-color:#242731;border-color:#777aae}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action-primary,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button-primary{color:#171823;background-color:#caccff;border-color:#caccff}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action-primary:hover,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button-primary:hover{background-color:#d8d9ff;border-color:#d8d9ff}.inspector-window[data-color-scheme=dark] .cpk-threads-tour{color:#aeb1bd;background-color:#191c24;border-color:#464957;box-shadow:0 16px 36px #00000052}.inspector-window[data-color-scheme=dark] .cpk-threads-tour-step{color:#8ce1c5}.inspector-window[data-color-scheme=dark] .cpk-threads-tour-skip{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action:focus-visible,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-launch:focus-visible,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-skip:focus-visible,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button:focus-visible{outline-color:#bec2ff}.inspector-window[data-color-scheme=dark] .cpk-agent-overview,.inspector-window[data-color-scheme=dark] .cpk-section-card{background-color:#191c24!important;border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .cpk-section-header{background-color:#242731!important;border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .cpk-section-header h4{color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] .cpk-agent-icon{color:#d8d9ff!important;background-color:#292b43!important}.inspector-window[data-color-scheme=dark] .cpk-stat-card{background-color:#191c24!important;border-color:#464957!important}.inspector-window[data-color-scheme=dark] button.cpk-stat-card:hover{background-color:#20232d!important}.cpk-agent-messages-head{border-bottom:1px solid #e4e4ec}.cpk-agent-message-row+.cpk-agent-message-row{border-top:1px solid #e4e4ec}.inspector-window[data-color-scheme=dark] .cpk-agent-messages-head,.inspector-window[data-color-scheme=dark] .cpk-agent-message-row+.cpk-agent-message-row,.inspector-window[data-color-scheme=dark] .cpk-agent-view .divide-gray-200>:not([hidden])~:not([hidden]),.inspector-window[data-color-scheme=dark] .cpk-agent-view .divide-y>*{border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .cpk-json-block{color:#c9ccd6}.inspector-window[data-color-scheme=dark] [class*=bg-emerald-50],.inspector-window[data-color-scheme=dark] [class*=bg-green-100]{color:#8ce1c5!important;background-color:#173b32!important}.inspector-window[data-color-scheme=dark] [class*=bg-rose-50]{color:#ff9aa0!important;background-color:#3b1c22!important}.inspector-window[data-color-scheme=dark] [data-cpk-event-error] p,.inspector-window[data-color-scheme=dark] [data-playground-error] p{color:inherit!important}.inspector-window[data-color-scheme=dark] [class*=bg-amber-50],.inspector-window[data-color-scheme=dark] [class*=bg-amber-100]{color:#f2cf8f!important;background-color:#342916!important}.inspector-window[data-color-scheme=dark] [class*=bg-blue-50],.inspector-window[data-color-scheme=dark] [class*=bg-blue-100],.inspector-window[data-color-scheme=dark] [class*=bg-sky-50],.inspector-window[data-color-scheme=dark] [class*=bg-violet-50],.inspector-window[data-color-scheme=dark] [class*=bg-purple-50],.inspector-window[data-color-scheme=dark] [class*=bg-fuchsia-50]{color:#d8d9ff!important;background-color:#292b43!important}.inspector-window[data-color-scheme=dark] [class*=bg-white]{background-color:#191c24!important}.inspector-window[data-color-scheme=dark] [class*=bg-gray-50],.inspector-window[data-color-scheme=dark] [class*=bg-slate-50],.inspector-window[data-color-scheme=dark] [class*=bg-gray-100],.inspector-window[data-color-scheme=dark] [class*=bg-slate-100]{background-color:#171a22!important}.inspector-window[data-color-scheme=dark] [class*=text-gray-900],.inspector-window[data-color-scheme=dark] [class*=text-slate-900],.inspector-window[data-color-scheme=dark] [class*=text-gray-800],.inspector-window[data-color-scheme=dark] [class*=text-slate-800],.inspector-window[data-color-scheme=dark] [class*=text-gray-700],.inspector-window[data-color-scheme=dark] [class*=text-slate-700]{color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] [class*=text-gray-600],.inspector-window[data-color-scheme=dark] [class*=text-slate-600],.inspector-window[data-color-scheme=dark] [class*=text-gray-500],.inspector-window[data-color-scheme=dark] [class*=text-slate-500],.inspector-window[data-color-scheme=dark] [class*=text-gray-400],.inspector-window[data-color-scheme=dark] [class*=text-slate-400]{color:#aeb1bd!important}.inspector-window[data-color-scheme=dark] [class*=border-gray-100],.inspector-window[data-color-scheme=dark] [class*=border-slate-100],.inspector-window[data-color-scheme=dark] [class*=border-gray-200],.inspector-window[data-color-scheme=dark] [class*=border-slate-200],.inspector-window[data-color-scheme=dark] [class*=border-gray-300],.inspector-window[data-color-scheme=dark] [class*=border-slate-300]{border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] input,.inspector-window[data-color-scheme=dark] select,.inspector-window[data-color-scheme=dark] textarea{color:#f3f4f8!important;background-color:#191c24!important;border-color:#464957!important}.inspector-window[data-color-scheme=dark] input::placeholder,.inspector-window[data-color-scheme=dark] textarea::placeholder{color:#858996}.inspector-window[data-color-scheme=dark] .cpk-playground-composer{background-color:#2f3340!important;box-shadow:0 0 0 1px #6d7285!important}.inspector-window[data-color-scheme=dark] .cpk-playground-composer:focus-within{box-shadow:0 0 0 1px #c5c8de!important}.inspector-window[data-color-scheme=dark] .cpk-playground-input{color:#f3f4f8!important;caret-color:#f3f4f8!important;background-color:#0000!important}.inspector-window[data-color-scheme=dark] .cpk-playground-input::placeholder{color:#e4e6ef!important;opacity:1!important}.inspector-window[data-color-scheme=dark] .cpk-playground-send:not(:disabled){color:#111319!important;opacity:1!important;background-color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] .cpk-playground-send:disabled{color:#f3f4f8!important;background-color:#f3f4f833!important}.inspector-window[data-color-scheme=dark] ::selection{color:#fff;background-color:#5b5f92}.inspector-home-heading h1{letter-spacing:-.5px;margin:0 0 6px;font-size:23px;font-weight:650}.inspector-home-heading p{opacity:.7;margin:0;font-size:13px}.inspector-thread-heading{border-bottom:1px solid #b8afe030;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.inspector-thread-heading strong{font-size:14px}.inspector-text-button{font:inherit;color:#8872c5;cursor:pointer;background:0 0;border:0;font-size:11px}.inspector-home-heading{margin-bottom:22px}@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-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-duration{syntax:\"*\";inherits:false}@property --tw-ease{syntax:\"*\";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}";
|
|
533
|
+
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-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-duration:initial;--tw-ease:initial}}}@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-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-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-100:oklch(94.3% .029 294.588);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-400:oklch(70.2% .183 293.541);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-violet-800:oklch(43.2% .232 292.759);--color-violet-950:oklch(28.3% .141 291.089);--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-rose-50:oklch(96.9% .015 12.422);--color-rose-100:oklch(94.1% .03 12.58);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-700:oklch(51.4% .222 16.935);--color-rose-800:oklch(45.5% .188 13.697);--color-rose-950:oklch(27.1% .105 12.094);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--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;--container-3xl:48rem;--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;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--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{.\\@container{container-type:inline-size}.pointer-events-auto{pointer-events:auto}.collapse{visibility:collapse}.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)}.bottom-0{bottom:calc(var(--spacing)*0)}.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}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-3{margin-inline:calc(var(--spacing)*3)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-auto{margin-inline:auto}.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-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-auto{margin-right:auto}.mb-0\\.5{margin-bottom:calc(var(--spacing)*.5)}.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-1{margin-left:calc(var(--spacing)*-1)}.ml-1{margin-left:calc(var(--spacing)*1)}.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-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-\\[28rem\\]{height:28rem}.h-full{height:100%}.max-h-32{max-height:calc(var(--spacing)*32)}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-7{min-height:calc(var(--spacing)*7)}.min-h-\\[20rem\\]{min-height:20rem}.min-h-\\[40px\\]{min-height:40px}.min-h-\\[420px\\]{min-height:420px}.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-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-40{width:calc(var(--spacing)*40)}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.max-w-3xl{max-width:var(--container-3xl)}.max-w-\\[80\\%\\]{max-width:80%}.max-w-\\[200px\\]{max-width:200px}.max-w-\\[240px\\]{max-width:240px}.max-w-full{max-width:100%}.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-\\[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-not-allowed{cursor:not-allowed}.cursor-nwse-resize{cursor:nwse-resize}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.list-none{list-style-type:none}.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-end{align-items:flex-end}.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)))}.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-\\[16px\\]{border-radius:16px}.rounded-\\[28px\\]{border-radius:28px}.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-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-rose-300{border-color:var(--color-rose-300)}.border-slate-200{border-color:var(--color-slate-200)}.border-violet-200{border-color:var(--color-violet-200)}.bg-\\[\\#00000014\\]{background-color:#00000014}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-black{background-color:var(--color-black)}.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-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-200{background-color:var(--color-gray-200)}.bg-gray-300{background-color:var(--color-gray-300)}.bg-gray-400{background-color:var(--color-gray-400)}.bg-gray-500{background-color:var(--color-gray-500)}.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-slate-900{background-color:var(--color-slate-900)}.bg-transparent{background-color:#0000}.bg-violet-50{background-color:var(--color-violet-50)}.bg-white{background-color:var(--color-white)}.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-0\\.5{padding:calc(var(--spacing)*.5)}.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-2\\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.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)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-1\\.5{padding-top:calc(var(--spacing)*1.5)}.pt-8{padding-top:calc(var(--spacing)*8)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-5{padding-bottom:calc(var(--spacing)*5)}.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}.text-\\[13px\\]{font-size:13px}.leading-4{--tw-leading:calc(var(--spacing)*4);line-height:calc(var(--spacing)*4)}.leading-5{--tw-leading:calc(var(--spacing)*5);line-height:calc(var(--spacing)*5)}.leading-\\[22px\\]{--tw-leading:22px;line-height:22px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.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-wrap{white-space:pre-wrap}.text-\\[rgb\\(13\\,13\\,13\\)\\]{color:#0d0d0d}.text-amber-600{color:var(--color-amber-600)}.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-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-rose-800{color:var(--color-rose-800)}.text-rose-950{color:var(--color-rose-950)}.text-slate-500{color:var(--color-slate-500)}.text-slate-800{color:var(--color-slate-800)}.text-violet-500{color:var(--color-violet-500)}.text-violet-600{color:var(--color-violet-600)}.text-violet-950{color:var(--color-violet-950)}.text-white{color:var(--color-white)}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-violet-300{-webkit-text-decoration-color:var(--color-violet-300);-webkit-text-decoration-color:var(--color-violet-300);text-decoration-color:var(--color-violet-300)}.underline-offset-2{text-underline-offset:2px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.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-\\[0_4px_4px_0_\\#0000000a\\,0_0_1px_0_\\#0000009e\\]{--tw-shadow:0 4px 4px 0 var(--tw-shadow-color,#0000000a),0 0 1px 0 var(--tw-shadow-color,#0000009e);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,.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-transparent{--tw-ring-color:transparent}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.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,)}.backdrop-filter{-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-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.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}}.placeholder\\:text-gray-500::placeholder{color:var(--color-gray-500)}.focus-within\\:shadow-\\[0_6px_18px_0_\\#00000014\\,0_0_1px_0_\\#0000009e\\]:focus-within{--tw-shadow:0 6px 18px 0 var(--tw-shadow-color,#00000014),0 0 1px 0 var(--tw-shadow-color,#0000009e);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (hover:hover){.hover\\:border-gray-300:hover{border-color:var(--color-gray-300)}.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-rose-100:hover{background-color:var(--color-rose-100)}.hover\\:bg-violet-100:hover{background-color:var(--color-violet-100)}.hover\\:text-gray-900:hover{color:var(--color-gray-900)}.hover\\:text-violet-800:hover{color:var(--color-violet-800)}.hover\\:decoration-violet-700:hover{-webkit-text-decoration-color:var(--color-violet-700);-webkit-text-decoration-color:var(--color-violet-700);text-decoration-color:var(--color-violet-700)}.hover\\:opacity-70:hover{opacity:.7}}.focus\\:border-gray-300:focus{border-color:var(--color-gray-300)}.focus\\:border-violet-400:focus{border-color:var(--color-violet-400)}.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\\:ring-violet-100:focus{--tw-ring-color:var(--color-violet-100)}.focus\\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\\:rounded:focus-visible{border-radius:.25rem}.focus-visible\\:rounded-sm:focus-visible{border-radius:var(--radius-sm)}.focus-visible\\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\\:ring-rose-300:focus-visible{--tw-ring-color:var(--color-rose-300)}.focus-visible\\:ring-violet-300:focus-visible{--tw-ring-color:var(--color-violet-300)}.focus-visible\\:ring-violet-400:focus-visible{--tw-ring-color:var(--color-violet-400)}.focus-visible\\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\\:outline: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-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\\:opacity-60:active{opacity:.6}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:text-gray-500:disabled{color:var(--color-gray-500)}.disabled\\:opacity-50:disabled{opacity:.5}.disabled\\:opacity-60:disabled{opacity:.6}@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\\]\\:h-3>svg{height:calc(var(--spacing)*3)}.\\[\\&\\>svg\\]\\:h-3\\.5>svg{height:calc(var(--spacing)*3.5)}.\\[\\&\\>svg\\]\\:h-\\[18px\\]>svg{height:18px}.\\[\\&\\>svg\\]\\:\\!w-8>svg{width:calc(var(--spacing)*8)!important}.\\[\\&\\>svg\\]\\:w-3>svg{width:calc(var(--spacing)*3)}.\\[\\&\\>svg\\]\\:w-3\\.5>svg{width:calc(var(--spacing)*3.5)}.\\[\\&\\>svg\\]\\:w-\\[18px\\]>svg{width:18px}.\\[\\&\\>svg\\]\\:animate-spin>svg{animation:var(--animate-spin)}.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}}.cpk-ephemeral-threads-banner{color:#37314f;text-align:left;cursor:pointer;background:#f3f0ff;border-bottom:1px solid #dbdbe5;flex-shrink:0;align-items:flex-start;gap:8px;width:100%;padding:12px;font-size:12px;display:flex}.cpk-ephemeral-threads-banner:hover{background:#ebe5fc}.cpk-ephemeral-threads-description{color:#686078;font-size:11px}.cpk-ephemeral-threads-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.cpk-ephemeral-threads-headline{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.cpk-ephemeral-threads-icon{color:#7762b4;flex-shrink:0}.cpk-ephemeral-threads-icon svg{width:18px;height:18px}.cpk-ephemeral-threads-upgrade{color:#6750a4;align-items:center;gap:5px;margin-top:4px;font-size:11px;font-weight:600;display:inline-flex}.cpk-ephemeral-threads-banner:hover .cpk-ephemeral-threads-upgrade{text-decoration:underline}.cpk-ephemeral-threads-upgrade svg{width:14px;height:14px}.cpk-threads-setup-navigation{z-index:2;background:#fff;border-bottom:1px solid #e9e7ef;padding:12px 24px;position:sticky;top:0}.cpk-threads-setup-back{color:#51416f;cursor:pointer;align-items:center;gap:8px;padding:4px 0;font-size:12px;font-weight:600;display:inline-flex}.cpk-threads-setup-back span{font-size:18px;line-height:1}.cpk-threads-setup-back:hover{color:#221238;text-decoration:underline}.cpk-threads-setup-back:focus-visible,.cpk-ephemeral-threads-banner:focus-visible{outline-offset:3px;outline:2px solid #8b78bd}.cpk-ephemeral-threads-banner:focus-visible{outline-offset:-3px}.inspector-window[data-color-scheme=dark] .cpk-ephemeral-threads-banner{color:#d8d9ff;background:#292b43;border-color:#464957}.inspector-window[data-color-scheme=dark] .cpk-ephemeral-threads-description{color:#beb8d1}.inspector-window[data-color-scheme=dark] .cpk-ephemeral-threads-upgrade{color:#d8d9ff}.inspector-window[data-color-scheme=dark] .cpk-ephemeral-threads-banner:hover{background:#343650}.inspector-window[data-color-scheme=dark] .cpk-threads-setup-navigation{background:#111319;border-color:#343742}.inspector-window[data-color-scheme=dark] .cpk-threads-setup-back{color:#d8d9ff}.cpk-json-block{white-space:pre-wrap;word-break:break-all;color:#57575b;margin:0;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:11px;line-height:1.8;overflow:auto}.inspector-account-strip{border-bottom:1px solid #d8d8e8;width:100%;min-width:0;color:#010507!important;background:#f7f6fd!important}.inspector-account-logo{filter:none}.inspector-account-brand{position:relative}.inspector-account-logo-accent{clip-path:inset(0 0 0 80%);pointer-events:none;display:none;position:absolute;inset:0}.inspector-account-cta{isolation:isolate;color:#3f176f;white-space:nowrap;cursor:pointer;background-color:#eee6fe;border:0;border-radius:5px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:32px;padding:7px 10px;font-size:11px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.inspector-account-cta:after{z-index:0;content:\"\";opacity:0;pointer-events:none;background:linear-gradient(105deg,#0000 0%,#ffffff14 32%,#ffffffad 50%,#ffffff14 68%,#0000 100%);width:68%;animation:3.8s cubic-bezier(.16,1,.3,1) infinite inspector-account-cta-shimmer;position:absolute;inset:0;transform:translate(-180%)skew(-14deg)}.inspector-account-cta>*{z-index:1;position:relative}.inspector-account-cta[data-motion-paused=true]:after{animation-play-state:paused}@keyframes inspector-account-cta-shimmer{0%{opacity:0;transform:translate(-180%)skew(-14deg)}12%{opacity:1}82%{opacity:.8}to{opacity:0;transform:translate(280%)skew(-14deg)}}.inspector-account-cta:hover{color:#32105d;background-color:#e4d8fc}.inspector-account-cta svg{width:14px;height:14px}@media (prefers-reduced-motion:reduce){.inspector-account-cta:after{animation:none}}.inspector-window-layout{position:relative}.inspector-window-layout-menu{z-index:60;color:#010507;background-color:#fff;border:1px solid #d8d8e8;border-radius:5px;width:188px;padding:4px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 10px 24px #1f173924}.inspector-window-layout-menu button{min-height:34px;color:inherit;text-align:left;cursor:pointer;background-color:#0000;border:0;border-radius:4px;align-items:center;gap:9px;padding:7px 9px;font-size:12px;font-weight:600;display:flex}.inspector-window-layout-menu button:hover,.inspector-window-layout-menu button:focus-visible{color:#3f176f;background-color:#eee6fe;outline:none}.inspector-window-layout-menu button span:first-child{flex:none;display:inline-flex}.inspector-agent-placeholder{color:#68686e;border-color:#c8c8d8}.inspector-primary-navigation,.inspector-child-navigation{display:none}.inspector-shell{background-color:#f7f6fd;flex:auto;min-height:0;display:flex}.inspector-sidebar{z-index:20;background-color:#f7f6fd;border-right:1px solid #d8d8e8;flex-direction:column;flex:none;gap:8px;width:224px;min-width:224px;padding:12px 10px;transition:width .22s,min-width .22s,padding .22s;display:flex;position:relative;overflow:visible}.inspector-sidebar[data-icon-rail=true]{align-items:center;width:52px;min-width:52px;padding:8px}.inspector-sidebar-agent-scope{border-bottom:1px solid #d8d8e8;flex:none;min-width:0;padding-bottom:10px}.inspector-sidebar .inspector-agent-selector{width:100%;min-width:0}.inspector-sidebar .inspector-agent-selector>[data-context-dropdown-root=true]>button{background-color:#fff;border-radius:5px;max-width:none;min-height:34px;padding:6px 8px}.inspector-context-dropdown-icon{color:#68686e;display:inline-flex}.inspector-context-dropdown-icon svg,.inspector-context-dropdown-chevron svg{width:14px;height:14px}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-agent-scope{padding-bottom:8px}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-agent-scope,.inspector-sidebar[data-icon-rail=true] .inspector-agent-selector,.inspector-sidebar[data-icon-rail=true] .inspector-agent-selector>[data-context-dropdown-root=true],.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-footer{flex:none;justify-content:center;align-items:center;width:36px;min-width:36px;max-width:36px;display:flex}.inspector-sidebar[data-icon-rail=true] .inspector-agent-selector>[data-context-dropdown-root=true]>button,.inspector-sidebar[data-icon-rail=true] .inspector-agent-placeholder{box-sizing:border-box;justify-content:center;align-items:center;gap:0;width:36px;min-width:36px;max-width:36px;height:36px;min-height:36px;padding:0;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s;display:flex;overflow:visible}.inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-label,.inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-chevron,.inspector-sidebar[data-icon-rail=true] .inspector-agent-placeholder span:last-child{display:none}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-agent-scope [data-context-dropdown-root=true]>div{margin-top:0;top:0;left:calc(100% + 8px)}.inspector-icon-rail-menu{transform-origin:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,transform .18s,visibility .18s;transform:translate(-8px)scale(.96)}.inspector-icon-rail-menu[data-open=true]{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0)scale(1)}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-section+.inspector-sidebar-section{border-top:1px solid #dbdbe5;margin-top:4px;padding-top:10px}.inspector-sidebar-nav{cursor:default;flex-direction:column;flex:auto;gap:14px;min-height:0;display:flex;overflow:hidden auto}.inspector-sidebar-section{flex-direction:column;gap:4px;display:flex}.inspector-sidebar-label{color:#838389;letter-spacing:.02em;text-align:left;text-transform:none;background:0 0;border:0;width:100%;margin:0 0 2px;padding:0 8px;font-size:11px;font-weight:600;display:block}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-label,.inspector-sidebar[data-icon-rail=true] .inspector-nav-label{display:none}.inspector-sidebar-rail-tooltip{z-index:60;color:#fff;pointer-events:none;white-space:nowrap;background-color:#242331;border-radius:6px;max-width:220px;padding:6px 9px;font-size:11px;font-weight:600;line-height:1.2;position:absolute;left:calc(100% + 8px);transform:translateY(-50%);box-shadow:0 7px 18px #1a172a2e}.inspector-sidebar-control{justify-content:flex-start;width:100%;min-height:36px;display:flex;position:relative}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-nav{overflow:visible}.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-control,.inspector-sidebar[data-icon-rail=true] .inspector-sidebar-toggle,.inspector-sidebar[data-icon-rail=true] .inspector-nav-control{box-sizing:border-box;justify-content:center;align-items:center;gap:0;width:36px;min-width:36px;height:36px;min-height:36px;padding:0;overflow:visible}.inspector-sidebar[data-icon-rail=true] .inspector-nav-icon,.inspector-sidebar[data-icon-rail=true] .inspector-nav-icon svg,.inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-icon,.inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-icon svg{width:18px;height:18px;overflow:visible}.inspector-home-badge{background-color:#fa5f67;border-radius:999px;width:7px;height:7px;position:absolute;top:8px;right:8px}.inspector-sidebar[data-icon-rail=true] .inspector-home-badge{top:6px;right:8px}.inspector-sidebar-toggle{color:#57575b;width:100%;min-height:32px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;justify-content:flex-start;align-items:center;gap:6px;padding:6px 9px;font-size:12px;font-weight:600;display:flex}.inspector-sidebar-toggle:hover{color:#010507;background-color:#f0f0f4}.inspector-sidebar-footer{flex-direction:column;flex:none;gap:6px;padding:2px 0 0;display:flex}.inspector-sidebar-status-list{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.inspector-sidebar-status-card{color:#2b2b2b;background-color:#fff;border:1px solid #d8d8e8;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:52px;padding:9px 10px;display:grid;position:relative}.inspector-sidebar-status-copy{flex-direction:column;gap:2px;min-width:0;line-height:1.25;display:flex}.inspector-sidebar-status-copy strong{color:#010507;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.inspector-sidebar-status-copy>span{color:#57575b;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.inspector-sidebar-status-card[data-state=disconnected] .inspector-sidebar-status-copy>span{color:#68686e}.inspector-sidebar-status-action{color:#3f176f;white-space:nowrap;background-color:#0000;border:0;border-radius:5px;justify-content:center;align-items:center;gap:0;width:28px;height:28px;padding:0;font-size:10px;font-weight:700;text-decoration:none;display:inline-flex}.inspector-sidebar-status-action:hover{color:#6430ab;background-color:#eee7f8;text-decoration:none}.inspector-sidebar-status-action svg{width:12px;height:12px}.inspector-sidebar-status-action-label{display:none}.inspector-sidebar-intelligence-setup{color:#3f176f;cursor:pointer;background-color:#eee7f8;border-color:#bba5df;text-decoration:none;transition:border-color .12s,background-color .12s,box-shadow .3s;animation:3.2s ease-in-out infinite inspector-sidebar-intelligence-setup-glow}@keyframes inspector-sidebar-intelligence-setup-glow{0%,to{box-shadow:0 0 #6430ab00}50%{box-shadow:0 0 16px 2px #6430ab26}}.inspector-sidebar-intelligence-setup:hover{background-color:#e4d9f4;border-color:#8e6fc0}.inspector-sidebar-intelligence-setup .inspector-sidebar-status-copy strong{color:#3f176f}.inspector-sidebar-setup-arrow{background-color:#6430ab1a;border-radius:5px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.inspector-sidebar-setup-arrow svg{width:13px;height:13px}.inspector-main{background-color:#fff;flex-direction:column;flex:auto;min-width:0;display:flex;position:relative}.inspector-home{background-color:#fff;min-height:100%;padding:30px 32px 40px;position:relative;overflow:auto}.inspector-home:before{display:none}.inspector-home>*{width:min(100%,960px);margin-left:auto;margin-right:auto}.inspector-settings{color:#010507;background-color:#fff;min-height:100%;padding:34px 32px 48px;container:inspector-settings/inline-size}.inspector-settings-header{width:min(100%,720px);margin-left:auto;margin-right:auto;padding-bottom:30px}.inspector-settings-title{color:#010507;margin:0;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:30px;font-weight:600;line-height:1.15}.inspector-settings-subtitle{color:#57575b;max-width:60ch;margin:8px 0 0;font-size:14px;line-height:1.5}.inspector-settings-section{border-top:1px solid #d5d3e4;width:min(100%,720px);margin-left:auto;margin-right:auto;padding:24px 0 26px}.inspector-settings-section-heading{align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.inspector-settings-section-icon{color:#3f176f;background-color:#eee6fe;border:1px solid #bec2ff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.inspector-settings-section-icon svg{width:17px;height:17px}.inspector-settings-section-heading h2,.inspector-settings-status-row h3,.inspector-settings-visibility h3{color:#010507;margin:0;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-weight:600}.inspector-settings-section-heading h2{font-size:17px;line-height:1.3}.inspector-settings-section-heading p{color:#68686e;max-width:54ch;margin:4px 0 0;font-size:12px;line-height:1.5}.inspector-settings-privacy{margin-left:46px}.inspector-settings-status-row{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.inspector-settings-status-row>div,.inspector-settings-visibility>div{min-width:0}.inspector-settings-status-row h3{font-size:14px;line-height:1.3}.inspector-settings-status-row p{color:#57575b;max-width:56ch;margin:8px 0 0;font-size:12px;line-height:1.55}.inspector-settings-status{color:#087653;text-align:center;white-space:nowrap;background-color:#e5f7f1;border:1px solid #85d3bb;border-radius:999px;flex:none;align-items:center;min-height:24px;padding:3px 8px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.inspector-settings-privacy[data-state=disabled] .inspector-settings-status{color:#7d4d0a;background-color:#fff5df;border-color:#dfc08f}.inspector-settings-private-content{border-top:1px solid #e4e4ec;margin-top:22px;padding-top:18px}.inspector-settings-private-content strong{color:#010507;font-size:13px;font-weight:700}.inspector-settings-private-content>p{color:#68686e;margin:4px 0 0;font-size:11px;line-height:1.45}.inspector-settings-private-content ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:12px 0 0;display:grid}.inspector-settings-private-content li{color:#3e3d48;align-items:center;gap:7px;min-width:0;font-size:12px;line-height:1.35;display:flex}.inspector-settings-private-content li span{color:#087653;flex:none;display:inline-flex}.inspector-settings-private-content li svg{width:14px;height:14px}.inspector-settings-policy-link{color:#3f176f;text-underline-offset:3px;outline-offset:2px;outline:2px solid #0000;align-items:center;gap:6px;min-height:36px;margin-top:20px;font-size:12px;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.inspector-settings-policy-link:hover{color:#6430ab}.inspector-settings-policy-link:focus-visible{outline-color:#6430ab}.inspector-settings-policy-link svg{width:14px;height:14px}.inspector-settings-visibility{margin-left:46px}.inspector-settings-visibility h3{font-size:14px;line-height:1.3}.inspector-settings-visibility p{color:#57575b;max-width:48ch;margin:8px 0 0;font-size:12px;line-height:1.55}.inspector-settings-dismiss{color:#3f176f;text-align:center;cursor:pointer;background-color:#f5f2ff;border:1px solid #c9c2e6;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:40px;margin-top:16px;padding:8px 12px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.inspector-settings-dismiss:hover{background-color:#eee8ff;border-color:#a69aca}.inspector-settings-dismiss:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.inspector-settings-dismiss svg{width:14px;height:14px}@media (max-width:720px){.inspector-settings{padding:28px 24px 40px}.inspector-settings-section-heading p{max-width:42ch}}@media (max-width:480px){.inspector-settings{padding-left:18px;padding-right:18px}}@container inspector-settings (max-width:520px){.inspector-settings-privacy,.inspector-settings-visibility{margin-left:0}.inspector-settings-status-row{flex-direction:column;gap:12px}.inspector-settings-private-content ul{grid-template-columns:1fr}.inspector-settings-dismiss{width:100%}}.inspector-home-card,.inspector-home-story{background-color:#ffffffd1;border:1px solid #deddea;border-radius:5px;padding:18px 18px 16px;position:relative}.inspector-home-eyebrow,.inspector-home-card-label,.inspector-home-meta{color:#57575b;margin:0;font-size:12px;font-weight:600}.inspector-home-title,.inspector-home-section-title,.inspector-home-card-title{color:#010507;margin:8px 0 0;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:28px;font-weight:600;line-height:1.15}.inspector-home-section-title{letter-spacing:-.015em;margin:0 0 14px;font-size:17px}.inspector-home-card-title{font-size:16px}.inspector-home-body,.inspector-home-card-copy{color:#57575b;max-width:52ch;margin:10px 0 0;font-size:15px;line-height:1.5}.inspector-home-section{margin-top:24px;position:relative}.inspector-home>.inspector-home-section:first-child{margin-top:0}.inspector-whats-new-preview+.inspector-home-section{margin-top:20px}.inspector-home-section-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.inspector-home-section-header .inspector-home-section-title{margin-bottom:0}.inspector-home-section-header>span{color:#68686e;font-size:11px;font-weight:600;line-height:1.35}.inspector-system-health-header>span[data-tone=success]{color:#087653}.inspector-system-health-header>span[data-tone=checking]{color:#8a5900}.inspector-system-health-header>span[data-tone=offline],.inspector-system-health-header>span[data-tone=error]{color:#b32d3b}.inspector-system-health-section{background-color:#f7f4fe;border:1px solid #c8c6e6;border-radius:5px;overflow:hidden}.inspector-system-health-section .inspector-system-health-header{background-color:#f7f4fe;border-bottom:1px solid #d5d3e4;align-items:center;min-height:76px;margin:0;padding:18px}.inspector-system-health-heading{min-width:0}.inspector-system-health-heading .inspector-home-section-title{color:#010507;letter-spacing:-.025em;font-size:18px}.inspector-system-health-state,.inspector-intelligence-hud-state{color:#087653;background-color:#e5f7f1;border:1px solid #85d3bb;border-radius:999px;flex:none;align-items:center;gap:6px;min-height:24px;padding:4px 8px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.inspector-system-health-state>span,.inspector-intelligence-hud-state>span{background-color:currentColor;border-radius:999px;width:6px;height:6px}.inspector-system-health-state[data-tone=checking],.inspector-intelligence-hud-state[data-tone=checking]{background-color:#fff5df;border-color:#dfc08f;color:#7d4d0a!important}.inspector-system-health-state[data-tone=offline],.inspector-system-health-state[data-tone=error],.inspector-intelligence-hud-state[data-tone=offline],.inspector-intelligence-hud-state[data-tone=error]{background-color:#fff0f1;border-color:#e7a7ac;color:#b32d3b!important}.inspector-system-health-state[data-tone=unavailable],.inspector-intelligence-hud-state[data-tone=unavailable]{background-color:#f0f0f4;border-color:#c8c8d2;color:#57575b!important}.inspector-system-health{background-color:#d5d3e4;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.inspector-system-health-signal{background-color:#fff;grid-template-columns:minmax(0,1fr);align-items:start;min-width:0;min-height:84px;padding:15px 16px 14px;display:grid}.inspector-system-health-copy{flex-direction:column;min-width:0;display:flex}.inspector-system-health-signal dt{color:#68686e;letter-spacing:.035em;text-transform:uppercase;font-size:10px;font-weight:700;line-height:1.3}.inspector-system-health-signal dd{color:#010507;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:5px 0 0;font-size:15px;font-weight:700;overflow:hidden}.inspector-system-health-signal small{color:#68686e;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-top:4px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;line-height:1.4;overflow:hidden}small.inspector-system-health-detail{letter-spacing:0;font-family:inherit;font-size:11px;font-weight:500;line-height:1.4}.inspector-system-health-url{cursor:help;outline:none;position:relative;overflow:visible!important}.inspector-system-health-url>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inspector-system-health-url:after{z-index:30;color:#f3f4f8;content:attr(data-full-value);opacity:0;overflow-wrap:anywhere;pointer-events:none;white-space:normal;background-color:#15171e;border:1px solid #3a3d49;border-radius:4px;width:max-content;max-width:min(360px,70vw);padding:7px 9px;font-size:10px;font-weight:500;line-height:1.45;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 7px);left:0;transform:translateY(3px);box-shadow:0 8px 20px #0105072e}.inspector-system-health-url:hover:after,.inspector-system-health-url:focus-visible:after{opacity:1;transform:translateY(0)}.inspector-system-health-url:focus-visible>span{outline-offset:2px;border-radius:3px;outline:2px solid #6430ab}.inspector-system-health-signal[data-tone=success] dd{color:#087653}.inspector-system-health-signal[data-tone=active] dd{color:#8a5900}.inspector-system-health-event-link{width:100%;min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;padding:0;display:block}.inspector-system-health-event-link>span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inspector-system-health-event-link>.inspector-system-health-event-type{color:#57575b;letter-spacing:.025em;background-color:#f1f1f3;border-radius:999px;align-items:center;width:fit-content;max-width:100%;padding:3px 6px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;font-weight:700;line-height:1.25;display:inline-flex}.inspector-system-health-event-link>small{color:#68686e;align-items:center;gap:6px;margin:5px 0 0;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:10px;font-weight:500;line-height:1.25;display:flex}.inspector-system-health-event-meta strong{color:#6430ab;text-underline-offset:3px;font-weight:700;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.inspector-system-health-signal[data-tone=error] .inspector-system-health-event-type{color:#b32d3b;background-color:#fff0f1}.inspector-system-health-signal[data-tone=success] .inspector-system-health-event-type{color:#087653;background-color:#e3f5ee}.inspector-system-health-signal[data-tone=active] .inspector-system-health-event-type{color:#8a5900;background-color:#fff5df}.inspector-system-health-event-link:hover .inspector-system-health-event-meta strong{text-decoration-color:currentColor}.inspector-system-health-event-link:focus-visible{outline-offset:3px;border-radius:3px;outline:2px solid #6430ab}.inspector-intelligence-hud{background-color:#f7f4fe;border:1px solid #c8c6e6;border-radius:5px;overflow:hidden}.inspector-intelligence-hud-header{justify-content:space-between;align-items:center;gap:24px;padding:18px;display:flex}.inspector-intelligence-hud[data-state=disconnected]{border-color:#bba5df}.inspector-intelligence-hud[data-state=disconnected] .inspector-intelligence-hud-header{align-items:center;min-height:132px;padding:22px}.inspector-intelligence-hud[data-state=disconnected] .inspector-intelligence-hud-header-actions{flex-direction:column;align-items:flex-end;gap:10px}.inspector-intelligence-hud-heading{min-width:0}.inspector-intelligence-hud-header-actions{flex:none;align-items:center;gap:8px;display:flex}.inspector-intelligence-hud-heading .inspector-home-section-title{margin:0;font-size:18px}.inspector-intelligence-hud-description{color:#4f4f55;max-width:64ch;margin:10px 0 0;font-size:12px;line-height:1.55}.inspector-intelligence-hud-action{color:#fff;background-color:#6430ab;border:1px solid #6430ab;border-radius:4px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:8px 11px;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.inspector-intelligence-hud-action:hover{background-color:#4e238c;border-color:#4e238c}.inspector-intelligence-hud-action svg{width:13px;height:13px}.inspector-intelligence-hud-connect-action{min-height:38px;padding:10px 14px;font-size:12px}.inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-header{background:linear-gradient(100deg,#fbfaff 0%,#f2eeff 52%,#edfaf5 100%);border-bottom:1px solid #d5d3e4;align-items:center;min-height:76px;padding:18px}.inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-heading .inspector-home-section-title{color:#010507;letter-spacing:-.025em;align-items:center;gap:8px;font-size:18px;display:inline-flex}.inspector-intelligence-mark{flex:none;width:17px;height:17px;display:block}.inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-header-actions{flex-direction:column;align-items:flex-end;gap:6px}.inspector-intelligence-sr-summary{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.inspector-intelligence-copy{padding:16px 18px 0;display:grid}.inspector-intelligence-copy-slide{opacity:0;flex-direction:column;grid-area:1/1;gap:4px;transition:opacity .32s cubic-bezier(.22,1,.36,1),transform .38s cubic-bezier(.22,1,.36,1);display:flex}.inspector-intelligence-copy-slide[data-position=after]{transform:translate(14px)}.inspector-intelligence-copy-slide[data-position=before]{transform:translate(-14px)}.inspector-intelligence-copy-slide[data-position=active]{opacity:1;transform:none}.inspector-intelligence-copy-slide>strong{color:#2b2b31;text-wrap:balance;max-width:52ch;font-size:12.5px;font-weight:650;line-height:1.4}.inspector-intelligence-copy-slide>span{color:#4f4f55;max-width:64ch;font-size:11px;line-height:1.55}.inspector-intelligence-install{justify-content:flex-end;align-items:center;gap:12px;display:flex}.inspector-intelligence-install-copy{cursor:pointer;min-height:34px;transition:background-color .14s,border-color .14s}.inspector-intelligence-install-copy svg{width:13px;height:13px}.inspector-intelligence-install[data-copy-state=copied] .inspector-intelligence-install-copy{color:#4e238c;background-color:#fff;border-color:#bba5df}.inspector-intelligence-install-secondary{color:#6430ab;align-items:center;gap:5px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.inspector-intelligence-install-secondary:hover{text-underline-offset:2px;text-decoration:underline}.inspector-intelligence-install-secondary svg{width:12px;height:12px}.inspector-intelligence-install-hint{color:#68686e;white-space:nowrap;margin:0;font-size:11px;font-weight:600;line-height:1.4}.inspector-intelligence-install-hint[data-tone=success]{color:#4e238c;font-weight:600}.inspector-intelligence-install-hint[data-tone=error]{color:#a3341f;font-weight:600}.inspector-intelligence-install-fallback{color:#4f4f55;-webkit-user-select:all;user-select:all;white-space:pre-wrap;word-break:break-word;background-color:#fff;border-bottom:1px solid #d5d3e4;max-height:96px;padding:10px 18px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10.5px;line-height:1.65;display:block;overflow:auto}.inspector-intelligence-story{background-color:#fff;container:cpk-intel-story/inline-size}.inspector-intelligence-story-stage{padding:16px 18px;display:grid}.inspector-intelligence-beat{visibility:hidden;opacity:0;grid-area:1/1;align-items:center;transition:opacity .32s cubic-bezier(.22,1,.36,1),transform .38s cubic-bezier(.22,1,.36,1),visibility 0s linear .38s;display:flex}.inspector-intelligence-beat[data-position=after]{transform:translate(14px)}.inspector-intelligence-beat[data-position=before]{transform:translate(-14px)}.inspector-intelligence-beat[data-position=active]{visibility:visible;opacity:1;transition:opacity .32s cubic-bezier(.22,1,.36,1),transform .38s cubic-bezier(.22,1,.36,1),visibility;transform:none}.inspector-intelligence-beat[data-beat-id=threads]{flex-direction:column;justify-content:center;gap:6px}.inspector-intelligence-threads{flex-direction:column;gap:6px;width:100%;display:flex}.inspector-intelligence-thread{opacity:0;background-color:#faf9fe;border:1px solid #e6e3f2;border-radius:4px;align-items:center;gap:9px;padding:8px 10px;transition:opacity .3s,transform .3s;display:flex;transform:translateY(3px)}.inspector-intelligence-thread>i{background-color:#9b8cc4;border-radius:999px;flex:none;width:6px;height:6px}.inspector-intelligence-thread>strong{color:#2b2b31;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.inspector-intelligence-thread>small{color:#68686e;flex:none;margin-left:auto;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:9.5px}.inspector-intelligence-thread[data-failed=true]{background-color:#fdf6f4;border-color:#f0d5cf}.inspector-intelligence-thread[data-failed=true]>i{background-color:#c2410c}.inspector-intelligence-thread[data-failed=true]>strong,.inspector-intelligence-thread[data-failed=true]>small{color:#8f2f1c;font-weight:650}.inspector-intelligence-story[data-beat=threads] .inspector-intelligence-thread{opacity:1;transition-delay:calc(var(--thread-index)*80ms + 90ms);transform:none}.inspector-intelligence-beat[data-beat-id=learning]{grid-template-columns:minmax(0,1.15fr) auto minmax(0,.85fr);align-items:center;gap:12px;display:grid}.inspector-intelligence-beat-col{flex-direction:column;gap:6px;min-width:0;display:flex}.inspector-intelligence-beat-label{color:#68686e;letter-spacing:.06em;text-transform:uppercase;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:9px;font-weight:600}.inspector-intelligence-signal,.inspector-intelligence-rule{color:#4f4f55;opacity:0;background-color:#faf9fe;border:1px solid #e6e3f2;border-radius:4px;align-items:flex-start;gap:6px;padding:6px 8px;font-size:10.5px;line-height:1.4;transition:opacity .3s,transform .3s;display:flex;transform:translateY(3px)}.inspector-intelligence-signal{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inspector-intelligence-rule{color:#21543f;background-color:#f4fbf8;border-color:#cfe9dd;font-weight:600}.inspector-intelligence-rule>i{color:#1f8a5f;flex:none;align-items:center;display:inline-flex}.inspector-intelligence-rule>i svg{stroke-width:2.4px;width:11px;height:11px}.inspector-intelligence-story[data-beat=learning] .inspector-intelligence-signal,.inspector-intelligence-story[data-beat=learning] .inspector-intelligence-rule{opacity:1;transform:none}.inspector-intelligence-story[data-beat=learning] .inspector-intelligence-signal{transition-delay:calc(var(--signal-index)*80ms + .1s)}.inspector-intelligence-story[data-beat=learning] .inspector-intelligence-rule{transition-delay:calc(var(--rule-index)*80ms + .42s)}.inspector-intelligence-beat-flow{color:#9b8cc4;justify-content:center;align-items:center;display:inline-flex}.inspector-intelligence-beat-flow svg{width:15px;height:15px}.inspector-intelligence-beat[data-beat-id=skill]{justify-content:center}.inspector-intelligence-skill-file{background-color:#fff;border:1px solid #d5d3e4;border-radius:5px;width:min(100%,30rem);overflow:hidden;box-shadow:0 1px 2px #100c280f}.inspector-intelligence-skill-file>header{background-color:#faf9fe;border-bottom:1px solid #ebe9f4;align-items:center;gap:7px;padding:7px 10px;display:flex}.inspector-intelligence-skill-file>header svg{color:#6430ab;width:12px;height:12px}.inspector-intelligence-skill-file>header strong{color:#2b2b31;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10.5px;font-weight:600}.inspector-intelligence-skill-file>header em{color:#68686e;letter-spacing:.05em;text-transform:uppercase;margin-left:auto;font-size:9px;font-style:normal;font-weight:600}.inspector-intelligence-skill-code{flex-direction:column;padding:8px 0;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10.5px;line-height:1.75;display:flex}.inspector-intelligence-skill-code>span{color:#4f4f55;gap:10px;padding:0 12px;display:flex}.inspector-intelligence-skill-code>span:before{color:#a9a7bb;content:attr(data-line);text-align:right;min-width:8px}.inspector-intelligence-skill-code>span>b{color:#6430ab;font-weight:600}.inspector-intelligence-skill-code>span[style*=--rule-index]{opacity:0;transition:opacity .26s,transform .26s;transform:translateY(2px)}.inspector-intelligence-story[data-beat=skill] .inspector-intelligence-skill-code>span[style*=--rule-index]{opacity:1;transition-delay:calc(var(--rule-index)*.11s + .26s);transform:none}.inspector-intelligence-beat[data-beat-id=intelligence]{flex-direction:column;justify-content:center;gap:12px}.inspector-intelligence-chain{justify-content:center;align-items:stretch;gap:6px;width:100%;display:flex}.inspector-intelligence-chain-step{opacity:0;background-color:#faf9fe;border:1px solid #e6e3f2;border-radius:5px;flex-direction:column;flex:1 1 0;align-items:flex-start;gap:3px;min-width:0;padding:9px 10px;transition:opacity .28s,transform .28s;display:flex;transform:translateY(4px)}.inspector-intelligence-chain-step>i{color:#6430ab;display:inline-flex}.inspector-intelligence-chain-step>i svg{width:14px;height:14px}.inspector-intelligence-chain-step>strong{color:#2b2b31;font-size:11px;font-weight:700;line-height:1.25}.inspector-intelligence-chain-step>small{color:#68686e;font-size:9.5px;line-height:1.3}.inspector-intelligence-chain-arrow{color:#bba5df;opacity:0;flex:none;align-items:center;transition:opacity .28s;display:inline-flex}.inspector-intelligence-chain-arrow svg{width:13px;height:13px}.inspector-intelligence-story[data-beat=intelligence] .inspector-intelligence-chain-step,.inspector-intelligence-story[data-beat=intelligence] .inspector-intelligence-chain-arrow{opacity:1;transition-delay:calc(var(--step-index)*90ms + 80ms);transform:none}.inspector-intelligence-chain-proof{color:#21543f;opacity:0;background-color:#f4fbf8;border:1px solid #cfe9dd;border-radius:999px;align-self:center;align-items:center;gap:6px;padding:5px 11px;font-size:10.5px;font-weight:600;transition:opacity .3s,transform .3s;display:inline-flex;transform:translateY(3px)}.inspector-intelligence-chain-proof svg{color:#1f8a5f;width:12px;height:12px}.inspector-intelligence-chain-proof code{font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;font-weight:600}.inspector-intelligence-story[data-beat=intelligence] .inspector-intelligence-chain-proof{opacity:1;transition-delay:.46s;transform:none}.inspector-intelligence-story-rail{border-top:1px solid #ebe9f4;align-items:center;gap:2px;padding:8px 18px 9px;display:flex}.inspector-intelligence-story-tab{color:#68686e;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:3px 7px 5px;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:10.5px;font-weight:600;transition:color .16s;position:relative}.inspector-intelligence-story-tab:after{content:\"\";transform-origin:0;background-color:#6430ab;border-radius:2px;height:1.5px;transition:transform .28s cubic-bezier(.22,1,.36,1);position:absolute;bottom:1px;left:7px;right:7px;transform:scaleX(0)}.inspector-intelligence-story-tab:hover{color:#2b2b31}.inspector-intelligence-story-tab[data-active=true]{color:#4e238c}.inspector-intelligence-story-tab[data-active=true]:after{transform:scaleX(1)}@container cpk-intel-story (max-width:30rem){.inspector-intelligence-chain-step>small{display:none}.inspector-intelligence-story-rail{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.inspector-intelligence-copy-slide,.inspector-intelligence-thread,.inspector-intelligence-beat,.inspector-intelligence-signal,.inspector-intelligence-rule,.inspector-intelligence-chain-step,.inspector-intelligence-chain-arrow,.inspector-intelligence-chain-proof,.inspector-intelligence-skill-code>span[style*=--rule-index],.inspector-intelligence-story-tab:after{transition-duration:0s;transition-delay:0s}}.inspector-intelligence-hud-details{background-color:#d5d3e4;border-top:1px solid #d5d3e4;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:1px;display:grid}.inspector-intelligence-hud-details>section{background-color:#fff;min-width:0;padding:15px 18px 17px}.inspector-intelligence-hud-detail-label{color:#68686e;font-size:11px;font-weight:600;display:block}.inspector-intelligence-hud-detail-value{color:#010507;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:5px 0 0;font-size:14px;font-weight:700;display:block;overflow:hidden}.inspector-intelligence-hud-detail-subvalue{color:#68686e;text-transform:capitalize;margin-top:3px;font-size:10px;font-weight:500;display:block}.inspector-intelligence-hud-plan{grid-template-columns:minmax(0,1fr) minmax(120px,1fr);align-items:start;gap:24px;display:grid}.inspector-intelligence-hud-usage{min-width:0}.inspector-intelligence-hud-plan-action{color:#6430ab;text-underline-offset:3px;background-color:#0000;border:0;border-radius:0;gap:4px;min-height:auto;margin-top:9px;padding:0;font-size:10px;font-weight:700;line-height:1.2;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px}.inspector-intelligence-hud-plan-action:hover{color:#4e238c;background-color:#0000;border-color:#0000;text-decoration-color:currentColor}.inspector-intelligence-hud-plan-action svg{width:11px;height:11px}.inspector-home-usage-bar{background-color:#dbdbe5;border-radius:999px;width:min(160px,100%);height:5px;margin-top:8px;display:block;overflow:hidden}.inspector-home-usage-bar>span{background-color:#bec2ff;height:100%;display:block}.inspector-home-feature-groups{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));align-items:start;gap:12px;display:grid}.inspector-home-feature-group{background-color:#fff;border:1px solid #d5d3e4;border-radius:5px;overflow:visible}.inspector-home-feature-group-header{color:#57575b;background-color:#f7f7f9;border-bottom:1px solid #e4e4ec;border-radius:4px 4px 0 0;justify-content:space-between;align-items:center;gap:12px;min-height:40px;padding:9px 12px;display:flex}.inspector-home-feature-group-header strong{font-size:12px;font-weight:700}.inspector-home-feature-group-header>span{background-color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;min-height:20px;padding:2px 6px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;font-weight:700;display:inline-flex}.inspector-home-feature-group[data-feature-state-group=active] .inspector-home-feature-group-header{color:#087653;background-color:#e5f7f1;border-color:#b9e3d6}.inspector-home-feature-list{background-color:#fff;flex-direction:column;margin:0;display:flex}.inspector-home-feature{color:#010507;background-color:#fff;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:52px;padding:9px 12px;font-size:12px;font-weight:600;display:grid;container-type:inline-size}.inspector-home-feature+.inspector-home-feature{border-top:1px solid #ececf1}.inspector-home-feature:last-child{border-radius:0 0 4px 4px}.inspector-home-feature-group-empty{color:#68686e;margin:0;padding:15px 12px;font-size:11px}.inspector-home-feature:hover{background-color:#f7f7f9}.inspector-home-feature-label{min-width:0;color:inherit;cursor:pointer;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.inspector-home-feature-label>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.inspector-home-feature-label-icon{flex:none;display:inline-flex!important;overflow:visible!important}.inspector-home-feature-label-icon svg{width:12px;height:12px}.inspector-home-feature-label:hover{color:#3f176f;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.inspector-home-feature-label:focus-visible{outline-offset:2px;border-radius:3px;outline:2px solid #6430ab}.inspector-home-feature-actions{justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.inspector-home-feature-status{flex:none;justify-content:center;align-items:center;width:18px;height:28px;display:inline-flex}.inspector-home-feature-status>span{background-color:#fff;border:1px solid #9ca0ab;border-radius:999px;width:8px;height:8px}.inspector-home-feature[data-state=on] .inspector-home-feature-status>span{background-color:#087653;border-color:#087653}.inspector-home-feature[data-state=off]{color:#68686e}.inspector-home-feature-action{color:#4f4f55;min-width:28px;height:28px;min-height:28px;font:inherit;white-space:nowrap;cursor:pointer;background-color:#fff;border:1px solid #d5d3e4;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:10px;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.inspector-home-feature-action svg{width:14px;height:14px}.inspector-home-feature-action-icon{flex:none;display:inline-flex!important;overflow:visible!important}.inspector-home-feature-action-label{line-height:1}.inspector-home-feature-action.inspector-system-health-url:after{content:none;left:50%;right:auto;transform:translate(-50%,3px)}.inspector-home-feature-action.inspector-system-health-url:hover:after,.inspector-home-feature-action.inspector-system-health-url:focus-visible:after{transform:translate(-50%)}.inspector-home-feature-action:hover{color:#3f176f;background-color:#f7f4fe;border-color:#bba5df}.inspector-home-feature-action:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.inspector-home-feature-action[data-copy-state=copied]{color:#087653;background-color:#e5f7f1;border-color:#b9e3d6}.inspector-home-feature-action[data-copy-state=error]{color:#b32d3b;background-color:#fff0f1;border-color:#e7a7ac}@container (max-width:286px){.inspector-home-feature-action{width:28px;padding:0}.inspector-home-feature-action-label{display:none!important}.inspector-home-feature-action.inspector-system-health-url:after{content:attr(data-full-value)}}.inspector-home-features-empty{color:#57575b;border-top:1px solid #deddea;border-bottom:1px solid #deddea;margin:14px 0 0;padding:16px 0;font-size:12px}.inspector-home-news{gap:12px;display:grid}.inspector-whats-new-preview{color:#010507;background-color:#f7f4fe;border:1px solid #c8c6e6;border-radius:5px;align-items:stretch;width:100%;min-height:64px;display:flex;position:relative;overflow:hidden;container-type:inline-size}.inspector-whats-new-preview:has(.inspector-whats-new-preview-body:hover){background-color:#f1ebfc;border-color:#8f91d7}.inspector-whats-new-preview-body{min-width:0;color:inherit;text-align:left;cursor:pointer;background-color:#0000;border:0;flex:auto;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.inspector-whats-new-preview-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.inspector-whats-new-preview-title{align-items:center;gap:8px;min-width:0;display:flex}.inspector-whats-new-preview-copy strong{text-overflow:ellipsis;white-space:nowrap;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:13px;line-height:1.25;overflow:hidden}.inspector-whats-new-preview-copy>span:last-child{color:#4e4c63;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.4;overflow:hidden}.inspector-whats-new-preview-action{color:#3f176f;white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.inspector-whats-new-preview-action svg{width:15px;height:15px}@container (max-width:640px){.inspector-whats-new-preview-body{grid-template-columns:minmax(0,1fr)}.inspector-whats-new-preview-action{display:none}}.inspector-whats-new-preview-dismiss{color:#68686e;cursor:pointer;background-color:#0000;border:0;border-radius:5px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.inspector-whats-new-preview-dismiss:hover{color:#3f176f;background-color:#6430ab1a}.inspector-whats-new-preview-dismiss svg{width:14px;height:14px}@media (max-width:720px){.inspector-account-cta{width:32px;padding-inline:0}.inspector-account-cta-label{display:none}.inspector-home{padding:24px 22px 34px}.inspector-intelligence-hud-header{flex-wrap:wrap}.inspector-intelligence-hud-details{grid-template-columns:1fr}.inspector-intelligence-hud-plan{grid-template-columns:repeat(2,minmax(0,1fr))}.inspector-whats-new-preview-action{display:none}}@media (max-width:600px){.inspector-system-health{grid-template-columns:1fr}}@media (max-width:480px){.inspector-home-feature{grid-template-columns:18px minmax(0,1fr);gap:8px}.inspector-home-feature-actions{grid-column:1/-1;justify-content:flex-end}.inspector-system-health-section .inspector-system-health-header{align-items:flex-start}.inspector-intelligence-hud-header{flex-direction:column;align-items:stretch}.inspector-intelligence-hud-header-actions{justify-content:space-between}.inspector-intelligence-hud-header-actions .inspector-intelligence-hud-action,.inspector-intelligence-hud-plan{width:100%}.inspector-intelligence-hud-plan{grid-template-columns:1fr;align-items:stretch}.inspector-intelligence-hud-plan-action{justify-self:start}}.inspector-whats-new{--updates-text:#1b1924;--updates-muted:#6c687c;--updates-border:#e6e4ef;--updates-hover:#f8f7ff;--updates-accent:#6554b8}.inspector-whats-new .inspector-home-news{gap:0;max-width:70ch;margin-top:0}.inspector-whats-new-header{border-bottom:1px solid var(--updates-border);padding:0 0 24px}.inspector-whats-new-header .inspector-home-title{color:var(--updates-text);letter-spacing:-.025em;margin:0;font-size:24px;line-height:1.3}.inspector-whats-new-list{margin:0;padding:0;list-style:none}.cpk-notification-row{border:0;border-bottom:1px solid var(--updates-border);width:100%;color:var(--updates-text);font:inherit;text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:20px;padding:22px 12px;display:flex}.cpk-notification-row:hover,.inspector-whats-new-back:hover{background:var(--updates-hover)}.cpk-notification-row:focus-visible,.inspector-whats-new-back:focus-visible{outline:2px solid var(--updates-accent);outline-offset:-2px;border-radius:4px}.cpk-notification-copy{gap:8px;min-width:0;display:grid}.cpk-notification-copy strong{color:var(--updates-text);overflow-wrap:anywhere;font-size:15px;font-weight:600;line-height:1.5}.cpk-notification-meta{color:var(--updates-muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;line-height:1.5;display:flex}.cpk-notification-unread{color:var(--updates-accent);align-items:center;gap:6px;display:inline-flex}.cpk-notification-unread:before{content:\"\";background:currentColor;border-radius:50%;width:5px;height:5px}.cpk-notification-chevron,.inspector-whats-new-back>span{width:16px;height:16px;color:var(--updates-muted);flex:none;display:flex}.cpk-notification-chevron svg,.inspector-whats-new-back svg{width:100%;height:100%}.inspector-whats-new-back{min-height:32px;color:var(--updates-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-self:start;align-items:center;gap:8px;margin:-6px 0 24px -8px;padding:6px 8px;font-size:13px;display:inline-flex}.inspector-whats-new-empty{color:var(--updates-muted);margin:0;padding:28px 0;font-size:14px}.inspector-whats-new-empty .inspector-home-card-title{color:#1b1924;margin:0}.inspector-whats-new-empty .inspector-home-card-copy{max-width:48ch;margin:8px 0 0}.inspector-home-story-featured{padding:22px}.inspector-home-story-link{color:inherit;cursor:pointer;text-decoration:none;display:block}.inspector-home-story-link:hover{background-color:#fff;border-color:#8f91d7}.inspector-home-story[data-unread=true]{border-color:#bec2ff;padding-right:64px;box-shadow:0 0 0 1px #6430ab}.inspector-home-story-unread{color:#fff;letter-spacing:.04em;text-transform:uppercase;background-color:#6430ab;border-radius:999px;align-items:center;min-height:18px;padding:0 7px;font-family:Spline Sans Mono,ui-monospace,monospace;font-size:10px;font-weight:700;display:inline-flex}.inspector-nav-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:opacity .18s,width .22s;overflow:hidden}.inspector-nav-control{color:#57575b;min-height:32px;font:inherit;text-align:left;outline-offset:-2px;cursor:pointer;background-color:#0000;border:1px solid #0000;border-radius:5px;outline:2px solid #0000;flex:none;justify-content:flex-start;align-items:center;gap:6px;padding:6px 9px;font-size:12px;font-weight:600;line-height:1.25;display: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-account-control:focus-visible,[data-inspector-thread-cta]:focus-visible,[data-inspector-sidebar-intelligence-action]:focus-visible,[data-inspector-whats-new-preview]:focus-visible,[data-inspector-whats-new-dismiss]:focus-visible,[data-inspector-home-intelligence-action]:focus-visible,.inspector-home-feature:focus-visible,[data-inspector-action-placement=threads-footer]:focus-visible{outline-offset:2px;outline:2px solid #6430ab!important}.inspector-sidebar .inspector-nav-control:focus-visible,.inspector-sidebar .inspector-sidebar-label:focus-visible,.inspector-sidebar [data-inspector-thread-cta]:focus-visible{outline-offset:-2px!important}.inspector-account-control{color:#57575b;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:#3f176f;background-color:#6430ab17}:host ::selection{color:#010507;background-color:#cfd2ff}:host *{scrollbar-color:#aaa9c1 transparent;scrollbar-width:thin}:host ::-webkit-scrollbar{width:8px;height:8px}:host ::-webkit-scrollbar-thumb{background:#aaa9c1 padding-box padding-box;border:2px solid #0000;border-radius:999px}.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],[data-inspector-account-strip] button,[data-inspector-account-strip] a{cursor:pointer}@media (prefers-reduced-motion:reduce){.inspector-sidebar,.inspector-nav-label,.inspector-sidebar[data-icon-rail=true] .inspector-agent-selector>[data-context-dropdown-root=true]>button{transition:none}.inspector-icon-rail-menu{transition:none;animation:none}}.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:#0000;border:1px solid #d5d3e4;border-radius:5px;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:#f7f4fe;border-color:#c8c6e6}.cpk-threads-overview-video{opacity:0;transition:opacity .22s}.cpk-threads-overview{background-color:#f7f7f9;flex:1;justify-content:center;align-items:center;min-width:0;padding:32px;display:flex}.cpk-threads-overview-content{color:#57575b;width:100%;max-width:440px}.cpk-locked-feature{box-sizing:border-box;background:#fff;align-items:flex-start;width:100%;min-height:100%;padding:52px 24px 56px;display:flex;position:relative;overflow:auto;container:cpk-locked-feature/inline-size}.cpk-locked-feature-layout{box-sizing:border-box;width:100%;min-width:0;max-width:600px;margin:0 auto}.cpk-locked-feature-hero{box-sizing:border-box;grid-template-columns:minmax(0,1fr);gap:36px;width:100%;min-width:0;margin:0 auto;display:grid}.cpk-locked-feature-copy{color:#57575b;min-width:0}.cpk-locked-feature-name{color:#5558b2;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:20px;font-size:11px;font-weight:700;line-height:1.25;display:inline-flex}.cpk-locked-feature-icon{width:15px;height:15px;color:inherit;flex:none;justify-content:center;align-items:center;display:inline-flex}.cpk-locked-feature-icon svg{width:15px;height:15px;display:block}.cpk-locked-feature-title{color:#010507;letter-spacing:-.025em;max-width:680px;margin:0 0 18px;font-size:clamp(25px,2.6vw,34px);font-weight:600;line-height:1.08}.cpk-locked-feature-description{color:#57575b;max-width:680px;margin:0 0 28px;font-size:14px;line-height:1.6}.cpk-locked-feature-media{justify-self:stretch;width:100%;min-width:0}.cpk-threads-overview-video-frame.cpk-locked-feature-video{background:#000;border-color:#e4e4ec;border-radius:12px;width:100%;min-width:0;max-width:none;margin:0;box-shadow:0 14px 32px #2c2b441f}.cpk-locked-feature-outline{box-sizing:border-box;width:100%;max-width:none;margin:40px 0 0}.cpk-locked-feature-outline-list{margin:0;display:block}.cpk-locked-feature-outline-item{min-width:0;padding:0 0 28px;display:block}.cpk-locked-feature-outline-item+.cpk-locked-feature-outline-item{border-top:1px solid #e4e4ec;padding-top:28px}.cpk-locked-feature-outline-item h3,.cpk-locked-feature-outline-item p{margin:0}.cpk-locked-feature-outline-item h3{color:#010507;letter-spacing:-.018em;align-items:center;gap:10px;margin-bottom:10px;font-size:20px;font-weight:600;line-height:1.25;display:flex}.cpk-locked-feature-outline-icon{color:#5558b2;flex:0 0 20px;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.cpk-locked-feature-outline-icon svg{width:18px;height:18px}.cpk-locked-feature-outline-item p{color:#57575b;max-width:68ch;font-size:15px;line-height:1.65}.cpk-threads-overview-title{color:#010507;margin:0 0 10px;font-size:20px;font-weight:600;line-height:1.25}.cpk-threads-overview-copy{color:#57575b;margin:0 0 16px;font-size:13px;line-height:1.55}.cpk-threads-overview-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cpk-locked-feature .cpk-locked-feature-setup-cta,.cpk-locked-feature .cpk-threads-overview-action{box-sizing:border-box;align-items:center;height:44px;min-height:44px;padding:12px 16px;font-size:13px;font-weight:700;line-height:1}.cpk-threads-overview-action{outline-offset:2px;cursor:pointer;border:1px solid #0000;border-radius:7px;outline:2px solid #0000;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:8px 12px;font-size:12px;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}[data-inspector-feature-setup-prompt][data-copy-state=copied]{color:#fff;background-color:#087653;border-color:#087653}[data-inspector-feature-setup-prompt][data-copy-state=error]{color:#fff;background-color:#b32d3b;border-color:#b32d3b}[data-inspector-feature-setup-prompt]:focus-visible{outline-offset:2px;outline:2px solid #6430ab}.cpk-threads-overview-action-primary{color:#fff;background-color:#010507;border-color:#010507}.cpk-threads-overview-action-primary:hover{background-color:#2b2b2b;border-color:#2b2b2b}.cpk-threads-overview-action-secondary{color:#010507;background-color:#fff;border-color:#dbdbe5}.cpk-threads-overview-action-secondary:hover{background-color:#fff;border-color:#afafb7}.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:5px;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}.cpk-threads-tour-launch{z-index:2;color:#57575b;outline-offset:2px;cursor:pointer;background-color:#fff;border:1px solid #dbdbe5;border-radius:7px;outline:2px solid #0000;padding:7px 10px;font-size:12px;font-weight:600;position:absolute;bottom:16px;right:16px;box-shadow:0 8px 18px #01050714}.cpk-threads-tour{z-index:3;color:#57575b;background-color:#fff;border:1px solid #dbdbe5;border-radius:10px;width:min(340px,100% - 32px);padding:14px;position:absolute;bottom:16px;right:16px;box-shadow:0 16px 36px #01050724}.cpk-threads-tour-step{color:#087653;text-transform:uppercase;margin-bottom:8px;font-family:Spline Sans Mono,monospace;font-size:10px;font-weight:600}.cpk-threads-tour-title{color:#010507;margin-bottom:6px;font-size:14px;font-weight:600;line-height:1.35}.cpk-threads-tour-copy{color:#57575b;font-size:12px;line-height:1.5}.cpk-threads-tour-actions{justify-content:space-between;gap:8px;margin-top:14px;display:flex}.cpk-threads-tour-nav{gap:8px;display:flex}.cpk-threads-tour-skip,.cpk-threads-tour-button{font:inherit;outline-offset:2px;cursor:pointer;border-radius:7px;outline:2px solid #0000;padding:7px 10px;font-size:12px;font-weight:600}.cpk-threads-overview-action:focus-visible,.cpk-threads-tour-launch:focus-visible,.cpk-threads-tour-skip:focus-visible,.cpk-threads-tour-button:focus-visible{outline-color:#6430ab}.cpk-threads-tour-skip{color:#68686e;background-color:#0000;border:0;padding-inline:0}.cpk-threads-tour-button-secondary{color:#57575b;background-color:#fff;border:1px solid #dbdbe5}.cpk-threads-tour-button-primary{color:#fff;background-color:#010507;border:1px solid #010507}.cpk-threads-tour-button:disabled{cursor:not-allowed;opacity:.45}@container cpk-locked-feature (max-width:440px){.cpk-locked-feature .cpk-threads-overview-actions{flex-direction:column;align-items:stretch}.cpk-locked-feature .cpk-locked-feature-setup-cta,.cpk-locked-feature .cpk-threads-overview-action{width:100%}}@media (max-width:720px){.cpk-threads-overview{padding:24px}}@media (prefers-reduced-motion:reduce){.cpk-threads-overview-video{transition:none}}.inspector-window[data-color-scheme=dark]{color-scheme:dark;background-color:var(--cpk-inspector-surface-dark)!important;color:#f3f4f8!important;border-color:#7b7d89!important}.inspector-window[data-color-scheme=dark] .inspector-shell,.inspector-window[data-color-scheme=dark] .inspector-main,.inspector-window[data-color-scheme=dark] #cpk-main-scroll{color:#f3f4f8!important;background-color:#111319!important}.inspector-window[data-color-scheme=dark] .resize-handle,.inspector-window[data-color-scheme=dark] .edge-resize-handle,.inspector-window[data-color-scheme=dark] .dock-resize-handle{background:0 0!important}.inspector-window[data-color-scheme=dark] .drag-handle,.inspector-window[data-color-scheme=dark] .inspector-account-strip{color:#f3f4f8!important;background:#15171e!important;border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .inspector-account-logo{filter:brightness(0)invert();clip-path:inset(0 20% 0 0)}.inspector-window[data-color-scheme=dark] .inspector-account-logo-accent{filter:none;display:block}.inspector-window[data-color-scheme=dark] .inspector-agent-placeholder{color:#b8bbc7!important;border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .inspector-account-control{color:#b8bbc7!important;border:0!important}.inspector-window[data-color-scheme=dark] .inspector-account-control:hover,.inspector-window[data-color-scheme=dark] .inspector-account-control-active{color:#d8d9ff!important;background-color:#292c38!important}.inspector-window[data-color-scheme=dark] .inspector-account-cta{color:#d8d9ff;background-color:#292b43}.inspector-window[data-color-scheme=dark] .inspector-account-cta:hover{color:#fff;background-color:#353854}.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu{box-shadow:0 12px 28px #00000052;color:#f3f4f8!important;background-color:#111319!important;border-color:#5c6173!important}.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button,.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button span{color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button:hover,.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button:focus-visible,.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button:hover span,.inspector-window[data-color-scheme=dark] .inspector-window-layout-menu button:focus-visible span{color:#fff!important;background-color:#3a3f52!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar .inspector-agent-selector>[data-context-dropdown-root=true]>button{color:#f3f4f8!important;background-color:#20232c!important;border-color:#464957!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar .inspector-agent-selector>[data-context-dropdown-root=true]>button:hover{background-color:#292c38!important;border-color:#777aae!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar .inspector-agent-selector>[data-context-dropdown-root=true]>button>span:last-child{color:#aeb1bd!important}.inspector-window[data-color-scheme=dark] .inspector-context-dropdown-icon{color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar[data-icon-rail=true] .inspector-agent-selector>[data-context-dropdown-root=true]>button{color:#fff!important;background-color:#2f3340!important;border-color:#8b90a5!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar[data-icon-rail=true] .inspector-context-dropdown-icon,.inspector-window[data-color-scheme=dark] .inspector-sidebar[data-icon-rail=true] .inspector-agent-placeholder{color:#fff!important}.inspector-window[data-color-scheme=dark] [data-context-dropdown-root=true]>div{color:#f3f4f8!important;box-shadow:none!important;background-color:#191c24!important;border-color:#464957!important}.inspector-window[data-color-scheme=dark] [data-context-dropdown-root=true]>div button:hover,.inspector-window[data-color-scheme=dark] [data-context-dropdown-root=true]>div button:focus{color:#f3f4f8!important;background-color:#343746!important}.inspector-window[data-color-scheme=dark] .inspector-sidebar{color:#f3f4f8;background-color:#15171e;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-sidebar-label{color:#8f93a1}.inspector-window[data-color-scheme=dark] .inspector-sidebar-rail-tooltip{color:#191c24;background-color:#e9e9f1;box-shadow:0 7px 18px #00000047}.inspector-window[data-color-scheme=dark] .inspector-nav-control,.inspector-window[data-color-scheme=dark] .inspector-sidebar-toggle{color:#b8bbc7}.inspector-window[data-color-scheme=dark] .inspector-nav-control:hover,.inspector-window[data-color-scheme=dark] .inspector-sidebar-toggle:hover{color:#fff;background-color:#22252f}.inspector-window[data-color-scheme=dark] .inspector-nav-control-active{color:#d8d9ff;background-color:#292b43;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-sidebar-agent-scope{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-card{background-color:#191c24;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-copy strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-copy>span,.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-card[data-state=disconnected] .inspector-sidebar-status-copy>span{color:#9da1af}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-action{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-sidebar-status-action:hover{color:#fff;background-color:#292b43}.inspector-window[data-color-scheme=dark] .inspector-sidebar-intelligence-setup{color:#d8d9ff;background-color:#292b43;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-sidebar-intelligence-setup:hover{background-color:#343653;border-color:#777aae}.inspector-window[data-color-scheme=dark] .inspector-sidebar-intelligence-setup .inspector-sidebar-status-copy strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-sidebar-setup-arrow{background-color:#caccff1f}@media (prefers-reduced-motion:reduce){.inspector-sidebar-intelligence-setup{animation:none}}.inspector-window[data-color-scheme=dark] .inspector-home{background-color:#111319}.inspector-window[data-color-scheme=dark] .inspector-settings{color:#f3f4f8;background-color:#111319}.inspector-window[data-color-scheme=dark] .inspector-settings-header,.inspector-window[data-color-scheme=dark] .inspector-settings-section,.inspector-window[data-color-scheme=dark] .inspector-settings-privacy,.inspector-window[data-color-scheme=dark] .inspector-settings-visibility,.inspector-window[data-color-scheme=dark] .inspector-settings-private-content{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-settings-title,.inspector-window[data-color-scheme=dark] .inspector-settings-section-heading h2,.inspector-window[data-color-scheme=dark] .inspector-settings-status-row h3,.inspector-window[data-color-scheme=dark] .inspector-settings-visibility h3,.inspector-window[data-color-scheme=dark] .inspector-settings-private-content strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-settings-subtitle,.inspector-window[data-color-scheme=dark] .inspector-settings-section-heading p,.inspector-window[data-color-scheme=dark] .inspector-settings-status-row p,.inspector-window[data-color-scheme=dark] .inspector-settings-visibility p,.inspector-window[data-color-scheme=dark] .inspector-settings-private-content>p{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-settings-section-icon{color:#d8d9ff;background-color:#292b43;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-settings-private-content li{color:#c9ccd6}.inspector-window[data-color-scheme=dark] .inspector-settings-private-content li span{color:#75d8b9}.inspector-window[data-color-scheme=dark] .inspector-settings-status{color:#8ce1c5;background-color:#173b32;border-color:#347d69}.inspector-window[data-color-scheme=dark] .inspector-settings-privacy[data-state=disabled] .inspector-settings-status{color:#f2cf8f;background-color:#342916;border-color:#866932}.inspector-window[data-color-scheme=dark] .inspector-settings-policy-link{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-settings-policy-link:hover{color:#fff}.inspector-window[data-color-scheme=dark] .inspector-settings-dismiss{color:#ded7ff;background-color:#272438;border-color:#5d5975}.inspector-window[data-color-scheme=dark] .inspector-settings-dismiss:hover{background-color:#322e47;border-color:#8179a7}.inspector-window[data-color-scheme=dark] .inspector-settings-dismiss:focus-visible{outline-color:#bec2ff}.inspector-window[data-color-scheme=dark] .inspector-home-card,.inspector-window[data-color-scheme=dark] .inspector-home-story,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud,.inspector-window[data-color-scheme=dark] .inspector-home-feature-list,.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview{color:#f3f4f8;background:#191c24;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud[data-state=disconnected]{background-color:#1d1e2b;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud[data-state=disconnected] .inspector-intelligence-hud-description{color:#c5c7d0}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-header{background:linear-gradient(100deg,#1d1e2b 0%,#221f31 54%,#1a2523 100%);border-bottom-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud[data-mode=install] .inspector-intelligence-hud-heading .inspector-home-section-title{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-hint{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-hint[data-tone=success]{color:#d5cbff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-hint[data-tone=error]{color:#ffb3a1}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install[data-copy-state=copied] .inspector-intelligence-install-copy{color:#d5cbff;background-color:#0000;border-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-secondary{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-install-fallback{color:#c5c7d0;background-color:#15171e;border-bottom-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story{background-color:#15171e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-beat-label,.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-step>small,.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread>small,.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file>header em{color:#8f93a1}.inspector-window[data-color-scheme=dark] .inspector-intelligence-copy-slide>strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-copy-slide>span{color:#c5c7d0}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread{background-color:#1c1f2b;border-color:#33364a}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread>strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread>i{background-color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread[data-failed=true]{background-color:#2a1a16;border-color:#5a3129}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread[data-failed=true]>i{background-color:#f97316}.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread[data-failed=true]>strong,.inspector-window[data-color-scheme=dark] .inspector-intelligence-thread[data-failed=true]>small{color:#ffb3a1}.inspector-window[data-color-scheme=dark] .inspector-intelligence-signal{color:#c5c7d0;background-color:#1c1f2b;border-color:#33364a}.inspector-window[data-color-scheme=dark] .inspector-intelligence-rule,.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-proof{color:#8fd9b8;background-color:#16241f;border-color:#2f5748}.inspector-window[data-color-scheme=dark] .inspector-intelligence-rule>i,.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-proof svg{color:#5be4bb}.inspector-window[data-color-scheme=dark] .inspector-intelligence-beat-flow{color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file{box-shadow:none;background-color:#191c24;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file>header{background-color:#1c1f2b;border-bottom-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file>header strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-file>header svg,.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-code>span>b,.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-step>i{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-code>span{color:#c5c7d0}.inspector-window[data-color-scheme=dark] .inspector-intelligence-skill-code>span:before{color:#6d7180}.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-step{background-color:#1c1f2b;border-color:#33364a}.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-step>strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-chain-arrow{color:#666a9e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-rail{border-top-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-tab{color:#8f93a1}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-tab:hover{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-tab[data-active=true]{color:#d5cbff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-story-tab:after{background-color:#a78bfa}.inspector-window[data-color-scheme=dark] .inspector-system-health,.inspector-window[data-color-scheme=dark] .inspector-system-health-section{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-system-health-section{background-color:#191c24}.inspector-window[data-color-scheme=dark] .inspector-system-health-section .inspector-system-health-header{background-color:#191c24;border-bottom-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-system-health{background-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal{background-color:#191c24}.inspector-window[data-color-scheme=dark] .inspector-system-health-event-link>small{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-system-health-header>span[data-tone=success]{color:#8ce1c5}.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=success],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=success]{background-color:#173b32;border-color:#347d69;color:#8ce1c5!important}.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=checking],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=checking]{background-color:#342916;border-color:#866932;color:#f2cf8f!important}.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=offline],.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=error],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=offline],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=error]{background-color:#3b1c22;border-color:#87424a;color:#ff9aa0!important}.inspector-window[data-color-scheme=dark] .inspector-system-health-state[data-tone=unavailable],.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-state[data-tone=unavailable]{background-color:#242731;border-color:#464957;color:#aeb1bd!important}.inspector-window[data-color-scheme=dark] .inspector-system-health-header>span[data-tone=checking]{color:#f2cf8f}.inspector-window[data-color-scheme=dark] .inspector-system-health-header>span[data-tone=offline],.inspector-window[data-color-scheme=dark] .inspector-system-health-header>span[data-tone=error]{color:#ff9aa0}.inspector-window[data-color-scheme=dark] .inspector-home-story-link:hover,.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview:has(.inspector-whats-new-preview-body:hover){background:#242131;border-color:#777aae}.inspector-window[data-color-scheme=dark] .inspector-home-title,.inspector-window[data-color-scheme=dark] .inspector-home-section-title,.inspector-window[data-color-scheme=dark] .inspector-home-card-title,.inspector-window[data-color-scheme=dark] .inspector-system-health-signal dd,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details .inspector-intelligence-hud-detail-value,.inspector-window[data-color-scheme=dark] .inspector-home-feature{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-home-eyebrow,.inspector-window[data-color-scheme=dark] .inspector-home-card-label,.inspector-window[data-color-scheme=dark] .inspector-home-meta,.inspector-window[data-color-scheme=dark] .inspector-home-body,.inspector-window[data-color-scheme=dark] .inspector-home-card-copy,.inspector-window[data-color-scheme=dark] .inspector-system-health-signal dt,.inspector-window[data-color-scheme=dark] .inspector-system-health-signal small,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-heading p,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details .inspector-intelligence-hud-detail-label,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details .inspector-intelligence-hud-detail-subvalue,.inspector-window[data-color-scheme=dark] .inspector-home-section-header>span,.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview-copy>span:last-child{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details{background-color:#3a3d49;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details>section{background-color:#15171e}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-plan-action{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-plan-action:hover{color:#fff;background-color:#0000;border-color:#0000}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal+.inspector-system-health-signal,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details>section+section,.inspector-window[data-color-scheme=dark] .inspector-intelligence-hud-details,.inspector-window[data-color-scheme=dark] .inspector-home-features-empty{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=success] dd,.inspector-window[data-color-scheme=dark] .inspector-home-feature small{color:#8ce1c5}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=active] dd{color:#f2cf8f}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=error] .inspector-system-health-event-type{color:#ff9aa0;background-color:#3b1c22}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=success] .inspector-system-health-event-type{color:#8ce1c5;background-color:#173b32}.inspector-window[data-color-scheme=dark] .inspector-system-health-signal[data-tone=active] .inspector-system-health-event-type{color:#f2cf8f;background-color:#342916}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group{background-color:#191c24;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group-header{color:#c9ccd6;background-color:#20232d;border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group-header>span{color:#c9ccd6;background-color:#191c24}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group[data-feature-state-group=active] .inspector-home-feature-group-header{color:#8ce1c5;background-color:#173b32;border-color:#347d69}.inspector-window[data-color-scheme=dark] .inspector-home-feature{background-color:#191c24}.inspector-window[data-color-scheme=dark] .inspector-home-feature:hover{background-color:#20232d}.inspector-window[data-color-scheme=dark] .inspector-home-feature+.inspector-home-feature{border-color:#2f323d}.inspector-window[data-color-scheme=dark] .inspector-home-feature-group-empty{color:#9da1af}.inspector-window[data-color-scheme=dark] .inspector-home-feature[data-state=off]{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-home-feature-status>span{background-color:#191c24;border-color:#6f7484}.inspector-window[data-color-scheme=dark] .inspector-home-feature[data-state=on] .inspector-home-feature-status>span{background-color:#8ce1c5;border-color:#8ce1c5}.inspector-window[data-color-scheme=dark] .inspector-home-feature-action{color:#d4d7e0;background-color:#20232d;border-color:#464957}.inspector-window[data-color-scheme=dark] .inspector-home-feature-label:hover{color:#d8d9ff}.inspector-window[data-color-scheme=dark] .inspector-home-feature-action:hover{color:#fff;background-color:#292b43;border-color:#777aae}.inspector-window[data-color-scheme=dark] .inspector-home-feature-action[data-copy-state=copied]{color:#8ce1c5;background-color:#173b32;border-color:#347d69}.inspector-window[data-color-scheme=dark] .inspector-home-feature-action[data-copy-state=error]{color:#ff9aa0;background-color:#3b1c22;border-color:#87424a}.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview-dismiss{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview-dismiss:hover{color:#fff;background-color:#302a40}.inspector-window[data-color-scheme=dark] .inspector-home-usage-bar{background-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-thread-progress::-webkit-progress-bar{background-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-whats-new{--updates-text:#f3f4f8;--updates-muted:#aeb1bd;--updates-border:#3a3d49;--updates-hover:#242432;--updates-accent:#c4b5fd}.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview-action{color:#d8d9ff}.inspector-window[data-color-scheme=dark] .inspector-whats-new-preview:hover .inspector-whats-new-preview-action{color:#fff}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document,.inspector-window[data-color-scheme=dark] .inspector-whats-new-empty{border-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content{color:#c9ccd6}.inspector-window[data-color-scheme=dark] .inspector-whats-new-empty .inspector-home-card-title{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h1+p{color:#c9ccd6}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h2{border-top-color:#3a3d49}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h1,.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h2,.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content h3,.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content strong{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .inspector-whats-new-document .announcement-content a{color:#caccff}.inspector-window[data-color-scheme=dark] .inspector-threads-footer{color:#aeb1bd;background-color:#15171e;border-color:#343742}.inspector-window[data-color-scheme=dark] [data-inspector-thread-count]{color:#f3f4f8}.inspector-window[data-color-scheme=dark] [data-inspector-thread-expiry]{color:#aeb1bd}.inspector-window[data-color-scheme=dark] [data-inspector-action-placement=threads-footer]{color:#d8d9ff;background-color:#191c24;border-color:#464957}.inspector-window[data-color-scheme=dark] [data-inspector-action-placement=threads-footer]:hover{color:#fff;background-color:#20232d;border-color:#777aae}.inspector-window[data-color-scheme=dark] .cpk-threads-overview{background-color:#111319}.inspector-window[data-color-scheme=dark] .cpk-locked-feature{background:#111319}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-copy,.inspector-window[data-color-scheme=dark] .cpk-locked-feature-description{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-name{color:#caccff}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-title{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline{box-shadow:none;background:0 0}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-item h3{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-icon{color:#caccff}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-item{box-shadow:none;color:#f3f4f8;background:0 0}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-item+.cpk-locked-feature-outline-item{border-top-color:#3a3d49}.inspector-window[data-color-scheme=dark] .cpk-locked-feature-outline-item p,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-content,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-copy,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-video-fallback,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-copy{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-title,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-title{color:#f3f4f8}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-video-frame{background:linear-gradient(135deg,#666a9e3d,#347d6929),#191c24;border-color:#3a3d49;box-shadow:0 8px 20px #00000038}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-video-control,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action-secondary,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-launch,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button-secondary{color:#d8d9ff;background-color:#191c24;border-color:#464957}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-video-control:hover,.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action-secondary:hover,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-launch:hover,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button-secondary:hover{color:#fff;background-color:#242731;border-color:#777aae}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action-primary,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button-primary{color:#171823;background-color:#caccff;border-color:#caccff}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action-primary:hover,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button-primary:hover{background-color:#d8d9ff;border-color:#d8d9ff}.inspector-window[data-color-scheme=dark] .cpk-threads-tour{color:#aeb1bd;background-color:#191c24;border-color:#464957;box-shadow:0 16px 36px #00000052}.inspector-window[data-color-scheme=dark] .cpk-threads-tour-step{color:#8ce1c5}.inspector-window[data-color-scheme=dark] .cpk-threads-tour-skip{color:#aeb1bd}.inspector-window[data-color-scheme=dark] .cpk-threads-overview-action:focus-visible,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-launch:focus-visible,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-skip:focus-visible,.inspector-window[data-color-scheme=dark] .cpk-threads-tour-button:focus-visible{outline-color:#bec2ff}.inspector-window[data-color-scheme=dark] .cpk-agent-overview,.inspector-window[data-color-scheme=dark] .cpk-section-card{background-color:#191c24!important;border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .cpk-section-header{background-color:#242731!important;border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .cpk-section-header h4{color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] .cpk-agent-icon{color:#d8d9ff!important;background-color:#292b43!important}.inspector-window[data-color-scheme=dark] .cpk-stat-card{background-color:#191c24!important;border-color:#464957!important}.inspector-window[data-color-scheme=dark] button.cpk-stat-card:hover{background-color:#20232d!important}.cpk-agent-messages-head{border-bottom:1px solid #e4e4ec}.cpk-agent-message-row+.cpk-agent-message-row{border-top:1px solid #e4e4ec}.inspector-window[data-color-scheme=dark] .cpk-agent-messages-head,.inspector-window[data-color-scheme=dark] .cpk-agent-message-row+.cpk-agent-message-row,.inspector-window[data-color-scheme=dark] .cpk-agent-view .divide-gray-200>:not([hidden])~:not([hidden]),.inspector-window[data-color-scheme=dark] .cpk-agent-view .divide-y>*{border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] .cpk-json-block{color:#c9ccd6}.inspector-window[data-color-scheme=dark] [class*=bg-emerald-50],.inspector-window[data-color-scheme=dark] [class*=bg-green-100]{color:#8ce1c5!important;background-color:#173b32!important}.inspector-window[data-color-scheme=dark] [class*=bg-rose-50]{color:#ff9aa0!important;background-color:#3b1c22!important}.inspector-window[data-color-scheme=dark] [data-cpk-event-error] p,.inspector-window[data-color-scheme=dark] [data-playground-error] p{color:inherit!important}.inspector-window[data-color-scheme=dark] [class*=bg-amber-50],.inspector-window[data-color-scheme=dark] [class*=bg-amber-100]{color:#f2cf8f!important;background-color:#342916!important}.inspector-window[data-color-scheme=dark] [class*=bg-blue-50],.inspector-window[data-color-scheme=dark] [class*=bg-blue-100],.inspector-window[data-color-scheme=dark] [class*=bg-sky-50],.inspector-window[data-color-scheme=dark] [class*=bg-violet-50],.inspector-window[data-color-scheme=dark] [class*=bg-purple-50],.inspector-window[data-color-scheme=dark] [class*=bg-fuchsia-50]{color:#d8d9ff!important;background-color:#292b43!important}.inspector-window[data-color-scheme=dark] [class*=bg-white]{background-color:#191c24!important}.inspector-window[data-color-scheme=dark] [class*=bg-gray-50],.inspector-window[data-color-scheme=dark] [class*=bg-slate-50],.inspector-window[data-color-scheme=dark] [class*=bg-gray-100],.inspector-window[data-color-scheme=dark] [class*=bg-slate-100]{background-color:#171a22!important}.inspector-window[data-color-scheme=dark] [class*=text-gray-900],.inspector-window[data-color-scheme=dark] [class*=text-slate-900],.inspector-window[data-color-scheme=dark] [class*=text-gray-800],.inspector-window[data-color-scheme=dark] [class*=text-slate-800],.inspector-window[data-color-scheme=dark] [class*=text-gray-700],.inspector-window[data-color-scheme=dark] [class*=text-slate-700]{color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] [class*=text-gray-600],.inspector-window[data-color-scheme=dark] [class*=text-slate-600],.inspector-window[data-color-scheme=dark] [class*=text-gray-500],.inspector-window[data-color-scheme=dark] [class*=text-slate-500],.inspector-window[data-color-scheme=dark] [class*=text-gray-400],.inspector-window[data-color-scheme=dark] [class*=text-slate-400]{color:#aeb1bd!important}.inspector-window[data-color-scheme=dark] [class*=border-gray-100],.inspector-window[data-color-scheme=dark] [class*=border-slate-100],.inspector-window[data-color-scheme=dark] [class*=border-gray-200],.inspector-window[data-color-scheme=dark] [class*=border-slate-200],.inspector-window[data-color-scheme=dark] [class*=border-gray-300],.inspector-window[data-color-scheme=dark] [class*=border-slate-300]{border-color:#3a3d49!important}.inspector-window[data-color-scheme=dark] input,.inspector-window[data-color-scheme=dark] select,.inspector-window[data-color-scheme=dark] textarea{color:#f3f4f8!important;background-color:#191c24!important;border-color:#464957!important}.inspector-window[data-color-scheme=dark] input::placeholder,.inspector-window[data-color-scheme=dark] textarea::placeholder{color:#858996}.inspector-window[data-color-scheme=dark] .cpk-playground-composer{background-color:#2f3340!important;box-shadow:0 0 0 1px #6d7285!important}.inspector-window[data-color-scheme=dark] .cpk-playground-composer:focus-within{box-shadow:0 0 0 1px #c5c8de!important}.inspector-window[data-color-scheme=dark] .cpk-playground-input{color:#f3f4f8!important;caret-color:#f3f4f8!important;background-color:#0000!important}.inspector-window[data-color-scheme=dark] .cpk-playground-input::placeholder{color:#e4e6ef!important;opacity:1!important}.inspector-window[data-color-scheme=dark] .cpk-playground-send:not(:disabled){color:#111319!important;opacity:1!important;background-color:#f3f4f8!important}.inspector-window[data-color-scheme=dark] .cpk-playground-send:disabled{color:#f3f4f8!important;background-color:#f3f4f833!important}.inspector-window[data-color-scheme=dark] ::selection{color:#fff;background-color:#5b5f92}.inspector-home-heading h1{letter-spacing:-.5px;margin:0 0 6px;font-size:23px;font-weight:650}.inspector-home-heading p{opacity:.7;margin:0;font-size:13px}.inspector-thread-heading{border-bottom:1px solid #b8afe030;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.inspector-thread-heading strong{font-size:14px}.inspector-text-button{font:inherit;color:#8872c5;cursor:pointer;background:0 0;border:0;font-size:11px}.inspector-home-heading{margin-bottom:22px}@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-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-duration{syntax:\"*\";inherits:false}@property --tw-ease{syntax:\"*\";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}";
|
|
534
|
+
|
|
535
|
+
//#endregion
|
|
536
|
+
//#region src/styles/notification-article.ts
|
|
537
|
+
/** Article styles for the Inspector’s What’s New view. */
|
|
538
|
+
const notificationArticleStyles = lit.css`
|
|
539
|
+
.announcement-content {
|
|
540
|
+
color: #1f2230;
|
|
541
|
+
font-size: 13px;
|
|
542
|
+
font-family: "Plus Jakarta Sans", system-ui, sans-serif;
|
|
543
|
+
line-height: 1.55;
|
|
544
|
+
}
|
|
545
|
+
|
|
546
|
+
.announcement-content h1,
|
|
547
|
+
.announcement-content h2,
|
|
548
|
+
.announcement-content h3 {
|
|
549
|
+
color: #010507;
|
|
550
|
+
font-weight: 700;
|
|
551
|
+
line-height: 1.3;
|
|
552
|
+
margin: 0.9rem 0 0.4rem;
|
|
553
|
+
}
|
|
554
|
+
.announcement-content > h1:first-child,
|
|
555
|
+
.announcement-content > h2:first-child,
|
|
556
|
+
.announcement-content > h3:first-child {
|
|
557
|
+
margin-top: 0;
|
|
558
|
+
}
|
|
559
|
+
|
|
560
|
+
.announcement-content h1 {
|
|
561
|
+
font-size: 1.15rem;
|
|
562
|
+
letter-spacing: -0.01em;
|
|
563
|
+
}
|
|
564
|
+
.announcement-content h2 {
|
|
565
|
+
font-size: 1rem;
|
|
566
|
+
}
|
|
567
|
+
.announcement-content h3 {
|
|
568
|
+
font-size: 0.9rem;
|
|
569
|
+
text-transform: none;
|
|
570
|
+
}
|
|
571
|
+
|
|
572
|
+
.announcement-content p {
|
|
573
|
+
margin: 0.45rem 0;
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
.announcement-content strong {
|
|
577
|
+
color: #010507;
|
|
578
|
+
font-weight: 700;
|
|
579
|
+
}
|
|
580
|
+
|
|
581
|
+
.announcement-content ul {
|
|
582
|
+
list-style: disc;
|
|
583
|
+
padding-left: 1.25rem;
|
|
584
|
+
margin: 0.45rem 0;
|
|
585
|
+
}
|
|
586
|
+
|
|
587
|
+
.announcement-content ol {
|
|
588
|
+
list-style: decimal;
|
|
589
|
+
padding-left: 1.25rem;
|
|
590
|
+
margin: 0.45rem 0;
|
|
591
|
+
}
|
|
592
|
+
|
|
593
|
+
.announcement-content li + li {
|
|
594
|
+
margin-top: 0.15rem;
|
|
595
|
+
}
|
|
596
|
+
|
|
597
|
+
.announcement-content a {
|
|
598
|
+
color: #5558b2;
|
|
599
|
+
text-decoration: underline;
|
|
600
|
+
}
|
|
601
|
+
|
|
602
|
+
.announcement-content :not(pre) > code {
|
|
603
|
+
background: #f3f3f7;
|
|
604
|
+
border: 1px solid #e4e4ec;
|
|
605
|
+
border-radius: 5px;
|
|
606
|
+
padding: 1px 5px;
|
|
607
|
+
font-size: 0.85em;
|
|
608
|
+
color: #4a3a8a;
|
|
609
|
+
}
|
|
610
|
+
|
|
611
|
+
.announcement-code {
|
|
612
|
+
position: relative;
|
|
613
|
+
margin: 0.6rem 0;
|
|
614
|
+
}
|
|
615
|
+
|
|
616
|
+
.announcement-code pre {
|
|
617
|
+
background: #0f1117;
|
|
618
|
+
color: #e6e8f2;
|
|
619
|
+
border-radius: 10px;
|
|
620
|
+
padding: 10px 12px;
|
|
621
|
+
overflow-x: auto;
|
|
622
|
+
font-size: 12px;
|
|
623
|
+
line-height: 1.5;
|
|
624
|
+
white-space: pre;
|
|
625
|
+
}
|
|
626
|
+
|
|
627
|
+
.announcement-code pre code::after {
|
|
628
|
+
content: "";
|
|
629
|
+
display: inline-block;
|
|
630
|
+
width: 80px;
|
|
631
|
+
}
|
|
632
|
+
|
|
633
|
+
.announcement-code__copy-shield {
|
|
634
|
+
position: absolute;
|
|
635
|
+
top: 4px;
|
|
636
|
+
right: 4px;
|
|
637
|
+
padding: 4px 4px 4px 24px;
|
|
638
|
+
border-top-right-radius: 10px;
|
|
639
|
+
background: linear-gradient(
|
|
640
|
+
to right,
|
|
641
|
+
rgba(15, 17, 23, 0) 0%,
|
|
642
|
+
rgba(15, 17, 23, 0.95) 40%,
|
|
643
|
+
#0f1117 100%
|
|
644
|
+
);
|
|
645
|
+
pointer-events: none;
|
|
646
|
+
}
|
|
647
|
+
|
|
648
|
+
.announcement-code pre code {
|
|
649
|
+
background: transparent;
|
|
650
|
+
border: none;
|
|
651
|
+
padding: 0;
|
|
652
|
+
color: inherit;
|
|
653
|
+
font-size: inherit;
|
|
654
|
+
}
|
|
655
|
+
|
|
656
|
+
.announcement-code pre::-webkit-scrollbar {
|
|
657
|
+
height: 6px;
|
|
658
|
+
}
|
|
659
|
+
.announcement-code pre::-webkit-scrollbar-track {
|
|
660
|
+
background: transparent;
|
|
661
|
+
}
|
|
662
|
+
.announcement-code pre::-webkit-scrollbar-thumb {
|
|
663
|
+
background: rgba(255, 255, 255, 0.2);
|
|
664
|
+
border-radius: 4px;
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
.announcement-code__copy {
|
|
668
|
+
position: relative;
|
|
669
|
+
pointer-events: auto;
|
|
670
|
+
padding: 3px 8px;
|
|
671
|
+
font-family: "Plus Jakarta Sans", system-ui, sans-serif;
|
|
672
|
+
font-size: 11px;
|
|
673
|
+
font-weight: 600;
|
|
674
|
+
color: #e6e8f2;
|
|
675
|
+
background: #1f222d;
|
|
676
|
+
border: 1px solid rgba(255, 255, 255, 0.15);
|
|
677
|
+
border-radius: 6px;
|
|
678
|
+
cursor: pointer;
|
|
679
|
+
transition:
|
|
680
|
+
background 0.12s ease,
|
|
681
|
+
color 0.12s ease;
|
|
682
|
+
}
|
|
683
|
+
.announcement-code__copy:hover {
|
|
684
|
+
background: #2a2e3c;
|
|
685
|
+
}
|
|
686
|
+
.announcement-code__copy[data-copied="true"] {
|
|
687
|
+
background: #eee6fe;
|
|
688
|
+
color: #6430ab;
|
|
689
|
+
border-color: transparent;
|
|
690
|
+
}
|
|
691
|
+
|
|
692
|
+
.inspector-whats-new-document {
|
|
693
|
+
min-width: 0;
|
|
694
|
+
padding: 0 0 24px;
|
|
695
|
+
overflow-wrap: anywhere;
|
|
696
|
+
}
|
|
697
|
+
|
|
698
|
+
.inspector-whats-new-document-header {
|
|
699
|
+
display: grid;
|
|
700
|
+
gap: 10px;
|
|
701
|
+
margin-bottom: 24px;
|
|
702
|
+
padding-bottom: 24px;
|
|
703
|
+
border-bottom: 1px solid var(--updates-border);
|
|
704
|
+
}
|
|
705
|
+
|
|
706
|
+
.inspector-whats-new-document-header h1 {
|
|
707
|
+
margin: 0;
|
|
708
|
+
color: var(--updates-text);
|
|
709
|
+
font-family: "Plus Jakarta Sans", system-ui, sans-serif;
|
|
710
|
+
font-size: 26px;
|
|
711
|
+
font-weight: 600;
|
|
712
|
+
letter-spacing: -0.025em;
|
|
713
|
+
line-height: 1.35;
|
|
714
|
+
}
|
|
715
|
+
|
|
716
|
+
.inspector-whats-new-document-header time {
|
|
717
|
+
color: var(--updates-muted);
|
|
718
|
+
font-size: 12px;
|
|
719
|
+
line-height: 1.5;
|
|
720
|
+
}
|
|
721
|
+
|
|
722
|
+
.inspector-whats-new-document .announcement-content {
|
|
723
|
+
color: #2b2b39;
|
|
724
|
+
font-size: 14px;
|
|
725
|
+
line-height: 1.75;
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
.inspector-whats-new-document .announcement-content h1,
|
|
729
|
+
.inspector-whats-new-document .announcement-content h2 {
|
|
730
|
+
margin: 28px 0 12px;
|
|
731
|
+
color: var(--updates-text);
|
|
732
|
+
font-size: 18px;
|
|
733
|
+
font-weight: 600;
|
|
734
|
+
letter-spacing: -0.015em;
|
|
735
|
+
line-height: 1.4;
|
|
736
|
+
}
|
|
737
|
+
|
|
738
|
+
.inspector-whats-new-document .announcement-content > :first-child {
|
|
739
|
+
margin-top: 0;
|
|
740
|
+
}
|
|
741
|
+
|
|
742
|
+
.inspector-whats-new-document .announcement-content p {
|
|
743
|
+
max-width: 70ch;
|
|
744
|
+
margin: 0.85rem 0;
|
|
745
|
+
}
|
|
746
|
+
|
|
747
|
+
.inspector-whats-new-document .announcement-content ul,
|
|
748
|
+
.inspector-whats-new-document .announcement-content ol {
|
|
749
|
+
max-width: 68ch;
|
|
750
|
+
margin: 1.25rem 0 1.5rem;
|
|
751
|
+
padding-left: 1.4rem;
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
.inspector-whats-new-document .announcement-content li + li {
|
|
755
|
+
margin-top: 0.7rem;
|
|
756
|
+
}
|
|
757
|
+
|
|
758
|
+
.inspector-whats-new-document .announcement-content a {
|
|
759
|
+
color: #4e46a5;
|
|
760
|
+
font-weight: 600;
|
|
761
|
+
text-decoration-color: rgba(78, 70, 165, 0.42);
|
|
762
|
+
text-decoration-thickness: 1px;
|
|
763
|
+
text-underline-offset: 4px;
|
|
764
|
+
transition:
|
|
765
|
+
color 160ms ease,
|
|
766
|
+
text-decoration-color 160ms ease;
|
|
767
|
+
}
|
|
768
|
+
|
|
769
|
+
.inspector-whats-new-document .announcement-content a:hover {
|
|
770
|
+
color: #312879;
|
|
771
|
+
text-decoration-color: currentColor;
|
|
772
|
+
}
|
|
773
|
+
`;
|
|
10
774
|
|
|
11
775
|
//#endregion
|
|
12
776
|
//#region src/assets/inspector-logo.svg
|
|
@@ -1510,287 +2274,38 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
1510
2274
|
function updateAnchorFromPosition(state, viewport, edgeMargin) {
|
|
1511
2275
|
const centerX = state.position.x + state.size.width / 2;
|
|
1512
2276
|
const centerY = state.position.y + state.size.height / 2;
|
|
1513
|
-
const horizontal = centerX < viewport.width / 2 ? "left" : "right";
|
|
1514
|
-
const vertical = centerY < viewport.height / 2 ? "top" : "bottom";
|
|
1515
|
-
state.anchor = {
|
|
1516
|
-
horizontal,
|
|
1517
|
-
vertical
|
|
1518
|
-
};
|
|
1519
|
-
const maxHorizontalOffset = Math.max(edgeMargin, viewport.width - state.size.width - edgeMargin);
|
|
1520
|
-
const maxVerticalOffset = Math.max(edgeMargin, viewport.height - state.size.height - edgeMargin);
|
|
1521
|
-
state.anchorOffset = {
|
|
1522
|
-
x: horizontal === "left" ? clamp(state.position.x, edgeMargin, maxHorizontalOffset) : clamp(viewport.width - state.position.x - state.size.width, edgeMargin, maxHorizontalOffset),
|
|
1523
|
-
y: vertical === "top" ? clamp(state.position.y, edgeMargin, maxVerticalOffset) : clamp(viewport.height - state.position.y - state.size.height, edgeMargin, maxVerticalOffset)
|
|
1524
|
-
};
|
|
1525
|
-
}
|
|
1526
|
-
function applyAnchorPosition(state, viewport, edgeMargin) {
|
|
1527
|
-
const maxHorizontalOffset = Math.max(edgeMargin, viewport.width - state.size.width - edgeMargin);
|
|
1528
|
-
const maxVerticalOffset = Math.max(edgeMargin, viewport.height - state.size.height - edgeMargin);
|
|
1529
|
-
const horizontalOffset = clamp(state.anchorOffset.x, edgeMargin, maxHorizontalOffset);
|
|
1530
|
-
const verticalOffset = clamp(state.anchorOffset.y, edgeMargin, maxVerticalOffset);
|
|
1531
|
-
const x = state.anchor.horizontal === "left" ? horizontalOffset : viewport.width - state.size.width - horizontalOffset;
|
|
1532
|
-
const y = state.anchor.vertical === "top" ? verticalOffset : viewport.height - state.size.height - verticalOffset;
|
|
1533
|
-
state.anchorOffset = {
|
|
1534
|
-
x: horizontalOffset,
|
|
1535
|
-
y: verticalOffset
|
|
1536
|
-
};
|
|
1537
|
-
state.position = constrainToViewport(state, {
|
|
1538
|
-
x,
|
|
1539
|
-
y
|
|
1540
|
-
}, viewport, edgeMargin);
|
|
1541
|
-
return state.position;
|
|
1542
|
-
}
|
|
1543
|
-
function clamp(value, min, max) {
|
|
1544
|
-
return Math.min(Math.max(min, value), max);
|
|
1545
|
-
}
|
|
1546
|
-
|
|
1547
|
-
//#endregion
|
|
1548
|
-
//#region src/lib/persistence.ts
|
|
1549
|
-
function loadInspectorState(storageKey) {
|
|
1550
|
-
if (typeof window === "undefined") return null;
|
|
1551
|
-
const raw = window.localStorage.getItem(storageKey);
|
|
1552
|
-
if (raw) try {
|
|
1553
|
-
const parsed = JSON.parse(raw);
|
|
1554
|
-
if (parsed && typeof parsed === "object") return parsed;
|
|
1555
|
-
} catch (_unused2) {}
|
|
1556
|
-
if (typeof document !== "undefined") {
|
|
1557
|
-
const prefix = `${storageKey}=`;
|
|
1558
|
-
const entry = document.cookie.split("; ").find((cookie) => cookie.startsWith(prefix));
|
|
1559
|
-
if (entry) {
|
|
1560
|
-
const legacyRaw = entry.substring(prefix.length);
|
|
1561
|
-
try {
|
|
1562
|
-
const parsed = JSON.parse(decodeURIComponent(legacyRaw));
|
|
1563
|
-
if (parsed && typeof parsed === "object") return parsed;
|
|
1564
|
-
} catch (_unused3) {
|
|
1565
|
-
return null;
|
|
1566
|
-
}
|
|
1567
|
-
}
|
|
1568
|
-
}
|
|
1569
|
-
return null;
|
|
1570
|
-
}
|
|
1571
|
-
function saveInspectorState(storageKey, state) {
|
|
1572
|
-
if (typeof window === "undefined") return;
|
|
1573
|
-
try {
|
|
1574
|
-
window.localStorage.setItem(storageKey, JSON.stringify(state));
|
|
1575
|
-
} catch (error) {
|
|
1576
|
-
console.warn("Failed to persist inspector state", error);
|
|
1577
|
-
}
|
|
1578
|
-
}
|
|
1579
|
-
function isValidAnchor(value) {
|
|
1580
|
-
if (!value || typeof value !== "object") return false;
|
|
1581
|
-
const candidate = value;
|
|
1582
|
-
return (candidate.horizontal === "left" || candidate.horizontal === "right") && (candidate.vertical === "top" || candidate.vertical === "bottom");
|
|
1583
|
-
}
|
|
1584
|
-
function isValidPosition(value) {
|
|
1585
|
-
if (!value || typeof value !== "object") return false;
|
|
1586
|
-
const candidate = value;
|
|
1587
|
-
return isFiniteNumber(candidate.x) && isFiniteNumber(candidate.y);
|
|
1588
|
-
}
|
|
1589
|
-
function isValidSize(value) {
|
|
1590
|
-
if (!value || typeof value !== "object") return false;
|
|
1591
|
-
const candidate = value;
|
|
1592
|
-
return isFiniteNumber(candidate.width) && isFiniteNumber(candidate.height);
|
|
1593
|
-
}
|
|
1594
|
-
function isFiniteNumber(value) {
|
|
1595
|
-
return typeof value === "number" && Number.isFinite(value);
|
|
1596
|
-
}
|
|
1597
|
-
function isValidDockMode(value) {
|
|
1598
|
-
return value === "floating" || value === "docked-left";
|
|
1599
|
-
}
|
|
1600
|
-
const INSPECTOR_DISMISSAL_MIRROR_KEY = "cpk:inspector:dismissed_until";
|
|
1601
|
-
const INSPECTOR_DISMISSAL_COOKIE_NAME = "cpk_inspector_dismissed_until";
|
|
1602
|
-
const INSPECTOR_DISMISSAL_MAX_DURATION_MS = 10080 * 60 * 1e3;
|
|
1603
|
-
/** Return the active host-scoped Inspector dismissal deadline, if any. */
|
|
1604
|
-
function loadInspectorDismissedUntil(now = Date.now()) {
|
|
1605
|
-
var _parseInspectorDismis;
|
|
1606
|
-
const until = (_parseInspectorDismis = parseInspectorDismissalPayload(readCookie(INSPECTOR_DISMISSAL_COOKIE_NAME))) !== null && _parseInspectorDismis !== void 0 ? _parseInspectorDismis : parseInspectorDismissalPayload(readLocalStorageItem(INSPECTOR_DISMISSAL_MIRROR_KEY));
|
|
1607
|
-
if (until === null) return null;
|
|
1608
|
-
if (until <= now) {
|
|
1609
|
-
clearInspectorDismissal();
|
|
1610
|
-
return null;
|
|
1611
|
-
}
|
|
1612
|
-
const maximumUntil = now + INSPECTOR_DISMISSAL_MAX_DURATION_MS;
|
|
1613
|
-
if (until > maximumUntil) {
|
|
1614
|
-
saveInspectorDismissedUntil(maximumUntil, now);
|
|
1615
|
-
return maximumUntil;
|
|
1616
|
-
}
|
|
1617
|
-
return until;
|
|
1618
|
-
}
|
|
1619
|
-
/** Persist a dismissal across browser sessions and localhost ports. */
|
|
1620
|
-
function saveInspectorDismissedUntil(until, now = Date.now()) {
|
|
1621
|
-
if (!Number.isFinite(until) || until <= now) {
|
|
1622
|
-
clearInspectorDismissal();
|
|
1623
|
-
return;
|
|
1624
|
-
}
|
|
1625
|
-
const boundedUntil = Math.min(until, now + INSPECTOR_DISMISSAL_MAX_DURATION_MS);
|
|
1626
|
-
const payload = JSON.stringify({ until: boundedUntil });
|
|
1627
|
-
writeCookie(INSPECTOR_DISMISSAL_COOKIE_NAME, payload, `Max-Age=${Math.max(1, Math.ceil((boundedUntil - now) / 1e3))}`);
|
|
1628
|
-
writeLocalStorageItem(INSPECTOR_DISMISSAL_MIRROR_KEY, payload);
|
|
1629
|
-
}
|
|
1630
|
-
/** Clear both persistence layers, including an expired host cookie. */
|
|
1631
|
-
function clearInspectorDismissal() {
|
|
1632
|
-
writeCookie(INSPECTOR_DISMISSAL_COOKIE_NAME, "", "Max-Age=0");
|
|
1633
|
-
removeLocalStorageItem(INSPECTOR_DISMISSAL_MIRROR_KEY);
|
|
1634
|
-
}
|
|
1635
|
-
/** Parse a finite deadline from either persistence layer. */
|
|
1636
|
-
function parseInspectorDismissalPayload(raw) {
|
|
1637
|
-
if (!raw) return null;
|
|
1638
|
-
try {
|
|
1639
|
-
const parsed = JSON.parse(raw);
|
|
1640
|
-
return typeof parsed.until === "number" && Number.isFinite(parsed.until) ? parsed.until : null;
|
|
1641
|
-
} catch (_unused4) {
|
|
1642
|
-
return null;
|
|
1643
|
-
}
|
|
1644
|
-
}
|
|
1645
|
-
const ANNOUNCEMENT_READ_COOKIE_NAME = "cpk_inspector_announcements";
|
|
1646
|
-
const ANNOUNCEMENT_READ_MIRROR_KEY = "cpk:inspector:announcement_read";
|
|
1647
|
-
const LEGACY_ANNOUNCEMENT_READ_KEY = "cpk:inspector:announcements";
|
|
1648
|
-
const ANNOUNCEMENT_PULSED_SESSION_KEY = "cpk:inspector:pulsed";
|
|
1649
|
-
const ANNOUNCEMENT_READ_COOKIE_MAX_AGE_SECONDS = 3600 * 24 * 365;
|
|
1650
|
-
/**
|
|
1651
|
-
* The announcement timestamp the user has already read, or `null` when
|
|
1652
|
-
* nothing has been read yet. Prefers the host-scoped cookie and falls back to
|
|
1653
|
-
* the origin-scoped mirror, so cookie-blocking browsers still remember the
|
|
1654
|
-
* read within the port they are on.
|
|
1655
|
-
*/
|
|
1656
|
-
function loadAnnouncementReadTimestamp() {
|
|
1657
|
-
var _parseTimestampPayloa;
|
|
1658
|
-
return (_parseTimestampPayloa = parseTimestampPayload(readAnnouncementCookie())) !== null && _parseTimestampPayloa !== void 0 ? _parseTimestampPayloa : parseTimestampPayload(readLocalStorageItem(ANNOUNCEMENT_READ_MIRROR_KEY));
|
|
1659
|
-
}
|
|
1660
|
-
/**
|
|
1661
|
-
* Records an announcement as read in both the host-scoped cookie and the
|
|
1662
|
-
* origin-scoped mirror. The stored value is `{"timestamp":"…"}` — the same
|
|
1663
|
-
* shape the announcement state has always used.
|
|
1664
|
-
*/
|
|
1665
|
-
function saveAnnouncementReadTimestamp(timestamp) {
|
|
1666
|
-
const payload = JSON.stringify({ timestamp });
|
|
1667
|
-
writeAnnouncementCookie(payload);
|
|
1668
|
-
writeLocalStorageItem(ANNOUNCEMENT_READ_MIRROR_KEY, payload);
|
|
1669
|
-
}
|
|
1670
|
-
/**
|
|
1671
|
-
* Deletes the superseded origin-scoped read state. Safe to call on every
|
|
1672
|
-
* startup: nothing writes that key any more, so the value cannot come back.
|
|
1673
|
-
*/
|
|
1674
|
-
function clearLegacyAnnouncementReadState() {
|
|
1675
|
-
removeLocalStorageItem(LEGACY_ANNOUNCEMENT_READ_KEY);
|
|
1676
|
-
}
|
|
1677
|
-
/**
|
|
1678
|
-
* The announcement timestamp this browser tab has already pulsed for, or
|
|
1679
|
-
* `null` when it hasn't pulsed yet.
|
|
1680
|
-
*/
|
|
1681
|
-
function loadAnnouncementPulsedTimestamp() {
|
|
1682
|
-
if (typeof window === "undefined") return null;
|
|
1683
|
-
try {
|
|
1684
|
-
return window.sessionStorage.getItem(ANNOUNCEMENT_PULSED_SESSION_KEY);
|
|
1685
|
-
} catch (_unused5) {
|
|
1686
|
-
return null;
|
|
1687
|
-
}
|
|
1688
|
-
}
|
|
1689
|
-
/** Suppresses further pulses for this announcement in this browser tab. */
|
|
1690
|
-
function saveAnnouncementPulsedTimestamp(timestamp) {
|
|
1691
|
-
if (typeof window === "undefined") return;
|
|
1692
|
-
try {
|
|
1693
|
-
window.sessionStorage.setItem(ANNOUNCEMENT_PULSED_SESSION_KEY, timestamp);
|
|
1694
|
-
} catch (_unused6) {}
|
|
1695
|
-
}
|
|
1696
|
-
function parseTimestampPayload(raw) {
|
|
1697
|
-
if (!raw) return null;
|
|
1698
|
-
try {
|
|
1699
|
-
const parsed = JSON.parse(raw);
|
|
1700
|
-
return typeof (parsed === null || parsed === void 0 ? void 0 : parsed.timestamp) === "string" ? parsed.timestamp : null;
|
|
1701
|
-
} catch (_unused7) {
|
|
1702
|
-
return null;
|
|
1703
|
-
}
|
|
1704
|
-
}
|
|
1705
|
-
function readAnnouncementCookie() {
|
|
1706
|
-
return readCookie(ANNOUNCEMENT_READ_COOKIE_NAME);
|
|
1707
|
-
}
|
|
1708
|
-
function writeAnnouncementCookie(value) {
|
|
1709
|
-
writeCookie(ANNOUNCEMENT_READ_COOKIE_NAME, value, `Max-Age=${ANNOUNCEMENT_READ_COOKIE_MAX_AGE_SECONDS}`);
|
|
1710
|
-
}
|
|
1711
|
-
function readCookie(name) {
|
|
1712
|
-
if (typeof document === "undefined") return null;
|
|
1713
|
-
try {
|
|
1714
|
-
for (const entry of document.cookie.split(";")) {
|
|
1715
|
-
const separator = entry.indexOf("=");
|
|
1716
|
-
if (separator === -1) continue;
|
|
1717
|
-
if (entry.slice(0, separator).trim() !== name) continue;
|
|
1718
|
-
return decodeURIComponent(entry.slice(separator + 1).trim());
|
|
1719
|
-
}
|
|
1720
|
-
} catch (_unused8) {}
|
|
1721
|
-
return null;
|
|
1722
|
-
}
|
|
1723
|
-
function writeCookie(name, value, lifetime) {
|
|
1724
|
-
if (typeof document === "undefined") return;
|
|
1725
|
-
try {
|
|
1726
|
-
document.cookie = `${name}=${encodeURIComponent(value)}; Path=/; ${lifetime}; SameSite=Lax`;
|
|
1727
|
-
} catch (_unused9) {}
|
|
1728
|
-
}
|
|
1729
|
-
function readLocalStorageItem(key) {
|
|
1730
|
-
if (typeof window === "undefined") return null;
|
|
1731
|
-
try {
|
|
1732
|
-
return window.localStorage.getItem(key);
|
|
1733
|
-
} catch (_unused10) {
|
|
1734
|
-
return null;
|
|
1735
|
-
}
|
|
1736
|
-
}
|
|
1737
|
-
function writeLocalStorageItem(key, value) {
|
|
1738
|
-
if (typeof window === "undefined") return;
|
|
1739
|
-
try {
|
|
1740
|
-
window.localStorage.setItem(key, value);
|
|
1741
|
-
} catch (_unused11) {}
|
|
1742
|
-
}
|
|
1743
|
-
function removeLocalStorageItem(key) {
|
|
1744
|
-
if (typeof window === "undefined") return;
|
|
1745
|
-
try {
|
|
1746
|
-
window.localStorage.removeItem(key);
|
|
1747
|
-
} catch (_unused12) {}
|
|
1748
|
-
}
|
|
1749
|
-
const TELEMETRY_DISTINCT_ID_KEY = "cpk:inspector:telemetry:distinct_id";
|
|
1750
|
-
const TELEMETRY_OPT_OUT_KEY = "cpk:inspector:telemetry:opt_out";
|
|
1751
|
-
const TELEMETRY_DISCLOSURE_SHOWN_KEY = "cpk:inspector:telemetry:disclosure_shown";
|
|
1752
|
-
let inMemoryFallbackId = null;
|
|
1753
|
-
function getOrCreateTelemetryDistinctId() {
|
|
1754
|
-
if (typeof window === "undefined") return generateUuidV4();
|
|
1755
|
-
try {
|
|
1756
|
-
const existing = window.localStorage.getItem(TELEMETRY_DISTINCT_ID_KEY);
|
|
1757
|
-
if (existing && existing.length > 0) return existing;
|
|
1758
|
-
const fresh = generateUuidV4();
|
|
1759
|
-
window.localStorage.setItem(TELEMETRY_DISTINCT_ID_KEY, fresh);
|
|
1760
|
-
return fresh;
|
|
1761
|
-
} catch (_unused13) {
|
|
1762
|
-
var _inMemoryFallbackId;
|
|
1763
|
-
return (_inMemoryFallbackId = inMemoryFallbackId) !== null && _inMemoryFallbackId !== void 0 ? _inMemoryFallbackId : inMemoryFallbackId = generateUuidV4();
|
|
1764
|
-
}
|
|
1765
|
-
}
|
|
1766
|
-
function isTelemetryOptedOut() {
|
|
1767
|
-
if (typeof window === "undefined") return false;
|
|
1768
|
-
try {
|
|
1769
|
-
return window.localStorage.getItem(TELEMETRY_OPT_OUT_KEY) === "true";
|
|
1770
|
-
} catch (_unused14) {
|
|
1771
|
-
return false;
|
|
1772
|
-
}
|
|
1773
|
-
}
|
|
1774
|
-
function hasTelemetryDisclosureBeenShown() {
|
|
1775
|
-
if (typeof window === "undefined") return false;
|
|
1776
|
-
try {
|
|
1777
|
-
return window.localStorage.getItem(TELEMETRY_DISCLOSURE_SHOWN_KEY) === "true";
|
|
1778
|
-
} catch (_unused16) {
|
|
1779
|
-
return false;
|
|
1780
|
-
}
|
|
2277
|
+
const horizontal = centerX < viewport.width / 2 ? "left" : "right";
|
|
2278
|
+
const vertical = centerY < viewport.height / 2 ? "top" : "bottom";
|
|
2279
|
+
state.anchor = {
|
|
2280
|
+
horizontal,
|
|
2281
|
+
vertical
|
|
2282
|
+
};
|
|
2283
|
+
const maxHorizontalOffset = Math.max(edgeMargin, viewport.width - state.size.width - edgeMargin);
|
|
2284
|
+
const maxVerticalOffset = Math.max(edgeMargin, viewport.height - state.size.height - edgeMargin);
|
|
2285
|
+
state.anchorOffset = {
|
|
2286
|
+
x: horizontal === "left" ? clamp(state.position.x, edgeMargin, maxHorizontalOffset) : clamp(viewport.width - state.position.x - state.size.width, edgeMargin, maxHorizontalOffset),
|
|
2287
|
+
y: vertical === "top" ? clamp(state.position.y, edgeMargin, maxVerticalOffset) : clamp(viewport.height - state.position.y - state.size.height, edgeMargin, maxVerticalOffset)
|
|
2288
|
+
};
|
|
1781
2289
|
}
|
|
1782
|
-
function
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
|
|
1786
|
-
|
|
2290
|
+
function applyAnchorPosition(state, viewport, edgeMargin) {
|
|
2291
|
+
const maxHorizontalOffset = Math.max(edgeMargin, viewport.width - state.size.width - edgeMargin);
|
|
2292
|
+
const maxVerticalOffset = Math.max(edgeMargin, viewport.height - state.size.height - edgeMargin);
|
|
2293
|
+
const horizontalOffset = clamp(state.anchorOffset.x, edgeMargin, maxHorizontalOffset);
|
|
2294
|
+
const verticalOffset = clamp(state.anchorOffset.y, edgeMargin, maxVerticalOffset);
|
|
2295
|
+
const x = state.anchor.horizontal === "left" ? horizontalOffset : viewport.width - state.size.width - horizontalOffset;
|
|
2296
|
+
const y = state.anchor.vertical === "top" ? verticalOffset : viewport.height - state.size.height - verticalOffset;
|
|
2297
|
+
state.anchorOffset = {
|
|
2298
|
+
x: horizontalOffset,
|
|
2299
|
+
y: verticalOffset
|
|
2300
|
+
};
|
|
2301
|
+
state.position = constrainToViewport(state, {
|
|
2302
|
+
x,
|
|
2303
|
+
y
|
|
2304
|
+
}, viewport, edgeMargin);
|
|
2305
|
+
return state.position;
|
|
1787
2306
|
}
|
|
1788
|
-
function
|
|
1789
|
-
|
|
1790
|
-
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
|
|
1791
|
-
const r = Math.random() * 16 | 0;
|
|
1792
|
-
return (c === "x" ? r : r & 3 | 8).toString(16);
|
|
1793
|
-
});
|
|
2307
|
+
function clamp(value, min, max) {
|
|
2308
|
+
return Math.min(Math.max(min, value), max);
|
|
1794
2309
|
}
|
|
1795
2310
|
|
|
1796
2311
|
//#endregion
|
|
@@ -2404,7 +2919,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
2404
2919
|
|
|
2405
2920
|
//#endregion
|
|
2406
2921
|
//#region package.json
|
|
2407
|
-
var version = "1.
|
|
2922
|
+
var version = "1.74.0";
|
|
2408
2923
|
|
|
2409
2924
|
//#endregion
|
|
2410
2925
|
//#region src/lib/telemetry.ts
|
|
@@ -2414,6 +2929,14 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
2414
2929
|
whatsNewSignalViewed: "oss.inspector.whats_new_signal_viewed",
|
|
2415
2930
|
errorSignalViewed: "oss.inspector.error_signal_viewed",
|
|
2416
2931
|
whatsNewClicked: "oss.inspector.whats_new_clicked",
|
|
2932
|
+
hudViewed: "oss.inspector.hud_viewed",
|
|
2933
|
+
hudNotificationViewed: "oss.inspector.hud_notification_viewed",
|
|
2934
|
+
hudNotificationClicked: "oss.inspector.hud_notification_clicked",
|
|
2935
|
+
hudFeatureToggleViewed: "oss.inspector.hud_feature_toggle_viewed",
|
|
2936
|
+
hudFeatureToggleClicked: "oss.inspector.hud_feature_toggle_clicked",
|
|
2937
|
+
hudFeatureClicked: "oss.inspector.hud_feature_clicked",
|
|
2938
|
+
hudHideViewed: "oss.inspector.hud_hide_viewed",
|
|
2939
|
+
hudHideClicked: "oss.inspector.hud_hide_clicked",
|
|
2417
2940
|
threadsTabClicked: "oss.inspector.threads_tab_clicked",
|
|
2418
2941
|
threadsTryFromHereClicked: "oss.inspector.threads_try_from_here_clicked",
|
|
2419
2942
|
threadsLockedViewed: "oss.inspector.threads_locked_viewed",
|
|
@@ -2505,6 +3028,32 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
2505
3028
|
function trackWhatsNewSignalViewed(props) {
|
|
2506
3029
|
track(TELEMETRY_EVENTS.whatsNewSignalViewed, props);
|
|
2507
3030
|
}
|
|
3031
|
+
/** One impression per rendered HUD presentation in a visible tab. */
|
|
3032
|
+
function trackHudViewed(props) {
|
|
3033
|
+
track(TELEMETRY_EVENTS.hudViewed, props);
|
|
3034
|
+
}
|
|
3035
|
+
/** The UUID identifies the notification consistently across HUD and article events. */
|
|
3036
|
+
function trackHudNotificationViewed(props) {
|
|
3037
|
+
track(TELEMETRY_EVENTS.hudNotificationViewed, props);
|
|
3038
|
+
}
|
|
3039
|
+
function trackHudNotificationClicked(props) {
|
|
3040
|
+
track(TELEMETRY_EVENTS.hudNotificationClicked, props);
|
|
3041
|
+
}
|
|
3042
|
+
function trackHudFeatureToggleViewed(props) {
|
|
3043
|
+
track(TELEMETRY_EVENTS.hudFeatureToggleViewed, props);
|
|
3044
|
+
}
|
|
3045
|
+
function trackHudFeatureToggleClicked(props) {
|
|
3046
|
+
track(TELEMETRY_EVENTS.hudFeatureToggleClicked, props);
|
|
3047
|
+
}
|
|
3048
|
+
function trackHudFeatureClicked(props) {
|
|
3049
|
+
track(TELEMETRY_EVENTS.hudFeatureClicked, props);
|
|
3050
|
+
}
|
|
3051
|
+
function trackHudHideViewed(props) {
|
|
3052
|
+
track(TELEMETRY_EVENTS.hudHideViewed, props);
|
|
3053
|
+
}
|
|
3054
|
+
function trackHudHideClicked(props) {
|
|
3055
|
+
track(TELEMETRY_EVENTS.hudHideClicked, props);
|
|
3056
|
+
}
|
|
2508
3057
|
/**
|
|
2509
3058
|
* Fires when the launcher's error signal becomes *visible* — not when it arms.
|
|
2510
3059
|
* Arming can happen with the panel open or the tab hidden, where there is no
|
|
@@ -2851,12 +3400,11 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
2851
3400
|
* The CLI resolves `onboard start` against a prompt graph, so the two surfaces
|
|
2852
3401
|
* must not drift — if the CLI's entry point changes, both change together.
|
|
2853
3402
|
*
|
|
2854
|
-
*
|
|
2855
|
-
*
|
|
2856
|
-
*
|
|
2857
|
-
*
|
|
2858
|
-
*
|
|
2859
|
-
* (Intelligence OSS-1157).
|
|
3403
|
+
* One sentence, and deliberately nothing else. It used to carry the `npx`
|
|
3404
|
+
* command itself, which put a command line and a telemetry id in the one piece
|
|
3405
|
+
* of text a human reads, decides on and pastes. The command now lives in the
|
|
3406
|
+
* document the URL serves, with the run id already written into it
|
|
3407
|
+
* (PE-216/PE-217).
|
|
2860
3408
|
*
|
|
2861
3409
|
* This one stays generic, and so do the docs and Intelligence web-app copies
|
|
2862
3410
|
* of it (OSS-1150). Those three are entry points for a developer with no
|
|
@@ -2867,9 +3415,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
2867
3415
|
* `FEATURE_ONBOARDING_PROMPT_TEMPLATE` below.
|
|
2868
3416
|
*/
|
|
2869
3417
|
const RUN_ID_PLACEHOLDER = "<run-id>";
|
|
2870
|
-
const
|
|
2871
|
-
|
|
2872
|
-
npx --yes copilotkit@latest onboard start --run ${RUN_ID_PLACEHOLDER}`;
|
|
3418
|
+
const ONBOARDING_PROMPT_ORIGIN = "https://copilotkit.ai";
|
|
3419
|
+
const ONBOARDING_PROMPT_TEMPLATE = `Read ${ONBOARDING_PROMPT_ORIGIN}/onboarding-prompts/${RUN_ID_PLACEHOLDER} and help me get set up.`;
|
|
2873
3420
|
/** Length and alphabet are the CLI's, so a run id copied here resolves there. */
|
|
2874
3421
|
const RUN_ID_LENGTH = 12;
|
|
2875
3422
|
/**
|
|
@@ -2930,15 +3477,11 @@ npx --yes copilotkit@latest onboard start --run ${RUN_ID_PLACEHOLDER}`;
|
|
|
2930
3477
|
* here would duplicate all of that and then drift from it the next time the
|
|
2931
3478
|
* underlying API changes.
|
|
2932
3479
|
*
|
|
2933
|
-
*
|
|
2934
|
-
*
|
|
2935
|
-
*
|
|
3480
|
+
* The session-check permission the developer granted by copying this, and the
|
|
3481
|
+
* credentials warning beside it, moved with the command into the document the
|
|
3482
|
+
* URL serves. They are not dropped.
|
|
2936
3483
|
*/
|
|
2937
|
-
const FEATURE_ONBOARDING_PROMPT_TEMPLATE = `
|
|
2938
|
-
|
|
2939
|
-
npx --yes copilotkit@latest onboard start --run ${RUN_ID_PLACEHOLDER} --intent ${INTENT_PLACEHOLDER}
|
|
2940
|
-
|
|
2941
|
-
If it requires a CopilotKit CLI session check, you have permission to run it. Never reveal credentials.`;
|
|
3484
|
+
const FEATURE_ONBOARDING_PROMPT_TEMPLATE = `Read ${ONBOARDING_PROMPT_ORIGIN}/onboarding-prompts/${RUN_ID_PLACEHOLDER}?intent=${INTENT_PLACEHOLDER} and help me set this up.`;
|
|
2942
3485
|
/** Bind one run id and one tile's feature outcome into the copied prompt. */
|
|
2943
3486
|
function createFeatureOnboardingPrompt(serviceId, runId) {
|
|
2944
3487
|
return FEATURE_ONBOARDING_PROMPT_TEMPLATE.replace(RUN_ID_PLACEHOLDER, runId).replace(INTENT_PLACEHOLDER, FEATURE_ONBOARDING_INTENT[serviceId]);
|
|
@@ -3189,7 +3732,6 @@ If it requires a CopilotKit CLI session check, you have permission to run it. Ne
|
|
|
3189
3732
|
const MIN_WINDOW_WIDTH_DOCKED_LEFT = 640;
|
|
3190
3733
|
const MIN_WINDOW_HEIGHT = 480;
|
|
3191
3734
|
const INSPECTOR_STORAGE_KEY = "cpk:inspector:state";
|
|
3192
|
-
const ANNOUNCEMENT_URL = "https://cdn.copilotkit.ai/announcements.json";
|
|
3193
3735
|
const LAUNCHER_MIN_SIZE = 51.84;
|
|
3194
3736
|
const LAUNCHER_MAX_SIZE = 62.208;
|
|
3195
3737
|
const DEFAULT_BUTTON_SIZE = {
|
|
@@ -4195,6 +4737,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4195
4737
|
this._loadingEvents = false;
|
|
4196
4738
|
this._loadingState = false;
|
|
4197
4739
|
this._messagesError = null;
|
|
4740
|
+
this._messageRefreshError = null;
|
|
4198
4741
|
this._eventsError = null;
|
|
4199
4742
|
this._stateError = null;
|
|
4200
4743
|
this._expandedTools = /* @__PURE__ */ new Set();
|
|
@@ -4289,7 +4832,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4289
4832
|
</div>`;
|
|
4290
4833
|
}
|
|
4291
4834
|
renderTabContent(id) {
|
|
4292
|
-
if (id === "timeline") return lit.html`${this._showEventTimeline ? lit.html`<div class="cpk-td__timeline-toolbar">${this.renderTimelineBulkButtons()}</div>${this.renderTimeline()}` : this._conversation.length || this._loadingMessages || this._messagesError ? this.renderConversation() : this.renderTimeline()}`;
|
|
4835
|
+
if (id === "timeline") return lit.html`${this._messageRefreshError ? lit.html`<div class="cpk-td__status cpk-td__status--error" role="status">${this._messageRefreshError}</div>` : lit.nothing}${this._showEventTimeline ? lit.html`<div class="cpk-td__timeline-toolbar">${this.renderTimelineBulkButtons()}</div>${this.renderTimeline()}` : this._conversation.length || this._loadingMessages || this._messagesError ? this.renderConversation() : this.renderTimeline()}`;
|
|
4293
4836
|
if (id === "state") return this.renderState();
|
|
4294
4837
|
return this.renderEvents();
|
|
4295
4838
|
}
|
|
@@ -4382,7 +4925,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4382
4925
|
scrollToFocusedMessage() {
|
|
4383
4926
|
var _this$shadowRoot$quer, _this$shadowRoot3, _message$scrollIntoVi;
|
|
4384
4927
|
if (!this.focusMessageId) return;
|
|
4385
|
-
const message = Array.from((_this$shadowRoot$quer = (_this$shadowRoot3 = this.shadowRoot) === null || _this$shadowRoot3 === void 0 ? void 0 : _this$shadowRoot3.querySelectorAll(
|
|
4928
|
+
const message = Array.from((_this$shadowRoot$quer = (_this$shadowRoot3 = this.shadowRoot) === null || _this$shadowRoot3 === void 0 ? void 0 : _this$shadowRoot3.querySelectorAll(`#${this.panelDomId(this._tab)}:not([hidden]) [data-message-id]`)) !== null && _this$shadowRoot$quer !== void 0 ? _this$shadowRoot$quer : []).find((candidate) => candidate.dataset.messageId === this.focusMessageId);
|
|
4386
4929
|
if (!message) return;
|
|
4387
4930
|
(_message$scrollIntoVi = message.scrollIntoView) === null || _message$scrollIntoVi === void 0 || _message$scrollIntoVi.call(message, { block: "center" });
|
|
4388
4931
|
this._scrolledFocusRequestId = this.focusRequestId;
|
|
@@ -4455,6 +4998,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4455
4998
|
this._loadingEvents = false;
|
|
4456
4999
|
this._loadingState = false;
|
|
4457
5000
|
this._messagesError = null;
|
|
5001
|
+
this._messageRefreshError = null;
|
|
4458
5002
|
this._eventsError = null;
|
|
4459
5003
|
this._stateError = null;
|
|
4460
5004
|
this._fetchedMetadata = null;
|
|
@@ -4474,7 +5018,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4474
5018
|
this._fetchedMetadata = metadata;
|
|
4475
5019
|
} catch (err) {
|
|
4476
5020
|
if (err instanceof Error && err.name === "AbortError") return;
|
|
4477
|
-
if (this.threadId !== threadId) return;
|
|
5021
|
+
if (controller.signal.aborted || this.threadId !== threadId) return;
|
|
4478
5022
|
this._fetchedMetadata = null;
|
|
4479
5023
|
}
|
|
4480
5024
|
}
|
|
@@ -4500,20 +5044,24 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4500
5044
|
if (!silent) {
|
|
4501
5045
|
this._loadingMessages = true;
|
|
4502
5046
|
this._messagesError = null;
|
|
5047
|
+
this._messageRefreshError = null;
|
|
4503
5048
|
}
|
|
4504
5049
|
try {
|
|
4505
5050
|
var _this$provider5;
|
|
4506
5051
|
const messages = ((_this$provider5 = this.provider) === null || _this$provider5 === void 0 ? void 0 : _this$provider5.getMessages) ? await this.provider.getMessages(threadId, { signal: controller.signal }) : await this.fetchRuntimeMessages(threadId, controller.signal);
|
|
4507
5052
|
if (controller.signal.aborted || this.threadId !== threadId) return;
|
|
4508
5053
|
this._conversation = this.mapMessages(messages);
|
|
5054
|
+
this._messagesError = null;
|
|
5055
|
+
this._messageRefreshError = null;
|
|
4509
5056
|
} catch (err) {
|
|
5057
|
+
if (controller.signal.aborted || this.threadId !== threadId) return;
|
|
4510
5058
|
if (err instanceof Error && err.name === "AbortError") return;
|
|
4511
|
-
if (!silent) {
|
|
5059
|
+
if (!silent || this._conversation.length === 0) {
|
|
4512
5060
|
this._messagesError = err instanceof Error ? err.message : "Failed to load messages";
|
|
4513
5061
|
this._conversation = [];
|
|
4514
|
-
}
|
|
5062
|
+
} else this._messageRefreshError = "Could not refresh messages. Showing the last loaded conversation.";
|
|
4515
5063
|
} finally {
|
|
4516
|
-
if (!
|
|
5064
|
+
if (!controller.signal.aborted && this.threadId === threadId) this._loadingMessages = false;
|
|
4517
5065
|
}
|
|
4518
5066
|
}
|
|
4519
5067
|
async fetchEvents(threadId) {
|
|
@@ -4542,7 +5090,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4542
5090
|
this._fetchedEvents = this.mapApiEvents(result.events);
|
|
4543
5091
|
} catch (err) {
|
|
4544
5092
|
if (err instanceof Error && err.name === "AbortError") return;
|
|
4545
|
-
if (this.threadId !== threadId) return;
|
|
5093
|
+
if (controller.signal.aborted || this.threadId !== threadId) return;
|
|
4546
5094
|
this._eventsError = err instanceof Error ? err.message : "Failed to load events";
|
|
4547
5095
|
this._fetchedEvents = [];
|
|
4548
5096
|
} finally {
|
|
@@ -4575,7 +5123,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4575
5123
|
this._fetchedState = (_result$state = result.state) !== null && _result$state !== void 0 ? _result$state : null;
|
|
4576
5124
|
} catch (err) {
|
|
4577
5125
|
if (err instanceof Error && err.name === "AbortError") return;
|
|
4578
|
-
if (this.threadId !== threadId) return;
|
|
5126
|
+
if (controller.signal.aborted || this.threadId !== threadId) return;
|
|
4579
5127
|
this._stateError = err instanceof Error ? err.message : "Failed to load state";
|
|
4580
5128
|
this._fetchedState = null;
|
|
4581
5129
|
} finally {
|
|
@@ -4654,6 +5202,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4654
5202
|
toolCallId: tc.id,
|
|
4655
5203
|
arguments: args,
|
|
4656
5204
|
result: null,
|
|
5205
|
+
hasResult: false,
|
|
4657
5206
|
createdAt: ""
|
|
4658
5207
|
};
|
|
4659
5208
|
toolCallMap.set(tc.id, item);
|
|
@@ -4676,19 +5225,24 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
4676
5225
|
});
|
|
4677
5226
|
} else if (msg.role === "tool" && msg.toolCallId) {
|
|
4678
5227
|
const tc = toolCallMap.get(msg.toolCallId);
|
|
4679
|
-
if (tc)
|
|
4680
|
-
tc.
|
|
4681
|
-
|
|
4682
|
-
|
|
4683
|
-
|
|
4684
|
-
|
|
4685
|
-
|
|
4686
|
-
error
|
|
4687
|
-
|
|
4688
|
-
|
|
4689
|
-
|
|
4690
|
-
|
|
4691
|
-
|
|
5228
|
+
if (tc) {
|
|
5229
|
+
tc.hasResult = true;
|
|
5230
|
+
tc.resultUnreadable = false;
|
|
5231
|
+
try {
|
|
5232
|
+
tc.result = this.parseToolCallContent(msg.content);
|
|
5233
|
+
} catch (err) {
|
|
5234
|
+
var _msg$content;
|
|
5235
|
+
console.error("[CopilotKit Inspector] Failed to parse tool-call result content", {
|
|
5236
|
+
toolCallId: msg.toolCallId,
|
|
5237
|
+
raw: msg.content,
|
|
5238
|
+
error: err
|
|
5239
|
+
});
|
|
5240
|
+
tc.resultUnreadable = true;
|
|
5241
|
+
tc.result = {
|
|
5242
|
+
__parseError: true,
|
|
5243
|
+
__raw: (_msg$content = msg.content) !== null && _msg$content !== void 0 ? _msg$content : null
|
|
5244
|
+
};
|
|
5245
|
+
}
|
|
4692
5246
|
}
|
|
4693
5247
|
}
|
|
4694
5248
|
return items;
|
|
@@ -5468,14 +6022,65 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
5468
6022
|
<span>No messages yet</span>
|
|
5469
6023
|
</div>
|
|
5470
6024
|
`;
|
|
6025
|
+
const items = this.renderItems;
|
|
6026
|
+
const errors = this.conversationRunErrors(items);
|
|
5471
6027
|
return this.cachedPanelTpl("timeline-fallback", [
|
|
5472
6028
|
this._conversation,
|
|
5473
6029
|
this._expandedTools,
|
|
5474
|
-
this._expandedMessages
|
|
6030
|
+
this._expandedMessages,
|
|
6031
|
+
JSON.stringify(errors),
|
|
6032
|
+
this._expandedTimelineDetails
|
|
5475
6033
|
], () => {
|
|
5476
|
-
|
|
6034
|
+
const errorsAfter = /* @__PURE__ */ new Map();
|
|
6035
|
+
for (const { after, item } of errors) {
|
|
6036
|
+
var _errorsAfter$get;
|
|
6037
|
+
const group = (_errorsAfter$get = errorsAfter.get(after)) !== null && _errorsAfter$get !== void 0 ? _errorsAfter$get : [];
|
|
6038
|
+
group.push(item);
|
|
6039
|
+
errorsAfter.set(after, group);
|
|
6040
|
+
}
|
|
6041
|
+
const renderErrors = (after) => {
|
|
6042
|
+
var _errorsAfter$get2;
|
|
6043
|
+
return (_errorsAfter$get2 = errorsAfter.get(after)) === null || _errorsAfter$get2 === void 0 ? void 0 : _errorsAfter$get2.map((item) => this.renderTimelineItem(item));
|
|
6044
|
+
};
|
|
6045
|
+
return lit.html`
|
|
6046
|
+
${renderErrors(-1)}
|
|
6047
|
+
${items.map((item, index) => lit.html`${this.renderRenderItem(item)}${renderErrors(index)}`)}
|
|
6048
|
+
`;
|
|
5477
6049
|
});
|
|
5478
6050
|
}
|
|
6051
|
+
conversationRunErrors(items) {
|
|
6052
|
+
const positions = /* @__PURE__ */ new Map();
|
|
6053
|
+
items.forEach((item, index) => {
|
|
6054
|
+
positions.set(item.id, index);
|
|
6055
|
+
if (item.type === "tool_call_group") for (const tool of item.items) positions.set(tool.id, index);
|
|
6056
|
+
});
|
|
6057
|
+
const errors = [];
|
|
6058
|
+
let after = -1;
|
|
6059
|
+
let hasAnchor = false;
|
|
6060
|
+
for (const event of this.activeEvents) {
|
|
6061
|
+
const id = (event.type.startsWith("TOOL_CALL") ? [
|
|
6062
|
+
"toolCallId",
|
|
6063
|
+
"tool_call_id",
|
|
6064
|
+
"callId",
|
|
6065
|
+
"id"
|
|
6066
|
+
] : event.type.startsWith("TEXT_MESSAGE") || event.type.startsWith("ACTIVITY") ? [
|
|
6067
|
+
"messageId",
|
|
6068
|
+
"message_id",
|
|
6069
|
+
"id"
|
|
6070
|
+
] : []).map((key) => event.payload[key]).find((value) => typeof value === "string");
|
|
6071
|
+
const position = id == null ? void 0 : positions.get(id);
|
|
6072
|
+
if (position !== void 0) {
|
|
6073
|
+
after = Math.max(after, position);
|
|
6074
|
+
hasAnchor = true;
|
|
6075
|
+
}
|
|
6076
|
+
if (event.type === "RUN_ERROR" || event.type === "ERROR") for (const item of this.timelineItemsFromEvents([event])) errors.push({
|
|
6077
|
+
after,
|
|
6078
|
+
item
|
|
6079
|
+
});
|
|
6080
|
+
}
|
|
6081
|
+
if (!hasAnchor) for (const error of errors) error.after = items.length - 1;
|
|
6082
|
+
return errors;
|
|
6083
|
+
}
|
|
5479
6084
|
/**
|
|
5480
6085
|
* Memoize the rendered TemplateResult for `slot` keyed by tuple
|
|
5481
6086
|
* element-wise reference equality. The hot path for tab switches: when
|
|
@@ -5548,32 +6153,40 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
5548
6153
|
const expanded = this._expandedTools.has(item.id);
|
|
5549
6154
|
return lit.html`
|
|
5550
6155
|
<div class="cpk-td__tool-block">
|
|
5551
|
-
<
|
|
6156
|
+
<button
|
|
6157
|
+
type="button"
|
|
5552
6158
|
class="cpk-td__tool-header"
|
|
6159
|
+
aria-expanded=${expanded}
|
|
5553
6160
|
@click=${() => this.toggleToolExpand(item.id)}
|
|
5554
6161
|
>
|
|
5555
|
-
<svg width="
|
|
6162
|
+
<svg width="14" height="14" viewBox="0 0 24 24" fill="none" aria-hidden="true">
|
|
5556
6163
|
<path
|
|
5557
|
-
d="
|
|
6164
|
+
d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94z"
|
|
5558
6165
|
stroke="currentColor"
|
|
5559
|
-
stroke-width="
|
|
6166
|
+
stroke-width="2"
|
|
5560
6167
|
stroke-linecap="round"
|
|
5561
6168
|
stroke-linejoin="round"
|
|
5562
6169
|
/>
|
|
5563
6170
|
</svg>
|
|
5564
6171
|
<span class="cpk-td__tool-name">${item.toolName}</span>
|
|
5565
|
-
${item.
|
|
5566
|
-
<span class="cpk-td__tool-status"
|
|
5567
|
-
|
|
5568
|
-
|
|
5569
|
-
`
|
|
6172
|
+
${item.resultUnreadable ? lit.html`
|
|
6173
|
+
<span class="cpk-td__tool-status cpk-td__tool-status--pending"
|
|
6174
|
+
>Result unreadable</span
|
|
6175
|
+
>
|
|
6176
|
+
` : item.hasResult ? lit.html`
|
|
6177
|
+
<span class="cpk-td__tool-status">Result received</span>
|
|
6178
|
+
` : lit.html`
|
|
6179
|
+
<span class="cpk-td__tool-status cpk-td__tool-status--pending"
|
|
6180
|
+
>No result recorded</span
|
|
6181
|
+
>
|
|
6182
|
+
`}
|
|
5570
6183
|
<span class="cpk-td__tool-chevron">${expanded ? "▾" : "▸"}</span>
|
|
5571
|
-
</
|
|
6184
|
+
</button>
|
|
5572
6185
|
${expanded ? lit.html`
|
|
5573
6186
|
<div class="cpk-td__tool-body">
|
|
5574
6187
|
<div class="cpk-td__tool-section-label">Arguments</div>
|
|
5575
6188
|
${renderHighlightedJsonBlock(item.arguments)}
|
|
5576
|
-
${item.
|
|
6189
|
+
${item.hasResult ? lit.html`
|
|
5577
6190
|
<div
|
|
5578
6191
|
class="cpk-td__tool-section-label"
|
|
5579
6192
|
style="margin-top:8px"
|
|
@@ -5884,6 +6497,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
5884
6497
|
_loadingEvents: { state: true },
|
|
5885
6498
|
_loadingState: { state: true },
|
|
5886
6499
|
_messagesError: { state: true },
|
|
6500
|
+
_messageRefreshError: { state: true },
|
|
5887
6501
|
_eventsError: { state: true },
|
|
5888
6502
|
_stateError: { state: true },
|
|
5889
6503
|
_expandedTools: { state: true },
|
|
@@ -6413,10 +7027,19 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
6413
7027
|
background: #ffffff;
|
|
6414
7028
|
color: #71717a;
|
|
6415
7029
|
cursor: pointer;
|
|
7030
|
+
width: 100%;
|
|
7031
|
+
border: 0;
|
|
7032
|
+
font-family: inherit;
|
|
7033
|
+
text-align: left;
|
|
6416
7034
|
font-size: 11px;
|
|
6417
7035
|
user-select: none;
|
|
6418
7036
|
}
|
|
6419
7037
|
|
|
7038
|
+
.cpk-td__tool-header:focus-visible {
|
|
7039
|
+
outline: 2px solid var(--cpk-primary-color, #7076b3);
|
|
7040
|
+
outline-offset: -2px;
|
|
7041
|
+
}
|
|
7042
|
+
|
|
6420
7043
|
.cpk-td__tool-header:hover {
|
|
6421
7044
|
background: #fafafa;
|
|
6422
7045
|
}
|
|
@@ -8014,11 +8637,13 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
8014
8637
|
150
|
|
8015
8638
|
];
|
|
8016
8639
|
this._evtColResize = null;
|
|
8640
|
+
this.notificationContext = { development: false };
|
|
8641
|
+
this.notificationFeed = null;
|
|
8642
|
+
this.notificationState = emptyNotificationState();
|
|
8643
|
+
this.notificationDocuments = /* @__PURE__ */ new Map();
|
|
8644
|
+
this.selectedNotificationId = null;
|
|
8017
8645
|
this.announcementHtml = null;
|
|
8018
|
-
this.
|
|
8019
|
-
this.announcementTimestamp = null;
|
|
8020
|
-
this.announcementPreviewText = null;
|
|
8021
|
-
this.announcementCtaLabel = null;
|
|
8646
|
+
this.announcementId = null;
|
|
8022
8647
|
this.announcementLoaded = false;
|
|
8023
8648
|
this.announcementPromise = null;
|
|
8024
8649
|
this.newsSignalArmed = false;
|
|
@@ -8055,6 +8680,10 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
8055
8680
|
this.launcherHudIntro = false;
|
|
8056
8681
|
this.launcherHudIntroStartTimer = null;
|
|
8057
8682
|
this.launcherHudIntroEndTimer = null;
|
|
8683
|
+
this.viewedHudElement = null;
|
|
8684
|
+
this.launcherHudTrigger = "user";
|
|
8685
|
+
this.viewedHudParts = /* @__PURE__ */ new Set();
|
|
8686
|
+
this.pendingHudTelemetry = [];
|
|
8058
8687
|
this.inspectorDismissedUntil = null;
|
|
8059
8688
|
this.lastReportedInspectorVisibility = null;
|
|
8060
8689
|
this.inspectorDismissalTimer = null;
|
|
@@ -8348,9 +8977,18 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
8348
8977
|
this.closeLauncherHud();
|
|
8349
8978
|
(_this$activeRoot$quer = this.activeRoot.querySelector(".console-button")) === null || _this$activeRoot$quer === void 0 || _this$activeRoot$quer.focus();
|
|
8350
8979
|
};
|
|
8351
|
-
this.handleHudActionClick = (event, row) => {
|
|
8980
|
+
this.handleHudActionClick = (event, row, control) => {
|
|
8352
8981
|
event.preventDefault();
|
|
8353
8982
|
event.stopPropagation();
|
|
8983
|
+
const trigger = this.launcherHudTrigger;
|
|
8984
|
+
this.queueHudTelemetry(() => control === "toggle" ? trackHudFeatureToggleClicked({
|
|
8985
|
+
feature: row,
|
|
8986
|
+
trigger
|
|
8987
|
+
}) : trackHudFeatureClicked({
|
|
8988
|
+
feature: row,
|
|
8989
|
+
control,
|
|
8990
|
+
trigger
|
|
8991
|
+
}));
|
|
8354
8992
|
this.hudLandingMenu = row === "threads" ? "threads" : row === "learning" ? "memories" : "home";
|
|
8355
8993
|
this.closeLauncherHud();
|
|
8356
8994
|
this.openInspector("floating_button");
|
|
@@ -8358,12 +8996,23 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
8358
8996
|
this.handleHudRowClick = (event, row) => {
|
|
8359
8997
|
const target = event.target;
|
|
8360
8998
|
if (target instanceof Element && target.closest(".cpk-launcher-hud__controls, [data-cpk-hud-action]")) return;
|
|
8361
|
-
this.handleHudActionClick(event, row);
|
|
8999
|
+
this.handleHudActionClick(event, row, "row");
|
|
8362
9000
|
};
|
|
8363
9001
|
this.handleHudNewsClick = (event) => {
|
|
8364
9002
|
event.preventDefault();
|
|
8365
9003
|
event.stopPropagation();
|
|
9004
|
+
const banner_id = this.announcementId;
|
|
9005
|
+
if (banner_id) {
|
|
9006
|
+
const trigger = this.launcherHudTrigger;
|
|
9007
|
+
this.queueHudTelemetry(() => trackHudNotificationClicked({
|
|
9008
|
+
banner_id,
|
|
9009
|
+
notification_id: banner_id,
|
|
9010
|
+
action: "open",
|
|
9011
|
+
trigger
|
|
9012
|
+
}));
|
|
9013
|
+
}
|
|
8366
9014
|
this.hudLandingMenu = WHATS_NEW_MENU_KEY;
|
|
9015
|
+
if (this.notificationState.activeId) this.readNotification(this.notificationState.activeId);
|
|
8367
9016
|
this.closeLauncherHud();
|
|
8368
9017
|
this.openInspector("floating_button");
|
|
8369
9018
|
};
|
|
@@ -8371,12 +9020,24 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
8371
9020
|
var _this$activeRoot$quer2;
|
|
8372
9021
|
event.preventDefault();
|
|
8373
9022
|
event.stopPropagation();
|
|
9023
|
+
const banner_id = this.announcementId;
|
|
9024
|
+
if (banner_id) {
|
|
9025
|
+
const trigger = this.launcherHudTrigger;
|
|
9026
|
+
this.queueHudTelemetry(() => trackHudNotificationClicked({
|
|
9027
|
+
banner_id,
|
|
9028
|
+
notification_id: banner_id,
|
|
9029
|
+
action: "dismiss",
|
|
9030
|
+
trigger
|
|
9031
|
+
}));
|
|
9032
|
+
}
|
|
8374
9033
|
this.clearNewsSignal();
|
|
8375
9034
|
(_this$activeRoot$quer2 = this.activeRoot.querySelector(".console-button")) === null || _this$activeRoot$quer2 === void 0 || _this$activeRoot$quer2.focus({ preventScroll: true });
|
|
8376
9035
|
};
|
|
8377
9036
|
this.handleHudDismissDayClick = (event) => {
|
|
8378
9037
|
event.preventDefault();
|
|
8379
9038
|
event.stopPropagation();
|
|
9039
|
+
const trigger = this.launcherHudTrigger;
|
|
9040
|
+
this.queueHudTelemetry(() => trackHudHideClicked({ trigger }));
|
|
8380
9041
|
this.dismissInspectorFor("day");
|
|
8381
9042
|
};
|
|
8382
9043
|
this.handleSidebarToggle = () => {
|
|
@@ -9499,6 +10160,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
9499
10160
|
runtimeLicense = void 0;
|
|
9500
10161
|
}
|
|
9501
10162
|
this.inspectorMetadataProjection = projectInspectorMetadata(value, runtimeLicense);
|
|
10163
|
+
this.refreshNotifications();
|
|
9502
10164
|
}
|
|
9503
10165
|
attachToCore(core) {
|
|
9504
10166
|
var _this$inspectorMetada2;
|
|
@@ -10364,6 +11026,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
10364
11026
|
}
|
|
10365
11027
|
connectedCallback() {
|
|
10366
11028
|
super.connectedCallback();
|
|
11029
|
+
this.notificationState = loadNotificationState();
|
|
10367
11030
|
if (typeof window !== "undefined") {
|
|
10368
11031
|
var _window$matchMedia$ma, _window$matchMedia, _window;
|
|
10369
11032
|
this.accountCtaMotionPaused = document.visibilityState !== "visible";
|
|
@@ -10480,7 +11143,11 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
10480
11143
|
if (this.isOpen && this.dockMode === "docked-left") this.setAttribute("data-docked", "true");
|
|
10481
11144
|
else this.removeAttribute("data-docked");
|
|
10482
11145
|
}
|
|
10483
|
-
updated() {
|
|
11146
|
+
updated(changed) {
|
|
11147
|
+
if (changed.has("notificationContext") || changed.has("core")) {
|
|
11148
|
+
this.ensureAnnouncementLoading();
|
|
11149
|
+
this.refreshNotifications();
|
|
11150
|
+
}
|
|
10484
11151
|
const visible = !this.isInspectorDismissed;
|
|
10485
11152
|
if (visible !== this.lastReportedInspectorVisibility) {
|
|
10486
11153
|
this.lastReportedInspectorVisibility = visible;
|
|
@@ -10490,6 +11157,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
10490
11157
|
this.syncThreadsExampleOverviewVideo();
|
|
10491
11158
|
this.maybeTrackInspectorMetadataViews();
|
|
10492
11159
|
this.maybeTrackNewsSignalViewed();
|
|
11160
|
+
this.maybeTrackHudViews();
|
|
10493
11161
|
this.resolvePillDirection();
|
|
10494
11162
|
this.maybeTrackErrorSignalViewed();
|
|
10495
11163
|
this.maybeCompleteWhatsNewView();
|
|
@@ -10734,6 +11402,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
10734
11402
|
this.resolveLauncherHudSide();
|
|
10735
11403
|
this.launcherHudIntro = true;
|
|
10736
11404
|
this.launcherHudOpen = true;
|
|
11405
|
+
this.launcherHudTrigger = "intro";
|
|
10737
11406
|
this.refreshLearningSnapshot({ preserve: true });
|
|
10738
11407
|
this.requestUpdate();
|
|
10739
11408
|
this.launcherHudIntroEndTimer = setTimeout(() => {
|
|
@@ -10782,6 +11451,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
10782
11451
|
}
|
|
10783
11452
|
if (this.launcherHudOpen) return;
|
|
10784
11453
|
this.launcherHudOpen = true;
|
|
11454
|
+
this.launcherHudTrigger = "user";
|
|
10785
11455
|
this.refreshLearningSnapshot({ preserve: true });
|
|
10786
11456
|
this.requestUpdate();
|
|
10787
11457
|
}
|
|
@@ -10793,12 +11463,64 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
10793
11463
|
}
|
|
10794
11464
|
if (!this.launcherHudOpen) return;
|
|
10795
11465
|
this.launcherHudOpen = false;
|
|
11466
|
+
this.viewedHudElement = null;
|
|
11467
|
+
this.viewedHudParts.clear();
|
|
10796
11468
|
this.requestUpdate();
|
|
10797
11469
|
}
|
|
11470
|
+
queueHudTelemetry(send) {
|
|
11471
|
+
var _this$core22;
|
|
11472
|
+
if ((_this$core22 = this.core) === null || _this$core22 === void 0 ? void 0 : _this$core22.telemetryDisabled) return;
|
|
11473
|
+
if (this.runtimeStatus === _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected) send();
|
|
11474
|
+
else if (this.pendingHudTelemetry.length < MAX_PENDING_BANNER_VIEWED) this.pendingHudTelemetry.push(send);
|
|
11475
|
+
}
|
|
11476
|
+
flushPendingHudTelemetry() {
|
|
11477
|
+
var _this$core23;
|
|
11478
|
+
if ((_this$core23 = this.core) === null || _this$core23 === void 0 ? void 0 : _this$core23.telemetryDisabled) {
|
|
11479
|
+
this.pendingHudTelemetry = [];
|
|
11480
|
+
return;
|
|
11481
|
+
}
|
|
11482
|
+
if (this.runtimeStatus !== _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected) return;
|
|
11483
|
+
const queued = this.pendingHudTelemetry;
|
|
11484
|
+
this.pendingHudTelemetry = [];
|
|
11485
|
+
for (const send of queued) send();
|
|
11486
|
+
}
|
|
11487
|
+
maybeTrackHudViews() {
|
|
11488
|
+
const hud = this.activeRoot.querySelector("[data-cpk-launcher-hud]");
|
|
11489
|
+
if (!hud) {
|
|
11490
|
+
this.viewedHudElement = null;
|
|
11491
|
+
this.viewedHudParts.clear();
|
|
11492
|
+
return;
|
|
11493
|
+
}
|
|
11494
|
+
if (document.visibilityState !== "visible") return;
|
|
11495
|
+
if (hud !== this.viewedHudElement) {
|
|
11496
|
+
this.viewedHudElement = hud;
|
|
11497
|
+
this.viewedHudParts.clear();
|
|
11498
|
+
}
|
|
11499
|
+
const once = (key, send) => {
|
|
11500
|
+
if (this.viewedHudParts.has(key)) return;
|
|
11501
|
+
this.viewedHudParts.add(key);
|
|
11502
|
+
this.queueHudTelemetry(send);
|
|
11503
|
+
};
|
|
11504
|
+
const trigger = this.launcherHudTrigger;
|
|
11505
|
+
once("hud", () => trackHudViewed({ trigger }));
|
|
11506
|
+
if (hud.querySelector("[data-cpk-hud-news]") && this.announcementId) {
|
|
11507
|
+
const banner_id = this.announcementId;
|
|
11508
|
+
once(`notification:${banner_id}`, () => trackHudNotificationViewed({
|
|
11509
|
+
banner_id,
|
|
11510
|
+
notification_id: banner_id,
|
|
11511
|
+
trigger
|
|
11512
|
+
}));
|
|
11513
|
+
}
|
|
11514
|
+
for (const feature of ["threads", "learning"]) if (hud.querySelector(`[data-cpk-hud-toggle="${feature}"]`)) once(`toggle:${feature}`, () => trackHudFeatureToggleViewed({
|
|
11515
|
+
feature,
|
|
11516
|
+
trigger
|
|
11517
|
+
}));
|
|
11518
|
+
if (hud.querySelector("[data-cpk-dismiss-inspector=\"day\"]")) once("hide", () => trackHudHideViewed({ trigger }));
|
|
11519
|
+
}
|
|
10798
11520
|
getUnreadAnnouncementTitle() {
|
|
10799
|
-
var _this$
|
|
11521
|
+
var _this$notificationFee;
|
|
10800
11522
|
if (!this.newsSignalArmed || !this.announcementLoaded) return null;
|
|
10801
|
-
const title = ((_this$
|
|
11523
|
+
const title = ((_this$notificationFee = this.notificationFeed) === null || _this$notificationFee === void 0 || (_this$notificationFee = _this$notificationFee.notifications.find((notice) => notice.id === this.notificationState.activeId)) === null || _this$notificationFee === void 0 ? void 0 : _this$notificationFee.title.trim()) || "New in CopilotKit";
|
|
10802
11524
|
const titleCharacters = Array.from(title);
|
|
10803
11525
|
return titleCharacters.length > HUD_ANNOUNCEMENT_TITLE_LIMIT ? `${titleCharacters.slice(0, HUD_ANNOUNCEMENT_TITLE_LIMIT).join("").trimEnd()}...` : title;
|
|
10804
11526
|
}
|
|
@@ -10819,7 +11541,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
10819
11541
|
class="cpk-launcher-hud__action"
|
|
10820
11542
|
data-cpk-hud-action
|
|
10821
11543
|
aria-label=${`Open ${args.label} in Inspector`}
|
|
10822
|
-
@click=${(event) => this.handleHudActionClick(event, args.id)}
|
|
11544
|
+
@click=${(event) => this.handleHudActionClick(event, args.id, "action")}
|
|
10823
11545
|
@pointerdown=${(event) => event.stopPropagation()}
|
|
10824
11546
|
>
|
|
10825
11547
|
<span
|
|
@@ -10844,7 +11566,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
10844
11566
|
data-cpk-hud-learn-more=${args.id}
|
|
10845
11567
|
aria-label=${`Learn more about ${args.label}`}
|
|
10846
11568
|
aria-describedby=${detailId}
|
|
10847
|
-
@click=${(event) => this.handleHudActionClick(event, args.id)}
|
|
11569
|
+
@click=${(event) => this.handleHudActionClick(event, args.id, "learn_more")}
|
|
10848
11570
|
@pointerdown=${(event) => event.stopPropagation()}
|
|
10849
11571
|
>
|
|
10850
11572
|
${this.renderIcon("CircleHelp")}
|
|
@@ -10856,7 +11578,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
10856
11578
|
data-enabled=${args.connected ? "true" : "false"}
|
|
10857
11579
|
aria-label=${args.connected ? `${args.label} is enabled` : `Open ${args.label} in Inspector`}
|
|
10858
11580
|
?disabled=${args.connected}
|
|
10859
|
-
@click=${(event) => this.handleHudActionClick(event, args.id)}
|
|
11581
|
+
@click=${(event) => this.handleHudActionClick(event, args.id, "toggle")}
|
|
10860
11582
|
@pointerdown=${(event) => event.stopPropagation()}
|
|
10861
11583
|
>
|
|
10862
11584
|
<span
|
|
@@ -11174,8 +11896,9 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
11174
11896
|
`;
|
|
11175
11897
|
}
|
|
11176
11898
|
getHomeModel() {
|
|
11177
|
-
var _this$_core6, _this$_core7, _this$learningSnapsho7, _this$_core8, _this$_core9, _this$_core10, _this$_core11, _this$_core12
|
|
11899
|
+
var _this$notificationFee2, _this$_core6, _this$_core7, _this$learningSnapsho7, _this$_core8, _this$_core9, _this$_core10, _this$_core11, _this$_core12;
|
|
11178
11900
|
const lastRuntimeEvent = this.flattenedEvents[0];
|
|
11901
|
+
const activeNotice = (_this$notificationFee2 = this.notificationFeed) === null || _this$notificationFee2 === void 0 ? void 0 : _this$notificationFee2.notifications.find((notice) => notice.id === this.notificationState.activeId);
|
|
11179
11902
|
return buildHomeModel({
|
|
11180
11903
|
intelligenceConnected: Boolean((_this$_core6 = this._core) === null || _this$_core6 === void 0 ? void 0 : _this$_core6.intelligence),
|
|
11181
11904
|
threadsAvailable: this.areThreadEndpointsAvailable(),
|
|
@@ -11194,26 +11917,23 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
11194
11917
|
suggestionsOn: ((_this$_core10 = this._core) === null || _this$_core10 === void 0 ? void 0 : _this$_core10.suggestions) === true,
|
|
11195
11918
|
audioOn: ((_this$_core11 = this._core) === null || _this$_core11 === void 0 ? void 0 : _this$_core11.audioFileTranscriptionEnabled) === true,
|
|
11196
11919
|
websocketUrl: (_this$_core12 = this._core) === null || _this$_core12 === void 0 || (_this$_core12 = _this$_core12.intelligence) === null || _this$_core12 === void 0 ? void 0 : _this$_core12.wsUrl,
|
|
11197
|
-
announcementPreviewText:
|
|
11198
|
-
announcementMarkdown:
|
|
11199
|
-
announcementHtml:
|
|
11920
|
+
announcementPreviewText: activeNotice === null || activeNotice === void 0 ? void 0 : activeNotice.title,
|
|
11921
|
+
announcementMarkdown: activeNotice === null || activeNotice === void 0 ? void 0 : activeNotice.body,
|
|
11922
|
+
announcementHtml: activeNotice ? this.notificationDocuments.get(activeNotice.id) : void 0,
|
|
11200
11923
|
intelligenceSignupUrl: this.getIntelligenceSignupUrl()
|
|
11201
11924
|
});
|
|
11202
11925
|
}
|
|
11203
11926
|
renderHomeView() {
|
|
11204
|
-
var _model$project$projec, _model$project3;
|
|
11205
11927
|
const model = this.getHomeModel();
|
|
11206
|
-
const connected = model.hero.connection === "connected";
|
|
11207
11928
|
return lit.html`
|
|
11208
11929
|
<div
|
|
11209
11930
|
class="inspector-home"
|
|
11210
11931
|
data-inspector-home
|
|
11211
|
-
data-inspector-home-state=${connected ? "connected" : "disconnected"}
|
|
11932
|
+
data-inspector-home-state=${model.hero.connection === "connected" ? "connected" : "disconnected"}
|
|
11212
11933
|
>
|
|
11213
11934
|
${this.renderHomeWhatsNewPreview(model.news)}
|
|
11214
|
-
|
|
11215
|
-
${
|
|
11216
|
-
${connected ? this.renderHomeIntelligenceHud(model) : this.renderHomeSystemHealth(model)}
|
|
11935
|
+
${this.renderHomeSystemHealth(model)}
|
|
11936
|
+
${this.renderHomeIntelligenceHud(model)}
|
|
11217
11937
|
${this.renderHomeFeatures(model)}
|
|
11218
11938
|
</div>
|
|
11219
11939
|
`;
|
|
@@ -11235,7 +11955,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
11235
11955
|
data-inspector-whats-new-preview
|
|
11236
11956
|
aria-label="Open What's New"
|
|
11237
11957
|
style=${INTERACTIVE_FOCUS_BASE_STYLE}
|
|
11238
|
-
@click=${() => this.handleMenuSelect(WHATS_NEW_MENU_KEY)}
|
|
11958
|
+
@click=${() => this.notificationState.activeId ? this.readNotification(this.notificationState.activeId) : this.handleMenuSelect(WHATS_NEW_MENU_KEY)}
|
|
11239
11959
|
>
|
|
11240
11960
|
<span class="inspector-whats-new-preview-copy">
|
|
11241
11961
|
<span class="inspector-whats-new-preview-title">
|
|
@@ -11252,47 +11972,90 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
11252
11972
|
`;
|
|
11253
11973
|
}
|
|
11254
11974
|
renderWhatsNewView() {
|
|
11255
|
-
|
|
11256
|
-
const
|
|
11257
|
-
const
|
|
11258
|
-
const
|
|
11259
|
-
month: "
|
|
11975
|
+
var _this$notificationFee3, _this$notificationFee4, _this$notificationDoc;
|
|
11976
|
+
const notices = (_this$notificationFee3 = (_this$notificationFee4 = this.notificationFeed) === null || _this$notificationFee4 === void 0 ? void 0 : _this$notificationFee4.notifications.filter((n) => this.notificationState.eligibleIds.includes(n.id)).sort(compareNotifications)) !== null && _this$notificationFee3 !== void 0 ? _this$notificationFee3 : [];
|
|
11977
|
+
const selected = notices.find((n) => n.id === this.selectedNotificationId);
|
|
11978
|
+
const formatDate = (date) => new Date(date).toLocaleDateString(void 0, {
|
|
11979
|
+
month: "short",
|
|
11260
11980
|
day: "numeric",
|
|
11261
11981
|
year: "numeric"
|
|
11262
|
-
})
|
|
11982
|
+
});
|
|
11263
11983
|
return lit.html`
|
|
11264
11984
|
<div
|
|
11265
11985
|
class="inspector-home inspector-whats-new"
|
|
11266
11986
|
data-inspector-whats-new
|
|
11267
11987
|
data-cpk-whats-new
|
|
11268
|
-
data-cpk-whats-new-state=${
|
|
11988
|
+
data-cpk-whats-new-state=${this.getWhatsNewState()}
|
|
11269
11989
|
>
|
|
11270
|
-
<header class="inspector-whats-new-header">
|
|
11271
|
-
<h1 class="inspector-home-title">What's New</h1>
|
|
11272
|
-
${updatedLabel ? lit.html`
|
|
11273
|
-
<p class="inspector-whats-new-updated">
|
|
11274
|
-
Updated
|
|
11275
|
-
<time datetime=${updatedAt === null || updatedAt === void 0 ? void 0 : updatedAt.toISOString()}
|
|
11276
|
-
>${updatedLabel}</time
|
|
11277
|
-
>
|
|
11278
|
-
</p>
|
|
11279
|
-
` : lit.nothing}
|
|
11280
|
-
</header>
|
|
11281
11990
|
<section class="inspector-home-news" aria-label="CopilotKit updates">
|
|
11282
|
-
${
|
|
11283
|
-
<
|
|
11284
|
-
|
|
11285
|
-
|
|
11286
|
-
|
|
11287
|
-
|
|
11991
|
+
${selected ? lit.html`
|
|
11992
|
+
<button
|
|
11993
|
+
type="button"
|
|
11994
|
+
class="inspector-whats-new-back"
|
|
11995
|
+
@click=${() => {
|
|
11996
|
+
this.selectedNotificationId = null;
|
|
11997
|
+
this.requestUpdate();
|
|
11998
|
+
}}
|
|
11999
|
+
>
|
|
12000
|
+
<span aria-hidden="true"
|
|
12001
|
+
>${this.renderIcon("ArrowLeft")}</span
|
|
12002
|
+
>
|
|
12003
|
+
All updates
|
|
12004
|
+
</button>
|
|
11288
12005
|
<article class="inspector-whats-new-document">
|
|
12006
|
+
<header class="inspector-whats-new-document-header">
|
|
12007
|
+
<h1>${selected.title}</h1>
|
|
12008
|
+
<time datetime=${selected.publishedAt}>
|
|
12009
|
+
${formatDate(selected.publishedAt)}
|
|
12010
|
+
</time>
|
|
12011
|
+
</header>
|
|
11289
12012
|
<div
|
|
11290
12013
|
class="announcement-content"
|
|
11291
12014
|
@click=${this.handleAnnouncementContentClick}
|
|
11292
12015
|
>
|
|
11293
|
-
${(0, lit_directives_unsafe_html_js.unsafeHTML)(
|
|
12016
|
+
${(0, lit_directives_unsafe_html_js.unsafeHTML)((_this$notificationDoc = this.notificationDocuments.get(selected.id)) !== null && _this$notificationDoc !== void 0 ? _this$notificationDoc : "")}
|
|
11294
12017
|
</div>
|
|
11295
12018
|
</article>
|
|
12019
|
+
` : lit.html`
|
|
12020
|
+
<header class="inspector-whats-new-header">
|
|
12021
|
+
<h1 class="inspector-home-title">What's New</h1>
|
|
12022
|
+
</header>
|
|
12023
|
+
${notices.length ? lit.html`
|
|
12024
|
+
<ul class="inspector-whats-new-list">
|
|
12025
|
+
${notices.map((notice) => {
|
|
12026
|
+
const read = this.notificationState.readIds.includes(notice.id);
|
|
12027
|
+
return lit.html`
|
|
12028
|
+
<li>
|
|
12029
|
+
<button
|
|
12030
|
+
type="button"
|
|
12031
|
+
class="cpk-notification-row"
|
|
12032
|
+
data-notification-id=${notice.id}
|
|
12033
|
+
@click=${() => this.readNotification(notice.id)}
|
|
12034
|
+
>
|
|
12035
|
+
<span class="cpk-notification-copy">
|
|
12036
|
+
<strong>${notice.title}</strong>
|
|
12037
|
+
<span class="cpk-notification-meta">
|
|
12038
|
+
<time datetime=${notice.publishedAt}
|
|
12039
|
+
>${formatDate(notice.publishedAt)}</time
|
|
12040
|
+
>
|
|
12041
|
+
${read ? lit.nothing : lit.html`
|
|
12042
|
+
<span class="cpk-notification-unread">Unread</span>
|
|
12043
|
+
`}
|
|
12044
|
+
</span>
|
|
12045
|
+
</span>
|
|
12046
|
+
<span
|
|
12047
|
+
class="cpk-notification-chevron"
|
|
12048
|
+
aria-hidden="true"
|
|
12049
|
+
>${this.renderIcon("ChevronRight")}</span
|
|
12050
|
+
>
|
|
12051
|
+
</button>
|
|
12052
|
+
</li>
|
|
12053
|
+
`;
|
|
12054
|
+
})}
|
|
12055
|
+
</ul>
|
|
12056
|
+
` : lit.html`<p class="inspector-whats-new-empty" role="status">
|
|
12057
|
+
${this.announcementLoaded || !this.notificationContext.development ? "You're all caught up." : "Loading updates…"}
|
|
12058
|
+
</p>`}
|
|
11296
12059
|
`}
|
|
11297
12060
|
</section>
|
|
11298
12061
|
</div>
|
|
@@ -11763,8 +12526,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
11763
12526
|
`;
|
|
11764
12527
|
}
|
|
11765
12528
|
handleHomeHeroCta(action) {
|
|
11766
|
-
var _this$
|
|
11767
|
-
if ((_this$
|
|
12529
|
+
var _this$core24;
|
|
12530
|
+
if ((_this$core24 = this.core) === null || _this$core24 === void 0 ? void 0 : _this$core24.telemetryDisabled) return;
|
|
11768
12531
|
trackHomeCtaClicked({ action_kind: action.kind });
|
|
11769
12532
|
}
|
|
11770
12533
|
/**
|
|
@@ -12077,12 +12840,12 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
12077
12840
|
}
|
|
12078
12841
|
/** A press pins that beat and stops the loop; the developer is now driving. */
|
|
12079
12842
|
pinIntelligenceStoryBeat(index) {
|
|
12080
|
-
var _this$
|
|
12843
|
+
var _this$core25;
|
|
12081
12844
|
this.intelStoryUserPinned = true;
|
|
12082
12845
|
this.intelStoryBeat = index;
|
|
12083
12846
|
this.stopIntelligenceStory();
|
|
12084
12847
|
this.requestUpdate();
|
|
12085
|
-
if (!((_this$
|
|
12848
|
+
if (!((_this$core25 = this.core) === null || _this$core25 === void 0 ? void 0 : _this$core25.telemetryDisabled)) {
|
|
12086
12849
|
const beat = INTELLIGENCE_STORY_BEATS[index];
|
|
12087
12850
|
if (beat) trackHomeStoryBeatSelected({
|
|
12088
12851
|
beat: beat.id,
|
|
@@ -12146,9 +12909,9 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
12146
12909
|
return false;
|
|
12147
12910
|
}
|
|
12148
12911
|
maybeTrackHomeViewed() {
|
|
12149
|
-
var _this$
|
|
12912
|
+
var _this$core26;
|
|
12150
12913
|
if (this.selectedMenu !== "home" || this.settingsOpen || !this.isOpen) return;
|
|
12151
|
-
if (!this.homeViewedThisOpen && !((_this$
|
|
12914
|
+
if (!this.homeViewedThisOpen && !((_this$core26 = this.core) === null || _this$core26 === void 0 ? void 0 : _this$core26.telemetryDisabled)) {
|
|
12152
12915
|
this.homeViewedThisOpen = true;
|
|
12153
12916
|
trackHomeViewed();
|
|
12154
12917
|
}
|
|
@@ -13609,8 +14372,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
13609
14372
|
`;
|
|
13610
14373
|
}
|
|
13611
14374
|
renderSettingsPanel() {
|
|
13612
|
-
var _this$core$telemetryD, _this$
|
|
13613
|
-
const optedOut = (_this$core$telemetryD = (_this$
|
|
14375
|
+
var _this$core$telemetryD, _this$core27;
|
|
14376
|
+
const optedOut = (_this$core$telemetryD = (_this$core27 = this.core) === null || _this$core27 === void 0 ? void 0 : _this$core27.telemetryDisabled) !== null && _this$core$telemetryD !== void 0 ? _this$core$telemetryD : false;
|
|
13614
14377
|
return lit.html`
|
|
13615
14378
|
<div
|
|
13616
14379
|
class="inspector-settings"
|
|
@@ -13723,16 +14486,16 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
13723
14486
|
`;
|
|
13724
14487
|
}
|
|
13725
14488
|
trackOpened(source, hadUnseenAnnouncement, firstOpen = false, activeSignal = null) {
|
|
13726
|
-
var _this$
|
|
13727
|
-
if ((_this$
|
|
14489
|
+
var _this$core28, _this$core$licenseSta2, _this$core29, _this$core$runtimeMod2, _this$core30, _this$core31;
|
|
14490
|
+
if ((_this$core28 = this.core) === null || _this$core28 === void 0 ? void 0 : _this$core28.telemetryDisabled) return;
|
|
13728
14491
|
const errorSignal = activeSignal !== null && isErrorSignalKey(activeSignal) ? activeSignal : null;
|
|
13729
14492
|
trackInspectorOpened({
|
|
13730
14493
|
open_source: source,
|
|
13731
14494
|
...this.runtimeStatus === "connected" ? {
|
|
13732
|
-
license_status: (_this$core$licenseSta2 = (_this$
|
|
13733
|
-
runtime_mode: (_this$core$runtimeMod2 = (_this$
|
|
14495
|
+
license_status: (_this$core$licenseSta2 = (_this$core29 = this.core) === null || _this$core29 === void 0 ? void 0 : _this$core29.licenseStatus) !== null && _this$core$licenseSta2 !== void 0 ? _this$core$licenseSta2 : void 0,
|
|
14496
|
+
runtime_mode: (_this$core$runtimeMod2 = (_this$core30 = this.core) === null || _this$core30 === void 0 ? void 0 : _this$core30.runtimeMode) !== null && _this$core$runtimeMod2 !== void 0 ? _this$core$runtimeMod2 : void 0
|
|
13734
14497
|
} : {},
|
|
13735
|
-
runtime_url_type: getRuntimeUrlType((_this$
|
|
14498
|
+
runtime_url_type: getRuntimeUrlType((_this$core31 = this.core) === null || _this$core31 === void 0 ? void 0 : _this$core31.runtimeUrl),
|
|
13736
14499
|
has_unseen_announcement: hadUnseenAnnouncement,
|
|
13737
14500
|
has_error_signal: errorSignal !== null,
|
|
13738
14501
|
...errorSignal === null ? {} : { error_signal_source: errorSignal },
|
|
@@ -13771,8 +14534,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
13771
14534
|
} catch (_unused17) {}
|
|
13772
14535
|
}
|
|
13773
14536
|
maybeTrackInspectorMetadataViews() {
|
|
13774
|
-
var _this$
|
|
13775
|
-
if (!this.isOpen || this.runtimeStatus !== _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected || ((_this$
|
|
14537
|
+
var _this$core32, _telemetryContext$gro, _telemetryContext$lea;
|
|
14538
|
+
if (!this.isOpen || this.runtimeStatus !== _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected || ((_this$core32 = this.core) === null || _this$core32 === void 0 ? void 0 : _this$core32.telemetryDisabled)) return;
|
|
13776
14539
|
const { identity, plan } = this.inspectorMetadataProjection;
|
|
13777
14540
|
const license_bucket = this.inspectorMetadataProjection.licenseState;
|
|
13778
14541
|
const telemetryContext = this.getMetadataTelemetryContext();
|
|
@@ -13824,22 +14587,22 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
13824
14587
|
} else this.metadataTelemetryFingerprints.delete("action");
|
|
13825
14588
|
}
|
|
13826
14589
|
trackWhatsNewClickedOnce(opts) {
|
|
13827
|
-
var _this$
|
|
13828
|
-
if (this.runtimeStatus !== _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected || ((_this$
|
|
13829
|
-
const id = this.
|
|
14590
|
+
var _this$core33;
|
|
14591
|
+
if (this.runtimeStatus !== _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected || ((_this$core33 = this.core) === null || _this$core33 === void 0 ? void 0 : _this$core33.telemetryDisabled)) return;
|
|
14592
|
+
const id = this.announcementId;
|
|
13830
14593
|
if (!id) return;
|
|
13831
14594
|
const key = `${id}:${opts.cta}`;
|
|
13832
14595
|
if (this.clickedBannerIds.has(key)) return;
|
|
13833
14596
|
this.clickedBannerIds.add(key);
|
|
13834
14597
|
trackWhatsNewClicked({
|
|
13835
14598
|
banner_id: id,
|
|
13836
|
-
|
|
13837
|
-
|
|
14599
|
+
notification_id: id,
|
|
14600
|
+
cta: opts.cta
|
|
13838
14601
|
});
|
|
13839
14602
|
}
|
|
13840
14603
|
trackThreadsViewStateOnce(state) {
|
|
13841
|
-
var _this$
|
|
13842
|
-
if ((_this$
|
|
14604
|
+
var _this$core34;
|
|
14605
|
+
if ((_this$core34 = this.core) === null || _this$core34 === void 0 ? void 0 : _this$core34.telemetryDisabled) return;
|
|
13843
14606
|
const key = `${state}:${this.getThreadServiceStatus()}`;
|
|
13844
14607
|
if (this.viewedThreadsTelemetryStates.has(key)) return;
|
|
13845
14608
|
this.viewedThreadsTelemetryStates.add(key);
|
|
@@ -13886,8 +14649,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
13886
14649
|
return provider;
|
|
13887
14650
|
}
|
|
13888
14651
|
trackThreadsExampleViewedOnce() {
|
|
13889
|
-
var _this$
|
|
13890
|
-
if ((_this$
|
|
14652
|
+
var _this$core35;
|
|
14653
|
+
if ((_this$core35 = this.core) === null || _this$core35 === void 0 ? void 0 : _this$core35.telemetryDisabled) return;
|
|
13891
14654
|
for (const thread of THREADS_EXAMPLE_THREADS) {
|
|
13892
14655
|
const exampleKind = getExampleKind(thread.id);
|
|
13893
14656
|
if (!exampleKind || this.viewedExampleKinds.has(exampleKind)) continue;
|
|
@@ -13899,8 +14662,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
13899
14662
|
}
|
|
13900
14663
|
}
|
|
13901
14664
|
trackThreadsExampleSelectedOnce(threadId) {
|
|
13902
|
-
var _this$
|
|
13903
|
-
if ((_this$
|
|
14665
|
+
var _this$core36;
|
|
14666
|
+
if ((_this$core36 = this.core) === null || _this$core36 === void 0 ? void 0 : _this$core36.telemetryDisabled) return;
|
|
13904
14667
|
const exampleKind = getExampleKind(threadId);
|
|
13905
14668
|
if (!exampleKind || this.selectedExampleKinds.has(exampleKind)) return;
|
|
13906
14669
|
this.selectedExampleKinds.add(exampleKind);
|
|
@@ -13966,8 +14729,8 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
13966
14729
|
};
|
|
13967
14730
|
}
|
|
13968
14731
|
trackThreadsExampleTourStepViewedOnce() {
|
|
13969
|
-
var _this$
|
|
13970
|
-
if (((_this$
|
|
14732
|
+
var _this$core37;
|
|
14733
|
+
if (((_this$core37 = this.core) === null || _this$core37 === void 0 ? void 0 : _this$core37.telemetryDisabled) || !this.selectedThreadId) return;
|
|
13971
14734
|
const props = this.getCurrentExampleTourProps();
|
|
13972
14735
|
if (!props) return;
|
|
13973
14736
|
const key = `${props.example_kind}:${props.tour_step}`;
|
|
@@ -13986,18 +14749,18 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
13986
14749
|
});
|
|
13987
14750
|
}
|
|
13988
14751
|
startExampleTour(autoStarted) {
|
|
13989
|
-
var _this$
|
|
14752
|
+
var _this$core39;
|
|
13990
14753
|
if (!this.selectedThreadId) return;
|
|
13991
14754
|
this.exampleTourActive = true;
|
|
13992
14755
|
this.exampleTourStep = 0;
|
|
13993
14756
|
if (autoStarted) {
|
|
13994
|
-
var _this$
|
|
14757
|
+
var _this$core38;
|
|
13995
14758
|
this.exampleTourAutoShown = true;
|
|
13996
|
-
if (!((_this$
|
|
14759
|
+
if (!((_this$core38 = this.core) === null || _this$core38 === void 0 ? void 0 : _this$core38.telemetryDisabled)) {
|
|
13997
14760
|
const props = this.getCurrentExampleTourProps();
|
|
13998
14761
|
if (props) trackThreadsExampleTourStarted(props);
|
|
13999
14762
|
}
|
|
14000
|
-
} else if (!((_this$
|
|
14763
|
+
} else if (!((_this$core39 = this.core) === null || _this$core39 === void 0 ? void 0 : _this$core39.telemetryDisabled)) {
|
|
14001
14764
|
const props = this.getCurrentExampleTourProps();
|
|
14002
14765
|
if (props) trackThreadsExampleTourReopened(props);
|
|
14003
14766
|
}
|
|
@@ -14013,12 +14776,12 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
14013
14776
|
this.requestUpdate();
|
|
14014
14777
|
}
|
|
14015
14778
|
dismissExampleTour(method) {
|
|
14016
|
-
var _this$
|
|
14779
|
+
var _this$core40;
|
|
14017
14780
|
if (!this.selectedThreadId) return;
|
|
14018
14781
|
this.exampleTourActive = false;
|
|
14019
14782
|
this.exampleTourDismissed = true;
|
|
14020
14783
|
this.writeThreadsExampleTourDismissed();
|
|
14021
|
-
if (!((_this$
|
|
14784
|
+
if (!((_this$core40 = this.core) === null || _this$core40 === void 0 ? void 0 : _this$core40.telemetryDisabled)) {
|
|
14022
14785
|
const currentProps = this.getCurrentExampleTourProps();
|
|
14023
14786
|
if (currentProps) {
|
|
14024
14787
|
const props = {
|
|
@@ -14520,16 +15283,16 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
14520
15283
|
@learning-page=${(event) => this.handleLearningPage(event)}
|
|
14521
15284
|
@learning-open-evidence=${(event) => this.handleLearningEvidence(event)}
|
|
14522
15285
|
@learning-evidence-opened=${() => {
|
|
14523
|
-
var _this$
|
|
14524
|
-
if (!((_this$
|
|
15286
|
+
var _this$core41;
|
|
15287
|
+
if (!((_this$core41 = this.core) === null || _this$core41 === void 0 ? void 0 : _this$core41.telemetryDisabled)) trackLearningEvidenceOpened();
|
|
14525
15288
|
}}
|
|
14526
15289
|
@learning-skill-toggle=${(event) => {
|
|
14527
|
-
var _this$
|
|
14528
|
-
if (!((_this$
|
|
15290
|
+
var _this$core42;
|
|
15291
|
+
if (!((_this$core42 = this.core) === null || _this$core42 === void 0 ? void 0 : _this$core42.telemetryDisabled)) trackLearningSkillToggled({ action: event.detail.action });
|
|
14529
15292
|
}}
|
|
14530
15293
|
@learning-web-link=${(event) => {
|
|
14531
|
-
var _this$
|
|
14532
|
-
if (!((_this$
|
|
15294
|
+
var _this$core43;
|
|
15295
|
+
if (!((_this$core43 = this.core) === null || _this$core43 === void 0 ? void 0 : _this$core43.telemetryDisabled)) trackLearningWebAppOpened({ category: event.detail.category });
|
|
14533
15296
|
}}
|
|
14534
15297
|
></cpk-learning-view>
|
|
14535
15298
|
`;
|
|
@@ -15616,16 +16379,16 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
15616
16379
|
if (this.contextOptions.filter((opt) => opt.key !== "all-agents").length > 1) this.selectedContext = "all-agents";
|
|
15617
16380
|
}
|
|
15618
16381
|
if (key === "threads") {
|
|
15619
|
-
var _this$
|
|
15620
|
-
if (previousMenu !== "threads" && !((_this$
|
|
16382
|
+
var _this$core44;
|
|
16383
|
+
if (previousMenu !== "threads" && !((_this$core44 = this.core) === null || _this$core44 === void 0 ? void 0 : _this$core44.telemetryDisabled)) trackThreadsTabClicked(this.getThreadsTelemetryProps());
|
|
15621
16384
|
this.autoSelectLatestThread();
|
|
15622
16385
|
}
|
|
15623
16386
|
if (key === "playground" && !this.playgroundAgent) this.startPlaygroundSession(false);
|
|
15624
16387
|
if (key === "memories") {
|
|
15625
|
-
var _this$
|
|
15626
|
-
this.learningSupported = Boolean((_this$
|
|
16388
|
+
var _this$core45, _this$core46;
|
|
16389
|
+
this.learningSupported = Boolean((_this$core45 = this.core) === null || _this$core45 === void 0 ? void 0 : _this$core45.inspectorLearning);
|
|
15627
16390
|
if (previousMenu !== "memories" || this.learningSnapshot === null) this.refreshLearningSnapshot({ preserve: previousMenu === "memories" });
|
|
15628
|
-
if (previousMenu !== "memories" && !((_this$
|
|
16391
|
+
if (previousMenu !== "memories" && !((_this$core46 = this.core) === null || _this$core46 === void 0 ? void 0 : _this$core46.telemetryDisabled)) trackMemoriesTabClicked(this.getMemoriesTelemetryProps());
|
|
15629
16392
|
} else if (previousMenu === "memories") {
|
|
15630
16393
|
this.learningViewedState = null;
|
|
15631
16394
|
this.cancelLearningPoll();
|
|
@@ -16399,11 +17162,9 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16399
17162
|
else if (!wasArmed) this.requestUpdate();
|
|
16400
17163
|
}
|
|
16401
17164
|
clearNewsSignal() {
|
|
16402
|
-
if (!this.
|
|
16403
|
-
this.
|
|
16404
|
-
|
|
16405
|
-
this.retireSignal(NEWS_SIGNAL_ID);
|
|
16406
|
-
this.requestUpdate();
|
|
17165
|
+
if (!this.notificationState.activeId) return;
|
|
17166
|
+
this.notificationState = acknowledgeNotification(this.notificationState, this.notificationState.activeId);
|
|
17167
|
+
this.refreshNotifications();
|
|
16407
17168
|
}
|
|
16408
17169
|
/**
|
|
16409
17170
|
* Requests one beat for a signal, running it now or deferring it.
|
|
@@ -16436,7 +17197,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16436
17197
|
this.pendingPulseSignal = null;
|
|
16437
17198
|
this.pulsingSignal = key;
|
|
16438
17199
|
if (isWiringErrorKey(key)) this.errorBeatSpent = true;
|
|
16439
|
-
else if (this.
|
|
17200
|
+
else if (this.notificationState.activeId && key === NEWS_SIGNAL_ID) saveNotificationPulsedId(this.notificationState.activeId);
|
|
16440
17201
|
this.beginGestureTail(key);
|
|
16441
17202
|
this.requestUpdate();
|
|
16442
17203
|
if (typeof window === "undefined") return;
|
|
@@ -16722,13 +17483,13 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16722
17483
|
* opt-out inside `track`, and the runtime's flag once it is known.
|
|
16723
17484
|
*/
|
|
16724
17485
|
maybeTrackErrorSignalViewed() {
|
|
16725
|
-
var _this$
|
|
17486
|
+
var _this$core47, _this$pillOutcome;
|
|
16726
17487
|
if (this.isOpen || typeof document === "undefined" || document.visibilityState !== "visible") return;
|
|
16727
17488
|
const active = this.getActiveLauncherSignal();
|
|
16728
17489
|
if (active === null || !isErrorSignalKey(active)) return;
|
|
16729
17490
|
if (this.errorSignalViewedSources.has(active)) return;
|
|
16730
17491
|
if (this.pillOutcome === null && LAUNCHER_SIGNALS[active].pillLabel !== void 0) return;
|
|
16731
|
-
if ((_this$
|
|
17492
|
+
if ((_this$core47 = this.core) === null || _this$core47 === void 0 ? void 0 : _this$core47.telemetryDisabled) return;
|
|
16732
17493
|
this.errorSignalViewedSources.add(active);
|
|
16733
17494
|
trackErrorSignalViewed({
|
|
16734
17495
|
source: active,
|
|
@@ -16737,16 +17498,17 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16737
17498
|
});
|
|
16738
17499
|
}
|
|
16739
17500
|
maybeTrackNewsSignalViewed() {
|
|
16740
|
-
var _window$matchMedia5, _window5
|
|
17501
|
+
var _this$notificationFee5, _window$matchMedia5, _window5;
|
|
16741
17502
|
if (!this.newsSignalArmed || this.pulsingSignal !== NEWS_SIGNAL_ID || this.isOpen || typeof document === "undefined" || document.visibilityState !== "visible") return;
|
|
16742
|
-
const
|
|
17503
|
+
const notice = (_this$notificationFee5 = this.notificationFeed) === null || _this$notificationFee5 === void 0 ? void 0 : _this$notificationFee5.notifications.find((n) => n.id === this.notificationState.activeId);
|
|
17504
|
+
const id = notice === null || notice === void 0 ? void 0 : notice.id;
|
|
16743
17505
|
if (!id || this.viewedNewsSignalIds.has(id)) return;
|
|
16744
17506
|
this.viewedNewsSignalIds.add(id);
|
|
16745
17507
|
this.pendingNewsSignalViewed = {
|
|
16746
17508
|
banner_id: id,
|
|
17509
|
+
notification_id: id,
|
|
16747
17510
|
surface: "launcher",
|
|
16748
|
-
presentation: typeof window !== "undefined" && ((_window$matchMedia5 = (_window5 = window).matchMedia) === null || _window$matchMedia5 === void 0 ? void 0 : _window$matchMedia5.call(_window5, "(prefers-reduced-motion: reduce)").matches) ? "reduced_motion" : "animated"
|
|
16749
|
-
cta_label: (_this$announcementCta2 = this.announcementCtaLabel) !== null && _this$announcementCta2 !== void 0 ? _this$announcementCta2 : void 0
|
|
17511
|
+
presentation: typeof window !== "undefined" && ((_window$matchMedia5 = (_window5 = window).matchMedia) === null || _window$matchMedia5 === void 0 ? void 0 : _window$matchMedia5.call(_window5, "(prefers-reduced-motion: reduce)").matches) ? "reduced_motion" : "animated"
|
|
16750
17512
|
};
|
|
16751
17513
|
this.flushPendingWhatsNewTelemetry();
|
|
16752
17514
|
}
|
|
@@ -16764,7 +17526,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16764
17526
|
getVisibleBannerSurface() {
|
|
16765
17527
|
if (!this.isOpen || this.settingsOpen) return null;
|
|
16766
17528
|
if (this.selectedMenu !== WHATS_NEW_MENU_KEY) return null;
|
|
16767
|
-
return this.announcementHtml ? "whats_new" : null;
|
|
17529
|
+
return this.selectedNotificationId && this.announcementHtml ? "whats_new" : null;
|
|
16768
17530
|
}
|
|
16769
17531
|
/**
|
|
16770
17532
|
* The single condition that retires the news signal: What's new has
|
|
@@ -16783,15 +17545,13 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16783
17545
|
maybeCompleteWhatsNewView() {
|
|
16784
17546
|
if (!this.getVisibleBannerSurface()) return;
|
|
16785
17547
|
this.maybeTrackWhatsNewViewed();
|
|
16786
|
-
this.clearNewsSignal();
|
|
16787
17548
|
}
|
|
16788
17549
|
/**
|
|
16789
17550
|
* Records a `whats_new_viewed` impression for whichever surface is
|
|
16790
17551
|
* currently visible, once per announcement per surface.
|
|
16791
17552
|
*/
|
|
16792
17553
|
maybeTrackWhatsNewViewed() {
|
|
16793
|
-
|
|
16794
|
-
const id = this.announcementTimestamp;
|
|
17554
|
+
const id = this.announcementId;
|
|
16795
17555
|
if (!id) return;
|
|
16796
17556
|
const surface = this.getVisibleBannerSurface();
|
|
16797
17557
|
if (!surface) return;
|
|
@@ -16801,15 +17561,16 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16801
17561
|
this.viewedBannerSurfaces.add(key);
|
|
16802
17562
|
this.pendingBannerViewed.push({
|
|
16803
17563
|
banner_id: id,
|
|
16804
|
-
|
|
16805
|
-
|
|
17564
|
+
notification_id: id,
|
|
17565
|
+
surface
|
|
16806
17566
|
});
|
|
16807
17567
|
this.flushPendingWhatsNewTelemetry();
|
|
16808
17568
|
}
|
|
16809
17569
|
flushPendingWhatsNewTelemetry() {
|
|
16810
|
-
var _this$
|
|
17570
|
+
var _this$core48;
|
|
17571
|
+
this.flushPendingHudTelemetry();
|
|
16811
17572
|
if (this.pendingBannerViewed.length === 0 && !this.pendingNewsSignalViewed) return;
|
|
16812
|
-
if ((_this$
|
|
17573
|
+
if ((_this$core48 = this.core) === null || _this$core48 === void 0 ? void 0 : _this$core48.telemetryDisabled) {
|
|
16813
17574
|
this.pendingBannerViewed = [];
|
|
16814
17575
|
this.pendingNewsSignalViewed = null;
|
|
16815
17576
|
return;
|
|
@@ -16825,32 +17586,66 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16825
17586
|
}
|
|
16826
17587
|
}
|
|
16827
17588
|
ensureAnnouncementLoading() {
|
|
16828
|
-
if (this.announcementPromise || typeof window === "undefined" || typeof fetch === "undefined") return;
|
|
17589
|
+
if (this.isInspectorDismissed || !this.notificationContext.development || !this.isConnected || this.announcementPromise || typeof window === "undefined" || typeof fetch === "undefined") return;
|
|
16829
17590
|
this.announcementPromise = this.fetchAnnouncement();
|
|
16830
17591
|
}
|
|
16831
17592
|
async fetchAnnouncement() {
|
|
16832
17593
|
try {
|
|
16833
|
-
const
|
|
16834
|
-
if (
|
|
16835
|
-
|
|
16836
|
-
|
|
16837
|
-
|
|
16838
|
-
|
|
16839
|
-
|
|
16840
|
-
|
|
16841
|
-
|
|
16842
|
-
|
|
16843
|
-
|
|
16844
|
-
|
|
16845
|
-
|
|
16846
|
-
|
|
16847
|
-
|
|
16848
|
-
|
|
16849
|
-
|
|
16850
|
-
|
|
16851
|
-
|
|
16852
|
-
|
|
17594
|
+
const feed = await loadNotificationFeed(this.notificationContext);
|
|
17595
|
+
if (feed) {
|
|
17596
|
+
const documents = await Promise.all(feed.notifications.map(async (notice) => {
|
|
17597
|
+
var _await$this$convertMa;
|
|
17598
|
+
return [notice.id, (_await$this$convertMa = await this.convertMarkdownToHtml(notice.body)) !== null && _await$this$convertMa !== void 0 ? _await$this$convertMa : ""];
|
|
17599
|
+
}));
|
|
17600
|
+
this.notificationDocuments = new Map(documents);
|
|
17601
|
+
this.notificationFeed = feed;
|
|
17602
|
+
}
|
|
17603
|
+
} catch (_unused24) {}
|
|
17604
|
+
this.announcementLoaded = true;
|
|
17605
|
+
this.refreshNotifications();
|
|
17606
|
+
this.requestUpdate();
|
|
17607
|
+
}
|
|
17608
|
+
/** Resolve only confirmed runtime metadata; missing fields stay unknown. */
|
|
17609
|
+
getNotificationContext() {
|
|
17610
|
+
var _core$runtimeEntitlem, _this$inspectorMetada4, _this$inspectorMetada5;
|
|
17611
|
+
const base = this.notificationContext;
|
|
17612
|
+
const core = this.core;
|
|
17613
|
+
if (!core || this.runtimeStatus !== _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected) return base;
|
|
17614
|
+
const mode = core.runtimeMode;
|
|
17615
|
+
const entitlement = ((_core$runtimeEntitlem = core.runtimeEntitlements) === null || _core$runtimeEntitlem === void 0 ? void 0 : _core$runtimeEntitlem.status) === "ready" ? core.runtimeEntitlements.entitlement : void 0;
|
|
17616
|
+
return {
|
|
17617
|
+
...base,
|
|
17618
|
+
intelligence: mode === "intelligence" ? "enabled" : mode === "sse" ? "disabled" : void 0,
|
|
17619
|
+
plan: (_this$inspectorMetada4 = (_this$inspectorMetada5 = this.inspectorMetadataProjection.plan) === null || _this$inspectorMetada5 === void 0 ? void 0 : _this$inspectorMetada5.code) !== null && _this$inspectorMetada4 !== void 0 ? _this$inspectorMetada4 : entitlement === null || entitlement === void 0 ? void 0 : entitlement.planCode,
|
|
17620
|
+
deployment: (entitlement === null || entitlement === void 0 ? void 0 : entitlement.source) === "managedOrgSubscription" ? "managed" : entitlement ? "self-hosted" : void 0
|
|
17621
|
+
};
|
|
17622
|
+
}
|
|
17623
|
+
refreshNotifications() {
|
|
17624
|
+
var _this$selectedNotific, _this$notificationFee6, _notice$id, _this$notificationDoc2;
|
|
17625
|
+
if (!this.notificationFeed) return;
|
|
17626
|
+
this.notificationState = migrateAnnouncementReadState(this.notificationState, this.notificationFeed);
|
|
17627
|
+
const previousActiveId = this.notificationState.activeId;
|
|
17628
|
+
this.notificationState = reconcileNotifications(this.notificationState, this.notificationFeed, this.getNotificationContext());
|
|
17629
|
+
saveNotificationState(this.notificationState);
|
|
17630
|
+
if (!this.notificationState.eligibleIds.includes((_this$selectedNotific = this.selectedNotificationId) !== null && _this$selectedNotific !== void 0 ? _this$selectedNotific : "")) this.selectedNotificationId = null;
|
|
17631
|
+
const notice = (_this$notificationFee6 = this.notificationFeed.notifications.find((n) => {
|
|
17632
|
+
var _this$selectedNotific2;
|
|
17633
|
+
return this.notificationState.eligibleIds.includes(n.id) && n.id === ((_this$selectedNotific2 = this.selectedNotificationId) !== null && _this$selectedNotific2 !== void 0 ? _this$selectedNotific2 : this.notificationState.activeId);
|
|
17634
|
+
})) !== null && _this$notificationFee6 !== void 0 ? _this$notificationFee6 : this.notificationFeed.notifications.filter((n) => this.notificationState.eligibleIds.includes(n.id)).sort(compareNotifications)[0];
|
|
17635
|
+
this.announcementId = (_notice$id = notice === null || notice === void 0 ? void 0 : notice.id) !== null && _notice$id !== void 0 ? _notice$id : null;
|
|
17636
|
+
this.announcementHtml = notice ? (_this$notificationDoc2 = this.notificationDocuments.get(notice.id)) !== null && _this$notificationDoc2 !== void 0 ? _this$notificationDoc2 : null : null;
|
|
17637
|
+
if (this.notificationState.activeId && this.notificationState.eligibleIds.includes(this.notificationState.activeId)) this.armNewsSignal({ pulse: (previousActiveId !== this.notificationState.activeId || !this.newsSignalArmed) && !hasNotificationPulsed(this.notificationState.activeId, this.notificationFeed.notifications.find((n) => n.id === this.notificationState.activeId).publishedAt) });
|
|
17638
|
+
else {
|
|
17639
|
+
this.newsSignalArmed = false;
|
|
17640
|
+
this.retireSignal(NEWS_SIGNAL_ID);
|
|
16853
17641
|
}
|
|
17642
|
+
this.requestUpdate();
|
|
17643
|
+
}
|
|
17644
|
+
readNotification(id) {
|
|
17645
|
+
this.selectedNotificationId = id;
|
|
17646
|
+
this.notificationState = acknowledgeNotification(this.notificationState, id);
|
|
17647
|
+
this.refreshNotifications();
|
|
17648
|
+
this.handleMenuSelect(WHATS_NEW_MENU_KEY);
|
|
16854
17649
|
}
|
|
16855
17650
|
async convertMarkdownToHtml(markdown) {
|
|
16856
17651
|
const renderer = new marked.marked.Renderer();
|
|
@@ -16871,7 +17666,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16871
17666
|
try {
|
|
16872
17667
|
const url = new URL(href, typeof window !== "undefined" ? window.location.href : "https://copilotkit.ai");
|
|
16873
17668
|
return url.protocol === "http:" || url.protocol === "https:" || url.protocol === "mailto:";
|
|
16874
|
-
} catch (
|
|
17669
|
+
} catch (_unused25) {
|
|
16875
17670
|
return false;
|
|
16876
17671
|
}
|
|
16877
17672
|
}
|
|
@@ -16891,17 +17686,17 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16891
17686
|
}
|
|
16892
17687
|
appendRefParam(href, ref = "cpk-inspector") {
|
|
16893
17688
|
try {
|
|
16894
|
-
var _this$
|
|
17689
|
+
var _this$core49;
|
|
16895
17690
|
const isRootRelative = href.startsWith("/") && !href.startsWith("//");
|
|
16896
17691
|
const url = new URL(href, typeof window !== "undefined" ? window.location.href : "https://copilotkit.ai");
|
|
16897
17692
|
if (!url.searchParams.has("ref")) url.searchParams.append("ref", ref);
|
|
16898
|
-
if (!url.searchParams.has("posthog_distinct_id") && this.runtimeStatus === _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected && !((_this$
|
|
17693
|
+
if (!url.searchParams.has("posthog_distinct_id") && this.runtimeStatus === _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected && !((_this$core49 = this.core) === null || _this$core49 === void 0 ? void 0 : _this$core49.telemetryDisabled) && this.isCopilotKitDestination(url)) {
|
|
16899
17694
|
const distinctId = getTelemetryDistinctIdForUrl();
|
|
16900
17695
|
if (distinctId) url.searchParams.append("posthog_distinct_id", distinctId);
|
|
16901
17696
|
}
|
|
16902
17697
|
if (isRootRelative) return `${url.pathname}${url.search}${url.hash}`;
|
|
16903
17698
|
return url.toString();
|
|
16904
|
-
} catch (
|
|
17699
|
+
} catch (_unused26) {
|
|
16905
17700
|
return href;
|
|
16906
17701
|
}
|
|
16907
17702
|
}
|
|
@@ -16915,6 +17710,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
16915
17710
|
};
|
|
16916
17711
|
WebInspectorElement.properties = {
|
|
16917
17712
|
core: { attribute: false },
|
|
17713
|
+
notificationContext: { attribute: false },
|
|
16918
17714
|
autoAttachCore: {
|
|
16919
17715
|
type: Boolean,
|
|
16920
17716
|
attribute: "auto-attach-core"
|
|
@@ -17444,158 +18240,7 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
17444
18240
|
font-weight: 600 !important;
|
|
17445
18241
|
}
|
|
17446
18242
|
|
|
17447
|
-
|
|
17448
|
-
color: #1f2230;
|
|
17449
|
-
font-size: 13px;
|
|
17450
|
-
font-family: "Plus Jakarta Sans", system-ui, sans-serif;
|
|
17451
|
-
line-height: 1.55;
|
|
17452
|
-
}
|
|
17453
|
-
|
|
17454
|
-
.announcement-content h1,
|
|
17455
|
-
.announcement-content h2,
|
|
17456
|
-
.announcement-content h3 {
|
|
17457
|
-
color: #010507;
|
|
17458
|
-
font-weight: 700;
|
|
17459
|
-
line-height: 1.3;
|
|
17460
|
-
margin: 0.9rem 0 0.4rem;
|
|
17461
|
-
}
|
|
17462
|
-
.announcement-content > h1:first-child,
|
|
17463
|
-
.announcement-content > h2:first-child,
|
|
17464
|
-
.announcement-content > h3:first-child {
|
|
17465
|
-
margin-top: 0;
|
|
17466
|
-
}
|
|
17467
|
-
|
|
17468
|
-
.announcement-content h1 {
|
|
17469
|
-
font-size: 1.15rem;
|
|
17470
|
-
letter-spacing: -0.01em;
|
|
17471
|
-
}
|
|
17472
|
-
.announcement-content h2 {
|
|
17473
|
-
font-size: 1rem;
|
|
17474
|
-
}
|
|
17475
|
-
.announcement-content h3 {
|
|
17476
|
-
font-size: 0.9rem;
|
|
17477
|
-
text-transform: none;
|
|
17478
|
-
}
|
|
17479
|
-
|
|
17480
|
-
.announcement-content p {
|
|
17481
|
-
margin: 0.45rem 0;
|
|
17482
|
-
}
|
|
17483
|
-
|
|
17484
|
-
.announcement-content strong {
|
|
17485
|
-
color: #010507;
|
|
17486
|
-
font-weight: 700;
|
|
17487
|
-
}
|
|
17488
|
-
|
|
17489
|
-
.announcement-content ul {
|
|
17490
|
-
list-style: disc;
|
|
17491
|
-
padding-left: 1.25rem;
|
|
17492
|
-
margin: 0.45rem 0;
|
|
17493
|
-
}
|
|
17494
|
-
|
|
17495
|
-
.announcement-content ol {
|
|
17496
|
-
list-style: decimal;
|
|
17497
|
-
padding-left: 1.25rem;
|
|
17498
|
-
margin: 0.45rem 0;
|
|
17499
|
-
}
|
|
17500
|
-
|
|
17501
|
-
.announcement-content li + li {
|
|
17502
|
-
margin-top: 0.15rem;
|
|
17503
|
-
}
|
|
17504
|
-
|
|
17505
|
-
.announcement-content a {
|
|
17506
|
-
color: #5558b2;
|
|
17507
|
-
text-decoration: underline;
|
|
17508
|
-
}
|
|
17509
|
-
|
|
17510
|
-
.announcement-content :not(pre) > code {
|
|
17511
|
-
background: #f3f3f7;
|
|
17512
|
-
border: 1px solid #e4e4ec;
|
|
17513
|
-
border-radius: 5px;
|
|
17514
|
-
padding: 1px 5px;
|
|
17515
|
-
font-size: 0.85em;
|
|
17516
|
-
color: #4a3a8a;
|
|
17517
|
-
}
|
|
17518
|
-
|
|
17519
|
-
.announcement-code {
|
|
17520
|
-
position: relative;
|
|
17521
|
-
margin: 0.6rem 0;
|
|
17522
|
-
}
|
|
17523
|
-
|
|
17524
|
-
.announcement-code pre {
|
|
17525
|
-
background: #0f1117;
|
|
17526
|
-
color: #e6e8f2;
|
|
17527
|
-
border-radius: 10px;
|
|
17528
|
-
padding: 10px 12px;
|
|
17529
|
-
overflow-x: auto;
|
|
17530
|
-
font-size: 12px;
|
|
17531
|
-
line-height: 1.5;
|
|
17532
|
-
white-space: pre;
|
|
17533
|
-
}
|
|
17534
|
-
|
|
17535
|
-
.announcement-code pre code::after {
|
|
17536
|
-
content: "";
|
|
17537
|
-
display: inline-block;
|
|
17538
|
-
width: 80px;
|
|
17539
|
-
}
|
|
17540
|
-
|
|
17541
|
-
.announcement-code__copy-shield {
|
|
17542
|
-
position: absolute;
|
|
17543
|
-
top: 4px;
|
|
17544
|
-
right: 4px;
|
|
17545
|
-
padding: 4px 4px 4px 24px;
|
|
17546
|
-
border-top-right-radius: 10px;
|
|
17547
|
-
background: linear-gradient(
|
|
17548
|
-
to right,
|
|
17549
|
-
rgba(15, 17, 23, 0) 0%,
|
|
17550
|
-
rgba(15, 17, 23, 0.95) 40%,
|
|
17551
|
-
#0f1117 100%
|
|
17552
|
-
);
|
|
17553
|
-
pointer-events: none;
|
|
17554
|
-
}
|
|
17555
|
-
|
|
17556
|
-
.announcement-code pre code {
|
|
17557
|
-
background: transparent;
|
|
17558
|
-
border: none;
|
|
17559
|
-
padding: 0;
|
|
17560
|
-
color: inherit;
|
|
17561
|
-
font-size: inherit;
|
|
17562
|
-
}
|
|
17563
|
-
|
|
17564
|
-
.announcement-code pre::-webkit-scrollbar {
|
|
17565
|
-
height: 6px;
|
|
17566
|
-
}
|
|
17567
|
-
.announcement-code pre::-webkit-scrollbar-track {
|
|
17568
|
-
background: transparent;
|
|
17569
|
-
}
|
|
17570
|
-
.announcement-code pre::-webkit-scrollbar-thumb {
|
|
17571
|
-
background: rgba(255, 255, 255, 0.2);
|
|
17572
|
-
border-radius: 4px;
|
|
17573
|
-
}
|
|
17574
|
-
|
|
17575
|
-
.announcement-code__copy {
|
|
17576
|
-
position: relative;
|
|
17577
|
-
pointer-events: auto;
|
|
17578
|
-
padding: 3px 8px;
|
|
17579
|
-
font-family: "Plus Jakarta Sans", system-ui, sans-serif;
|
|
17580
|
-
font-size: 11px;
|
|
17581
|
-
font-weight: 600;
|
|
17582
|
-
color: #e6e8f2;
|
|
17583
|
-
background: #1f222d;
|
|
17584
|
-
border: 1px solid rgba(255, 255, 255, 0.15);
|
|
17585
|
-
border-radius: 6px;
|
|
17586
|
-
cursor: pointer;
|
|
17587
|
-
transition:
|
|
17588
|
-
background 0.12s ease,
|
|
17589
|
-
color 0.12s ease;
|
|
17590
|
-
}
|
|
17591
|
-
.announcement-code__copy:hover {
|
|
17592
|
-
background: #2a2e3c;
|
|
17593
|
-
}
|
|
17594
|
-
.announcement-code__copy[data-copied="true"] {
|
|
17595
|
-
background: #eee6fe;
|
|
17596
|
-
color: #6430ab;
|
|
17597
|
-
border-color: transparent;
|
|
17598
|
-
}
|
|
18243
|
+
${notificationArticleStyles}
|
|
17599
18244
|
|
|
17600
18245
|
/* ── What's new ──────────────────────────────────────────────── */
|
|
17601
18246
|
.whats-new {
|
|
@@ -19133,8 +19778,9 @@ ${(0, lit_directives_unsafe_html_js.unsafeHTML)(highlightedJson(parsed))}</pre
|
|
|
19133
19778
|
* auto-attachment first prevents `connectedCallback` from briefly selecting a
|
|
19134
19779
|
* different global core.
|
|
19135
19780
|
*/
|
|
19136
|
-
function configureWebInspectorElement(inspector, core) {
|
|
19781
|
+
function configureWebInspectorElement(inspector, core, notificationContext = { development: false }) {
|
|
19137
19782
|
inspector.autoAttachCore = false;
|
|
19783
|
+
inspector.notificationContext = notificationContext;
|
|
19138
19784
|
inspector.core = core;
|
|
19139
19785
|
return inspector;
|
|
19140
19786
|
}
|