artifactuse 0.1.2 → 0.1.3

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.
@@ -1,4674 +0,0 @@
1
- /* artifactuse/styles/artifactuse.css
2
- * Artifactuse SDK Styles
3
- * Compatible with Tailwind CSS
4
- */
5
-
6
- /* ============================================================
7
- CSS VARIABLES / THEME
8
- ============================================================ */
9
-
10
- :root,
11
- [data-artifactuse-theme="dark"] {
12
- /* Typography */
13
- --artifactuse-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
14
- --artifactuse-font-mono: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace;
15
-
16
- /* Colors */
17
- --artifactuse-primary: 99, 102, 241;
18
- --artifactuse-primary-hover: 79, 70, 229;
19
- --artifactuse-background: 17, 24, 39;
20
- --artifactuse-surface: 31, 41, 55;
21
- --artifactuse-surface-hover: 55, 65, 81;
22
- --artifactuse-text: 243, 244, 246;
23
- --artifactuse-text-secondary: 156, 163, 175;
24
- --artifactuse-text-muted: 107, 114, 128;
25
- --artifactuse-border: 75, 85, 99;
26
- --artifactuse-border-light: 55, 65, 81;
27
- --artifactuse-success: 34, 197, 94;
28
- --artifactuse-warning: 234, 179, 8;
29
- --artifactuse-error: 239, 68, 68;
30
- --artifactuse-info: 59, 130, 246;
31
- --artifactuse-gradient: 99, 102, 241;
32
- --artifactuse-gradient-opacity: 0.38;
33
- }
34
-
35
- [data-artifactuse-theme="light"] {
36
- --artifactuse-primary: 79, 70, 229;
37
- --artifactuse-primary-hover: 67, 56, 202;
38
- --artifactuse-background: 255, 255, 255;
39
- --artifactuse-surface: 249, 250, 251;
40
- --artifactuse-surface-hover: 243, 244, 246;
41
- --artifactuse-text: 17, 24, 39;
42
- --artifactuse-text-secondary: 75, 85, 99;
43
- --artifactuse-text-muted: 156, 163, 175;
44
- --artifactuse-border: 229, 231, 235;
45
- --artifactuse-border-light: 243, 244, 246;
46
- --artifactuse-success: 22, 163, 74;
47
- --artifactuse-warning: 202, 138, 4;
48
- --artifactuse-error: 220, 38, 38;
49
- --artifactuse-info: 37, 99, 235;
50
- --artifactuse-gradient: 79, 70, 229;
51
- --artifactuse-gradient-opacity: 0.25;
52
- }
53
-
54
- @media (prefers-color-scheme: light) {
55
- :root:not([data-artifactuse-theme]) {
56
- --artifactuse-primary: 79, 70, 229;
57
- --artifactuse-primary-hover: 67, 56, 202;
58
- --artifactuse-background: 255, 255, 255;
59
- --artifactuse-surface: 249, 250, 251;
60
- --artifactuse-surface-hover: 243, 244, 246;
61
- --artifactuse-text: 17, 24, 39;
62
- --artifactuse-text-secondary: 75, 85, 99;
63
- --artifactuse-text-muted: 156, 163, 175;
64
- --artifactuse-border: 229, 231, 235;
65
- --artifactuse-border-light: 243, 244, 246;
66
- --artifactuse-gradient-opacity: 0.25;
67
- }
68
- }
69
-
70
- /* ============================================================
71
- BASE STYLES
72
- ============================================================ */
73
-
74
- /* Apply font to all artifactuse components */
75
- [class^="artifactuse-"],
76
- [class*=" artifactuse-"],
77
- .artifactuse {
78
- font-family: var(--artifactuse-font-family);
79
- -webkit-font-smoothing: antialiased;
80
- -moz-osx-font-smoothing: grayscale;
81
- }
82
-
83
- /* Monospace font for code elements */
84
- [class^="artifactuse-"] code,
85
- [class*=" artifactuse-"] code,
86
- [class^="artifactuse-"] pre,
87
- [class*=" artifactuse-"] pre,
88
- .artifactuse code,
89
- .artifactuse pre {
90
- font-family: var(--artifactuse-font-mono);
91
- }
92
-
93
- /* ============================================================
94
- ANIMATIONS
95
- ============================================================ */
96
-
97
- @keyframes artifactuse-expanding {
98
- 0% {
99
- transform: scaleX(0);
100
- opacity: 0;
101
- }
102
- 100% {
103
- transform: scaleX(1);
104
- opacity: 1;
105
- }
106
- }
107
-
108
- @keyframes artifactuse-moving {
109
- 0% {
110
- background-position: 0 0;
111
- }
112
- 100% {
113
- background-position: -200% 0;
114
- }
115
- }
116
-
117
- @keyframes artifactuse-pulse {
118
- 0% {
119
- box-shadow: 0 0 0 0 rgba(var(--artifactuse-primary), 0.4);
120
- }
121
- 70% {
122
- box-shadow: 0 0 0 8px rgba(var(--artifactuse-primary), 0);
123
- }
124
- 100% {
125
- box-shadow: 0 0 0 0 rgba(var(--artifactuse-primary), 0);
126
- }
127
- }
128
-
129
- @keyframes artifactuse-spin {
130
- to {
131
- transform: rotate(360deg);
132
- }
133
- }
134
-
135
- @keyframes artifactuse-fade-in {
136
- from {
137
- opacity: 0;
138
- }
139
- to {
140
- opacity: 1;
141
- }
142
- }
143
-
144
- @keyframes artifactuse-slide-up {
145
- from {
146
- opacity: 0;
147
- transform: translateY(10px);
148
- }
149
- to {
150
- opacity: 1;
151
- transform: translateY(0);
152
- }
153
- }
154
-
155
- /* ============================================================
156
- LOADING BAR
157
- ============================================================ */
158
-
159
- .artifactuse-loading-bar {
160
- height: 0.8rem;
161
- margin-bottom: 10px;
162
- transform-origin: left;
163
- animation: artifactuse-expanding 0.4s 0.7s forwards linear,
164
- artifactuse-moving 1s 1s infinite forwards linear;
165
- border-top-right-radius: 2rem;
166
- border-bottom-right-radius: 2rem;
167
- background-size: 200% auto;
168
- opacity: 0;
169
- animation-delay: 100ms;
170
- }
171
-
172
- .artifactuse-loading-bar.artifactuse-gradient-1 {
173
- width: 90%;
174
- background-image: linear-gradient(
175
- to right,
176
- transparent 30%,
177
- rgba(var(--artifactuse-gradient), var(--artifactuse-gradient-opacity)) 60%,
178
- transparent
179
- );
180
- }
181
-
182
- .artifactuse-loading-bar.artifactuse-gradient-2 {
183
- width: 80%;
184
- background-image: linear-gradient(
185
- to right,
186
- rgba(var(--artifactuse-gradient), var(--artifactuse-gradient-opacity)),
187
- transparent 60%,
188
- rgba(var(--artifactuse-gradient), var(--artifactuse-gradient-opacity))
189
- );
190
- }
191
-
192
- .artifactuse-loading-bar.artifactuse-gradient-3 {
193
- width: 70%;
194
- background-image: linear-gradient(
195
- to right,
196
- transparent 30%,
197
- rgba(var(--artifactuse-gradient), var(--artifactuse-gradient-opacity)) 60%,
198
- transparent
199
- );
200
- }
201
-
202
- /* ============================================================
203
- IMAGE STYLES
204
- ============================================================ */
205
-
206
- .artifactuse-image-container {
207
- margin: 1em 0;
208
- border-radius: 8px;
209
- overflow: hidden;
210
- }
211
-
212
- .artifactuse-image {
213
- width: 100%;
214
- height: auto;
215
- display: block;
216
- cursor: pointer;
217
- transition: opacity 0.2s;
218
- }
219
-
220
- .artifactuse-image:hover {
221
- opacity: 0.9;
222
- }
223
-
224
- .artifactuse-image-caption {
225
- padding: 8px 12px;
226
- background: rgb(var(--artifactuse-surface));
227
- color: rgb(var(--artifactuse-text-secondary));
228
- font-size: 13px;
229
- }
230
-
231
- /* ============================================================
232
- VIDEO STYLES
233
- ============================================================ */
234
-
235
- .artifactuse-video-wrapper {
236
- position: relative;
237
- margin: 1em 0;
238
- border-radius: 8px;
239
- overflow: hidden;
240
- background: rgb(var(--artifactuse-surface));
241
- }
242
-
243
- .artifactuse-video {
244
- width: 100%;
245
- display: block;
246
- }
247
-
248
- .artifactuse-video-iframe {
249
- width: 100%;
250
- aspect-ratio: 16 / 9;
251
- border: none;
252
- }
253
-
254
- /* ============================================================
255
- AUDIO STYLES
256
- ============================================================ */
257
-
258
- .artifactuse-audio-wrapper {
259
- margin: 1em 0;
260
- padding: 12px;
261
- background: rgb(var(--artifactuse-surface));
262
- border-radius: 8px;
263
- }
264
-
265
- .artifactuse-audio {
266
- width: 100%;
267
- }
268
-
269
- .artifactuse-audio-info {
270
- margin-top: 8px;
271
- font-size: 12px;
272
- color: rgb(var(--artifactuse-text-secondary));
273
- }
274
-
275
- .artifactuse-spotify-embed,
276
- .artifactuse-soundcloud-embed {
277
- width: 100%;
278
- border-radius: 12px;
279
- }
280
-
281
- /* ============================================================
282
- MAP STYLES
283
- ============================================================ */
284
-
285
- .artifactuse-map-wrapper {
286
- margin: 1em 0;
287
- border-radius: 8px;
288
- overflow: hidden;
289
- background: rgb(var(--artifactuse-surface));
290
- }
291
-
292
- .artifactuse-map-iframe {
293
- width: 100%;
294
- height: 400px;
295
- border: none;
296
- }
297
-
298
- .artifactuse-map-actions {
299
- padding: 8px 12px;
300
- background: rgb(var(--artifactuse-surface));
301
- border-top: 1px solid rgb(var(--artifactuse-border));
302
- }
303
-
304
- .artifactuse-map-link {
305
- color: rgb(var(--artifactuse-primary));
306
- font-size: 13px;
307
- text-decoration: none;
308
- }
309
-
310
- .artifactuse-map-link:hover {
311
- text-decoration: underline;
312
- }
313
-
314
- /* ============================================================
315
- SOCIAL EMBED STYLES
316
- ============================================================ */
317
-
318
- .artifactuse-twitter-wrapper,
319
- .artifactuse-instagram-wrapper,
320
- .artifactuse-tiktok-wrapper {
321
- margin: 1em 0;
322
- }
323
-
324
- .artifactuse-instagram-embed {
325
- width: 100%;
326
- min-height: 500px;
327
- border-radius: 8px;
328
- border: none;
329
- }
330
-
331
- .artifactuse-instagram-reel {
332
- min-height: 700px;
333
- }
334
-
335
- .artifactuse-tiktok-embed {
336
- width: 100%;
337
- height: 740px;
338
- border-radius: 8px;
339
- border: none;
340
- }
341
-
342
- /* ============================================================
343
- DOCUMENT STYLES
344
- ============================================================ */
345
-
346
- .artifactuse-pdf-wrapper,
347
- .artifactuse-google-doc-wrapper,
348
- .artifactuse-office-wrapper {
349
- margin: 1em 0;
350
- border-radius: 8px;
351
- overflow: hidden;
352
- border: 1px solid rgb(var(--artifactuse-border));
353
- }
354
-
355
- .artifactuse-pdf-header,
356
- .artifactuse-google-doc-header,
357
- .artifactuse-office-header {
358
- display: flex;
359
- align-items: center;
360
- justify-content: space-between;
361
- padding: 12px 16px;
362
- background: rgb(var(--artifactuse-surface));
363
- border-bottom: 1px solid rgb(var(--artifactuse-border));
364
- }
365
-
366
- .artifactuse-pdf-filename,
367
- .artifactuse-office-filename {
368
- font-weight: 500;
369
- color: rgb(var(--artifactuse-text));
370
- }
371
-
372
- .artifactuse-google-doc-type {
373
- font-size: 12px;
374
- font-weight: 600;
375
- color: rgb(var(--artifactuse-text-secondary));
376
- text-transform: uppercase;
377
- }
378
-
379
- .artifactuse-pdf-download,
380
- .artifactuse-google-doc-link,
381
- .artifactuse-office-download {
382
- color: rgb(var(--artifactuse-primary));
383
- font-size: 13px;
384
- text-decoration: none;
385
- }
386
-
387
- .artifactuse-pdf-download:hover,
388
- .artifactuse-google-doc-link:hover,
389
- .artifactuse-office-download:hover {
390
- text-decoration: underline;
391
- }
392
-
393
- .artifactuse-pdf-iframe,
394
- .artifactuse-google-doc-iframe,
395
- .artifactuse-office-iframe {
396
- width: 100%;
397
- height: 600px;
398
- border: none;
399
- }
400
-
401
- /* ============================================================
402
- CODE EMBED STYLES
403
- ============================================================ */
404
-
405
- .artifactuse-codepen-wrapper,
406
- .artifactuse-codesandbox-wrapper,
407
- .artifactuse-jsfiddle-wrapper,
408
- .artifactuse-stackblitz-wrapper,
409
- .artifactuse-gist-wrapper {
410
- margin: 1em 0;
411
- border-radius: 8px;
412
- overflow: hidden;
413
- }
414
-
415
- /* ============================================================
416
- DATA VIZ STYLES
417
- ============================================================ */
418
-
419
- .artifactuse-flourish-wrapper,
420
- .artifactuse-datawrapper-wrapper {
421
- margin: 1em 0;
422
- border-radius: 8px;
423
- overflow: hidden;
424
- }
425
-
426
- .artifactuse-flourish-iframe {
427
- width: 100%;
428
- height: 500px;
429
- border: none;
430
- }
431
-
432
- .artifactuse-datawrapper-iframe {
433
- width: 100%;
434
- height: 400px;
435
- border: none;
436
- }
437
-
438
- /* ============================================================
439
- DESIGN/3D STYLES
440
- ============================================================ */
441
-
442
- .artifactuse-figma-wrapper,
443
- .artifactuse-sketchfab-wrapper {
444
- margin: 1em 0;
445
- border-radius: 8px;
446
- overflow: hidden;
447
- }
448
-
449
- .artifactuse-figma-iframe {
450
- width: 100%;
451
- height: 450px;
452
- border: 1px solid rgb(var(--artifactuse-border));
453
- border-radius: 8px;
454
- }
455
-
456
- .artifactuse-sketchfab-iframe {
457
- width: 100%;
458
- height: 480px;
459
- border: none;
460
- }
461
-
462
- /* ============================================================
463
- INTERACTIVE STYLES
464
- ============================================================ */
465
-
466
- .artifactuse-typeform-wrapper,
467
- .artifactuse-calendly-wrapper,
468
- .artifactuse-airtable-wrapper,
469
- .artifactuse-miro-wrapper {
470
- margin: 1em 0;
471
- border-radius: 8px;
472
- overflow: hidden;
473
- }
474
-
475
- .artifactuse-typeform-iframe {
476
- width: 100%;
477
- height: 500px;
478
- border: none;
479
- }
480
-
481
- .artifactuse-calendly-iframe {
482
- width: 100%;
483
- height: 650px;
484
- border: none;
485
- }
486
-
487
- .artifactuse-airtable-iframe {
488
- width: 100%;
489
- height: 500px;
490
- border: none;
491
- }
492
-
493
- .artifactuse-miro-iframe {
494
- width: 100%;
495
- height: 500px;
496
- border: none;
497
- }
498
-
499
-
500
-
501
- /* ============================================================
502
- MATH STYLES
503
- ============================================================ */
504
-
505
- .artifactuse-math-container {
506
- display: inline-block;
507
- }
508
-
509
- .artifactuse-math-display {
510
- display: block;
511
- margin: 1em 0;
512
- text-align: center;
513
- }
514
-
515
- .artifactuse-math-inline {
516
- display: inline;
517
- }
518
-
519
- .artifactuse-math-error {
520
- color: rgb(var(--artifactuse-error));
521
- font-family: monospace;
522
- }
523
-
524
- /* ============================================================
525
- UTILITY CLASSES
526
- ============================================================ */
527
-
528
- .artifactuse-hidden {
529
- display: none !important;
530
- }
531
-
532
- .artifactuse-sr-only {
533
- position: absolute;
534
- width: 1px;
535
- height: 1px;
536
- padding: 0;
537
- margin: -1px;
538
- overflow: hidden;
539
- clip: rect(0, 0, 0, 0);
540
- white-space: nowrap;
541
- border: 0;
542
- }
543
-
544
- .artifactuse-fade-in {
545
- animation: artifactuse-fade-in 0.3s ease;
546
- }
547
-
548
- .artifactuse-slide-up {
549
- animation: artifactuse-slide-up 0.3s ease;
550
- }
551
-
552
- /* ============================================================
553
- VIEWER STYLES
554
- ============================================================ */
555
-
556
- .artifactuse-viewer-overlay {
557
- position: fixed;
558
- top: 0;
559
- left: 0;
560
- right: 0;
561
- bottom: 0;
562
- z-index: 9999;
563
- display: flex;
564
- align-items: center;
565
- justify-content: center;
566
- background: rgba(0, 0, 0, 0.9);
567
- backdrop-filter: blur(4px);
568
- cursor: zoom-out;
569
- }
570
-
571
- .artifactuse-viewer-content {
572
- position: relative;
573
- max-width: 90vw;
574
- max-height: 90vh;
575
- display: flex;
576
- flex-direction: column;
577
- align-items: center;
578
- }
579
-
580
- .artifactuse-viewer-image {
581
- max-width: 90vw;
582
- max-height: 70vh;
583
- object-fit: contain;
584
- border-radius: 4px;
585
- cursor: zoom-in;
586
- transition: transform 0.3s ease;
587
- }
588
-
589
- .artifactuse-viewer-image--zoomed {
590
- max-width: none;
591
- max-height: none;
592
- cursor: zoom-out;
593
- transform: scale(1.5);
594
- }
595
-
596
- .artifactuse-viewer-pdf {
597
- width: 90vw;
598
- height: 85vh;
599
- border: none;
600
- border-radius: 4px;
601
- background: white;
602
- }
603
-
604
- .artifactuse-viewer-close {
605
- position: absolute;
606
- top: -48px;
607
- right: 0;
608
- display: flex;
609
- align-items: center;
610
- justify-content: center;
611
- width: 40px;
612
- height: 40px;
613
- background: rgba(255, 255, 255, 0.1);
614
- border: none;
615
- border-radius: 8px;
616
- color: white;
617
- cursor: pointer;
618
- transition: background 0.2s;
619
- }
620
-
621
- .artifactuse-viewer-close:hover {
622
- background: rgba(255, 255, 255, 0.2);
623
- }
624
-
625
- .artifactuse-viewer-close svg {
626
- width: 24px;
627
- height: 24px;
628
- }
629
-
630
- .artifactuse-viewer-controls {
631
- position: absolute;
632
- bottom: -48px;
633
- display: flex;
634
- gap: 8px;
635
- }
636
-
637
- .artifactuse-viewer-control {
638
- display: flex;
639
- align-items: center;
640
- justify-content: center;
641
- width: 40px;
642
- height: 40px;
643
- background: rgba(255, 255, 255, 0.1);
644
- border: none;
645
- border-radius: 8px;
646
- color: white;
647
- cursor: pointer;
648
- transition: background 0.2s;
649
- }
650
-
651
- .artifactuse-viewer-control:hover {
652
- background: rgba(255, 255, 255, 0.2);
653
- }
654
-
655
- .artifactuse-viewer-control svg {
656
- width: 20px;
657
- height: 20px;
658
- }
659
-
660
- .artifactuse-viewer-caption {
661
- margin-top: 16px;
662
- padding: 8px 16px;
663
- background: rgba(255, 255, 255, 0.1);
664
- border-radius: 8px;
665
- color: white;
666
- font-size: 14px;
667
- text-align: center;
668
- max-width: 600px;
669
- }
670
-
671
- /* Viewer Transitions */
672
- .artifactuse-viewer-enter-active,
673
- .artifactuse-viewer-leave-active {
674
- transition: opacity 0.2s ease;
675
- }
676
-
677
- .artifactuse-viewer-enter-from,
678
- .artifactuse-viewer-leave-to {
679
- opacity: 0;
680
- }
681
-
682
- .artifactuse-viewer-enter-active .artifactuse-viewer-content,
683
- .artifactuse-viewer-leave-active .artifactuse-viewer-content {
684
- transition: transform 0.2s ease;
685
- }
686
-
687
- .artifactuse-viewer-enter-from .artifactuse-viewer-content,
688
- .artifactuse-viewer-leave-to .artifactuse-viewer-content {
689
- transform: scale(0.95);
690
- }
691
-
692
- /* Vue 2 transition class names */
693
- .artifactuse-viewer-enter,
694
- .artifactuse-viewer-leave-to {
695
- opacity: 0;
696
- }
697
-
698
- .artifactuse-viewer-enter .artifactuse-viewer-content,
699
- .artifactuse-viewer-leave-to .artifactuse-viewer-content {
700
- transform: scale(0.95);
701
- }
702
-
703
-
704
-
705
-
706
-
707
- /* ============================================================
708
- ARTIFACTUSE PANEL
709
- ============================================================ */
710
-
711
- .artifactuse-panel {
712
- position: relative;
713
- width: 50%;
714
- min-width: 360px;
715
- max-width: 80%;
716
- height: 100vh;
717
- background: rgb(var(--artifactuse-background));
718
- border-left: 1px solid rgb(var(--artifactuse-border));
719
- display: flex;
720
- flex-direction: column;
721
- flex-shrink: 0;
722
- font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
723
- container-type: inline-size;
724
- container-name: artifactuse-panel;
725
- }
726
-
727
- .artifactuse-panel--fullscreen {
728
- position: fixed;
729
- top: 0;
730
- left: 0;
731
- right: 0;
732
- bottom: 0;
733
- width: 100% !important;
734
- max-width: none;
735
- border-left: none;
736
- z-index: 1001;
737
- }
738
-
739
- /* Resize handle */
740
- .artifactuse-panel__resize-handle {
741
- position: absolute;
742
- left: -6px;
743
- top: 0;
744
- width: 12px;
745
- height: 100%;
746
- cursor: ew-resize;
747
- z-index: 10;
748
- display: flex;
749
- align-items: center;
750
- justify-content: center;
751
- }
752
-
753
- .artifactuse-panel__resize-handle-line {
754
- width: 4px;
755
- height: 48px;
756
- background: rgb(var(--artifactuse-border));
757
- border-radius: 2px;
758
- opacity: 0;
759
- transition: opacity 0.2s, background 0.2s;
760
- }
761
-
762
- .artifactuse-panel__resize-handle:hover .artifactuse-panel__resize-handle-line {
763
- opacity: 1;
764
- background: rgb(var(--artifactuse-primary));
765
- }
766
-
767
- /* Header */
768
- .artifactuse-panel__header {
769
- display: flex;
770
- align-items: center;
771
- gap: 12px;
772
- padding: 10px 14px;
773
- border-bottom: 1px solid rgb(var(--artifactuse-border));
774
- background: rgb(var(--artifactuse-surface));
775
- flex-shrink: 0;
776
- }
777
-
778
- .artifactuse-panel__title {
779
- flex: 1;
780
- min-width: 0;
781
- display: flex;
782
- align-items: center;
783
- gap: 10px;
784
- }
785
-
786
- .artifactuse-panel__icon {
787
- flex-shrink: 0;
788
- width: 28px;
789
- height: 28px;
790
- display: flex;
791
- align-items: center;
792
- justify-content: center;
793
- background: rgba(var(--artifactuse-primary), 0.15);
794
- border-radius: 6px;
795
- color: rgb(var(--artifactuse-primary));
796
- }
797
-
798
- .artifactuse-panel__icon svg {
799
- width: 16px;
800
- height: 16px;
801
- }
802
-
803
- .artifactuse-panel__title-content {
804
- min-width: 0;
805
- display: flex;
806
- flex-direction: column;
807
- gap: 1px;
808
- }
809
-
810
- .artifactuse-panel__name {
811
- font-weight: 600;
812
- font-size: 13px;
813
- color: rgb(var(--artifactuse-text));
814
- white-space: nowrap;
815
- overflow: hidden;
816
- text-overflow: ellipsis;
817
- }
818
-
819
- .artifactuse-panel__meta {
820
- font-size: 11px;
821
- color: rgb(var(--artifactuse-text-secondary));
822
- }
823
-
824
- .artifactuse-panel__tabs {
825
- display: flex;
826
- gap: 2px;
827
- background: rgba(var(--artifactuse-background), 1);
828
- padding: 3px;
829
- border-radius: 8px;
830
- }
831
-
832
- .artifactuse-panel__tab {
833
- display: flex;
834
- align-items: center;
835
- justify-content: center;
836
- width: 28px;
837
- height: 28px;
838
- padding: 0;
839
- background: transparent;
840
- border: none;
841
- border-radius: 6px;
842
- color: rgb(var(--artifactuse-text-secondary));
843
- cursor: pointer;
844
- transition: background 0.15s, color 0.15s;
845
- }
846
-
847
- .artifactuse-panel__tab svg {
848
- width: 16px;
849
- height: 16px;
850
- }
851
-
852
- .artifactuse-panel__tab:hover:not(:disabled) {
853
- background: rgba(var(--artifactuse-text), 0.08);
854
- color: rgb(var(--artifactuse-text));
855
- }
856
-
857
- .artifactuse-panel__tab--active {
858
- background: rgb(var(--artifactuse-primary));
859
- color: white;
860
- }
861
-
862
- .artifactuse-panel__tab--active:hover:not(:disabled) {
863
- background: rgb(var(--artifactuse-primary-hover));
864
- color: white;
865
- }
866
-
867
- .artifactuse-panel__tab:disabled {
868
- opacity: 0.35;
869
- cursor: not-allowed;
870
- }
871
-
872
- /* Header actions */
873
- .artifactuse-panel__actions {
874
- display: flex;
875
- gap: 2px;
876
- }
877
-
878
- .artifactuse-panel__action {
879
- display: flex;
880
- align-items: center;
881
- justify-content: center;
882
- width: 32px;
883
- height: 32px;
884
- background: transparent;
885
- border: none;
886
- border-radius: 6px;
887
- color: rgb(var(--artifactuse-text-secondary));
888
- cursor: pointer;
889
- transition: background 0.15s, color 0.15s;
890
- }
891
-
892
- .artifactuse-panel__action:hover {
893
- background: rgba(var(--artifactuse-text), 0.08);
894
- color: rgb(var(--artifactuse-text));
895
- }
896
-
897
- .artifactuse-panel__action svg {
898
- width: 16px;
899
- height: 16px;
900
- }
901
-
902
- .artifactuse-panel__action--close:hover {
903
- background: rgba(239, 68, 68, 0.15);
904
- color: rgb(239, 68, 68);
905
- }
906
-
907
- /* Content */
908
- .artifactuse-panel__content {
909
- flex: 1;
910
- display: flex;
911
- overflow: hidden;
912
- position: relative;
913
- }
914
-
915
- .artifactuse-panel__content--preview .artifactuse-panel__preview,
916
- .artifactuse-panel__content--code .artifactuse-panel__code {
917
- width: 100%;
918
- }
919
-
920
- .artifactuse-panel__content--split {
921
- flex-direction: row;
922
- }
923
-
924
- /* Preview pane */
925
- .artifactuse-panel__preview {
926
- position: relative;
927
- display: flex;
928
- flex-direction: column;
929
- overflow: hidden;
930
- background: white;
931
- }
932
-
933
- .artifactuse-panel__iframe {
934
- width: 100%;
935
- height: 100%;
936
- border: none;
937
- background: white;
938
- }
939
-
940
- .artifactuse-panel__iframe--loading {
941
- opacity: 0;
942
- }
943
-
944
- /* Loading spinner */
945
- .artifactuse-panel__loading {
946
- position: absolute;
947
- top: 0;
948
- left: 0;
949
- right: 0;
950
- bottom: 0;
951
- display: flex;
952
- align-items: center;
953
- justify-content: center;
954
- background: rgba(var(--artifactuse-surface), 0.85);
955
- z-index: 5;
956
- }
957
-
958
- .artifactuse-panel__spinner {
959
- width: 24px;
960
- height: 24px;
961
- border: 2px solid rgba(var(--artifactuse-text), 0.1);
962
- border-top-color: rgb(var(--artifactuse-primary));
963
- border-radius: 50%;
964
- animation: artifactuse-spin 0.8s linear infinite;
965
- }
966
-
967
- .artifactuse-panel__no-preview {
968
- display: flex;
969
- flex-direction: column;
970
- align-items: center;
971
- justify-content: center;
972
- height: 100%;
973
- gap: 12px;
974
- color: rgb(var(--artifactuse-text-muted));
975
- background: rgb(var(--artifactuse-surface));
976
- }
977
-
978
- .artifactuse-panel__no-preview svg {
979
- width: 48px;
980
- height: 48px;
981
- opacity: 0.5;
982
- }
983
-
984
- .artifactuse-panel__no-preview p {
985
- margin: 0;
986
- font-size: 14px;
987
- }
988
-
989
- /* Split handle */
990
- .artifactuse-panel__split-handle {
991
- position: absolute;
992
- left: 0;
993
- top: 0;
994
- bottom: 0;
995
- width: 4px;
996
- background: transparent;
997
- cursor: col-resize;
998
- display: flex;
999
- align-items: center;
1000
- justify-content: center;
1001
- z-index: 10;
1002
- }
1003
-
1004
- .artifactuse-panel__split-handle:hover {
1005
- background: rgba(var(--artifactuse-primary), 0.2);
1006
- }
1007
-
1008
- .artifactuse-panel__split-handle-line {
1009
- width: 4px;
1010
- height: 48px;
1011
- background: rgb(var(--artifactuse-border));
1012
- border-radius: 2px;
1013
- transition: background 0.15s, transform 0.15s;
1014
- }
1015
-
1016
- .artifactuse-panel__split-handle:hover .artifactuse-panel__split-handle-line {
1017
- background: rgb(var(--artifactuse-primary));
1018
- transform: scaleY(1.2);
1019
- }
1020
-
1021
- /* Code pane */
1022
- .artifactuse-panel__code {
1023
- position: relative;
1024
- overflow: hidden;
1025
- display: flex;
1026
- flex-direction: column;
1027
- flex: 1;
1028
- }
1029
-
1030
- /* Code scroll container */
1031
- .artifactuse-panel__code-scroll {
1032
- display: flex;
1033
- flex-direction: row;
1034
- flex: 1;
1035
- overflow: auto;
1036
- align-items: flex-start;
1037
- background: rgb(var(--artifactuse-surface));
1038
- }
1039
-
1040
- /* Line numbers */
1041
- .artifactuse-panel__line-numbers {
1042
- padding: 16px 12px;
1043
- text-align: right;
1044
- font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Fira Code', monospace;
1045
- font-size: 13px;
1046
- line-height: 1.6;
1047
- color: rgb(var(--artifactuse-text-muted));
1048
- border-right: 1px solid rgba(var(--artifactuse-text), 0.1);
1049
- user-select: none;
1050
- flex-shrink: 0;
1051
- background: inherit;
1052
- }
1053
-
1054
- .artifactuse-panel__line-numbers div {
1055
- padding-right: 4px;
1056
- }
1057
-
1058
- /* Code block */
1059
- .artifactuse-panel__code-block {
1060
- flex: 1;
1061
- margin: 0;
1062
- padding: 16px;
1063
- font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Fira Code', monospace;
1064
- font-size: 13px;
1065
- line-height: 1.6;
1066
- white-space: pre;
1067
- overflow: visible;
1068
- }
1069
-
1070
- .artifactuse-panel__code-block code {
1071
- font-family: inherit;
1072
- }
1073
-
1074
- /* Prism pre override */
1075
- .artifactuse-panel__code pre[class*="language-"],
1076
- .artifactuse-panel__code code[class*="language-"] {
1077
- font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Fira Code', monospace;
1078
- font-size: 13px;
1079
- line-height: 1.6;
1080
- padding: 16px 12px;
1081
- margin: 0;
1082
- overflow: visible;
1083
- }
1084
-
1085
- /* Footer */
1086
- .artifactuse-panel__footer {
1087
- display: flex;
1088
- align-items: center;
1089
- justify-content: space-between;
1090
- gap: 12px;
1091
- padding: 8px 14px;
1092
- border-top: 1px solid rgb(var(--artifactuse-border));
1093
- background: rgb(var(--artifactuse-surface));
1094
- flex-shrink: 0;
1095
- }
1096
-
1097
- .artifactuse-panel__footer-left,
1098
- .artifactuse-panel__footer-right {
1099
- display: flex;
1100
- align-items: center;
1101
- gap: 6px;
1102
- }
1103
-
1104
- /* Branding */
1105
- .artifactuse-panel__branding {
1106
- display: flex;
1107
- align-items: center;
1108
- gap: 6px;
1109
- padding: 4px 8px;
1110
- border-radius: 6px;
1111
- font-size: 11px;
1112
- font-weight: 500;
1113
- color: rgb(var(--artifactuse-text-secondary));
1114
- text-decoration: none;
1115
- transition: background 0.15s, color 0.15s;
1116
- }
1117
-
1118
- .artifactuse-panel__branding:hover {
1119
- background: rgba(var(--artifactuse-text), 0.06);
1120
- color: rgb(var(--artifactuse-text));
1121
- }
1122
-
1123
- .artifactuse-panel__branding svg {
1124
- flex-shrink: 0;
1125
- }
1126
-
1127
- /* Badges */
1128
- .artifactuse-panel__badge {
1129
- padding: 3px 7px;
1130
- background: rgba(var(--artifactuse-primary), 0.15);
1131
- color: rgb(var(--artifactuse-primary));
1132
- border-radius: 4px;
1133
- font-size: 10px;
1134
- font-weight: 600;
1135
- text-transform: uppercase;
1136
- letter-spacing: 0.02em;
1137
- }
1138
-
1139
- .artifactuse-panel__badge--secondary {
1140
- background: rgba(var(--artifactuse-text), 0.08);
1141
- color: rgb(var(--artifactuse-text-secondary));
1142
- }
1143
-
1144
- /* Footer actions */
1145
- .artifactuse-panel__footer-action {
1146
- display: flex;
1147
- align-items: center;
1148
- justify-content: center;
1149
- width: 32px;
1150
- height: 32px;
1151
- padding: 0;
1152
- background: transparent;
1153
- border: 1px solid rgb(var(--artifactuse-border));
1154
- border-radius: 6px;
1155
- color: rgb(var(--artifactuse-text-secondary));
1156
- cursor: pointer;
1157
- transition: all 0.15s;
1158
- }
1159
-
1160
- .artifactuse-panel__footer-action:hover {
1161
- background: rgba(var(--artifactuse-text), 0.05);
1162
- border-color: rgb(var(--artifactuse-text-secondary));
1163
- color: rgb(var(--artifactuse-text));
1164
- }
1165
-
1166
- .artifactuse-panel__footer-action svg {
1167
- width: 15px;
1168
- height: 15px;
1169
- }
1170
-
1171
- .artifactuse-panel__footer-action--success {
1172
- border-color: rgb(var(--artifactuse-success));
1173
- color: rgb(var(--artifactuse-success));
1174
- background: rgba(var(--artifactuse-success), 0.1);
1175
- }
1176
-
1177
- /* Navigation */
1178
- .artifactuse-panel__nav {
1179
- position: relative;
1180
- display: flex;
1181
- align-items: center;
1182
- gap: 2px;
1183
- margin-left: 6px;
1184
- padding-left: 6px;
1185
- border-left: 1px solid rgb(var(--artifactuse-border));
1186
- }
1187
-
1188
- .artifactuse-panel__nav-btn {
1189
- display: flex;
1190
- align-items: center;
1191
- justify-content: center;
1192
- width: 26px;
1193
- height: 26px;
1194
- background: transparent;
1195
- border: none;
1196
- border-radius: 4px;
1197
- color: rgb(var(--artifactuse-text-secondary));
1198
- cursor: pointer;
1199
- transition: all 0.15s;
1200
- }
1201
-
1202
- .artifactuse-panel__nav-btn:hover:not(:disabled) {
1203
- background: rgba(var(--artifactuse-text), 0.08);
1204
- color: rgb(var(--artifactuse-text));
1205
- }
1206
-
1207
- .artifactuse-panel__nav-btn:disabled {
1208
- opacity: 0.3;
1209
- cursor: not-allowed;
1210
- }
1211
-
1212
- .artifactuse-panel__nav-btn svg {
1213
- width: 14px;
1214
- height: 14px;
1215
- }
1216
-
1217
- .artifactuse-panel__nav-trigger {
1218
- display: flex;
1219
- align-items: center;
1220
- gap: 4px;
1221
- padding: 4px 8px;
1222
- background: transparent;
1223
- border: none;
1224
- border-radius: 4px;
1225
- font-size: 11px;
1226
- font-weight: 500;
1227
- color: rgb(var(--artifactuse-text-secondary));
1228
- cursor: pointer;
1229
- transition: all 0.15s;
1230
- }
1231
-
1232
- .artifactuse-panel__nav-trigger:hover {
1233
- background: rgba(var(--artifactuse-text), 0.08);
1234
- color: rgb(var(--artifactuse-text));
1235
- }
1236
-
1237
- .artifactuse-panel__nav-trigger svg {
1238
- width: 12px;
1239
- height: 12px;
1240
- }
1241
-
1242
- /* Artifact list popup */
1243
- .artifactuse-panel__artifact-list {
1244
- position: absolute;
1245
- bottom: 100%;
1246
- right: 0;
1247
- margin-bottom: 8px;
1248
- width: 280px;
1249
- max-height: 320px;
1250
- background: rgb(var(--artifactuse-surface));
1251
- border: 1px solid rgb(var(--artifactuse-border));
1252
- border-radius: 10px;
1253
- box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
1254
- overflow: hidden;
1255
- z-index: 100;
1256
- }
1257
-
1258
- .artifactuse-panel__artifact-list-header {
1259
- display: flex;
1260
- align-items: center;
1261
- justify-content: space-between;
1262
- padding: 10px 12px;
1263
- border-bottom: 1px solid rgb(var(--artifactuse-border));
1264
- font-size: 12px;
1265
- font-weight: 600;
1266
- color: rgb(var(--artifactuse-text));
1267
- }
1268
-
1269
- .artifactuse-panel__artifact-list-close {
1270
- display: flex;
1271
- align-items: center;
1272
- justify-content: center;
1273
- width: 24px;
1274
- height: 24px;
1275
- background: transparent;
1276
- border: none;
1277
- border-radius: 4px;
1278
- color: rgb(var(--artifactuse-text-secondary));
1279
- cursor: pointer;
1280
- transition: all 0.15s;
1281
- }
1282
-
1283
- .artifactuse-panel__artifact-list-close:hover {
1284
- background: rgba(239, 68, 68, 0.15);
1285
- color: rgb(239, 68, 68);
1286
- }
1287
-
1288
- .artifactuse-panel__artifact-list-close svg {
1289
- width: 14px;
1290
- height: 14px;
1291
- }
1292
-
1293
- .artifactuse-panel__artifact-list-items {
1294
- max-height: 260px;
1295
- overflow-y: auto;
1296
- padding: 4px;
1297
- }
1298
-
1299
- .artifactuse-panel__artifact-item {
1300
- display: flex;
1301
- align-items: center;
1302
- gap: 10px;
1303
- width: 100%;
1304
- padding: 8px 10px;
1305
- background: transparent;
1306
- border: none;
1307
- border-radius: 6px;
1308
- cursor: pointer;
1309
- transition: background 0.15s;
1310
- text-align: left;
1311
- }
1312
-
1313
- .artifactuse-panel__artifact-item:hover {
1314
- background: rgba(var(--artifactuse-text), 0.06);
1315
- }
1316
-
1317
- .artifactuse-panel__artifact-item--active {
1318
- background: rgba(var(--artifactuse-primary), 0.12);
1319
- }
1320
-
1321
- .artifactuse-panel__artifact-item--active:hover {
1322
- background: rgba(var(--artifactuse-primary), 0.18);
1323
- }
1324
-
1325
- .artifactuse-panel__artifact-item-icon {
1326
- flex-shrink: 0;
1327
- width: 24px;
1328
- height: 24px;
1329
- display: flex;
1330
- align-items: center;
1331
- justify-content: center;
1332
- background: rgba(var(--artifactuse-primary), 0.12);
1333
- border-radius: 5px;
1334
- color: rgb(var(--artifactuse-primary));
1335
- }
1336
-
1337
- .artifactuse-panel__artifact-item-icon svg {
1338
- width: 14px;
1339
- height: 14px;
1340
- }
1341
-
1342
- .artifactuse-panel__artifact-item-content {
1343
- flex: 1;
1344
- min-width: 0;
1345
- display: flex;
1346
- flex-direction: column;
1347
- gap: 1px;
1348
- }
1349
-
1350
- .artifactuse-panel__artifact-item-title {
1351
- font-size: 12px;
1352
- font-weight: 500;
1353
- color: rgb(var(--artifactuse-text));
1354
- white-space: nowrap;
1355
- overflow: hidden;
1356
- text-overflow: ellipsis;
1357
- }
1358
-
1359
- .artifactuse-panel__artifact-item-meta {
1360
- font-size: 10px;
1361
- color: rgb(var(--artifactuse-text-secondary));
1362
- }
1363
-
1364
- .artifactuse-panel__artifact-item-index {
1365
- flex-shrink: 0;
1366
- width: 20px;
1367
- height: 20px;
1368
- display: flex;
1369
- align-items: center;
1370
- justify-content: center;
1371
- background: rgba(var(--artifactuse-text), 0.08);
1372
- border-radius: 4px;
1373
- font-size: 10px;
1374
- font-weight: 600;
1375
- color: rgb(var(--artifactuse-text-secondary));
1376
- }
1377
-
1378
- /* Backdrop */
1379
- .artifactuse-panel__backdrop {
1380
- position: fixed;
1381
- inset: 0;
1382
- background: rgba(0, 0, 0, 0.5);
1383
- z-index: 999;
1384
- }
1385
-
1386
- /* Theme overrides - Light */
1387
- [data-artifactuse-theme="light"] .artifactuse-panel__preview {
1388
- background: #ffffff;
1389
- }
1390
-
1391
- /* Responsive */
1392
- @media (max-width: 768px) {
1393
- .artifactuse-panel {
1394
- position: fixed;
1395
- top: 0;
1396
- right: 0;
1397
- bottom: 0;
1398
- width: 100% !important;
1399
- min-width: 0;
1400
- max-width: none;
1401
- z-index: 1000;
1402
- }
1403
-
1404
- .artifactuse-panel__resize-handle {
1405
- display: none;
1406
- }
1407
-
1408
- .artifactuse-panel__tabs {
1409
- display: none;
1410
- }
1411
-
1412
- .artifactuse-panel__content--split {
1413
- flex-direction: column;
1414
- }
1415
-
1416
- .artifactuse-panel__content--split .artifactuse-panel__preview,
1417
- .artifactuse-panel__content--split .artifactuse-panel__code {
1418
- width: 100% !important;
1419
- height: 50%;
1420
- }
1421
-
1422
- .artifactuse-panel__split-handle {
1423
- width: 100%;
1424
- height: 12px;
1425
- margin: -3px 0;
1426
- cursor: ns-resize;
1427
- }
1428
-
1429
- .artifactuse-panel__split-handle-line {
1430
- width: 48px;
1431
- height: 4px;
1432
- }
1433
-
1434
- .artifactuse-panel__footer {
1435
- flex-wrap: wrap;
1436
- }
1437
- }
1438
-
1439
- @container artifactuse-panel (max-width: 450px) {
1440
- .artifactuse-panel__header {
1441
- padding: 8px 10px;
1442
- gap: 8px;
1443
- }
1444
-
1445
- .artifactuse-panel__footer {
1446
- padding: 6px 10px;
1447
- }
1448
-
1449
- .artifactuse-panel__badge {
1450
- display: none;
1451
- }
1452
-
1453
- .artifactuse-panel__nav-trigger span {
1454
- display: none;
1455
- }
1456
- }
1457
-
1458
- @container artifactuse-panel (max-width: 320px) {
1459
- .artifactuse-panel__title-content {
1460
- display: none;
1461
- }
1462
- }
1463
-
1464
- /* Panel Transitions (for CSS-based animations) */
1465
- .artifactuse-panel-enter-active,
1466
- .artifactuse-panel-leave-active {
1467
- transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
1468
- }
1469
-
1470
- .artifactuse-panel-enter-from,
1471
- .artifactuse-panel-leave-to {
1472
- width: 0 !important;
1473
- min-width: 0 !important;
1474
- opacity: 0;
1475
- overflow: hidden;
1476
- }
1477
-
1478
- .artifactuse-panel--fullscreen.artifactuse-panel-enter-active,
1479
- .artifactuse-panel--fullscreen.artifactuse-panel-leave-active {
1480
- transition: opacity 0.3s ease;
1481
- }
1482
-
1483
- .artifactuse-panel--fullscreen.artifactuse-panel-enter-from,
1484
- .artifactuse-panel--fullscreen.artifactuse-panel-leave-to {
1485
- width: 100% !important;
1486
- opacity: 0;
1487
- }
1488
-
1489
- .artifactuse-backdrop-enter-active,
1490
- .artifactuse-backdrop-leave-active {
1491
- transition: opacity 0.3s ease;
1492
- }
1493
-
1494
- .artifactuse-backdrop-enter-from,
1495
- .artifactuse-backdrop-leave-to {
1496
- opacity: 0;
1497
- }
1498
-
1499
- /* Popup transition */
1500
- .artifactuse-popup-enter-active,
1501
- .artifactuse-popup-leave-active {
1502
- transition: opacity 0.2s ease, transform 0.2s ease;
1503
- }
1504
-
1505
- .artifactuse-popup-enter-from,
1506
- .artifactuse-popup-leave-to {
1507
- opacity: 0;
1508
- transform: translateY(8px);
1509
- }
1510
-
1511
-
1512
-
1513
-
1514
- /* ==========================================
1515
- IMAGE PROCESSOR
1516
- ========================================== */
1517
-
1518
- /* Image Gallery */
1519
- .artifactuse-image-gallery {
1520
- display: grid;
1521
- gap: 0.75rem;
1522
- margin: 1rem 0;
1523
- grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
1524
- }
1525
-
1526
- .artifactuse-gallery-item {
1527
- position: relative;
1528
- overflow: hidden;
1529
- border-radius: 0.5rem;
1530
- cursor: pointer;
1531
- transition: box-shadow 0.2s ease;
1532
- margin: 1rem 0rem;
1533
- }
1534
-
1535
- .artifactuse-gallery-item:hover {
1536
- box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.2), 0 4px 6px -2px rgba(0, 0, 0, 0.1);
1537
- }
1538
-
1539
- .artifactuse-gallery-item img.artifactuse-gallery-image {
1540
- width: 100%;
1541
- height: 12rem;
1542
- object-fit: cover;
1543
- transition: transform 0.3s ease;
1544
- }
1545
-
1546
- .artifactuse-gallery-item:hover img.artifactuse-gallery-image {
1547
- transform: scale(1.05);
1548
- }
1549
-
1550
- .artifactuse-gallery-caption {
1551
- position: absolute;
1552
- bottom: 0;
1553
- left: 0;
1554
- right: 0;
1555
- background: linear-gradient(to top, rgba(0, 0, 0, 0.7), transparent);
1556
- color: white;
1557
- font-size: 0.875rem;
1558
- padding: 0.75rem;
1559
- }
1560
-
1561
- /* Hero and Inline Image variants */
1562
- .artifactuse-hero-image {
1563
- width: 100%;
1564
- border-radius: 0.75rem;
1565
- box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
1566
- margin: 2rem 0;
1567
- max-height: 500px;
1568
- object-fit: cover;
1569
- }
1570
-
1571
- .artifactuse-inline-image {
1572
- border-radius: 0.375rem;
1573
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
1574
- margin: 1rem 0;
1575
- max-width: 400px;
1576
- }
1577
-
1578
- /* ==========================================
1579
- VIDEO PROCESSOR - Additional Styles
1580
- ========================================== */
1581
-
1582
- /* Video Preview (Pexels style) */
1583
- .artifactuse-video-preview-container {
1584
- margin: 1.5rem 0;
1585
- border-radius: 0.5rem;
1586
- overflow: hidden;
1587
- box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.2);
1588
- background-color: rgb(var(--artifactuse-background));
1589
- }
1590
-
1591
- .artifactuse-video-preview-wrapper {
1592
- position: relative;
1593
- cursor: pointer;
1594
- aspect-ratio: 16/9;
1595
- }
1596
-
1597
- .artifactuse-video-preview-image {
1598
- width: 100%;
1599
- height: 100%;
1600
- object-fit: cover;
1601
- transition: transform 0.3s ease;
1602
- }
1603
-
1604
- .artifactuse-video-preview-wrapper:hover .artifactuse-video-preview-image {
1605
- transform: scale(1.05);
1606
- }
1607
-
1608
- .artifactuse-video-play-overlay {
1609
- position: absolute;
1610
- inset: 0;
1611
- display: flex;
1612
- align-items: center;
1613
- justify-content: center;
1614
- background-color: rgba(0, 0, 0, 0.4);
1615
- transition: background-color 0.3s ease;
1616
- }
1617
-
1618
- .artifactuse-video-preview-wrapper:hover .artifactuse-video-play-overlay {
1619
- background-color: rgba(0, 0, 0, 0.6);
1620
- }
1621
-
1622
- .artifactuse-play-icon {
1623
- width: 4rem;
1624
- height: 4rem;
1625
- color: white;
1626
- opacity: 0.8;
1627
- transition: all 0.3s ease;
1628
- filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
1629
- }
1630
-
1631
- .artifactuse-video-preview-wrapper:hover .artifactuse-play-icon {
1632
- opacity: 1;
1633
- transform: scale(1.1);
1634
- }
1635
-
1636
- .artifactuse-video-info-overlay {
1637
- position: absolute;
1638
- bottom: 0;
1639
- left: 0;
1640
- right: 0;
1641
- background: linear-gradient(to top, black, rgba(0, 0, 0, 0.7), transparent);
1642
- color: white;
1643
- padding: 1rem;
1644
- }
1645
-
1646
- .artifactuse-video-title {
1647
- font-size: 1.125rem;
1648
- font-weight: 600;
1649
- margin-bottom: 0.25rem;
1650
- }
1651
-
1652
- .artifactuse-video-alt {
1653
- font-size: 0.875rem;
1654
- opacity: 0.9;
1655
- }
1656
-
1657
- .artifactuse-video-actions {
1658
- padding: 1rem;
1659
- background-color: rgb(var(--artifactuse-surface));
1660
- display: flex;
1661
- justify-content: space-between;
1662
- align-items: center;
1663
- }
1664
-
1665
- .artifactuse-video-link {
1666
- color: rgb(var(--artifactuse-info));
1667
- text-decoration: none;
1668
- transition: color 0.2s ease;
1669
- }
1670
-
1671
- .artifactuse-video-link:hover {
1672
- color: rgb(var(--artifactuse-primary));
1673
- }
1674
-
1675
- /* ==========================================
1676
- AUDIO PROCESSOR - Additional Styles
1677
- ========================================== */
1678
-
1679
- .artifactuse-audio-player {
1680
- background-color: rgb(var(--artifactuse-surface));
1681
- border-radius: 0.5rem;
1682
- padding: 1rem;
1683
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
1684
- }
1685
-
1686
- .artifactuse-audio-filename {
1687
- font-weight: 500;
1688
- color: rgb(var(--artifactuse-text));
1689
- }
1690
-
1691
- .artifactuse-spotify-embed {
1692
- width: 100%;
1693
- border-radius: 0.75rem;
1694
- }
1695
-
1696
- .artifactuse-apple-music-embed {
1697
- width: 100%;
1698
- border-radius: 0.75rem;
1699
- }
1700
-
1701
- .artifactuse-soundcloud-embed {
1702
- width: 100%;
1703
- border-radius: 0.5rem;
1704
- }
1705
-
1706
- /* ==========================================
1707
- MAP PROCESSOR - Additional Styles
1708
- ========================================== */
1709
-
1710
- .artifactuse-map-icon {
1711
- width: 1rem;
1712
- height: 1rem;
1713
- display: inline-block;
1714
- margin-left: 0.25rem;
1715
- vertical-align: middle;
1716
- }
1717
-
1718
- /* ==========================================
1719
- SOCIAL PROCESSOR - Additional Styles
1720
- ========================================== */
1721
-
1722
- /* LinkedIn */
1723
- .artifactuse-linkedin-wrapper {
1724
- margin: 1.5rem 0;
1725
- }
1726
-
1727
- .artifactuse-linkedin-embed {
1728
- width: 100%;
1729
- height: 400px;
1730
- border-radius: 0.5rem;
1731
- border: none;
1732
- }
1733
-
1734
- /* Reddit */
1735
- .artifactuse-reddit-wrapper {
1736
- margin: 1.5rem 0;
1737
- }
1738
-
1739
- .artifactuse-reddit-embed {
1740
- width: 100%;
1741
- height: 400px;
1742
- border-radius: 0.5rem;
1743
- border: none;
1744
- }
1745
-
1746
- /* Facebook */
1747
- .artifactuse-facebook-wrapper {
1748
- margin: 1.5rem 0;
1749
- display: flex;
1750
- justify-content: center;
1751
- }
1752
-
1753
- .artifactuse-facebook-embed {
1754
- border-radius: 0.5rem;
1755
- }
1756
-
1757
- /* Pinterest */
1758
- .artifactuse-pinterest-wrapper {
1759
- margin: 1.5rem 0;
1760
- display: flex;
1761
- justify-content: center;
1762
- }
1763
-
1764
- /* Twitter */
1765
- .artifactuse-twitter-wrapper {
1766
- margin: 1.5rem 0;
1767
- display: flex;
1768
- justify-content: center;
1769
- }
1770
-
1771
- /* TikTok */
1772
- .artifactuse-tiktok-wrapper {
1773
- margin: 1.5rem 0;
1774
- display: flex;
1775
- justify-content: center;
1776
- }
1777
-
1778
- .artifactuse-tiktok-embed {
1779
- max-width: 325px;
1780
- height: 740px;
1781
- border-radius: 0.5rem;
1782
- border: none;
1783
- }
1784
-
1785
- /* Embed fallback */
1786
- .artifactuse-embed-fallback {
1787
- margin-top: 0.5rem;
1788
- text-align: center;
1789
- font-size: 0.875rem;
1790
- }
1791
-
1792
- .artifactuse-embed-fallback a {
1793
- color: rgb(var(--artifactuse-info));
1794
- text-decoration: none;
1795
- }
1796
-
1797
- .artifactuse-embed-fallback a:hover {
1798
- color: rgb(var(--artifactuse-primary));
1799
- text-decoration: underline;
1800
- }
1801
-
1802
- /* ==========================================
1803
- DOCUMENT PROCESSOR - Additional Styles
1804
- ========================================== */
1805
-
1806
- .artifactuse-pdf-icon {
1807
- width: 1.25rem;
1808
- height: 1.25rem;
1809
- color: rgb(var(--artifactuse-error));
1810
- }
1811
-
1812
- .artifactuse-office-type {
1813
- font-size: 0.875rem;
1814
- font-weight: 500;
1815
- color: rgb(var(--artifactuse-text-secondary));
1816
- }
1817
-
1818
- /* Google Forms */
1819
- .artifactuse-google-form-wrapper {
1820
- margin: 1.5rem 0;
1821
- border-radius: 0.5rem;
1822
- overflow: hidden;
1823
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
1824
- }
1825
-
1826
- .artifactuse-google-form-iframe {
1827
- width: 100%;
1828
- height: 600px;
1829
- border: none;
1830
- }
1831
-
1832
- /* ==========================================
1833
- CODE EMBED PROCESSOR - Additional Styles
1834
- ========================================== */
1835
-
1836
- .artifactuse-codepen-embed {
1837
- width: 100%;
1838
- height: 400px;
1839
- border-radius: 0.5rem;
1840
- border: none;
1841
- }
1842
-
1843
- .artifactuse-codesandbox-embed {
1844
- width: 100%;
1845
- border-radius: 0.5rem;
1846
- border: none;
1847
- }
1848
-
1849
- .artifactuse-jsfiddle-embed {
1850
- width: 100%;
1851
- height: 400px;
1852
- border-radius: 0.5rem;
1853
- border: none;
1854
- }
1855
-
1856
- .artifactuse-stackblitz-wrapper {
1857
- margin: 1.5rem 0;
1858
- }
1859
-
1860
- .artifactuse-stackblitz-embed {
1861
- width: 100%;
1862
- border-radius: 0.5rem;
1863
- border: none;
1864
- }
1865
-
1866
- .artifactuse-replit-wrapper {
1867
- margin: 1.5rem 0;
1868
- }
1869
-
1870
- .artifactuse-replit-embed {
1871
- width: 100%;
1872
- border-radius: 0.5rem;
1873
- border: none;
1874
- }
1875
-
1876
- /* ==========================================
1877
- DATA VIZ PROCESSOR - Additional Styles
1878
- ========================================== */
1879
-
1880
- /* Tableau */
1881
- .artifactuse-tableau-wrapper {
1882
- margin: 1.5rem 0;
1883
- border-radius: 0.5rem;
1884
- overflow: hidden;
1885
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
1886
- }
1887
-
1888
- .artifactuse-tableau-iframe {
1889
- width: 100%;
1890
- height: 600px;
1891
- border: none;
1892
- }
1893
-
1894
- /* Infogram */
1895
- .artifactuse-infogram-wrapper {
1896
- margin: 1.5rem 0;
1897
- border-radius: 0.5rem;
1898
- overflow: hidden;
1899
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
1900
- }
1901
-
1902
- .artifactuse-infogram-iframe {
1903
- width: 100%;
1904
- height: 500px;
1905
- border: none;
1906
- }
1907
-
1908
- /* ==========================================
1909
- DESIGN PROCESSOR - Additional Styles
1910
- ========================================== */
1911
-
1912
- /* Sketchfab */
1913
- .artifactuse-sketchfab-wrapper {
1914
- margin: 1.5rem 0;
1915
- border-radius: 0.5rem;
1916
- overflow: hidden;
1917
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
1918
- }
1919
-
1920
- .artifactuse-sketchfab-iframe {
1921
- width: 100%;
1922
- height: 480px;
1923
- border: none;
1924
- }
1925
-
1926
- /* Canva */
1927
- .artifactuse-canva-wrapper {
1928
- margin: 1.5rem 0;
1929
- }
1930
-
1931
- .artifactuse-canva-preview {
1932
- border-radius: 0.5rem;
1933
- overflow: hidden;
1934
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
1935
- }
1936
-
1937
- .artifactuse-canva-placeholder {
1938
- display: flex;
1939
- flex-direction: column;
1940
- align-items: center;
1941
- justify-content: center;
1942
- padding: 3rem;
1943
- background: linear-gradient(to bottom right, rgb(var(--artifactuse-primary)), rgb(var(--artifactuse-gradient)));
1944
- color: white;
1945
- }
1946
-
1947
- .artifactuse-canva-icon {
1948
- width: 4rem;
1949
- height: 4rem;
1950
- margin-bottom: 1rem;
1951
- opacity: 0.8;
1952
- }
1953
-
1954
- .artifactuse-canva-placeholder p {
1955
- font-size: 1.25rem;
1956
- font-weight: 600;
1957
- margin-bottom: 1rem;
1958
- }
1959
-
1960
- .artifactuse-canva-link {
1961
- padding: 0.5rem 1.5rem;
1962
- background-color: white;
1963
- color: rgb(var(--artifactuse-primary));
1964
- border-radius: 9999px;
1965
- font-weight: 500;
1966
- text-decoration: none;
1967
- transition: background-color 0.2s ease;
1968
- }
1969
-
1970
- .artifactuse-canva-link:hover {
1971
- background-color: rgb(var(--artifactuse-surface));
1972
- }
1973
-
1974
- /* Dribbble */
1975
- .artifactuse-dribbble-wrapper {
1976
- margin: 1.5rem 0;
1977
- border-radius: 0.5rem;
1978
- overflow: hidden;
1979
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
1980
- }
1981
-
1982
- .artifactuse-dribbble-iframe {
1983
- width: 100%;
1984
- height: 400px;
1985
- border: none;
1986
- }
1987
-
1988
- /* Behance */
1989
- .artifactuse-behance-wrapper {
1990
- margin: 1.5rem 0;
1991
- border-radius: 0.5rem;
1992
- overflow: hidden;
1993
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
1994
- }
1995
-
1996
- .artifactuse-behance-iframe {
1997
- width: 100%;
1998
- height: 400px;
1999
- border: none;
2000
- }
2001
-
2002
- /* ==========================================
2003
- INTERACTIVE PROCESSOR - Additional Styles
2004
- ========================================== */
2005
-
2006
- /* Google Calendar */
2007
- .artifactuse-google-calendar-wrapper {
2008
- margin: 1.5rem 0;
2009
- border-radius: 0.5rem;
2010
- overflow: hidden;
2011
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
2012
- }
2013
-
2014
- .artifactuse-google-calendar-iframe {
2015
- width: 100%;
2016
- height: 600px;
2017
- border: none;
2018
- }
2019
-
2020
- /* Cal.com */
2021
- .artifactuse-calcom-wrapper {
2022
- margin: 1.5rem 0;
2023
- border-radius: 0.5rem;
2024
- overflow: hidden;
2025
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
2026
- }
2027
-
2028
- .artifactuse-calcom-iframe {
2029
- width: 100%;
2030
- height: 650px;
2031
- border: none;
2032
- }
2033
-
2034
- /* Notion */
2035
- .artifactuse-notion-wrapper {
2036
- margin: 1.5rem 0;
2037
- border-radius: 0.5rem;
2038
- overflow: hidden;
2039
- box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
2040
- }
2041
-
2042
- .artifactuse-notion-iframe {
2043
- width: 100%;
2044
- height: 500px;
2045
- border: none;
2046
- }
2047
-
2048
- /* ==========================================
2049
- MERMAID PROCESSOR - Complete Styles
2050
- ========================================== */
2051
-
2052
- .artifactuse-mermaid-container {
2053
- margin: 1.5rem 0;
2054
- border-radius: 0.5rem;
2055
- border: 1px solid rgb(var(--artifactuse-border));
2056
- overflow: hidden;
2057
- background-color: rgb(var(--artifactuse-background));
2058
- }
2059
-
2060
- .artifactuse-mermaid-loading {
2061
- display: flex;
2062
- align-items: center;
2063
- justify-content: center;
2064
- padding: 2rem;
2065
- color: rgb(var(--artifactuse-text-muted));
2066
- font-size: 0.875rem;
2067
- }
2068
-
2069
- .artifactuse-mermaid-rendered {
2070
- padding: 1.5rem;
2071
- }
2072
-
2073
- .artifactuse-mermaid-rendered svg {
2074
- max-width: 100%;
2075
- height: auto;
2076
- margin: 0 auto;
2077
- display: block;
2078
- }
2079
-
2080
- /* Mermaid Error States */
2081
- .artifactuse-mermaid-error {
2082
- padding: 1.5rem;
2083
- }
2084
-
2085
- .artifactuse-mermaid-error-container {
2086
- border-color: rgb(var(--artifactuse-error));
2087
- }
2088
-
2089
- .artifactuse-mermaid-error-title {
2090
- color: rgb(var(--artifactuse-error));
2091
- font-weight: 600;
2092
- margin-bottom: 0.5rem;
2093
- }
2094
-
2095
- .artifactuse-mermaid-error-message {
2096
- font-size: 0.875rem;
2097
- color: rgb(var(--artifactuse-error));
2098
- background-color: rgba(var(--artifactuse-error), 0.1);
2099
- padding: 0.75rem;
2100
- border-radius: 0.5rem;
2101
- margin-bottom: 0.75rem;
2102
- font-family: var(--artifactuse-font-mono);
2103
- overflow-x: auto;
2104
- }
2105
-
2106
- .artifactuse-mermaid-error-details {
2107
- font-size: 0.875rem;
2108
- }
2109
-
2110
- .artifactuse-mermaid-error-details summary {
2111
- cursor: pointer;
2112
- color: rgb(var(--artifactuse-text-secondary));
2113
- }
2114
-
2115
- .artifactuse-mermaid-error-details summary:hover {
2116
- color: rgb(var(--artifactuse-text));
2117
- }
2118
-
2119
- .artifactuse-mermaid-error-details pre {
2120
- margin-top: 0.5rem;
2121
- padding: 0.75rem;
2122
- background-color: rgb(var(--artifactuse-surface));
2123
- border-radius: 0.5rem;
2124
- font-size: 0.75rem;
2125
- font-family: var(--artifactuse-font-mono);
2126
- overflow-x: auto;
2127
- color: rgb(var(--artifactuse-text));
2128
- }
2129
-
2130
- /* Mermaid Fallback (when library fails to load) */
2131
- .artifactuse-mermaid-fallback {
2132
- padding: 1.5rem;
2133
- }
2134
-
2135
- .artifactuse-mermaid-fallback-container {
2136
- background-color: rgb(var(--artifactuse-surface));
2137
- }
2138
-
2139
- .artifactuse-mermaid-fallback-title {
2140
- color: rgb(var(--artifactuse-text-secondary));
2141
- font-weight: 500;
2142
- margin-bottom: 0.5rem;
2143
- }
2144
-
2145
- .artifactuse-mermaid-fallback-source {
2146
- font-size: 0.875rem;
2147
- font-family: var(--artifactuse-font-mono);
2148
- color: rgb(var(--artifactuse-text));
2149
- background-color: rgb(var(--artifactuse-background));
2150
- padding: 1rem;
2151
- border-radius: 0.5rem;
2152
- overflow-x: auto;
2153
- white-space: pre-wrap;
2154
- }
2155
-
2156
- /* ==========================================
2157
- TABLE PROCESSOR - Updated Styles
2158
- ========================================== */
2159
-
2160
- .artifactuse-table-container {
2161
- margin: 1.5rem 0;
2162
- border-radius: 0.5rem;
2163
- border: 1px solid rgb(var(--artifactuse-border));
2164
- overflow: hidden;
2165
- background-color: rgb(var(--artifactuse-background));
2166
- }
2167
-
2168
- .artifactuse-table-controls {
2169
- display: flex;
2170
- align-items: center;
2171
- justify-content: space-between;
2172
- gap: 1rem;
2173
- padding: 0.75rem 1rem;
2174
- background-color: rgb(var(--artifactuse-surface));
2175
- /* border-bottom: 1px solid rgb(var(--artifactuse-border)); */
2176
- }
2177
-
2178
- .artifactuse-table-search {
2179
- position: relative;
2180
- flex: 1;
2181
- max-width: 16rem;
2182
- }
2183
-
2184
- .artifactuse-table-search-input {
2185
- width: 70%;
2186
- padding: 0.4rem 1rem 0.4rem 2.25rem;
2187
- font-size: 0.875rem;
2188
- border-radius: 0.5rem;
2189
- border: 1px solid rgb(var(--artifactuse-border));
2190
- background-color: rgb(var(--artifactuse-background));
2191
- color: rgb(var(--artifactuse-text));
2192
- }
2193
-
2194
- .artifactuse-table-search-input::placeholder {
2195
- color: rgb(var(--artifactuse-text-muted));
2196
- }
2197
-
2198
- .artifactuse-table-search-input:focus {
2199
- outline: none;
2200
- box-shadow: 0 0 0 2px rgb(var(--artifactuse-primary));
2201
- border-color: transparent;
2202
- }
2203
-
2204
- .artifactuse-table-search-icon {
2205
- position: absolute;
2206
- left: 0.75rem;
2207
- top: 50%;
2208
- transform: translateY(-50%);
2209
- width: 1rem;
2210
- height: 1rem;
2211
- color: rgb(var(--artifactuse-text-muted));
2212
- }
2213
-
2214
- .artifactuse-table-actions {
2215
- display: flex;
2216
- align-items: center;
2217
- gap: 0.5rem;
2218
- }
2219
-
2220
- .artifactuse-table-action-btn {
2221
- display: flex;
2222
- align-items: center;
2223
- gap: 0.375rem;
2224
- padding: 0.375rem 0.75rem;
2225
- font-size: 0.75rem;
2226
- font-weight: 500;
2227
- border-radius: 0.5rem;
2228
- background-color: rgb(var(--artifactuse-background));
2229
- border: 1px solid rgb(var(--artifactuse-border));
2230
- color: rgb(var(--artifactuse-text-secondary));
2231
- cursor: pointer;
2232
- transition: all 0.2s ease;
2233
- }
2234
-
2235
- .artifactuse-table-action-btn:hover {
2236
- background-color: rgb(var(--artifactuse-surface-hover));
2237
- }
2238
-
2239
- .artifactuse-table-action-btn svg {
2240
- width: 0.875rem;
2241
- height: 0.875rem;
2242
- }
2243
-
2244
- .artifactuse-table-action-btn.copied {
2245
- background-color: rgba(var(--artifactuse-success), 0.15);
2246
- color: rgb(var(--artifactuse-success));
2247
- border-color: rgba(var(--artifactuse-success), 0.3);
2248
- }
2249
-
2250
- .artifactuse-table-wrapper {
2251
- overflow-x: auto;
2252
- }
2253
-
2254
- .artifactuse-table {
2255
- width: 100%;
2256
- border-collapse: collapse;
2257
- }
2258
-
2259
- .artifactuse-enhanced-table th,
2260
- .artifactuse-enhanced-table td {
2261
- padding: 0.75rem 1rem;
2262
- text-align: left;
2263
- font-size: 0.875rem;
2264
- border-bottom: 1px solid rgb(var(--artifactuse-border));
2265
- }
2266
-
2267
- .artifactuse-enhanced-table th {
2268
- font-weight: 600;
2269
- color: rgb(var(--artifactuse-text));
2270
- background-color: rgb(var(--artifactuse-surface));
2271
- }
2272
-
2273
- .artifactuse-enhanced-table td {
2274
- color: rgb(var(--artifactuse-text-secondary));
2275
- }
2276
-
2277
- .artifactuse-enhanced-table tbody tr:hover {
2278
- background-color: rgba(var(--artifactuse-surface), 0.5);
2279
- }
2280
-
2281
- /* Sortable headers */
2282
- .artifactuse-sortable-header {
2283
- cursor: pointer;
2284
- user-select: none;
2285
- transition: background-color 0.15s ease;
2286
- }
2287
-
2288
- .artifactuse-sortable-header:hover {
2289
- background-color: rgb(var(--artifactuse-surface-hover));
2290
- }
2291
-
2292
- .artifactuse-th-content {
2293
- display: flex;
2294
- align-items: center;
2295
- justify-content: space-between;
2296
- gap: 0.5rem;
2297
- }
2298
-
2299
- .artifactuse-sort-indicator {
2300
- width: 1rem;
2301
- height: 1rem;
2302
- color: rgb(var(--artifactuse-text-muted));
2303
- opacity: 0.5;
2304
- transition: opacity 0.15s ease;
2305
- }
2306
-
2307
- .artifactuse-sortable-header:hover .artifactuse-sort-indicator {
2308
- opacity: 1;
2309
- }
2310
-
2311
- .artifactuse-sortable-header.sort-asc .artifactuse-sort-indicator,
2312
- .artifactuse-sortable-header.sort-desc .artifactuse-sort-indicator {
2313
- opacity: 1;
2314
- color: rgb(var(--artifactuse-primary));
2315
- }
2316
-
2317
- .artifactuse-table-footer {
2318
- display: flex;
2319
- align-items: center;
2320
- justify-content: space-between;
2321
- padding: 0.5rem 1rem;
2322
- background-color: rgb(var(--artifactuse-surface));
2323
- /* border-top: 1px solid rgb(var(--artifactuse-border)); */
2324
- font-size: 0.75rem;
2325
- color: rgb(var(--artifactuse-text-muted));
2326
- }
2327
-
2328
- .artifactuse-table-row-count {
2329
- font-size: 0.75rem;
2330
- color: rgb(var(--artifactuse-text-muted));
2331
- }
2332
-
2333
- /* ==========================================
2334
- MATH PROCESSOR - Complete Styles
2335
- ========================================== */
2336
-
2337
- .artifactuse-math-container {
2338
- display: inline;
2339
- }
2340
-
2341
- .artifactuse-math-display {
2342
- display: block;
2343
- margin: 1.5rem 0;
2344
- overflow-x: auto;
2345
- padding: 1rem 0;
2346
- text-align: center;
2347
- }
2348
-
2349
- .artifactuse-math-inline {
2350
- display: inline;
2351
- margin: 0 0.125rem;
2352
- }
2353
-
2354
- .artifactuse-math-error {
2355
- display: inline-block;
2356
- padding: 0.25rem 0.5rem;
2357
- border-radius: 0.25rem;
2358
- background-color: rgba(var(--artifactuse-error), 0.15);
2359
- color: rgb(var(--artifactuse-error));
2360
- font-family: var(--artifactuse-font-mono);
2361
- font-size: 0.875rem;
2362
- border: 1px solid rgba(var(--artifactuse-error), 0.3);
2363
- }
2364
-
2365
- .artifactuse-math-fallback {
2366
- display: inline-block;
2367
- padding: 0.25rem 0.5rem;
2368
- border-radius: 0.25rem;
2369
- background-color: rgb(var(--artifactuse-surface));
2370
- color: rgb(var(--artifactuse-text));
2371
- font-family: var(--artifactuse-font-mono);
2372
- font-size: 0.875rem;
2373
- }
2374
-
2375
- .artifactuse-math-fallback-container {
2376
- background-color: rgba(var(--artifactuse-warning), 0.15);
2377
- border: 1px solid rgba(var(--artifactuse-warning), 0.3);
2378
- border-radius: 0.25rem;
2379
- }
2380
-
2381
- /* KaTeX color override for theme compatibility */
2382
- .artifactuse-math-container .katex {
2383
- color: rgb(var(--artifactuse-text));
2384
- }
2385
-
2386
- .artifactuse-math-container .katex .mord,
2387
- .artifactuse-math-container .katex .mbin,
2388
- .artifactuse-math-container .katex .mrel,
2389
- .artifactuse-math-container .katex .mopen,
2390
- .artifactuse-math-container .katex .mclose,
2391
- .artifactuse-math-container .katex .mpunct,
2392
- .artifactuse-math-container .katex .minner {
2393
- color: inherit;
2394
- }
2395
-
2396
- /* ==========================================
2397
- RESPONSIVE OVERRIDES
2398
- ========================================== */
2399
-
2400
- @media (max-width: 640px) {
2401
- .artifactuse-table-controls {
2402
- flex-direction: column;
2403
- align-items: stretch;
2404
- gap: 0.75rem;
2405
- }
2406
-
2407
- .artifactuse-table-search {
2408
- max-width: none;
2409
- }
2410
-
2411
- .artifactuse-table-actions {
2412
- justify-content: flex-end;
2413
- }
2414
-
2415
- .artifactuse-image-gallery {
2416
- grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
2417
- }
2418
-
2419
- .artifactuse-gallery-item img.artifactuse-gallery-image {
2420
- height: 8rem;
2421
- }
2422
-
2423
- .artifactuse-video-preview-container {
2424
- margin: 1rem 0;
2425
- }
2426
-
2427
- .artifactuse-play-icon {
2428
- width: 3rem;
2429
- height: 3rem;
2430
- }
2431
-
2432
- .artifactuse-tiktok-embed,
2433
- .artifactuse-instagram-embed {
2434
- max-width: 100%;
2435
- }
2436
- }
2437
-
2438
- /* ==========================================
2439
- PRINT STYLES
2440
- ========================================== */
2441
-
2442
- @media print {
2443
- .artifactuse-video-wrapper,
2444
- .artifactuse-video-preview-container,
2445
- .artifactuse-audio-wrapper,
2446
- .artifactuse-map-wrapper,
2447
- .artifactuse-twitter-wrapper,
2448
- .artifactuse-instagram-wrapper,
2449
- .artifactuse-tiktok-wrapper,
2450
- .artifactuse-linkedin-wrapper,
2451
- .artifactuse-reddit-wrapper,
2452
- .artifactuse-facebook-wrapper,
2453
- .artifactuse-pinterest-wrapper,
2454
- .artifactuse-typeform-wrapper,
2455
- .artifactuse-calendly-wrapper,
2456
- .artifactuse-calcom-wrapper,
2457
- .artifactuse-google-calendar-wrapper,
2458
- .artifactuse-miro-wrapper,
2459
- .artifactuse-airtable-wrapper {
2460
- display: none !important;
2461
- }
2462
-
2463
- .artifactuse-table-controls,
2464
- .artifactuse-table-footer {
2465
- display: none !important;
2466
- }
2467
-
2468
- .artifactuse-table-container,
2469
- .artifactuse-mermaid-container {
2470
- border: none !important;
2471
- }
2472
-
2473
- .artifactuse-mermaid-loading {
2474
- display: none !important;
2475
- }
2476
- }
2477
-
2478
- /* ==========================================
2479
- REDUCED MOTION
2480
- ========================================== */
2481
-
2482
- @media (prefers-reduced-motion: reduce) {
2483
- .artifactuse-image,
2484
- .artifactuse-hero-image,
2485
- .artifactuse-inline-image,
2486
- .artifactuse-gallery-item img,
2487
- .artifactuse-video-preview-image,
2488
- .artifactuse-play-icon,
2489
- .artifactuse-table-action-btn,
2490
- .artifactuse-sortable-header,
2491
- .artifactuse-video-link,
2492
- .artifactuse-canva-link {
2493
- transition: none !important;
2494
- }
2495
-
2496
- .artifactuse-gallery-item:hover img.artifactuse-gallery-image,
2497
- .artifactuse-video-preview-wrapper:hover .artifactuse-video-preview-image,
2498
- .artifactuse-video-preview-wrapper:hover .artifactuse-play-icon {
2499
- transform: none !important;
2500
- }
2501
- }
2502
- /* ==========================================
2503
- AGENT MESSAGE COMPONENT
2504
- ========================================== */
2505
-
2506
- .artifactuse-agent-message {
2507
- width: 100%;
2508
- }
2509
-
2510
- .artifactuse-message-content {
2511
- line-height: 1.6;
2512
- }
2513
-
2514
- /* Inline artifacts spacing */
2515
- .artifactuse-message-content > .artifactuse-social,
2516
- .artifactuse-message-content > .artifactuse-inline-form {
2517
- margin: 1em 0;
2518
- }
2519
-
2520
- /* Typography */
2521
- .artifactuse-message-content p {
2522
- margin: 0 0 1em 0;
2523
- }
2524
-
2525
- .artifactuse-message-content p:last-child {
2526
- margin-bottom: 0;
2527
- }
2528
-
2529
- .artifactuse-message-content h1,
2530
- .artifactuse-message-content h2,
2531
- .artifactuse-message-content h3,
2532
- .artifactuse-message-content h4,
2533
- .artifactuse-message-content h5,
2534
- .artifactuse-message-content h6 {
2535
- margin: 1.5em 0 0.5em 0;
2536
- font-weight: 600;
2537
- line-height: 1.3;
2538
- }
2539
-
2540
- .artifactuse-message-content h1:first-child,
2541
- .artifactuse-message-content h2:first-child,
2542
- .artifactuse-message-content h3:first-child {
2543
- margin-top: 0;
2544
- }
2545
-
2546
- .artifactuse-message-content ul,
2547
- .artifactuse-message-content ol {
2548
- margin: 0 0 1em 0;
2549
- padding: 0;
2550
- list-style: none;
2551
- }
2552
-
2553
- .artifactuse-message-content li {
2554
- margin: 0.25em 0;
2555
- padding: 0;
2556
- list-style: none;
2557
- }
2558
-
2559
- /* Code */
2560
- .artifactuse-message-content code {
2561
- font-family: var(--artifactuse-font-mono);
2562
- font-size: 0.9em;
2563
- padding: 0.15em 0.4em;
2564
- background: rgba(var(--artifactuse-surface), 0.5);
2565
- border-radius: 4px;
2566
- }
2567
-
2568
- .artifactuse-message-content pre {
2569
- margin: 1em 0;
2570
- padding: 1em;
2571
- background: rgb(var(--artifactuse-surface));
2572
- border-radius: 8px;
2573
- overflow-x: auto;
2574
- }
2575
-
2576
- .artifactuse-message-content pre code {
2577
- padding: 0;
2578
- background: none;
2579
- }
2580
-
2581
- /* Links */
2582
- .artifactuse-message-content a {
2583
- color: rgb(var(--artifactuse-primary));
2584
- text-decoration: none;
2585
- }
2586
-
2587
- .artifactuse-message-content a:hover {
2588
- text-decoration: underline;
2589
- }
2590
-
2591
- /* Blockquote */
2592
- .artifactuse-message-content blockquote {
2593
- margin: 1em 0;
2594
- padding: 0.5em 1em;
2595
- border-left: 4px solid rgb(var(--artifactuse-border));
2596
- background: rgba(var(--artifactuse-surface), 0.3);
2597
- }
2598
-
2599
- /* Horizontal rule */
2600
- .artifactuse-message-content hr {
2601
- margin: 1.5em 0;
2602
- border: none;
2603
- border-top: 1px solid rgb(var(--artifactuse-border));
2604
- }
2605
-
2606
- /* Tables */
2607
- .artifactuse-message-content table {
2608
- width: 100%;
2609
- border-collapse: collapse;
2610
- }
2611
-
2612
- .artifactuse-message-content th,
2613
- .artifactuse-message-content td {
2614
- padding: 0.5em 0.75em;
2615
- border: 1px solid rgb(var(--artifactuse-border));
2616
- text-align: left;
2617
- }
2618
-
2619
- .artifactuse-message-content th {
2620
- background: rgba(var(--artifactuse-surface), 0.5);
2621
- font-weight: 600;
2622
- }
2623
-
2624
- /* Images */
2625
- .artifactuse-message-content img {
2626
- max-width: 100%;
2627
- border-radius: 8px;
2628
- }
2629
-
2630
-
2631
-
2632
- /* ==========================================
2633
- LAZY-LOADED VIDEO FACADES
2634
- ========================================== */
2635
-
2636
- .artifactuse-video-lazy {
2637
- position: relative;
2638
- background: rgb(var(--artifactuse-surface));
2639
- }
2640
-
2641
- .artifactuse-video-facade {
2642
- position: relative;
2643
- display: block;
2644
- width: 100%;
2645
- padding: 0;
2646
- border: none;
2647
- background: transparent;
2648
- cursor: pointer;
2649
- aspect-ratio: 16 / 9;
2650
- overflow: hidden;
2651
- }
2652
-
2653
- .artifactuse-video-facade:focus {
2654
- outline: 2px solid rgb(var(--artifactuse-primary));
2655
- outline-offset: 2px;
2656
- }
2657
-
2658
- .artifactuse-video-thumbnail {
2659
- position: absolute;
2660
- top: 0;
2661
- left: 0;
2662
- width: 100%;
2663
- height: 100%;
2664
- object-fit: cover;
2665
- transition: transform 0.3s ease;
2666
- }
2667
-
2668
- .artifactuse-video-facade:hover .artifactuse-video-thumbnail {
2669
- transform: scale(1.05);
2670
- }
2671
-
2672
- /* Play button - centered overlay */
2673
- .artifactuse-video-play-button {
2674
- position: absolute;
2675
- top: 50%;
2676
- left: 50%;
2677
- transform: translate(-50%, -50%);
2678
- z-index: 1;
2679
- transition: transform 0.2s ease, opacity 0.2s ease;
2680
- filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.4));
2681
- }
2682
-
2683
- .artifactuse-video-facade:hover .artifactuse-video-play-button {
2684
- transform: translate(-50%, -50%) scale(1.1);
2685
- }
2686
-
2687
- /* YouTube play button specific styling */
2688
- .artifactuse-youtube-play svg {
2689
- display: block;
2690
- }
2691
-
2692
- .artifactuse-youtube-play-bg {
2693
- transition: fill 0.2s ease;
2694
- }
2695
-
2696
- .artifactuse-video-facade:hover .artifactuse-youtube-play-bg {
2697
- fill: #ff0000;
2698
- }
2699
-
2700
- /* Vimeo play button */
2701
- .artifactuse-vimeo-play svg circle {
2702
- transition: fill 0.2s ease;
2703
- }
2704
-
2705
- .artifactuse-video-facade:hover .artifactuse-vimeo-play svg circle {
2706
- fill: #00adef;
2707
- }
2708
-
2709
- /* Loom play button */
2710
- .artifactuse-loom-play svg circle {
2711
- transition: fill 0.2s ease;
2712
- }
2713
-
2714
- .artifactuse-video-facade:hover .artifactuse-loom-play svg circle {
2715
- fill: #7c3aed;
2716
- }
2717
-
2718
- /* Dailymotion play button */
2719
- .artifactuse-dailymotion-play svg circle {
2720
- transition: fill 0.2s ease;
2721
- }
2722
-
2723
- .artifactuse-video-facade:hover .artifactuse-dailymotion-play svg circle {
2724
- fill: #0082f0;
2725
- }
2726
-
2727
- /* Fallback when thumbnail fails to load */
2728
- .artifactuse-video-facade img[style*="display: none"] + .artifactuse-video-play-button {
2729
- /* Play button still visible on solid background */
2730
- }
2731
-
2732
- .artifactuse-video-lazy:has(img[style*="display: none"]) {
2733
- background: linear-gradient(135deg,
2734
- rgb(var(--artifactuse-surface)) 0%,
2735
- rgba(var(--artifactuse-primary), 0.1) 100%
2736
- );
2737
- }
2738
-
2739
-
2740
-
2741
-
2742
-
2743
-
2744
-
2745
- /* ============================================================
2746
- ARTIFACTUSE SOCIAL PREVIEW STYLES
2747
- Platform-accurate social media post previews
2748
- Uses artifactuse CSS variables - no Tailwind dependency
2749
- ============================================================ */
2750
-
2751
- /* Base Container */
2752
- .artifactuse-social {
2753
- /* width: 100%; */
2754
- max-width: 550px;
2755
- border-radius: 12px;
2756
- overflow: hidden;
2757
- border: 1px solid rgb(var(--artifactuse-border));
2758
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
2759
- transition: border-color 0.2s ease;
2760
- }
2761
-
2762
- .artifactuse-social[data-theme="dark"] {
2763
- background: rgb(var(--artifactuse-background));
2764
- border-color: rgb(var(--artifactuse-border));
2765
- }
2766
-
2767
- .artifactuse-social[data-theme="light"] {
2768
- background: #ffffff;
2769
- border-color: #e5e7eb;
2770
- }
2771
-
2772
- /* ============================================================
2773
- TWITTER / X STYLES
2774
- ============================================================ */
2775
-
2776
- .artifactuse-social-twitter {
2777
- padding: 16px;
2778
- }
2779
-
2780
- .artifactuse-social-twitter[data-theme="dark"] {
2781
- --social-text-primary: #e7e9ea;
2782
- --social-text-secondary: #71767b;
2783
- --social-text-link: #1d9bf0;
2784
- --social-bg-hover: rgba(239, 243, 244, 0.1);
2785
- --social-border: #2f3336;
2786
- }
2787
-
2788
- .artifactuse-social-twitter[data-theme="light"] {
2789
- --social-text-primary: #0f1419;
2790
- --social-text-secondary: #536471;
2791
- --social-text-link: #1d9bf0;
2792
- --social-bg-hover: rgba(15, 20, 25, 0.1);
2793
- --social-border: #eff3f4;
2794
- }
2795
-
2796
- /* Twitter Header */
2797
- .artifactuse-social-twitter .artifactuse-social-header {
2798
- display: flex;
2799
- align-items: flex-start;
2800
- gap: 12px;
2801
- }
2802
-
2803
- .artifactuse-social-twitter .artifactuse-social-avatar {
2804
- width: 40px;
2805
- height: 40px;
2806
- border-radius: 50%;
2807
- object-fit: cover;
2808
- flex-shrink: 0;
2809
- background: #4b5563;
2810
- }
2811
-
2812
- .artifactuse-social-twitter .artifactuse-social-author {
2813
- flex: 1;
2814
- min-width: 0;
2815
- }
2816
-
2817
- .artifactuse-social-twitter .artifactuse-social-author-name {
2818
- display: flex;
2819
- align-items: center;
2820
- gap: 4px;
2821
- font-weight: 700;
2822
- font-size: 15px;
2823
- overflow: hidden;
2824
- text-overflow: ellipsis;
2825
- white-space: nowrap;
2826
- color: var(--social-text-primary);
2827
- }
2828
-
2829
- .artifactuse-social-twitter .artifactuse-social-verified {
2830
- width: 18px;
2831
- height: 18px;
2832
- flex-shrink: 0;
2833
- }
2834
-
2835
- .artifactuse-social-twitter .artifactuse-social-verified-blue {
2836
- color: #1d9bf0;
2837
- }
2838
-
2839
- .artifactuse-social-twitter .artifactuse-social-verified-gold {
2840
- color: #e2b719;
2841
- }
2842
-
2843
- .artifactuse-social-twitter .artifactuse-social-author-handle {
2844
- font-size: 15px;
2845
- color: var(--social-text-secondary);
2846
- }
2847
-
2848
- .artifactuse-social-twitter .artifactuse-social-author-meta {
2849
- display: flex;
2850
- align-items: center;
2851
- gap: 4px;
2852
- }
2853
-
2854
- .artifactuse-social-twitter .artifactuse-social-timestamp {
2855
- font-size: 15px;
2856
- color: var(--social-text-secondary);
2857
- }
2858
-
2859
- /* Twitter Content */
2860
- .artifactuse-social-twitter .artifactuse-social-content {
2861
- margin-top: 12px;
2862
- }
2863
-
2864
- .artifactuse-social-twitter .artifactuse-social-text {
2865
- font-size: 15px;
2866
- line-height: 1.35;
2867
- white-space: pre-wrap;
2868
- word-wrap: break-word;
2869
- color: var(--social-text-primary);
2870
- }
2871
-
2872
- .artifactuse-social-twitter .artifactuse-social-text a,
2873
- .artifactuse-social-twitter .artifactuse-social-text .artifactuse-social-hashtag,
2874
- .artifactuse-social-twitter .artifactuse-social-text .artifactuse-social-mention {
2875
- color: var(--social-text-link);
2876
- text-decoration: none;
2877
- }
2878
-
2879
- .artifactuse-social-twitter .artifactuse-social-text a:hover,
2880
- .artifactuse-social-twitter .artifactuse-social-text .artifactuse-social-hashtag:hover,
2881
- .artifactuse-social-twitter .artifactuse-social-text .artifactuse-social-mention:hover {
2882
- text-decoration: underline;
2883
- }
2884
-
2885
- /* Twitter Media */
2886
- .artifactuse-social-twitter .artifactuse-social-media {
2887
- margin-top: 12px;
2888
- border-radius: 16px;
2889
- overflow: hidden;
2890
- border: 1px solid var(--social-border);
2891
- }
2892
-
2893
- .artifactuse-social-twitter .artifactuse-social-media-grid {
2894
- display: grid;
2895
- gap: 2px;
2896
- }
2897
-
2898
- .artifactuse-social-twitter .artifactuse-social-media-grid[data-count="1"] {
2899
- grid-template-columns: 1fr;
2900
- }
2901
-
2902
- .artifactuse-social-twitter .artifactuse-social-media-grid[data-count="2"] {
2903
- grid-template-columns: 1fr 1fr;
2904
- }
2905
-
2906
- .artifactuse-social-twitter .artifactuse-social-media-grid[data-count="3"],
2907
- .artifactuse-social-twitter .artifactuse-social-media-grid[data-count="4"] {
2908
- grid-template-columns: 1fr 1fr;
2909
- }
2910
-
2911
- .artifactuse-social-twitter .artifactuse-social-media img {
2912
- width: 100%;
2913
- height: 100%;
2914
- object-fit: cover;
2915
- }
2916
-
2917
- .artifactuse-social-twitter .artifactuse-social-media-single img {
2918
- max-height: 300px;
2919
- }
2920
-
2921
- /* Twitter Link Card */
2922
- .artifactuse-social-twitter .artifactuse-social-link-card {
2923
- margin-top: 12px;
2924
- border-radius: 16px;
2925
- overflow: hidden;
2926
- border: 1px solid var(--social-border);
2927
- }
2928
-
2929
- .artifactuse-social-twitter .artifactuse-social-link-image {
2930
- width: 100%;
2931
- height: 125px;
2932
- object-fit: cover;
2933
- }
2934
-
2935
- .artifactuse-social-twitter .artifactuse-social-link-info {
2936
- padding: 12px;
2937
- }
2938
-
2939
- .artifactuse-social-twitter .artifactuse-social-link-domain {
2940
- font-size: 13px;
2941
- display: flex;
2942
- align-items: center;
2943
- gap: 4px;
2944
- color: var(--social-text-secondary);
2945
- }
2946
-
2947
- .artifactuse-social-twitter .artifactuse-social-link-domain svg {
2948
- width: 12px;
2949
- height: 12px;
2950
- }
2951
-
2952
- .artifactuse-social-twitter .artifactuse-social-link-title {
2953
- font-size: 15px;
2954
- line-height: 1.35;
2955
- overflow: hidden;
2956
- text-overflow: ellipsis;
2957
- white-space: nowrap;
2958
- color: var(--social-text-primary);
2959
- }
2960
-
2961
- .artifactuse-social-twitter .artifactuse-social-link-description {
2962
- font-size: 15px;
2963
- line-height: 1.35;
2964
- display: -webkit-box;
2965
- -webkit-line-clamp: 2;
2966
- -webkit-box-orient: vertical;
2967
- overflow: hidden;
2968
- color: var(--social-text-secondary);
2969
- }
2970
-
2971
- /* Twitter Poll */
2972
- .artifactuse-social-twitter .artifactuse-social-poll {
2973
- margin-top: 12px;
2974
- display: flex;
2975
- flex-direction: column;
2976
- gap: 8px;
2977
- }
2978
-
2979
- .artifactuse-social-twitter .artifactuse-social-poll-option {
2980
- position: relative;
2981
- border-radius: 6px;
2982
- overflow: hidden;
2983
- border: 1px solid var(--social-border);
2984
- height: 36px;
2985
- }
2986
-
2987
- .artifactuse-social-twitter .artifactuse-social-poll-bar {
2988
- position: absolute;
2989
- inset: 0;
2990
- background: rgba(29, 155, 240, 0.2);
2991
- transition: width 0.3s ease;
2992
- }
2993
-
2994
- .artifactuse-social-twitter .artifactuse-social-poll-label {
2995
- position: relative;
2996
- z-index: 1;
2997
- display: flex;
2998
- align-items: center;
2999
- justify-content: space-between;
3000
- padding: 0 12px;
3001
- height: 100%;
3002
- font-size: 15px;
3003
- color: var(--social-text-primary);
3004
- }
3005
-
3006
- .artifactuse-social-twitter .artifactuse-social-poll-label-percent {
3007
- font-weight: 500;
3008
- }
3009
-
3010
- .artifactuse-social-twitter .artifactuse-social-poll-meta {
3011
- font-size: 13px;
3012
- margin-top: 8px;
3013
- color: var(--social-text-secondary);
3014
- }
3015
-
3016
- /* Twitter Engagement */
3017
- .artifactuse-social-twitter .artifactuse-social-engagement {
3018
- display: flex;
3019
- align-items: center;
3020
- gap: 24px;
3021
- margin-top: 12px;
3022
- padding-top: 12px;
3023
- border-top: 1px solid var(--social-border);
3024
- }
3025
-
3026
- .artifactuse-social-twitter .artifactuse-social-stat {
3027
- display: flex;
3028
- align-items: center;
3029
- gap: 8px;
3030
- font-size: 13px;
3031
- cursor: pointer;
3032
- transition: color 0.2s ease;
3033
- color: var(--social-text-secondary);
3034
- }
3035
-
3036
- .artifactuse-social-twitter .artifactuse-social-stat:hover {
3037
- color: var(--social-text-link);
3038
- }
3039
-
3040
- .artifactuse-social-twitter .artifactuse-social-stat svg {
3041
- width: 18px;
3042
- height: 18px;
3043
- }
3044
-
3045
- /* Twitter Quote */
3046
- .artifactuse-social-twitter .artifactuse-social-quote {
3047
- margin-top: 12px;
3048
- padding: 12px;
3049
- border-radius: 16px;
3050
- border: 1px solid var(--social-border);
3051
- }
3052
-
3053
- .artifactuse-social-twitter .artifactuse-social-quote-header {
3054
- display: flex;
3055
- align-items: center;
3056
- gap: 8px;
3057
- }
3058
-
3059
- .artifactuse-social-twitter .artifactuse-social-quote-avatar {
3060
- width: 20px;
3061
- height: 20px;
3062
- border-radius: 50%;
3063
- }
3064
-
3065
- .artifactuse-social-twitter .artifactuse-social-quote-author {
3066
- font-size: 13px;
3067
- font-weight: 700;
3068
- color: var(--social-text-primary);
3069
- }
3070
-
3071
- .artifactuse-social-twitter .artifactuse-social-quote-handle {
3072
- font-size: 13px;
3073
- color: var(--social-text-secondary);
3074
- }
3075
-
3076
- .artifactuse-social-twitter .artifactuse-social-quote-text {
3077
- font-size: 15px;
3078
- margin-top: 4px;
3079
- color: var(--social-text-primary);
3080
- }
3081
-
3082
- /* ============================================================
3083
- LINKEDIN STYLES
3084
- ============================================================ */
3085
-
3086
- .artifactuse-social-linkedin {
3087
- padding: 16px;
3088
- }
3089
-
3090
- .artifactuse-social-linkedin[data-theme="dark"] {
3091
- --social-text-primary: #ffffff;
3092
- --social-text-secondary: rgba(255, 255, 255, 0.6);
3093
- --social-text-link: #70b5f9;
3094
- --social-border: rgba(255, 255, 255, 0.15);
3095
- --social-bg-card: rgba(255, 255, 255, 0.05);
3096
- }
3097
-
3098
- .artifactuse-social-linkedin[data-theme="light"] {
3099
- --social-text-primary: rgba(0, 0, 0, 0.9);
3100
- --social-text-secondary: rgba(0, 0, 0, 0.6);
3101
- --social-text-link: #0a66c2;
3102
- --social-border: rgba(0, 0, 0, 0.08);
3103
- --social-bg-card: #f9fafb;
3104
- }
3105
-
3106
- .artifactuse-social-linkedin .artifactuse-social-header {
3107
- display: flex;
3108
- align-items: flex-start;
3109
- gap: 12px;
3110
- }
3111
-
3112
- .artifactuse-social-linkedin .artifactuse-social-avatar {
3113
- width: 48px;
3114
- height: 48px;
3115
- border-radius: 50%;
3116
- object-fit: cover;
3117
- flex-shrink: 0;
3118
- background: #9ca3af;
3119
- }
3120
-
3121
- .artifactuse-social-linkedin .artifactuse-social-author-info {
3122
- flex: 1;
3123
- }
3124
-
3125
- .artifactuse-social-linkedin .artifactuse-social-author-name {
3126
- font-weight: 600;
3127
- font-size: 14px;
3128
- display: flex;
3129
- align-items: center;
3130
- gap: 4px;
3131
- color: var(--social-text-primary);
3132
- }
3133
-
3134
- .artifactuse-social-linkedin .artifactuse-social-author-connection {
3135
- font-weight: 400;
3136
- font-size: 12px;
3137
- }
3138
-
3139
- .artifactuse-social-linkedin .artifactuse-social-author-headline {
3140
- font-size: 12px;
3141
- display: -webkit-box;
3142
- -webkit-line-clamp: 1;
3143
- -webkit-box-orient: vertical;
3144
- overflow: hidden;
3145
- color: var(--social-text-secondary);
3146
- }
3147
-
3148
- .artifactuse-social-linkedin .artifactuse-social-timestamp {
3149
- font-size: 12px;
3150
- display: flex;
3151
- align-items: center;
3152
- gap: 4px;
3153
- color: var(--social-text-secondary);
3154
- }
3155
-
3156
- .artifactuse-social-linkedin .artifactuse-social-timestamp svg {
3157
- width: 12px;
3158
- height: 12px;
3159
- }
3160
-
3161
- .artifactuse-social-linkedin .artifactuse-social-content {
3162
- margin-top: 12px;
3163
- }
3164
-
3165
- .artifactuse-social-linkedin .artifactuse-social-text {
3166
- font-size: 14px;
3167
- line-height: 1.35;
3168
- white-space: pre-wrap;
3169
- color: var(--social-text-primary);
3170
- }
3171
-
3172
- .artifactuse-social-linkedin .artifactuse-social-text .artifactuse-social-hashtag {
3173
- color: var(--social-text-link);
3174
- font-weight: 600;
3175
- }
3176
-
3177
- .artifactuse-social-linkedin .artifactuse-social-link-card {
3178
- margin-top: 12px;
3179
- border-radius: 8px;
3180
- overflow: hidden;
3181
- border: 1px solid var(--social-border);
3182
- background: var(--social-bg-card);
3183
- }
3184
-
3185
- .artifactuse-social-linkedin .artifactuse-social-link-image {
3186
- width: 100%;
3187
- height: 200px;
3188
- object-fit: cover;
3189
- }
3190
-
3191
- .artifactuse-social-linkedin .artifactuse-social-link-info {
3192
- padding: 12px;
3193
- }
3194
-
3195
- .artifactuse-social-linkedin .artifactuse-social-link-title {
3196
- font-weight: 600;
3197
- font-size: 14px;
3198
- display: -webkit-box;
3199
- -webkit-line-clamp: 2;
3200
- -webkit-box-orient: vertical;
3201
- overflow: hidden;
3202
- color: var(--social-text-primary);
3203
- }
3204
-
3205
- .artifactuse-social-linkedin .artifactuse-social-link-domain {
3206
- font-size: 12px;
3207
- margin-top: 4px;
3208
- color: var(--social-text-secondary);
3209
- }
3210
-
3211
- .artifactuse-social-linkedin .artifactuse-social-engagement {
3212
- display: flex;
3213
- align-items: center;
3214
- justify-content: space-between;
3215
- margin-top: 12px;
3216
- padding-top: 12px;
3217
- border-top: 1px solid var(--social-border);
3218
- font-size: 12px;
3219
- color: var(--social-text-secondary);
3220
- }
3221
-
3222
- .artifactuse-social-linkedin .artifactuse-social-reactions {
3223
- display: flex;
3224
- align-items: center;
3225
- gap: 4px;
3226
- }
3227
-
3228
- .artifactuse-social-linkedin .artifactuse-social-reaction-icons {
3229
- display: flex;
3230
- margin-left: -4px;
3231
- }
3232
-
3233
- .artifactuse-social-linkedin .artifactuse-social-reaction-icon {
3234
- width: 16px;
3235
- height: 16px;
3236
- border-radius: 50%;
3237
- border: 1px solid white;
3238
- margin-left: -4px;
3239
- }
3240
-
3241
- /* ============================================================
3242
- INSTAGRAM STYLES
3243
- ============================================================ */
3244
-
3245
- .artifactuse-social-instagram {
3246
- padding: 0 0 10px 0;
3247
- }
3248
-
3249
- .artifactuse-social-instagram[data-theme="dark"] {
3250
- --social-text-primary: #f5f5f5;
3251
- --social-text-secondary: #a8a8a8;
3252
- --social-border: #363636;
3253
- --social-bg: #000000;
3254
- }
3255
-
3256
- .artifactuse-social-instagram[data-theme="light"] {
3257
- --social-text-primary: #262626;
3258
- --social-text-secondary: #8e8e8e;
3259
- --social-border: #dbdbdb;
3260
- --social-bg: #ffffff;
3261
- }
3262
-
3263
- .artifactuse-social-instagram .artifactuse-social-header {
3264
- display: flex;
3265
- align-items: center;
3266
- gap: 12px;
3267
- padding: 12px;
3268
- }
3269
-
3270
- .artifactuse-social-instagram .artifactuse-social-avatar {
3271
- width: 32px;
3272
- height: 32px;
3273
- border-radius: 50%;
3274
- object-fit: cover;
3275
- box-shadow: 0 0 0 2px var(--social-bg), 0 0 0 4px #e1306c;
3276
- background: #9ca3af;
3277
- }
3278
-
3279
- .artifactuse-social-instagram .artifactuse-social-author-name {
3280
- font-weight: 600;
3281
- font-size: 14px;
3282
- display: flex;
3283
- align-items: center;
3284
- gap: 4px;
3285
- color: var(--social-text-primary);
3286
- }
3287
-
3288
- .artifactuse-social-instagram .artifactuse-social-verified {
3289
- width: 12px;
3290
- height: 12px;
3291
- color: #0095f6;
3292
- }
3293
-
3294
- .artifactuse-social-instagram .artifactuse-social-media {
3295
- width: 100%;
3296
- aspect-ratio: 1;
3297
- background: #000;
3298
- }
3299
-
3300
- .artifactuse-social-instagram .artifactuse-social-media img {
3301
- width: 100%;
3302
- height: 100%;
3303
- object-fit: cover;
3304
- }
3305
-
3306
- .artifactuse-social-instagram .artifactuse-social-actions {
3307
- display: flex;
3308
- align-items: center;
3309
- gap: 16px;
3310
- padding: 12px;
3311
- }
3312
-
3313
- .artifactuse-social-instagram .artifactuse-social-action {
3314
- cursor: pointer;
3315
- color: var(--social-text-primary);
3316
- }
3317
-
3318
- .artifactuse-social-instagram .artifactuse-social-action svg {
3319
- width: 24px;
3320
- height: 24px;
3321
- }
3322
-
3323
- .artifactuse-social-instagram .artifactuse-social-likes {
3324
- padding: 0 12px;
3325
- font-weight: 600;
3326
- font-size: 14px;
3327
- color: var(--social-text-primary);
3328
- }
3329
-
3330
- .artifactuse-social-instagram .artifactuse-social-caption {
3331
- padding: 0 12px 12px;
3332
- }
3333
-
3334
- .artifactuse-social-instagram .artifactuse-social-caption-author {
3335
- font-weight: 600;
3336
- font-size: 14px;
3337
- color: var(--social-text-primary);
3338
- }
3339
-
3340
- .artifactuse-social-instagram .artifactuse-social-caption-text {
3341
- font-size: 14px;
3342
- margin-left: 4px;
3343
- color: var(--social-text-primary);
3344
- }
3345
-
3346
- .artifactuse-social-instagram .artifactuse-social-timestamp {
3347
- padding: 0 12px 12px;
3348
- font-size: 10px;
3349
- text-transform: uppercase;
3350
- color: var(--social-text-secondary);
3351
- }
3352
-
3353
- /* ============================================================
3354
- FACEBOOK STYLES
3355
- ============================================================ */
3356
-
3357
- .artifactuse-social-facebook {
3358
- padding: 16px;
3359
- }
3360
-
3361
- .artifactuse-social-facebook[data-theme="dark"] {
3362
- --social-text-primary: #e4e6eb;
3363
- --social-text-secondary: #b0b3b8;
3364
- --social-text-link: #2d88ff;
3365
- --social-border: #3e4042;
3366
- --social-bg-card: #242526;
3367
- }
3368
-
3369
- .artifactuse-social-facebook[data-theme="light"] {
3370
- --social-text-primary: #050505;
3371
- --social-text-secondary: #65676b;
3372
- --social-text-link: #0064d1;
3373
- --social-border: #dddfe2;
3374
- --social-bg-card: #f0f2f5;
3375
- }
3376
-
3377
- .artifactuse-social-facebook .artifactuse-social-header {
3378
- display: flex;
3379
- align-items: flex-start;
3380
- gap: 12px;
3381
- }
3382
-
3383
- .artifactuse-social-facebook .artifactuse-social-avatar {
3384
- width: 40px;
3385
- height: 40px;
3386
- border-radius: 50%;
3387
- object-fit: cover;
3388
- background: #9ca3af;
3389
- }
3390
-
3391
- .artifactuse-social-facebook .artifactuse-social-author-name {
3392
- font-weight: 600;
3393
- font-size: 15px;
3394
- color: var(--social-text-primary);
3395
- }
3396
-
3397
- .artifactuse-social-facebook .artifactuse-social-timestamp {
3398
- font-size: 13px;
3399
- display: flex;
3400
- align-items: center;
3401
- gap: 4px;
3402
- color: var(--social-text-secondary);
3403
- }
3404
-
3405
- .artifactuse-social-facebook .artifactuse-social-timestamp svg {
3406
- width: 12px;
3407
- height: 12px;
3408
- }
3409
-
3410
- .artifactuse-social-facebook .artifactuse-social-content {
3411
- margin-top: 12px;
3412
- }
3413
-
3414
- .artifactuse-social-facebook .artifactuse-social-text {
3415
- font-size: 15px;
3416
- line-height: 1.35;
3417
- color: var(--social-text-primary);
3418
- }
3419
-
3420
- .artifactuse-social-facebook .artifactuse-social-link-card {
3421
- margin-top: 12px;
3422
- border-radius: 8px;
3423
- overflow: hidden;
3424
- border: 1px solid var(--social-border);
3425
- }
3426
-
3427
- .artifactuse-social-facebook .artifactuse-social-link-image {
3428
- width: 100%;
3429
- height: 250px;
3430
- object-fit: cover;
3431
- }
3432
-
3433
- .artifactuse-social-facebook .artifactuse-social-link-info {
3434
- padding: 12px;
3435
- background: var(--social-bg-card);
3436
- }
3437
-
3438
- .artifactuse-social-facebook .artifactuse-social-link-domain {
3439
- font-size: 12px;
3440
- text-transform: uppercase;
3441
- letter-spacing: 0.05em;
3442
- color: var(--social-text-secondary);
3443
- }
3444
-
3445
- .artifactuse-social-facebook .artifactuse-social-link-title {
3446
- font-weight: 600;
3447
- font-size: 16px;
3448
- margin-top: 4px;
3449
- color: var(--social-text-primary);
3450
- }
3451
-
3452
- .artifactuse-social-facebook .artifactuse-social-link-description {
3453
- font-size: 14px;
3454
- margin-top: 4px;
3455
- display: -webkit-box;
3456
- -webkit-line-clamp: 2;
3457
- -webkit-box-orient: vertical;
3458
- overflow: hidden;
3459
- color: var(--social-text-secondary);
3460
- }
3461
-
3462
- .artifactuse-social-facebook .artifactuse-social-engagement {
3463
- display: flex;
3464
- align-items: center;
3465
- justify-content: space-between;
3466
- margin-top: 12px;
3467
- padding-top: 12px;
3468
- border-top: 1px solid var(--social-border);
3469
- }
3470
-
3471
- .artifactuse-social-facebook .artifactuse-social-reactions {
3472
- display: flex;
3473
- align-items: center;
3474
- gap: 8px;
3475
- }
3476
-
3477
- .artifactuse-social-facebook .artifactuse-social-reaction-emojis {
3478
- display: flex;
3479
- margin-left: -4px;
3480
- }
3481
-
3482
- .artifactuse-social-facebook .artifactuse-social-reaction-emoji {
3483
- width: 18px;
3484
- height: 18px;
3485
- margin-left: -4px;
3486
- }
3487
-
3488
- .artifactuse-social-facebook .artifactuse-social-reaction-count {
3489
- font-size: 15px;
3490
- color: var(--social-text-secondary);
3491
- }
3492
-
3493
- .artifactuse-social-facebook .artifactuse-social-comments-shares {
3494
- font-size: 15px;
3495
- color: var(--social-text-secondary);
3496
- }
3497
-
3498
- /* ============================================================
3499
- THREADS STYLES
3500
- ============================================================ */
3501
-
3502
- .artifactuse-social-threads {
3503
- padding: 16px;
3504
- }
3505
-
3506
- .artifactuse-social-threads[data-theme="dark"] {
3507
- --social-text-primary: #f5f5f5;
3508
- --social-text-secondary: #777777;
3509
- --social-border: #363636;
3510
- }
3511
-
3512
- .artifactuse-social-threads[data-theme="light"] {
3513
- --social-text-primary: #000000;
3514
- --social-text-secondary: #999999;
3515
- --social-border: #e0e0e0;
3516
- }
3517
-
3518
- .artifactuse-social-threads .artifactuse-social-header {
3519
- display: flex;
3520
- align-items: flex-start;
3521
- gap: 12px;
3522
- }
3523
-
3524
- .artifactuse-social-threads .artifactuse-social-avatar {
3525
- width: 36px;
3526
- height: 36px;
3527
- border-radius: 50%;
3528
- object-fit: cover;
3529
- background: #9ca3af;
3530
- }
3531
-
3532
- .artifactuse-social-threads .artifactuse-social-author-name {
3533
- font-weight: 600;
3534
- font-size: 15px;
3535
- display: flex;
3536
- align-items: center;
3537
- gap: 4px;
3538
- color: var(--social-text-primary);
3539
- }
3540
-
3541
- .artifactuse-social-threads .artifactuse-social-verified {
3542
- width: 16px;
3543
- height: 16px;
3544
- }
3545
-
3546
- .artifactuse-social-threads .artifactuse-social-timestamp {
3547
- font-size: 15px;
3548
- color: var(--social-text-secondary);
3549
- }
3550
-
3551
- .artifactuse-social-threads .artifactuse-social-content {
3552
- margin-top: 8px;
3553
- margin-left: 48px;
3554
- }
3555
-
3556
- .artifactuse-social-threads .artifactuse-social-text {
3557
- font-size: 15px;
3558
- line-height: 1.35;
3559
- color: var(--social-text-primary);
3560
- }
3561
-
3562
- .artifactuse-social-threads .artifactuse-social-engagement {
3563
- display: flex;
3564
- align-items: center;
3565
- gap: 16px;
3566
- margin-top: 12px;
3567
- margin-left: 48px;
3568
- color: var(--social-text-secondary);
3569
- }
3570
-
3571
- .artifactuse-social-threads .artifactuse-social-stat {
3572
- display: flex;
3573
- align-items: center;
3574
- gap: 6px;
3575
- font-size: 15px;
3576
- }
3577
-
3578
- .artifactuse-social-threads .artifactuse-social-stat svg {
3579
- width: 20px;
3580
- height: 20px;
3581
- }
3582
-
3583
- /* ============================================================
3584
- TIKTOK STYLES
3585
- ============================================================ */
3586
-
3587
- .artifactuse-social-tiktok {
3588
- padding: 0 0 10px 0;
3589
- }
3590
-
3591
- .artifactuse-social-tiktok[data-theme="dark"] {
3592
- --social-text-primary: #ffffff;
3593
- --social-text-secondary: rgba(255, 255, 255, 0.75);
3594
- --social-bg: #121212;
3595
- }
3596
-
3597
- .artifactuse-social-tiktok[data-theme="light"] {
3598
- --social-text-primary: #161823;
3599
- --social-text-secondary: rgba(22, 24, 35, 0.75);
3600
- --social-bg: #ffffff;
3601
- }
3602
-
3603
- .artifactuse-social-tiktok .artifactuse-social-thumbnail {
3604
- position: relative;
3605
- width: 100%;
3606
- aspect-ratio: 9 / 16;
3607
- max-height: 400px;
3608
- background: #000;
3609
- border-radius: 8px;
3610
- overflow: hidden;
3611
- }
3612
-
3613
- .artifactuse-social-tiktok .artifactuse-social-thumbnail img {
3614
- width: 100%;
3615
- height: 100%;
3616
- object-fit: cover;
3617
- }
3618
-
3619
- .artifactuse-social-tiktok .artifactuse-social-play-button {
3620
- position: absolute;
3621
- inset: 0;
3622
- display: flex;
3623
- align-items: center;
3624
- justify-content: center;
3625
- }
3626
-
3627
- .artifactuse-social-tiktok .artifactuse-social-play-icon {
3628
- width: 64px;
3629
- height: 64px;
3630
- background: rgba(255, 255, 255, 0.2);
3631
- backdrop-filter: blur(4px);
3632
- border-radius: 50%;
3633
- display: flex;
3634
- align-items: center;
3635
- justify-content: center;
3636
- }
3637
-
3638
- .artifactuse-social-tiktok .artifactuse-social-play-icon svg {
3639
- width: 32px;
3640
- height: 32px;
3641
- color: white;
3642
- margin-left: 4px;
3643
- }
3644
-
3645
- .artifactuse-social-tiktok .artifactuse-social-duration {
3646
- position: absolute;
3647
- bottom: 8px;
3648
- right: 8px;
3649
- font-size: 12px;
3650
- color: white;
3651
- background: rgba(0, 0, 0, 0.5);
3652
- padding: 2px 6px;
3653
- border-radius: 4px;
3654
- }
3655
-
3656
- .artifactuse-social-tiktok .artifactuse-social-info {
3657
- padding: 12px;
3658
- }
3659
-
3660
- .artifactuse-social-tiktok .artifactuse-social-header {
3661
- display: flex;
3662
- align-items: center;
3663
- gap: 8px;
3664
- }
3665
-
3666
- .artifactuse-social-tiktok .artifactuse-social-avatar {
3667
- width: 32px;
3668
- height: 32px;
3669
- border-radius: 50%;
3670
- object-fit: cover;
3671
- background: #9ca3af;
3672
- }
3673
-
3674
- .artifactuse-social-tiktok .artifactuse-social-author-name {
3675
- font-weight: 600;
3676
- font-size: 14px;
3677
- color: var(--social-text-primary);
3678
- }
3679
-
3680
- .artifactuse-social-tiktok .artifactuse-social-text {
3681
- font-size: 14px;
3682
- margin-top: 8px;
3683
- display: -webkit-box;
3684
- -webkit-line-clamp: 2;
3685
- -webkit-box-orient: vertical;
3686
- overflow: hidden;
3687
- color: var(--social-text-primary);
3688
- }
3689
-
3690
- .artifactuse-social-tiktok .artifactuse-social-sound {
3691
- font-size: 12px;
3692
- margin-top: 8px;
3693
- display: flex;
3694
- align-items: center;
3695
- gap: 4px;
3696
- color: var(--social-text-secondary);
3697
- }
3698
-
3699
- .artifactuse-social-tiktok .artifactuse-social-sound svg {
3700
- width: 12px;
3701
- height: 12px;
3702
- }
3703
-
3704
- .artifactuse-social-tiktok .artifactuse-social-engagement {
3705
- display: flex;
3706
- align-items: center;
3707
- gap: 16px;
3708
- margin-top: 12px;
3709
- font-size: 14px;
3710
- color: var(--social-text-secondary);
3711
- }
3712
-
3713
- /* ============================================================
3714
- YOUTUBE STYLES
3715
- ============================================================ */
3716
-
3717
- .artifactuse-social-youtube {
3718
- padding: 0 0 10px 0;
3719
- }
3720
-
3721
- .artifactuse-social-youtube[data-theme="dark"] {
3722
- --social-text-primary: #f1f1f1;
3723
- --social-text-secondary: #aaaaaa;
3724
- --social-bg: #0f0f0f;
3725
- }
3726
-
3727
- .artifactuse-social-youtube[data-theme="light"] {
3728
- --social-text-primary: #0f0f0f;
3729
- --social-text-secondary: #606060;
3730
- --social-bg: #ffffff;
3731
- }
3732
-
3733
- .artifactuse-social-youtube .artifactuse-social-thumbnail {
3734
- position: relative;
3735
- width: 100%;
3736
- aspect-ratio: 16 / 9;
3737
- background: #000;
3738
- border-radius: 12px;
3739
- overflow: hidden;
3740
- }
3741
-
3742
- .artifactuse-social-youtube .artifactuse-social-thumbnail img {
3743
- width: 100%;
3744
- height: 100%;
3745
- object-fit: cover;
3746
- }
3747
-
3748
- .artifactuse-social-youtube .artifactuse-social-duration {
3749
- position: absolute;
3750
- bottom: 8px;
3751
- right: 8px;
3752
- font-size: 12px;
3753
- color: white;
3754
- background: rgba(0, 0, 0, 0.8);
3755
- padding: 2px 4px;
3756
- border-radius: 4px;
3757
- font-weight: 500;
3758
- }
3759
-
3760
- .artifactuse-social-youtube .artifactuse-social-info {
3761
- display: flex;
3762
- gap: 12px;
3763
- padding: 12px;
3764
- }
3765
-
3766
- .artifactuse-social-youtube .artifactuse-social-avatar {
3767
- width: 36px;
3768
- height: 36px;
3769
- border-radius: 50%;
3770
- object-fit: cover;
3771
- flex-shrink: 0;
3772
- background: #9ca3af;
3773
- }
3774
-
3775
- .artifactuse-social-youtube .artifactuse-social-title {
3776
- font-weight: 500;
3777
- font-size: 14px;
3778
- display: -webkit-box;
3779
- -webkit-line-clamp: 2;
3780
- -webkit-box-orient: vertical;
3781
- overflow: hidden;
3782
- line-height: 1.35;
3783
- color: var(--social-text-primary);
3784
- }
3785
-
3786
- .artifactuse-social-youtube .artifactuse-social-channel {
3787
- font-size: 12px;
3788
- margin-top: 4px;
3789
- color: var(--social-text-secondary);
3790
- }
3791
-
3792
- .artifactuse-social-youtube .artifactuse-social-meta {
3793
- font-size: 12px;
3794
- color: var(--social-text-secondary);
3795
- }
3796
-
3797
- /* ============================================================
3798
- COMMON UTILITIES
3799
- ============================================================ */
3800
-
3801
- /* Actions Bar */
3802
- .artifactuse-social-actions-bar {
3803
- display: flex;
3804
- align-items: center;
3805
- justify-content: space-between;
3806
- margin-top: 12px;
3807
- padding-top: 12px;
3808
- border-top: 1px solid rgb(var(--artifactuse-border));
3809
- }
3810
-
3811
- .artifactuse-social-copy-btn {
3812
- display: flex;
3813
- align-items: center;
3814
- gap: 6px;
3815
- font-size: 12px;
3816
- padding: 6px 12px;
3817
- border-radius: 9999px;
3818
- border: none;
3819
- cursor: pointer;
3820
- transition: background-color 0.2s ease;
3821
- background: rgba(var(--artifactuse-surface), 0.5);
3822
- color: rgb(var(--artifactuse-text-secondary));
3823
- }
3824
-
3825
- .artifactuse-social-copy-btn:hover {
3826
- background: rgba(var(--artifactuse-surface), 0.8);
3827
- }
3828
-
3829
- .artifactuse-social-copy-btn svg {
3830
- width: 14px;
3831
- height: 14px;
3832
- }
3833
-
3834
- .artifactuse-social-platform-badge {
3835
- display: flex;
3836
- align-items: center;
3837
- gap: 6px;
3838
- font-size: 12px;
3839
- padding: 4px 8px;
3840
- border-radius: 9999px;
3841
- background: rgba(var(--artifactuse-surface), 0.5);
3842
- color: rgb(var(--artifactuse-text-secondary));
3843
- }
3844
-
3845
- .artifactuse-social-platform-badge svg {
3846
- width: 14px;
3847
- height: 14px;
3848
- }
3849
-
3850
- /* Show More */
3851
- .artifactuse-social-show-more {
3852
- font-size: 14px;
3853
- cursor: pointer;
3854
- color: var(--social-text-secondary);
3855
- }
3856
-
3857
- .artifactuse-social-show-more:hover {
3858
- text-decoration: underline;
3859
- }
3860
-
3861
- /* Character Counter */
3862
- .artifactuse-social-char-counter {
3863
- font-size: 12px;
3864
- margin-top: 8px;
3865
- text-align: right;
3866
- color: rgb(var(--artifactuse-text-secondary));
3867
- }
3868
-
3869
- .artifactuse-social-char-counter.artifactuse-social-char-warning {
3870
- color: #eab308;
3871
- }
3872
-
3873
- .artifactuse-social-char-counter.artifactuse-social-char-error {
3874
- color: #ef4444;
3875
- }
3876
-
3877
- /* Draft/Scheduled Badge */
3878
- .artifactuse-social-badge {
3879
- display: inline-flex;
3880
- align-items: center;
3881
- gap: 4px;
3882
- font-size: 12px;
3883
- padding: 2px 8px;
3884
- border-radius: 9999px;
3885
- }
3886
-
3887
- .artifactuse-social-badge-draft {
3888
- background: rgba(234, 179, 8, 0.2);
3889
- color: #eab308;
3890
- }
3891
-
3892
- .artifactuse-social-badge-scheduled {
3893
- background: rgba(59, 130, 246, 0.2);
3894
- color: #3b82f6;
3895
- }
3896
-
3897
-
3898
-
3899
- /* ============================================================
3900
- ARTIFACTUSE INLINE FORMS - CHAT-NATIVE STYLING
3901
- Forms that feel native to the chat interface
3902
- ============================================================ */
3903
-
3904
- /* Base Form Container */
3905
- .artifactuse-inline-form {
3906
- background: rgba(var(--artifactuse-surface), 0.5);
3907
- border: 1px solid rgba(var(--artifactuse-border), 0.5);
3908
- border-radius: 16px;
3909
- padding: 16px;
3910
- margin: 8px 0;
3911
- font-family: var(--artifactuse-font-family);
3912
- max-width: 400px;
3913
- animation: artifactuse-slide-up 0.2s ease-out;
3914
- }
3915
-
3916
- /* Buttons-only variant - more compact */
3917
- .artifactuse-inline-form.artifactuse-form-buttons {
3918
- padding: 12px;
3919
- background: transparent;
3920
- border: none;
3921
- max-width: none;
3922
- }
3923
-
3924
- /* Form Header */
3925
- .artifactuse-form-header {
3926
- margin-bottom: 12px;
3927
- }
3928
-
3929
- .artifactuse-form-title {
3930
- font-size: 14px;
3931
- font-weight: 600;
3932
- color: rgb(var(--artifactuse-text));
3933
- margin: 0 0 4px 0;
3934
- }
3935
-
3936
- .artifactuse-form-description {
3937
- font-size: 13px;
3938
- color: rgb(var(--artifactuse-text-secondary));
3939
- margin: 0;
3940
- line-height: 1.4;
3941
- }
3942
-
3943
- /* Form Fields Container */
3944
- .artifactuse-form-fields {
3945
- display: flex;
3946
- flex-direction: column;
3947
- gap: 12px;
3948
- }
3949
-
3950
- /* Individual Field */
3951
- .artifactuse-form-field {
3952
- display: flex;
3953
- flex-direction: column;
3954
- gap: 4px;
3955
- }
3956
-
3957
- /* Labels */
3958
- .artifactuse-label {
3959
- font-size: 12px;
3960
- font-weight: 500;
3961
- color: rgb(var(--artifactuse-text-secondary));
3962
- margin-bottom: 2px;
3963
- }
3964
-
3965
- .artifactuse-required {
3966
- color: rgb(var(--artifactuse-error));
3967
- margin-left: 2px;
3968
- }
3969
-
3970
- /* Text Inputs - Chat-native style */
3971
- .artifactuse-input,
3972
- .artifactuse-textarea,
3973
- .artifactuse-select {
3974
- padding: 10px 12px;
3975
- background: rgba(var(--artifactuse-surface-hover), 0.5);
3976
- border: 1px solid transparent;
3977
- border-radius: 12px;
3978
- color: rgb(var(--artifactuse-text));
3979
- font-size: 14px;
3980
- font-family: inherit;
3981
- transition: all 0.15s ease;
3982
- width: 100%;
3983
- box-sizing: border-box;
3984
- }
3985
-
3986
- .artifactuse-input:hover,
3987
- .artifactuse-textarea:hover,
3988
- .artifactuse-select:hover {
3989
- background: rgba(var(--artifactuse-surface-hover), 0.7);
3990
- }
3991
-
3992
- .artifactuse-input:focus,
3993
- .artifactuse-textarea:focus,
3994
- .artifactuse-select:focus {
3995
- outline: none;
3996
- background: rgba(var(--artifactuse-surface-hover), 0.8);
3997
- border-color: rgba(var(--artifactuse-primary), 0.5);
3998
- box-shadow: 0 0 0 3px rgba(var(--artifactuse-primary), 0.1);
3999
- }
4000
-
4001
- .artifactuse-input::placeholder,
4002
- .artifactuse-textarea::placeholder {
4003
- color: rgb(var(--artifactuse-text-muted));
4004
- }
4005
-
4006
- /* Textarea */
4007
- .artifactuse-textarea {
4008
- resize: vertical;
4009
- min-height: 72px;
4010
- line-height: 1.4;
4011
- }
4012
-
4013
- /* Select */
4014
- .artifactuse-select {
4015
- cursor: pointer;
4016
- appearance: none;
4017
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
4018
- background-repeat: no-repeat;
4019
- background-position: right 12px center;
4020
- padding-right: 36px;
4021
- }
4022
-
4023
- /* Checkbox & Radio - Chat-native style */
4024
- .artifactuse-checkbox-label,
4025
- .artifactuse-radio-label {
4026
- display: flex;
4027
- align-items: center;
4028
- gap: 10px;
4029
- cursor: pointer;
4030
- font-size: 14px;
4031
- color: rgb(var(--artifactuse-text));
4032
- padding: 8px 12px;
4033
- margin: -8px -12px;
4034
- border-radius: 12px;
4035
- transition: background-color 0.15s ease;
4036
- }
4037
-
4038
- .artifactuse-checkbox-label:hover,
4039
- .artifactuse-radio-label:hover {
4040
- background: rgba(var(--artifactuse-surface-hover), 0.5);
4041
- }
4042
-
4043
- .artifactuse-checkbox,
4044
- .artifactuse-radio {
4045
- width: 18px;
4046
- height: 18px;
4047
- border: 2px solid rgb(var(--artifactuse-border));
4048
- background: transparent;
4049
- cursor: pointer;
4050
- transition: all 0.15s ease;
4051
- appearance: none;
4052
- flex-shrink: 0;
4053
- }
4054
-
4055
- .artifactuse-checkbox {
4056
- border-radius: 6px;
4057
- }
4058
-
4059
- .artifactuse-radio {
4060
- border-radius: 50%;
4061
- }
4062
-
4063
- .artifactuse-checkbox:checked {
4064
- background: rgb(var(--artifactuse-primary));
4065
- border-color: rgb(var(--artifactuse-primary));
4066
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E");
4067
- background-repeat: no-repeat;
4068
- background-position: center;
4069
- }
4070
-
4071
- .artifactuse-radio:checked {
4072
- border-color: rgb(var(--artifactuse-primary));
4073
- background: rgb(var(--artifactuse-primary));
4074
- box-shadow: inset 0 0 0 3px rgb(var(--artifactuse-surface));
4075
- }
4076
-
4077
- .artifactuse-checkbox-text {
4078
- line-height: 1.4;
4079
- }
4080
-
4081
- .artifactuse-radio-group {
4082
- display: flex;
4083
- flex-direction: column;
4084
- gap: 4px;
4085
- }
4086
-
4087
- /* Help Text */
4088
- .artifactuse-help-text {
4089
- font-size: 12px;
4090
- color: rgb(var(--artifactuse-text-muted));
4091
- margin-top: 2px;
4092
- }
4093
-
4094
- /* Error Text */
4095
- .artifactuse-error-text {
4096
- font-size: 12px;
4097
- color: rgb(var(--artifactuse-error));
4098
- margin-top: 2px;
4099
- }
4100
-
4101
- /* Input with error */
4102
- .artifactuse-form-field:has(.artifactuse-error-text) .artifactuse-input,
4103
- .artifactuse-form-field:has(.artifactuse-error-text) .artifactuse-textarea,
4104
- .artifactuse-form-field:has(.artifactuse-error-text) .artifactuse-select {
4105
- border-color: rgba(var(--artifactuse-error), 0.5);
4106
- }
4107
-
4108
- /* Divider */
4109
- .artifactuse-form-divider {
4110
- height: 1px;
4111
- background: rgba(var(--artifactuse-border), 0.5);
4112
- margin: 4px 0;
4113
- }
4114
-
4115
- /* Section Heading */
4116
- .artifactuse-form-heading {
4117
- font-size: 13px;
4118
- font-weight: 600;
4119
- color: rgb(var(--artifactuse-text));
4120
- margin-top: 4px;
4121
- }
4122
-
4123
- /* ============================================================
4124
- BUTTONS - Chat-native pill style
4125
- ============================================================ */
4126
-
4127
- .artifactuse-form-buttons {
4128
- display: flex;
4129
- gap: 8px;
4130
- flex-wrap: wrap;
4131
- margin-top: 12px;
4132
- }
4133
-
4134
- /* Default buttons at bottom of form */
4135
- .artifactuse-form-buttons-default {
4136
- padding-top: 12px;
4137
- border-top: 1px solid rgba(var(--artifactuse-border), 0.3);
4138
- justify-content: flex-end;
4139
- }
4140
-
4141
- /* Buttons-only variant - centered */
4142
- .artifactuse-form-buttons:only-child {
4143
- margin-top: 0;
4144
- justify-content: flex-start;
4145
- }
4146
-
4147
- /* Base Button Style - Pill shaped */
4148
- .artifactuse-form-btn {
4149
- display: inline-flex;
4150
- align-items: center;
4151
- justify-content: center;
4152
- gap: 6px;
4153
- padding: 8px 16px;
4154
- border-radius: 9999px;
4155
- font-size: 14px;
4156
- font-weight: 500;
4157
- cursor: pointer;
4158
- border: none;
4159
- transition: all 0.15s ease;
4160
- font-family: inherit;
4161
- white-space: nowrap;
4162
- min-height: 36px;
4163
- }
4164
-
4165
- .artifactuse-form-btn:disabled {
4166
- opacity: 0.5;
4167
- cursor: not-allowed;
4168
- }
4169
-
4170
- .artifactuse-form-btn:focus-visible {
4171
- outline: none;
4172
- box-shadow: 0 0 0 3px rgba(var(--artifactuse-primary), 0.3);
4173
- }
4174
-
4175
- /* Button Variants */
4176
-
4177
- /* Primary - Solid accent color */
4178
- .artifactuse-form-btn-primary {
4179
- background: rgb(var(--artifactuse-primary));
4180
- color: white;
4181
- }
4182
-
4183
- .artifactuse-form-btn-primary:hover:not(:disabled) {
4184
- background: rgb(var(--artifactuse-primary-hover));
4185
- transform: translateY(-1px);
4186
- }
4187
-
4188
- .artifactuse-form-btn-primary:active:not(:disabled) {
4189
- transform: translateY(0);
4190
- }
4191
-
4192
- /* Secondary - Subtle background */
4193
- .artifactuse-form-btn-secondary {
4194
- background: rgba(var(--artifactuse-surface-hover), 0.8);
4195
- color: rgb(var(--artifactuse-text));
4196
- }
4197
-
4198
- .artifactuse-form-btn-secondary:hover:not(:disabled) {
4199
- background: rgb(var(--artifactuse-surface-hover));
4200
- }
4201
-
4202
- /* Ghost - Transparent with border */
4203
- .artifactuse-form-btn-ghost {
4204
- background: transparent;
4205
- color: rgb(var(--artifactuse-text-secondary));
4206
- border: 1px solid rgba(var(--artifactuse-border), 0.5);
4207
- }
4208
-
4209
- .artifactuse-form-btn-ghost:hover:not(:disabled) {
4210
- background: rgba(var(--artifactuse-surface-hover), 0.5);
4211
- color: rgb(var(--artifactuse-text));
4212
- border-color: rgba(var(--artifactuse-border), 0.8);
4213
- }
4214
-
4215
- /* Danger - Red for destructive actions */
4216
- .artifactuse-form-btn-danger {
4217
- background: rgba(var(--artifactuse-error), 0.15);
4218
- color: rgb(var(--artifactuse-error));
4219
- }
4220
-
4221
- .artifactuse-form-btn-danger:hover:not(:disabled) {
4222
- background: rgba(var(--artifactuse-error), 0.25);
4223
- }
4224
-
4225
- /* Success - Green for positive actions */
4226
- .artifactuse-form-btn-success {
4227
- background: rgba(var(--artifactuse-success), 0.15);
4228
- color: rgb(var(--artifactuse-success));
4229
- }
4230
-
4231
- .artifactuse-form-btn-success:hover:not(:disabled) {
4232
- background: rgba(var(--artifactuse-success), 0.25);
4233
- }
4234
-
4235
- /* Link style - Text only */
4236
- .artifactuse-form-btn-link {
4237
- background: transparent;
4238
- color: rgb(var(--artifactuse-primary));
4239
- padding: 8px 12px;
4240
- }
4241
-
4242
- .artifactuse-form-btn-link:hover:not(:disabled) {
4243
- text-decoration: underline;
4244
- }
4245
-
4246
- /* Button Icon */
4247
- .artifactuse-form-btn-icon {
4248
- display: flex;
4249
- align-items: center;
4250
- justify-content: center;
4251
- width: 16px;
4252
- height: 16px;
4253
- }
4254
-
4255
- .artifactuse-form-btn-icon svg {
4256
- width: 16px;
4257
- height: 16px;
4258
- }
4259
-
4260
- /* Button Spinner */
4261
- .artifactuse-form-btn-spinner {
4262
- width: 14px;
4263
- height: 14px;
4264
- border: 2px solid currentColor;
4265
- border-top-color: transparent;
4266
- border-radius: 50%;
4267
- animation: artifactuse-spin 0.6s linear infinite;
4268
- }
4269
-
4270
- /* ============================================================
4271
- COMPACT VARIANT - Even more minimal
4272
- ============================================================ */
4273
-
4274
- .artifactuse-inline-form.artifactuse-form-compact {
4275
- padding: 12px;
4276
- border-radius: 12px;
4277
- }
4278
-
4279
- .artifactuse-inline-form.artifactuse-form-compact .artifactuse-form-fields {
4280
- gap: 8px;
4281
- }
4282
-
4283
- .artifactuse-inline-form.artifactuse-form-compact .artifactuse-input,
4284
- .artifactuse-inline-form.artifactuse-form-compact .artifactuse-textarea,
4285
- .artifactuse-inline-form.artifactuse-form-compact .artifactuse-select {
4286
- padding: 8px 10px;
4287
- font-size: 13px;
4288
- }
4289
-
4290
- .artifactuse-inline-form.artifactuse-form-compact .artifactuse-form-btn {
4291
- padding: 6px 12px;
4292
- font-size: 13px;
4293
- min-height: 32px;
4294
- }
4295
-
4296
- /* ============================================================
4297
- HORIZONTAL LAYOUT - Fields in a row
4298
- ============================================================ */
4299
-
4300
- .artifactuse-inline-form.artifactuse-form-horizontal .artifactuse-form-fields {
4301
- flex-direction: row;
4302
- align-items: flex-end;
4303
- flex-wrap: wrap;
4304
- }
4305
-
4306
- .artifactuse-inline-form.artifactuse-form-horizontal .artifactuse-form-field {
4307
- flex: 1;
4308
- min-width: 120px;
4309
- }
4310
-
4311
- .artifactuse-inline-form.artifactuse-form-horizontal .artifactuse-form-buttons {
4312
- margin-top: 0;
4313
- padding-top: 0;
4314
- border-top: none;
4315
- align-self: flex-end;
4316
- }
4317
-
4318
- /* ============================================================
4319
- FULL WIDTH VARIANT
4320
- ============================================================ */
4321
-
4322
- .artifactuse-inline-form.artifactuse-form-fullwidth {
4323
- max-width: none;
4324
- }
4325
-
4326
- /* ============================================================
4327
- LIGHT THEME ADJUSTMENTS
4328
- ============================================================ */
4329
-
4330
- [data-artifactuse-theme="light"] .artifactuse-inline-form {
4331
- background: rgba(var(--artifactuse-surface), 0.8);
4332
- border-color: rgba(var(--artifactuse-border), 0.3);
4333
- }
4334
-
4335
- [data-artifactuse-theme="light"] .artifactuse-input,
4336
- [data-artifactuse-theme="light"] .artifactuse-textarea,
4337
- [data-artifactuse-theme="light"] .artifactuse-select {
4338
- background: rgba(255, 255, 255, 0.8);
4339
- border-color: rgba(var(--artifactuse-border), 0.3);
4340
- }
4341
-
4342
- [data-artifactuse-theme="light"] .artifactuse-input:focus,
4343
- [data-artifactuse-theme="light"] .artifactuse-textarea:focus,
4344
- [data-artifactuse-theme="light"] .artifactuse-select:focus {
4345
- background: white;
4346
- border-color: rgba(var(--artifactuse-primary), 0.5);
4347
- }
4348
-
4349
- [data-artifactuse-theme="light"] .artifactuse-form-btn-secondary {
4350
- background: rgba(var(--artifactuse-surface), 0.8);
4351
- }
4352
-
4353
- [data-artifactuse-theme="light"] .artifactuse-form-btn-ghost {
4354
- border-color: rgba(var(--artifactuse-border), 0.3);
4355
- }
4356
-
4357
- /* ============================================================
4358
- RESPONSIVE ADJUSTMENTS
4359
- ============================================================ */
4360
-
4361
- @media (max-width: 480px) {
4362
- .artifactuse-inline-form {
4363
- padding: 12px;
4364
- border-radius: 12px;
4365
- max-width: none;
4366
- }
4367
-
4368
- .artifactuse-form-buttons {
4369
- flex-direction: column;
4370
- }
4371
-
4372
- .artifactuse-form-btn {
4373
- width: 100%;
4374
- }
4375
-
4376
- .artifactuse-inline-form.artifactuse-form-horizontal .artifactuse-form-fields {
4377
- flex-direction: column;
4378
- }
4379
- }
4380
-
4381
-
4382
-
4383
- /* ============================================================
4384
- CARD STYLES FOR PANEL OPENER
4385
- ============================================================ */
4386
-
4387
- .artifactuse-card {
4388
- container-type: inline-size;
4389
- display: flex;
4390
- align-items: center;
4391
- gap: 12px;
4392
- padding: 3px 5px;
4393
- margin: 6px 0;
4394
- border-radius: 8px;
4395
- cursor: pointer;
4396
- transition: all 0.2s ease;
4397
- background: rgba(var(--artifactuse-surface), 0.9);
4398
- border: 1px solid rgba(var(--artifactuse-border), 0.9);
4399
- }
4400
-
4401
- .artifactuse-card:hover {
4402
- border-color: rgb(var(--artifactuse-primary));
4403
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
4404
- }
4405
-
4406
- .artifactuse-card--active {
4407
- border-color: rgb(var(--artifactuse-primary));
4408
- background: rgba(var(--artifactuse-primary), 0.1);
4409
- }
4410
-
4411
-
4412
- /* Icon */
4413
- .artifactuse-card__icon {
4414
- flex-shrink: 0;
4415
- width: 32px;
4416
- height: 32px;
4417
- border-radius: 6px;
4418
- display: flex;
4419
- align-items: center;
4420
- justify-content: center;
4421
- background: rgba(var(--artifactuse-surface), 0.8);
4422
- color: rgb(var(--artifactuse-text-muted));
4423
- }
4424
-
4425
- .artifactuse-card__icon svg {
4426
- width: 18px;
4427
- height: 18px;
4428
- }
4429
-
4430
- .artifactuse-card--active .artifactuse-card__icon {
4431
- background: rgba(var(--artifactuse-primary), 0.15);
4432
- color: rgb(var(--artifactuse-primary));
4433
- }
4434
-
4435
- /* Content */
4436
- .artifactuse-card__content {
4437
- flex: 1;
4438
- min-width: 0;
4439
- overflow: hidden;
4440
- }
4441
-
4442
- .artifactuse-card__title {
4443
- font-size: 13px;
4444
- font-weight: 500;
4445
- letter-spacing: -0.01em;
4446
- color: rgb(var(--artifactuse-text));
4447
- white-space: nowrap;
4448
- overflow: hidden;
4449
- text-overflow: ellipsis;
4450
- }
4451
-
4452
- .artifactuse-card__meta {
4453
- display: flex;
4454
- align-items: center;
4455
- gap: 6px;
4456
- font-size: 11px;
4457
- font-weight: 400;
4458
- letter-spacing: 0.01em;
4459
- color: rgb(var(--artifactuse-text-secondary));
4460
- }
4461
-
4462
- .artifactuse-card__type {
4463
- font-weight: 500;
4464
- white-space: nowrap;
4465
- overflow: hidden;
4466
- text-overflow: ellipsis;
4467
- }
4468
- .artifactuse-card__size {
4469
- white-space: nowrap;
4470
- overflow: hidden;
4471
- text-overflow: ellipsis;
4472
- }
4473
-
4474
- .artifactuse-card__separator {
4475
- opacity: 0.5;
4476
- }
4477
-
4478
- /* Actions */
4479
- .artifactuse-card__actions {
4480
- display: flex;
4481
- align-items: center;
4482
- gap: 4px;
4483
- opacity: 0;
4484
- transition: opacity 0.2s ease;
4485
- }
4486
-
4487
- .artifactuse-card:hover .artifactuse-card__actions {
4488
- opacity: 1;
4489
- }
4490
-
4491
- .artifactuse-card__action {
4492
- padding: 6px;
4493
- border-radius: 6px;
4494
- border: none;
4495
- background: transparent;
4496
- color: rgb(var(--artifactuse-text-muted));
4497
- cursor: pointer;
4498
- transition: all 0.15s ease;
4499
- display: flex;
4500
- align-items: center;
4501
- justify-content: center;
4502
- }
4503
-
4504
- .artifactuse-card__action:hover {
4505
- color: rgb(var(--artifactuse-text));
4506
- background: rgba(var(--artifactuse-surface-hover), 0.8);
4507
- }
4508
-
4509
- .artifactuse-card__action svg {
4510
- width: 14px;
4511
- height: 14px;
4512
- }
4513
-
4514
- /* Arrow */
4515
- .artifactuse-card__arrow {
4516
- flex-shrink: 0;
4517
- color: rgb(var(--artifactuse-text-muted));
4518
- opacity: 0.5;
4519
- align-items: center;
4520
- display: flex;
4521
- }
4522
-
4523
- .artifactuse-card__arrow svg {
4524
- width: 18px;
4525
- height: 18px;
4526
- }
4527
-
4528
- .artifactuse-card--active .artifactuse-card__arrow {
4529
- color: rgb(var(--artifactuse-primary));
4530
- opacity: 1;
4531
- }
4532
-
4533
- /*
4534
- * Light theme overrides
4535
- * Applied when [data-artifactuse-theme="light"] is set on a parent element
4536
- */
4537
- [data-artifactuse-theme="light"] .artifactuse-card {
4538
- background: rgb(var(--artifactuse-surface));
4539
- border-color: rgb(var(--artifactuse-border));
4540
- }
4541
-
4542
- [data-artifactuse-theme="light"] .artifactuse-card:hover {
4543
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
4544
- }
4545
-
4546
- [data-artifactuse-theme="light"] .artifactuse-card__icon {
4547
- background: rgb(var(--artifactuse-surface-hover));
4548
- }
4549
-
4550
- [data-artifactuse-theme="light"] .artifactuse-card__action:hover {
4551
- background: rgb(var(--artifactuse-surface-hover));
4552
- }
4553
-
4554
- /*
4555
- * Dark theme overrides (explicit)
4556
- * Applied when [data-artifactuse-theme="dark"] is set on a parent element
4557
- */
4558
- [data-artifactuse-theme="dark"] .artifactuse-card {
4559
- background: rgba(var(--artifactuse-surface), 0.9);
4560
- border-color: rgba(var(--artifactuse-border), 0.9);
4561
- }
4562
-
4563
- [data-artifactuse-theme="dark"] .artifactuse-card:hover {
4564
- box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
4565
- }
4566
-
4567
- [data-artifactuse-theme="dark"] .artifactuse-card__icon {
4568
- background: rgba(var(--artifactuse-surface-hover), 0.5);
4569
- }
4570
-
4571
- [data-artifactuse-theme="dark"] .artifactuse-card__action:hover {
4572
- background: rgba(var(--artifactuse-surface-hover), 0.6);
4573
- }
4574
-
4575
- /* Responsive */
4576
- @container (max-width: 300px) {
4577
- .artifactuse-card {
4578
- padding: 8px;
4579
- flex-direction: column;
4580
- }
4581
-
4582
- .artifactuse-card__icon {
4583
- width: 28px;
4584
- height: 28px;
4585
- }
4586
-
4587
- .artifactuse-card__icon svg {
4588
- width: 14px;
4589
- height: 14px;
4590
- }
4591
-
4592
- .artifactuse-card__actions {
4593
- display: none;
4594
- }
4595
- }
4596
-
4597
-
4598
-
4599
- /* ============================================================
4600
- PANEL TOGGLE STYLES
4601
- ============================================================ */
4602
-
4603
- .artifactuse-panel-toggle {
4604
- position: relative;
4605
- display: flex;
4606
- align-items: center;
4607
- justify-content: center;
4608
- width: 40px;
4609
- height: 40px;
4610
- background: rgb(var(--artifactuse-surface));
4611
- border: 1px solid rgb(var(--artifactuse-border));
4612
- border-radius: 10px;
4613
- color: rgb(var(--artifactuse-text-secondary));
4614
- cursor: pointer;
4615
- transition: all 0.2s ease;
4616
- }
4617
-
4618
- .artifactuse-panel-toggle:hover {
4619
- background: rgb(var(--artifactuse-surface-hover));
4620
- color: rgb(var(--artifactuse-text));
4621
- border-color: rgb(var(--artifactuse-border));
4622
- }
4623
-
4624
- .artifactuse-panel-toggle--active {
4625
- background: rgba(var(--artifactuse-primary), 0.15);
4626
- border-color: rgb(var(--artifactuse-primary));
4627
- color: rgb(var(--artifactuse-primary));
4628
- }
4629
-
4630
- .artifactuse-panel-toggle--active:hover {
4631
- background: rgba(var(--artifactuse-primary), 0.25);
4632
- }
4633
-
4634
- .artifactuse-panel-toggle--has-artifacts {
4635
- color: rgb(var(--artifactuse-primary));
4636
- }
4637
-
4638
- .artifactuse-panel-toggle svg {
4639
- width: 20px;
4640
- height: 20px;
4641
- }
4642
-
4643
- .artifactuse-panel-toggle-badge {
4644
- position: absolute;
4645
- top: -6px;
4646
- right: -6px;
4647
- min-width: 18px;
4648
- height: 18px;
4649
- padding: 0 5px;
4650
- background: rgb(var(--artifactuse-primary));
4651
- color: white;
4652
- border-radius: 9px;
4653
- font-size: 11px;
4654
- font-weight: 600;
4655
- line-height: 18px;
4656
- text-align: center;
4657
- }
4658
-
4659
- /* Pulse animation for new artifacts */
4660
- @keyframes artifactuse-pulse {
4661
- 0% {
4662
- box-shadow: 0 0 0 0 rgba(var(--artifactuse-primary), 0.4);
4663
- }
4664
- 70% {
4665
- box-shadow: 0 0 0 8px rgba(var(--artifactuse-primary), 0);
4666
- }
4667
- 100% {
4668
- box-shadow: 0 0 0 0 rgba(var(--artifactuse-primary), 0);
4669
- }
4670
- }
4671
-
4672
- .artifactuse-panel-toggle--has-artifacts:not(.artifactuse-panel-toggle--active) {
4673
- animation: artifactuse-pulse 2s ease-in-out 3;
4674
- }