legal-markdown-js 3.0.0 → 3.0.1
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.
- package/dist/styles/{contract.petalo.css → default.css} +201 -112
- package/dist/styles/headers.css +146 -0
- package/dist/styles/highlight.css +187 -0
- package/package.json +1 -1
- package/dist/assets/logo.petalo.imported.png +0 -0
- package/dist/assets/logo.petalo.png +0 -0
- package/dist/assets/logo.petalo.transparent-colorful.png +0 -0
- package/dist/examples/basic-processing/simple-document/example.output.html/metadata.json +0 -19
- package/dist/examples/basic-processing/simple-document/metadata.json +0 -19
- package/dist/examples/cross-references/basic-references/agreement.output.html +0 -93
- package/dist/examples/cross-references/basic-references/agreement.output.md +0 -106
- package/dist/examples/cross-references/basic-references/internal-references.output.html +0 -52
- package/dist/examples/cross-references/basic-references/internal-references.output.md +0 -34
- package/dist/examples/cross-references/basic-references/metadata.yaml +0 -7
- package/dist/examples/data/metadata.json +0 -9
- package/dist/examples/metadata.yaml +0 -4
- package/dist/examples/mixins/template-loops/items-list.output.html +0 -49
- package/dist/examples/output/contract/contract-highlighted.HIGHLIGHT.html +0 -680
- package/dist/examples/output/contract/contract-highlighted.HIGHLIGHT.pdf +0 -0
- package/dist/examples/output/contract/contract-highlighted.html +0 -493
- package/dist/examples/output/contract/contract-highlighted.pdf +0 -0
- package/dist/examples/output/contract/contract.html +0 -493
- package/dist/examples/output/contract/contract.pdf +0 -0
- package/dist/examples/output/metadata.json +0 -19
- package/dist/examples/output/nda-metadata.yaml +0 -15
- package/dist/examples/output/ticket/ticket-highlighted.HIGHLIGHT.html +0 -374
- package/dist/examples/output/ticket/ticket-highlighted.HIGHLIGHT.pdf +0 -0
- package/dist/examples/output/ticket/ticket-highlighted.html +0 -187
- package/dist/examples/output/ticket/ticket-highlighted.pdf +0 -0
- package/dist/examples/output/ticket/ticket.html +0 -187
- package/dist/examples/output/ticket/ticket.pdf +0 -0
- package/dist/web/playground-modern.html +0 -541
- package/dist/web/test-consolidation.html +0 -70
- package/dist/web/test-direct-preprocess.html +0 -54
- package/dist/web/test-loops-final.html +0 -128
- package/dist/web/test-pre-process.html +0 -184
- package/dist/web/test-simple-loops.html +0 -104
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Default Legal Markdown Styles
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Professional stylesheet for legal documents, optimized for both screen and print media.
|
|
5
|
+
* Features modern typography, clean design, and comprehensive print optimizations.
|
|
6
6
|
*
|
|
7
7
|
* Structure:
|
|
8
8
|
* 1. Variables and base configuration
|
|
@@ -16,31 +16,40 @@
|
|
|
16
16
|
/* Variables and base configuration
|
|
17
17
|
========================================================================== */
|
|
18
18
|
:root {
|
|
19
|
-
/* Colors */
|
|
20
|
-
--color-primary: #
|
|
21
|
-
--color-accent: #
|
|
22
|
-
--color-link: #
|
|
23
|
-
--color-text: #
|
|
24
|
-
--color-error: #
|
|
19
|
+
/* Colors - Professional slate and teal palette */
|
|
20
|
+
--color-primary: #1e293b; /* Slate 800 */
|
|
21
|
+
--color-accent: #0891b2; /* Cyan 600 */
|
|
22
|
+
--color-link: #0891b2; /* Cyan 600 */
|
|
23
|
+
--color-text: #334155; /* Slate 700 */
|
|
24
|
+
--color-error: #dc2626; /* Red 600 */
|
|
25
|
+
--color-bg: #ffffff; /* White */
|
|
26
|
+
--color-muted: #64748b; /* Slate 500 */
|
|
25
27
|
|
|
26
28
|
/* Typography */
|
|
27
|
-
--font-primary: Helvetica, Arial, sans-serif;
|
|
28
|
-
--font-mono: '
|
|
29
|
+
--font-primary: -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
|
30
|
+
--font-mono: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Courier New', monospace;
|
|
29
31
|
|
|
30
|
-
/* Assets */
|
|
31
|
-
--logo-filename:
|
|
32
|
+
/* Assets - Default logo placeholder */
|
|
33
|
+
--logo-filename: https://placehold.co/120x40/2563eb/ffffff.png?text=LOGO;
|
|
32
34
|
|
|
33
35
|
/* Spacing */
|
|
34
|
-
--spacing-xsmall:
|
|
36
|
+
--spacing-xsmall: 4px;
|
|
35
37
|
--spacing-small: 8px;
|
|
36
|
-
--spacing-medium:
|
|
37
|
-
--spacing-large:
|
|
38
|
+
--spacing-medium: 16px;
|
|
39
|
+
--spacing-large: 32px;
|
|
40
|
+
--spacing-xlarge: 48px;
|
|
38
41
|
|
|
39
42
|
/* Sizes */
|
|
40
43
|
--font-size-base: 12pt;
|
|
41
|
-
--font-size-h1: 1.
|
|
42
|
-
--font-size-h2:
|
|
43
|
-
--font-size-h3:
|
|
44
|
+
--font-size-h1: 1.8em;
|
|
45
|
+
--font-size-h2: 1.4em;
|
|
46
|
+
--font-size-h3: 1.2em;
|
|
47
|
+
--font-size-h4: 1.1em;
|
|
48
|
+
|
|
49
|
+
/* Layout */
|
|
50
|
+
--max-width: 210mm; /* A4 width */
|
|
51
|
+
--border-radius: 6px;
|
|
52
|
+
--border-width: 1px;
|
|
44
53
|
}
|
|
45
54
|
|
|
46
55
|
/* Base document configuration
|
|
@@ -48,12 +57,12 @@
|
|
|
48
57
|
body {
|
|
49
58
|
font-family: var(--font-primary);
|
|
50
59
|
font-size: var(--font-size-base);
|
|
51
|
-
line-height: 1.
|
|
60
|
+
line-height: 1.6;
|
|
52
61
|
color: var(--color-text);
|
|
53
|
-
max-width:
|
|
62
|
+
max-width: var(--max-width);
|
|
54
63
|
margin: 0 auto;
|
|
55
64
|
padding: 20mm 15mm;
|
|
56
|
-
background-color:
|
|
65
|
+
background-color: var(--color-bg);
|
|
57
66
|
}
|
|
58
67
|
|
|
59
68
|
/* Typography hierarchy
|
|
@@ -61,72 +70,71 @@ body {
|
|
|
61
70
|
/* Prevent page breaks in headings */
|
|
62
71
|
h1,
|
|
63
72
|
h2,
|
|
64
|
-
h3
|
|
73
|
+
h3,
|
|
74
|
+
h4,
|
|
75
|
+
h5,
|
|
76
|
+
h6 {
|
|
65
77
|
page-break-after: avoid;
|
|
66
78
|
page-break-inside: avoid;
|
|
79
|
+
color: var(--color-primary);
|
|
80
|
+
font-weight: 600;
|
|
67
81
|
}
|
|
68
82
|
|
|
69
83
|
/* Main document title */
|
|
70
84
|
h1,
|
|
71
85
|
.legal-header-level-1 {
|
|
72
|
-
color: var(--color-primary);
|
|
73
86
|
font-size: var(--font-size-h1);
|
|
74
|
-
line-height: 1.
|
|
75
|
-
margin: var(--spacing-
|
|
87
|
+
line-height: 1.3;
|
|
88
|
+
margin: var(--spacing-medium) 0 var(--spacing-large);
|
|
76
89
|
text-align: center;
|
|
77
|
-
border-bottom: solid var(--color-accent);
|
|
78
|
-
padding:
|
|
79
|
-
|
|
80
|
-
font-weight: bold;
|
|
90
|
+
border-bottom: 3px solid var(--color-accent);
|
|
91
|
+
padding-bottom: var(--spacing-medium);
|
|
92
|
+
color: var(--color-primary);
|
|
81
93
|
}
|
|
82
94
|
|
|
83
95
|
/* Section headings */
|
|
84
96
|
h2,
|
|
85
97
|
.legal-header-level-2 {
|
|
86
98
|
font-size: var(--font-size-h2);
|
|
87
|
-
margin-top:
|
|
99
|
+
margin-top: var(--spacing-large);
|
|
88
100
|
margin-bottom: var(--spacing-medium);
|
|
89
|
-
border-bottom:
|
|
90
|
-
|
|
91
|
-
|
|
101
|
+
border-bottom: 2px solid var(--color-accent);
|
|
102
|
+
padding-bottom: var(--spacing-small);
|
|
103
|
+
color: var(--color-primary);
|
|
92
104
|
}
|
|
93
105
|
|
|
94
106
|
/* Subsection headings */
|
|
95
107
|
h3,
|
|
96
108
|
.legal-header-level-3 {
|
|
97
109
|
font-size: var(--font-size-h3);
|
|
98
|
-
font-weight:
|
|
99
|
-
border-bottom: 1px solid var(--color-link);
|
|
110
|
+
font-weight: 600;
|
|
100
111
|
margin-top: var(--spacing-large);
|
|
101
|
-
margin-bottom: var(--spacing-
|
|
112
|
+
margin-bottom: var(--spacing-medium);
|
|
113
|
+
border-bottom: 1px solid var(--color-accent);
|
|
114
|
+
padding-bottom: var(--spacing-xsmall);
|
|
115
|
+
color: var(--color-primary);
|
|
102
116
|
}
|
|
103
117
|
|
|
104
118
|
/* Minor headings */
|
|
105
119
|
h4,
|
|
106
120
|
.legal-header-level-4 {
|
|
107
|
-
font-size:
|
|
108
|
-
font-weight:
|
|
121
|
+
font-size: var(--font-size-h4);
|
|
122
|
+
font-weight: 600;
|
|
109
123
|
margin-top: var(--spacing-medium);
|
|
110
124
|
margin-bottom: var(--spacing-small);
|
|
111
|
-
|
|
112
|
-
/* Legal headers */
|
|
113
|
-
.legal-header-level-5 {
|
|
114
|
-
font-size: 0.8em;
|
|
115
|
-
font-weight: bold;
|
|
116
|
-
margin-top: var(--spacing-small);
|
|
117
|
-
margin-bottom: var(--spacing-xsmall);
|
|
125
|
+
color: var(--color-primary);
|
|
118
126
|
}
|
|
119
127
|
|
|
120
|
-
/*
|
|
121
|
-
|
|
128
|
+
/* Legal headers */
|
|
129
|
+
h5,
|
|
130
|
+
h6,
|
|
131
|
+
.legal-header-level-5,
|
|
122
132
|
.legal-header-level-6 {
|
|
123
|
-
font-size:
|
|
124
|
-
font-weight:
|
|
125
|
-
margin-
|
|
126
|
-
margin-
|
|
127
|
-
|
|
128
|
-
border-bottom: 1px solid var(--color-link); /* Same underline as level 2 */
|
|
129
|
-
color: var(--color-primary); /* Highlight color */
|
|
133
|
+
font-size: 1em;
|
|
134
|
+
font-weight: 600;
|
|
135
|
+
margin-top: var(--spacing-medium);
|
|
136
|
+
margin-bottom: var(--spacing-small);
|
|
137
|
+
color: var(--color-primary);
|
|
130
138
|
}
|
|
131
139
|
|
|
132
140
|
/* Content elements
|
|
@@ -140,13 +148,24 @@ p {
|
|
|
140
148
|
page-break-inside: avoid;
|
|
141
149
|
}
|
|
142
150
|
|
|
151
|
+
/* Links */
|
|
152
|
+
a {
|
|
153
|
+
color: var(--color-link);
|
|
154
|
+
text-decoration: none;
|
|
155
|
+
transition: color 0.2s ease;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
a:hover {
|
|
159
|
+
text-decoration: underline;
|
|
160
|
+
color: var(--color-accent);
|
|
161
|
+
}
|
|
162
|
+
|
|
143
163
|
/* Lists */
|
|
144
164
|
ul,
|
|
145
165
|
ol {
|
|
146
|
-
margin
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
page-break-inside: auto; /* Allow page breaks in lists */
|
|
166
|
+
margin: var(--spacing-medium) 0;
|
|
167
|
+
padding-left: var(--spacing-large);
|
|
168
|
+
page-break-inside: auto;
|
|
150
169
|
}
|
|
151
170
|
|
|
152
171
|
li {
|
|
@@ -154,36 +173,82 @@ li {
|
|
|
154
173
|
page-break-inside: auto;
|
|
155
174
|
}
|
|
156
175
|
|
|
176
|
+
/* Code blocks */
|
|
177
|
+
pre {
|
|
178
|
+
background-color: #f8fafc;
|
|
179
|
+
border: var(--border-width) solid #e2e8f0;
|
|
180
|
+
border-radius: var(--border-radius);
|
|
181
|
+
padding: var(--spacing-medium);
|
|
182
|
+
margin: var(--spacing-medium) 0;
|
|
183
|
+
overflow-x: auto;
|
|
184
|
+
font-family: var(--font-mono);
|
|
185
|
+
font-size: 0.9em;
|
|
186
|
+
line-height: 1.4;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
code {
|
|
190
|
+
background-color: #f1f5f9;
|
|
191
|
+
color: var(--color-primary);
|
|
192
|
+
padding: var(--spacing-xsmall) var(--spacing-small);
|
|
193
|
+
border-radius: 4px;
|
|
194
|
+
font-family: var(--font-mono);
|
|
195
|
+
font-size: 0.9em;
|
|
196
|
+
}
|
|
197
|
+
|
|
157
198
|
/* Horizontal separators */
|
|
158
199
|
hr {
|
|
159
|
-
border:
|
|
160
|
-
|
|
200
|
+
border: none;
|
|
201
|
+
border-top: 2px solid var(--color-accent);
|
|
202
|
+
margin: var(--spacing-large) 0;
|
|
161
203
|
}
|
|
162
204
|
|
|
163
205
|
/* Empty fields and missing values */
|
|
164
206
|
.missing-value {
|
|
165
|
-
background-color: #
|
|
166
|
-
color:
|
|
167
|
-
padding:
|
|
168
|
-
border-radius:
|
|
169
|
-
border:
|
|
207
|
+
background-color: #fef2f2;
|
|
208
|
+
color: var(--color-error);
|
|
209
|
+
padding: var(--spacing-xsmall) var(--spacing-small);
|
|
210
|
+
border-radius: 4px;
|
|
211
|
+
border: var(--border-width) dashed var(--color-error);
|
|
170
212
|
font-style: italic;
|
|
171
213
|
}
|
|
172
214
|
|
|
215
|
+
|
|
173
216
|
/* Tables
|
|
174
217
|
========================================================================== */
|
|
218
|
+
.table-responsive {
|
|
219
|
+
overflow-x: auto;
|
|
220
|
+
-webkit-overflow-scrolling: touch;
|
|
221
|
+
margin: var(--spacing-medium) 0;
|
|
222
|
+
}
|
|
223
|
+
|
|
175
224
|
table {
|
|
176
225
|
width: 100%;
|
|
177
226
|
border-collapse: collapse;
|
|
178
|
-
margin
|
|
227
|
+
margin: var(--spacing-medium) 0;
|
|
179
228
|
table-layout: fixed;
|
|
229
|
+
background-color: var(--color-bg);
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
th,
|
|
233
|
+
td {
|
|
234
|
+
border: var(--border-width) solid #e2e8f0;
|
|
235
|
+
padding: var(--spacing-small) var(--spacing-medium);
|
|
236
|
+
text-align: left;
|
|
237
|
+
vertical-align: top;
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
th {
|
|
241
|
+
background-color: #f8fafc;
|
|
242
|
+
font-weight: 600;
|
|
243
|
+
color: var(--color-primary);
|
|
180
244
|
}
|
|
181
245
|
|
|
182
246
|
/* Signature table
|
|
183
247
|
========================================================================== */
|
|
184
248
|
.signatures {
|
|
185
249
|
page-break-inside: avoid;
|
|
186
|
-
margin-top: var(--spacing-
|
|
250
|
+
margin-top: var(--spacing-xlarge);
|
|
251
|
+
border: none;
|
|
187
252
|
}
|
|
188
253
|
|
|
189
254
|
.signatures th {
|
|
@@ -192,14 +257,18 @@ table {
|
|
|
192
257
|
|
|
193
258
|
.signatures th,
|
|
194
259
|
.signatures td {
|
|
195
|
-
padding: var(--spacing-
|
|
260
|
+
padding: var(--spacing-medium);
|
|
196
261
|
text-align: left;
|
|
262
|
+
border: none;
|
|
263
|
+
border-bottom: 2px solid var(--color-primary);
|
|
197
264
|
}
|
|
198
265
|
|
|
199
266
|
/* Two-column layout: 1/3 for labels, 2/3 for signatures */
|
|
200
267
|
.signatures th:first-child,
|
|
201
268
|
.signatures td:first-child {
|
|
202
269
|
width: 33.33%;
|
|
270
|
+
font-weight: 600;
|
|
271
|
+
color: var(--color-primary);
|
|
203
272
|
}
|
|
204
273
|
|
|
205
274
|
.signatures th:last-child,
|
|
@@ -207,7 +276,7 @@ table {
|
|
|
207
276
|
width: 66.67%;
|
|
208
277
|
}
|
|
209
278
|
|
|
210
|
-
.signatures td {
|
|
279
|
+
.signatures td:last-child {
|
|
211
280
|
height: 6em;
|
|
212
281
|
vertical-align: bottom;
|
|
213
282
|
font-weight: normal;
|
|
@@ -215,8 +284,16 @@ table {
|
|
|
215
284
|
|
|
216
285
|
/* Table of contents
|
|
217
286
|
========================================================================== */
|
|
287
|
+
.table-of-contents {
|
|
288
|
+
background-color: #f8fafc;
|
|
289
|
+
border: var(--border-width) solid #e2e8f0;
|
|
290
|
+
border-radius: var(--border-radius);
|
|
291
|
+
padding: var(--spacing-medium);
|
|
292
|
+
margin: var(--spacing-large) 0;
|
|
293
|
+
}
|
|
294
|
+
|
|
218
295
|
.table-of-contents li {
|
|
219
|
-
margin-bottom:
|
|
296
|
+
margin-bottom: var(--spacing-small);
|
|
220
297
|
list-style-type: none;
|
|
221
298
|
}
|
|
222
299
|
|
|
@@ -228,19 +305,16 @@ table {
|
|
|
228
305
|
color: white !important;
|
|
229
306
|
font-weight: bold !important;
|
|
230
307
|
text-align: center !important;
|
|
231
|
-
padding: var(--spacing-
|
|
232
|
-
margin: var(--spacing-
|
|
308
|
+
padding: var(--spacing-medium) 0 !important;
|
|
309
|
+
margin: var(--spacing-large) 0 !important;
|
|
233
310
|
text-transform: uppercase !important;
|
|
234
311
|
letter-spacing: 1px !important;
|
|
235
312
|
display: block !important;
|
|
313
|
+
border-radius: var(--border-radius) !important;
|
|
236
314
|
-webkit-print-color-adjust: exact !important;
|
|
237
315
|
print-color-adjust: exact !important;
|
|
238
316
|
}
|
|
239
317
|
|
|
240
|
-
#confidential-header {
|
|
241
|
-
margin-top: -20px;
|
|
242
|
-
}
|
|
243
|
-
|
|
244
318
|
/* Separator section
|
|
245
319
|
========================================================================== */
|
|
246
320
|
.separator {
|
|
@@ -249,11 +323,12 @@ table {
|
|
|
249
323
|
color: white !important;
|
|
250
324
|
font-weight: bold !important;
|
|
251
325
|
text-align: center !important;
|
|
252
|
-
padding: var(--spacing-
|
|
253
|
-
margin: var(--spacing-
|
|
326
|
+
padding: var(--spacing-small) 0 !important;
|
|
327
|
+
margin: var(--spacing-large) 0 var(--spacing-medium) !important;
|
|
254
328
|
text-transform: uppercase !important;
|
|
255
329
|
letter-spacing: 1px !important;
|
|
256
330
|
display: block !important;
|
|
331
|
+
border-radius: var(--border-radius) !important;
|
|
257
332
|
-webkit-print-color-adjust: exact !important;
|
|
258
333
|
print-color-adjust: exact !important;
|
|
259
334
|
}
|
|
@@ -261,19 +336,23 @@ table {
|
|
|
261
336
|
/* Algorithm blocks
|
|
262
337
|
========================================================================== */
|
|
263
338
|
.algorithm {
|
|
264
|
-
background-color: #
|
|
265
|
-
border:
|
|
266
|
-
border-
|
|
267
|
-
|
|
268
|
-
|
|
339
|
+
background-color: #f8fafc;
|
|
340
|
+
border: var(--border-width) solid #e2e8f0;
|
|
341
|
+
border-left: 4px solid var(--color-accent);
|
|
342
|
+
border-radius: var(--border-radius);
|
|
343
|
+
padding: var(--spacing-medium);
|
|
344
|
+
margin: var(--spacing-medium) 0;
|
|
269
345
|
font-family: var(--font-mono);
|
|
270
|
-
font-size:
|
|
346
|
+
font-size: 0.9em;
|
|
271
347
|
line-height: 1.4;
|
|
272
348
|
}
|
|
273
349
|
|
|
274
350
|
.algorithm pre {
|
|
275
351
|
margin: 0;
|
|
276
|
-
white-space: pre;
|
|
352
|
+
white-space: pre-wrap;
|
|
353
|
+
background: none;
|
|
354
|
+
border: none;
|
|
355
|
+
padding: 0;
|
|
277
356
|
}
|
|
278
357
|
|
|
279
358
|
/* Utilities
|
|
@@ -282,18 +361,34 @@ table {
|
|
|
282
361
|
page-break-inside: avoid !important;
|
|
283
362
|
}
|
|
284
363
|
|
|
364
|
+
.page-break-before {
|
|
365
|
+
page-break-before: always !important;
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
.text-center {
|
|
369
|
+
text-align: center !important;
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
.text-muted {
|
|
373
|
+
color: var(--color-muted) !important;
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
|
|
285
377
|
/* Print optimizations
|
|
286
378
|
========================================================================== */
|
|
287
379
|
@media print {
|
|
288
380
|
/* Page setup */
|
|
289
381
|
@page {
|
|
290
382
|
size: A4;
|
|
291
|
-
margin: 20mm
|
|
383
|
+
margin: 20mm 15mm 15mm 15mm;
|
|
292
384
|
}
|
|
293
385
|
|
|
294
386
|
body {
|
|
295
387
|
font-size: 11pt;
|
|
296
388
|
color: black;
|
|
389
|
+
max-width: 100%;
|
|
390
|
+
margin: 0;
|
|
391
|
+
padding: 0;
|
|
297
392
|
}
|
|
298
393
|
|
|
299
394
|
/* Links */
|
|
@@ -313,48 +408,34 @@ table {
|
|
|
313
408
|
text-decoration: none !important;
|
|
314
409
|
}
|
|
315
410
|
|
|
316
|
-
/* Show URLs after links */
|
|
411
|
+
/* Show URLs after external links */
|
|
317
412
|
a[href^='http']:after {
|
|
318
413
|
content: ' (' attr(href) ')';
|
|
319
414
|
font-size: 90%;
|
|
415
|
+
color: var(--color-muted);
|
|
320
416
|
}
|
|
321
417
|
|
|
322
418
|
/* Page break control */
|
|
323
|
-
h3,
|
|
324
|
-
|
|
419
|
+
h1, h2, h3, h4, h5, h6 {
|
|
420
|
+
page-break-after: avoid;
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
p, li {
|
|
325
424
|
page-break-inside: avoid;
|
|
326
425
|
}
|
|
327
426
|
|
|
328
|
-
ul,
|
|
329
|
-
ol {
|
|
427
|
+
ul, ol {
|
|
330
428
|
page-break-inside: auto;
|
|
331
429
|
}
|
|
332
430
|
|
|
333
431
|
img {
|
|
334
432
|
page-break-inside: avoid;
|
|
433
|
+
max-width: 100%;
|
|
335
434
|
}
|
|
336
435
|
|
|
337
|
-
/* Page break before annexes */
|
|
338
|
-
.legal-annex {
|
|
339
|
-
page-break-before: always !important;
|
|
340
|
-
display: block !important;
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
/* Alternative for modern browsers */
|
|
344
|
-
.legal-header-level-6 {
|
|
345
|
-
page-break-before: always !important;
|
|
346
|
-
break-before: page !important; /* Modern syntax */
|
|
347
|
-
display: block !important;
|
|
348
|
-
}
|
|
349
|
-
|
|
350
|
-
/* Annex separation
|
|
351
|
-
.annex-section-title {
|
|
352
|
-
page-break-before: always;
|
|
353
|
-
page-break-after: always;
|
|
354
|
-
} */
|
|
355
|
-
|
|
356
436
|
/* Maintain colors in print */
|
|
357
|
-
.confidential
|
|
437
|
+
.confidential,
|
|
438
|
+
.separator {
|
|
358
439
|
background-color: var(--color-accent) !important;
|
|
359
440
|
color: white !important;
|
|
360
441
|
-webkit-print-color-adjust: exact !important;
|
|
@@ -366,4 +447,12 @@ table {
|
|
|
366
447
|
-webkit-print-color-adjust: exact;
|
|
367
448
|
print-color-adjust: exact;
|
|
368
449
|
}
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
/* Remove backgrounds for better printing */
|
|
453
|
+
pre,
|
|
454
|
+
code {
|
|
455
|
+
background-color: transparent !important;
|
|
456
|
+
border: 1px solid #ccc !important;
|
|
457
|
+
}
|
|
369
458
|
}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/* Legal Header Styles - Header Field Tracking Support */
|
|
2
|
+
|
|
3
|
+
/* Base legal header styling */
|
|
4
|
+
.legal-header {
|
|
5
|
+
display: block;
|
|
6
|
+
margin: 1em 0 0.5em 0;
|
|
7
|
+
font-weight: 600;
|
|
8
|
+
line-height: 1.3;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/* Level-specific styling */
|
|
12
|
+
.legal-header-level-1,
|
|
13
|
+
.legal-article {
|
|
14
|
+
font-size: 1.6em;
|
|
15
|
+
font-weight: bold;
|
|
16
|
+
color: #1a1a1a;
|
|
17
|
+
margin: 2em 0 1em 0;
|
|
18
|
+
border-bottom: 3px solid #333;
|
|
19
|
+
padding-bottom: 0.2em;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.legal-header-level-2,
|
|
23
|
+
.legal-section {
|
|
24
|
+
font-size: 1.3em;
|
|
25
|
+
font-weight: 600;
|
|
26
|
+
color: #333;
|
|
27
|
+
margin: 1.5em 0 0.8em 0;
|
|
28
|
+
border-bottom: 1px solid #666;
|
|
29
|
+
padding-bottom: 0.1em;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.legal-header-level-3,
|
|
33
|
+
.legal-subsection {
|
|
34
|
+
font-size: 1.1em;
|
|
35
|
+
font-weight: 500;
|
|
36
|
+
color: #444;
|
|
37
|
+
margin: 1em 0 0.5em 0;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.legal-header-level-4,
|
|
41
|
+
.legal-sub-subsection {
|
|
42
|
+
font-size: 1.05em;
|
|
43
|
+
font-weight: 500;
|
|
44
|
+
color: #555;
|
|
45
|
+
margin: 0.8em 0 0.4em 0;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.legal-header-level-5,
|
|
49
|
+
.legal-paragraph {
|
|
50
|
+
font-size: 1em;
|
|
51
|
+
font-weight: 500;
|
|
52
|
+
color: #666;
|
|
53
|
+
margin: 0.6em 0 0.3em 0;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/* Data attribute based styling for more specificity */
|
|
57
|
+
.legal-header[data-level='1'] {
|
|
58
|
+
/* Additional Article-level styling */
|
|
59
|
+
text-transform: uppercase;
|
|
60
|
+
letter-spacing: 0.5px;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.legal-header[data-level='2'] {
|
|
64
|
+
/* Additional Section-level styling */
|
|
65
|
+
font-variant: small-caps;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.legal-header[data-level='3'] {
|
|
69
|
+
/* Additional Subsection-level styling */
|
|
70
|
+
font-style: italic;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/* Hover effects for interactive documents */
|
|
74
|
+
.legal-header:hover {
|
|
75
|
+
background-color: rgba(0, 120, 215, 0.1);
|
|
76
|
+
cursor: pointer;
|
|
77
|
+
border-radius: 2px;
|
|
78
|
+
padding: 2px 4px;
|
|
79
|
+
margin: -2px -4px;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/* Print optimizations */
|
|
83
|
+
@media print {
|
|
84
|
+
.legal-header {
|
|
85
|
+
page-break-after: avoid;
|
|
86
|
+
page-break-inside: avoid;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.legal-header:hover {
|
|
90
|
+
background-color: transparent;
|
|
91
|
+
padding: 0;
|
|
92
|
+
margin: 1em 0 0.5em 0;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.legal-header-level-1,
|
|
96
|
+
.legal-article {
|
|
97
|
+
page-break-before: always;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.legal-header-level-1:first-child {
|
|
101
|
+
page-break-before: avoid;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/* Dark mode support */
|
|
106
|
+
@media (prefers-color-scheme: dark) {
|
|
107
|
+
.legal-header-level-1,
|
|
108
|
+
.legal-article {
|
|
109
|
+
color: #e6e6e6;
|
|
110
|
+
border-bottom-color: #ccc;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
.legal-header-level-2,
|
|
114
|
+
.legal-section {
|
|
115
|
+
color: #ddd;
|
|
116
|
+
border-bottom-color: #999;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.legal-header-level-3,
|
|
120
|
+
.legal-subsection {
|
|
121
|
+
color: #ccc;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.legal-header-level-4,
|
|
125
|
+
.legal-sub-subsection {
|
|
126
|
+
color: #bbb;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.legal-header-level-5,
|
|
130
|
+
.legal-paragraph {
|
|
131
|
+
color: #aaa;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/* Responsive adjustments */
|
|
136
|
+
@media (max-width: 768px) {
|
|
137
|
+
.legal-header-level-1,
|
|
138
|
+
.legal-article {
|
|
139
|
+
font-size: 1.4em;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
.legal-header-level-2,
|
|
143
|
+
.legal-section {
|
|
144
|
+
font-size: 1.2em;
|
|
145
|
+
}
|
|
146
|
+
}
|