@nuvoui/core 1.2.5 → 1.2.7

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.
Files changed (42) hide show
  1. package/README.md +2 -2
  2. package/dist/nuvoui.css +22277 -22831
  3. package/dist/nuvoui.css.map +1 -1
  4. package/dist/nuvoui.min.css +1 -1
  5. package/dist/nuvoui.min.css.map +1 -1
  6. package/package.json +2 -2
  7. package/src/styles/abstracts/_config.scss +124 -56
  8. package/src/styles/abstracts/_functions.scss +21 -61
  9. package/src/styles/base/_base.scss +67 -59
  10. package/src/styles/base/_reset.scss +11 -8
  11. package/src/styles/index.scss +28 -10
  12. package/src/styles/layouts/_container.scss +1 -2
  13. package/src/styles/layouts/_flex.scss +442 -154
  14. package/src/styles/layouts/_grid.scss +145 -75
  15. package/src/styles/mixins-map.json +482 -0
  16. package/src/styles/mixins-map.scss +1 -1
  17. package/src/styles/themes/_theme.scss +114 -94
  18. package/src/styles/utilities/_alignment.scss +40 -13
  19. package/src/styles/utilities/_animations.scss +165 -105
  20. package/src/styles/utilities/_backdrop-filters.scss +156 -107
  21. package/src/styles/utilities/_borders.scss +329 -143
  22. package/src/styles/utilities/_colors.scss +24 -25
  23. package/src/styles/utilities/_container-queries.scss +7 -7
  24. package/src/styles/utilities/_cursor.scss +10 -17
  25. package/src/styles/utilities/_display.scss +234 -85
  26. package/src/styles/utilities/_helpers.scss +5 -5
  27. package/src/styles/utilities/_media-queries.scss +24 -27
  28. package/src/styles/utilities/_opacity.scss +15 -31
  29. package/src/styles/utilities/_position.scss +129 -66
  30. package/src/styles/utilities/_shadows.scss +25 -31
  31. package/src/styles/utilities/_sizing.scss +269 -108
  32. package/src/styles/utilities/_spacing.scss +254 -156
  33. package/src/styles/utilities/_tooltips.scss +35 -31
  34. package/src/styles/utilities/_transforms.scss +179 -156
  35. package/src/styles/utilities/_transitions.scss +134 -68
  36. package/src/styles/utilities/_typography.scss +341 -127
  37. package/src/styles/utilities/_z-index.scss +79 -49
  38. package/src/styles/abstracts/_index.scss +0 -1
  39. package/src/styles/base/_index.scss +0 -2
  40. package/src/styles/layouts/_index.scss +0 -3
  41. package/src/styles/themes/_index.scss +0 -1
  42. package/src/styles/utilities/_index.scss +0 -23
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nuvoui/core",
3
- "version": "1.2.5",
3
+ "version": "1.2.7",
4
4
  "description": "NuvoUI is a human-friendly SCSS framework designed for simplicity, and modern responsive designs.",
5
5
  "author": {
6
6
  "name": "AALA IT Solutions",
@@ -41,7 +41,7 @@
41
41
  "prebuild": "npm run clean",
42
42
  "build": "npm run build:scss && npm run build:minify",
43
43
  "dev": "sass src/styles/index.scss:dist/nuvoui.css --watch",
44
- "prepublishOnly": "npm run lint && npm run build"
44
+ "prepublishOnly": "npm run build"
45
45
  },
46
46
  "repository": {
47
47
  "type": "git",
@@ -1,17 +1,30 @@
1
1
  @use "sass:map";
2
2
  @use "sass:math";
3
+ @use "sass:list";
3
4
 
4
5
  // Framework Configuration Options
5
6
  $generate-utility-classes: true !default;
6
7
  $enable-dark-mode: true !default;
7
8
  $enable-rtl: true !default;
8
- $enable-debugger: false !default; // todo: spell mistake
9
+ $enable-debugger: false !default;
9
10
  $enable-reduced-motion: true !default; // todo: pending
10
11
  $enable-container-queries: false !default; // todo: pending
11
12
 
13
+ // if just a number passed, it will be assumed as px
14
+ $default-unit: px !default;
15
+
12
16
  // Text
13
- $base-size: 16 !default;
14
- $font-family: system-ui, -apple-system, "BlinkMacSystemFont", 'Segoe UI', "Roboto", "Oxygen", "Ubuntu", "Cantarell", sans-serif !default;
17
+ $base-size: 16px !default;
18
+ $font-family:
19
+ system-ui,
20
+ -apple-system,
21
+ "BlinkMacSystemFont",
22
+ "Segoe UI",
23
+ "Roboto",
24
+ "Oxygen",
25
+ "Ubuntu",
26
+ "Cantarell",
27
+ sans-serif !default;
15
28
 
16
29
  // Global variables that might be used across different modules
17
30
  $column-count: 12 !default; // todo: pending
@@ -37,27 +50,60 @@ $color-primitives: (
37
50
  "pink": #ec4899,
38
51
  ) !default;
39
52
 
40
- $theme-tokens: ("background", "foreground", "surface", "border", "text-primary", "text-secondary") !default;
41
-
42
53
  // Default theme config (can be overridden)
43
54
  $light-theme: (
44
- "background": #fafafa,
45
- "foreground": #1a1a1a,
46
- "surface": #fff,
47
- "border": #e5e7eb,
48
- "text-primary": #1a1a1a,
49
- "text-secondary": #4b5563,
55
+ "bg-base": #fbfafc,
56
+ "bg-alternate": #1a1a1a,
57
+ "bg-surface": #fff,
58
+ "border-base": #e5e7eb,
59
+ "text-color": #1a1a1a,
60
+ "text-muted": #1a1a1a8a,
61
+ "text-subtle": #1a1a1a50,
62
+ "text-inverted": #f1f1f1,
50
63
  ) !default;
51
64
 
65
+ // Extract theme tokens from light theme keys
66
+ // Users can still override this if they want to use only a subset
67
+ $theme-tokens: map.keys($light-theme) !default;
68
+
52
69
  $dark-theme: (
53
- "background": #1a1a1a,
54
- "foreground": #f1f1f1,
55
- "surface": #2e2e2e,
56
- "border": #2e2e2e,
57
- "text-primary": #f1f1f1,
58
- "text-secondary": #a3a3a3,
70
+ "bg-base": #1a1a1a,
71
+ "bg-alternate": #f1f1f1,
72
+ "bg-surface": #2e2e2e,
73
+ "border-base": #2e2e2e,
74
+ "text-color": #f1f1f1,
75
+ "text-muted": #f1f1f18a,
76
+ "text-subtle": #f1f1f150,
77
+ "text-inverted": #1a1a1a,
59
78
  ) !default;
60
79
 
80
+ $basic-colors: (
81
+ "black": #000,
82
+ "white": #fff,
83
+ "transparent": transparent,
84
+ ) !default;
85
+
86
+ @function validate-theme-tokens($theme-map, $required-tokens) {
87
+ $missing-tokens: ();
88
+
89
+ @each $token in $required-tokens {
90
+ @if not map.has-key($theme-map, $token) {
91
+ $missing-tokens: list.append($missing-tokens, $token, comma);
92
+ }
93
+ }
94
+
95
+ @if list.length($missing-tokens) > 0 {
96
+ @error "Theme is missing required tokens: #{$missing-tokens}";
97
+ }
98
+
99
+ @return list.length($missing-tokens) == 0;
100
+ }
101
+
102
+ // Validate both themes
103
+ @debug validate-theme-tokens($light-theme, $theme-tokens);
104
+
105
+ @debug validate-theme-tokens($dark-theme, $theme-tokens);
106
+
61
107
  $shadow-colors: (
62
108
  "default": rgb(0 0 0 / 10%),
63
109
  "dark": rgb(0 0 0 / 20%),
@@ -85,55 +131,77 @@ $grid-item-sizes: (
85
131
 
86
132
  // _variables.scss
87
133
  $font-sizes: (
88
- "xs": 0.75rem, // 12px
89
- "sm": 0.875rem, // 14px
90
- "md": 1rem, // 16px
91
- "lg": 1.25rem, // 20px
92
- "xl": 1.5rem, // 24px
93
- "2xl": 1.75rem, // 28px
94
- "3xl": 2rem, // 32px
95
- "4xl": 2.5rem // 40px
134
+ "xs": 0.75rem,
135
+ // 12px
136
+ "sm": 0.875rem,
137
+ // 14px
138
+ "md": 1rem,
139
+ "base": 1rem,
140
+ // 16px
141
+ "lg": 1.25rem,
142
+ // 20px
143
+ "xl": 1.5rem,
144
+ // 24px
145
+ "2xl": 1.75rem,
146
+ // 28px
147
+ "3xl": 2rem,
148
+ // 32px
149
+ "4xl": 2.5rem, // 40px
96
150
  ) !default;
97
151
 
98
152
  // Updated spacing map
99
153
  $spacings: (
100
154
  0: 0,
101
- 1: 0.25rem, // 4px
102
- 2: 0.5rem, // 8px
103
- 3: 0.75rem, // 12px
104
- 4: 1rem, // 16px
105
- 5: 1.25rem, // 20px
106
- 6: 1.5rem, // 24px
107
- 8: 2rem, // 32px
108
- 10: 2.5rem, // 40px
109
- 12: 3rem, // 48px
110
- 16: 4rem, // 64px
111
- 20: 5rem, // 80px
112
- 24: 6rem, // 96px
113
- 32: 8rem, // 128px
114
- 40: 10rem, // 160px
115
- 48: 12rem, // 192px
116
- 56: 14rem, // 224px
117
- 64: 16rem, // 256px
118
- ) !default;
155
+ 1: 0.25rem,
156
+ // 4px
157
+ 2: 0.5rem,
158
+ // 8px
159
+ 3: 0.75rem,
160
+ // 12px
161
+ 4: 1rem,
162
+ // 16px
163
+ 5: 1.25rem,
164
+ // 20px
165
+ 6: 1.5rem,
166
+ // 24px
167
+ 8: 2rem,
168
+ // 32px
169
+ 10: 2.5rem,
170
+ // 40px
171
+ 12: 3rem,
172
+ // 48px
173
+ 16: 4rem,
174
+ // 64px
175
+ 20: 5rem,
176
+ // 80px
177
+ 24: 6rem,
178
+ // 96px
179
+ 32: 8rem,
180
+ // 128px
181
+ 40: 10rem,
182
+ // 160px
183
+ 48: 12rem,
184
+ // 192px
185
+ 56: 14rem,
186
+ // 224px
187
+ 64: 16rem, // 256px
188
+ ) !default;
119
189
 
120
190
  $percentages: (0, 5, 10, 20, 25, 30, 40, 50, 60, 70, 75, 80, 90, 100) !default;
121
191
 
122
-
123
- // if just a number passed, it will be assumed as px
124
- $default-unit: px !default;
125
-
126
192
  // Common border width values that are most useful
127
193
  $border-widths: (0, 1, 2, 4, 8) !default;
128
194
 
129
195
  // Common border radius values that are most useful
130
196
  $border-radii: (
131
- 'xs': 0.25rem,
132
- 'sm': 0.375rem,
133
- 'md': 0.5rem,
134
- 'lg': 0.75rem,
135
- 'xl': 1rem,
136
- '2xl': 1.25rem,
137
- 'full': 9999px,
138
- 'none': 0
139
- ) !default;
197
+ "xs": 0.25rem,
198
+ "sm": 0.375rem,
199
+ "md": 0.5rem,
200
+ "lg": 0.75rem,
201
+ "xl": 1rem,
202
+ "2xl": 1.25rem,
203
+ "full": 9999px,
204
+ "none": 0,
205
+ ) !default;
206
+
207
+ $parent-selector: "" !default;
@@ -13,18 +13,21 @@
13
13
  @return $string;
14
14
  }
15
15
 
16
- @function get-breakpoint-value($bp) {
17
- @if map.has-key($breakpoints, $bp) {
18
- @return map.get($breakpoints, $bp);
16
+ @function get-breakpoint-value($bp, $debug: false) {
17
+ @if map.has-key($breakpoints, #{$bp}) {
18
+ @return map.get($breakpoints, #{$bp});
19
19
  } @else if meta.type-of($bp) == number {
20
20
  @return $bp;
21
21
  } @else {
22
- @warn 'Invalid breakpoint: #{$bp}';
22
+ @error 'Invalid breakpoint: #{$bp}';
23
23
  @return null;
24
24
  }
25
25
  }
26
26
 
27
27
  @function strip-unit($value) {
28
+ @if meta.type-of($value) != number {
29
+ @error "strip-unit() requires a number";
30
+ }
28
31
  @return math.div($value, ($value * 0 + 1));
29
32
  }
30
33
 
@@ -38,83 +41,40 @@
38
41
  }
39
42
  }
40
43
 
41
- @function get-unit($value) {
42
- $value-str: #{$value};
43
-
44
- // Relative length units
45
- @if string.index($value-str, "em") {
46
- @return "em";
47
- } @else if string.index($value-str, "rem") {
48
- @return "rem";
49
- } @else if string.index($value-str, "%") {
50
- @return "%";
51
- }
52
-
53
- // Viewport units
54
- @else if string.index($value-str, "vw") {
55
- @return "vw";
56
- } @else if string.index($value-str, "vh") {
57
- @return "vh";
58
- } @else if string.index($value-str, "vmin") {
59
- @return "vmin";
60
- } @else if string.index($value-str, "vmax") {
61
- @return "vmax";
62
- }
63
-
64
- // Absolute length units
65
- @else if string.index($value-str, "px") {
66
- @return "px";
67
- } @else if string.index($value-str, "cm") {
68
- @return "cm";
69
- } @else if string.index($value-str, "mm") {
70
- @return "mm";
71
- } @else if string.index($value-str, "in") {
72
- @return "in";
73
- } @else if string.index($value-str, "pt") {
74
- @return "pt";
75
- } @else if string.index($value-str, "pc") {
76
- @return "pc";
77
- }
78
-
79
- // Return empty string if no unit found
80
- @return "";
81
- }
82
-
83
44
  /**
84
45
  * Ensures a value has a unit, adding $default-unit if none exists
85
46
  * @param {Number|String} $val - The value to check
86
47
  * @return {String} - The value with units
87
48
  */
88
- @function fix-units($val, $unit: $default-unit) {
89
-
90
- @if meta.type-of($val) != number and meta.type-of($val) != string{
49
+ @function fix-units($val, $unit: $default-unit, $debug: null) {
50
+ @if meta.type-of($val) != number and meta.type-of($val) != string {
91
51
  @error "fix-units() requires a number or string value";
92
52
  @return null;
93
53
  }
94
54
 
95
55
  @if meta.type-of($val) == number {
96
- @if string.length(math.unit($val)) == 0 {
97
- @return string.unquote($val + $unit);
56
+ @if math.is-unitless($val) {
57
+ @return $val + $unit;
98
58
  }
99
59
  @return $val;
100
60
  }
101
61
 
102
62
  $val: strip-quotes($val);
103
63
 
104
- @if $val == auto or $val == inherit or $val == initial or
105
- $val == 'min-content' or $val == 'max-content' or $val == 'fit-content' {
106
- @return string.unquote($val);
64
+ @if $val == auto or $val == inherit or $val == initial or $val == "min-content" or $val == "max-content" or $val == "fit-content" {
65
+ @return #{$val};
107
66
  }
108
67
 
109
- @if string.index($val, "px") or string.index($val, "em") or string.index($val, "rem") or
110
- string.index($val, "%") or string.index($val, "vh") or string.index($val, "vw") or
111
- string.index($val, "vmin") or string.index($val, "vmax") {
112
- @return string.unquote($val);
68
+ @if string.index($val, "px") or string.index($val, "em") or string.index($val, "rem") or string.index($val, "%") or string.index($val, "vh") or string.index($val, "vw") or string.index($val, "vmin") or string.index($val, "vmax") {
69
+ @return #{$val};
113
70
  }
114
71
 
115
- @return string.unquote($val) + $unit;
116
- }
72
+ @if $debug {
73
+ @debug "fix-units() value: " + $val;
74
+ }
117
75
 
76
+ @return string.unquote($val + $unit);
77
+ }
118
78
 
119
79
  @function strip-quotes($string) {
120
80
  @if meta.type-of($string) == string {
@@ -150,5 +110,5 @@
150
110
  $index: string.index($string, $delimiter);
151
111
  }
152
112
 
153
- @return list.append($result, str-trim($string));
113
+ @return list.append($result, str-trim($string));
154
114
  }
@@ -1,104 +1,111 @@
1
- @use 'sass:map';
1
+ @use "sass:map";
2
2
 
3
3
  /* Import variables */
4
- @use '../abstracts' as *;
5
- @use '../utilities/media-queries' as media;
6
-
4
+ @use "../abstracts/config" as *;
5
+ @use "../utilities/media-queries" as media;
6
+
7
7
  :root {
8
8
  --font-family-base: #{$font-family};
9
9
  }
10
10
 
11
11
  // Base typography styles
12
12
  html {
13
- font-size: $base-size;
13
+ font-size: $base-size;
14
14
  }
15
15
 
16
- body {
16
+ body#{$parent-selector} {
17
17
  font-family: var(--font-family-base);
18
18
  font-weight: 400;
19
19
  line-height: 1.5;
20
- color: var(--text-primary);
20
+ color: var(--text-default);
21
21
  }
22
22
 
23
23
  // Headings
24
- h1, h2, h3, h4, h5, h6 {
24
+ #{$parent-selector} h1,
25
+ #{$parent-selector} h2,
26
+ #{$parent-selector} h3,
27
+ #{$parent-selector} h4,
28
+ #{$parent-selector} h5,
29
+ #{$parent-selector} h6 {
25
30
  margin-bottom: 0.5em;
26
31
  font-family: var(--font-family-heading);
27
32
  font-weight: 700;
28
33
  line-height: 1.2;
29
34
  }
30
35
 
31
- h1 {
32
- font-size: map.get($font-sizes, '4xl');
36
+ #{$parent-selector} h1 {
37
+ font-size: map.get($font-sizes, "4xl");
33
38
  }
34
39
 
35
- h2 {
36
- font-size: map.get($font-sizes, '3xl');
40
+ #{$parent-selector} h2 {
41
+ font-size: map.get($font-sizes, "3xl");
37
42
  }
38
43
 
39
- h3 {
40
- font-size: map.get($font-sizes, '2xl');
44
+ #{$parent-selector} h3 {
45
+ font-size: map.get($font-sizes, "2xl");
41
46
  }
42
47
 
43
- h4 {
44
- font-size: map.get($font-sizes, 'xl');
48
+ #{$parent-selector} h4 {
49
+ font-size: map.get($font-sizes, "xl");
45
50
  }
46
51
 
47
- h5 {
48
- font-size: map.get($font-sizes, 'lg');
52
+ #{$parent-selector} h5 {
53
+ font-size: map.get($font-sizes, "lg");
49
54
  }
50
55
 
51
- h6 {
52
- font-size: map.get($font-sizes, 'base');
56
+ #{$parent-selector} h6 {
57
+ font-size: map.get($font-sizes, "base");
53
58
  }
54
59
 
55
60
  // Paragraphs
56
- p {
61
+ #{$parent-selector} p {
57
62
  margin-bottom: 1rem;
58
63
  }
59
64
 
60
65
  // Small text
61
- small {
62
- font-size: map.get($font-sizes, 'sm');
66
+ #{$parent-selector} small {
67
+ font-size: map.get($font-sizes, "sm");
63
68
  }
64
69
 
65
70
  // Buttons
66
- button {
71
+ #{$parent-selector} button {
67
72
  padding: 0.5rem 1rem;
68
73
  border: 0;
69
74
  border-radius: 0.25rem;
70
75
  font-family: var(--font-family-base);
71
76
  cursor: pointer;
72
- transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
73
-
77
+ transition:
78
+ background-color 0.2s ease-in-out,
79
+ color 0.2s ease-in-out;
80
+
74
81
  &:focus {
75
82
  outline: none;
76
83
  }
77
84
 
78
85
  &:disabled {
79
- background-color: #E0E0E0; // Disabled button color
80
- color: #A0A0A0; // Disabled text color
86
+ background-color: #e0e0e0; // Disabled button color
87
+ color: #a0a0a0; // Disabled text color
81
88
  cursor: not-allowed;
82
89
  }
83
90
 
84
- // Default styling when no bg-* class is present
85
- &:not([class*="bg-"]) {
86
- background-color: var(--button-bg-color, #007BFF); // Default button color
87
- color: var(--button-text-color, #FFF);
88
-
91
+ // Default styling when no bg-* class is present
92
+ &:not([class*="bg-"]) {
93
+ background-color: var(--button-bg-color, #007bff); // Default button color
94
+ color: var(--button-text-color, #fff);
95
+
89
96
  &:hover {
90
- background-color: var(--button-bg-color-hover, #0056B3);
97
+ background-color: var(--button-bg-color-hover, #0056b3);
91
98
  }
92
99
  }
93
100
  }
94
101
 
95
102
  // Inputs
96
- input[type="text"],
97
- input[type="email"],
98
- input[type="password"],
99
- input[type="number"],
100
- input[type="search"],
101
- textarea {
103
+ #{$parent-selector} input[type="text"],
104
+ #{$parent-selector} input[type="email"],
105
+ #{$parent-selector} input[type="password"],
106
+ #{$parent-selector} input[type="number"],
107
+ #{$parent-selector} input[type="search"],
108
+ #{$parent-selector} textarea {
102
109
  padding: 0.5rem;
103
110
  border: 1px solid var(--border);
104
111
  border-radius: 0.25rem;
@@ -113,13 +120,13 @@ textarea {
113
120
  }
114
121
 
115
122
  // Checkboxes and Radio Buttons
116
- input[type="checkbox"],
117
- input[type="radio"] {
123
+ #{$parent-selector} input[type="checkbox"],
124
+ #{$parent-selector} input[type="radio"] {
118
125
  margin-right: 0.5rem; // Space between input and label
119
126
  }
120
127
 
121
128
  // Selects
122
- select {
129
+ #{$parent-selector} select {
123
130
  padding: 0.5rem;
124
131
  border: 1px solid var(--border);
125
132
  border-radius: 0.25rem;
@@ -134,7 +141,7 @@ select {
134
141
  }
135
142
 
136
143
  // Blockquotes
137
- blockquote {
144
+ #{$parent-selector} blockquote {
138
145
  margin: 1rem 0;
139
146
  padding: 0.5rem 1rem;
140
147
  border-left: 4px solid var(--border);
@@ -142,33 +149,34 @@ blockquote {
142
149
  }
143
150
 
144
151
  // Horizontal Rule
145
- hr {
152
+ #{$parent-selector} hr {
146
153
  border: none;
147
154
  border-top: 1px solid var(--border);
148
155
  margin: 1rem 0;
149
156
  }
150
157
 
151
158
  // Images
152
- img {
159
+ #{$parent-selector} img {
153
160
  max-width: 100%; // Responsive images
154
161
  height: auto;
155
162
  }
156
163
 
157
164
  // Figures and Captions
158
- figure {
165
+ #{$parent-selector} figure {
159
166
  margin: 1rem 0;
160
167
  }
161
168
 
162
- figcaption {
169
+ #{$parent-selector} figcaption {
163
170
  font-size: 0.875rem; // Smaller font for captions
164
- color: var(--text-secondary, #666); // Optional secondary text color
171
+ color: var(--text-muted, #666); // Optional secondary text color
165
172
  }
166
173
 
167
174
  // Links
168
- a {
175
+ #{$parent-selector} a {
169
176
  transition: color 0.2s ease-in-out;
170
177
 
171
- &:not([class*="text-"]){ // document: if no hover or normal text provided it will use the default link color
178
+ &:not([class*="text-"]) {
179
+ // document: if no hover or normal text provided it will use the default link color
172
180
  color: var(--link-color);
173
181
 
174
182
  &:hover {
@@ -178,12 +186,12 @@ a {
178
186
  }
179
187
 
180
188
  // Labels
181
- label[for] {
189
+ #{$parent-selector} label[for] {
182
190
  cursor: pointer;
183
191
  }
184
192
 
185
193
  // todo: add to doc
186
- .sr-only {
194
+ #{$parent-selector} .sr-only {
187
195
  position: absolute !important;
188
196
  width: 1px !important;
189
197
  height: 1px !important;
@@ -195,16 +203,16 @@ label[for] {
195
203
  border: 0 !important;
196
204
  }
197
205
 
198
- code {
199
- font-family: 'Courier New', Courier, monospace;
200
- background-color: #f8f8f8;
201
- color: #d63384;
206
+ #{$parent-selector} code {
207
+ font-family: "Courier New", Courier, monospace;
208
+ background-color: #f8f8f8;
209
+ color: #d63384;
202
210
  padding: 2px 6px;
203
211
  border-radius: 3px;
204
212
  white-space: nowrap;
205
213
 
206
214
  @include media.dark-mode {
207
- background-color: #333;
208
- color: #f8f8f2;
215
+ background-color: #333;
216
+ color: #f8f8f2;
209
217
  }
210
218
  }
@@ -9,7 +9,6 @@
9
9
  padding: 0;
10
10
  }
11
11
 
12
-
13
12
  // Remove default margin and padding
14
13
  body,
15
14
  h1,
@@ -27,7 +26,7 @@ dd {
27
26
  padding: 0;
28
27
  }
29
28
 
30
- // Prevent font size inflation
29
+ // Prevent font size inflation
31
30
  html {
32
31
  -moz-text-size-adjust: none; /* stylelint-disable-line */
33
32
  -webkit-text-size-adjust: none; /* stylelint-disable-line */
@@ -50,8 +49,13 @@ body {
50
49
  }
51
50
 
52
51
  // Set shorter line heights on headings and interactive elements
53
- h1, h2, h3, h4,
54
- button, input, label {
52
+ h1,
53
+ h2,
54
+ h3,
55
+ h4,
56
+ button,
57
+ input,
58
+ label {
55
59
  line-height: 1.1;
56
60
  }
57
61
 
@@ -91,8 +95,8 @@ select {
91
95
  }
92
96
 
93
97
  // Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed
94
- ul[role='list'],
95
- ol[role='list'] {
98
+ ul[role="list"],
99
+ ol[role="list"] {
96
100
  list-style: none;
97
101
  margin: 0;
98
102
  padding: 0;
@@ -100,7 +104,7 @@ ol[role='list'] {
100
104
  // Modern properties
101
105
  padding-inline-start: 0; // Replaces padding-left
102
106
  margin-block: 0; // Replaces margin-top/bottom
103
-
107
+
104
108
  & > li {
105
109
  margin: 0;
106
110
  padding: 0;
@@ -125,7 +129,6 @@ textarea:not([rows]) {
125
129
  scroll-margin-block: 5ex;
126
130
  }
127
131
 
128
-
129
132
  // Remove all animations and transitions for people that prefer not to see them
130
133
  @media (prefers-reduced-motion: reduce) {
131
134
  *,