My theme for forester (+plugins)
1/* SPDX-License-Identifier: CC0-1.0 */
2
3.katex {
4 font-size: 1.15em !important;
5}
6
7/* inria-sans-300 - latin_latin-ext */
8@font-face {
9 font-display: swap;
10 /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
11 font-family: "Inria Sans";
12 font-style: normal;
13 font-weight: 300;
14 src: url("fonts/inria-sans-v14-latin_latin-ext-300.woff2") format("woff2");
15 /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
16}
17
18/* inria-sans-300italic - latin_latin-ext */
19@font-face {
20 font-display: swap;
21 /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
22 font-family: "Inria Sans";
23 font-style: italic;
24 font-weight: 300;
25 src: url("fonts/inria-sans-v14-latin_latin-ext-300italic.woff2")
26 format("woff2");
27 /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
28}
29
30/* inria-sans-regular - latin_latin-ext */
31@font-face {
32 font-display: swap;
33 /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
34 font-family: "Inria Sans";
35 font-style: normal;
36 font-weight: 400;
37 src: url("fonts/inria-sans-v14-latin_latin-ext-regular.woff2")
38 format("woff2");
39 /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
40}
41
42/* inria-sans-italic - latin_latin-ext */
43@font-face {
44 font-display: swap;
45 /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
46 font-family: "Inria Sans";
47 font-style: italic;
48 font-weight: 400;
49 src: url("fonts/inria-sans-v14-latin_latin-ext-italic.woff2")
50 format("woff2");
51 /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
52}
53
54/* inria-sans-700 - latin_latin-ext */
55@font-face {
56 font-display: swap;
57 /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
58 font-family: "Inria Sans";
59 font-style: normal;
60 font-weight: 700;
61 src: url("fonts/inria-sans-v14-latin_latin-ext-700.woff2") format("woff2");
62 /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
63}
64
65/* inria-sans-700italic - latin_latin-ext */
66@font-face {
67 font-display: swap;
68 /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
69 font-family: "Inria Sans";
70 font-style: italic;
71 font-weight: 700;
72 src: url("fonts/inria-sans-v14-latin_latin-ext-700italic.woff2")
73 format("woff2");
74 /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
75}
76
77:root {
78 --content-gap: 15px;
79 --radius: 5px;
80}
81
82h1,
83h2,
84h3,
85h4,
86h5,
87h6 {
88 line-height: 1.2;
89 margin-bottom: 0;
90}
91
92h5,
93h6,
94p {
95 margin-top: 0;
96}
97
98h1,
99h2,
100h3,
101h4 {
102 margin-top: 0.5em;
103}
104
105pre,
106img,
107.katex-display,
108section,
109center {
110 overflow-y: hidden;
111}
112
113pre {
114 border-radius: var(--radius);
115 background-color: rgba(0, 100, 100, 0.04);
116 padding: 0.5em;
117 font-size: 11pt;
118 margin-top: 0em;
119 overflow-x: auto;
120 white-space: pre-wrap;
121 white-space: -moz-pre-wrap;
122 white-space: -pre-wrap;
123 white-space: -o-pre-wrap;
124 word-wrap: break-word;
125}
126.shiki > code {
127 background-color: transparent;
128 padding:0;
129}
130shiki-block {
131 display: block;
132 unicode-bidi: embed;
133 font-family: monospace;
134 white-space: pre;
135}
136code {
137 border-radius: var(--radius);
138 background-color: rgba(0, 100, 100, 0.04);
139 padding: 0.2em;
140 font-size: 0.9em;
141}
142
143body {
144 font-family: "Inria Sans";
145 font-size: 12pt;
146 line-height: 1.55;
147}
148
149math {
150 font-size: 1.12em;
151}
152
153mrow:hover {
154 background-color: rgba(0, 100, 255, 0.04);
155}
156
157.logo {
158 font-weight: 1000;
159 font-size: 24px;
160}
161
162.logo a {
163 color: #666;
164 text-decoration: none;
165}
166
167.logo a:hover {
168 color: #aaa;
169}
170
171.block.hide-metadata > details > summary > header > .metadata {
172 display: none;
173}
174
175article > section > details > summary > header > h1 > .taxon {
176 display: block;
177 font-size: 0.9em;
178 color: #888;
179 padding-bottom: 5pt;
180}
181
182section
183 section[data-taxon="Reference"]
184 > details
185 > summary
186 > header
187 > h1
188 > .taxon,
189section
190 section[data-taxon="Person"]
191 > details
192 > summary
193 > header
194 > h1
195 > .taxon {
196 display: none;
197}
198
199footer > section {
200 margin-bottom: 1em;
201}
202
203footer h2 {
204 font-size: 14pt;
205}
206
207.metadata > address {
208 display: inline;
209}
210
211@media only screen and (max-width: 1000px) {
212 body {
213 margin-top: 1em;
214 margin-left: 0.5em;
215 margin-right: 0.5em;
216 transition: ease all 0.2s;
217 }
218
219 #grid-wrapper > nav {
220 display: none;
221 transition: ease all 0.2s;
222 }
223}
224
225@media only screen and (min-width: 1000px) {
226 body {
227 margin-top: 2em;
228 margin-left: 2em;
229 transition: ease all 0.2s;
230 }
231
232 #grid-wrapper {
233 display: grid;
234 grid-template-columns: 90ex;
235 }
236}
237
238body > header {
239 margin-bottom: 0.5em;
240}
241
242#grid-wrapper > article {
243 max-width: 90ex;
244 margin-right: auto;
245 grid-column: 1;
246}
247
248#grid-wrapper > nav {
249 grid-column: 2;
250}
251
252details > summary > header {
253 display: inline;
254}
255
256a.heading-link {
257 box-shadow: none;
258}
259
260details h1 {
261 font-size: 13pt;
262 display: inline;
263}
264
265section .block[data-taxon] details > summary > header > h1 {
266 font-size: 12pt;
267}
268
269span.taxon {
270 color: #444;
271 font-weight: bolder;
272}
273
274.link-list > section > details > summary > header h1 {
275 font-size: 12pt;
276}
277
278article > section > details > summary > header > h1 {
279 font-size: 1.5em;
280}
281
282details > summary {
283 list-style-type: none;
284}
285
286details > summary::marker,
287details > summary::-webkit-details-marker {
288 display: none;
289}
290
291article > section > details > summary > header {
292 display: block;
293 margin-bottom: 0.5em;
294}
295
296section.block > details {
297 margin-bottom: 0.4em;
298}
299
300section.block > details[open] {
301 margin-bottom: 1em;
302}
303
304.link-list > section.block > details {
305 margin-bottom: 0.25em;
306}
307
308nav#toc {
309 margin-left: 1em;
310}
311
312nav#toc h1 {
313 margin-top: 0;
314 font-size: 16pt;
315}
316
317nav#toc,
318nav#toc a {
319 color: #555;
320}
321
322nav#toc .link {
323 box-shadow: none;
324 text-decoration: none;
325}
326
327nav#toc a.bullet {
328 opacity: 0.7;
329 margin-left: 0.4em;
330 margin-right: 0.3em;
331 padding-left: 0.2em;
332 padding-right: 0.2em;
333 text-decoration: none;
334}
335
336nav#toc h2 {
337 font-size: 1.1em;
338}
339
340nav#toc ul {
341 list-style-type: none;
342}
343
344nav#toc li > ul {
345 padding-left: 1em;
346}
347
348nav#toc li {
349 list-style-position: inside;
350}
351
352.block {
353 border-radius: var(--radius);
354}
355
356.block:hover {
357 background-color: rgba(100, 100, 100, 0.04);
358}
359
360.block.highlighted {
361 border-style: solid;
362 border-width: 1pt;
363}
364
365.highlighted {
366 background-color: rgba(255, 255, 140, 0.3);
367 border-color: #ccc;
368}
369
370.highlighted:hover {
371 background-color: rgba(255, 255, 140, 0.6);
372 border-color: #aaa;
373}
374
375.slug,
376.doi,
377.orcid {
378 color: gray;
379 font-weight: 200;
380}
381
382.edit-button {
383 color: rgb(180, 180, 180);
384 font-weight: 200;
385}
386
387.block {
388 padding-left: 5px;
389 padding-right: 10px;
390 padding-bottom: 2px;
391 border-radius: 5px;
392}
393
394.link.external {
395 text-decoration: underline;
396}
397
398a.link.local,
399.link.local a,
400a.slug {
401 box-shadow: none;
402 text-decoration-line: underline;
403 text-decoration-style: dotted;
404}
405
406ninja-keys::part(ninja-action) {
407 white-space: nowrap;
408}
409
410body {
411 hyphens: auto;
412}
413
414table {
415 margin-bottom: 1em;
416}
417
418table.macros {
419 overflow-x: visible;
420 overflow-y: visible;
421 font-size: 0.9em;
422}
423
424table.macros td {
425 padding-left: 5pt;
426 padding-right: 15pt;
427 vertical-align: baseline;
428}
429
430th {
431 text-align: left;
432}
433
434th,
435td {
436 padding: 0 15px;
437 vertical-align: top;
438}
439
440td.macro-name,
441td.macro-body {
442 white-space: nowrap;
443}
444
445td.macro-doc {
446 font-size: 0.9em;
447}
448
449.enclosing.macro-scope > .enclosing {
450 border-radius: 2px;
451}
452
453.enclosing.macro-scope > .enclosing:hover {
454 background-color: rgba(0, 100, 255, 0.1);
455}
456
457[aria-label][role~="tooltip"]::after {
458 font-family: "Inria Sans";
459}
460
461.tooltip {
462 position: relative;
463}
464
465.inline.tooltip {
466 display: inline-block;
467}
468
469.display.tooltip {
470 display: block;
471}
472
473/* The tooltip class is applied to the span element that is the tooltip */
474
475.tooltip .tooltiptext {
476 visibility: hidden;
477 white-space: nowrap;
478 min-width: fit-content;
479 background-color: black;
480 color: #fff;
481 padding-left: 5px;
482 padding-top: 5px;
483 padding-right: 10px;
484 border-radius: 6px;
485 position: absolute;
486 z-index: 1;
487 top: 100%;
488 left: 50%;
489 margin-left: -60px;
490 opacity: 0;
491 transition: opacity 0.3s;
492}
493
494.tooltip .tooltiptext::after {
495 content: "";
496 position: absolute;
497 top: 100%;
498 left: 50%;
499 margin-left: -5px;
500 border-width: 5px;
501}
502
503/* Show the tooltip */
504
505.tooltip:hover .tooltiptext {
506 visibility: visible;
507 opacity: 1;
508}
509
510.tooltiptext a {
511 color: white;
512}
513
514.macro-doc {
515 font-style: italic;
516}
517
518.macro-name {
519 white-space: nowrap;
520}
521
522.macro-is-private {
523 color: var(--secondary);
524}
525
526blockquote {
527 border-inline-start: 1px solid var(--secondary);
528}
529
530a.slug:hover,
531a.bullet:hover,
532.edit-button:hover,
533.link:hover {
534 background-color: rgba(0, 100, 255, 0.1);
535}
536
537.link {
538 cursor: pointer;
539}
540
541a {
542 color: black;
543 text-decoration: inherit;
544}
545
546.nowrap {
547 white-space: nowrap;
548}
549
550.nocite {
551 display: none;
552}
553
554blockquote {
555 font-style: italic;
556}
557
558address {
559 display: inline;
560}
561
562.metadata ul {
563 padding-left: 0;
564 display: inline;
565}
566
567.metadata li::after {
568 content: " · ";
569}
570
571.metadata li:last-child::after {
572 content: "";
573}
574
575.metadata ul li {
576 display: inline;
577}
578
579img {
580 object-fit: cover;
581 max-width: 100%;
582}
583
584figure {
585 text-align: center;
586}
587
588figcaption {
589 font-style: italic;
590 padding: 3px;
591}
592
593mark {
594 background-color: rgb(255, 255, 151);
595}
596
597hr {
598 margin-top: 10px;
599 margin-bottom: 20px;
600 background-color: gainsboro;
601 border: 0 none;
602 width: 100%;
603 height: 2px;
604}
605
606ul,
607ol {
608 padding-bottom: 0.5em;
609}
610
611ol {
612 list-style-type: decimal;
613}
614
615ol li ol {
616 list-style-type: lower-alpha;
617}
618
619ol li ol li ol {
620 list-style-type: lower-roman;
621}
622
623.error,
624.info {
625 border-radius: 4pt;
626 padding-left: 3pt;
627 padding-right: 3pt;
628 padding-top: 1pt;
629 padding-bottom: 2pt;
630 font-weight: bold;
631}
632
633.error {
634 background-color: red;
635 color: white;
636}
637
638.info {
639 background-color: #bbb;
640 color: white;
641}
642
643.portrait {
644 float: right;
645 width: 40%;
646 border: 1px solid black;
647 margin-left: 20px;
648 margin-bottom: 5px;
649}
650.sidefigure {
651 float: right;
652 text-align: center;
653 width: 30%;
654 margin-left: 20px;
655 margin-bottom: 5px;
656}
657.constrainfigure {
658 text-align: center;
659 width: 65%;
660}
661.block[data-taxon="Example"]:hover {
662 background-color: rgba(133, 217, 102, 0.19);
663}
664.block[data-taxon="Example"] {
665 background-color: rgba(133, 217, 102, 0.08);
666}
667.block[data-taxon="Warning"]:hover {
668 background-color: rgba(255, 100, 0, 0.16);
669}
670.block[data-taxon="Warning"] {
671 background-color: rgba(255, 100, 0, 0.08);
672}
673.block[data-taxon="Counterexample"]:hover {
674 background-color: rgba(255, 100, 0, 0.16);
675}
676.block[data-taxon="Counterexample"] {
677 background-color: rgba(255, 100, 0, 0.08);
678}
679.block[data-taxon="Problem"]:hover {
680 background-color: rgba(255, 100, 0, 0.16);
681}
682.block[data-taxon="Problem"] {
683 background-color: rgba(255, 100, 0, 0.08);
684}
685.block[data-taxon="Upshot"]:hover {
686 background-color: rgba(255, 100, 0, 0.16);
687}
688.block[data-taxon="Upshot"] {
689 background-color: rgba(255, 100, 0, 0.08);
690}
691.block[data-taxon="Thesis"]:hover {
692 background-color: rgba(255, 100, 0, 0.16);
693}
694.block[data-taxon="Thesis"] {
695 background-color: rgba(255, 100, 0, 0.08);
696}
697
698.block[data-taxon="Definition"]:hover {
699 background-color: rgba(0, 100, 255, 0.1);
700}
701.block[data-taxon="Definition"] {
702 background-color: rgba(0, 100, 255, 0.04);
703}
704
705.block[data-taxon="Construction"]:hover {
706 background-color: rgba(0, 100, 255, 0.1);
707}
708.block[data-taxon="Construction"] {
709 background-color: rgba(0, 100, 255, 0.04);
710}
711.block[data-taxon="Theorem"]:hover {
712 background-color: rgba(100, 100, 255, 0.16);
713}
714.block[data-taxon="Theorem"] {
715 background-color: rgba(100, 100, 255, 0.08);
716}
717.block[data-taxon="Proof"]:hover {
718 background-color: rgba(255, 255, 255, 0.32);
719}
720.block[data-taxon="Proof"] {
721 background-color: rgba(255, 255, 255, 0.64);
722}
723.block[data-taxon="Exercise"]:hover {
724 background-color: rgba(255, 215, 45, 0.22);
725}
726.block[data-taxon="Exercise"] {
727 background-color: rgba(255, 215, 45, 0.12);
728}
729.block[data-taxon="Ordo"] {
730 font-family:"Crimson Text";
731 font-size:larger;
732}
733.block[data-taxon="Solution"]:hover {
734 background-color: rgba(255, 255, 255, 0.32);
735}
736.block[data-taxon="Solution"] {
737 background-color: rgba(255, 255, 255, 0.64);
738}
739
740kbd {
741 background-color: #eee;
742 border-radius: 3px;
743 border: 1px solid #b4b4b4;
744 box-shadow:
745 0 1px 1px rgba(0, 0, 0, 0.2),
746 0 2px 0 0 rgba(255, 255, 255, 0.7) inset;
747 color: #333;
748 display: inline-block;
749 font-size: 0.85em;
750 font-weight: 700;
751 line-height: 1;
752 padding: 2px 4px;
753 white-space: nowrap;
754}