puckeditor-plugin-ai 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.css ADDED
@@ -0,0 +1,584 @@
1
+ /* styles.css */
2
+ :root {
3
+ --puck-color-azure-01: #00175d;
4
+ --puck-color-azure-02: #002c77;
5
+ --puck-color-azure-03: #014292;
6
+ --puck-color-azure-04: #0158ad;
7
+ --puck-color-azure-05: #3479be;
8
+ --puck-color-azure-06: #6499cf;
9
+ --puck-color-azure-08: #abc7e5;
10
+ --puck-color-azure-10: #e7eef7;
11
+ --puck-color-azure-11: #f3f6fb;
12
+ --puck-color-azure-12: #f7faff;
13
+ --puck-color-green-04: #0c680c;
14
+ --puck-color-green-06: #2faa53;
15
+ --puck-color-grey-01: #181818;
16
+ --puck-color-grey-02: #292929;
17
+ --puck-color-grey-03: #404040;
18
+ --puck-color-grey-04: #5a5a5a;
19
+ --puck-color-grey-05: #767676;
20
+ --puck-color-grey-06: #949494;
21
+ --puck-color-grey-07: #ababab;
22
+ --puck-color-grey-08: #c3c3c3;
23
+ --puck-color-grey-09: #dcdcdc;
24
+ --puck-color-grey-10: #efefef;
25
+ --puck-color-grey-11: #f5f5f5;
26
+ --puck-color-grey-12: #fafafa;
27
+ --puck-color-red-02: #6a0a10;
28
+ --puck-color-red-03: #8a1422;
29
+ --puck-color-red-04: #ac1f35;
30
+ --puck-color-red-05: #bf5366;
31
+ --puck-color-black: #000000;
32
+ --puck-color-white: #ffffff;
33
+ --puck-font-size-xxxs: 0.75rem;
34
+ --puck-font-size-xxs: 0.875rem;
35
+ --puck-font-size-xs: 1rem;
36
+ --puck-font-size-s: 1.125rem;
37
+ --puck-font-size-m: 1.3125rem;
38
+ --puck-font-size-base: var(--puck-font-size-xs);
39
+ --line-height-s: 1.333;
40
+ --line-height-m: 1.5;
41
+ }
42
+ @keyframes puck-ai-loader-spin {
43
+ 0% {
44
+ transform: rotate(0deg) scale(1);
45
+ }
46
+ 50% {
47
+ transform: rotate(180deg) scale(0.8);
48
+ }
49
+ 100% {
50
+ transform: rotate(360deg) scale(1);
51
+ }
52
+ }
53
+ .puck-ai-loader {
54
+ background: transparent;
55
+ border-radius: 100%;
56
+ border: 2px solid currentColor;
57
+ border-bottom-color: transparent;
58
+ display: inline-block;
59
+ animation: puck-ai-loader-spin 1s 0s infinite linear;
60
+ animation-fill-mode: both;
61
+ }
62
+ .puck-ai-icon-button {
63
+ appearance: none;
64
+ background: transparent;
65
+ border: none;
66
+ border-radius: 4px;
67
+ color: var(--puck-color-grey-08);
68
+ padding: 8px;
69
+ display: flex;
70
+ align-items: center;
71
+ justify-content: center;
72
+ cursor: pointer;
73
+ }
74
+ .puck-ai-icon-button:hover {
75
+ background-color: var(--puck-color-azure-11);
76
+ color: var(--puck-color-azure-04);
77
+ }
78
+ .puck-ai-chat {
79
+ background: white;
80
+ height: 100%;
81
+ display: flex;
82
+ flex-direction: column;
83
+ text-align: left;
84
+ }
85
+ .puck-ai-chat-header {
86
+ display: block;
87
+ padding: 8px 16px;
88
+ font-weight: 600;
89
+ border-bottom: 1px solid var(--puck-color-grey-09);
90
+ }
91
+ @media (min-width: 638px) {
92
+ .puck-ai-chat-header {
93
+ padding: 16px;
94
+ }
95
+ }
96
+ .puck-ai-chat-placeholder {
97
+ align-items: center;
98
+ box-sizing: border-box;
99
+ color: var(--puck-color-grey-06);
100
+ display: none;
101
+ justify-content: center;
102
+ flex-direction: column;
103
+ height: 100%;
104
+ text-align: center;
105
+ padding: 32px;
106
+ gap: 8px;
107
+ }
108
+ @media (min-width: 638px) {
109
+ .puck-ai-chat-placeholder {
110
+ display: flex;
111
+ }
112
+ }
113
+ .puck-ai-chat-actions {
114
+ display: flex;
115
+ gap: 8px;
116
+ justify-content: center;
117
+ flex-wrap: wrap;
118
+ margin-top: 4px;
119
+ }
120
+ .puck-ai-chat-action,
121
+ .puck-ai-chat-action-outlined {
122
+ border: 1px solid var(--puck-color-azure-04);
123
+ border-radius: 16px;
124
+ padding: 4px 12px;
125
+ font-size: 12px;
126
+ cursor: pointer;
127
+ }
128
+ .puck-ai-chat-action {
129
+ background: var(--puck-color-azure-04);
130
+ color: white;
131
+ }
132
+ .puck-ai-chat-action:hover {
133
+ opacity: 0.8;
134
+ }
135
+ .puck-ai-chat-action-outlined {
136
+ background: transparent;
137
+ color: var(--puck-color-azure-04);
138
+ }
139
+ .puck-ai-chat-action-outlined:hover {
140
+ background: var(--puck-color-azure-11);
141
+ }
142
+ .puck-ai-chatbody {
143
+ --chat-background-color: white;
144
+ display: flex;
145
+ flex-direction: column;
146
+ height: 100%;
147
+ min-height: 0;
148
+ }
149
+ .puck-ai-chatbody-inner {
150
+ background-color: var(--chat-background-color);
151
+ display: flex;
152
+ flex-direction: column;
153
+ position: relative;
154
+ flex: 1;
155
+ min-height: 0;
156
+ }
157
+ .puck-ai-chatbody--has-messages .puck-ai-chatbody-messages {
158
+ display: flex;
159
+ flex-direction: column-reverse;
160
+ padding: 16px;
161
+ overflow: auto;
162
+ flex: 1;
163
+ min-height: 0;
164
+ }
165
+ .puck-ai-chatbody-messages {
166
+ flex: 1;
167
+ min-height: 0;
168
+ overflow: auto;
169
+ }
170
+ .puck-ai-chatbody-form {
171
+ background-color: white;
172
+ padding: 16px;
173
+ flex-shrink: 0;
174
+ }
175
+ .puck-ai-chatbody--hide-input .puck-ai-chatbody-form {
176
+ display: none;
177
+ }
178
+ .puck-ai-chatbody--has-messages .puck-ai-chatbody-form {
179
+ border-top: 1px solid var(--puck-color-grey-09);
180
+ }
181
+ @media (min-width: 638px) {
182
+ .puck-ai-chatbody-form {
183
+ border-top: 1px solid var(--puck-color-grey-09);
184
+ }
185
+ }
186
+ .puck-ai-chatbody-example-prompts {
187
+ align-items: center;
188
+ display: flex;
189
+ flex-wrap: nowrap;
190
+ gap: 6px;
191
+ padding-top: 16px;
192
+ width: 100%;
193
+ overflow-x: auto;
194
+ }
195
+ .puck-ai-chatbody-example-prompt {
196
+ align-items: center;
197
+ background: white;
198
+ border: 1px solid var(--puck-color-grey-09);
199
+ border-radius: 48px;
200
+ cursor: pointer;
201
+ display: flex;
202
+ gap: 4px;
203
+ font-size: var(--puck-font-size-xxxs);
204
+ justify-content: center;
205
+ padding: 6px 12px;
206
+ text-wrap: nowrap;
207
+ text-decoration: none;
208
+ color: inherit;
209
+ }
210
+ .puck-ai-chatbody-example-prompt:hover {
211
+ background: var(--puck-color-azure-11);
212
+ border-color: var(--puck-color-azure-08);
213
+ color: var(--puck-color-azure-04);
214
+ }
215
+ .puck-ai-chatbody-example-prompt-arrow {
216
+ display: flex;
217
+ margin-left: auto;
218
+ }
219
+ .puck-ai-chatbody-default {
220
+ overflow-y: auto;
221
+ flex-grow: 1;
222
+ min-height: 0;
223
+ }
224
+ .puck-ai-chatbody--has-messages .puck-ai-chatbody-default {
225
+ display: none;
226
+ }
227
+ .puck-ai-chatbody-loader {
228
+ padding: 16px;
229
+ padding-top: 0;
230
+ }
231
+ .puck-ai-chatbody-error {
232
+ align-items: center;
233
+ display: flex;
234
+ gap: 8px;
235
+ font-size: var(--puck-font-size-xxs);
236
+ margin: 16px;
237
+ }
238
+ .puck-ai-chatbody-error-label {
239
+ color: var(--puck-color-red-04);
240
+ }
241
+ .puck-ai-chatbody-error-action {
242
+ margin-left: auto;
243
+ }
244
+ .puck-ai-chat-message {
245
+ font-size: var(--puck-font-size-xs);
246
+ line-height: var(--line-height-s);
247
+ overflow-wrap: break-word;
248
+ }
249
+ .puck-ai-chat-message--user-role .puck-ai-chat-message-text {
250
+ background: var(--puck-color-azure-10);
251
+ border-radius: 16px;
252
+ color: var(--puck-color-grey-03);
253
+ margin-left: 24px;
254
+ margin-bottom: 8px;
255
+ margin-top: 8px;
256
+ padding: 12px 16px;
257
+ }
258
+ .puck-ai-chat-message ul,
259
+ .puck-ai-chat-message ol {
260
+ list-style: decimal;
261
+ margin: 0;
262
+ margin-bottom: 12px;
263
+ margin-top: 12px;
264
+ padding-left: 32px;
265
+ }
266
+ .puck-ai-chat-message li {
267
+ margin-bottom: 8px;
268
+ margin-top: 8px;
269
+ padding-left: 8px;
270
+ }
271
+ .puck-ai-chat-message h1,
272
+ .puck-ai-chat-message h2,
273
+ .puck-ai-chat-message h3,
274
+ .puck-ai-chat-message h4,
275
+ .puck-ai-chat-message h5,
276
+ .puck-ai-chat-message h6 {
277
+ font-weight: 600;
278
+ }
279
+ .puck-ai-chat-message p {
280
+ margin-bottom: 8px;
281
+ margin-top: 8px;
282
+ }
283
+ .puck-ai-chat-message--user-role .puck-ai-chat-message-text > *:first-of-type {
284
+ margin-top: 0;
285
+ }
286
+ .puck-ai-chat-message--user-role .puck-ai-chat-message-text > *:last-of-type {
287
+ margin-bottom: 0;
288
+ }
289
+ .puck-ai-chat-message a {
290
+ color: var(--puck-color-azure-04);
291
+ font-weight: 600;
292
+ text-decoration: none;
293
+ }
294
+ .puck-ai-chat-message a:hover {
295
+ color: var(--puck-color-azure-05);
296
+ }
297
+ .puck-ai-chat-message hr {
298
+ border-top: none;
299
+ border-bottom-color: var(--puck-color-grey-09);
300
+ margin-bottom: 16px;
301
+ margin-top: 16px;
302
+ }
303
+ .puck-ai-chat-message blockquote {
304
+ margin-bottom: 8px;
305
+ margin-top: 8px;
306
+ margin-left: 0;
307
+ border-left: 2px solid var(--puck-color-grey-09);
308
+ padding-left: 16px;
309
+ }
310
+ .puck-ai-chat-message-data {
311
+ background: var(--puck-color-grey-12);
312
+ border: 1px solid var(--puck-color-grey-08);
313
+ border-radius: 16px;
314
+ color: var(--puck-color-grey-05);
315
+ margin-right: 24px;
316
+ padding: 8px 12px;
317
+ margin-top: 4px;
318
+ margin-bottom: 4px;
319
+ }
320
+ .puck-ai-chat-message-data-inner {
321
+ align-items: center;
322
+ display: flex;
323
+ gap: 8px;
324
+ }
325
+ .puck-ai-chat-message-data-icon {
326
+ display: flex;
327
+ }
328
+ .puck-ai-target-banner {
329
+ align-items: center;
330
+ background: var(--puck-color-azure-11);
331
+ border: 1px solid var(--puck-color-azure-09);
332
+ border-radius: 6px;
333
+ display: flex;
334
+ flex-wrap: wrap;
335
+ gap: 6px;
336
+ margin-bottom: 8px;
337
+ padding: 6px 10px;
338
+ font-size: var(--puck-font-size-xxxs);
339
+ line-height: 1.4;
340
+ }
341
+ .puck-ai-target-banner-label {
342
+ color: var(--puck-color-azure-05);
343
+ font-weight: 600;
344
+ flex-shrink: 0;
345
+ }
346
+ .puck-ai-target-banner-name {
347
+ color: var(--puck-color-grey-02);
348
+ font-weight: 600;
349
+ }
350
+ .puck-ai-target-banner-id {
351
+ color: var(--puck-color-grey-05);
352
+ font-family: var(--puck-font-family-monospaced, monospace);
353
+ font-size: 11px;
354
+ background: var(--puck-color-azure-10);
355
+ border-radius: 3px;
356
+ padding: 1px 4px;
357
+ max-width: 140px;
358
+ overflow: hidden;
359
+ text-overflow: ellipsis;
360
+ white-space: nowrap;
361
+ }
362
+ .puck-ai-target-banner-clear {
363
+ appearance: none;
364
+ background: transparent;
365
+ border: none;
366
+ border-radius: 50%;
367
+ color: var(--puck-color-grey-06);
368
+ cursor: pointer;
369
+ display: flex;
370
+ align-items: center;
371
+ justify-content: center;
372
+ font-size: 16px;
373
+ line-height: 1;
374
+ margin-left: auto;
375
+ padding: 0 2px;
376
+ flex-shrink: 0;
377
+ }
378
+ .puck-ai-target-banner-clear:hover {
379
+ color: var(--puck-color-grey-02);
380
+ }
381
+ .puck-ai-prompt-form {
382
+ --radius: 9px;
383
+ background-color: var(--puck-color-grey-09);
384
+ border-radius: var(--radius);
385
+ width: 100%;
386
+ }
387
+ .puck-ai-prompt-form-inner {
388
+ border-radius: var(--radius);
389
+ padding: 1px;
390
+ position: relative;
391
+ }
392
+ .puck-ai-prompt-form--dark {
393
+ background-color: var(--puck-color-grey-02);
394
+ box-shadow: none;
395
+ }
396
+ @keyframes puck-ai-glow-loop {
397
+ 0% {
398
+ transform: translate(-50%, -50%) rotate(0deg);
399
+ }
400
+ 100% {
401
+ transform: translate(-50%, -50%) rotate(360deg);
402
+ }
403
+ }
404
+ .puck-ai-prompt-form--glow .puck-ai-prompt-form-glow {
405
+ border: 2px solid transparent;
406
+ border-radius: var(--radius);
407
+ -webkit-mask: linear-gradient(transparent, transparent), linear-gradient(white, white);
408
+ mask: linear-gradient(transparent, transparent), linear-gradient(white, white);
409
+ -webkit-mask-clip: padding-box, border-box;
410
+ mask-clip: padding-box, border-box;
411
+ -webkit-mask-composite: intersect;
412
+ mask-composite: intersect;
413
+ pointer-events: none;
414
+ position: absolute;
415
+ inset: -1px;
416
+ z-index: 0;
417
+ overflow: hidden;
418
+ }
419
+ .puck-ai-prompt-form--glow .puck-ai-prompt-form-glow::after {
420
+ background:
421
+ radial-gradient(
422
+ circle at center,
423
+ var(--puck-color-azure-06),
424
+ transparent 50%);
425
+ content: "";
426
+ position: absolute;
427
+ top: 50%;
428
+ left: 50%;
429
+ transform: translate(-50%, -50%);
430
+ aspect-ratio: 1;
431
+ width: 200%;
432
+ animation: puck-ai-glow-loop 3s linear infinite;
433
+ }
434
+ .puck-ai-prompt-form-form-inner {
435
+ background-color: white;
436
+ border-radius: 8px;
437
+ position: relative;
438
+ }
439
+ .puck-ai-prompt-form-input {
440
+ background-color: transparent;
441
+ border: none;
442
+ display: block;
443
+ resize: none;
444
+ color: var(--puck-color-grey-03);
445
+ padding: 12px 16px;
446
+ padding-left: 16px;
447
+ padding-right: 8px;
448
+ padding-bottom: 4px;
449
+ font-family: inherit;
450
+ font-size: var(--puck-font-size-xs);
451
+ line-height: var(--line-height-s);
452
+ width: 100%;
453
+ box-sizing: border-box;
454
+ }
455
+ .puck-ai-prompt-form-input:focus {
456
+ outline: none;
457
+ }
458
+ .puck-ai-prompt-form-form-inner:has(.puck-ai-prompt-form-input:focus) {
459
+ outline: 2px solid var(--puck-color-azure-04);
460
+ }
461
+ .puck-ai-prompt-form--dark .puck-ai-prompt-form-input {
462
+ background-color: var(--puck-color-grey-01);
463
+ color: var(--puck-color-grey-08);
464
+ }
465
+ .puck-ai-prompt-form--is-disabled .puck-ai-prompt-form-input {
466
+ background-color: var(--puck-color-grey-12);
467
+ cursor: not-allowed;
468
+ }
469
+ .puck-ai-prompt-form-actions {
470
+ align-items: flex-end;
471
+ cursor: text;
472
+ display: flex;
473
+ gap: 8px;
474
+ bottom: 0;
475
+ left: 0;
476
+ right: 0;
477
+ padding: 6px;
478
+ }
479
+ .puck-ai-prompt-form-actions-left {
480
+ align-items: center;
481
+ cursor: auto;
482
+ display: flex;
483
+ padding-left: 8px;
484
+ }
485
+ .puck-ai-prompt-form-actions-right {
486
+ cursor: auto;
487
+ margin-left: auto;
488
+ }
489
+ .puck-ai-prompt-form-action-submit {
490
+ background: var(--puck-color-azure-04);
491
+ border-radius: 48px;
492
+ border: 0;
493
+ color: white;
494
+ display: flex;
495
+ align-items: center;
496
+ justify-content: center;
497
+ align-self: flex-end;
498
+ padding: 4px;
499
+ pointer-events: auto;
500
+ cursor: pointer;
501
+ }
502
+ .puck-ai-prompt-form-action-submit:hover {
503
+ background: var(--puck-color-azure-05);
504
+ }
505
+ .puck-ai-prompt-form--is-disabled .puck-ai-prompt-form-action-submit {
506
+ background-color: var(--puck-color-grey-06);
507
+ cursor: not-allowed;
508
+ }
509
+ .puck-ai-prompt-form--is-loading .puck-ai-prompt-form-action-submit {
510
+ background-color: var(--puck-color-azure-06);
511
+ cursor: not-allowed;
512
+ }
513
+ .puck-ai-image-attach-btn {
514
+ align-items: center;
515
+ background: transparent;
516
+ border: 1px solid transparent;
517
+ border-radius: 6px;
518
+ color: var(--puck-color-grey-05);
519
+ cursor: pointer;
520
+ display: flex;
521
+ justify-content: center;
522
+ padding: 5px;
523
+ transition:
524
+ background 80ms,
525
+ color 80ms,
526
+ border-color 80ms;
527
+ }
528
+ .puck-ai-image-attach-btn:hover {
529
+ background: var(--puck-color-grey-11);
530
+ border-color: var(--puck-color-grey-09);
531
+ color: var(--puck-color-grey-02);
532
+ }
533
+ .puck-ai-image-attach-btn:disabled {
534
+ color: var(--puck-color-grey-08);
535
+ cursor: not-allowed;
536
+ }
537
+ .puck-ai-prompt-form--drag-over .puck-ai-prompt-form-form-inner {
538
+ border-color: var(--puck-color-azure-05);
539
+ background: var(--puck-color-azure-12);
540
+ outline: 2px dashed var(--puck-color-azure-05);
541
+ }
542
+ .puck-ai-image-thumbnails {
543
+ display: flex;
544
+ flex-wrap: wrap;
545
+ gap: 6px;
546
+ padding: 8px 10px 0;
547
+ }
548
+ .puck-ai-image-thumbnail {
549
+ position: relative;
550
+ border-radius: 6px;
551
+ overflow: hidden;
552
+ width: 56px;
553
+ height: 56px;
554
+ border: 1px solid var(--puck-color-grey-09);
555
+ flex-shrink: 0;
556
+ }
557
+ .puck-ai-image-thumbnail img {
558
+ width: 100%;
559
+ height: 100%;
560
+ object-fit: cover;
561
+ display: block;
562
+ }
563
+ .puck-ai-image-thumbnail-remove {
564
+ position: absolute;
565
+ top: 2px;
566
+ right: 2px;
567
+ background: rgba(0, 0, 0, 0.55);
568
+ border: none;
569
+ border-radius: 50%;
570
+ color: #fff;
571
+ cursor: pointer;
572
+ display: flex;
573
+ align-items: center;
574
+ justify-content: center;
575
+ width: 16px;
576
+ height: 16px;
577
+ padding: 0;
578
+ opacity: 0;
579
+ transition: opacity 120ms;
580
+ }
581
+ .puck-ai-image-thumbnail:hover .puck-ai-image-thumbnail-remove {
582
+ opacity: 1;
583
+ }
584
+ /*# sourceMappingURL=index.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../styles.css"],"sourcesContent":["/* ============================================================\n Color tokens (subset used by plugin-ai)\n ============================================================ */\n:root {\n --puck-color-azure-01: #00175d;\n --puck-color-azure-02: #002c77;\n --puck-color-azure-03: #014292;\n --puck-color-azure-04: #0158ad;\n --puck-color-azure-05: #3479be;\n --puck-color-azure-06: #6499cf;\n --puck-color-azure-08: #abc7e5;\n --puck-color-azure-10: #e7eef7;\n --puck-color-azure-11: #f3f6fb;\n --puck-color-azure-12: #f7faff;\n --puck-color-green-04: #0c680c;\n --puck-color-green-06: #2faa53;\n --puck-color-grey-01: #181818;\n --puck-color-grey-02: #292929;\n --puck-color-grey-03: #404040;\n --puck-color-grey-04: #5a5a5a;\n --puck-color-grey-05: #767676;\n --puck-color-grey-06: #949494;\n --puck-color-grey-07: #ababab;\n --puck-color-grey-08: #c3c3c3;\n --puck-color-grey-09: #dcdcdc;\n --puck-color-grey-10: #efefef;\n --puck-color-grey-11: #f5f5f5;\n --puck-color-grey-12: #fafafa;\n --puck-color-red-02: #6a0a10;\n --puck-color-red-03: #8a1422;\n --puck-color-red-04: #ac1f35;\n --puck-color-red-05: #bf5366;\n --puck-color-black: #000000;\n --puck-color-white: #ffffff;\n --puck-font-size-xxxs: 0.75rem;\n --puck-font-size-xxs: 0.875rem;\n --puck-font-size-xs: 1rem;\n --puck-font-size-s: 1.125rem;\n --puck-font-size-m: 1.3125rem;\n --puck-font-size-base: var(--puck-font-size-xs);\n --line-height-s: 1.333;\n --line-height-m: 1.5;\n}\n\n/* ============================================================\n Loader\n ============================================================ */\n\n@keyframes puck-ai-loader-spin {\n 0% { transform: rotate(0deg) scale(1); }\n 50% { transform: rotate(180deg) scale(0.8); }\n 100% { transform: rotate(360deg) scale(1); }\n}\n\n.puck-ai-loader {\n background: transparent;\n border-radius: 100%;\n border: 2px solid currentColor;\n border-bottom-color: transparent;\n display: inline-block;\n animation: puck-ai-loader-spin 1s 0s infinite linear;\n animation-fill-mode: both;\n}\n\n/* ============================================================\n Icon button\n ============================================================ */\n\n.puck-ai-icon-button {\n appearance: none;\n background: transparent;\n border: none;\n border-radius: 4px;\n color: var(--puck-color-grey-08);\n padding: 8px;\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n}\n\n.puck-ai-icon-button:hover {\n background-color: var(--puck-color-azure-11);\n color: var(--puck-color-azure-04);\n}\n\n/* ============================================================\n Chat outer panel (outer wrapper)\n ============================================================ */\n\n.puck-ai-chat {\n background: white;\n height: 100%;\n display: flex;\n flex-direction: column;\n text-align: left;\n}\n\n.puck-ai-chat-header {\n display: block;\n padding: 8px 16px;\n font-weight: 600;\n border-bottom: 1px solid var(--puck-color-grey-09);\n}\n\n@media (min-width: 638px) {\n .puck-ai-chat-header {\n padding: 16px;\n }\n}\n\n/* Placeholder (shown when no messages, inside the chat body default slot) */\n.puck-ai-chat-placeholder {\n align-items: center;\n box-sizing: border-box;\n color: var(--puck-color-grey-06);\n display: none;\n justify-content: center;\n flex-direction: column;\n height: 100%;\n text-align: center;\n padding: 32px;\n gap: 8px;\n}\n\n@media (min-width: 638px) {\n .puck-ai-chat-placeholder {\n display: flex;\n }\n}\n\n.puck-ai-chat-actions {\n display: flex;\n gap: 8px;\n justify-content: center;\n flex-wrap: wrap;\n margin-top: 4px;\n}\n\n.puck-ai-chat-action,\n.puck-ai-chat-action-outlined {\n border: 1px solid var(--puck-color-azure-04);\n border-radius: 16px;\n padding: 4px 12px;\n font-size: 12px;\n cursor: pointer;\n}\n\n.puck-ai-chat-action {\n background: var(--puck-color-azure-04);\n color: white;\n}\n\n.puck-ai-chat-action:hover {\n opacity: 0.8;\n}\n\n.puck-ai-chat-action-outlined {\n background: transparent;\n color: var(--puck-color-azure-04);\n}\n\n.puck-ai-chat-action-outlined:hover {\n background: var(--puck-color-azure-11);\n}\n\n/* ============================================================\n ChatBody\n ============================================================ */\n\n.puck-ai-chatbody {\n --chat-background-color: white;\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n}\n\n.puck-ai-chatbody-inner {\n background-color: var(--chat-background-color);\n display: flex;\n flex-direction: column;\n position: relative;\n /* flex: 1 + min-height: 0 allows the inner to shrink and scroll correctly */\n flex: 1;\n min-height: 0;\n}\n\n.puck-ai-chatbody--has-messages .puck-ai-chatbody-messages {\n display: flex;\n flex-direction: column-reverse;\n padding: 16px;\n overflow: auto;\n flex: 1;\n min-height: 0;\n}\n\n.puck-ai-chatbody-messages {\n flex: 1;\n min-height: 0;\n overflow: auto;\n}\n\n.puck-ai-chatbody-form {\n background-color: white;\n padding: 16px;\n flex-shrink: 0;\n}\n\n.puck-ai-chatbody--hide-input .puck-ai-chatbody-form {\n display: none;\n}\n\n.puck-ai-chatbody--has-messages .puck-ai-chatbody-form {\n border-top: 1px solid var(--puck-color-grey-09);\n}\n\n@media (min-width: 638px) {\n .puck-ai-chatbody-form {\n border-top: 1px solid var(--puck-color-grey-09);\n }\n}\n\n.puck-ai-chatbody-example-prompts {\n align-items: center;\n display: flex;\n flex-wrap: nowrap;\n gap: 6px;\n padding-top: 16px;\n width: 100%;\n overflow-x: auto;\n}\n\n.puck-ai-chatbody-example-prompt {\n align-items: center;\n background: white;\n border: 1px solid var(--puck-color-grey-09);\n border-radius: 48px;\n cursor: pointer;\n display: flex;\n gap: 4px;\n font-size: var(--puck-font-size-xxxs);\n justify-content: center;\n padding: 6px 12px;\n text-wrap: nowrap;\n text-decoration: none;\n color: inherit;\n}\n\n.puck-ai-chatbody-example-prompt:hover {\n background: var(--puck-color-azure-11);\n border-color: var(--puck-color-azure-08);\n color: var(--puck-color-azure-04);\n}\n\n.puck-ai-chatbody-example-prompt-arrow {\n display: flex;\n margin-left: auto;\n}\n\n.puck-ai-chatbody-default {\n overflow-y: auto;\n flex-grow: 1;\n min-height: 0;\n}\n\n.puck-ai-chatbody--has-messages .puck-ai-chatbody-default {\n /* Remove from layout entirely so it doesn't steal height from the messages area */\n display: none;\n}\n\n.puck-ai-chatbody-loader {\n padding: 16px;\n padding-top: 0;\n}\n\n.puck-ai-chatbody-error {\n align-items: center;\n display: flex;\n gap: 8px;\n font-size: var(--puck-font-size-xxs);\n margin: 16px;\n}\n\n.puck-ai-chatbody-error-label {\n color: var(--puck-color-red-04);\n}\n\n.puck-ai-chatbody-error-action {\n margin-left: auto;\n}\n\n/* ============================================================\n ChatMessage\n ============================================================ */\n\n.puck-ai-chat-message {\n font-size: var(--puck-font-size-xs);\n line-height: var(--line-height-s);\n overflow-wrap: break-word;\n}\n\n.puck-ai-chat-message--user-role .puck-ai-chat-message-text {\n background: var(--puck-color-azure-10);\n border-radius: 16px;\n color: var(--puck-color-grey-03);\n margin-left: 24px;\n margin-bottom: 8px;\n margin-top: 8px;\n padding: 12px 16px;\n}\n\n.puck-ai-chat-message ul,\n.puck-ai-chat-message ol {\n list-style: decimal;\n margin: 0;\n margin-bottom: 12px;\n margin-top: 12px;\n padding-left: 32px;\n}\n\n.puck-ai-chat-message li {\n margin-bottom: 8px;\n margin-top: 8px;\n padding-left: 8px;\n}\n\n.puck-ai-chat-message h1,\n.puck-ai-chat-message h2,\n.puck-ai-chat-message h3,\n.puck-ai-chat-message h4,\n.puck-ai-chat-message h5,\n.puck-ai-chat-message h6 {\n font-weight: 600;\n}\n\n.puck-ai-chat-message p {\n margin-bottom: 8px;\n margin-top: 8px;\n}\n\n.puck-ai-chat-message--user-role .puck-ai-chat-message-text > *:first-of-type {\n margin-top: 0;\n}\n\n.puck-ai-chat-message--user-role .puck-ai-chat-message-text > *:last-of-type {\n margin-bottom: 0;\n}\n\n.puck-ai-chat-message a {\n color: var(--puck-color-azure-04);\n font-weight: 600;\n text-decoration: none;\n}\n\n.puck-ai-chat-message a:hover {\n color: var(--puck-color-azure-05);\n}\n\n.puck-ai-chat-message hr {\n border-top: none;\n border-bottom-color: var(--puck-color-grey-09);\n margin-bottom: 16px;\n margin-top: 16px;\n}\n\n.puck-ai-chat-message blockquote {\n margin-bottom: 8px;\n margin-top: 8px;\n margin-left: 0;\n border-left: 2px solid var(--puck-color-grey-09);\n padding-left: 16px;\n}\n\n.puck-ai-chat-message-data {\n background: var(--puck-color-grey-12);\n border: 1px solid var(--puck-color-grey-08);\n border-radius: 16px;\n color: var(--puck-color-grey-05);\n margin-right: 24px;\n padding: 8px 12px;\n margin-top: 4px;\n margin-bottom: 4px;\n}\n\n.puck-ai-chat-message-data-inner {\n align-items: center;\n display: flex;\n gap: 8px;\n}\n\n.puck-ai-chat-message-data-icon {\n display: flex;\n}\n\n/* ============================================================\n Target component banner\n ============================================================ */\n\n.puck-ai-target-banner {\n align-items: center;\n background: var(--puck-color-azure-11);\n border: 1px solid var(--puck-color-azure-09);\n border-radius: 6px;\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n margin-bottom: 8px;\n padding: 6px 10px;\n font-size: var(--puck-font-size-xxxs);\n line-height: 1.4;\n}\n\n.puck-ai-target-banner-label {\n color: var(--puck-color-azure-05);\n font-weight: 600;\n flex-shrink: 0;\n}\n\n.puck-ai-target-banner-name {\n color: var(--puck-color-grey-02);\n font-weight: 600;\n}\n\n.puck-ai-target-banner-id {\n color: var(--puck-color-grey-05);\n font-family: var(--puck-font-family-monospaced, monospace);\n font-size: 11px;\n background: var(--puck-color-azure-10);\n border-radius: 3px;\n padding: 1px 4px;\n /* Truncate very long IDs */\n max-width: 140px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.puck-ai-target-banner-clear {\n appearance: none;\n background: transparent;\n border: none;\n border-radius: 50%;\n color: var(--puck-color-grey-06);\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 16px;\n line-height: 1;\n margin-left: auto;\n padding: 0 2px;\n flex-shrink: 0;\n}\n\n.puck-ai-target-banner-clear:hover {\n color: var(--puck-color-grey-02);\n}\n\n/* ============================================================\n PromptForm\n ============================================================ */\n\n.puck-ai-prompt-form {\n --radius: 9px;\n background-color: var(--puck-color-grey-09);\n border-radius: var(--radius);\n width: 100%;\n}\n\n.puck-ai-prompt-form-inner {\n border-radius: var(--radius);\n padding: 1px;\n position: relative;\n}\n\n.puck-ai-prompt-form--dark {\n background-color: var(--puck-color-grey-02);\n box-shadow: none;\n}\n\n@keyframes puck-ai-glow-loop {\n 0% { transform: translate(-50%, -50%) rotate(0deg); }\n 100% { transform: translate(-50%, -50%) rotate(360deg); }\n}\n\n.puck-ai-prompt-form--glow .puck-ai-prompt-form-glow {\n border: 2px solid transparent;\n border-radius: var(--radius);\n -webkit-mask: linear-gradient(transparent, transparent), linear-gradient(white, white);\n mask: linear-gradient(transparent, transparent), linear-gradient(white, white);\n -webkit-mask-clip: padding-box, border-box;\n mask-clip: padding-box, border-box;\n -webkit-mask-composite: intersect;\n mask-composite: intersect;\n pointer-events: none;\n position: absolute;\n inset: -1px;\n z-index: 0;\n overflow: hidden;\n}\n\n.puck-ai-prompt-form--glow .puck-ai-prompt-form-glow::after {\n background: radial-gradient(circle at center, var(--puck-color-azure-06), transparent 50%);\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n aspect-ratio: 1;\n width: 200%;\n animation: puck-ai-glow-loop 3s linear infinite;\n}\n\n.puck-ai-prompt-form-form-inner {\n background-color: white;\n border-radius: 8px;\n position: relative;\n}\n\n.puck-ai-prompt-form-input {\n background-color: transparent;\n border: none;\n display: block;\n resize: none;\n color: var(--puck-color-grey-03);\n padding: 12px 16px;\n padding-left: 16px;\n padding-right: 8px;\n padding-bottom: 4px;\n font-family: inherit;\n font-size: var(--puck-font-size-xs);\n line-height: var(--line-height-s);\n width: 100%;\n box-sizing: border-box;\n}\n\n.puck-ai-prompt-form-input:focus {\n outline: none;\n}\n\n.puck-ai-prompt-form-form-inner:has(.puck-ai-prompt-form-input:focus) {\n outline: 2px solid var(--puck-color-azure-04);\n}\n\n.puck-ai-prompt-form--dark .puck-ai-prompt-form-input {\n background-color: var(--puck-color-grey-01);\n color: var(--puck-color-grey-08);\n}\n\n.puck-ai-prompt-form--is-disabled .puck-ai-prompt-form-input {\n background-color: var(--puck-color-grey-12);\n cursor: not-allowed;\n}\n\n.puck-ai-prompt-form-actions {\n align-items: flex-end;\n cursor: text;\n display: flex;\n gap: 8px;\n bottom: 0;\n left: 0;\n right: 0;\n padding: 6px;\n}\n\n.puck-ai-prompt-form-actions-left {\n align-items: center;\n cursor: auto;\n display: flex;\n padding-left: 8px;\n}\n\n.puck-ai-prompt-form-actions-right {\n cursor: auto;\n margin-left: auto;\n}\n\n.puck-ai-prompt-form-action-submit {\n background: var(--puck-color-azure-04);\n border-radius: 48px;\n border: 0;\n color: white;\n display: flex;\n align-items: center;\n justify-content: center;\n align-self: flex-end;\n padding: 4px;\n pointer-events: auto;\n cursor: pointer;\n}\n\n.puck-ai-prompt-form-action-submit:hover {\n background: var(--puck-color-azure-05);\n}\n\n.puck-ai-prompt-form--is-disabled .puck-ai-prompt-form-action-submit {\n background-color: var(--puck-color-grey-06);\n cursor: not-allowed;\n}\n\n.puck-ai-prompt-form--is-loading .puck-ai-prompt-form-action-submit {\n background-color: var(--puck-color-azure-06);\n cursor: not-allowed;\n}\n\n/* ─── Image attachment button ──────────────────────────────────────────────── */\n\n.puck-ai-image-attach-btn {\n align-items: center;\n background: transparent;\n border: 1px solid transparent;\n border-radius: 6px;\n color: var(--puck-color-grey-05);\n cursor: pointer;\n display: flex;\n justify-content: center;\n padding: 5px;\n transition: background 80ms, color 80ms, border-color 80ms;\n}\n\n.puck-ai-image-attach-btn:hover {\n background: var(--puck-color-grey-11);\n border-color: var(--puck-color-grey-09);\n color: var(--puck-color-grey-02);\n}\n\n.puck-ai-image-attach-btn:disabled {\n color: var(--puck-color-grey-08);\n cursor: not-allowed;\n}\n\n/* ─── Drag-over state ───────────────────────────────────────────────────────── */\n\n.puck-ai-prompt-form--drag-over .puck-ai-prompt-form-form-inner {\n border-color: var(--puck-color-azure-05);\n background: var(--puck-color-azure-12);\n outline: 2px dashed var(--puck-color-azure-05);\n}\n\n/* ─── Image thumbnails strip ────────────────────────────────────────────────── */\n\n.puck-ai-image-thumbnails {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n padding: 8px 10px 0;\n}\n\n.puck-ai-image-thumbnail {\n position: relative;\n border-radius: 6px;\n overflow: hidden;\n width: 56px;\n height: 56px;\n border: 1px solid var(--puck-color-grey-09);\n flex-shrink: 0;\n}\n\n.puck-ai-image-thumbnail img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n display: block;\n}\n\n.puck-ai-image-thumbnail-remove {\n position: absolute;\n top: 2px;\n right: 2px;\n background: rgba(0, 0, 0, 0.55);\n border: none;\n border-radius: 50%;\n color: #fff;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 16px;\n height: 16px;\n padding: 0;\n opacity: 0;\n transition: opacity 120ms;\n}\n\n.puck-ai-image-thumbnail:hover .puck-ai-image-thumbnail-remove {\n opacity: 1;\n}\n"],"mappings":"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","names":[]}