@openeditor/ui 0.0.45 → 0.0.46

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