@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.
Files changed (47) hide show
  1. package/dist/index.cjs +363 -271
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.d.cts +29 -6
  4. package/dist/index.d.cts.map +1 -1
  5. package/dist/index.d.mts +29 -6
  6. package/dist/index.d.mts.map +1 -1
  7. package/dist/index.mjs +364 -272
  8. package/dist/index.mjs.map +1 -1
  9. package/dist/index.umd.js +1274 -628
  10. package/dist/index.umd.js.map +1 -1
  11. package/dist/lib/notification-loader.cjs +38 -0
  12. package/dist/lib/notification-loader.cjs.map +1 -0
  13. package/dist/lib/notification-loader.mjs +38 -0
  14. package/dist/lib/notification-loader.mjs.map +1 -0
  15. package/dist/lib/notifications.cjs +173 -0
  16. package/dist/lib/notifications.cjs.map +1 -0
  17. package/dist/lib/notifications.d.cts +17 -0
  18. package/dist/lib/notifications.d.cts.map +1 -0
  19. package/dist/lib/notifications.d.mts +17 -0
  20. package/dist/lib/notifications.d.mts.map +1 -0
  21. package/dist/lib/notifications.mjs +168 -0
  22. package/dist/lib/notifications.mjs.map +1 -0
  23. package/dist/lib/onboarding-prompt.cjs +11 -17
  24. package/dist/lib/onboarding-prompt.cjs.map +1 -1
  25. package/dist/lib/onboarding-prompt.mjs +11 -17
  26. package/dist/lib/onboarding-prompt.mjs.map +1 -1
  27. package/dist/lib/persistence.cjs +124 -48
  28. package/dist/lib/persistence.cjs.map +1 -1
  29. package/dist/lib/persistence.mjs +121 -45
  30. package/dist/lib/persistence.mjs.map +1 -1
  31. package/dist/lib/telemetry.cjs +42 -0
  32. package/dist/lib/telemetry.cjs.map +1 -1
  33. package/dist/lib/telemetry.d.cts.map +1 -1
  34. package/dist/lib/telemetry.d.mts.map +1 -1
  35. package/dist/lib/telemetry.mjs +35 -1
  36. package/dist/lib/telemetry.mjs.map +1 -1
  37. package/dist/package.cjs +1 -1
  38. package/dist/package.mjs +1 -1
  39. package/dist/styles/generated.cjs +1 -1
  40. package/dist/styles/generated.cjs.map +1 -1
  41. package/dist/styles/generated.mjs +1 -1
  42. package/dist/styles/generated.mjs.map +1 -1
  43. package/dist/styles/notification-article.cjs +244 -0
  44. package/dist/styles/notification-article.cjs.map +1 -0
  45. package/dist/styles/notification-article.mjs +244 -0
  46. package/dist/styles/notification-article.mjs.map +1 -0
  47. 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 markTelemetryDisclosureShown() {
1783
- if (typeof window === "undefined") return;
1784
- try {
1785
- window.localStorage.setItem(TELEMETRY_DISCLOSURE_SHOWN_KEY, "true");
1786
- } catch (_unused17) {}
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 generateUuidV4() {
1789
- if (typeof globalThis.crypto !== "undefined" && typeof globalThis.crypto.randomUUID === "function") return globalThis.crypto.randomUUID();
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.73.2";
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
- * Two lines, and deliberately nothing else. It used to open by telling the
2855
- * agent to identify itself and pass the slug as a flag -- two sentences of
2856
- * instruction to a machine, in the one piece of text a human reads, decides on
2857
- * and pastes. The graph asks for the slug itself now, with `onboard identify`,
2858
- * which is the surface that talks to the agent for the rest of the run
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 ONBOARDING_PROMPT_TEMPLATE = `Help me get started with CopilotKit. Run this command and follow the instructions:
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
- * What is left is the caller's own business: identify yourself, run this
2934
- * command, and the standing permission for the session check that the
2935
- * developer granted by copying the prompt.
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 = `Help me set this up in my CopilotKit app. Run this command and follow the instructions:
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("[data-message-id]")) !== null && _this$shadowRoot$quer !== void 0 ? _this$shadowRoot$quer : []).find((candidate) => candidate.dataset.messageId === this.focusMessageId);
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 (!silent && !controller.signal.aborted) this._loadingMessages = false;
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) try {
4680
- tc.result = this.parseToolCallContent(msg.content);
4681
- } catch (err) {
4682
- var _msg$content;
4683
- console.error("[CopilotKit Inspector] Failed to parse tool-call result content", {
4684
- toolCallId: msg.toolCallId,
4685
- raw: msg.content,
4686
- error: err
4687
- });
4688
- tc.result = {
4689
- __parseError: true,
4690
- __raw: (_msg$content = msg.content) !== null && _msg$content !== void 0 ? _msg$content : null
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
- return lit.html`${this.renderItems.map((item) => this.renderRenderItem(item))}`;
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
- <div
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="10" height="10" viewBox="0 0 10 10" fill="none">
6162
+ <svg width="14" height="14" viewBox="0 0 24 24" fill="none" aria-hidden="true">
5556
6163
  <path
5557
- d="M1 9C1 9 2 7 5 7C8 7 9 9 9 9M5 1C5 1 7 2.5 7 4.5C7 6.5 5 7 5 7C5 7 3 6.5 3 4.5C3 2.5 5 1 5 1Z"
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="1.2"
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.result || Object.keys(item.arguments).length > 0 ? lit.html`
5566
- <span class="cpk-td__tool-status">Complete</span>
5567
- ` : lit.html`
5568
- <span class="cpk-td__tool-status cpk-td__tool-status--pending">Pending</span>
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
- </div>
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.result ? lit.html`
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.announcementMarkdown = null;
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$announcementPre;
11521
+ var _this$notificationFee;
10800
11522
  if (!this.newsSignalArmed || !this.announcementLoaded) return null;
10801
- const title = ((_this$announcementPre = this.announcementPreviewText) === null || _this$announcementPre === void 0 ? void 0 : _this$announcementPre.trim()) || "New in CopilotKit";
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, _this$announcementPre2, _this$announcementMar, _this$announcementHtm;
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: (_this$announcementPre2 = this.announcementPreviewText) !== null && _this$announcementPre2 !== void 0 ? _this$announcementPre2 : void 0,
11198
- announcementMarkdown: (_this$announcementMar = this.announcementMarkdown) !== null && _this$announcementMar !== void 0 ? _this$announcementMar : void 0,
11199
- announcementHtml: (_this$announcementHtm = this.announcementHtml) !== null && _this$announcementHtm !== void 0 ? _this$announcementHtm : void 0,
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
- <header class="inspector-home-heading"><div><h1>${connected ? (_model$project$projec = (_model$project3 = model.project) === null || _model$project3 === void 0 ? void 0 : _model$project3.projectName) !== null && _model$project$projec !== void 0 ? _model$project$projec : "Your agent workspace" : "Welcome to Intelligence"}</h1><p>${connected ? "Inspect conversations and see what your agent is learning." : "Connect your agent. Intelligence learns from experience."}</p></div></header>
11215
- ${connected ? this.renderHomeSystemHealth(model) : this.renderHomeIntelligenceHud(model)}
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
- const state = this.getWhatsNewState();
11256
- const news = this.getHomeModel().news;
11257
- const updatedAt = this.announcementTimestamp ? new Date(this.announcementTimestamp) : null;
11258
- const updatedLabel = updatedAt && !Number.isNaN(updatedAt.getTime()) ? new Intl.DateTimeFormat(void 0, {
11259
- month: "long",
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
- }).format(updatedAt) : null;
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=${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
- ${news.empty || !news.documentHtml ? lit.html`
11283
- <article class="inspector-whats-new-empty">
11284
- <h2 class="inspector-home-card-title">${news.title}</h2>
11285
- <p class="inspector-home-card-copy">${news.previewText}</p>
11286
- </article>
11287
- ` : lit.html`
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)(news.documentHtml)}
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$core22;
11767
- if ((_this$core22 = this.core) === null || _this$core22 === void 0 ? void 0 : _this$core22.telemetryDisabled) return;
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$core23;
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$core23 = this.core) === null || _this$core23 === void 0 ? void 0 : _this$core23.telemetryDisabled)) {
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$core24;
12912
+ var _this$core26;
12150
12913
  if (this.selectedMenu !== "home" || this.settingsOpen || !this.isOpen) return;
12151
- if (!this.homeViewedThisOpen && !((_this$core24 = this.core) === null || _this$core24 === void 0 ? void 0 : _this$core24.telemetryDisabled)) {
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$core25;
13613
- const optedOut = (_this$core$telemetryD = (_this$core25 = this.core) === null || _this$core25 === void 0 ? void 0 : _this$core25.telemetryDisabled) !== null && _this$core$telemetryD !== void 0 ? _this$core$telemetryD : false;
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$core26, _this$core$licenseSta2, _this$core27, _this$core$runtimeMod2, _this$core28, _this$core29;
13727
- if ((_this$core26 = this.core) === null || _this$core26 === void 0 ? void 0 : _this$core26.telemetryDisabled) return;
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$core27 = this.core) === null || _this$core27 === void 0 ? void 0 : _this$core27.licenseStatus) !== null && _this$core$licenseSta2 !== void 0 ? _this$core$licenseSta2 : void 0,
13733
- runtime_mode: (_this$core$runtimeMod2 = (_this$core28 = this.core) === null || _this$core28 === void 0 ? void 0 : _this$core28.runtimeMode) !== null && _this$core$runtimeMod2 !== void 0 ? _this$core$runtimeMod2 : void 0
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$core29 = this.core) === null || _this$core29 === void 0 ? void 0 : _this$core29.runtimeUrl),
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$core30, _telemetryContext$gro, _telemetryContext$lea;
13775
- if (!this.isOpen || this.runtimeStatus !== _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected || ((_this$core30 = this.core) === null || _this$core30 === void 0 ? void 0 : _this$core30.telemetryDisabled)) return;
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$core31, _this$announcementCta;
13828
- if (this.runtimeStatus !== _copilotkit_core.CopilotKitCoreRuntimeConnectionStatus.Connected || ((_this$core31 = this.core) === null || _this$core31 === void 0 ? void 0 : _this$core31.telemetryDisabled)) return;
13829
- const id = this.announcementTimestamp;
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
- cta: opts.cta,
13837
- cta_label: (_this$announcementCta = this.announcementCtaLabel) !== null && _this$announcementCta !== void 0 ? _this$announcementCta : void 0
14599
+ notification_id: id,
14600
+ cta: opts.cta
13838
14601
  });
13839
14602
  }
13840
14603
  trackThreadsViewStateOnce(state) {
13841
- var _this$core32;
13842
- if ((_this$core32 = this.core) === null || _this$core32 === void 0 ? void 0 : _this$core32.telemetryDisabled) return;
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$core33;
13890
- if ((_this$core33 = this.core) === null || _this$core33 === void 0 ? void 0 : _this$core33.telemetryDisabled) return;
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$core34;
13903
- if ((_this$core34 = this.core) === null || _this$core34 === void 0 ? void 0 : _this$core34.telemetryDisabled) return;
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$core35;
13970
- if (((_this$core35 = this.core) === null || _this$core35 === void 0 ? void 0 : _this$core35.telemetryDisabled) || !this.selectedThreadId) return;
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$core37;
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$core36;
14757
+ var _this$core38;
13995
14758
  this.exampleTourAutoShown = true;
13996
- if (!((_this$core36 = this.core) === null || _this$core36 === void 0 ? void 0 : _this$core36.telemetryDisabled)) {
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$core37 = this.core) === null || _this$core37 === void 0 ? void 0 : _this$core37.telemetryDisabled)) {
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$core38;
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$core38 = this.core) === null || _this$core38 === void 0 ? void 0 : _this$core38.telemetryDisabled)) {
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$core39;
14524
- if (!((_this$core39 = this.core) === null || _this$core39 === void 0 ? void 0 : _this$core39.telemetryDisabled)) trackLearningEvidenceOpened();
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$core40;
14528
- if (!((_this$core40 = this.core) === null || _this$core40 === void 0 ? void 0 : _this$core40.telemetryDisabled)) trackLearningSkillToggled({ action: event.detail.action });
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$core41;
14532
- if (!((_this$core41 = this.core) === null || _this$core41 === void 0 ? void 0 : _this$core41.telemetryDisabled)) trackLearningWebAppOpened({ category: event.detail.category });
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$core42;
15620
- if (previousMenu !== "threads" && !((_this$core42 = this.core) === null || _this$core42 === void 0 ? void 0 : _this$core42.telemetryDisabled)) trackThreadsTabClicked(this.getThreadsTelemetryProps());
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$core43, _this$core44;
15626
- this.learningSupported = Boolean((_this$core43 = this.core) === null || _this$core43 === void 0 ? void 0 : _this$core43.inspectorLearning);
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$core44 = this.core) === null || _this$core44 === void 0 ? void 0 : _this$core44.telemetryDisabled)) trackMemoriesTabClicked(this.getMemoriesTelemetryProps());
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.newsSignalArmed) return;
16403
- this.newsSignalArmed = false;
16404
- if (this.announcementTimestamp) saveAnnouncementReadTimestamp(this.announcementTimestamp);
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.announcementTimestamp && key === NEWS_SIGNAL_ID) saveAnnouncementPulsedTimestamp(this.announcementTimestamp);
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$core45, _this$pillOutcome;
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$core45 = this.core) === null || _this$core45 === void 0 ? void 0 : _this$core45.telemetryDisabled) return;
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, _this$announcementCta2;
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 id = this.announcementTimestamp;
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
- var _this$announcementCta3;
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
- surface,
16805
- cta_label: (_this$announcementCta3 = this.announcementCtaLabel) !== null && _this$announcementCta3 !== void 0 ? _this$announcementCta3 : void 0
17564
+ notification_id: id,
17565
+ surface
16806
17566
  });
16807
17567
  this.flushPendingWhatsNewTelemetry();
16808
17568
  }
16809
17569
  flushPendingWhatsNewTelemetry() {
16810
- var _this$core46;
17570
+ var _this$core48;
17571
+ this.flushPendingHudTelemetry();
16811
17572
  if (this.pendingBannerViewed.length === 0 && !this.pendingNewsSignalViewed) return;
16812
- if ((_this$core46 = this.core) === null || _this$core46 === void 0 ? void 0 : _this$core46.telemetryDisabled) {
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 response = await fetch(ANNOUNCEMENT_URL, { cache: "no-cache" });
16834
- if (!response.ok) throw new Error(`Failed to load announcement (${response.status})`);
16835
- const data = await response.json();
16836
- const timestamp = typeof (data === null || data === void 0 ? void 0 : data.timestamp) === "string" ? data.timestamp : null;
16837
- const previewText = typeof (data === null || data === void 0 ? void 0 : data.previewText) === "string" ? data.previewText : null;
16838
- const markdown = typeof (data === null || data === void 0 ? void 0 : data.announcement) === "string" ? data.announcement : null;
16839
- const ctaLabel = typeof (data === null || data === void 0 ? void 0 : data.cta_label) === "string" ? data.cta_label : null;
16840
- if (!timestamp || !markdown) throw new Error("Malformed announcement payload");
16841
- this.announcementTimestamp = timestamp;
16842
- this.announcementPreviewText = previewText !== null && previewText !== void 0 ? previewText : "";
16843
- this.announcementMarkdown = markdown;
16844
- this.announcementCtaLabel = ctaLabel;
16845
- this.announcementHtml = await this.convertMarkdownToHtml(markdown);
16846
- this.announcementLoaded = true;
16847
- if (this.announcementHtml && loadAnnouncementReadTimestamp() !== timestamp) this.armNewsSignal({ pulse: loadAnnouncementPulsedTimestamp() !== timestamp });
16848
- this.requestUpdate();
16849
- } catch (error) {
16850
- console.warn("[CopilotKit Inspector] Failed to load announcement", error);
16851
- this.announcementLoaded = true;
16852
- this.requestUpdate();
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 (_unused24) {
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$core47;
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$core47 = this.core) === null || _this$core47 === void 0 ? void 0 : _this$core47.telemetryDisabled) && this.isCopilotKitDestination(url)) {
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 (_unused25) {
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
- .announcement-content {
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
  }