superdoc 2.20.1-next.7 → 2.20.1-next.8

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.
@@ -1493,7 +1493,7 @@ img[data-v-c95b2073] {
1493
1493
  font-size: 11px;
1494
1494
  }
1495
1495
 
1496
- .comments-dialog[data-v-bc46ac97] {
1496
+ .comments-dialog[data-v-eefd4750] {
1497
1497
  display: flex;
1498
1498
  flex-direction: column;
1499
1499
  padding: var(--sd-ui-comments-card-padding, 16px);
@@ -1512,74 +1512,74 @@ img[data-v-c95b2073] {
1512
1512
  overflow-wrap: break-word;
1513
1513
  word-break: break-word;
1514
1514
  }
1515
- .comments-dialog[data-v-bc46ac97]:not(.is-active) {
1515
+ .comments-dialog[data-v-eefd4750]:not(.is-active) {
1516
1516
  cursor: pointer;
1517
1517
  }
1518
- .comments-dialog[data-v-bc46ac97]:not(.is-active):not(.is-resolved):hover {
1518
+ .comments-dialog[data-v-eefd4750]:not(.is-active):not(.is-resolved):hover {
1519
1519
  background-color: var(--sd-ui-comments-card-hover-bg, #f3f6fd);
1520
1520
  }
1521
- .comments-dialog[data-v-bc46ac97]:not(.is-resolved):hover .overflow-menu {
1521
+ .comments-dialog[data-v-eefd4750]:not(.is-resolved):hover .overflow-menu {
1522
1522
  opacity: 1;
1523
1523
  pointer-events: auto;
1524
1524
  }
1525
- .comments-dialog.is-active[data-v-bc46ac97] {
1525
+ .comments-dialog.is-active[data-v-eefd4750] {
1526
1526
  background-color: var(--sd-ui-comments-card-active-bg, #ffffff);
1527
1527
  border-color: var(--sd-ui-comments-card-active-border, #e0e0e0);
1528
1528
  box-shadow: var(--sd-ui-comments-card-shadow, 0px 4px 12px 0px rgba(50, 50, 50, 0.15));
1529
1529
  z-index: 10;
1530
1530
  }
1531
- .comments-dialog.is-resolved[data-v-bc46ac97] {
1531
+ .comments-dialog.is-resolved[data-v-eefd4750] {
1532
1532
  background-color: var(--sd-ui-comments-card-resolved-bg, #f0f0f0);
1533
1533
  }
1534
- .comment-separator[data-v-bc46ac97] {
1534
+ .comment-separator[data-v-eefd4750] {
1535
1535
  background-color: var(--sd-ui-comments-separator, #e0e0e0);
1536
1536
  height: 1px;
1537
1537
  width: 100%;
1538
1538
  margin: 10px 0;
1539
1539
  }
1540
- .comment[data-v-bc46ac97] {
1540
+ .comment[data-v-eefd4750] {
1541
1541
  font-size: var(--sd-ui-comments-body-size, 14px);
1542
1542
  line-height: 1.5;
1543
1543
  color: var(--sd-ui-comments-body-text, #212121);
1544
1544
  margin: 4px 0 0 0;
1545
1545
  }
1546
- .comment[data-v-bc46ac97] p {
1546
+ .comment[data-v-eefd4750] p {
1547
1547
  margin: 0;
1548
1548
  }
1549
- .tracked-change[data-v-bc46ac97] {
1549
+ .tracked-change[data-v-eefd4750] {
1550
1550
  font-size: var(--sd-ui-comments-body-size, 14px);
1551
1551
  line-height: 1.5;
1552
1552
  color: var(--sd-ui-comments-body-text, #212121);
1553
1553
  margin: 4px 0 0 0;
1554
1554
  }
1555
- .change-type[data-v-bc46ac97] {
1555
+ .change-type[data-v-eefd4750] {
1556
1556
  color: var(--sd-ui-comments-body-text, #212121);
1557
1557
  }
1558
- .tracked-change-text[data-v-bc46ac97] {
1558
+ .tracked-change-text[data-v-eefd4750] {
1559
1559
  color: var(--sd-ui-comments-body-text, #212121);
1560
1560
  white-space: pre-wrap;
1561
1561
  }
1562
- .tracked-change-text.is-deleted[data-v-bc46ac97] {
1562
+ .tracked-change-text.is-deleted[data-v-eefd4750] {
1563
1563
  color: var(--sd-ui-comments-delete-text, #cb0e47);
1564
1564
  }
1565
- .tracked-change-text.is-inserted[data-v-bc46ac97] {
1565
+ .tracked-change-text.is-inserted[data-v-eefd4750] {
1566
1566
  color: var(--sd-ui-comments-insert-text, #1f6feb);
1567
1567
  font-weight: 500;
1568
1568
  }
1569
- .tracked-change[data-track-change-semantic-color-key='move-from'] .tracked-change-text.is-deleted[data-v-bc46ac97] {
1569
+ .tracked-change[data-track-change-semantic-color-key='move-from'] .tracked-change-text.is-deleted[data-v-eefd4750] {
1570
1570
  color: var(--sd-ui-comments-move-from-text, #00853d);
1571
1571
  }
1572
- .tracked-change[data-track-change-semantic-color-key='move-to'] .tracked-change-text.is-inserted[data-v-bc46ac97] {
1572
+ .tracked-change[data-track-change-semantic-color-key='move-to'] .tracked-change-text.is-inserted[data-v-eefd4750] {
1573
1573
  color: var(--sd-ui-comments-move-to-text, #00853d);
1574
1574
  }
1575
- .tracked-change-detail-lines[data-v-bc46ac97] {
1575
+ .tracked-change-detail-lines[data-v-eefd4750] {
1576
1576
  margin-top: 4px;
1577
1577
  }
1578
- .tracked-change-detail-line[data-v-bc46ac97] {
1578
+ .tracked-change-detail-line[data-v-eefd4750] {
1579
1579
  font-size: 12px;
1580
1580
  line-height: 1.4;
1581
1581
  }
1582
- .tracked-change-image-preview[data-v-bc46ac97] {
1582
+ .tracked-change-image-preview[data-v-eefd4750] {
1583
1583
  display: inline-flex;
1584
1584
  align-items: center;
1585
1585
  justify-content: center;
@@ -1590,7 +1590,7 @@ img[data-v-c95b2073] {
1590
1590
  max-width: 96px;
1591
1591
  max-height: 96px;
1592
1592
  }
1593
- .tracked-change-image-preview__image[data-v-bc46ac97] {
1593
+ .tracked-change-image-preview__image[data-v-eefd4750] {
1594
1594
  display: block;
1595
1595
  width: auto;
1596
1596
  height: auto;
@@ -1600,7 +1600,7 @@ img[data-v-c95b2073] {
1600
1600
  }
1601
1601
 
1602
1602
  /* ── Failed tracked-change decision alert (SD-3772 §6) ── */
1603
- .tracked-change-decision-alert[data-v-bc46ac97] {
1603
+ .tracked-change-decision-alert[data-v-eefd4750] {
1604
1604
  display: flex;
1605
1605
  align-items: center;
1606
1606
  justify-content: space-between;
@@ -1614,12 +1614,12 @@ img[data-v-c95b2073] {
1614
1614
  font-size: var(--sd-ui-comments-body-size, 14px);
1615
1615
  line-height: 1.4;
1616
1616
  }
1617
- .tracked-change-decision-alert__retry[data-v-bc46ac97] {
1617
+ .tracked-change-decision-alert__retry[data-v-eefd4750] {
1618
1618
  flex-shrink: 0;
1619
1619
  }
1620
1620
 
1621
1621
  /* ── Resolved badge ── */
1622
- .resolved-badge[data-v-bc46ac97] {
1622
+ .resolved-badge[data-v-eefd4750] {
1623
1623
  display: inline-flex;
1624
1624
  align-items: center;
1625
1625
  gap: 4px;
@@ -1628,33 +1628,33 @@ img[data-v-c95b2073] {
1628
1628
  color: var(--sd-ui-comments-resolved-text, #00853d);
1629
1629
  margin-bottom: 4px;
1630
1630
  }
1631
- .resolved-badge__icon[data-v-bc46ac97] {
1631
+ .resolved-badge__icon[data-v-eefd4750] {
1632
1632
  display: inline-flex;
1633
1633
  width: 12px;
1634
1634
  height: 12px;
1635
1635
  }
1636
- .resolved-badge__icon[data-v-bc46ac97] svg {
1636
+ .resolved-badge__icon[data-v-eefd4750] svg {
1637
1637
  width: 100%;
1638
1638
  height: 100%;
1639
1639
  fill: currentColor;
1640
1640
  }
1641
1641
 
1642
1642
  /* ── Text truncation ── */
1643
- .comment.is-truncated[data-v-bc46ac97],
1644
- .tracked-change.is-truncated[data-v-bc46ac97] {
1643
+ .comment.is-truncated[data-v-eefd4750],
1644
+ .tracked-change.is-truncated[data-v-eefd4750] {
1645
1645
  display: -webkit-box;
1646
1646
  -webkit-line-clamp: 3;
1647
1647
  -webkit-box-orient: vertical;
1648
1648
  max-height: 4.5em;
1649
1649
  overflow: hidden;
1650
1650
  }
1651
- .comment.is-scrollable[data-v-bc46ac97],
1652
- .tracked-change.is-scrollable[data-v-bc46ac97] {
1651
+ .comment.is-scrollable[data-v-eefd4750],
1652
+ .tracked-change.is-scrollable[data-v-eefd4750] {
1653
1653
  max-height: 220px;
1654
1654
  overflow-y: auto;
1655
1655
  padding-right: 4px;
1656
1656
  }
1657
- .show-more-toggle[data-v-bc46ac97] {
1657
+ .show-more-toggle[data-v-eefd4750] {
1658
1658
  font-size: 12px;
1659
1659
  color: var(--sd-ui-action, #1355ff);
1660
1660
  cursor: pointer;
@@ -1662,12 +1662,12 @@ img[data-v-c95b2073] {
1662
1662
  margin-top: 4px;
1663
1663
  user-select: none;
1664
1664
  }
1665
- .show-more-toggle[data-v-bc46ac97]:hover {
1665
+ .show-more-toggle[data-v-eefd4750]:hover {
1666
1666
  text-decoration: underline;
1667
1667
  }
1668
1668
 
1669
1669
  /* ── Thread collapse ── */
1670
- .collapsed-replies[data-v-bc46ac97] {
1670
+ .collapsed-replies[data-v-eefd4750] {
1671
1671
  display: flex;
1672
1672
  align-items: center;
1673
1673
  gap: 6px;
@@ -1678,24 +1678,24 @@ img[data-v-c95b2073] {
1678
1678
  cursor: pointer;
1679
1679
  user-select: none;
1680
1680
  }
1681
- .collapsed-replies[data-v-bc46ac97]:hover {
1681
+ .collapsed-replies[data-v-eefd4750]:hover {
1682
1682
  text-decoration: underline;
1683
1683
  }
1684
- .collapsed-avatars[data-v-bc46ac97] {
1684
+ .collapsed-avatars[data-v-eefd4750] {
1685
1685
  display: flex;
1686
1686
  }
1687
- .collapsed-avatars .mini-avatar[data-v-bc46ac97] {
1687
+ .collapsed-avatars .mini-avatar[data-v-eefd4750] {
1688
1688
  --sd-comment-avatar-size: 20px;
1689
1689
  --sd-comment-avatar-font-size: 8px;
1690
1690
  margin-left: -4px;
1691
1691
  border: 2px solid var(--sd-ui-comments-card-active-bg, #ffffff);
1692
1692
  }
1693
- .collapsed-avatars .mini-avatar[data-v-bc46ac97]:first-child {
1693
+ .collapsed-avatars .mini-avatar[data-v-eefd4750]:first-child {
1694
1694
  margin-left: 0;
1695
1695
  }
1696
1696
 
1697
1697
  /* ── New comment input ── */
1698
- .new-comment-input-wrapper[data-v-bc46ac97] {
1698
+ .new-comment-input-wrapper[data-v-eefd4750] {
1699
1699
  border: 1.5px solid var(--sd-ui-comments-input-border, #dbdbdb);
1700
1700
  border-radius: 12px;
1701
1701
  padding: 8.5px 10.5px;
@@ -1704,17 +1704,17 @@ img[data-v-c95b2073] {
1704
1704
  max-height: 150px;
1705
1705
  overflow: visible;
1706
1706
  }
1707
- .new-comment-input-wrapper[data-v-bc46ac97]:focus-within {
1707
+ .new-comment-input-wrapper[data-v-eefd4750]:focus-within {
1708
1708
  border-color: var(--sd-ui-comments-input-focus-border, #4f7cff);
1709
1709
  box-shadow: 0 0 0 2px rgba(79, 124, 255, 0.16);
1710
1710
  }
1711
- .new-comment-input-wrapper[data-v-bc46ac97] .comment-entry {
1711
+ .new-comment-input-wrapper[data-v-eefd4750] .comment-entry {
1712
1712
  border-radius: 0;
1713
1713
  }
1714
- .new-comment-input-wrapper[data-v-bc46ac97] .input-section {
1714
+ .new-comment-input-wrapper[data-v-eefd4750] .input-section {
1715
1715
  margin: 0;
1716
1716
  }
1717
- .new-comment-input-wrapper[data-v-bc46ac97] .superdoc-field {
1717
+ .new-comment-input-wrapper[data-v-eefd4750] .superdoc-field {
1718
1718
  font-size: 14px;
1719
1719
  line-height: 20px;
1720
1720
  border: none;
@@ -1725,18 +1725,18 @@ img[data-v-c95b2073] {
1725
1725
  max-height: 132px;
1726
1726
  resize: none;
1727
1727
  }
1728
- .new-comment-input-wrapper[data-v-bc46ac97] .superdoc-field:focus,
1729
- .new-comment-input-wrapper[data-v-bc46ac97] .superdoc-field:active {
1728
+ .new-comment-input-wrapper[data-v-eefd4750] .superdoc-field:focus,
1729
+ .new-comment-input-wrapper[data-v-eefd4750] .superdoc-field:active {
1730
1730
  border: none;
1731
1731
  box-shadow: none;
1732
1732
  outline: none;
1733
1733
  }
1734
- .new-comment-input-wrapper[data-v-bc46ac97] .sd-editor-placeholder::before {
1734
+ .new-comment-input-wrapper[data-v-eefd4750] .sd-editor-placeholder::before {
1735
1735
  content: 'Comment or add others with @';
1736
1736
  }
1737
1737
 
1738
1738
  /* ── Reply pill & expanded input ── */
1739
- .reply-pill[data-v-bc46ac97] {
1739
+ .reply-pill[data-v-eefd4750] {
1740
1740
  width: 100%;
1741
1741
  padding: 8.5px 10.5px;
1742
1742
  border: 1.5px solid transparent;
@@ -1750,16 +1750,16 @@ img[data-v-c95b2073] {
1750
1750
  cursor: text;
1751
1751
  transition: background 150ms ease;
1752
1752
  }
1753
- .reply-pill[data-v-bc46ac97]:hover {
1753
+ .reply-pill[data-v-eefd4750]:hover {
1754
1754
  background: var(--sd-color-gray-200, #f2f2f2);
1755
1755
  }
1756
- .reply-pill[data-v-bc46ac97]:disabled {
1756
+ .reply-pill[data-v-eefd4750]:disabled {
1757
1757
  cursor: not-allowed;
1758
1758
  }
1759
- .reply-expanded[data-v-bc46ac97] {
1759
+ .reply-expanded[data-v-eefd4750] {
1760
1760
  margin-top: 10px;
1761
1761
  }
1762
- .reply-input-wrapper[data-v-bc46ac97] {
1762
+ .reply-input-wrapper[data-v-eefd4750] {
1763
1763
  border: 1.5px solid var(--sd-ui-comments-input-border, #dbdbdb);
1764
1764
  border-radius: 12px;
1765
1765
  padding: 8.5px 10.5px;
@@ -1767,17 +1767,17 @@ img[data-v-c95b2073] {
1767
1767
  max-height: 150px;
1768
1768
  overflow: visible;
1769
1769
  }
1770
- .reply-input-wrapper[data-v-bc46ac97]:focus-within {
1770
+ .reply-input-wrapper[data-v-eefd4750]:focus-within {
1771
1771
  border-color: var(--sd-ui-comments-input-focus-border, #4f7cff);
1772
1772
  box-shadow: 0 0 0 2px rgba(79, 124, 255, 0.16);
1773
1773
  }
1774
- .reply-input-wrapper[data-v-bc46ac97] .comment-entry {
1774
+ .reply-input-wrapper[data-v-eefd4750] .comment-entry {
1775
1775
  border-radius: 0;
1776
1776
  }
1777
- .reply-input-wrapper[data-v-bc46ac97] .input-section {
1777
+ .reply-input-wrapper[data-v-eefd4750] .input-section {
1778
1778
  margin: 0;
1779
1779
  }
1780
- .reply-input-wrapper[data-v-bc46ac97] .superdoc-field {
1780
+ .reply-input-wrapper[data-v-eefd4750] .superdoc-field {
1781
1781
  font-size: 14px;
1782
1782
  line-height: 20px;
1783
1783
  border: none;
@@ -1788,23 +1788,23 @@ img[data-v-c95b2073] {
1788
1788
  max-height: 132px;
1789
1789
  resize: none;
1790
1790
  }
1791
- .reply-input-wrapper[data-v-bc46ac97] .superdoc-field:focus,
1792
- .reply-input-wrapper[data-v-bc46ac97] .superdoc-field:active {
1791
+ .reply-input-wrapper[data-v-eefd4750] .superdoc-field:focus,
1792
+ .reply-input-wrapper[data-v-eefd4750] .superdoc-field:active {
1793
1793
  border: none;
1794
1794
  box-shadow: none;
1795
1795
  outline: none;
1796
1796
  }
1797
- .reply-input-wrapper[data-v-bc46ac97] .sd-editor-placeholder::before {
1797
+ .reply-input-wrapper[data-v-eefd4750] .sd-editor-placeholder::before {
1798
1798
  content: 'Reply or add others with @';
1799
1799
  }
1800
- .reply-actions[data-v-bc46ac97] {
1800
+ .reply-actions[data-v-eefd4750] {
1801
1801
  display: flex;
1802
1802
  justify-content: flex-end;
1803
1803
  align-items: center;
1804
1804
  gap: 16px;
1805
1805
  margin-top: 8px;
1806
1806
  }
1807
- .reply-btn-cancel[data-v-bc46ac97] {
1807
+ .reply-btn-cancel[data-v-eefd4750] {
1808
1808
  background: none;
1809
1809
  border: none;
1810
1810
  font-size: 13px;
@@ -1815,10 +1815,10 @@ img[data-v-c95b2073] {
1815
1815
  font-family: inherit;
1816
1816
  transition: color 150ms;
1817
1817
  }
1818
- .reply-btn-cancel[data-v-bc46ac97]:hover {
1818
+ .reply-btn-cancel[data-v-eefd4750]:hover {
1819
1819
  color: var(--sd-ui-text, #212121);
1820
1820
  }
1821
- .reply-btn-primary[data-v-bc46ac97] {
1821
+ .reply-btn-primary[data-v-eefd4750] {
1822
1822
  background: var(--sd-ui-action, #1355ff);
1823
1823
  border: none;
1824
1824
  font-size: 13px;
@@ -1830,19 +1830,19 @@ img[data-v-c95b2073] {
1830
1830
  font-family: inherit;
1831
1831
  transition: background 150ms;
1832
1832
  }
1833
- .reply-btn-primary[data-v-bc46ac97]:hover {
1833
+ .reply-btn-primary[data-v-eefd4750]:hover {
1834
1834
  background: var(--sd-ui-action-hover, #0f44cc);
1835
1835
  }
1836
- .reply-btn-primary.sd-is-disabled[data-v-bc46ac97] {
1836
+ .reply-btn-primary.sd-is-disabled[data-v-eefd4750] {
1837
1837
  background: var(--sd-color-gray-400, #dbdbdb);
1838
1838
  color: var(--sd-color-gray-600, #888888);
1839
1839
  cursor: default;
1840
1840
  pointer-events: none;
1841
1841
  }
1842
- .existing-internal-input[data-v-bc46ac97] {
1842
+ .existing-internal-input[data-v-eefd4750] {
1843
1843
  margin-bottom: 10px;
1844
1844
  }
1845
- .sd-internal-dropdown[data-v-bc46ac97] {
1845
+ .sd-internal-dropdown[data-v-eefd4750] {
1846
1846
  display: inline-block;
1847
1847
  }
1848
1848
 
@@ -2854,7 +2854,7 @@ img[data-v-c95b2073] {
2854
2854
  flex-wrap: wrap;
2855
2855
  }
2856
2856
 
2857
- .sd-font-combobox[data-v-53e0af20] {
2857
+ .sd-font-combobox[data-v-e288ef9f] {
2858
2858
  display: inline-flex;
2859
2859
  align-items: center;
2860
2860
  height: var(--sd-ui-toolbar-height, 32px);
@@ -2867,22 +2867,22 @@ img[data-v-c95b2073] {
2867
2867
  transition: background-color 0.2s ease-out;
2868
2868
  position: relative;
2869
2869
  }
2870
- .sd-font-combobox[data-v-53e0af20]:focus-within {
2870
+ .sd-font-combobox[data-v-e288ef9f]:focus-within {
2871
2871
  background-color: var(--sd-ui-toolbar-button-active-bg, var(--sd-ui-active-bg, #c8d0d8));
2872
2872
  }
2873
- .sd-font-combobox.high-contrast[data-v-53e0af20]:focus-within {
2873
+ .sd-font-combobox.high-contrast[data-v-e288ef9f]:focus-within {
2874
2874
  background-color: #000;
2875
2875
  color: #fff;
2876
2876
  }
2877
- .sd-font-combobox.sd-disabled[data-v-53e0af20] {
2877
+ .sd-font-combobox.sd-disabled[data-v-e288ef9f] {
2878
2878
  cursor: default;
2879
2879
  opacity: 0.35;
2880
2880
  }
2881
- .sd-font-combobox__field[data-v-53e0af20] {
2881
+ .sd-font-combobox__field[data-v-e288ef9f] {
2882
2882
  flex: 1 1 auto;
2883
2883
  min-width: 0;
2884
2884
  }
2885
- .sd-font-combobox__input[data-v-53e0af20] {
2885
+ .sd-font-combobox__input[data-v-e288ef9f] {
2886
2886
  width: 100%;
2887
2887
  min-width: 0;
2888
2888
  height: 100%;
@@ -2896,7 +2896,7 @@ img[data-v-c95b2073] {
2896
2896
  text-overflow: ellipsis;
2897
2897
  box-sizing: border-box;
2898
2898
  }
2899
- .sd-font-combobox__legacy-label[data-v-53e0af20] {
2899
+ .sd-font-combobox__legacy-label[data-v-e288ef9f] {
2900
2900
  position: absolute;
2901
2901
  width: 1px;
2902
2902
  height: 1px;
@@ -2904,7 +2904,7 @@ img[data-v-c95b2073] {
2904
2904
  clip: rect(0 0 0 0);
2905
2905
  white-space: nowrap;
2906
2906
  }
2907
- .sd-font-combobox__caret[data-v-53e0af20] {
2907
+ .sd-font-combobox__caret[data-v-e288ef9f] {
2908
2908
  flex-shrink: 0;
2909
2909
  margin: 0;
2910
2910
  border: none;
@@ -2913,17 +2913,17 @@ img[data-v-c95b2073] {
2913
2913
  cursor: pointer;
2914
2914
  color: inherit;
2915
2915
  }
2916
- .sd-font-combobox.sd-disabled .sd-font-combobox__caret[data-v-53e0af20] {
2916
+ .sd-font-combobox.sd-disabled .sd-font-combobox__caret[data-v-e288ef9f] {
2917
2917
  cursor: default;
2918
2918
  }
2919
- .sd-dropdown-caret[data-v-53e0af20] {
2919
+ .sd-dropdown-caret[data-v-e288ef9f] {
2920
2920
  display: inline-flex;
2921
2921
  align-items: center;
2922
2922
  justify-content: center;
2923
2923
  width: 10px;
2924
2924
  height: 10px;
2925
2925
  }
2926
- .sd-font-combobox__listbox[data-v-53e0af20] {
2926
+ .sd-font-combobox__listbox[data-v-e288ef9f] {
2927
2927
  min-width: 80px;
2928
2928
  padding: 4px;
2929
2929
  border-radius: var(--sd-ui-radius, 6px);
@@ -2934,7 +2934,7 @@ img[data-v-c95b2073] {
2934
2934
  overflow-y: auto;
2935
2935
  overscroll-behavior: contain;
2936
2936
  }
2937
- .sd-font-combobox__option[data-v-53e0af20] {
2937
+ .sd-font-combobox__option[data-v-e288ef9f] {
2938
2938
  min-height: 34px;
2939
2939
  display: flex;
2940
2940
  align-items: center;
@@ -2946,18 +2946,18 @@ img[data-v-c95b2073] {
2946
2946
  transition: background-color 0.2s ease-out;
2947
2947
  box-sizing: border-box;
2948
2948
  }
2949
- .sd-font-combobox__option.sd-active[data-v-53e0af20],
2950
- .sd-font-combobox__option[data-v-53e0af20]:hover {
2949
+ .sd-font-combobox__option.sd-active[data-v-e288ef9f],
2950
+ .sd-font-combobox__option[data-v-e288ef9f]:hover {
2951
2951
  background: var(--sd-ui-dropdown-hover-bg, #d8dee5);
2952
2952
  color: var(--sd-ui-dropdown-hover-text, #47484a);
2953
2953
  }
2954
- .sd-font-combobox__option.sd-selected[data-v-53e0af20] {
2954
+ .sd-font-combobox__option.sd-selected[data-v-e288ef9f] {
2955
2955
  background: var(--sd-ui-dropdown-active-bg, #d8dee5);
2956
2956
  color: var(--sd-ui-dropdown-selected-text, #47484a);
2957
2957
  }
2958
- .sd-font-combobox__listbox.high-contrast .sd-font-combobox__option.sd-active[data-v-53e0af20],
2959
- .sd-font-combobox__listbox.high-contrast .sd-font-combobox__option[data-v-53e0af20]:hover,
2960
- .sd-font-combobox__listbox.high-contrast .sd-font-combobox__option.sd-selected[data-v-53e0af20] {
2958
+ .sd-font-combobox__listbox.high-contrast .sd-font-combobox__option.sd-active[data-v-e288ef9f],
2959
+ .sd-font-combobox__listbox.high-contrast .sd-font-combobox__option[data-v-e288ef9f]:hover,
2960
+ .sd-font-combobox__listbox.high-contrast .sd-font-combobox__option.sd-selected[data-v-e288ef9f] {
2961
2961
  background: #000;
2962
2962
  color: #fff;
2963
2963
  }
@@ -163,7 +163,7 @@ export interface FontSizeOption {
163
163
  }
164
164
  /** Observable enable/active state for a toolbar-style command. */
165
165
  export interface CommandState {
166
- /** The command can run against the current selection / mode. */
166
+ /** Availability for a control in the current selection / mode snapshot. */
167
167
  enabled: boolean;
168
168
  /** Compatibility inverse of `enabled` for demo code that models commands as disabled. */
169
169
  disabled?: boolean;
@@ -278,9 +278,10 @@ export type SuperDocUIReceipt = Receipt | SuperDocUIFailureReceipt | PartialLink
278
278
  * preserves the public Document API facade result (or a controller-minted
279
279
  * failure), including read-only / unsupported failures and mutation effects.
280
280
  * `true` is returned for legacy command handlers that do not produce a
281
- * structured result, or when the host reports only that an async browser
282
- * operation was scheduled. Use `executeAsync(...)` to await the settled result
283
- * when the browser Document API / host runs asynchronously.
281
+ * structured result, including accepted no-ops, or when the host reports only
282
+ * that an async browser operation was scheduled. Use `executeAsync(...)` to await the settled result
283
+ * when the browser Document API / host runs asynchronously. A settled `true`
284
+ * does not guarantee a document mutation, such as Undo with an empty history.
284
285
  */
285
286
  export type CommandExecutionResult = boolean | SuperDocUIReceipt;
286
287
  /**
@@ -333,16 +334,18 @@ export interface CommandHandle<Id extends CommandId = CommandId> {
333
334
  observe(listener: (state: CommandState) => void): () => void;
334
335
  /**
335
336
  * Run the command. Returns the Document API receipt when the host facade
336
- * provides one, or `false` for unsupported / disabled commands rather than
337
- * throwing. When the browser operation settles asynchronously this returns
338
- * the immediate routed result (`true` or a sync receipt); use
337
+ * provides one, or `false` when routing or current execution prerequisites
338
+ * are unavailable rather than throwing. When the browser operation settles
339
+ * asynchronously this returns the immediate routed result (`true` or a sync receipt); use
339
340
  * `executeAsync(...)` to await settlement.
340
341
  */
341
342
  execute(payload?: unknown): CommandExecutionResult;
342
343
  /**
343
344
  * Run the command and resolve once the routed operation has settled. On
344
345
  * browser-backed hosts this includes the post-mutation paint observation
345
- * boundary when available.
346
+ * boundary when available. Selection-dependent commands may refresh stale
347
+ * selection state before execution. A settled `true` can be an accepted
348
+ * no-op and does not guarantee a document mutation.
346
349
  */
347
350
  executeAsync(payload?: unknown): Promise<CommandExecutionResult>;
348
351
  }