metanorma-ogc 1.0.8 → 1.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/macos.yml +0 -1
  3. data/.github/workflows/ubuntu.yml +10 -7
  4. data/.github/workflows/windows.yml +0 -1
  5. data/Rakefile +2 -0
  6. data/lib/asciidoctor/ogc/biblio.rng +1 -1
  7. data/lib/asciidoctor/ogc/converter.rb +11 -16
  8. data/lib/asciidoctor/ogc/isodoc.rng +427 -0
  9. data/lib/asciidoctor/ogc/reqt.rng +23 -0
  10. data/lib/isodoc/ogc.rb +2 -0
  11. data/lib/isodoc/ogc/base_convert.rb +11 -55
  12. data/lib/isodoc/ogc/html/_coverpage.css +195 -0
  13. data/lib/isodoc/ogc/html/htmlstyle.css +1084 -0
  14. data/lib/isodoc/ogc/html/ogc.css +835 -0
  15. data/lib/isodoc/ogc/html/wordstyle.css +1253 -0
  16. data/lib/isodoc/ogc/html/wordstyle.scss +0 -1
  17. data/lib/isodoc/ogc/html_convert.rb +0 -5
  18. data/lib/isodoc/ogc/ogc.abstract-specification-topic.xsl +874 -310
  19. data/lib/isodoc/ogc/ogc.best-practice.xsl +874 -310
  20. data/lib/isodoc/ogc/ogc.change-request-supporting-document.xsl +874 -310
  21. data/lib/isodoc/ogc/ogc.community-practice.xsl +874 -310
  22. data/lib/isodoc/ogc/ogc.community-standard.xsl +874 -310
  23. data/lib/isodoc/ogc/ogc.discussion-paper.xsl +874 -310
  24. data/lib/isodoc/ogc/ogc.engineering-report.xsl +874 -310
  25. data/lib/isodoc/ogc/ogc.other.xsl +874 -310
  26. data/lib/isodoc/ogc/ogc.policy.xsl +874 -310
  27. data/lib/isodoc/ogc/ogc.reference-model.xsl +874 -310
  28. data/lib/isodoc/ogc/ogc.release-notes.xsl +874 -310
  29. data/lib/isodoc/ogc/ogc.standard.xsl +874 -310
  30. data/lib/isodoc/ogc/ogc.test-suite.xsl +874 -310
  31. data/lib/isodoc/ogc/ogc.user-guide.xsl +874 -310
  32. data/lib/isodoc/ogc/ogc.white-paper.xsl +874 -310
  33. data/lib/isodoc/ogc/pdf_convert.rb +0 -13
  34. data/lib/isodoc/ogc/presentation_xml_convert.rb +10 -0
  35. data/lib/isodoc/ogc/reqt.rb +10 -5
  36. data/lib/isodoc/ogc/sections.rb +9 -8
  37. data/lib/isodoc/ogc/word_convert.rb +4 -9
  38. data/lib/isodoc/ogc/{reqt_xref.rb → xref.rb} +67 -5
  39. data/lib/metanorma/ogc/processor.rb +6 -8
  40. data/lib/metanorma/ogc/version.rb +1 -1
  41. data/metanorma-ogc.gemspec +2 -1
  42. metadata +28 -10
@@ -30,9 +30,22 @@
30
30
  <data type="boolean"/>
31
31
  </attribute>
32
32
  </optional>
33
+ <optional>
34
+ <attribute name="number"/>
35
+ </optional>
33
36
  <optional>
34
37
  <attribute name="subsequence"/>
35
38
  </optional>
39
+ <optional>
40
+ <attribute name="keep-with-next">
41
+ <data type="boolean"/>
42
+ </attribute>
43
+ </optional>
44
+ <optional>
45
+ <attribute name="keep-lines-together">
46
+ <data type="boolean"/>
47
+ </attribute>
48
+ </optional>
36
49
  <attribute name="id">
37
50
  <data type="ID"/>
38
51
  </attribute>
@@ -141,6 +154,16 @@
141
154
  <data type="boolean"/>
142
155
  </attribute>
143
156
  </optional>
157
+ <optional>
158
+ <attribute name="keep-with-next">
159
+ <data type="boolean"/>
160
+ </attribute>
161
+ </optional>
162
+ <optional>
163
+ <attribute name="keep-lines-together">
164
+ <data type="boolean"/>
165
+ </attribute>
166
+ </optional>
144
167
  <oneOrMore>
145
168
  <ref name="BasicBlock"/>
146
169
  </oneOrMore>
@@ -2,6 +2,8 @@ require "isodoc/ogc/metadata"
2
2
  require "isodoc/ogc/html_convert"
3
3
  require "isodoc/ogc/pdf_convert"
4
4
  require "isodoc/ogc/word_convert"
5
+ require "isodoc/ogc/presentation_xml_convert"
6
+ require "isodoc/ogc/xref"
5
7
 
6
8
  module IsoDoc
7
9
  module Ogc
@@ -8,6 +8,14 @@ require "fileutils"
8
8
  module IsoDoc
9
9
  module Ogc
10
10
  module BaseConvert
11
+ def metadata_init(lang, script, labels)
12
+ @meta = Metadata.new(lang, script, labels)
13
+ end
14
+
15
+ def xref_init(lang, script, klass, labels, options)
16
+ @xrefs = Xref.new(lang, script, klass, labels, options)
17
+ end
18
+
11
19
  def fileloc(loc)
12
20
  File.join(File.dirname(__FILE__), loc)
13
21
  end
@@ -55,19 +63,6 @@ module IsoDoc
55
63
  super.merge(y)
56
64
  end
57
65
 
58
- def preface_names_numbered(clause)
59
- return if clause.nil?
60
- @prefacenum += 1
61
- pref = RomanNumerals.to_roman(@prefacenum).downcase
62
- @anchors[clause["id"]] =
63
- { label: pref,
64
- level: 1, xref: preface_clause_name(clause), type: "clause" }
65
- clause.xpath(ns("./clause | ./terms | ./term | ./definitions | "\
66
- "./references")).each_with_index do |c, i|
67
- section_names1(c, "#{pref}.#{i + 1}", 2)
68
- end
69
- end
70
-
71
66
  def example_parse(node, out)
72
67
  name = node.at(ns("./name"))
73
68
  example_name_parse(node, out, name) #if name
@@ -78,7 +73,7 @@ module IsoDoc
78
73
  end
79
74
 
80
75
  def example_name_parse(node, div, name)
81
- lbl = anchor(node['id'], :label, false)
76
+ lbl = @xrefs.anchor(node['id'], :label, false)
82
77
  div.p **{ class: "SourceTitle", style: "text-align:center;" } do |p|
83
78
  lbl.nil? or p << l10n("#{@example_lbl} #{lbl}")
84
79
  name and !lbl.nil? and p << "&nbsp;&mdash; "
@@ -86,48 +81,9 @@ module IsoDoc
86
81
  end
87
82
  end
88
83
 
89
- def initial_anchor_names(d)
90
- @prefacenum = 0
91
- preface_names_numbered(d.at(ns("//preface/abstract")))
92
- @prefacenum += 1 if d.at(ns("//keyword"))
93
- preface_names_numbered(d.at(ns("//foreword")))
94
- preface_names_numbered(d.at(ns("//introduction")))
95
- @prefacenum += 1 if d.at(ns(SUBMITTINGORGS))
96
- preface_names_numbered(d.at(ns("//submitters")))
97
- d.xpath(ns("//preface/clause")).each do |c|
98
- preface_names_numbered(c)
99
- end
100
- preface_names_numbered(d.at(ns("//acknowledgements")))
101
- sequential_asset_names(d.xpath(ns(
102
- "//preface/abstract | //foreword | //introduction | "\
103
- "//submitters | //acknowledgements | //preface/clause")))
104
- n = section_names(d.at(ns("//clause[title = 'Scope']")), 0, 1)
105
- n = section_names(d.at(ns("//clause[title = 'Conformance']")), n, 1)
106
- n = section_names(d.at(ns(
107
- "//references[title = 'Normative References' or "\
108
- "title = 'Normative references']")), n, 1)
109
- n = section_names(
110
- d.at(ns("//sections/terms | //sections/clause[descendant::terms]")),
111
- n, 1)
112
- n = section_names(d.at(ns("//sections/definitions")), n, 1)
113
- middle_section_asset_names(d)
114
- clause_names(d, n)
115
- termnote_anchor_names(d)
116
- termexample_anchor_names(d)
117
- end
118
-
119
- MIDDLE_CLAUSE =
84
+ def middle_clause
120
85
  "//clause[parent::sections][not(xmlns:title = 'Scope' or "\
121
- "xmlns:title = 'Conformance')][not(descendant::terms)]".freeze
122
-
123
- def middle_section_asset_names(d)
124
- middle_sections = "//clause[title = 'Scope' or title = 'Conformance'] "\
125
- "| //foreword | //introduction | //preface/abstract | "\
126
- "//submitters | //acknowledgements | //preface/clause | "\
127
- "//references[title = 'Normative References' or title = "\
128
- "'Normative references'] | //sections/terms | "\
129
- "//sections/definitions | //clause[parent::sections]"
130
- sequential_asset_names(d.xpath(ns(middle_sections)))
86
+ "xmlns:title = 'Conformance')][not(descendant::terms)]"
131
87
  end
132
88
 
133
89
  def middle(isoxml, out)
@@ -0,0 +1,195 @@
1
+ .coverpage-maturity, .coverpage-stage {
2
+ font-family: {{headerfont}};
3
+ font-weight: 400;
4
+ font-size: 1.3em;
5
+ margin: 0 0 2em 0;
6
+ text-transform: uppercase; }
7
+
8
+ .icon-svg {
9
+ width: 100%;
10
+ color: #5ecf86; }
11
+
12
+ .wrapper-top {
13
+ background: #00335b;
14
+ background: linear-gradient(130deg, #00335b 45%, #f1f8ff 100%);
15
+ color: #ffffff;
16
+ padding: 5em 0;
17
+ width: 100%; }
18
+
19
+ .wrapper-top-bottom {
20
+ width: 0;
21
+ height: 0;
22
+ border-top: 100px solid #00335b;
23
+ border-right: 100px solid transparent;
24
+ position: absolute; }
25
+
26
+ .coverpage-metadata {
27
+ margin-top: 35px;
28
+ padding-top: 15px;
29
+ margin-right: 25px;
30
+ border-top: solid 1px white; }
31
+
32
+ .coverpage-metadata,
33
+ .coverpage-alt-formats {
34
+ font-size: 12px;
35
+ font-family: {{headerfont}};
36
+ margin-left: 1em;
37
+ text-align: left; }
38
+ .coverpage-metadata span,
39
+ .coverpage-alt-formats span {
40
+ display: block;
41
+ text-align: left; }
42
+ .coverpage-metadata span a,
43
+ .coverpage-alt-formats span a {
44
+ color: white; }
45
+ .coverpage-metadata span a:hover,
46
+ .coverpage-alt-formats span a:hover {
47
+ text-decoration: underline;
48
+ background: none;
49
+ box-shadow: none !important;
50
+ font-weight: 400; }
51
+ .coverpage-metadata .value,
52
+ .coverpage-alt-formats .value {
53
+ font-size: 15px;
54
+ margin-bottom: 15px; }
55
+ .coverpage-metadata .label,
56
+ .coverpage-alt-formats .label {
57
+ font-size: 12px;
58
+ padding: 0; }
59
+
60
+ .coverpage-alt-formats span {
61
+ display: inline;
62
+ text-align: left; }
63
+ .coverpage-alt-formats span a {
64
+ padding-right: 5px; }
65
+
66
+ .coverpage-title {
67
+ padding-bottom: 0.5em;
68
+ font-family: {{headerfont}};
69
+ font-weight: 100;
70
+ padding-left: 1em;
71
+ padding-right: 1em; }
72
+ .coverpage-title span {
73
+ font-family: {{headerfont}};
74
+ font-size: 1.8em;
75
+ line-height: 1; }
76
+
77
+ .docstage-box table {
78
+ width: auto; }
79
+
80
+ .docstage-box th {
81
+ background-color: #93c0d6; }
82
+
83
+ .docstage-box td {
84
+ vertical-align: top;
85
+ background-color: #daeef3;
86
+ padding: 0.5em;
87
+ border: 0; }
88
+
89
+ .docstage-box th:first-child {
90
+ border-radius: 1em 0 0 0; }
91
+
92
+ .docstage-box th:last-child {
93
+ border-radius: 0 1em 0 0; }
94
+
95
+ .docstage-box tr:first-child {
96
+ border-radius: 0 0 0 1em; }
97
+
98
+ .docstage-box tr:last-child {
99
+ border-radius: 0 1em 0 0; }
100
+
101
+ .docstage-box tr:last-child > td:first-child {
102
+ border-radius: 0 0 0 1em; }
103
+
104
+ .docstage-box tr:last-child > td:last-child {
105
+ border-radius: 0 0 1em 0; }
106
+
107
+ .WordSection11 {
108
+ padding: 0 2em 0 3em; }
109
+
110
+ .info-section {
111
+ padding: 0 2em 0 5em; }
112
+
113
+ .prefatory-section {
114
+ padding: 0 3em 0 6em; }
115
+
116
+ .zzSTDTitle1, .MsoCommentText {
117
+ display: none; }
118
+
119
+ .coverpage {
120
+ text-align: center;
121
+ padding-left: 1.5em; }
122
+
123
+ .coverpage-logo span, .coverpage-tc-name span {
124
+ font-family: {{bodyfont}};
125
+ text-transform: none;
126
+ font-weight: 300;
127
+ margin-left: 1em; }
128
+
129
+ .coverpage-tc-name {
130
+ font-size: 1.2em;
131
+ line-height: 1.2em;
132
+ margin: 0.25em 0; }
133
+
134
+ .copyright {
135
+ padding: 1em;
136
+ font-size: 0.9em;
137
+ text-align: left; }
138
+
139
+ /* Document Identity */
140
+ .coverpage-doc-identity {
141
+ font-size: 2em;
142
+ line-height: 2em; }
143
+
144
+ .coverpage-title .title-second {
145
+ display: none; }
146
+
147
+ .coverpage-stage-block {
148
+ font-family: {{headerfont}};
149
+ font-weight: 600;
150
+ font-size: 1.25em;
151
+ margin: 2em 0em 2em 0em;
152
+ text-transform: uppercase; }
153
+
154
+ .authors {
155
+ margin-top: 2em; }
156
+ .authors span {
157
+ display: block;
158
+ line-height: 2; }
159
+ .authors span.roletag {
160
+ display: inline-block;
161
+ font-size: 12px;
162
+ color: #00335b;
163
+ background-color: white;
164
+ padding: 2px 5px;
165
+ margin-left: 7px;
166
+ border-radius: 5px; }
167
+
168
+ /* Draft Warning */
169
+ .coverpage-warning {
170
+ border: #f36f36 solid 2px;
171
+ color: #f36f36 !important;
172
+ margin: 1em 2em;
173
+ color: #2e81c2;
174
+ padding: 2em 1em 1em 1em;
175
+ border-radius: 25px; }
176
+ .coverpage-warning h1 {
177
+ font-family: {{headerfont}};
178
+ font-weight: 300;
179
+ text-transform: uppercase;
180
+ font-size: 1.2em; }
181
+
182
+ @media print {
183
+ .document-info, .copyright {
184
+ page-break-before: always; }
185
+ .coverpage {
186
+ height: 23cm; }
187
+ .info-section {
188
+ display: none; }
189
+ .wrapper-top {
190
+ top: 0;
191
+ padding-top: 4cm;
192
+ padding-bottom: 4cm; }
193
+ .wrapper-top-bottom {
194
+ margin-top: -5px;
195
+ display: none; } }
@@ -0,0 +1,1084 @@
1
+ html, body, div, span, applet, object, iframe,
2
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
3
+ a, abbr, acronym, address, big, cite, code,
4
+ del, dfn, em, img, ins, kbd, q, s, samp,
5
+ small, strike, strong, sub, sup, tt, var,
6
+ b, u, i, center,
7
+ ol, ul, li,
8
+ fieldset, form, label, legend,
9
+ table, caption, tbody, tfoot, thead, tr, th, td,
10
+ article, aside, canvas, details, embed,
11
+ figure, figcaption, footer, header, hgroup,
12
+ menu, nav, output, ruby, section, summary,
13
+ time, mark, audio, video {
14
+ margin: 0;
15
+ padding: 0; }
16
+
17
+ html, body, div, span, applet, object, iframe,
18
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
19
+ a, abbr, acronym, address, big, cite, code,
20
+ del, dfn, em, img, ins, kbd, q, s, samp,
21
+ small, strike, strong, sub, sup, tt, var,
22
+ b, u, i, center,
23
+ dl, dt, dd, ol, ul, li,
24
+ fieldset, form, label, legend,
25
+ table, caption, tbody, tfoot, thead, tr, th, td,
26
+ article, aside, canvas, details, embed,
27
+ figure, figcaption, footer, header, hgroup,
28
+ menu, nav, output, ruby, section, summary,
29
+ time, mark, audio, video {
30
+ border: 0;
31
+ font-size: 100%; }
32
+
33
+ html, body, div, span, applet, object, iframe,
34
+ h1, h2, h3, h4, h5, h6, p, blockquote, pre,
35
+ a, abbr, acronym, address, big, cite, code,
36
+ del, dfn, em, img, ins, kbd, q, s, samp,
37
+ small, strike, strong, tt, var,
38
+ b, u, i, center,
39
+ dl, dd, ol, ul, li,
40
+ fieldset, form, label, legend,
41
+ table, caption, tbody, tfoot, thead, tr, th, td,
42
+ article, aside, canvas, details, embed,
43
+ figure, figcaption, footer, header, hgroup,
44
+ menu, nav, output, ruby, section, summary,
45
+ time, mark, audio, video {
46
+ vertical-align: baseline; }
47
+
48
+ html, body, div, span, applet, object, iframe,
49
+ p, blockquote,
50
+ a, abbr, acronym, address, big, cite,
51
+ del, dfn, em, img, ins, q, s,
52
+ small, strike, strong, sub, sup, var,
53
+ b, u, i, center,
54
+ dl, dt, dd, ol, ul, li,
55
+ fieldset, form, label, legend,
56
+ table, caption, tbody, tfoot, thead, tr, th, td,
57
+ article, aside, canvas, details, embed,
58
+ figure, figcaption, footer, header, hgroup,
59
+ menu, nav, output, ruby, section, summary,
60
+ time, mark, audio, video {
61
+ font-family: {{bodyfont}}; }
62
+
63
+ code, pre, tt, kbd, samp {
64
+ font-family: {{monospacefont}};
65
+ font-variant-ligatures: none; }
66
+
67
+ code *, pre *, tt *, kbd *, samp * {
68
+ font-family: {{monospacefont}} !important;
69
+ font-variant-ligatures: none; }
70
+
71
+ article, aside, details, figcaption, figure,
72
+ footer, header, hgroup, menu, nav, section {
73
+ display: block; }
74
+
75
+ table {
76
+ border-collapse: collapse;
77
+ border-spacing: 0; }
78
+
79
+ h1, h2, h3, h4, h5, h6 {
80
+ font-family: {{headerfont}}; }
81
+
82
+ blockquote, q {
83
+ quotes: none; }
84
+ blockquote:before, blockquote:after, q:before, q:after {
85
+ content: '';
86
+ content: none; }
87
+
88
+ .h2Annex {
89
+ font-family: {{headerfont}}; }
90
+
91
+ dl {
92
+ display: grid;
93
+ grid-template-columns: max-content auto; }
94
+ dl dt p, dl dd p {
95
+ margin-top: 0; }
96
+ dl dt {
97
+ grid-column-start: 1; }
98
+ dl dd {
99
+ grid-column-start: 2; }
100
+
101
+ b, strong {
102
+ font-weight: bold; }
103
+
104
+ div.document-stage-band, div.document-type-band {
105
+ background-color: #333333; }
106
+
107
+ #standard-band {
108
+ background-color: #3D9970; }
109
+
110
+ #standard {
111
+ border-bottom: solid 3px #3D9970; }
112
+
113
+ #abstract-specification-topic-band {
114
+ background-color: #3D9970; }
115
+
116
+ #abstract-specification-topic {
117
+ border-bottom: solid 3px #3D9970; }
118
+
119
+ #reference-model-band {
120
+ background-color: #3D9970; }
121
+
122
+ #reference-model {
123
+ border-bottom: solid 3px #3D9970; }
124
+
125
+ #best-practice-band {
126
+ background-color: #39CCCC; }
127
+
128
+ #best-practice {
129
+ border-bottom: solid 3px #39CCCC; }
130
+
131
+ #discussion-paper-band {
132
+ background-color: #39CCCC; }
133
+
134
+ #discussion-paper {
135
+ border-bottom: solid 3px #39CCCC; }
136
+
137
+ #white-paper-band {
138
+ background-color: #39CCCC; }
139
+
140
+ #white-paper {
141
+ border-bottom: solid 3px #39CCCC; }
142
+
143
+ #engineering-report-band {
144
+ background-color: #39CCCC; }
145
+
146
+ #engineering-report {
147
+ border-bottom: solid 3px #39CCCC; }
148
+
149
+ #release-notes-band {
150
+ background-color: #FFDC00; }
151
+
152
+ #release-notes {
153
+ border-bottom: solid 3px #FFDC00; }
154
+
155
+ #user-guide-band {
156
+ background-color: #FFDC00; }
157
+
158
+ #user-guide {
159
+ border-bottom: solid 3px #FFDC00; }
160
+
161
+ #community-practice-band {
162
+ background-color: #FF851B; }
163
+
164
+ #community-practice {
165
+ border-bottom: solid 3px #FF851B; }
166
+
167
+ #community-standard-band {
168
+ background-color: #FF851B; }
169
+
170
+ #community-standard {
171
+ border-bottom: solid 3px #FF851B; }
172
+
173
+ #other-band {
174
+ background-color: #0074D9; }
175
+
176
+ #other {
177
+ border-bottom: solid 3px #0074D9; }
178
+
179
+ #policy-band {
180
+ background-color: #0074D9; }
181
+
182
+ #policy {
183
+ border-bottom: solid 3px #0074D9; }
184
+
185
+ #change-request-supporting-document-band {
186
+ background-color: #0074D9; }
187
+
188
+ #change-request-supporting-document {
189
+ border-bottom: solid 3px #0074D9; }
190
+
191
+ #test-suite-band {
192
+ background-color: #001F3F; }
193
+
194
+ #test-suite {
195
+ border-bottom: solid 3px #001F3F; }
196
+
197
+ #candidate-band {
198
+ background-color: #8B9EB7; }
199
+
200
+ #candidate {
201
+ border-bottom: solid 3px #8B9EB7; }
202
+
203
+ #working-draft-band {
204
+ background-color: #8B9EB7; }
205
+
206
+ #working-draft {
207
+ border-bottom: solid 3px #8B9EB7; }
208
+
209
+ #proposal-band {
210
+ background-color: #8B9EB7; }
211
+
212
+ #proposal {
213
+ border-bottom: solid 3px #8B9EB7; }
214
+
215
+ #oab-review-band {
216
+ background-color: #8B9EB7; }
217
+
218
+ #oab-review {
219
+ border-bottom: solid 3px #8B9EB7; }
220
+
221
+ #committee-draft-band {
222
+ background-color: #8B9EB7; }
223
+
224
+ #committee-draft {
225
+ border-bottom: solid 3px #8B9EB7; }
226
+
227
+ #swg-draft-band {
228
+ background-color: #8B9EB7; }
229
+
230
+ #swg-draft {
231
+ border-bottom: solid 3px #8B9EB7; }
232
+
233
+ #public-rfc-band {
234
+ background-color: #48a0e7; }
235
+
236
+ #public-rfc {
237
+ border-bottom: solid 3px #48a0e7; }
238
+
239
+ #tc-vote-band {
240
+ background-color: #fd06fd; }
241
+
242
+ #tc-vote {
243
+ border-bottom: solid 3px #fd06fd; }
244
+
245
+ #published-band {
246
+ background-color: #9abd48; }
247
+
248
+ #published {
249
+ border-bottom: solid 3px #9abd48; }
250
+
251
+ #deprecated-band {
252
+ background-color: #7e0d13; }
253
+
254
+ #deprecated {
255
+ border-bottom: solid 3px #7e0d13; }
256
+
257
+ #retired-band {
258
+ background-color: #7e0d13; }
259
+
260
+ #retired {
261
+ border-bottom: solid 3px #7e0d13; }
262
+
263
+ body {
264
+ margin-left: auto;
265
+ margin-right: auto;
266
+ max-width: 100%;
267
+ font-size: 16px;
268
+ font-weight: 300;
269
+ line-height: 1.5;
270
+ color: #00335b;
271
+ background-color: #f6f8fa; }
272
+ body main {
273
+ margin: 0 3em 0 6em; }
274
+ @media screen and (min-width: 768px) {
275
+ body {
276
+ padding-left: 360px; } }
277
+ @media print {
278
+ body {
279
+ padding-left: 0; } }
280
+ dl {
281
+ grid-template-columns: minmax(0, 1fr) 93%; }
282
+ dl pre {
283
+ overflow-x: scroll; }
284
+
285
+ #toc ul {
286
+ margin: 0;
287
+ padding: 0;
288
+ list-style: none; }
289
+ #toc ul li a {
290
+ padding: 5px 10px; }
291
+ #toc ul a {
292
+ color: #00335b;
293
+ text-decoration: none;
294
+ display: block; }
295
+ #toc ul a:hover {
296
+ box-shadow: none;
297
+ color: white; }
298
+
299
+ #toc .h2 {
300
+ padding-left: 30px; }
301
+
302
+ #toc .h3 {
303
+ padding-left: 50px; }
304
+
305
+ #toc .toc-active, #toc li:hover {
306
+ background: #00335b;
307
+ box-shadow: inset -5px 0px 10px -5px #00335b !important; }
308
+ #toc .toc-active a, #toc li:hover a {
309
+ color: white; }
310
+
311
+ @media print {
312
+ #toc .toc-active, #toc li:hover {
313
+ background: white;
314
+ box-shadow: none !important; }
315
+ #toc .toc-active a {
316
+ color: #00335b; }
317
+ #toc li:hover a {
318
+ color: black; } }
319
+
320
+ #toc li a {
321
+ font-size: 14px; }
322
+
323
+ #toc li:before {
324
+ content: " ";
325
+ display: none; }
326
+
327
+ #toc .toc-active, #toc li:hover {
328
+ font-weight: 600; }
329
+
330
+ #toc li:hover a {
331
+ background: none;
332
+ box-shadow: none; }
333
+
334
+ @media screen and (min-width: 768px) {
335
+ nav {
336
+ position: fixed;
337
+ top: 0;
338
+ bottom: 0;
339
+ left: 0;
340
+ width: 323px;
341
+ font-size: 0.9em;
342
+ overflow: auto;
343
+ padding: 0 0 0 45px;
344
+ background-color: #f1f8ff; } }
345
+
346
+ @media print {
347
+ nav {
348
+ position: relative;
349
+ width: auto;
350
+ font-size: 0.9em;
351
+ overflow: auto;
352
+ padding: 0;
353
+ margin-right: 0;
354
+ background-color: white; } }
355
+
356
+ @media screen and (min-width: 768px) {
357
+ nav {
358
+ marign-right: 30px; } }
359
+
360
+ @media screen and (min-width: 768px) {
361
+ #toggle {
362
+ position: fixed;
363
+ height: 100%;
364
+ width: 30px;
365
+ background-color: #00335b;
366
+ color: white !important;
367
+ cursor: pointer;
368
+ z-index: 100; }
369
+ #toggle span {
370
+ text-align: center;
371
+ width: 100%;
372
+ position: absolute;
373
+ top: 50%;
374
+ transform: translate(0, -50%); } }
375
+
376
+ @media screen and (max-width: 768px) {
377
+ #toggle {
378
+ display: none; } }
379
+
380
+ @media print {
381
+ #toggle {
382
+ display: none; } }
383
+
384
+ .rule {
385
+ width: 100%;
386
+ height: 1px;
387
+ background-color: #00335b;
388
+ margin: 2em 0; }
389
+ @media screen and (min-width: 768px) {
390
+ .rule.toc {
391
+ display: none; } }
392
+ @media screen and (min-width: 768px) {
393
+ h1.toc-contents {
394
+ margin-top: 1em; }
395
+ ul#toc-list {
396
+ padding: 0;
397
+ margin: 0; } }
398
+
399
+ #toc-list ul {
400
+ margin-bottom: 0.25em; }
401
+
402
+ #toc-list li {
403
+ list-style-type: none; }
404
+
405
+ .figure {
406
+ line-height: 1.6em;
407
+ padding: 1.5em;
408
+ margin: 2em 0 1em 0;
409
+ overflow: auto; }
410
+ .figure .FigureTitle, .figure .figure-title {
411
+ font-weight: 700;
412
+ font-size: 1em;
413
+ text-align: center; }
414
+ .figure > img {
415
+ margin-left: auto;
416
+ margin-right: auto;
417
+ display: block;
418
+ max-width: 100%;
419
+ height: auto; }
420
+
421
+ .document-stage-band {
422
+ left: 0;
423
+ top: 0;
424
+ height: 100%;
425
+ position: fixed;
426
+ display: block;
427
+ z-index: 101;
428
+ box-shadow: -5px 0px 10px #1d1d1d; }
429
+ .document-stage-band > :first-child {
430
+ position: relative;
431
+ width: 25px;
432
+ font-weight: 300;
433
+ height: 160px;
434
+ color: white;
435
+ text-transform: uppercase;
436
+ font-size: 0.9em;
437
+ font-weight: 400;
438
+ letter-spacing: 0.05em;
439
+ margin: 0;
440
+ margin-left: 6px;
441
+ writing-mode: tb-rl;
442
+ -webkit-transform: rotate(180deg);
443
+ -moz-transform: rotate(180deg);
444
+ -o-transform: rotate(180deg);
445
+ white-space: nowrap;
446
+ display: block;
447
+ bottom: 0; }
448
+ @media print {
449
+ .document-stage-band {
450
+ display: none; } }
451
+ .document-type-band {
452
+ left: 0;
453
+ top: 180px;
454
+ height: 100%;
455
+ position: fixed;
456
+ display: block;
457
+ z-index: 102; }
458
+ .document-type-band > :first-child {
459
+ position: relative;
460
+ width: 25px;
461
+ font-weight: 400;
462
+ color: white;
463
+ text-transform: uppercase;
464
+ font-size: 0.9em;
465
+ font-weight: 400;
466
+ letter-spacing: 0.05em;
467
+ margin: 0;
468
+ margin-left: 6px;
469
+ writing-mode: tb-rl;
470
+ -webkit-transform: rotate(180deg);
471
+ -moz-transform: rotate(180deg);
472
+ -o-transform: rotate(180deg);
473
+ white-space: nowrap;
474
+ display: block;
475
+ bottom: 0; }
476
+ @media print {
477
+ .document-type-band {
478
+ display: none; } }
479
+ .document-type-band .document-type {
480
+ top: 20px; }
481
+
482
+ #governance-band p.document-type {
483
+ font-weight: 400;
484
+ height: 230px !important; }
485
+
486
+ #standard-band p {
487
+ height: 135px; }
488
+
489
+ #proposal-band p {
490
+ height: 150px; }
491
+
492
+ #standard-band,
493
+ #published-band {
494
+ color: #7ba812; }
495
+
496
+ #standard,
497
+ #published {
498
+ color: #9ABD48; }
499
+
500
+ .coverpage-maturity, .coverpage-stage {
501
+ font-family: {{headerfont}};
502
+ font-weight: 400;
503
+ font-size: 1.3em;
504
+ margin: 0 0 2em 0;
505
+ text-transform: uppercase; }
506
+
507
+ .icon-svg {
508
+ width: 100%;
509
+ color: #5ecf86; }
510
+
511
+ .wrapper-top {
512
+ background: #00335b;
513
+ background: linear-gradient(130deg, #00335b 45%, #f1f8ff 100%);
514
+ color: #ffffff;
515
+ padding: 5em 0;
516
+ width: 100%; }
517
+
518
+ .wrapper-top-bottom {
519
+ width: 0;
520
+ height: 0;
521
+ border-top: 100px solid #00335b;
522
+ border-right: 100px solid transparent;
523
+ position: absolute; }
524
+
525
+ .coverpage-metadata {
526
+ margin-top: 35px;
527
+ padding-top: 15px;
528
+ margin-right: 25px;
529
+ border-top: solid 1px white; }
530
+
531
+ .coverpage-metadata,
532
+ .coverpage-alt-formats {
533
+ font-size: 12px;
534
+ font-family: {{headerfont}};
535
+ margin-left: 1em;
536
+ text-align: left; }
537
+ .coverpage-metadata span,
538
+ .coverpage-alt-formats span {
539
+ display: block;
540
+ text-align: left; }
541
+ .coverpage-metadata span a,
542
+ .coverpage-alt-formats span a {
543
+ color: white; }
544
+ .coverpage-metadata span a:hover,
545
+ .coverpage-alt-formats span a:hover {
546
+ text-decoration: underline;
547
+ background: none;
548
+ box-shadow: none !important;
549
+ font-weight: 400; }
550
+ .coverpage-metadata .value,
551
+ .coverpage-alt-formats .value {
552
+ font-size: 15px;
553
+ margin-bottom: 15px; }
554
+ .coverpage-metadata .label,
555
+ .coverpage-alt-formats .label {
556
+ font-size: 12px;
557
+ padding: 0; }
558
+
559
+ .coverpage-alt-formats span {
560
+ display: inline;
561
+ text-align: left; }
562
+ .coverpage-alt-formats span a {
563
+ padding-right: 5px; }
564
+
565
+ .coverpage-title {
566
+ padding-bottom: 0.5em;
567
+ font-family: {{headerfont}};
568
+ font-weight: 100;
569
+ padding-left: 1em;
570
+ padding-right: 1em; }
571
+ .coverpage-title span {
572
+ font-family: {{headerfont}};
573
+ font-size: 1.8em;
574
+ line-height: 1; }
575
+
576
+ .docstage-box table {
577
+ width: auto; }
578
+
579
+ .docstage-box th {
580
+ background-color: #93c0d6; }
581
+
582
+ .docstage-box td {
583
+ vertical-align: top;
584
+ background-color: #daeef3;
585
+ padding: 0.5em;
586
+ border: 0; }
587
+
588
+ .docstage-box th:first-child {
589
+ border-radius: 1em 0 0 0; }
590
+
591
+ .docstage-box th:last-child {
592
+ border-radius: 0 1em 0 0; }
593
+
594
+ .docstage-box tr:first-child {
595
+ border-radius: 0 0 0 1em; }
596
+
597
+ .docstage-box tr:last-child {
598
+ border-radius: 0 1em 0 0; }
599
+
600
+ .docstage-box tr:last-child > td:first-child {
601
+ border-radius: 0 0 0 1em; }
602
+
603
+ .docstage-box tr:last-child > td:last-child {
604
+ border-radius: 0 0 1em 0; }
605
+
606
+ .WordSection11 {
607
+ padding: 0 2em 0 3em; }
608
+
609
+ .info-section {
610
+ padding: 0 2em 0 5em; }
611
+
612
+ .prefatory-section {
613
+ padding: 0 3em 0 6em; }
614
+
615
+ .zzSTDTitle1, .MsoCommentText {
616
+ display: none; }
617
+
618
+ .coverpage {
619
+ text-align: center;
620
+ padding-left: 1.5em; }
621
+
622
+ .coverpage-logo span, .coverpage-tc-name span {
623
+ font-family: {{bodyfont}};
624
+ text-transform: none;
625
+ font-weight: 300;
626
+ margin-left: 1em; }
627
+
628
+ .coverpage-tc-name {
629
+ font-size: 1.2em;
630
+ line-height: 1.2em;
631
+ margin: 0.25em 0; }
632
+
633
+ .copyright {
634
+ padding: 1em;
635
+ font-size: 0.9em;
636
+ text-align: left; }
637
+
638
+ /* Document Identity */
639
+ .coverpage-doc-identity {
640
+ font-size: 2em;
641
+ line-height: 2em; }
642
+
643
+ .coverpage-title .title-second {
644
+ display: none; }
645
+
646
+ .coverpage-stage-block {
647
+ font-family: {{headerfont}};
648
+ font-weight: 600;
649
+ font-size: 1.25em;
650
+ margin: 2em 0em 2em 0em;
651
+ text-transform: uppercase; }
652
+
653
+ .authors {
654
+ margin-top: 2em; }
655
+ .authors span {
656
+ display: block;
657
+ line-height: 2; }
658
+ .authors span.roletag {
659
+ display: inline-block;
660
+ font-size: 12px;
661
+ color: #00335b;
662
+ background-color: white;
663
+ padding: 2px 5px;
664
+ margin-left: 7px;
665
+ border-radius: 5px; }
666
+
667
+ /* Draft Warning */
668
+ .coverpage-warning {
669
+ border: #f36f36 solid 2px;
670
+ color: #f36f36 !important;
671
+ margin: 1em 2em;
672
+ color: #2e81c2;
673
+ padding: 2em 1em 1em 1em;
674
+ border-radius: 25px; }
675
+ .coverpage-warning h1 {
676
+ font-family: {{headerfont}};
677
+ font-weight: 300;
678
+ text-transform: uppercase;
679
+ font-size: 1.2em; }
680
+
681
+ @media print {
682
+ .document-info, .copyright {
683
+ page-break-before: always; }
684
+ .coverpage {
685
+ height: 23cm; }
686
+ .info-section {
687
+ display: none; }
688
+ .wrapper-top {
689
+ top: 0;
690
+ padding-top: 4cm;
691
+ padding-bottom: 4cm; }
692
+ .wrapper-top-bottom {
693
+ margin-top: -5px;
694
+ display: none; } }
695
+
696
+ p {
697
+ margin-top: 1em;
698
+ margin-bottom: 1em; }
699
+
700
+ h1, h2, h3, h4, h5, h6 {
701
+ color: #00335b;
702
+ font-weight: 400;
703
+ margin-top: 1.6em;
704
+ margin-bottom: 0.3em; }
705
+
706
+ h1 {
707
+ font-size: 1.8em;
708
+ text-transform: uppercase;
709
+ margin-top: 2em; }
710
+ h1 #content {
711
+ margin-top: 2em; }
712
+
713
+ h2 {
714
+ margin-top: 1.3em;
715
+ font-size: 1.7em;
716
+ font-weight: 300; }
717
+ h2 p {
718
+ display: inline; }
719
+
720
+ h3 {
721
+ margin-top: 1.3em;
722
+ font-size: 1.5em;
723
+ font-weight: 100; }
724
+
725
+ h4 {
726
+ font-size: 1.4em; }
727
+
728
+ .contact-info {
729
+ padding: 2em;
730
+ margin-top: 5em;
731
+ width: 280px;
732
+ text-align: left;
733
+ border: #00335b solid 2px;
734
+ color: #00335b !important;
735
+ border-radius: 25px; }
736
+ .contact-info a:hover {
737
+ text-decoration: underline;
738
+ background: none;
739
+ box-shadow: 0 0 0 0; }
740
+ .contact-info a, .contact-info a:hover {
741
+ color: #00335b; }
742
+ .contact-info p, .contact-info a {
743
+ font-family: {{monospacefont}};
744
+ font-variant-ligatures: none;
745
+ font-weight: 400; }
746
+ .contact-info #boilerplate-name {
747
+ font-weight: 700;
748
+ font-size: 1.2em;
749
+ margin-bottom: 0; }
750
+ .contact-info #boilerplate-address {
751
+ font-size: 1em;
752
+ line-height: 1.3em;
753
+ margin-top: 0; }
754
+
755
+ ul, ol {
756
+ margin-left: 1.2em; }
757
+
758
+ ul > li {
759
+ list-style: none; }
760
+ ul > li:before {
761
+ content: "\2014";
762
+ display: inline-block;
763
+ width: 1em;
764
+ margin-left: -1em; }
765
+ ul > li p:first-child {
766
+ display: inline; }
767
+ ul > li:first-child {
768
+ margin-top: 1em; }
769
+
770
+ span.keyword {
771
+ font-weight: 600; }
772
+
773
+ /* Tables */
774
+ table {
775
+ width: 100%;
776
+ font-weight: 300;
777
+ margin: 1em 0 2em 0;
778
+ margin-left: auto;
779
+ margin-right: auto;
780
+ padding-right: 2em;
781
+ /*color: #010d16;*/ }
782
+ table, table th, table td {
783
+ border: 1px solid black;
784
+ font-size: 0.95em; }
785
+ table th, table td {
786
+ padding: 1em; }
787
+ table td.header {
788
+ font-weigth: 400; }
789
+ table thead tr th {
790
+ background-color: #5d99d6; }
791
+ table td, table th {
792
+ padding: 1em; }
793
+ table td.header {
794
+ font-weight: 400; }
795
+
796
+ .docstage-box table,
797
+ .docstage-box table th,
798
+ .docstage-box table td {
799
+ border: none; }
800
+
801
+ table.recommendtest {
802
+ width: 100%;
803
+ font-weight: 300;
804
+ margin: 1em 0 2em 0;
805
+ margin-left: auto;
806
+ margin-right: auto;
807
+ padding-right: 2em;
808
+ color: #010d16; }
809
+ table.recommendtest, table.recommendtest th, table.recommendtest td {
810
+ border: none !important;
811
+ font-size: 0.95em; }
812
+ table.recommendtest th, table.recommendtest td {
813
+ padding: 1em; }
814
+ table.recommendtest td.header {
815
+ font-weigth: 400; }
816
+ table.recommendtest tr:nth-child(even) {
817
+ background: #ffffff; }
818
+ table.recommendtest tr:nth-child(odd) {
819
+ background: #ffffff; }
820
+ table.recommendtest thead tr th {
821
+ background-color: #5d99d6; }
822
+ table.recommendtest td, table.recommendtest th {
823
+ padding: 1em; }
824
+ table.recommendtest td.header {
825
+ font-weight: 400; }
826
+
827
+ td > p:first-child, th > p:first-child {
828
+ margin-top: 0em; }
829
+
830
+ td > p:last-child, th > p:last-child {
831
+ margin-bottom: 0em; }
832
+
833
+ p.TableTitle {
834
+ text-align: center;
835
+ margin-top: 2.5em;
836
+ font-weight: 400; }
837
+
838
+ /* Terms */
839
+ .TermNum, .Terms, .AltTerms {
840
+ color: #00335b;
841
+ font-weight: 300;
842
+ font-family: {{headerfont}}; }
843
+
844
+ h2.TermNum {
845
+ margin-bottom: 0; }
846
+
847
+ p.AltTerms {
848
+ font-size: 24px;
849
+ margin-top: 1em; }
850
+
851
+ /* Links, selection */
852
+ a, a:visited {
853
+ text-decoration: none;
854
+ color: #2e81c2; }
855
+
856
+ a:hover {
857
+ color: #00335b;
858
+ background: white;
859
+ box-shadow: 3px 0 0 white, -3px 0 0 white; }
860
+
861
+ ::selection,
862
+ ::-moz-selection {
863
+ background: white;
864
+ color: #00335b; }
865
+
866
+ /* Bibliograhy */
867
+ p.Biblio, p.NormRef {
868
+ margin-top: 1em;
869
+ margin-left: 2em; }
870
+
871
+ /* Blocks */
872
+ .SourceTitle {
873
+ font-weight: 700;
874
+ font-size: 1em;
875
+ text-align: center; }
876
+
877
+ pre {
878
+ font-family: {{monospacefont}};
879
+ font-variant-ligatures: none;
880
+ background-color: #f7f7f7;
881
+ font-size: 0.8em;
882
+ line-height: 1.6em;
883
+ padding: 1.5em;
884
+ margin: 2em 0 1em 0;
885
+ overflow-y: auto;
886
+ overflow-x: scroll;
887
+ font-family: {{monospacefont}};
888
+ font-variant-ligatures: none; }
889
+
890
+ .Admonition {
891
+ padding: 1em 1.2em 1.2em 1.2em;
892
+ margin: 1em 0 1em 0;
893
+ background-color: #fcad88;
894
+ border-top: 10px solid #eb5a06;
895
+ color: #290404; }
896
+ .Admonition .AdmonitionTitle {
897
+ font-weight: 700;
898
+ font-size: 1em;
899
+ text-align: center; }
900
+ .Admonition.Important {
901
+ background-color: #f58cff;
902
+ color: #5d1364;
903
+ border-top: 10px solid #9503a8; }
904
+ .Admonition.Warning {
905
+ background-color: #ff989d;
906
+ color: #270204;
907
+ border-top: 10px solid #e4010c; }
908
+ .Admonition p, .Admonition.Important p, .Admonition.Warning p {
909
+ margin: 0; }
910
+
911
+ .figure, pre, .pseudocode {
912
+ background-color: #e1eef1;
913
+ color: #424242;
914
+ font-size: 0.8em; }
915
+
916
+ .Note {
917
+ background-color: #fff8bb;
918
+ color: #7d760b;
919
+ padding: 1.2em;
920
+ margin: 1em 0 1em 0; }
921
+ .Note p {
922
+ margin: 0; }
923
+
924
+ .example {
925
+ background-color: #e1eef1;
926
+ color: #424242;
927
+ padding: 1.2em;
928
+ margin: 2em 0 1em 0;
929
+ padding-left: 2em; }
930
+ .example .example-title {
931
+ font-weight: 700;
932
+ text-transform: uppercase;
933
+ margin-top: 0;
934
+ margin-left: -1.5em; }
935
+ .example pre, .example .pseudocode {
936
+ background: none; }
937
+
938
+ .Quote {
939
+ background-color: #e1eef1;
940
+ font-style: italic;
941
+ width: 80%;
942
+ padding: 1.5em;
943
+ margin-top: 2em;
944
+ margin-left: auto;
945
+ margin-right: auto; }
946
+
947
+ .formula {
948
+ background-color: #f6f6f6;
949
+ padding: 1.5em;
950
+ margin-top: 2em;
951
+ text-align: center; }
952
+
953
+ .recommend .RecommendationTitle, .recommendtest .RecommendationTitle {
954
+ font-weight: 700;
955
+ font-size: 1em;
956
+ text-align: center; }
957
+
958
+ .require .RecommendationTitle, .requiretest .RecommendationTitle {
959
+ font-weight: 700;
960
+ font-size: 1em;
961
+ text-align: center; }
962
+
963
+ .permission .RecommendationTitle, .permissiontest .RecommendationTitle {
964
+ font-weight: 700;
965
+ font-size: 1em;
966
+ text-align: center; }
967
+
968
+ .RecommendationTestTitle {
969
+ font-weight: 700;
970
+ font-size: 1em;
971
+ text-align: center; }
972
+
973
+ /*
974
+ .recommend {
975
+ &, .example_label {
976
+ background-color: #f8ffbd;
977
+ }
978
+ .example_label {
979
+ font-weight: bold;
980
+ }
981
+ }
982
+
983
+ .permission {
984
+ &, .example_label {
985
+ background-color: #cdfdbe;
986
+ }
987
+ .example_label {
988
+ font-weight: bold;
989
+ }
990
+ }
991
+
992
+ .require {
993
+ &, .example_label {
994
+ background-color: #d3e6ff;
995
+ }
996
+ .example_label {
997
+ font-weight: bold;
998
+ }
999
+ }
1000
+ */
1001
+ .recommend .RecommendationTitle {
1002
+ font-weight: 700;
1003
+ font-size: 1em;
1004
+ text-align: center; }
1005
+
1006
+ .require .RecommendationTitle {
1007
+ font-weight: 700;
1008
+ font-size: 1em;
1009
+ text-align: center; }
1010
+
1011
+ .permission .RecommendationTitle {
1012
+ font-weight: 700;
1013
+ font-size: 1em;
1014
+ text-align: center; }
1015
+
1016
+ tbody td.recommend p.RecommendationTitle, tbody td.recommend p.RecommendationTitle, tbody td.recommend p.RecommendationTitle {
1017
+ font-weight: normal;
1018
+ text-align: left; }
1019
+
1020
+ #myBtn {
1021
+ font-family: {{monospacefont}};
1022
+ font-variant-ligatures: none;
1023
+ display: none;
1024
+ position: fixed;
1025
+ bottom: 20px;
1026
+ right: 30px;
1027
+ z-index: 99;
1028
+ font-size: 12px;
1029
+ border: none;
1030
+ outline: none;
1031
+ background-color: #00335b;
1032
+ opacity: 0.15;
1033
+ color: white;
1034
+ cursor: pointer;
1035
+ padding: 10px 15px 10px 15px;
1036
+ border-radius: 4px; }
1037
+ #myBtn:hover {
1038
+ opacity: 1; }
1039
+ @media print {
1040
+ #myBtn {
1041
+ display: none; } }
1042
+ a.anchorjs-link:hover {
1043
+ background: none;
1044
+ color: #2e81c2;
1045
+ box-shadow: none; }
1046
+
1047
+ @page {
1048
+ margin: 2cm 1cm; }
1049
+
1050
+ @media print {
1051
+ h1, h2, h3, h4 {
1052
+ page-break-after: avoid;
1053
+ margin-top: 1.2em; }
1054
+ h1 {
1055
+ font-size: 1.5em;
1056
+ line-height: 1.5; }
1057
+ h1.content {
1058
+ margin-top: 2em;
1059
+ line-height: 2.5em; }
1060
+ h2 {
1061
+ font-size: 1.2em; }
1062
+ h3 {
1063
+ font-size: 1em; }
1064
+ .prefatory-section {
1065
+ page-break-before: always; }
1066
+ .note, .pseudocode {
1067
+ page-break-inside: avoid; }
1068
+ .Note {
1069
+ background-color: #fff495;
1070
+ color: #47430c;
1071
+ padding: 5px;
1072
+ margin: 2em 0 1em 0; }
1073
+ .Note p {
1074
+ padding: 0 5px 0 5px; }
1075
+ nav {
1076
+ line-height: 1; } }
1077
+
1078
+ /* Footnotes */
1079
+ a.footnote-number {
1080
+ vertical-align: super;
1081
+ font-size: 0.8em; }
1082
+
1083
+ .footnote {
1084
+ font-size: 0.9em; }