@domternal/theme 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1828 @@
1
+ @charset "UTF-8";
2
+ .dm-editor {
3
+ --dm-bg: #ffffff;
4
+ --dm-text: #1a1a1a;
5
+ --dm-muted: #999999;
6
+ --dm-surface: #f8f9fa;
7
+ --dm-border-color: #e5e7eb;
8
+ --dm-hover: rgba(0, 0, 0, 0.04);
9
+ --dm-active: rgba(0, 0, 0, 0.1);
10
+ --dm-accent: #2563eb;
11
+ --dm-accent-hover: #1d4ed8;
12
+ --dm-accent-surface: rgba(37, 99, 235, 0.1);
13
+ --dm-focus-color: rgba(66, 133, 244, 0.3);
14
+ --dm-selection: rgba(66, 133, 244, 0.2);
15
+ --dm-code-surface: #f0f0f0;
16
+ --dm-code-color: inherit;
17
+ --dm-editor-bg: var(--dm-bg);
18
+ --dm-editor-text: var(--dm-text);
19
+ --dm-editor-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
20
+ Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
21
+ --dm-editor-font-size: 1rem;
22
+ --dm-editor-line-height: 1.6;
23
+ --dm-editor-padding: 1rem;
24
+ --dm-editor-border: 1px solid var(--dm-border-color);
25
+ --dm-editor-border-radius: 0.75rem;
26
+ --dm-editor-focus-ring: none;
27
+ --dm-editor-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02);
28
+ --dm-placeholder-color: var(--dm-muted);
29
+ --dm-link-color: var(--dm-accent);
30
+ --dm-link-hover-color: var(--dm-accent-hover);
31
+ --dm-code-bg: var(--dm-code-surface);
32
+ --dm-code-text: var(--dm-code-color);
33
+ --dm-code-font: "SF Mono", "Fira Code", Consolas, "Liberation Mono", Menlo, monospace;
34
+ --dm-code-border-radius: 0.25rem;
35
+ --dm-code-block-bg: var(--dm-code-surface);
36
+ --dm-code-block-text: var(--dm-text);
37
+ --dm-syntax-keyword: #d73a49;
38
+ --dm-syntax-entity: #6f42c1;
39
+ --dm-syntax-constant: #005cc5;
40
+ --dm-syntax-string: #032f62;
41
+ --dm-syntax-variable: #e36209;
42
+ --dm-syntax-comment: #6a737d;
43
+ --dm-syntax-tag: #22863a;
44
+ --dm-syntax-addition: #22863a;
45
+ --dm-syntax-addition-bg: #f0fff4;
46
+ --dm-syntax-deletion: #b31d28;
47
+ --dm-syntax-deletion-bg: #ffeef0;
48
+ --dm-blockquote-border: 3px solid #6a6a6a;
49
+ --dm-blockquote-color: #6a6a6a;
50
+ --dm-hr-color: var(--dm-border-color);
51
+ --dm-table-border: 1px solid var(--dm-border-color);
52
+ --dm-table-header-bg: var(--dm-surface);
53
+ --dm-table-selected-bg: rgba(66, 133, 244, 0.15);
54
+ --dm-mention-bg: var(--dm-accent-surface);
55
+ --dm-mention-color: var(--dm-accent);
56
+ --dm-mention-border-radius: 0.25rem;
57
+ --dm-highlight-bg: #fff3cd;
58
+ --dm-details-border: 1px solid var(--dm-border-color);
59
+ --dm-details-bg: var(--dm-surface);
60
+ --dm-details-summary-font-weight: 600;
61
+ }
62
+
63
+ .dm-toolbar {
64
+ --dm-toolbar-bg: var(--dm-bg, #ffffff);
65
+ --dm-toolbar-border: none;
66
+ --dm-toolbar-padding: 0.375rem 0.5rem;
67
+ --dm-toolbar-gap: 0.125rem;
68
+ --dm-toolbar-border-radius: 0.75rem 0.75rem 0 0;
69
+ --dm-button-size: 2rem;
70
+ --dm-button-border-radius: 0.375rem;
71
+ --dm-button-color: var(--dm-text, #374151);
72
+ --dm-button-hover-bg: var(--dm-hover, rgba(0, 0, 0, 0.04));
73
+ --dm-button-active-bg: var(--dm-accent-surface, rgba(37, 99, 235, 0.1));
74
+ --dm-button-active-color: var(--dm-accent, #2563eb);
75
+ --dm-button-disabled-opacity: 0.35;
76
+ --dm-separator-color: var(--dm-border-color, #e5e7eb);
77
+ --dm-separator-margin: 0.375rem;
78
+ }
79
+
80
+ .dm-editor .ProseMirror {
81
+ position: relative;
82
+ word-wrap: break-word;
83
+ white-space: pre-wrap;
84
+ white-space: break-spaces;
85
+ -webkit-font-variant-ligatures: none;
86
+ font-variant-ligatures: none;
87
+ font-feature-settings: "liga" 0;
88
+ outline: none;
89
+ }
90
+
91
+ .dm-editor .ProseMirror pre {
92
+ white-space: pre-wrap;
93
+ }
94
+
95
+ .dm-editor .ProseMirror li {
96
+ position: relative;
97
+ }
98
+
99
+ .ProseMirror-hideselection *::selection {
100
+ background: transparent;
101
+ }
102
+
103
+ .ProseMirror-hideselection *::-moz-selection {
104
+ background: transparent;
105
+ }
106
+
107
+ .ProseMirror-hideselection {
108
+ caret-color: transparent;
109
+ }
110
+
111
+ .ProseMirror [draggable][contenteditable=false] {
112
+ user-select: text;
113
+ }
114
+
115
+ .dm-editor .ProseMirror-selectednode {
116
+ outline: 2px solid var(--dm-accent, #2563eb);
117
+ }
118
+
119
+ .dm-editor li.ProseMirror-selectednode {
120
+ outline: none;
121
+ }
122
+
123
+ .dm-editor li.ProseMirror-selectednode::after {
124
+ content: "";
125
+ position: absolute;
126
+ left: -32px;
127
+ right: -2px;
128
+ top: -2px;
129
+ bottom: -2px;
130
+ border: 2px solid var(--dm-accent, #2563eb);
131
+ pointer-events: none;
132
+ }
133
+
134
+ img.ProseMirror-separator {
135
+ display: inline !important;
136
+ border: none !important;
137
+ margin: 0 !important;
138
+ }
139
+
140
+ .dm-editor .ProseMirror-gapcursor {
141
+ display: none;
142
+ pointer-events: none;
143
+ position: absolute;
144
+ }
145
+
146
+ .dm-editor .ProseMirror-gapcursor::after {
147
+ content: "";
148
+ display: block;
149
+ position: absolute;
150
+ top: -2px;
151
+ width: 20px;
152
+ border-top: 1px solid var(--dm-editor-text, #1a1a1a);
153
+ animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;
154
+ }
155
+
156
+ @keyframes ProseMirror-cursor-blink {
157
+ to {
158
+ visibility: hidden;
159
+ }
160
+ }
161
+ .dm-editor .ProseMirror-focused .ProseMirror-gapcursor {
162
+ display: block;
163
+ }
164
+
165
+ .dm-editor .tableWrapper {
166
+ overflow-x: auto;
167
+ }
168
+
169
+ .dm-editor table {
170
+ border-collapse: collapse;
171
+ table-layout: fixed;
172
+ width: 100%;
173
+ overflow: hidden;
174
+ }
175
+
176
+ .dm-editor td,
177
+ .dm-editor th {
178
+ vertical-align: top;
179
+ box-sizing: border-box;
180
+ position: relative;
181
+ }
182
+
183
+ .dm-editor .column-resize-handle {
184
+ position: absolute;
185
+ right: -1.5px;
186
+ top: 0;
187
+ bottom: 0;
188
+ width: 2px;
189
+ z-index: 20;
190
+ background-color: var(--dm-accent, #2563eb);
191
+ pointer-events: none;
192
+ }
193
+
194
+ .dm-editor .dm-mouse-drag .column-resize-handle {
195
+ display: none;
196
+ }
197
+
198
+ .dm-editor .ProseMirror.resize-cursor {
199
+ cursor: ew-resize;
200
+ cursor: col-resize;
201
+ }
202
+
203
+ .dm-editor .ProseMirror.resize-cursor.dm-mouse-drag {
204
+ cursor: auto;
205
+ }
206
+
207
+ .dm-editor .selectedCell::after {
208
+ z-index: 2;
209
+ position: absolute;
210
+ content: "";
211
+ left: 0;
212
+ right: 0;
213
+ top: 0;
214
+ bottom: 0;
215
+ background: var(--dm-table-selected-bg, rgba(66, 133, 244, 0.15));
216
+ pointer-events: none;
217
+ }
218
+
219
+ .dm-editor .selectedCell::selection,
220
+ .dm-editor .selectedCell *::selection {
221
+ background: transparent !important;
222
+ color: inherit !important;
223
+ }
224
+
225
+ .dm-editor {
226
+ display: block;
227
+ position: relative;
228
+ box-sizing: border-box;
229
+ background: var(--dm-editor-bg);
230
+ color: var(--dm-editor-text);
231
+ font-family: var(--dm-editor-font-family);
232
+ font-size: var(--dm-editor-font-size);
233
+ line-height: var(--dm-editor-line-height);
234
+ border: var(--dm-editor-border);
235
+ border-radius: var(--dm-editor-border-radius);
236
+ box-shadow: var(--dm-editor-shadow, none);
237
+ overflow: hidden;
238
+ color-scheme: var(--dm-color-scheme, light);
239
+ }
240
+ .dm-editor .ProseMirror {
241
+ padding: var(--dm-editor-padding);
242
+ min-height: 6rem;
243
+ }
244
+ .dm-editor .ProseMirror:focus {
245
+ outline: none;
246
+ }
247
+ .dm-editor:focus-within {
248
+ box-shadow: var(--dm-editor-focus-ring, var(--dm-editor-shadow, none));
249
+ }
250
+ .dm-editor .ProseMirror ::selection {
251
+ background: var(--dm-selection);
252
+ }
253
+
254
+ .dm-toolbar + .dm-editor {
255
+ border-top-left-radius: 0;
256
+ border-top-right-radius: 0;
257
+ border-top: none;
258
+ }
259
+
260
+ @keyframes dm-fade-in {
261
+ from {
262
+ opacity: 0;
263
+ }
264
+ to {
265
+ opacity: 1;
266
+ }
267
+ }
268
+ .dm-editor .ProseMirror p {
269
+ margin: 0.4em 0;
270
+ }
271
+ .dm-editor .ProseMirror p:last-child {
272
+ margin-bottom: 0;
273
+ }
274
+ .dm-editor .ProseMirror h1,
275
+ .dm-editor .ProseMirror h2,
276
+ .dm-editor .ProseMirror h3,
277
+ .dm-editor .ProseMirror h4,
278
+ .dm-editor .ProseMirror h5,
279
+ .dm-editor .ProseMirror h6 {
280
+ margin: 1.5em 0 0.5em;
281
+ font-weight: 700;
282
+ line-height: 1.25;
283
+ }
284
+ .dm-editor .ProseMirror h1:first-child,
285
+ .dm-editor .ProseMirror h2:first-child,
286
+ .dm-editor .ProseMirror h3:first-child,
287
+ .dm-editor .ProseMirror h4:first-child,
288
+ .dm-editor .ProseMirror h5:first-child,
289
+ .dm-editor .ProseMirror h6:first-child {
290
+ margin-top: 0;
291
+ }
292
+ .dm-editor .ProseMirror h1 {
293
+ font-size: 2em;
294
+ }
295
+ .dm-editor .ProseMirror h2 {
296
+ font-size: 1.5em;
297
+ }
298
+ .dm-editor .ProseMirror h3 {
299
+ font-size: 1.25em;
300
+ }
301
+ .dm-editor .ProseMirror h4 {
302
+ font-size: 1.1em;
303
+ }
304
+ .dm-editor .ProseMirror h5 {
305
+ font-size: 1em;
306
+ }
307
+ .dm-editor .ProseMirror h6 {
308
+ font-size: 0.9em;
309
+ color: var(--dm-muted, #666);
310
+ }
311
+ .dm-editor .ProseMirror code {
312
+ background: var(--dm-code-bg);
313
+ color: var(--dm-code-text);
314
+ font-family: var(--dm-code-font);
315
+ font-size: 0.875em;
316
+ padding: 0.15em 0.35em;
317
+ border: 1px solid var(--dm-border-color);
318
+ border-radius: var(--dm-code-border-radius);
319
+ }
320
+ .dm-editor .ProseMirror pre {
321
+ background: var(--dm-code-block-bg);
322
+ color: var(--dm-code-block-text);
323
+ font-family: var(--dm-code-font);
324
+ font-size: 0.875em;
325
+ padding: 1em;
326
+ border-radius: 0.375rem;
327
+ overflow-x: auto;
328
+ margin: 0.75em 0;
329
+ }
330
+ .dm-editor .ProseMirror pre code {
331
+ background: none;
332
+ color: inherit;
333
+ padding: 0;
334
+ border: none;
335
+ border-radius: 0;
336
+ font-size: inherit;
337
+ }
338
+ .dm-editor .ProseMirror blockquote {
339
+ border-left: var(--dm-blockquote-border);
340
+ color: var(--dm-blockquote-color);
341
+ margin: 0.75em 0;
342
+ padding: 0.25em 0 0.25em 1em;
343
+ }
344
+ .dm-editor .ProseMirror blockquote p {
345
+ margin-top: 0;
346
+ }
347
+ .dm-editor .ProseMirror ul,
348
+ .dm-editor .ProseMirror ol {
349
+ margin: 0.75em 0;
350
+ padding-left: 1.5em;
351
+ }
352
+ .dm-editor .ProseMirror ul li,
353
+ .dm-editor .ProseMirror ol li {
354
+ margin: 0.25em 0;
355
+ }
356
+ .dm-editor .ProseMirror ul li > p,
357
+ .dm-editor .ProseMirror ol li > p {
358
+ margin: 0.1em 0;
359
+ }
360
+ .dm-editor .ProseMirror ol {
361
+ list-style-type: decimal;
362
+ }
363
+ .dm-editor .ProseMirror ul {
364
+ list-style-type: disc;
365
+ }
366
+ .dm-editor .ProseMirror ul ul,
367
+ .dm-editor .ProseMirror ol ul {
368
+ list-style-type: circle;
369
+ }
370
+ .dm-editor .ProseMirror ul ul ul,
371
+ .dm-editor .ProseMirror ol ul ul,
372
+ .dm-editor .ProseMirror ol ol ul {
373
+ list-style-type: square;
374
+ }
375
+ .dm-editor .ProseMirror hr {
376
+ border: none;
377
+ border-top: 2px solid var(--dm-hr-color);
378
+ margin: 1.5em 0;
379
+ }
380
+ .dm-editor .ProseMirror a {
381
+ color: var(--dm-link-color);
382
+ text-decoration: underline;
383
+ cursor: pointer;
384
+ }
385
+ .dm-editor .ProseMirror a:hover {
386
+ color: var(--dm-link-hover-color);
387
+ }
388
+ .dm-editor .ProseMirror mark {
389
+ color: inherit;
390
+ }
391
+ .dm-editor .ProseMirror img {
392
+ max-width: 100%;
393
+ height: auto;
394
+ display: block;
395
+ margin: 0.75em 0;
396
+ }
397
+ .dm-editor .ProseMirror img.ProseMirror-selectednode {
398
+ outline: 2px solid var(--dm-accent, #2563eb);
399
+ }
400
+ .dm-editor .ProseMirror table {
401
+ border: var(--dm-table-border);
402
+ margin: 0.75em 0;
403
+ }
404
+ .dm-editor .ProseMirror table td,
405
+ .dm-editor .ProseMirror table th {
406
+ border: var(--dm-table-border);
407
+ padding: 0.5em 0.75em;
408
+ min-width: 100px;
409
+ }
410
+ .dm-editor .ProseMirror table th {
411
+ background: var(--dm-table-header-bg);
412
+ font-weight: 600;
413
+ text-align: left;
414
+ }
415
+ .dm-editor .ProseMirror table td > p,
416
+ .dm-editor .ProseMirror table th > p {
417
+ margin: 0;
418
+ }
419
+
420
+ .dm-editor .ProseMirror pre code .hljs-doctag,
421
+ .dm-editor .ProseMirror pre code .hljs-keyword,
422
+ .dm-editor .ProseMirror pre code .hljs-meta .hljs-keyword,
423
+ .dm-editor .ProseMirror pre code .hljs-template-tag,
424
+ .dm-editor .ProseMirror pre code .hljs-template-variable,
425
+ .dm-editor .ProseMirror pre code .hljs-type,
426
+ .dm-editor .ProseMirror pre code .hljs-variable.language_ {
427
+ color: var(--dm-syntax-keyword);
428
+ }
429
+ .dm-editor .ProseMirror pre code .hljs-title,
430
+ .dm-editor .ProseMirror pre code .hljs-title.class_,
431
+ .dm-editor .ProseMirror pre code .hljs-title.class_.inherited__,
432
+ .dm-editor .ProseMirror pre code .hljs-title.function_ {
433
+ color: var(--dm-syntax-entity);
434
+ }
435
+ .dm-editor .ProseMirror pre code .hljs-attr,
436
+ .dm-editor .ProseMirror pre code .hljs-attribute,
437
+ .dm-editor .ProseMirror pre code .hljs-literal,
438
+ .dm-editor .ProseMirror pre code .hljs-meta,
439
+ .dm-editor .ProseMirror pre code .hljs-number,
440
+ .dm-editor .ProseMirror pre code .hljs-operator,
441
+ .dm-editor .ProseMirror pre code .hljs-variable,
442
+ .dm-editor .ProseMirror pre code .hljs-selector-attr,
443
+ .dm-editor .ProseMirror pre code .hljs-selector-class,
444
+ .dm-editor .ProseMirror pre code .hljs-selector-id {
445
+ color: var(--dm-syntax-constant);
446
+ }
447
+ .dm-editor .ProseMirror pre code .hljs-regexp,
448
+ .dm-editor .ProseMirror pre code .hljs-string,
449
+ .dm-editor .ProseMirror pre code .hljs-meta .hljs-string {
450
+ color: var(--dm-syntax-string);
451
+ }
452
+ .dm-editor .ProseMirror pre code .hljs-built_in,
453
+ .dm-editor .ProseMirror pre code .hljs-symbol {
454
+ color: var(--dm-syntax-variable);
455
+ }
456
+ .dm-editor .ProseMirror pre code .hljs-comment,
457
+ .dm-editor .ProseMirror pre code .hljs-code,
458
+ .dm-editor .ProseMirror pre code .hljs-formula {
459
+ color: var(--dm-syntax-comment);
460
+ }
461
+ .dm-editor .ProseMirror pre code .hljs-name,
462
+ .dm-editor .ProseMirror pre code .hljs-quote,
463
+ .dm-editor .ProseMirror pre code .hljs-selector-tag,
464
+ .dm-editor .ProseMirror pre code .hljs-selector-pseudo {
465
+ color: var(--dm-syntax-tag);
466
+ }
467
+ .dm-editor .ProseMirror pre code .hljs-section {
468
+ color: var(--dm-syntax-constant);
469
+ font-weight: bold;
470
+ }
471
+ .dm-editor .ProseMirror pre code .hljs-bullet {
472
+ color: var(--dm-syntax-tag);
473
+ }
474
+ .dm-editor .ProseMirror pre code .hljs-addition {
475
+ color: var(--dm-syntax-addition);
476
+ background-color: var(--dm-syntax-addition-bg);
477
+ }
478
+ .dm-editor .ProseMirror pre code .hljs-deletion {
479
+ color: var(--dm-syntax-deletion);
480
+ background-color: var(--dm-syntax-deletion-bg);
481
+ }
482
+ .dm-editor .ProseMirror pre code .hljs-emphasis {
483
+ font-style: italic;
484
+ }
485
+ .dm-editor .ProseMirror pre code .hljs-strong {
486
+ font-weight: bold;
487
+ }
488
+
489
+ .dm-toolbar {
490
+ display: flex;
491
+ flex-wrap: wrap;
492
+ align-items: center;
493
+ justify-content: var(--dm-toolbar-justify, flex-start);
494
+ gap: var(--dm-toolbar-gap);
495
+ padding: var(--dm-toolbar-padding);
496
+ background: var(--dm-toolbar-bg);
497
+ border: 1px solid var(--dm-border-color, #e5e7eb);
498
+ border-bottom: 1px solid var(--dm-border-color, #e5e7eb);
499
+ border-radius: var(--dm-toolbar-border-radius);
500
+ box-shadow: var(--dm-editor-shadow, none);
501
+ }
502
+
503
+ .dm-toolbar-group {
504
+ display: flex;
505
+ align-items: center;
506
+ gap: var(--dm-toolbar-gap);
507
+ }
508
+
509
+ .dm-toolbar-button {
510
+ display: inline-flex;
511
+ align-items: center;
512
+ justify-content: center;
513
+ width: var(--dm-button-size);
514
+ height: var(--dm-button-size);
515
+ padding: 0;
516
+ border: none;
517
+ border-radius: var(--dm-button-border-radius);
518
+ background: transparent;
519
+ color: var(--dm-button-color);
520
+ cursor: pointer;
521
+ transition: background-color 0.15s, color 0.15s;
522
+ font-size: 0.875rem;
523
+ line-height: 1;
524
+ }
525
+ .dm-toolbar-button:hover {
526
+ background: var(--dm-button-hover-bg);
527
+ }
528
+ .dm-toolbar-button--active {
529
+ background: var(--dm-button-active-bg);
530
+ color: var(--dm-button-active-color);
531
+ }
532
+ .dm-toolbar-button[aria-expanded=true] {
533
+ background: var(--dm-button-hover-bg);
534
+ }
535
+ .dm-toolbar-button--disabled, .dm-toolbar-button:disabled {
536
+ opacity: var(--dm-button-disabled-opacity);
537
+ cursor: not-allowed;
538
+ pointer-events: none;
539
+ }
540
+ .dm-toolbar-button svg {
541
+ width: 1.125rem;
542
+ height: 1.125rem;
543
+ }
544
+
545
+ .dm-toolbar-dropdown-trigger {
546
+ position: relative;
547
+ width: auto;
548
+ padding: 0 0.375rem;
549
+ gap: 0.125rem;
550
+ }
551
+ .dm-toolbar-dropdown-trigger[aria-expanded=true] {
552
+ background: var(--dm-button-hover-bg);
553
+ }
554
+
555
+ .dm-toolbar-color-indicator {
556
+ position: absolute;
557
+ bottom: 0.15rem;
558
+ left: 0.25rem;
559
+ width: 1.375rem;
560
+ height: 0.3rem;
561
+ border-radius: 2px;
562
+ }
563
+
564
+ .dm-toolbar-trigger-label {
565
+ display: inline-block;
566
+ vertical-align: middle;
567
+ text-align: center;
568
+ font-size: 0.8125rem;
569
+ line-height: 1;
570
+ white-space: nowrap;
571
+ overflow: hidden;
572
+ text-overflow: ellipsis;
573
+ width: 2.5rem;
574
+ }
575
+ .dm-toolbar-trigger-label svg {
576
+ width: 1.125rem;
577
+ height: 1.125rem;
578
+ }
579
+
580
+ [data-dropdown=fontFamily] .dm-toolbar-trigger-label {
581
+ width: 5rem;
582
+ }
583
+
584
+ .dm-toolbar-button .dm-dropdown-caret {
585
+ width: 0.625rem;
586
+ height: 0.625rem;
587
+ flex-shrink: 0;
588
+ }
589
+
590
+ .dm-toolbar-dropdown-wrapper {
591
+ position: relative;
592
+ }
593
+
594
+ .dm-toolbar-dropdown-panel {
595
+ position: absolute;
596
+ z-index: 50;
597
+ display: flex;
598
+ flex-direction: column;
599
+ gap: 0.125rem;
600
+ min-width: 8rem;
601
+ padding: 0.25rem;
602
+ background: var(--dm-bg, #fff);
603
+ border: 1px solid var(--dm-border-color, #e5e7eb);
604
+ border-radius: 0.5rem;
605
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.04);
606
+ animation: dm-fade-in 0.2s ease;
607
+ }
608
+ .dm-toolbar-dropdown-panel.dm-color-palette {
609
+ padding: 0.5rem;
610
+ border-radius: 0.75rem;
611
+ }
612
+
613
+ .dm-toolbar-dropdown-panel[data-display-mode=icon] {
614
+ min-width: 0;
615
+ }
616
+ .dm-toolbar-dropdown-panel[data-display-mode=icon] .dm-toolbar-dropdown-item {
617
+ width: auto;
618
+ padding: 0.375rem;
619
+ justify-content: center;
620
+ }
621
+
622
+ .dm-toolbar-dropdown-panel[data-display-mode=text] {
623
+ min-width: 0;
624
+ }
625
+ .dm-toolbar-dropdown-panel[data-display-mode=text] .dm-toolbar-dropdown-item {
626
+ gap: 0;
627
+ }
628
+
629
+ .dm-toolbar-dropdown-item {
630
+ display: flex;
631
+ align-items: center;
632
+ gap: 0.5rem;
633
+ width: 100%;
634
+ padding: 0.375rem 0.5rem;
635
+ border: none;
636
+ border-radius: var(--dm-button-border-radius);
637
+ background: transparent;
638
+ color: var(--dm-button-color);
639
+ cursor: pointer;
640
+ font-size: 0.8125rem;
641
+ line-height: 1.4;
642
+ text-align: left;
643
+ white-space: nowrap;
644
+ transition: background-color 0.15s;
645
+ }
646
+ .dm-toolbar-dropdown-item:hover {
647
+ background: var(--dm-button-hover-bg);
648
+ }
649
+ .dm-toolbar-dropdown-item--active {
650
+ color: var(--dm-button-active-color);
651
+ background: var(--dm-button-active-bg);
652
+ }
653
+ .dm-toolbar-dropdown-item svg {
654
+ width: 1rem;
655
+ height: 1rem;
656
+ flex-shrink: 0;
657
+ }
658
+
659
+ .dm-toolbar-separator {
660
+ width: 1px;
661
+ height: 1.25rem;
662
+ background: var(--dm-separator-color);
663
+ margin: 0 var(--dm-separator-margin);
664
+ }
665
+
666
+ .dm-color-palette {
667
+ display: grid;
668
+ grid-template-columns: repeat(var(--dm-palette-columns, 10), 1fr);
669
+ gap: 0.375rem;
670
+ padding: 0.375rem;
671
+ min-width: auto;
672
+ width: max-content;
673
+ }
674
+
675
+ .dm-color-palette-reset {
676
+ grid-column: 1/-1;
677
+ display: flex;
678
+ align-items: center;
679
+ gap: 0.375rem;
680
+ width: 100%;
681
+ padding: 0.375rem 0.5rem;
682
+ margin-bottom: 0.375rem;
683
+ border: none;
684
+ border-radius: 0.375rem;
685
+ background: transparent;
686
+ color: var(--dm-button-color, #1a1a1a);
687
+ cursor: pointer;
688
+ font-size: 0.8125rem;
689
+ line-height: 1.4;
690
+ text-align: left;
691
+ white-space: nowrap;
692
+ transition: background-color 0.15s;
693
+ }
694
+ .dm-color-palette-reset:hover {
695
+ background: var(--dm-button-hover-bg, rgba(0, 0, 0, 0.06));
696
+ }
697
+ .dm-color-palette-reset svg {
698
+ width: 0.875rem;
699
+ height: 0.875rem;
700
+ flex-shrink: 0;
701
+ }
702
+
703
+ .dm-color-swatch {
704
+ position: relative;
705
+ width: 1.5rem;
706
+ height: 1.5rem;
707
+ padding: 0;
708
+ border: 1px solid rgba(0, 0, 0, 0.06);
709
+ border-radius: 50%;
710
+ cursor: pointer;
711
+ transition: transform 0.1s, box-shadow 0.1s;
712
+ }
713
+ .dm-color-swatch:hover {
714
+ transform: scale(1.15);
715
+ z-index: 1;
716
+ box-shadow: 0 0 0 2px var(--dm-toolbar-bg, #f8f9fa), 0 0 0 3px var(--dm-accent, #2563eb);
717
+ }
718
+ .dm-color-swatch--active {
719
+ box-shadow: 0 0 0 2px var(--dm-toolbar-bg, #f8f9fa), 0 0 0 3px var(--dm-accent, #2563eb);
720
+ }
721
+ .dm-color-swatch--active::after {
722
+ content: "";
723
+ position: absolute;
724
+ inset: 0;
725
+ border-radius: 50%;
726
+ background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M12 5L6.5 11 4 8.5' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' opacity='0.3'/%3E%3Cpath d='M12 5L6.5 11 4 8.5' fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat;
727
+ }
728
+
729
+ .dm-theme-dark .dm-color-swatch,
730
+ .dm-theme-auto .dm-color-swatch {
731
+ border-color: rgba(255, 255, 255, 0.15);
732
+ }
733
+
734
+ @media (prefers-color-scheme: dark) {
735
+ .dm-theme-auto .dm-color-swatch {
736
+ border-color: rgba(255, 255, 255, 0.15);
737
+ }
738
+ }
739
+ .dm-bubble-menu {
740
+ --dm-toolbar-padding: 0.25rem;
741
+ --dm-toolbar-gap: 0.125rem;
742
+ --dm-button-size: 1.75rem;
743
+ --dm-button-border-radius: 0.25rem;
744
+ --dm-button-color: var(--dm-text, #1a1a1a);
745
+ --dm-button-hover-bg: var(--dm-hover, rgba(0, 0, 0, 0.06));
746
+ --dm-button-active-bg: var(--dm-accent-surface, rgba(37, 99, 235, 0.1));
747
+ --dm-button-active-color: var(--dm-accent, #2563eb);
748
+ --dm-button-disabled-opacity: 0.4;
749
+ }
750
+ .dm-bubble-menu .dm-toolbar-button svg {
751
+ width: 1rem;
752
+ height: 1rem;
753
+ }
754
+ .dm-bubble-menu .dm-toolbar-separator {
755
+ width: 1px;
756
+ height: 1.125rem;
757
+ background: var(--dm-separator-color, var(--dm-border-color, #e0e0e0));
758
+ margin: 0 0.125rem;
759
+ flex-shrink: 0;
760
+ }
761
+ .dm-bubble-menu {
762
+ position: absolute;
763
+ display: flex;
764
+ align-items: center;
765
+ gap: var(--dm-toolbar-gap);
766
+ padding: var(--dm-toolbar-padding);
767
+ background: var(--dm-bg, #fff);
768
+ border: 1px solid var(--dm-border-color, #e5e7eb);
769
+ border-radius: 0.5rem;
770
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.04);
771
+ visibility: hidden;
772
+ opacity: 0;
773
+ z-index: 50;
774
+ }
775
+ .dm-bubble-menu[data-show] {
776
+ visibility: visible;
777
+ opacity: 1;
778
+ transition: opacity 0.15s ease;
779
+ }
780
+
781
+ .dm-floating-menu {
782
+ position: absolute;
783
+ display: flex;
784
+ flex-direction: column;
785
+ gap: var(--dm-toolbar-gap);
786
+ padding: var(--dm-toolbar-padding);
787
+ background: var(--dm-toolbar-bg);
788
+ border: var(--dm-toolbar-border);
789
+ border-radius: var(--dm-button-border-radius);
790
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
791
+ visibility: hidden;
792
+ opacity: 0;
793
+ transition: opacity 0.2s ease, visibility 0.2s;
794
+ z-index: 50;
795
+ }
796
+ .dm-floating-menu[data-show] {
797
+ visibility: visible;
798
+ opacity: 1;
799
+ }
800
+
801
+ .dm-link-popover {
802
+ position: fixed;
803
+ display: flex;
804
+ align-items: center;
805
+ gap: 0.25rem;
806
+ padding: 0.25rem;
807
+ background: #f8f9fa;
808
+ border: 1px solid #e0e0e0;
809
+ border-radius: 0.25rem;
810
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
811
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
812
+ visibility: hidden;
813
+ opacity: 0;
814
+ transition: opacity 0.2s ease, visibility 0.2s;
815
+ z-index: 60;
816
+ }
817
+ .dm-link-popover[data-show] {
818
+ visibility: visible;
819
+ opacity: 1;
820
+ }
821
+
822
+ .dm-link-popover-input {
823
+ border: 1px solid #e0e0e0;
824
+ border-radius: 0.25rem;
825
+ padding: 0.25rem 0.5rem;
826
+ font-size: 0.8125rem;
827
+ font-family: inherit;
828
+ min-width: 14rem;
829
+ outline: none;
830
+ background: #fff;
831
+ color: #1a1a1a;
832
+ }
833
+ .dm-link-popover-input:focus {
834
+ border-color: #2563eb;
835
+ }
836
+
837
+ .dm-link-popover-btn {
838
+ display: inline-flex;
839
+ align-items: center;
840
+ justify-content: center;
841
+ width: 1.5rem;
842
+ height: 1.5rem;
843
+ padding: 0;
844
+ border: none;
845
+ border-radius: 0.25rem;
846
+ background: transparent;
847
+ color: #1a1a1a;
848
+ cursor: pointer;
849
+ transition: background-color 0.15s, color 0.15s;
850
+ }
851
+ .dm-link-popover-btn:hover {
852
+ background: rgba(0, 0, 0, 0.06);
853
+ }
854
+ .dm-link-popover-btn svg {
855
+ width: 0.875rem;
856
+ height: 0.875rem;
857
+ }
858
+
859
+ .dm-link-popover-apply:hover {
860
+ color: #2563eb;
861
+ }
862
+
863
+ .dm-link-popover-remove:hover {
864
+ color: #dc2626;
865
+ }
866
+
867
+ .dm-link-pending {
868
+ background-color: rgba(37, 99, 235, 0.12);
869
+ border-radius: 1px;
870
+ }
871
+
872
+ [data-theme=dark] .dm-link-popover,
873
+ .dm-theme-dark .dm-link-popover {
874
+ background: #2a2a2a;
875
+ border-color: #404040;
876
+ }
877
+ [data-theme=dark] .dm-link-popover .dm-link-popover-input,
878
+ .dm-theme-dark .dm-link-popover .dm-link-popover-input {
879
+ background: #1a1a1a;
880
+ border-color: #404040;
881
+ color: #e0e0e0;
882
+ }
883
+ [data-theme=dark] .dm-link-popover .dm-link-popover-input:focus,
884
+ .dm-theme-dark .dm-link-popover .dm-link-popover-input:focus {
885
+ border-color: #3b82f6;
886
+ }
887
+ [data-theme=dark] .dm-link-popover .dm-link-popover-btn,
888
+ .dm-theme-dark .dm-link-popover .dm-link-popover-btn {
889
+ color: #e0e0e0;
890
+ }
891
+ [data-theme=dark] .dm-link-popover .dm-link-popover-btn:hover,
892
+ .dm-theme-dark .dm-link-popover .dm-link-popover-btn:hover {
893
+ background: rgba(255, 255, 255, 0.1);
894
+ }
895
+ [data-theme=dark] .dm-link-popover .dm-link-popover-apply:hover,
896
+ .dm-theme-dark .dm-link-popover .dm-link-popover-apply:hover {
897
+ color: #3b82f6;
898
+ }
899
+
900
+ @media (prefers-color-scheme: dark) {
901
+ .dm-theme-auto .dm-link-popover {
902
+ background: #2a2a2a;
903
+ border-color: #404040;
904
+ }
905
+ .dm-theme-auto .dm-link-popover .dm-link-popover-input {
906
+ background: #1a1a1a;
907
+ border-color: #404040;
908
+ color: #e0e0e0;
909
+ }
910
+ .dm-theme-auto .dm-link-popover .dm-link-popover-input:focus {
911
+ border-color: #3b82f6;
912
+ }
913
+ .dm-theme-auto .dm-link-popover .dm-link-popover-btn {
914
+ color: #e0e0e0;
915
+ }
916
+ .dm-theme-auto .dm-link-popover .dm-link-popover-btn:hover {
917
+ background: rgba(255, 255, 255, 0.1);
918
+ }
919
+ .dm-theme-auto .dm-link-popover .dm-link-popover-apply:hover {
920
+ color: #3b82f6;
921
+ }
922
+ }
923
+ .dm-editor .ProseMirror .is-empty::before {
924
+ content: attr(data-placeholder);
925
+ float: left;
926
+ color: var(--dm-placeholder-color);
927
+ pointer-events: none;
928
+ height: 0;
929
+ }
930
+
931
+ .dm-editor .ProseMirror ul[data-type=taskList] {
932
+ list-style: none;
933
+ padding-left: 0;
934
+ }
935
+ .dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] {
936
+ display: flex;
937
+ align-items: flex-start;
938
+ gap: 0.5em;
939
+ }
940
+ .dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] > label {
941
+ display: flex;
942
+ align-items: center;
943
+ flex-shrink: 0;
944
+ margin-top: 0.4em;
945
+ user-select: none;
946
+ }
947
+ .dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] > label input[type=checkbox] {
948
+ width: 1em;
949
+ height: 1em;
950
+ margin: 0;
951
+ padding: 0;
952
+ cursor: pointer;
953
+ accent-color: var(--dm-accent, #2563eb);
954
+ }
955
+ .dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] > div {
956
+ flex: 1;
957
+ min-width: 0;
958
+ }
959
+ .dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] > div > p {
960
+ margin: 0;
961
+ }
962
+ .dm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem][data-checked=true] > div {
963
+ text-decoration: line-through;
964
+ opacity: 0.6;
965
+ }
966
+
967
+ .dm-editor .ProseMirror .mention {
968
+ display: inline;
969
+ background: var(--dm-mention-bg);
970
+ color: var(--dm-mention-color);
971
+ border-radius: var(--dm-mention-border-radius);
972
+ padding: 0.1em 0.3em;
973
+ font-weight: 500;
974
+ font-size: 0.95em;
975
+ white-space: nowrap;
976
+ }
977
+ .dm-editor .ProseMirror .mention-suggestion {
978
+ text-decoration: underline;
979
+ text-decoration-color: var(--dm-accent, #2563eb);
980
+ text-underline-offset: 2px;
981
+ }
982
+
983
+ .dm-editor .ProseMirror img[style*="float: left"], .dm-editor .ProseMirror img[style*="float: right"] {
984
+ max-width: 60%;
985
+ }
986
+
987
+ .dm-editor .ProseMirror .dm-image-resizable {
988
+ position: relative;
989
+ display: inline-block;
990
+ max-width: 100%;
991
+ margin: 0.75em 0;
992
+ line-height: 0;
993
+ }
994
+ .dm-editor .ProseMirror .dm-image-resizable img {
995
+ display: block;
996
+ max-width: 100%;
997
+ height: auto;
998
+ }
999
+ .dm-editor .ProseMirror .dm-image-resizable[data-float=left] {
1000
+ float: left;
1001
+ margin: 0 1em 1em 0;
1002
+ }
1003
+ .dm-editor .ProseMirror .dm-image-resizable[data-float=right] {
1004
+ float: right;
1005
+ margin: 0 0 1em 1em;
1006
+ }
1007
+ .dm-editor .ProseMirror .dm-image-resizable[data-float=center] {
1008
+ display: block;
1009
+ width: fit-content;
1010
+ margin-left: auto;
1011
+ margin-right: auto;
1012
+ }
1013
+ .dm-editor .ProseMirror .dm-image-resizable[data-float=left], .dm-editor .ProseMirror .dm-image-resizable[data-float=right] {
1014
+ max-width: 60%;
1015
+ z-index: 1;
1016
+ }
1017
+ .dm-editor .ProseMirror .dm-image-resizable.ProseMirror-selectednode {
1018
+ outline: 2px solid var(--dm-accent, #2563eb);
1019
+ }
1020
+ .dm-editor .ProseMirror .dm-image-resizable.ProseMirror-selectednode .dm-image-handle {
1021
+ display: block;
1022
+ }
1023
+ .dm-editor .ProseMirror .dm-image-handle {
1024
+ display: none;
1025
+ position: absolute;
1026
+ width: 8px;
1027
+ height: 8px;
1028
+ background: var(--dm-accent, #2563eb);
1029
+ border: 1px solid #fff;
1030
+ border-radius: 1px;
1031
+ z-index: 5;
1032
+ }
1033
+ .dm-editor .ProseMirror .dm-image-handle-nw {
1034
+ top: -4px;
1035
+ left: -4px;
1036
+ cursor: nw-resize;
1037
+ }
1038
+ .dm-editor .ProseMirror .dm-image-handle-ne {
1039
+ top: -4px;
1040
+ right: -4px;
1041
+ cursor: ne-resize;
1042
+ }
1043
+ .dm-editor .ProseMirror .dm-image-handle-sw {
1044
+ bottom: -4px;
1045
+ left: -4px;
1046
+ cursor: sw-resize;
1047
+ }
1048
+ .dm-editor .ProseMirror .dm-image-handle-se {
1049
+ bottom: -4px;
1050
+ right: -4px;
1051
+ cursor: se-resize;
1052
+ }
1053
+
1054
+ .dm-image-popover {
1055
+ position: fixed;
1056
+ display: flex;
1057
+ align-items: center;
1058
+ gap: 0.25rem;
1059
+ padding: 0.25rem;
1060
+ background: #f8f9fa;
1061
+ border: 1px solid #e0e0e0;
1062
+ border-radius: 0.25rem;
1063
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
1064
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
1065
+ visibility: hidden;
1066
+ opacity: 0;
1067
+ transition: opacity 0.2s ease, visibility 0.2s;
1068
+ z-index: 60;
1069
+ }
1070
+ .dm-image-popover[data-show] {
1071
+ visibility: visible;
1072
+ opacity: 1;
1073
+ }
1074
+
1075
+ .dm-image-popover-input {
1076
+ border: 1px solid #e0e0e0;
1077
+ border-radius: 0.25rem;
1078
+ padding: 0.25rem 0.5rem;
1079
+ font-size: 0.8125rem;
1080
+ font-family: inherit;
1081
+ min-width: 14rem;
1082
+ outline: none;
1083
+ background: #fff;
1084
+ color: #1a1a1a;
1085
+ }
1086
+ .dm-image-popover-input:focus {
1087
+ border-color: #2563eb;
1088
+ }
1089
+
1090
+ .dm-image-popover-btn {
1091
+ display: inline-flex;
1092
+ align-items: center;
1093
+ justify-content: center;
1094
+ width: 1.5rem;
1095
+ height: 1.5rem;
1096
+ padding: 0;
1097
+ border: none;
1098
+ border-radius: 0.25rem;
1099
+ background: transparent;
1100
+ color: #1a1a1a;
1101
+ cursor: pointer;
1102
+ transition: background-color 0.15s, color 0.15s;
1103
+ }
1104
+ .dm-image-popover-btn:hover {
1105
+ background: rgba(0, 0, 0, 0.06);
1106
+ }
1107
+ .dm-image-popover-btn svg {
1108
+ width: 0.875rem;
1109
+ height: 0.875rem;
1110
+ }
1111
+
1112
+ .dm-image-popover-apply:hover {
1113
+ color: #2563eb;
1114
+ }
1115
+
1116
+ .dm-image-popover-browse:hover {
1117
+ color: #2563eb;
1118
+ }
1119
+
1120
+ [data-theme=dark] .dm-image-popover,
1121
+ .dm-theme-dark .dm-image-popover {
1122
+ background: #2a2a2a;
1123
+ border-color: #404040;
1124
+ }
1125
+ [data-theme=dark] .dm-image-popover .dm-image-popover-input,
1126
+ .dm-theme-dark .dm-image-popover .dm-image-popover-input {
1127
+ background: #1a1a1a;
1128
+ border-color: #404040;
1129
+ color: #e0e0e0;
1130
+ }
1131
+ [data-theme=dark] .dm-image-popover .dm-image-popover-input:focus,
1132
+ .dm-theme-dark .dm-image-popover .dm-image-popover-input:focus {
1133
+ border-color: #3b82f6;
1134
+ }
1135
+ [data-theme=dark] .dm-image-popover .dm-image-popover-btn,
1136
+ .dm-theme-dark .dm-image-popover .dm-image-popover-btn {
1137
+ color: #e0e0e0;
1138
+ }
1139
+ [data-theme=dark] .dm-image-popover .dm-image-popover-btn:hover,
1140
+ .dm-theme-dark .dm-image-popover .dm-image-popover-btn:hover {
1141
+ background: rgba(255, 255, 255, 0.1);
1142
+ }
1143
+ [data-theme=dark] .dm-image-popover .dm-image-popover-apply:hover,
1144
+ .dm-theme-dark .dm-image-popover .dm-image-popover-apply:hover {
1145
+ color: #3b82f6;
1146
+ }
1147
+
1148
+ @media (prefers-color-scheme: dark) {
1149
+ .dm-theme-auto .dm-image-popover {
1150
+ background: #2a2a2a;
1151
+ border-color: #404040;
1152
+ }
1153
+ .dm-theme-auto .dm-image-popover .dm-image-popover-input {
1154
+ background: #1a1a1a;
1155
+ border-color: #404040;
1156
+ color: #e0e0e0;
1157
+ }
1158
+ .dm-theme-auto .dm-image-popover .dm-image-popover-input:focus {
1159
+ border-color: #3b82f6;
1160
+ }
1161
+ .dm-theme-auto .dm-image-popover .dm-image-popover-btn {
1162
+ color: #e0e0e0;
1163
+ }
1164
+ .dm-theme-auto .dm-image-popover .dm-image-popover-btn:hover {
1165
+ background: rgba(255, 255, 255, 0.1);
1166
+ }
1167
+ .dm-theme-auto .dm-image-popover .dm-image-popover-apply:hover {
1168
+ color: #3b82f6;
1169
+ }
1170
+ }
1171
+ .dm-editor.dm-dragover {
1172
+ outline: 2px dashed var(--dm-accent);
1173
+ outline-offset: -2px;
1174
+ }
1175
+ .dm-editor.dm-dragover::after {
1176
+ content: "";
1177
+ position: absolute;
1178
+ inset: 0;
1179
+ background: var(--dm-accent);
1180
+ opacity: 0.05;
1181
+ pointer-events: none;
1182
+ z-index: 10;
1183
+ }
1184
+
1185
+ .dm-editor .ProseMirror div[data-type=details] {
1186
+ display: grid;
1187
+ grid-template-columns: 1fr auto;
1188
+ grid-template-rows: auto 1fr;
1189
+ border: var(--dm-details-border);
1190
+ border-radius: 0.375rem;
1191
+ margin: 0.75em 0;
1192
+ }
1193
+ .dm-editor .ProseMirror div[data-type=details] > div {
1194
+ display: contents;
1195
+ }
1196
+ .dm-editor .ProseMirror div[data-type=details] > button[type=button] {
1197
+ grid-column: 2;
1198
+ grid-row: 1;
1199
+ display: flex;
1200
+ align-items: center;
1201
+ justify-content: center;
1202
+ width: 1.5rem;
1203
+ height: 1.5rem;
1204
+ align-self: center;
1205
+ margin-right: 10px;
1206
+ border: none;
1207
+ background: transparent;
1208
+ cursor: pointer;
1209
+ color: var(--dm-muted);
1210
+ border-radius: 50%;
1211
+ }
1212
+ .dm-editor .ProseMirror div[data-type=details] > button[type=button]::before {
1213
+ content: "";
1214
+ display: block;
1215
+ width: 0.4em;
1216
+ height: 0.4em;
1217
+ border-right: 2px solid currentColor;
1218
+ border-bottom: 2px solid currentColor;
1219
+ transform: rotate(-45deg);
1220
+ transition: transform 0.15s ease;
1221
+ }
1222
+ .dm-editor .ProseMirror div[data-type=details] > button[type=button]:hover {
1223
+ color: var(--dm-text);
1224
+ background: var(--dm-hover);
1225
+ }
1226
+ .dm-editor .ProseMirror div[data-type=details] > button[type=button]:focus {
1227
+ outline: none;
1228
+ }
1229
+ .dm-editor .ProseMirror div[data-type=details]::before {
1230
+ content: "";
1231
+ grid-column: 1/-1;
1232
+ grid-row: 1;
1233
+ background: var(--dm-details-bg);
1234
+ border-radius: 0.375rem;
1235
+ }
1236
+ .dm-editor .ProseMirror div[data-type=details].is-open::before {
1237
+ border-radius: 0.375rem 0.375rem 0 0;
1238
+ }
1239
+ .dm-editor .ProseMirror div[data-type=details] summary {
1240
+ grid-column: 1;
1241
+ grid-row: 1;
1242
+ display: block;
1243
+ padding: 0.5em 0.5em 0.5em 0.75em;
1244
+ font-weight: var(--dm-details-summary-font-weight);
1245
+ min-height: 0;
1246
+ }
1247
+ .dm-editor .ProseMirror div[data-type=details] summary::-webkit-details-marker {
1248
+ display: none;
1249
+ }
1250
+ .dm-editor .ProseMirror div[data-type=details] summary {
1251
+ list-style: none;
1252
+ }
1253
+ .dm-editor .ProseMirror div[data-type=details] div[data-details-content] {
1254
+ grid-column: 1/-1;
1255
+ grid-row: 2;
1256
+ padding: 0.5em 0.75em;
1257
+ border-top: var(--dm-details-border);
1258
+ }
1259
+ .dm-editor .ProseMirror div[data-type=details].ProseMirror-selectednode {
1260
+ outline: none;
1261
+ }
1262
+ .dm-editor .ProseMirror div[data-type=details].is-open > button[type=button]::before {
1263
+ transform: rotate(45deg);
1264
+ }
1265
+
1266
+ .dm-editor .ProseMirror .invisible-char {
1267
+ color: var(--dm-invisible-char-color, var(--dm-muted, #999));
1268
+ pointer-events: none;
1269
+ user-select: none;
1270
+ }
1271
+ .dm-editor .ProseMirror [data-char=space] {
1272
+ position: relative;
1273
+ }
1274
+ .dm-editor .ProseMirror [data-char=space]::after {
1275
+ content: "·";
1276
+ position: absolute;
1277
+ inset: 0;
1278
+ text-align: center;
1279
+ color: var(--dm-invisible-char-color, var(--dm-muted, #999));
1280
+ pointer-events: none;
1281
+ }
1282
+ .dm-editor .ProseMirror [data-char=nbsp] {
1283
+ position: relative;
1284
+ }
1285
+ .dm-editor .ProseMirror [data-char=nbsp]::after {
1286
+ content: "°";
1287
+ position: absolute;
1288
+ inset: 0;
1289
+ text-align: center;
1290
+ color: var(--dm-invisible-char-color, var(--dm-muted, #999));
1291
+ pointer-events: none;
1292
+ }
1293
+
1294
+ .dm-emoji-picker {
1295
+ position: absolute;
1296
+ z-index: 100;
1297
+ width: 20rem;
1298
+ max-height: 22rem;
1299
+ display: flex;
1300
+ flex-direction: column;
1301
+ background: var(--dm-surface, #f8f9fa);
1302
+ border: 1px solid var(--dm-border-color, #e0e0e0);
1303
+ border-radius: 0.25rem;
1304
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
1305
+ overflow: hidden;
1306
+ animation: dm-fade-in 0.2s ease;
1307
+ }
1308
+
1309
+ .dm-emoji-picker-search {
1310
+ flex-shrink: 0;
1311
+ padding: 0.5rem;
1312
+ border-bottom: 1px solid var(--dm-border-color, #e0e0e0);
1313
+ }
1314
+ .dm-emoji-picker-search input {
1315
+ width: 100%;
1316
+ padding: 0.375rem 0.5rem;
1317
+ border: 1px solid var(--dm-border-color, #e0e0e0);
1318
+ border-radius: 0.25rem;
1319
+ background: var(--dm-bg, #ffffff);
1320
+ color: var(--dm-text, #1a1a1a);
1321
+ font-size: 0.8125rem;
1322
+ outline: none;
1323
+ box-sizing: border-box;
1324
+ }
1325
+ .dm-emoji-picker-search input:focus {
1326
+ border-color: var(--dm-accent, #2563eb);
1327
+ }
1328
+ .dm-emoji-picker-search input::placeholder {
1329
+ color: var(--dm-muted, #999999);
1330
+ }
1331
+
1332
+ .dm-emoji-picker-tabs {
1333
+ display: flex;
1334
+ align-items: center;
1335
+ flex-shrink: 0;
1336
+ padding: 0.375rem 0.5rem;
1337
+ gap: 0.1rem;
1338
+ border-bottom: 1px solid var(--dm-border-color, #e0e0e0);
1339
+ overflow-x: auto;
1340
+ scrollbar-width: none;
1341
+ }
1342
+ .dm-emoji-picker-tabs::-webkit-scrollbar {
1343
+ display: none;
1344
+ }
1345
+
1346
+ .dm-emoji-picker-tab {
1347
+ display: flex;
1348
+ align-items: center;
1349
+ justify-content: center;
1350
+ width: 2rem;
1351
+ height: 2rem;
1352
+ flex-shrink: 0;
1353
+ padding: 0;
1354
+ border: none;
1355
+ border-radius: 0.375rem;
1356
+ background: transparent;
1357
+ cursor: pointer;
1358
+ font-size: 1.25rem;
1359
+ line-height: 1;
1360
+ opacity: 0.5;
1361
+ transition: opacity 0.15s, background-color 0.15s;
1362
+ }
1363
+ .dm-emoji-picker-tab:hover {
1364
+ opacity: 1;
1365
+ background: var(--dm-hover, rgba(0, 0, 0, 0.06));
1366
+ }
1367
+ .dm-emoji-picker-tab--active {
1368
+ opacity: 1;
1369
+ background: var(--dm-active, rgba(0, 0, 0, 0.12));
1370
+ }
1371
+
1372
+ .dm-emoji-picker-grid {
1373
+ flex: 1;
1374
+ overflow-y: auto;
1375
+ padding: 0.25rem 0.5rem 0.5rem;
1376
+ display: grid;
1377
+ grid-template-columns: repeat(8, 1fr);
1378
+ gap: 0.125rem;
1379
+ align-content: start;
1380
+ }
1381
+
1382
+ .dm-emoji-picker-category-label {
1383
+ grid-column: 1/-1;
1384
+ font-size: 0.6875rem;
1385
+ font-weight: 600;
1386
+ color: var(--dm-text, #1a1a1a);
1387
+ opacity: 0.6;
1388
+ padding: 0.375rem 0 0.125rem;
1389
+ text-transform: uppercase;
1390
+ letter-spacing: 0.03em;
1391
+ }
1392
+
1393
+ .dm-emoji-swatch {
1394
+ display: flex;
1395
+ align-items: center;
1396
+ justify-content: center;
1397
+ width: 2rem;
1398
+ height: 2rem;
1399
+ padding: 0;
1400
+ border: none;
1401
+ border-radius: 0.25rem;
1402
+ background: transparent;
1403
+ cursor: pointer;
1404
+ font-size: 1.25rem;
1405
+ line-height: 1;
1406
+ transition: background-color 0.1s, transform 0.1s;
1407
+ }
1408
+ .dm-emoji-swatch:hover {
1409
+ background: var(--dm-hover, rgba(0, 0, 0, 0.06));
1410
+ transform: scale(1.15);
1411
+ }
1412
+
1413
+ .dm-emoji-picker-empty {
1414
+ grid-column: 1/-1;
1415
+ padding: 1rem;
1416
+ text-align: center;
1417
+ color: var(--dm-text, #1a1a1a);
1418
+ opacity: 0.5;
1419
+ font-size: 0.8125rem;
1420
+ }
1421
+
1422
+ .dm-emoji-suggestion {
1423
+ position: absolute;
1424
+ z-index: 100;
1425
+ min-width: 12rem;
1426
+ max-width: 18rem;
1427
+ padding: 0.25rem;
1428
+ background: var(--dm-surface, #f8f9fa);
1429
+ border: 1px solid var(--dm-border-color, #e0e0e0);
1430
+ border-radius: 0.25rem;
1431
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
1432
+ animation: dm-fade-in 0.2s ease;
1433
+ }
1434
+
1435
+ .dm-emoji-suggestion-item {
1436
+ display: flex;
1437
+ align-items: center;
1438
+ gap: 0.5rem;
1439
+ width: 100%;
1440
+ padding: 0.375rem 0.5rem;
1441
+ border: none;
1442
+ border-radius: 0.25rem;
1443
+ background: transparent;
1444
+ color: var(--dm-text, #1a1a1a);
1445
+ cursor: pointer;
1446
+ font-size: 0.8125rem;
1447
+ line-height: 1.4;
1448
+ text-align: left;
1449
+ transition: background-color 0.1s;
1450
+ }
1451
+ .dm-emoji-suggestion-item:hover, .dm-emoji-suggestion-item--selected {
1452
+ background: var(--dm-hover, rgba(0, 0, 0, 0.06));
1453
+ }
1454
+
1455
+ .dm-emoji-suggestion-emoji {
1456
+ font-size: 1.125rem;
1457
+ line-height: 1;
1458
+ flex-shrink: 0;
1459
+ }
1460
+
1461
+ .dm-emoji-suggestion-name {
1462
+ overflow: hidden;
1463
+ text-overflow: ellipsis;
1464
+ white-space: nowrap;
1465
+ }
1466
+
1467
+ .dm-emoji-suggestion-empty {
1468
+ padding: 0.5rem;
1469
+ text-align: center;
1470
+ color: var(--dm-text, #1a1a1a);
1471
+ opacity: 0.5;
1472
+ font-size: 0.8125rem;
1473
+ }
1474
+
1475
+ .dm-editor .ProseMirror span.emoji {
1476
+ cursor: default;
1477
+ font-style: normal;
1478
+ padding: 0 0.05em;
1479
+ }
1480
+ .dm-editor .ProseMirror span.emoji.ProseMirror-selectednode {
1481
+ outline: 2px solid var(--dm-accent, #2563eb);
1482
+ border-radius: 0.15em;
1483
+ }
1484
+
1485
+ .dm-editor .dm-table-container {
1486
+ position: relative;
1487
+ }
1488
+
1489
+ .dm-table-col-handle,
1490
+ .dm-table-row-handle {
1491
+ position: absolute;
1492
+ z-index: 10;
1493
+ display: none;
1494
+ align-items: center;
1495
+ justify-content: center;
1496
+ border: 1px solid var(--dm-border-color, #e0e0e0);
1497
+ border-radius: 4px;
1498
+ background: var(--dm-bg, #ffffff);
1499
+ color: var(--dm-muted, #999999);
1500
+ cursor: pointer;
1501
+ padding: 0;
1502
+ transition: background-color 0.15s, color 0.15s, box-shadow 0.15s;
1503
+ }
1504
+ .dm-table-col-handle:hover,
1505
+ .dm-table-row-handle:hover {
1506
+ background: var(--dm-hover, rgba(0, 0, 0, 0.06));
1507
+ color: var(--dm-text, #1a1a1a);
1508
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
1509
+ }
1510
+ .dm-table-col-handle svg,
1511
+ .dm-table-row-handle svg {
1512
+ display: block;
1513
+ }
1514
+
1515
+ .dm-table-col-handle {
1516
+ width: 24px;
1517
+ height: 14px;
1518
+ }
1519
+
1520
+ .dm-table-row-handle {
1521
+ width: 14px;
1522
+ height: 24px;
1523
+ }
1524
+
1525
+ .dm-table-cell-handle {
1526
+ position: absolute;
1527
+ z-index: 10;
1528
+ display: none;
1529
+ align-items: center;
1530
+ justify-content: center;
1531
+ width: 14px;
1532
+ height: 14px;
1533
+ border: 1px solid var(--dm-accent, #2563eb);
1534
+ border-radius: 50%;
1535
+ background: var(--dm-bg, #ffffff);
1536
+ color: var(--dm-accent, #2563eb);
1537
+ cursor: pointer;
1538
+ padding: 0;
1539
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
1540
+ transition: background-color 0.15s, color 0.15s, border-color 0.15s, box-shadow 0.15s;
1541
+ }
1542
+ .dm-table-cell-handle:hover {
1543
+ background: var(--dm-accent, #2563eb);
1544
+ color: #fff;
1545
+ border-color: var(--dm-accent, #2563eb);
1546
+ box-shadow: 0 1px 4px color-mix(in srgb, var(--dm-accent, #2563eb) 30%, transparent);
1547
+ }
1548
+ .dm-table-cell-handle svg {
1549
+ display: block;
1550
+ width: 8px;
1551
+ height: 8px;
1552
+ }
1553
+
1554
+ .dm-table-cell-toolbar {
1555
+ position: absolute;
1556
+ z-index: 10;
1557
+ display: none;
1558
+ align-items: center;
1559
+ gap: 2px;
1560
+ padding: 2px;
1561
+ border: 1px solid var(--dm-border-color, #e0e0e0);
1562
+ border-radius: 6px;
1563
+ background: var(--dm-bg, #ffffff);
1564
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
1565
+ animation: dm-fade-in 0.12s ease;
1566
+ }
1567
+
1568
+ .dm-table-cell-toolbar-btn {
1569
+ display: flex;
1570
+ align-items: center;
1571
+ gap: 1px;
1572
+ padding: 4px 5px;
1573
+ border: none;
1574
+ border-radius: 4px;
1575
+ background: transparent;
1576
+ color: var(--dm-text, #1a1a1a);
1577
+ cursor: pointer;
1578
+ transition: background-color 0.15s, color 0.15s;
1579
+ }
1580
+ .dm-table-cell-toolbar-btn:hover, .dm-table-cell-toolbar-btn.dm-table-cell-toolbar-btn--open {
1581
+ background: var(--dm-hover, rgba(0, 0, 0, 0.06));
1582
+ }
1583
+ .dm-table-cell-toolbar-btn--active {
1584
+ color: var(--dm-accent, #2563eb);
1585
+ background: var(--dm-accent-surface, rgba(37, 99, 235, 0.1));
1586
+ }
1587
+ .dm-table-cell-toolbar-btn:disabled {
1588
+ opacity: 0.3;
1589
+ cursor: default;
1590
+ pointer-events: none;
1591
+ }
1592
+ .dm-table-cell-toolbar-btn svg {
1593
+ display: block;
1594
+ flex-shrink: 0;
1595
+ }
1596
+
1597
+ .dm-table-cell-toolbar-chevron {
1598
+ display: flex;
1599
+ align-items: center;
1600
+ }
1601
+
1602
+ .dm-table-cell-toolbar-sep {
1603
+ width: 1px;
1604
+ height: 16px;
1605
+ margin: 0 2px;
1606
+ background: var(--dm-border-color, #e0e0e0);
1607
+ }
1608
+
1609
+ .dm-table-cell-align-dropdown {
1610
+ min-width: auto;
1611
+ width: max-content;
1612
+ padding: 0.25rem;
1613
+ }
1614
+ .dm-table-cell-align-dropdown .dm-table-align-item {
1615
+ display: flex;
1616
+ align-items: center;
1617
+ gap: 0.5rem;
1618
+ width: 100%;
1619
+ padding: 0.3rem 0.5rem;
1620
+ border: none;
1621
+ border-radius: 0.25rem;
1622
+ background: transparent;
1623
+ color: var(--dm-text, #1a1a1a);
1624
+ cursor: pointer;
1625
+ font-size: 0.8125rem;
1626
+ white-space: nowrap;
1627
+ transition: background-color 0.15s, color 0.15s;
1628
+ }
1629
+ .dm-table-cell-align-dropdown .dm-table-align-item:hover {
1630
+ background: var(--dm-hover, rgba(0, 0, 0, 0.06));
1631
+ }
1632
+ .dm-table-cell-align-dropdown .dm-table-align-item--active {
1633
+ color: var(--dm-accent, #2563eb);
1634
+ background: var(--dm-accent-surface, rgba(37, 99, 235, 0.1));
1635
+ }
1636
+ .dm-table-cell-align-dropdown .dm-table-align-item-icon {
1637
+ display: flex;
1638
+ align-items: center;
1639
+ }
1640
+ .dm-table-cell-align-dropdown .dm-table-align-item-icon svg {
1641
+ display: block;
1642
+ }
1643
+
1644
+ .dm-editor .ProseMirror table td[data-text-align=center], .dm-editor .ProseMirror table th[data-text-align=center] {
1645
+ text-align: center;
1646
+ }
1647
+ .dm-editor .ProseMirror table td[data-text-align=right], .dm-editor .ProseMirror table th[data-text-align=right] {
1648
+ text-align: right;
1649
+ }
1650
+ .dm-editor .ProseMirror table td[data-vertical-align=middle], .dm-editor .ProseMirror table th[data-vertical-align=middle] {
1651
+ vertical-align: middle;
1652
+ }
1653
+ .dm-editor .ProseMirror table td[data-vertical-align=bottom], .dm-editor .ProseMirror table th[data-vertical-align=bottom] {
1654
+ vertical-align: bottom;
1655
+ }
1656
+
1657
+ .dm-editor td.dm-cell-focused,
1658
+ .dm-editor th.dm-cell-focused {
1659
+ outline: 1px solid var(--dm-accent, #2563eb);
1660
+ outline-offset: -1px;
1661
+ }
1662
+
1663
+ .dm-table-controls-dropdown {
1664
+ position: absolute;
1665
+ z-index: 50;
1666
+ display: flex;
1667
+ flex-direction: column;
1668
+ gap: 0.125rem;
1669
+ min-width: 10rem;
1670
+ padding: 0.25rem;
1671
+ background: var(--dm-bg, #fff);
1672
+ border: 1px solid var(--dm-border-color, #e5e7eb);
1673
+ border-radius: 0.5rem;
1674
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.04);
1675
+ animation: dm-fade-in 0.2s ease;
1676
+ }
1677
+ .dm-table-controls-dropdown > button {
1678
+ display: flex;
1679
+ align-items: center;
1680
+ gap: 0.375rem;
1681
+ width: 100%;
1682
+ padding: 0.375rem 0.5rem;
1683
+ border: none;
1684
+ border-radius: var(--dm-button-border-radius);
1685
+ background: transparent;
1686
+ color: var(--dm-button-color);
1687
+ cursor: pointer;
1688
+ font-size: 0.8125rem;
1689
+ line-height: 1.4;
1690
+ text-align: left;
1691
+ white-space: nowrap;
1692
+ transition: background-color 0.15s;
1693
+ }
1694
+ .dm-table-controls-dropdown > button:hover {
1695
+ background: var(--dm-button-hover-bg);
1696
+ }
1697
+
1698
+ .dm-table-controls-dropdown-icon {
1699
+ display: flex;
1700
+ align-items: center;
1701
+ color: var(--dm-icon, #666);
1702
+ }
1703
+ .dm-table-controls-dropdown-icon svg {
1704
+ display: block;
1705
+ }
1706
+
1707
+ .dm-table-cell-dropdown {
1708
+ min-width: auto;
1709
+ width: max-content;
1710
+ padding: 0;
1711
+ border-radius: 0.75rem;
1712
+ }
1713
+ .dm-table-cell-dropdown .dm-color-palette {
1714
+ padding: 0.5rem;
1715
+ }
1716
+
1717
+ .dm-table-cell-dropdown-separator {
1718
+ height: 1px;
1719
+ background: var(--dm-border-color, #e0e0e0);
1720
+ margin: 0.25rem 0;
1721
+ }
1722
+
1723
+ .dm-theme-light,
1724
+ .dm-theme-light .dm-editor,
1725
+ .dm-theme-light .dm-toolbar {
1726
+ --dm-bg: #ffffff;
1727
+ --dm-text: #1a1a1a;
1728
+ --dm-muted: #999999;
1729
+ --dm-surface: #f8f9fa;
1730
+ --dm-border-color: #e0e0e0;
1731
+ --dm-hover: rgba(0, 0, 0, 0.06);
1732
+ --dm-active: rgba(0, 0, 0, 0.12);
1733
+ --dm-accent: #2563eb;
1734
+ --dm-accent-hover: #1d4ed8;
1735
+ --dm-accent-surface: rgba(37, 99, 235, 0.1);
1736
+ --dm-focus-color: rgba(66, 133, 244, 0.3);
1737
+ --dm-selection: rgba(66, 133, 244, 0.2);
1738
+ --dm-code-surface: #f5f5f5;
1739
+ --dm-code-color: #d63384;
1740
+ --dm-highlight-bg: #fff3cd;
1741
+ --dm-syntax-keyword: #d73a49;
1742
+ --dm-syntax-entity: #6f42c1;
1743
+ --dm-syntax-constant: #005cc5;
1744
+ --dm-syntax-string: #032f62;
1745
+ --dm-syntax-variable: #e36209;
1746
+ --dm-syntax-comment: #6a737d;
1747
+ --dm-syntax-tag: #22863a;
1748
+ --dm-syntax-addition: #22863a;
1749
+ --dm-syntax-addition-bg: #f0fff4;
1750
+ --dm-syntax-deletion: #b31d28;
1751
+ --dm-syntax-deletion-bg: #ffeef0;
1752
+ }
1753
+
1754
+ .dm-theme-dark,
1755
+ .dm-theme-dark .dm-editor,
1756
+ .dm-theme-dark .dm-toolbar,
1757
+ .dm-theme-dark .dm-bubble-menu,
1758
+ .dm-theme-dark .dm-emoji-picker,
1759
+ .dm-theme-dark .dm-emoji-suggestion {
1760
+ --dm-color-scheme: dark;
1761
+ --dm-bg: #1e1e1e;
1762
+ --dm-text: #e0e0e0;
1763
+ --dm-muted: #777777;
1764
+ --dm-surface: #2a2a2a;
1765
+ --dm-border-color: #3a3a3a;
1766
+ --dm-hover: rgba(255, 255, 255, 0.08);
1767
+ --dm-active: rgba(255, 255, 255, 0.15);
1768
+ --dm-accent: #60a5fa;
1769
+ --dm-accent-hover: #93c5fd;
1770
+ --dm-accent-surface: rgba(96, 165, 250, 0.15);
1771
+ --dm-focus-color: rgba(96, 165, 250, 0.3);
1772
+ --dm-selection: rgba(96, 165, 250, 0.25);
1773
+ --dm-code-surface: #2d2d2d;
1774
+ --dm-code-color: inherit;
1775
+ --dm-highlight-bg: rgba(255, 243, 205, 0.2);
1776
+ --dm-blockquote-border: 3px solid #555555;
1777
+ --dm-blockquote-color: #a0a0a0;
1778
+ --dm-syntax-keyword: #ff7b72;
1779
+ --dm-syntax-entity: #d2a8ff;
1780
+ --dm-syntax-constant: #79c0ff;
1781
+ --dm-syntax-string: #a5d6ff;
1782
+ --dm-syntax-variable: #ffa657;
1783
+ --dm-syntax-comment: #8b949e;
1784
+ --dm-syntax-tag: #7ee787;
1785
+ --dm-syntax-addition: #aff5b4;
1786
+ --dm-syntax-addition-bg: #033a16;
1787
+ --dm-syntax-deletion: #ffdcd7;
1788
+ --dm-syntax-deletion-bg: #67060c;
1789
+ }
1790
+
1791
+ @media (prefers-color-scheme: dark) {
1792
+ .dm-theme-auto,
1793
+ .dm-theme-auto .dm-editor,
1794
+ .dm-theme-auto .dm-toolbar,
1795
+ .dm-theme-auto .dm-bubble-menu,
1796
+ .dm-theme-auto .dm-emoji-picker,
1797
+ .dm-theme-auto .dm-emoji-suggestion {
1798
+ --dm-color-scheme: dark;
1799
+ --dm-bg: #1e1e1e;
1800
+ --dm-text: #e0e0e0;
1801
+ --dm-muted: #777777;
1802
+ --dm-surface: #2a2a2a;
1803
+ --dm-border-color: #3a3a3a;
1804
+ --dm-hover: rgba(255, 255, 255, 0.08);
1805
+ --dm-active: rgba(255, 255, 255, 0.15);
1806
+ --dm-accent: #60a5fa;
1807
+ --dm-accent-hover: #93c5fd;
1808
+ --dm-accent-surface: rgba(96, 165, 250, 0.15);
1809
+ --dm-focus-color: rgba(96, 165, 250, 0.3);
1810
+ --dm-selection: rgba(96, 165, 250, 0.25);
1811
+ --dm-code-surface: #2d2d2d;
1812
+ --dm-code-color: inherit;
1813
+ --dm-highlight-bg: rgba(255, 243, 205, 0.2);
1814
+ --dm-blockquote-border: 3px solid #555555;
1815
+ --dm-blockquote-color: #a0a0a0;
1816
+ --dm-syntax-keyword: #ff7b72;
1817
+ --dm-syntax-entity: #d2a8ff;
1818
+ --dm-syntax-constant: #79c0ff;
1819
+ --dm-syntax-string: #a5d6ff;
1820
+ --dm-syntax-variable: #ffa657;
1821
+ --dm-syntax-comment: #8b949e;
1822
+ --dm-syntax-tag: #7ee787;
1823
+ --dm-syntax-addition: #aff5b4;
1824
+ --dm-syntax-addition-bg: #033a16;
1825
+ --dm-syntax-deletion: #ffdcd7;
1826
+ --dm-syntax-deletion-bg: #67060c;
1827
+ }
1828
+ }