@thangph2146/lexical-editor 0.0.4 → 0.0.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.
Files changed (101) hide show
  1. package/README.md +47 -0
  2. package/dist/editor-x/editor.cjs +732 -443
  3. package/dist/editor-x/editor.cjs.map +1 -1
  4. package/dist/editor-x/editor.css +1418 -1120
  5. package/dist/editor-x/editor.css.map +1 -1
  6. package/dist/editor-x/editor.d.cts +2 -1
  7. package/dist/editor-x/editor.d.ts +2 -1
  8. package/dist/editor-x/editor.js +736 -447
  9. package/dist/editor-x/editor.js.map +1 -1
  10. package/dist/index.cjs +772 -482
  11. package/dist/index.cjs.map +1 -1
  12. package/dist/index.css +1418 -1120
  13. package/dist/index.css.map +1 -1
  14. package/dist/index.d.cts +1 -1
  15. package/dist/index.d.ts +1 -1
  16. package/dist/index.js +775 -485
  17. package/dist/index.js.map +1 -1
  18. package/package.json +86 -84
  19. package/src/components/lexical-editor.tsx +140 -123
  20. package/src/editor-x/editor.tsx +20 -5
  21. package/src/editor-x/plugins.tsx +385 -380
  22. package/src/nodes/list-with-color-node.tsx +160 -160
  23. package/src/plugins/autocomplete-plugin.tsx +2574 -2574
  24. package/src/plugins/context-menu-plugin.tsx +239 -9
  25. package/src/plugins/floating-text-format-plugin.tsx +84 -92
  26. package/src/plugins/images-plugin.tsx +4 -4
  27. package/src/plugins/list-color-plugin.tsx +178 -178
  28. package/src/plugins/tab-focus-plugin.tsx +66 -66
  29. package/src/plugins/table-column-resizer-plugin.tsx +329 -190
  30. package/src/plugins/toolbar/block-format/block-format-data.tsx +4 -0
  31. package/src/plugins/toolbar/block-format/format-bulleted-list.tsx +40 -40
  32. package/src/plugins/toolbar/block-format/format-list-with-marker.tsx +74 -74
  33. package/src/plugins/toolbar/block-format/format-numbered-list.tsx +40 -40
  34. package/src/plugins/toolbar/block-format-toolbar-plugin.tsx +118 -117
  35. package/src/plugins/toolbar/element-format-toolbar-plugin.tsx +37 -53
  36. package/src/plugins/toolbar/font-format-toolbar-plugin.tsx +8 -15
  37. package/src/plugins/toolbar/font-size-toolbar-plugin.tsx +2 -3
  38. package/src/plugins/toolbar/history-toolbar-plugin.tsx +2 -5
  39. package/src/plugins/toolbar/subsuper-toolbar-plugin.tsx +15 -23
  40. package/src/themes/_mixins.scss +158 -10
  41. package/src/themes/_variables.scss +168 -0
  42. package/src/themes/core/_code.scss +59 -0
  43. package/src/themes/core/_images.scss +80 -0
  44. package/src/themes/core/_lists.scss +214 -0
  45. package/src/themes/core/_misc.scss +46 -0
  46. package/src/themes/core/_reset.scss +119 -0
  47. package/src/themes/core/_tables.scss +145 -0
  48. package/src/themes/core/_text.scss +35 -0
  49. package/src/themes/core/_typography.scss +73 -0
  50. package/src/themes/editor-theme.scss +9 -623
  51. package/src/themes/editor-theme.ts +118 -118
  52. package/src/themes/plugins/_auto-embed.scss +11 -0
  53. package/src/themes/plugins/_color-picker.scss +103 -0
  54. package/src/themes/plugins/_draggable-block.scss +32 -0
  55. package/src/themes/plugins/_floating-link-editor.scss +47 -0
  56. package/src/themes/plugins/_floating-toolbars.scss +61 -0
  57. package/src/themes/plugins/_image-resizer.scss +38 -0
  58. package/src/themes/plugins/_image.scss +57 -0
  59. package/src/themes/plugins/_layout.scss +39 -0
  60. package/src/themes/plugins/_list-color.scss +23 -0
  61. package/src/themes/plugins/_mentions.scss +21 -0
  62. package/src/themes/plugins/_menus-and-pickers.scss +153 -0
  63. package/src/themes/plugins/_table.scss +20 -0
  64. package/src/themes/plugins/_toolbar.scss +36 -0
  65. package/src/themes/plugins/_tree-view.scss +11 -0
  66. package/src/themes/plugins.scss +20 -1165
  67. package/src/themes/ui-components/_animations.scss +31 -0
  68. package/src/themes/ui-components/_backgrounds.scss +27 -0
  69. package/src/themes/ui-components/_borders.scss +20 -0
  70. package/src/themes/ui-components/_button.scss +176 -0
  71. package/src/themes/ui-components/_checkbox.scss +14 -0
  72. package/src/themes/ui-components/_cursors.scss +31 -0
  73. package/src/themes/ui-components/_dialog.scss +86 -0
  74. package/src/themes/ui-components/_display-sizing.scss +100 -0
  75. package/src/themes/ui-components/_flex.scss +124 -0
  76. package/src/themes/ui-components/_form-layout.scss +15 -0
  77. package/src/themes/ui-components/_icons.scss +23 -0
  78. package/src/themes/ui-components/_input.scss +86 -0
  79. package/src/themes/ui-components/_label.scss +19 -0
  80. package/src/themes/ui-components/_loader.scss +9 -0
  81. package/src/themes/ui-components/_margins-paddings.scss +45 -0
  82. package/src/themes/ui-components/_popover.scss +16 -0
  83. package/src/themes/ui-components/_positioning.scss +73 -0
  84. package/src/themes/ui-components/_rounded.scss +19 -0
  85. package/src/themes/ui-components/_scroll-area.scss +11 -0
  86. package/src/themes/ui-components/_select.scss +110 -0
  87. package/src/themes/ui-components/_separator.scss +19 -0
  88. package/src/themes/ui-components/_shadow.scss +15 -0
  89. package/src/themes/ui-components/_tabs.scss +46 -0
  90. package/src/themes/ui-components/_text-utilities.scss +48 -0
  91. package/src/themes/ui-components/_toggle-toolbar.scss +128 -0
  92. package/src/themes/ui-components/_toggle.scss +80 -0
  93. package/src/themes/ui-components/_typography.scss +22 -0
  94. package/src/themes/ui-components.scss +27 -937
  95. package/src/transformers/markdown-list-transformer.ts +51 -51
  96. package/src/ui/button.tsx +11 -2
  97. package/src/ui/collapsible.tsx +1 -1
  98. package/src/ui/dialog.tsx +2 -2
  99. package/src/ui/flex.tsx +4 -4
  100. package/src/ui/popover.tsx +1 -1
  101. package/src/ui/tooltip.tsx +2 -2
package/dist/index.css CHANGED
@@ -7,6 +7,14 @@
7
7
  transform: rotate(360deg);
8
8
  }
9
9
  }
10
+ @keyframes pulse {
11
+ 0%, 100% {
12
+ opacity: 1;
13
+ }
14
+ 50% {
15
+ opacity: 0.5;
16
+ }
17
+ }
10
18
  @keyframes editor-fade-in {
11
19
  from {
12
20
  opacity: 0;
@@ -17,20 +25,58 @@
17
25
  transform: translateY(0);
18
26
  }
19
27
  }
28
+ @keyframes editor-dialog-zoom-in {
29
+ from {
30
+ opacity: 0;
31
+ transform: translate(-50%, -48%) scale(0.95);
32
+ }
33
+ to {
34
+ opacity: 1;
35
+ transform: translate(-50%, -50%) scale(1);
36
+ }
37
+ }
38
+ @keyframes editor-popover-zoom-in {
39
+ from {
40
+ opacity: 0;
41
+ transform: scale(0.95);
42
+ }
43
+ to {
44
+ opacity: 1;
45
+ transform: scale(1);
46
+ }
47
+ }
48
+ @keyframes editor-floating-zoom-in {
49
+ from {
50
+ opacity: 0;
51
+ transform: scale(0.95) translateY(4px);
52
+ }
53
+ to {
54
+ opacity: 1;
55
+ transform: scale(1) translateY(0);
56
+ }
57
+ }
58
+ .editor-loader {
59
+ width: 24px;
60
+ height: 24px;
61
+ animation: spin 1s linear infinite;
62
+ color: var(--muted-foreground);
63
+ }
20
64
  .editor-tabs-trigger {
21
- display: inline-flex;
65
+ display: flex;
22
66
  align-items: center;
23
67
  justify-content: center;
24
68
  white-space: nowrap;
25
- border-radius: calc(var(--radius) - 2px);
26
- padding: 0.375rem 0.75rem;
69
+ border-radius: calc(var(--radius, 8px) - 2px);
70
+ padding: 6px 8px;
27
71
  font-size: 0.875rem;
72
+ line-height: 1.375;
28
73
  font-weight: 500;
29
- transition: all 0.2s;
74
+ transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
30
75
  cursor: pointer;
31
76
  border: none;
32
77
  background: transparent;
33
78
  color: var(--muted-foreground);
79
+ flex: 1;
34
80
  }
35
81
  .editor-tabs-trigger:focus-visible {
36
82
  outline: none;
@@ -46,108 +92,138 @@
46
92
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
47
93
  }
48
94
  .editor-tabs-list {
49
- display: inline-flex;
50
- height: 2.5rem;
95
+ display: flex;
51
96
  align-items: center;
52
97
  justify-content: center;
53
- border-radius: var(--radius);
98
+ height: 40px;
99
+ border-radius: var(--radius, 8px);
54
100
  background-color: var(--muted);
55
- padding: 0.25rem;
101
+ padding: 4px;
56
102
  color: var(--muted-foreground);
103
+ width: 100%;
57
104
  }
58
105
  .editor-tabs-content {
59
- margin-top: 0.5rem;
106
+ margin-top: 8px;
60
107
  }
61
108
  .editor-tabs-content:focus-visible {
62
109
  outline: none;
63
110
  box-shadow: 0 0 0 2px var(--ring), 0 0 0 4px var(--background, transparent);
64
111
  }
112
+ .editor-form-grid {
113
+ display: grid;
114
+ gap: 16px;
115
+ padding-top: 16px;
116
+ padding-bottom: 16px;
117
+ }
118
+ .editor-form-item {
119
+ display: grid;
120
+ gap: 8px;
121
+ }
122
+ .editor-scroll-area {
123
+ max-height: 350px;
124
+ overflow-y: auto;
125
+ padding: 8px;
126
+ border: 1px solid var(--border);
127
+ border-radius: calc(var(--radius, 8px) - 2px);
128
+ }
65
129
  .editor-flex {
66
130
  display: flex;
67
131
  }
68
- .editor-flex--items-start {
132
+ .editor-flex-1 {
133
+ flex: 1 1 0%;
134
+ }
135
+ .editor-shrink-0 {
136
+ flex-shrink: 0;
137
+ }
138
+ .editor-flex-grow {
139
+ flex-grow: 1;
140
+ }
141
+ .editor-items-start {
69
142
  align-items: flex-start;
70
143
  }
71
- .editor-flex--items-center {
144
+ .editor-items-center {
72
145
  align-items: center;
73
146
  }
74
- .editor-flex--items-end {
147
+ .editor-items-end {
75
148
  align-items: flex-end;
76
149
  }
77
- .editor-flex--items-baseline {
150
+ .editor-items-baseline {
78
151
  align-items: baseline;
79
152
  }
80
- .editor-flex--items-stretch {
153
+ .editor-items-stretch {
81
154
  align-items: stretch;
82
155
  }
83
- .editor-flex--justify-start {
156
+ .editor-justify-start {
84
157
  justify-content: flex-start;
85
158
  }
86
- .editor-flex--justify-center {
159
+ .editor-justify-center {
87
160
  justify-content: center;
88
161
  }
89
- .editor-flex--justify-end {
162
+ .editor-justify-end {
90
163
  justify-content: flex-end;
91
164
  }
92
- .editor-flex--justify-between {
165
+ .editor-justify-between {
93
166
  justify-content: space-between;
94
167
  }
95
- .editor-flex--justify-around {
168
+ .editor-justify-around {
96
169
  justify-content: space-around;
97
170
  }
98
- .editor-flex--justify-evenly {
171
+ .editor-justify-evenly {
99
172
  justify-content: space-evenly;
100
173
  }
101
- .editor-flex--flex-row {
174
+ .editor-flex-row {
102
175
  flex-direction: row;
103
176
  }
104
- .editor-flex--flex-col {
105
- flex-direction: column;
106
- }
107
- .editor-flex--flex-column {
177
+ .editor-flex-col {
108
178
  flex-direction: column;
109
179
  }
110
- .editor-flex--flex-row-reverse {
180
+ .editor-flex-row-reverse {
111
181
  flex-direction: row-reverse;
112
182
  }
113
- .editor-flex--flex-col-reverse {
114
- flex-direction: column-reverse;
115
- }
116
- .editor-flex--flex-column-reverse {
183
+ .editor-flex-col-reverse {
117
184
  flex-direction: column-reverse;
118
185
  }
119
- .editor-flex--flex-nowrap {
186
+ .editor-flex-nowrap {
120
187
  flex-wrap: nowrap;
121
188
  }
122
- .editor-flex--flex-wrap {
189
+ .editor-flex-wrap {
123
190
  flex-wrap: wrap;
124
191
  }
125
- .editor-flex--flex-wrap-reverse {
192
+ .editor-flex-wrap-reverse {
126
193
  flex-wrap: wrap-reverse;
127
194
  }
128
- .editor-flex-1 {
129
- flex: 1 1 0%;
130
- }
131
- .editor-w-full {
132
- width: 100%;
133
- }
134
- .editor-w-14 {
135
- width: 3.5rem;
195
+ .editor-flex-end {
196
+ display: flex;
197
+ align-items: center;
198
+ justify-content: flex-end;
199
+ gap: 4px;
200
+ flex-wrap: nowrap;
201
+ flex-shrink: 0;
136
202
  }
137
- .editor-w-48 {
138
- width: 12rem;
203
+ .editor-flex-row-center {
204
+ display: flex;
205
+ align-items: center;
206
+ gap: 8px;
139
207
  }
140
- .editor-w-\[200px\] {
141
- width: 200px;
208
+ .editor-flex-row-center--pointer {
209
+ cursor: pointer;
142
210
  }
143
- .editor-h-full {
144
- height: 100%;
211
+ .editor-flex-col-gap-2 {
212
+ display: flex;
213
+ flex-direction: column;
214
+ gap: 8px;
145
215
  }
146
- .editor-h-4 {
147
- height: 1rem;
216
+ .editor-flex-col-gap-4 {
217
+ display: flex;
218
+ flex-direction: column;
219
+ gap: 16px;
148
220
  }
149
- .editor-overflow-hidden {
150
- overflow: hidden;
221
+ .editor-flex-center-justify-py-8 {
222
+ display: flex;
223
+ align-items: center;
224
+ justify-content: center;
225
+ padding-top: 20px;
226
+ padding-bottom: 20px;
151
227
  }
152
228
  .editor-fixed {
153
229
  position: fixed;
@@ -168,7 +244,67 @@
168
244
  height: 100%;
169
245
  }
170
246
  .editor-relative-full--padding {
171
- padding: 0.5rem 2rem;
247
+ padding: 8px 20px;
248
+ }
249
+ .editor-inset-0 {
250
+ inset: 0;
251
+ }
252
+ .editor-top-0 {
253
+ top: 0;
254
+ }
255
+ .editor-left-0 {
256
+ left: 0;
257
+ }
258
+ .editor-top-1-2 {
259
+ top: 50%;
260
+ }
261
+ .editor-left-1-2 {
262
+ left: 50%;
263
+ }
264
+ .editor-translate-x-1-2 {
265
+ transform: translateX(-50%);
266
+ }
267
+ .editor-translate-y-1-2 {
268
+ transform: translateY(-50%);
269
+ }
270
+ .editor--top-2-5 {
271
+ top: -10px;
272
+ }
273
+ .editor--right-2-5 {
274
+ right: -10px;
275
+ }
276
+ .editor--bottom-2-5 {
277
+ bottom: -10px;
278
+ }
279
+ .editor--left-2-5 {
280
+ left: -10px;
281
+ }
282
+ .editor-w-full {
283
+ width: 100%;
284
+ }
285
+ .editor-h-full {
286
+ height: 100%;
287
+ }
288
+ .editor-w-14 {
289
+ width: 56px;
290
+ }
291
+ .editor-w-48 {
292
+ width: 12.06rem;
293
+ }
294
+ .editor-w-\[200px\] {
295
+ width: 200px;
296
+ }
297
+ .editor-h-4 {
298
+ height: 16px;
299
+ }
300
+ .editor-h-2 {
301
+ height: 8px;
302
+ }
303
+ .editor-w-2 {
304
+ width: 8px;
305
+ }
306
+ .editor-min-h-5 {
307
+ min-height: 20px;
172
308
  }
173
309
  .editor-inline-block {
174
310
  display: inline-block;
@@ -176,8 +312,11 @@
176
312
  .editor-block {
177
313
  display: block;
178
314
  }
179
- .editor-inset-0 {
180
- inset: 0;
315
+ .editor-inline {
316
+ display: inline;
317
+ }
318
+ .editor-overflow-hidden {
319
+ overflow: hidden;
181
320
  }
182
321
  .editor-pointer-events-none {
183
322
  pointer-events: none;
@@ -185,22 +324,47 @@
185
324
  .editor-select-none {
186
325
  user-select: none;
187
326
  }
188
- .editor-text-ellipsis {
189
- text-overflow: ellipsis;
190
- white-space: nowrap;
191
- overflow: hidden;
327
+ .editor-user-select-text,
328
+ .editor-select-text {
329
+ user-select: text;
192
330
  }
193
331
  .editor-z-10 {
194
332
  z-index: 10;
195
333
  }
334
+ .editor-box-border {
335
+ box-sizing: border-box;
336
+ }
337
+ .editor-opacity-30 {
338
+ opacity: 0.3;
339
+ }
340
+ .editor-truncate {
341
+ overflow: hidden;
342
+ text-overflow: ellipsis;
343
+ white-space: nowrap;
344
+ }
345
+ .editor-object-cover {
346
+ object-fit: cover;
347
+ }
348
+ .editor-sr-only {
349
+ position: absolute;
350
+ inset: 0;
351
+ width: 1px;
352
+ height: 1px;
353
+ padding: 0;
354
+ margin: -1px;
355
+ overflow: hidden;
356
+ clip: rect(0, 0, 0, 0);
357
+ white-space: nowrap;
358
+ border-width: 0;
359
+ }
196
360
  .editor-rounded-sm {
197
- border-radius: calc(var(--radius) - 4px);
361
+ border-radius: calc(var(--radius, 8px) - 2px);
198
362
  }
199
363
  .editor-rounded-md {
200
- border-radius: calc(var(--radius) - 2px);
364
+ border-radius: var(--radius, 8px);
201
365
  }
202
366
  .editor-rounded-lg {
203
- border-radius: var(--radius);
367
+ border-radius: calc(var(--radius, 8px) + 4px);
204
368
  }
205
369
  .editor-rounded-full {
206
370
  border-radius: 9999px;
@@ -232,242 +396,384 @@
232
396
  .editor-bg-none {
233
397
  background: none;
234
398
  }
235
- .editor-mb-2 {
236
- margin-bottom: 0.5rem;
399
+ .editor-m-0 {
400
+ margin: 0;
237
401
  }
238
- .editor-mb-3 {
239
- margin-bottom: 0.75rem;
402
+ .editor-mt-0 {
403
+ margin-top: 0;
240
404
  }
241
- .editor-mt-1 {
242
- margin-top: 0.25rem;
405
+ .editor-mb-0 {
406
+ margin-bottom: 0;
243
407
  }
244
- .editor-ml-auto {
245
- margin-left: auto;
408
+ .editor-ml-0 {
409
+ margin-left: 0;
246
410
  }
247
- .editor-ml-4 {
248
- margin-left: 1rem;
411
+ .editor-mr-0 {
412
+ margin-right: 0;
249
413
  }
250
- .editor-px-1 {
251
- padding-left: 0.25rem;
252
- padding-right: 0.25rem;
414
+ .editor-p-0 {
415
+ padding: 0;
253
416
  }
254
- .editor-px-8 {
255
- padding-left: 2rem;
256
- padding-right: 2rem;
417
+ .editor-pt-0 {
418
+ padding-top: 0;
257
419
  }
258
- .editor-py-18 {
259
- padding-top: 18px;
260
- padding-bottom: 18px;
420
+ .editor-pb-0 {
421
+ padding-bottom: 0;
261
422
  }
262
- .editor-h-2 {
263
- height: 0.5rem;
423
+ .editor-pl-0 {
424
+ padding-left: 0;
264
425
  }
265
- .editor-w-2 {
266
- width: 0.5rem;
426
+ .editor-pr-0 {
427
+ padding-right: 0;
267
428
  }
268
- .editor--top-2-5 {
269
- top: -0.625rem;
429
+ .editor-px-0 {
430
+ padding-left: 0;
431
+ padding-right: 0;
270
432
  }
271
- .editor--right-2-5 {
272
- right: -0.625rem;
433
+ .editor-py-0 {
434
+ padding-top: 0;
435
+ padding-bottom: 0;
273
436
  }
274
- .editor--bottom-2-5 {
275
- bottom: -0.625rem;
437
+ .editor-gap-0 {
438
+ gap: 0;
276
439
  }
277
- .editor--left-2-5 {
278
- left: -0.625rem;
440
+ .editor-m-1 {
441
+ margin: 4px;
279
442
  }
280
- .editor-top-1-2 {
281
- top: 50%;
443
+ .editor-mt-1 {
444
+ margin-top: 4px;
282
445
  }
283
- .editor-left-1-2 {
284
- left: 50%;
446
+ .editor-mb-1 {
447
+ margin-bottom: 4px;
285
448
  }
286
- .editor-translate-x-1-2 {
287
- transform: translateX(-50%);
449
+ .editor-ml-1 {
450
+ margin-left: 4px;
288
451
  }
289
- .editor-translate-y-1-2 {
290
- transform: translateY(-50%);
452
+ .editor-mr-1 {
453
+ margin-right: 4px;
291
454
  }
292
- .editor-cursor-ns-resize {
293
- cursor: ns-resize;
455
+ .editor-p-1 {
456
+ padding: 4px;
294
457
  }
295
- .editor-cursor-ew-resize {
296
- cursor: ew-resize;
458
+ .editor-pt-1 {
459
+ padding-top: 4px;
297
460
  }
298
- .editor-cursor-nesw-resize {
299
- cursor: nesw-resize;
461
+ .editor-pb-1 {
462
+ padding-bottom: 4px;
300
463
  }
301
- .editor-cursor-nwse-resize {
302
- cursor: nwse-resize;
464
+ .editor-pl-1 {
465
+ padding-left: 4px;
303
466
  }
304
- .editor-text-muted-xs {
305
- font-size: 0.75rem;
306
- color: var(--muted-foreground);
467
+ .editor-pr-1 {
468
+ padding-right: 4px;
307
469
  }
308
- .editor-text-sm {
309
- font-size: 0.875rem;
470
+ .editor-px-1 {
471
+ padding-left: 4px;
472
+ padding-right: 4px;
310
473
  }
311
- .editor-font-medium {
312
- font-weight: 500;
474
+ .editor-py-1 {
475
+ padding-top: 4px;
476
+ padding-bottom: 4px;
313
477
  }
314
- .editor-text-muted-foreground {
315
- color: var(--muted-foreground);
478
+ .editor-gap-1 {
479
+ gap: 4px;
316
480
  }
317
- .editor-block {
318
- display: block;
481
+ .editor-m-1-5 {
482
+ margin: 6px;
319
483
  }
320
- .editor-inline {
321
- display: inline;
484
+ .editor-mt-1-5 {
485
+ margin-top: 6px;
322
486
  }
323
- .editor-inline-block {
324
- display: inline-block;
487
+ .editor-mb-1-5 {
488
+ margin-bottom: 6px;
325
489
  }
326
- .editor-min-h-5 {
327
- min-height: 1.25rem;
490
+ .editor-ml-1-5 {
491
+ margin-left: 6px;
328
492
  }
329
- .editor-resize-none {
330
- resize: none;
493
+ .editor-mr-1-5 {
494
+ margin-right: 6px;
331
495
  }
332
- .editor-border-0 {
333
- border-width: 0;
496
+ .editor-p-1-5 {
497
+ padding: 6px;
334
498
  }
335
- .editor-bg-transparent {
336
- background-color: transparent;
499
+ .editor-pt-1-5 {
500
+ padding-top: 6px;
337
501
  }
338
- .editor-px-2\.5 {
339
- padding-left: 0.625rem;
340
- padding-right: 0.625rem;
502
+ .editor-pb-1-5 {
503
+ padding-bottom: 6px;
341
504
  }
342
- .editor-py-2 {
343
- padding-top: 0.5rem;
344
- padding-bottom: 0.5rem;
505
+ .editor-pl-1-5 {
506
+ padding-left: 6px;
345
507
  }
346
- .editor-whitespace-pre-wrap {
347
- white-space: pre-wrap;
508
+ .editor-pr-1-5 {
509
+ padding-right: 6px;
348
510
  }
349
- .editor-outline-none {
350
- outline: 2px solid transparent;
351
- outline-offset: 2px;
511
+ .editor-px-1-5 {
512
+ padding-left: 6px;
513
+ padding-right: 6px;
352
514
  }
353
- .editor-word-break-break-word {
354
- word-break: break-word;
515
+ .editor-py-1-5 {
516
+ padding-top: 6px;
517
+ padding-bottom: 6px;
355
518
  }
356
- .editor-box-border {
357
- box-sizing: border-box;
519
+ .editor-gap-1-5 {
520
+ gap: 6px;
358
521
  }
359
- .editor-cursor-text {
360
- cursor: text;
522
+ .editor-m-2 {
523
+ margin: 8px;
361
524
  }
362
- .editor-caret-primary {
363
- caret-color: var(--primary);
525
+ .editor-mt-2 {
526
+ margin-top: 8px;
364
527
  }
365
- .editor-user-select-text {
366
- user-select: text;
528
+ .editor-mb-2 {
529
+ margin-bottom: 8px;
367
530
  }
368
- .editor-cursor-default {
369
- cursor: default;
531
+ .editor-ml-2 {
532
+ margin-left: 8px;
370
533
  }
371
- .editor-select-text {
372
- user-select: text;
534
+ .editor-mr-2 {
535
+ margin-right: 8px;
373
536
  }
374
- .editor-top-0 {
375
- top: 0;
537
+ .editor-p-2 {
538
+ padding: 8px;
376
539
  }
377
- .editor-left-0 {
378
- left: 0;
540
+ .editor-pt-2 {
541
+ padding-top: 8px;
379
542
  }
380
- .editor-text-ellipsis {
381
- overflow: hidden;
382
- text-overflow: ellipsis;
383
- white-space: nowrap;
543
+ .editor-pb-2 {
544
+ padding-bottom: 8px;
384
545
  }
385
- .editor-opacity-30 {
386
- opacity: 0.3;
546
+ .editor-pl-2 {
547
+ padding-left: 8px;
387
548
  }
388
- .editor-p-1 {
389
- padding: 0.25rem;
549
+ .editor-pr-2 {
550
+ padding-right: 8px;
390
551
  }
391
- .editor-p-2 {
392
- padding: 0.5rem;
552
+ .editor-px-2 {
553
+ padding-left: 8px;
554
+ padding-right: 8px;
393
555
  }
394
- .editor-px-1 {
395
- padding-left: 0.25rem;
396
- padding-right: 0.25rem;
556
+ .editor-py-2 {
557
+ padding-top: 8px;
558
+ padding-bottom: 8px;
397
559
  }
398
- .editor-px-0 {
399
- padding-left: 0;
400
- padding-right: 0;
560
+ .editor-gap-2 {
561
+ gap: 8px;
401
562
  }
402
- .editor-rotate-90 {
403
- transform: rotate(90deg);
563
+ .editor-m-3 {
564
+ margin: 12px;
404
565
  }
405
- .editor-transition-transform {
406
- transition-property: transform;
407
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
408
- transition-duration: 150ms;
566
+ .editor-mt-3 {
567
+ margin-top: 12px;
409
568
  }
410
- .editor-shrink-0 {
411
- flex-shrink: 0;
569
+ .editor-mb-3 {
570
+ margin-bottom: 12px;
412
571
  }
413
- .editor-flex-grow {
414
- flex-grow: 1;
572
+ .editor-ml-3 {
573
+ margin-left: 12px;
415
574
  }
416
- .editor-flex-end {
417
- display: flex;
418
- justify-content: flex-end;
419
- align-items: center;
575
+ .editor-mr-3 {
576
+ margin-right: 12px;
420
577
  }
421
- .editor-ml-auto {
422
- margin-left: auto;
578
+ .editor-p-3 {
579
+ padding: 12px;
580
+ }
581
+ .editor-pt-3 {
582
+ padding-top: 12px;
583
+ }
584
+ .editor-pb-3 {
585
+ padding-bottom: 12px;
586
+ }
587
+ .editor-pl-3 {
588
+ padding-left: 12px;
589
+ }
590
+ .editor-pr-3 {
591
+ padding-right: 12px;
592
+ }
593
+ .editor-px-3 {
594
+ padding-left: 12px;
595
+ padding-right: 12px;
596
+ }
597
+ .editor-py-3 {
598
+ padding-top: 12px;
599
+ padding-bottom: 12px;
600
+ }
601
+ .editor-gap-3 {
602
+ gap: 12px;
603
+ }
604
+ .editor-m-4 {
605
+ margin: 16px;
606
+ }
607
+ .editor-mt-4 {
608
+ margin-top: 16px;
609
+ }
610
+ .editor-mb-4 {
611
+ margin-bottom: 16px;
423
612
  }
424
613
  .editor-ml-4 {
425
- margin-left: 1rem;
614
+ margin-left: 16px;
426
615
  }
427
- .editor-mr-1-5 {
428
- margin-right: 0.375rem;
616
+ .editor-mr-4 {
617
+ margin-right: 16px;
429
618
  }
430
- .editor-mt-1 {
431
- margin-top: 0.25rem;
619
+ .editor-p-4 {
620
+ padding: 16px;
432
621
  }
433
- .editor-mt-2 {
434
- margin-top: 0.5rem;
622
+ .editor-pt-4 {
623
+ padding-top: 16px;
435
624
  }
436
- .editor-mb-2 {
437
- margin-bottom: 0.5rem;
625
+ .editor-pb-4 {
626
+ padding-bottom: 16px;
438
627
  }
439
- .editor-mb-3 {
440
- margin-bottom: 0.75rem;
628
+ .editor-pl-4 {
629
+ padding-left: 16px;
441
630
  }
442
- .editor-gap-1 {
443
- gap: 0.25rem;
631
+ .editor-pr-4 {
632
+ padding-right: 16px;
444
633
  }
445
- .editor-gap-2 {
446
- gap: 0.5rem;
634
+ .editor-px-4 {
635
+ padding-left: 16px;
636
+ padding-right: 16px;
447
637
  }
448
- .editor-items-center {
449
- align-items: center;
638
+ .editor-py-4 {
639
+ padding-top: 16px;
640
+ padding-bottom: 16px;
450
641
  }
451
- .editor-justify-center {
452
- justify-content: center;
642
+ .editor-gap-4 {
643
+ gap: 16px;
453
644
  }
454
- .editor-flex-col {
455
- flex-direction: column;
645
+ .editor-m-5 {
646
+ margin: 20px;
456
647
  }
457
- .editor-flex-wrap {
458
- flex-wrap: wrap;
648
+ .editor-mt-5 {
649
+ margin-top: 20px;
650
+ }
651
+ .editor-mb-5 {
652
+ margin-bottom: 20px;
653
+ }
654
+ .editor-ml-5 {
655
+ margin-left: 20px;
656
+ }
657
+ .editor-mr-5 {
658
+ margin-right: 20px;
659
+ }
660
+ .editor-p-5 {
661
+ padding: 20px;
662
+ }
663
+ .editor-pt-5 {
664
+ padding-top: 20px;
665
+ }
666
+ .editor-pb-5 {
667
+ padding-bottom: 20px;
668
+ }
669
+ .editor-pl-5 {
670
+ padding-left: 20px;
671
+ }
672
+ .editor-pr-5 {
673
+ padding-right: 20px;
674
+ }
675
+ .editor-px-5 {
676
+ padding-left: 20px;
677
+ padding-right: 20px;
678
+ }
679
+ .editor-py-5 {
680
+ padding-top: 20px;
681
+ padding-bottom: 20px;
682
+ }
683
+ .editor-gap-5 {
684
+ gap: 20px;
685
+ }
686
+ .editor-ml-auto {
687
+ margin-left: auto;
688
+ }
689
+ .editor-mr-auto {
690
+ margin-right: auto;
691
+ }
692
+ .editor-px-2\.5 {
693
+ padding-left: 10px;
694
+ padding-right: 10px;
695
+ }
696
+ .editor-py-18 {
697
+ padding-top: 18px;
698
+ padding-bottom: 18px;
699
+ }
700
+ .editor-cursor-default {
701
+ cursor: default;
459
702
  }
460
703
  .editor-cursor-pointer {
461
704
  cursor: pointer;
462
705
  }
706
+ .editor-cursor-text {
707
+ cursor: text;
708
+ }
709
+ .editor-cursor-ns-resize {
710
+ cursor: ns-resize;
711
+ }
712
+ .editor-cursor-ew-resize {
713
+ cursor: ew-resize;
714
+ }
715
+ .editor-cursor-nesw-resize {
716
+ cursor: nesw-resize;
717
+ }
718
+ .editor-cursor-nwse-resize {
719
+ cursor: nwse-resize;
720
+ }
721
+ .editor-text-muted-xs {
722
+ font-size: 0.75rem;
723
+ color: var(--muted-foreground, #64748b);
724
+ }
725
+ .editor-text-sm {
726
+ font-size: 0.875rem;
727
+ line-height: 1.375;
728
+ }
729
+ .editor-font-medium {
730
+ font-weight: 500;
731
+ }
732
+ .editor-font-mono {
733
+ font-family:
734
+ "JetBrains Mono",
735
+ ui-monospace,
736
+ SFMono-Regular,
737
+ Menlo,
738
+ Monaco,
739
+ Consolas,
740
+ "Liberation Mono",
741
+ "Courier New",
742
+ monospace;
743
+ }
744
+ .editor-text-muted-foreground {
745
+ color: var(--muted-foreground, #64748b);
746
+ }
747
+ .editor-text-foreground-50 {
748
+ color: color-mix(in srgb, var(--foreground), transparent 50%);
749
+ }
750
+ .editor-uppercase {
751
+ text-transform: uppercase;
752
+ }
753
+ .editor-whitespace-nowrap {
754
+ white-space: nowrap;
755
+ }
756
+ .editor-whitespace-pre-wrap {
757
+ white-space: pre-wrap;
758
+ }
759
+ .editor-word-break-break-word {
760
+ word-break: break-word;
761
+ }
762
+ .editor-caret-primary {
763
+ caret-color: var(--primary);
764
+ }
463
765
  .editor-border {
464
766
  border: 1px solid var(--border);
465
767
  }
768
+ .editor-border-0 {
769
+ border-width: 0;
770
+ }
466
771
  .editor-border-transparent {
467
772
  border-color: transparent;
468
773
  }
469
- .editor-uppercase {
470
- text-transform: uppercase;
774
+ .editor-outline-none {
775
+ outline: 2px solid transparent;
776
+ outline-offset: 2px;
471
777
  }
472
778
  .editor-transition-colors {
473
779
  transition-property:
@@ -478,162 +784,278 @@
478
784
  fill,
479
785
  stroke;
480
786
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
481
- transition-duration: 150ms;
787
+ transition-duration: 150ms cubic-bezier(0.4, 0, 0.2, 1);
788
+ }
789
+ .editor-transition-transform {
790
+ transition-property: transform;
791
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
792
+ transition-duration: 150ms cubic-bezier(0.4, 0, 0.2, 1);
482
793
  }
483
794
  .editor-animate-pulse {
484
795
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
485
796
  }
486
- .editor-whitespace-nowrap {
487
- white-space: nowrap;
488
- }
489
- .editor-text-foreground-50 {
490
- color: color-mix(in srgb, var(--foreground), transparent 50%);
491
- }
492
- @keyframes pulse {
493
- 0%, 100% {
494
- opacity: 1;
495
- }
496
- 50% {
497
- opacity: 0.5;
498
- }
499
- }
500
- .editor-flex-center-justify-py-8 {
501
- display: flex;
502
- align-items: center;
503
- justify-content: center;
504
- padding-top: 2rem;
505
- padding-bottom: 2rem;
797
+ .editor-animate-spin {
798
+ animation: spin 1s linear infinite;
506
799
  }
507
- .editor-object-cover {
508
- object-fit: cover;
800
+ .editor-rotate-90 {
801
+ transform: rotate(90deg);
509
802
  }
510
- .editor-sr-only {
511
- position: absolute;
512
- width: 1px;
513
- height: 1px;
514
- padding: 0;
515
- margin: -1px;
516
- overflow: hidden;
517
- clip: rect(0, 0, 0, 0);
518
- white-space: nowrap;
519
- border-width: 0;
803
+ .editor-resize-none {
804
+ resize: none;
520
805
  }
521
806
  .editor-icon-xs {
522
- width: 0.75rem;
523
- height: 0.75rem;
807
+ width: 12px;
808
+ height: 12px;
809
+ flex-shrink: 0;
524
810
  }
525
811
  .editor-icon-sm {
526
- width: 1rem;
527
- height: 1rem;
812
+ width: 16px;
813
+ height: 16px;
814
+ flex-shrink: 0;
528
815
  }
529
816
  .editor-icon-md {
530
- width: 1.25rem;
531
- height: 1.25rem;
817
+ width: 20px;
818
+ height: 20px;
819
+ flex-shrink: 0;
532
820
  }
533
821
  .editor-icon-lg {
534
- width: 1.5rem;
535
- height: 1.5rem;
822
+ width: 24px;
823
+ height: 24px;
824
+ flex-shrink: 0;
536
825
  }
537
826
  .editor-icon-xl {
538
- width: 2rem;
539
- height: 2rem;
827
+ width: 32px;
828
+ height: 32px;
829
+ flex-shrink: 0;
540
830
  }
541
831
  .editor-typography-p {
542
- line-height: 1.75rem;
832
+ line-height: 1.75;
543
833
  }
544
834
  .editor-typography-p:not(:first-child) {
545
- margin-top: 1.5rem;
835
+ margin-top: 24px;
836
+ }
837
+ .editor-typography-p-small {
838
+ font-size: 0.875rem;
839
+ line-height: 1.375;
840
+ font-weight: 500;
841
+ line-height: 1;
842
+ }
843
+ .editor-typography-span-small-muted {
844
+ font-size: 0.875rem;
845
+ line-height: 1.375;
846
+ color: var(--muted-foreground);
847
+ }
848
+ .editor-toggle-group {
849
+ display: flex;
850
+ align-items: center;
851
+ justify-content: center;
852
+ flex-wrap: wrap;
853
+ gap: 4px;
854
+ }
855
+ .editor-toolbar-item,
856
+ .editor-toggle-group-item {
857
+ display: flex;
858
+ align-items: center;
859
+ justify-content: center;
860
+ border-radius: var(--radius, 8px);
861
+ font-size: 0.875rem;
862
+ line-height: 1.375;
863
+ font-weight: 500;
864
+ color: var(--foreground);
865
+ transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
866
+ cursor: pointer;
867
+ line-height: 1;
868
+ padding: 8px;
869
+ }
870
+ .editor-toolbar-item:hover:not(:disabled):not([data-state=on]):not([data-state=active]),
871
+ .editor-toggle-group-item:hover:not(:disabled):not([data-state=on]):not([data-state=active]) {
872
+ transform: translateY(-1px);
873
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
874
+ }
875
+ .editor-toolbar-item:active:not(:disabled),
876
+ .editor-toggle-group-item:active:not(:disabled) {
877
+ transform: translateY(0) scale(0.98);
878
+ box-shadow: none;
879
+ filter: brightness(0.95);
880
+ }
881
+ .editor-toolbar-item--size-sm,
882
+ .editor-toggle-group-item--size-sm {
883
+ padding: 4px;
884
+ font-size: 0.75rem;
885
+ }
886
+ .editor-toolbar-item--size-lg,
887
+ .editor-toggle-group-item--size-lg {
888
+ padding: 12px;
889
+ font-size: 1rem;
890
+ }
891
+ .editor-toolbar-item--outline,
892
+ .editor-toggle-group-item--outline {
893
+ border-color: var(--border);
894
+ }
895
+ .editor-toolbar-item--outline:hover,
896
+ .editor-toggle-group-item--outline:hover {
897
+ background-color: var(--accent, #f1f5f9);
898
+ border-color: var(--accent, #f1f5f9);
899
+ color: var(--accent-foreground, #0f172a) !important;
900
+ }
901
+ .editor-toolbar-item:hover,
902
+ .editor-toggle-group-item:hover {
903
+ background-color: var(--muted);
904
+ color: var(--muted-foreground);
905
+ }
906
+ .editor-toolbar-item[data-state=on],
907
+ .editor-toolbar-item[data-state=active],
908
+ .editor-toggle-group-item[data-state=on],
909
+ .editor-toggle-group-item[data-state=active] {
910
+ background-color: var(--accent, #f1f5f9);
911
+ color: var(--accent-foreground, #0f172a) !important;
912
+ border-color: var(--accent, #f1f5f9);
913
+ }
914
+ .editor-toolbar-item[data-state=on]:hover,
915
+ .editor-toolbar-item[data-state=active]:hover,
916
+ .editor-toggle-group-item[data-state=on]:hover,
917
+ .editor-toggle-group-item[data-state=active]:hover {
918
+ transform: translateY(-1px);
919
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
920
+ background-color: color-mix(in srgb, var(--accent, #f1f5f9), black 10%);
921
+ border-color: var(--accent, #f1f5f9);
922
+ }
923
+ .editor-toolbar-item:disabled,
924
+ .editor-toggle-group-item:disabled {
925
+ pointer-events: none;
926
+ opacity: 0.5;
927
+ }
928
+ .editor-toolbar-item {
929
+ width: 36px;
930
+ height: 36px;
931
+ padding: 0;
932
+ background-color: var(--background);
933
+ border: 1px solid var(--border);
934
+ }
935
+ .editor-toolbar-item--lg {
936
+ width: 40px;
937
+ height: 40px;
938
+ min-height: 40px;
939
+ }
940
+ .editor-toolbar-item--w-fit {
941
+ width: fit-content;
942
+ }
943
+ .editor-toolbar-item--w-auto {
944
+ width: auto;
945
+ padding-left: 8px;
946
+ padding-right: 8px;
546
947
  }
547
- .editor-typography-p-small {
548
- font-size: 0.875rem;
549
- font-weight: 500;
550
- line-height: 1;
948
+ .editor-toolbar-item--gap-sm {
949
+ gap: 4px;
551
950
  }
552
- .editor-typography-span-small-muted {
553
- font-size: 0.875rem;
554
- color: var(--muted-foreground);
951
+ .editor-toolbar-item--text-center {
952
+ text-align: center;
555
953
  }
556
- .editor-toggle-group {
954
+ .editor-toolbar-select-trigger {
557
955
  display: flex;
558
- flex-wrap: wrap;
559
- align-items: center;
560
- justify-content: center;
561
- gap: 0.25rem;
562
- }
563
- .editor-toggle-group-item {
564
- display: inline-flex;
956
+ justify-content: space-between;
565
957
  align-items: center;
566
- justify-content: center;
567
- border-radius: var(--radius);
958
+ height: auto;
959
+ width: 220px;
960
+ min-width: 220px;
961
+ min-height: 36px;
962
+ width: auto;
963
+ gap: 8px;
964
+ padding: 6px 8px;
568
965
  font-size: 0.875rem;
966
+ line-height: 1.375;
569
967
  font-weight: 500;
570
- background-color: transparent;
571
- color: var(--foreground);
572
- transition: all 0.2s;
573
- cursor: pointer;
574
- border: 1px solid transparent;
575
- padding: 0.5rem;
576
- line-height: 1;
577
- }
578
- .editor-toggle-group-item:hover {
579
- background-color: var(--muted);
580
- color: var(--muted-foreground);
968
+ border: 1px solid var(--border);
969
+ border-radius: var(--radius, 8px);
970
+ transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
581
971
  }
582
- .editor-toggle-group-item[data-state=on] {
583
- background-color: var(--accent, #f1f5f9);
584
- color: var(--accent-foreground, #0f172a) !important;
972
+ .editor-toolbar-select-trigger:hover:not(:disabled):not([data-state=on]):not([data-state=active]) {
973
+ transform: translateY(-1px);
974
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
585
975
  }
586
- .editor-toggle-group-item--size-sm {
587
- padding: 0.25rem;
588
- font-size: 0.75rem;
976
+ .editor-toolbar-select-trigger:active:not(:disabled) {
977
+ transform: translateY(0) scale(0.98);
978
+ box-shadow: none;
979
+ filter: brightness(0.95);
589
980
  }
590
- .editor-toggle-group-item--size-lg {
591
- padding: 0.75rem;
592
- font-size: 1rem;
981
+ .editor-toolbar-select-trigger:focus:focus-visible {
982
+ outline: none;
983
+ box-shadow: 0 0 0 2px var(--ring), 0 0 0 4px var(--background, transparent);
593
984
  }
594
- .editor-toggle-group-item--outline {
595
- border-color: var(--border);
985
+ .editor-toolbar-select-trigger--w-md {
986
+ width: 220px;
987
+ min-width: 220px;
596
988
  }
597
- .editor-toggle-group-item--outline:hover {
598
- background-color: var(--accent, #f1f5f9);
599
- border-color: var(--accent, #f1f5f9);
989
+ .editor-toolbar-select-icon {
990
+ width: 16px;
991
+ height: 16px;
992
+ flex-shrink: 0;
993
+ display: flex;
994
+ align-items: center;
995
+ justify-content: center;
996
+ margin-right: 8px;
600
997
  }
601
- .editor-toggle-group-item:disabled {
602
- pointer-events: none;
603
- opacity: 0.5;
998
+ .editor-format-select-trigger {
999
+ width: 72px !important;
1000
+ min-width: 72px !important;
1001
+ flex-shrink: 0;
604
1002
  }
605
1003
  .editor-btn {
606
1004
  display: flex;
607
1005
  align-items: center;
608
1006
  justify-content: center;
1007
+ gap: 8px;
609
1008
  white-space: nowrap;
610
- border-radius: var(--radius);
1009
+ border-radius: var(--radius, 8px);
611
1010
  font-weight: 500;
612
- transition-property:
613
- color,
614
- background-color,
615
- border-color,
616
- text-decoration-color,
617
- fill,
618
- stroke;
619
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
620
- transition-duration: 150ms;
621
- font-size: 14px;
622
- line-height: 20px;
1011
+ transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
1012
+ font-size: 0.875rem;
1013
+ line-height: 1.375;
623
1014
  }
624
1015
  .editor-btn:focus-visible {
625
1016
  outline: none;
626
1017
  box-shadow: 0 0 0 2px var(--ring), 0 0 0 4px var(--background, transparent);
627
1018
  }
628
1019
  .editor-btn {
629
- border: 1px solid var(--input);
1020
+ border: 1px solid transparent;
630
1021
  cursor: pointer;
1022
+ user-select: none;
1023
+ position: relative;
1024
+ padding: 8px 16px;
1025
+ box-sizing: border-box;
1026
+ }
1027
+ .editor-btn:hover:not(:disabled):not([data-state=on]):not([data-state=active]) {
1028
+ transform: translateY(-1px);
1029
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
1030
+ }
1031
+ .editor-btn:active:not(:disabled) {
1032
+ transform: translateY(0) scale(0.98);
1033
+ box-shadow: none;
1034
+ filter: brightness(0.95);
631
1035
  }
632
1036
  .editor-btn:disabled {
633
1037
  pointer-events: none;
634
1038
  opacity: 0.5;
1039
+ cursor: not-allowed;
635
1040
  }
636
- .editor-btn[data-state=on] {
1041
+ .editor-btn--loading {
1042
+ cursor: wait;
1043
+ }
1044
+ .editor-btn__loader {
1045
+ position: absolute;
1046
+ inset: 0;
1047
+ left: 50%;
1048
+ top: 50%;
1049
+ transform: translate(-50%, -50%);
1050
+ }
1051
+ .editor-btn__content {
1052
+ display: flex;
1053
+ align-items: center;
1054
+ gap: 8px;
1055
+ transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1);
1056
+ }
1057
+ .editor-btn[data-state=on],
1058
+ .editor-btn[data-state=active] {
637
1059
  background-color: var(--accent, #f1f5f9);
638
1060
  color: var(--accent-foreground, #0f172a) !important;
639
1061
  border-color: var(--accent, #f1f5f9);
@@ -642,25 +1064,31 @@
642
1064
  background-color: var(--primary);
643
1065
  color: var(--primary-foreground);
644
1066
  border-color: var(--primary);
1067
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
645
1068
  }
646
1069
  .editor-btn--default:hover {
647
1070
  background-color: color-mix(in srgb, var(--primary), black 10%);
1071
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
648
1072
  }
649
1073
  .editor-btn--destructive {
650
1074
  background-color: var(--destructive);
651
1075
  color: var(--destructive-foreground);
652
1076
  border-color: var(--destructive);
1077
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
653
1078
  }
654
1079
  .editor-btn--destructive:hover {
655
1080
  background-color: color-mix(in srgb, var(--destructive), black 10%);
1081
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
656
1082
  }
657
1083
  .editor-btn--outline {
658
1084
  border-color: var(--input);
659
1085
  background-color: var(--background);
1086
+ color: var(--foreground);
660
1087
  }
661
1088
  .editor-btn--outline:hover {
662
- background-color: var(--accent, #f1f5f9);
663
- color: var(--accent-foreground, #0f172a);
1089
+ background-color: var(--accent);
1090
+ color: var(--accent-foreground);
1091
+ border-color: var(--accent);
664
1092
  }
665
1093
  .editor-btn--secondary {
666
1094
  background-color: var(--secondary);
@@ -673,55 +1101,71 @@
673
1101
  .editor-btn--ghost {
674
1102
  background-color: transparent;
675
1103
  border-color: transparent;
1104
+ color: var(--foreground);
676
1105
  }
677
1106
  .editor-btn--ghost:hover {
678
- background-color: var(--accent, #f1f5f9);
679
- color: var(--accent-foreground, #0f172a);
1107
+ background-color: var(--accent);
1108
+ color: var(--accent-foreground);
680
1109
  }
681
1110
  .editor-btn--link {
682
1111
  color: var(--primary);
683
1112
  text-decoration-line: underline;
684
1113
  text-underline-offset: 4px;
685
1114
  background-color: transparent;
1115
+ border: none;
1116
+ padding: 0;
1117
+ height: auto;
686
1118
  }
687
1119
  .editor-btn--link:hover {
688
1120
  text-decoration-line: underline;
1121
+ transform: none;
1122
+ box-shadow: none;
689
1123
  }
690
1124
  .editor-btn {
691
1125
  }
692
1126
  .editor-btn--size-default {
693
- height: 2.25rem;
694
- padding-left: 1rem;
695
- padding-right: 1rem;
1127
+ height: 36px;
1128
+ padding: 0 16px;
696
1129
  }
697
1130
  .editor-btn--size-sm {
698
- height: 2rem;
699
- border-radius: calc(var(--radius) - 2px);
700
- padding-left: 0.75rem;
701
- padding-right: 0.75rem;
1131
+ height: 32px;
1132
+ border-radius: calc(var(--radius, 8px) - 2px);
1133
+ padding: 0 12px;
702
1134
  font-size: 0.75rem;
703
1135
  }
704
1136
  .editor-btn--size-md {
705
- height: 2.25rem;
706
- width: 2.25rem;
707
- padding: 0;
1137
+ height: 36px;
1138
+ padding: 0 16px;
708
1139
  }
709
1140
  .editor-btn--size-lg {
710
- height: 2.5rem;
711
- border-radius: calc(var(--radius) + 2px);
712
- padding-left: 2rem;
713
- padding-right: 2rem;
714
- }
715
- .editor-btn--size-icon {
716
- height: 2.25rem;
717
- width: 2.25rem;
718
- padding: 0;
1141
+ height: 40px;
1142
+ border-radius: var(--radius, 8px);
1143
+ padding: 0 24px;
1144
+ }
1145
+ .editor-btn--size-icon,
1146
+ .editor-btn.editor-btn--size-icon,
1147
+ .editor-btn button.editor-btn--size-icon {
1148
+ width: 36px !important;
1149
+ height: 36px !important;
1150
+ min-width: 36px !important;
1151
+ min-height: 36px !important;
1152
+ flex-shrink: 0;
1153
+ padding: 0 !important;
719
1154
  }
720
1155
  .editor-button-group {
721
1156
  display: flex;
722
- flex-wrap: wrap;
723
1157
  align-items: center;
724
- gap: 0.25rem;
1158
+ flex-wrap: wrap;
1159
+ gap: 4px;
1160
+ }
1161
+ .editor-btn-icon-lg {
1162
+ width: 40px;
1163
+ height: 40px;
1164
+ min-height: 40px;
1165
+ }
1166
+ .editor-btn-icon-md {
1167
+ width: 36px;
1168
+ height: 36px;
725
1169
  }
726
1170
  .editor-separator {
727
1171
  background-color: var(--border);
@@ -738,27 +1182,32 @@
738
1182
  }
739
1183
  .editor-input {
740
1184
  display: flex;
741
- height: 2.25rem;
1185
+ align-items: center;
1186
+ height: 36px;
742
1187
  width: 100%;
743
- border-radius: var(--radius);
1188
+ border-radius: var(--radius, 8px);
744
1189
  border: 1px solid var(--input);
745
1190
  background-color: var(--background);
746
- padding-left: 0.75rem;
747
- padding-right: 0.75rem;
748
- padding-top: 0.5rem;
749
- padding-bottom: 0.5rem;
750
- font-size: 14px;
751
- line-height: 20px;
1191
+ padding: 8px 12px;
1192
+ font-size: 0.875rem;
1193
+ line-height: 1.375;
752
1194
  }
753
1195
  .editor-input::file-selector-button {
754
1196
  border: 0;
755
1197
  background-color: transparent;
756
1198
  font-size: 0.875rem;
1199
+ line-height: 1.375;
757
1200
  font-weight: 500;
758
1201
  }
759
1202
  .editor-input::placeholder {
760
1203
  color: var(--muted-foreground);
761
1204
  }
1205
+ .editor-input:hover:not(:disabled):not([readonly]) {
1206
+ background-color: color-mix(in srgb, var(--background), black 3%);
1207
+ border-color: var(--accent, #f1f5f9);
1208
+ transform: translateY(-1px);
1209
+ box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
1210
+ }
762
1211
  .editor-input:focus {
763
1212
  border-color: var(--primary);
764
1213
  box-shadow: 0 0 0 2px var(--ring);
@@ -772,15 +1221,6 @@
772
1221
  cursor: not-allowed;
773
1222
  opacity: 0.5;
774
1223
  }
775
- .editor-input:hover:not(:disabled):not([readonly]) {
776
- background-color: color-mix(in srgb, var(--background), black 3%);
777
- color: black !important;
778
- border-color: var(--accent, #f1f5f9);
779
- transform: translateY(-1px);
780
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
781
- }
782
- .editor-input {
783
- }
784
1224
  .editor-input::-webkit-outer-spin-button,
785
1225
  .editor-input::-webkit-inner-spin-button {
786
1226
  -webkit-appearance: none;
@@ -789,6 +1229,23 @@
789
1229
  .editor-input[type=number] {
790
1230
  -moz-appearance: textfield;
791
1231
  }
1232
+ .editor-input-lg {
1233
+ height: 44px;
1234
+ width: 100%;
1235
+ }
1236
+ .editor-input-wrapper {
1237
+ display: flex;
1238
+ align-items: center;
1239
+ }
1240
+ .editor-input-group-item {
1241
+ height: 32px;
1242
+ -moz-appearance: textfield;
1243
+ }
1244
+ .editor-input-group-item::-webkit-inner-spin-button,
1245
+ .editor-input-group-item::-webkit-outer-spin-button {
1246
+ -webkit-appearance: none;
1247
+ margin: 0;
1248
+ }
792
1249
  .editor-input-group-item--first {
793
1250
  border-top-right-radius: 0;
794
1251
  border-bottom-right-radius: 0;
@@ -796,15 +1253,17 @@
796
1253
  .editor-input-group-item--middle {
797
1254
  border-radius: 0;
798
1255
  border-left-width: 0;
1256
+ margin-inline-start: -1px;
799
1257
  }
800
1258
  .editor-input-group-item--last {
801
1259
  border-top-left-radius: 0;
802
1260
  border-bottom-left-radius: 0;
803
1261
  border-left-width: 0;
1262
+ margin-inline-start: -1px;
804
1263
  }
805
1264
  .editor-label {
806
- font-size: 14px;
807
- line-height: 20px;
1265
+ font-size: 0.875rem;
1266
+ line-height: 1.375;
808
1267
  font-weight: 500;
809
1268
  line-height: 1;
810
1269
  }
@@ -812,44 +1271,34 @@
812
1271
  cursor: not-allowed;
813
1272
  opacity: 0.7;
814
1273
  }
815
- @keyframes editor-dialog-zoom-in {
816
- from {
817
- opacity: 0;
818
- transform: translate(-50%, -48%) scale(0.95);
819
- }
820
- to {
821
- opacity: 1;
822
- transform: translate(-50%, -50%) scale(1);
823
- }
1274
+ .editor-label--normal {
1275
+ font-weight: 400;
1276
+ cursor: pointer;
824
1277
  }
825
- @keyframes editor-fade-in {
826
- from {
827
- opacity: 0;
828
- }
829
- to {
830
- opacity: 1;
831
- }
1278
+ .editor-checkbox {
1279
+ width: 16px;
1280
+ height: 16px;
1281
+ border-radius: calc(var(--radius, 8px) - 2px);
1282
+ border: 1px solid var(--input);
1283
+ cursor: pointer;
832
1284
  }
833
- @keyframes editor-popover-zoom-in {
834
- from {
835
- opacity: 0;
836
- transform: scale(0.95);
837
- }
838
- to {
839
- opacity: 1;
840
- transform: scale(1);
841
- }
1285
+ .editor-checkbox:checked {
1286
+ background-color: var(--primary);
1287
+ border-color: var(--primary);
842
1288
  }
843
1289
  .editor-dialog-overlay {
844
1290
  position: fixed;
845
1291
  inset: 0;
846
1292
  z-index: 50;
847
1293
  background-color: rgba(0, 0, 0, 0.4);
848
- backdrop-filter: blur(4px);
849
- animation: editor-fade-in 0.2s ease-out;
850
1294
  }
851
- .editor-dialog-overlay[data-state=open] {
852
- animation: editor-fade-in 0.2s ease-out;
1295
+ @supports (backdrop-filter: blur(4px)) {
1296
+ .editor-dialog-overlay {
1297
+ backdrop-filter: blur(4px);
1298
+ }
1299
+ }
1300
+ .editor-dialog-overlay {
1301
+ animation: editor-fade-in 200ms cubic-bezier(0.4, 0, 0.2, 1) ease-out;
853
1302
  }
854
1303
  .editor-dialog-content {
855
1304
  position: fixed;
@@ -860,27 +1309,28 @@
860
1309
  width: 100%;
861
1310
  max-width: 32rem;
862
1311
  transform: translate(-50%, -50%);
863
- gap: 1.5rem;
1312
+ gap: 20px;
864
1313
  border: 1px solid var(--border);
865
1314
  background-color: var(--background);
866
- padding: 1.5rem;
1315
+ padding: 20px;
867
1316
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
868
- border-radius: calc(var(--radius) + 4px);
869
- animation: editor-dialog-zoom-in 0.2s cubic-bezier(0.16, 1, 0.3, 1);
1317
+ border-radius: calc(var(--radius, 8px) + 4px);
1318
+ outline: none;
1319
+ animation: editor-dialog-zoom-in 200ms cubic-bezier(0.4, 0, 0.2, 1) cubic-bezier(0.16, 1, 0.3, 1);
870
1320
  }
871
1321
  .editor-dialog-content--lg {
872
1322
  max-width: 50rem;
873
1323
  }
874
1324
  .editor-dialog-content__close {
875
1325
  position: absolute;
876
- right: 1rem;
877
- top: 1rem;
878
- border-radius: var(--radius);
1326
+ right: 16px;
1327
+ top: 16px;
1328
+ border-radius: var(--radius, 8px);
879
1329
  opacity: 0.7;
880
1330
  background: transparent;
881
1331
  border: none;
882
1332
  cursor: pointer;
883
- transition: opacity 0.2s;
1333
+ transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1);
884
1334
  }
885
1335
  .editor-dialog-content__close:hover {
886
1336
  opacity: 1;
@@ -892,7 +1342,7 @@
892
1342
  .editor-dialog-header {
893
1343
  display: flex;
894
1344
  flex-direction: column;
895
- gap: 0.375rem;
1345
+ gap: 4px;
896
1346
  text-align: center;
897
1347
  }
898
1348
  @media (min-width: 640px) {
@@ -903,19 +1353,20 @@
903
1353
  .editor-dialog-header__title {
904
1354
  font-size: 1.125rem;
905
1355
  font-weight: 600;
906
- line-height: 1;
1356
+ line-height: 1.25;
907
1357
  margin: 0;
908
1358
  }
909
1359
  .editor-dialog-header__description {
910
- font-size: 14px;
911
- line-height: 20px;
1360
+ font-size: 0.875rem;
1361
+ line-height: 1.375;
912
1362
  color: var(--muted-foreground);
913
1363
  margin: 0;
914
1364
  }
915
1365
  .editor-dialog-footer {
916
1366
  display: flex;
1367
+ flex-direction: column;
917
1368
  flex-direction: column-reverse;
918
- gap: 0.5rem;
1369
+ gap: 8px;
919
1370
  }
920
1371
  @media (min-width: 640px) {
921
1372
  .editor-dialog-footer {
@@ -926,28 +1377,27 @@
926
1377
  .editor-popover-content {
927
1378
  z-index: 50;
928
1379
  width: 18rem;
929
- border-radius: var(--radius);
1380
+ border-radius: var(--radius, 8px);
930
1381
  border: 1px solid var(--border);
931
1382
  background-color: var(--popover);
932
1383
  color: var(--popover-foreground);
933
1384
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
934
- padding: 1rem;
1385
+ padding: 16px;
935
1386
  outline: none;
936
- animation: editor-popover-zoom-in 0.1s ease-out;
1387
+ animation: editor-popover-zoom-in 150ms cubic-bezier(0.4, 0, 0.2, 1);
937
1388
  }
938
1389
  .editor-select {
939
1390
  display: flex;
940
- height: 2.25rem;
941
- width: 100%;
942
1391
  align-items: center;
1392
+ height: 36px;
1393
+ width: 100%;
943
1394
  justify-content: space-between;
944
- border-radius: var(--radius);
1395
+ border-radius: var(--radius, 8px);
945
1396
  border: 1px solid var(--input);
946
1397
  background-color: var(--background);
947
- padding-left: 0.75rem;
948
- padding-right: 0.75rem;
949
- font-size: 14px;
950
- line-height: 20px;
1398
+ padding: 0 12px;
1399
+ font-size: 0.875rem;
1400
+ line-height: 1.375;
951
1401
  }
952
1402
  .editor-select:focus {
953
1403
  outline: none;
@@ -960,24 +1410,21 @@
960
1410
  .editor-select {
961
1411
  }
962
1412
  .editor-select--size-default {
963
- height: 2.25rem;
964
- padding-left: 0.75rem;
965
- padding-right: 0.75rem;
1413
+ height: 36px;
1414
+ padding: 0 12px;
966
1415
  }
967
1416
  .editor-select--size-sm {
968
- height: 2rem;
969
- padding-left: 0.5rem;
970
- padding-right: 0.5rem;
1417
+ height: 32px;
1418
+ padding: 0 8px;
971
1419
  font-size: 0.75rem;
972
1420
  }
973
1421
  .editor-select--size-lg {
974
- height: 2.5rem;
975
- padding-left: 1rem;
976
- padding-right: 1rem;
1422
+ height: 40px;
1423
+ padding: 0 16px;
977
1424
  }
978
1425
  .editor-select--size-icon {
979
- height: 2.25rem;
980
- width: 2.25rem;
1426
+ width: 36px;
1427
+ height: 36px;
981
1428
  padding: 0;
982
1429
  justify-content: center;
983
1430
  }
@@ -986,25 +1433,25 @@
986
1433
  }
987
1434
  .editor-select--w-auto {
988
1435
  width: auto;
989
- padding-left: 0.75rem;
990
- padding-right: 0.75rem;
1436
+ padding: 0 12px;
991
1437
  min-width: 7rem;
992
1438
  justify-content: space-between;
993
1439
  }
994
1440
  .editor-select--gap-sm {
995
- gap: 0.5rem;
1441
+ gap: 8px;
996
1442
  }
997
1443
  .editor-select-item {
998
1444
  position: relative;
999
1445
  display: flex;
1446
+ align-items: center;
1000
1447
  width: 100%;
1001
1448
  cursor: pointer;
1002
1449
  user-select: none;
1003
- align-items: center;
1004
- gap: 0.5rem;
1005
- border-radius: 0.125rem;
1006
- padding: 0.375rem 0.5rem 0.375rem 2rem;
1450
+ gap: 8px;
1451
+ border-radius: calc(var(--radius, 8px) - 2px);
1452
+ padding: 0.375rem 8px 0.375rem 20px;
1007
1453
  font-size: 0.875rem;
1454
+ line-height: 1.375;
1008
1455
  outline: none;
1009
1456
  }
1010
1457
  .editor-select-item:hover {
@@ -1017,40 +1464,54 @@
1017
1464
  }
1018
1465
  .editor-select-item__check {
1019
1466
  position: absolute;
1020
- left: 0.5rem;
1467
+ left: 4px;
1021
1468
  display: flex;
1022
- height: 0.875rem;
1023
- width: 0.875rem;
1469
+ width: 16px;
1470
+ height: 16px;
1471
+ flex-shrink: 0;
1024
1472
  align-items: center;
1025
1473
  justify-content: center;
1026
1474
  }
1027
1475
  .editor-select-label {
1028
- padding: 0.375rem 0.5rem 0.375rem 2rem;
1476
+ padding: 0.375rem 8px 0.375rem 20px;
1029
1477
  font-size: 0.875rem;
1030
1478
  font-weight: 600;
1031
1479
  }
1032
1480
  .editor-block-format-label {
1033
- max-width: 80px;
1481
+ flex: 1 1 auto;
1482
+ min-width: 0;
1483
+ max-width: none;
1034
1484
  overflow: hidden;
1035
1485
  text-overflow: ellipsis;
1036
1486
  white-space: nowrap;
1487
+ line-height: 1.25;
1488
+ text-align: left;
1037
1489
  }
1038
1490
  .editor-toggle {
1039
1491
  display: inline-flex;
1040
1492
  align-items: center;
1041
1493
  justify-content: center;
1042
- border-radius: calc(var(--radius) - 2px);
1494
+ border-radius: var(--radius, 8px);
1043
1495
  font-size: 0.875rem;
1044
1496
  font-weight: 500;
1045
1497
  transition-property:
1046
1498
  color,
1047
1499
  background-color,
1048
1500
  border-color;
1049
- transition-duration: 150ms;
1501
+ transition-duration: 150ms cubic-bezier(0.4, 0, 0.2, 1);
1050
1502
  background-color: transparent;
1051
1503
  border: 1px solid transparent;
1052
1504
  cursor: pointer;
1053
1505
  }
1506
+ .editor-toggle:hover:not(:disabled):not([data-state=on]):not([data-state=active]) {
1507
+ transform: translateY(-1px);
1508
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
1509
+ }
1510
+ .editor-toggle:active:not(:disabled) {
1511
+ transform: translateY(0) scale(0.98);
1512
+ box-shadow: none;
1513
+ filter: brightness(0.95);
1514
+ }
1054
1515
  .editor-toggle:hover {
1055
1516
  background-color: var(--accent, #f1f5f9);
1056
1517
  color: var(--accent-foreground, #0f172a);
@@ -1067,178 +1528,59 @@
1067
1528
  background-color: var(--accent, #f1f5f9);
1068
1529
  color: var(--accent-foreground, #0f172a) !important;
1069
1530
  }
1531
+ .editor-toggle[data-state=on]:hover {
1532
+ transform: translateY(-1px);
1533
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
1534
+ background-color: color-mix(in srgb, var(--accent, #f1f5f9), black 10%);
1535
+ border-color: var(--accent, #f1f5f9);
1536
+ }
1070
1537
  .editor-toggle--outline {
1071
1538
  border-color: var(--input);
1072
1539
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
1073
1540
  }
1074
1541
  .editor-toggle--outline:hover {
1075
- background-color: color-mix(in srgb, var(--accent, #f1f5f9), black 50%);
1542
+ background-color: color-mix(in srgb, var(--accent, #f1f5f9), black 5%);
1076
1543
  color: var(--accent-foreground, #0f172a);
1077
1544
  }
1078
1545
  .editor-toggle--ghost:hover {
1079
- background-color: color-mix(in srgb, var(--accent, #f1f5f9), black 50%);
1546
+ background-color: color-mix(in srgb, var(--accent, #f1f5f9), black 5%);
1080
1547
  color: var(--accent-foreground, #0f172a);
1081
1548
  }
1082
1549
  .editor-toggle--size-default {
1083
- height: 2.25rem;
1084
- padding-left: 0.75rem;
1085
- padding-right: 0.75rem;
1550
+ height: 36px;
1551
+ padding-left: 12px;
1552
+ padding-right: 12px;
1086
1553
  }
1087
1554
  .editor-toggle--size-sm {
1088
- height: 2rem;
1089
- padding-left: 0.5rem;
1090
- padding-right: 0.5rem;
1555
+ height: 32px;
1556
+ padding-left: 8px;
1557
+ padding-right: 8px;
1091
1558
  font-size: 0.75rem;
1092
1559
  }
1093
1560
  .editor-toggle--size-lg {
1094
- height: 2.5rem;
1095
- padding-left: 0.75rem;
1096
- padding-right: 0.75rem;
1097
- }
1098
- .editor-icon-sm {
1099
- width: 15px;
1100
- height: 15px;
1101
- }
1102
- .editor-icon-xs {
1103
- width: 14px;
1104
- height: 14px;
1105
- }
1106
- .editor-loader {
1107
- width: 24px;
1108
- height: 24px;
1109
- animation: spin 1s linear infinite;
1110
- color: var(--muted-foreground);
1111
- }
1112
- .editor-checkbox {
1113
- height: 16px;
1114
- width: 16px;
1115
- border-radius: calc(var(--radius, 8px) - 2px);
1116
- border: 1px solid var(--input);
1117
- cursor: pointer;
1118
- }
1119
- .editor-checkbox:checked {
1120
- background-color: var(--primary);
1121
- border-color: var(--primary);
1122
- }
1123
- .editor-label--normal {
1124
- font-weight: 400;
1125
- cursor: pointer;
1126
- }
1127
- .editor-shrink-0 {
1128
- flex-shrink: 0;
1129
- }
1130
- .editor-flex-grow {
1131
- flex-grow: 1;
1132
- }
1133
- .editor-flex-1 {
1134
- flex: 1 1 0%;
1135
- }
1136
- .editor-flex-end {
1137
- display: flex;
1138
- justify-content: flex-end;
1139
- align-items: center;
1140
- gap: 4px;
1141
- flex-wrap: nowrap;
1142
- flex-shrink: 0;
1143
- }
1144
- .editor-flex-row-center {
1145
- display: flex;
1146
- align-items: center;
1147
- gap: 8px;
1148
- }
1149
- .editor-flex-row-center--pointer {
1150
- cursor: pointer;
1151
- }
1152
- .editor-flex-center-justify-py-8 {
1153
- display: flex;
1154
- align-items: center;
1155
- justify-content: center;
1156
- padding-top: 32px;
1157
- padding-bottom: 32px;
1158
- }
1159
- .editor-flex-col-gap-2 {
1160
- display: flex;
1161
- flex-direction: column;
1162
- gap: 8px;
1163
- }
1164
- .editor-flex-col-gap-4 {
1165
- display: flex;
1166
- flex-direction: column;
1167
- gap: 16px;
1168
- }
1169
- .editor-absolute-full {
1170
- position: absolute;
1171
- top: 0;
1172
- right: 0;
1173
- bottom: 0;
1174
- left: 0;
1175
- }
1176
- .editor-truncate {
1177
- overflow: hidden;
1178
- text-overflow: ellipsis;
1179
- white-space: nowrap;
1180
- }
1181
- .editor-object-cover {
1182
- object-fit: cover;
1183
- }
1184
- .editor-transition-transform {
1185
- transition-property: transform;
1186
- transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1187
- transition-duration: 150ms;
1188
- }
1189
- .editor-rotate-90 {
1190
- transform: rotate(90deg);
1191
- }
1192
- .editor-rounded-sm {
1193
- border-radius: calc(var(--radius) - 2px);
1194
- }
1195
- .editor-font-mono {
1196
- font-family:
1197
- ui-monospace,
1198
- SFMono-Regular,
1199
- Menlo,
1200
- Monaco,
1201
- Consolas,
1202
- "Liberation Mono",
1203
- "Courier New",
1204
- monospace;
1205
- }
1206
- .editor-mb-2 {
1207
- margin-bottom: 8px;
1208
- }
1209
- .editor-mb-3 {
1210
- margin-bottom: 12px;
1211
- }
1212
- .editor-mt-1 {
1213
- margin-top: 4px;
1214
- }
1215
- .editor-ml-auto {
1216
- margin-left: auto;
1217
- }
1218
- .editor-ml-4 {
1219
- margin-left: 16px;
1220
- }
1221
- .editor-w-14 {
1222
- width: 56px;
1223
- }
1224
- .editor-w-full {
1225
- width: 100%;
1226
- }
1227
- .editor-h-full {
1228
- height: 100%;
1561
+ height: 40px;
1562
+ padding-left: 12px;
1563
+ padding-right: 12px;
1229
1564
  }
1230
1565
  .editor-toolbar {
1231
1566
  position: sticky;
1232
1567
  top: 0;
1233
1568
  z-index: 20;
1234
1569
  display: flex;
1235
- flex-wrap: wrap;
1236
1570
  align-items: center;
1571
+ flex-wrap: wrap;
1237
1572
  gap: 4px;
1238
1573
  border-bottom: 1px solid var(--border);
1239
- border-top-left-radius: var(--radius);
1240
- border-top-right-radius: var(--radius);
1241
- background-color: white;
1574
+ border-top-left-radius: var(--radius, 8px);
1575
+ border-top-right-radius: var(--radius, 8px);
1576
+ background-color: rgba(255, 255, 255, 0.8);
1577
+ }
1578
+ @supports (backdrop-filter: blur(4px)) {
1579
+ .editor-toolbar {
1580
+ backdrop-filter: blur(4px);
1581
+ }
1582
+ }
1583
+ .editor-toolbar {
1242
1584
  padding: 4px;
1243
1585
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
1244
1586
  width: 100%;
@@ -1246,133 +1588,23 @@
1246
1588
  overflow-y: visible;
1247
1589
  white-space: normal;
1248
1590
  }
1249
- @supports (backdrop-filter: blur(4px)) {
1250
- .editor-toolbar {
1251
- background-color: rgba(255, 255, 255, 0.8);
1252
- backdrop-filter: blur(4px);
1253
- }
1254
- }
1255
1591
  .editor-toolbar-group {
1256
1592
  display: flex;
1257
- flex-wrap: wrap;
1258
1593
  align-items: center;
1259
1594
  gap: 4px;
1260
1595
  padding: 4px;
1261
- border-radius: var(--radius);
1262
- }
1263
- .editor-toolbar-item {
1264
- height: 36px;
1265
- width: 36px;
1266
- padding: 0;
1267
- border: 1px solid var(--border);
1268
- border-radius: var(--radius);
1269
- background-color: var(--background);
1270
- transition: all 0.2s;
1271
- }
1272
- .editor-toolbar-item:hover:not(:disabled):not([data-state=on]) {
1273
- background-color: var(--accent, #f1f5f9);
1274
- color: var(--accent-foreground, #0f172a);
1275
- border-color: var(--accent, #f1f5f9);
1276
- transform: translateY(-1px);
1277
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
1278
- }
1279
- .editor-toolbar-item:active:not(:disabled) {
1280
- transform: translateY(0);
1281
- box-shadow: none;
1282
- }
1283
- .editor-toolbar-item[data-state=on] {
1284
- background-color: var(--accent, #f1f5f9);
1285
- color: var(--accent-foreground, #0f172a) !important;
1286
- border-color: var(--accent, #f1f5f9);
1287
- }
1288
- .editor-toolbar-item--lg {
1289
- height: 40px !important;
1290
- width: 40px !important;
1291
- }
1292
- .editor-toolbar-item--w-fit {
1293
- width: fit-content;
1294
- }
1295
- .editor-toolbar-item--w-auto {
1296
- width: auto;
1297
- padding-left: 8px;
1298
- padding-right: 8px;
1299
- }
1300
- .editor-toolbar-item--gap-sm {
1301
- gap: 4px;
1302
- }
1303
- .editor-toolbar-item--bg-background {
1304
- background-color: var(--background);
1305
- }
1306
- .editor-toolbar-item--text-center {
1307
- text-align: center;
1596
+ border-radius: var(--radius, 8px);
1308
1597
  }
1309
1598
  .editor-toolbar-separator {
1310
1599
  height: 24px !important;
1311
1600
  margin-left: 4px;
1312
1601
  margin-right: 4px;
1313
1602
  }
1314
- .editor-toolbar-select-trigger {
1315
- height: 36px;
1316
- width: auto;
1317
- gap: 8px;
1318
- padding-left: 8px;
1319
- padding-right: 8px;
1320
- font-size: 12px;
1321
- font-weight: 500;
1322
- border: 1px solid var(--border);
1323
- border-radius: var(--radius);
1324
- transition: all 0.2s;
1325
- }
1326
- .editor-toolbar-select-trigger:hover:not(:disabled) {
1327
- background-color: var(--accent, #f1f5f9);
1328
- color: var(--accent-foreground, #0f172a);
1329
- border-color: var(--accent, #f1f5f9);
1330
- transform: translateY(-1px);
1331
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
1332
- }
1333
- .editor-toolbar-select-trigger:active:not(:disabled) {
1334
- transform: translateY(0);
1335
- box-shadow: none;
1336
- }
1337
- .editor-toolbar-select-trigger:focus {
1338
- box-shadow: 0 0 0 2px var(--ring);
1339
- outline: none;
1340
- }
1341
- .editor-toolbar-select-trigger--w-md {
1342
- width: 160px;
1343
- }
1344
- .editor-toolbar-select-icon {
1345
- height: 16px;
1346
- width: 16px;
1347
- display: flex;
1348
- align-items: center;
1349
- justify-content: center;
1350
- margin-right: 8px;
1351
- }
1352
- .editor-format-select-trigger {
1353
- width: 72px !important;
1354
- min-width: 72px !important;
1355
- flex-shrink: 0;
1356
- }
1357
- @keyframes editor-floating-zoom-in {
1358
- from {
1359
- opacity: 0;
1360
- transform: scale(0.95) translateY(4px);
1361
- }
1362
- to {
1363
- opacity: 1;
1364
- transform: scale(1) translateY(0);
1365
- }
1366
- }
1367
1603
  .editor-floating-toolbar {
1368
- background-color: rgba(var(--background-rgb, 255, 255, 255), 0.85);
1369
- backdrop-filter: blur(8px);
1370
1604
  position: absolute;
1371
1605
  top: 0;
1372
1606
  left: 0;
1373
1607
  display: flex;
1374
- max-width: 560px;
1375
- flex-wrap: wrap;
1376
1608
  align-items: center;
1377
1609
  gap: 4px;
1378
1610
  border-radius: var(--radius, 8px);
@@ -1380,16 +1612,27 @@
1380
1612
  padding: 4px;
1381
1613
  opacity: 0;
1382
1614
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
1383
- transition: opacity 200ms ease, transform 200ms ease;
1615
+ transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1), transform 200ms cubic-bezier(0.4, 0, 0.2, 1);
1384
1616
  will-change: transform;
1385
1617
  z-index: 50;
1386
1618
  }
1387
1619
  .editor-floating-toolbar--visible {
1388
1620
  opacity: 1;
1389
- animation: editor-floating-zoom-in 0.2s cubic-bezier(0.16, 1, 0.3, 1);
1621
+ animation: editor-floating-zoom-in 200ms cubic-bezier(0.4, 0, 0.2, 1) cubic-bezier(0.16, 1, 0.3, 1);
1622
+ }
1623
+ .editor-floating-toolbar {
1624
+ background-color: rgba(var(--background-rgb, 255, 255, 255), 0.85);
1625
+ }
1626
+ @supports (backdrop-filter: blur(8px)) {
1627
+ .editor-floating-toolbar {
1628
+ backdrop-filter: blur(8px);
1629
+ }
1630
+ }
1631
+ .editor-floating-toolbar {
1632
+ max-width: 560px;
1633
+ flex-wrap: wrap;
1390
1634
  }
1391
1635
  .editor-floating-text-format {
1392
- background-color: var(--background);
1393
1636
  position: absolute;
1394
1637
  top: 0;
1395
1638
  left: 0;
@@ -1401,28 +1644,31 @@
1401
1644
  padding: 4px;
1402
1645
  opacity: 0;
1403
1646
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
1404
- transition: opacity 200ms ease, transform 200ms ease;
1647
+ transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1), transform 200ms cubic-bezier(0.4, 0, 0.2, 1);
1405
1648
  will-change: transform;
1406
1649
  z-index: 50;
1407
1650
  }
1408
- @supports (backdrop-filter: blur(4px)) {
1651
+ .editor-floating-text-format--visible {
1652
+ opacity: 1;
1653
+ animation: editor-floating-zoom-in 200ms cubic-bezier(0.4, 0, 0.2, 1) cubic-bezier(0.16, 1, 0.3, 1);
1654
+ }
1655
+ .editor-floating-text-format {
1656
+ background-color: rgba(var(--background-rgb, 255, 255, 255), 0.8);
1657
+ }
1658
+ @supports (backdrop-filter: blur(8px)) {
1409
1659
  .editor-floating-text-format {
1410
- background-color: rgba(var(--background-rgb, 255, 255, 255), 0.8);
1411
1660
  backdrop-filter: blur(8px);
1412
1661
  }
1413
1662
  }
1414
- @supports (backdrop-filter: blur(4px)) {
1663
+ @supports (backdrop-filter: blur(8px)) {
1415
1664
  .dark .editor-floating-text-format {
1416
1665
  background-color: rgba(var(--background-rgb, 15, 15, 15), 0.8);
1666
+ backdrop-filter: blur(8px);
1417
1667
  }
1418
1668
  }
1419
1669
  .editor-floating-text-format:hover {
1420
1670
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
1421
1671
  }
1422
- .editor-floating-text-format--visible {
1423
- opacity: 1;
1424
- animation: editor-floating-zoom-in 0.2s cubic-bezier(0.16, 1, 0.3, 1);
1425
- }
1426
1672
  .editor-floating-text-format .editor-separator--vertical {
1427
1673
  height: 20px;
1428
1674
  width: 1px;
@@ -1434,11 +1680,11 @@
1434
1680
  .editor-floating-text-format .editor-toolbar-item {
1435
1681
  border: none;
1436
1682
  border-radius: calc(var(--radius, 8px) - 4px);
1437
- height: 30px;
1438
1683
  width: 30px;
1684
+ height: 30px;
1439
1685
  padding: 0;
1440
1686
  background-color: transparent;
1441
- transition: all 0.2s;
1687
+ transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
1442
1688
  display: flex;
1443
1689
  align-items: center;
1444
1690
  justify-content: center;
@@ -1450,17 +1696,17 @@
1450
1696
  color: var(--accent-foreground, #0f172a);
1451
1697
  }
1452
1698
  .editor-floating-text-format .editor-toggle-group-item[data-state=on],
1453
- .editor-floating-text-format .editor-btn[data-state=on],
1454
- .editor-floating-text-format .editor-toolbar-item[data-state=on] {
1455
- background-color: var(--accent, #f1f5f9);
1456
- color: var(--accent-foreground, #0f172a) !important;
1457
- font-weight: bold;
1458
- }
1699
+ .editor-floating-text-format .editor-toggle-group-item[data-state=active],
1459
1700
  .editor-floating-text-format .editor-toggle-group-item--active,
1701
+ .editor-floating-text-format .editor-btn[data-state=on],
1702
+ .editor-floating-text-format .editor-btn[data-state=active],
1460
1703
  .editor-floating-text-format .editor-btn--active,
1704
+ .editor-floating-text-format .editor-toolbar-item[data-state=on],
1705
+ .editor-floating-text-format .editor-toolbar-item[data-state=active],
1461
1706
  .editor-floating-text-format .editor-toolbar-item--active {
1462
1707
  background-color: var(--accent, #f1f5f9);
1463
1708
  color: var(--accent-foreground, #0f172a) !important;
1709
+ font-weight: 700;
1464
1710
  }
1465
1711
  .editor-floating-text-format .editor-floating-group,
1466
1712
  .editor-floating-text-format .editor-floating-group--lg {
@@ -1474,7 +1720,7 @@
1474
1720
  }
1475
1721
  .editor-list-color-dialog {
1476
1722
  padding: 8px 0;
1477
- animation: editor-fade-in 0.3s ease-out;
1723
+ animation: editor-fade-in 300ms cubic-bezier(0.4, 0, 0.2, 1);
1478
1724
  }
1479
1725
  .editor-list-color-trigger {
1480
1726
  height: 44px;
@@ -1487,19 +1733,17 @@
1487
1733
  border: 1px solid var(--input);
1488
1734
  padding: 0 16px;
1489
1735
  background-color: var(--background);
1490
- transition: all 0.2s;
1736
+ transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
1491
1737
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
1492
1738
  }
1493
- .editor-list-color-trigger:hover:not(:disabled):not([data-state=on]) {
1494
- background-color: var(--accent, #f1f5f9);
1495
- color: var(--accent-foreground, #0f172a);
1496
- border-color: var(--accent, #f1f5f9);
1739
+ .editor-list-color-trigger:hover:not(:disabled):not([data-state=on]):not([data-state=active]) {
1497
1740
  transform: translateY(-1px);
1498
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
1741
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
1499
1742
  }
1500
1743
  .editor-list-color-trigger:active:not(:disabled) {
1501
- transform: translateY(0);
1744
+ transform: translateY(0) scale(0.98);
1502
1745
  box-shadow: none;
1746
+ filter: brightness(0.95);
1503
1747
  }
1504
1748
  .editor-color-picker-content {
1505
1749
  display: flex;
@@ -1524,9 +1768,9 @@
1524
1768
  .editor-slider-root {
1525
1769
  position: relative;
1526
1770
  display: flex;
1771
+ align-items: center;
1527
1772
  width: 100%;
1528
1773
  touch-action: none;
1529
- align-items: center;
1530
1774
  user-select: none;
1531
1775
  }
1532
1776
  .editor-slider-root[data-disabled] {
@@ -1543,22 +1787,22 @@
1543
1787
  }
1544
1788
  .editor-slider-thumb {
1545
1789
  display: block;
1546
- height: 16px;
1547
1790
  width: 16px;
1791
+ height: 16px;
1548
1792
  border-radius: 9999px;
1549
1793
  border: 1px solid var(--border);
1550
1794
  background-color: var(--background);
1551
1795
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
1552
- transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
1796
+ transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1), border-color 150ms cubic-bezier(0.4, 0, 0.2, 1);
1553
1797
  }
1554
- .editor-slider-thumb:focus-visible {
1798
+ .editor-slider-thumb:focus-visible:focus-visible {
1555
1799
  outline: none;
1556
- box-shadow: 0 0 0 2px var(--ring);
1800
+ box-shadow: 0 0 0 2px var(--ring), 0 0 0 4px var(--background, transparent);
1557
1801
  }
1558
1802
  .editor-color-swatch {
1559
1803
  box-sizing: border-box;
1560
- height: 32px;
1561
1804
  width: 32px;
1805
+ height: 32px;
1562
1806
  border-radius: calc(var(--radius, 8px) - 2px);
1563
1807
  border: 1px solid var(--border);
1564
1808
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
@@ -1579,26 +1823,46 @@
1579
1823
  flex: 1;
1580
1824
  }
1581
1825
  .editor-color-preset-item__preview {
1582
- height: 12px;
1583
1826
  width: 12px;
1827
+ height: 12px;
1584
1828
  border-radius: 9999px;
1585
1829
  border: 1px solid var(--border);
1586
1830
  }
1587
1831
  .editor-color-preset-item__label {
1588
- font-family: monospace;
1589
- font-size: 12px;
1832
+ font-family:
1833
+ "JetBrains Mono",
1834
+ ui-monospace,
1835
+ SFMono-Regular,
1836
+ Menlo,
1837
+ Monaco,
1838
+ Consolas,
1839
+ "Liberation Mono",
1840
+ "Courier New",
1841
+ monospace;
1842
+ font-size: 0.875rem;
1843
+ line-height: 1.375;
1590
1844
  }
1591
1845
  .editor-color-value-text {
1592
- color: var(--muted-foreground);
1593
- font-family: monospace;
1594
- font-size: 12px;
1846
+ color: var(--muted-foreground, #64748b);
1847
+ font-family:
1848
+ "JetBrains Mono",
1849
+ ui-monospace,
1850
+ SFMono-Regular,
1851
+ Menlo,
1852
+ Monaco,
1853
+ Consolas,
1854
+ "Liberation Mono",
1855
+ "Courier New",
1856
+ monospace;
1857
+ font-size: 0.875rem;
1858
+ line-height: 1.375;
1595
1859
  font-variant-numeric: tabular-nums;
1596
1860
  }
1597
1861
  .editor-table-dialog {
1598
1862
  display: grid;
1599
1863
  gap: 20px;
1600
1864
  padding: 8px 0;
1601
- animation: editor-fade-in 0.3s ease-out;
1865
+ animation: editor-fade-in 300ms cubic-bezier(0.4, 0, 0.2, 1);
1602
1866
  }
1603
1867
  .editor-table-dialog__group {
1604
1868
  display: flex;
@@ -1611,16 +1875,6 @@
1611
1875
  gap: 12px;
1612
1876
  margin-top: 8px;
1613
1877
  }
1614
- .editor-form-grid {
1615
- display: grid;
1616
- gap: 16px;
1617
- padding-top: 16px;
1618
- padding-bottom: 16px;
1619
- }
1620
- .editor-form-item {
1621
- display: grid;
1622
- gap: 8px;
1623
- }
1624
1878
  .editor-image-grid {
1625
1879
  display: grid;
1626
1880
  grid-template-columns: repeat(4, 1fr);
@@ -1633,7 +1887,7 @@
1633
1887
  border-radius: calc(var(--radius, 8px) - 2px);
1634
1888
  overflow: hidden;
1635
1889
  border: 2px solid transparent;
1636
- transition: all 0.2s;
1890
+ transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
1637
1891
  cursor: pointer;
1638
1892
  padding: 0;
1639
1893
  }
@@ -1651,7 +1905,7 @@
1651
1905
  width: 100%;
1652
1906
  padding: 6px 8px;
1653
1907
  border-radius: calc(var(--radius, 8px) - 2px);
1654
- transition: background-color 0.2s;
1908
+ transition: background-color 200ms cubic-bezier(0.4, 0, 0.2, 1);
1655
1909
  text-align: left;
1656
1910
  border: none;
1657
1911
  background: transparent;
@@ -1669,28 +1923,14 @@
1669
1923
  padding-top: 32px;
1670
1924
  padding-bottom: 32px;
1671
1925
  }
1672
- .editor-scroll-area {
1673
- max-height: 350px;
1674
- overflow-y: auto;
1675
- padding: 8px;
1676
- border: 1px solid var(--border);
1677
- border-radius: calc(var(--radius, 8px) - 2px);
1678
- }
1679
- .editor-tabs-list {
1680
- width: 100%;
1681
- display: flex;
1682
- }
1683
- .editor-tabs-trigger {
1684
- flex: 1;
1685
- }
1686
1926
  .editor-image-resizer-handle {
1687
1927
  position: absolute;
1688
1928
  width: 10px;
1689
1929
  height: 10px;
1690
- background-color: var(--primary, #3b82f6);
1691
- border: 1px solid var(--background, transparent);
1930
+ background-color: var(--primary);
1931
+ border: 1px solid var(--background);
1692
1932
  z-index: 50;
1693
- transition: background-color 0.2s;
1933
+ transition: background-color 200ms cubic-bezier(0.4, 0, 0.2, 1);
1694
1934
  }
1695
1935
  .editor-image-resizer-handle:hover {
1696
1936
  background-color: var(--accent, #f1f5f9);
@@ -1712,37 +1952,10 @@
1712
1952
  transform: translateY(-50%);
1713
1953
  cursor: ew-resize;
1714
1954
  }
1715
- .editor-image-resizer-handle--se {
1716
- bottom: -5px;
1717
- right: -5px;
1718
- cursor: nwse-resize;
1719
- }
1720
- .editor-image-resizer-handle--s {
1721
- bottom: -5px;
1722
- left: 50%;
1723
- transform: translateX(-50%);
1724
- cursor: ns-resize;
1725
- }
1726
- .editor-image-resizer-handle--sw {
1727
- bottom: -5px;
1728
- left: -5px;
1729
- cursor: nesw-resize;
1730
- }
1731
- .editor-image-resizer-handle--w {
1732
- top: 50%;
1733
- left: -5px;
1734
- transform: translateY(-50%);
1735
- cursor: ew-resize;
1736
- }
1737
- .editor-image-resizer-handle--nw {
1738
- top: -5px;
1739
- left: -5px;
1740
- cursor: nwse-resize;
1741
- }
1742
1955
  .editor-layout-dialog-grid {
1743
1956
  display: grid;
1744
1957
  grid-template-columns: repeat(1, minmax(0, 1fr));
1745
- gap: 0.75rem;
1958
+ gap: 12px;
1746
1959
  }
1747
1960
  @media (min-width: 768px) {
1748
1961
  .editor-layout-dialog-grid {
@@ -1752,32 +1965,31 @@
1752
1965
  .editor-layout-dialog-group {
1753
1966
  display: flex;
1754
1967
  flex-direction: column;
1755
- gap: 0.375rem;
1968
+ gap: 6px;
1756
1969
  }
1757
1970
  .editor-layout-color-trigger {
1758
- height: 2.75rem;
1971
+ height: 44px;
1759
1972
  width: 100%;
1760
1973
  justify-content: flex-start;
1761
- gap: 0.5rem;
1762
- padding-left: 0.5rem;
1763
- padding-right: 0.5rem;
1764
- font-size: 0.75rem;
1765
- transition: all 0.2s;
1974
+ gap: 8px;
1975
+ padding-left: 8px;
1976
+ padding-right: 8px;
1977
+ font-size: 0.875rem;
1978
+ line-height: 1.375;
1979
+ transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
1766
1980
  }
1767
- .editor-layout-color-trigger:hover:not(:disabled):hover:not(:disabled):not([data-state=on]) {
1768
- background-color: var(--accent, #f1f5f9);
1769
- color: var(--accent-foreground, #0f172a);
1770
- border-color: var(--accent, #f1f5f9);
1981
+ .editor-layout-color-trigger:hover:not(:disabled):hover:not(:disabled):not([data-state=on]):not([data-state=active]) {
1771
1982
  transform: translateY(-1px);
1772
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
1983
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
1773
1984
  }
1774
1985
  .editor-layout-color-trigger:hover:not(:disabled):active:not(:disabled) {
1775
- transform: translateY(0);
1986
+ transform: translateY(0) scale(0.98);
1776
1987
  box-shadow: none;
1988
+ filter: brightness(0.95);
1777
1989
  }
1778
1990
  .editor-layout-color-preview {
1779
- width: 1rem;
1780
- height: 1rem;
1991
+ width: 16px;
1992
+ height: 16px;
1781
1993
  flex-shrink: 0;
1782
1994
  border-radius: calc(var(--radius, 8px) - 2px);
1783
1995
  border: 1px solid var(--border);
@@ -1792,24 +2004,23 @@
1792
2004
  .editor-mentions-item {
1793
2005
  display: flex;
1794
2006
  align-items: center;
1795
- gap: 0.5rem;
2007
+ gap: 8px;
1796
2008
  }
1797
2009
  .editor-mentions-item:hover,
1798
2010
  .editor-mentions-item:focus,
1799
2011
  .editor-mentions-item--selected,
1800
2012
  .editor-mentions-item[aria-selected=true],
1801
- .editor-mentions-item[data-selected=true] {
2013
+ .editor-mentions-item[data-selected=true],
2014
+ .editor-mentions-item[data-state=active],
2015
+ .editor-mentions-item[data-state=on] {
1802
2016
  background-color: var(--accent, #f1f5f9);
1803
2017
  color: var(--accent-foreground, #0f172a);
1804
2018
  border-color: var(--border, #d1d5db);
1805
2019
  }
1806
2020
  .editor-mentions-item:active {
1807
- transform: translateY(0);
2021
+ transform: translateY(0) scale(0.98);
1808
2022
  box-shadow: none;
1809
- }
1810
- .editor-mentions-item[data-selected=true] {
1811
- background-color: var(--accent, #f1f5f9);
1812
- color: var(--accent-foreground, #0f172a);
2023
+ filter: brightness(0.95);
1813
2024
  }
1814
2025
  .editor-mentions-item--transparent {
1815
2026
  background-color: transparent !important;
@@ -1819,8 +2030,8 @@
1819
2030
  color: var(--background);
1820
2031
  height: 24rem;
1821
2032
  overflow: hidden;
1822
- border-radius: var(--radius);
1823
- padding: 0.5rem;
2033
+ border-radius: calc(var(--radius, 8px) + 4px);
2034
+ padding: 8px;
1824
2035
  }
1825
2036
  .editor-draggable-line {
1826
2037
  background-color: var(--secondary-foreground);
@@ -1828,7 +2039,7 @@
1828
2039
  position: absolute;
1829
2040
  top: 0;
1830
2041
  left: 0;
1831
- height: 0.25rem;
2042
+ height: 4px;
1832
2043
  opacity: 0;
1833
2044
  will-change: transform;
1834
2045
  }
@@ -1838,12 +2049,12 @@
1838
2049
  left: 0;
1839
2050
  cursor: grab;
1840
2051
  border-radius: calc(var(--radius, 8px) - 2px);
1841
- padding: 0.125rem 0.25rem;
2052
+ padding: 2px 4px;
1842
2053
  opacity: 0;
1843
2054
  will-change: transform;
1844
2055
  }
1845
2056
  .editor-draggable-menu:hover {
1846
- background-color: #f3f4f6;
2057
+ background-color: var(--accent, #f1f5f9);
1847
2058
  }
1848
2059
  .editor-draggable-menu:active {
1849
2060
  cursor: grabbing;
@@ -1868,22 +2079,22 @@
1868
2079
  border-radius: var(--radius, 8px);
1869
2080
  border: 1px solid var(--border);
1870
2081
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
1871
- transition: opacity 0.2s;
2082
+ transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1);
1872
2083
  will-change: transform;
1873
2084
  }
1874
2085
  .editor-floating-link-editor__input-container {
1875
2086
  display: flex;
1876
2087
  align-items: center;
1877
- gap: 0.25rem;
1878
- padding: 0.25rem;
2088
+ gap: 4px;
2089
+ padding: 4px;
1879
2090
  width: 100%;
1880
2091
  }
1881
2092
  .editor-floating-link-editor__view-container {
1882
2093
  display: flex;
1883
2094
  align-items: center;
1884
2095
  justify-content: space-between;
1885
- gap: 0.5rem;
1886
- padding: 0.25rem 0.25rem 0.25rem 0.75rem;
2096
+ gap: 8px;
2097
+ padding: 4px 4px 4px 12px;
1887
2098
  width: 100%;
1888
2099
  }
1889
2100
  .editor-floating-link-editor__link {
@@ -1894,6 +2105,7 @@
1894
2105
  white-space: nowrap;
1895
2106
  color: var(--primary);
1896
2107
  font-size: 0.875rem;
2108
+ line-height: 1.375;
1897
2109
  text-decoration: none;
1898
2110
  }
1899
2111
  .editor-floating-link-editor__link:hover {
@@ -1915,9 +2127,9 @@
1915
2127
  }
1916
2128
  .editor-command {
1917
2129
  display: flex;
2130
+ flex-direction: column;
1918
2131
  height: 100%;
1919
2132
  width: 100%;
1920
- flex-direction: column;
1921
2133
  overflow: hidden;
1922
2134
  border-radius: inherit;
1923
2135
  }
@@ -1925,14 +2137,14 @@
1925
2137
  max-height: 300px;
1926
2138
  overflow-y: auto;
1927
2139
  overflow-x: hidden;
1928
- padding: 0.25rem;
2140
+ padding: 4px;
1929
2141
  }
1930
2142
  .editor-command-group {
1931
2143
  overflow: hidden;
1932
2144
  color: var(--foreground);
1933
2145
  }
1934
2146
  .editor-command-group > [cmdk-group-heading] {
1935
- padding: 0.5rem 0.5rem 0.2rem;
2147
+ padding: 8px 8px 4px;
1936
2148
  font-size: 0.75rem;
1937
2149
  font-weight: 500;
1938
2150
  color: var(--muted-foreground);
@@ -1940,36 +2152,40 @@
1940
2152
  .editor-command-item {
1941
2153
  position: relative;
1942
2154
  display: flex;
2155
+ align-items: center;
1943
2156
  cursor: pointer;
1944
2157
  user-select: none;
1945
- align-items: center;
1946
- border-radius: 0.125rem;
1947
- padding: 0.375rem 0.5rem;
2158
+ border-radius: calc(var(--radius, 8px) - 2px);
2159
+ padding: 6px 8px;
1948
2160
  border: 1px solid transparent;
1949
2161
  font-size: 0.875rem;
2162
+ line-height: 1.375;
1950
2163
  outline: none;
1951
- gap: 0.5rem;
2164
+ gap: 8px;
1952
2165
  }
1953
2166
  .editor-command-item:hover,
1954
2167
  .editor-command-item:focus,
1955
2168
  .editor-command-item--selected,
1956
2169
  .editor-command-item[aria-selected=true],
1957
- .editor-command-item[data-selected=true] {
2170
+ .editor-command-item[data-selected=true],
2171
+ .editor-command-item[data-state=active],
2172
+ .editor-command-item[data-state=on] {
1958
2173
  background-color: var(--accent, #f1f5f9);
1959
2174
  color: var(--accent-foreground, #0f172a);
1960
2175
  border-color: var(--border, #d1d5db);
1961
2176
  }
1962
2177
  .editor-command-item:active {
1963
- transform: translateY(0);
2178
+ transform: translateY(0) scale(0.98);
1964
2179
  box-shadow: none;
2180
+ filter: brightness(0.95);
1965
2181
  }
1966
2182
  .editor-command-item[data-disabled=true] {
1967
2183
  pointer-events: none;
1968
2184
  opacity: 0.5;
1969
2185
  }
1970
2186
  .editor-command-item svg {
1971
- width: 1rem;
1972
- height: 1rem;
2187
+ width: 16px;
2188
+ height: 16px;
1973
2189
  flex-shrink: 0;
1974
2190
  }
1975
2191
  .editor-context-menu {
@@ -1989,13 +2205,14 @@
1989
2205
  position: relative;
1990
2206
  width: 100%;
1991
2207
  display: flex;
1992
- cursor: default;
1993
2208
  align-items: center;
1994
- gap: 0.5rem;
1995
- border-radius: calc(var(--radius) - 2px);
1996
- padding: 0.375rem 0.5rem;
2209
+ cursor: default;
2210
+ gap: 8px;
2211
+ border-radius: calc(var(--radius, 8px) - 2px);
2212
+ padding: 6px 8px;
1997
2213
  border: 1px solid transparent;
1998
2214
  font-size: 0.875rem;
2215
+ line-height: 1.375;
1999
2216
  outline: none;
2000
2217
  user-select: none;
2001
2218
  }
@@ -2003,14 +2220,17 @@
2003
2220
  .editor-context-menu-item:focus,
2004
2221
  .editor-context-menu-item--selected,
2005
2222
  .editor-context-menu-item[aria-selected=true],
2006
- .editor-context-menu-item[data-selected=true] {
2223
+ .editor-context-menu-item[data-selected=true],
2224
+ .editor-context-menu-item[data-state=active],
2225
+ .editor-context-menu-item[data-state=on] {
2007
2226
  background-color: var(--accent, #f1f5f9);
2008
2227
  color: var(--accent-foreground, #0f172a);
2009
2228
  border-color: var(--border, #d1d5db);
2010
2229
  }
2011
2230
  .editor-context-menu-item:active {
2012
- transform: translateY(0);
2231
+ transform: translateY(0) scale(0.98);
2013
2232
  box-shadow: none;
2233
+ filter: brightness(0.95);
2014
2234
  }
2015
2235
  .editor-context-menu-item[data-disabled=true] {
2016
2236
  pointer-events: none;
@@ -2025,16 +2245,22 @@
2025
2245
  .editor-actions-bar {
2026
2246
  clear: both;
2027
2247
  display: flex;
2248
+ align-items: center;
2028
2249
  width: 100%;
2250
+ display: flex;
2029
2251
  align-items: center;
2030
2252
  justify-content: space-between;
2031
- gap: 0.75rem;
2253
+ gap: 12px;
2032
2254
  overflow-x: auto;
2033
2255
  flex-wrap: nowrap;
2034
2256
  border-top: 1px solid var(--border);
2035
- padding: 0.375rem 0.75rem;
2257
+ padding: 6px 12px;
2036
2258
  background-color: color-mix(in srgb, var(--background), transparent 50%);
2037
- backdrop-filter: blur(8px);
2259
+ }
2260
+ @supports (backdrop-filter: blur(8px)) {
2261
+ .editor-actions-bar {
2262
+ backdrop-filter: blur(8px);
2263
+ }
2038
2264
  }
2039
2265
  .editor-actions-bar::-webkit-scrollbar {
2040
2266
  display: none;
@@ -2046,147 +2272,27 @@
2046
2272
  .editor-actions-bar .editor-tooltip-content {
2047
2273
  display: none !important;
2048
2274
  }
2049
- .editor-actions-bar .editor-tooltip-group:hover .editor-tooltip-content {
2050
- display: block !important;
2051
- position: absolute;
2052
- bottom: 100%;
2053
- left: 50%;
2054
- transform: translateX(-50%);
2055
- margin-bottom: 0.5rem;
2056
- background: var(--popover);
2057
- color: var(--popover-foreground);
2058
- padding: 0.25rem 0.5rem;
2059
- border-radius: 0.25rem;
2060
- font-size: 0.75rem;
2061
- white-space: nowrap;
2062
- border: 1px solid var(--border);
2063
- box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
2064
- z-index: 50;
2065
- pointer-events: none;
2066
- }
2067
- .editor-input:hover:not(:disabled):not([readonly]) {
2068
- background-color: var(--accent, #f1f5f9);
2069
- color: var(--accent-foreground, #0f172a);
2070
- border-color: var(--accent, #f1f5f9);
2071
- transform: translateY(-1px);
2072
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
2073
- background-color: color-mix(in srgb, var(--background), black 3%);
2074
- }
2075
- .editor-input:focus {
2076
- border-color: var(--primary);
2077
- box-shadow: 0 0 0 2px var(--ring);
2078
- outline: none;
2079
- }
2080
- .editor-input-lg {
2081
- height: 2.75rem;
2082
- width: 100%;
2083
- }
2084
- .editor-input-wrapper {
2085
- display: flex;
2086
- align-items: center;
2087
- }
2088
- .editor-input-group-item {
2089
- height: 2rem;
2090
- }
2091
- .editor-input-group-item::-webkit-inner-spin-button,
2092
- .editor-input-group-item::-webkit-outer-spin-button {
2093
- -webkit-appearance: none;
2094
- margin: 0;
2095
- }
2096
- .editor-input-group-item {
2097
- -moz-appearance: textfield;
2098
- }
2099
- .editor-input-group-item--first {
2100
- border-top-right-radius: 0;
2101
- border-bottom-right-radius: 0;
2102
- }
2103
- .editor-input-group-item--middle {
2104
- border-radius: 0;
2105
- border-left: 0;
2106
- margin-inline-start: -1px;
2107
- }
2108
- .editor-input-group-item--last {
2109
- border-top-left-radius: 0;
2110
- border-bottom-left-radius: 0;
2111
- border-left: 0;
2112
- margin-inline-start: -1px;
2113
- }
2114
- .editor-btn:hover:not(:disabled):not([data-state=on]) {
2115
- background-color: var(--accent, #f1f5f9);
2116
- color: var(--accent-foreground, #0f172a);
2117
- border-color: var(--accent, #f1f5f9);
2118
- transform: translateY(-1px);
2119
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
2120
- }
2121
- .editor-btn:active:not(:disabled) {
2122
- transform: translateY(0);
2123
- box-shadow: none;
2124
- }
2125
- .editor-btn--ghost:hover:not(:disabled):not([data-state=on]),
2126
- .editor-btn--outline:hover:not(:disabled):not([data-state=on]) {
2127
- background-color: var(--accent, #f1f5f9);
2128
- color: var(--accent-foreground, #0f172a);
2129
- border-color: var(--accent, #f1f5f9);
2130
- transform: translateY(-1px);
2131
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
2132
- }
2133
- .editor-btn--ghost:active:not(:disabled),
2134
- .editor-btn--outline:active:not(:disabled) {
2135
- transform: translateY(0);
2136
- box-shadow: none;
2137
- }
2138
- .editor-btn-icon-lg {
2139
- height: 2.5rem !important;
2140
- min-height: 2.5rem !important;
2141
- width: 2.5rem !important;
2142
- }
2143
- .editor-btn-icon-md {
2144
- height: 2.25rem;
2145
- width: 2.25rem;
2146
- }
2147
- .editor-toggle-group-item:hover:not(:disabled):not([data-state=on]) {
2148
- background-color: var(--accent, #f1f5f9);
2149
- color: var(--accent-foreground, #0f172a);
2150
- border-color: var(--accent, #f1f5f9);
2151
- transform: translateY(-1px);
2152
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
2153
- }
2154
- .editor-toggle-group-item:active:not(:disabled) {
2155
- transform: translateY(0);
2156
- box-shadow: none;
2157
- }
2158
- .editor-toggle-group-item[data-state=on]:hover {
2159
- background-color: var(--accent, #f1f5f9);
2160
- color: var(--accent-foreground, #0f172a);
2161
- border-color: var(--accent, #f1f5f9);
2162
- transform: translateY(-1px);
2163
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
2164
- background-color: color-mix(in srgb, var(--accent, #f1f5f9), black 10%);
2165
- border-color: var(--accent, #f1f5f9);
2166
- }
2167
- .editor-toggle:hover:not(:disabled):not([data-state=on]) {
2168
- background-color: var(--accent, #f1f5f9);
2169
- color: var(--accent-foreground, #0f172a);
2170
- border-color: var(--accent, #f1f5f9);
2171
- transform: translateY(-1px);
2172
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
2173
- }
2174
- .editor-toggle:active:not(:disabled) {
2175
- transform: translateY(0);
2176
- box-shadow: none;
2177
- }
2178
- .editor-toggle[data-state=on]:hover {
2179
- background-color: var(--accent, #f1f5f9);
2180
- color: var(--accent-foreground, #0f172a);
2181
- border-color: var(--accent, #f1f5f9);
2182
- transform: translateY(-1px);
2183
- box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.1);
2184
- background-color: color-mix(in srgb, var(--accent, #f1f5f9), black 10%);
2185
- border-color: var(--accent, #f1f5f9);
2275
+ .editor-actions-bar .editor-tooltip-group:hover .editor-tooltip-content {
2276
+ display: block !important;
2277
+ position: absolute;
2278
+ bottom: 100%;
2279
+ left: 50%;
2280
+ transform: translateX(-50%);
2281
+ margin-bottom: 8px;
2282
+ background: var(--popover);
2283
+ color: var(--popover-foreground);
2284
+ padding: 4px 8px;
2285
+ border-radius: calc(var(--radius, 8px) - 2px);
2286
+ font-size: 0.75rem;
2287
+ white-space: nowrap;
2288
+ border: 1px solid var(--border);
2289
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
2290
+ z-index: 50;
2291
+ pointer-events: none;
2186
2292
  }
2187
2293
  .editor-root-container {
2188
2294
  border-radius: var(--radius, 8px);
2189
- transition: all 0.2s ease-in-out;
2295
+ transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
2190
2296
  }
2191
2297
  .editor-root-container.editor-root-container--shadow:focus-within {
2192
2298
  box-shadow: 0 0 0 1px var(--border, #d1d5db), 0 0 0 3px var(--ring, rgba(59, 130, 246, 0.5));
@@ -2236,12 +2342,12 @@
2236
2342
  .lexical-editor-root h5,
2237
2343
  .lexical-editor-root h6 {
2238
2344
  margin: 0 !important;
2239
- padding: 0 !important;
2345
+ padding: 0;
2240
2346
  border: 0 !important;
2241
2347
  font-size: 100%;
2242
2348
  vertical-align: baseline !important;
2243
2349
  -webkit-font-smoothing: antialiased !important;
2244
- -moz-osx-font-smoothing: grayscale !important;
2350
+ -moz-osx-osx-font-smoothing: grayscale !important;
2245
2351
  letter-spacing: normal !important;
2246
2352
  word-spacing: normal !important;
2247
2353
  text-indent: 0 !important;
@@ -2255,8 +2361,8 @@
2255
2361
  overflow-wrap: normal !important;
2256
2362
  margin-inline-start: 0 !important;
2257
2363
  margin-inline-end: 0 !important;
2258
- padding-inline-start: 0 !important;
2259
- padding-inline-end: 0 !important;
2364
+ padding-inline-start: 0;
2365
+ padding-inline-end: 0;
2260
2366
  margin-block-start: 0 !important;
2261
2367
  margin-block-end: 0 !important;
2262
2368
  -webkit-tap-highlight-color: transparent !important;
@@ -2277,6 +2383,40 @@
2277
2383
  margin: 0 !important;
2278
2384
  padding: 0 !important;
2279
2385
  }
2386
+ .editor-content-editable {
2387
+ position: relative !important;
2388
+ display: block !important;
2389
+ outline: none !important;
2390
+ }
2391
+ .editor-content-editable:not(.editor-content-editable--readonly):not(.editor-content-editable--review) {
2392
+ min-height: 288px !important;
2393
+ padding: 16px 32px !important;
2394
+ }
2395
+ .editor-content-editable:focus {
2396
+ outline: none !important;
2397
+ }
2398
+ .editor-content-editable--readonly,
2399
+ .editor-content-editable--review {
2400
+ cursor: default !important;
2401
+ user-select: text !important;
2402
+ min-height: unset !important;
2403
+ padding: 0 !important;
2404
+ }
2405
+ .editor-placeholder {
2406
+ color: var(--muted-foreground) !important;
2407
+ pointer-events: none !important;
2408
+ position: absolute !important;
2409
+ top: 0 !important;
2410
+ left: 0 !important;
2411
+ overflow: hidden !important;
2412
+ padding: 18px 32px !important;
2413
+ text-overflow: ellipsis !important;
2414
+ user-select: none !important;
2415
+ }
2416
+ .editor-content-editable--readonly + .editor-placeholder,
2417
+ .editor-content-editable--review + .editor-placeholder {
2418
+ display: none !important;
2419
+ }
2280
2420
  .lexical-editor-root .editor-paragraph {
2281
2421
  font-size: 16px !important;
2282
2422
  line-height: 1.75 !important;
@@ -2288,57 +2428,59 @@
2288
2428
  }
2289
2429
  .lexical-editor-root .editor-h1 {
2290
2430
  font-size: 36px;
2291
- line-height: 40px !important;
2431
+ line-height: 1.25 !important;
2292
2432
  font-weight: 700 !important;
2293
2433
  letter-spacing: -0.025em;
2294
- margin-top: 32px !important;
2295
- margin-bottom: 16px !important;
2434
+ margin-top: 36px !important;
2435
+ margin-bottom: 18px !important;
2296
2436
  }
2297
2437
  .lexical-editor-root .editor-h2 {
2298
2438
  font-size: 30px;
2299
- line-height: 36px !important;
2439
+ line-height: 1.25 !important;
2300
2440
  font-weight: 600 !important;
2301
- letter-spacing: -0.025em;
2302
- margin-top: 24px !important;
2303
- margin-bottom: 12px !important;
2304
- border-bottom: 1px solid var(--border, #d1d5db);
2305
- padding-bottom: 5px;
2441
+ margin-top: 30px !important;
2442
+ margin-bottom: 15px !important;
2443
+ border-bottom: 1px solid var(--border);
2444
+ padding-bottom: 4px;
2306
2445
  }
2307
2446
  .lexical-editor-root .editor-h3 {
2308
2447
  font-size: 24px;
2309
- line-height: 32px !important;
2448
+ line-height: 1.25 !important;
2310
2449
  font-weight: 600 !important;
2311
- letter-spacing: -0.025em;
2312
2450
  margin-top: 24px !important;
2313
2451
  margin-bottom: 12px !important;
2314
2452
  }
2315
2453
  .lexical-editor-root .editor-h4 {
2316
2454
  font-size: 20px;
2317
- line-height: 28px !important;
2455
+ line-height: 1.25 !important;
2318
2456
  font-weight: 600 !important;
2319
- margin-top: 20px !important;
2320
- margin-bottom: 8px !important;
2457
+ margin-top: 18px !important;
2458
+ margin-bottom: 9px !important;
2321
2459
  }
2322
2460
  .lexical-editor-root .editor-h5 {
2323
2461
  font-size: 18px;
2324
- line-height: 28px !important;
2462
+ line-height: 1.25 !important;
2325
2463
  font-weight: 600 !important;
2326
- margin-top: 20px !important;
2327
- margin-bottom: 8px !important;
2464
+ margin-top: 12px !important;
2465
+ margin-bottom: 6px !important;
2328
2466
  }
2329
2467
  .lexical-editor-root .editor-h6 {
2330
2468
  font-size: 16px;
2331
- line-height: 24px !important;
2469
+ line-height: 1.25 !important;
2332
2470
  font-weight: 600 !important;
2333
- margin-top: 20px !important;
2334
- margin-bottom: 8px !important;
2471
+ margin-top: 12px !important;
2472
+ margin-bottom: 6px !important;
2335
2473
  }
2336
2474
  .lexical-editor-root .editor-quote {
2337
2475
  margin: 24px 0 !important;
2338
- padding-left: 16px !important;
2339
- border-left: 4px solid var(--input, #e5e7eb) !important;
2340
- font-style: italic !important;
2341
- color: #64748b !important;
2476
+ padding: 16px 16px 16px 24px;
2477
+ border-left: 4px solid var(--border);
2478
+ font-size: 18px;
2479
+ color: var(--muted-foreground);
2480
+ font-style: italic;
2481
+ background-color: var(--muted);
2482
+ border-top-right-radius: var(--radius, 8px);
2483
+ border-bottom-right-radius: var(--radius, 8px);
2342
2484
  }
2343
2485
  .lexical-editor-root .editor-ol {
2344
2486
  list-style-type: decimal !important;
@@ -2349,6 +2491,38 @@
2349
2491
  .lexical-editor-root .editor-ol[data-list-marker=alpha] {
2350
2492
  list-style-type: lower-alpha !important;
2351
2493
  }
2494
+ .lexical-editor-root .editor-ol[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) {
2495
+ list-style-type: none !important;
2496
+ }
2497
+ .lexical-editor-root .editor-ol[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) > li:not(.editor-nested-listitem)::marker {
2498
+ content: attr(data-list-marker) !important;
2499
+ }
2500
+ .lexical-editor-root .editor-ol[data-list-marker=multi-level] {
2501
+ list-style-type: none !important;
2502
+ counter-reset: item;
2503
+ }
2504
+ .lexical-editor-root .editor-ol[data-list-marker=multi-level] > li {
2505
+ counter-increment: item;
2506
+ }
2507
+ .lexical-editor-root .editor-ol[data-list-marker=multi-level] > li.editor-nested-listitem {
2508
+ counter-increment: none !important;
2509
+ }
2510
+ .lexical-editor-root .editor-ol[data-list-marker=multi-level] > li:not(.editor-nested-listitem)::marker {
2511
+ content: counters(item, ".") ". " !important;
2512
+ }
2513
+ .lexical-editor-root .editor-ol[data-list-marker=multi-level] .editor-ol {
2514
+ list-style-type: none !important;
2515
+ counter-reset: item;
2516
+ }
2517
+ .lexical-editor-root .editor-ol[data-list-marker=multi-level] .editor-ol > li {
2518
+ counter-increment: item;
2519
+ }
2520
+ .lexical-editor-root .editor-ol[data-list-marker=multi-level] .editor-ol > li.editor-nested-listitem {
2521
+ counter-increment: none !important;
2522
+ }
2523
+ .lexical-editor-root .editor-ol[data-list-marker=multi-level] .editor-ol > li:not(.editor-nested-listitem)::marker {
2524
+ content: counters(item, ".") ". " !important;
2525
+ }
2352
2526
  .lexical-editor-root .editor-ol[data-list-color] li::marker {
2353
2527
  color: var(--list-marker-color, currentColor) !important;
2354
2528
  }
@@ -2363,21 +2537,27 @@
2363
2537
  .lexical-editor-root .editor-ul:not(.editor-checklist)[data-list-marker="-"] {
2364
2538
  list-style-type: none !important;
2365
2539
  }
2366
- .lexical-editor-root .editor-ul:not(.editor-checklist)[data-list-marker="-"] > li::marker {
2540
+ .lexical-editor-root .editor-ul:not(.editor-checklist)[data-list-marker="-"] > li:not(.editor-nested-listitem)::marker {
2367
2541
  content: "- " !important;
2368
2542
  }
2369
2543
  .lexical-editor-root .editor-ul:not(.editor-checklist)[data-list-marker="+"] {
2370
2544
  list-style-type: none !important;
2371
2545
  }
2372
- .lexical-editor-root .editor-ul:not(.editor-checklist)[data-list-marker="+"] > li::marker {
2546
+ .lexical-editor-root .editor-ul:not(.editor-checklist)[data-list-marker="+"] > li:not(.editor-nested-listitem)::marker {
2373
2547
  content: "+ " !important;
2374
2548
  }
2549
+ .lexical-editor-root .editor-ul:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) {
2550
+ list-style-type: none !important;
2551
+ }
2552
+ .lexical-editor-root .editor-ul:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) > li:not(.editor-nested-listitem)::marker {
2553
+ content: attr(data-list-marker) !important;
2554
+ }
2375
2555
  .lexical-editor-root .editor-ul:not(.editor-checklist)[data-list-color] li::marker {
2376
2556
  color: var(--list-marker-color, currentColor) !important;
2377
2557
  }
2378
2558
  .lexical-editor-root .editor-listitem {
2379
2559
  margin-bottom: 4px !important;
2380
- line-height: 1.6 !important;
2560
+ line-height: 1.625 !important;
2381
2561
  }
2382
2562
  .lexical-editor-root .editor-checklist {
2383
2563
  list-style: none !important;
@@ -2392,6 +2572,7 @@
2392
2572
  .lexical-editor-root .editor-checklist .editor-listitem-checked,
2393
2573
  .lexical-editor-root .editor-checklist .editor-listitem-unchecked {
2394
2574
  display: flex;
2575
+ align-items: center;
2395
2576
  align-items: flex-start;
2396
2577
  margin-left: 0;
2397
2578
  padding: 4px 0;
@@ -2411,14 +2592,14 @@
2411
2592
  border: 2px solid var(--list-marker-color, #3b82f6) !important;
2412
2593
  border-radius: 4px;
2413
2594
  box-sizing: border-box;
2414
- transition: all 0.1s ease-in-out;
2595
+ transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
2415
2596
  background-position: center;
2416
2597
  background-repeat: no-repeat;
2417
- background-size: 12px;
2598
+ background-size: 16px;
2418
2599
  }
2419
2600
  .lexical-editor-root .editor-checklist .editor-listitem-checked {
2420
2601
  text-decoration: line-through;
2421
- color: #64748b;
2602
+ color: var(--muted-foreground, #64748b);
2422
2603
  }
2423
2604
  .lexical-editor-root .editor-checklist .editor-listitem-checked::before {
2424
2605
  background-color: var(--list-marker-color, #3b82f6) !important;
@@ -2438,96 +2619,221 @@
2438
2619
  .lexical-editor-root .editor-ol-depth-1 {
2439
2620
  list-style-type: decimal !important;
2440
2621
  }
2622
+ .lexical-editor-root .editor-ol-depth-1[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) {
2623
+ list-style-type: none !important;
2624
+ }
2625
+ .lexical-editor-root .editor-ol-depth-1[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) > li:not(.editor-nested-listitem)::marker {
2626
+ content: attr(data-list-marker) !important;
2627
+ }
2628
+ .lexical-editor-root .editor-ol-depth-1[data-list-marker=multi-level] {
2629
+ list-style-type: none !important;
2630
+ counter-reset: item;
2631
+ }
2632
+ .lexical-editor-root .editor-ol-depth-1[data-list-marker=multi-level] > li {
2633
+ counter-increment: item;
2634
+ }
2635
+ .lexical-editor-root .editor-ol-depth-1[data-list-marker=multi-level] > li.editor-nested-listitem {
2636
+ counter-increment: none !important;
2637
+ }
2638
+ .lexical-editor-root .editor-ol-depth-1[data-list-marker=multi-level] > li:not(.editor-nested-listitem)::marker {
2639
+ content: counters(item, ".") ". " !important;
2640
+ }
2441
2641
  .lexical-editor-root .editor-ul-depth-1:not(.editor-checklist)[data-list-marker="-"] {
2442
2642
  list-style-type: none !important;
2443
2643
  }
2444
- .lexical-editor-root .editor-ul-depth-1:not(.editor-checklist)[data-list-marker="-"] li::marker {
2644
+ .lexical-editor-root .editor-ul-depth-1:not(.editor-checklist)[data-list-marker="-"] > li:not(.editor-nested-listitem)::marker {
2445
2645
  content: "- " !important;
2446
2646
  }
2447
2647
  .lexical-editor-root .editor-ul-depth-1:not(.editor-checklist)[data-list-marker="+"] {
2448
2648
  list-style-type: none !important;
2449
2649
  }
2450
- .lexical-editor-root .editor-ul-depth-1:not(.editor-checklist)[data-list-marker="+"] li::marker {
2650
+ .lexical-editor-root .editor-ul-depth-1:not(.editor-checklist)[data-list-marker="+"] > li:not(.editor-nested-listitem)::marker {
2451
2651
  content: "+ " !important;
2452
2652
  }
2653
+ .lexical-editor-root .editor-ul-depth-1:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) {
2654
+ list-style-type: none !important;
2655
+ }
2656
+ .lexical-editor-root .editor-ul-depth-1:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) > li:not(.editor-nested-listitem)::marker {
2657
+ content: attr(data-list-marker) !important;
2658
+ }
2453
2659
  .lexical-editor-root .editor-ul-depth-1:not(.editor-checklist):not([data-list-marker]) {
2454
2660
  list-style-type: disc !important;
2455
2661
  }
2456
2662
  .lexical-editor-root .editor-ol-depth-2 {
2457
2663
  list-style-type: upper-roman !important;
2458
2664
  }
2665
+ .lexical-editor-root .editor-ol-depth-2[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) {
2666
+ list-style-type: none !important;
2667
+ }
2668
+ .lexical-editor-root .editor-ol-depth-2[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) > li:not(.editor-nested-listitem)::marker {
2669
+ content: attr(data-list-marker) !important;
2670
+ }
2671
+ .lexical-editor-root .editor-ol-depth-2[data-list-marker=multi-level] {
2672
+ list-style-type: none !important;
2673
+ counter-reset: item;
2674
+ }
2675
+ .lexical-editor-root .editor-ol-depth-2[data-list-marker=multi-level] > li {
2676
+ counter-increment: item;
2677
+ }
2678
+ .lexical-editor-root .editor-ol-depth-2[data-list-marker=multi-level] > li.editor-nested-listitem {
2679
+ counter-increment: none !important;
2680
+ }
2681
+ .lexical-editor-root .editor-ol-depth-2[data-list-marker=multi-level] > li:not(.editor-nested-listitem)::marker {
2682
+ content: counters(item, ".") ". " !important;
2683
+ }
2459
2684
  .lexical-editor-root .editor-ul-depth-2:not(.editor-checklist)[data-list-marker="-"] {
2460
2685
  list-style-type: none !important;
2461
2686
  }
2462
- .lexical-editor-root .editor-ul-depth-2:not(.editor-checklist)[data-list-marker="-"] li::marker {
2687
+ .lexical-editor-root .editor-ul-depth-2:not(.editor-checklist)[data-list-marker="-"] > li:not(.editor-nested-listitem)::marker {
2463
2688
  content: "- " !important;
2464
2689
  }
2465
2690
  .lexical-editor-root .editor-ul-depth-2:not(.editor-checklist)[data-list-marker="+"] {
2466
2691
  list-style-type: none !important;
2467
2692
  }
2468
- .lexical-editor-root .editor-ul-depth-2:not(.editor-checklist)[data-list-marker="+"] li::marker {
2693
+ .lexical-editor-root .editor-ul-depth-2:not(.editor-checklist)[data-list-marker="+"] > li:not(.editor-nested-listitem)::marker {
2469
2694
  content: "+ " !important;
2470
2695
  }
2696
+ .lexical-editor-root .editor-ul-depth-2:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) {
2697
+ list-style-type: none !important;
2698
+ }
2699
+ .lexical-editor-root .editor-ul-depth-2:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) > li:not(.editor-nested-listitem)::marker {
2700
+ content: attr(data-list-marker) !important;
2701
+ }
2471
2702
  .lexical-editor-root .editor-ul-depth-2:not(.editor-checklist):not([data-list-marker]) {
2472
2703
  list-style-type: disc !important;
2473
2704
  }
2474
2705
  .lexical-editor-root .editor-ol-depth-3 {
2475
2706
  list-style-type: lower-roman !important;
2476
2707
  }
2708
+ .lexical-editor-root .editor-ol-depth-3[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) {
2709
+ list-style-type: none !important;
2710
+ }
2711
+ .lexical-editor-root .editor-ol-depth-3[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) > li:not(.editor-nested-listitem)::marker {
2712
+ content: attr(data-list-marker) !important;
2713
+ }
2714
+ .lexical-editor-root .editor-ol-depth-3[data-list-marker=multi-level] {
2715
+ list-style-type: none !important;
2716
+ counter-reset: item;
2717
+ }
2718
+ .lexical-editor-root .editor-ol-depth-3[data-list-marker=multi-level] > li {
2719
+ counter-increment: item;
2720
+ }
2721
+ .lexical-editor-root .editor-ol-depth-3[data-list-marker=multi-level] > li.editor-nested-listitem {
2722
+ counter-increment: none !important;
2723
+ }
2724
+ .lexical-editor-root .editor-ol-depth-3[data-list-marker=multi-level] > li:not(.editor-nested-listitem)::marker {
2725
+ content: counters(item, ".") ". " !important;
2726
+ }
2477
2727
  .lexical-editor-root .editor-ul-depth-3:not(.editor-checklist)[data-list-marker="-"] {
2478
2728
  list-style-type: none !important;
2479
2729
  }
2480
- .lexical-editor-root .editor-ul-depth-3:not(.editor-checklist)[data-list-marker="-"] li::marker {
2730
+ .lexical-editor-root .editor-ul-depth-3:not(.editor-checklist)[data-list-marker="-"] > li:not(.editor-nested-listitem)::marker {
2481
2731
  content: "- " !important;
2482
2732
  }
2483
2733
  .lexical-editor-root .editor-ul-depth-3:not(.editor-checklist)[data-list-marker="+"] {
2484
2734
  list-style-type: none !important;
2485
2735
  }
2486
- .lexical-editor-root .editor-ul-depth-3:not(.editor-checklist)[data-list-marker="+"] li::marker {
2736
+ .lexical-editor-root .editor-ul-depth-3:not(.editor-checklist)[data-list-marker="+"] > li:not(.editor-nested-listitem)::marker {
2487
2737
  content: "+ " !important;
2488
2738
  }
2739
+ .lexical-editor-root .editor-ul-depth-3:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) {
2740
+ list-style-type: none !important;
2741
+ }
2742
+ .lexical-editor-root .editor-ul-depth-3:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) > li:not(.editor-nested-listitem)::marker {
2743
+ content: attr(data-list-marker) !important;
2744
+ }
2489
2745
  .lexical-editor-root .editor-ul-depth-3:not(.editor-checklist):not([data-list-marker]) {
2490
2746
  list-style-type: disc !important;
2491
2747
  }
2492
2748
  .lexical-editor-root .editor-ol-depth-4 {
2493
2749
  list-style-type: upper-alpha !important;
2494
2750
  }
2751
+ .lexical-editor-root .editor-ol-depth-4[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) {
2752
+ list-style-type: none !important;
2753
+ }
2754
+ .lexical-editor-root .editor-ol-depth-4[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) > li:not(.editor-nested-listitem)::marker {
2755
+ content: attr(data-list-marker) !important;
2756
+ }
2757
+ .lexical-editor-root .editor-ol-depth-4[data-list-marker=multi-level] {
2758
+ list-style-type: none !important;
2759
+ counter-reset: item;
2760
+ }
2761
+ .lexical-editor-root .editor-ol-depth-4[data-list-marker=multi-level] > li {
2762
+ counter-increment: item;
2763
+ }
2764
+ .lexical-editor-root .editor-ol-depth-4[data-list-marker=multi-level] > li.editor-nested-listitem {
2765
+ counter-increment: none !important;
2766
+ }
2767
+ .lexical-editor-root .editor-ol-depth-4[data-list-marker=multi-level] > li:not(.editor-nested-listitem)::marker {
2768
+ content: counters(item, ".") ". " !important;
2769
+ }
2495
2770
  .lexical-editor-root .editor-ul-depth-4:not(.editor-checklist)[data-list-marker="-"] {
2496
2771
  list-style-type: none !important;
2497
2772
  }
2498
- .lexical-editor-root .editor-ul-depth-4:not(.editor-checklist)[data-list-marker="-"] li::marker {
2773
+ .lexical-editor-root .editor-ul-depth-4:not(.editor-checklist)[data-list-marker="-"] > li:not(.editor-nested-listitem)::marker {
2499
2774
  content: "- " !important;
2500
2775
  }
2501
2776
  .lexical-editor-root .editor-ul-depth-4:not(.editor-checklist)[data-list-marker="+"] {
2502
2777
  list-style-type: none !important;
2503
2778
  }
2504
- .lexical-editor-root .editor-ul-depth-4:not(.editor-checklist)[data-list-marker="+"] li::marker {
2779
+ .lexical-editor-root .editor-ul-depth-4:not(.editor-checklist)[data-list-marker="+"] > li:not(.editor-nested-listitem)::marker {
2505
2780
  content: "+ " !important;
2506
2781
  }
2782
+ .lexical-editor-root .editor-ul-depth-4:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) {
2783
+ list-style-type: none !important;
2784
+ }
2785
+ .lexical-editor-root .editor-ul-depth-4:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) > li:not(.editor-nested-listitem)::marker {
2786
+ content: attr(data-list-marker) !important;
2787
+ }
2507
2788
  .lexical-editor-root .editor-ul-depth-4:not(.editor-checklist):not([data-list-marker]) {
2508
2789
  list-style-type: disc !important;
2509
2790
  }
2510
2791
  .lexical-editor-root .editor-ol-depth-5 {
2511
2792
  list-style-type: lower-alpha !important;
2512
2793
  }
2794
+ .lexical-editor-root .editor-ol-depth-5[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) {
2795
+ list-style-type: none !important;
2796
+ }
2797
+ .lexical-editor-root .editor-ol-depth-5[data-list-marker]:not([data-list-marker=alpha]):not([data-list-marker=multi-level]) > li:not(.editor-nested-listitem)::marker {
2798
+ content: attr(data-list-marker) !important;
2799
+ }
2800
+ .lexical-editor-root .editor-ol-depth-5[data-list-marker=multi-level] {
2801
+ list-style-type: none !important;
2802
+ counter-reset: item;
2803
+ }
2804
+ .lexical-editor-root .editor-ol-depth-5[data-list-marker=multi-level] > li {
2805
+ counter-increment: item;
2806
+ }
2807
+ .lexical-editor-root .editor-ol-depth-5[data-list-marker=multi-level] > li.editor-nested-listitem {
2808
+ counter-increment: none !important;
2809
+ }
2810
+ .lexical-editor-root .editor-ol-depth-5[data-list-marker=multi-level] > li:not(.editor-nested-listitem)::marker {
2811
+ content: counters(item, ".") ". " !important;
2812
+ }
2513
2813
  .lexical-editor-root .editor-ul-depth-5:not(.editor-checklist)[data-list-marker="-"] {
2514
2814
  list-style-type: none !important;
2515
2815
  }
2516
- .lexical-editor-root .editor-ul-depth-5:not(.editor-checklist)[data-list-marker="-"] li::marker {
2816
+ .lexical-editor-root .editor-ul-depth-5:not(.editor-checklist)[data-list-marker="-"] > li:not(.editor-nested-listitem)::marker {
2517
2817
  content: "- " !important;
2518
2818
  }
2519
2819
  .lexical-editor-root .editor-ul-depth-5:not(.editor-checklist)[data-list-marker="+"] {
2520
2820
  list-style-type: none !important;
2521
2821
  }
2522
- .lexical-editor-root .editor-ul-depth-5:not(.editor-checklist)[data-list-marker="+"] li::marker {
2822
+ .lexical-editor-root .editor-ul-depth-5:not(.editor-checklist)[data-list-marker="+"] > li:not(.editor-nested-listitem)::marker {
2523
2823
  content: "+ " !important;
2524
2824
  }
2825
+ .lexical-editor-root .editor-ul-depth-5:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) {
2826
+ list-style-type: none !important;
2827
+ }
2828
+ .lexical-editor-root .editor-ul-depth-5:not(.editor-checklist)[data-list-marker]:not([data-list-marker="-"]):not([data-list-marker="+"]) > li:not(.editor-nested-listitem)::marker {
2829
+ content: attr(data-list-marker) !important;
2830
+ }
2525
2831
  .lexical-editor-root .editor-ul-depth-5:not(.editor-checklist):not([data-list-marker]) {
2526
2832
  list-style-type: disc !important;
2527
2833
  }
2528
2834
  .lexical-editor-root .editor-code {
2529
- background-color: #fcfcfc;
2530
- color: #1a1a1a;
2835
+ background-color: var(--muted, #f3f4f6);
2836
+ color: var(--muted-foreground, #1f2937);
2531
2837
  font-family:
2532
2838
  "JetBrains Mono",
2533
2839
  ui-monospace,
@@ -2540,32 +2846,50 @@
2540
2846
  monospace;
2541
2847
  display: block;
2542
2848
  padding: 16px 16px 16px 64px;
2543
- line-height: 1.6;
2849
+ line-height: 1.75;
2544
2850
  font-size: 14px;
2545
2851
  margin: 24px 0 !important;
2546
2852
  overflow-x: auto;
2547
- border: 1px solid #e2e8f0;
2853
+ border: 1px solid var(--border);
2548
2854
  position: relative;
2549
- border-radius: 8px;
2855
+ border-radius: var(--radius, 8px);
2550
2856
  tab-size: 2;
2551
- box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.05);
2857
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
2552
2858
  }
2553
- .lexical-editor-root .editor-code:before {
2859
+ .lexical-editor-root .editor-code::before {
2554
2860
  content: attr(data-gutter);
2555
2861
  position: absolute;
2556
- background-color: #f8fafc;
2557
- border-right: 1px solid #e2e8f0;
2862
+ background-color: var(--muted);
2558
2863
  left: 0;
2559
2864
  top: 0;
2560
2865
  bottom: 0;
2561
- padding: 16px 12px;
2562
- color: #94a3b8;
2866
+ padding: 16px;
2867
+ border-right: 1px solid var(--border);
2868
+ color: var(--muted-foreground);
2563
2869
  white-space: pre-wrap;
2564
2870
  text-align: right;
2565
- min-width: 56px;
2566
- font-variant-numeric: tabular-nums;
2567
- user-select: none;
2871
+ min-width: 48px;
2568
2872
  font-size: 12px;
2873
+ user-select: none;
2874
+ }
2875
+ .lexical-editor-root .editor-text-code {
2876
+ background-color: var(--muted, #f3f4f6);
2877
+ color: var(--foreground, #1f2937);
2878
+ padding: 2px 6px;
2879
+ font-family:
2880
+ "JetBrains Mono",
2881
+ ui-monospace,
2882
+ SFMono-Regular,
2883
+ Menlo,
2884
+ Monaco,
2885
+ Consolas,
2886
+ "Liberation Mono",
2887
+ "Courier New",
2888
+ monospace;
2889
+ font-size: 14px;
2890
+ border-radius: var(--radius, 8px);
2891
+ border: 1px solid var(--border, #d1d5db);
2892
+ font-weight: 500;
2569
2893
  }
2570
2894
  .lexical-editor-root .editor-hashtag {
2571
2895
  background-color: rgba(var(--primary, #3b82f6), 0.1);
@@ -2597,24 +2921,20 @@
2597
2921
  color: var(--foreground, #1f2937);
2598
2922
  }
2599
2923
  .lexical-editor-root .editor-table .editor-table-cell-selected {
2600
- background-color: rgba(var(--primary, #3b82f6), 0.05);
2601
- }
2602
- .lexical-editor-root .editor-table .editor-table-cell-resizer {
2603
- position: absolute;
2604
- right: -4px;
2605
- height: 100%;
2606
- width: 8px;
2607
- cursor: ew-resize;
2608
- z-index: 10;
2609
- top: 0;
2924
+ background-color: rgba(var(--primary, #3b82f6), 0.3) !important;
2925
+ outline: 2px solid var(--primary, #3b82f6) !important;
2926
+ outline-offset: -2px;
2610
2927
  }
2611
- .lexical-editor-root .editor-table .editor-table-cell-resize-ruler {
2612
- display: block;
2928
+ .lexical-editor-root .editor-table .editor-table-cell-selected::after {
2929
+ content: "";
2613
2930
  position: absolute;
2614
- width: 1px;
2615
- height: 100%;
2616
- background-color: var(--primary, #3b82f6);
2617
2931
  top: 0;
2932
+ left: 0;
2933
+ right: 0;
2934
+ bottom: 0;
2935
+ background-color: rgba(var(--primary, #3b82f6), 0.3);
2936
+ pointer-events: none;
2937
+ z-index: 2;
2618
2938
  }
2619
2939
  .lexical-editor-root .editor-table .editor-table-cell-action-button-container {
2620
2940
  display: block;
@@ -2626,20 +2946,27 @@
2626
2946
  height: 20px;
2627
2947
  }
2628
2948
  .lexical-editor-root .editor-table .editor-table-cell-action-button {
2629
- background-color: #eee;
2949
+ background-color: var(--muted, #f3f4f6);
2630
2950
  display: block;
2631
2951
  border: 0;
2632
- border-radius: 20px;
2952
+ border-radius: 9999px;
2633
2953
  width: 20px;
2634
2954
  height: 20px;
2635
- color: #222;
2955
+ color: var(--foreground, #1f2937);
2636
2956
  cursor: pointer;
2957
+ transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
2958
+ }
2959
+ .lexical-editor-root .editor-table .editor-table-cell-action-button:hover:not(:disabled):not([data-state=on]):not([data-state=active]) {
2960
+ transform: translateY(-1px);
2961
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
2637
2962
  }
2638
- .lexical-editor-root .editor-table .editor-table-cell-action-button:hover {
2639
- background-color: #ddd;
2963
+ .lexical-editor-root .editor-table .editor-table-cell-action-button:active:not(:disabled) {
2964
+ transform: translateY(0) scale(0.98);
2965
+ box-shadow: none;
2966
+ filter: brightness(0.95);
2640
2967
  }
2641
2968
  .lexical-editor-root .editor-table .editor-table-cell-editing {
2642
- box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
2969
+ box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
2643
2970
  border-radius: 2px;
2644
2971
  }
2645
2972
  .lexical-editor-root .editor-table .editor-table-cell-primary-selected {
@@ -2674,8 +3001,32 @@
2674
3001
  outline: 2px solid var(--primary, #3b82f6);
2675
3002
  }
2676
3003
  .lexical-editor-root .editor-table .editor-table-selection {
3004
+ background-color: rgba(var(--primary, #3b82f6), 0.15) !important;
3005
+ }
3006
+ .editor-table-cell-resizer {
3007
+ position: absolute;
3008
+ height: 100%;
3009
+ width: 16px;
3010
+ cursor: col-resize;
3011
+ z-index: 50;
3012
+ top: 0;
3013
+ pointer-events: auto !important;
3014
+ user-select: none;
2677
3015
  background-color: transparent;
2678
3016
  }
3017
+ .editor-table-cell-resizer:hover {
3018
+ background-color: rgba(var(--primary, #3b82f6), 0.1);
3019
+ }
3020
+ .editor-table-cell-resize-ruler {
3021
+ display: block;
3022
+ position: absolute;
3023
+ width: 1px;
3024
+ height: 100%;
3025
+ background-color: var(--primary, #3b82f6);
3026
+ top: 0;
3027
+ left: 8px;
3028
+ pointer-events: none;
3029
+ }
2679
3030
  .lexical-editor-root .editor-link {
2680
3031
  color: #3b82f6;
2681
3032
  text-decoration: none;
@@ -2707,25 +3058,6 @@
2707
3058
  vertical-align: super !important;
2708
3059
  font-size: 0.8em !important;
2709
3060
  }
2710
- .lexical-editor-root .editor-text-code {
2711
- background-color: #f1f5f9;
2712
- color: #0f172a;
2713
- padding: 2px 6px;
2714
- font-family:
2715
- "JetBrains Mono",
2716
- ui-monospace,
2717
- SFMono-Regular,
2718
- Menlo,
2719
- Monaco,
2720
- Consolas,
2721
- "Liberation Mono",
2722
- "Courier New",
2723
- monospace;
2724
- font-size: 14px;
2725
- border-radius: 6px;
2726
- border: 1px solid #e2e8f0;
2727
- font-weight: 500;
2728
- }
2729
3061
  .lexical-editor-root .editor-text-align-left {
2730
3062
  text-align: left !important;
2731
3063
  }
@@ -2827,40 +3159,6 @@
2827
3159
  outline: 2px solid var(--primary, #3b82f6);
2828
3160
  }
2829
3161
  .lexical-editor-root .editor-autocomplete {
2830
- color: #9ca3af;
2831
- }
2832
- .editor-content-editable {
2833
- position: relative !important;
2834
- display: block !important;
2835
- outline: none !important;
2836
- }
2837
- .editor-content-editable:not(.editor-content-editable--readonly):not(.editor-content-editable--review) {
2838
- min-height: 288px !important;
2839
- padding: 16px 32px !important;
2840
- }
2841
- .editor-content-editable:focus {
2842
- outline: none !important;
2843
- }
2844
- .editor-content-editable--readonly,
2845
- .editor-content-editable--review {
2846
- cursor: default !important;
2847
- user-select: text !important;
2848
- min-height: unset !important;
2849
- padding: 0 !important;
2850
- }
2851
- .editor-placeholder {
2852
- color: var(--muted-foreground) !important;
2853
- pointer-events: none !important;
2854
- position: absolute !important;
2855
- top: 0 !important;
2856
- left: 0 !important;
2857
- overflow: hidden !important;
2858
- padding: 18px 32px !important;
2859
- text-overflow: ellipsis !important;
2860
- user-select: none !important;
2861
- }
2862
- .editor-content-editable--readonly + .editor-placeholder,
2863
- .editor-content-editable--review + .editor-placeholder {
2864
- display: none !important;
3162
+ color: var(--muted-foreground, #64748b);
2865
3163
  }
2866
3164
  /*# sourceMappingURL=index.css.map */