tiptap-markdown-react 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/style.css ADDED
@@ -0,0 +1,904 @@
1
+ /* 规范正文样式(编辑器 / 只读预览 / SSR 阅读三处共用同一个类,保证所见即所得、
2
+ 发布后一致)。配色/字体全部走可被消费方覆盖的 CSS 变量(--tmr-*,带默认值)。 */
3
+
4
+ ._editorScroll_fahhq_4 {
5
+ margin-top: 24px;
6
+ }
7
+
8
+ ._editorContent_fahhq_8 {
9
+ outline: none;
10
+ padding: 0;
11
+ font-family: var(
12
+ --tmr-body-font,
13
+ Spectral,
14
+ serif,
15
+ system-ui,
16
+ -apple-system,
17
+ BlinkMacSystemFont,
18
+ 'Segoe UI',
19
+ Roboto,
20
+ Helvetica,
21
+ Arial,
22
+ sans-serif
23
+ );
24
+ font-size: var(--tmr-font-size, 19px);
25
+ line-height: var(--tmr-line-height, 1.7);
26
+ color: var(--tmr-text, #363737);
27
+ min-height: var(--tmr-min-height, 420px);
28
+ }
29
+
30
+ /* placeholder:空文档第一段显示占位符 */
31
+ ._editorContent_fahhq_8 p.is-editor-empty:first-child::before {
32
+ content: attr(data-placeholder);
33
+ float: left;
34
+ height: 0;
35
+ color: var(--tmr-placeholder, #b7b7b7);
36
+ pointer-events: none;
37
+ }
38
+
39
+ ._editorContent_fahhq_8 h1 {
40
+ font-family: inherit;
41
+ font-size: 1.55em;
42
+ font-weight: 700;
43
+ margin: 1em 0 0.4em;
44
+ line-height: 1.3;
45
+ }
46
+
47
+ ._editorContent_fahhq_8 h2 {
48
+ font-family: inherit;
49
+ font-size: 1.3em;
50
+ font-weight: 700;
51
+ margin: 0.9em 0 0.4em;
52
+ line-height: 1.3;
53
+ }
54
+
55
+ ._editorContent_fahhq_8 h3 {
56
+ font-family: inherit;
57
+ font-size: 1.12em;
58
+ font-weight: 600;
59
+ margin: 0.8em 0 0.35em;
60
+ }
61
+
62
+ /* h4-h6:延续 h1-h3 尺寸梯度递减;字号差变小后靠字重保持标题感,h6 字色稍弱。 */
63
+ ._editorContent_fahhq_8 h4 {
64
+ font-family: inherit;
65
+ font-size: 1.05em;
66
+ font-weight: 600;
67
+ margin: 0.7em 0 0.3em;
68
+ }
69
+
70
+ ._editorContent_fahhq_8 h5 {
71
+ font-family: inherit;
72
+ font-size: 0.95em;
73
+ font-weight: 600;
74
+ margin: 0.7em 0 0.3em;
75
+ }
76
+
77
+ ._editorContent_fahhq_8 h6 {
78
+ font-family: inherit;
79
+ font-size: 0.88em;
80
+ font-weight: 600;
81
+ margin: 0.7em 0 0.3em;
82
+ color: var(--tmr-muted, #777777);
83
+ }
84
+
85
+ ._editorContent_fahhq_8 p {
86
+ margin: 0.7em 0;
87
+ }
88
+
89
+ ._editorContent_fahhq_8 ul,
90
+ ._editorContent_fahhq_8 ol {
91
+ padding-left: 1.5em;
92
+ margin: 0.7em 0;
93
+ }
94
+
95
+ ._editorContent_fahhq_8 ul {
96
+ list-style: disc;
97
+ }
98
+
99
+ ._editorContent_fahhq_8 ol {
100
+ list-style: decimal;
101
+ }
102
+
103
+ ._editorContent_fahhq_8 blockquote {
104
+ border-left: 3px solid var(--tmr-accent, #ff6719);
105
+ padding-left: 1em;
106
+ margin: 0.9em 0;
107
+ color: var(--tmr-muted, #777777);
108
+ font-style: italic;
109
+ }
110
+
111
+ ._editorContent_fahhq_8 a {
112
+ color: var(--tmr-accent, #ff6719);
113
+ text-decoration: underline;
114
+ }
115
+
116
+ /* 仅行内代码加灰底;代码块内的 <code>(在 pre 内)由 NodeView 自管,排除掉 */
117
+ ._editorContent_fahhq_8 code:not(pre code) {
118
+ background: var(--tmr-code-bg, #f4f4f4);
119
+ padding: 0.15em 0.4em;
120
+ border-radius: 4px;
121
+ font-size: 0.85em;
122
+ font-family: var(
123
+ --tmr-mono-font,
124
+ ui-monospace,
125
+ SFMono-Regular,
126
+ Menlo,
127
+ Consolas,
128
+ monospace
129
+ );
130
+ }
131
+
132
+ ._editorContent_fahhq_8 hr {
133
+ border: none;
134
+ border-top: 1px solid var(--tmr-border, #e6e6e6);
135
+ margin: 1.5em 0;
136
+ }
137
+
138
+ ._editorContent_fahhq_8 img {
139
+ max-width: 100%;
140
+ height: auto;
141
+ border-radius: 6px;
142
+ margin: 0.8em 0;
143
+ display: block;
144
+ }
145
+
146
+ /* 选中的图片高亮 */
147
+ ._editorContent_fahhq_8 img.ProseMirror-selectednode {
148
+ outline: 2px solid var(--tmr-accent, #ff6719);
149
+ }
150
+
151
+ /* 表格:细边框、表头浅灰、可拖拽列宽 */
152
+ ._editorContent_fahhq_8 table {
153
+ border-collapse: collapse;
154
+ table-layout: fixed;
155
+ width: 100%;
156
+ margin: 1em 0;
157
+ overflow: hidden;
158
+ font-size: 0.92em;
159
+ }
160
+
161
+ ._editorContent_fahhq_8 table td,
162
+ ._editorContent_fahhq_8 table th {
163
+ border: 1px solid var(--tmr-border, #e6e6e6);
164
+ padding: 8px 12px;
165
+ vertical-align: top;
166
+ text-align: left;
167
+ position: relative;
168
+ min-width: 60px;
169
+ }
170
+
171
+ ._editorContent_fahhq_8 table th {
172
+ background: var(--tmr-table-header-bg, #f7f7f7);
173
+ font-weight: 600;
174
+ }
175
+
176
+ /* 选中的单元格高亮 */
177
+ ._editorContent_fahhq_8 table .selectedCell::after {
178
+ content: '';
179
+ position: absolute;
180
+ inset: 0;
181
+ background: var(--tmr-cell-selection, rgba(255, 103, 25, 0.12));
182
+ pointer-events: none;
183
+ }
184
+
185
+ /* 列宽拖拽手柄 */
186
+ ._editorContent_fahhq_8 table .column-resize-handle {
187
+ position: absolute;
188
+ right: -2px;
189
+ top: 0;
190
+ bottom: 0;
191
+ width: 4px;
192
+ background: var(--tmr-accent, #ff6719);
193
+ cursor: col-resize;
194
+ }
195
+
196
+ ._editorContent_fahhq_8 .tableWrapper {
197
+ overflow-x: auto;
198
+ }
199
+
200
+ /* 任务清单 */
201
+ ._editorContent_fahhq_8 ul[data-type='taskList'] {
202
+ list-style: none;
203
+ padding-left: 0.2em;
204
+ }
205
+
206
+ ._editorContent_fahhq_8 ul[data-type='taskList'] li {
207
+ display: flex;
208
+ align-items: flex-start;
209
+ gap: 0.5em;
210
+ margin: 0.3em 0;
211
+ }
212
+
213
+ ._editorContent_fahhq_8 ul[data-type='taskList'] li > label {
214
+ margin-top: 0.35em;
215
+ user-select: none;
216
+ }
217
+
218
+ ._editorContent_fahhq_8 ul[data-type='taskList'] li > div {
219
+ flex: 1;
220
+ }
221
+
222
+ ._editorContent_fahhq_8 ul[data-type='taskList'] input[type='checkbox'] {
223
+ accent-color: var(--tmr-accent, #ff6719);
224
+ cursor: pointer;
225
+ }
226
+ /* 代码块 NodeView:白底、细边框、顶部 header 放语言选择(原生 select)+ 删除。 */
227
+ ._wrapper_6ikds_2 {
228
+ position: relative;
229
+ margin: 0.9em 0;
230
+ border: 1px solid #e8e8e8;
231
+ border-radius: 10px;
232
+ background: #fff;
233
+ overflow: hidden;
234
+ }
235
+
236
+ /* 选中整个代码块时(NodeSelection):accent 边框高亮,作为删除前的二次确认提示 */
237
+ ._wrapper_6ikds_2.ProseMirror-selectednode,
238
+ .ProseMirror-selectednode > ._wrapper_6ikds_2 {
239
+ border-color: var(--tmr-accent, #ff6719);
240
+ box-shadow: 0 0 0 1px var(--tmr-accent, #ff6719);
241
+ }
242
+
243
+ ._header_6ikds_18 {
244
+ display: flex;
245
+ align-items: center;
246
+ justify-content: flex-end;
247
+ gap: 4px;
248
+ padding: 8px 12px;
249
+ border-bottom: 1px solid #efefef;
250
+ }
251
+
252
+ /* 原生语言选择器:无边框胶囊,hover 出灰底 */
253
+ ._langSelect_6ikds_28 {
254
+ appearance: none;
255
+ -webkit-appearance: none;
256
+ border: none;
257
+ outline: none;
258
+ background: transparent;
259
+ border-radius: 8px;
260
+ padding: 3px 24px 3px 10px;
261
+ color: #1f2937;
262
+ font-size: 14px;
263
+ font-weight: 500;
264
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
265
+ cursor: pointer;
266
+ transition: background 0.15s;
267
+ /* 自绘下拉箭头 */
268
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
269
+ background-repeat: no-repeat;
270
+ background-position: right 8px center;
271
+ }
272
+
273
+ ._langSelect_6ikds_28:hover {
274
+ background-color: #f0f0f0;
275
+ }
276
+
277
+ ._deleteBtn_6ikds_52 {
278
+ display: inline-flex;
279
+ align-items: center;
280
+ justify-content: center;
281
+ width: 30px;
282
+ height: 30px;
283
+ border: none;
284
+ border-radius: 6px;
285
+ background: transparent;
286
+ color: #8a8a8a;
287
+ font-size: 15px;
288
+ cursor: pointer;
289
+ transition: background 0.15s, color 0.15s;
290
+ }
291
+
292
+ ._deleteBtn_6ikds_52:hover {
293
+ background: #f4f4f4;
294
+ color: #d4380d;
295
+ }
296
+
297
+ ._pre_6ikds_72 {
298
+ margin: 0;
299
+ padding: 16px 18px;
300
+ background: transparent;
301
+ border: none;
302
+ border-radius: 0;
303
+ overflow-x: auto;
304
+ font-size: 0.9em;
305
+ line-height: 1.65;
306
+ }
307
+
308
+ ._pre_6ikds_72 code {
309
+ display: block;
310
+ font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
311
+ color: #24292e;
312
+ background: transparent;
313
+ padding: 0;
314
+ border: none;
315
+ border-radius: 0;
316
+ white-space: pre;
317
+ }
318
+
319
+ /* 语法高亮配色(lowlight / highlight.js token,GitHub 浅色主题) */
320
+ ._pre_6ikds_72 .hljs-comment,
321
+ ._pre_6ikds_72 .hljs-quote {
322
+ color: #6a737d;
323
+ font-style: italic;
324
+ }
325
+
326
+ ._pre_6ikds_72 .hljs-keyword,
327
+ ._pre_6ikds_72 .hljs-selector-tag,
328
+ ._pre_6ikds_72 .hljs-literal,
329
+ ._pre_6ikds_72 .hljs-type {
330
+ color: #d73a49;
331
+ }
332
+
333
+ ._pre_6ikds_72 .hljs-string,
334
+ ._pre_6ikds_72 .hljs-meta .hljs-string,
335
+ ._pre_6ikds_72 .hljs-regexp {
336
+ color: #032f62;
337
+ }
338
+
339
+ ._pre_6ikds_72 .hljs-number,
340
+ ._pre_6ikds_72 .hljs-built_in,
341
+ ._pre_6ikds_72 .hljs-builtin-name {
342
+ color: #005cc5;
343
+ }
344
+
345
+ ._pre_6ikds_72 .hljs-title,
346
+ ._pre_6ikds_72 .hljs-function .hljs-title,
347
+ ._pre_6ikds_72 .hljs-section {
348
+ color: #6f42c1;
349
+ }
350
+
351
+ ._pre_6ikds_72 .hljs-attr,
352
+ ._pre_6ikds_72 .hljs-attribute,
353
+ ._pre_6ikds_72 .hljs-variable,
354
+ ._pre_6ikds_72 .hljs-template-variable {
355
+ color: #e36209;
356
+ }
357
+
358
+ ._pre_6ikds_72 .hljs-tag {
359
+ color: #22863a;
360
+ }
361
+ /* 顶部操作栏:横跨宽度、内容居中、细线灰图标。配色映射到可覆盖的 --tmr-* 变量。 */
362
+ ._toolbar_i2emf_2 {
363
+ --sb-accent: var(--tmr-accent, #ff6719);
364
+ --sb-text: var(--tmr-text, #363737);
365
+ --sb-muted: var(--tmr-toolbar-muted, #6b6b6b);
366
+ --sb-border: var(--tmr-toolbar-border, #ececec);
367
+
368
+ width: 100%;
369
+ flex: none;
370
+ border-bottom: 1px solid var(--sb-border);
371
+ background: #fff;
372
+ z-index: 8;
373
+ }
374
+
375
+ ._inner_i2emf_15 {
376
+ display: flex;
377
+ align-items: center;
378
+ justify-content: safe center;
379
+ flex-wrap: nowrap;
380
+ gap: 2px;
381
+ max-width: 1100px;
382
+ margin: 0 auto;
383
+ padding: 8px 16px;
384
+ overflow-x: auto;
385
+ }
386
+
387
+ ._btn_i2emf_27 {
388
+ display: inline-flex;
389
+ align-items: center;
390
+ justify-content: center;
391
+ min-width: 34px;
392
+ height: 34px;
393
+ padding: 0 8px;
394
+ border: none;
395
+ border-radius: 6px;
396
+ background: transparent;
397
+ color: var(--sb-muted);
398
+ font-size: 17px;
399
+ line-height: 1;
400
+ cursor: pointer;
401
+ flex-shrink: 0;
402
+ transition: background 0.15s, color 0.15s;
403
+ }
404
+
405
+ ._btn_i2emf_27:hover:not(:disabled) {
406
+ background: #f3f3f3;
407
+ color: var(--sb-text);
408
+ }
409
+
410
+ ._btnActive_i2emf_50 {
411
+ color: var(--sb-accent);
412
+ background: #fff3ec;
413
+ }
414
+
415
+ ._btnActive_i2emf_50:hover {
416
+ color: var(--sb-accent);
417
+ background: #ffe8da;
418
+ }
419
+
420
+ ._btn_i2emf_27:disabled {
421
+ opacity: 0.3;
422
+ cursor: not-allowed;
423
+ }
424
+
425
+ /* 表内浮动工具条(BubbleMenu portal 到 body,拿不到 .toolbar 变量,故写死配色) */
426
+ ._tableBubble_i2emf_66 {
427
+ display: flex;
428
+ align-items: center;
429
+ gap: 2px;
430
+ padding: 4px;
431
+ background: #fff;
432
+ border: 1px solid #ececec;
433
+ border-radius: 8px;
434
+ box-shadow: 0 4px 16px rgb(0 0 0 / 12%);
435
+ }
436
+
437
+ /* 文字型图标(引用等) */
438
+ ._txtIcon_i2emf_78 {
439
+ font-family: 'SF Pro Display', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
440
+ font-size: 16px;
441
+ font-weight: 600;
442
+ letter-spacing: -0.02em;
443
+ }
444
+
445
+ /* 文字颜色 / 高亮图标:字母 + 底部当前色条 */
446
+ ._colorIcon_i2emf_86 {
447
+ display: inline-flex;
448
+ flex-direction: column;
449
+ align-items: center;
450
+ gap: 2px;
451
+ line-height: 1;
452
+ }
453
+
454
+ ._colorIconGlyph_i2emf_94 {
455
+ font-family: 'SF Pro Display', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
456
+ font-size: 15px;
457
+ font-weight: 600;
458
+ }
459
+
460
+ ._colorIconBar_i2emf_100 {
461
+ width: 16px;
462
+ height: 3px;
463
+ border-radius: 1.5px;
464
+ }
465
+
466
+ /* A▾ 上标/下标下拉触发器 */
467
+ ._scriptTrigger_i2emf_107 {
468
+ display: inline-flex;
469
+ align-items: center;
470
+ gap: 3px;
471
+ height: 34px;
472
+ padding: 0 6px;
473
+ border: none;
474
+ border-radius: 6px;
475
+ background: transparent;
476
+ color: var(--sb-muted);
477
+ cursor: pointer;
478
+ flex-shrink: 0;
479
+ transition: background 0.15s, color 0.15s;
480
+ }
481
+
482
+ ._scriptTrigger_i2emf_107:hover {
483
+ background: #f3f3f3;
484
+ color: var(--sb-text);
485
+ }
486
+
487
+ ._scriptTriggerGlyph_i2emf_127 {
488
+ font-family: 'SF Pro Display', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
489
+ font-size: 16px;
490
+ font-weight: 600;
491
+ text-decoration: underline;
492
+ text-underline-offset: 2px;
493
+ }
494
+
495
+ ._divider_i2emf_135 {
496
+ width: 1px;
497
+ height: 20px;
498
+ margin: 0 8px;
499
+ background: var(--sb-border);
500
+ flex-shrink: 0;
501
+ }
502
+
503
+ /* ── Style / Size / More 下拉触发器 ── */
504
+ ._styleTrigger_i2emf_144 {
505
+ display: inline-flex;
506
+ align-items: center;
507
+ justify-content: space-between;
508
+ gap: 6px;
509
+ width: 76px;
510
+ height: 34px;
511
+ padding: 0 10px;
512
+ border: none;
513
+ border-radius: 6px;
514
+ background: transparent;
515
+ color: var(--sb-text);
516
+ font-family: 'SF Pro Display', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
517
+ font-size: 14px;
518
+ font-weight: 500;
519
+ cursor: pointer;
520
+ flex-shrink: 0;
521
+ transition: background 0.15s;
522
+ }
523
+
524
+ ._styleTrigger_i2emf_144:hover:not(:disabled) {
525
+ background: #f3f3f3;
526
+ }
527
+
528
+ ._styleTrigger_i2emf_144:disabled {
529
+ opacity: 0.3;
530
+ cursor: not-allowed;
531
+ }
532
+
533
+ ._styleTriggerLabel_i2emf_173 {
534
+ flex: 1;
535
+ text-align: left;
536
+ overflow: hidden;
537
+ white-space: nowrap;
538
+ text-overflow: ellipsis;
539
+ }
540
+
541
+ ._styleTriggerCaret_i2emf_181 {
542
+ color: var(--sb-muted);
543
+ flex: none;
544
+ }
545
+
546
+ /* 下拉项:图标 + 文字 */
547
+ ._styleItem_i2emf_187 {
548
+ display: inline-flex;
549
+ align-items: center;
550
+ gap: 12px;
551
+ }
552
+
553
+ ._styleIcon_i2emf_193 {
554
+ display: inline-flex;
555
+ justify-content: center;
556
+ align-items: center;
557
+ min-width: 26px;
558
+ font-weight: 700;
559
+ color: var(--sb-text);
560
+ }
561
+
562
+ /* 上标 / 下标图标 */
563
+ ._scriptGlyph_i2emf_203 {
564
+ display: inline-block;
565
+ text-align: center;
566
+ font-family: 'SF Pro Display', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
567
+ }
568
+
569
+ ._scriptGlyph_i2emf_203 sup,
570
+ ._scriptGlyph_i2emf_203 sub {
571
+ font-size: 0.7em;
572
+ }
573
+
574
+ /* ── Radix 下拉菜单面板(替代 antd .ant-dropdown-menu) ── */
575
+ ._menu_i2emf_215 {
576
+ min-width: 200px;
577
+ padding: 6px;
578
+ background: #fff;
579
+ border-radius: 10px;
580
+ box-shadow:
581
+ 0 6px 24px rgba(0, 0, 0, 0.12),
582
+ 0 0 0 1px rgba(0, 0, 0, 0.06);
583
+ z-index: 1000;
584
+ }
585
+
586
+ ._menuItem_i2emf_226 {
587
+ display: flex;
588
+ align-items: center;
589
+ width: 100%;
590
+ padding: 7px 10px;
591
+ border: none;
592
+ border-radius: 6px;
593
+ background: transparent;
594
+ font-size: 14px;
595
+ color: var(--sb-text);
596
+ text-align: left;
597
+ cursor: pointer;
598
+ user-select: none;
599
+ outline: none;
600
+ }
601
+
602
+ ._menuItem_i2emf_226:hover:not(:disabled) {
603
+ background: #f3f3f3;
604
+ }
605
+
606
+ ._menuItem_i2emf_226:disabled {
607
+ opacity: 0.35;
608
+ cursor: not-allowed;
609
+ }
610
+
611
+ /* 选中态:品牌色高亮 */
612
+ ._menuItemSelected_i2emf_252 {
613
+ background: #fff3ec;
614
+ color: var(--sb-accent);
615
+ }
616
+
617
+ ._menuItemSelected_i2emf_252 ._styleIcon_i2emf_193 {
618
+ color: var(--sb-accent);
619
+ }
620
+
621
+ ._menuItemSelected_i2emf_252:hover:not(:disabled) {
622
+ background: #ffe8da;
623
+ }
624
+
625
+ /* Radix Popover 内容(承载 ColorPalette),面板自带阴影,这里只兜底 z-index */
626
+ ._popoverContent_i2emf_266 {
627
+ z-index: 1000;
628
+ }
629
+ /* 颜色面板:None 清除行 + 10×6 色板 + THEME 品牌色 */
630
+ ._palette_x5lrq_2 {
631
+ padding: 14px;
632
+ background: #fff;
633
+ border-radius: 10px;
634
+ box-shadow:
635
+ 0 6px 24px rgba(0, 0, 0, 0.12),
636
+ 0 0 0 1px rgba(0, 0, 0, 0.06);
637
+ }
638
+
639
+ ._noneRow_x5lrq_11 {
640
+ display: flex;
641
+ align-items: center;
642
+ gap: 10px;
643
+ width: 100%;
644
+ padding: 6px 6px 12px;
645
+ border: none;
646
+ background: transparent;
647
+ cursor: pointer;
648
+ }
649
+
650
+ /* 红色斜线圆圈,表示「无颜色」 */
651
+ ._noneIcon_x5lrq_23 {
652
+ position: relative;
653
+ width: 22px;
654
+ height: 22px;
655
+ border: 1.5px solid #d0d0d0;
656
+ border-radius: 50%;
657
+ }
658
+
659
+ ._noneIcon_x5lrq_23::after {
660
+ content: '';
661
+ position: absolute;
662
+ top: 50%;
663
+ left: 1px;
664
+ right: 1px;
665
+ height: 1.5px;
666
+ background: #ff3b30;
667
+ transform: rotate(-45deg);
668
+ transform-origin: center;
669
+ }
670
+
671
+ ._noneLabel_x5lrq_43 {
672
+ font-size: 15px;
673
+ color: #1f2937;
674
+ }
675
+
676
+ ._grid_x5lrq_48 {
677
+ display: grid;
678
+ grid-template-columns: repeat(10, 1fr);
679
+ gap: 6px;
680
+ }
681
+
682
+ ._swatch_x5lrq_54 {
683
+ width: 26px;
684
+ height: 26px;
685
+ border: none;
686
+ border-radius: 6px;
687
+ padding: 0;
688
+ cursor: pointer;
689
+ box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08);
690
+ transition: transform 0.1s;
691
+ }
692
+
693
+ ._swatch_x5lrq_54:hover {
694
+ transform: scale(1.12);
695
+ }
696
+
697
+ /* 选中态:外圈描边 */
698
+ ._swatchActive_x5lrq_70 {
699
+ box-shadow:
700
+ 0 0 0 2px #fff,
701
+ 0 0 0 3.5px #1f2937;
702
+ }
703
+
704
+ ._themeLabel_x5lrq_76 {
705
+ margin: 16px 0 8px;
706
+ font-size: 12px;
707
+ font-weight: 600;
708
+ letter-spacing: 0.06em;
709
+ color: #9ca3af;
710
+ }
711
+
712
+ ._themeRow_x5lrq_84 {
713
+ display: flex;
714
+ gap: 6px;
715
+ }
716
+ /* 目录面板(阅读页 + 编辑页共用)。accent / 圆角 8px / 文字比正文小一档。 */
717
+
718
+ ._desktop_euqdt_3 {
719
+ --toc-accent: var(--tmr-accent, #ff6719);
720
+ --toc-text: var(--tmr-text, #363737);
721
+ --toc-muted: var(--tmr-muted, #777);
722
+ --toc-border: var(--tmr-border, #e6e6e6);
723
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
724
+ Helvetica, Arial, sans-serif;
725
+ overflow-y: auto;
726
+ overscroll-behavior: contain;
727
+ scrollbar-width: none;
728
+ }
729
+
730
+ ._desktop_euqdt_3::-webkit-scrollbar {
731
+ display: none;
732
+ }
733
+
734
+ ._header_euqdt_19 {
735
+ display: flex;
736
+ align-items: center;
737
+ justify-content: space-between;
738
+ margin-bottom: 8px;
739
+ padding-left: 12px;
740
+ }
741
+
742
+ ._headerTitle_euqdt_27 {
743
+ font-size: 12px;
744
+ font-weight: 600;
745
+ letter-spacing: 0.04em;
746
+ text-transform: uppercase;
747
+ color: var(--toc-muted);
748
+ }
749
+
750
+ ._collapseBtn_euqdt_35 {
751
+ display: inline-flex;
752
+ align-items: center;
753
+ justify-content: center;
754
+ width: 24px;
755
+ height: 24px;
756
+ border: none;
757
+ border-radius: 6px;
758
+ background: transparent;
759
+ color: var(--toc-muted);
760
+ font-size: 14px;
761
+ cursor: pointer;
762
+ transition: background 0.15s, color 0.15s;
763
+ }
764
+
765
+ ._collapseBtn_euqdt_35:hover {
766
+ background: #f2f2f2;
767
+ color: var(--toc-text);
768
+ }
769
+
770
+ ._collapsedRail_euqdt_55 {
771
+ display: inline-flex;
772
+ align-items: center;
773
+ justify-content: center;
774
+ width: 36px;
775
+ height: 36px;
776
+ border: 1px solid var(--tmr-border, #e6e6e6);
777
+ border-radius: 8px;
778
+ background: #fff;
779
+ color: #777;
780
+ font-size: 16px;
781
+ cursor: pointer;
782
+ transition: border-color 0.15s, color 0.15s;
783
+ }
784
+
785
+ ._collapsedRail_euqdt_55:hover {
786
+ border-color: var(--tmr-accent, #ff6719);
787
+ color: var(--tmr-accent, #ff6719);
788
+ }
789
+
790
+ ._list_euqdt_75 {
791
+ list-style: none;
792
+ margin: 0;
793
+ padding: 0;
794
+ }
795
+
796
+ ._item_euqdt_81 {
797
+ display: flex;
798
+ align-items: center;
799
+ gap: 6px;
800
+ padding-top: 6px;
801
+ padding-bottom: 6px;
802
+ padding-right: 8px;
803
+ border-left: 2px solid transparent;
804
+ font-size: 14px;
805
+ line-height: 1.4;
806
+ color: var(--tmr-muted, #777);
807
+ text-decoration: none;
808
+ cursor: pointer;
809
+ transition: color 0.15s, background 0.15s, border-color 0.15s;
810
+ }
811
+
812
+ ._item_euqdt_81:hover {
813
+ color: var(--tmr-text, #363737);
814
+ background: #fff7f3;
815
+ }
816
+
817
+ ._itemText_euqdt_102 {
818
+ flex: 1;
819
+ overflow: hidden;
820
+ text-overflow: ellipsis;
821
+ white-space: nowrap;
822
+ }
823
+
824
+ ._active_euqdt_109 {
825
+ border-left-color: var(--tmr-accent, #ff6719);
826
+ color: var(--tmr-text, #363737);
827
+ font-weight: 600;
828
+ background: #fff7f3;
829
+ }
830
+
831
+ ._locked_euqdt_116 {
832
+ color: #bbb;
833
+ cursor: not-allowed;
834
+ }
835
+
836
+ ._locked_euqdt_116:hover {
837
+ color: #bbb;
838
+ background: transparent;
839
+ }
840
+
841
+ ._lockIcon_euqdt_126 {
842
+ flex: none;
843
+ font-size: 11px;
844
+ color: #bbb;
845
+ }
846
+
847
+ /* ── 移动端:顶部可折叠 ── */
848
+ ._mobile_euqdt_133 {
849
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
850
+ Helvetica, Arial, sans-serif;
851
+ }
852
+
853
+ ._mobileBar_euqdt_138 {
854
+ display: flex;
855
+ align-items: center;
856
+ gap: 8px;
857
+ width: 100%;
858
+ min-height: 44px;
859
+ padding: 0 16px;
860
+ border: 1px solid #e6e6e6;
861
+ border-radius: 8px;
862
+ background: #fafafa;
863
+ color: #363737;
864
+ font-size: 14px;
865
+ font-weight: 500;
866
+ cursor: pointer;
867
+ }
868
+
869
+ ._mobileBarIcon_euqdt_154 {
870
+ font-size: 14px;
871
+ color: #777;
872
+ }
873
+
874
+ ._chevron_euqdt_159 {
875
+ margin-left: auto;
876
+ color: #777;
877
+ display: inline-flex;
878
+ transition: transform 0.2s ease-out;
879
+ }
880
+
881
+ ._chevronUp_euqdt_166 {
882
+ transform: rotate(180deg);
883
+ }
884
+
885
+ ._mobilePanel_euqdt_170 {
886
+ max-height: 0;
887
+ overflow: hidden;
888
+ transition: max-height 0.25s ease-out;
889
+ }
890
+
891
+ ._mobilePanelOpen_euqdt_176 {
892
+ max-height: 60vh;
893
+ overflow-y: auto;
894
+ overscroll-behavior: contain;
895
+ margin-top: 6px;
896
+ background: #fff;
897
+ }
898
+
899
+ @media (prefers-reduced-motion: reduce) {
900
+ ._mobilePanel_euqdt_170,
901
+ ._chevron_euqdt_159 {
902
+ transition: none;
903
+ }
904
+ }