metanorma-document 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (682) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/rake.yml +21 -0
  3. data/.github/workflows/release.yml +25 -0
  4. data/.github/workflows/roundtrip-samples.yml +132 -0
  5. data/.gitignore +19 -0
  6. data/.rspec +3 -0
  7. data/.rubocop.yml +22 -0
  8. data/.rubocop_todo.yml +166 -0
  9. data/CHANGELOG.md +21 -0
  10. data/Gemfile +26 -0
  11. data/LICENSE.txt +25 -0
  12. data/README.adoc +176 -0
  13. data/Rakefile +14 -0
  14. data/bin/console +15 -0
  15. data/bin/setup +8 -0
  16. data/data/javascripts/components/mn-code-copy.js +36 -0
  17. data/data/javascripts/components/mn-glossary.js +103 -0
  18. data/data/javascripts/components/mn-index-panel.js +33 -0
  19. data/data/javascripts/components/mn-lightbox.js +18 -0
  20. data/data/javascripts/components/mn-search.js +212 -0
  21. data/data/javascripts/components/mn-shortcuts.js +83 -0
  22. data/data/javascripts/components/mn-stem-dropdown.js +42 -0
  23. data/data/javascripts/components/mn-toc.js +182 -0
  24. data/data/javascripts/core/mn-navigation.js +84 -0
  25. data/data/javascripts/core/mn-reader.js +38 -0
  26. data/data/javascripts/core/mn-reveal.js +36 -0
  27. data/data/javascripts/core/mn-scroll.js +87 -0
  28. data/data/javascripts/core/mn-theme.js +140 -0
  29. data/data/javascripts/search.js +203 -0
  30. data/data/logos/bipm-logo.svg +1 -0
  31. data/data/logos/iec-logo.svg +1 -0
  32. data/data/logos/iho-logo.svg +555 -0
  33. data/data/logos/iso-logo.svg +1 -0
  34. data/data/logos/itu-logo.svg +1 -0
  35. data/data/logos/metanorma-logo.svg +41 -0
  36. data/data/logos/ogc-logo.svg +1 -0
  37. data/data/logos/pdfa-logo.svg +95 -0
  38. data/data/stylesheets/base/_dark.css +193 -0
  39. data/data/stylesheets/base/_layout.css +112 -0
  40. data/data/stylesheets/base/_print.css +46 -0
  41. data/data/stylesheets/base/_reset.css +55 -0
  42. data/data/stylesheets/base/_transitions.css +77 -0
  43. data/data/stylesheets/base/_typography.css +89 -0
  44. data/data/stylesheets/components/admonition.css +19 -0
  45. data/data/stylesheets/components/bibliography.css +18 -0
  46. data/data/stylesheets/components/cover.css +205 -0
  47. data/data/stylesheets/components/example.css +20 -0
  48. data/data/stylesheets/components/figure.css +30 -0
  49. data/data/stylesheets/components/footer.css +24 -0
  50. data/data/stylesheets/components/footnote.css +41 -0
  51. data/data/stylesheets/components/formula.css +25 -0
  52. data/data/stylesheets/components/glossary.css +61 -0
  53. data/data/stylesheets/components/header.css +149 -0
  54. data/data/stylesheets/components/index.css +118 -0
  55. data/data/stylesheets/components/inline.css +88 -0
  56. data/data/stylesheets/components/note.css +24 -0
  57. data/data/stylesheets/components/progress.css +40 -0
  58. data/data/stylesheets/components/search.css +45 -0
  59. data/data/stylesheets/components/section.css +26 -0
  60. data/data/stylesheets/components/shortcuts.css +71 -0
  61. data/data/stylesheets/components/sourcecode.css +30 -0
  62. data/data/stylesheets/components/table.css +57 -0
  63. data/data/stylesheets/components/term.css +45 -0
  64. data/data/stylesheets/components/toc.css +162 -0
  65. data/lib/data/dist/iso_document/frontend/assets/index-mwzbzmnK.js +22 -0
  66. data/lib/data/dist/iso_document/frontend/assets/index-pGvKTNid.css +1 -0
  67. data/lib/data/dist/iso_document/frontend/assets/iso-red.svg +53 -0
  68. data/lib/data/dist/iso_document/frontend/index.html +13 -0
  69. data/lib/metanorma/basic_document/ancillary_blocks/example_block.rb +58 -0
  70. data/lib/metanorma/basic_document/ancillary_blocks/figure_block.rb +64 -0
  71. data/lib/metanorma/basic_document/ancillary_blocks/formula_block.rb +38 -0
  72. data/lib/metanorma/basic_document/ancillary_blocks/literal_block.rb +26 -0
  73. data/lib/metanorma/basic_document/ancillary_blocks/sourcecode_block.rb +57 -0
  74. data/lib/metanorma/basic_document/ancillary_blocks/subfigure.rb +18 -0
  75. data/lib/metanorma/basic_document/ancillary_blocks.rb +15 -0
  76. data/lib/metanorma/basic_document/bib_data/bib_data.rb +18 -0
  77. data/lib/metanorma/basic_document/bib_data/bib_data_extension_type.rb +17 -0
  78. data/lib/metanorma/basic_document/bib_data/bibliographic_item.rb +93 -0
  79. data/lib/metanorma/basic_document/bib_data/document_type.rb +21 -0
  80. data/lib/metanorma/basic_document/bib_data.rb +14 -0
  81. data/lib/metanorma/basic_document/blocks/basic_block.rb +13 -0
  82. data/lib/metanorma/basic_document/blocks/basic_block_no_notes.rb +21 -0
  83. data/lib/metanorma/basic_document/blocks/note_block.rb +13 -0
  84. data/lib/metanorma/basic_document/blocks.rb +32 -0
  85. data/lib/metanorma/basic_document/change/attribute_change_action.rb +19 -0
  86. data/lib/metanorma/basic_document/change/attribute_modify.rb +19 -0
  87. data/lib/metanorma/basic_document/change/change.rb +25 -0
  88. data/lib/metanorma/basic_document/change/change_set.rb +20 -0
  89. data/lib/metanorma/basic_document/change/content_action.rb +21 -0
  90. data/lib/metanorma/basic_document/change/content_change.rb +17 -0
  91. data/lib/metanorma/basic_document/change/content_change_action.rb +28 -0
  92. data/lib/metanorma/basic_document/change/content_modify.rb +18 -0
  93. data/lib/metanorma/basic_document/change/node_change.rb +16 -0
  94. data/lib/metanorma/basic_document/change/node_delete.rb +17 -0
  95. data/lib/metanorma/basic_document/change/node_insert.rb +18 -0
  96. data/lib/metanorma/basic_document/change/node_move.rb +20 -0
  97. data/lib/metanorma/basic_document/change/unique_identifier.rb +17 -0
  98. data/lib/metanorma/basic_document/change.rb +23 -0
  99. data/lib/metanorma/basic_document/contrib_metadata/contribution_element_metadata.rb +22 -0
  100. data/lib/metanorma/basic_document/contrib_metadata/hash.rb +19 -0
  101. data/lib/metanorma/basic_document/contrib_metadata/integrity_value.rb +15 -0
  102. data/lib/metanorma/basic_document/contrib_metadata/iso10118_oid.rb +17 -0
  103. data/lib/metanorma/basic_document/contrib_metadata/iso14888_oid.rb +17 -0
  104. data/lib/metanorma/basic_document/contrib_metadata/signature.rb +21 -0
  105. data/lib/metanorma/basic_document/contrib_metadata.rb +16 -0
  106. data/lib/metanorma/basic_document/data_types/formatted_string.rb +17 -0
  107. data/lib/metanorma/basic_document/data_types/iso15924_code.rb +17 -0
  108. data/lib/metanorma/basic_document/data_types/iso3166_code.rb +17 -0
  109. data/lib/metanorma/basic_document/data_types/iso639_code.rb +17 -0
  110. data/lib/metanorma/basic_document/data_types/iso8601_date_time.rb +17 -0
  111. data/lib/metanorma/basic_document/data_types/localized_string.rb +23 -0
  112. data/lib/metanorma/basic_document/data_types/string_format.rb +22 -0
  113. data/lib/metanorma/basic_document/data_types/uri.rb +17 -0
  114. data/lib/metanorma/basic_document/data_types.rb +16 -0
  115. data/lib/metanorma/basic_document/empty_elements/basic_element.rb +18 -0
  116. data/lib/metanorma/basic_document/empty_elements/horizontal_rule_element.rb +14 -0
  117. data/lib/metanorma/basic_document/empty_elements/index_element.rb +24 -0
  118. data/lib/metanorma/basic_document/empty_elements/line_break_element.rb +14 -0
  119. data/lib/metanorma/basic_document/empty_elements/page_break_element.rb +15 -0
  120. data/lib/metanorma/basic_document/empty_elements.rb +16 -0
  121. data/lib/metanorma/basic_document/id_elements/alt_source.rb +21 -0
  122. data/lib/metanorma/basic_document/id_elements/audio.rb +18 -0
  123. data/lib/metanorma/basic_document/id_elements/bookmark.rb +17 -0
  124. data/lib/metanorma/basic_document/id_elements/id_element.rb +19 -0
  125. data/lib/metanorma/basic_document/id_elements/image.rb +19 -0
  126. data/lib/metanorma/basic_document/id_elements/media.rb +39 -0
  127. data/lib/metanorma/basic_document/id_elements/media_type.rb +17 -0
  128. data/lib/metanorma/basic_document/id_elements/video.rb +22 -0
  129. data/lib/metanorma/basic_document/id_elements.rb +16 -0
  130. data/lib/metanorma/basic_document/lists/definition.rb +21 -0
  131. data/lib/metanorma/basic_document/lists/definition_list.rb +18 -0
  132. data/lib/metanorma/basic_document/lists/list.rb +17 -0
  133. data/lib/metanorma/basic_document/lists/ordered_list.rb +19 -0
  134. data/lib/metanorma/basic_document/lists/ordered_list_type.rb +21 -0
  135. data/lib/metanorma/basic_document/lists/unordered_list.rb +14 -0
  136. data/lib/metanorma/basic_document/lists.rb +14 -0
  137. data/lib/metanorma/basic_document/multi_paragraph/admonition_block.rb +36 -0
  138. data/lib/metanorma/basic_document/multi_paragraph/admonition_type.rb +21 -0
  139. data/lib/metanorma/basic_document/multi_paragraph/paragraphs_block.rb +19 -0
  140. data/lib/metanorma/basic_document/multi_paragraph/quote_block.rb +26 -0
  141. data/lib/metanorma/basic_document/multi_paragraph/review_block.rb +32 -0
  142. data/lib/metanorma/basic_document/multi_paragraph.rb +16 -0
  143. data/lib/metanorma/basic_document/paragraphs/paragraph_block.rb +26 -0
  144. data/lib/metanorma/basic_document/paragraphs/paragraph_with_footnote.rb +21 -0
  145. data/lib/metanorma/basic_document/paragraphs/text_alignment.rb +21 -0
  146. data/lib/metanorma/basic_document/paragraphs.rb +12 -0
  147. data/lib/metanorma/basic_document/reference_elements/callout.rb +21 -0
  148. data/lib/metanorma/basic_document/reference_elements/citation.rb +25 -0
  149. data/lib/metanorma/basic_document/reference_elements/footnote.rb +17 -0
  150. data/lib/metanorma/basic_document/reference_elements/index_xref_element.rb +25 -0
  151. data/lib/metanorma/basic_document/reference_elements/reference_element.rb +22 -0
  152. data/lib/metanorma/basic_document/reference_elements/reference_format.rb +21 -0
  153. data/lib/metanorma/basic_document/reference_elements/reference_to_citation_element.rb +20 -0
  154. data/lib/metanorma/basic_document/reference_elements/reference_to_id_element.rb +17 -0
  155. data/lib/metanorma/basic_document/reference_elements/reference_to_id_with_paragraph_element.rb +19 -0
  156. data/lib/metanorma/basic_document/reference_elements/reference_to_link_element.rb +17 -0
  157. data/lib/metanorma/basic_document/reference_elements.rb +25 -0
  158. data/lib/metanorma/basic_document/sections/basic_section.rb +38 -0
  159. data/lib/metanorma/basic_document/sections/content_section.rb +18 -0
  160. data/lib/metanorma/basic_document/sections/hierarchical_section.rb +18 -0
  161. data/lib/metanorma/basic_document/sections/references_section.rb +19 -0
  162. data/lib/metanorma/basic_document/sections.rb +14 -0
  163. data/lib/metanorma/basic_document/tables/paragraph_table_cell.rb +18 -0
  164. data/lib/metanorma/basic_document/tables/table_block.rb +37 -0
  165. data/lib/metanorma/basic_document/tables/table_cell.rb +23 -0
  166. data/lib/metanorma/basic_document/tables/text_alignment.rb +21 -0
  167. data/lib/metanorma/basic_document/tables/text_table_cell.rb +18 -0
  168. data/lib/metanorma/basic_document/tables/text_table_row.rb +21 -0
  169. data/lib/metanorma/basic_document/tables/vertical_alignment.rb +21 -0
  170. data/lib/metanorma/basic_document/tables.rb +16 -0
  171. data/lib/metanorma/basic_document/text_elements/asciiml.rb +17 -0
  172. data/lib/metanorma/basic_document/text_elements/emphasis_element.rb +14 -0
  173. data/lib/metanorma/basic_document/text_elements/keyword_element.rb +14 -0
  174. data/lib/metanorma/basic_document/text_elements/latex.rb +17 -0
  175. data/lib/metanorma/basic_document/text_elements/mathml.rb +17 -0
  176. data/lib/metanorma/basic_document/text_elements/monospace_element.rb +14 -0
  177. data/lib/metanorma/basic_document/text_elements/ruby_element.rb +21 -0
  178. data/lib/metanorma/basic_document/text_elements/small_caps_element.rb +14 -0
  179. data/lib/metanorma/basic_document/text_elements/stem_element.rb +19 -0
  180. data/lib/metanorma/basic_document/text_elements/stem_type.rb +17 -0
  181. data/lib/metanorma/basic_document/text_elements/stem_value.rb +17 -0
  182. data/lib/metanorma/basic_document/text_elements/strike_element.rb +14 -0
  183. data/lib/metanorma/basic_document/text_elements/strong_element.rb +14 -0
  184. data/lib/metanorma/basic_document/text_elements/subscript_element.rb +14 -0
  185. data/lib/metanorma/basic_document/text_elements/superscript_element.rb +14 -0
  186. data/lib/metanorma/basic_document/text_elements/text_element.rb +18 -0
  187. data/lib/metanorma/basic_document/text_elements/text_element_type.rb +20 -0
  188. data/lib/metanorma/basic_document/text_elements/underline_element.rb +13 -0
  189. data/lib/metanorma/basic_document/text_elements.rb +33 -0
  190. data/lib/metanorma/basic_document.rb +23 -0
  191. data/lib/metanorma/bipm_document/metadata/bipm_bib_data_extension_type.rb +20 -0
  192. data/lib/metanorma/bipm_document/metadata/bipm_bibliographic_item.rb +31 -0
  193. data/lib/metanorma/bipm_document/metadata/bipm_structured_identifier.rb +21 -0
  194. data/lib/metanorma/bipm_document/metadata.rb +15 -0
  195. data/lib/metanorma/bipm_document/root.rb +65 -0
  196. data/lib/metanorma/bipm_document.rb +10 -0
  197. data/lib/metanorma/cc_document/metadata/cc_bib_data_extension_type.rb +12 -0
  198. data/lib/metanorma/cc_document/metadata/cc_bibliographic_item.rb +17 -0
  199. data/lib/metanorma/cc_document/metadata.rb +11 -0
  200. data/lib/metanorma/cc_document/root.rb +65 -0
  201. data/lib/metanorma/cc_document.rb +10 -0
  202. data/lib/metanorma/collection/directive.rb +18 -0
  203. data/lib/metanorma/collection/doc_container.rb +18 -0
  204. data/lib/metanorma/collection/entry.rb +33 -0
  205. data/lib/metanorma/collection/root.rb +31 -0
  206. data/lib/metanorma/collection.rb +12 -0
  207. data/lib/metanorma/document/components/ancillary_blocks/example_block.rb +124 -0
  208. data/lib/metanorma/document/components/ancillary_blocks/figure_block.rb +113 -0
  209. data/lib/metanorma/document/components/ancillary_blocks/formula_block.rb +85 -0
  210. data/lib/metanorma/document/components/ancillary_blocks/key_element.rb +26 -0
  211. data/lib/metanorma/document/components/ancillary_blocks/literal_block.rb +32 -0
  212. data/lib/metanorma/document/components/ancillary_blocks/sourcecode_block.rb +123 -0
  213. data/lib/metanorma/document/components/ancillary_blocks/subfigure.rb +41 -0
  214. data/lib/metanorma/document/components/ancillary_blocks.rb +18 -0
  215. data/lib/metanorma/document/components/bib_data/bib_data.rb +67 -0
  216. data/lib/metanorma/document/components/bib_data/bib_data_extension_type.rb +19 -0
  217. data/lib/metanorma/document/components/bib_data/bibliographic_item.rb +107 -0
  218. data/lib/metanorma/document/components/bib_data/document_type.rb +23 -0
  219. data/lib/metanorma/document/components/bib_data.rb +15 -0
  220. data/lib/metanorma/document/components/blocks/basic_block.rb +19 -0
  221. data/lib/metanorma/document/components/blocks/basic_block_no_notes.rb +22 -0
  222. data/lib/metanorma/document/components/blocks/note_block.rb +79 -0
  223. data/lib/metanorma/document/components/blocks.rb +13 -0
  224. data/lib/metanorma/document/components/change/attribute_change_action.rb +21 -0
  225. data/lib/metanorma/document/components/change/attribute_modify.rb +20 -0
  226. data/lib/metanorma/document/components/change/change.rb +27 -0
  227. data/lib/metanorma/document/components/change/change_set.rb +21 -0
  228. data/lib/metanorma/document/components/change/content_action.rb +23 -0
  229. data/lib/metanorma/document/components/change/content_change.rb +19 -0
  230. data/lib/metanorma/document/components/change/content_change_action.rb +30 -0
  231. data/lib/metanorma/document/components/change/content_modify.rb +19 -0
  232. data/lib/metanorma/document/components/change/node_change.rb +18 -0
  233. data/lib/metanorma/document/components/change/node_delete.rb +19 -0
  234. data/lib/metanorma/document/components/change/node_insert.rb +20 -0
  235. data/lib/metanorma/document/components/change/node_move.rb +22 -0
  236. data/lib/metanorma/document/components/change/unique_identifier.rb +19 -0
  237. data/lib/metanorma/document/components/change.rb +24 -0
  238. data/lib/metanorma/document/components/contrib_metadata/contribution_element_metadata.rb +23 -0
  239. data/lib/metanorma/document/components/contrib_metadata/hash.rb +21 -0
  240. data/lib/metanorma/document/components/contrib_metadata/integrity_value.rb +17 -0
  241. data/lib/metanorma/document/components/contrib_metadata/iso10118_oid.rb +19 -0
  242. data/lib/metanorma/document/components/contrib_metadata/iso14888_oid.rb +19 -0
  243. data/lib/metanorma/document/components/contrib_metadata/signature.rb +23 -0
  244. data/lib/metanorma/document/components/contrib_metadata.rb +17 -0
  245. data/lib/metanorma/document/components/data_types/formatted_string.rb +95 -0
  246. data/lib/metanorma/document/components/data_types/iso15924_code.rb +19 -0
  247. data/lib/metanorma/document/components/data_types/iso3166_code.rb +19 -0
  248. data/lib/metanorma/document/components/data_types/iso639_code.rb +19 -0
  249. data/lib/metanorma/document/components/data_types/iso8601_date_time.rb +19 -0
  250. data/lib/metanorma/document/components/data_types/localized_string.rb +29 -0
  251. data/lib/metanorma/document/components/data_types/string_format.rb +24 -0
  252. data/lib/metanorma/document/components/data_types/uri.rb +19 -0
  253. data/lib/metanorma/document/components/data_types.rb +18 -0
  254. data/lib/metanorma/document/components/empty_elements/basic_element.rb +20 -0
  255. data/lib/metanorma/document/components/empty_elements/horizontal_rule_element.rb +16 -0
  256. data/lib/metanorma/document/components/empty_elements/index_element.rb +26 -0
  257. data/lib/metanorma/document/components/empty_elements/line_break_element.rb +16 -0
  258. data/lib/metanorma/document/components/empty_elements/page_break_element.rb +20 -0
  259. data/lib/metanorma/document/components/empty_elements.rb +18 -0
  260. data/lib/metanorma/document/components/id_elements/alt_source.rb +23 -0
  261. data/lib/metanorma/document/components/id_elements/audio.rb +19 -0
  262. data/lib/metanorma/document/components/id_elements/bookmark.rb +24 -0
  263. data/lib/metanorma/document/components/id_elements/id_element.rb +21 -0
  264. data/lib/metanorma/document/components/id_elements/image.rb +23 -0
  265. data/lib/metanorma/document/components/id_elements/media.rb +41 -0
  266. data/lib/metanorma/document/components/id_elements/media_type.rb +19 -0
  267. data/lib/metanorma/document/components/id_elements/video.rb +23 -0
  268. data/lib/metanorma/document/components/id_elements.rb +18 -0
  269. data/lib/metanorma/document/components/inline/asciimath_element.rb +16 -0
  270. data/lib/metanorma/document/components/inline/attribution_element.rb +17 -0
  271. data/lib/metanorma/document/components/inline/bcp14_element.rb +16 -0
  272. data/lib/metanorma/document/components/inline/biblio_tag_element.rb +23 -0
  273. data/lib/metanorma/document/components/inline/br_element.rb +13 -0
  274. data/lib/metanorma/document/components/inline/comma_element.rb +13 -0
  275. data/lib/metanorma/document/components/inline/concept_element.rb +22 -0
  276. data/lib/metanorma/document/components/inline/display_text_element.rb +37 -0
  277. data/lib/metanorma/document/components/inline/em_raw_element.rb +23 -0
  278. data/lib/metanorma/document/components/inline/enum_comma_element.rb +13 -0
  279. data/lib/metanorma/document/components/inline/eref_element.rb +35 -0
  280. data/lib/metanorma/document/components/inline/fmt_admitted_element.rb +17 -0
  281. data/lib/metanorma/document/components/inline/fmt_annotation_body_element.rb +38 -0
  282. data/lib/metanorma/document/components/inline/fmt_annotation_end_element.rb +26 -0
  283. data/lib/metanorma/document/components/inline/fmt_annotation_start_element.rb +26 -0
  284. data/lib/metanorma/document/components/inline/fmt_concept_element.rb +23 -0
  285. data/lib/metanorma/document/components/inline/fmt_definition_element.rb +18 -0
  286. data/lib/metanorma/document/components/inline/fmt_fn_body_element.rb +22 -0
  287. data/lib/metanorma/document/components/inline/fmt_fn_label_element.rb +23 -0
  288. data/lib/metanorma/document/components/inline/fmt_footnote_container_element.rb +16 -0
  289. data/lib/metanorma/document/components/inline/fmt_identifier_element.rb +16 -0
  290. data/lib/metanorma/document/components/inline/fmt_name_element.rb +23 -0
  291. data/lib/metanorma/document/components/inline/fmt_preferred_element.rb +17 -0
  292. data/lib/metanorma/document/components/inline/fmt_sourcecode_element.rb +29 -0
  293. data/lib/metanorma/document/components/inline/fmt_stem_element.rb +18 -0
  294. data/lib/metanorma/document/components/inline/fmt_termsource_element.rb +20 -0
  295. data/lib/metanorma/document/components/inline/fmt_title_element.rb +29 -0
  296. data/lib/metanorma/document/components/inline/fmt_xref_element.rb +25 -0
  297. data/lib/metanorma/document/components/inline/fmt_xref_label_element.rb +23 -0
  298. data/lib/metanorma/document/components/inline/fn_element.rb +31 -0
  299. data/lib/metanorma/document/components/inline/link_element.rb +27 -0
  300. data/lib/metanorma/document/components/inline/localized_string_element.rb +31 -0
  301. data/lib/metanorma/document/components/inline/localized_strings_element.rb +16 -0
  302. data/lib/metanorma/document/components/inline/math_element.rb +16 -0
  303. data/lib/metanorma/document/components/inline/name_with_id_element.rb +20 -0
  304. data/lib/metanorma/document/components/inline/semx_child_element.rb +25 -0
  305. data/lib/metanorma/document/components/inline/semx_element.rb +117 -0
  306. data/lib/metanorma/document/components/inline/small_cap_element.rb +16 -0
  307. data/lib/metanorma/document/components/inline/span_element.rb +37 -0
  308. data/lib/metanorma/document/components/inline/stem_inline_element.rb +24 -0
  309. data/lib/metanorma/document/components/inline/strong_raw_element.rb +25 -0
  310. data/lib/metanorma/document/components/inline/sub_element.rb +15 -0
  311. data/lib/metanorma/document/components/inline/sup_element.rb +26 -0
  312. data/lib/metanorma/document/components/inline/tab_element.rb +13 -0
  313. data/lib/metanorma/document/components/inline/title_with_annotation_element.rb +51 -0
  314. data/lib/metanorma/document/components/inline/tt_element.rb +20 -0
  315. data/lib/metanorma/document/components/inline/variant_title_element.rb +27 -0
  316. data/lib/metanorma/document/components/inline/xref_element.rb +24 -0
  317. data/lib/metanorma/document/components/inline.rb +100 -0
  318. data/lib/metanorma/document/components/lists/dd_element.rb +58 -0
  319. data/lib/metanorma/document/components/lists/definition.rb +32 -0
  320. data/lib/metanorma/document/components/lists/definition_list.rb +44 -0
  321. data/lib/metanorma/document/components/lists/dt_element.rb +71 -0
  322. data/lib/metanorma/document/components/lists/list.rb +25 -0
  323. data/lib/metanorma/document/components/lists/list_item.rb +102 -0
  324. data/lib/metanorma/document/components/lists/ordered_list.rb +42 -0
  325. data/lib/metanorma/document/components/lists/ordered_list_type.rb +23 -0
  326. data/lib/metanorma/document/components/lists/unordered_list.rb +34 -0
  327. data/lib/metanorma/document/components/lists.rb +19 -0
  328. data/lib/metanorma/document/components/multi_paragraph/admonition_block.rb +62 -0
  329. data/lib/metanorma/document/components/multi_paragraph/admonition_type.rb +23 -0
  330. data/lib/metanorma/document/components/multi_paragraph/paragraphs_block.rb +21 -0
  331. data/lib/metanorma/document/components/multi_paragraph/quote_block.rb +74 -0
  332. data/lib/metanorma/document/components/multi_paragraph/review_block.rb +34 -0
  333. data/lib/metanorma/document/components/multi_paragraph.rb +15 -0
  334. data/lib/metanorma/document/components/paragraphs/paragraph_block.rb +155 -0
  335. data/lib/metanorma/document/components/paragraphs/paragraph_with_footnote.rb +24 -0
  336. data/lib/metanorma/document/components/paragraphs/text_alignment.rb +23 -0
  337. data/lib/metanorma/document/components/paragraphs.rb +14 -0
  338. data/lib/metanorma/document/components/reference_elements/callout.rb +25 -0
  339. data/lib/metanorma/document/components/reference_elements/citation.rb +38 -0
  340. data/lib/metanorma/document/components/reference_elements/footnote.rb +19 -0
  341. data/lib/metanorma/document/components/reference_elements/index_xref_element.rb +27 -0
  342. data/lib/metanorma/document/components/reference_elements/reference_element.rb +24 -0
  343. data/lib/metanorma/document/components/reference_elements/reference_format.rb +23 -0
  344. data/lib/metanorma/document/components/reference_elements/reference_to_citation_element.rb +33 -0
  345. data/lib/metanorma/document/components/reference_elements/reference_to_id_element.rb +19 -0
  346. data/lib/metanorma/document/components/reference_elements/reference_to_id_with_paragraph_element.rb +21 -0
  347. data/lib/metanorma/document/components/reference_elements/reference_to_link_element.rb +19 -0
  348. data/lib/metanorma/document/components/reference_elements.rb +27 -0
  349. data/lib/metanorma/document/components/sections/basic_section.rb +37 -0
  350. data/lib/metanorma/document/components/sections/content_section.rb +20 -0
  351. data/lib/metanorma/document/components/sections/hierarchical_section.rb +19 -0
  352. data/lib/metanorma/document/components/sections/references_section.rb +25 -0
  353. data/lib/metanorma/document/components/sections.rb +15 -0
  354. data/lib/metanorma/document/components/tables/header_table_cell.rb +17 -0
  355. data/lib/metanorma/document/components/tables/paragraph_table_cell.rb +20 -0
  356. data/lib/metanorma/document/components/tables/table_block.rb +99 -0
  357. data/lib/metanorma/document/components/tables/table_cell.rb +139 -0
  358. data/lib/metanorma/document/components/tables/table_section.rb +42 -0
  359. data/lib/metanorma/document/components/tables/text_alignment.rb +23 -0
  360. data/lib/metanorma/document/components/tables/text_table_cell.rb +17 -0
  361. data/lib/metanorma/document/components/tables/text_table_row.rb +30 -0
  362. data/lib/metanorma/document/components/tables/vertical_alignment.rb +23 -0
  363. data/lib/metanorma/document/components/tables.rb +22 -0
  364. data/lib/metanorma/document/components/text_elements/asciiml.rb +19 -0
  365. data/lib/metanorma/document/components/text_elements/emphasis_element.rb +16 -0
  366. data/lib/metanorma/document/components/text_elements/keyword_element.rb +16 -0
  367. data/lib/metanorma/document/components/text_elements/latex.rb +19 -0
  368. data/lib/metanorma/document/components/text_elements/latexmath_element.rb +19 -0
  369. data/lib/metanorma/document/components/text_elements/monospace_element.rb +16 -0
  370. data/lib/metanorma/document/components/text_elements/ruby_element.rb +23 -0
  371. data/lib/metanorma/document/components/text_elements/small_caps_element.rb +16 -0
  372. data/lib/metanorma/document/components/text_elements/stem_element.rb +34 -0
  373. data/lib/metanorma/document/components/text_elements/stem_type.rb +23 -0
  374. data/lib/metanorma/document/components/text_elements/stem_value.rb +19 -0
  375. data/lib/metanorma/document/components/text_elements/strike_element.rb +33 -0
  376. data/lib/metanorma/document/components/text_elements/strong_element.rb +16 -0
  377. data/lib/metanorma/document/components/text_elements/subscript_element.rb +16 -0
  378. data/lib/metanorma/document/components/text_elements/superscript_element.rb +16 -0
  379. data/lib/metanorma/document/components/text_elements/text_element.rb +20 -0
  380. data/lib/metanorma/document/components/text_elements/text_element_type.rb +21 -0
  381. data/lib/metanorma/document/components/text_elements/underline_element.rb +33 -0
  382. data/lib/metanorma/document/components/text_elements.rb +31 -0
  383. data/lib/metanorma/document/components.rb +27 -0
  384. data/lib/metanorma/document/data_types.rb +11 -0
  385. data/lib/metanorma/document/relaton/address.rb +39 -0
  386. data/lib/metanorma/document/relaton/affiliation.rb +22 -0
  387. data/lib/metanorma/document/relaton/bib_item_locality.rb +21 -0
  388. data/lib/metanorma/document/relaton/bib_item_size.rb +19 -0
  389. data/lib/metanorma/document/relaton/bib_item_size_type.rb +21 -0
  390. data/lib/metanorma/document/relaton/bib_item_type.rb +25 -0
  391. data/lib/metanorma/document/relaton/bibliographic_date.rb +27 -0
  392. data/lib/metanorma/document/relaton/bibliographic_date_type.rb +22 -0
  393. data/lib/metanorma/document/relaton/contact_method.rb +22 -0
  394. data/lib/metanorma/document/relaton/contribution_info.rb +21 -0
  395. data/lib/metanorma/document/relaton/contributor.rb +15 -0
  396. data/lib/metanorma/document/relaton/contributor_role.rb +23 -0
  397. data/lib/metanorma/document/relaton/copyright_association.rb +32 -0
  398. data/lib/metanorma/document/relaton/date_time.rb +19 -0
  399. data/lib/metanorma/document/relaton/document_identifier.rb +25 -0
  400. data/lib/metanorma/document/relaton/document_relation.rb +26 -0
  401. data/lib/metanorma/document/relaton/document_relation_type.rb +31 -0
  402. data/lib/metanorma/document/relaton/document_status.rb +26 -0
  403. data/lib/metanorma/document/relaton/edition.rb +21 -0
  404. data/lib/metanorma/document/relaton/full_name.rb +34 -0
  405. data/lib/metanorma/document/relaton/iso4217_code.rb +17 -0
  406. data/lib/metanorma/document/relaton/iso8601_date.rb +17 -0
  407. data/lib/metanorma/document/relaton/keyword_type.rb +23 -0
  408. data/lib/metanorma/document/relaton/locality_stack.rb +19 -0
  409. data/lib/metanorma/document/relaton/localized_name.rb +22 -0
  410. data/lib/metanorma/document/relaton/medium_type.rb +26 -0
  411. data/lib/metanorma/document/relaton/org_identifier.rb +20 -0
  412. data/lib/metanorma/document/relaton/org_subdivision.rb +28 -0
  413. data/lib/metanorma/document/relaton/org_subdivision_identifier.rb +20 -0
  414. data/lib/metanorma/document/relaton/organization.rb +48 -0
  415. data/lib/metanorma/document/relaton/person.rb +28 -0
  416. data/lib/metanorma/document/relaton/person_identifier.rb +18 -0
  417. data/lib/metanorma/document/relaton/personal_identifier_type.rb +21 -0
  418. data/lib/metanorma/document/relaton/phone.rb +18 -0
  419. data/lib/metanorma/document/relaton/place_type.rb +36 -0
  420. data/lib/metanorma/document/relaton/price_type.rb +18 -0
  421. data/lib/metanorma/document/relaton/region_type.rb +20 -0
  422. data/lib/metanorma/document/relaton/relaton_collection.rb +25 -0
  423. data/lib/metanorma/document/relaton/series_type.rb +36 -0
  424. data/lib/metanorma/document/relaton/series_type_type.rb +21 -0
  425. data/lib/metanorma/document/relaton/specific_locality_type.rb +25 -0
  426. data/lib/metanorma/document/relaton/title_type.rb +21 -0
  427. data/lib/metanorma/document/relaton/typed_note.rb +25 -0
  428. data/lib/metanorma/document/relaton/typed_title_string.rb +50 -0
  429. data/lib/metanorma/document/relaton/typed_uri.rb +18 -0
  430. data/lib/metanorma/document/relaton/validity_type.rb +22 -0
  431. data/lib/metanorma/document/relaton/variant_full_name.rb +18 -0
  432. data/lib/metanorma/document/relaton/variant_org_name.rb +18 -0
  433. data/lib/metanorma/document/relaton/version_info.rb +19 -0
  434. data/lib/metanorma/document/relaton/vocab_id_type.rb +22 -0
  435. data/lib/metanorma/document/relaton.rb +64 -0
  436. data/lib/metanorma/document/root.rb +14 -0
  437. data/lib/metanorma/document/version.rb +8 -0
  438. data/lib/metanorma/document.rb +54 -0
  439. data/lib/metanorma/html/asset_pipeline.rb +100 -0
  440. data/lib/metanorma/html/base_renderer.rb +1610 -0
  441. data/lib/metanorma/html/bipm_renderer.rb +145 -0
  442. data/lib/metanorma/html/cc_renderer.rb +55 -0
  443. data/lib/metanorma/html/component/base.rb +63 -0
  444. data/lib/metanorma/html/component/footnote_collector.rb +57 -0
  445. data/lib/metanorma/html/component/index_section.rb +74 -0
  446. data/lib/metanorma/html/component/index_term_collector.rb +100 -0
  447. data/lib/metanorma/html/component.rb +12 -0
  448. data/lib/metanorma/html/component_registry.rb +37 -0
  449. data/lib/metanorma/html/drops/footnote_drop.rb +26 -0
  450. data/lib/metanorma/html/drops.rb +9 -0
  451. data/lib/metanorma/html/generator.rb +114 -0
  452. data/lib/metanorma/html/icc_renderer.rb +49 -0
  453. data/lib/metanorma/html/iec_renderer.rb +54 -0
  454. data/lib/metanorma/html/ieee_renderer.rb +55 -0
  455. data/lib/metanorma/html/ietf_renderer.rb +58 -0
  456. data/lib/metanorma/html/iho_renderer.rb +56 -0
  457. data/lib/metanorma/html/iso_renderer.rb +821 -0
  458. data/lib/metanorma/html/itu_renderer.rb +55 -0
  459. data/lib/metanorma/html/ogc_renderer.rb +86 -0
  460. data/lib/metanorma/html/oiml_renderer.rb +55 -0
  461. data/lib/metanorma/html/pdfa_renderer.rb +51 -0
  462. data/lib/metanorma/html/ribose_renderer.rb +55 -0
  463. data/lib/metanorma/html/standard_renderer.rb +535 -0
  464. data/lib/metanorma/html/templates/_cover.html.liquid +11 -0
  465. data/lib/metanorma/html/templates/_doc_title.html.liquid +3 -0
  466. data/lib/metanorma/html/templates/_footer.html.liquid +8 -0
  467. data/lib/metanorma/html/templates/_footnotes.html.liquid +11 -0
  468. data/lib/metanorma/html/templates/_header.html.liquid +65 -0
  469. data/lib/metanorma/html/templates/_iso_cover.html.liquid +31 -0
  470. data/lib/metanorma/html/templates/_iso_doc_title.html.liquid +3 -0
  471. data/lib/metanorma/html/templates/document.html.liquid +40 -0
  472. data/lib/metanorma/html/theme.rb +196 -0
  473. data/lib/metanorma/html/whitespace_patch.rb +47 -0
  474. data/lib/metanorma/html.rb +29 -0
  475. data/lib/metanorma/iec_document/root.rb +66 -0
  476. data/lib/metanorma/iec_document.rb +10 -0
  477. data/lib/metanorma/ieee_document/metadata/ieee_bib_data_extension_type.rb +18 -0
  478. data/lib/metanorma/ieee_document/metadata/ieee_bibliographic_item.rb +20 -0
  479. data/lib/metanorma/ieee_document/metadata/ieee_structured_identifier.rb +25 -0
  480. data/lib/metanorma/ieee_document/metadata.rb +14 -0
  481. data/lib/metanorma/ieee_document/root.rb +65 -0
  482. data/lib/metanorma/ieee_document.rb +11 -0
  483. data/lib/metanorma/ietf_document/metadata/ietf_bib_data_extension_type.rb +58 -0
  484. data/lib/metanorma/ietf_document/metadata/ietf_bibliographic_item.rb +53 -0
  485. data/lib/metanorma/ietf_document/metadata/ietf_editorial_group.rb +17 -0
  486. data/lib/metanorma/ietf_document/metadata.rb +14 -0
  487. data/lib/metanorma/ietf_document/root.rb +66 -0
  488. data/lib/metanorma/ietf_document/sections.rb +31 -0
  489. data/lib/metanorma/ietf_document.rb +10 -0
  490. data/lib/metanorma/iho_document/metadata/iho_bib_data_extension_type.rb +25 -0
  491. data/lib/metanorma/iho_document/metadata/iho_bibliographic_item.rb +20 -0
  492. data/lib/metanorma/iho_document/metadata/iho_editorial_group.rb +19 -0
  493. data/lib/metanorma/iho_document/metadata/iho_series.rb +22 -0
  494. data/lib/metanorma/iho_document/metadata/iho_sub_group.rb +18 -0
  495. data/lib/metanorma/iho_document/metadata.rb +15 -0
  496. data/lib/metanorma/iho_document/root.rb +65 -0
  497. data/lib/metanorma/iho_document.rb +11 -0
  498. data/lib/metanorma/iso_document/annotation_container.rb +16 -0
  499. data/lib/metanorma/iso_document/blocks/iso_admonition_block.rb +27 -0
  500. data/lib/metanorma/iso_document/blocks/iso_admonition_type.rb +25 -0
  501. data/lib/metanorma/iso_document/blocks.rb +12 -0
  502. data/lib/metanorma/iso_document/boilerplate.rb +17 -0
  503. data/lib/metanorma/iso_document/metadata/abstract_title.rb +36 -0
  504. data/lib/metanorma/iso_document/metadata/doc_identifier.rb +26 -0
  505. data/lib/metanorma/iso_document/metadata/ics.rb +19 -0
  506. data/lib/metanorma/iso_document/metadata/iec_document_category.rb +23 -0
  507. data/lib/metanorma/iso_document/metadata/iso_bib_data_extension_type.rb +86 -0
  508. data/lib/metanorma/iso_document/metadata/iso_bibliographic_item.rb +175 -0
  509. data/lib/metanorma/iso_document/metadata/iso_document_id.rb +46 -0
  510. data/lib/metanorma/iso_document/metadata/iso_document_stage_codes.rb +26 -0
  511. data/lib/metanorma/iso_document/metadata/iso_document_status.rb +56 -0
  512. data/lib/metanorma/iso_document/metadata/iso_document_substage_codes.rb +26 -0
  513. data/lib/metanorma/iso_document/metadata/iso_document_type.rb +25 -0
  514. data/lib/metanorma/iso_document/metadata/iso_localized_title.rb +57 -0
  515. data/lib/metanorma/iso_document/metadata/iso_project_group.rb +32 -0
  516. data/lib/metanorma/iso_document/metadata/iso_sub_group.rb +38 -0
  517. data/lib/metanorma/iso_document/metadata/metanorma_extension.rb +20 -0
  518. data/lib/metanorma/iso_document/metadata/structured_identifier.rb +33 -0
  519. data/lib/metanorma/iso_document/metadata/title_amd.rb +12 -0
  520. data/lib/metanorma/iso_document/metadata/title_amendment_prefix.rb +12 -0
  521. data/lib/metanorma/iso_document/metadata/title_collection.rb +46 -0
  522. data/lib/metanorma/iso_document/metadata/title_full.rb +12 -0
  523. data/lib/metanorma/iso_document/metadata/title_intro.rb +12 -0
  524. data/lib/metanorma/iso_document/metadata/title_main.rb +12 -0
  525. data/lib/metanorma/iso_document/metadata/title_part.rb +12 -0
  526. data/lib/metanorma/iso_document/metadata/title_part_prefix.rb +12 -0
  527. data/lib/metanorma/iso_document/metadata.rb +39 -0
  528. data/lib/metanorma/iso_document/raw_paragraph.rb +23 -0
  529. data/lib/metanorma/iso_document/root.rb +92 -0
  530. data/lib/metanorma/iso_document/sections/colophon.rb +18 -0
  531. data/lib/metanorma/iso_document/sections/iso_abstract_section.rb +15 -0
  532. data/lib/metanorma/iso_document/sections/iso_amendment_clause.rb +24 -0
  533. data/lib/metanorma/iso_document/sections/iso_annex_section.rb +172 -0
  534. data/lib/metanorma/iso_document/sections/iso_clause_section.rb +206 -0
  535. data/lib/metanorma/iso_document/sections/iso_foreword_section.rb +118 -0
  536. data/lib/metanorma/iso_document/sections/iso_preface.rb +43 -0
  537. data/lib/metanorma/iso_document/sections/iso_sections.rb +61 -0
  538. data/lib/metanorma/iso_document/sections/iso_terms_section.rb +88 -0
  539. data/lib/metanorma/iso_document/sections.rb +17 -0
  540. data/lib/metanorma/iso_document/terms/iso_term.rb +84 -0
  541. data/lib/metanorma/iso_document/terms/iso_term_collection.rb +20 -0
  542. data/lib/metanorma/iso_document/terms/term_definition.rb +30 -0
  543. data/lib/metanorma/iso_document/terms/term_designation.rb +44 -0
  544. data/lib/metanorma/iso_document/terms/term_example.rb +39 -0
  545. data/lib/metanorma/iso_document/terms/term_expression.rb +55 -0
  546. data/lib/metanorma/iso_document/terms/term_note.rb +41 -0
  547. data/lib/metanorma/iso_document/terms/term_origin.rb +26 -0
  548. data/lib/metanorma/iso_document/terms/term_source.rb +49 -0
  549. data/lib/metanorma/iso_document/terms/verbal_definition.rb +41 -0
  550. data/lib/metanorma/iso_document/terms.rb +20 -0
  551. data/lib/metanorma/iso_document.rb +16 -0
  552. data/lib/metanorma/itu_document/metadata/itu_bib_data_extension_type.rb +63 -0
  553. data/lib/metanorma/itu_document/metadata/itu_bibliographic_item.rb +21 -0
  554. data/lib/metanorma/itu_document/metadata/itu_series.rb +22 -0
  555. data/lib/metanorma/itu_document/metadata/itu_structured_identifier.rb +23 -0
  556. data/lib/metanorma/itu_document/metadata.rb +19 -0
  557. data/lib/metanorma/itu_document/root.rb +65 -0
  558. data/lib/metanorma/itu_document.rb +10 -0
  559. data/lib/metanorma/ogc_document/metadata/ogc_bib_data_extension_type.rb +12 -0
  560. data/lib/metanorma/ogc_document/metadata/ogc_bibliographic_item.rb +19 -0
  561. data/lib/metanorma/ogc_document/metadata.rb +12 -0
  562. data/lib/metanorma/ogc_document/root.rb +65 -0
  563. data/lib/metanorma/ogc_document.rb +10 -0
  564. data/lib/metanorma/oiml_document/root.rb +66 -0
  565. data/lib/metanorma/oiml_document.rb +10 -0
  566. data/lib/metanorma/ribose_document/metadata/ribose_bib_data_extension_type.rb +20 -0
  567. data/lib/metanorma/ribose_document/metadata/ribose_bibliographic_item.rb +18 -0
  568. data/lib/metanorma/ribose_document/metadata.rb +12 -0
  569. data/lib/metanorma/ribose_document/root.rb +68 -0
  570. data/lib/metanorma/ribose_document.rb +10 -0
  571. data/lib/metanorma/standard_document/blocks/amend_block.rb +50 -0
  572. data/lib/metanorma/standard_document/blocks/amend_content_block.rb +17 -0
  573. data/lib/metanorma/standard_document/blocks/auto_number.rb +20 -0
  574. data/lib/metanorma/standard_document/blocks/block_source.rb +45 -0
  575. data/lib/metanorma/standard_document/blocks/change_type.rb +21 -0
  576. data/lib/metanorma/standard_document/blocks/element_name.rb +22 -0
  577. data/lib/metanorma/standard_document/blocks/form.rb +38 -0
  578. data/lib/metanorma/standard_document/blocks/image_map_area_type.rb +24 -0
  579. data/lib/metanorma/standard_document/blocks/image_map_area_type_type.rb +21 -0
  580. data/lib/metanorma/standard_document/blocks/image_map_block.rb +32 -0
  581. data/lib/metanorma/standard_document/blocks/image_map_coords.rb +19 -0
  582. data/lib/metanorma/standard_document/blocks/image_map_radius.rb +19 -0
  583. data/lib/metanorma/standard_document/blocks/multilingual_rendering_type.rb +21 -0
  584. data/lib/metanorma/standard_document/blocks/passthrough.rb +20 -0
  585. data/lib/metanorma/standard_document/blocks/requirement_model.rb +165 -0
  586. data/lib/metanorma/standard_document/blocks/standard_admonition_block.rb +32 -0
  587. data/lib/metanorma/standard_document/blocks/standard_block.rb +28 -0
  588. data/lib/metanorma/standard_document/blocks/standard_block_no_notes.rb +34 -0
  589. data/lib/metanorma/standard_document/blocks/standard_example_block.rb +30 -0
  590. data/lib/metanorma/standard_document/blocks/standard_figure_block.rb +32 -0
  591. data/lib/metanorma/standard_document/blocks/standard_formula_block.rb +30 -0
  592. data/lib/metanorma/standard_document/blocks/standard_note_block.rb +64 -0
  593. data/lib/metanorma/standard_document/blocks/standard_paragraph_block.rb +25 -0
  594. data/lib/metanorma/standard_document/blocks/standard_quote_block.rb +29 -0
  595. data/lib/metanorma/standard_document/blocks/standard_sourcecode_block.rb +32 -0
  596. data/lib/metanorma/standard_document/blocks/standard_table_block.rb +39 -0
  597. data/lib/metanorma/standard_document/blocks/svg_map_block.rb +23 -0
  598. data/lib/metanorma/standard_document/blocks/svg_target_type.rb +20 -0
  599. data/lib/metanorma/standard_document/blocks/table_col.rb +16 -0
  600. data/lib/metanorma/standard_document/blocks/to_c.rb +17 -0
  601. data/lib/metanorma/standard_document/blocks.rb +60 -0
  602. data/lib/metanorma/standard_document/elements/add.rb +19 -0
  603. data/lib/metanorma/standard_document/elements/del.rb +19 -0
  604. data/lib/metanorma/standard_document/elements/form_input.rb +27 -0
  605. data/lib/metanorma/standard_document/elements/input.rb +33 -0
  606. data/lib/metanorma/standard_document/elements/input_type.rb +27 -0
  607. data/lib/metanorma/standard_document/elements/label.rb +19 -0
  608. data/lib/metanorma/standard_document/elements/option.rb +27 -0
  609. data/lib/metanorma/standard_document/elements/orientation_type.rb +27 -0
  610. data/lib/metanorma/standard_document/elements/select.rb +32 -0
  611. data/lib/metanorma/standard_document/elements/standard_page_break_element.rb +22 -0
  612. data/lib/metanorma/standard_document/elements/textarea.rb +25 -0
  613. data/lib/metanorma/standard_document/elements.rb +20 -0
  614. data/lib/metanorma/standard_document/lists/standard_definition.rb +24 -0
  615. data/lib/metanorma/standard_document/lists/standard_definition_list.rb +30 -0
  616. data/lib/metanorma/standard_document/lists/standard_definition_term.rb +27 -0
  617. data/lib/metanorma/standard_document/lists/standard_unordered_list.rb +28 -0
  618. data/lib/metanorma/standard_document/lists/unordered_checkable_list_item.rb +26 -0
  619. data/lib/metanorma/standard_document/lists.rb +17 -0
  620. data/lib/metanorma/standard_document/metadata/editorial_group_type.rb +25 -0
  621. data/lib/metanorma/standard_document/metadata/ics_type.rb +26 -0
  622. data/lib/metanorma/standard_document/metadata/standard_bib_data.rb +25 -0
  623. data/lib/metanorma/standard_document/metadata/standard_bib_data_extension_type.rb +37 -0
  624. data/lib/metanorma/standard_document/metadata/structured_identifier_type.rb +48 -0
  625. data/lib/metanorma/standard_document/metadata/technical_committee_type.rb +27 -0
  626. data/lib/metanorma/standard_document/metadata.rb +17 -0
  627. data/lib/metanorma/standard_document/namespace.rb +11 -0
  628. data/lib/metanorma/standard_document/refs/reference_to_term.rb +25 -0
  629. data/lib/metanorma/standard_document/refs/reference_to_termbase.rb +27 -0
  630. data/lib/metanorma/standard_document/refs/standoc_locality_stack.rb +24 -0
  631. data/lib/metanorma/standard_document/refs/standoc_reference_to_citation_element.rb +27 -0
  632. data/lib/metanorma/standard_document/refs/standoc_reference_to_id_element.rb +36 -0
  633. data/lib/metanorma/standard_document/refs/xref_case_type.rb +27 -0
  634. data/lib/metanorma/standard_document/refs/xref_connective_type.rb +27 -0
  635. data/lib/metanorma/standard_document/refs/xref_target_type.rb +25 -0
  636. data/lib/metanorma/standard_document/refs.rb +18 -0
  637. data/lib/metanorma/standard_document/root.rb +10 -0
  638. data/lib/metanorma/standard_document/sections/abstract.rb +21 -0
  639. data/lib/metanorma/standard_document/sections/acknowledgements.rb +21 -0
  640. data/lib/metanorma/standard_document/sections/annex_section.rb +32 -0
  641. data/lib/metanorma/standard_document/sections/bibliography_section.rb +21 -0
  642. data/lib/metanorma/standard_document/sections/boilerplate_type.rb +32 -0
  643. data/lib/metanorma/standard_document/sections/clause_hierarchical_section.rb +32 -0
  644. data/lib/metanorma/standard_document/sections/clause_section.rb +29 -0
  645. data/lib/metanorma/standard_document/sections/definition_section.rb +75 -0
  646. data/lib/metanorma/standard_document/sections/floating_title.rb +27 -0
  647. data/lib/metanorma/standard_document/sections/foreword.rb +21 -0
  648. data/lib/metanorma/standard_document/sections/introduction.rb +23 -0
  649. data/lib/metanorma/standard_document/sections/misc_container.rb +26 -0
  650. data/lib/metanorma/standard_document/sections/normative_type.rb +29 -0
  651. data/lib/metanorma/standard_document/sections/standard_content_section.rb +27 -0
  652. data/lib/metanorma/standard_document/sections/standard_hierarchical_section.rb +30 -0
  653. data/lib/metanorma/standard_document/sections/standard_references_section.rb +74 -0
  654. data/lib/metanorma/standard_document/sections/standard_section.rb +39 -0
  655. data/lib/metanorma/standard_document/sections/terms_section.rb +29 -0
  656. data/lib/metanorma/standard_document/sections.rb +30 -0
  657. data/lib/metanorma/standard_document/standard_document_type.rb +15 -0
  658. data/lib/metanorma/standard_document/terms/abbreviation_type.rb +27 -0
  659. data/lib/metanorma/standard_document/terms/concept.rb +42 -0
  660. data/lib/metanorma/standard_document/terms/definition_collection.rb +24 -0
  661. data/lib/metanorma/standard_document/terms/designation.rb +31 -0
  662. data/lib/metanorma/standard_document/terms/expression_designation.rb +38 -0
  663. data/lib/metanorma/standard_document/terms/expression_type.rb +27 -0
  664. data/lib/metanorma/standard_document/terms/grammar_gender.rb +27 -0
  665. data/lib/metanorma/standard_document/terms/grammar_info.rb +36 -0
  666. data/lib/metanorma/standard_document/terms/graphical_symbol_designation.rb +25 -0
  667. data/lib/metanorma/standard_document/terms/letter_symbol_designation.rb +27 -0
  668. data/lib/metanorma/standard_document/terms/non_verbal_representation.rb +33 -0
  669. data/lib/metanorma/standard_document/terms/related_term.rb +31 -0
  670. data/lib/metanorma/standard_document/terms/related_term_type.rb +28 -0
  671. data/lib/metanorma/standard_document/terms/term.rb +66 -0
  672. data/lib/metanorma/standard_document/terms/term_collection.rb +24 -0
  673. data/lib/metanorma/standard_document/terms/term_definition.rb +29 -0
  674. data/lib/metanorma/standard_document/terms/term_source.rb +29 -0
  675. data/lib/metanorma/standard_document/terms/term_source_status.rb +29 -0
  676. data/lib/metanorma/standard_document/terms/term_source_type.rb +21 -0
  677. data/lib/metanorma/standard_document/terms/verbal_expression.rb +35 -0
  678. data/lib/metanorma/standard_document/terms.rb +31 -0
  679. data/lib/metanorma/standard_document.rb +19 -0
  680. data/metanorma-document.gemspec +35 -0
  681. data/tasks/roundtrip_samples.rake +535 -0
  682. metadata +743 -0
@@ -0,0 +1 @@
1
+ <svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 1511.65 506.76"><defs><style>.cls-1{fill:none;}.cls-2{clip-path:url(#clip-path);}.cls-3{fill:#00b1ff;}</style><clipPath id="clip-path" transform="translate(-204.17 -235.76)"><rect class="cls-1" width="1920" height="978.25"/></clipPath></defs><g id="Blue_Horizontal_Lockup" data-name="Blue Horizontal Lockup"><g class="cls-2"><polygon class="cls-3" points="204.07 365.27 204.07 506.73 0.01 388.91 0 153.15 204.07 270.97 204.07 318.11 163.34 294.61 142.93 282.82 142.92 282.82 40.84 223.88 40.84 365.33 163.34 436.06 163.34 388.91 102.09 353.55 102.09 329.97 102.09 306.4 204.07 365.27"/><path class="cls-3" d="M428.68,235.76,224.5,353.64,428.68,471.52,632.85,353.64Zm0,188.61L306.17,353.64l122.52-70.73,122.49,70.73-20.41,11.79Z" transform="translate(-204.17 -235.76)"/><polygon class="cls-3" points="326.78 270.4 367.62 246.83 408.45 223.25 408.46 270.4 449.18 246.89 449.18 153.12 245.12 270.94 245.12 317.55 245.12 317.55 245.12 331.63 245.12 506.17 245.01 506.11 245.01 506.76 449.18 388.88 449.18 294.04 408.46 317.56 408.46 364.71 285.95 435.44 285.96 293.98 326.78 270.4"/><g class="cls-2"><path class="cls-3" d="M880.57,398.17c-32.81,0-57-24.06-57-56.05s24.2-56.05,57-56.05,56.91,24,56.91,56.05-24.15,56.06-56.91,56.06Zm38.87-56.05c0-22.3-16.59-39-38.87-39s-39,16.84-39,39,16.69,39,39,39,38.87-16.69,38.87-39" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1000.48,310.76c24.94,0,43.18,18.62,43.18,43.71s-18.24,43.75-43.18,43.75a41.67,41.67,0,0,1-27.67-10.09V426H955.67V312.8h11.55L970.44,323a41.5,41.5,0,0,1,30-12.26Zm25.84,43.71c0-15.71-11.47-27.35-27.19-27.35s-27.3,11.75-27.3,27.35,11.59,27.35,27.3,27.35,27.19-11.64,27.19-27.35" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1141.19,354.67a56.15,56.15,0,0,1-.35,5.63h-67.65c2.14,13.5,11.86,21.81,25.51,21.81,10,0,18-4.61,22.42-12.21h18c-6.63,17.6-21.85,28.28-40.46,28.28-24.37,0-42.83-18.81-42.83-43.71s18.42-43.7,42.83-43.7c25.51,0,42.49,19.64,42.49,43.9Zm-67.58-8.3H1124c-3.08-12.66-12.62-20.13-25.31-20.13-12.89,0-22.28,7.77-25.09,20.13" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1203.5,310.9c19.49,0,31.66,14.53,31.66,35.06v50.19H1218V349.44c0-15.14-6.59-23.18-19.12-23.18-13.1,0-22.39,10.54-22.39,25.26v44.63h-17.14V312.8h11.95l3.32,11.63c6.31-8.41,16.61-13.53,28.85-13.53Z" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M933.45,490.2c-.44,33.12-22.8,56.89-54.54,56.89s-55.3-23.7-55.3-56,23.29-56,54.95-56c26.35,0,48.4,16.59,53.28,40.1H913.56c-4.63-13.89-18.36-22.94-34.65-22.94-21.84,0-37.26,16-37.26,38.83s15,38.86,37.26,38.86c17.25,0,31.27-9.75,35.31-24.43H875.7V490.19Z" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1031.31,503.58a53.19,53.19,0,0,1-.36,5.63H963.3c2.14,13.51,11.87,21.81,25.51,21.81,10,0,18-4.6,22.43-12.2h18c-6.64,17.59-21.85,28.27-40.46,28.27-24.37,0-42.83-18.81-42.83-43.7s18.42-43.71,42.83-43.71c25.5,0,42.49,19.65,42.49,43.9Zm-67.58-8.29h50.4c-3.08-12.66-12.62-20.14-25.32-20.14-12.88,0-22.27,7.78-25.08,20.14" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1087.94,547.09c-25.49,0-44.56-18.65-44.56-43.71s19.07-43.7,44.56-43.7,44.56,18.61,44.56,43.71S1113.39,547.09,1087.94,547.09Zm27.12-43.71c0-15.95-11.34-27.34-27.12-27.34s-27.12,11.39-27.12,27.34,11.34,27.35,27.12,27.35,27.12-11.39,27.12-27.35" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1144.44,518.6h16.74c.44,8.81,7.84,13.41,17.88,13.41,9.21,0,16.28-3.89,16.28-10.86,0-7.9-8.94-9.71-19.15-11.43-13.89-2.38-30.25-5.53-30.25-24.85,0-14.95,12.92-25.19,32.31-25.19s31.93,10.54,32.26,26.71h-16.22c-.33-7.93-6.37-12.19-16.44-12.19-9.47,0-15.33,4-15.33,10.12,0,7.35,8.5,8.81,18.56,10.46,14.08,2.36,31.19,5.07,31.19,25.62,0,16.19-13.49,26.69-33.8,26.69s-33.59-11.2-34-28.49" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1275.49,459.68c24.94,0,43.18,18.61,43.18,43.71s-18.24,43.75-43.18,43.75a41.65,41.65,0,0,1-27.67-10.1v37.9h-17.14V461.71h11.55l3.22,10.24a41.48,41.48,0,0,1,30-12.27Zm25.85,43.7c0-15.71-11.48-27.34-27.19-27.34s-27.31,11.74-27.31,27.34,11.59,27.35,27.31,27.35,27.19-11.63,27.19-27.35" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1420,461.67V545h-13.82l-1.67-10.14a41.84,41.84,0,0,1-30.22,12.21c-24.84,0-43.4-18.76-43.4-43.75s18.56-43.66,43.4-43.66c12.28,0,22.91,4.64,30.48,12.41l2-10.42Zm-17.18,41.67c0-15.71-11.48-27.34-27.19-27.34s-27.3,11.74-27.3,27.34,11.59,27.35,27.3,27.35,27.19-11.64,27.19-27.35" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1491.08,529.5v15.56h-12.73c-18.26,0-29.53-11.26-29.53-29.68v-39h-14.91v-3.32l29-30.82h2.91v19.46h24.8v14.68H1466V514c0,9.93,5.53,15.47,15.63,15.47Z" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1507.42,431.12h17.7v17.67h-17.7Zm.28,30.59h17.14v83.35H1507.7Z" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1632.2,461.67V545h-13.82l-1.67-10.14a41.84,41.84,0,0,1-30.22,12.21c-24.83,0-43.4-18.76-43.4-43.75s18.57-43.66,43.4-43.66c12.28,0,22.91,4.64,30.48,12.41l2-10.42ZM1615,503.34c0-15.71-11.48-27.34-27.19-27.34s-27.3,11.74-27.3,27.34,11.59,27.35,27.3,27.35S1615,519.05,1615,503.34" transform="translate(-204.17 -235.76)"/><rect class="cls-3" x="1452.45" y="196.08" width="17.14" height="113.23"/><path class="cls-3" d="M823.61,640c0-32.33,23.57-56,55.54-56,25.56,0,46.05,15.93,51.72,40.25h-18c-5.16-14.39-17.77-23.09-33.77-23.09-21.64,0-37.5,16.28-37.5,38.83s15.86,38.74,37.5,38.74c16.51,0,29.27-9.32,34.14-24.64h18c-5.61,25.41-26.1,41.8-52.13,41.8-32,0-55.54-23.66-55.54-55.9" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M986.86,696c-25.5,0-44.57-18.66-44.57-43.71s19.07-43.71,44.57-43.71,44.56,18.62,44.56,43.71S1012.3,696,986.86,696ZM1014,652.3c0-15.95-11.35-27.35-27.12-27.35s-27.13,11.4-27.13,27.35,11.35,27.35,27.13,27.35S1014,668.25,1014,652.3" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1093.77,608.73c19.49,0,31.66,14.53,31.66,35.06V694H1108.3V647.27c0-15.13-6.59-23.18-19.12-23.18-13.1,0-22.39,10.54-22.39,25.26V694h-17.14V610.63h11.95l3.33,11.63c6.3-8.41,16.6-13.53,28.84-13.53Z" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1142.43,667.51h16.74c.44,8.82,7.84,13.42,17.89,13.42,9.2,0,16.27-3.9,16.27-10.86,0-7.91-8.94-9.72-19.15-11.43-13.88-2.38-30.25-5.54-30.25-24.86,0-14.95,12.93-25.18,32.31-25.18s31.94,10.54,32.27,26.7h-16.23c-.33-7.93-6.37-12.18-16.44-12.18-9.47,0-15.33,4-15.33,10.11,0,7.36,8.51,8.81,18.56,10.47,14.09,2.35,31.2,5.07,31.2,25.62,0,16.19-13.5,26.69-33.81,26.69s-33.59-11.21-34-28.5" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1267.12,696c-25.5,0-44.57-18.66-44.57-43.71s19.07-43.71,44.57-43.71,44.56,18.62,44.56,43.71S1292.56,696,1267.12,696Zm27.12-43.71c0-15.95-11.35-27.35-27.12-27.35S1240,636.35,1240,652.3s11.35,27.35,27.13,27.35,27.12-11.4,27.12-27.35" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1377.33,610.16v16.19h-9c-14.17,0-21.24,8.08-21.24,23.18V694h-17.14V610.63h11.59l2.9,11.37c6-7.9,14.14-11.84,25.52-11.84Z" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1437.53,678.41V694h-12.74c-18.26,0-29.52-11.27-29.52-29.68v-39h-14.91V622l29-30.82h2.92v19.46h24.8V625.3H1412.4v37.64c0,9.94,5.53,15.47,15.62,15.47Z" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1453.86,580h17.71v17.67h-17.71Zm.29,30.59h17.13V694h-17.13Z" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1494.36,658.78V610.63h17.14v45.75c0,14.48,7.9,23.27,20.77,23.27S1553,670.7,1553,656.38V610.63h17.14v48.15c0,22.43-14.87,37.23-37.87,37.23s-37.91-14.8-37.91-37.23" transform="translate(-204.17 -235.76)"/><path class="cls-3" d="M1686.39,608.73c17.57,0,29.43,13.37,29.43,32.24v53h-17.13v-48.8c0-13.42-5.83-21.09-16.21-21.09-11,0-19.55,10.12-19.55,24.31V694H1646.2v-48.8c0-13.42-5.79-21.09-16.24-21.09-11.08,0-19.63,10.12-19.63,24.31V694H1593.2V610.63h12.14l3,10.77a33.38,33.38,0,0,1,25.89-12.67c11.3,0,20.25,5.55,25,14.59a33,33,0,0,1,27.2-14.59Z" transform="translate(-204.17 -235.76)"/></g></g></g></svg>
@@ -0,0 +1,95 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="400pt" height="182.8pt" version="1.1" viewBox="0 0 400 182.8" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <defs>
4
+ <clipPath id="clip-0">
5
+ <path d="m270 52.055h36v47.945h-36z"/>
6
+ </clipPath>
7
+ <clipPath id="clip-1">
8
+ <path d="m311 52.055h37v47.945h-37z"/>
9
+ </clipPath>
10
+ <clipPath id="clip-2">
11
+ <path d="m354 52.055h30.109v47.945h-30.109z"/>
12
+ </clipPath>
13
+ <clipPath id="clip-3">
14
+ <path d="m211.16 112h15.836v19.09h-15.836z"/>
15
+ </clipPath>
16
+ <clipPath id="clip-4">
17
+ <path d="m229 112h14v19.09h-14z"/>
18
+ </clipPath>
19
+ <clipPath id="clip-5">
20
+ <path d="m244 112h15v19.09h-15z"/>
21
+ </clipPath>
22
+ <clipPath id="clip-6">
23
+ <path d="m260 112h18v19.09h-18z"/>
24
+ </clipPath>
25
+ <clipPath id="clip-7">
26
+ <path d="m280 112h16v19.09h-16z"/>
27
+ </clipPath>
28
+ <clipPath id="clip-8">
29
+ <path d="m306 112h16v19.09h-16z"/>
30
+ </clipPath>
31
+ <clipPath id="clip-9">
32
+ <path d="m323 107h13v24.09h-13z"/>
33
+ </clipPath>
34
+ <clipPath id="clip-10">
35
+ <path d="m346 112h19v19.09h-19z"/>
36
+ </clipPath>
37
+ <clipPath id="clip-11">
38
+ <path d="m242 52.055h17v15.945h-17z"/>
39
+ </clipPath>
40
+ <clipPath id="clip-12">
41
+ <path d="m211.16 83h15.836v17h-15.836z"/>
42
+ </clipPath>
43
+ <clipPath>
44
+ <path d="m0.066406 1h358.93v358.83h-358.93z"/>
45
+ </clipPath>
46
+ <clipPath id="clip-15">
47
+ <rect width="360" height="360"/>
48
+ </clipPath>
49
+ <g clip-path="url(#clip-15)"></g>
50
+ </defs>
51
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-0)">
52
+ <path d="m281.56 74.684h5.1875c5.7656 0 8.6484-2.4961 8.6484-7.4961 0-2.4492-0.76563-4.1797-2.3047-5.1875s-3.7461-1.5156-6.6289-1.5156h-4.9023zm-10.594 24.359v-46.988h16.145c2.5938 0 5.0195 0.25391 7.2773 0.75781 2.2578 0.50391 4.2266 1.3438 5.9102 2.5195 1.6797 1.1797 3.0117 2.7383 4 4.6875 0.98438 1.9453 1.4766 4.3359 1.4766 7.168 0 2.7383-0.49218 5.1172-1.4766 7.1367-0.98828 2.0156-2.3203 3.6719-4 4.9727-1.6836 1.2969-3.6289 2.2578-5.8359 2.8828-2.2148 0.625-4.5664 0.93359-7.0664 0.93359h-5.8359v15.93z"/>
53
+ </g>
54
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-1)">
55
+ <path d="m321.63 90.465h2.0195c2.0156 0 3.8438-0.26172 5.4766-0.79297 1.6328-0.52734 3.0273-1.3789 4.1797-2.5586 1.1523-1.1758 2.0547-2.7266 2.7031-4.6484 0.64844-1.918 0.97266-4.2969 0.97266-7.1328 0-2.7852-0.32422-5.1289-0.97266-7.0273-0.64844-1.8984-1.5508-3.4102-2.7031-4.5391-1.1524-1.1289-2.5469-1.9336-4.1797-2.4141-1.6328-0.48047-3.4609-0.71875-5.4766-0.71875h-2.0195zm-10.594 8.5742v-46.984h13.262c3.6055 0 6.8477 0.45703 9.7305 1.3711 2.8789 0.91016 5.3555 2.3164 7.4219 4.2148 2.0625 1.8984 3.6484 4.3125 4.7539 7.2422 1.1055 2.9297 1.6602 6.4141 1.6602 10.449 0 4.0352-0.55469 7.543-1.6602 10.52-1.1055 2.9805-2.6641 5.4414-4.6836 7.3867-2.0195 1.9492-4.4297 3.4023-7.2422 4.3594-2.8125 0.96484-5.9453 1.4414-9.4023 1.4414z"/>
56
+ </g>
57
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-2)">
58
+ <path d="m354.49 99.039v-46.984h29.617v8.9375h-19.023v10.879h16.285v8.9375h-16.285v18.23z"/>
59
+ </g>
60
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-3)">
61
+ <path d="m218.09 127.8c0.73047 0 1.3945-0.16797 1.9922-0.51172 0.59765-0.33985 1.2383-0.82813 1.9219-1.4648v-4.0195c-1.2226 0.14453-2.2461 0.33985-3.0742 0.58203-0.82812 0.2461-1.5 0.51953-2.0117 0.82422-0.51171 0.30469-0.875 0.65235-1.0976 1.043-0.21875 0.39063-0.32813 0.80469-0.32813 1.2422 0 0.80469 0.2461 1.3906 0.73047 1.7539 0.48828 0.36719 1.1094 0.55079 1.8672 0.55079m-1.3516 3.293c-1.5859 0-2.8672-0.48437-3.8398-1.4453-0.97656-0.96484-1.4648-2.2383-1.4648-3.8242 0-0.94922 0.19922-1.7969 0.60547-2.5391 0.40234-0.74609 1.0352-1.3867 1.8984-1.9219 0.86718-0.53516 1.9648-0.98829 3.293-1.3516 1.3281-0.36718 2.918-0.64453 4.7734-0.84375-0.0273-0.46093-0.0937-0.90625-0.20312-1.332-0.10938-0.42578-0.29297-0.80469-0.54688-1.1328-0.25781-0.33203-0.59375-0.58594-1.0078-0.76953-0.41406-0.1836-0.92578-0.27344-1.5352-0.27344-0.8789 0-1.7383 0.16797-2.5781 0.51172-0.83985 0.33984-1.6641 0.75391-2.4688 1.2422l-1.5352-2.8164c1-0.63281 2.1211-1.1836 3.3633-1.6445 1.2461-0.46484 2.5859-0.69531 4.0234-0.69531 2.2422 0 3.918 0.66797 5.0273 1.9922 1.1094 1.332 1.6641 3.25 1.6641 5.7617v10.641h-3.4727l-0.29297-1.9727h-0.14844c-0.80078 0.67969-1.6602 1.2539-2.5781 1.7188-0.91406 0.46094-1.9062 0.69531-2.9766 0.69531"/>
62
+ </g>
63
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-4)">
64
+ <path d="m235.9 131.09c-1.2422 0-2.4688-0.23828-3.6758-0.71484s-2.2461-1.0664-3.125-1.7734l1.9727-2.707c0.80469 0.63672 1.6055 1.1289 2.3984 1.4805 0.78906 0.35547 1.6484 0.53125 2.5781 0.53125 0.97266 0 1.6914-0.19922 2.1562-0.60156 0.46094-0.40235 0.69531-0.92188 0.69531-1.5547 0-0.36719-0.10937-0.69141-0.32812-0.96875-0.22266-0.28125-0.51563-0.53125-0.87891-0.75-0.36719-0.22266-0.78125-0.42187-1.2422-0.60547-0.46484-0.18359-0.92968-0.37109-1.3906-0.5664-0.58594-0.21875-1.1836-0.47657-1.793-0.76563-0.60937-0.29297-1.1523-0.64844-1.625-1.0625-0.47656-0.41406-0.86719-0.89453-1.1719-1.4453-0.30469-0.54688-0.45704-1.1992-0.45704-1.957 0-1.582 0.58594-2.875 1.7539-3.875 1.1719-1 2.7695-1.5 4.793-1.5 1.2422 0 2.3633 0.21875 3.3633 0.66015 1 0.4375 1.8633 0.9375 2.5977 1.5l-1.9414 2.5586c-0.63281-0.46485-1.2734-0.83594-1.918-1.1172-0.64453-0.27734-1.3203-0.41797-2.0312-0.41797-0.90234 0-1.5664 0.1875-1.9922 0.56641-0.42578 0.3789-0.64062 0.84765-0.64062 1.4062 0 0.36718 0.10547 0.67578 0.3125 0.93359s0.48047 0.48047 0.82422 0.67578c0.33984 0.19531 0.73437 0.37891 1.1875 0.54688 0.44922 0.17187 0.91797 0.34375 1.4062 0.51562 0.60937 0.21875 1.2188 0.46875 1.8281 0.75 0.60938 0.27735 1.1641 0.625 1.6641 1.0391 0.5 0.41797 0.90234 0.92188 1.207 1.5195 0.30468 0.59765 0.45703 1.3125 0.45703 2.1406 0 0.77734-0.15235 1.5039-0.45703 2.1758-0.30469 0.66797-0.75 1.2539-1.332 1.7539-0.58594 0.5-1.3164 0.89453-2.1953 1.1875-0.8789 0.29297-1.8789 0.4414-3 0.4414"/>
65
+ </g>
66
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-5)">
67
+ <path d="m251.66 131.09c-1.2422 0-2.4688-0.23828-3.6758-0.71484s-2.2461-1.0664-3.125-1.7734l1.9727-2.707c0.80468 0.63672 1.6055 1.1289 2.3984 1.4805 0.78907 0.35547 1.6484 0.53125 2.5781 0.53125 0.97266 0 1.6914-0.19922 2.1562-0.60156 0.46094-0.40235 0.69531-0.92188 0.69531-1.5547 0-0.36719-0.10937-0.69141-0.32812-0.96875-0.22266-0.28125-0.51563-0.53125-0.87891-0.75-0.36719-0.22266-0.78125-0.42187-1.2422-0.60547-0.46484-0.18359-0.92968-0.37109-1.3906-0.5664-0.58594-0.21875-1.1836-0.47657-1.793-0.76563-0.60938-0.29297-1.1523-0.64844-1.625-1.0625-0.47656-0.41406-0.86719-0.89453-1.1719-1.4453-0.30468-0.54688-0.45703-1.1992-0.45703-1.957 0-1.582 0.58594-2.875 1.7539-3.875 1.1719-1 2.7695-1.5 4.793-1.5 1.2422 0 2.3633 0.21875 3.3633 0.66015 1 0.4375 1.8633 0.9375 2.5977 1.5l-1.9414 2.5586c-0.63281-0.46485-1.2734-0.83594-1.918-1.1172-0.64453-0.27734-1.3242-0.41797-2.0312-0.41797-0.90234 0-1.5664 0.1875-1.9922 0.56641-0.42578 0.3789-0.64062 0.84765-0.64062 1.4062 0 0.36718 0.10547 0.67578 0.3125 0.93359s0.48047 0.48047 0.82422 0.67578c0.33984 0.19531 0.73437 0.37891 1.1875 0.54688 0.44922 0.17187 0.91797 0.34375 1.4062 0.51562 0.60937 0.21875 1.2188 0.46875 1.8281 0.75 0.60938 0.27735 1.1641 0.625 1.6641 1.0391 0.5 0.41797 0.90235 0.92188 1.207 1.5195 0.30468 0.59765 0.45703 1.3125 0.45703 2.1406 0 0.77734-0.15235 1.5039-0.45703 2.1758-0.30469 0.66797-0.75 1.2539-1.332 1.7539-0.58593 0.5-1.3164 0.89453-2.1953 1.1875-0.8789 0.29297-1.8789 0.4414-3 0.4414"/>
68
+ </g>
69
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-6)">
70
+ <path d="m269.36 127.65c1.3164 0 2.3555-0.54296 3.1094-1.6289 0.75781-1.0859 1.1328-2.5312 1.1328-4.332 0-1.832-0.375-3.2852-1.1328-4.3711-0.75391-1.0859-1.793-1.6289-3.1094-1.6289s-2.3438 0.54297-3.0898 1.6289c-0.74219 1.0859-1.1133 2.5391-1.1133 4.3711 0 1.8008 0.37109 3.2461 1.1133 4.332 0.74609 1.0859 1.7734 1.6289 3.0898 1.6289m0 3.4375c-1.1211 0-2.1914-0.20703-3.2148-0.62109-1.0274-0.41797-1.9336-1.0273-2.7266-1.8281-0.79296-0.80859-1.418-1.793-1.8828-2.9648-0.46484-1.168-0.69531-2.5-0.69531-3.9844 0-1.4883 0.23047-2.8164 0.69531-3.9883 0.46485-1.168 1.0898-2.1562 1.8828-2.9609 0.79297-0.80469 1.6992-1.4219 2.7266-1.8477 1.0234-0.42578 2.0938-0.64062 3.2148-0.64062s2.2031 0.21484 3.2383 0.64062c1.0352 0.42578 1.9453 1.043 2.7227 1.8477 0.78125 0.80469 1.4102 1.793 1.8867 2.9609 0.47265 1.1719 0.71093 2.5 0.71093 3.9883 0 1.4844-0.23828 2.8164-0.71093 3.9844-0.47657 1.1719-1.1055 2.1562-1.8867 2.9648-0.77735 0.80079-1.6875 1.4102-2.7227 1.8281-1.0352 0.41406-2.1172 0.62109-3.2383 0.62109"/>
71
+ </g>
72
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-7)">
73
+ <path d="m289.19 131.09c-1.2188 0-2.3594-0.21093-3.4219-0.625-1.0586-0.41406-1.9805-1.0234-2.7578-1.8281-0.78125-0.80078-1.3906-1.7891-1.832-2.9609-0.4375-1.1719-0.65625-2.5-0.65625-3.9844 0-1.4883 0.24219-2.8164 0.73047-3.9883 0.48828-1.168 1.1445-2.1562 1.9766-2.9609 0.82813-0.80469 1.7852-1.4219 2.8711-1.8477 1.082-0.42578 2.2226-0.64062 3.418-0.64062 1.1719 0 2.1758 0.19531 3.0156 0.58593 0.83984 0.39063 1.5898 0.86719 2.25 1.4258l-2.0469 2.7422c-0.48828-0.41406-0.96875-0.73828-1.4453-0.96875s-0.99219-0.34765-1.5547-0.34765c-1.4609 0-2.6445 0.54297-3.5469 1.6289-0.90234 1.0859-1.3516 2.5391-1.3516 4.3711 0 1.8047 0.4414 3.2461 1.332 4.332 0.89062 1.0859 2.043 1.6289 3.457 1.6289 0.70703 0 1.3711-0.15234 1.9922-0.46093 0.62109-0.30078 1.1875-0.66016 1.6992-1.0742l1.7188 2.7773c-0.85157 0.73047-1.7852 1.2812-2.7969 1.6445-1.0117 0.36719-2.0273 0.55078-3.0508 0.55078"/>
74
+ </g>
75
+ <path d="m201.26 140.24h9.7213v41.532h-9.7213zm4.9058-7.2729c-1.7527 0-3.1892-0.50594-4.3186-1.5178-1.1293-1.0209-1.6895-2.34-1.6895-3.9752s0.56014-2.9724 1.6895-4.0204c1.1293-1.039 2.5658-1.563 4.3186-1.563 1.7437 0 3.1802 0.52402 4.3095 1.563 1.1293 1.048 1.6895 2.3852 1.6895 4.0204s-0.56014 2.9543-1.6895 3.9752c-1.1293 1.0119-2.5658 1.5178-4.3095 1.5178" stroke-width="2.3129"/>
76
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-8)">
77
+ <path d="m313.1 127.8c0.73438 0 1.3945-0.16797 1.9922-0.51172 0.59766-0.33985 1.2383-0.82813 1.9219-1.4648v-4.0195c-1.2188 0.14453-2.2461 0.33985-3.0703 0.58203-0.83203 0.2461-1.5 0.51953-2.0156 0.82422-0.50782 0.30469-0.875 0.65235-1.0938 1.043-0.21875 0.39063-0.33203 0.80469-0.33203 1.2422 0 0.80469 0.24609 1.3906 0.73437 1.7539 0.48438 0.36719 1.1094 0.55079 1.8633 0.55079m-1.3516 3.293c-1.5859 0-2.8672-0.48437-3.8398-1.4453-0.97657-0.96484-1.4648-2.2383-1.4648-3.8242 0-0.94922 0.20313-1.7969 0.60547-2.5391 0.40234-0.74609 1.0352-1.3867 1.9023-1.9219 0.86329-0.53516 1.9609-0.98829 3.2891-1.3516 1.3281-0.36718 2.9219-0.64453 4.7734-0.84375-0.0234-0.46093-0.0898-0.90625-0.20312-1.332-0.10938-0.42578-0.28906-0.80469-0.54688-1.1328-0.2539-0.33203-0.58984-0.58594-1.0039-0.76953-0.41797-0.1836-0.92969-0.27344-1.5391-0.27344-0.875 0-1.7344 0.16797-2.5781 0.51172-0.83984 0.33984-1.6641 0.75391-2.4688 1.2422l-1.5352-2.8164c1-0.63281 2.1211-1.1836 3.3633-1.6445 1.2461-0.46484 2.5859-0.69531 4.0234-0.69531 2.2422 0 3.9219 0.66797 5.0312 1.9922 1.1094 1.332 1.6602 3.25 1.6602 5.7617v10.641h-3.4727l-0.29297-1.9727h-0.14453c-0.80468 0.67969-1.6641 1.2539-2.5781 1.7188-0.91406 0.46094-1.9062 0.69531-2.9805 0.69531"/>
78
+ </g>
79
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-9)">
80
+ <path d="m332.01 131.09c-1.0469 0-1.9297-0.16015-2.6484-0.47656s-1.3047-0.76172-1.7578-1.3359c-0.44922-0.57031-0.78125-1.2539-0.98828-2.0469s-0.30859-1.6758-0.30859-2.6523v-8.5586h-2.5586v-3.1445l2.7774-0.18359 0.51172-4.8984h3.5117v4.8984h4.5703v3.3281h-4.5703v8.5586c0 2.0976 0.83985 3.1445 2.5234 3.1445 0.31641 0 0.64063-0.0352 0.96875-0.10938 0.32813-0.0703 0.62891-0.16797 0.89453-0.29297l0.73047 3.1094c-0.48437 0.17187-1.0391 0.32422-1.6602 0.45703-0.625 0.13281-1.2891 0.20312-1.9961 0.20312"/>
81
+ </g>
82
+ <path d="m295.4 140.24h9.7303v41.532h-9.7303zm4.9148-7.2729c-1.7527 0-3.1892-0.50594-4.3186-1.5178-1.1293-1.0209-1.6895-2.34-1.6895-3.9752s0.56015-2.9724 1.6895-4.0204c1.1293-1.039 2.5658-1.563 4.3186-1.563 1.7437 0 3.1802 0.52402 4.3095 1.563 1.1293 1.048 1.6895 2.3852 1.6895 4.0204s-0.56014 2.9543-1.6895 3.9752c-1.1293 1.0119-2.5658 1.5178-4.3095 1.5178" stroke-width="2.3129"/>
83
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-10)">
84
+ <path d="m355.45 127.65c1.3164 0 2.3516-0.54296 3.1094-1.6289 0.75391-1.0859 1.1328-2.5312 1.1328-4.332 0-1.832-0.37891-3.2852-1.1328-4.3711-0.75781-1.0859-1.793-1.6289-3.1094-1.6289-1.3164 0-2.3477 0.54297-3.0898 1.6289-0.74218 1.0859-1.1133 2.5391-1.1133 4.3711 0 1.8008 0.3711 3.2461 1.1133 4.332 0.74219 1.0859 1.7734 1.6289 3.0898 1.6289m0 3.4375c-1.1211 0-2.1953-0.20703-3.2148-0.62109-1.0273-0.41797-1.9336-1.0273-2.7266-1.8281-0.79297-0.80859-1.4219-1.793-1.8828-2.9648-0.46484-1.168-0.69531-2.5-0.69531-3.9844 0-1.4883 0.23047-2.8164 0.69531-3.9883 0.46094-1.168 1.0898-2.1562 1.8828-2.9609s1.6992-1.4219 2.7266-1.8477c1.0195-0.42578 2.0938-0.64062 3.2148-0.64062 1.1211 0 2.2031 0.21484 3.2383 0.64062s1.9453 1.043 2.7227 1.8477c0.78125 0.80469 1.4102 1.793 1.8828 2.9609 0.47656 1.1719 0.71484 2.5 0.71484 3.9883 0 1.4844-0.23828 2.8164-0.71484 3.9844-0.47266 1.1719-1.1016 2.1562-1.8828 2.9648-0.77735 0.80079-1.6875 1.4102-2.7227 1.8281-1.0352 0.41406-2.1172 0.62109-3.2383 0.62109"/>
85
+ </g>
86
+ <path d="m361.21 181.78v-41.523h8.0318l0.67759 5.5834h0.34332c1.8611-1.8069 3.8759-3.3609 6.0442-4.6619 2.1683-1.292 4.698-1.9424 7.571-1.9424 4.4541 0 7.6975 1.4275 9.7213 4.2734 2.0328 2.8459 3.0537 6.9205 3.0537 12.224v26.047h-9.7303v-24.782c0-3.4332-0.50594-5.8635-1.5268-7.2729-1.0119-1.4094-2.6743-2.1141-4.9871-2.1141-1.8069 0-3.397 0.4427-4.7793 1.31-1.3823 0.87636-2.9453 2.1593-4.689 3.8488v29.01z" stroke-width="2.3129"/>
87
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-11)">
88
+ <path d="m258.19 67.793h-15.676v-15.672h15.676z" fill="#cf9c1d"/>
89
+ </g>
90
+ <path d="m72.503 72.657h-36.247v-36.256h36.247z" fill="#959b54" stroke-width="2.3129"/>
91
+ <g transform="matrix(2.3129 0 0 2.3129 -488.39 -120.4)" clip-path="url(#clip-12)">
92
+ <path d="m226.84 99.141h-15.676v-15.672h15.676z" fill="#d03544"/>
93
+ </g>
94
+ <path d="m108.76 108.9h-36.256v-36.247h36.256z" fill="#4992b2" stroke-width="2.3129"/>
95
+ </svg>
@@ -0,0 +1,193 @@
1
+ /* === Dark Mode — selector-specific overrides === */
2
+ [data-theme="dark"] body { background: var(--color-bg); color: var(--color-text); }
3
+ [data-theme="dark"] h1, [data-theme="dark"] h2, [data-theme="dark"] h3,
4
+ [data-theme="dark"] h4, [data-theme="dark"] h5, [data-theme="dark"] h6 { color: #a8b4e0; }
5
+ [data-theme="dark"] .toc-heading { color: #a8b4e0; }
6
+ [data-theme="dark"] .toc-link { color: var(--color-text-light); }
7
+ [data-theme="dark"] .toc-link:hover { background: var(--mn-primary-light); color: #c0c8e8; }
8
+ [data-theme="dark"] .toc-link.toc-active { background: #1c2858; border-left-color: #6882d4; color: #d0d8f8; }
9
+ [data-theme="dark"] .toc-level-1 > .toc-link { color: var(--color-text); }
10
+ [data-theme="dark"] .doc-header {
11
+ background: linear-gradient(135deg, rgba(15,17,24,0.95) 0%, rgba(30,33,64,0.95) 50%, rgba(42,32,64,0.9) 100%);
12
+ box-shadow: 0 1px 0 rgba(255,255,255,0.03), 0 2px 16px rgba(0,0,0,0.5);
13
+ }
14
+ [data-theme="dark"] .toc-header { background: var(--mn-primary-light); border-color: var(--color-border); }
15
+ [data-theme="dark"] .title-section {
16
+ background: linear-gradient(175deg, #080e1a 0%, #101830 35%, #182050 65%, #202868 100%);
17
+ }
18
+ [data-theme="dark"] .title-section::after { background: var(--color-bg); }
19
+ [data-theme="dark"] .prefatory-section { border-top-color: transparent; color: var(--color-text-muted); }
20
+ [data-theme="dark"] code { background: var(--mn-primary-light); color: #c8cee0; }
21
+ [data-theme="dark"] blockquote { color: var(--color-text-light); }
22
+ [data-theme="dark"] .doc-content table caption { background: var(--color-bg-light); border-color: var(--color-border); color: var(--color-text); }
23
+ [data-theme="dark"] th { background: #1e2450; color: #e0e4f0; }
24
+ [data-theme="dark"] td { border-color: var(--color-border); }
25
+ [data-theme="dark"] tr:nth-child(even) td { background: var(--color-bg-light); }
26
+ [data-theme="dark"] tr:hover td { background: var(--mn-primary-light); }
27
+ [data-theme="dark"] .sourcecode pre { background: #0a0c16; border-color: #1a1e32; color: #c8cee0; }
28
+ [data-theme="dark"] .doc-footer { background: var(--color-bg-light); border-top-color: var(--color-border); color: var(--color-text-muted); }
29
+ [data-theme="dark"] .back-to-top { background: var(--color-bg-light); border-color: var(--color-border); color: var(--color-text-light); }
30
+ [data-theme="dark"] .back-to-top:hover { background: var(--mn-primary); color: #fff; border-color: var(--mn-primary); }
31
+ [data-theme="dark"] .search-panel { background: var(--color-bg-light); box-shadow: 0 8px 32px rgba(0,0,0,0.4), 0 0 0 1px var(--color-border); }
32
+ [data-theme="dark"] .search-input { color: var(--color-text); }
33
+ [data-theme="dark"] .search-btn { background: var(--mn-primary-light); border-color: var(--color-border); }
34
+ [data-theme="dark"] mark.search-match { background: #2e1e50; box-shadow: 0 0 0 1px rgba(156,96,193,0.5); color: var(--color-text); }
35
+ [data-theme="dark"] .cover-stage p { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.1); }
36
+ [data-theme="dark"] .footer-mn-logo svg path { fill: var(--color-text-muted); }
37
+ [data-theme="dark"] .code-copy-btn { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.1); }
38
+ [data-theme="dark"] .table-scroll-wrapper { box-shadow: 0 1px 3px rgba(0,0,0,0.3); }
39
+ [data-theme="dark"] .caption-label, [data-theme="dark"] .fmt-caption-label { color: #a8b4e0; }
40
+ [data-theme="dark"] .term-number { color: #a8b4e0; }
41
+ [data-theme="dark"] .term-name { color: var(--color-text); }
42
+ [data-theme="dark"] div[id^="term-"] { border-top-color: #4a5a9a; }
43
+ [data-theme="dark"] .term-source { border-top-color: var(--color-border); }
44
+ [data-theme="dark"] h1 { border-bottom-color: var(--color-border); }
45
+ [data-theme="dark"] h1::after { background: #5a6abf; }
46
+ [data-theme="dark"] .quote { background: var(--color-bg-light); }
47
+ [data-theme="dark"] .reader-btn { background: transparent; }
48
+ [data-theme="dark"] .reader-btn:hover { background: rgba(255,255,255,0.08); }
49
+ [data-theme="dark"] img { background: #fff; }
50
+ [data-theme="dark"] figcaption { color: var(--color-text-muted); }
51
+ [data-theme="dark"] .biblio-entry { border-bottom-color: var(--color-border); }
52
+ [data-theme="dark"] .doc-title { color: #a8b4e0; }
53
+ [data-theme="dark"] .foreword-title, [data-theme="dark"] .intro-title { color: #a8b4e0; border-bottom-color: #4a5a9a; }
54
+ [data-theme="dark"] .annex-title { color: #a8b4e0; }
55
+ [data-theme="dark"] license-statement { background: var(--mn-primary-light); border-color: var(--color-border); }
56
+ [data-theme="dark"] feedback-statement { border-top-color: var(--color-border); }
57
+ [data-theme="dark"] dl { border-left-color: var(--color-border); }
58
+ [data-theme="dark"] .formula { border-top-color: var(--color-border); border-bottom-color: var(--color-border); }
59
+ [data-theme="dark"] .formula-number { color: #a8b4e0; }
60
+ [data-theme="dark"] .header-doc-title { border-left-color: rgba(255,255,255,0.15); }
61
+
62
+ /* === Sepia Theme === */
63
+ [data-theme="sepia"] {
64
+ --color-text: #3e2c1a;
65
+ --color-text-light: #5c4830;
66
+ --color-text-muted: #8a7560;
67
+ --color-bg: #f4edd8;
68
+ --color-bg-light: #ebe3cc;
69
+ --color-border: #d4c9a8;
70
+ --color-sidebar-bg: #efe7d0;
71
+ --mn-primary-light: #e8dcc0;
72
+ --mn-accent-light: #e6d8b8;
73
+ }
74
+ [data-theme="sepia"] body { background: var(--color-bg); color: var(--color-text); }
75
+ [data-theme="sepia"] h1, [data-theme="sepia"] h2, [data-theme="sepia"] h3,
76
+ [data-theme="sepia"] h4 { color: #6b4423; }
77
+ [data-theme="sepia"] .toc-heading { color: #6b4423; }
78
+ [data-theme="sepia"] .toc-link:hover { background: var(--mn-primary-light); color: #6b4423; }
79
+ [data-theme="sepia"] .toc-link.toc-active { background: #e0d4b0; border-left-color: #a67c20; color: #6b4423; }
80
+ [data-theme="sepia"] .toc-header { background: #e8dcc0; border-color: var(--color-border); }
81
+ [data-theme="sepia"] .title-section {
82
+ background: linear-gradient(175deg, #3a2510 0%, #5c3d18 40%, #7a5520 70%, #8B6914 100%);
83
+ }
84
+ [data-theme="sepia"] .title-section::after { background: var(--color-bg); }
85
+ [data-theme="sepia"] code { background: #e0d4b0; color: #3e2c1a; }
86
+ [data-theme="sepia"] blockquote { color: var(--color-text-light); }
87
+ [data-theme="sepia"] th { background: #6b4423; color: #f4edd8; }
88
+ [data-theme="sepia"] td { border-color: var(--color-border); }
89
+ [data-theme="sepia"] tr:nth-child(even) td { background: #ebe3cc; }
90
+ [data-theme="sepia"] tr:hover td { background: #e0d4b0; }
91
+ [data-theme="sepia"] .sourcecode pre { background: #2a1e10; border-color: #4a3820; color: #d4c4a0; }
92
+ [data-theme="sepia"] .doc-footer { background: #ebe3cc; border-top-color: var(--color-border); color: var(--color-text-muted); }
93
+ [data-theme="sepia"] .back-to-top { background: #ebe3cc; border-color: var(--color-border); color: #5c4830; }
94
+ [data-theme="sepia"] .back-to-top:hover { background: #6b4423; color: #f4edd8; border-color: #6b4423; }
95
+ [data-theme="sepia"] .note-block { background: #f0e8d0; border-left-color: #a67c20; }
96
+ [data-theme="sepia"] .example { background: #e8f0e0; border-left-color: #6a8a4a; }
97
+ [data-theme="sepia"] .search-panel { background: #efe7d0; box-shadow: 0 8px 32px rgba(0,0,0,0.1); }
98
+ [data-theme="sepia"] .search-input { color: var(--color-text); }
99
+ [data-theme="sepia"] mark.search-match { background: #e0d4a0; color: #3e2c1a; }
100
+ [data-theme="sepia"] .cover-stage p { border-color: rgba(255,255,255,0.2); }
101
+ [data-theme="sepia"] .code-copy-btn { background: rgba(0,0,0,0.15); border-color: rgba(255,255,255,0.1); }
102
+ [data-theme="sepia"] .caption-label, [data-theme="sepia"] .fmt-caption-label { color: #6b4423; }
103
+ [data-theme="sepia"] .term-number { color: #6b4423; }
104
+ [data-theme="sepia"] .term-name { color: #6b4423; }
105
+ [data-theme="sepia"] div[id^="term-"] { border-top-color: #a67c20; }
106
+ [data-theme="sepia"] h1 { border-bottom-color: var(--color-border); }
107
+ [data-theme="sepia"] h1::after { background: #a67c20; }
108
+ [data-theme="sepia"] .reader-btn { color: rgba(255,255,255,0.75); }
109
+ [data-theme="sepia"] .reader-btn:hover { background: rgba(255,255,255,0.15); color: #fff; }
110
+ [data-theme="sepia"] figcaption { color: var(--color-text-muted); }
111
+ [data-theme="sepia"] .biblio-entry { border-bottom-color: var(--color-border); }
112
+ [data-theme="sepia"] .doc-title { color: #6b4423; }
113
+ [data-theme="sepia"] .foreword-title, [data-theme="sepia"] .intro-title { color: #6b4423; border-bottom-color: #a67c20; }
114
+ [data-theme="sepia"] .annex-title { color: #6b4423; }
115
+ [data-theme="sepia"] license-statement { background: #e8dcc0; border-color: var(--color-border); }
116
+ [data-theme="sepia"] feedback-statement { border-top-color: var(--color-border); }
117
+ [data-theme="sepia"] .formula { border-top-color: var(--color-border); border-bottom-color: var(--color-border); }
118
+ [data-theme="sepia"] .formula-number { color: #6b4423; }
119
+ [data-theme="sepia"] .header-doc-title { border-left-color: rgba(255,255,255,0.2); }
120
+ [data-theme="sepia"] .doc-content table caption { background: #ebe3cc; border-color: var(--color-border); color: var(--color-text); }
121
+
122
+ /* === OLED Theme (pure black) === */
123
+ [data-theme="oled"] {
124
+ --color-text: #e8e8e8;
125
+ --color-text-light: #b0b0b0;
126
+ --color-text-muted: #707070;
127
+ --color-bg: #000;
128
+ --color-bg-light: #0a0a0a;
129
+ --color-border: #1a1a1a;
130
+ --color-sidebar-bg: #050505;
131
+ --mn-primary-light: #0a0a0a;
132
+ --mn-accent-light: #0a0a08;
133
+ }
134
+ [data-theme="oled"] body { background: #000; color: #e8e8e8; }
135
+ [data-theme="oled"] h1, [data-theme="oled"] h2, [data-theme="oled"] h3,
136
+ [data-theme="oled"] h4 { color: #d0d0d0; }
137
+ [data-theme="oled"] .toc-heading { color: #d0d0d0; }
138
+ [data-theme="oled"] .toc-link:hover { background: #0a0a0a; color: #e0e0e0; }
139
+ [data-theme="oled"] .toc-link.toc-active { background: #0a0a0a; border-left-color: #9C60C1; color: #f0f0f0; }
140
+ [data-theme="oled"] .toc-header { background: #080808; border-color: #1a1a1a; }
141
+ [data-theme="oled"] .title-section {
142
+ background: linear-gradient(175deg, #000 0%, #080808 40%, #0a0a10 70%, #0c0c18 100%);
143
+ }
144
+ [data-theme="oled"] .title-section::after { background: #000; }
145
+ [data-theme="oled"] code { background: #0a0a0a; color: #d0d0d0; }
146
+ [data-theme="oled"] blockquote { border-left-color: #333; color: #b0b0b0; }
147
+ [data-theme="oled"] th { background: #111; color: #e0e0e0; }
148
+ [data-theme="oled"] td { border-color: #1a1a1a; }
149
+ [data-theme="oled"] tr:nth-child(even) td { background: #080808; }
150
+ [data-theme="oled"] tr:hover td { background: #0c0c0c; }
151
+ [data-theme="oled"] .sourcecode pre { background: #000; border-color: #111; color: #c0c0c0; }
152
+ [data-theme="oled"] .doc-footer { background: #080808; border-top-color: #1a1a1a; color: #707070; }
153
+ [data-theme="oled"] .back-to-top { background: #0a0a0a; border-color: #1a1a1a; color: #b0b0b0; }
154
+ [data-theme="oled"] .back-to-top:hover { background: #9C60C1; color: #fff; border-color: #9C60C1; }
155
+ [data-theme="oled"] .note-block { background: #080808; border-left-color: #333; }
156
+ [data-theme="oled"] .example { background: #080808; border-left-color: #333; }
157
+ [data-theme="oled"] .search-panel { background: #0a0a0a; box-shadow: 0 8px 32px rgba(0,0,0,0.8); border: 1px solid #1a1a1a; }
158
+ [data-theme="oled"] mark.search-match { background: #1a1a2a; color: #e0e0e0; }
159
+ [data-theme="oled"] .cover-stage p { border-color: #222; }
160
+ [data-theme="oled"] .code-copy-btn { background: rgba(255,255,255,0.04); border-color: #1a1a1a; }
161
+ [data-theme="oled"] .caption-label, [data-theme="oled"] .fmt-caption-label { color: #c0c0c0; }
162
+ [data-theme="oled"] .term-number { color: #c0c0c0; }
163
+ [data-theme="oled"] .term-name { color: #d0d0d0; }
164
+ [data-theme="oled"] div[id^="term-"] { border-top-color: #222; }
165
+ [data-theme="oled"] h1 { border-bottom-color: #1a1a1a; }
166
+ [data-theme="oled"] h1::after { background: #9C60C1; }
167
+ [data-theme="oled"] .reader-btn { color: rgba(255,255,255,0.5); }
168
+ [data-theme="oled"] .reader-btn:hover { background: rgba(255,255,255,0.06); color: #fff; }
169
+ [data-theme="oled"] figcaption { color: #707070; }
170
+ [data-theme="oled"] .biblio-entry { border-bottom-color: #1a1a1a; }
171
+ [data-theme="oled"] .doc-title { color: #c0c0c0; }
172
+ [data-theme="oled"] .foreword-title, [data-theme="oled"] .intro-title { color: #c0c0c0; border-bottom-color: #222; }
173
+ [data-theme="oled"] .annex-title { color: #c0c0c0; }
174
+ [data-theme="oled"] license-statement { background: #080808; border-color: #1a1a1a; }
175
+ [data-theme="oled"] feedback-statement { border-top-color: #1a1a1a; }
176
+ [data-theme="oled"] .formula { border-top-color: #1a1a1a; border-bottom-color: #1a1a1a; }
177
+ [data-theme="oled"] .formula-number { color: #c0c0c0; }
178
+ [data-theme="oled"] .header-doc-title { border-left-color: #1a1a1a; }
179
+ [data-theme="oled"] .doc-content table caption { background: #080808; border-color: #1a1a1a; color: #c0c0c0; }
180
+ [data-theme="oled"] img { background: #080808; }
181
+ [data-theme="oled"] .reading-progress { box-shadow: none; }
182
+
183
+ /* Dark scroll reveal */
184
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > div[id],
185
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > div.section-sub,
186
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > div[id] > div[id],
187
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > .main-section > div[id],
188
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > p.doc-title { opacity: 0; }
189
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > div[id].revealed,
190
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > div.section-sub.revealed,
191
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > div[id] > div[id].revealed,
192
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > .main-section > div[id].revealed,
193
+ [data-theme="dark"] .scroll-reveal-ready .doc-content > p.doc-title.revealed { opacity: 1; }
@@ -0,0 +1,112 @@
1
+ /* === Layout — CSS Grid === */
2
+ .doc-layout {
3
+ display: grid;
4
+ grid-template-columns: 1fr;
5
+ grid-template-rows: auto 1fr auto;
6
+ min-height: calc(100vh - var(--header-height));
7
+ }
8
+ .toc-sidebar { grid-column: 1; grid-row: 1 / 3; }
9
+ .toc-overlay { grid-column: 1; grid-row: 1 / 3; }
10
+ .doc-content { grid-column: 1; grid-row: 1; }
11
+ .doc-footer { grid-column: 1; grid-row: 3; }
12
+
13
+ .doc-content {
14
+ padding: 1.4em;
15
+ max-width: var(--content-max-width);
16
+ width: 100%;
17
+ margin: 0 auto;
18
+ overflow-wrap: break-word;
19
+ min-width: 0;
20
+ }
21
+
22
+ /* Mobile */
23
+ @media (max-width: 767px) {
24
+ .doc-content { padding: 1em 0.8em; }
25
+ }
26
+
27
+ /* Tablet+ */
28
+ @media (min-width: 768px) {
29
+ .doc-layout {
30
+ grid-template-columns: var(--sidebar-width) minmax(0, 1fr);
31
+ grid-template-rows: 1fr auto;
32
+ }
33
+ .toc-sidebar {
34
+ grid-column: 1; grid-row: 1;
35
+ transform: none;
36
+ position: sticky;
37
+ top: var(--header-height);
38
+ width: var(--sidebar-width);
39
+ height: calc(100vh - var(--header-height));
40
+ height: calc(100dvh - var(--header-height));
41
+ box-shadow: none;
42
+ background: var(--color-sidebar-bg);
43
+ border-right: 1px solid var(--color-border);
44
+ overflow-y: auto;
45
+ }
46
+ .toc-sidebar.toc-open { transform: none; box-shadow: none; }
47
+ .toc-overlay { display: none !important; grid-column: 1; grid-row: 1; }
48
+ .doc-content {
49
+ grid-column: 2; grid-row: 1;
50
+ padding: 2.5em 3em;
51
+ max-width: var(--content-max-width);
52
+ }
53
+ .doc-footer { grid-column: 2; grid-row: 2; }
54
+ }
55
+
56
+ /* Desktop+ */
57
+ @media (min-width: 1024px) {
58
+ :root { --sidebar-width: 280px; --content-max-width: 54em; }
59
+ }
60
+
61
+ /* Reading mode — distraction-free */
62
+ .reading-mode .toc-sidebar,
63
+ .reading-mode .toc-hamburger,
64
+ .reading-mode .reading-progress,
65
+ .reading-mode .back-to-top {
66
+ display: none !important;
67
+ }
68
+ .reading-mode .doc-header {
69
+ height: 40px !important;
70
+ padding: 0 1em;
71
+ }
72
+ .reading-mode .header-brand,
73
+ .reading-mode .header-doc-id,
74
+ .reading-mode .header-settings,
75
+ .reading-mode .settings-dropdown {
76
+ display: none !important;
77
+ }
78
+ .reading-mode .header-doc-title {
79
+ opacity: 0.9; border-left: none; padding-left: 0; margin-left: 0;
80
+ font-weight: 600; flex: 1; text-align: center;
81
+ }
82
+ .reading-mode .header-actions { margin-left: 0; }
83
+ .reading-mode .doc-layout {
84
+ grid-template-columns: 1fr !important;
85
+ }
86
+ .reading-mode .doc-content {
87
+ grid-column: 1 !important;
88
+ max-width: 38em;
89
+ padding: 2em 1em;
90
+ margin: 0 auto;
91
+ }
92
+ .reading-mode .title-section {
93
+ min-height: auto;
94
+ background: var(--mn-primary) !important;
95
+ padding: 2em 1em;
96
+ }
97
+ .reading-mode .title-section::before,
98
+ .reading-mode .title-section::after {
99
+ display: none;
100
+ }
101
+ .reading-mode .cover-title {
102
+ font-size: 1.6em;
103
+ animation: none;
104
+ }
105
+ .reading-mode .cover-doc-id {
106
+ animation: none;
107
+ font-size: 0.9em;
108
+ }
109
+ .reading-mode .cover-stage {
110
+ animation: none;
111
+ }
112
+
@@ -0,0 +1,46 @@
1
+ /* === Print === */
2
+ @media print {
3
+ .toc-sidebar, .doc-header, .toc-hamburger, .toc-overlay,
4
+ .doc-footer, .reading-progress, .back-to-top, .search-panel,
5
+ .code-copy-btn, .toc-toggle, .toc-list-header, .toc-list-item { display: none !important; }
6
+ .doc-layout { display: block; }
7
+ .doc-content { max-width: 100%; padding: 0 2.5cm; }
8
+ .title-section {
9
+ background: none; color: #000; min-height: auto; padding: 1em 0;
10
+ }
11
+ .title-section::before, .title-section::after { display: none; }
12
+ .cover-doc-id, .cover-title, .cover-date { color: #000; text-shadow: none; }
13
+ .cover-stage p { background: none; color: #000; border: 1px solid #999; }
14
+ .cover-grid { display: block; }
15
+ .cover-meta { border-right: none; padding-right: 0; }
16
+ body { font-size: 11pt; color: #000; line-height: 1.6; }
17
+ a { color: #000; text-decoration: underline; }
18
+ .note-block, .example, .admonition { background: none; }
19
+ .note-block, .example { border-left-color: #999; }
20
+ .formula { background: none; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
21
+ .formula-number { color: #000; }
22
+ .sourcecode pre { background: #f5f5f5; color: #000; border-color: #ddd; max-width: none; }
23
+ table { max-width: none; }
24
+ th { background: #f0f0f0; color: #000; }
25
+ .prefatory-section { border-top-color: #ccc; }
26
+ h1, h2, h3, h4, h5, h6 { page-break-after: avoid; break-after: avoid; }
27
+ .note-block, .example, .admonition, .formula, figure, table { page-break-inside: avoid; break-inside: avoid; }
28
+ .caption-label, .fmt-caption-label { color: #000; padding: 0; }
29
+ .term-number { color: #000; padding: 0; }
30
+ div[id^="term-"] { border-top: 2px solid #666; background: none; box-shadow: none; }
31
+ .formula-number { background: none; border: none; color: #000; padding: 0; }
32
+ .doc-title::after { display: none; }
33
+ h1 { border-bottom-color: #ccc; }
34
+ h1::after { display: none; }
35
+ .scroll-reveal-ready .doc-content > div[id],
36
+ .scroll-reveal-ready .doc-content > div.section-sub,
37
+ .scroll-reveal-ready .doc-content > div[id] > div[id],
38
+ .scroll-reveal-ready .doc-content > .main-section > div[id],
39
+ .scroll-reveal-ready .doc-content > p.doc-title {
40
+ opacity: 1; transform: none;
41
+ }
42
+ /* Index print */
43
+ .index-section { page-break-before: always; }
44
+ .index-letter { position: static; background: none; }
45
+ .index-quicknav { display: none; }
46
+ }
@@ -0,0 +1,55 @@
1
+ /* === Reset & Base === */
2
+ *, *::before, *::after { box-sizing: border-box; margin: 0; }
3
+ html {
4
+ scroll-behavior: smooth;
5
+ -webkit-text-size-adjust: 100%;
6
+ scroll-padding-top: calc(var(--header-height) + 16px);
7
+ }
8
+ body {
9
+ font-family: var(--font-body);
10
+ margin: 0; padding: 0;
11
+ color: var(--color-text);
12
+ line-height: 1.8;
13
+ background: var(--color-bg);
14
+ -webkit-font-smoothing: antialiased;
15
+ -moz-osx-font-smoothing: grayscale;
16
+ overflow-wrap: break-word;
17
+ text-rendering: optimizeLegibility;
18
+ font-feature-settings: "kern" 1, "liga" 1;
19
+ transition: background-color 0.35s ease, color 0.35s ease;
20
+ }
21
+
22
+ /* Font size scaling — applied to doc-content only, not header/sidebar */
23
+ .doc-content { font-size: calc(1em * var(--reader-font-scale)); }
24
+
25
+ /* Serif mode override — swaps font-body to a serif stack */
26
+ .reader-serif {
27
+ --font-body: "Source Serif 4", "Noto Serif", Georgia, "Times New Roman", serif;
28
+ }
29
+
30
+ /* Skip navigation link */
31
+ .skip-nav {
32
+ position: absolute; top: -100%; left: 0;
33
+ background: var(--mn-primary); color: #fff;
34
+ padding: 0.5em 1em; z-index: 10000;
35
+ font-family: var(--font-sans); font-size: 0.9em;
36
+ text-decoration: none; border-radius: 0 0 var(--radius-sm) 0;
37
+ }
38
+ .skip-nav:focus { top: 0; }
39
+
40
+ /* Non-theme custom properties */
41
+ :root {
42
+ --radius-lg: 12px;
43
+ --shadow-lg: 0 8px 32px rgba(40,56,138,0.15);
44
+ --transition-fast: 0.15s ease;
45
+ --transition-smooth: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
46
+ --reveal-duration: 0.6s;
47
+ --reveal-easing: cubic-bezier(0.16, 1, 0.3, 1);
48
+ --reader-font-scale: 1;
49
+ --spacing-xs: 0.25em;
50
+ --spacing-sm: 0.5em;
51
+ --spacing-md: 1em;
52
+ --spacing-lg: 1.5em;
53
+ --spacing-xl: 2.5em;
54
+ --spacing-2xl: 4em;
55
+ }
@@ -0,0 +1,77 @@
1
+ /* === Transitions & Animations === */
2
+
3
+ /* Cover animations */
4
+ @keyframes coverFadeIn {
5
+ from { opacity: 0; transform: translateY(12px); }
6
+ to { opacity: 1; transform: translateY(0); }
7
+ }
8
+ @keyframes coverTitleIn {
9
+ from { opacity: 0; transform: translateY(18px); }
10
+ to { opacity: 1; transform: translateY(0); }
11
+ }
12
+
13
+ /* Section arrival highlight */
14
+ .section-arrival-highlight {
15
+ animation: arrival-highlight 1.5s ease-out;
16
+ }
17
+ @keyframes arrival-highlight {
18
+ 0% { background: rgba(156,96,193,0.12); }
19
+ 100% { background: transparent; }
20
+ }
21
+
22
+ /* Lightbox animations */
23
+ @keyframes lightboxIn {
24
+ from { opacity: 0; }
25
+ to { opacity: 1; }
26
+ }
27
+ @keyframes lightboxImgIn {
28
+ from { opacity: 0; transform: scale(0.92); }
29
+ to { opacity: 1; transform: scale(1); }
30
+ }
31
+
32
+ /* Scroll reveal */
33
+ .scroll-reveal-ready .doc-content > div[id],
34
+ .scroll-reveal-ready .doc-content > div.section-sub,
35
+ .scroll-reveal-ready .doc-content > div[id] > div[id],
36
+ .scroll-reveal-ready .doc-content > .main-section > div[id],
37
+ .scroll-reveal-ready .doc-content > p.doc-title {
38
+ opacity: 0;
39
+ transform: translateY(8px);
40
+ transition: opacity var(--reveal-duration) var(--reveal-easing),
41
+ transform var(--reveal-duration) var(--reveal-easing);
42
+ }
43
+ .scroll-reveal-ready .doc-content > div[id].revealed,
44
+ .scroll-reveal-ready .doc-content > div.section-sub.revealed,
45
+ .scroll-reveal-ready .doc-content > div[id] > div[id].revealed,
46
+ .scroll-reveal-ready .doc-content > .main-section > div[id].revealed,
47
+ .scroll-reveal-ready .doc-content > p.doc-title.revealed {
48
+ opacity: 1;
49
+ transform: translateY(0);
50
+ }
51
+ /* Staggered delay */
52
+ .scroll-reveal-ready .doc-content > div[id]:nth-child(2),
53
+ .scroll-reveal-ready .doc-content > div.section-sub:nth-child(2) { transition-delay: 0.05s; }
54
+ .scroll-reveal-ready .doc-content > div[id]:nth-child(3),
55
+ .scroll-reveal-ready .doc-content > div.section-sub:nth-child(3) { transition-delay: 0.1s; }
56
+ .scroll-reveal-ready .doc-content > div[id]:nth-child(4),
57
+ .scroll-reveal-ready .doc-content > div.section-sub:nth-child(4) { transition-delay: 0.15s; }
58
+ .scroll-reveal-ready .doc-content > div[id]:nth-child(5),
59
+ .scroll-reveal-ready .doc-content > div.section-sub:nth-child(5) { transition-delay: 0.2s; }
60
+
61
+ /* Reduced motion */
62
+ @media (prefers-reduced-motion: reduce) {
63
+ *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
64
+ html { scroll-behavior: auto; }
65
+ .toc-sidebar { transition: none; }
66
+ .toc-overlay { transition: none; }
67
+ .reading-progress { transition: none; }
68
+ .search-panel { transition: none; }
69
+ .back-to-top { transition: none; }
70
+ .scroll-reveal-ready .doc-content > div[id],
71
+ .scroll-reveal-ready .doc-content > div.section-sub,
72
+ .scroll-reveal-ready .doc-content > div[id] > div[id],
73
+ .scroll-reveal-ready .doc-content > .main-section > div[id],
74
+ .scroll-reveal-ready .doc-content > p.doc-title {
75
+ opacity: 1; transform: none; transition: none;
76
+ }
77
+ }