magic-editor-x 1.3.4 → 1.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/style.css CHANGED
@@ -1,3 +1,828 @@
1
+ /**
2
+ * Magic Editor X - EditorJS Block Styles
3
+ * Note: Layout styles are handled by styled-components
4
+ */
5
+
6
+ /* ============================================
7
+ EDITORJS CORE
8
+ ============================================ */
9
+
10
+ .codex-editor {
11
+ position: relative;
12
+ }
13
+
14
+ .ce-block__content {
15
+ max-width: 100% !important;
16
+ margin: 0 !important;
17
+ width: 100% !important;
18
+ }
19
+
20
+ .ce-toolbar__content {
21
+ max-width: 100% !important;
22
+ margin: 0 !important;
23
+ }
24
+
25
+ .ce-toolbar__actions {
26
+ width: 98%;
27
+ }
28
+
29
+ .ce-toolbar {
30
+ z-index: 30 !important;
31
+ margin-left: 10px;
32
+ }
33
+
34
+ /* Hide the dark popover header bar */
35
+ .ce-popover__custom-content,
36
+ .ce-popover-header,
37
+ .ce-popover__nothing-found-message {
38
+ display: none !important;
39
+ }
40
+
41
+ /* CRITICAL: Allow inline toolbar (text selection) to overflow */
42
+ .ce-inline-toolbar,
43
+ .ce-inline-toolbar .ce-popover,
44
+ .ce-inline-toolbar .ce-popover__container,
45
+ .ce-inline-toolbar .ce-popover__items {
46
+ overflow: visible !important;
47
+ }
48
+
49
+ .ce-popover__search {
50
+ background: transparent !important;
51
+ border: none !important;
52
+ }
53
+
54
+ /* Hide the dark tooltip on hover */
55
+ .ce-toolbar__tooltip,
56
+ .ct,
57
+ .ct__content,
58
+ [data-ct],
59
+ .codex-tooltip,
60
+ .ce-settings__button::before,
61
+ .ce-toolbar__plus::before,
62
+ .ce-toolbar__settings-btn::before {
63
+ display: none !important;
64
+ opacity: 0 !important;
65
+ visibility: hidden !important;
66
+ }
67
+
68
+ /* Plus Button */
69
+ .ce-toolbar__plus {
70
+ width: 38px;
71
+ height: 38px;
72
+ color: #7C3AED;
73
+ background: linear-gradient(135deg, #f8f5ff 0%, #ede9fe 100%);
74
+ border-radius: 10px;
75
+ transition: all 0.2s ease;
76
+ border: 1px solid #e9e3f5;
77
+ position: relative;
78
+ left: 6px;
79
+ z-index: 31;
80
+ }
81
+
82
+ .ce-toolbar__plus:hover {
83
+ background: linear-gradient(135deg, #7C3AED 0%, #6d28d9 100%);
84
+ color: white;
85
+ transform: rotate(90deg) scale(1.05);
86
+ border-color: transparent;
87
+ box-shadow: 0 4px 12px rgba(124, 58, 237, 0.3);
88
+ }
89
+
90
+ .ce-toolbar__plus::after,
91
+ .ce-toolbar__settings-btn::after,
92
+ .ce-inline-tool::after,
93
+ .ce-toolbox__button::after {
94
+ display: none !important;
95
+ opacity: 0 !important;
96
+ visibility: hidden !important;
97
+ content: none !important;
98
+ }
99
+
100
+ /* Settings Button */
101
+ .ce-toolbar__settings-btn {
102
+ width: 38px;
103
+ height: 38px;
104
+ color: #64748b;
105
+ background: #f8fafc;
106
+ border-radius: 10px;
107
+ transition: all 0.2s ease;
108
+ border: 1px solid #e2e8f0;
109
+ }
110
+
111
+ .ce-toolbar__settings-btn:hover {
112
+ background: linear-gradient(135deg, #7C3AED 0%, #6d28d9 100%);
113
+ color: white;
114
+ border-color: transparent;
115
+ box-shadow: 0 4px 12px rgba(124, 58, 237, 0.3);
116
+ }
117
+
118
+ /* ============================================
119
+ BLOCK STYLES
120
+ ============================================ */
121
+
122
+ .ce-block {
123
+ padding: 6px 8px;
124
+ margin: 4px 0;
125
+ border-radius: 10px;
126
+ transition: background 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
127
+ border: 1px solid transparent;
128
+ position: relative;
129
+ }
130
+
131
+ .ce-block:hover {
132
+ background: rgba(124, 58, 237, 0.06);
133
+ border-color: rgba(124, 58, 237, 0.25);
134
+ box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
135
+ }
136
+
137
+ .ce-block--focused {
138
+ background: rgba(124, 58, 237, 0.08);
139
+ border-color: rgba(124, 58, 237, 0.4);
140
+ box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
141
+ }
142
+
143
+ .ce-block--selected .ce-block__content {
144
+ background: rgba(124, 58, 237, 0.08);
145
+ border-radius: 6px;
146
+ padding: 4px 8px;
147
+ margin: -4px -8px;
148
+ }
149
+
150
+ /* ============================================
151
+ HEADER
152
+ ============================================ */
153
+
154
+ .ce-header {
155
+ padding: 8px 0;
156
+ margin: 0;
157
+ line-height: 1.3;
158
+ font-weight: 700;
159
+ color: #0f172a;
160
+ }
161
+
162
+ h1.ce-header { font-size: 2.5em; letter-spacing: -0.03em; }
163
+ h2.ce-header { font-size: 2em; letter-spacing: -0.02em; }
164
+ h3.ce-header { font-size: 1.5em; letter-spacing: -0.01em; }
165
+ h4.ce-header { font-size: 1.25em; }
166
+
167
+ /* ============================================
168
+ PARAGRAPH
169
+ ============================================ */
170
+
171
+ .ce-paragraph {
172
+ line-height: 1.8;
173
+ font-size: 16px;
174
+ color: #334155;
175
+ }
176
+
177
+ .ce-paragraph[data-placeholder]:empty::before {
178
+ color: #94a3b8;
179
+ font-style: normal;
180
+ }
181
+
182
+ /* ============================================
183
+ LIST
184
+ ============================================ */
185
+
186
+ .cdx-list,
187
+ .cdx-nested-list {
188
+ padding-left: 28px;
189
+ }
190
+
191
+ .cdx-list__item,
192
+ .cdx-nested-list__item-content {
193
+ padding: 6px 0;
194
+ line-height: 1.7;
195
+ }
196
+
197
+ /* ============================================
198
+ CHECKLIST
199
+ ============================================ */
200
+
201
+ .cdx-checklist__item {
202
+ display: flex;
203
+ align-items: flex-start;
204
+ padding: 10px 12px;
205
+ margin: 4px 0;
206
+ background: #fafbfc;
207
+ border-radius: 10px;
208
+ border: 1px solid transparent;
209
+ transition: all 0.15s ease;
210
+ }
211
+
212
+ .cdx-checklist__item:hover {
213
+ background: #f5f3ff;
214
+ border-color: #e9e3f5;
215
+ }
216
+
217
+ .cdx-checklist__item-checkbox {
218
+ width: 22px;
219
+ height: 22px;
220
+ border: 2px solid #cbd5e1;
221
+ border-radius: 6px;
222
+ margin-right: 14px;
223
+ flex-shrink: 0;
224
+ transition: all 0.2s ease;
225
+ cursor: pointer;
226
+ position: relative;
227
+ }
228
+
229
+ .cdx-checklist__item-checkbox:hover {
230
+ border-color: #7C3AED;
231
+ box-shadow: 0 0 0 3px rgba(124, 58, 237, 0.1);
232
+ }
233
+
234
+ .cdx-checklist__item--checked .cdx-checklist__item-checkbox {
235
+ background: linear-gradient(135deg, #7C3AED 0%, #6d28d9 100%);
236
+ border-color: #7C3AED;
237
+ }
238
+
239
+ .cdx-checklist__item--checked .cdx-checklist__item-checkbox::after {
240
+ content: '✓';
241
+ color: white;
242
+ font-size: 13px;
243
+ font-weight: bold;
244
+ position: absolute;
245
+ top: 50%;
246
+ left: 50%;
247
+ transform: translate(-50%, -50%);
248
+ }
249
+
250
+ .cdx-checklist__item--checked .cdx-checklist__item-text {
251
+ text-decoration: line-through;
252
+ color: #94a3b8;
253
+ }
254
+
255
+ /* ============================================
256
+ QUOTE
257
+ ============================================ */
258
+
259
+ .cdx-quote {
260
+ padding: 24px 28px;
261
+ border-left: 4px solid #7C3AED;
262
+ background: linear-gradient(135deg, #faf8ff 0%, #f5f3ff 100%);
263
+ border-radius: 0 16px 16px 0;
264
+ margin: 16px 0;
265
+ position: relative;
266
+ }
267
+
268
+ .cdx-quote::before {
269
+ content: '"';
270
+ position: absolute;
271
+ top: 12px;
272
+ left: 20px;
273
+ font-size: 56px;
274
+ color: #ddd6fe;
275
+ font-family: Georgia, serif;
276
+ line-height: 1;
277
+ }
278
+
279
+ .cdx-quote__text {
280
+ font-style: italic;
281
+ font-size: 17px;
282
+ line-height: 1.75;
283
+ color: #334155;
284
+ padding-left: 32px;
285
+ min-height: auto;
286
+ }
287
+
288
+ .cdx-quote__caption {
289
+ margin-top: 14px;
290
+ font-size: 14px;
291
+ color: #7C3AED;
292
+ font-weight: 600;
293
+ padding-left: 32px;
294
+ }
295
+
296
+ .cdx-quote__caption::before {
297
+ content: '— ';
298
+ }
299
+
300
+ /* ============================================
301
+ WARNING
302
+ ============================================ */
303
+
304
+ .cdx-warning {
305
+ display: flex;
306
+ align-items: flex-start;
307
+ padding: 20px 24px;
308
+ background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
309
+ border: 1px solid #fcd34d;
310
+ border-radius: 16px;
311
+ margin: 16px 0;
312
+ }
313
+
314
+ .cdx-warning__icon {
315
+ width: 28px;
316
+ height: 28px;
317
+ margin-right: 18px;
318
+ color: #d97706;
319
+ flex-shrink: 0;
320
+ }
321
+
322
+ .cdx-warning__title {
323
+ font-weight: 700;
324
+ margin-bottom: 6px;
325
+ color: #92400e;
326
+ font-size: 15px;
327
+ }
328
+
329
+ .cdx-warning__message {
330
+ font-size: 15px;
331
+ line-height: 1.65;
332
+ color: #78350f;
333
+ }
334
+
335
+ /* ============================================
336
+ CODE
337
+ ============================================ */
338
+
339
+ .ce-code__textarea {
340
+ font-family: 'JetBrains Mono', 'Fira Code', 'SF Mono', Monaco, monospace;
341
+ font-size: 14px;
342
+ background: linear-gradient(180deg, #1e1e2e 0%, #252536 100%);
343
+ color: #e2e8f0;
344
+ border-radius: 16px;
345
+ padding: 24px;
346
+ border: none;
347
+ resize: vertical;
348
+ min-height: 140px;
349
+ line-height: 1.65;
350
+ tab-size: 2;
351
+ box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.2);
352
+ }
353
+
354
+ .ce-code__textarea::placeholder {
355
+ color: #64748b;
356
+ }
357
+
358
+ /* ============================================
359
+ TABLE
360
+ ============================================ */
361
+
362
+ .tc-table {
363
+ width: 100%;
364
+ border-collapse: separate;
365
+ border-spacing: 0;
366
+ margin: 16px 0;
367
+ border: 1px solid #e2e8f0;
368
+ border-radius: 16px;
369
+ overflow: hidden;
370
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
371
+ }
372
+
373
+ .tc-table__cell {
374
+ border: 1px solid #e2e8f0;
375
+ padding: 14px 18px;
376
+ vertical-align: top;
377
+ transition: background 0.15s ease;
378
+ font-size: 14px;
379
+ }
380
+
381
+ .tc-table__cell:focus {
382
+ background: rgba(124, 58, 237, 0.05);
383
+ outline: none;
384
+ }
385
+
386
+ .tc-table__cell--head {
387
+ background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
388
+ font-weight: 600;
389
+ color: #334155;
390
+ }
391
+
392
+ .tc-row:first-child .tc-table__cell:first-child { border-top-left-radius: 15px; }
393
+ .tc-row:first-child .tc-table__cell:last-child { border-top-right-radius: 15px; }
394
+ .tc-row:last-child .tc-table__cell:first-child { border-bottom-left-radius: 15px; }
395
+ .tc-row:last-child .tc-table__cell:last-child { border-bottom-right-radius: 15px; }
396
+
397
+ /* ============================================
398
+ DELIMITER
399
+ ============================================ */
400
+
401
+ .ce-delimiter {
402
+ text-align: center;
403
+ padding: 40px 0;
404
+ position: relative;
405
+ }
406
+
407
+ .ce-delimiter::before {
408
+ content: '';
409
+ position: absolute;
410
+ left: 50%;
411
+ top: 50%;
412
+ transform: translate(-50%, -50%);
413
+ width: 100px;
414
+ height: 4px;
415
+ background: linear-gradient(90deg, transparent, #7C3AED, transparent);
416
+ border-radius: 2px;
417
+ }
418
+
419
+ /* ============================================
420
+ IMAGE
421
+ ============================================ */
422
+
423
+ .image-tool {
424
+ border-radius: 16px;
425
+ overflow: hidden;
426
+ margin: 20px 0;
427
+ background: #f8fafc;
428
+ border: 1px solid #e2e8f0;
429
+ transition: all 0.2s ease;
430
+ }
431
+
432
+ .image-tool:hover {
433
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
434
+ transform: translateY(-2px);
435
+ }
436
+
437
+ .image-tool__image {
438
+ max-width: 100%;
439
+ display: block;
440
+ }
441
+
442
+ .image-tool__image-picture {
443
+ max-width: 100%;
444
+ display: block;
445
+ }
446
+
447
+ .image-tool__caption {
448
+ font-size: 13px;
449
+ color: #64748b;
450
+ padding: 14px 18px;
451
+ text-align: center;
452
+ background: #f8fafc;
453
+ border-top: 1px solid #e2e8f0;
454
+ }
455
+
456
+ .image-tool--withBorder .image-tool__image {
457
+ border: 2px solid #e2e8f0;
458
+ border-radius: 12px;
459
+ margin: 12px;
460
+ }
461
+
462
+ .image-tool--withBackground .image-tool__image {
463
+ background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%);
464
+ padding: 32px;
465
+ }
466
+
467
+ .image-tool--stretched .image-tool__image-picture {
468
+ width: 100%;
469
+ }
470
+
471
+ /* ============================================
472
+ LINK TOOL
473
+ ============================================ */
474
+
475
+ .link-tool {
476
+ border: 1px solid #e2e8f0;
477
+ border-radius: 16px;
478
+ overflow: hidden;
479
+ margin: 16px 0;
480
+ transition: all 0.2s ease;
481
+ }
482
+
483
+ .link-tool:hover {
484
+ border-color: #7C3AED;
485
+ box-shadow: 0 8px 24px rgba(124, 58, 237, 0.12);
486
+ transform: translateY(-2px);
487
+ }
488
+
489
+ .link-tool__content {
490
+ display: flex;
491
+ padding: 18px;
492
+ background: linear-gradient(135deg, #fafbff 0%, #f8f9ff 100%);
493
+ }
494
+
495
+ .link-tool__image {
496
+ width: 110px;
497
+ height: 110px;
498
+ object-fit: cover;
499
+ border-radius: 12px;
500
+ margin-right: 20px;
501
+ flex-shrink: 0;
502
+ border: 1px solid #e2e8f0;
503
+ }
504
+
505
+ .link-tool__title {
506
+ font-weight: 700;
507
+ font-size: 16px;
508
+ margin-bottom: 8px;
509
+ color: #1e293b;
510
+ line-height: 1.4;
511
+ }
512
+
513
+ .link-tool__description {
514
+ font-size: 14px;
515
+ color: #64748b;
516
+ line-height: 1.55;
517
+ margin-bottom: 10px;
518
+ display: -webkit-box;
519
+ line-clamp: 2;
520
+ -webkit-line-clamp: 2;
521
+ -webkit-box-orient: vertical;
522
+ overflow: hidden;
523
+ }
524
+
525
+ .link-tool__anchor {
526
+ font-size: 13px;
527
+ color: #7C3AED;
528
+ font-weight: 600;
529
+ }
530
+
531
+ /* ============================================
532
+ EMBED
533
+ ============================================ */
534
+
535
+ .embed-tool {
536
+ margin: 20px 0;
537
+ border-radius: 16px;
538
+ overflow: hidden;
539
+ border: 1px solid #e2e8f0;
540
+ }
541
+
542
+ .embed-tool__caption {
543
+ text-align: center;
544
+ font-size: 13px;
545
+ color: #64748b;
546
+ padding: 14px;
547
+ background: #f8fafc;
548
+ }
549
+
550
+ /* ============================================
551
+ RAW HTML
552
+ ============================================ */
553
+
554
+ .ce-rawtool__textarea {
555
+ font-family: 'JetBrains Mono', 'Fira Code', monospace;
556
+ font-size: 14px;
557
+ background: linear-gradient(180deg, #1e1e2e 0%, #252536 100%);
558
+ color: #e2e8f0;
559
+ border-radius: 16px;
560
+ padding: 24px;
561
+ border: none;
562
+ resize: vertical;
563
+ min-height: 140px;
564
+ width: 100%;
565
+ line-height: 1.65;
566
+ box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.2);
567
+ }
568
+
569
+ /* ============================================
570
+ ATTACHES
571
+ ============================================ */
572
+
573
+ .cdx-attaches {
574
+ background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
575
+ border: 1px solid #e2e8f0;
576
+ border-radius: 16px;
577
+ padding: 18px 22px;
578
+ margin: 16px 0;
579
+ display: flex;
580
+ align-items: center;
581
+ gap: 18px;
582
+ transition: all 0.2s ease;
583
+ }
584
+
585
+ .cdx-attaches:hover {
586
+ border-color: #7C3AED;
587
+ box-shadow: 0 4px 16px rgba(124, 58, 237, 0.12);
588
+ }
589
+
590
+ .cdx-attaches__file-icon {
591
+ width: 54px;
592
+ height: 54px;
593
+ background: linear-gradient(135deg, #7C3AED 0%, #6d28d9 100%);
594
+ border-radius: 12px;
595
+ display: flex;
596
+ align-items: center;
597
+ justify-content: center;
598
+ color: white;
599
+ font-weight: bold;
600
+ font-size: 12px;
601
+ text-transform: uppercase;
602
+ box-shadow: 0 4px 12px rgba(124, 58, 237, 0.3);
603
+ }
604
+
605
+ .cdx-attaches__file-info { flex: 1; }
606
+
607
+ .cdx-attaches__title {
608
+ font-weight: 600;
609
+ font-size: 15px;
610
+ color: #1e293b;
611
+ margin-bottom: 4px;
612
+ }
613
+
614
+ .cdx-attaches__size {
615
+ font-size: 13px;
616
+ color: #64748b;
617
+ }
618
+
619
+ /* ============================================
620
+ INLINE TOOLS
621
+ ============================================ */
622
+
623
+ .ce-inline-toolbar {
624
+ background: white;
625
+ border: 1px solid #e2e8f0;
626
+ border-radius: 12px;
627
+ box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
628
+ padding: 6px;
629
+ z-index: 9999 !important;
630
+ }
631
+
632
+ .ce-inline-tool {
633
+ width: 36px;
634
+ height: 36px;
635
+ color: #475569;
636
+ border-radius: 8px;
637
+ transition: all 0.15s ease;
638
+ }
639
+
640
+ .ce-inline-tool:hover {
641
+ background: linear-gradient(135deg, #7C3AED 0%, #6d28d9 100%);
642
+ color: white;
643
+ }
644
+
645
+ .ce-inline-tool--active {
646
+ color: #7C3AED;
647
+ background: rgba(124, 58, 237, 0.1);
648
+ }
649
+
650
+ /* Marker */
651
+ mark.cdx-marker {
652
+ background: linear-gradient(120deg, #fef08a 0%, #fde047 100%);
653
+ padding: 3px 6px;
654
+ border-radius: 4px;
655
+ }
656
+
657
+ /* Inline Code */
658
+ code.inline-code {
659
+ background: #f1f5f9;
660
+ padding: 4px 10px;
661
+ border-radius: 6px;
662
+ font-family: 'JetBrains Mono', monospace;
663
+ font-size: 0.875em;
664
+ color: #7C3AED;
665
+ border: 1px solid #e2e8f0;
666
+ }
667
+
668
+ /* Underline */
669
+ u {
670
+ text-decoration-color: #7C3AED;
671
+ text-decoration-thickness: 2px;
672
+ text-underline-offset: 3px;
673
+ }
674
+
675
+ /* ============================================
676
+ SETTINGS & TOOLBOX
677
+ ============================================ */
678
+
679
+ .ce-settings {
680
+ background: white;
681
+ border: 1px solid #e2e8f0;
682
+ border-radius: 16px;
683
+ box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
684
+ padding: 10px;
685
+ z-index: 9999 !important;
686
+ }
687
+
688
+ .ce-settings__button {
689
+ width: 40px;
690
+ height: 40px;
691
+ color: #475569;
692
+ border-radius: 10px;
693
+ transition: all 0.15s ease;
694
+ }
695
+
696
+ .ce-settings__button:hover {
697
+ background: linear-gradient(135deg, #7C3AED 0%, #6d28d9 100%);
698
+ color: white;
699
+ }
700
+
701
+ .ce-settings__button--active {
702
+ background: rgba(124, 58, 237, 0.1);
703
+ color: #7C3AED;
704
+ }
705
+
706
+ .ce-toolbox {
707
+ background: white;
708
+ border: 1px solid #e2e8f0;
709
+ border-radius: 16px;
710
+ box-shadow: 0 16px 48px rgba(0, 0, 0, 0.18);
711
+ padding: 10px;
712
+ z-index: 9999 !important;
713
+ }
714
+
715
+ .ce-toolbox__button {
716
+ width: 100%;
717
+ padding: 12px 16px;
718
+ color: #475569;
719
+ border-radius: 10px;
720
+ transition: all 0.15s ease;
721
+ display: flex;
722
+ align-items: center;
723
+ gap: 14px;
724
+ }
725
+
726
+ .ce-toolbox__button:hover {
727
+ background: linear-gradient(135deg, #7C3AED 0%, #6d28d9 100%);
728
+ color: white;
729
+ }
730
+
731
+ /* ============================================
732
+ CONVERSION TOOLBAR
733
+ ============================================ */
734
+
735
+ .ce-conversion-toolbar {
736
+ background: white;
737
+ border: 1px solid #e2e8f0;
738
+ border-radius: 16px;
739
+ box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
740
+ padding: 10px;
741
+ z-index: 9999 !important;
742
+ }
743
+
744
+ .ce-conversion-tool {
745
+ padding: 12px 16px;
746
+ color: #475569;
747
+ border-radius: 10px;
748
+ transition: all 0.15s ease;
749
+ }
750
+
751
+ .ce-conversion-tool:hover {
752
+ background: linear-gradient(135deg, #7C3AED 0%, #6d28d9 100%);
753
+ color: white;
754
+ }
755
+
756
+ /* ============================================
757
+ POPOVER
758
+ ============================================ */
759
+
760
+ .ce-popover {
761
+ background: white;
762
+ border: 1px solid #e2e8f0;
763
+ border-radius: 16px;
764
+ box-shadow: 0 16px 48px rgba(0, 0, 0, 0.18);
765
+ z-index: 9999 !important;
766
+ }
767
+
768
+ .ce-popover__item {
769
+ padding: 12px 18px;
770
+ color: #475569;
771
+ border-radius: 10px;
772
+ transition: all 0.15s ease;
773
+ }
774
+
775
+ .ce-popover__item:hover {
776
+ background: linear-gradient(135deg, #7C3AED 0%, #6d28d9 100%);
777
+ color: white;
778
+ }
779
+
780
+ .ce-popover__item-icon {
781
+ width: 30px;
782
+ height: 30px;
783
+ background: #f1f5f9;
784
+ border-radius: 8px;
785
+ display: flex;
786
+ align-items: center;
787
+ justify-content: center;
788
+ margin-right: 14px;
789
+ }
790
+
791
+ .ce-popover__item:hover .ce-popover__item-icon {
792
+ background: rgba(255, 255, 255, 0.2);
793
+ }
794
+
795
+ /* ============================================
796
+ FOCUS & SELECTION
797
+ ============================================ */
798
+
799
+ .ce-block:focus,
800
+ .ce-block *:focus {
801
+ outline: none;
802
+ }
803
+
804
+ ::selection {
805
+ background-color: rgba(124, 58, 237, 0.2);
806
+ }
807
+
808
+ /* ============================================
809
+ ANIMATIONS
810
+ ============================================ */
811
+
812
+ @keyframes fadeInUp {
813
+ from {
814
+ opacity: 0;
815
+ transform: translateY(10px);
816
+ }
817
+ to {
818
+ opacity: 1;
819
+ transform: translateY(0);
820
+ }
821
+ }
822
+
823
+ .ce-block {
824
+ animation: fadeInUp 0.25s ease;
825
+ }
1
826
  /**
2
827
  * AI Assistant Styles for Editor.js
3
828
  * Inline toolbar, suggestions, and tooltips