@janga/norna 0.7.18 → 0.7.22

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 (595) hide show
  1. package/README.md +22 -12
  2. package/astro.config.mjs +22 -0
  3. package/bin/norna-cli.mjs +6 -0
  4. package/package.json +45 -12
  5. package/schemas/category.schema.json +20 -0
  6. package/schemas/config.schema.json +16 -6
  7. package/schemas/content-frontmatter.schema.json +5 -5
  8. package/schemas/manifest.json +2 -1
  9. package/schemas/page-theme.schema.json +22 -22
  10. package/schemas/sitewide-content.schema.json +18 -18
  11. package/schemas/theme.schema.json +312 -146
  12. package/scripts/add-site-node.mjs +251 -0
  13. package/scripts/check-config.mjs +10 -2
  14. package/scripts/deploy-site.mjs +5 -8
  15. package/scripts/generate-images.mjs +11 -15
  16. package/scripts/generate-schemas.mjs +4 -1
  17. package/scripts/init-site.mjs +35 -0
  18. package/scripts/lib/astro-command.mjs +14 -9
  19. package/scripts/lib/editor-language-service.mjs +28 -177
  20. package/scripts/lib/heading-ids.mjs +3 -1
  21. package/scripts/lib/navigation-model.mjs +23 -17
  22. package/scripts/lib/norna-markdown-blocks.mjs +64 -145
  23. package/scripts/lib/norna-markdown-render-plugin.mjs +37 -0
  24. package/scripts/lib/object.mjs +28 -0
  25. package/scripts/lib/page-markdown.mjs +282 -0
  26. package/scripts/lib/presentation-contract.mjs +266 -0
  27. package/scripts/lib/presentation-palette-metadata.mjs +51 -0
  28. package/scripts/lib/presentation.mjs +526 -79
  29. package/scripts/lib/project-config.mjs +53 -6
  30. package/scripts/lib/schema-definitions.mjs +53 -13
  31. package/scripts/lib/schema-editor-metadata.mjs +107 -18
  32. package/scripts/lib/schema-value-definitions.mjs +24 -10
  33. package/scripts/lib/site-content.mjs +23 -238
  34. package/scripts/lib/site-paths.mjs +2 -3
  35. package/scripts/lib/site-structure.mjs +189 -0
  36. package/scripts/lib/theme-presets.mjs +75 -104
  37. package/scripts/lib/theme-profiles.mjs +221 -0
  38. package/scripts/lib/typography.mjs +220 -35
  39. package/scripts/lib/yaml-config.mjs +46 -6
  40. package/scripts/lib/yaml-indentation.mjs +86 -0
  41. package/scripts/show-typography.mjs +2 -3
  42. package/scripts/sync-content-sections.mjs +87 -76
  43. package/src/components/DisplaySettings.astro +107 -0
  44. package/src/components/ImageCarousel.astro +34 -13
  45. package/src/components/NavigationPageTree.astro +74 -43
  46. package/src/components/SectionNavigationScript.astro +56 -2
  47. package/src/components/SiteBreadcrumbs.astro +15 -12
  48. package/src/components/SiteNavigation.astro +92 -41
  49. package/src/components/SitePage.astro +35 -39
  50. package/src/components/SiteSection.astro +35 -191
  51. package/src/components/SiteTreeNavigation.astro +10 -9
  52. package/src/layouts/BaseLayout.astro +46 -6
  53. package/src/lib/generatedImages.ts +0 -7
  54. package/src/lib/readerPreferencesScript.mjs +141 -0
  55. package/src/lib/sectionContent.ts +119 -201
  56. package/src/lib/siteNavigation.ts +36 -18
  57. package/src/lib/sitePages.ts +91 -20
  58. package/src/pages/[...slug].astro +2 -2
  59. package/src/styles/global.css +759 -296
  60. package/starters/basic/README.md +2 -2
  61. package/docs/README.md +0 -137
  62. package/docs/assets/norna-dog-shelter.jpg +0 -0
  63. package/docs/commands.md +0 -189
  64. package/docs/configuration.md +0 -142
  65. package/docs/content.md +0 -351
  66. package/docs/design/command-organization.md +0 -414
  67. package/docs/design/navigation-and-theme-plan.md +0 -186
  68. package/docs/design/norna-diagram-design.md +0 -159
  69. package/docs/design/site-examples-structure.md +0 -119
  70. package/docs/engine-development.md +0 -215
  71. package/docs/getting-started.md +0 -206
  72. package/docs/how-to/embedded-site.md +0 -35
  73. package/docs/images-and-metadata.md +0 -188
  74. package/docs/local-development.md +0 -82
  75. package/docs/pages.md +0 -190
  76. package/docs/public-files.md +0 -118
  77. package/docs/publishing.md +0 -117
  78. package/docs/requirements.md +0 -54
  79. package/docs/site-files.md +0 -152
  80. package/docs/sitewide-content.md +0 -73
  81. package/docs/theme.md +0 -237
  82. package/docs/typography.md +0 -168
  83. package/examples/README.md +0 -49
  84. package/examples/complete-sites/dog-shelter-multi-page/.astro/collections/site.schema.json +0 -35
  85. package/examples/complete-sites/dog-shelter-multi-page/.astro/collections/sitewide.schema.json +0 -97
  86. package/examples/complete-sites/dog-shelter-multi-page/.astro/collections/theme.schema.json +0 -852
  87. package/examples/complete-sites/dog-shelter-multi-page/.astro/content-assets.mjs +0 -4
  88. package/examples/complete-sites/dog-shelter-multi-page/.astro/content-modules.mjs +0 -1
  89. package/examples/complete-sites/dog-shelter-multi-page/.astro/content.d.ts +0 -183
  90. package/examples/complete-sites/dog-shelter-multi-page/.astro/data-store.json +0 -1
  91. package/examples/complete-sites/dog-shelter-multi-page/.astro/dev-local.json +0 -8
  92. package/examples/complete-sites/dog-shelter-multi-page/.astro/dev.json +0 -13
  93. package/examples/complete-sites/dog-shelter-multi-page/.astro/dev.log +0 -36
  94. package/examples/complete-sites/dog-shelter-multi-page/.astro/settings.json +0 -5
  95. package/examples/complete-sites/dog-shelter-multi-page/.astro/types.d.ts +0 -2
  96. package/examples/complete-sites/dog-shelter-multi-page/README.md +0 -24
  97. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/_metadata.json +0 -74
  98. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro-B3JHJyiv.js +0 -434
  99. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro-B3JHJyiv.js.map +0 -1
  100. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro_n_aria-query.js +0 -6390
  101. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro_n_aria-query.js.map +0 -1
  102. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro_n_axobject-query.js +0 -2702
  103. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro_n_axobject-query.js.map +0 -1
  104. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro_n_html-escaper.js +0 -65
  105. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro_n_html-escaper.js.map +0 -1
  106. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +0 -455
  107. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +0 -1
  108. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/audit-C3SVr7dT.js +0 -1534
  109. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/audit-C3SVr7dT.js.map +0 -1
  110. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/highlight-BLtvqtzO.js +0 -48
  111. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/highlight-BLtvqtzO.js.map +0 -1
  112. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/icons-C92i61-2.js +0 -42
  113. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/icons-C92i61-2.js.map +0 -1
  114. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/package.json +0 -3
  115. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/rolldown-runtime-BvCyGRYZ.js +0 -4
  116. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/settings-v5GgKks_.js +0 -190
  117. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/settings-v5GgKks_.js.map +0 -1
  118. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/toolbar-BFvJVp26.js +0 -458
  119. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/toolbar-BFvJVp26.js.map +0 -1
  120. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/ui-library-Cd35oAvo.js +0 -1016
  121. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/ui-library-Cd35oAvo.js.map +0 -1
  122. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/window-vo3A6TMn.js +0 -32
  123. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/window-vo3A6TMn.js.map +0 -1
  124. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/xray-DwhzGckb.js +0 -111
  125. package/examples/complete-sites/dog-shelter-multi-page/node_modules/.vite/deps/xray-DwhzGckb.js.map +0 -1
  126. package/examples/complete-sites/dog-shelter-multi-page/site/.norna/generated-images.json +0 -98
  127. package/examples/complete-sites/dog-shelter-multi-page/site/config.yaml +0 -1
  128. package/examples/complete-sites/dog-shelter-multi-page/site/pages/000-home/content.md +0 -23
  129. package/examples/complete-sites/dog-shelter-multi-page/site/pages/000-home/images/shelter-dog.jpg +0 -0
  130. package/examples/complete-sites/dog-shelter-multi-page/site/pages/010-dogs/content.md +0 -21
  131. package/examples/complete-sites/dog-shelter-multi-page/site/pages/010-dogs/images/rex.jpg +0 -0
  132. package/examples/complete-sites/dog-shelter-multi-page/site/pages/010-dogs/images/rover.jpg +0 -0
  133. package/examples/complete-sites/dog-shelter-multi-page/site/pages/020-adopt/content.md +0 -22
  134. package/examples/complete-sites/dog-shelter-multi-page/site/pages/020-adopt/images/adoption-dog.jpg +0 -0
  135. package/examples/complete-sites/dog-shelter-multi-page/site/public/favicon.svg +0 -10
  136. package/examples/complete-sites/dog-shelter-multi-page/site/public/logo.svg +0 -9
  137. package/examples/complete-sites/dog-shelter-multi-page/site/public/robots.txt +0 -2
  138. package/examples/complete-sites/dog-shelter-multi-page/site/sitewide-content.yaml +0 -4
  139. package/examples/complete-sites/dog-shelter-multi-page/site/theme.yaml +0 -1
  140. package/examples/complete-sites/dog-shelter-single-page/.astro/collections/site.schema.json +0 -35
  141. package/examples/complete-sites/dog-shelter-single-page/.astro/collections/sitewide.schema.json +0 -97
  142. package/examples/complete-sites/dog-shelter-single-page/.astro/collections/theme.schema.json +0 -852
  143. package/examples/complete-sites/dog-shelter-single-page/.astro/content-assets.mjs +0 -4
  144. package/examples/complete-sites/dog-shelter-single-page/.astro/content-modules.mjs +0 -1
  145. package/examples/complete-sites/dog-shelter-single-page/.astro/content.d.ts +0 -183
  146. package/examples/complete-sites/dog-shelter-single-page/.astro/data-store.json +0 -1
  147. package/examples/complete-sites/dog-shelter-single-page/.astro/dev-local.json +0 -8
  148. package/examples/complete-sites/dog-shelter-single-page/.astro/dev.json +0 -13
  149. package/examples/complete-sites/dog-shelter-single-page/.astro/dev.log +0 -18
  150. package/examples/complete-sites/dog-shelter-single-page/.astro/settings.json +0 -5
  151. package/examples/complete-sites/dog-shelter-single-page/.astro/types.d.ts +0 -2
  152. package/examples/complete-sites/dog-shelter-single-page/README.md +0 -24
  153. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/_metadata.json +0 -74
  154. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro-B3JHJyiv.js +0 -434
  155. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro-B3JHJyiv.js.map +0 -1
  156. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro_n_aria-query.js +0 -6390
  157. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro_n_aria-query.js.map +0 -1
  158. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro_n_axobject-query.js +0 -2702
  159. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro_n_axobject-query.js.map +0 -1
  160. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro_n_html-escaper.js +0 -65
  161. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro_n_html-escaper.js.map +0 -1
  162. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +0 -455
  163. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +0 -1
  164. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/audit-C3SVr7dT.js +0 -1534
  165. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/audit-C3SVr7dT.js.map +0 -1
  166. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/highlight-BLtvqtzO.js +0 -48
  167. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/highlight-BLtvqtzO.js.map +0 -1
  168. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/icons-C92i61-2.js +0 -42
  169. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/icons-C92i61-2.js.map +0 -1
  170. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/package.json +0 -3
  171. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/rolldown-runtime-BvCyGRYZ.js +0 -4
  172. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/settings-v5GgKks_.js +0 -190
  173. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/settings-v5GgKks_.js.map +0 -1
  174. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/toolbar-BFvJVp26.js +0 -458
  175. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/toolbar-BFvJVp26.js.map +0 -1
  176. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/ui-library-Cd35oAvo.js +0 -1016
  177. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/ui-library-Cd35oAvo.js.map +0 -1
  178. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/window-vo3A6TMn.js +0 -32
  179. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/window-vo3A6TMn.js.map +0 -1
  180. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/xray-DwhzGckb.js +0 -111
  181. package/examples/complete-sites/dog-shelter-single-page/node_modules/.vite/deps/xray-DwhzGckb.js.map +0 -1
  182. package/examples/complete-sites/dog-shelter-single-page/site/.norna/generated-images.json +0 -50
  183. package/examples/complete-sites/dog-shelter-single-page/site/config.yaml +0 -1
  184. package/examples/complete-sites/dog-shelter-single-page/site/pages/000-home/content.md +0 -37
  185. package/examples/complete-sites/dog-shelter-single-page/site/pages/000-home/images/foster-dog.jpg +0 -0
  186. package/examples/complete-sites/dog-shelter-single-page/site/pages/000-home/images/rescue-dog.jpg +0 -0
  187. package/examples/complete-sites/dog-shelter-single-page/site/public/favicon.svg +0 -10
  188. package/examples/complete-sites/dog-shelter-single-page/site/public/logo.svg +0 -9
  189. package/examples/complete-sites/dog-shelter-single-page/site/public/robots.txt +0 -2
  190. package/examples/complete-sites/dog-shelter-single-page/site/sitewide-content.yaml +0 -4
  191. package/examples/complete-sites/dog-shelter-single-page/site/theme.yaml +0 -1
  192. package/examples/feature-demos/media-and-surfaces/.astro/collections/site.schema.json +0 -35
  193. package/examples/feature-demos/media-and-surfaces/.astro/collections/sitewide.schema.json +0 -97
  194. package/examples/feature-demos/media-and-surfaces/.astro/collections/theme.schema.json +0 -844
  195. package/examples/feature-demos/media-and-surfaces/.astro/content-assets.mjs +0 -4
  196. package/examples/feature-demos/media-and-surfaces/.astro/content-modules.mjs +0 -1
  197. package/examples/feature-demos/media-and-surfaces/.astro/content.d.ts +0 -183
  198. package/examples/feature-demos/media-and-surfaces/.astro/data-store.json +0 -1
  199. package/examples/feature-demos/media-and-surfaces/.astro/dev.log +0 -14
  200. package/examples/feature-demos/media-and-surfaces/.astro/settings.json +0 -5
  201. package/examples/feature-demos/media-and-surfaces/.astro/types.d.ts +0 -2
  202. package/examples/feature-demos/media-and-surfaces/README.md +0 -21
  203. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/_metadata.json +0 -80
  204. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro-B3JHJyiv.js +0 -434
  205. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro-B3JHJyiv.js.map +0 -1
  206. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro_n_aria-query.js +0 -6390
  207. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro_n_aria-query.js.map +0 -1
  208. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro_n_axobject-query.js +0 -2702
  209. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro_n_axobject-query.js.map +0 -1
  210. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro_n_html-escaper.js +0 -65
  211. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro_n_html-escaper.js.map +0 -1
  212. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +0 -455
  213. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +0 -1
  214. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/audit-C3SVr7dT.js +0 -1534
  215. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/audit-C3SVr7dT.js.map +0 -1
  216. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/embla-carousel.js +0 -1389
  217. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/embla-carousel.js.map +0 -1
  218. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/highlight-BLtvqtzO.js +0 -48
  219. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/highlight-BLtvqtzO.js.map +0 -1
  220. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/icons-C92i61-2.js +0 -42
  221. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/icons-C92i61-2.js.map +0 -1
  222. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/package.json +0 -3
  223. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/rolldown-runtime-BvCyGRYZ.js +0 -4
  224. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/settings-v5GgKks_.js +0 -190
  225. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/settings-v5GgKks_.js.map +0 -1
  226. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/toolbar-BFvJVp26.js +0 -458
  227. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/toolbar-BFvJVp26.js.map +0 -1
  228. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/ui-library-Cd35oAvo.js +0 -1016
  229. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/ui-library-Cd35oAvo.js.map +0 -1
  230. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/window-vo3A6TMn.js +0 -32
  231. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/window-vo3A6TMn.js.map +0 -1
  232. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/xray-DwhzGckb.js +0 -111
  233. package/examples/feature-demos/media-and-surfaces/node_modules/.vite/deps/xray-DwhzGckb.js.map +0 -1
  234. package/examples/feature-demos/media-and-surfaces/site/.norna/generated-images.json +0 -66
  235. package/examples/feature-demos/media-and-surfaces/site/config.yaml +0 -1
  236. package/examples/feature-demos/media-and-surfaces/site/pages/000-home/content.md +0 -15
  237. package/examples/feature-demos/media-and-surfaces/site/pages/010-media/content.md +0 -71
  238. package/examples/feature-demos/media-and-surfaces/site/pages/010-media/images/card-carousel.svg +0 -11
  239. package/examples/feature-demos/media-and-surfaces/site/pages/010-media/images/card-stack.svg +0 -9
  240. package/examples/feature-demos/media-and-surfaces/site/pages/010-media/images/card-surfaces.svg +0 -8
  241. package/examples/feature-demos/media-and-surfaces/site/pages/010-media/images/carousel-one.svg +0 -8
  242. package/examples/feature-demos/media-and-surfaces/site/pages/010-media/images/carousel-three.svg +0 -13
  243. package/examples/feature-demos/media-and-surfaces/site/pages/010-media/images/carousel-two.svg +0 -8
  244. package/examples/feature-demos/media-and-surfaces/site/pages/010-media/images/stack-one.svg +0 -8
  245. package/examples/feature-demos/media-and-surfaces/site/pages/010-media/images/stack-two.svg +0 -9
  246. package/examples/feature-demos/media-and-surfaces/site/pages/020-surfaces/content.md +0 -42
  247. package/examples/feature-demos/media-and-surfaces/site/pages/020-surfaces/theme.yaml +0 -2
  248. package/examples/feature-demos/media-and-surfaces/site/public/robots.txt +0 -2
  249. package/examples/feature-demos/media-and-surfaces/site/sitewide-content.yaml +0 -2
  250. package/examples/feature-demos/media-and-surfaces/site/theme.yaml +0 -1
  251. package/examples/feature-demos/sitewide-content/.astro/collections/site.schema.json +0 -59
  252. package/examples/feature-demos/sitewide-content/.astro/collections/sitewide.schema.json +0 -138
  253. package/examples/feature-demos/sitewide-content/.astro/collections/theme.schema.json +0 -755
  254. package/examples/feature-demos/sitewide-content/.astro/content-assets.mjs +0 -1
  255. package/examples/feature-demos/sitewide-content/.astro/content-modules.mjs +0 -1
  256. package/examples/feature-demos/sitewide-content/.astro/content.d.ts +0 -183
  257. package/examples/feature-demos/sitewide-content/.astro/data-store.json +0 -1
  258. package/examples/feature-demos/sitewide-content/.astro/dev.json +0 -13
  259. package/examples/feature-demos/sitewide-content/.astro/dev.log +0 -18
  260. package/examples/feature-demos/sitewide-content/.astro/settings.json +0 -5
  261. package/examples/feature-demos/sitewide-content/.astro/types.d.ts +0 -2
  262. package/examples/feature-demos/sitewide-content/README.md +0 -26
  263. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/_metadata.json +0 -74
  264. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro-B3JHJyiv.js +0 -434
  265. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro-B3JHJyiv.js.map +0 -1
  266. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro_n_aria-query.js +0 -6390
  267. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro_n_aria-query.js.map +0 -1
  268. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro_n_axobject-query.js +0 -2702
  269. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro_n_axobject-query.js.map +0 -1
  270. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro_n_html-escaper.js +0 -65
  271. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro_n_html-escaper.js.map +0 -1
  272. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +0 -455
  273. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +0 -1
  274. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/audit-C3SVr7dT.js +0 -1534
  275. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/audit-C3SVr7dT.js.map +0 -1
  276. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/highlight-BLtvqtzO.js +0 -48
  277. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/highlight-BLtvqtzO.js.map +0 -1
  278. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/icons-C92i61-2.js +0 -42
  279. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/icons-C92i61-2.js.map +0 -1
  280. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/package.json +0 -3
  281. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/rolldown-runtime-BvCyGRYZ.js +0 -4
  282. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/settings-v5GgKks_.js +0 -190
  283. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/settings-v5GgKks_.js.map +0 -1
  284. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/toolbar-BFvJVp26.js +0 -458
  285. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/toolbar-BFvJVp26.js.map +0 -1
  286. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/ui-library-Cd35oAvo.js +0 -1016
  287. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/ui-library-Cd35oAvo.js.map +0 -1
  288. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/window-vo3A6TMn.js +0 -32
  289. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/window-vo3A6TMn.js.map +0 -1
  290. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/xray-DwhzGckb.js +0 -111
  291. package/examples/feature-demos/sitewide-content/node_modules/.vite/deps/xray-DwhzGckb.js.map +0 -1
  292. package/examples/feature-demos/sitewide-content/site/.norna/generated-images.json +0 -1
  293. package/examples/feature-demos/sitewide-content/site/config.yaml +0 -1
  294. package/examples/feature-demos/sitewide-content/site/pages/000-home/content.md +0 -17
  295. package/examples/feature-demos/sitewide-content/site/pages/010-logo-and-navigation/content.md +0 -17
  296. package/examples/feature-demos/sitewide-content/site/pages/020-notices/content.md +0 -23
  297. package/examples/feature-demos/sitewide-content/site/pages/030-footer/content.md +0 -18
  298. package/examples/feature-demos/sitewide-content/site/public/logo.svg +0 -6
  299. package/examples/feature-demos/sitewide-content/site/public/robots.txt +0 -2
  300. package/examples/feature-demos/sitewide-content/site/sitewide-content.yaml +0 -14
  301. package/examples/feature-demos/sitewide-content/site/theme.yaml +0 -1
  302. package/examples/feature-demos/theme-preset-documentation/README.md +0 -16
  303. package/examples/feature-demos/theme-preset-documentation/site/.norna/generated-images.json +0 -74
  304. package/examples/feature-demos/theme-preset-documentation/site/config.yaml +0 -1
  305. package/examples/feature-demos/theme-preset-documentation/site/pages/000-home/content.md +0 -30
  306. package/examples/feature-demos/theme-preset-documentation/site/pages/000-home/images/black-schnauzer.jpg +0 -0
  307. package/examples/feature-demos/theme-preset-documentation/site/pages/000-home/images/retriever-portrait.jpg +0 -0
  308. package/examples/feature-demos/theme-preset-documentation/site/pages/000-home/images/schnauzer-portrait.jpg +0 -0
  309. package/examples/feature-demos/theme-preset-documentation/site/public/robots.txt +0 -2
  310. package/examples/feature-demos/theme-preset-documentation/site/sitewide-content.yaml +0 -3
  311. package/examples/feature-demos/theme-preset-documentation/site/theme.yaml +0 -1
  312. package/examples/feature-demos/theme-preset-portfolio/README.md +0 -16
  313. package/examples/feature-demos/theme-preset-portfolio/site/.norna/generated-images.json +0 -74
  314. package/examples/feature-demos/theme-preset-portfolio/site/config.yaml +0 -1
  315. package/examples/feature-demos/theme-preset-portfolio/site/pages/000-home/content.md +0 -31
  316. package/examples/feature-demos/theme-preset-portfolio/site/pages/000-home/images/puppy-portrait.jpg +0 -0
  317. package/examples/feature-demos/theme-preset-portfolio/site/pages/000-home/images/shepherd-portrait.jpg +0 -0
  318. package/examples/feature-demos/theme-preset-portfolio/site/pages/000-home/images/white-puppy.jpg +0 -0
  319. package/examples/feature-demos/theme-preset-portfolio/site/public/robots.txt +0 -2
  320. package/examples/feature-demos/theme-preset-portfolio/site/sitewide-content.yaml +0 -3
  321. package/examples/feature-demos/theme-preset-portfolio/site/theme.yaml +0 -1
  322. package/examples/feature-demos/theme-preset-project/.astro/collections/routeTheme.schema.json +0 -746
  323. package/examples/feature-demos/theme-preset-project/.astro/collections/site.schema.json +0 -59
  324. package/examples/feature-demos/theme-preset-project/.astro/collections/sitewide.schema.json +0 -138
  325. package/examples/feature-demos/theme-preset-project/.astro/collections/theme.schema.json +0 -755
  326. package/examples/feature-demos/theme-preset-project/.astro/content-assets.mjs +0 -4
  327. package/examples/feature-demos/theme-preset-project/.astro/content-modules.mjs +0 -1
  328. package/examples/feature-demos/theme-preset-project/.astro/content.d.ts +0 -183
  329. package/examples/feature-demos/theme-preset-project/.astro/data-store.json +0 -1
  330. package/examples/feature-demos/theme-preset-project/.astro/dev-local.json +0 -8
  331. package/examples/feature-demos/theme-preset-project/.astro/dev.json +0 -15
  332. package/examples/feature-demos/theme-preset-project/.astro/dev.log +0 -164
  333. package/examples/feature-demos/theme-preset-project/.astro/settings.json +0 -5
  334. package/examples/feature-demos/theme-preset-project/.astro/types.d.ts +0 -2
  335. package/examples/feature-demos/theme-preset-project/README.md +0 -16
  336. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/_metadata.json +0 -80
  337. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro-D_GIpJIE.js +0 -434
  338. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro-D_GIpJIE.js.map +0 -1
  339. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro_n_aria-query.js +0 -6390
  340. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro_n_aria-query.js.map +0 -1
  341. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro_n_axobject-query.js +0 -2702
  342. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro_n_axobject-query.js.map +0 -1
  343. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro_n_html-escaper.js +0 -65
  344. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro_n_html-escaper.js.map +0 -1
  345. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +0 -455
  346. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +0 -1
  347. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/audit-DM9Hkl5B.js +0 -1534
  348. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/audit-DM9Hkl5B.js.map +0 -1
  349. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/embla-carousel.js +0 -1389
  350. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/embla-carousel.js.map +0 -1
  351. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/highlight-DnZ1ULOL.js +0 -48
  352. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/highlight-DnZ1ULOL.js.map +0 -1
  353. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/icons-RyebKi45.js +0 -42
  354. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/icons-RyebKi45.js.map +0 -1
  355. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/package.json +0 -3
  356. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/rolldown-runtime-BvCyGRYZ.js +0 -4
  357. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/settings-DaU-gNnK.js +0 -190
  358. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/settings-DaU-gNnK.js.map +0 -1
  359. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/toolbar-63PA619H.js +0 -458
  360. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/toolbar-63PA619H.js.map +0 -1
  361. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/ui-library--bkcNSYz.js +0 -1016
  362. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/ui-library--bkcNSYz.js.map +0 -1
  363. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/window-jPkpKVcy.js +0 -32
  364. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/window-jPkpKVcy.js.map +0 -1
  365. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/xray-BXCHpEJP.js +0 -111
  366. package/examples/feature-demos/theme-preset-project/node_modules/.vite/deps/xray-BXCHpEJP.js.map +0 -1
  367. package/examples/feature-demos/theme-preset-project/site/.norna/generated-images.json +0 -74
  368. package/examples/feature-demos/theme-preset-project/site/config.yaml +0 -1
  369. package/examples/feature-demos/theme-preset-project/site/pages/000-home/content.md +0 -31
  370. package/examples/feature-demos/theme-preset-project/site/pages/000-home/images/boxer-portrait.jpg +0 -0
  371. package/examples/feature-demos/theme-preset-project/site/pages/000-home/images/grass-puppy.jpg +0 -0
  372. package/examples/feature-demos/theme-preset-project/site/pages/000-home/images/grey-street-dog.jpg +0 -0
  373. package/examples/feature-demos/theme-preset-project/site/public/robots.txt +0 -2
  374. package/examples/feature-demos/theme-preset-project/site/sitewide-content.yaml +0 -3
  375. package/examples/feature-demos/theme-preset-project/site/theme.yaml +0 -1
  376. package/examples/feature-demos/theme-preset-statement/README.md +0 -16
  377. package/examples/feature-demos/theme-preset-statement/site/.norna/generated-images.json +0 -74
  378. package/examples/feature-demos/theme-preset-statement/site/config.yaml +0 -1
  379. package/examples/feature-demos/theme-preset-statement/site/pages/000-home/content.md +0 -31
  380. package/examples/feature-demos/theme-preset-statement/site/pages/000-home/images/black-pedigree.jpg +0 -0
  381. package/examples/feature-demos/theme-preset-statement/site/pages/000-home/images/sheepdog-grass.jpg +0 -0
  382. package/examples/feature-demos/theme-preset-statement/site/pages/000-home/images/sheepdog-wide.jpg +0 -0
  383. package/examples/feature-demos/theme-preset-statement/site/public/robots.txt +0 -2
  384. package/examples/feature-demos/theme-preset-statement/site/sitewide-content.yaml +0 -3
  385. package/examples/feature-demos/theme-preset-statement/site/theme.yaml +0 -1
  386. package/fixtures/basic/site/.norna/generated-images.json +0 -1
  387. package/fixtures/basic/site/config.yaml +0 -1
  388. package/fixtures/basic/site/pages/000-home/content.md +0 -14
  389. package/fixtures/basic/site/pages/000-home/images/.gitkeep +0 -1
  390. package/fixtures/basic/site/public/robots.txt +0 -2
  391. package/fixtures/basic/site/sitewide-content.yaml +0 -3
  392. package/fixtures/basic/site/theme.yaml +0 -1
  393. package/fixtures/content-model-v2/.astro/collections/site.schema.json +0 -776
  394. package/fixtures/content-model-v2/.astro/collections/theme.schema.json +0 -668
  395. package/fixtures/content-model-v2/.astro/content-assets.mjs +0 -4
  396. package/fixtures/content-model-v2/.astro/content-modules.mjs +0 -1
  397. package/fixtures/content-model-v2/.astro/content.d.ts +0 -175
  398. package/fixtures/content-model-v2/.astro/data-store.json +0 -1
  399. package/fixtures/content-model-v2/.astro/dev-local.json +0 -8
  400. package/fixtures/content-model-v2/.astro/dev.json +0 -13
  401. package/fixtures/content-model-v2/.astro/dev.log +0 -231
  402. package/fixtures/content-model-v2/.astro/settings.json +0 -5
  403. package/fixtures/content-model-v2/.astro/types.d.ts +0 -2
  404. package/fixtures/content-model-v2/dist/_astro/GalleryGrid.astro_astro_type_script_index_0_lang.B0kxDyGz.js +0 -1
  405. package/fixtures/content-model-v2/dist/_astro/SitePage.BbfZub4g.css +0 -1
  406. package/fixtures/content-model-v2/dist/guide/index.html +0 -3
  407. package/fixtures/content-model-v2/dist/images/generated/intro/detail-27930b14-480.webp +0 -0
  408. package/fixtures/content-model-v2/dist/images/generated/intro/detail-27930b14-768.webp +0 -0
  409. package/fixtures/content-model-v2/dist/images/generated/intro/detail-27930b14-971.webp +0 -0
  410. package/fixtures/content-model-v2/dist/images/generated/intro/duplicate-49c98f6c-480.webp +0 -0
  411. package/fixtures/content-model-v2/dist/images/generated/intro/duplicate-49c98f6c-768.webp +0 -0
  412. package/fixtures/content-model-v2/dist/images/generated/intro/duplicate-49c98f6c-971.webp +0 -0
  413. package/fixtures/content-model-v2/dist/images/generated/intro/hero-6d588a83-480.webp +0 -0
  414. package/fixtures/content-model-v2/dist/images/generated/intro/hero-6d588a83-768.webp +0 -0
  415. package/fixtures/content-model-v2/dist/images/generated/intro/hero-6d588a83-971.webp +0 -0
  416. package/fixtures/content-model-v2/dist/images/generated/plain/image-3770d763-1080.webp +0 -0
  417. package/fixtures/content-model-v2/dist/images/generated/plain/image-3770d763-1440.webp +0 -0
  418. package/fixtures/content-model-v2/dist/images/generated/plain/image-3770d763-1600.webp +0 -0
  419. package/fixtures/content-model-v2/dist/images/generated/plain/image-3770d763-480.webp +0 -0
  420. package/fixtures/content-model-v2/dist/images/generated/plain/image-3770d763-768.webp +0 -0
  421. package/fixtures/content-model-v2/dist/images/generated/routes/010-guide/images/intro/duplicate-5cf614d2-480.webp +0 -0
  422. package/fixtures/content-model-v2/dist/images/generated/routes/010-guide/images/intro/duplicate-5cf614d2-768.webp +0 -0
  423. package/fixtures/content-model-v2/dist/images/generated/routes/010-guide/images/intro/duplicate-5cf614d2-960.webp +0 -0
  424. package/fixtures/content-model-v2/dist/images/generated/timed/slide-one-3770d763-1080.webp +0 -0
  425. package/fixtures/content-model-v2/dist/images/generated/timed/slide-one-3770d763-1440.webp +0 -0
  426. package/fixtures/content-model-v2/dist/images/generated/timed/slide-one-3770d763-1600.webp +0 -0
  427. package/fixtures/content-model-v2/dist/images/generated/timed/slide-one-3770d763-480.webp +0 -0
  428. package/fixtures/content-model-v2/dist/images/generated/timed/slide-one-3770d763-768.webp +0 -0
  429. package/fixtures/content-model-v2/dist/images/generated/timed/slide-three-5bdec65e-1080.webp +0 -0
  430. package/fixtures/content-model-v2/dist/images/generated/timed/slide-three-5bdec65e-1440.webp +0 -0
  431. package/fixtures/content-model-v2/dist/images/generated/timed/slide-three-5bdec65e-1600.webp +0 -0
  432. package/fixtures/content-model-v2/dist/images/generated/timed/slide-three-5bdec65e-480.webp +0 -0
  433. package/fixtures/content-model-v2/dist/images/generated/timed/slide-three-5bdec65e-768.webp +0 -0
  434. package/fixtures/content-model-v2/dist/images/generated/timed/slide-two-26c08aee-1080.webp +0 -0
  435. package/fixtures/content-model-v2/dist/images/generated/timed/slide-two-26c08aee-1440.webp +0 -0
  436. package/fixtures/content-model-v2/dist/images/generated/timed/slide-two-26c08aee-1600.webp +0 -0
  437. package/fixtures/content-model-v2/dist/images/generated/timed/slide-two-26c08aee-480.webp +0 -0
  438. package/fixtures/content-model-v2/dist/images/generated/timed/slide-two-26c08aee-768.webp +0 -0
  439. package/fixtures/content-model-v2/dist/index.html +0 -8
  440. package/fixtures/content-model-v2/node_modules/.vite/deps/_metadata.json +0 -80
  441. package/fixtures/content-model-v2/node_modules/.vite/deps/astro-D_GIpJIE.js +0 -434
  442. package/fixtures/content-model-v2/node_modules/.vite/deps/astro-D_GIpJIE.js.map +0 -1
  443. package/fixtures/content-model-v2/node_modules/.vite/deps/astro_n_aria-query.js +0 -6390
  444. package/fixtures/content-model-v2/node_modules/.vite/deps/astro_n_aria-query.js.map +0 -1
  445. package/fixtures/content-model-v2/node_modules/.vite/deps/astro_n_axobject-query.js +0 -2702
  446. package/fixtures/content-model-v2/node_modules/.vite/deps/astro_n_axobject-query.js.map +0 -1
  447. package/fixtures/content-model-v2/node_modules/.vite/deps/astro_n_html-escaper.js +0 -65
  448. package/fixtures/content-model-v2/node_modules/.vite/deps/astro_n_html-escaper.js.map +0 -1
  449. package/fixtures/content-model-v2/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +0 -455
  450. package/fixtures/content-model-v2/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +0 -1
  451. package/fixtures/content-model-v2/node_modules/.vite/deps/audit-DM9Hkl5B.js +0 -1534
  452. package/fixtures/content-model-v2/node_modules/.vite/deps/audit-DM9Hkl5B.js.map +0 -1
  453. package/fixtures/content-model-v2/node_modules/.vite/deps/embla-carousel.js +0 -1389
  454. package/fixtures/content-model-v2/node_modules/.vite/deps/embla-carousel.js.map +0 -1
  455. package/fixtures/content-model-v2/node_modules/.vite/deps/highlight-DnZ1ULOL.js +0 -48
  456. package/fixtures/content-model-v2/node_modules/.vite/deps/highlight-DnZ1ULOL.js.map +0 -1
  457. package/fixtures/content-model-v2/node_modules/.vite/deps/icons-RyebKi45.js +0 -42
  458. package/fixtures/content-model-v2/node_modules/.vite/deps/icons-RyebKi45.js.map +0 -1
  459. package/fixtures/content-model-v2/node_modules/.vite/deps/package.json +0 -3
  460. package/fixtures/content-model-v2/node_modules/.vite/deps/rolldown-runtime-BvCyGRYZ.js +0 -4
  461. package/fixtures/content-model-v2/node_modules/.vite/deps/settings-DaU-gNnK.js +0 -190
  462. package/fixtures/content-model-v2/node_modules/.vite/deps/settings-DaU-gNnK.js.map +0 -1
  463. package/fixtures/content-model-v2/node_modules/.vite/deps/toolbar-63PA619H.js +0 -458
  464. package/fixtures/content-model-v2/node_modules/.vite/deps/toolbar-63PA619H.js.map +0 -1
  465. package/fixtures/content-model-v2/node_modules/.vite/deps/ui-library--bkcNSYz.js +0 -1016
  466. package/fixtures/content-model-v2/node_modules/.vite/deps/ui-library--bkcNSYz.js.map +0 -1
  467. package/fixtures/content-model-v2/node_modules/.vite/deps/window-jPkpKVcy.js +0 -32
  468. package/fixtures/content-model-v2/node_modules/.vite/deps/window-jPkpKVcy.js.map +0 -1
  469. package/fixtures/content-model-v2/node_modules/.vite/deps/xray-BXCHpEJP.js +0 -111
  470. package/fixtures/content-model-v2/node_modules/.vite/deps/xray-BXCHpEJP.js.map +0 -1
  471. package/fixtures/content-model-v2/site/.norna/generated-images.json +0 -210
  472. package/fixtures/content-model-v2/site/config.yaml +0 -1
  473. package/fixtures/content-model-v2/site/pages/000-home/content.md +0 -79
  474. package/fixtures/content-model-v2/site/pages/000-home/images/adopt.svg +0 -9
  475. package/fixtures/content-model-v2/site/pages/000-home/images/detail.jpg +0 -0
  476. package/fixtures/content-model-v2/site/pages/000-home/images/duplicate.jpg +0 -0
  477. package/fixtures/content-model-v2/site/pages/000-home/images/foster.svg +0 -12
  478. package/fixtures/content-model-v2/site/pages/000-home/images/hero.jpg +0 -0
  479. package/fixtures/content-model-v2/site/pages/000-home/images/image.jpg +0 -0
  480. package/fixtures/content-model-v2/site/pages/000-home/images/slide-one.jpg +0 -0
  481. package/fixtures/content-model-v2/site/pages/000-home/images/slide-three.jpg +0 -0
  482. package/fixtures/content-model-v2/site/pages/000-home/images/slide-two.jpg +0 -0
  483. package/fixtures/content-model-v2/site/pages/010-guide/content.md +0 -18
  484. package/fixtures/content-model-v2/site/pages/010-guide/images/duplicate.jpg +0 -0
  485. package/fixtures/content-model-v2/site/theme.yaml +0 -4
  486. package/fixtures/nested-pages/.astro/collections/site.schema.json +0 -35
  487. package/fixtures/nested-pages/.astro/collections/sitewide.schema.json +0 -97
  488. package/fixtures/nested-pages/.astro/collections/theme.schema.json +0 -844
  489. package/fixtures/nested-pages/.astro/content-assets.mjs +0 -4
  490. package/fixtures/nested-pages/.astro/content-modules.mjs +0 -1
  491. package/fixtures/nested-pages/.astro/content.d.ts +0 -183
  492. package/fixtures/nested-pages/.astro/data-store.json +0 -1
  493. package/fixtures/nested-pages/.astro/dev-local.json +0 -8
  494. package/fixtures/nested-pages/.astro/dev.log +0 -1128
  495. package/fixtures/nested-pages/.astro/settings.json +0 -5
  496. package/fixtures/nested-pages/.astro/types.d.ts +0 -2
  497. package/fixtures/nested-pages/node_modules/.vite/deps/_metadata.json +0 -74
  498. package/fixtures/nested-pages/node_modules/.vite/deps/astro-D_GIpJIE.js +0 -434
  499. package/fixtures/nested-pages/node_modules/.vite/deps/astro-D_GIpJIE.js.map +0 -1
  500. package/fixtures/nested-pages/node_modules/.vite/deps/astro_n_aria-query.js +0 -6390
  501. package/fixtures/nested-pages/node_modules/.vite/deps/astro_n_aria-query.js.map +0 -1
  502. package/fixtures/nested-pages/node_modules/.vite/deps/astro_n_axobject-query.js +0 -2702
  503. package/fixtures/nested-pages/node_modules/.vite/deps/astro_n_axobject-query.js.map +0 -1
  504. package/fixtures/nested-pages/node_modules/.vite/deps/astro_n_html-escaper.js +0 -65
  505. package/fixtures/nested-pages/node_modules/.vite/deps/astro_n_html-escaper.js.map +0 -1
  506. package/fixtures/nested-pages/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js +0 -455
  507. package/fixtures/nested-pages/node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map +0 -1
  508. package/fixtures/nested-pages/node_modules/.vite/deps/audit-DM9Hkl5B.js +0 -1534
  509. package/fixtures/nested-pages/node_modules/.vite/deps/audit-DM9Hkl5B.js.map +0 -1
  510. package/fixtures/nested-pages/node_modules/.vite/deps/highlight-DnZ1ULOL.js +0 -48
  511. package/fixtures/nested-pages/node_modules/.vite/deps/highlight-DnZ1ULOL.js.map +0 -1
  512. package/fixtures/nested-pages/node_modules/.vite/deps/icons-RyebKi45.js +0 -42
  513. package/fixtures/nested-pages/node_modules/.vite/deps/icons-RyebKi45.js.map +0 -1
  514. package/fixtures/nested-pages/node_modules/.vite/deps/package.json +0 -3
  515. package/fixtures/nested-pages/node_modules/.vite/deps/rolldown-runtime-BvCyGRYZ.js +0 -4
  516. package/fixtures/nested-pages/node_modules/.vite/deps/settings-DaU-gNnK.js +0 -190
  517. package/fixtures/nested-pages/node_modules/.vite/deps/settings-DaU-gNnK.js.map +0 -1
  518. package/fixtures/nested-pages/node_modules/.vite/deps/toolbar-63PA619H.js +0 -458
  519. package/fixtures/nested-pages/node_modules/.vite/deps/toolbar-63PA619H.js.map +0 -1
  520. package/fixtures/nested-pages/node_modules/.vite/deps/ui-library--bkcNSYz.js +0 -1016
  521. package/fixtures/nested-pages/node_modules/.vite/deps/ui-library--bkcNSYz.js.map +0 -1
  522. package/fixtures/nested-pages/node_modules/.vite/deps/window-jPkpKVcy.js +0 -32
  523. package/fixtures/nested-pages/node_modules/.vite/deps/window-jPkpKVcy.js.map +0 -1
  524. package/fixtures/nested-pages/node_modules/.vite/deps/xray-BXCHpEJP.js +0 -111
  525. package/fixtures/nested-pages/node_modules/.vite/deps/xray-BXCHpEJP.js.map +0 -1
  526. package/fixtures/nested-pages/site/.norna/generated-images.json +0 -10
  527. package/fixtures/nested-pages/site/config.yaml +0 -3
  528. package/fixtures/nested-pages/site/pages/000-home/content.md +0 -15
  529. package/fixtures/nested-pages/site/pages/010-guides/content.md +0 -15
  530. package/fixtures/nested-pages/site/pages/010-guides/pages/010-installation/content.md +0 -21
  531. package/fixtures/nested-pages/site/pages/010-guides/pages/010-installation/images/diagram.svg +0 -21
  532. package/fixtures/nested-pages/site/pages/010-guides/pages/010-installation/pages/010-macos/content.md +0 -18
  533. package/fixtures/nested-pages/site/pages/010-guides/pages/010-installation/theme.yaml +0 -2
  534. package/fixtures/nested-pages/site/pages/010-guides/pages/020-workflows/content.md +0 -11
  535. package/fixtures/nested-pages/site/pages/010-guides/pages/030-release-notes/content.md +0 -9
  536. package/fixtures/nested-pages/site/pages/010-guides/pages/040-configuration/content.md +0 -3
  537. package/fixtures/nested-pages/site/pages/010-guides/pages/050-content/content.md +0 -3
  538. package/fixtures/nested-pages/site/pages/010-guides/pages/060-themes/content.md +0 -3
  539. package/fixtures/nested-pages/site/pages/010-guides/pages/070-images/content.md +0 -3
  540. package/fixtures/nested-pages/site/pages/010-guides/pages/080-cards/content.md +0 -3
  541. package/fixtures/nested-pages/site/pages/010-guides/pages/090-notes/content.md +0 -3
  542. package/fixtures/nested-pages/site/pages/010-guides/pages/100-validation/content.md +0 -3
  543. package/fixtures/nested-pages/site/pages/010-guides/pages/110-synchronization/content.md +0 -3
  544. package/fixtures/nested-pages/site/pages/010-guides/pages/120-building/content.md +0 -3
  545. package/fixtures/nested-pages/site/pages/010-guides/pages/130-publishing/content.md +0 -3
  546. package/fixtures/nested-pages/site/pages/010-guides/pages/140-troubleshooting/content.md +0 -3
  547. package/fixtures/nested-pages/site/pages/010-guides/pages/150-migration/content.md +0 -3
  548. package/fixtures/nested-pages/site/pages/010-guides/pages/160-accessibility/content.md +0 -3
  549. package/fixtures/nested-pages/site/pages/010-guides/pages/170-performance/content.md +0 -3
  550. package/fixtures/nested-pages/site/pages/010-guides/pages/180-security/content.md +0 -3
  551. package/fixtures/nested-pages/site/pages/010-guides/pages/190-localization/content.md +0 -3
  552. package/fixtures/nested-pages/site/pages/010-guides/pages/200-upgrading/content.md +0 -3
  553. package/fixtures/nested-pages/site/pages/010-guides/pages/210-faq/content.md +0 -3
  554. package/fixtures/nested-pages/site/pages/010-guides/theme.yaml +0 -7
  555. package/fixtures/nested-pages/site/pages/020-reference/content.md +0 -10
  556. package/fixtures/nested-pages/site/pages/020-reference/pages/010-installation/content.md +0 -11
  557. package/fixtures/nested-pages/site/theme.yaml +0 -1
  558. package/scripts/build-pages.mjs +0 -69
  559. package/scripts/lib/example-sites.mjs +0 -49
  560. package/scripts/lib/frontmatter-yaml.mjs +0 -113
  561. package/scripts/lib/git-status.mjs +0 -7
  562. package/scripts/release.mjs +0 -153
  563. package/scripts/test-banner-visibility.mjs +0 -80
  564. package/scripts/test-ci-lockfile.mjs +0 -65
  565. package/scripts/test-cli-discovery.mjs +0 -124
  566. package/scripts/test-client-javascript.mjs +0 -225
  567. package/scripts/test-content-check.mjs +0 -621
  568. package/scripts/test-content-model-v2.mjs +0 -1693
  569. package/scripts/test-documentation.mjs +0 -189
  570. package/scripts/test-editor-language-service.mjs +0 -305
  571. package/scripts/test-engine-commands.mjs +0 -204
  572. package/scripts/test-examples.mjs +0 -53
  573. package/scripts/test-heading-ids.mjs +0 -68
  574. package/scripts/test-navigation-model.mjs +0 -63
  575. package/scripts/test-navigation-preview.mjs +0 -108
  576. package/scripts/test-navigation.mjs +0 -157
  577. package/scripts/test-nested-pages.mjs +0 -125
  578. package/scripts/test-package-check.mjs +0 -500
  579. package/scripts/test-page-model.mjs +0 -108
  580. package/scripts/test-project-config.mjs +0 -139
  581. package/scripts/test-schemas.mjs +0 -169
  582. package/scripts/test-site-public.mjs +0 -85
  583. package/scripts/test-theme-presets.mjs +0 -188
  584. package/src/components/SiteNotesScript.astro +0 -43
  585. package/starters/project/.github/workflows/deploy.yml +0 -64
  586. package/starters/project/README.md +0 -84
  587. package/starters/project/package-lock.json +0 -4296
  588. package/starters/project/package.json +0 -37
  589. package/starters/project/site/config.yaml +0 -1
  590. package/starters/project/site/pages/000-home/content.md +0 -119
  591. package/starters/project/site/pages/010-guide/content.md +0 -80
  592. package/starters/project/site/public/robots.txt +0 -2
  593. package/starters/project/site/sitewide-content.yaml +0 -3
  594. package/starters/project/site/theme.yaml +0 -1
  595. package/tsconfig.json +0 -5
@@ -5,15 +5,47 @@
5
5
  }
6
6
 
7
7
  :root {
8
- --color-page: #000;
9
- --color-surface: #101010;
10
- --color-text: #f7f4ee;
11
- --color-muted: #aaa49a;
12
- --color-soft: #302f2c;
13
- --color-accent: #d8d2c8;
14
- --color-border: rgb(255 255 255 / 14%);
15
- --color-nav-background: rgb(0 0 0 / 90%);
16
- --color-nav-separator: rgb(255 255 255 / 28%);
8
+ --color-page: var(--palette-light-page-background, #fff);
9
+ --color-primary-text: var(--palette-light-primary-text, var(--palette-light-page-text, #17201d));
10
+ --color-secondary-text: var(--palette-light-secondary-text, #5e655f);
11
+ --color-link-text: var(--palette-light-link-text, #38645a);
12
+ --color-focus-ring: var(--palette-light-focus-ring, #17201d);
13
+ --color-focus-ring-contrast: var(--palette-light-focus-ring-contrast, #fff);
14
+ --color-selection-background: var(--palette-light-selection-background, #17201d);
15
+ --color-selection-text: var(--palette-light-selection-text, #fff);
16
+ --color-control-background: var(--palette-light-control-background, rgb(0 0 0 / 70%));
17
+ --color-control-background-active: var(--palette-light-control-background-active, rgb(0 0 0 / 86%));
18
+ --color-control-text: var(--palette-light-control-text, #fff);
19
+ --color-code-background: var(--palette-light-code-background, #0d1117);
20
+ --color-code-text: var(--palette-light-code-text, #f0f6fc);
21
+ --color-warning-accent: var(--palette-light-warning-accent, #7a5600);
22
+ --color-warning-surface: var(--palette-light-warning-surface, #fff4c2);
23
+ --color-warning-text: var(--palette-light-warning-text, #3b2b00);
24
+ --color-error-accent: var(--palette-light-error-accent, #a12d2d);
25
+ --color-error-surface: var(--palette-light-error-surface, #fce8e8);
26
+ --color-error-text: var(--palette-light-error-text, #5f1616);
27
+ --color-success-accent: var(--palette-light-success-accent, #17643c);
28
+ --color-success-surface: var(--palette-light-success-surface, #e4f4e9);
29
+ --color-success-text: var(--palette-light-success-text, #12472e);
30
+ --color-text: var(--color-primary-text);
31
+ --color-surface: var(--palette-light-surface, #f7f8f7);
32
+ --color-muted: var(--color-secondary-text);
33
+ --color-soft: var(--palette-light-soft, #d9dfda);
34
+ --color-accent: var(--color-link-text);
35
+ --color-border: var(--palette-light-border, rgb(0 0 0 / 14%));
36
+ --color-nav-background: var(--palette-light-nav-background, rgb(255 255 255 / 92%));
37
+ --color-nav-separator: var(--palette-light-nav-separator, rgb(0 0 0 / 20%));
38
+ --color-frame-background: var(--palette-light-frame-background, #fff);
39
+ --color-frame-text: var(--palette-light-frame-text, #17201d);
40
+ --color-surface-base-background: var(--palette-light-surface-base-background, #fff);
41
+ --color-surface-base-text: var(--palette-light-surface-base-text, #17201d);
42
+ --color-surface-base-secondary-text: var(--palette-light-surface-base-secondary-text, #555b57);
43
+ --color-surface-soft-background: var(--palette-light-surface-soft-background, #f1f4f2);
44
+ --color-surface-soft-text: var(--palette-light-surface-soft-text, #17201d);
45
+ --color-surface-soft-secondary-text: var(--palette-light-surface-soft-secondary-text, #555b57);
46
+ --color-surface-emphasis-background: var(--palette-light-surface-emphasis-background, #dde7e1);
47
+ --color-surface-emphasis-text: var(--palette-light-surface-emphasis-text, #17201d);
48
+ --color-surface-emphasis-secondary-text: var(--palette-light-surface-emphasis-secondary-text, #555b57);
17
49
  --font-sans: Arial, 'Helvetica Neue', Helvetica, sans-serif;
18
50
  --font-serif: Georgia, 'Times New Roman', serif;
19
51
  --page-width: 1180px;
@@ -55,11 +87,118 @@
55
87
  --content-gutter-mobile: 1rem;
56
88
  --content-gutter: var(--content-gutter-desktop);
57
89
  --site-top-anchor-offset: 4.5rem;
58
- color-scheme: var(--color-scheme, dark);
90
+ --focus-indicator-width: 2px;
91
+ --target-size-minimum: 1.5rem;
92
+ --target-size-comfortable: 2.75rem;
93
+ color-scheme: light;
59
94
  scroll-behavior: smooth;
60
95
  scroll-padding-top: var(--site-top-anchor-offset);
61
96
  }
62
97
 
98
+ :root[data-color-mode='dark'] {
99
+ --color-page: var(--palette-dark-page-background);
100
+ --color-primary-text: var(--palette-dark-primary-text);
101
+ --color-secondary-text: var(--palette-dark-secondary-text);
102
+ --color-link-text: var(--palette-dark-link-text);
103
+ --color-focus-ring: var(--palette-dark-focus-ring);
104
+ --color-focus-ring-contrast: var(--palette-dark-focus-ring-contrast);
105
+ --color-selection-background: var(--palette-dark-selection-background);
106
+ --color-selection-text: var(--palette-dark-selection-text);
107
+ --color-control-background: var(--palette-dark-control-background);
108
+ --color-control-background-active: var(--palette-dark-control-background-active);
109
+ --color-control-text: var(--palette-dark-control-text);
110
+ --color-code-background: var(--palette-dark-code-background);
111
+ --color-code-text: var(--palette-dark-code-text);
112
+ --color-warning-accent: var(--palette-dark-warning-accent);
113
+ --color-warning-surface: var(--palette-dark-warning-surface);
114
+ --color-warning-text: var(--palette-dark-warning-text);
115
+ --color-error-accent: var(--palette-dark-error-accent);
116
+ --color-error-surface: var(--palette-dark-error-surface);
117
+ --color-error-text: var(--palette-dark-error-text);
118
+ --color-success-accent: var(--palette-dark-success-accent);
119
+ --color-success-surface: var(--palette-dark-success-surface);
120
+ --color-success-text: var(--palette-dark-success-text);
121
+ --color-text: var(--color-primary-text);
122
+ --color-surface: var(--palette-dark-surface);
123
+ --color-muted: var(--color-secondary-text);
124
+ --color-soft: var(--palette-dark-soft);
125
+ --color-accent: var(--color-link-text);
126
+ --color-border: var(--palette-dark-border);
127
+ --color-nav-background: var(--palette-dark-nav-background);
128
+ --color-nav-separator: var(--palette-dark-nav-separator);
129
+ --color-frame-background: var(--palette-dark-frame-background);
130
+ --color-frame-text: var(--palette-dark-frame-text);
131
+ --color-surface-base-background: var(--palette-dark-surface-base-background);
132
+ --color-surface-base-text: var(--palette-dark-surface-base-text);
133
+ --color-surface-base-secondary-text: var(--palette-dark-surface-base-secondary-text);
134
+ --color-surface-soft-background: var(--palette-dark-surface-soft-background);
135
+ --color-surface-soft-text: var(--palette-dark-surface-soft-text);
136
+ --color-surface-soft-secondary-text: var(--palette-dark-surface-soft-secondary-text);
137
+ --color-surface-emphasis-background: var(--palette-dark-surface-emphasis-background);
138
+ --color-surface-emphasis-text: var(--palette-dark-surface-emphasis-text);
139
+ --color-surface-emphasis-secondary-text: var(--palette-dark-surface-emphasis-secondary-text);
140
+ color-scheme: dark;
141
+ }
142
+
143
+ @media (prefers-color-scheme: dark) {
144
+ :root[data-color-mode='system'] {
145
+ --color-page: var(--palette-dark-page-background);
146
+ --color-primary-text: var(--palette-dark-primary-text);
147
+ --color-secondary-text: var(--palette-dark-secondary-text);
148
+ --color-link-text: var(--palette-dark-link-text);
149
+ --color-focus-ring: var(--palette-dark-focus-ring);
150
+ --color-focus-ring-contrast: var(--palette-dark-focus-ring-contrast);
151
+ --color-selection-background: var(--palette-dark-selection-background);
152
+ --color-selection-text: var(--palette-dark-selection-text);
153
+ --color-control-background: var(--palette-dark-control-background);
154
+ --color-control-background-active: var(--palette-dark-control-background-active);
155
+ --color-control-text: var(--palette-dark-control-text);
156
+ --color-code-background: var(--palette-dark-code-background);
157
+ --color-code-text: var(--palette-dark-code-text);
158
+ --color-warning-accent: var(--palette-dark-warning-accent);
159
+ --color-warning-surface: var(--palette-dark-warning-surface);
160
+ --color-warning-text: var(--palette-dark-warning-text);
161
+ --color-error-accent: var(--palette-dark-error-accent);
162
+ --color-error-surface: var(--palette-dark-error-surface);
163
+ --color-error-text: var(--palette-dark-error-text);
164
+ --color-success-accent: var(--palette-dark-success-accent);
165
+ --color-success-surface: var(--palette-dark-success-surface);
166
+ --color-success-text: var(--palette-dark-success-text);
167
+ --color-text: var(--color-primary-text);
168
+ --color-surface: var(--palette-dark-surface);
169
+ --color-muted: var(--color-secondary-text);
170
+ --color-soft: var(--palette-dark-soft);
171
+ --color-accent: var(--color-link-text);
172
+ --color-border: var(--palette-dark-border);
173
+ --color-nav-background: var(--palette-dark-nav-background);
174
+ --color-nav-separator: var(--palette-dark-nav-separator);
175
+ --color-frame-background: var(--palette-dark-frame-background);
176
+ --color-frame-text: var(--palette-dark-frame-text);
177
+ --color-surface-base-background: var(--palette-dark-surface-base-background);
178
+ --color-surface-base-text: var(--palette-dark-surface-base-text);
179
+ --color-surface-base-secondary-text: var(--palette-dark-surface-base-secondary-text);
180
+ --color-surface-soft-background: var(--palette-dark-surface-soft-background);
181
+ --color-surface-soft-text: var(--palette-dark-surface-soft-text);
182
+ --color-surface-soft-secondary-text: var(--palette-dark-surface-soft-secondary-text);
183
+ --color-surface-emphasis-background: var(--palette-dark-surface-emphasis-background);
184
+ --color-surface-emphasis-text: var(--palette-dark-surface-emphasis-text);
185
+ --color-surface-emphasis-secondary-text: var(--palette-dark-surface-emphasis-secondary-text);
186
+ color-scheme: dark;
187
+ }
188
+ }
189
+
190
+ :root[data-reading-width='narrow'] {
191
+ --reader-text-width: min(60ch, var(--text-width));
192
+ }
193
+
194
+ :root[data-reading-width='standard'] {
195
+ --reader-text-width: min(72ch, var(--text-width));
196
+ }
197
+
198
+ :root[data-reading-width='wide'] {
199
+ --reader-text-width: min(80ch, var(--image-layout-width));
200
+ }
201
+
63
202
  html {
64
203
  min-height: 100%;
65
204
  background: var(--color-page);
@@ -69,6 +208,15 @@ html {
69
208
  html {
70
209
  scroll-behavior: auto !important;
71
210
  }
211
+
212
+ *,
213
+ *::before,
214
+ *::after {
215
+ animation-duration: 0.01ms !important;
216
+ animation-iteration-count: 1 !important;
217
+ scroll-behavior: auto !important;
218
+ transition-duration: 0.01ms !important;
219
+ }
72
220
  }
73
221
 
74
222
  body {
@@ -91,12 +239,19 @@ img {
91
239
 
92
240
  a {
93
241
  color: var(--color-accent);
242
+ overflow-wrap: anywhere;
94
243
  transition: color 0.18s ease, opacity 0.18s ease;
95
244
  }
96
245
 
97
246
  ::selection {
98
- background: var(--color-text);
99
- color: var(--color-page);
247
+ background: var(--color-selection-background);
248
+ color: var(--color-selection-text);
249
+ }
250
+
251
+ :where(a, button, summary, [tabindex]:not([tabindex='-1'])):focus-visible {
252
+ outline: var(--focus-indicator-width) solid var(--color-focus-ring);
253
+ outline-offset: var(--focus-indicator-width);
254
+ box-shadow: 0 0 0 calc(var(--focus-indicator-width) + var(--focus-indicator-width)) var(--color-focus-ring-contrast);
100
255
  }
101
256
 
102
257
  .visually-hidden {
@@ -152,6 +307,230 @@ a {
152
307
  padding: 0.8rem 0 0.7rem;
153
308
  }
154
309
 
310
+ .site-top[data-navigation-mode='tree'] .site-nav-row {
311
+ width: min(calc(100% - (var(--content-gutter) * 2)), max(var(--page-width), 76rem));
312
+ }
313
+
314
+ .site-nav-row-mobile-only {
315
+ display: none;
316
+ }
317
+
318
+ .site-nav-actions {
319
+ display: flex;
320
+ align-items: center;
321
+ justify-content: flex-end;
322
+ gap: clamp(0.65rem, 1.5vw, 1rem);
323
+ min-width: 0;
324
+ margin-left: auto;
325
+ }
326
+
327
+ .site-nav-leading {
328
+ display: flex;
329
+ align-items: center;
330
+ gap: 0.35rem;
331
+ min-width: 0;
332
+ flex: 0 0 auto;
333
+ }
334
+
335
+ :root:not([data-reader-preferences-ready='true']) .display-settings {
336
+ display: none;
337
+ }
338
+
339
+ .display-settings {
340
+ position: relative;
341
+ display: block;
342
+ flex: 0 0 auto;
343
+ font-family: var(--font-sans);
344
+ }
345
+
346
+ .display-settings summary {
347
+ display: grid;
348
+ place-items: center;
349
+ width: 2.25rem;
350
+ height: 2.25rem;
351
+ border: 1px solid color-mix(in srgb, currentColor 38%, transparent);
352
+ border-radius: 50%;
353
+ background-color: transparent;
354
+ color: currentColor;
355
+ cursor: pointer;
356
+ list-style: none;
357
+ transition: border-color 0.18s ease, background-color 0.18s ease;
358
+ }
359
+
360
+ :root[data-focus-reading='on'] .display-settings summary {
361
+ grid-template-columns: auto auto;
362
+ gap: 0.4rem;
363
+ width: auto;
364
+ padding: 0 0.65rem;
365
+ border-color: currentColor;
366
+ background: color-mix(in srgb, currentColor 9%, transparent);
367
+ }
368
+
369
+ .display-settings summary::-webkit-details-marker {
370
+ display: none;
371
+ }
372
+
373
+ .display-settings summary:hover,
374
+ .display-settings[open] summary {
375
+ border-color: currentColor;
376
+ background: color-mix(in srgb, currentColor 9%, transparent);
377
+ }
378
+
379
+ .display-settings summary:focus-visible,
380
+ .display-settings button:focus-visible,
381
+ .display-settings input:focus-visible + span {
382
+ outline-color: var(--color-focus-ring);
383
+ }
384
+
385
+ .display-settings-trigger-icon {
386
+ display: block;
387
+ width: 1.05rem;
388
+ height: 1.05rem;
389
+ fill: none;
390
+ stroke: currentColor;
391
+ stroke-width: 2;
392
+ stroke-linecap: round;
393
+ stroke-linejoin: round;
394
+ }
395
+
396
+ .display-settings-focus-status {
397
+ display: none;
398
+ font-size: 0.72rem;
399
+ font-weight: 650;
400
+ white-space: nowrap;
401
+ }
402
+
403
+ :root[data-focus-reading='on'] .display-settings-focus-status {
404
+ display: block;
405
+ }
406
+
407
+ .display-settings-panel {
408
+ position: absolute;
409
+ top: calc(100% + 0.45rem);
410
+ right: 0;
411
+ z-index: 30;
412
+ display: grid;
413
+ gap: 0.9rem;
414
+ width: min(20rem, calc(100vw - (var(--content-gutter) * 2)));
415
+ max-height: calc(100svh - var(--site-top-anchor-offset) - 1rem);
416
+ margin: 0;
417
+ padding: 0.85rem;
418
+ border: 1px solid var(--color-border);
419
+ border-radius: var(--corner-radius-medium, 4px);
420
+ background: var(--color-surface-base-background);
421
+ color: var(--color-surface-base-text);
422
+ font-size: 0.82rem;
423
+ box-shadow: 0 0.6rem 1.6rem rgb(0 0 0 / 16%);
424
+ overflow-y: auto;
425
+ }
426
+
427
+ .display-settings-title {
428
+ margin: 0;
429
+ font-size: 0.78rem;
430
+ font-weight: 700;
431
+ text-transform: uppercase;
432
+ }
433
+
434
+ .display-settings fieldset {
435
+ display: grid;
436
+ gap: 0.4rem;
437
+ margin: 0;
438
+ padding: 0;
439
+ border: 0;
440
+ }
441
+
442
+ .display-settings legend {
443
+ margin: 0 0 0.4rem;
444
+ padding: 0;
445
+ color: var(--color-surface-base-secondary-text);
446
+ font-size: 0.72rem;
447
+ font-weight: 650;
448
+ }
449
+
450
+ .display-settings-segmented {
451
+ display: grid;
452
+ grid-template-columns: repeat(3, minmax(0, 1fr));
453
+ gap: 1px;
454
+ width: 100%;
455
+ border: 1px solid var(--color-border);
456
+ border-radius: var(--corner-radius-small, 2px);
457
+ background: var(--color-border);
458
+ overflow: hidden;
459
+ }
460
+
461
+ .display-settings-segmented label {
462
+ position: relative;
463
+ min-width: 0;
464
+ cursor: pointer;
465
+ }
466
+
467
+ .display-settings-segmented input {
468
+ position: absolute;
469
+ width: 1px;
470
+ height: 1px;
471
+ opacity: 0;
472
+ }
473
+
474
+ .display-settings-segmented span {
475
+ display: grid;
476
+ place-items: center;
477
+ min-height: var(--target-size-comfortable);
478
+ padding: 0.35rem 0.45rem;
479
+ background: var(--color-surface-base-background);
480
+ color: inherit;
481
+ font-size: 0.75rem;
482
+ font-weight: 600;
483
+ text-align: center;
484
+ transition: background-color 0.18s ease, color 0.18s ease;
485
+ }
486
+
487
+ .display-settings-segmented label:hover span {
488
+ background: color-mix(in srgb, currentColor 8%, var(--color-surface-base-background));
489
+ }
490
+
491
+ .display-settings-segmented input:checked + span {
492
+ background: color-mix(in srgb, var(--color-accent) 14%, transparent);
493
+ color: var(--color-surface-base-text);
494
+ }
495
+
496
+ .display-settings-segmented input:focus-visible + span {
497
+ position: relative;
498
+ z-index: 1;
499
+ outline: var(--focus-indicator-width) solid var(--color-focus-ring);
500
+ outline-offset: calc(0px - var(--focus-indicator-width));
501
+ box-shadow: inset 0 0 0 var(--focus-indicator-width) var(--color-focus-ring-contrast);
502
+ }
503
+
504
+ .display-settings-toggle {
505
+ display: flex;
506
+ align-items: center;
507
+ gap: 0.55rem;
508
+ min-height: var(--target-size-minimum);
509
+ font-weight: 600;
510
+ cursor: pointer;
511
+ }
512
+
513
+ .display-settings-toggle input {
514
+ width: 1rem;
515
+ height: 1rem;
516
+ margin: 0;
517
+ accent-color: var(--color-accent);
518
+ }
519
+
520
+ .display-settings-reset {
521
+ justify-self: start;
522
+ min-height: var(--target-size-minimum);
523
+ border: 0;
524
+ padding: 0;
525
+ background: transparent;
526
+ color: var(--color-accent);
527
+ font: inherit;
528
+ font-weight: 650;
529
+ text-decoration: underline;
530
+ text-underline-offset: 0.2em;
531
+ cursor: pointer;
532
+ }
533
+
155
534
  .site-brand,
156
535
  .site-nav a,
157
536
  .mobile-nav-menu summary,
@@ -200,11 +579,12 @@ a {
200
579
  .site-nav a,
201
580
  .mobile-nav-panel a {
202
581
  display: block;
582
+ min-height: var(--target-size-minimum);
583
+ color: var(--color-secondary-text);
203
584
  font-size: 0.78rem;
204
585
  font-weight: 500;
205
586
  letter-spacing: 0.08em;
206
587
  line-height: 1.2;
207
- opacity: 0.72;
208
588
  text-transform: uppercase;
209
589
  }
210
590
 
@@ -214,7 +594,7 @@ a {
214
594
  .mobile-nav-panel a:hover,
215
595
  .mobile-nav-panel a:focus-visible,
216
596
  .mobile-nav-panel a[aria-current='page'] {
217
- opacity: 1;
597
+ color: var(--site-top-text-color, var(--color-primary-text));
218
598
  }
219
599
 
220
600
  .site-nav > ul > .site-nav-item > a:hover,
@@ -232,6 +612,7 @@ a {
232
612
  left: 50%;
233
613
  z-index: 10;
234
614
  width: max-content;
615
+ max-width: min(24rem, calc(100vw - (var(--content-gutter) * 2)));
235
616
  min-width: 12rem;
236
617
  padding-top: 0.7rem;
237
618
  opacity: 0;
@@ -271,15 +652,14 @@ a {
271
652
  font-size: 0.76rem;
272
653
  letter-spacing: 0.03em;
273
654
  line-height: 1.3;
274
- opacity: 0.78;
275
655
  text-transform: none;
276
- white-space: nowrap;
656
+ white-space: normal;
277
657
  }
278
658
 
279
659
  .site-nav-submenu a:hover,
280
660
  .site-nav-submenu a:focus-visible,
281
661
  .site-nav-submenu a[aria-current='location'] {
282
- opacity: 1;
662
+ color: var(--site-top-text-color, var(--color-primary-text));
283
663
  text-decoration: underline;
284
664
  text-underline-offset: 0.25em;
285
665
  }
@@ -307,6 +687,10 @@ a {
307
687
  border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent);
308
688
  }
309
689
 
690
+ .site-top:not(.site-top-has-navigation-row) .page-nav {
691
+ border-top: 0;
692
+ }
693
+
310
694
  .page-nav-inner {
311
695
  display: flex;
312
696
  align-items: center;
@@ -321,7 +705,7 @@ a {
321
705
  font-size: 0.7rem;
322
706
  font-weight: 650;
323
707
  letter-spacing: 0.08em;
324
- opacity: 0.55;
708
+ color: var(--color-secondary-text);
325
709
  text-transform: uppercase;
326
710
  white-space: nowrap;
327
711
  }
@@ -352,13 +736,13 @@ a {
352
736
 
353
737
  .page-nav a {
354
738
  display: block;
739
+ min-height: var(--target-size-minimum);
355
740
  padding: 1.05rem 0 0.95rem;
356
- color: currentColor;
741
+ color: var(--color-secondary-text);
357
742
  font-size: 0.76rem;
358
743
  font-weight: 500;
359
744
  letter-spacing: 0.08em;
360
745
  line-height: 1.2;
361
- opacity: 0.72;
362
746
  text-decoration: none;
363
747
  text-transform: uppercase;
364
748
  }
@@ -366,16 +750,21 @@ a {
366
750
  .page-nav a:hover,
367
751
  .page-nav a:focus-visible,
368
752
  .page-nav a[aria-current='location'] {
369
- opacity: 1;
753
+ color: var(--site-top-text-color, var(--color-primary-text));
370
754
  text-decoration: underline;
371
755
  text-decoration-thickness: 1px;
372
756
  text-underline-offset: 0.35em;
373
757
  }
374
758
 
375
759
  .page-nav .page-nav-page-top {
760
+ font-size: 0.82rem;
376
761
  font-weight: 700;
377
762
  }
378
763
 
764
+ .page-nav-page-top-item:not(:last-child) {
765
+ margin-right: clamp(0.3rem, 1vw, 0.7rem);
766
+ }
767
+
379
768
  .mobile-nav-sections a[aria-current='location'] {
380
769
  opacity: 1;
381
770
  text-decoration: underline;
@@ -402,12 +791,16 @@ a {
402
791
  }
403
792
 
404
793
  .site-page-layout-tree {
794
+ --tree-layout-width: max(var(--page-width), 76rem);
795
+ --tree-layout-outer-margin: max(var(--content-gutter), calc((100vw - var(--tree-layout-width)) / 2));
796
+ --tree-navigation-width: 14rem;
797
+ --tree-layout-gap: var(--local-navigation-gap, clamp(1.5rem, 3vw, 3rem));
405
798
  display: grid;
406
- grid-template-columns: minmax(12rem, 14rem) minmax(0, 1fr);
799
+ grid-template-columns: var(--tree-navigation-width) minmax(0, 1fr);
407
800
  align-items: start;
408
- gap: var(--local-navigation-gap, clamp(1.5rem, 3vw, 3rem));
801
+ gap: var(--tree-layout-gap);
409
802
  min-height: calc(100svh - var(--site-top-anchor-offset));
410
- width: min(calc(100% - (var(--content-gutter) * 2)), max(var(--page-width), 76rem));
803
+ width: min(calc(100% - (var(--content-gutter) * 2)), var(--tree-layout-width));
411
804
  margin: 0 auto;
412
805
  }
413
806
 
@@ -416,10 +809,40 @@ a {
416
809
  min-width: 0;
417
810
  }
418
811
 
812
+ .site-page-layout-tree .site-section {
813
+ background-color: transparent;
814
+ }
815
+
816
+ @media (min-width: 701px) {
817
+ .site-page-layout-tree :is(.site-breadcrumbs, .section-header, .section-markdown) {
818
+ margin-right: auto;
819
+ margin-left: 0;
820
+ }
821
+
822
+ .site-page-layout-tree .card-list {
823
+ margin-right: auto;
824
+ margin-left: 0;
825
+ }
826
+
827
+ .site-page-layout-tree .image-stack .managed-image-item {
828
+ width: min(100%, var(--image-layout-width));
829
+ margin-right: auto;
830
+ margin-left: 0;
831
+ }
832
+
833
+ .site-page-layout-tree .image-carousel-stage,
834
+ .site-page-layout-tree .image-carousel-captions {
835
+ margin-right: auto;
836
+ margin-left: 0;
837
+ }
838
+
839
+ }
840
+
419
841
  .tree-local-navigation {
420
842
  position: sticky;
421
843
  top: calc(var(--site-top-anchor-offset) + 1.25rem);
422
844
  z-index: 3;
845
+ min-height: 0;
423
846
  max-height: calc(100svh - var(--site-top-anchor-offset) - 2.5rem);
424
847
  padding: 1.5rem 0;
425
848
  background: var(--color-page);
@@ -447,23 +870,22 @@ a {
447
870
  .navigation-page-tree-sidebar .navigation-page-link {
448
871
  display: block;
449
872
  padding: 0.45rem 2rem 0.45rem 0;
450
- color: inherit;
873
+ color: var(--color-secondary-text);
451
874
  font-size: 0.86rem;
452
875
  line-height: 1.35;
453
- opacity: 0.72;
454
876
  text-decoration: none;
455
877
  }
456
878
 
457
879
  .navigation-page-tree-sidebar > .navigation-page-node > .navigation-page-link {
880
+ color: var(--color-primary-text);
458
881
  font-size: 0.94rem;
459
882
  font-weight: 700;
460
- opacity: 1;
461
883
  }
462
884
 
463
885
  .navigation-page-tree-sidebar .navigation-page-link:hover,
464
886
  .navigation-page-tree-sidebar .navigation-page-link:focus-visible,
465
887
  .navigation-page-tree-sidebar .navigation-page-link[aria-current='page'] {
466
- opacity: 1;
888
+ color: var(--color-primary-text);
467
889
  text-decoration: underline;
468
890
  text-decoration-thickness: 1px;
469
891
  text-underline-offset: 0.28em;
@@ -484,10 +906,10 @@ a {
484
906
  width: 1.8rem;
485
907
  height: 1.8rem;
486
908
  border: 0;
487
- border-radius: var(--shape-radius-small, 2px);
909
+ border-radius: var(--corner-radius-small, 2px);
488
910
  list-style: none;
489
911
  cursor: pointer;
490
- opacity: 0.66;
912
+ color: var(--color-secondary-text);
491
913
  }
492
914
 
493
915
  .navigation-page-branch:not(.navigation-page-disclosure) > summary::-webkit-details-marker {
@@ -497,7 +919,7 @@ a {
497
919
  .navigation-page-branch:not(.navigation-page-disclosure) > summary:hover,
498
920
  .navigation-page-branch:not(.navigation-page-disclosure) > summary:focus-visible {
499
921
  background: color-mix(in srgb, currentColor 8%, transparent);
500
- opacity: 1;
922
+ color: var(--color-primary-text);
501
923
  }
502
924
 
503
925
  .navigation-page-branch:not(.navigation-page-disclosure) > summary > [aria-hidden='true']::before {
@@ -514,13 +936,13 @@ a {
514
936
  justify-content: space-between;
515
937
  width: 100%;
516
938
  border: 0;
517
- border-radius: var(--shape-radius-small, 2px);
939
+ border-radius: var(--corner-radius-small, 2px);
518
940
  padding: 0.45rem 0;
519
941
  font-size: 0.86rem;
520
942
  line-height: 1.35;
521
943
  list-style: none;
522
944
  cursor: pointer;
523
- opacity: 0.72;
945
+ color: var(--color-secondary-text);
524
946
  }
525
947
 
526
948
  .navigation-page-disclosure {
@@ -534,7 +956,7 @@ a {
534
956
  .navigation-page-disclosure > .navigation-page-summary:hover,
535
957
  .navigation-page-disclosure > .navigation-page-summary:focus-visible,
536
958
  .navigation-page-disclosure[data-current-page='true'] > .navigation-page-summary {
537
- opacity: 1;
959
+ color: var(--color-primary-text);
538
960
  }
539
961
 
540
962
  .navigation-page-disclosure > .navigation-page-summary:hover > :first-child,
@@ -545,25 +967,29 @@ a {
545
967
  text-underline-offset: 0.28em;
546
968
  }
547
969
 
548
- .navigation-page-disclosure[open] > .navigation-page-summary > .navigation-page-summary-title {
970
+ .navigation-page-disclosure:not(.navigation-category-disclosure)[open]
971
+ > .navigation-page-summary > .navigation-page-summary-title {
549
972
  opacity: 0;
550
973
  }
551
974
 
975
+ .navigation-category-disclosure[data-current-branch='true'] > .navigation-page-summary {
976
+ color: var(--color-primary-text);
977
+ }
978
+
552
979
  .navigation-page-open-link {
553
980
  position: absolute;
554
981
  top: 0;
555
982
  left: 0;
556
983
  display: none;
557
- max-width: calc(100% - 2rem);
984
+ width: calc(100% - 2rem);
558
985
  padding: 0.45rem 0;
559
- color: inherit;
986
+ color: var(--color-secondary-text);
560
987
  font-size: 0.86rem;
561
988
  line-height: 1.35;
562
- opacity: 0.72;
563
- overflow: hidden;
989
+ overflow: visible;
990
+ overflow-wrap: anywhere;
564
991
  text-decoration: none;
565
- text-overflow: ellipsis;
566
- white-space: nowrap;
992
+ white-space: normal;
567
993
  }
568
994
 
569
995
  .navigation-page-disclosure[open] > .navigation-page-open-link {
@@ -573,7 +999,7 @@ a {
573
999
  .navigation-page-open-link:hover,
574
1000
  .navigation-page-open-link:focus-visible,
575
1001
  .navigation-page-open-link[aria-current='page'] {
576
- opacity: 1;
1002
+ color: var(--color-primary-text);
577
1003
  text-decoration: underline;
578
1004
  text-decoration-thickness: 1px;
579
1005
  text-underline-offset: 0.28em;
@@ -592,15 +1018,15 @@ a {
592
1018
  }
593
1019
 
594
1020
  .navigation-page-tree-sidebar > .navigation-page-node > .navigation-page-disclosure > .navigation-page-summary {
1021
+ color: var(--color-primary-text);
595
1022
  font-size: 0.94rem;
596
1023
  font-weight: 700;
597
- opacity: 1;
598
1024
  }
599
1025
 
600
1026
  .navigation-page-tree-sidebar > .navigation-page-node > .navigation-page-disclosure > .navigation-page-open-link {
1027
+ color: var(--color-primary-text);
601
1028
  font-size: 0.94rem;
602
1029
  font-weight: 700;
603
- opacity: 1;
604
1030
  }
605
1031
 
606
1032
  .navigation-page-tree-sidebar .navigation-page-disclosure > .navigation-page-branch-content {
@@ -632,41 +1058,51 @@ a {
632
1058
  }
633
1059
 
634
1060
  .page-contents-links a {
1061
+ position: relative;
635
1062
  display: block;
636
- color: inherit;
1063
+ color: var(--color-secondary-text);
637
1064
  font-size: 0.8rem;
638
1065
  line-height: 1.4;
639
- opacity: 0.64;
640
1066
  text-decoration: none;
641
1067
  }
642
1068
 
643
1069
  .page-contents-links a:hover,
644
1070
  .page-contents-links a:focus-visible,
645
1071
  .page-contents-links a[aria-current='location'] {
646
- opacity: 1;
1072
+ color: var(--color-primary-text);
647
1073
  text-decoration: underline;
648
1074
  text-underline-offset: 0.25em;
649
1075
  }
650
1076
 
1077
+ .page-contents-links a[aria-current='location']::before {
1078
+ position: absolute;
1079
+ top: 0.15em;
1080
+ bottom: 0.15em;
1081
+ left: -0.85rem;
1082
+ width: 2px;
1083
+ border-radius: 1px;
1084
+ background: currentColor;
1085
+ content: '';
1086
+ }
1087
+
651
1088
  .site-breadcrumbs {
652
- height: calc(clamp(1rem, 2.5vw, 1.5rem) + 1.35rem);
653
- width: min(100%, var(--page-text-width, var(--text-width)));
1089
+ min-height: calc(clamp(1rem, 2.5vw, 1.5rem) + 1.35rem);
1090
+ width: min(100%, var(--reader-text-width, var(--page-text-width, var(--text-width))));
654
1091
  margin: 0 auto;
655
1092
  padding-top: clamp(1rem, 2.5vw, 1.5rem);
656
1093
  font-size: 1rem;
657
1094
  line-height: 1.4;
658
- overflow: hidden;
1095
+ overflow: visible;
659
1096
  }
660
1097
 
661
1098
  .site-breadcrumbs ol {
662
1099
  display: flex;
663
- flex-wrap: nowrap;
1100
+ flex-wrap: wrap;
664
1101
  gap: 0;
665
1102
  margin: 0;
666
1103
  padding: 0;
667
1104
  font-size: 0.78rem;
668
1105
  list-style: none;
669
- white-space: nowrap;
670
1106
  }
671
1107
 
672
1108
  .site-breadcrumbs li {
@@ -688,16 +1124,15 @@ a {
688
1124
  .site-breadcrumbs a {
689
1125
  display: block;
690
1126
  min-width: 0;
691
- color: inherit;
692
- opacity: 0.72;
693
- overflow: hidden;
1127
+ color: var(--color-secondary-text);
1128
+ overflow: visible;
1129
+ overflow-wrap: anywhere;
694
1130
  text-decoration: none;
695
- text-overflow: ellipsis;
696
1131
  }
697
1132
 
698
1133
  .site-breadcrumbs a:hover,
699
1134
  .site-breadcrumbs a:focus-visible {
700
- opacity: 1;
1135
+ color: var(--color-primary-text);
701
1136
  text-decoration: underline;
702
1137
  text-underline-offset: 0.25em;
703
1138
  }
@@ -705,9 +1140,9 @@ a {
705
1140
  .site-breadcrumbs [aria-current='page'] {
706
1141
  display: block;
707
1142
  min-width: 0;
708
- overflow: hidden;
1143
+ overflow: visible;
1144
+ overflow-wrap: anywhere;
709
1145
  font-weight: 650;
710
- text-overflow: ellipsis;
711
1146
  }
712
1147
 
713
1148
  .site-content-has-breadcrumbs > .site-section:first-of-type {
@@ -726,15 +1161,15 @@ a {
726
1161
 
727
1162
  .site-banner {
728
1163
  display: flex;
729
- align-items: flex-start;
1164
+ align-items: center;
730
1165
  width: 100%;
731
1166
  min-width: 0;
732
1167
  gap: 1rem;
733
- border: 1px solid color-mix(in srgb, #ffd84d 42%, var(--color-border));
734
- border-inline-start: 0.35rem solid #ffd84d;
1168
+ border: 1px solid var(--color-warning-accent);
1169
+ border-inline-start: 0.35rem solid var(--color-warning-accent);
735
1170
  padding: 0.8rem 0.9rem;
736
- background: color-mix(in srgb, #ffd84d 12%, var(--color-surface));
737
- color: var(--color-text);
1171
+ background: var(--color-warning-surface);
1172
+ color: var(--color-warning-text);
738
1173
  }
739
1174
 
740
1175
  .site-banner[hidden] {
@@ -744,6 +1179,7 @@ a {
744
1179
  .site-banner-copy {
745
1180
  display: flex;
746
1181
  align-items: baseline;
1182
+ flex-wrap: wrap;
747
1183
  gap: 0.65rem;
748
1184
  min-width: 0;
749
1185
  flex: 1 1 auto;
@@ -762,11 +1198,8 @@ a {
762
1198
 
763
1199
  .site-banner-text {
764
1200
  min-width: 0;
765
- overflow: hidden;
766
- text-overflow: ellipsis;
767
- white-space: nowrap;
768
1201
  margin-top: 0.2rem;
769
- color: color-mix(in srgb, currentColor 86%, transparent);
1202
+ overflow-wrap: anywhere;
770
1203
  }
771
1204
 
772
1205
  .site-banner-dismiss {
@@ -836,6 +1269,7 @@ a {
836
1269
 
837
1270
  .site-page-layout-tree .site-section::before {
838
1271
  left: 0;
1272
+ right: calc(0px - var(--tree-layout-outer-margin));
839
1273
  }
840
1274
 
841
1275
  .site-section + .site-section {
@@ -865,7 +1299,7 @@ a {
865
1299
  }
866
1300
 
867
1301
  .section-header {
868
- width: min(100%, var(--section-heading-width-desktop, 760px));
1302
+ width: min(100%, var(--reader-text-width, var(--section-heading-width-desktop, 760px)));
869
1303
  margin: 0 auto;
870
1304
  padding: 0;
871
1305
  text-align: var(--section-heading-align-desktop, center);
@@ -898,6 +1332,7 @@ ul {
898
1332
 
899
1333
  .section-body {
900
1334
  display: flow-root;
1335
+ container-type: inline-size;
901
1336
  width: 100%;
902
1337
  margin: 0 auto;
903
1338
  color: inherit;
@@ -905,38 +1340,15 @@ ul {
905
1340
  font-size: clamp(0.96rem, 0.94rem + 0.08vw, 1rem);
906
1341
  }
907
1342
 
908
- .section-reading-layout {
909
- display: grid;
910
- --section-reading-body-width: var(--section-body-width-desktop, var(--text-width));
911
- --section-reading-inline-start: max(0px, calc((100% - var(--section-reading-body-width)) / 2));
912
- grid-template-columns: minmax(0, var(--section-reading-body-width)) minmax(0, 13rem);
913
- column-gap: 1.5rem;
914
- row-gap: var(--section-body-paragraph-spacing, 1em);
915
- width: min(
916
- calc(100% - var(--section-reading-inline-start)),
917
- calc(var(--section-reading-body-width) + 13rem + 1.5rem)
918
- );
919
- margin: 0 0 0 var(--section-reading-inline-start);
920
- align-items: start;
921
- }
922
-
923
- .section-reading-layout .section-markdown {
924
- grid-column: 1;
925
- width: 100%;
926
- margin: 0;
927
- }
928
-
929
1343
  .section-note {
930
- grid-column: 2;
931
1344
  display: grid;
932
1345
  grid-template-columns: auto minmax(0, 1fr);
933
1346
  column-gap: 0.25rem;
934
- align-self: start;
935
- margin: 0;
936
- margin-top: var(--section-note-offset, 0px);
1347
+ width: 100%;
1348
+ margin: var(--section-body-paragraph-spacing, 0.85em) 0 0;
937
1349
  border-inline-start: 2px solid color-mix(in srgb, currentColor 35%, transparent);
938
1350
  padding: 0 0 0 0.35rem;
939
- color: color-mix(in srgb, currentColor 76%, transparent);
1351
+ color: var(--section-secondary-text-color, var(--color-secondary-text));
940
1352
  font-size: 0.88em;
941
1353
  line-height: 1.45;
942
1354
  scroll-margin-top: calc(var(--site-top-anchor-offset) + 1rem);
@@ -968,35 +1380,93 @@ ul {
968
1380
  text-underline-offset: 0.15em;
969
1381
  }
970
1382
 
971
- .section-note.is-referenced,
972
1383
  .section-note:target {
973
1384
  border-inline-start-color: currentColor;
974
1385
  background: color-mix(in srgb, currentColor 6%, transparent);
975
1386
  }
976
1387
 
977
- .section-note-ref a.is-referenced,
1388
+ .section-note-ref:has(+ .section-note:hover) a,
978
1389
  .section-note-ref a:hover,
979
1390
  .section-note-ref a:focus-visible {
980
1391
  text-decoration-thickness: 0.16em;
981
1392
  }
982
1393
 
983
- .section-note-content > :first-child {
984
- margin-top: 0;
1394
+ .section-note-content {
1395
+ min-width: 0;
985
1396
  }
986
1397
 
987
- .section-note-content > :last-child {
988
- margin-bottom: 0;
1398
+ @media (min-width: 1101px) {
1399
+ @container (min-width: 55rem) {
1400
+ .section-note {
1401
+ float: right;
1402
+ clear: right;
1403
+ width: var(--section-note-width, 12rem);
1404
+ margin: 0 calc(0px - var(--section-note-width, 12rem) - var(--section-note-gap, 1.25rem)) 0.75rem var(--section-note-gap, 1.25rem);
1405
+ }
1406
+ }
989
1407
  }
990
1408
 
991
1409
  .section-markdown {
992
- width: min(100%, var(--section-body-width-desktop, var(--text-width)));
993
- max-width: 72ch;
1410
+ width: min(100%, var(--reader-text-width, var(--section-body-width-desktop, var(--text-width))));
1411
+ max-width: none;
994
1412
  margin: 0 auto;
995
1413
  font-size: var(--section-body-font-size-desktop, clamp(0.96rem, 0.94rem + 0.08vw, 1rem));
996
1414
  line-height: var(--section-body-line-height, 1.6);
997
1415
  text-align: var(--section-body-align-desktop, left);
998
1416
  }
999
1417
 
1418
+ :root[data-focus-reading='on'] :is(
1419
+ .site-nav-leading,
1420
+ .site-nav,
1421
+ .mobile-nav-menu,
1422
+ .page-nav,
1423
+ .tree-local-navigation,
1424
+ .site-breadcrumbs,
1425
+ .site-footer
1426
+ ) {
1427
+ display: none !important;
1428
+ }
1429
+
1430
+ :root[data-focus-reading='on'] .site-nav-row {
1431
+ justify-content: flex-end;
1432
+ }
1433
+
1434
+ @media (min-width: 701px) {
1435
+ :root[data-focus-reading='on'] .site-page-layout-tree {
1436
+ display: grid;
1437
+ grid-template-columns: var(--tree-navigation-width) minmax(0, 1fr);
1438
+ gap: var(--tree-layout-gap);
1439
+ width: min(calc(100% - (var(--content-gutter) * 2)), var(--tree-layout-width));
1440
+ }
1441
+
1442
+ :root[data-focus-reading='on'] .site-page-layout-tree > .site-content {
1443
+ grid-column: 2;
1444
+ width: 100%;
1445
+ }
1446
+
1447
+ :root[data-focus-reading='on'] .site-page-layout-tree
1448
+ :is(.site-breadcrumbs, .section-header) {
1449
+ margin-right: auto;
1450
+ margin-left: 0;
1451
+ max-width: none;
1452
+ }
1453
+
1454
+ :root[data-focus-reading='on'] .site-page-layout-tree .section-body {
1455
+ width: 100%;
1456
+ margin-right: auto;
1457
+ margin-left: auto;
1458
+ }
1459
+
1460
+ :root[data-focus-reading='on'] .site-page-layout-tree .site-section::before {
1461
+ left: 0;
1462
+ right: calc(0px - var(--tree-layout-outer-margin));
1463
+ }
1464
+ }
1465
+
1466
+ :root[data-focus-reading='on'] .site-content-has-breadcrumbs > .site-section:first-of-type {
1467
+ padding-top: var(--space-nav-to-first-section);
1468
+ }
1469
+
1000
1470
  .section-markdown p {
1001
1471
  margin: 0 0 var(--section-body-paragraph-spacing, 1em);
1002
1472
  }
@@ -1014,9 +1484,10 @@ ul {
1014
1484
  .section-markdown pre.astro-code {
1015
1485
  margin: 0 0 var(--section-body-paragraph-spacing, 1em);
1016
1486
  border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
1017
- border-radius: var(--shape-radius-medium, 6px);
1487
+ border-radius: var(--corner-radius-medium, 6px);
1018
1488
  padding: 0.78rem 0.9rem;
1019
- background: #0d1117 !important;
1489
+ background: var(--color-code-background) !important;
1490
+ color: var(--color-code-text);
1020
1491
  font-size: 0.92em;
1021
1492
  line-height: 1.45;
1022
1493
  text-align: left;
@@ -1026,6 +1497,11 @@ ul {
1026
1497
  font: inherit;
1027
1498
  }
1028
1499
 
1500
+ .section-markdown :not(pre) > code {
1501
+ overflow-wrap: anywhere;
1502
+ word-break: break-word;
1503
+ }
1504
+
1029
1505
  .section-markdown > :last-child,
1030
1506
  .image-meta :last-child {
1031
1507
  margin-bottom: 0;
@@ -1099,12 +1575,15 @@ ul {
1099
1575
  --card-list-text-scale: 1;
1100
1576
  }
1101
1577
 
1102
- .section-body > .section-reading-layout:not(:last-child),
1103
1578
  .section-body > .section-markdown:not(:last-child),
1104
1579
  .section-body > :is(.image-stack, .managed-images):not(:last-child) {
1105
1580
  margin-bottom: var(--space-content-block-gap);
1106
1581
  }
1107
1582
 
1583
+ .section-body > :is(.image-stack, .managed-images, .card-list) {
1584
+ clear: both;
1585
+ }
1586
+
1108
1587
  .section-body > .card-list:not(:last-child) {
1109
1588
  margin-bottom: calc(var(--space-content-block-gap) + var(--space-card-list-after));
1110
1589
  }
@@ -1113,31 +1592,8 @@ ul {
1113
1592
  margin-bottom: var(--space-card-list-after);
1114
1593
  }
1115
1594
 
1116
- @media (max-width: 1100px) {
1117
- .section-reading-layout {
1118
- display: block;
1119
- width: 100%;
1120
- margin: 0;
1121
- }
1122
-
1123
- .section-reading-layout .section-markdown,
1124
- .section-reading-layout .section-note {
1125
- width: min(100%, var(--section-reading-body-width, var(--section-body-width-desktop, var(--text-width))));
1126
- margin-right: auto;
1127
- margin-left: auto;
1128
- }
1129
-
1130
- .section-reading-layout .section-note {
1131
- margin-top: var(--section-body-paragraph-spacing, 0.85em);
1132
- }
1133
-
1134
- .section-reading-layout .section-markdown + .section-markdown {
1135
- margin-top: var(--section-body-paragraph-spacing, 1em);
1136
- }
1137
- }
1138
-
1139
1595
  .card-list-width-text {
1140
- --card-list-width: var(--text-width);
1596
+ --card-list-width: var(--reader-text-width, var(--text-width));
1141
1597
  }
1142
1598
 
1143
1599
  .card-list-width-narrow {
@@ -1191,9 +1647,9 @@ ul {
1191
1647
  align-content: start;
1192
1648
  margin: 0;
1193
1649
  border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
1194
- border-radius: var(--shape-radius-large, 8px);
1650
+ border-radius: var(--corner-radius-large, 8px);
1195
1651
  padding: var(--card-list-padding);
1196
- background: color-mix(in srgb, var(--section-background-color, var(--color-page)) 92%, currentColor 8%);
1652
+ background: var(--color-surface);
1197
1653
  color: inherit;
1198
1654
  }
1199
1655
 
@@ -1333,11 +1789,15 @@ ul {
1333
1789
 
1334
1790
  .image-carousel {
1335
1791
  position: relative;
1792
+ --image-carousel-width-from-height: var(--image-carousel-width-from-height-desktop, var(--image-layout-width));
1793
+ --image-carousel-control-background: var(--color-control-background);
1794
+ --image-carousel-control-background-active: var(--color-control-background-active);
1795
+ --image-carousel-control-color: var(--color-control-text);
1336
1796
  outline: none;
1337
1797
  }
1338
1798
 
1339
1799
  .image-carousel:focus-visible {
1340
- outline: 2px solid currentColor;
1800
+ outline: var(--focus-indicator-width) solid var(--color-focus-ring);
1341
1801
  outline-offset: 0.5rem;
1342
1802
  }
1343
1803
 
@@ -1350,7 +1810,11 @@ ul {
1350
1810
  .image-carousel-stage {
1351
1811
  position: relative;
1352
1812
  display: grid;
1353
- width: min(100%, var(--image-layout-width));
1813
+ width: min(
1814
+ 100%,
1815
+ var(--image-layout-width),
1816
+ var(--image-carousel-width-from-height, var(--image-layout-width))
1817
+ );
1354
1818
  max-height: var(--image-max-height);
1355
1819
  margin: 0 auto;
1356
1820
  aspect-ratio: var(--image-carousel-aspect-ratio, auto);
@@ -1364,6 +1828,7 @@ ul {
1364
1828
  display: grid;
1365
1829
  width: 100%;
1366
1830
  height: 100%;
1831
+ min-height: 0;
1367
1832
  place-items: center;
1368
1833
  }
1369
1834
 
@@ -1380,21 +1845,18 @@ ul {
1380
1845
  .image-carousel[data-carousel-ready='true'] .image-carousel-slide {
1381
1846
  display: grid;
1382
1847
  height: 100%;
1848
+ min-height: 0;
1383
1849
  align-content: start;
1384
1850
  }
1385
1851
 
1386
- .image-carousel-frame .managed-image.managed-image-landscape {
1852
+ .image-carousel-frame .managed-image {
1387
1853
  width: 100%;
1388
- height: auto;
1389
- max-width: 100%;
1390
- max-height: 100%;
1391
- }
1392
-
1393
- .image-carousel-frame .managed-image:not(.managed-image-landscape) {
1394
- width: auto;
1395
1854
  height: 100%;
1855
+ min-width: 0;
1856
+ min-height: 0;
1396
1857
  max-width: 100%;
1397
1858
  max-height: 100%;
1859
+ object-fit: contain;
1398
1860
  }
1399
1861
 
1400
1862
  .image-carousel-button,
@@ -1411,28 +1873,40 @@ ul {
1411
1873
  position: absolute;
1412
1874
  top: 50%;
1413
1875
  z-index: 2;
1414
- width: 2.625rem;
1415
- height: 2.625rem;
1876
+ width: 2.75rem;
1877
+ height: 2.75rem;
1416
1878
  padding: 0;
1417
1879
  place-items: center;
1418
- border: 1px solid currentColor;
1880
+ border: 0;
1419
1881
  border-radius: 999px;
1420
- background: var(--section-background-color, var(--color-page));
1421
- box-shadow: 0 0.25rem 1rem rgb(0 0 0 / 0.12);
1422
- color: inherit;
1882
+ background: var(--image-carousel-control-background);
1883
+ box-shadow: 0 0.125rem 0.5rem rgb(0 0 0 / 18%);
1884
+ color: var(--image-carousel-control-color);
1423
1885
  cursor: pointer;
1424
- font: inherit;
1425
- font-size: 2rem;
1426
- line-height: 1;
1427
- opacity: 0.88;
1428
1886
  transform: translateY(-50%);
1429
1887
  }
1430
1888
 
1889
+ .image-carousel-button svg {
1890
+ width: 1.5rem;
1891
+ height: 1.5rem;
1892
+ fill: none;
1893
+ stroke: currentColor;
1894
+ stroke-linecap: round;
1895
+ stroke-linejoin: round;
1896
+ stroke-width: 2;
1897
+ }
1898
+
1431
1899
  .image-carousel-button:hover:not(:disabled),
1432
1900
  .image-carousel-button:focus-visible:not(:disabled) {
1433
- background: currentColor;
1434
- color: var(--section-background-color, var(--color-page));
1435
- opacity: 1;
1901
+ background: var(--image-carousel-control-background-active);
1902
+ }
1903
+
1904
+ .image-carousel-button:focus-visible:not(:disabled) {
1905
+ outline: var(--focus-indicator-width) solid var(--image-carousel-control-color);
1906
+ outline-offset: 2px;
1907
+ box-shadow:
1908
+ 0 0 0 4px var(--image-carousel-control-background-active),
1909
+ 0 0 0 6px var(--color-focus-ring);
1436
1910
  }
1437
1911
 
1438
1912
  .image-carousel-button:disabled {
@@ -1454,19 +1928,29 @@ ul {
1454
1928
  right: 0.75rem;
1455
1929
  bottom: 0.75rem;
1456
1930
  z-index: 2;
1457
- min-width: 3.25rem;
1458
- min-height: 1.75rem;
1931
+ min-width: 3rem;
1932
+ min-height: 1.875rem;
1933
+ padding: 0.35rem 0.65rem;
1459
1934
  place-items: center;
1460
- border: 1px solid currentColor;
1461
- background: var(--section-background-color, var(--color-page));
1462
- box-shadow: 0 0.25rem 1rem rgb(0 0 0 / 0.12);
1463
- font-size: 0.85rem;
1935
+ border: 0;
1936
+ border-radius: 999px;
1937
+ background: var(--image-carousel-control-background);
1938
+ box-shadow: 0 0.125rem 0.5rem rgb(0 0 0 / 18%);
1939
+ color: var(--image-carousel-control-color);
1940
+ font-size: 0.8125rem;
1941
+ font-variant-numeric: tabular-nums;
1942
+ font-weight: 600;
1464
1943
  line-height: 1;
1465
1944
  text-align: center;
1466
1945
  }
1467
1946
 
1468
1947
  .image-carousel-captions {
1469
- width: min(100%, var(--image-layout-width), 72ch);
1948
+ width: min(
1949
+ 100%,
1950
+ var(--image-layout-width),
1951
+ var(--image-carousel-width-from-height, var(--image-layout-width)),
1952
+ 72ch
1953
+ );
1470
1954
  margin: 0 auto;
1471
1955
  }
1472
1956
 
@@ -1503,7 +1987,7 @@ ul {
1503
1987
  justify-content: var(--section-caption-justify-desktop, center);
1504
1988
  gap: 0.5rem;
1505
1989
  margin-bottom: 0;
1506
- color: inherit;
1990
+ color: var(--section-secondary-text-color, var(--color-secondary-text));
1507
1991
  font-size: inherit;
1508
1992
  font-family: var(--font-sans);
1509
1993
  letter-spacing: 0;
@@ -1529,11 +2013,19 @@ ul {
1529
2013
  backdrop-filter: none;
1530
2014
  }
1531
2015
 
2016
+ .image-carousel {
2017
+ --image-carousel-width-from-height: var(--image-carousel-width-from-height-mobile, var(--image-layout-width));
2018
+ }
2019
+
1532
2020
  .site-nav-row {
1533
2021
  width: min(calc(100% - (var(--content-gutter) * 2)), var(--page-width));
1534
2022
  padding: 0.75rem 0;
1535
2023
  }
1536
2024
 
2025
+ .site-nav-row-mobile-only {
2026
+ display: flex;
2027
+ }
2028
+
1537
2029
  .site-brand {
1538
2030
  max-width: min(70vw, 26rem);
1539
2031
  font-size: 0.76rem;
@@ -1560,6 +2052,10 @@ ul {
1560
2052
  display: none;
1561
2053
  }
1562
2054
 
2055
+ .page-nav.page-nav-title-only {
2056
+ display: block;
2057
+ }
2058
+
1563
2059
  .mobile-nav-menu > summary {
1564
2060
  display: flex;
1565
2061
  align-items: center;
@@ -1572,7 +2068,7 @@ ul {
1572
2068
  letter-spacing: 0.1em;
1573
2069
  line-height: 1;
1574
2070
  list-style: none;
1575
- opacity: 0.9;
2071
+ color: var(--site-top-text-color, var(--color-primary-text));
1576
2072
  text-transform: uppercase;
1577
2073
  }
1578
2074
 
@@ -1645,11 +2141,10 @@ ul {
1645
2141
  width: 100%;
1646
2142
  min-height: 3.25rem;
1647
2143
  padding: 0.75rem 2.5rem 0.75rem 0;
1648
- color: inherit;
2144
+ color: var(--color-secondary-text);
1649
2145
  font-size: 0.94rem;
1650
2146
  letter-spacing: 0;
1651
2147
  line-height: 1.35;
1652
- opacity: 0.78;
1653
2148
  text-decoration: none;
1654
2149
  text-transform: none;
1655
2150
  }
@@ -1665,18 +2160,19 @@ ul {
1665
2160
  padding: 0.75rem 0;
1666
2161
  font-size: 0.94rem;
1667
2162
  line-height: 1.35;
1668
- opacity: 0.78;
2163
+ color: var(--color-secondary-text);
1669
2164
  }
1670
2165
 
1671
2166
  .navigation-page-tree-mobile .navigation-page-disclosure > .navigation-page-open-link {
1672
2167
  display: none;
1673
2168
  align-items: center;
1674
2169
  min-height: 3.25rem;
1675
- max-width: calc(100% - 2.5rem);
2170
+ width: calc(100% - 2.5rem);
1676
2171
  padding: 0.75rem 0;
1677
2172
  font-size: 0.94rem;
1678
2173
  line-height: 1.35;
1679
- opacity: 0.78;
2174
+ color: var(--color-secondary-text);
2175
+ overflow-wrap: anywhere;
1680
2176
  }
1681
2177
 
1682
2178
  .navigation-page-tree-mobile .navigation-page-disclosure[open] > .navigation-page-open-link {
@@ -1687,7 +2183,7 @@ ul {
1687
2183
  .navigation-page-tree-mobile .navigation-page-disclosure > .navigation-page-summary:focus-visible,
1688
2184
  .navigation-page-node-current > .navigation-page-disclosure > .navigation-page-summary {
1689
2185
  background: transparent;
1690
- opacity: 1;
2186
+ color: var(--color-primary-text);
1691
2187
  }
1692
2188
 
1693
2189
  .navigation-page-tree-mobile .navigation-page-disclosure > .navigation-page-summary:hover > :first-child,
@@ -1732,7 +2228,7 @@ ul {
1732
2228
  .navigation-page-tree-mobile .navigation-page-link:hover,
1733
2229
  .navigation-page-tree-mobile .navigation-page-link:focus-visible,
1734
2230
  .navigation-page-tree-mobile .navigation-page-link[aria-current='page'] {
1735
- opacity: 1;
2231
+ color: var(--color-primary-text);
1736
2232
  text-decoration: underline;
1737
2233
  text-decoration-thickness: 1px;
1738
2234
  text-underline-offset: 0.3em;
@@ -1759,12 +2255,10 @@ ul {
1759
2255
  min-height: 3.2rem;
1760
2256
  padding: 0.85rem 0;
1761
2257
  font-size: 0.92rem;
1762
- opacity: 0.78;
2258
+ color: var(--color-secondary-text);
1763
2259
  }
1764
2260
 
1765
- .mobile-nav-panel a,
1766
- .mobile-nav-page-open,
1767
- .mobile-nav-back {
2261
+ .mobile-nav-panel a {
1768
2262
  font-family: inherit;
1769
2263
  font-size: 0.94rem;
1770
2264
  letter-spacing: 0;
@@ -1772,104 +2266,10 @@ ul {
1772
2266
  text-transform: none;
1773
2267
  }
1774
2268
 
1775
- .mobile-nav-page {
1776
- border-top: 1px solid color-mix(in srgb, currentColor 14%, transparent);
1777
- padding: 0;
1778
- }
1779
-
1780
- .mobile-nav-page:first-child {
1781
- border-top: 0;
1782
- }
1783
-
1784
- .mobile-nav-page > a,
1785
- .mobile-nav-page-open {
1786
- display: flex;
1787
- align-items: center;
1788
- justify-content: space-between;
1789
- width: 100%;
1790
- min-height: 3.4rem;
1791
- padding: 0.8rem 0;
1792
- font-weight: 600;
1793
- }
1794
-
1795
- .mobile-nav-page-open {
1796
- display: none;
1797
- border: 0;
1798
- background: transparent;
1799
- color: currentColor;
1800
- cursor: pointer;
1801
- font-weight: 600;
1802
- text-align: left;
1803
- }
1804
-
1805
- .mobile-nav-page-open::after {
1806
- content: "›";
1807
- font-size: 1.35rem;
1808
- line-height: 1;
1809
- opacity: 0.68;
1810
- }
1811
-
1812
- .mobile-nav-page-open:hover > span,
1813
- .mobile-nav-page-open:focus-visible > span,
1814
- .mobile-nav-page-open[aria-current='page'] > span {
1815
- text-decoration: underline;
1816
- text-decoration-thickness: 1px;
1817
- text-underline-offset: 0.3em;
1818
- }
1819
-
1820
- .mobile-nav-menu[data-mobile-navigation-ready='true'] .mobile-nav-page-open,
1821
- .mobile-nav-menu[data-mobile-navigation-ready='true'] .mobile-nav-back {
1822
- display: flex;
1823
- }
1824
-
1825
- .mobile-nav-menu[data-mobile-navigation-ready='true'] .mobile-nav-page-fallback {
1826
- display: none;
1827
- }
1828
-
1829
- .mobile-nav-view[hidden] {
1830
- display: none;
1831
- }
1832
-
1833
- .mobile-nav-menu:not([data-mobile-navigation-ready='true']) .mobile-nav-page-view:not([data-current-page='true']) {
1834
- display: none;
1835
- }
1836
-
1837
- .mobile-nav-page-view + .mobile-nav-page-view,
1838
2269
  .mobile-nav-view + .mobile-nav-view {
1839
2270
  margin-top: 2rem;
1840
2271
  }
1841
2272
 
1842
- .mobile-nav-menu[data-mobile-navigation-ready='true'] .mobile-nav-view {
1843
- margin-top: 0;
1844
- }
1845
-
1846
- .mobile-nav-back {
1847
- display: none;
1848
- align-items: center;
1849
- gap: 0.55rem;
1850
- min-height: 2.75rem;
1851
- margin: -0.4rem 0 0.65rem;
1852
- border: 0;
1853
- padding: 0;
1854
- background: transparent;
1855
- color: currentColor;
1856
- cursor: pointer;
1857
- opacity: 0.78;
1858
- }
1859
-
1860
- .mobile-nav-back::before {
1861
- content: "‹";
1862
- font-size: 1.35rem;
1863
- line-height: 1;
1864
- }
1865
-
1866
- .mobile-nav-back:hover,
1867
- .mobile-nav-back:focus-visible {
1868
- opacity: 1;
1869
- text-decoration: underline;
1870
- text-underline-offset: 0.25em;
1871
- }
1872
-
1873
2273
  .mobile-nav-sections {
1874
2274
  border-top: 1px solid color-mix(in srgb, currentColor 16%, transparent);
1875
2275
  }
@@ -1882,10 +2282,9 @@ ul {
1882
2282
  min-height: 3.2rem;
1883
2283
  padding: 0.85rem 0;
1884
2284
  font-size: 0.92rem;
1885
- opacity: 0.78;
2285
+ color: var(--color-secondary-text);
1886
2286
  }
1887
2287
 
1888
- .mobile-nav-sections .mobile-nav-overview,
1889
2288
  .mobile-nav-sections .mobile-nav-page-top {
1890
2289
  font-weight: 650;
1891
2290
  }
@@ -1897,7 +2296,7 @@ ul {
1897
2296
  .mobile-nav-sections a:hover,
1898
2297
  .mobile-nav-sections a:focus-visible,
1899
2298
  .mobile-nav-sections a[aria-current='location'] {
1900
- opacity: 1;
2299
+ color: var(--color-primary-text);
1901
2300
  text-decoration: underline;
1902
2301
  text-decoration-thickness: 1px;
1903
2302
  text-underline-offset: 0.25em;
@@ -1922,6 +2321,7 @@ ul {
1922
2321
 
1923
2322
  .site-page-layout-tree .site-section::before {
1924
2323
  left: calc(50% - 50vw);
2324
+ right: calc(50% - 50vw);
1925
2325
  }
1926
2326
 
1927
2327
  .tree-local-navigation {
@@ -1955,16 +2355,21 @@ ul {
1955
2355
  }
1956
2356
 
1957
2357
  .section-header {
1958
- width: min(100%, var(--section-heading-width-mobile, var(--section-heading-width-desktop, 760px)));
2358
+ width: min(
2359
+ 100%,
2360
+ var(
2361
+ --reader-text-width,
2362
+ var(--section-heading-width-mobile, var(--section-heading-width-desktop, 760px))
2363
+ )
2364
+ );
1959
2365
  text-align: var(--section-heading-align-mobile, var(--section-heading-align-desktop, center));
1960
2366
  }
1961
2367
 
1962
- .section-reading-layout {
1963
- --section-reading-body-width: var(--section-body-width-mobile, var(--section-body-width-desktop, var(--text-width)));
1964
- }
1965
-
1966
2368
  .section-markdown {
1967
- width: min(100%, var(--section-body-width-mobile, var(--section-body-width-desktop, var(--text-width))));
2369
+ width: min(
2370
+ 100%,
2371
+ var(--reader-text-width, var(--section-body-width-mobile, var(--section-body-width-desktop, var(--text-width))))
2372
+ );
1968
2373
  font-size: var(
1969
2374
  --section-body-font-size-mobile,
1970
2375
  var(--section-body-font-size-desktop, clamp(0.96rem, 0.94rem + 0.08vw, 1rem))
@@ -2011,29 +2416,14 @@ ul {
2011
2416
  max-height: var(--image-max-height);
2012
2417
  }
2013
2418
 
2014
- .image-carousel-stage {
2015
- aspect-ratio: auto;
2016
- }
2017
-
2018
- .image-carousel-viewport {
2019
- width: 100%;
2020
- height: auto;
2021
- aspect-ratio: var(--image-carousel-aspect-ratio, auto);
2022
- }
2023
-
2024
- .image-carousel[data-carousel-ready='true'] .image-carousel-button {
2025
- display: none;
2026
- }
2027
-
2028
2419
  .image-carousel-position {
2029
2420
  position: absolute;
2030
2421
  right: 0.5rem;
2031
2422
  bottom: 0.5rem;
2032
2423
  min-width: 3rem;
2033
- min-height: 1.5rem;
2034
- box-shadow: 0 0.2rem 0.75rem rgb(0 0 0 / 0.1);
2035
- font-size: 0.78rem;
2036
- opacity: 0.88;
2424
+ min-height: 1.75rem;
2425
+ padding: 0.3rem 0.55rem;
2426
+ font-size: 0.75rem;
2037
2427
  }
2038
2428
 
2039
2429
  :is(.image-stack, .managed-images) {
@@ -2045,3 +2435,76 @@ ul {
2045
2435
  font-size: 1rem;
2046
2436
  }
2047
2437
  }
2438
+
2439
+ @media (forced-colors: active) {
2440
+ :root,
2441
+ :root[data-color-mode='dark'],
2442
+ :root[data-color-mode='system'] {
2443
+ --color-page: Canvas;
2444
+ --color-primary-text: CanvasText;
2445
+ --color-secondary-text: CanvasText;
2446
+ --color-link-text: LinkText;
2447
+ --color-text: CanvasText;
2448
+ --color-muted: CanvasText;
2449
+ --color-accent: LinkText;
2450
+ --color-surface: Canvas;
2451
+ --color-soft: CanvasText;
2452
+ --color-border: CanvasText;
2453
+ --color-nav-background: Canvas;
2454
+ --color-nav-separator: CanvasText;
2455
+ --color-frame-background: Canvas;
2456
+ --color-frame-text: CanvasText;
2457
+ --color-surface-base-background: Canvas;
2458
+ --color-surface-base-text: CanvasText;
2459
+ --color-surface-base-secondary-text: CanvasText;
2460
+ --color-surface-soft-background: Canvas;
2461
+ --color-surface-soft-text: CanvasText;
2462
+ --color-surface-soft-secondary-text: CanvasText;
2463
+ --color-surface-emphasis-background: Canvas;
2464
+ --color-surface-emphasis-text: CanvasText;
2465
+ --color-surface-emphasis-secondary-text: CanvasText;
2466
+ --color-focus-ring: Highlight;
2467
+ --color-focus-ring-contrast: Canvas;
2468
+ --color-selection-background: Highlight;
2469
+ --color-selection-text: HighlightText;
2470
+ --color-control-background: ButtonFace;
2471
+ --color-control-background-active: Highlight;
2472
+ --color-control-text: ButtonText;
2473
+ --color-code-background: Canvas;
2474
+ --color-code-text: CanvasText;
2475
+ --color-warning-accent: Highlight;
2476
+ --color-warning-surface: Canvas;
2477
+ --color-warning-text: CanvasText;
2478
+ --color-error-accent: Highlight;
2479
+ --color-error-surface: Canvas;
2480
+ --color-error-text: CanvasText;
2481
+ --color-success-accent: Highlight;
2482
+ --color-success-surface: Canvas;
2483
+ --color-success-text: CanvasText;
2484
+ }
2485
+
2486
+ .site-top {
2487
+ backdrop-filter: none;
2488
+ }
2489
+
2490
+ .display-settings-panel,
2491
+ .mobile-nav-panel,
2492
+ .site-nav-submenu > nav,
2493
+ .card-list-item,
2494
+ .image-carousel-button,
2495
+ .image-carousel-position {
2496
+ border: 1px solid CanvasText;
2497
+ box-shadow: none;
2498
+ }
2499
+
2500
+ :is(.display-settings button, .display-settings-segmented span, .mobile-nav-menu > summary, .site-banner-dismiss) {
2501
+ border-color: ButtonText;
2502
+ background: ButtonFace;
2503
+ color: ButtonText;
2504
+ }
2505
+
2506
+ :is(.display-settings-segmented input:checked + span, .image-carousel-button:hover:not(:disabled)) {
2507
+ background: Highlight;
2508
+ color: HighlightText;
2509
+ }
2510
+ }