@arbidocs/blocks 0.4.94 → 0.4.96

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/agents/index.cjs +283 -283
  2. package/dist/agents/index.js +7 -7
  3. package/dist/{chunk-3US5OIDQ.cjs → chunk-3WW32OUU.cjs} +3 -3
  4. package/dist/{chunk-3US5OIDQ.cjs.map → chunk-3WW32OUU.cjs.map} +1 -1
  5. package/dist/{chunk-RPCQBET5.cjs → chunk-5YXG342J.cjs} +3 -3
  6. package/dist/{chunk-RPCQBET5.cjs.map → chunk-5YXG342J.cjs.map} +1 -1
  7. package/dist/{chunk-E2AAIMXO.cjs → chunk-7RI3G5BO.cjs} +538 -168
  8. package/dist/chunk-7RI3G5BO.cjs.map +1 -0
  9. package/dist/{chunk-RZGVMV6B.cjs → chunk-CK6TU76J.cjs} +5 -5
  10. package/dist/{chunk-RZGVMV6B.cjs.map → chunk-CK6TU76J.cjs.map} +1 -1
  11. package/dist/{chunk-ZNDAXSDP.js → chunk-H4SVY5FH.js} +3 -3
  12. package/dist/{chunk-ZNDAXSDP.js.map → chunk-H4SVY5FH.js.map} +1 -1
  13. package/dist/{chunk-NYBIKDWI.cjs → chunk-HBF4BDRU.cjs} +10 -4
  14. package/dist/chunk-HBF4BDRU.cjs.map +1 -0
  15. package/dist/{chunk-Z3G65XHZ.js → chunk-JID3CZSY.js} +3 -3
  16. package/dist/{chunk-Z3G65XHZ.js.map → chunk-JID3CZSY.js.map} +1 -1
  17. package/dist/{chunk-WXLKMEMB.js → chunk-K27SDLLN.js} +538 -168
  18. package/dist/chunk-K27SDLLN.js.map +1 -0
  19. package/dist/{chunk-KKU7MUWE.cjs → chunk-MROSCSPW.cjs} +46 -46
  20. package/dist/{chunk-KKU7MUWE.cjs.map → chunk-MROSCSPW.cjs.map} +1 -1
  21. package/dist/{chunk-LENXDIMY.cjs → chunk-PSN4VWI7.cjs} +5 -5
  22. package/dist/{chunk-LENXDIMY.cjs.map → chunk-PSN4VWI7.cjs.map} +1 -1
  23. package/dist/{chunk-3OXWJ3CZ.cjs → chunk-SC33PQTQ.cjs} +5 -5
  24. package/dist/{chunk-3OXWJ3CZ.cjs.map → chunk-SC33PQTQ.cjs.map} +1 -1
  25. package/dist/{chunk-PGDL26TQ.js → chunk-SF4BDUZS.js} +3 -3
  26. package/dist/{chunk-PGDL26TQ.js.map → chunk-SF4BDUZS.js.map} +1 -1
  27. package/dist/{chunk-ZNGDEQBN.js → chunk-SJVUKXS6.js} +8 -8
  28. package/dist/{chunk-ZNGDEQBN.js.map → chunk-SJVUKXS6.js.map} +1 -1
  29. package/dist/{chunk-R3PDNQYT.js → chunk-VLOPZHFH.js} +10 -4
  30. package/dist/chunk-VLOPZHFH.js.map +1 -0
  31. package/dist/{chunk-Z7OMEYDG.js → chunk-W7NZRZ54.js} +3 -3
  32. package/dist/{chunk-Z7OMEYDG.js.map → chunk-W7NZRZ54.js.map} +1 -1
  33. package/dist/{chunk-YPKSLTL5.js → chunk-Y52CEKVD.js} +3 -3
  34. package/dist/{chunk-YPKSLTL5.js.map → chunk-Y52CEKVD.js.map} +1 -1
  35. package/dist/connect/docx.cjs +6 -6
  36. package/dist/connect/docx.js +4 -4
  37. package/dist/connect/index.cjs +52 -52
  38. package/dist/connect/index.js +9 -9
  39. package/dist/docx/NativeDocxEditor.d.ts +3 -1
  40. package/dist/docx/index.cjs +24 -24
  41. package/dist/docx/index.js +3 -3
  42. package/dist/docx/review/DocxEditorReview.d.ts +4 -2
  43. package/dist/docx/review/commentText.d.ts +7 -0
  44. package/dist/facts/index.cjs +2 -2
  45. package/dist/facts/index.js +2 -2
  46. package/dist/files/index.cjs +2 -2
  47. package/dist/files/index.js +2 -2
  48. package/dist/home/CreateTile.d.ts +3 -1
  49. package/dist/home/index.cjs +11 -5
  50. package/dist/home/index.cjs.map +1 -1
  51. package/dist/home/index.js +11 -5
  52. package/dist/home/index.js.map +1 -1
  53. package/dist/index.cjs +823 -823
  54. package/dist/index.js +15 -15
  55. package/dist/settings/PanelFrame.d.ts +3 -1
  56. package/dist/settings/index.cjs +46 -38
  57. package/dist/settings/index.cjs.map +1 -1
  58. package/dist/settings/index.js +14 -6
  59. package/dist/settings/index.js.map +1 -1
  60. package/dist/shell/Workspace.d.ts +6 -1
  61. package/dist/shell/index.cjs +46 -46
  62. package/dist/shell/index.js +2 -2
  63. package/dist/studio/index.cjs +1 -1
  64. package/dist/studio/index.js +1 -1
  65. package/dist/workflow-canvas/index.cjs +50 -50
  66. package/dist/workflow-canvas/index.js +7 -7
  67. package/dist/workspaces/index.cjs +1 -1
  68. package/dist/workspaces/index.js +1 -1
  69. package/package.json +4 -4
  70. package/src/docx/styles.css +473 -91
  71. package/dist/chunk-E2AAIMXO.cjs.map +0 -1
  72. package/dist/chunk-NYBIKDWI.cjs.map +0 -1
  73. package/dist/chunk-R3PDNQYT.js.map +0 -1
  74. package/dist/chunk-WXLKMEMB.js.map +0 -1
@@ -193,7 +193,7 @@
193
193
  }
194
194
  }
195
195
 
196
- /* Review controls overlay the page, matching the other ARBI viewers. */
196
+ /* The engine's own review gutter is replaced by the rail's: see data-review-margin below. */
197
197
  .native-docx-body .native-docx-viewport[data-review-pane] {
198
198
  padding-inline: 8px;
199
199
  scrollbar-gutter: stable;
@@ -242,6 +242,18 @@
242
242
  .native-docx-ribbon .docx-toolbar > * {
243
243
  flex-shrink: 0;
244
244
  }
245
+ .native-docx-ribbon-badge {
246
+ flex: none;
247
+ margin: 0 8px 0 4px;
248
+ padding: 2px 8px;
249
+ border-radius: 999px;
250
+ background: hsl(var(--primary) / 0.1);
251
+ color: hsl(var(--primary));
252
+ font-size: 11px;
253
+ font-weight: 600;
254
+ line-height: 18px;
255
+ white-space: nowrap;
256
+ }
245
257
 
246
258
  .native-docx-ribbon {
247
259
  position: relative;
@@ -311,9 +323,29 @@
311
323
  text-decoration: underline;
312
324
  }
313
325
 
326
+ /* Review rail. Wide: a Word-style card column beside the page. Compact: margin symbols and a bubble. */
327
+ .native-docx-review {
328
+ display: contents;
329
+ --review-accept: 152 56% 32%;
330
+ --review-reject: 0 62% 46%;
331
+ --review-comment: 38 92% 46%;
332
+ --review-format: 217 70% 50%;
333
+ }
334
+ .dark .native-docx-review,
335
+ [data-theme='dark'] .native-docx-review {
336
+ --review-accept: 152 48% 58%;
337
+ --review-reject: 0 72% 68%;
338
+ --review-comment: 40 90% 60%;
339
+ --review-format: 217 85% 70%;
340
+ }
341
+ /* The column's room comes from the page: the editor refits the page into what is left. */
342
+ .native-docx-body .native-docx-viewport[data-review-margin] {
343
+ padding-right: 332px;
344
+ }
314
345
  .native-docx-review-pane,
315
346
  .native-docx-review-markers {
316
347
  position: absolute;
348
+ z-index: 5;
317
349
  top: 0;
318
350
  right: 16px;
319
351
  width: 300px;
@@ -324,172 +356,522 @@
324
356
  right: 8px;
325
357
  }
326
358
  .native-docx-review-card,
327
- .native-docx-review-marker {
359
+ .native-docx-review-marker,
360
+ .native-docx-review-bubble {
328
361
  pointer-events: auto;
329
362
  }
363
+
364
+ /* Cards */
330
365
  .native-docx-review-card {
366
+ --review-accent: var(--review-comment);
331
367
  position: absolute;
332
368
  left: 0;
333
369
  right: 0;
334
370
  box-sizing: border-box;
335
- padding: 10px 12px;
371
+ padding: 10px 12px 10px 14px;
336
372
  border: 1px solid hsl(var(--border));
337
- border-radius: 8px;
338
- background: hsl(var(--background));
373
+ border-radius: 10px;
374
+ background: hsl(var(--card, var(--background)));
339
375
  color: hsl(var(--foreground));
340
376
  font-size: 13px;
341
- line-height: 1.4;
342
- box-shadow: 0 1px 3px rgb(0 0 0 / 0.08);
377
+ line-height: 1.45;
378
+ box-shadow: 0 1px 2px rgb(0 0 0 / 0.05);
343
379
  cursor: pointer;
380
+ transition:
381
+ box-shadow 120ms ease,
382
+ border-color 120ms ease,
383
+ transform 120ms ease;
384
+ }
385
+ /* A coloured spine tells comments and each kind of change apart at a glance. */
386
+ .native-docx-review-card::before {
387
+ content: '';
388
+ position: absolute;
389
+ left: -1px;
390
+ top: 8px;
391
+ bottom: 8px;
392
+ width: 3px;
393
+ border-radius: 0 3px 3px 0;
394
+ background: hsl(var(--review-accent));
395
+ }
396
+ .native-docx-review-card[data-change='insert'],
397
+ .native-docx-review-card[data-change='moveTo'],
398
+ .native-docx-review-card[data-change='replace'] {
399
+ --review-accent: var(--review-accept);
400
+ }
401
+ .native-docx-review-card[data-change='delete'],
402
+ .native-docx-review-card[data-change='moveFrom'] {
403
+ --review-accent: var(--review-reject);
404
+ }
405
+ .native-docx-review-card[data-change='format'],
406
+ .native-docx-review-card[data-change='paragraphMark'],
407
+ .native-docx-review-card[data-change='structural'] {
408
+ --review-accent: var(--review-format);
409
+ }
410
+ .native-docx-review-card:hover {
411
+ box-shadow: 0 2px 8px rgb(0 0 0 / 0.08);
344
412
  }
345
413
  .native-docx-review-card[data-active] {
346
- border-color: hsl(var(--ring));
347
- box-shadow: 0 2px 8px rgb(0 0 0 / 0.14);
414
+ border-color: hsl(var(--review-accent) / 0.6);
415
+ box-shadow:
416
+ 0 0 0 3px hsl(var(--review-accent) / 0.14),
417
+ 0 6px 18px rgb(0 0 0 / 0.12);
418
+ cursor: default;
419
+ }
420
+ .native-docx-review-pane .native-docx-review-card[data-active] {
421
+ transform: translateX(-6px);
348
422
  }
349
423
  .native-docx-review-card[data-resolved] {
350
424
  opacity: 0.6;
351
425
  }
352
- .native-docx-review-kind {
353
- margin-bottom: 4px;
354
- font-weight: 600;
426
+ .native-docx-review-card[data-floating] {
427
+ position: relative;
428
+ border: 0;
429
+ border-radius: 0;
430
+ box-shadow: none;
431
+ background: transparent;
432
+ cursor: default;
433
+ }
434
+ .native-docx-review-card[data-floating] + .native-docx-review-card[data-floating] {
435
+ border-top: 1px solid hsl(var(--border));
436
+ }
437
+ .native-docx-review-card[data-floating]::before {
438
+ top: 12px;
439
+ bottom: 12px;
440
+ left: 0;
355
441
  }
356
442
  .native-docx-review-byline {
357
443
  display: flex;
358
444
  align-items: center;
359
- gap: 6px;
445
+ gap: 8px;
446
+ min-width: 0;
360
447
  }
361
448
  .native-docx-review-avatar {
449
+ flex: none;
362
450
  display: inline-grid;
363
451
  place-items: center;
364
- width: 22px;
365
- height: 22px;
452
+ width: 26px;
453
+ height: 26px;
366
454
  border-radius: 50%;
367
- background: hsl(var(--muted));
455
+ background: hsl(var(--review-author-hue, 200) 52% 44%);
456
+ color: white;
368
457
  font-size: 10px;
369
458
  font-weight: 600;
459
+ letter-spacing: 0.02em;
460
+ }
461
+ .native-docx-review-who {
462
+ display: flex;
463
+ flex-direction: column;
464
+ min-width: 0;
465
+ flex: 1;
466
+ line-height: 1.25;
370
467
  }
371
468
  .native-docx-review-author {
469
+ overflow: hidden;
372
470
  font-weight: 600;
471
+ text-overflow: ellipsis;
472
+ white-space: nowrap;
373
473
  }
374
- .native-docx-review-date {
375
- margin-left: auto;
474
+ .native-docx-review-meta {
376
475
  color: hsl(var(--muted-foreground));
377
476
  font-size: 11px;
378
477
  }
379
- .native-docx-review-text {
380
- margin: 4px 0 0;
381
- white-space: pre-wrap;
478
+ .native-docx-review-text,
479
+ .native-docx-review-change {
480
+ margin: 6px 0 0;
382
481
  overflow-wrap: anywhere;
383
482
  }
384
- .native-docx-review-message + .native-docx-review-message {
483
+ .native-docx-review-change {
484
+ white-space: pre-wrap;
485
+ }
486
+ /* Comment text is markdown (ARBI answers in it), set tight for a card. */
487
+ .native-docx-review-text .native-docx-review-markdown {
488
+ font-size: 13px;
489
+ line-height: 1.45;
490
+ }
491
+ .native-docx-review-markdown > * {
492
+ margin-block: 0;
493
+ }
494
+ .native-docx-review-markdown > * + * {
495
+ margin-top: 6px;
496
+ }
497
+ .native-docx-review-markdown :is(ul, ol) {
498
+ padding-left: 18px;
499
+ }
500
+ /* A resting card shows the start of each message; opening it shows the whole thread. */
501
+ .native-docx-review-card:not([data-active]):not([data-floating]) .native-docx-review-text {
502
+ max-height: 4.4em;
503
+ overflow: hidden;
504
+ /* Fixed stops, so a short message is untouched and only cut-off text fades out. */
505
+ -webkit-mask-image: linear-gradient(to bottom, #000 3em, transparent 4.4em);
506
+ mask-image: linear-gradient(to bottom, #000 3em, transparent 4.4em);
507
+ }
508
+ .native-docx-review-card:not([data-active]):not([data-floating]) .native-docx-review-change {
509
+ display: -webkit-box;
510
+ overflow: hidden;
511
+ -webkit-box-orient: vertical;
512
+ -webkit-line-clamp: 3;
513
+ }
514
+ .native-docx-review-change {
515
+ padding: 6px 8px;
516
+ border-radius: 6px;
517
+ background: hsl(var(--muted) / 0.7);
518
+ }
519
+ .native-docx-review-change ins {
520
+ color: hsl(var(--review-accept));
521
+ text-decoration: underline;
522
+ text-decoration-thickness: 1px;
523
+ text-underline-offset: 2px;
524
+ }
525
+ .native-docx-review-change del {
526
+ color: hsl(var(--review-reject));
527
+ text-decoration: line-through;
528
+ }
529
+ .native-docx-review-arrow {
530
+ margin: 0 6px;
531
+ color: hsl(var(--muted-foreground));
532
+ }
533
+ .native-docx-review-thread {
385
534
  margin-top: 8px;
386
- padding-top: 8px;
387
- border-top: 1px solid hsl(var(--border));
535
+ padding-left: 10px;
536
+ border-left: 2px solid hsl(var(--border));
388
537
  }
389
- .native-docx-review-actions {
390
- display: flex;
391
- gap: 6px;
538
+ .native-docx-review-message + .native-docx-review-message {
392
539
  margin-top: 8px;
393
540
  }
394
- .native-docx-review-actions:empty {
395
- display: none;
541
+ .native-docx-review-message .native-docx-review-avatar {
542
+ width: 20px;
543
+ height: 20px;
544
+ font-size: 9px;
396
545
  }
397
- .native-docx-review-card button {
398
- padding: 2px 8px;
399
- border: 1px solid hsl(var(--border));
400
- border-radius: 6px;
401
- background: hsl(var(--background));
402
- font: inherit;
546
+ .native-docx-review-message .native-docx-review-text {
547
+ margin-top: 3px;
548
+ }
549
+
550
+ /* Buttons */
551
+ .native-docx-review button {
552
+ font-family: inherit;
553
+ font-size: inherit;
403
554
  cursor: pointer;
404
555
  }
405
- .native-docx-review-card button:disabled {
406
- opacity: 0.5;
556
+ .native-docx-review button:disabled {
557
+ opacity: 0.45;
407
558
  cursor: default;
408
559
  }
409
- .native-docx-review-reply {
560
+ .native-docx-review button:focus-visible,
561
+ .native-docx-review-card:focus-visible {
562
+ outline: 2px solid hsl(var(--ring));
563
+ outline-offset: 1px;
564
+ }
565
+ .native-docx-review-icon {
566
+ display: inline-grid;
567
+ place-items: center;
568
+ flex: none;
569
+ width: 26px;
570
+ height: 26px;
571
+ padding: 0;
572
+ border: 0;
573
+ border-radius: 6px;
574
+ background: transparent;
575
+ color: hsl(var(--muted-foreground));
576
+ }
577
+ .native-docx-review-icon:not(:disabled):hover {
578
+ background: hsl(var(--muted));
579
+ color: hsl(var(--foreground));
580
+ }
581
+ .native-docx-review-tools {
582
+ display: flex;
583
+ gap: 2px;
584
+ margin-right: -4px;
585
+ }
586
+ .native-docx-review-decide,
587
+ .native-docx-review-bulk {
410
588
  display: flex;
411
589
  flex-wrap: wrap;
412
590
  gap: 6px;
413
- margin-top: 8px;
591
+ margin-top: 10px;
414
592
  }
415
- .native-docx-review-reply input,
416
- .native-docx-review-draft input {
417
- flex: 1 1 100%;
593
+ .native-docx-review-bulk {
594
+ margin-top: 0;
595
+ align-items: center;
596
+ }
597
+ .native-docx-review .native-docx-review-accept,
598
+ .native-docx-review .native-docx-review-reject,
599
+ .native-docx-review .native-docx-review-plain {
600
+ font-size: 12px;
601
+ font-weight: 600;
602
+ display: inline-flex;
603
+ align-items: center;
604
+ gap: 5px;
605
+ height: 28px;
606
+ padding: 0 11px;
607
+ border: 1px solid transparent;
608
+ border-radius: 999px;
609
+ transition:
610
+ background 120ms ease,
611
+ color 120ms ease;
612
+ }
613
+ .native-docx-review-accept {
614
+ background: hsl(var(--review-accept) / 0.12);
615
+ border-color: hsl(var(--review-accept) / 0.3);
616
+ color: hsl(var(--review-accept));
617
+ }
618
+ .native-docx-review-accept:not(:disabled):hover {
619
+ background: hsl(var(--review-accept));
620
+ border-color: hsl(var(--review-accept));
621
+ color: hsl(var(--background));
622
+ }
623
+ .native-docx-review-reject {
624
+ background: hsl(var(--review-reject) / 0.08);
625
+ border-color: hsl(var(--review-reject) / 0.25);
626
+ color: hsl(var(--review-reject));
627
+ }
628
+ .native-docx-review-reject:not(:disabled):hover {
629
+ background: hsl(var(--review-reject));
630
+ border-color: hsl(var(--review-reject));
631
+ color: hsl(var(--background));
632
+ }
633
+ .native-docx-review-plain {
634
+ background: transparent;
635
+ color: hsl(var(--muted-foreground));
636
+ }
637
+ .native-docx-review-plain:hover {
638
+ background: hsl(var(--muted));
639
+ color: hsl(var(--foreground));
640
+ }
641
+ /* With a pointer that hovers, a resting card shows only its content; its controls come with it. */
642
+ @media (hover: hover) {
643
+ .native-docx-review-pane .native-docx-review-card:not([data-active]):not(:hover):not(:focus-within)
644
+ :is(.native-docx-review-tools, .native-docx-review-decide) {
645
+ opacity: 0;
646
+ }
647
+ }
648
+
649
+ /* Reply and new comment */
650
+ .native-docx-review-reply {
651
+ display: flex;
652
+ align-items: center;
653
+ gap: 2px;
654
+ margin-top: 10px;
655
+ padding: 2px 2px 2px 10px;
656
+ border: 1px solid hsl(var(--border));
657
+ border-radius: 999px;
658
+ background: hsl(var(--background));
659
+ }
660
+ .native-docx-review-reply:focus-within {
661
+ border-color: hsl(var(--ring));
662
+ }
663
+ .native-docx-review-reply input {
664
+ flex: 1;
418
665
  min-width: 0;
419
- padding: 4px 8px;
666
+ padding: 4px 0;
667
+ border: 0;
668
+ outline: 0;
669
+ background: transparent;
670
+ color: inherit;
671
+ font: inherit;
672
+ }
673
+ .native-docx-review-send:not(:disabled) {
674
+ color: hsl(var(--primary));
675
+ }
676
+ .native-docx-review-draft input {
677
+ box-sizing: border-box;
678
+ width: 100%;
679
+ padding: 7px 10px;
420
680
  border: 1px solid hsl(var(--border));
421
- border-radius: 6px;
681
+ border-radius: 8px;
422
682
  background: hsl(var(--background));
423
683
  color: inherit;
424
684
  font: inherit;
425
685
  }
686
+ .native-docx-review-draft input:focus {
687
+ outline: 0;
688
+ border-color: hsl(var(--ring));
689
+ }
690
+
691
+ /* The column's header: its first row, scrolling with the cards, so it never covers one. */
692
+ .native-docx-review-toolbar {
693
+ position: relative;
694
+ display: flex;
695
+ flex-wrap: wrap;
696
+ gap: 8px;
697
+ align-items: center;
698
+ justify-content: space-between;
699
+ pointer-events: auto;
700
+ margin-bottom: 8px;
701
+ padding: 8px 10px;
702
+ border: 1px solid hsl(var(--border));
703
+ border-radius: 10px;
704
+ background: hsl(var(--background));
705
+ color: hsl(var(--foreground));
706
+ box-shadow: 0 1px 3px rgb(0 0 0 / 0.06);
707
+ font-size: 12px;
708
+ }
709
+ .native-docx-review-toolbar .native-docx-review-bulk {
710
+ flex-basis: 100%;
711
+ }
712
+ .native-docx-review-summary {
713
+ font-weight: 600;
714
+ color: hsl(var(--foreground));
715
+ font-size: 12px;
716
+ }
717
+ .native-docx-review-segment {
718
+ display: inline-flex;
719
+ margin-right: auto;
720
+ border: 1px solid hsl(var(--border));
721
+ border-radius: 999px;
722
+ overflow: hidden;
723
+ }
724
+ .native-docx-review-segment .native-docx-review-icon {
725
+ border-radius: 0;
726
+ width: 30px;
727
+ }
728
+ .native-docx-review-switch {
729
+ display: inline-flex;
730
+ align-items: center;
731
+ gap: 5px;
732
+ color: hsl(var(--muted-foreground));
733
+ cursor: pointer;
734
+ }
735
+ .native-docx-review-switch input {
736
+ accent-color: hsl(var(--primary));
737
+ margin: 0;
738
+ }
739
+
740
+ /* Margin symbols */
426
741
  .native-docx-review-marker {
427
742
  position: absolute;
428
743
  right: 0;
429
- width: 20px;
430
- height: 20px;
431
- border: 0;
432
- border-radius: 50%;
433
- background: hsl(var(--primary));
434
- opacity: 0.8;
435
- cursor: pointer;
744
+ display: grid;
745
+ place-items: center;
746
+ width: 26px;
747
+ height: 26px;
748
+ padding: 0;
749
+ border: 1px solid hsl(var(--review-comment) / 0.45);
750
+ border-radius: 8px 8px 8px 2px;
751
+ background: hsl(var(--review-comment) / 0.16);
752
+ color: hsl(var(--review-comment));
753
+ box-shadow: 0 1px 2px rgb(0 0 0 / 0.08);
754
+ transition:
755
+ transform 120ms ease,
756
+ background 120ms ease;
757
+ }
758
+ .native-docx-review-marker[data-kind='revision'] {
759
+ border-color: hsl(var(--review-format) / 0.45);
760
+ background: hsl(var(--review-format) / 0.14);
761
+ color: hsl(var(--review-format));
762
+ }
763
+ .native-docx-review-marker:hover,
764
+ .native-docx-review-marker[data-active] {
765
+ transform: scale(1.08);
766
+ background: hsl(var(--review-comment));
767
+ color: white;
436
768
  }
437
- .native-docx-review-empty {
438
- pointer-events: auto;
439
- margin: 8px 0;
440
- color: hsl(var(--muted-foreground));
441
- font-size: 13px;
769
+ .native-docx-review-marker[data-kind='revision']:hover,
770
+ .native-docx-review-marker[data-kind='revision'][data-active] {
771
+ background: hsl(var(--review-format));
772
+ }
773
+ .native-docx-review-count {
774
+ position: absolute;
775
+ top: -6px;
776
+ right: -6px;
777
+ min-width: 15px;
778
+ height: 15px;
779
+ padding: 0 3px;
780
+ box-sizing: border-box;
781
+ border-radius: 999px;
782
+ background: hsl(var(--foreground));
783
+ color: hsl(var(--background));
784
+ font-size: 9px;
785
+ font-weight: 700;
786
+ line-height: 15px;
442
787
  }
443
788
  .native-docx-review-add {
444
789
  position: absolute;
445
- right: -24px;
446
- width: 20px;
447
- height: 20px;
790
+ left: -34px;
791
+ display: grid;
792
+ place-items: center;
793
+ width: 26px;
794
+ height: 26px;
448
795
  padding: 0;
449
796
  border: 1px solid hsl(var(--border));
450
797
  border-radius: 50%;
451
798
  background: hsl(var(--background));
452
- color: hsl(var(--foreground));
453
- line-height: 1;
454
- cursor: pointer;
799
+ color: hsl(var(--muted-foreground));
800
+ box-shadow: 0 1px 3px rgb(0 0 0 / 0.1);
455
801
  pointer-events: auto;
456
802
  }
803
+ .native-docx-review-add:hover {
804
+ color: hsl(var(--primary));
805
+ border-color: hsl(var(--primary) / 0.5);
806
+ }
457
807
  .native-docx-review-markers .native-docx-review-add {
458
- right: 0;
459
- top: 0;
808
+ left: auto;
809
+ right: 32px;
460
810
  }
461
- .native-docx-review-toolbar {
811
+
812
+ /* The bubble a margin symbol opens on a compact screen */
813
+ .native-docx-review-bubble {
814
+ position: absolute;
815
+ z-index: 30;
816
+ right: 34px;
817
+ box-sizing: border-box;
818
+ max-height: min(70vh, 520px);
819
+ overflow: auto;
820
+ overscroll-behavior: contain;
821
+ border: 1px solid hsl(var(--border));
822
+ border-radius: 12px;
823
+ background: hsl(var(--popover, var(--background)));
824
+ color: hsl(var(--popover-foreground, var(--foreground)));
825
+ box-shadow:
826
+ 0 12px 32px rgb(0 0 0 / 0.18),
827
+ 0 2px 6px rgb(0 0 0 / 0.08);
828
+ animation: native-docx-review-pop 120ms ease-out;
829
+ }
830
+ @keyframes native-docx-review-pop {
831
+ from {
832
+ opacity: 0;
833
+ transform: translateY(-4px) scale(0.98);
834
+ }
835
+ }
836
+ @media (prefers-reduced-motion: reduce) {
837
+ .native-docx-review-bubble {
838
+ animation: none;
839
+ }
840
+ .native-docx-review-card,
841
+ .native-docx-review-marker {
842
+ transition: none;
843
+ }
844
+ }
845
+ .native-docx-review-bubble-head {
462
846
  position: sticky;
463
847
  top: 0;
464
- z-index: 2;
848
+ z-index: 1;
465
849
  display: flex;
466
- flex-wrap: wrap;
467
- gap: 6px;
468
850
  align-items: center;
469
- pointer-events: auto;
470
- margin-bottom: 8px;
471
- padding: 6px 8px;
472
- border: 1px solid hsl(var(--border));
473
- border-radius: 8px;
474
- background: hsl(var(--background));
475
- color: hsl(var(--foreground));
476
- box-shadow: 0 1px 3px rgb(0 0 0 / 0.08);
477
- font-size: 12px;
851
+ gap: 2px;
852
+ padding: 4px 4px 4px 8px;
853
+ border-bottom: 1px solid hsl(var(--border));
854
+ background: inherit;
478
855
  }
479
- .native-docx-review-toolbar:empty {
480
- display: none;
856
+ .native-docx-review-bubble-head .native-docx-review-summary {
857
+ min-width: 52px;
858
+ text-align: center;
859
+ font-weight: 500;
860
+ color: hsl(var(--muted-foreground));
481
861
  }
482
- .native-docx-review-toolbar button {
483
- padding: 2px 8px;
484
- border: 1px solid hsl(var(--border));
485
- border-radius: 6px;
486
- background: hsl(var(--background));
487
- font: inherit;
488
- cursor: pointer;
862
+ .native-docx-review-close {
863
+ margin-left: auto;
489
864
  }
490
- .native-docx-review-card:focus-visible,
491
- .native-docx-review-card button:focus-visible,
492
- .native-docx-review-toolbar button:focus-visible {
493
- outline: 2px solid hsl(var(--ring));
494
- outline-offset: 1px;
865
+ .native-docx-review-bubble-foot {
866
+ padding: 8px 12px 10px;
867
+ border-top: 1px solid hsl(var(--border));
868
+ }
869
+ .native-docx-review-bubble .native-docx-review-draft {
870
+ padding: 12px;
871
+ }
872
+ .native-docx-review-empty {
873
+ margin: 0;
874
+ padding: 14px;
875
+ color: hsl(var(--muted-foreground));
876
+ font-size: 13px;
495
877
  }