@youversion/platform-core 1.21.0 → 1.22.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.
@@ -0,0 +1,1515 @@
1
+ [data-slot='yv-bible-renderer'],
2
+ [data-yv-sdk-bible-reader] {
3
+ /* Makes it where cascading styles from the parent app do not affect the bible reader */
4
+ all: unset;
5
+ display: block;
6
+
7
+ width: 100%;
8
+ /* This helps readability and is a standard max width for text */
9
+ max-width: 65ch;
10
+
11
+ --yv-reader-font-size: 20px;
12
+ --yv-reader-line-height: 1.625;
13
+
14
+ /* Set base typography on the root so descendants can inherit */
15
+ font-family: var(--yv-reader-font-family);
16
+ font-size: var(--yv-reader-font-size);
17
+ line-height: var(--yv-reader-line-height);
18
+ color: var(--yv-foreground);
19
+
20
+ /* Disable text selection and tap highlights on mobile */
21
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
22
+ -webkit-touch-callout: none;
23
+ -webkit-user-select: none;
24
+ user-select: none;
25
+
26
+ /* Inherit typography from root instead of forcing a fixed size on every element.
27
+ This allows em-based sizing in headings/poetry to cascade properly to children. */
28
+ & * {
29
+ font-family: var(--yv-reader-font-family);
30
+ font-size: inherit;
31
+ line-height: inherit;
32
+ margin: 0;
33
+ padding: 0;
34
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
35
+ -webkit-touch-callout: none;
36
+ -webkit-user-select: none;
37
+ user-select: none;
38
+ }
39
+
40
+ /* Hide metadata and navigation classes */
41
+ & .id, /* \id - File identification */
42
+ & .ide, /* \ide - Encoding specification */
43
+ & .usfm, /* \usfm - USFM version specification */
44
+ & .h, /* \h - Running header text */
45
+ & .sts, /* \sts - Status */
46
+ & .rem, /* \rem - Remark */
47
+ & .toc1, /* \toc1 - Long table of contents text */
48
+ & .toc2, /* \toc2 - Short table of contents text */
49
+ & .toc3, /* \toc3 - Book abbreviation */
50
+ & .toca1, /* \toca1 - Alt language long TOC text */
51
+ & .toca2, /* \toca2 - Alt language short TOC text */
52
+ & .toca3, /* \toca3 - Alt language book abbreviation */
53
+ & .ie, /* \ie - Introduction end marker */
54
+ & .mte, /* \mte - Major title at ending (print convention) */
55
+ & .cl {
56
+ /* \cl - Chapter label */
57
+ display: none;
58
+ }
59
+
60
+ /* Version/chapter container */
61
+ & .version {
62
+ margin-top: 1.6em;
63
+ padding: 1.2em;
64
+ }
65
+
66
+ /* Chapter label hidden */
67
+ & .chapter > .label {
68
+ display: none;
69
+ }
70
+
71
+ /* Verse labels */
72
+ & .verse > .label,
73
+ & .fv,
74
+ & .yv-vlbl {
75
+ display: inline;
76
+ font-size: 0.65em;
77
+ color: var(--yv-muted-foreground);
78
+ line-height: 1em;
79
+ vertical-align: baseline;
80
+ position: relative;
81
+ top: -0.3em;
82
+ white-space: nowrap;
83
+ }
84
+
85
+ &[data-show-verse-numbers='false'] .yv-vlbl {
86
+ display: none;
87
+ }
88
+
89
+ & .yv-vlbl {
90
+ font-family: var(--yv-font-sans);
91
+ }
92
+
93
+ /* \f - Footnote container (YouVersion wrapper) */
94
+ & .yv-n {
95
+ display: none;
96
+ }
97
+
98
+ /* Hide footnote buttons when notes are disabled */
99
+ &[data-show-notes='false'] [data-verse-footnote] {
100
+ display: none;
101
+ }
102
+
103
+ /* Verse marker */
104
+ & .vp {
105
+ display: inline;
106
+ font-size: 0.5em;
107
+ color: var(--yv-gray-20);
108
+ line-height: 1em;
109
+ vertical-align: baseline;
110
+ position: relative;
111
+ top: -0.6em;
112
+ }
113
+
114
+ /* Prevent verse label from wrapping away from first word */
115
+ & .verse > .label + .content,
116
+ & .yv-vlbl + .content,
117
+ & .fv + .content {
118
+ white-space: normal;
119
+ }
120
+
121
+ /* Wrap verse + label + content together to prevent breaking */
122
+ & .yv-v,
123
+ & .verse {
124
+ display: inline;
125
+ }
126
+
127
+ /* Only show pointer cursor when verses are selectable */
128
+ &[data-selectable='true'] .yv-v,
129
+ &[data-selectable='true'] .verse {
130
+ cursor: pointer;
131
+ }
132
+
133
+ /* Selected verse styling */
134
+ & .yv-v.yv-v-selected {
135
+ text-decoration: underline;
136
+ text-decoration-color: var(--yv-border);
137
+ text-underline-offset: 0.33em;
138
+ }
139
+
140
+ /* Demo highlighted verse styling 20% opacity of expressive yellow 30 */
141
+ & .yv-v.yv-v-highlighted {
142
+ background-color: rgba(241, 156, 51, 0.2);
143
+ border-radius: 2px;
144
+ box-decoration-break: clone;
145
+ -webkit-box-decoration-break: clone;
146
+ }
147
+
148
+ /* ============================================================
149
+ TITLES — Major Book Titles
150
+ ============================================================ */
151
+
152
+ /* \mt, \mt1 - Main title (level 1) — FontSize 20, Bold, Center */
153
+ & .mt,
154
+ & .mt1 {
155
+ font-size: 1.6em;
156
+ font-weight: bold;
157
+ line-height: 1.4em;
158
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
159
+ margin: 1em 0 0.25em;
160
+ display: block;
161
+ }
162
+
163
+ /* \mt2 - Main title (level 2) — FontSize 16, Italic, Center */
164
+ & .mt2 {
165
+ font-size: 1.3em;
166
+ font-style: italic;
167
+ line-height: 1.4em;
168
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
169
+ margin: 0.5em 0 0.15em;
170
+ display: block;
171
+ }
172
+
173
+ /* \mt3 - Main title (level 3) — FontSize 16, Bold, Center */
174
+ & .mt3 {
175
+ font-size: 1.3em;
176
+ font-weight: bold;
177
+ line-height: 1.4em;
178
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
179
+ margin: 0.15em 0;
180
+ display: block;
181
+ }
182
+
183
+ /* \mt4 - Main title (level 4) — FontSize 12, Center */
184
+ & .mt4 {
185
+ line-height: 1.8em;
186
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
187
+ margin: 0.15em 0;
188
+ display: block;
189
+ }
190
+
191
+ /* ============================================================
192
+ TITLES — Introduction Major Titles
193
+ ============================================================ */
194
+
195
+ /* \imt, \imt1 - Introduction major title (level 1) — FontSize 14, Bold, Center */
196
+ & .imt,
197
+ & .imt1 {
198
+ font-size: 1.17em;
199
+ font-weight: bold;
200
+ line-height: 1.8em;
201
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
202
+ margin: 1em 0 0.25em;
203
+ display: block;
204
+ }
205
+
206
+ /* \imt2 - Introduction major title (level 2) — FontSize 13, Italic, Center */
207
+ & .imt2 {
208
+ font-size: 1.08em;
209
+ font-style: italic;
210
+ line-height: 1.8em;
211
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
212
+ margin: 0.5em 0 0.25em;
213
+ display: block;
214
+ }
215
+
216
+ /* \imt3 - Introduction major title (level 3) — FontSize 12, Bold, Center */
217
+ & .imt3 {
218
+ font-weight: bold;
219
+ line-height: 1.8em;
220
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
221
+ margin: 0.15em 0;
222
+ display: block;
223
+ }
224
+
225
+ /* \imt4 - Introduction major title (level 4) — FontSize 12, Italic, Center */
226
+ & .imt4 {
227
+ font-style: italic;
228
+ line-height: 1.8em;
229
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
230
+ margin: 0.15em 0;
231
+ display: block;
232
+ }
233
+
234
+ /* ============================================================
235
+ TITLES — Introduction Major Title Ending
236
+ ============================================================ */
237
+
238
+ /* \imte, \imte1 - Introduction major title ending (level 1) — FontSize 20, Bold, Center */
239
+ & .imte,
240
+ & .imte1 {
241
+ font-size: 1.6em;
242
+ font-weight: bold;
243
+ line-height: 1.4em;
244
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
245
+ margin: 1em 0 0.25em;
246
+ display: block;
247
+ }
248
+
249
+ /* \imte2 - Introduction major title ending (level 2) — FontSize 16, Italic, Center */
250
+ & .imte2 {
251
+ font-size: 1.3em;
252
+ font-style: italic;
253
+ line-height: 1.4em;
254
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
255
+ margin: 0.5em 0 0.15em;
256
+ display: block;
257
+ }
258
+
259
+ /* ============================================================
260
+ HEADINGS — Major Section Headings
261
+ ============================================================ */
262
+
263
+ /* \ms, \ms1 - Major section heading (level 1) — FontSize 14, Bold, Center */
264
+ & .ms,
265
+ & .ms1 {
266
+ font-size: 1.17em;
267
+ font-weight: bold;
268
+ line-height: 1.8em;
269
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
270
+ margin: 1em 0 0.25em;
271
+ display: block;
272
+ }
273
+
274
+ /* \ms2 - Major section heading (level 2) — FontSize 14, Bold, Center */
275
+ & .ms2 {
276
+ font-size: 1.17em;
277
+ font-weight: bold;
278
+ line-height: 1.8em;
279
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
280
+ margin: 0.5em 0;
281
+ display: block;
282
+ }
283
+
284
+ /* \ms3 - Major section heading (level 3) — FontSize 14, Italic, Center */
285
+ & .ms3 {
286
+ font-size: 1.17em;
287
+ font-style: italic;
288
+ line-height: 1.8em;
289
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
290
+ margin: 0.5em 0;
291
+ display: block;
292
+ }
293
+
294
+ /* \mr - Major section reference range — Italic, Center */
295
+ & .mr {
296
+ display: block;
297
+ font-style: italic;
298
+ line-height: 1.8em;
299
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
300
+ margin: 0 0 0.5em;
301
+ }
302
+
303
+ /* ============================================================
304
+ HEADINGS — Section Headings
305
+ ============================================================ */
306
+
307
+ /* \s, \s1 - Section heading (level 1) — Bold, Center */
308
+ & .s,
309
+ & .s1 {
310
+ font-weight: bold;
311
+ line-height: 1.8em;
312
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
313
+ margin: 0.5em 0 0.5em 0;
314
+ display: block;
315
+ }
316
+
317
+ /* \s2 - Section heading (level 2) — Italic, Center */
318
+ & .s2 {
319
+ display: block;
320
+ font-style: italic;
321
+ line-height: 1.8em;
322
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
323
+ margin: 0.5em 0;
324
+ }
325
+
326
+ /* \s3 - Section heading (level 3) — Italic, Left */
327
+ & .s3 {
328
+ display: block;
329
+ font-style: italic;
330
+ line-height: 1.8em;
331
+ margin: 0.5em 0 0.25em;
332
+ }
333
+
334
+ /* \s4 - Section heading (level 4) — Italic, Left */
335
+ & .s4 {
336
+ display: block;
337
+ font-style: italic;
338
+ line-height: 1.8em;
339
+ margin: 0.5em 0 0.25em;
340
+ }
341
+
342
+ /* \sr - Section reference range — Bold, Center */
343
+ & .sr {
344
+ display: block;
345
+ font-weight: bold;
346
+ line-height: 1.8em;
347
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
348
+ margin: 0 0 0.5em;
349
+ }
350
+
351
+ /* \r - Parallel passage reference — Italic, Center */
352
+ & .r {
353
+ display: block;
354
+ font-style: italic;
355
+ line-height: 1.8em;
356
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
357
+ margin: 0 0 0.5em;
358
+ }
359
+
360
+ /* \sp - Speaker identification — Italic, Left */
361
+ & .sp {
362
+ display: block;
363
+ font-style: italic;
364
+ line-height: 1.8em;
365
+ margin: 0 0 0.5em;
366
+ }
367
+
368
+ /* \d - Descriptive title / Hebrew subtitle — Italic, Center */
369
+ & .d {
370
+ display: block;
371
+ font-style: italic;
372
+ line-height: 1.8em;
373
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
374
+ margin: 0.5em 0;
375
+ }
376
+
377
+ /* \qa - Acrostic heading — Italic */
378
+ & .qa {
379
+ display: block;
380
+ font-style: italic;
381
+ line-height: 1.8em;
382
+ margin: 0 0 0.5em;
383
+ }
384
+
385
+ & .heading {
386
+ font-weight: bold;
387
+ line-height: 1.8em;
388
+ margin: 0.5em 0 0.5em 0;
389
+ display: block;
390
+ }
391
+
392
+ /* ============================================================
393
+ HEADINGS — Introduction Section Headings
394
+ ============================================================ */
395
+
396
+ /* \is, \is1 - Introduction section heading (level 1) — FontSize 14, Bold, Center */
397
+ & .is,
398
+ & .is1 {
399
+ font-size: 1.17em;
400
+ font-weight: bold;
401
+ line-height: 1.8em;
402
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
403
+ margin: 0.5em 0 0.5em 0;
404
+ display: block;
405
+ }
406
+
407
+ /* \is2 - Introduction section heading (level 2) — FontSize 12, Bold, Center */
408
+ & .is2 {
409
+ font-weight: bold;
410
+ line-height: 1.8em;
411
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
412
+ margin: 0.5em 0 0.5em 0;
413
+ display: block;
414
+ }
415
+
416
+ /* \yv-h - YouVersion heading (custom, styled like \is) */
417
+ & .yv-h {
418
+ font-size: 1.17em;
419
+ font-weight: bold;
420
+ line-height: 1.8em;
421
+ text-align: start;
422
+ margin: 0.5em 0 0.5em 0;
423
+ display: block;
424
+ }
425
+
426
+ & .yv-h.r {
427
+ font-size: 1em;
428
+ font-weight: normal;
429
+ line-height: 1.8em;
430
+ font-style: italic;
431
+ text-align: start;
432
+ margin: 0 0 0.5em 0;
433
+ display: block;
434
+ }
435
+
436
+ /* ============================================================
437
+ INTRODUCTION — Outline
438
+ ============================================================ */
439
+
440
+ /* \iot - Introduction outline title — Bold, Center */
441
+ & .iot {
442
+ font-weight: bold;
443
+ line-height: 1.8em;
444
+ text-align: start; /* Intentionally set as left-aligned per YV standards */
445
+ margin: 0.5em 0;
446
+ display: block;
447
+ }
448
+
449
+ /* \io, \io1 - Introduction outline entry (level 1) — LeftMargin .5in */
450
+ & .io,
451
+ & .io1 {
452
+ display: block;
453
+ margin-inline-start: 2em;
454
+ }
455
+
456
+ /* This adds top margin to the introduction outline entries */
457
+ & .io:not(.io + .io),
458
+ & .io1:not(.io1 + .io1) {
459
+ margin-block-start: 1em;
460
+ }
461
+
462
+ /* This adds bottom margin to the introduction outline entries */
463
+ & .io:has(+ :not(.io)),
464
+ & .io1:has(+ :not(.io1)) {
465
+ margin-block-end: 1em;
466
+ }
467
+
468
+ /* \io2 - Introduction outline entry (level 2) — LeftMargin .75in */
469
+ & .io2 {
470
+ display: block;
471
+ margin-inline-start: 3em;
472
+ }
473
+
474
+ /* \io3 - Introduction outline entry (level 3) — LeftMargin 1in */
475
+ & .io3 {
476
+ display: block;
477
+ margin-inline-start: 4em;
478
+ }
479
+
480
+ /* \io4 - Introduction outline entry (level 4) — LeftMargin 1.25in */
481
+ & .io4 {
482
+ display: block;
483
+ margin-inline-start: 5em;
484
+ }
485
+
486
+ /* \ior - Introduction outline reference range — no special style per spec */
487
+ & .ior {
488
+ display: inline;
489
+ }
490
+
491
+ /* ============================================================
492
+ INTRODUCTION — List Items
493
+ ============================================================ */
494
+
495
+ /* \ili, \ili1 - Introduction list item (level 1) — hanging indent */
496
+ & .ili,
497
+ & .ili1 {
498
+ display: block;
499
+ margin-inline-start: 2em;
500
+ text-indent: -1em;
501
+ }
502
+
503
+ /* This adds top margin to the introduction list items */
504
+ & .ili:not(.ili + .ili) {
505
+ margin-block-start: 1em;
506
+ }
507
+
508
+ /* This adds bottom margin to the introduction list items */
509
+ & .ili:has(+ :not(.ili)) {
510
+ margin-block-end: 1em;
511
+ }
512
+
513
+ /* \ili2 - Introduction list item (level 2) */
514
+ & .ili2 {
515
+ display: block;
516
+ margin-inline-start: 3em;
517
+ text-indent: -1em;
518
+ }
519
+
520
+ /* \ili3 - Introduction list item (level 3) */
521
+ & .ili3 {
522
+ display: block;
523
+ margin-inline-start: 4em;
524
+ text-indent: -1em;
525
+ }
526
+
527
+ /* ============================================================
528
+ INTRODUCTION — Paragraphs
529
+ ============================================================ */
530
+
531
+ /* \ip - Introduction paragraph — first line indent */
532
+ & .ip {
533
+ display: block;
534
+ margin-bottom: 0;
535
+ text-indent: 1em;
536
+ }
537
+
538
+ /* \im - Introduction flush left (margin) paragraph — no indent */
539
+ & .im {
540
+ display: block;
541
+ text-indent: 0;
542
+ margin: 0;
543
+ }
544
+
545
+ /* \ipi - Indented introduction paragraph — first line indent + margins */
546
+ & .ipi {
547
+ display: block;
548
+ text-indent: 1em;
549
+ margin-inline-start: 1em;
550
+ margin-inline-end: 1em;
551
+ }
552
+
553
+ /* \imi - Indented introduction flush left paragraph — margins, no indent */
554
+ & .imi {
555
+ display: block;
556
+ margin-inline-start: 1em;
557
+ margin-inline-end: 1em;
558
+ text-indent: 0;
559
+ }
560
+
561
+ /* \ipq - Introduction quote from scripture text — Italic, margins, indent */
562
+ & .ipq {
563
+ display: block;
564
+ font-style: italic;
565
+ text-indent: 1em;
566
+ margin-inline-start: 1em;
567
+ margin-inline-end: 1em;
568
+ }
569
+
570
+ /* \imq - Introduction flush left quote from text — Italic, margins */
571
+ & .imq {
572
+ display: block;
573
+ font-style: italic;
574
+ text-indent: 0;
575
+ margin: 1em;
576
+ }
577
+
578
+ /* \ipr - Introduction right-aligned paragraph — Italic, Right, margins */
579
+ & .ipr {
580
+ display: block;
581
+ font-style: italic;
582
+ text-align: end;
583
+ margin-inline-start: 1em;
584
+ margin-inline-end: 1em;
585
+ }
586
+
587
+ /* \ib - Introduction blank line */
588
+ & .ib {
589
+ display: block;
590
+ height: 1em;
591
+ }
592
+
593
+ /* \iex - Introduction explanatory/bridge text — first line indent */
594
+ & .iex {
595
+ display: block;
596
+ text-indent: 1em;
597
+ line-height: 2em;
598
+ margin: 0.5em 0;
599
+ }
600
+
601
+ /* \iqt - Introduction quoted text (scripture quotation, character style) — Italic */
602
+ & .iqt {
603
+ font-style: italic;
604
+ }
605
+
606
+ /* ============================================================
607
+ INTRODUCTION — Poetry
608
+ ============================================================ */
609
+
610
+ /* \iq, \iq1 - Introduction poetry (level 1) — Italic, hanging indent */
611
+ & .iq,
612
+ & .iq1 {
613
+ display: block;
614
+ font-style: italic;
615
+ padding-inline-start: 2em;
616
+ text-indent: -1em;
617
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
618
+ }
619
+
620
+ /* \iq2 - Introduction poetry (level 2) — Italic */
621
+ & .iq2 {
622
+ display: block;
623
+ font-style: italic;
624
+ padding-inline-start: 3em;
625
+ text-indent: -1.5em;
626
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
627
+ }
628
+
629
+ /* \iq3 - Introduction poetry (level 3) — Italic */
630
+ & .iq3 {
631
+ display: block;
632
+ font-style: italic;
633
+ padding-inline-start: 3em;
634
+ text-indent: -2em;
635
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
636
+ }
637
+
638
+ /* \iq4 - Introduction poetry (level 4) — Italic */
639
+ & .iq4 {
640
+ display: block;
641
+ font-style: italic;
642
+ padding-inline-start: 4em;
643
+ text-indent: -2em;
644
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
645
+ }
646
+
647
+ /* ============================================================
648
+ NOTES — Footnote/Note Character Styles
649
+ ============================================================ */
650
+
651
+ /* Notes within headings */
652
+ & .s1 .note .heading,
653
+ & .s .note .heading {
654
+ font-size: 0.67em;
655
+ font-weight: normal;
656
+ font-style: normal;
657
+ }
658
+
659
+ & .s1 .note_close,
660
+ & .s .note_close {
661
+ font-size: 0.67em;
662
+ }
663
+
664
+ & .s .note,
665
+ & .is .note,
666
+ & .s1 .note,
667
+ & .ms1 .note,
668
+ & .is1 .note,
669
+ & .is2 .note,
670
+ & .mr .note {
671
+ font-size: 0.9em;
672
+ }
673
+
674
+ & .note .fr {
675
+ /* \fr - Footnote reference (verse number) — Bold */
676
+ padding-inline-end: 0.25em;
677
+ font-weight: bold;
678
+ }
679
+
680
+ & .note .fq, /* \fq - Footnote quotation from text — Italic */
681
+ & .note .fqa {
682
+ /* \fqa - Footnote alternate translation — Italic */
683
+ font-style: italic;
684
+ }
685
+
686
+ & .note .ft {
687
+ /* \ft - Footnote text */
688
+ display: inline;
689
+ }
690
+
691
+ & .note .fv {
692
+ /* \fv - Footnote verse number — Superscript */
693
+ vertical-align: super;
694
+ font-size: 0.75em;
695
+ }
696
+
697
+ & .note .fk {
698
+ /* \fk - Footnote keyword — Bold + Italic */
699
+ font-style: italic;
700
+ font-weight: bold;
701
+ }
702
+
703
+ & .note .fl {
704
+ /* \fl - Footnote label — Italic + Bold */
705
+ font-weight: bold;
706
+ font-style: italic;
707
+ }
708
+
709
+ /* ============================================================
710
+ PARAGRAPHS
711
+ ============================================================ */
712
+
713
+ /* \p - Normal paragraph — first line indent */
714
+ & .p {
715
+ display: block;
716
+ margin-bottom: 0;
717
+ text-indent: 1em;
718
+ }
719
+
720
+ /* Special paragraph spacing rules */
721
+ & .pi + .p,
722
+ & .pi1 + .p,
723
+ & .s + .pi,
724
+ & .s + .pi1,
725
+ & .s1 + .pi,
726
+ & .s1 + .pi1,
727
+ & .ms + .p,
728
+ & .ms1 + .p,
729
+ & .ms2 + .p,
730
+ & .q + .m,
731
+ & .q1 + .m,
732
+ & .q2 + .m,
733
+ & .q3 + .m {
734
+ margin-top: 0.5em;
735
+ text-indent: 0;
736
+ }
737
+
738
+ & .label + .p {
739
+ text-indent: 0;
740
+ }
741
+
742
+ & .chapter div:first-child {
743
+ margin-top: 0;
744
+ }
745
+
746
+ /* Hebrew text heading spacing */
747
+ & .d + .d {
748
+ margin-top: -1.25em;
749
+ }
750
+
751
+ /* Complex spacing rules between elements */
752
+ & .p + .s,
753
+ & .p + .s1,
754
+ & .p + .s2,
755
+ & .p + .ms,
756
+ & .p + .ms1,
757
+ & .p + .ms2,
758
+ & .p + .q,
759
+ & .p + .q1,
760
+ & .p + .li,
761
+ & .p + .li1,
762
+ & .li + .li2,
763
+ & .li1 + .li2,
764
+ & .li2 + .li,
765
+ & .li2 + .li1,
766
+ & .m + .s,
767
+ & .m + .s1,
768
+ & .m + .s2,
769
+ & .q + p,
770
+ & .q1 + .p,
771
+ & .q2 + .p,
772
+ & .q + .s,
773
+ & .q + .s1,
774
+ & .q + .s2,
775
+ & .q + .ms,
776
+ & .q + .ms1,
777
+ & .q + .ms2,
778
+ & .q1 + .s,
779
+ & .q1 + .s1,
780
+ & .q1 + .s2,
781
+ & .q1 + .ms,
782
+ & .q1 + .ms1,
783
+ & .q1 + .ms2,
784
+ & .q2 + .s,
785
+ & .q2 + .s1,
786
+ & .q2 + .s2,
787
+ & .q2 + .ms,
788
+ & .q2 + .m1,
789
+ & .q2 + .m2,
790
+ & .q3 + .s,
791
+ & .q3 + .s1,
792
+ & .q3 + .s2,
793
+ & .q3 + .ms,
794
+ & .q3 + .m1,
795
+ & .q3 + .m2,
796
+ & .imt + .is,
797
+ & .imt + .is1,
798
+ & .imt1 + .is,
799
+ & .imt1 + .is1,
800
+ & .ip + .is,
801
+ & .ip + .is1,
802
+ & .io + .is,
803
+ & .io + .is1,
804
+ & .io1 + .is,
805
+ & .io1 + .is1,
806
+ & .io2 + .is,
807
+ & .io2 + .is1,
808
+ & .io3 + .is,
809
+ & .io3 + .is1,
810
+ & .ip + .io,
811
+ & .ip + .io1,
812
+ & .ip + .io2,
813
+ & .ip + .io3,
814
+ & .table + .p,
815
+ & .p + .table,
816
+ & .pi1 + .s,
817
+ & .pi + .s {
818
+ margin-top: 1em;
819
+ }
820
+
821
+ & .p + .pm,
822
+ & .p + .pmo,
823
+ & .p + .pmc,
824
+ & .p + .q1,
825
+ & .p + .q2,
826
+ & .p + .q3,
827
+ & .p + .q4,
828
+ & .p + .qr,
829
+ & .p + .qm1,
830
+ & .p + .qm2,
831
+ & .p + .pmr,
832
+ & .m + .pm,
833
+ & .m + .pmo,
834
+ & .m + .pmc,
835
+ & .m + .q1,
836
+ & .m + .q2,
837
+ & .m + .q3,
838
+ & .m + .q4,
839
+ & .m + .qr,
840
+ & .m + .qm1,
841
+ & .m + .qm2,
842
+ & .m + .pmr,
843
+ & .mi + .pm,
844
+ & .mi + .pmo,
845
+ & .mi + .pmc,
846
+ & .mi + .q1,
847
+ & .mi + .q2,
848
+ & .mi + .q3,
849
+ & .mi + .q4,
850
+ & .mi + .qr,
851
+ & .mi + .qm1,
852
+ & .mi + .qm2,
853
+ & .mi + .pmr,
854
+ & .pi1 + .pm,
855
+ & .pi1 + .pmo,
856
+ & .pi1 + .pmc,
857
+ & .pi1 + .q1,
858
+ & .pi1 + .q2,
859
+ & .pi1 + .q3,
860
+ & .pi1 + .q4,
861
+ & .pi1 + .qr,
862
+ & .pi1 + .qm1,
863
+ & .pi1 + .qm2,
864
+ & .pi1 + .pmr,
865
+ & .pi2 + .pm,
866
+ & .pi2 + .pmo,
867
+ & .pi2 + .pmc,
868
+ & .pi2 + .q1,
869
+ & .pi2 + .q2,
870
+ & .pi2 + .q3,
871
+ & .pi2 + .q4,
872
+ & .pi2 + .qr,
873
+ & .pi2 + .qm1,
874
+ & .pi2 + .qm2,
875
+ & .pi2 + .pmr,
876
+ & .pi3 + .pm,
877
+ & .pi3 + .pmo,
878
+ & .pi3 + .pmc,
879
+ & .pi3 + .q1,
880
+ & .pi3 + .q2,
881
+ & .pi3 + .q3,
882
+ & .pi3 + .q4,
883
+ & .pi3 + .qr,
884
+ & .pi3 + .qm1,
885
+ & .pi3 + .qm2,
886
+ & .pi3 + .pmr,
887
+ & .li + .pm,
888
+ & .li + .pmo,
889
+ & .li + .pmc,
890
+ & .li + .q1,
891
+ & .li + .q2,
892
+ & .li + .q3,
893
+ & .li + .q4,
894
+ & .li + .qr,
895
+ & .li + .qm1,
896
+ & .li + .qm2,
897
+ & .li + .pmr,
898
+ & .li1 + .pm,
899
+ & .li1 + .pmo,
900
+ & .li1 + .pmc,
901
+ & .li1 + .q1,
902
+ & .li1 + .q2,
903
+ & .li1 + .q3,
904
+ & .li1 + .q4,
905
+ & .li1 + .qr,
906
+ & .li1 + .qm1,
907
+ & .li1 + .qm2,
908
+ & .li1 + .pmr,
909
+ & .li2 + .pm,
910
+ & .li2 + .pmo,
911
+ & .li2 + .pmc,
912
+ & .li2 + .q1,
913
+ & .li2 + .q2,
914
+ & .li2 + .q3,
915
+ & .li2 + .q4,
916
+ & .li2 + .qr,
917
+ & .li2 + .qm1,
918
+ & .li2 + .qm2,
919
+ & .li2 + .pmr,
920
+ & .li3 + .pm,
921
+ & .li3 + .pmo,
922
+ & .li3 + .pmc,
923
+ & .li3 + .q1,
924
+ & .li3 + .q2,
925
+ & .li3 + .q3,
926
+ & .li3 + .q4,
927
+ & .li3 + .qr,
928
+ & .li3 + .qm1,
929
+ & .li3 + .qm2,
930
+ & .li3 + .pmr,
931
+ & .li4 + .pm,
932
+ & .li4 + .pmo,
933
+ & .li4 + .pmc,
934
+ & .li4 + .q1,
935
+ & .li4 + .q2,
936
+ & .li4 + .q3,
937
+ & .li4 + .q4,
938
+ & .li4 + .qr,
939
+ & .li4 + .qm1,
940
+ & .li4 + .qm2,
941
+ & .li4 + .pmr,
942
+ & .lpi + .pm,
943
+ & .lpi + .pmo,
944
+ & .lpi + .pmc,
945
+ & .lpi + .q1,
946
+ & .lpi + .q2,
947
+ & .lpi + .q3,
948
+ & .lpi + .q4,
949
+ & .lpi + .qr,
950
+ & .lpi + .qm1,
951
+ & .lpi + .qm2,
952
+ & .lpi + .pmr {
953
+ margin-top: 0;
954
+ }
955
+
956
+ /* ============================================================
957
+ CHARACTER STYLES
958
+ ============================================================ */
959
+
960
+ /* \wj - Words of Jesus (red letter) */
961
+ & .wj {
962
+ color: var(--yv-red);
963
+ }
964
+
965
+ /* \nd - Name of Deity (e.g. "LORD") — Smallcaps */
966
+ & .nd {
967
+ font-variant: small-caps;
968
+ }
969
+
970
+ /* \sc - Small-cap text — Smallcaps */
971
+ & .sc {
972
+ font-variant: small-caps;
973
+ }
974
+
975
+ /* \bd - Bold text */
976
+ & .bd {
977
+ font-weight: bold;
978
+ }
979
+
980
+ /* \em - Emphasis text — Italic */
981
+ & .em {
982
+ font-style: italic;
983
+ }
984
+
985
+ /* \bdit - Bold-italic text */
986
+ & .bdit {
987
+ font-weight: bold;
988
+ font-style: italic;
989
+ }
990
+
991
+ /* \bk - Book name reference — Italic */
992
+ & .bk {
993
+ font-style: italic;
994
+ }
995
+
996
+ /* \ord - Ordinal number ending — Superscript */
997
+ & .ord {
998
+ font-size: 0.75em;
999
+ line-height: 2em;
1000
+ position: relative;
1001
+ vertical-align: baseline;
1002
+ top: -0.5em;
1003
+ }
1004
+
1005
+ /* \pn - Proper name (semantic marker, no special formatting in this reader) */
1006
+ & .pn {
1007
+ font-weight: normal;
1008
+ font-style: normal;
1009
+ }
1010
+
1011
+ /* \k - Keyword/keyterm — Italic + Bold */
1012
+ & .k {
1013
+ font-style: italic;
1014
+ font-weight: bold;
1015
+ }
1016
+
1017
+ /* \w - Wordlist/glossary entry */
1018
+ & .w {
1019
+ display: inline;
1020
+ }
1021
+
1022
+ /* \rq - Inline cross-reference quotation — Italic, smaller */
1023
+ & .rq {
1024
+ font-style: italic;
1025
+ font-size: 0.8em;
1026
+ }
1027
+
1028
+ /* \x - Cross-reference note */
1029
+ & .x {
1030
+ display: none;
1031
+ }
1032
+
1033
+ /* \f - Footnote container, \fe - Endnote container */
1034
+ & .f,
1035
+ & .fe {
1036
+ display: inline;
1037
+ }
1038
+
1039
+ /**
1040
+ * \add - Translator addition — Italic
1041
+ * {@see https://docs.usfm.bible/usfm/latest/char/features/add.html}
1042
+ */
1043
+ & .add {
1044
+ font-style: italic;
1045
+ }
1046
+
1047
+ /* \it - Italic text, \tl - Transliterated word,
1048
+ \sls - Secondary language/alternate source text — Italic */
1049
+ & .it,
1050
+ & .tl,
1051
+ & .sls {
1052
+ font-style: italic;
1053
+ }
1054
+
1055
+ /* \qt - Quoted text (OT quotation in NT, etc.) — Italic */
1056
+ & .qt {
1057
+ font-style: italic;
1058
+ }
1059
+
1060
+ /* \sig - Signature of the author of a letter/epistle — Italic */
1061
+ & .sig {
1062
+ font-style: italic;
1063
+ }
1064
+
1065
+ /* \dc - Deuterocanonical/LXX additions — Italic */
1066
+ & .dc {
1067
+ font-style: italic;
1068
+ }
1069
+
1070
+ /* \no - Normal text (resets italic/bold within a styled context) */
1071
+ & .no {
1072
+ font-weight: normal;
1073
+ font-style: normal;
1074
+ }
1075
+
1076
+ /* \fdc - Footnote deuterocanonical content */
1077
+ & .fdc {
1078
+ font-style: italic;
1079
+ }
1080
+
1081
+ /* ============================================================
1082
+ POETRY
1083
+ ============================================================ */
1084
+
1085
+ /* \b - Blank line (stanza break in poetry) */
1086
+ & .b {
1087
+ line-height: 2em;
1088
+ height: 1em;
1089
+ display: block;
1090
+ }
1091
+
1092
+ /* \q, \q1 - Poetic line (level 1) */
1093
+ & .q,
1094
+ & .q1 {
1095
+ display: block;
1096
+ padding-inline-start: 2em;
1097
+ text-indent: -2em;
1098
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
1099
+ }
1100
+
1101
+ & .q2 {
1102
+ display: block;
1103
+ padding-inline-start: 2em;
1104
+ text-indent: -1em;
1105
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
1106
+ }
1107
+
1108
+ & .q3 {
1109
+ display: block;
1110
+ padding-inline-start: 3em;
1111
+ text-indent: -2em;
1112
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
1113
+ }
1114
+
1115
+ & .q4 {
1116
+ display: block;
1117
+ padding-inline-start: 4em;
1118
+ text-indent: -2em;
1119
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
1120
+ }
1121
+
1122
+ /* \qc - Centered poetic line */
1123
+ & .qc {
1124
+ text-align: center;
1125
+ display: block;
1126
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1127
+ }
1128
+
1129
+ /* \qr - Right-aligned poetic refrain */
1130
+ & .qr {
1131
+ text-align: end;
1132
+ display: block;
1133
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1134
+ }
1135
+
1136
+ /* \qs - Selah (commonly in Psalms and Habakkuk) — Italic */
1137
+ & .qs {
1138
+ display: block;
1139
+ text-align: end;
1140
+ font-style: italic;
1141
+ margin-top: calc(var(--yv-reader-font-size) * 0.5);
1142
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1143
+ }
1144
+
1145
+ /* \qac - Acrostic letter within a poetic line — Italic */
1146
+ & .qac {
1147
+ font-style: italic;
1148
+ }
1149
+
1150
+ /* \qd - Hebrew note at end of poetic section — Italic */
1151
+ & .qd {
1152
+ display: block;
1153
+ font-style: italic;
1154
+ margin: 0.5em 0;
1155
+ margin-inline-start: 1em;
1156
+ }
1157
+
1158
+ /* \qm, \qm1 - Embedded text poetic line (level 1) */
1159
+ & .qm,
1160
+ & .qm1 {
1161
+ display: block;
1162
+ padding-inline-start: 2em;
1163
+ text-indent: -2em;
1164
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
1165
+ }
1166
+
1167
+ & .qm2 {
1168
+ display: block;
1169
+ padding-inline-start: 2em;
1170
+ text-indent: -1em;
1171
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
1172
+ }
1173
+
1174
+ & .qm3 {
1175
+ display: block;
1176
+ padding-inline-start: 3em;
1177
+ text-indent: -2em;
1178
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
1179
+ }
1180
+
1181
+ & .qm4 {
1182
+ display: block;
1183
+ padding-inline-start: 4em;
1184
+ text-indent: -2em;
1185
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.3);
1186
+ }
1187
+
1188
+ /* ============================================================
1189
+ PARAGRAPHS — Continued
1190
+ ============================================================ */
1191
+
1192
+ /* \m - Continuation (margin) paragraph, \nb - No-break paragraph */
1193
+ & .m,
1194
+ & .nb {
1195
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1196
+ text-indent: 0;
1197
+ display: block;
1198
+ }
1199
+
1200
+ /* \pi, \pi1 - Indented paragraph (level 1) — first line indent + left margin */
1201
+ & .pi,
1202
+ & .pi1 {
1203
+ display: block;
1204
+ text-indent: 1em;
1205
+ padding-inline-start: 0;
1206
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1207
+ }
1208
+
1209
+ & .pi2 {
1210
+ display: block;
1211
+ text-indent: 2em;
1212
+ padding-inline-start: 1em;
1213
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1214
+ }
1215
+
1216
+ & .pi3 {
1217
+ display: block;
1218
+ text-indent: 4em;
1219
+ padding-inline-start: 3em;
1220
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1221
+ }
1222
+
1223
+ /* \mi - Indented flush left, \pm - Embedded text, \pmo - Embedded opening,
1224
+ \pmc - Embedded closing, \pmr - Embedded refrain */
1225
+ & .mi,
1226
+ & .pm,
1227
+ & .pmo,
1228
+ & .pmc,
1229
+ & .pmr {
1230
+ display: block;
1231
+ text-indent: 0;
1232
+ padding-inline-start: 2em;
1233
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1234
+ }
1235
+
1236
+ /* \pr - Right-aligned paragraph */
1237
+ & .pr {
1238
+ text-align: end;
1239
+ display: block;
1240
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1241
+ }
1242
+
1243
+ /* \pc - Centered paragraph (inscriptions) */
1244
+ & .pc {
1245
+ text-align: center;
1246
+ display: block;
1247
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1248
+ }
1249
+
1250
+ /* \po - Opening of an epistle/letter */
1251
+ & .po {
1252
+ display: block;
1253
+ text-indent: 1em;
1254
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1255
+ }
1256
+
1257
+ /* \ph - Indented paragraph with hanging indent (deprecated, use \li) */
1258
+ & .ph,
1259
+ & .ph1 {
1260
+ display: block;
1261
+ padding-inline-start: 2em;
1262
+ text-indent: -2em;
1263
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1264
+ }
1265
+
1266
+ & .ph2 {
1267
+ display: block;
1268
+ padding-inline-start: 3em;
1269
+ text-indent: -2em;
1270
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1271
+ }
1272
+
1273
+ & .ph3 {
1274
+ display: block;
1275
+ padding-inline-start: 4em;
1276
+ text-indent: -2em;
1277
+ margin-bottom: calc(var(--yv-reader-font-size) * 0.5);
1278
+ }
1279
+
1280
+ /* \cls - Closure of an epistle/letter — Right-aligned */
1281
+ & .cls {
1282
+ display: block;
1283
+ text-align: end;
1284
+ margin: 0.5em 0;
1285
+ }
1286
+
1287
+ /* ============================================================
1288
+ LISTS
1289
+ ============================================================ */
1290
+
1291
+ /* \lh - List header, \lf - List footer */
1292
+ & .lh,
1293
+ & .lf {
1294
+ display: block;
1295
+ margin: 0.5em 0 0.25em;
1296
+ }
1297
+
1298
+ /* \li, \li1 - List entry (level 1) — hanging indent, no bullets per USFM spec */
1299
+ & .li,
1300
+ & .li1 {
1301
+ display: block;
1302
+ list-style-type: none;
1303
+ padding-inline-start: 2em;
1304
+ text-indent: -1.5em;
1305
+ }
1306
+
1307
+ & .li2 {
1308
+ display: block;
1309
+ list-style-type: none;
1310
+ padding-inline-start: 3em;
1311
+ text-indent: -1.5em;
1312
+ }
1313
+
1314
+ & .li3 {
1315
+ display: block;
1316
+ list-style-type: none;
1317
+ padding-inline-start: 4em;
1318
+ text-indent: -1.5em;
1319
+ }
1320
+
1321
+ & .li4 {
1322
+ display: block;
1323
+ list-style-type: none;
1324
+ padding-inline-start: 5em;
1325
+ text-indent: -1.5em;
1326
+ }
1327
+
1328
+ /* \lim, \lim1 - Embedded list entry (level 1) — hanging indent, no bullets per USFM spec */
1329
+ & .lim,
1330
+ & .lim1 {
1331
+ display: block;
1332
+ list-style-type: none;
1333
+ padding-inline-start: 3em;
1334
+ padding-inline-end: 1em;
1335
+ text-indent: -1.5em;
1336
+ }
1337
+
1338
+ & .lim2 {
1339
+ display: block;
1340
+ list-style-type: none;
1341
+ padding-inline-start: 4em;
1342
+ padding-inline-end: 1em;
1343
+ text-indent: -1.5em;
1344
+ }
1345
+
1346
+ & .lim3 {
1347
+ display: block;
1348
+ list-style-type: none;
1349
+ padding-inline-start: 5em;
1350
+ padding-inline-end: 1em;
1351
+ text-indent: -1.5em;
1352
+ }
1353
+
1354
+ /* ============================================================
1355
+ LINE BREAKS & CONTENT
1356
+ ============================================================ */
1357
+
1358
+ & br {
1359
+ line-height: inherit;
1360
+ }
1361
+
1362
+ & .content {
1363
+ display: inline;
1364
+ }
1365
+
1366
+ /* ============================================================
1367
+ FOOTNOTES & CROSS-REFERENCES (display elements)
1368
+ ============================================================ */
1369
+
1370
+ & .footnote,
1371
+ & .crossref {
1372
+ vertical-align: super;
1373
+ font-size: 0.6em;
1374
+ line-height: 0;
1375
+ white-space: nowrap;
1376
+ }
1377
+
1378
+ /* ============================================================
1379
+ SUBSCRIPT & SUPERSCRIPT
1380
+ ============================================================ */
1381
+
1382
+ & .sub,
1383
+ & .sup {
1384
+ font-size: 75%;
1385
+ line-height: 0;
1386
+ position: relative;
1387
+ vertical-align: baseline;
1388
+ }
1389
+
1390
+ & .sup {
1391
+ top: -0.25em;
1392
+ }
1393
+
1394
+ & .sub {
1395
+ bottom: -0.1em;
1396
+ }
1397
+
1398
+ /* ============================================================
1399
+ TABLES
1400
+ ============================================================ */
1401
+
1402
+ & table {
1403
+ width: 100%;
1404
+ background: var(--yv-background);
1405
+ border-radius: 0.5rem;
1406
+ border: 1px solid var(--yv-border);
1407
+ margin-bottom: calc(var(--yv-reader-font-size) * 1);
1408
+ margin-top: calc(var(--yv-reader-font-size) * 0.75);
1409
+ table-layout: auto;
1410
+ font-size: inherit;
1411
+ line-height: normal;
1412
+ border-collapse: separate;
1413
+ border-spacing: 0;
1414
+ overflow: hidden;
1415
+ }
1416
+
1417
+ & table tr:nth-child(odd) {
1418
+ background-color: var(--yv-card);
1419
+ }
1420
+
1421
+ & table td,
1422
+ & .tc {
1423
+ padding: 0.25em;
1424
+ text-align: inherit;
1425
+ vertical-align: top;
1426
+ }
1427
+
1428
+ & table td:not(:last-child),
1429
+ & table th:not(:last-child) {
1430
+ border-right: 1px solid var(--yv-border);
1431
+ }
1432
+
1433
+ & table tr:not(:last-child) td,
1434
+ & table tr:not(:last-child) th {
1435
+ border-bottom: 1px solid var(--yv-border);
1436
+ }
1437
+
1438
+ & table td[colspan],
1439
+ & table th[colspan] {
1440
+ border-right: none;
1441
+ }
1442
+
1443
+ & table th,
1444
+ & .th,
1445
+ & .th1 {
1446
+ background: var(--yv-foreground);
1447
+ color: var(--yv-primary-foreground);
1448
+ font-weight: 700;
1449
+ padding: 0.25em;
1450
+ vertical-align: top;
1451
+ }
1452
+
1453
+ & .tcr,
1454
+ & .tcr1 {
1455
+ padding: 0.25em;
1456
+ text-align: end;
1457
+ vertical-align: top;
1458
+ }
1459
+
1460
+ & .thr,
1461
+ & .thr1 {
1462
+ background: var(--yv-foreground);
1463
+ color: var(--yv-primary-foreground);
1464
+ font-weight: 700;
1465
+ padding: 0.25em;
1466
+ text-align: end;
1467
+ vertical-align: top;
1468
+ }
1469
+
1470
+ /* ============================================================
1471
+ SPECIAL / MISC
1472
+ ============================================================ */
1473
+
1474
+ /* \sd - Semantic division (vertical space between sections) */
1475
+ & .sd {
1476
+ display: block;
1477
+ height: 1em;
1478
+ }
1479
+
1480
+ /* \lb - Line break (same as \b) */
1481
+ & .lb {
1482
+ display: block;
1483
+ height: 1em;
1484
+ }
1485
+
1486
+ /* \cd - Chapter description — Italic */
1487
+ & .cd {
1488
+ display: block;
1489
+ font-style: italic;
1490
+ margin: 0.5em 0;
1491
+ }
1492
+
1493
+ /* \fp - Footnote paragraph (block-level paragraph within a footnote) */
1494
+ & .fp {
1495
+ display: block;
1496
+ margin-top: 0.5em;
1497
+ text-indent: 1em;
1498
+ }
1499
+
1500
+ /* \lit - Liturgical note — Right-aligned, Bold */
1501
+ & .lit {
1502
+ display: block;
1503
+ text-align: end;
1504
+ font-weight: bold;
1505
+ }
1506
+
1507
+ /* ============================================================
1508
+ RTL SUPPORT
1509
+ ============================================================ */
1510
+
1511
+ &[dir='rtl'] {
1512
+ direction: rtl;
1513
+ text-align: right;
1514
+ }
1515
+ }