@heycys/gallery 0.1.1 → 0.1.2

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 (370) hide show
  1. package/THIRD-PARTY-NOTICES.md +1 -1
  2. package/browser/editor/components/columns/page.mjs +4 -4
  3. package/browser/editor/components/embed/index.mjs +2 -2
  4. package/browser/editor/components/flowchart/add.mjs +7 -6
  5. package/browser/editor/components/flowchart/page.mjs +1 -1
  6. package/browser/editor/components/icons.mjs +8 -0
  7. package/browser/editor/components/image/crop.mjs +6 -9
  8. package/browser/editor/components/installed/index.mjs +11 -4
  9. package/browser/editor/components/installed/page.mjs +27 -16
  10. package/browser/editor/components/installed/served.mjs +6 -5
  11. package/browser/editor/components/instances.mjs +18 -0
  12. package/browser/editor/components/list/page.mjs +3 -6
  13. package/browser/editor/components/registry.mjs +13 -4
  14. package/browser/editor/components/table/index.mjs +59 -2
  15. package/browser/editor/components/table/page.mjs +1 -1
  16. package/browser/editor/page/annotate/card.mjs +3 -6
  17. package/browser/editor/page/autosave.mjs +310 -37
  18. package/browser/editor/page/board/client.mjs +57 -0
  19. package/browser/editor/page/board/hint.mjs +145 -0
  20. package/browser/editor/page/board/history.mjs +119 -0
  21. package/browser/editor/page/board/index.mjs +970 -0
  22. package/browser/editor/page/board/settings.mjs +209 -0
  23. package/browser/editor/page/caret.mjs +1 -1
  24. package/browser/editor/page/changes/bar.mjs +6 -14
  25. package/browser/editor/page/changes/index.mjs +2 -2
  26. package/browser/editor/page/clipboard/import/html.mjs +29 -6
  27. package/browser/editor/page/clipboard/import/inline.mjs +32 -0
  28. package/browser/editor/page/clipboard/import/markdown.mjs +58 -13
  29. package/browser/editor/page/clipboard/import/read.mjs +6 -1
  30. package/browser/editor/page/clipboard/import/to-blocks.mjs +44 -12
  31. package/browser/editor/page/clipboard/import/yuque.mjs +622 -0
  32. package/browser/editor/page/clipboard/index.mjs +124 -13
  33. package/browser/editor/page/clipboard/own/blocks.mjs +11 -11
  34. package/browser/editor/page/clipboard/own/chart-keys.mjs +41 -28
  35. package/browser/editor/page/clipboard/own/selection.mjs +1 -1
  36. package/browser/editor/page/columns/index.mjs +48 -46
  37. package/browser/editor/page/commit.mjs +80 -22
  38. package/browser/editor/page/conflicts.mjs +7 -7
  39. package/browser/editor/page/core.mjs +31 -15
  40. package/browser/editor/page/custom-page.mjs +106 -0
  41. package/browser/editor/page/editor.mjs +51 -14
  42. package/browser/editor/page/emoji-picker/styles.mjs +7 -12
  43. package/browser/editor/page/emoji-picker/upload.mjs +2 -2
  44. package/browser/editor/page/handle/index.mjs +5 -8
  45. package/browser/editor/page/history.mjs +24 -4
  46. package/browser/editor/page/links/index.mjs +5 -3
  47. package/browser/editor/page/links/pages.mjs +27 -9
  48. package/browser/editor/page/look.mjs +54 -3
  49. package/browser/editor/page/margin.mjs +18 -3
  50. package/browser/editor/page/media-menu/index.mjs +6 -7
  51. package/browser/editor/page/menu.mjs +18 -7
  52. package/browser/editor/page/notices.mjs +2 -2
  53. package/browser/editor/page/page-objects.mjs +13 -2
  54. package/browser/editor/page/panel.mjs +4 -9
  55. package/browser/editor/page/present-links.mjs +11 -2
  56. package/browser/editor/page/resize/index.mjs +42 -29
  57. package/browser/editor/page/served.mjs +14 -0
  58. package/browser/editor/page/session.mjs +48 -4
  59. package/browser/editor/page/slash-menu/index.mjs +3 -3
  60. package/browser/editor/page/table/cells.mjs +102 -46
  61. package/browser/editor/page/table/icons.mjs +2 -0
  62. package/browser/editor/page/table/index.mjs +29 -10
  63. package/browser/editor/page/table/pictures.mjs +299 -0
  64. package/browser/editor/page/table/views.mjs +150 -0
  65. package/browser/editor/page/text-select/index.mjs +26 -12
  66. package/browser/editor/page/todo-writes.mjs +75 -0
  67. package/browser/editor/page/typing/index.mjs +53 -3
  68. package/browser/editor/page/ui.mjs +13 -0
  69. package/browser/shared/block-packs.mjs +404 -0
  70. package/browser/shared/board-places.mjs +224 -0
  71. package/browser/shared/card-size.mjs +59 -0
  72. package/browser/shared/colors.mjs +3 -2
  73. package/browser/shared/component-catalog.mjs +323 -46
  74. package/browser/shared/component-source.mjs +37 -0
  75. package/browser/shared/components/index.mjs +12 -3
  76. package/browser/shared/components/installed.mjs +35 -3
  77. package/browser/shared/components/page.mjs +18 -8
  78. package/browser/shared/components/state.mjs +5 -1
  79. package/browser/shared/document-look.mjs +10 -5
  80. package/browser/shared/drafts.mjs +432 -0
  81. package/browser/shared/extension-sidebar.mjs +126 -0
  82. package/browser/shared/extensions.mjs +79 -0
  83. package/browser/shared/file-table.mjs +101 -0
  84. package/browser/shared/i18n/en.mjs +307 -27
  85. package/browser/shared/json-layout.mjs +47 -0
  86. package/browser/shared/net-cache.mjs +133 -0
  87. package/browser/shared/net-keys.mjs +32 -0
  88. package/browser/shared/net-policy.mjs +177 -0
  89. package/browser/shared/outline-shape.mjs +128 -0
  90. package/browser/shared/outline.mjs +331 -67
  91. package/browser/shared/pack-manifest.mjs +77 -0
  92. package/browser/shared/page-address.mjs +6 -3
  93. package/browser/shared/page-cards.mjs +308 -0
  94. package/browser/shared/page-links.mjs +69 -6
  95. package/browser/shared/pages.mjs +388 -0
  96. package/browser/shared/paths.mjs +6 -0
  97. package/browser/shared/preview-server.mjs +3 -7
  98. package/browser/shared/session.mjs +8 -1
  99. package/browser/shared/shipped-blocks.mjs +299 -0
  100. package/browser/shared/table-chart.mjs +33 -1
  101. package/browser/shared/todos.mjs +83 -0
  102. package/browser/shared/user-directory.mjs +24 -0
  103. package/browser/shared/versions.mjs +14 -0
  104. package/browser/shared/web-links.mjs +134 -0
  105. package/browser/shared/workspace-columns.mjs +120 -0
  106. package/browser/shared/workspace-name.mjs +154 -0
  107. package/browser/shared/workspace-query.mjs +125 -0
  108. package/browser/shared/workspace-registry.mjs +272 -0
  109. package/browser/shared/workspace.mjs +171 -20
  110. package/dist/chunk-2NRBY6AJ.mjs +2 -0
  111. package/dist/chunk-32ZUEFZ7.mjs +2 -0
  112. package/dist/chunk-35NQ4PLQ.mjs +2 -0
  113. package/dist/chunk-3KJHLHUO.mjs +2 -0
  114. package/dist/chunk-3NJACR4W.mjs +2 -0
  115. package/dist/chunk-4AV456RQ.mjs +2 -0
  116. package/dist/chunk-4OZWXZE5.mjs +5 -0
  117. package/dist/chunk-5XYHDBJ5.mjs +2 -0
  118. package/dist/chunk-5ZJA7CXT.mjs +2 -0
  119. package/dist/chunk-6A53MZYZ.mjs +2 -0
  120. package/dist/chunk-6EXH3ORZ.mjs +166 -0
  121. package/dist/chunk-6EZ7FNIK.mjs +3 -0
  122. package/dist/{chunk-V5JTW2LH.mjs → chunk-6QBHU4DF.mjs} +1 -1
  123. package/dist/{chunk-Y6RLRPG3.mjs → chunk-6VTU6KEO.mjs} +1 -1
  124. package/dist/chunk-B4P2CM2J.mjs +3 -0
  125. package/dist/{chunk-FDLXYYG4.mjs → chunk-BPL64HGA.mjs} +1 -1
  126. package/dist/chunk-BVEFGE4B.mjs +2 -0
  127. package/dist/{chunk-LS4F7JUM.mjs → chunk-BZ5RAF7L.mjs} +1 -1
  128. package/dist/chunk-CRJEG7MT.mjs +2 -0
  129. package/dist/{chunk-LCTHTZIL.mjs → chunk-D4CKRD3V.mjs} +91 -91
  130. package/dist/chunk-D4EURAX4.mjs +4 -0
  131. package/dist/chunk-DQCE7TJY.mjs +5 -0
  132. package/dist/chunk-DR73Y2UJ.mjs +3 -0
  133. package/dist/{chunk-TMYZB6AV.mjs → chunk-EKNHM3P4.mjs} +1 -1
  134. package/dist/{chunk-GB5SOYQJ.mjs → chunk-ERLAIBOA.mjs} +2 -2
  135. package/dist/chunk-EURLTOTZ.mjs +4 -0
  136. package/dist/chunk-FJYN7RTH.mjs +4 -0
  137. package/dist/chunk-FWNRPMCJ.mjs +12 -0
  138. package/dist/chunk-FWW4CSAZ.mjs +2 -0
  139. package/dist/{chunk-2B5E4CDJ.mjs → chunk-GPIWQ4X4.mjs} +1 -1
  140. package/dist/chunk-GY3FAUVM.mjs +2 -0
  141. package/dist/chunk-HLYV7RIH.mjs +2 -0
  142. package/dist/chunk-HMYTM3GT.mjs +15 -0
  143. package/dist/chunk-IA4PSIMD.mjs +2 -0
  144. package/dist/chunk-JEUK3ZO7.mjs +2 -0
  145. package/dist/chunk-KTKHRC6H.mjs +2 -0
  146. package/dist/chunk-L7UP52JO.mjs +2 -0
  147. package/dist/{chunk-SYGN7GLU.mjs → chunk-MHW7ZKOU.mjs} +1 -1
  148. package/dist/chunk-N76HWBA3.mjs +10 -0
  149. package/dist/chunk-N7AZZLGT.mjs +548 -0
  150. package/dist/chunk-NAMN3RAF.mjs +2 -0
  151. package/dist/{chunk-5ZKJ3H4P.mjs → chunk-NFMCP2HI.mjs} +3 -3
  152. package/dist/chunk-NG375ILQ.mjs +2 -0
  153. package/dist/chunk-NVRNLK25.mjs +6 -0
  154. package/dist/chunk-NWFBE2YA.mjs +2 -0
  155. package/dist/chunk-NWR2LT5B.mjs +2 -0
  156. package/dist/chunk-OJKMINIU.mjs +20 -0
  157. package/dist/{chunk-4FS7Z7WR.mjs → chunk-OUUP3WKT.mjs} +1 -1
  158. package/dist/{chunk-BGGDRNYQ.mjs → chunk-OW5NWPOJ.mjs} +1 -1
  159. package/dist/chunk-PAREWQGB.mjs +4 -0
  160. package/dist/chunk-POQSE4C2.mjs +2 -0
  161. package/dist/chunk-PUOQ65NC.mjs +2 -0
  162. package/dist/{chunk-XNROSH2T.mjs → chunk-PVER7LSC.mjs} +2 -2
  163. package/dist/chunk-PZDLJJTJ.mjs +3 -0
  164. package/dist/chunk-Q47PLKIJ.mjs +15 -0
  165. package/dist/chunk-Q4UEPUWF.mjs +2 -0
  166. package/dist/chunk-QKXMPUXC.mjs +2 -0
  167. package/dist/chunk-QOUEFUCH.mjs +16 -0
  168. package/dist/chunk-RFDZXFJF.mjs +13 -0
  169. package/dist/chunk-RKPWLGZ3.mjs +4 -0
  170. package/dist/chunk-RMECZA2K.mjs +2 -0
  171. package/dist/{chunk-7DTINW6U.mjs → chunk-SQ6Y2ZMA.mjs} +2 -2
  172. package/dist/chunk-SX4LJYT6.mjs +8 -0
  173. package/dist/chunk-SXHBYZST.mjs +16 -0
  174. package/dist/chunk-TANZRINB.mjs +2 -0
  175. package/dist/chunk-TEZAWDSQ.mjs +2 -0
  176. package/dist/chunk-UBBRTJ2R.mjs +24 -0
  177. package/dist/chunk-UFNYFFKO.mjs +20 -0
  178. package/dist/chunk-UGWYKHBL.mjs +170 -0
  179. package/dist/chunk-UKSHDZZ6.mjs +2 -0
  180. package/dist/chunk-UNOYVIYR.mjs +2 -0
  181. package/dist/{chunk-E7LWZRXY.mjs → chunk-V6RIYQZZ.mjs} +1 -1
  182. package/dist/chunk-VJPFVNNW.mjs +15 -0
  183. package/dist/chunk-VS3ZMVGX.mjs +5 -0
  184. package/dist/chunk-VTKNEYT3.mjs +6 -0
  185. package/dist/chunk-VXACTLO3.mjs +3 -0
  186. package/dist/chunk-YI43RG4P.mjs +2 -0
  187. package/dist/chunk-YQGT4AB2.mjs +6 -0
  188. package/dist/chunk-ZB4H7ZN4.mjs +2 -0
  189. package/dist/{chunk-IVDLMMBD.mjs → chunk-ZHEHPMBK.mjs} +1 -1
  190. package/dist/chunk-ZTHICSSF.mjs +2 -0
  191. package/dist/chunk-ZUNVAXLH.mjs +2 -0
  192. package/dist/chunk-ZWPMCK7P.mjs +2 -0
  193. package/dist/cli.mjs +1 -1
  194. package/dist/server.mjs +1 -1
  195. package/dist/{chunk-U6KNPJPR.mjs → update-fetch.mjs} +1 -1
  196. package/dist/worker.mjs +1 -1
  197. package/kit/board.css +95 -0
  198. package/kit/board.js +250 -0
  199. package/kit/charts.js +5 -71
  200. package/kit/code.js +14 -14
  201. package/kit/report.css +255 -17
  202. package/kit/runtime.js +1600 -125
  203. package/kit/state.js +10 -1
  204. package/kit/tables.js +128 -43
  205. package/kit/ui.js +77 -35
  206. package/package.json +2 -1
  207. package/packs/gallery/card/component.json +14 -0
  208. package/packs/gallery/card/example.html +10 -0
  209. package/packs/gallery/card/preview.svg +1 -0
  210. package/packs/gallery/card/style.css +6 -0
  211. package/packs/gallery/card/template.html +6 -0
  212. package/packs/gallery/card/writing.md +14 -0
  213. package/packs/gallery/chart-card/component.json +15 -0
  214. package/packs/gallery/chart-card/example.html +14 -0
  215. package/packs/gallery/chart-card/kit.js +130 -0
  216. package/packs/gallery/chart-card/preview.svg +1 -0
  217. package/packs/gallery/chart-card/style.css +42 -0
  218. package/packs/gallery/chart-card/template.html +13 -0
  219. package/packs/gallery/chart-card/writing.md +20 -0
  220. package/packs/gallery/chart-view/component.json +20 -0
  221. package/packs/gallery/chart-view/example.html +13 -0
  222. package/packs/gallery/chart-view/kit.js +355 -0
  223. package/packs/gallery/chart-view/preview.svg +1 -0
  224. package/packs/gallery/chart-view/style.css +94 -0
  225. package/packs/gallery/chart-view/template.html +3 -0
  226. package/packs/gallery/chart-view/writing.md +22 -0
  227. package/packs/gallery/countdown/component.json +18 -0
  228. package/packs/gallery/countdown/example.html +3 -0
  229. package/packs/gallery/countdown/kit.js +156 -0
  230. package/packs/gallery/countdown/preview.svg +1 -0
  231. package/packs/gallery/countdown/style.css +130 -0
  232. package/packs/gallery/countdown/template.html +3 -0
  233. package/packs/gallery/countdown/writing.md +22 -0
  234. package/packs/gallery/habit/component.json +14 -0
  235. package/packs/gallery/habit/example.html +3 -0
  236. package/packs/gallery/habit/kit.js +295 -0
  237. package/packs/gallery/habit/preview.svg +1 -0
  238. package/packs/gallery/habit/style.css +246 -0
  239. package/packs/gallery/habit/template.html +3 -0
  240. package/packs/gallery/habit/writing.md +21 -0
  241. package/packs/gallery/heatmap/component.json +18 -0
  242. package/packs/gallery/heatmap/example.html +3 -0
  243. package/packs/gallery/heatmap/kit.js +351 -0
  244. package/packs/gallery/heatmap/preview.svg +1 -0
  245. package/packs/gallery/heatmap/style.css +201 -0
  246. package/packs/gallery/heatmap/template.html +3 -0
  247. package/packs/gallery/heatmap/writing.md +21 -0
  248. package/packs/gallery/kanban/component.json +18 -0
  249. package/packs/gallery/kanban/example.html +12 -0
  250. package/packs/gallery/kanban/kit.js +540 -0
  251. package/packs/gallery/kanban/preview.svg +1 -0
  252. package/packs/gallery/kanban/style.css +212 -0
  253. package/packs/gallery/kanban/template.html +3 -0
  254. package/packs/gallery/kanban/writing.md +20 -0
  255. package/packs/gallery/metric/component.json +22 -0
  256. package/packs/gallery/metric/example.html +15 -0
  257. package/packs/gallery/metric/kit.js +248 -0
  258. package/packs/gallery/metric/preview.svg +1 -0
  259. package/packs/gallery/metric/style.css +92 -0
  260. package/packs/gallery/metric/template.html +3 -0
  261. package/packs/gallery/metric/writing.md +23 -0
  262. package/packs/gallery/note/component.json +14 -0
  263. package/packs/gallery/note/example.html +3 -0
  264. package/packs/gallery/note/kit.js +102 -0
  265. package/packs/gallery/note/preview.svg +1 -0
  266. package/packs/gallery/note/style.css +76 -0
  267. package/packs/gallery/note/template.html +3 -0
  268. package/packs/gallery/note/writing.md +18 -0
  269. package/packs/gallery/pack.json +8 -0
  270. package/packs/gallery/recent/component.json +13 -0
  271. package/packs/gallery/recent/example.html +1 -0
  272. package/packs/gallery/recent/kit.js +238 -0
  273. package/packs/gallery/recent/preview.svg +1 -0
  274. package/packs/gallery/recent/style.css +158 -0
  275. package/packs/gallery/recent/template.html +1 -0
  276. package/packs/gallery/recent/writing.md +15 -0
  277. package/packs/gallery/static/component.json +13 -0
  278. package/packs/gallery/static/example.html +11 -0
  279. package/packs/gallery/static/preview.svg +1 -0
  280. package/packs/gallery/static/style.css +138 -0
  281. package/packs/gallery/static/template.html +1 -0
  282. package/packs/gallery/static/writing.md +18 -0
  283. package/packs/gallery/stats/component.json +13 -0
  284. package/packs/gallery/stats/example.html +1 -0
  285. package/packs/gallery/stats/kit.js +166 -0
  286. package/packs/gallery/stats/preview.svg +1 -0
  287. package/packs/gallery/stats/style.css +151 -0
  288. package/packs/gallery/stats/template.html +1 -0
  289. package/packs/gallery/stats/writing.md +11 -0
  290. package/packs/gallery/today/component.json +12 -0
  291. package/packs/gallery/today/example.html +1 -0
  292. package/packs/gallery/today/kit.js +185 -0
  293. package/packs/gallery/today/preview.svg +1 -0
  294. package/packs/gallery/today/style.css +120 -0
  295. package/packs/gallery/today/template.html +1 -0
  296. package/packs/gallery/today/writing.md +14 -0
  297. package/packs/gallery/todos/component.json +19 -0
  298. package/packs/gallery/todos/example.html +3 -0
  299. package/packs/gallery/todos/kit.js +342 -0
  300. package/packs/gallery/todos/preview.svg +1 -0
  301. package/packs/gallery/todos/style.css +267 -0
  302. package/packs/gallery/todos/template.html +3 -0
  303. package/packs/gallery/todos/writing.md +30 -0
  304. package/packs/gallery/weather/component.json +19 -0
  305. package/packs/gallery/weather/example.html +3 -0
  306. package/packs/gallery/weather/kit.js +312 -0
  307. package/packs/gallery/weather/preview.svg +1 -0
  308. package/packs/gallery/weather/style.css +258 -0
  309. package/packs/gallery/weather/template.html +3 -0
  310. package/packs/gallery/weather/writing.md +26 -0
  311. package/packs/gallery-soft/pack.json +8 -0
  312. package/release.json +12 -10
  313. package/sdk/doc-kit.d.ts +396 -5
  314. package/sdk/doc-state.d.ts +2 -0
  315. package/skill/SKILL.md +56 -23
  316. package/skill/references/block-script.md +140 -0
  317. package/skill/references/building-blocks.md +257 -0
  318. package/skill/references/extensions.md +59 -0
  319. package/skill/references/pages-and-data.md +221 -0
  320. package/skill/references/writing-html.md +6 -4
  321. package/skill/sdk/doc-kit.d.ts +396 -5
  322. package/skill/sdk/doc-state.d.ts +2 -0
  323. package/web/assets/index-BK2e_07w.js +13 -0
  324. package/web/assets/index-CWFI83mF.css +1 -0
  325. package/web/index.html +2 -2
  326. package/dist/chunk-3HIRPVLU.mjs +0 -2
  327. package/dist/chunk-5MHMDLZD.mjs +0 -4
  328. package/dist/chunk-64K7IPLO.mjs +0 -255
  329. package/dist/chunk-6QXGZM36.mjs +0 -8
  330. package/dist/chunk-6RGJOMJP.mjs +0 -16
  331. package/dist/chunk-AJ73XJF3.mjs +0 -2
  332. package/dist/chunk-AUZGSZJH.mjs +0 -13
  333. package/dist/chunk-BFE45AKL.mjs +0 -2
  334. package/dist/chunk-BXO2ZY5P.mjs +0 -2
  335. package/dist/chunk-CEH4MRCC.mjs +0 -2
  336. package/dist/chunk-CY2FNNAB.mjs +0 -16
  337. package/dist/chunk-DFUDV4LX.mjs +0 -2
  338. package/dist/chunk-DKXG4XDG.mjs +0 -2
  339. package/dist/chunk-EZQ34M3F.mjs +0 -124
  340. package/dist/chunk-EZY3WC6Z.mjs +0 -15
  341. package/dist/chunk-FUKQNOQS.mjs +0 -9
  342. package/dist/chunk-JPOSLGOC.mjs +0 -6
  343. package/dist/chunk-L3QKH4OK.mjs +0 -26
  344. package/dist/chunk-LAE5NQ4B.mjs +0 -2
  345. package/dist/chunk-LEF6DRCK.mjs +0 -59
  346. package/dist/chunk-NO5NJCHO.mjs +0 -2
  347. package/dist/chunk-NQPVAU63.mjs +0 -2
  348. package/dist/chunk-NSKUTQ5J.mjs +0 -5
  349. package/dist/chunk-O35FIXRB.mjs +0 -2
  350. package/dist/chunk-P2CAZPDP.mjs +0 -3
  351. package/dist/chunk-PL6GHLGD.mjs +0 -15
  352. package/dist/chunk-QJIR2BLP.mjs +0 -6
  353. package/dist/chunk-QUPLVPB2.mjs +0 -7
  354. package/dist/chunk-R7BNENLY.mjs +0 -4
  355. package/dist/chunk-S6O4UHLC.mjs +0 -2
  356. package/dist/chunk-SGJWQKEI.mjs +0 -2
  357. package/dist/chunk-TX6JH7TR.mjs +0 -2
  358. package/dist/chunk-TYK6VNAB.mjs +0 -10
  359. package/dist/chunk-UALRNVSE.mjs +0 -4
  360. package/dist/chunk-V3HXVQEM.mjs +0 -2
  361. package/dist/chunk-V5VXUJKG.mjs +0 -2
  362. package/dist/chunk-VBXMADMP.mjs +0 -2
  363. package/dist/chunk-VNV55RUA.mjs +0 -2
  364. package/dist/chunk-VPD2PS35.mjs +0 -2
  365. package/dist/chunk-W4VKN3GF.mjs +0 -7
  366. package/dist/chunk-W5BXXPDJ.mjs +0 -3
  367. package/dist/chunk-XUNHRCOG.mjs +0 -6
  368. package/skill/references/building-components.md +0 -367
  369. package/web/assets/index-Bh74DfsV.css +0 -1
  370. package/web/assets/index-UW0RyFFt.js +0 -13
package/kit/report.css CHANGED
@@ -18,10 +18,10 @@
18
18
 
19
19
  :root {
20
20
  color-scheme: light dark;
21
- /* The page: #2c2c2b on white in light (Notion's), its own pair in dark; the lines below are the text at a strength. */
21
+ /* The page: #2d2d2d on white in light, #262626 where the platform is Apple's (below), its own pair in dark; the lines below are the text at a strength. */
22
22
  --doc-bg: light-dark(#ffffff, #181818);
23
23
  --doc-surface: light-dark(#ffffff, #202020);
24
- --doc-text: light-dark(#2c2c2b, #f3f3f3); /* the text: Notion's (and DingTalk's) #2c2c2b, the editor's own --ge-tx */
24
+ --doc-text: light-dark(#2d2d2d, #f3f3f3); /* the text: #2d2d2d, and #262626 on an Apple platform (the user's of 2026-11-08, below) */
25
25
  --doc-muted: light-dark(#6e6e73, #a1a1a6);
26
26
  --doc-border: light-dark(rgb(44 44 43 / 12%), rgb(243 243 243 / 13%));
27
27
  --doc-grid: light-dark(rgb(44 44 43 / 8%), rgb(243 243 243 / 8%));
@@ -175,6 +175,51 @@
175
175
  --doc-diff-removed-strip: light-dark(rgb(248 81 73 / 55%), rgb(248 81 73 / 55%));
176
176
  --doc-chart-axis-font-size: 13px;
177
177
  --doc-table-fill: var(--doc-bg);
178
+ /* Cards (docs/render.md, Design defaults, "Cards"): a custom page's ground and the board's frame around each card
179
+ (board.css), and the language Gallery's own blocks draw their faces in, which an Agent's block uses
180
+ too (references/pages-and-data.md). One accent, Gallery's own blue (the list markers'), used
181
+ sparingly: an icon's chip, a ring or bar toward a target, a day done; green and red only for a state
182
+ that is good or bad; everything else the text and its muted gray. Dark is its own pair of surfaces
183
+ (a ground, a card a step lighter with a faint top edge), never the light one inverted. */
184
+ --gallery-page-fill: light-dark(#f8f8f7, #181818);
185
+ --gallery-card-fill: light-dark(#ffffff, #212121);
186
+ --gallery-card-line: light-dark(rgb(28 25 20 / 9%), rgb(255 255 255 / 8%));
187
+ --gallery-card-radius: 14px;
188
+ --gallery-card-pad: 18px;
189
+ --gallery-card-shadow: 0 1px 2px light-dark(rgb(28 25 20 / 4.5%), rgb(0 0 0 / 24%)), 0 8px 20px -10px light-dark(rgb(28 25 20 / 10%), rgb(0 0 0 / 45%)), inset 0 1px 0 light-dark(rgb(255 255 255 / 0%), rgb(255 255 255 / 4.5%));
190
+ --gallery-accent: light-dark(#2e7cd1, #5c9ad9);
191
+ --gallery-accent-soft: light-dark(rgb(46 124 209 / 9%), rgb(92 154 217 / 15%));
192
+ --gallery-good: light-dark(#2b8a4e, #5dbb7c);
193
+ --gallery-good-soft: light-dark(rgb(43 138 78 / 10%), rgb(93 187 124 / 14%));
194
+ --gallery-bad: light-dark(#c8473d, #f07d72);
195
+ --gallery-bad-soft: light-dark(rgb(200 71 61 / 9%), rgb(240 125 114 / 14%));
196
+ --gallery-neutral-soft: light-dark(rgb(33 27 23 / 5.5%), rgb(255 255 255 / 7%));
197
+ /* What a ring, a bar or an empty day stands on: the track. */
198
+ --gallery-track: light-dark(rgb(33 27 23 / 7%), rgb(255 255 255 / 8%));
199
+ /* A card's head: its icon in a tinted rounded square (the chip), its title, a quiet meta text. */
200
+ --gallery-chip-size: 26px;
201
+ --gallery-chip-radius: 8px;
202
+ --gallery-chip-icon: 15px;
203
+ --gallery-title-size: 14px;
204
+ --gallery-title-line: 20px;
205
+ --gallery-meta-size: 12px;
206
+ /* The rows of a card's face stand this far apart. */
207
+ --gallery-face-gap: 10px;
208
+ /* A card's ink: the document's text in light; in dark a softer white than the document's #f3f3f3 (which
209
+ on a card's #212121 makes Chinese words look heavy and lit), a step brighter for its titles and big
210
+ numbers. The muted gray stays the document's. */
211
+ --gallery-text: light-dark(var(--doc-text), rgb(255 255 255 / 82%));
212
+ --gallery-text-strong: light-dark(var(--doc-text), rgb(255 255 255 / 90%));
213
+ /* A big number: its weight and tracking, figures of one width; its unit a smaller muted word after it,
214
+ this far from it (of the unit's own size), the same in every block. Two sizes: the hero, a card's one
215
+ main number (a countdown's days, a streak, a temperature, a heatmap's total), and the figure, a
216
+ number among others (the stats' cells, a ring's middle on a large ring). */
217
+ --gallery-numeral-weight: 600;
218
+ --gallery-numeral-tracking: -.025em;
219
+ --gallery-unit-size: .4em;
220
+ --gallery-unit-gap: .3em;
221
+ --gallery-hero-size: 40px;
222
+ --gallery-figure-size: 28px;
178
223
  }
179
224
 
180
225
  :root[data-doc-theme="light"] { color-scheme: light; }
@@ -200,6 +245,10 @@
200
245
  :root[data-doc-size="small"][data-doc-spacing="loose"] { --doc-body-line-height: 26px; --doc-small-line-height: 18px; --doc-note-line-height: 20px; --doc-title-line-height: 35px; --doc-h1-line-height: 35px; --doc-h2-line-height: 31px; --doc-h3-line-height: 28px; --doc-h4-line-height: 24px; --doc-card-title-line-height: 25px; --doc-table-line-height: 20px; }
201
246
  :root[data-doc-size="large"][data-doc-spacing="compact"] { --doc-body-line-height: 27px; --doc-small-line-height: 20px; --doc-note-line-height: 21px; --doc-title-line-height: 39px; --doc-h1-line-height: 38px; --doc-h2-line-height: 33px; --doc-h3-line-height: 30px; --doc-h4-line-height: 25px; --doc-card-title-line-height: 26px; --doc-table-line-height: 22px; }
202
247
  :root[data-doc-size="large"][data-doc-spacing="loose"] { --doc-body-line-height: 32px; --doc-small-line-height: 22px; --doc-note-line-height: 24px; --doc-title-line-height: 43px; --doc-h1-line-height: 43px; --doc-h2-line-height: 37px; --doc-h3-line-height: 34px; --doc-h4-line-height: 29px; --doc-card-title-line-height: 29px; --doc-table-line-height: 24px; }
248
+
249
+ /* The text on an Apple platform (macOS, iOS, iPadOS: runtime/index.js sets data-doc-platform when the page opens, so an exported file
250
+ judges on its reader's machine): a shade darker, as its type is drawn thinner there; base.css smooths it. Dark is the same. */
251
+ :root[data-doc-platform="mac"] { --doc-text: light-dark(#262626, #f3f3f3); }
203
252
  /* 衬线体: the kit's own controls (the display menu, a code block's language, a diff's counts) keep the
204
253
  sans, --doc-font itself given it back on them, for what in them names --doc-font again (the display
205
254
  menu's card, controls.css) takes it there. 混合体: the title and every heading in the serif, of no
@@ -247,11 +296,14 @@ body {
247
296
  font-size: var(--doc-body-font-size);
248
297
  line-height: var(--doc-body-line-height);
249
298
  }
299
+ /* On an Apple platform (runtime/index.js) the type is smoothed as the system's own apps' is; the workbench's frame has it, a document in its iframe does not inherit it. */
300
+ :root[data-doc-platform="mac"] body { -webkit-font-smoothing: antialiased; }
250
301
 
251
302
  /* Hold the first paint until ui.js marks the page ready: by then the reader's theme and width
252
303
  are applied and the report's scripts have set up Sheets, charts, tables and formulas, so the
253
- page never flashes an intermediate state. If that never happens, reveal it anyway. */
254
- :root:not([data-doc-ready]) body:has(> .doc-page) {
304
+ page never flashes an intermediate state. If that never happens, reveal it anyway. A custom page
305
+ (main.gallery-page) is held the same way, until its board has placed its cards (board/). */
306
+ :root:not([data-doc-ready]) body:has(> :is(.doc-page, .gallery-page)) {
255
307
  visibility: hidden;
256
308
  animation: doc-reveal 0s linear 1.2s forwards;
257
309
  }
@@ -364,6 +416,55 @@ span:is(.doc-highlight-gray, .doc-highlight-brown, .doc-highlight-orange, .doc-h
364
416
  .doc-kit-error { display: none; }
365
417
  }
366
418
 
419
+ /* A block online that waits for the reader's consent (the kit's runtime, net.js): a line and a button
420
+ after it in a document, over its card on a custom page (the card is the board's, position: relative),
421
+ its fill the card's so that what the block drew underneath does not show through. Never in a file,
422
+ an export or on paper (data-doc-dev). */
423
+ .doc-net-consent {
424
+ display: flex;
425
+ flex-wrap: wrap;
426
+ align-items: center;
427
+ gap: 8px 12px;
428
+ margin: 8px 0;
429
+ padding: 8px 12px;
430
+ border-radius: 6px;
431
+ color: var(--doc-muted);
432
+ background: var(--doc-surface);
433
+ font: 13px/1.5 var(--doc-font);
434
+ }
435
+ /* 允许 is the card's one action: a button with no line, the pale blue fill of a primary (the editor's look.mjs
436
+ BUTTONS and the workbench's, from the document's own accent), a deeper one under the pointer and pressed. */
437
+ .doc-net-consent-allow {
438
+ padding: 4px 10px;
439
+ border: 0;
440
+ border-radius: 6px;
441
+ color: color-mix(in srgb, var(--doc-accent) 80%, var(--doc-text));
442
+ background: color-mix(in srgb, var(--doc-accent) 14%, transparent);
443
+ font: inherit;
444
+ font-weight: 500;
445
+ cursor: pointer;
446
+ overflow-wrap: anywhere;
447
+ transition: background-color 20ms ease-in;
448
+ }
449
+ .doc-net-consent-allow:is(:hover, :focus-visible) { outline: none; background: color-mix(in srgb, var(--doc-accent) 22%, transparent); }
450
+ .doc-net-consent-allow:active { background: color-mix(in srgb, var(--doc-accent) 30%, transparent); }
451
+ .gallery-card > .doc-net-consent {
452
+ position: absolute;
453
+ inset: 0;
454
+ z-index: 1;
455
+ flex-direction: column;
456
+ flex-wrap: nowrap;
457
+ justify-content: center;
458
+ margin: 0;
459
+ padding: 12px;
460
+ border-radius: inherit;
461
+ text-align: center;
462
+ background: var(--gallery-card-fill, var(--doc-surface));
463
+ }
464
+ @media print {
465
+ .doc-net-consent { display: none; }
466
+ }
467
+
367
468
  @media (prefers-reduced-motion: reduce) {
368
469
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
369
470
  }
@@ -495,7 +596,9 @@ span:is(.doc-highlight-gray, .doc-highlight-brown, .doc-highlight-orange, .doc-h
495
596
  transition: color 100ms ease-in-out, background-color 100ms ease-in-out;
496
597
  }
497
598
 
498
- .doc-display-button:hover,
599
+ /* An icon button: the icon darkens under the pointer, the gray only while it is pressed or its menu is open. */
600
+ .doc-display-button:hover { color: var(--doc-text); }
601
+
499
602
  .doc-display-button[aria-expanded="true"] {
500
603
  color: var(--doc-text);
501
604
  background: var(--doc-hover);
@@ -679,6 +782,122 @@ span:is(.doc-highlight-gray, .doc-highlight-brown, .doc-highlight-orange, .doc-h
679
782
  .doc-display { display: none; }
680
783
  }
681
784
 
785
+ /* A choice (runtime/choice.js): the menu card a <select> and DocKit.choose open instead of the browser's
786
+ popup, and the quiet look a <select> has where nobody gave it one. The card is the display menu's
787
+ (controls.css): radius 10, Notion's popup surface and shadow, rows of 28px that take one light fill
788
+ under the pointer or the keys, the chosen row checked at its right (no empty column before the words
789
+ on the others), as wide as its rows (the trigger's width at least, 320px at most, its words cut by an
790
+ ellipsis past that). It stands in the top layer (a popover, so no z-index of the page covers it);
791
+ z-index is for a browser without popovers. */
792
+
793
+ .doc-choice {
794
+ position: fixed;
795
+ inset: auto;
796
+ left: 0;
797
+ top: 0;
798
+ z-index: 1100;
799
+ box-sizing: border-box;
800
+ width: max-content;
801
+ max-width: min(320px, calc(100vw - 16px));
802
+ margin: 0;
803
+ padding: 4px 0;
804
+ overflow-x: hidden;
805
+ overflow-y: auto;
806
+ overscroll-behavior: contain;
807
+ scrollbar-width: thin;
808
+ border: 0;
809
+ border-radius: 10px;
810
+ color: var(--doc-text);
811
+ background: light-dark(#ffffff, #252525);
812
+ box-shadow:
813
+ 0 0 0 1px light-dark(rgb(42 28 0 / 7%), #383836),
814
+ 0 20px 24px light-dark(rgb(25 25 25 / 5%), rgb(0 0 0 / 20%)),
815
+ 0 5px 8px light-dark(rgb(25 25 25 / 2.7%), rgb(0 0 0 / 12%));
816
+ font: 14px/1.2 var(--doc-font);
817
+ user-select: none;
818
+ transition: opacity 120ms ease-out;
819
+ }
820
+
821
+ @starting-style {
822
+ .doc-choice { opacity: 0; }
823
+ }
824
+
825
+ .doc-choice-row {
826
+ display: flex;
827
+ align-items: center;
828
+ gap: 8px;
829
+ min-height: 28px;
830
+ margin: 0 4px 1px;
831
+ padding: 0 8px;
832
+ border-radius: 6px;
833
+ cursor: pointer;
834
+ transition: background-color 20ms ease-in;
835
+ }
836
+
837
+ /* Under the pointer, or reached with the keys: one light fill, as every menu's rows. */
838
+ .doc-choice-row.is-active { background: var(--doc-hover); }
839
+ .doc-choice-row:active { background: var(--doc-press); }
840
+ .doc-choice-row[aria-disabled="true"] { opacity: .45; cursor: default; }
841
+ .doc-choice-row[aria-disabled="true"]:active { background: transparent; }
842
+
843
+ .doc-choice-label {
844
+ flex: 1 1 auto;
845
+ min-width: 0;
846
+ overflow: hidden;
847
+ text-overflow: ellipsis;
848
+ white-space: nowrap;
849
+ }
850
+
851
+ /* The chosen row: a check at its right. */
852
+ .doc-choice-check {
853
+ flex: none;
854
+ width: 16px;
855
+ height: 16px;
856
+ fill: none;
857
+ stroke: currentColor;
858
+ stroke-width: 1.7;
859
+ stroke-linecap: round;
860
+ stroke-linejoin: round;
861
+ }
862
+
863
+ /* An <optgroup>'s name: a small heading, no row. */
864
+ .doc-choice-group {
865
+ padding: 6px 12px 2px;
866
+ color: var(--doc-muted);
867
+ font-size: 12px;
868
+ font-weight: 500;
869
+ }
870
+
871
+ .doc-choice-group:not(:first-child) { margin-top: 4px; }
872
+
873
+ /* A <select> nobody styled: no frame, a light fill that darkens under the pointer, the browser's own
874
+ arrow at its right (kept whatever the page sets as border or background, which a drawn arrow would
875
+ lose). A class's or a block's own rule outweighs this (it has no weight); a list box (multiple) is
876
+ the browser's. */
877
+ :where(select:not([multiple], [size])) {
878
+ min-height: 28px;
879
+ padding: 0 4px 0 8px;
880
+ border: 0;
881
+ border-radius: 6px;
882
+ color: var(--doc-text);
883
+ background-color: var(--doc-hover);
884
+ font: inherit;
885
+ cursor: pointer;
886
+ }
887
+
888
+ :where(select:not([multiple], [size]):hover) { background-color: var(--doc-press); }
889
+
890
+ :where(select:not([multiple], [size]):focus-visible) {
891
+ outline: 2px solid var(--doc-accent);
892
+ outline-offset: 2px;
893
+ }
894
+
895
+ /* On paper a <select> is the words of its chosen option, no arrow, and the menu is never there. */
896
+ @media print {
897
+ select { appearance: none; background-image: none; }
898
+ .doc-choice { display: none; }
899
+ }
900
+
682
901
  /* 选项卡区块 (sheets.js), as Notion's tabs: a frame 16px round (1px, Notion's line) holding a row of
683
902
  pill tabs and the panel shown, 16px in; or, with .doc-sheet-shell--plain, no frame and no room
684
903
  inside it (the tabs and the panel at the flow's edge). A tab is a pill 32px high, its name 14px:
@@ -1387,7 +1606,7 @@ span.doc-link-mention-icon {
1387
1606
  :where(&:is(ol):has(> li[value]), & li > ol:has(> li[value])) > li::marker { color: var(--doc-list-marker); }
1388
1607
  }
1389
1608
 
1390
- & > :where(p, ul, ol, blockquote, h1, h2, h3, h4) :where(strong) { font-weight: 600; }
1609
+ & > :where(p, ul, ol, blockquote, h1, h2, h3, h4) :where(strong) { font-weight: 700; }
1391
1610
 
1392
1611
  /* A quote and a divider (in the flow, or held by one of its list items: the same look, there the
1393
1612
  list's one gap above it and none below, as any block an item holds, none at its sides). */
@@ -1543,7 +1762,7 @@ ol.doc-flow > li {
1543
1762
  border-radius: 8px;
1544
1763
  background: var(--doc-surface);
1545
1764
  box-shadow: none;
1546
- font-weight: 600; /* a step written the short way: its own words its title */
1765
+ font-weight: 700; /* a step written the short way: its own words its title, bold as a <strong> is (flow.css) */
1547
1766
  overflow-wrap: anywhere;
1548
1767
  break-inside: avoid;
1549
1768
  }
@@ -2076,7 +2295,6 @@ figure:is(.doc-image, .doc-file, .doc-bookmark, .doc-embed):not(:has(> *)) { dis
2076
2295
  border-radius: 6px;
2077
2296
  color: inherit;
2078
2297
  background: color-mix(in srgb, currentColor 8%, transparent);
2079
- box-shadow: inset 0 0 0 1px color-mix(in srgb, currentColor 9%, transparent);
2080
2298
  font: inherit;
2081
2299
  font-weight: inherit;
2082
2300
  line-height: inherit;
@@ -2416,18 +2634,19 @@ figure:is(.doc-image, .doc-file, .doc-bookmark, .doc-embed):not(:has(> *)) { dis
2416
2634
  .doc-table-wrap[data-doc-whole] { max-height: var(--doc-table-height, none); }
2417
2635
  .doc-table-wrap:has(> .doc-scrollbars[data-y]) { overscroll-behavior-block: none; }
2418
2636
 
2419
- /* The frame's scrollbars (tables.js): a layer stuck at the frame's top-left that takes no room,
2420
- with a rail along the right edge and one along the bottom for each axis that overflows
2421
- (data-y, data-x), each thumb 3px in from the frame's edge. tables.js sets each rail's place
2422
- (the part of the edge that scrolls: below the header, between the rounded corners) and its
2423
- track, thumb size and thumb offset (--doc-scrollbar-*). They show while the pointer is
2424
- over the frame or it scrolls. */
2637
+ /* The frame's scrollbars (tables.js): a layer stuck at the frame's top-left that takes no room (no
2638
+ height; as wide as the frame's inside, which it never makes wider, so that the frame's line is
2639
+ as wide as the frame in the same layout as the frame: below), with a rail along the right edge
2640
+ and one along the bottom for each axis that overflows (data-y, data-x), each thumb 3px in from
2641
+ the frame's edge. tables.js sets each rail's place (the part of the edge that scrolls: below the
2642
+ header, between the rounded corners) and its track, thumb size and thumb offset
2643
+ (--doc-scrollbar-*). They show while the pointer is over the frame or it scrolls. */
2425
2644
  .doc-scrollbars {
2426
2645
  position: sticky;
2427
2646
  top: 0;
2428
2647
  left: 0;
2429
2648
  z-index: 6;
2430
- width: 0;
2649
+ width: 100%;
2431
2650
  height: 0;
2432
2651
  }
2433
2652
  .doc-scrollbar {
@@ -2465,11 +2684,14 @@ figure:is(.doc-image, .doc-file, .doc-bookmark, .doc-embed):not(:has(> *)) { dis
2465
2684
  }
2466
2685
  .doc-scrollbar:is(:hover, [data-drag]) > .doc-scrollbar-thumb { background: var(--doc-scrollbar-thumb-active); }
2467
2686
  /* The frame's line above everything in the frame (a header row or column that sticks over the
2468
- outline too): as big as the frame (tables.js), on the layer stuck at its top-left. */
2687
+ outline too): as big as the frame, on the layer stuck at its top-left; as wide as the layer, so
2688
+ as the frame whenever the frame is laid out (a width read and written later by a script could
2689
+ disagree with it for a frame), as tall as tables.js reads the frame. */
2469
2690
  .doc-scrollbars-frame {
2470
2691
  position: absolute;
2471
2692
  top: 0;
2472
2693
  left: 0;
2694
+ width: 100%;
2473
2695
  box-sizing: border-box;
2474
2696
  border: 1px solid var(--doc-table-frame);
2475
2697
  border-radius: var(--doc-table-radius);
@@ -2560,6 +2782,12 @@ figure:is(.doc-image, .doc-file, .doc-bookmark, .doc-embed):not(:has(> *)) { dis
2560
2782
  .doc-table :is(td, th) > :is(ul, ol):last-child { margin-bottom: 0; }
2561
2783
  .doc-table :is(td, th) > :is(ul, ol) > li + li { margin-top: 2px; }
2562
2784
 
2785
+ /* A picture in a cell (单元格里的图片, an <img> amid its words): as wide as its width says (pixels; the
2786
+ page editor's drag of its edge writes it), with none at most 240px, never past its cell; its height
2787
+ by its own ratio, its middle on the line's, so a row grows with it. */
2788
+ .doc-table :is(td, th) img { max-width: 100%; height: auto; vertical-align: middle; }
2789
+ .doc-table :is(td, th) img:not([width]) { max-width: min(100%, 240px); }
2790
+
2563
2791
  .doc-table--auto { table-layout: fixed; max-width: none; }
2564
2792
  .doc-table [data-column-kind="compact"] { white-space: nowrap; word-break: normal; }
2565
2793
  .doc-table [data-column-kind="narrative"] { overflow-wrap: break-word; }
@@ -2630,7 +2858,7 @@ figure:is(.doc-image, .doc-file, .doc-bookmark, .doc-embed):not(:has(> *)) { dis
2630
2858
  (base.css), a fill over the whole cell (base.css's: a cell is square, and one that sticks wears it too, above), bold words (the words
2631
2859
  typed in it later too), and an alignment over the kit's own (a numeric column's centre), a vertical one (the kit's: top). A header
2632
2860
  row's look is these: .doc-highlight-gray and .doc-bold (a header column has none of its own). */
2633
- .doc-table :is(td, th).doc-bold { font-weight: 600; }
2861
+ .doc-table :is(td, th).doc-bold { font-weight: 700; }
2634
2862
  .doc-table :is(td, th).doc-align-left { text-align: left; }
2635
2863
  .doc-table :is(td, th).doc-align-center { text-align: center; }
2636
2864
  .doc-table :is(td, th).doc-align-right { text-align: right; }
@@ -2839,6 +3067,16 @@ figure:is(.doc-image, .doc-file, .doc-bookmark, .doc-embed):not(:has(> *)) { dis
2839
3067
  [data-doc-component] {
2840
3068
  margin: var(--doc-block-gap) 0;
2841
3069
  }
3070
+ /* [hidden] hides what is in an instance whatever display a block's style gave it: a control a block
3071
+ hides where nothing is written (an export: form.hidden = !context.canEdit()) stays hidden though its
3072
+ own rule says display: flex, which an author's rule on the class would otherwise win over the
3073
+ browser's [hidden] { display: none }. What a slot holds is the document's blocks, which keep their
3074
+ own rules (a Sheet panel, an empty figure the editor shows), so the rule stops at a slot. */
3075
+ @scope ([data-doc-component]) to ([data-doc-slot]) {
3076
+ :scope [hidden] {
3077
+ display: none !important;
3078
+ }
3079
+ }
2842
3080
  /* A slot holds the document's blocks: they read as in any flow (flow.css), the first and the last flush with it. */
2843
3081
  [data-doc-slot] > :where(:first-child) {
2844
3082
  margin-top: 0;