1/* CSS Reset by Andy Bell, https://piccalil.li/blog/a-more-modern-css-reset/ */
2
3/* Box sizing rules */
4*,
5*::before,
6*::after {
7 box-sizing: border-box;
8}
9
10/* Prevent font size inflation */
11html {
12 -moz-text-size-adjust: none;
13 -webkit-text-size-adjust: none;
14 text-size-adjust: none;
15}
16
17/* Remove default margin in favour of better control in authored CSS */
18body,
19h1,
20h2,
21h3,
22h4,
23p,
24figure,
25blockquote,
26dl,
27dd {
28 margin-block-end: 0;
29}
30
31/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
32ul[role="list"],
33ol[role="list"] {
34 list-style: none;
35}
36
37/* Set core body defaults */
38body {
39 min-height: 100vh;
40 line-height: 1.5;
41}
42
43/* Set shorter line heights on headings and interactive elements */
44h1,
45h2,
46h3,
47h4,
48button,
49input,
50label {
51 line-height: 1.1;
52}
53
54/* Balance text wrapping on headings */
55h1,
56h2,
57h3,
58h4 {
59 text-wrap: balance;
60}
61
62/* A elements that don't have a class get default styles */
63a:not([class]) {
64 text-decoration-skip-ink: auto;
65 color: currentColor;
66}
67
68/* Make images easier to work with */
69img,
70picture {
71 max-width: 100%;
72 display: block;
73}
74
75/* Inherit fonts for inputs and buttons */
76input,
77button,
78textarea,
79select {
80 font-family: inherit;
81 font-size: inherit;
82}
83
84/* Make sure textareas without a rows attribute are not tiny */
85textarea:not([rows]) {
86 min-height: 10em;
87}
88
89/* Anything that has been anchored to should have extra scroll margin */
90:target {
91 scroll-margin-block: 5ex;
92}