ooxml-ui 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/README.md +40 -36
  2. package/custom-elements.json +211 -4
  3. package/dist/chrome/ruler.d.ts +60 -2
  4. package/dist/chrome/ruler.d.ts.map +1 -1
  5. package/dist/chrome/status-bar.d.ts +3 -1
  6. package/dist/chrome/status-bar.d.ts.map +1 -1
  7. package/dist/{chunk-T3HB5LMH.js → chunk-7FNDOWTX.js} +393 -15
  8. package/dist/{chunk-FLHM5Q4O.js → chunk-AYXFLBSV.js} +92 -13
  9. package/dist/{chunk-X7RINDJQ.js → chunk-JAJFLFAV.js} +1 -1
  10. package/dist/{chunk-OXKWNNNJ.js → chunk-VUB44CAJ.js} +1 -1
  11. package/dist/{chunk-JFJXBYRD.js → chunk-XNCWB2X6.js} +5 -0
  12. package/dist/{chunk-XDUYS4KK.js → chunk-Y2E22JVO.js} +1 -1
  13. package/dist/{chunk-ZV2Z4IWH.js → chunk-YK2DPYMU.js} +5 -2
  14. package/dist/{chunk-4QQASR5A.js → chunk-YP5S7DTT.js} +6 -5
  15. package/dist/comments/comments-pane.d.ts +116 -0
  16. package/dist/comments/comments-pane.d.ts.map +1 -0
  17. package/dist/comments/types.d.ts +80 -0
  18. package/dist/comments/types.d.ts.map +1 -0
  19. package/dist/controls.d.ts +4 -2
  20. package/dist/controls.d.ts.map +1 -1
  21. package/dist/controls.js +4 -4
  22. package/dist/docx/comments-panel.d.ts +8 -1
  23. package/dist/docx/image-media.d.ts +1 -1
  24. package/dist/docx/locales/en-ribbon.d.ts +1 -0
  25. package/dist/docx/locales/en.d.ts +1 -0
  26. package/dist/docx/localization-strings.d.ts +2 -1
  27. package/dist/docx/localization.d.ts +7 -1
  28. package/dist/docx/print-layout.d.ts +2 -2
  29. package/dist/docx/print-picture.d.ts +12 -0
  30. package/dist/docx/review-controller.d.ts +2 -0
  31. package/dist/docx/ruler.d.ts +7 -10
  32. package/dist/docx.js +289 -339
  33. package/dist/form/gradient-preset-gallery.d.ts +2 -2
  34. package/dist/index.d.ts +1 -1
  35. package/dist/index.js +8 -8
  36. package/dist/pptx/{chart-3d-view-scene-2KRQ5667.mjs → chart-3d-view-scene-6B5TOWB6.mjs} +3 -3
  37. package/dist/pptx/{chart-3d-view-scene-36DMZWZ3.cjs → chart-3d-view-scene-MJ6YNT56.cjs} +37 -37
  38. package/dist/pptx/{chunk-YOGDIDPB.mjs → chunk-AWKKC3VW.mjs} +8 -2
  39. package/dist/pptx/{chunk-XQZWZMGZ.cjs → chunk-SM3CWDIQ.cjs} +7 -17
  40. package/dist/pptx/{chunk-CJU4P5FT.cjs → chunk-STKGUT5S.cjs} +18 -12
  41. package/dist/pptx/{chunk-JSBGBVBH.mjs → chunk-VRFNAF3Q.mjs} +7 -17
  42. package/dist/pptx/{chunk-YHA6XAB3.cjs → chunk-XIQMFSNG.cjs} +1 -1
  43. package/dist/pptx/{chunk-YARCML7O.mjs → chunk-XQVKQD5Z.mjs} +294 -265
  44. package/dist/pptx/{chunk-XWE5GSE7.mjs → chunk-YI5LH5NN.mjs} +533 -428
  45. package/dist/pptx/{chunk-ADOC5JLI.mjs → chunk-YMTQLZ2I.mjs} +1 -1
  46. package/dist/pptx/{chunk-AIL3BNZS.cjs → chunk-YRHK45AB.cjs} +301 -265
  47. package/dist/pptx/{chunk-FEFQTZDM.cjs → chunk-ZK344LOB.cjs} +689 -574
  48. package/dist/pptx/dom/elements/chart.d.ts +2 -3
  49. package/dist/pptx/dom/elements/chart.d.ts.map +1 -1
  50. package/dist/pptx/dom/elements/table.d.ts.map +1 -1
  51. package/dist/pptx/dom/index.cjs +257 -246
  52. package/dist/pptx/dom/index.mjs +28 -17
  53. package/dist/pptx/export/html2canvas-clone.cjs +2 -2
  54. package/dist/pptx/export/html2canvas-clone.mjs +1 -1
  55. package/dist/pptx/i18n/index.cjs +6 -6
  56. package/dist/pptx/i18n/index.mjs +1 -1
  57. package/dist/pptx/i18n/translator.d.ts.map +1 -1
  58. package/dist/pptx/index.cjs +3035 -2991
  59. package/dist/pptx/index.mjs +5 -5
  60. package/dist/pptx/render/chart-axis-range.d.ts +7 -0
  61. package/dist/pptx/render/chart-axis-range.d.ts.map +1 -1
  62. package/dist/pptx/render/chart-axis-render.d.ts +3 -1
  63. package/dist/pptx/render/chart-axis-render.d.ts.map +1 -1
  64. package/dist/pptx/render/chart-axis-style.d.ts +5 -0
  65. package/dist/pptx/render/chart-axis-style.d.ts.map +1 -1
  66. package/dist/pptx/render/chart-axis.d.ts +1 -1
  67. package/dist/pptx/render/chart-axis.d.ts.map +1 -1
  68. package/dist/pptx/render/chart-cartesian-axes.d.ts.map +1 -1
  69. package/dist/pptx/render/chart-cartesian-bars.d.ts +3 -3
  70. package/dist/pptx/render/chart-cartesian-bars.d.ts.map +1 -1
  71. package/dist/pptx/render/chart-cartesian-percent-stacked.d.ts.map +1 -1
  72. package/dist/pptx/render/chart-cartesian.d.ts.map +1 -1
  73. package/dist/pptx/render/chart-combo-stock.cjs +3 -3
  74. package/dist/pptx/render/chart-combo-stock.mjs +1 -1
  75. package/dist/pptx/render/chart-combo.d.ts.map +1 -1
  76. package/dist/pptx/render/chart-gridlines-toggle.d.ts +13 -1
  77. package/dist/pptx/render/chart-gridlines-toggle.d.ts.map +1 -1
  78. package/dist/pptx/render/chart-helpers.d.ts +13 -13
  79. package/dist/pptx/render/chart-helpers.d.ts.map +1 -1
  80. package/dist/pptx/render/chart-horizontal-bars-helpers.d.ts +7 -3
  81. package/dist/pptx/render/chart-horizontal-bars-helpers.d.ts.map +1 -1
  82. package/dist/pptx/render/chart-horizontal-bars.d.ts.map +1 -1
  83. package/dist/pptx/render/chart-interaction-stacked.d.ts.map +1 -1
  84. package/dist/pptx/render/chart-overlays.cjs +7 -7
  85. package/dist/pptx/render/chart-overlays.mjs +1 -1
  86. package/dist/pptx/render/chart-palette.d.ts +5 -14
  87. package/dist/pptx/render/chart-palette.d.ts.map +1 -1
  88. package/dist/pptx/render/chart-quick-action-styles.d.ts +5 -3
  89. package/dist/pptx/render/chart-quick-action-styles.d.ts.map +1 -1
  90. package/dist/pptx/render/chart-scatter-x-axis.d.ts.map +1 -1
  91. package/dist/pptx/render/chart-style-palette.d.ts +52 -0
  92. package/dist/pptx/render/chart-style-palette.d.ts.map +1 -0
  93. package/dist/pptx/render/chart-surface-treemap.cjs +4 -4
  94. package/dist/pptx/render/chart-surface-treemap.mjs +1 -1
  95. package/dist/pptx/render/chart-view-model-bars.d.ts +31 -1
  96. package/dist/pptx/render/chart-view-model-bars.d.ts.map +1 -1
  97. package/dist/pptx/render/chart-view-model-build.d.ts.map +1 -1
  98. package/dist/pptx/render/chart-view-model.cjs +53 -41
  99. package/dist/pptx/render/chart-view-model.mjs +1 -1
  100. package/dist/pptx/render/chart-waterfall-map.cjs +6 -6
  101. package/dist/pptx/render/chart-waterfall-map.mjs +1 -1
  102. package/dist/pptx/render/connector-elbow-geometry.d.ts +7 -43
  103. package/dist/pptx/render/connector-elbow-geometry.d.ts.map +1 -1
  104. package/dist/pptx/render/foreign-object-svg-document.d.ts +12 -0
  105. package/dist/pptx/render/foreign-object-svg-document.d.ts.map +1 -1
  106. package/dist/pptx/render/index.d.ts +2 -0
  107. package/dist/pptx/render/index.d.ts.map +1 -1
  108. package/dist/pptx/render/table-cell-css.d.ts +3 -2
  109. package/dist/pptx/render/table-cell-css.d.ts.map +1 -1
  110. package/dist/pptx/render/table-cell-edit.d.ts +1 -1
  111. package/dist/pptx/render/table-cell-edit.d.ts.map +1 -1
  112. package/dist/pptx/render/table-cell-paragraphs.d.ts +29 -0
  113. package/dist/pptx/render/table-cell-paragraphs.d.ts.map +1 -0
  114. package/dist/pptx/render/table-style.d.ts +2 -0
  115. package/dist/pptx/render/table-style.d.ts.map +1 -1
  116. package/dist/pptx/render/title-bar.d.ts +5 -0
  117. package/dist/pptx/render/title-bar.d.ts.map +1 -1
  118. package/dist/pptx/render/viewer-root-options.d.ts +54 -0
  119. package/dist/pptx/render/viewer-root-options.d.ts.map +1 -0
  120. package/dist/pptx/web-components/office-token-bridge.d.ts.map +1 -1
  121. package/dist/pptx/web-components/registration-contract.d.ts.map +1 -1
  122. package/dist/presence.js +3 -3
  123. package/dist/registry.d.ts +2 -0
  124. package/dist/registry.d.ts.map +1 -1
  125. package/dist/ribbon/ribbon-tabs.d.ts +2 -1
  126. package/dist/ribbon/ribbon-tabs.d.ts.map +1 -1
  127. package/dist/smartart/smartart-svg.d.ts +3 -2
  128. package/dist/smartart.js +3 -3
  129. package/dist/suite/attachment-store.d.ts +13 -0
  130. package/dist/suite/document-store.d.ts +31 -0
  131. package/dist/suite/index.d.ts +2 -0
  132. package/dist/suite.js +132 -1
  133. package/dist/teams/app/channel-tab.d.ts +5 -0
  134. package/dist/teams/chat-composer.d.ts +3 -0
  135. package/dist/teams.js +6 -6
  136. package/dist/theme.js +2 -2
  137. package/dist/tokens.d.ts +5 -0
  138. package/dist/tokens.d.ts.map +1 -1
  139. package/dist/visio/styles/index.d.ts +2 -0
  140. package/dist/visio/styles/theme.d.ts +11 -0
  141. package/dist/visio/styles.d.ts +2 -2
  142. package/dist/visio.js +76 -25
  143. package/dist/xlsx/backstage/index.d.ts +4 -1
  144. package/dist/xlsx/backstage/pages-share.d.ts +19 -0
  145. package/dist/xlsx/backstage/parts.d.ts +3 -0
  146. package/dist/xlsx/chart-fill-binding.d.ts +2 -2
  147. package/dist/xlsx/chart-series-gradient-type.d.ts +3 -2
  148. package/dist/xlsx/collaboration-session.d.ts +9 -0
  149. package/dist/xlsx/collaboration-types.d.ts +41 -0
  150. package/dist/xlsx/collaboration.d.ts +56 -0
  151. package/dist/xlsx/component.d.ts +8 -0
  152. package/dist/xlsx/dialogs/comments-list.d.ts +4 -0
  153. package/dist/xlsx/dialogs/help-dialogs.d.ts +1 -1
  154. package/dist/xlsx/editor-core.d.ts +3 -0
  155. package/dist/xlsx/element-api.d.ts +19 -1
  156. package/dist/xlsx/events.d.ts +4 -1
  157. package/dist/xlsx/grid/remote-layer.d.ts +3 -0
  158. package/dist/xlsx/grid/sparkline.d.ts +3 -0
  159. package/dist/xlsx/grid/styles.d.ts +1 -1
  160. package/dist/xlsx/index.d.ts +1 -0
  161. package/dist/xlsx/ribbon-actions.d.ts +21 -0
  162. package/dist/xlsx/shell-commands.d.ts +1 -1
  163. package/dist/xlsx/title-bar.d.ts +4 -2
  164. package/dist/xlsx.js +712 -90
  165. package/package.json +3 -3
  166. package/dist/pptx/web-components/status-bar-styles.d.ts +0 -3
  167. package/dist/pptx/web-components/status-bar-styles.d.ts.map +0 -1
  168. package/dist/pptx/web-components/title-bar-styles.d.ts +0 -7
  169. package/dist/pptx/web-components/title-bar-styles.d.ts.map +0 -1
package/dist/suite.js CHANGED
@@ -87,4 +87,135 @@ function closeSuiteTabsToRight(state, id) {
87
87
  return without(state, (t, i) => i <= at || t.pinned, id);
88
88
  }
89
89
 
90
- export { EMPTY_SUITE_STATE, activateSuiteTab, closeOtherSuiteTabs, closeSuiteTab, closeSuiteTabsToRight, moveSuiteTab, newSuiteTabId, openSuiteTab, parseSuiteState, pinSuiteTab, pinnedFirst, setSuiteTabFramework, suiteTabTitles };
90
+ // src/suite/document-store.ts
91
+ function suiteFileKind(name) {
92
+ const ext = name.split(".").pop()?.toLowerCase();
93
+ if (ext === "docx" || ext === "xlsx" || ext === "pptx" || ext === "vsdx") return ext;
94
+ throw new Error("Choose a .docx, .xlsx, .pptx or .vsdx file");
95
+ }
96
+ var SuiteDocumentStore = class {
97
+ db;
98
+ constructor(name = "ooxml-suite-documents") {
99
+ this.db = new Promise((resolve, reject) => {
100
+ const request = indexedDB.open(name, 1);
101
+ request.onupgradeneeded = () => request.result.createObjectStore("documents", { keyPath: "id" });
102
+ request.onsuccess = () => resolve(request.result);
103
+ request.onerror = () => reject(request.error);
104
+ });
105
+ }
106
+ async list() {
107
+ const db = await this.db;
108
+ return new Promise((resolve, reject) => {
109
+ const request = db.transaction("documents").objectStore("documents").getAll();
110
+ request.onsuccess = () => resolve(request.result);
111
+ request.onerror = () => reject(request.error);
112
+ });
113
+ }
114
+ async get(id) {
115
+ const db = await this.db;
116
+ return new Promise((resolve, reject) => {
117
+ const request = db.transaction("documents").objectStore("documents").get(id);
118
+ request.onsuccess = () => request.result ? resolve(request.result) : reject(new Error("Document not found"));
119
+ request.onerror = () => reject(request.error);
120
+ });
121
+ }
122
+ async create(name, bytes, extra = {}) {
123
+ const doc = {
124
+ id: crypto.randomUUID(),
125
+ name,
126
+ kind: suiteFileKind(name),
127
+ bytes,
128
+ revision: 1,
129
+ modified: Date.now(),
130
+ ...extra
131
+ };
132
+ await this.commit([{ document: doc, expected: 0 }]);
133
+ return doc;
134
+ }
135
+ /** Remove one library copy and cached embedded children atomically. Returns snapshots for Undo. */
136
+ async remove(id, expected) {
137
+ const db = await this.db;
138
+ return new Promise((resolve, reject) => {
139
+ const tx = db.transaction("documents", "readwrite");
140
+ const records = tx.objectStore("documents");
141
+ let removed = [], failure;
142
+ tx.oncomplete = () => resolve(removed);
143
+ tx.onabort = () => reject(failure ?? tx.error ?? new Error("Removal failed"));
144
+ const request = records.getAll();
145
+ request.onsuccess = () => {
146
+ const all = request.result;
147
+ if (all.find((d) => d.id === id)?.revision !== expected) {
148
+ failure = new Error("This file changed in another session. Refresh before removing it.");
149
+ tx.abort();
150
+ return;
151
+ }
152
+ const ids = /* @__PURE__ */ new Set([id]);
153
+ let count = 0;
154
+ while (count !== ids.size) {
155
+ count = ids.size;
156
+ for (const doc of all) if (doc.parent && ids.has(doc.parent.id)) ids.add(doc.id);
157
+ }
158
+ removed = all.filter((doc) => ids.has(doc.id));
159
+ for (const doc of removed) records.delete(doc.id);
160
+ };
161
+ });
162
+ }
163
+ /** All replacements succeed together, including child and parent when saving an embedding. */
164
+ async commit(changes) {
165
+ const db = await this.db;
166
+ return new Promise((resolve, reject) => {
167
+ const tx = db.transaction("documents", "readwrite");
168
+ const records = tx.objectStore("documents");
169
+ let failure;
170
+ tx.oncomplete = () => resolve();
171
+ tx.onabort = () => reject(failure ?? tx.error ?? new Error("Save failed"));
172
+ for (const { document, expected } of changes) {
173
+ const request = records.get(document.id);
174
+ request.onsuccess = () => {
175
+ if ((request.result?.revision ?? 0) !== expected) {
176
+ failure = new Error(
177
+ `${document.name} changed in another session. Reopen it before saving.`
178
+ );
179
+ tx.abort();
180
+ return;
181
+ }
182
+ records.put(document);
183
+ };
184
+ }
185
+ });
186
+ }
187
+ };
188
+
189
+ // src/suite/attachment-store.ts
190
+ var SuiteAttachmentStore = class {
191
+ db;
192
+ constructor(name = "ooxml-suite-attachments") {
193
+ this.db = new Promise((resolve, reject) => {
194
+ const request = indexedDB.open(name, 1);
195
+ request.onupgradeneeded = () => request.result.createObjectStore("files", { keyPath: "id" });
196
+ request.onsuccess = () => resolve(request.result);
197
+ request.onerror = () => reject(request.error);
198
+ });
199
+ }
200
+ async create(name, mime, bytes) {
201
+ const file = { id: crypto.randomUUID(), name, mime, bytes };
202
+ const db = await this.db;
203
+ await new Promise((resolve, reject) => {
204
+ const tx = db.transaction("files", "readwrite");
205
+ tx.objectStore("files").put(file);
206
+ tx.oncomplete = () => resolve();
207
+ tx.onabort = () => reject(tx.error ?? new Error("The attachment could not be stored."));
208
+ });
209
+ return file;
210
+ }
211
+ async get(id) {
212
+ const db = await this.db;
213
+ return new Promise((resolve, reject) => {
214
+ const request = db.transaction("files").objectStore("files").get(id);
215
+ request.onsuccess = () => request.result ? resolve(request.result) : reject(new Error("This attachment is not available in the current local profile."));
216
+ request.onerror = () => reject(request.error);
217
+ });
218
+ }
219
+ };
220
+
221
+ export { EMPTY_SUITE_STATE, SuiteAttachmentStore, SuiteDocumentStore, activateSuiteTab, closeOtherSuiteTabs, closeSuiteTab, closeSuiteTabsToRight, moveSuiteTab, newSuiteTabId, openSuiteTab, parseSuiteState, pinSuiteTab, pinnedFirst, setSuiteTabFramework, suiteFileKind, suiteTabTitles };
@@ -24,6 +24,9 @@ export declare class TeamsChannelTab extends LitElement {
24
24
  error: {
25
25
  state: boolean;
26
26
  };
27
+ hostOpened: {
28
+ state: boolean;
29
+ };
27
30
  };
28
31
  tab: ChannelTab | null;
29
32
  client: TeamsClient | null;
@@ -31,6 +34,7 @@ export declare class TeamsChannelTab extends LitElement {
31
34
  canSave: boolean;
32
35
  detail: OpenFileDetail | null;
33
36
  error: string;
37
+ hostOpened: boolean;
34
38
  private key;
35
39
  private owner;
36
40
  private generation;
@@ -40,6 +44,7 @@ export declare class TeamsChannelTab extends LitElement {
40
44
  connectedCallback(): void;
41
45
  private resolve;
42
46
  private saveCopy;
47
+ private openInHost;
43
48
  protected render(): import("lit").TemplateResult<1>;
44
49
  }
45
50
  export declare function defineTeamsChannelTab(): void;
@@ -54,12 +54,15 @@ export declare class OfficeUiChatComposer extends TeamsElement {
54
54
  emojiOpen: boolean;
55
55
  private lastTyping;
56
56
  constructor();
57
+ private focusMessage;
58
+ private resizeMessage;
57
59
  protected updated(changed: PropertyValues<this>): void;
58
60
  private get canSend();
59
61
  private submit;
60
62
  private onInput;
61
63
  private onKeydown;
62
64
  private pick;
65
+ private addFiles;
63
66
  private saveDraft;
64
67
  private typingLine;
65
68
  protected render(): import("lit").TemplateResult<1>;
package/dist/teams.js CHANGED
@@ -1,8 +1,8 @@
1
- export { EMOJI, OfficeUiAppRail, OfficeUiAvatar, OfficeUiCallControls, OfficeUiCallGrid, OfficeUiChannelList, OfficeUiChatComposer, OfficeUiChatList, OfficeUiPrejoin, QUICK_REACTIONS, TEAMS_TAGS, TeamsApp, TeamsChannelTab, TeamsContentPreview, TeamsController, TeamsElement, TeamsFilesPanel, TeamsSettings, applyTeamsProps, colorFor, createTeams, dayLabel, defineAppRail, defineAvatar, defineCallControls, defineCallGrid, defineChannelList, defineChatComposer, defineChatList, definePrejoin, defineTeamsApp, defineTeamsChannelTab, defineTeamsContentPreview, defineTeamsFilesPanel, defineTeamsSettings, formatElapsed, formatSize, formatTime, icon, listenTeamsEvents, loadConfig, loadIdentity, parseIceLines, registerTeams, safeStorage, saveConfig, saveIdentity, withStyles } from './chunk-FLHM5Q4O.js';
1
+ export { EMOJI, OfficeUiAppRail, OfficeUiAvatar, OfficeUiCallControls, OfficeUiCallGrid, OfficeUiChannelList, OfficeUiChatComposer, OfficeUiChatList, OfficeUiPrejoin, QUICK_REACTIONS, TEAMS_TAGS, TeamsApp, TeamsChannelTab, TeamsContentPreview, TeamsController, TeamsElement, TeamsFilesPanel, TeamsSettings, applyTeamsProps, colorFor, createTeams, dayLabel, defineAppRail, defineAvatar, defineCallControls, defineCallGrid, defineChannelList, defineChatComposer, defineChatList, definePrejoin, defineTeamsApp, defineTeamsChannelTab, defineTeamsContentPreview, defineTeamsFilesPanel, defineTeamsSettings, formatElapsed, formatSize, formatTime, icon, listenTeamsEvents, loadConfig, loadIdentity, parseIceLines, registerTeams, safeStorage, saveConfig, saveIdentity, withStyles } from './chunk-AYXFLBSV.js';
2
2
  export { TeamsPresentationPreview, defineTeamsPresentationPreview } from './chunk-SNV6YKPC.js';
3
- import './chunk-X7RINDJQ.js';
4
- import './chunk-T3HB5LMH.js';
3
+ import './chunk-JAJFLFAV.js';
4
+ import './chunk-7FNDOWTX.js';
5
5
  import './chunk-BOX43CZD.js';
6
- import './chunk-OXKWNNNJ.js';
7
- import './chunk-ZV2Z4IWH.js';
8
- import './chunk-JFJXBYRD.js';
6
+ import './chunk-VUB44CAJ.js';
7
+ import './chunk-YK2DPYMU.js';
8
+ import './chunk-XNCWB2X6.js';
package/dist/theme.js CHANGED
@@ -1,2 +1,2 @@
1
- export { THEME_CSS, THEME_STYLE_ID, installOfficeUiTheme, shadcnBridge, themeBridge } from './chunk-X7RINDJQ.js';
2
- export { COMPACT, FOCUS_RING, OFFICE_TOKENS, TOUCH, tok } from './chunk-JFJXBYRD.js';
1
+ export { THEME_CSS, THEME_STYLE_ID, installOfficeUiTheme, shadcnBridge, themeBridge } from './chunk-JAJFLFAV.js';
2
+ export { COMPACT, FOCUS_RING, OFFICE_TOKENS, TOUCH, tok } from './chunk-XNCWB2X6.js';
package/dist/tokens.d.ts CHANGED
@@ -154,6 +154,7 @@ export declare const OFFICE_TOKENS: {
154
154
  readonly '--office-launcher-height': '14px';
155
155
  readonly '--office-tab-indicator-width': '2.5px';
156
156
  readonly '--office-status-bar-height': '24px';
157
+ readonly '--office-status-bar-separator-opacity': '1';
157
158
  readonly '--office-tab-height': '28px';
158
159
  readonly '--office-tab-max-width': '220px';
159
160
  readonly '--office-zoom-slider-width': '120px';
@@ -202,6 +203,8 @@ export declare const OFFICE_TOKENS: {
202
203
  readonly '--office-avatar-size': '48px';
203
204
  readonly '--office-avatar-color': 'var(--office-muted-foreground, #6b7280)';
204
205
  readonly '--office-toast-width': '360px';
206
+ readonly '--office-comments-pane-width': '300px';
207
+ readonly '--office-comment-avatar-size': '24px';
205
208
  readonly '--office-account-field-width': '320px';
206
209
  readonly '--office-gallery-trigger-height': '24px';
207
210
  readonly '--office-gallery-strip-background': 'color-mix(in srgb, var(--office-surface, #f3f4f6) 30%, transparent)';
@@ -218,6 +221,8 @@ export declare const OFFICE_TOKENS: {
218
221
  readonly '--office-title-bar-mark-size': '20px';
219
222
  readonly '--office-title-bar-mark-background': 'var(--office-accent, #2563eb)';
220
223
  readonly '--office-title-bar-mark-foreground': 'var(--office-accent-foreground, #ffffff)';
224
+ readonly '--office-title-bar-name-foreground': 'var(--office-title-bar-foreground, var(--office-foreground, #1f2937))';
225
+ readonly '--office-title-bar-result-selected': 'var(--office-selected, #e5e7eb)';
221
226
  readonly '--office-title-bar-name-max-width': '240px';
222
227
  readonly '--office-title-bar-name-max-width-narrow': '140px';
223
228
  readonly '--office-title-bar-search-max-width': '448px';
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
+ import { visioThemeAliases } from './theme.js';
1
2
  /**
2
3
  * Viewer stylesheets as text for the shadow root. New styles are CSS files here; the legacy
3
4
  * `styles.ts` string moves into this directory when it is next changed.
4
5
  */
5
6
  export declare const canvasAndRibbonStyles: string;
7
+ export { visioThemeAliases };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * The viewer's colours follow the shared `--office-*` theme (light/dark, the launcher's choice).
3
+ * The `--vv-*` custom properties stay as optional host overrides and appear only in this block.
4
+ * `inch` is not a colour: it is the canvas scale set by `viewer-canvas.ts`.
5
+ */
6
+ export declare const visioThemeAliases = ":host {\n --_vv-bg:var(--vv-background,var(--office-surface,#eceae8));\n --_vv-surface:var(--vv-surface,var(--office-background,#fff));\n --_vv-secondary:var(--vv-secondary,var(--office-surface,#f3f2f1));\n --_vv-ink:var(--vv-ink,var(--office-foreground,#1f1f1f));\n --_vv-muted:var(--vv-muted,var(--office-muted-foreground,#605e5c));\n --_vv-border:var(--vv-border,var(--office-border,#e1dfdd));\n --_vv-accent:var(--vv-accent,var(--office-accent,#3955a3));\n --_vv-accent-soft:var(--vv-accent-soft,color-mix(in srgb,var(--_vv-accent) 10%,transparent));\n --_vv-accent-ink:var(--vv-accent-ink,var(--office-accent-foreground,#fff));\n --_vv-focus:var(--vv-focus,var(--office-ring,var(--_vv-accent)));\n --_vv-danger:var(--vv-danger,var(--office-danger,#b42318));\n --_vv-shadow:var(--vv-shadow,var(--office-shadow,0 2px 8px rgb(0 0 0 / 14%)));\n}\n";
7
+ /**
8
+ * Feeds the shared controls (ribbon, dialogs) from the aliases above. It sits on the shadow
9
+ * root's children, not on `:host`, because a custom property cannot read the value it replaces.
10
+ */
11
+ export declare const visioThemeBridge: string;
@@ -1,2 +1,2 @@
1
- /** Inherited public tokens use local fallback aliases so host themes are never shadowed. */
2
- export declare const viewerStyles = "\n:host {\n --_vv-bg:var(--vv-background,#eceae8); --_vv-surface:var(--vv-surface,#fff);\n --_vv-secondary:var(--vv-secondary,#f3f2f1); --_vv-ink:var(--vv-ink,#1f1f1f);\n --_vv-muted:var(--vv-muted,#605e5c); --_vv-border:var(--vv-border,#e1dfdd);\n --_vv-accent:var(--vv-accent,#3955a3); --_vv-accent-soft:var(--vv-accent-soft,rgba(57,85,163,.10));\n display:flex; flex-direction:column; min-width:0; min-height:320px; height:100%; overflow:hidden;\n color:var(--_vv-ink); background:var(--_vv-bg); font:12px/1.5 \"Segoe UI\",Arial,sans-serif; contain:layout;\n}\n* { box-sizing:border-box; }\n[hidden] { display:none !important; }\nbutton,select,input,textarea { font:inherit; color:inherit; border:1px solid var(--_vv-border); background:var(--_vv-surface); border-radius:4px; min-height:28px; padding:3px 8px; }\nbutton { cursor:pointer; }\nbutton:hover:enabled { background:var(--_vv-accent-soft); border-color:var(--_vv-accent); }\nbutton:disabled { opacity:.4; cursor:default; }\nbutton:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible { outline:2px solid var(--vv-focus,var(--_vv-accent)); outline-offset:2px; }\nbutton[aria-pressed=\"true\"] { color:var(--_vv-accent); background:var(--_vv-accent-soft); }\n.toolbar { flex:none; min-width:0; border-bottom:1px solid var(--_vv-border); background:var(--_vv-surface); }\n.spacer { flex:1; }\n.ribbon-content { min-height:82px; display:flex; align-items:stretch; gap:0; padding:2px 4px; overflow-x:auto; }\n.ribbon-group { display:flex; flex-direction:column; justify-content:space-between; flex:none; gap:2px; padding:3px 10px 4px; border-right:1px solid var(--_vv-border); }\n.group-label { font-size:10px; line-height:12px; color:var(--_vv-muted); text-align:center; }\n.ribbon-actions { display:flex; align-items:stretch; gap:2px; flex:1; }\n.ribbon-command { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:2px; min-width:70px; padding:2px 6px; border-color:transparent; background:transparent; font-size:11px; white-space:nowrap; }\n.ribbon-hint { align-self:center; flex:none; margin:0; padding:0 16px; font-size:11px; line-height:18px; color:var(--_vv-muted); }\n.workspace { position:relative; display:flex; flex:1; min-width:0; min-height:0; overflow:hidden; }\n.pane-heading { height:37px; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 10px; border-bottom:1px solid var(--_vv-border); font-size:11px; font-weight:600; }\n.inspector-kind { color:var(--_vv-muted); font-size:10px; font-weight:400; }\n.viewport { position:relative; display:flex; flex-direction:column; flex:1; overflow:auto; min-width:0; min-height:0; padding:16px 4px; background:var(--_vv-bg); }\n.paper { display:block; flex:none; background:white; box-shadow:var(--vv-shadow,0 2px 8px rgb(0 0 0 / 14%)); margin:auto; }\n.paper [data-shape-id] { cursor:pointer; }\n.paper [data-selected=\"true\"] > [data-geometry] { stroke:var(--_vv-accent) !important; stroke-width:.025 !important; }\n.inspector-pane { flex:0 0 288px; width:288px; min-width:0; overflow:auto; border-left:1px solid var(--_vv-border); background:var(--_vv-secondary); }\n.inspector-body { display:flex; flex-direction:column; gap:12px; padding:12px 10px; }\n.inspector-card,.edit-controls,.layer-controls { min-width:0; padding:8px; margin:0; border:1px solid var(--_vv-border); border-radius:4px; background:var(--_vv-surface); font-size:11px; line-height:17px; }\n.document-card h2 { margin:0 0 8px; font-size:10px; font-weight:500; letter-spacing:.5px; text-transform:uppercase; color:var(--_vv-muted); }\n.current-page-name { margin:0 0 8px; font-size:12px; font-weight:500; overflow-wrap:anywhere; }\n.document-card dl { display:grid; grid-template-columns:1fr auto; gap:4px 10px; margin:0; font-size:11px; }\n.document-card dt { color:var(--_vv-muted); }\n.document-card dd { margin:0; text-align:right; overflow-wrap:anywhere; }\n.selection-hint { margin:0; padding:0 2px; color:var(--_vv-muted); font-size:11px; }\nsummary { cursor:pointer; min-height:22px; line-height:22px; font-weight:500; }\nsummary::marker { color:var(--_vv-muted); font-size:10px; }\n.shape-inspector div { max-height:260px; overflow:auto; }\n.shape-inspector p { margin:6px 0; overflow-wrap:anywhere; }\n.shape-inspector dl { display:grid; grid-template-columns:minmax(60px,1fr) 1.5fr; gap:6px 10px; }\n.shape-inspector dt { font-weight:500; }\n.shape-inspector dd { margin:0; overflow-wrap:anywhere; white-space:pre-wrap; }\n.shape-inspector h3 { margin:12px 0 5px; font-size:11px; }\n.shape-inspector a { color:var(--_vv-accent); overflow-wrap:anywhere; }\n.edit-controls p,.layer-controls p { margin:6px 0; color:var(--_vv-muted); overflow-wrap:anywhere; }\n.edit-controls textarea { display:block; width:100%; resize:vertical; max-height:180px; margin-top:4px; background:var(--_vv-secondary); }\n.edit-controls label { display:block; margin-top:8px; }\n.edit-actions { display:flex; flex-wrap:wrap; gap:4px; margin-top:8px; }\n.edit-actions button { font-size:11px; padding:3px 7px; }\n.edit-actions [data-edit=\"apply\"]:enabled { background:var(--_vv-accent); border-color:var(--_vv-accent); color:var(--vv-accent-ink,#fff); }\n.edit-controls [data-geometry] { min-width:0; margin:8px 0 0; padding:6px; border:1px solid var(--_vv-border); }\n.edit-controls [data-geometry-field] { display:block; width:100%; min-width:0; margin-top:4px; }\n.edit-controls [data-geometry-error] { color:var(--vv-danger,#b42318); }\n.edit-controls [data-edit-error] { color:var(--vv-danger,#b42318); }\n.edit-controls [data-edit-diagnostics] { max-height:100px; overflow:auto; padding-left:16px; }\n.layer-controls [data-layer-list] { max-height:240px; overflow:auto; }\n.layer-controls fieldset { border:1px solid var(--_vv-border); margin:6px 0; padding:6px; min-width:0; }\n.layer-controls legend { max-width:100%; overflow-wrap:anywhere; }\n.layer-controls fieldset div { display:flex; align-items:center; gap:6px; margin:3px 0; }\n.layer-controls label { display:flex; align-items:center; gap:6px; overflow-wrap:anywhere; }\n.layer-controls input { flex-shrink:0; width:16px; height:16px; min-height:16px; padding:0; accent-color:var(--_vv-accent); }\n.notes ul { max-height:220px; overflow:auto; padding-left:17px; margin:6px 0 0; color:var(--_vv-muted); }\n.notes li { margin:5px 0; overflow-wrap:anywhere; }\n.notes-strip { flex:none; display:flex; align-items:center; justify-content:space-between; min-height:25.5px; padding:0 12px; border-top:1px solid var(--_vv-border); background:var(--_vv-bg); color:var(--_vv-muted); font-size:10px; }\n.notes-strip button { min-height:24.5px; padding:2px 0; border:0; background:transparent; color:var(--_vv-muted); font-size:11px; }\n.notes-strip button::before { content:\"\u25B8\"; margin-right:6px; }\n.notes-strip button[aria-expanded=\"true\"]::before { content:\"\u25BE\"; }\n.status { flex:none; display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; min-height:29px; padding:0 8px 0 12px; border-top:1px solid var(--_vv-border); color:var(--_vv-muted); background:var(--_vv-surface); font-size:10px; }\n.status-message { display:flex; gap:16px; min-width:0; }\n.status-message span { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }\n.empty { max-width:360px; margin:60px auto; padding:16px; text-align:center; color:var(--_vv-muted); font-size:12px; }\n.empty strong { display:block; color:var(--_vv-ink); font-size:18px; font-weight:500; margin-bottom:8px; }\n@media(max-width:1100px) { .ribbon-hint { display:none; } [data-diagnostics] { display:none; } }\n@media(max-width:760px) {\n button,select,input,textarea { min-height:44px; }\n button { min-width:44px; }\n summary { min-height:44px; line-height:44px; }\n .ribbon-content { min-height:86px; }\n .ribbon-group { padding:4px 8px; }\n #home-panel>.ribbon-group:not(.search-group):not(.undo-group) { display:none; }\n .ribbon-command { min-width:90px; }\n .workspace { display:block; overflow:auto; }\n .viewport { height:340px; min-height:260px; padding:16px 4px; }\n .inspector-pane { width:100%; overflow:visible; border-left:0; border-top:1px solid var(--_vv-border); }\n .inspector-body { gap:8px; padding:10px; }\n .inspector-card,.edit-controls,.layer-controls { font-size:12px; }\n .layer-controls label { min-height:44px; }\n .layer-controls input { min-width:20px; width:20px; height:20px; min-height:20px; }\n .notes-strip { min-height:44px; padding:0 10px; }\n .notes-strip button { min-height:44px; }\n .status { flex-wrap:wrap; gap:0; padding:4px 8px; }\n .status-message { width:100%; min-height:18px; }\n}\n@media(pointer:coarse) {\n button,select,input,textarea { min-height:44px; }\n button { min-width:44px; }\n summary,.layer-controls label { min-height:44px; line-height:44px; }\n .ribbon-content { min-height:96px; }\n .notes-strip button { min-height:44px; height:44px; }\n .layer-controls input { min-height:20px; }\n}\n/* Suite ribbon: tabs lead directly into Visio command groups. */\n.ribbon-content { min-height:104px; padding:4px 4px; }\n.ribbon-hint { order:3; padding:10px 18px; }\n.ribbon-command { min-width:82px; }\n.pane-close { display:none; }\n@media(max-width:760px) {\n .ribbon-content { min-height:54px; padding:4px 0; }\n .search-feedback,.group-label { display:none; }\n .ribbon-content { overflow-x:auto; scroll-snap-type:x mandatory; }\n .workspace { display:flex; position:relative; overflow:hidden; }\n .viewport { flex:1; width:100%; height:100%; min-height:0; padding:16px 4px; }\n .inspector-pane { position:absolute; inset:0 0 0 auto; width:min(320px,100%); z-index:4; overflow:auto; border-left:1px solid var(--_vv-border); box-shadow:-8px 0 24px #0002; }\n .pane-close { display:block; width:44px; height:44px; padding:0; font-size:22px; background:transparent; border:0; }\n .inspector-kind { margin-left:auto; }\n .notes-strip { display:none; }\n .status { min-height:48px; padding:2px 8px; }\n .status-message { display:none; }\n}\n.toolbar { position:relative; }\n.ribbon-tools { display:flex; flex:none; order:0; }\n.tools-content { display:flex; align-items:stretch; }\n.ribbon-tools>summary { display:none; }\n.ribbon-command { font-size:12px; min-width:88px; }\n.ribbon-hint { font-size:12px; line-height:20px; flex:1; }\n.group-label { font-size:11px; line-height:14px; }\n.inspector-card,.edit-controls,.layer-controls { font-size:12px; line-height:18px; }\n.selection-hint,.document-card dl { font-size:12px; }\n.pane-heading { font-size:12px; }\n.inspector-pane .pane-heading { position:sticky; top:0; z-index:1; background:var(--_vv-secondary); flex:none; }\n.status .notes-strip { border:0; padding:0 8px; background:transparent; min-height:28px; }\n.status .notes-strip>span { display:none; }\n.status-message { flex:1; }\n@media(max-width:760px) {\n #home-panel { overflow:visible; min-height:54px; padding:4px; }\n .ribbon-tools { display:block; flex:0 0 84px; width:84px; order:1; }\n .ribbon-tools>summary { display:flex; min-height:44px; align-items:center; justify-content:center; gap:6px; padding:0 10px; border:1px solid var(--_vv-border); background:var(--_vv-surface); border-radius:4px; font-size:12px; cursor:pointer; list-style:none; }\n .ribbon-tools>summary::-webkit-details-marker { display:none; }\n .ribbon-tools .tools-content { display:flex; position:absolute; top:100%; left:4px; right:4px; z-index:6; flex-direction:column; padding:12px; gap:12px; border:1px solid var(--_vv-border); border-radius:4px; background:var(--_vv-surface); box-shadow:0 12px 28px #0003; max-height:60vh; overflow:auto; }\n .ribbon-tools:not([open])>.tools-content { display:none; }\n .ribbon-tools .ribbon-group { display:flex; width:100%; min-height:64px; border:0; padding:0; }\n .ribbon-tools .ribbon-actions { justify-content:space-between; }\n .ribbon-tools .ribbon-command { min-width:88px; font-size:12px; }\n .ribbon-tools .search-feedback { display:block; }\n .status { flex-wrap:nowrap; gap:4px; min-height:48px; }\n .status .notes-strip { display:none; }\n}\n@media(prefers-reduced-motion:reduce) { * { scroll-behavior:auto !important; } }\n";
1
+ /** Colours come from the alias block in `styles/theme.ts`, which follows the shared theme. */
2
+ export declare const viewerStyles = "\n:host {\n display:flex; flex-direction:column; min-width:0; min-height:320px; height:100%; overflow:hidden;\n color:var(--_vv-ink); background:var(--_vv-bg); font:12px/1.5 \"Segoe UI\",Arial,sans-serif; contain:layout;\n}\n* { box-sizing:border-box; }\n[hidden] { display:none !important; }\nbutton,select,input,textarea { font:inherit; color:inherit; border:1px solid var(--_vv-border); background:var(--_vv-surface); border-radius:4px; min-height:28px; padding:3px 8px; }\nbutton { cursor:pointer; }\nbutton:hover:enabled { background:var(--_vv-accent-soft); border-color:var(--_vv-accent); }\nbutton:disabled { opacity:.4; cursor:default; }\nbutton:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible { outline:2px solid var(--_vv-focus); outline-offset:2px; }\nbutton[aria-pressed=\"true\"] { color:var(--_vv-accent); background:var(--_vv-accent-soft); }\n.toolbar { flex:none; min-width:0; border-bottom:1px solid var(--_vv-border); background:var(--_vv-surface); }\n.spacer { flex:1; }\n.ribbon-content { min-height:82px; display:flex; align-items:stretch; gap:0; padding:2px 4px; overflow-x:auto; }\n.ribbon-group { display:flex; flex-direction:column; justify-content:space-between; flex:none; gap:2px; padding:3px 10px 4px; border-right:1px solid var(--_vv-border); }\n.group-label { font-size:10px; line-height:12px; color:var(--_vv-muted); text-align:center; }\n.ribbon-actions { display:flex; align-items:stretch; gap:2px; flex:1; }\n.ribbon-command { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:2px; min-width:70px; padding:2px 6px; border-color:transparent; background:transparent; font-size:11px; white-space:nowrap; }\n.ribbon-hint { align-self:center; flex:none; margin:0; padding:0 16px; font-size:11px; line-height:18px; color:var(--_vv-muted); }\n.workspace { position:relative; display:flex; flex:1; min-width:0; min-height:0; overflow:hidden; }\n.pane-heading { height:37px; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 10px; border-bottom:1px solid var(--_vv-border); font-size:11px; font-weight:600; }\n.inspector-kind { color:var(--_vv-muted); font-size:10px; font-weight:400; }\n.viewport { position:relative; display:flex; flex-direction:column; flex:1; overflow:auto; min-width:0; min-height:0; padding:16px 4px; background:var(--_vv-bg); }\n.paper { display:block; flex:none; background:white; box-shadow:var(--_vv-shadow); margin:auto; }\n.paper [data-shape-id] { cursor:pointer; }\n.paper [data-selected=\"true\"] > [data-geometry] { stroke:var(--_vv-accent) !important; stroke-width:.025 !important; }\n.inspector-pane { flex:0 0 288px; width:288px; min-width:0; overflow:auto; border-left:1px solid var(--_vv-border); background:var(--_vv-secondary); }\n.inspector-body { display:flex; flex-direction:column; gap:12px; padding:12px 10px; }\n.inspector-card,.edit-controls,.layer-controls { min-width:0; padding:8px; margin:0; border:1px solid var(--_vv-border); border-radius:4px; background:var(--_vv-surface); font-size:11px; line-height:17px; }\n.document-card h2 { margin:0 0 8px; font-size:10px; font-weight:500; letter-spacing:.5px; text-transform:uppercase; color:var(--_vv-muted); }\n.current-page-name { margin:0 0 8px; font-size:12px; font-weight:500; overflow-wrap:anywhere; }\n.document-card dl { display:grid; grid-template-columns:1fr auto; gap:4px 10px; margin:0; font-size:11px; }\n.document-card dt { color:var(--_vv-muted); }\n.document-card dd { margin:0; text-align:right; overflow-wrap:anywhere; }\n.selection-hint { margin:0; padding:0 2px; color:var(--_vv-muted); font-size:11px; }\nsummary { cursor:pointer; min-height:22px; line-height:22px; font-weight:500; }\nsummary::marker { color:var(--_vv-muted); font-size:10px; }\n.shape-inspector div { max-height:260px; overflow:auto; }\n.shape-inspector p { margin:6px 0; overflow-wrap:anywhere; }\n.shape-inspector dl { display:grid; grid-template-columns:minmax(60px,1fr) 1.5fr; gap:6px 10px; }\n.shape-inspector dt { font-weight:500; }\n.shape-inspector dd { margin:0; overflow-wrap:anywhere; white-space:pre-wrap; }\n.shape-inspector h3 { margin:12px 0 5px; font-size:11px; }\n.shape-inspector a { color:var(--_vv-accent); overflow-wrap:anywhere; }\n.edit-controls p,.layer-controls p { margin:6px 0; color:var(--_vv-muted); overflow-wrap:anywhere; }\n.edit-controls textarea { display:block; width:100%; resize:vertical; max-height:180px; margin-top:4px; background:var(--_vv-secondary); }\n.edit-controls label { display:block; margin-top:8px; }\n.edit-actions { display:flex; flex-wrap:wrap; gap:4px; margin-top:8px; }\n.edit-actions button { font-size:11px; padding:3px 7px; }\n.edit-actions [data-edit=\"apply\"]:enabled { background:var(--_vv-accent); border-color:var(--_vv-accent); color:var(--_vv-accent-ink); }\n.edit-controls [data-geometry] { min-width:0; margin:8px 0 0; padding:6px; border:1px solid var(--_vv-border); }\n.edit-controls [data-geometry-field] { display:block; width:100%; min-width:0; margin-top:4px; }\n.edit-controls [data-geometry-error] { color:var(--_vv-danger); }\n.edit-controls [data-edit-error] { color:var(--_vv-danger); }\n.edit-controls [data-edit-diagnostics] { max-height:100px; overflow:auto; padding-left:16px; }\n.layer-controls [data-layer-list] { max-height:240px; overflow:auto; }\n.layer-controls fieldset { border:1px solid var(--_vv-border); margin:6px 0; padding:6px; min-width:0; }\n.layer-controls legend { max-width:100%; overflow-wrap:anywhere; }\n.layer-controls fieldset div { display:flex; align-items:center; gap:6px; margin:3px 0; }\n.layer-controls label { display:flex; align-items:center; gap:6px; overflow-wrap:anywhere; }\n.layer-controls input { flex-shrink:0; width:16px; height:16px; min-height:16px; padding:0; accent-color:var(--_vv-accent); }\n.notes ul { max-height:220px; overflow:auto; padding-left:17px; margin:6px 0 0; color:var(--_vv-muted); }\n.notes li { margin:5px 0; overflow-wrap:anywhere; }\n.notes-strip { flex:none; display:flex; align-items:center; justify-content:space-between; min-height:25.5px; padding:0 12px; border-top:1px solid var(--_vv-border); background:var(--_vv-bg); color:var(--_vv-muted); font-size:10px; }\n.notes-strip button { min-height:24.5px; padding:2px 0; border:0; background:transparent; color:var(--_vv-muted); font-size:11px; }\n.notes-strip button::before { content:\"\u25B8\"; margin-right:6px; }\n.notes-strip button[aria-expanded=\"true\"]::before { content:\"\u25BE\"; }\n.status { flex:none; display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; min-height:29px; padding:0 8px 0 12px; border-top:1px solid var(--_vv-border); color:var(--_vv-muted); background:var(--_vv-surface); font-size:10px; }\n.status-message { display:flex; gap:16px; min-width:0; }\n.status-message span { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }\n.empty { max-width:360px; margin:60px auto; padding:16px; text-align:center; color:var(--_vv-muted); font-size:12px; }\n.empty strong { display:block; color:var(--_vv-ink); font-size:18px; font-weight:500; margin-bottom:8px; }\n@media(max-width:1100px) { .ribbon-hint { display:none; } [data-diagnostics] { display:none; } }\n@media(max-width:760px) {\n button,select,input,textarea { min-height:44px; }\n button { min-width:44px; }\n summary { min-height:44px; line-height:44px; }\n .ribbon-content { min-height:86px; }\n .ribbon-group { padding:4px 8px; }\n #home-panel>.ribbon-group:not(.search-group):not(.undo-group) { display:none; }\n .ribbon-command { min-width:90px; }\n .workspace { display:block; overflow:auto; }\n .viewport { height:340px; min-height:260px; padding:16px 4px; }\n .inspector-pane { width:100%; overflow:visible; border-left:0; border-top:1px solid var(--_vv-border); }\n .inspector-body { gap:8px; padding:10px; }\n .inspector-card,.edit-controls,.layer-controls { font-size:12px; }\n .layer-controls label { min-height:44px; }\n .layer-controls input { min-width:20px; width:20px; height:20px; min-height:20px; }\n .notes-strip { min-height:44px; padding:0 10px; }\n .notes-strip button { min-height:44px; }\n .status { flex-wrap:wrap; gap:0; padding:4px 8px; }\n .status-message { width:100%; min-height:18px; }\n}\n@media(pointer:coarse) {\n button,select,input,textarea { min-height:44px; }\n button { min-width:44px; }\n summary,.layer-controls label { min-height:44px; line-height:44px; }\n .ribbon-content { min-height:96px; }\n .notes-strip button { min-height:44px; height:44px; }\n .layer-controls input { min-height:20px; }\n}\n/* Suite ribbon: tabs lead directly into Visio command groups. */\n.ribbon-content { min-height:104px; padding:4px 4px; }\n.ribbon-hint { order:3; padding:10px 18px; }\n.ribbon-command { min-width:82px; }\n.pane-close { display:none; }\n@media(max-width:760px) {\n .ribbon-content { min-height:54px; padding:4px 0; }\n .search-feedback,.group-label { display:none; }\n .ribbon-content { overflow-x:auto; scroll-snap-type:x mandatory; }\n .workspace { display:flex; position:relative; overflow:hidden; }\n .viewport { flex:1; width:100%; height:100%; min-height:0; padding:16px 4px; }\n .inspector-pane { position:absolute; inset:0 0 0 auto; width:min(320px,100%); z-index:4; overflow:auto; border-left:1px solid var(--_vv-border); box-shadow:-8px 0 24px #0002; }\n .pane-close { display:block; width:44px; height:44px; padding:0; font-size:22px; background:transparent; border:0; }\n .inspector-kind { margin-left:auto; }\n .notes-strip { display:none; }\n .status { min-height:48px; padding:2px 8px; }\n .status-message { display:none; }\n}\n.toolbar { position:relative; }\n.ribbon-tools { display:flex; flex:none; order:0; }\n.tools-content { display:flex; align-items:stretch; }\n.ribbon-tools>summary { display:none; }\n.ribbon-command { font-size:12px; min-width:88px; }\n.ribbon-hint { font-size:12px; line-height:20px; flex:1; }\n.group-label { font-size:11px; line-height:14px; }\n.inspector-card,.edit-controls,.layer-controls { font-size:12px; line-height:18px; }\n.selection-hint,.document-card dl { font-size:12px; }\n.pane-heading { font-size:12px; }\n.inspector-pane .pane-heading { position:sticky; top:0; z-index:1; background:var(--_vv-secondary); flex:none; }\n.status .notes-strip { border:0; padding:0 8px; background:transparent; min-height:28px; }\n.status .notes-strip>span { display:none; }\n.status-message { flex:1; }\n@media(max-width:760px) {\n #home-panel { overflow:visible; min-height:54px; padding:4px; }\n .ribbon-tools { display:block; flex:0 0 84px; width:84px; order:1; }\n .ribbon-tools>summary { display:flex; min-height:44px; align-items:center; justify-content:center; gap:6px; padding:0 10px; border:1px solid var(--_vv-border); background:var(--_vv-surface); border-radius:4px; font-size:12px; cursor:pointer; list-style:none; }\n .ribbon-tools>summary::-webkit-details-marker { display:none; }\n .ribbon-tools .tools-content { display:flex; position:absolute; top:100%; left:4px; right:4px; z-index:6; flex-direction:column; padding:12px; gap:12px; border:1px solid var(--_vv-border); border-radius:4px; background:var(--_vv-surface); box-shadow:0 12px 28px #0003; max-height:60vh; overflow:auto; }\n .ribbon-tools:not([open])>.tools-content { display:none; }\n .ribbon-tools .ribbon-group { display:flex; width:100%; min-height:64px; border:0; padding:0; }\n .ribbon-tools .ribbon-actions { justify-content:space-between; }\n .ribbon-tools .ribbon-command { min-width:88px; font-size:12px; }\n .ribbon-tools .search-feedback { display:block; }\n .status { flex-wrap:nowrap; gap:4px; min-height:48px; }\n .status .notes-strip { display:none; }\n}\n@media(prefers-reduced-motion:reduce) { * { scroll-behavior:auto !important; } }\n";