bullframe.css 5.1.0 → 6.1.0
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/CHANGELOG.md +63 -2
- package/LICENSE +1 -1
- package/README.md +81 -445
- package/dist/css/bullframe-classless-dark.css +1260 -892
- package/dist/css/bullframe-classless-dark.css.map +1 -1
- package/dist/css/bullframe-classless-dark.min.css +1 -3
- package/dist/css/bullframe-classless-dark.min.css.map +1 -1
- package/dist/css/bullframe-classless-system-default.css +1307 -908
- package/dist/css/bullframe-classless-system-default.css.map +1 -1
- package/dist/css/bullframe-classless-system-default.min.css +1 -3
- package/dist/css/bullframe-classless-system-default.min.css.map +1 -1
- package/dist/css/bullframe-classless.css +1083 -713
- package/dist/css/bullframe-classless.css.map +1 -1
- package/dist/css/bullframe-classless.min.css +1 -3
- package/dist/css/bullframe-classless.min.css.map +1 -1
- package/dist/css/bullframe-dark.css +2166 -1541
- package/dist/css/bullframe-dark.css.map +1 -1
- package/dist/css/bullframe-dark.min.css +1 -3
- package/dist/css/bullframe-dark.min.css.map +1 -1
- package/dist/css/bullframe-system-default.css +2083 -1438
- package/dist/css/bullframe-system-default.css.map +1 -1
- package/dist/css/bullframe-system-default.min.css +1 -3
- package/dist/css/bullframe-system-default.min.css.map +1 -1
- package/dist/css/bullframe-utilities.css +846 -503
- package/dist/css/bullframe-utilities.css.map +1 -1
- package/dist/css/bullframe-utilities.min.css +1 -2
- package/dist/css/bullframe-utilities.min.css.map +1 -1
- package/dist/css/bullframe.css +1963 -1328
- package/dist/css/bullframe.css.map +1 -1
- package/dist/css/bullframe.min.css +1 -3
- package/dist/css/bullframe.min.css.map +1 -1
- package/package.json +74 -28
- package/.browserslistrc +0 -3
- package/.editorconfig +0 -15
- package/.htmlhintrc +0 -12
- package/.prettierignore +0 -1
- package/.stylelintignore +0 -3
- package/.stylelintrc.json +0 -26
- package/dist/apple-touch-icon.png +0 -0
- package/dist/css/bullframe-classless-dark-prefers.css +0 -1280
- package/dist/css/bullframe-classless-dark-prefers.css.map +0 -1
- package/dist/css/bullframe-classless-dark-prefers.min.css +0 -3
- package/dist/css/bullframe-classless-dark-prefers.min.css.map +0 -1
- package/dist/css/bullframe-dark-prefers.css +0 -2296
- package/dist/css/bullframe-dark-prefers.css.map +0 -1
- package/dist/css/bullframe-dark-prefers.min.css +0 -3
- package/dist/css/bullframe-dark-prefers.min.css.map +0 -1
- package/dist/docs/demo/index.html +0 -1154
- package/dist/favicon-16x16.png +0 -0
- package/dist/favicon-32x32.png +0 -0
- package/dist/favicon.ico +0 -0
- package/dist/index.css +0 -1
- package/dist/index.js.map +0 -1
- package/dist/placeholder-img-800x400.jpg +0 -0
- package/dist/video-poster.png +0 -0
- package/prettier.config.js +0 -26
- package/src/scss/bullframe-classless-dark-prefers.scss +0 -2
- package/src/scss/bullframe-classless-dark.scss +0 -2
- package/src/scss/bullframe-classless-system-default.scss +0 -2
- package/src/scss/bullframe-classless.scss +0 -49
- package/src/scss/bullframe-dark-prefers.scss +0 -2
- package/src/scss/bullframe-dark.scss +0 -2
- package/src/scss/bullframe-system-default.scss +0 -2
- package/src/scss/bullframe-utilities.scss +0 -21
- package/src/scss/bullframe.scss +0 -49
- package/src/scss/custom/_author-styles.scss +0 -5
- package/src/scss/forms/_forms-normalization.scss +0 -300
- package/src/scss/forms/_forms-styling-radio-checkbox.scss +0 -81
- package/src/scss/forms/_forms-styling-range.scss +0 -106
- package/src/scss/forms/_forms-styling-select.scss +0 -58
- package/src/scss/forms/_forms-styling.scss +0 -118
- package/src/scss/miscellaneous/_misc-accessibility.scss +0 -36
- package/src/scss/miscellaneous/_misc-anchors.scss +0 -37
- package/src/scss/miscellaneous/_misc-embedded-content.scss +0 -117
- package/src/scss/miscellaneous/_misc-focus.scss +0 -80
- package/src/scss/miscellaneous/_misc-interactive.scss +0 -48
- package/src/scss/miscellaneous/_misc-layout.scss +0 -30
- package/src/scss/miscellaneous/_misc-lists.scss +0 -53
- package/src/scss/miscellaneous/_misc-scrolling.scss +0 -5
- package/src/scss/miscellaneous/_misc-shame.scss +0 -37
- package/src/scss/miscellaneous/_misc-tables.scss +0 -53
- package/src/scss/mixins/_mixin-dark-prefers.scss +0 -413
- package/src/scss/mixins/_mixin-dark.scss +0 -415
- package/src/scss/mixins/_mixin-grid-flex.scss +0 -80
- package/src/scss/mixins/_mixin-layout.scss +0 -42
- package/src/scss/mixins/_mixin-texts.scss +0 -37
- package/src/scss/typography/_typography-blockquotes.scss +0 -28
- package/src/scss/typography/_typography-headings.scss +0 -45
- package/src/scss/typography/_typography-html-body.scss +0 -75
- package/src/scss/typography/_typography-misc.scss +0 -90
- package/src/scss/typography/_typography-monospaced-elements.scss +0 -59
- package/src/scss/utilities/_utility-buttons.scss +0 -73
- package/src/scss/utilities/_utility-debugging.scss +0 -31
- package/src/scss/utilities/_utility-embeds.scss +0 -34
- package/src/scss/utilities/_utility-filters.scss +0 -21
- package/src/scss/utilities/_utility-form-states.scss +0 -89
- package/src/scss/utilities/_utility-global-dark-classless.scss +0 -3
- package/src/scss/utilities/_utility-global-dark-prefers-classless.scss +0 -3
- package/src/scss/utilities/_utility-global-dark-prefers.scss +0 -3
- package/src/scss/utilities/_utility-global-dark-scrollbars.scss +0 -34
- package/src/scss/utilities/_utility-global-dark.scss +0 -4
- package/src/scss/utilities/_utility-global-system-default-classless.scss +0 -3
- package/src/scss/utilities/_utility-global-system-default.scss +0 -3
- package/src/scss/utilities/_utility-grid-system.scss +0 -140
- package/src/scss/utilities/_utility-layout.scss +0 -187
- package/src/scss/utilities/_utility-lists.scss +0 -17
- package/src/scss/utilities/_utility-print.scss +0 -101
- package/src/scss/utilities/_utility-reduced-motion.scss +0 -29
- package/src/scss/utilities/_utility-spacing.scss +0 -148
- package/src/scss/utilities/_utility-tables.scss +0 -34
- package/src/scss/utilities/_utility-texts.scss +0 -225
- package/src/scss/utilities/_utility-z-index.scss +0 -83
- package/src/scss/variables/_variables-breakpoints.scss +0 -6
- package/src/scss/variables/_variables-colors.scss +0 -34
- package/src/scss/variables/_variables-spacing.scss +0 -24
- package/src/scss/variables/_variables-texts.scss +0 -8
- package/vite.config.js +0 -148
|
@@ -1,5 +1,87 @@
|
|
|
1
|
-
/* ! Bullframe CSS
|
|
2
|
-
|
|
1
|
+
/* ! Bullframe CSS v6.1.0 | MIT License | https://github.com/marcop135/bullframe.css */
|
|
2
|
+
|
|
3
|
+
/* Always-dark classless build. */
|
|
4
|
+
|
|
5
|
+
/* Classless build: semantic element styles only (no .bf-* classes). */
|
|
6
|
+
|
|
7
|
+
/* Variables */
|
|
8
|
+
/* Design tokens (--bf-*). Shared by every build variant.
|
|
9
|
+
* Override on :root (or a scope) to theme without rebuilding. */
|
|
10
|
+
|
|
11
|
+
:root {
|
|
12
|
+
/* Neutrals */
|
|
13
|
+
--bf-white: rgb(255 255 255);
|
|
14
|
+
--bf-light: rgb(240 240 240);
|
|
15
|
+
--bf-gray-light-extra: rgb(233 233 233);
|
|
16
|
+
--bf-gray-light: rgb(204 204 204);
|
|
17
|
+
--bf-gray: rgb(153 153 153);
|
|
18
|
+
--bf-gray-dark: rgb(102 102 102);
|
|
19
|
+
--bf-gray-dark-extra: rgb(51 51 51);
|
|
20
|
+
--bf-dark: rgb(34 34 34);
|
|
21
|
+
--bf-dark-extra: rgb(17 17 17);
|
|
22
|
+
--bf-black: rgb(0 0 0);
|
|
23
|
+
|
|
24
|
+
/* Highlight / mark */
|
|
25
|
+
--bf-yellow-light: rgb(255 255 153);
|
|
26
|
+
--bf-yellow: rgb(255 255 0);
|
|
27
|
+
--bf-orange: rgb(255 165 0);
|
|
28
|
+
|
|
29
|
+
/* Accent: WCAG AA on white (links 4.5:1) and white-on-blue buttons (4.5:1) */
|
|
30
|
+
--bf-blue: rgb(0 86 179);
|
|
31
|
+
--bf-blue-light: rgb(0 65 135);
|
|
32
|
+
--bf-blue-light-extra: rgb(190 216 254);
|
|
33
|
+
|
|
34
|
+
/* Invalid / error */
|
|
35
|
+
--bf-red: rgb(255 0 0);
|
|
36
|
+
|
|
37
|
+
/* Focus ring (prefers-contrast: more raises colour for WCAG 1.4.11) */
|
|
38
|
+
--bf-focus-ring-color: var(--bf-orange);
|
|
39
|
+
--bf-focus-ring-width: 0.2rem;
|
|
40
|
+
--bf-focus-ring-offset: 0.3rem;
|
|
41
|
+
|
|
42
|
+
/* Dark-mode surfaces (used by utility-global-dark*.css) */
|
|
43
|
+
--bf-dark-bg: rgb(28 28 28);
|
|
44
|
+
--bf-dark-link: rgb(77 165 255);
|
|
45
|
+
--bf-dark-link-hover: rgb(77 165 255);
|
|
46
|
+
--bf-dark-border-focus: rgb(26 140 255);
|
|
47
|
+
--bf-dark-shadow-focus: rgb(3 102 214 / 50%);
|
|
48
|
+
--bf-dark-mark-bg: rgb(230 230 0);
|
|
49
|
+
--bf-dark-ins-bg: rgb(255 255 200);
|
|
50
|
+
--bf-dark-button-hover: rgb(184 184 184);
|
|
51
|
+
--bf-dark-button-shadow: rgb(255 255 255 / 45%);
|
|
52
|
+
--bf-dark-invalid: rgb(255 38 38);
|
|
53
|
+
|
|
54
|
+
/* Spacing scale + grid gutter */
|
|
55
|
+
--bf-spacing-sm: 0.25rem;
|
|
56
|
+
--bf-spacing-md: 0.5rem;
|
|
57
|
+
--bf-spacing-lg: 1rem;
|
|
58
|
+
--bf-spacing-xl: 2rem;
|
|
59
|
+
--bf-spacing-xxl: 3rem;
|
|
60
|
+
--bf-spacing-grid-gutter: 1.5rem;
|
|
61
|
+
|
|
62
|
+
/* Type */
|
|
63
|
+
--bf-font-sans-serif:
|
|
64
|
+
-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell,
|
|
65
|
+
'Helvetica Neue', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
|
|
66
|
+
'Segoe UI Symbol', 'Noto Color Emoji';
|
|
67
|
+
--bf-font-serif: Georgia, Times, 'Times New Roman', serif;
|
|
68
|
+
--bf-font-monospace:
|
|
69
|
+
SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
|
|
70
|
+
--bf-body-font-size-rem: 1.6rem;
|
|
71
|
+
--bf-body-line-height: 1.5;
|
|
72
|
+
|
|
73
|
+
/* Breakpoint tokens (documentation / tooling; media queries use literal px below) */
|
|
74
|
+
--bf-breakpoint-xs: 0;
|
|
75
|
+
--bf-breakpoint-sm: 576px;
|
|
76
|
+
--bf-breakpoint-md: 768px;
|
|
77
|
+
--bf-breakpoint-lg: 992px;
|
|
78
|
+
--bf-breakpoint-xl: 1200px;
|
|
79
|
+
--bf-breakpoint-xxl: 1400px;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/* Layout */
|
|
83
|
+
/* Border-box and HTML5 block elements. */
|
|
84
|
+
|
|
3
85
|
*,
|
|
4
86
|
*::before,
|
|
5
87
|
*::after {
|
|
@@ -26,32 +108,211 @@ template {
|
|
|
26
108
|
display: none;
|
|
27
109
|
}
|
|
28
110
|
|
|
29
|
-
[hidden]
|
|
111
|
+
/* [hidden] stays hidden (except until-found). */
|
|
112
|
+
[hidden]:where(:not([hidden='until-found'])) {
|
|
30
113
|
display: none !important;
|
|
31
114
|
}
|
|
115
|
+
/* UA+ enhancements (adapted from https://fokus.dev/tools/uaplus/).
|
|
116
|
+
* Light UA improvements; complements Bullframe base styles. */
|
|
117
|
+
|
|
118
|
+
@layer {
|
|
119
|
+
/* Disable mobile landscape text inflation on optimized layouts. */
|
|
120
|
+
html {
|
|
121
|
+
-webkit-text-size-adjust: none;
|
|
122
|
+
-moz-text-size-adjust: none;
|
|
123
|
+
text-size-adjust: none;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/* Stable scrollbar gutter avoids layout jump on short pages. */
|
|
127
|
+
@supports (scrollbar-gutter: stable) {
|
|
128
|
+
html {
|
|
129
|
+
scrollbar-gutter: stable;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
/* Nested h1 size/margin: match modern UA (Safari still nests sectioning styles). */
|
|
134
|
+
h1 {
|
|
135
|
+
font-size: 2em;
|
|
136
|
+
margin-block: 0.67em;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
/* mark: system Highlight colors under forced-colors. */
|
|
140
|
+
@media (forced-colors: active) {
|
|
141
|
+
mark {
|
|
142
|
+
color: HighlightText;
|
|
143
|
+
background-color: Highlight;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/* Embedded media: stay within container block/inline size. */
|
|
148
|
+
audio,
|
|
149
|
+
iframe,
|
|
150
|
+
img,
|
|
151
|
+
svg,
|
|
152
|
+
video {
|
|
153
|
+
max-block-size: 100%;
|
|
154
|
+
max-inline-size: 100%;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
/* fieldset: avoid min-content overflow from children. */
|
|
158
|
+
fieldset {
|
|
159
|
+
min-inline-size: 0;
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/* Labels for text-like controls are block; :has() gated for older engines. */
|
|
163
|
+
@supports selector(:has(*)) {
|
|
164
|
+
label:has(+ input:not([type='radio'], [type='checkbox']), select, textarea) {
|
|
165
|
+
display: block;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/* Taller default textarea when rows is omitted. */
|
|
170
|
+
textarea:not([rows]) {
|
|
171
|
+
min-block-size: 6em;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/* Form controls inherit page font family/size. */
|
|
175
|
+
button,
|
|
176
|
+
input,
|
|
177
|
+
select,
|
|
178
|
+
textarea {
|
|
179
|
+
font-family: inherit;
|
|
180
|
+
font-size: inherit;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
/* Search: drop WebKit rounded search chrome. */
|
|
184
|
+
[type='search'] {
|
|
185
|
+
-webkit-appearance: textfield;
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
/* iOS only: system border/background for search. */
|
|
189
|
+
@supports (-webkit-touch-callout: none) {
|
|
190
|
+
[type='search'] {
|
|
191
|
+
border: 1px solid -apple-system-secondary-label;
|
|
192
|
+
background-color: canvas;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
/* Keep tel/url/email/number LTR when a value is present (RTL placeholders stay). */
|
|
197
|
+
input:where([type='tel'], [type='url'], [type='email'], [type='number']):not(
|
|
198
|
+
:-moz-placeholder
|
|
199
|
+
) {
|
|
200
|
+
direction: ltr;
|
|
201
|
+
}
|
|
202
|
+
input:where([type='tel'], [type='url'], [type='email'], [type='number']):not(
|
|
203
|
+
:placeholder-shown
|
|
204
|
+
) {
|
|
205
|
+
direction: ltr;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
/* Tables: outer border. Cell borders and padding come from
|
|
209
|
+
* miscellaneous/tables.css, which is unlayered and therefore wins. */
|
|
210
|
+
table {
|
|
211
|
+
border: 1px solid currentColor;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
/* Soft dialog / popover enter transitions (skip when reduced-motion is on). */
|
|
215
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
216
|
+
dialog::backdrop {
|
|
217
|
+
background: rgb(0 0 0 / 0.3);
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
@supports (overlay: auto) {
|
|
221
|
+
dialog,
|
|
222
|
+
[popover],
|
|
223
|
+
dialog::backdrop {
|
|
224
|
+
opacity: 0;
|
|
225
|
+
transition:
|
|
226
|
+
opacity 300ms ease-out,
|
|
227
|
+
display 300ms allow-discrete,
|
|
228
|
+
overlay 300ms allow-discrete;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
dialog[open],
|
|
232
|
+
:popover-open,
|
|
233
|
+
dialog[open]::backdrop {
|
|
234
|
+
opacity: 1;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
@starting-style {
|
|
238
|
+
dialog[open],
|
|
239
|
+
:popover-open,
|
|
240
|
+
dialog[open]::backdrop {
|
|
241
|
+
opacity: 0;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
/* Images as blocks (max-width still from embedded-content.css). */
|
|
248
|
+
img {
|
|
249
|
+
display: block;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
/* Popovers: anchor near trigger when position-area is supported. */
|
|
253
|
+
@supports (position-area: block-end span-inline-end) {
|
|
254
|
+
[popover] {
|
|
255
|
+
margin: 0;
|
|
256
|
+
position-area: block-end span-inline-end;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
/* Typography */
|
|
262
|
+
/* Root type and page chrome. */
|
|
32
263
|
|
|
33
264
|
html {
|
|
34
265
|
-webkit-text-size-adjust: 100%;
|
|
35
266
|
-moz-text-size-adjust: 100%;
|
|
36
267
|
text-size-adjust: 100%;
|
|
268
|
+
|
|
269
|
+
/* 62.5% root so 1rem ≈ 10px. */
|
|
37
270
|
font-size: 62.5%;
|
|
38
|
-
|
|
39
|
-
|
|
271
|
+
|
|
272
|
+
color: var(--bf-dark);
|
|
273
|
+
font-family: system-ui, sans-serif;
|
|
40
274
|
line-height: 1.15;
|
|
41
|
-
|
|
275
|
+
|
|
276
|
+
/* No tap flash on touch. */
|
|
277
|
+
-webkit-tap-highlight-color: rgb(0 0 0 / 0%);
|
|
42
278
|
}
|
|
43
279
|
|
|
44
280
|
body {
|
|
45
281
|
margin: 0;
|
|
46
|
-
font-size:
|
|
47
|
-
line-height:
|
|
282
|
+
font-size: var(--bf-body-font-size-rem);
|
|
283
|
+
line-height: var(--bf-body-line-height);
|
|
48
284
|
font-weight: 400;
|
|
49
285
|
text-align: left;
|
|
50
|
-
|
|
286
|
+
|
|
287
|
+
/* System UI stack (OS-native). */
|
|
288
|
+
font-family:
|
|
289
|
+
/* Safari / iOS (San Francisco) */
|
|
290
|
+
-apple-system,
|
|
291
|
+
/* Chrome < 56 on macOS (San Francisco) */ BlinkMacSystemFont,
|
|
292
|
+
/* Windows */ 'Segoe UI',
|
|
293
|
+
/* Android */ Roboto,
|
|
294
|
+
/* KDE */ Oxygen-Sans,
|
|
295
|
+
/* Ubuntu */ Ubuntu,
|
|
296
|
+
/* GNOME */ Cantarell,
|
|
297
|
+
/* macOS 10.10 and below */ 'Helvetica Neue',
|
|
298
|
+
Helvetica,
|
|
299
|
+
/* Web fallback */ Arial,
|
|
300
|
+
'Noto Sans',
|
|
301
|
+
sans-serif,
|
|
302
|
+
/* Emoji */ 'Apple Color Emoji',
|
|
303
|
+
'Segoe UI Emoji',
|
|
304
|
+
'Segoe UI Symbol',
|
|
305
|
+
'Noto Color Emoji';
|
|
306
|
+
|
|
307
|
+
/* Ligatures and kerning. */
|
|
51
308
|
text-rendering: optimizeLegibility;
|
|
309
|
+
|
|
310
|
+
/* Long unbroken strings (e.g. headlines) wrap instead of overflowing. */
|
|
52
311
|
word-wrap: break-word;
|
|
53
|
-
|
|
312
|
+
|
|
313
|
+
background-color: var(--bf-white);
|
|
54
314
|
}
|
|
315
|
+
/* Heading scale and rhythm. */
|
|
55
316
|
|
|
56
317
|
h1,
|
|
57
318
|
h2,
|
|
@@ -64,7 +325,19 @@ h6 {
|
|
|
64
325
|
font-family: inherit;
|
|
65
326
|
color: inherit;
|
|
66
327
|
line-height: 1.25;
|
|
67
|
-
margin-bottom:
|
|
328
|
+
margin-bottom: var(--bf-spacing-lg);
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
/* Balanced headings where supported; no-op elsewhere. */
|
|
332
|
+
@supports (text-wrap: balance) {
|
|
333
|
+
h1,
|
|
334
|
+
h2,
|
|
335
|
+
h3,
|
|
336
|
+
h4,
|
|
337
|
+
h5,
|
|
338
|
+
h6 {
|
|
339
|
+
text-wrap: balance;
|
|
340
|
+
}
|
|
68
341
|
}
|
|
69
342
|
|
|
70
343
|
h1 {
|
|
@@ -92,9 +365,10 @@ h6 {
|
|
|
92
365
|
font-size: 16px;
|
|
93
366
|
font-size: 1.6rem;
|
|
94
367
|
}
|
|
368
|
+
/* Blockquote and citation. */
|
|
95
369
|
|
|
96
370
|
blockquote {
|
|
97
|
-
margin
|
|
371
|
+
margin: 0 0 var(--bf-spacing-xl);
|
|
98
372
|
padding-left: 0;
|
|
99
373
|
font-style: italic;
|
|
100
374
|
}
|
|
@@ -104,56 +378,24 @@ blockquote p {
|
|
|
104
378
|
}
|
|
105
379
|
|
|
106
380
|
blockquote small {
|
|
107
|
-
color:
|
|
381
|
+
color: var(--bf-gray);
|
|
108
382
|
display: block;
|
|
109
383
|
}
|
|
110
384
|
|
|
111
385
|
blockquote small::before {
|
|
112
|
-
content:
|
|
386
|
+
content: '\2014 \00A0';
|
|
113
387
|
}
|
|
114
388
|
|
|
115
389
|
q {
|
|
116
|
-
quotes:
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
pre {
|
|
120
|
-
margin: 0 0 2rem 0;
|
|
121
|
-
display: block;
|
|
122
|
-
overflow: auto;
|
|
123
|
-
word-break: break-all;
|
|
124
|
-
word-wrap: break-word;
|
|
125
|
-
white-space: pre;
|
|
126
|
-
-webkit-hyphens: none;
|
|
127
|
-
hyphens: none;
|
|
128
|
-
-ms-overflow-style: auto;
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
pre,
|
|
132
|
-
code,
|
|
133
|
-
kbd,
|
|
134
|
-
samp {
|
|
135
|
-
font-family: Menlo, Consolas, "Roboto Mono", "Ubuntu Monospace", "Noto Mono", "Oxygen Mono", "Liberation Mono", monospace, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
136
|
-
font-size: 0.875em;
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
code {
|
|
140
|
-
word-wrap: break-word;
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
a > code {
|
|
144
|
-
color: inherit;
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
pre code {
|
|
148
|
-
font-size: inherit;
|
|
149
|
-
color: inherit;
|
|
150
|
-
word-break: normal;
|
|
390
|
+
quotes: '\201C' '\201D' '\2018' '\2019';
|
|
151
391
|
}
|
|
392
|
+
/* Paragraphs, abbr, mark/ins, emphasis, sub/sup, small, hr. */
|
|
152
393
|
|
|
153
394
|
p {
|
|
154
|
-
margin: 0 0
|
|
395
|
+
margin: 0 0 var(--bf-spacing-xl) 0;
|
|
155
396
|
}
|
|
156
397
|
|
|
398
|
+
/* abbr (Bootstrap 4): dotted underline + help cursor. */
|
|
157
399
|
abbr[title],
|
|
158
400
|
abbr[data-original-title] {
|
|
159
401
|
cursor: help;
|
|
@@ -164,24 +406,25 @@ abbr[data-original-title] {
|
|
|
164
406
|
}
|
|
165
407
|
|
|
166
408
|
mark {
|
|
167
|
-
background-color:
|
|
168
|
-
color:
|
|
409
|
+
background-color: var(--bf-yellow);
|
|
410
|
+
color: var(--bf-black);
|
|
169
411
|
}
|
|
170
412
|
|
|
171
413
|
ins {
|
|
172
|
-
background-color:
|
|
173
|
-
color:
|
|
414
|
+
background-color: var(--bf-yellow-light);
|
|
415
|
+
color: var(--bf-black);
|
|
174
416
|
text-decoration: none;
|
|
175
417
|
}
|
|
176
418
|
|
|
419
|
+
/* Inherit first so Safari does not double-apply bolder, then set bolder. */
|
|
177
420
|
b,
|
|
178
421
|
strong {
|
|
179
422
|
font-weight: inherit;
|
|
180
423
|
}
|
|
181
424
|
|
|
425
|
+
/* stylelint-disable-next-line no-duplicate-selectors -- normalize.css Safari fix */
|
|
182
426
|
b,
|
|
183
427
|
strong {
|
|
184
|
-
/* stylelint-disable-next-line */
|
|
185
428
|
font-weight: bolder;
|
|
186
429
|
}
|
|
187
430
|
|
|
@@ -211,8 +454,11 @@ small {
|
|
|
211
454
|
font-size: 80%;
|
|
212
455
|
}
|
|
213
456
|
|
|
214
|
-
|
|
215
|
-
|
|
457
|
+
/* Tighter leading when a paragraph contains <small>. */
|
|
458
|
+
@supports selector(:has(*)) {
|
|
459
|
+
p:has(small) {
|
|
460
|
+
line-height: 1.25;
|
|
461
|
+
}
|
|
216
462
|
}
|
|
217
463
|
|
|
218
464
|
hr {
|
|
@@ -222,1078 +468,1200 @@ hr {
|
|
|
222
468
|
border-style: solid;
|
|
223
469
|
border-width: 1px 0 0;
|
|
224
470
|
color: inherit;
|
|
225
|
-
margin:
|
|
471
|
+
margin: var(--bf-spacing-xl) 0;
|
|
226
472
|
padding: 0;
|
|
227
|
-
overflow: visible;
|
|
473
|
+
overflow: visible; /* Edge: show overflow. */
|
|
228
474
|
}
|
|
475
|
+
/* pre / code / kbd / samp. */
|
|
229
476
|
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
477
|
+
pre {
|
|
478
|
+
margin: 0 0 var(--bf-spacing-xl) 0;
|
|
479
|
+
|
|
480
|
+
display: block;
|
|
481
|
+
overflow: auto;
|
|
482
|
+
word-break: break-all; /* WebKit */
|
|
483
|
+
word-wrap: break-word;
|
|
484
|
+
white-space: pre;
|
|
485
|
+
hyphens: none;
|
|
486
|
+
|
|
487
|
+
/* Keep scrollbars visible in legacy Edge.
|
|
488
|
+
* https://github.com/twbs/bootstrap/pull/30685 */
|
|
489
|
+
-ms-overflow-style: auto;
|
|
234
490
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
491
|
+
|
|
492
|
+
pre,
|
|
493
|
+
code,
|
|
494
|
+
kbd,
|
|
495
|
+
samp {
|
|
496
|
+
font-family:
|
|
497
|
+
/* macOS 10.10+ */
|
|
498
|
+
Menlo, Consolas, 'Roboto Mono', 'Ubuntu Monospace', 'Noto Mono', 'Oxygen Mono',
|
|
499
|
+
'Liberation Mono', monospace, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
|
|
500
|
+
'Noto Color Emoji';
|
|
501
|
+
|
|
502
|
+
/* Mono faces read large; use a slightly smaller size. */
|
|
503
|
+
font-size: 0.875em;
|
|
238
504
|
}
|
|
239
505
|
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
text-decoration: none;
|
|
506
|
+
code {
|
|
507
|
+
word-wrap: break-word;
|
|
243
508
|
}
|
|
244
509
|
|
|
245
|
-
a
|
|
246
|
-
a:not([href], [class]):hover {
|
|
510
|
+
a > code {
|
|
247
511
|
color: inherit;
|
|
248
|
-
text-decoration: none;
|
|
249
512
|
}
|
|
250
513
|
|
|
251
|
-
|
|
252
|
-
|
|
514
|
+
pre code {
|
|
515
|
+
font-size: inherit;
|
|
516
|
+
color: inherit;
|
|
517
|
+
word-break: normal;
|
|
253
518
|
}
|
|
254
519
|
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
}
|
|
520
|
+
/* Forms */
|
|
521
|
+
/* Form control reset: inheritance, sizing, and UA quirks. */
|
|
258
522
|
|
|
259
|
-
:where(
|
|
260
|
-
|
|
523
|
+
:where(html input, button, select, optgroup, textarea) {
|
|
524
|
+
color: inherit;
|
|
525
|
+
font-family: inherit;
|
|
526
|
+
font-size: inherit;
|
|
527
|
+
line-height: inherit;
|
|
261
528
|
}
|
|
262
529
|
|
|
263
|
-
:where(
|
|
264
|
-
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
:where(:focus-visible) {
|
|
268
|
-
outline: 2px solid orange;
|
|
269
|
-
}
|
|
270
|
-
|
|
271
|
-
:where(button,
|
|
272
|
-
[type=button],
|
|
273
|
-
[type=reset],
|
|
274
|
-
[type=submit],
|
|
275
|
-
[type=email],
|
|
276
|
-
[type=number],
|
|
277
|
-
[type=password],
|
|
278
|
-
[type=tel],
|
|
279
|
-
[type=search],
|
|
280
|
-
[type=text],
|
|
281
|
-
[type=date],
|
|
282
|
-
[type=datetime-local],
|
|
283
|
-
[type=month],
|
|
284
|
-
[type=time],
|
|
285
|
-
[type=week],
|
|
286
|
-
[type=url],
|
|
287
|
-
[type=radio],
|
|
288
|
-
[type=checkbox],
|
|
289
|
-
input[list],
|
|
290
|
-
select,
|
|
291
|
-
textarea):focus {
|
|
292
|
-
outline: 0;
|
|
530
|
+
:where(html input, button, [type='radio'], [type='checkbox'], select, optgroup, textarea) {
|
|
531
|
+
margin: 0;
|
|
293
532
|
}
|
|
294
533
|
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
ul,
|
|
298
|
-
dl {
|
|
299
|
-
margin: 0 0 2rem 0;
|
|
300
|
-
padding: 0;
|
|
534
|
+
:where(html input, select, textarea, legend) {
|
|
535
|
+
width: 100%;
|
|
301
536
|
}
|
|
302
537
|
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
538
|
+
/* Shrink-to-content controls stay auto-width. */
|
|
539
|
+
:where(
|
|
540
|
+
html label,
|
|
541
|
+
button,
|
|
542
|
+
[type='image'],
|
|
543
|
+
[type='submit'],
|
|
544
|
+
[type='reset'],
|
|
545
|
+
html [type='button'],
|
|
546
|
+
[type='radio'],
|
|
547
|
+
[type='checkbox']
|
|
548
|
+
) {
|
|
549
|
+
width: auto;
|
|
311
550
|
}
|
|
312
551
|
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
552
|
+
/* inline-block: consistent sizing and vertical-align across engines. */
|
|
553
|
+
:where(
|
|
554
|
+
html input,
|
|
555
|
+
label,
|
|
556
|
+
select,
|
|
557
|
+
textarea,
|
|
558
|
+
button,
|
|
559
|
+
html [type='button'],
|
|
560
|
+
[type='reset'],
|
|
561
|
+
[type='submit'],
|
|
562
|
+
output
|
|
563
|
+
) {
|
|
564
|
+
display: inline-block;
|
|
316
565
|
}
|
|
317
566
|
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
list-style-image: none;
|
|
322
|
-
margin-left: 0;
|
|
567
|
+
:where([type='file']) {
|
|
568
|
+
display: block;
|
|
569
|
+
background-color: transparent;
|
|
323
570
|
}
|
|
324
571
|
|
|
325
|
-
|
|
326
|
-
|
|
572
|
+
:where(button, html input, select, textarea) {
|
|
573
|
+
background-image: none;
|
|
327
574
|
}
|
|
328
575
|
|
|
329
|
-
|
|
330
|
-
|
|
576
|
+
:where(input, select, textarea) {
|
|
577
|
+
vertical-align: baseline;
|
|
331
578
|
}
|
|
332
579
|
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
position: absolute;
|
|
580
|
+
:where(form) {
|
|
581
|
+
margin: 0;
|
|
336
582
|
}
|
|
337
583
|
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
584
|
+
/* Drop fieldset min-content width so nested grids can shrink. */
|
|
585
|
+
:where(fieldset) {
|
|
586
|
+
border: 0;
|
|
587
|
+
padding: 0;
|
|
588
|
+
margin: 0;
|
|
589
|
+
min-width: 0;
|
|
343
590
|
}
|
|
344
591
|
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
audio,
|
|
348
|
-
video,
|
|
349
|
-
iframe,
|
|
350
|
-
object,
|
|
351
|
-
embed {
|
|
592
|
+
:where(legend) {
|
|
593
|
+
display: table; /* Text wrapping in Edge / IE. */
|
|
352
594
|
max-width: 100%;
|
|
595
|
+
white-space: normal;
|
|
596
|
+
border: 0;
|
|
597
|
+
padding: 0;
|
|
598
|
+
font-weight: 400;
|
|
599
|
+
margin-bottom: var(--bf-spacing-md);
|
|
600
|
+
font-size: inherit;
|
|
601
|
+
line-height: 1.375;
|
|
602
|
+
color: inherit;
|
|
353
603
|
}
|
|
354
604
|
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
vertical-align: middle;
|
|
605
|
+
:where(label) {
|
|
606
|
+
font-weight: 400;
|
|
607
|
+
font-size: 90%;
|
|
608
|
+
line-height: 1.375;
|
|
609
|
+
margin-bottom: var(--bf-spacing-md);
|
|
361
610
|
}
|
|
362
611
|
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
border-style: none;
|
|
612
|
+
:where(label input, label select, label textarea) {
|
|
613
|
+
font-size: 110%;
|
|
366
614
|
}
|
|
367
615
|
|
|
368
|
-
|
|
369
|
-
|
|
616
|
+
::-webkit-inner-spin-button {
|
|
617
|
+
height: auto;
|
|
370
618
|
}
|
|
371
619
|
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
620
|
+
::-webkit-datetime-edit-fields-wrapper,
|
|
621
|
+
::-webkit-datetime-edit-text,
|
|
622
|
+
::-webkit-datetime-edit-minute,
|
|
623
|
+
::-webkit-datetime-edit-hour-field,
|
|
624
|
+
::-webkit-datetime-edit-day-field,
|
|
625
|
+
::-webkit-datetime-edit-month-field,
|
|
626
|
+
::-webkit-datetime-edit-year-field {
|
|
627
|
+
padding: 0;
|
|
375
628
|
}
|
|
376
629
|
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
font-size: 90%;
|
|
630
|
+
::-webkit-color-swatch-wrapper {
|
|
631
|
+
padding: 0;
|
|
380
632
|
}
|
|
381
633
|
|
|
382
|
-
|
|
383
|
-
|
|
634
|
+
:where([type='search']) {
|
|
635
|
+
outline-offset: calc(-1 * var(--bf-spacing-sm));
|
|
384
636
|
}
|
|
385
637
|
|
|
386
|
-
|
|
387
|
-
|
|
638
|
+
:where(output) {
|
|
639
|
+
vertical-align: middle;
|
|
388
640
|
}
|
|
389
641
|
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
height: 0;
|
|
642
|
+
:where(button, select) {
|
|
643
|
+
text-transform: none;
|
|
393
644
|
}
|
|
394
645
|
|
|
395
|
-
|
|
396
|
-
|
|
646
|
+
:where(select) {
|
|
647
|
+
word-wrap: normal;
|
|
397
648
|
}
|
|
398
649
|
|
|
399
|
-
|
|
400
|
-
|
|
650
|
+
/* Hide WebKit datalist picker chrome (Bootstrap Reboot 5.2).
|
|
651
|
+
* https://unpkg.com/browse/bootstrap@5.2.0/dist/css/bootstrap-reboot.css */
|
|
652
|
+
:where([list]):not(
|
|
653
|
+
[type='date'],
|
|
654
|
+
[type='datetime-local'],
|
|
655
|
+
[type='month'],
|
|
656
|
+
[type='week'],
|
|
657
|
+
[type='time']
|
|
658
|
+
)::-webkit-calendar-picker-indicator {
|
|
659
|
+
display: none !important;
|
|
401
660
|
}
|
|
402
661
|
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
max-width: 100%;
|
|
662
|
+
:where(optgroup) {
|
|
663
|
+
font-family: inherit;
|
|
664
|
+
font-size: inherit;
|
|
665
|
+
font-style: inherit; /* Families without a 600 face. */
|
|
666
|
+
font-weight: 600;
|
|
409
667
|
}
|
|
410
668
|
|
|
411
|
-
|
|
669
|
+
/* Reset WebKit / Blink appearance on text-like controls. */
|
|
670
|
+
:where(
|
|
671
|
+
button,
|
|
672
|
+
html [type='button'],
|
|
673
|
+
[type='reset'],
|
|
674
|
+
[type='submit'],
|
|
675
|
+
[type='email'],
|
|
676
|
+
[type='number'],
|
|
677
|
+
[type='text'],
|
|
678
|
+
[type='tel'],
|
|
679
|
+
[type='date'],
|
|
680
|
+
[type='datetime-local'],
|
|
681
|
+
[type='month'],
|
|
682
|
+
[type='week'],
|
|
683
|
+
[type='url'],
|
|
684
|
+
[type='image'],
|
|
685
|
+
[type='password'],
|
|
686
|
+
[type='search'],
|
|
687
|
+
[type='search']::-webkit-search-decoration,
|
|
688
|
+
[type='search']::-webkit-search-cancel-button,
|
|
689
|
+
input[list],
|
|
690
|
+
textarea
|
|
691
|
+
) {
|
|
412
692
|
-webkit-appearance: none;
|
|
413
|
-
-moz-appearance: none;
|
|
414
693
|
appearance: none;
|
|
415
|
-
border: none;
|
|
416
|
-
height: 20px;
|
|
417
|
-
height: 2rem;
|
|
418
|
-
background: #ccc;
|
|
419
|
-
color: #007bff;
|
|
420
694
|
}
|
|
421
695
|
|
|
422
|
-
|
|
423
|
-
|
|
696
|
+
::file-selector-button {
|
|
697
|
+
font: inherit;
|
|
698
|
+
-webkit-appearance: auto;
|
|
699
|
+
-moz-appearance: auto;
|
|
700
|
+
appearance: auto;
|
|
424
701
|
}
|
|
425
702
|
|
|
426
|
-
|
|
427
|
-
|
|
703
|
+
:where(button, input, select, textarea) {
|
|
704
|
+
border-radius: var(--bf-spacing-sm);
|
|
428
705
|
}
|
|
429
706
|
|
|
430
|
-
|
|
707
|
+
:where([type='radio']) {
|
|
708
|
+
border-radius: 50%;
|
|
709
|
+
}
|
|
710
|
+
|
|
711
|
+
:where([type='checkbox']) {
|
|
712
|
+
border-radius: var(--bf-spacing-md);
|
|
713
|
+
}
|
|
714
|
+
|
|
715
|
+
:where([type='radio'], [type='checkbox']) {
|
|
716
|
+
padding: 0;
|
|
717
|
+
background-color: var(--bf-white);
|
|
718
|
+
}
|
|
719
|
+
|
|
720
|
+
:where([type='range' i]) {
|
|
721
|
+
background-color: transparent;
|
|
722
|
+
}
|
|
723
|
+
|
|
724
|
+
:where(select[size], select[multiple]) {
|
|
725
|
+
height: auto;
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
:where(select[multiple]) {
|
|
729
|
+
background-image: none;
|
|
730
|
+
}
|
|
731
|
+
|
|
732
|
+
:where(textarea) {
|
|
733
|
+
height: auto;
|
|
734
|
+
min-height: 60px;
|
|
735
|
+
min-height: 6rem;
|
|
736
|
+
overflow: auto;
|
|
737
|
+
vertical-align: top;
|
|
738
|
+
resize: vertical;
|
|
739
|
+
}
|
|
740
|
+
|
|
741
|
+
/* Firefox: strip inner focus padding/border. */
|
|
742
|
+
::-moz-focus-inner {
|
|
743
|
+
padding: 0;
|
|
431
744
|
border-style: none;
|
|
432
745
|
}
|
|
433
746
|
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
margin
|
|
438
|
-
|
|
747
|
+
:where(button, [type='button'], [type='reset'], [type='submit']) {
|
|
748
|
+
line-height: normal;
|
|
749
|
+
text-align: center;
|
|
750
|
+
margin: 0;
|
|
751
|
+
background-clip: padding-box;
|
|
752
|
+
vertical-align: baseline;
|
|
753
|
+
overflow: visible;
|
|
754
|
+
-webkit-tap-highlight-color: rgb(0 0 0 / 0%);
|
|
755
|
+
-webkit-user-select: none;
|
|
756
|
+
-moz-user-select: none;
|
|
757
|
+
user-select: none;
|
|
758
|
+
border: 0;
|
|
759
|
+
background-image: none; /* Firefox mobile */
|
|
439
760
|
}
|
|
440
761
|
|
|
441
|
-
|
|
442
|
-
|
|
762
|
+
:where(button, [type='button'], [type='reset'], [type='submit']):hover,
|
|
763
|
+
:where(button, [type='button'], [type='reset'], [type='submit']):active,
|
|
764
|
+
:where(button, [type='button'], [type='reset'], [type='submit']):focus {
|
|
765
|
+
text-decoration: none;
|
|
766
|
+
color: var(--bf-dark);
|
|
443
767
|
}
|
|
444
768
|
|
|
445
|
-
|
|
769
|
+
:where(
|
|
770
|
+
button:not(:disabled),
|
|
771
|
+
[type='button']:not(:disabled),
|
|
772
|
+
[type='reset']:not(:disabled),
|
|
773
|
+
[type='submit']:not(:disabled)
|
|
774
|
+
) {
|
|
446
775
|
cursor: pointer;
|
|
447
|
-
font-weight: 700;
|
|
448
|
-
word-break: break-all;
|
|
449
776
|
}
|
|
450
777
|
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
border-radius: 0.25rem;
|
|
456
|
-
padding: 20px;
|
|
457
|
-
padding: 2rem;
|
|
458
|
-
height: -moz-fit-content;
|
|
459
|
-
height: fit-content;
|
|
460
|
-
min-width: 25rem;
|
|
461
|
-
max-width: calc(100vw - 3rem);
|
|
778
|
+
/* Firefox: input color must not override placeholder color.
|
|
779
|
+
* https://github.com/necolas/normalize.css/issues/150 */
|
|
780
|
+
:where(input::-moz-placeholder, textarea::-moz-placeholder) {
|
|
781
|
+
color: var(--bf-gray-dark);
|
|
462
782
|
}
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
max-width: 50rem;
|
|
466
|
-
}
|
|
783
|
+
:where(input::placeholder, textarea::placeholder) {
|
|
784
|
+
color: var(--bf-gray-dark);
|
|
467
785
|
}
|
|
468
786
|
|
|
469
|
-
|
|
470
|
-
|
|
787
|
+
/* Firefox: modern focus ring on all focusable elements. */
|
|
788
|
+
:-moz-focusring {
|
|
789
|
+
outline: auto;
|
|
471
790
|
}
|
|
472
791
|
|
|
473
|
-
|
|
474
|
-
|
|
792
|
+
/* Firefox: drop :-moz-ui-invalid glow; use .bf-invalid for JS validation.
|
|
793
|
+
* https://developer.mozilla.org/en-US/docs/Web/CSS/:-moz-ui-invalid */
|
|
794
|
+
:-moz-ui-invalid {
|
|
795
|
+
box-shadow: none;
|
|
796
|
+
}
|
|
797
|
+
/* Form field and button chrome (borders, focus, disabled). */
|
|
798
|
+
|
|
799
|
+
:where(
|
|
800
|
+
[type='email'],
|
|
801
|
+
[type='number'],
|
|
802
|
+
[type='password'],
|
|
803
|
+
[type='tel'],
|
|
804
|
+
[type='search'],
|
|
805
|
+
[type='text'],
|
|
806
|
+
[type='date'],
|
|
807
|
+
[type='datetime-local'],
|
|
808
|
+
[type='month'],
|
|
809
|
+
[type='week'],
|
|
810
|
+
[type='time'],
|
|
811
|
+
[type='url'],
|
|
812
|
+
input[list],
|
|
813
|
+
select,
|
|
814
|
+
textarea
|
|
815
|
+
) {
|
|
816
|
+
background-color: var(--bf-white);
|
|
817
|
+
border: 1px solid var(--bf-gray);
|
|
818
|
+
padding: var(--bf-spacing-md) calc(var(--bf-spacing-lg) * 0.75);
|
|
819
|
+
}
|
|
820
|
+
|
|
821
|
+
:where(
|
|
822
|
+
[type='email'],
|
|
823
|
+
[type='number'],
|
|
824
|
+
[type='password'],
|
|
825
|
+
[type='tel'],
|
|
826
|
+
[type='search'],
|
|
827
|
+
[type='text'],
|
|
828
|
+
[type='date'],
|
|
829
|
+
[type='datetime-local'],
|
|
830
|
+
[type='month'],
|
|
831
|
+
[type='week'],
|
|
832
|
+
[type='time'],
|
|
833
|
+
[type='url'],
|
|
834
|
+
input[list],
|
|
835
|
+
select,
|
|
836
|
+
textarea,
|
|
837
|
+
[type='radio'],
|
|
838
|
+
[type='checkbox']
|
|
839
|
+
):active,
|
|
840
|
+
:where(
|
|
841
|
+
[type='email'],
|
|
842
|
+
[type='number'],
|
|
843
|
+
[type='password'],
|
|
844
|
+
[type='tel'],
|
|
845
|
+
[type='search'],
|
|
846
|
+
[type='text'],
|
|
847
|
+
[type='date'],
|
|
848
|
+
[type='datetime-local'],
|
|
849
|
+
[type='month'],
|
|
850
|
+
[type='week'],
|
|
851
|
+
[type='time'],
|
|
852
|
+
[type='url'],
|
|
853
|
+
input[list],
|
|
854
|
+
select,
|
|
855
|
+
textarea,
|
|
856
|
+
[type='radio'],
|
|
857
|
+
[type='checkbox']
|
|
858
|
+
):focus {
|
|
859
|
+
transition:
|
|
860
|
+
border 0.2s,
|
|
861
|
+
background-color 0.2s,
|
|
862
|
+
box-shadow 0.2s;
|
|
863
|
+
border-color: var(--bf-blue);
|
|
864
|
+
box-shadow: 0 0 0 3px rgb(0 86 179 / 25%);
|
|
865
|
+
}
|
|
866
|
+
|
|
867
|
+
:where(button, [type='button'], [type='reset'], [type='submit']) {
|
|
868
|
+
color: var(--bf-dark);
|
|
869
|
+
padding: calc(var(--bf-spacing-xl) / 3) calc(calc(var(--bf-spacing-xl) / 3) * 2);
|
|
870
|
+
background: var(--bf-gray-light);
|
|
871
|
+
transition:
|
|
872
|
+
color 0.2s,
|
|
873
|
+
background 0.2s,
|
|
874
|
+
box-shadow 0.2s;
|
|
875
|
+
}
|
|
876
|
+
|
|
877
|
+
:where(button, [type='button'], [type='reset'], [type='submit']):hover,
|
|
878
|
+
:where(button, [type='button'], [type='reset'], [type='submit']):active,
|
|
879
|
+
:where(button, [type='button'], [type='reset'], [type='submit']):focus:not(.bf-disabled):not(
|
|
880
|
+
[aria-disabled='true']
|
|
881
|
+
) {
|
|
882
|
+
text-decoration: none;
|
|
883
|
+
color: var(--bf-dark);
|
|
884
|
+
background: rgb(184 184 184); /* --bf-gray-light, ~10% darker */
|
|
885
|
+
}
|
|
886
|
+
|
|
887
|
+
:where(button, [type='button'], [type='reset'], [type='submit']):active,
|
|
888
|
+
:where(button, [type='button'], [type='reset'], [type='submit']):focus:not(.bf-disabled):not(
|
|
889
|
+
[aria-disabled='true']
|
|
890
|
+
) {
|
|
891
|
+
box-shadow: 0 0 0 3px rgb(0 0 0 / 15%);
|
|
892
|
+
}
|
|
893
|
+
|
|
894
|
+
/* Disabled / aria-disabled / fieldset[disabled]. */
|
|
895
|
+
:where(
|
|
896
|
+
fieldset[disabled] button,
|
|
897
|
+
fieldset[disabled] input,
|
|
898
|
+
fieldset[disabled] input::after,
|
|
899
|
+
fieldset[disabled] input::before,
|
|
900
|
+
fieldset[disabled] input:checked,
|
|
901
|
+
fieldset[disabled] select,
|
|
902
|
+
fieldset[disabled] textarea,
|
|
903
|
+
fieldset[disabled] label,
|
|
904
|
+
button[disabled],
|
|
905
|
+
input[disabled],
|
|
906
|
+
input[disabled]::after,
|
|
907
|
+
input[disabled]::before,
|
|
908
|
+
input[disabled]:checked,
|
|
909
|
+
select[disabled],
|
|
910
|
+
textarea[disabled],
|
|
911
|
+
label[disabled],
|
|
912
|
+
button:disabled,
|
|
913
|
+
input:disabled,
|
|
914
|
+
input:disabled::after,
|
|
915
|
+
input:disabled::before,
|
|
916
|
+
input:disabled:checked,
|
|
917
|
+
select:disabled,
|
|
918
|
+
textarea:disabled,
|
|
919
|
+
label:disabled,
|
|
920
|
+
button[aria-disabled='true'],
|
|
921
|
+
input[aria-disabled='true'],
|
|
922
|
+
input[aria-disabled='true']::after,
|
|
923
|
+
input[aria-disabled='true']::before,
|
|
924
|
+
input[aria-disabled='true']:checked,
|
|
925
|
+
select[aria-disabled='true'],
|
|
926
|
+
textarea[aria-disabled='true'],
|
|
927
|
+
label[aria-disabled='true']
|
|
928
|
+
) {
|
|
929
|
+
cursor: default !important;
|
|
930
|
+
cursor: not-allowed !important;
|
|
931
|
+
pointer-events: none !important;
|
|
932
|
+
-webkit-user-select: none !important;
|
|
933
|
+
-moz-user-select: none !important;
|
|
934
|
+
user-select: none !important;
|
|
935
|
+
box-shadow: none !important;
|
|
936
|
+
outline: none !important;
|
|
937
|
+
opacity: 0.5 !important;
|
|
475
938
|
}
|
|
939
|
+
/* Select: custom arrow for single-value controls.
|
|
940
|
+
* Skip [size] / [multiple] (native UI differs by engine). Inspired by water.css. */
|
|
476
941
|
|
|
477
|
-
|
|
478
|
-
:
|
|
479
|
-
|
|
942
|
+
:where(select):not([size], select[multiple]) {
|
|
943
|
+
-webkit-appearance: none;
|
|
944
|
+
-moz-appearance: none;
|
|
945
|
+
appearance: none;
|
|
946
|
+
background: var(--bf-white)
|
|
947
|
+
url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e")
|
|
948
|
+
no-repeat right 0.85rem center/8px 10px;
|
|
949
|
+
padding-right: calc(var(--bf-spacing-lg) + var(--bf-spacing-lg));
|
|
950
|
+
}
|
|
951
|
+
|
|
952
|
+
/* RTL: mirror arrow after appearance:none removes the native control. */
|
|
953
|
+
:where(*[dir='rtl']) :where(select):not([size], select[multiple]),
|
|
954
|
+
:where(select[dir='rtl']):not([size], select[multiple]) {
|
|
955
|
+
background-position: left 0.85rem top 50%;
|
|
956
|
+
padding-right: calc(var(--bf-spacing-lg) * 0.75);
|
|
957
|
+
padding-left: calc(var(--bf-spacing-lg) + var(--bf-spacing-lg));
|
|
958
|
+
}
|
|
959
|
+
/* Range: custom thumb/track when appearance:none is supported.
|
|
960
|
+
* CodePen: https://codepen.io/marcop135/pen/JjGrNMx */
|
|
961
|
+
|
|
962
|
+
@supports ((-webkit-appearance: none) or (-moz-appearance: none) or (appearance: none)) {
|
|
963
|
+
:where([type='range']) {
|
|
964
|
+
-webkit-appearance: none;
|
|
965
|
+
-moz-appearance: none;
|
|
966
|
+
appearance: none;
|
|
967
|
+
width: 100%;
|
|
968
|
+
height: 1.4rem;
|
|
969
|
+
}
|
|
970
|
+
|
|
971
|
+
:where([type='range'])::-webkit-slider-thumb {
|
|
972
|
+
border: 0;
|
|
973
|
+
-webkit-appearance: none;
|
|
974
|
+
appearance: none;
|
|
975
|
+
|
|
976
|
+
width: 1.5rem;
|
|
977
|
+
height: 1.5rem;
|
|
978
|
+
margin-top: -0.25rem;
|
|
979
|
+
background-color: var(--bf-blue);
|
|
980
|
+
border-radius: 1.5rem;
|
|
981
|
+
-webkit-transition:
|
|
982
|
+
background-color 0.15s ease-in-out,
|
|
983
|
+
border-color 0.15s ease-in-out,
|
|
984
|
+
box-shadow 0.15s ease-in-out;
|
|
985
|
+
transition:
|
|
986
|
+
background-color 0.15s ease-in-out,
|
|
987
|
+
border-color 0.15s ease-in-out,
|
|
988
|
+
box-shadow 0.15s ease-in-out;
|
|
989
|
+
}
|
|
990
|
+
|
|
991
|
+
:where([type='range'])::-webkit-slider-thumb:active {
|
|
992
|
+
background-color: var(--bf-blue);
|
|
993
|
+
}
|
|
994
|
+
|
|
995
|
+
:where([type='range'])::-moz-range-thumb {
|
|
996
|
+
border: 0;
|
|
997
|
+
-moz-appearance: none;
|
|
998
|
+
appearance: none;
|
|
999
|
+
|
|
1000
|
+
width: 1.5rem;
|
|
1001
|
+
height: 1.5rem;
|
|
1002
|
+
background-color: var(--bf-blue);
|
|
1003
|
+
border-radius: 1.5rem;
|
|
1004
|
+
-moz-transition:
|
|
1005
|
+
background-color 0.15s ease-in-out,
|
|
1006
|
+
border-color 0.15s ease-in-out,
|
|
1007
|
+
box-shadow 0.15s ease-in-out;
|
|
1008
|
+
transition:
|
|
1009
|
+
background-color 0.15s ease-in-out,
|
|
1010
|
+
border-color 0.15s ease-in-out,
|
|
1011
|
+
box-shadow 0.15s ease-in-out;
|
|
1012
|
+
}
|
|
1013
|
+
|
|
1014
|
+
:where([type='range'])::-moz-range-thumb:active {
|
|
1015
|
+
background-color: var(--bf-blue);
|
|
1016
|
+
}
|
|
1017
|
+
|
|
1018
|
+
:where([type='range'])::-webkit-slider-runnable-track {
|
|
1019
|
+
color: transparent;
|
|
1020
|
+
border-color: transparent;
|
|
1021
|
+
|
|
1022
|
+
width: 100%;
|
|
1023
|
+
height: 0.65rem;
|
|
1024
|
+
cursor: pointer;
|
|
1025
|
+
background-color: var(--bf-gray-light-extra);
|
|
1026
|
+
}
|
|
1027
|
+
|
|
1028
|
+
:where([type='range'])::-moz-range-track {
|
|
1029
|
+
color: transparent;
|
|
1030
|
+
border-color: transparent;
|
|
1031
|
+
|
|
1032
|
+
width: 100%;
|
|
1033
|
+
height: 0.65rem;
|
|
1034
|
+
cursor: pointer;
|
|
1035
|
+
background-color: var(--bf-gray-light-extra);
|
|
1036
|
+
}
|
|
1037
|
+
|
|
1038
|
+
:where([type='range']):focus {
|
|
1039
|
+
outline: none;
|
|
1040
|
+
}
|
|
1041
|
+
|
|
1042
|
+
:where([type='range']):focus::-webkit-slider-thumb {
|
|
1043
|
+
box-shadow:
|
|
1044
|
+
0 0 0 0.1rem var(--bf-white),
|
|
1045
|
+
0 0 0 0.2rem rgb(0 123 255 / 25%);
|
|
1046
|
+
}
|
|
1047
|
+
|
|
1048
|
+
:where([type='range']):focus::-moz-range-thumb {
|
|
1049
|
+
box-shadow:
|
|
1050
|
+
0 0 0 0.1rem var(--bf-white),
|
|
1051
|
+
0 0 0 0.2rem rgb(0 123 255 / 25%);
|
|
1052
|
+
}
|
|
1053
|
+
|
|
1054
|
+
:where([type='range'])::-moz-focus-outer {
|
|
1055
|
+
border: 0;
|
|
1056
|
+
}
|
|
1057
|
+
|
|
1058
|
+
:where([type='range']):disabled {
|
|
1059
|
+
pointer-events: none;
|
|
1060
|
+
}
|
|
1061
|
+
|
|
1062
|
+
:where([type='range']):disabled::-webkit-slider-thumb {
|
|
1063
|
+
background-color: var(--bf-gray-light);
|
|
1064
|
+
}
|
|
1065
|
+
|
|
1066
|
+
:where([type='range']):disabled::-moz-range-thumb {
|
|
1067
|
+
background-color: var(--bf-gray-light);
|
|
480
1068
|
}
|
|
481
1069
|
}
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
1070
|
+
|
|
1071
|
+
/* Miscellaneous */
|
|
1072
|
+
/* Link defaults. --bf-blue meets WCAG AA 4.5:1 on white. */
|
|
1073
|
+
|
|
1074
|
+
a {
|
|
1075
|
+
color: var(--bf-blue);
|
|
1076
|
+
text-decoration: none;
|
|
1077
|
+
background-color: transparent; /* Legacy Edge active background. */
|
|
488
1078
|
}
|
|
489
1079
|
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
td,
|
|
495
|
-
th {
|
|
496
|
-
border-color: inherit;
|
|
497
|
-
border-style: solid;
|
|
498
|
-
border-width: 0;
|
|
1080
|
+
a:hover,
|
|
1081
|
+
a:focus {
|
|
1082
|
+
text-decoration: underline;
|
|
1083
|
+
color: var(--bf-blue-light);
|
|
499
1084
|
}
|
|
500
1085
|
|
|
501
|
-
|
|
502
|
-
|
|
1086
|
+
/* Non-href anchors inherit text (Bootstrap reboot pattern). */
|
|
1087
|
+
a:not([href], [tabindex]) {
|
|
1088
|
+
color: inherit;
|
|
1089
|
+
text-decoration: none;
|
|
503
1090
|
}
|
|
504
1091
|
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
1092
|
+
a:not([href], [class]),
|
|
1093
|
+
a:not([href], [class]):hover {
|
|
1094
|
+
color: inherit;
|
|
1095
|
+
text-decoration: none;
|
|
508
1096
|
}
|
|
509
1097
|
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
text-align: -webkit-match-parent;
|
|
513
|
-
font-weight: 700;
|
|
1098
|
+
a:not([href], [tabindex]):focus {
|
|
1099
|
+
outline: 0;
|
|
514
1100
|
}
|
|
1101
|
+
/* Keyboard-first focus: :focus-visible ring from --bf-focus-ring-*; mute mouse outline.
|
|
1102
|
+
* Text-like controls clear UA outline here; field chrome is in forms/styling.css. */
|
|
515
1103
|
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
padding-bottom: 0.5rem;
|
|
519
|
-
color: #999;
|
|
520
|
-
text-align: left;
|
|
521
|
-
caption-side: bottom;
|
|
522
|
-
line-height: 1.375;
|
|
523
|
-
font-size: 90%;
|
|
1104
|
+
:where(:focus:not(:focus-visible)) {
|
|
1105
|
+
outline: none;
|
|
524
1106
|
}
|
|
525
1107
|
|
|
526
|
-
/*
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
* Change the cursor on busy elements in all browsers (opinionated).
|
|
530
|
-
*/
|
|
531
|
-
:where([aria-busy=true i]) {
|
|
532
|
-
cursor: progress;
|
|
1108
|
+
/* tabindex="-1" targets should not show a ring on programmatic focus. */
|
|
1109
|
+
:where([tabindex='-1']:focus:not(:focus-visible)) {
|
|
1110
|
+
outline: 0 !important;
|
|
533
1111
|
}
|
|
534
1112
|
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
1113
|
+
:focus-visible {
|
|
1114
|
+
outline: var(--bf-focus-ring-width) solid var(--bf-focus-ring-color);
|
|
1115
|
+
outline-offset: var(--bf-focus-ring-offset);
|
|
1116
|
+
}
|
|
1117
|
+
|
|
1118
|
+
/* Clear UA outline on text-like controls (styled fields keep their own chrome).
|
|
1119
|
+
* Leave color / range / file alone; they often use custom widgets. */
|
|
1120
|
+
button:focus,
|
|
1121
|
+
[type='button']:focus,
|
|
1122
|
+
[type='reset']:focus,
|
|
1123
|
+
[type='submit']:focus,
|
|
1124
|
+
[type='email']:focus,
|
|
1125
|
+
[type='number']:focus,
|
|
1126
|
+
[type='password']:focus,
|
|
1127
|
+
[type='tel']:focus,
|
|
1128
|
+
[type='search']:focus,
|
|
1129
|
+
[type='text']:focus,
|
|
1130
|
+
[type='date']:focus,
|
|
1131
|
+
[type='datetime-local']:focus,
|
|
1132
|
+
[type='month']:focus,
|
|
1133
|
+
[type='time']:focus,
|
|
1134
|
+
[type='week']:focus,
|
|
1135
|
+
[type='url']:focus,
|
|
1136
|
+
[type='radio']:focus,
|
|
1137
|
+
[type='checkbox']:focus,
|
|
1138
|
+
input[list]:focus,
|
|
1139
|
+
select:focus,
|
|
1140
|
+
textarea:focus {
|
|
1141
|
+
outline: 0;
|
|
541
1142
|
}
|
|
1143
|
+
/* List spacing and nav list reset. */
|
|
542
1144
|
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
:
|
|
548
|
-
|
|
1145
|
+
menu,
|
|
1146
|
+
ol,
|
|
1147
|
+
ul,
|
|
1148
|
+
dl {
|
|
1149
|
+
margin: 0 0 var(--bf-spacing-xl) 0;
|
|
1150
|
+
padding: 0;
|
|
549
1151
|
}
|
|
550
1152
|
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
1153
|
+
menu ul,
|
|
1154
|
+
menu ol,
|
|
1155
|
+
ul ul,
|
|
1156
|
+
ul ol,
|
|
1157
|
+
ol ol,
|
|
1158
|
+
ol ul,
|
|
1159
|
+
dd {
|
|
1160
|
+
margin-bottom: 0;
|
|
554
1161
|
}
|
|
555
1162
|
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
font-size: inherit;
|
|
560
|
-
line-height: inherit;
|
|
1163
|
+
ul,
|
|
1164
|
+
ol {
|
|
1165
|
+
margin-left: var(--bf-spacing-xl);
|
|
561
1166
|
}
|
|
562
1167
|
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
select,
|
|
568
|
-
optgroup,
|
|
569
|
-
textarea) {
|
|
570
|
-
margin: 0;
|
|
1168
|
+
nav ol,
|
|
1169
|
+
nav ul {
|
|
1170
|
+
list-style: none;
|
|
1171
|
+
margin-left: 0;
|
|
571
1172
|
}
|
|
572
1173
|
|
|
573
|
-
|
|
574
|
-
|
|
1174
|
+
dt {
|
|
1175
|
+
font-weight: 700;
|
|
575
1176
|
}
|
|
576
1177
|
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
[type=image],
|
|
580
|
-
[type=submit],
|
|
581
|
-
[type=reset],
|
|
582
|
-
html [type=button],
|
|
583
|
-
[type=radio],
|
|
584
|
-
[type=checkbox]) {
|
|
585
|
-
width: auto;
|
|
1178
|
+
dd {
|
|
1179
|
+
margin-left: 0;
|
|
586
1180
|
}
|
|
587
1181
|
|
|
588
|
-
:
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
1182
|
+
/* VoiceOver: zero-width space so list-style:none lists stay announced. */
|
|
1183
|
+
nav li::before {
|
|
1184
|
+
content: '\200B';
|
|
1185
|
+
position: absolute;
|
|
1186
|
+
}
|
|
1187
|
+
/* Media elements, figures, progress/meter, and iframes. */
|
|
1188
|
+
|
|
1189
|
+
audio,
|
|
1190
|
+
canvas,
|
|
1191
|
+
progress,
|
|
1192
|
+
video {
|
|
597
1193
|
display: inline-block;
|
|
598
1194
|
}
|
|
599
1195
|
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
1196
|
+
img,
|
|
1197
|
+
canvas,
|
|
1198
|
+
audio,
|
|
1199
|
+
video,
|
|
1200
|
+
iframe,
|
|
1201
|
+
object,
|
|
1202
|
+
embed {
|
|
1203
|
+
max-width: 100%;
|
|
603
1204
|
}
|
|
604
1205
|
|
|
605
|
-
|
|
606
|
-
|
|
1206
|
+
audio,
|
|
1207
|
+
video,
|
|
1208
|
+
canvas,
|
|
1209
|
+
img,
|
|
1210
|
+
svg {
|
|
1211
|
+
vertical-align: middle;
|
|
607
1212
|
}
|
|
608
1213
|
|
|
609
|
-
|
|
610
|
-
|
|
1214
|
+
img {
|
|
1215
|
+
height: auto;
|
|
1216
|
+
border-style: none;
|
|
611
1217
|
}
|
|
612
1218
|
|
|
613
|
-
|
|
1219
|
+
figure {
|
|
614
1220
|
margin: 0;
|
|
615
1221
|
}
|
|
616
1222
|
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
margin: 0;
|
|
621
|
-
min-width: 0;
|
|
1223
|
+
figure,
|
|
1224
|
+
figcaption {
|
|
1225
|
+
display: block;
|
|
622
1226
|
}
|
|
623
1227
|
|
|
624
|
-
|
|
625
|
-
display: table;
|
|
626
|
-
max-width: 100%;
|
|
627
|
-
white-space: normal;
|
|
628
|
-
border: 0;
|
|
629
|
-
padding: 0;
|
|
630
|
-
font-weight: 400;
|
|
631
|
-
margin-bottom: 5px;
|
|
632
|
-
margin-bottom: 0.5rem;
|
|
633
|
-
font-size: inherit;
|
|
1228
|
+
figcaption {
|
|
634
1229
|
line-height: 1.375;
|
|
635
|
-
|
|
1230
|
+
font-size: 90%;
|
|
636
1231
|
}
|
|
637
1232
|
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
font-size: 90%;
|
|
641
|
-
line-height: 1.375;
|
|
642
|
-
margin-bottom: 5px;
|
|
643
|
-
margin-bottom: 0.5rem;
|
|
1233
|
+
video {
|
|
1234
|
+
height: auto;
|
|
644
1235
|
}
|
|
645
1236
|
|
|
646
|
-
|
|
647
|
-
|
|
1237
|
+
audio {
|
|
1238
|
+
width: 100%;
|
|
648
1239
|
}
|
|
649
1240
|
|
|
650
|
-
|
|
651
|
-
|
|
1241
|
+
audio:not([controls]) {
|
|
1242
|
+
display: none;
|
|
1243
|
+
height: 0;
|
|
652
1244
|
}
|
|
653
1245
|
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
::-webkit-datetime-edit-year-field {
|
|
661
|
-
padding: 0;
|
|
1246
|
+
svg:not(:root) {
|
|
1247
|
+
overflow: hidden;
|
|
1248
|
+
}
|
|
1249
|
+
|
|
1250
|
+
svg:not([fill]) {
|
|
1251
|
+
fill: currentColor;
|
|
662
1252
|
}
|
|
663
1253
|
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
1254
|
+
progress,
|
|
1255
|
+
meter {
|
|
1256
|
+
display: inline-block;
|
|
1257
|
+
vertical-align: baseline;
|
|
1258
|
+
width: 100%;
|
|
1259
|
+
max-width: 100%;
|
|
1260
|
+
}
|
|
1261
|
+
|
|
1262
|
+
/* progress[value] reset (https://css-tricks.com/html5-progress-element/). */
|
|
1263
|
+
progress[value] {
|
|
1264
|
+
-webkit-appearance: none;
|
|
1265
|
+
-moz-appearance: none;
|
|
1266
|
+
appearance: none;
|
|
1267
|
+
border: none; /* Firefox default border. */
|
|
1268
|
+
|
|
1269
|
+
height: 20px;
|
|
1270
|
+
height: 2rem;
|
|
667
1271
|
|
|
668
|
-
:
|
|
669
|
-
|
|
1272
|
+
background: var(--bf-gray-light);
|
|
1273
|
+
color: var(--bf-blue); /* Progress fill in IE10+. */
|
|
670
1274
|
}
|
|
671
1275
|
|
|
672
|
-
|
|
673
|
-
|
|
1276
|
+
progress[value]::-webkit-progress-bar {
|
|
1277
|
+
background: var(--bf-gray-light);
|
|
674
1278
|
}
|
|
675
1279
|
|
|
676
|
-
|
|
677
|
-
|
|
1280
|
+
progress[value]::-webkit-progress-value {
|
|
1281
|
+
background: var(--bf-blue);
|
|
678
1282
|
}
|
|
679
1283
|
|
|
680
|
-
|
|
681
|
-
|
|
1284
|
+
/* No default border (covers embeds that ignore frameborder="0"). */
|
|
1285
|
+
iframe {
|
|
1286
|
+
border-style: none;
|
|
682
1287
|
}
|
|
1288
|
+
/* Address, details/summary, and dialog defaults. */
|
|
683
1289
|
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
[type=time])::-webkit-calendar-picker-indicator {
|
|
689
|
-
display: none !important;
|
|
1290
|
+
address {
|
|
1291
|
+
font-style: normal;
|
|
1292
|
+
margin-bottom: var(--bf-spacing-lg);
|
|
1293
|
+
line-height: inherit;
|
|
690
1294
|
}
|
|
691
1295
|
|
|
692
|
-
:
|
|
693
|
-
|
|
694
|
-
font-size: inherit;
|
|
695
|
-
font-style: inherit;
|
|
696
|
-
font-weight: 600;
|
|
1296
|
+
details > summary:first-of-type {
|
|
1297
|
+
display: list-item;
|
|
697
1298
|
}
|
|
698
1299
|
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
[type=email],
|
|
704
|
-
[type=number],
|
|
705
|
-
[type=text],
|
|
706
|
-
[type=tel],
|
|
707
|
-
[type=date],
|
|
708
|
-
[type=datetime-local],
|
|
709
|
-
[type=month],
|
|
710
|
-
[type=week],
|
|
711
|
-
[type=url],
|
|
712
|
-
[type=image],
|
|
713
|
-
[type=password],
|
|
714
|
-
[type=search],
|
|
715
|
-
[type=search]::-webkit-search-decoration,
|
|
716
|
-
[type=search]::-webkit-search-cancel-button,
|
|
717
|
-
input[list],
|
|
718
|
-
textarea) {
|
|
719
|
-
-webkit-appearance: none;
|
|
720
|
-
appearance: none;
|
|
1300
|
+
summary {
|
|
1301
|
+
cursor: pointer;
|
|
1302
|
+
font-weight: 700;
|
|
1303
|
+
word-break: break-all;
|
|
721
1304
|
}
|
|
722
1305
|
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
1306
|
+
dialog {
|
|
1307
|
+
background-color: var(--bf-white);
|
|
1308
|
+
color: var(--bf-dark);
|
|
1309
|
+
border: none;
|
|
1310
|
+
border-radius: var(--bf-spacing-sm);
|
|
1311
|
+
padding: var(--bf-spacing-xl);
|
|
1312
|
+
height: -moz-fit-content;
|
|
1313
|
+
height: fit-content;
|
|
1314
|
+
min-width: min(25rem, 100%);
|
|
1315
|
+
max-width: calc(100vw - (var(--bf-spacing-grid-gutter) * 2));
|
|
728
1316
|
}
|
|
729
1317
|
|
|
730
|
-
:
|
|
731
|
-
|
|
1318
|
+
@media (min-width: 768px) {
|
|
1319
|
+
dialog {
|
|
1320
|
+
max-width: 50rem;
|
|
1321
|
+
}
|
|
732
1322
|
}
|
|
733
1323
|
|
|
734
|
-
|
|
735
|
-
|
|
1324
|
+
/* Open dialog wins over [hidden] (e.g. <dialog hidden open>). */
|
|
1325
|
+
dialog[open] {
|
|
1326
|
+
display: block !important;
|
|
736
1327
|
}
|
|
737
1328
|
|
|
738
|
-
|
|
739
|
-
|
|
1329
|
+
dialog::backdrop {
|
|
1330
|
+
background: rgb(0 0 0 / 40%);
|
|
740
1331
|
}
|
|
1332
|
+
/* Smooth scrolling when motion is allowed. */
|
|
741
1333
|
|
|
742
|
-
:
|
|
743
|
-
|
|
744
|
-
|
|
1334
|
+
@media (prefers-reduced-motion: no-preference) {
|
|
1335
|
+
:root {
|
|
1336
|
+
scroll-behavior: smooth;
|
|
1337
|
+
}
|
|
745
1338
|
}
|
|
1339
|
+
/* Table border collapse and cell alignment. */
|
|
746
1340
|
|
|
747
|
-
|
|
748
|
-
|
|
1341
|
+
table {
|
|
1342
|
+
caption-side: bottom;
|
|
1343
|
+
max-width: 100%;
|
|
1344
|
+
border-collapse: collapse;
|
|
1345
|
+
border-color: currentcolor; /* Chrome / Safari inheritance. */
|
|
1346
|
+
text-indent: 0; /* Chrome / Safari table indent. */
|
|
749
1347
|
}
|
|
750
1348
|
|
|
751
|
-
|
|
752
|
-
|
|
1349
|
+
thead,
|
|
1350
|
+
tbody,
|
|
1351
|
+
tfoot,
|
|
1352
|
+
tr,
|
|
1353
|
+
td,
|
|
1354
|
+
th {
|
|
1355
|
+
border-color: inherit;
|
|
1356
|
+
border-style: solid;
|
|
1357
|
+
border-width: 0;
|
|
753
1358
|
}
|
|
754
1359
|
|
|
755
|
-
|
|
756
|
-
|
|
1360
|
+
thead th {
|
|
1361
|
+
vertical-align: bottom;
|
|
757
1362
|
}
|
|
758
1363
|
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
min-height: 60px;
|
|
762
|
-
min-height: 6rem;
|
|
763
|
-
overflow: auto;
|
|
1364
|
+
th,
|
|
1365
|
+
td {
|
|
764
1366
|
vertical-align: top;
|
|
765
|
-
resize: vertical;
|
|
766
1367
|
}
|
|
767
1368
|
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
1369
|
+
th {
|
|
1370
|
+
text-align: inherit;
|
|
1371
|
+
text-align: -webkit-match-parent;
|
|
1372
|
+
font-weight: 700;
|
|
771
1373
|
}
|
|
772
1374
|
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
-
|
|
781
|
-
-webkit-user-select: none;
|
|
782
|
-
-moz-user-select: none;
|
|
783
|
-
user-select: none;
|
|
784
|
-
border: 0;
|
|
785
|
-
background-image: none;
|
|
786
|
-
}
|
|
787
|
-
:where(button, [type=button], [type=reset], [type=submit]):hover, :where(button, [type=button], [type=reset], [type=submit]):active, :where(button, [type=button], [type=reset], [type=submit]):focus {
|
|
788
|
-
text-decoration: none;
|
|
789
|
-
color: #222;
|
|
1375
|
+
caption {
|
|
1376
|
+
padding-top: var(--bf-spacing-md);
|
|
1377
|
+
padding-bottom: var(--bf-spacing-md);
|
|
1378
|
+
color: var(--bf-gray);
|
|
1379
|
+
text-align: left;
|
|
1380
|
+
caption-side: bottom;
|
|
1381
|
+
line-height: 1.375;
|
|
1382
|
+
font-size: 90%;
|
|
790
1383
|
}
|
|
1384
|
+
/* Accessibility helpers (adapted from sanitize.css). */
|
|
791
1385
|
|
|
792
|
-
:
|
|
793
|
-
[
|
|
794
|
-
|
|
795
|
-
[type=submit]:not(:disabled)) {
|
|
796
|
-
cursor: pointer;
|
|
1386
|
+
/* Busy: progress cursor. */
|
|
1387
|
+
:where([aria-busy='true' i]) {
|
|
1388
|
+
cursor: progress;
|
|
797
1389
|
}
|
|
798
1390
|
|
|
799
|
-
:
|
|
800
|
-
|
|
1391
|
+
/* Disabled / inoperable: not-allowed cursor. */
|
|
1392
|
+
:where([aria-disabled='true' i], [disabled]) {
|
|
1393
|
+
cursor: not-allowed;
|
|
801
1394
|
}
|
|
802
1395
|
|
|
803
|
-
:
|
|
804
|
-
|
|
1396
|
+
/* aria-hidden="false" on [hidden]: keep in a11y tree when not focused. */
|
|
1397
|
+
:where([aria-hidden='false' i][hidden]) {
|
|
1398
|
+
display: initial;
|
|
805
1399
|
}
|
|
806
1400
|
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
:-moz-focusring {
|
|
811
|
-
outline: auto;
|
|
1401
|
+
:where([aria-hidden='false' i][hidden]:not(:focus)) {
|
|
1402
|
+
clip: rect(0, 0, 0, 0);
|
|
1403
|
+
position: absolute;
|
|
812
1404
|
}
|
|
1405
|
+
/* Preference queries only (prefers-contrast, forced-colors). Additive. */
|
|
813
1406
|
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
1407
|
+
/* prefers-contrast: more: underline links, thicker focus, stronger borders (WCAG 1.4.1). */
|
|
1408
|
+
@media (prefers-contrast: more) {
|
|
1409
|
+
a {
|
|
1410
|
+
text-decoration: underline;
|
|
1411
|
+
}
|
|
817
1412
|
|
|
818
|
-
:
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
[type=text],
|
|
824
|
-
[type=date],
|
|
825
|
-
[type=datetime-local],
|
|
826
|
-
[type=month],
|
|
827
|
-
[type=week],
|
|
828
|
-
[type=time],
|
|
829
|
-
[type=url],
|
|
830
|
-
input[list],
|
|
831
|
-
select,
|
|
832
|
-
textarea) {
|
|
833
|
-
background-color: #fff;
|
|
834
|
-
border: 1px solid #999;
|
|
835
|
-
padding: 0.5rem 0.75rem;
|
|
836
|
-
}
|
|
837
|
-
|
|
838
|
-
:where([type=email],
|
|
839
|
-
[type=number],
|
|
840
|
-
[type=password],
|
|
841
|
-
[type=tel],
|
|
842
|
-
[type=search],
|
|
843
|
-
[type=text],
|
|
844
|
-
[type=date],
|
|
845
|
-
[type=datetime-local],
|
|
846
|
-
[type=month],
|
|
847
|
-
[type=week],
|
|
848
|
-
[type=time],
|
|
849
|
-
[type=url],
|
|
850
|
-
input[list],
|
|
851
|
-
select,
|
|
852
|
-
textarea,
|
|
853
|
-
[type=radio],
|
|
854
|
-
[type=checkbox]):active, :where([type=email],
|
|
855
|
-
[type=number],
|
|
856
|
-
[type=password],
|
|
857
|
-
[type=tel],
|
|
858
|
-
[type=search],
|
|
859
|
-
[type=text],
|
|
860
|
-
[type=date],
|
|
861
|
-
[type=datetime-local],
|
|
862
|
-
[type=month],
|
|
863
|
-
[type=week],
|
|
864
|
-
[type=time],
|
|
865
|
-
[type=url],
|
|
866
|
-
input[list],
|
|
867
|
-
select,
|
|
868
|
-
textarea,
|
|
869
|
-
[type=radio],
|
|
870
|
-
[type=checkbox]):focus {
|
|
871
|
-
transition: border 0.2s, background-color 0.2s, box-shadow 0.2s;
|
|
872
|
-
border-color: #007bff;
|
|
873
|
-
box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.25);
|
|
874
|
-
}
|
|
1413
|
+
/* Darker amber clears WCAG 1.4.11 (3:1) on white, --bf-light and --bf-dark-bg;
|
|
1414
|
+
* the default --bf-orange ring is only ~2:1 on white. */
|
|
1415
|
+
:root {
|
|
1416
|
+
--bf-focus-ring-color: rgb(184 115 0);
|
|
1417
|
+
}
|
|
875
1418
|
|
|
876
|
-
:
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
transition: color 0.2s, background 0.2s, box-shadow 0.2s;
|
|
881
|
-
}
|
|
882
|
-
:where(button, [type=button], [type=reset], [type=submit]):hover, :where(button, [type=button], [type=reset], [type=submit]):active, :where(button, [type=button], [type=reset], [type=submit]):focus {
|
|
883
|
-
text-decoration: none;
|
|
884
|
-
color: #222;
|
|
885
|
-
background: rgb(178.5, 178.5, 178.5);
|
|
886
|
-
}
|
|
887
|
-
:where(button, [type=button], [type=reset], [type=submit]):active, :where(button, [type=button], [type=reset], [type=submit]):focus {
|
|
888
|
-
box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.15);
|
|
889
|
-
}
|
|
890
|
-
|
|
891
|
-
:where(fieldset[disabled] button,
|
|
892
|
-
fieldset[disabled] input,
|
|
893
|
-
fieldset[disabled] input::after,
|
|
894
|
-
fieldset[disabled] input::before,
|
|
895
|
-
fieldset[disabled] input:checked,
|
|
896
|
-
fieldset[disabled] select,
|
|
897
|
-
fieldset[disabled] textarea,
|
|
898
|
-
fieldset[disabled] label,
|
|
899
|
-
button[disabled],
|
|
900
|
-
input[disabled],
|
|
901
|
-
input[disabled]::after,
|
|
902
|
-
input[disabled]::before,
|
|
903
|
-
input[disabled]:checked,
|
|
904
|
-
select[disabled],
|
|
905
|
-
textarea[disabled],
|
|
906
|
-
label[disabled],
|
|
907
|
-
button:disabled,
|
|
908
|
-
input:disabled,
|
|
909
|
-
input:disabled::after,
|
|
910
|
-
input:disabled::before,
|
|
911
|
-
input:disabled:checked,
|
|
912
|
-
select:disabled,
|
|
913
|
-
textarea:disabled,
|
|
914
|
-
label:disabled,
|
|
915
|
-
button[aria-disabled=true],
|
|
916
|
-
input[aria-disabled=true],
|
|
917
|
-
input[aria-disabled=true]::after,
|
|
918
|
-
input[aria-disabled=true]::before,
|
|
919
|
-
input[aria-disabled=true]:checked,
|
|
920
|
-
select[aria-disabled=true],
|
|
921
|
-
textarea[aria-disabled=true],
|
|
922
|
-
label[aria-disabled=true]) {
|
|
923
|
-
cursor: default !important;
|
|
924
|
-
cursor: not-allowed !important;
|
|
925
|
-
pointer-events: none !important;
|
|
926
|
-
-webkit-user-select: none !important;
|
|
927
|
-
-moz-user-select: none !important;
|
|
928
|
-
user-select: none !important;
|
|
929
|
-
box-shadow: none !important;
|
|
930
|
-
opacity: 0.5 !important;
|
|
931
|
-
}
|
|
1419
|
+
:focus-visible {
|
|
1420
|
+
outline-width: 0.3rem;
|
|
1421
|
+
outline-offset: 0.4rem;
|
|
1422
|
+
}
|
|
932
1423
|
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
1424
|
+
[type='email'],
|
|
1425
|
+
[type='number'],
|
|
1426
|
+
[type='password'],
|
|
1427
|
+
[type='tel'],
|
|
1428
|
+
[type='search'],
|
|
1429
|
+
[type='text'],
|
|
1430
|
+
[type='date'],
|
|
1431
|
+
[type='datetime-local'],
|
|
1432
|
+
[type='month'],
|
|
1433
|
+
[type='time'],
|
|
1434
|
+
[type='url'],
|
|
1435
|
+
[type='week'],
|
|
1436
|
+
input[list],
|
|
1437
|
+
select,
|
|
1438
|
+
textarea {
|
|
1439
|
+
border-width: 2px;
|
|
1440
|
+
}
|
|
939
1441
|
}
|
|
940
1442
|
|
|
941
|
-
:
|
|
942
|
-
|
|
943
|
-
|
|
1443
|
+
/* forced-colors: restore focus via Highlight; underline links; keep button borders. */
|
|
1444
|
+
@media (forced-colors: active) {
|
|
1445
|
+
:focus-visible {
|
|
1446
|
+
outline-color: Highlight;
|
|
1447
|
+
}
|
|
944
1448
|
|
|
945
|
-
|
|
946
|
-
:
|
|
947
|
-
|
|
948
|
-
padding-right: 0.75rem;
|
|
949
|
-
padding-left: 2rem;
|
|
950
|
-
}
|
|
1449
|
+
a {
|
|
1450
|
+
text-decoration: underline;
|
|
1451
|
+
}
|
|
951
1452
|
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
position: relative;
|
|
960
|
-
border: 1px solid/#999;
|
|
961
|
-
}
|
|
962
|
-
:where([type=checkbox], [type=radio]) + label {
|
|
963
|
-
line-height: 1.8rem;
|
|
964
|
-
vertical-align: top;
|
|
965
|
-
margin-left: 5px;
|
|
966
|
-
margin-left: 0.5rem;
|
|
967
|
-
}
|
|
968
|
-
*[dir=rtl] :where([type=checkbox], [type=radio]) + label, :where([type=checkbox], [type=radio])[dir=rtl] + label {
|
|
969
|
-
margin-left: 0;
|
|
970
|
-
margin-right: 5px;
|
|
971
|
-
margin-right: 0.5rem;
|
|
1453
|
+
/* Keep button borders so disabled/active stay distinguishable. */
|
|
1454
|
+
button,
|
|
1455
|
+
[type='button'],
|
|
1456
|
+
[type='reset'],
|
|
1457
|
+
[type='submit'] {
|
|
1458
|
+
border: 1px solid ButtonText;
|
|
1459
|
+
}
|
|
972
1460
|
}
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
1461
|
+
/* Always-dark overrides for classless (no media query, no .bf-* selectors). */
|
|
1462
|
+
|
|
1463
|
+
/* Element-level dark-mode rules, shared by the class-based and classless dark
|
|
1464
|
+
* sheets. Contains no .bf-* selector, so the classless builds can import it as
|
|
1465
|
+
* they are. Class-based extras live in _utility-global-dark-shared.css.
|
|
1466
|
+
* Underscore prefix excludes this file from the buildAllCss glob. */
|
|
1467
|
+
|
|
1468
|
+
html {
|
|
1469
|
+
color: var(--bf-light);
|
|
977
1470
|
}
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
1471
|
+
|
|
1472
|
+
body {
|
|
1473
|
+
background-color: var(--bf-dark-bg);
|
|
981
1474
|
}
|
|
982
1475
|
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
height: 1.8rem;
|
|
986
|
-
left: -0.05rem;
|
|
987
|
-
top: -0.05rem;
|
|
988
|
-
border-radius: 50%;
|
|
989
|
-
background: #fff;
|
|
990
|
-
transform: scale(0.35);
|
|
1476
|
+
a {
|
|
1477
|
+
color: var(--bf-dark-link);
|
|
991
1478
|
}
|
|
992
1479
|
|
|
993
|
-
:
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
border: 2px solid/#fff;
|
|
997
|
-
border-top: 0;
|
|
998
|
-
border-left: 0;
|
|
999
|
-
left: 35%;
|
|
1000
|
-
top: 20%;
|
|
1001
|
-
transform: rotate(43deg);
|
|
1480
|
+
a:hover,
|
|
1481
|
+
a:focus {
|
|
1482
|
+
color: var(--bf-dark-link-hover);
|
|
1002
1483
|
}
|
|
1003
1484
|
|
|
1004
|
-
|
|
1005
|
-
-
|
|
1006
|
-
-moz-appearance: none;
|
|
1007
|
-
appearance: none;
|
|
1008
|
-
width: 100%;
|
|
1009
|
-
height: 1.4rem;
|
|
1485
|
+
mark {
|
|
1486
|
+
background-color: var(--bf-dark-mark-bg);
|
|
1010
1487
|
}
|
|
1011
1488
|
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1489
|
+
ins {
|
|
1490
|
+
background-color: var(--bf-dark-ins-bg);
|
|
1491
|
+
}
|
|
1492
|
+
|
|
1493
|
+
[type='email'],
|
|
1494
|
+
[type='number'],
|
|
1495
|
+
[type='password'],
|
|
1496
|
+
[type='tel'],
|
|
1497
|
+
[type='search'],
|
|
1498
|
+
[type='text'],
|
|
1499
|
+
[type='date'],
|
|
1500
|
+
[type='datetime-local'],
|
|
1501
|
+
[type='month'],
|
|
1502
|
+
[type='week'],
|
|
1503
|
+
[type='time'],
|
|
1504
|
+
[type='url'],
|
|
1505
|
+
[type='range'],
|
|
1506
|
+
input[list],
|
|
1507
|
+
select,
|
|
1508
|
+
select:not([size], select[multiple]),
|
|
1509
|
+
textarea {
|
|
1510
|
+
background-color: var(--bf-dark-extra);
|
|
1511
|
+
border-color: var(--bf-black);
|
|
1512
|
+
color: var(--bf-gray-light);
|
|
1513
|
+
}
|
|
1514
|
+
|
|
1515
|
+
[type='email']:active,
|
|
1516
|
+
[type='email']:focus,
|
|
1517
|
+
[type='number']:active,
|
|
1518
|
+
[type='number']:focus,
|
|
1519
|
+
[type='password']:active,
|
|
1520
|
+
[type='password']:focus,
|
|
1521
|
+
[type='tel']:active,
|
|
1522
|
+
[type='tel']:focus,
|
|
1523
|
+
[type='search']:active,
|
|
1524
|
+
[type='search']:focus,
|
|
1525
|
+
[type='text']:active,
|
|
1526
|
+
[type='text']:focus,
|
|
1527
|
+
[type='date']:active,
|
|
1528
|
+
[type='date']:focus,
|
|
1529
|
+
[type='datetime-local']:active,
|
|
1530
|
+
[type='datetime-local']:focus,
|
|
1531
|
+
[type='month']:active,
|
|
1532
|
+
[type='month']:focus,
|
|
1533
|
+
[type='week']:active,
|
|
1534
|
+
[type='week']:focus,
|
|
1535
|
+
[type='time']:active,
|
|
1536
|
+
[type='time']:focus,
|
|
1537
|
+
[type='url']:active,
|
|
1538
|
+
[type='url']:focus,
|
|
1539
|
+
input[list]:active,
|
|
1540
|
+
input[list]:focus,
|
|
1541
|
+
select:active,
|
|
1542
|
+
select:focus,
|
|
1543
|
+
select:not([size], select[multiple]):active,
|
|
1544
|
+
select:not([size], select[multiple]):focus,
|
|
1545
|
+
textarea:active,
|
|
1546
|
+
textarea:focus {
|
|
1547
|
+
background-color: var(--bf-dark-extra);
|
|
1548
|
+
border-color: var(--bf-dark-border-focus);
|
|
1549
|
+
box-shadow: 0 0 0 3px var(--bf-dark-shadow-focus);
|
|
1550
|
+
}
|
|
1551
|
+
|
|
1552
|
+
select:not([size], select[multiple]) {
|
|
1553
|
+
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23f0f0f0' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e");
|
|
1554
|
+
}
|
|
1555
|
+
|
|
1556
|
+
[type='range'] {
|
|
1557
|
+
background-color: transparent;
|
|
1023
1558
|
}
|
|
1024
|
-
|
|
1025
|
-
|
|
1559
|
+
|
|
1560
|
+
[type='range']:focus {
|
|
1561
|
+
background-color: transparent;
|
|
1026
1562
|
}
|
|
1027
1563
|
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
-moz-appearance: none;
|
|
1031
|
-
appearance: none;
|
|
1032
|
-
width: 1.5rem;
|
|
1033
|
-
height: 1.5rem;
|
|
1034
|
-
background-color: #007bff;
|
|
1035
|
-
border-radius: 1.5rem;
|
|
1036
|
-
-moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
|
1037
|
-
transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
|
|
1564
|
+
[type='range']::-webkit-slider-runnable-track {
|
|
1565
|
+
background-color: var(--bf-dark-extra);
|
|
1038
1566
|
}
|
|
1039
|
-
|
|
1040
|
-
|
|
1567
|
+
|
|
1568
|
+
[type='range']::-moz-range-track {
|
|
1569
|
+
background-color: var(--bf-dark-extra);
|
|
1041
1570
|
}
|
|
1042
1571
|
|
|
1043
|
-
|
|
1044
|
-
color:
|
|
1045
|
-
border-color: transparent;
|
|
1046
|
-
width: 100%;
|
|
1047
|
-
height: 0.65rem;
|
|
1048
|
-
cursor: pointer;
|
|
1049
|
-
background-color: #e9e9e9;
|
|
1572
|
+
input::-moz-placeholder, textarea::-moz-placeholder {
|
|
1573
|
+
color: var(--bf-gray);
|
|
1050
1574
|
}
|
|
1051
1575
|
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
width: 100%;
|
|
1056
|
-
height: 0.65rem;
|
|
1057
|
-
cursor: pointer;
|
|
1058
|
-
background-color: #e9e9e9;
|
|
1576
|
+
input::placeholder,
|
|
1577
|
+
textarea::placeholder {
|
|
1578
|
+
color: var(--bf-gray);
|
|
1059
1579
|
}
|
|
1060
1580
|
|
|
1061
|
-
|
|
1062
|
-
|
|
1581
|
+
button,
|
|
1582
|
+
[type='button'],
|
|
1583
|
+
[type='reset'],
|
|
1584
|
+
[type='submit'] {
|
|
1585
|
+
background: var(--bf-gray-light);
|
|
1586
|
+
}
|
|
1587
|
+
|
|
1588
|
+
button:hover,
|
|
1589
|
+
button:active,
|
|
1590
|
+
button:focus,
|
|
1591
|
+
[type='button']:hover,
|
|
1592
|
+
[type='button']:active,
|
|
1593
|
+
[type='button']:focus,
|
|
1594
|
+
[type='reset']:hover,
|
|
1595
|
+
[type='reset']:active,
|
|
1596
|
+
[type='reset']:focus,
|
|
1597
|
+
[type='submit']:hover,
|
|
1598
|
+
[type='submit']:active,
|
|
1599
|
+
[type='submit']:focus {
|
|
1600
|
+
background: var(--bf-dark-button-hover);
|
|
1601
|
+
}
|
|
1602
|
+
|
|
1603
|
+
button:active,
|
|
1604
|
+
button:focus,
|
|
1605
|
+
[type='button']:active,
|
|
1606
|
+
[type='button']:focus,
|
|
1607
|
+
[type='reset']:active,
|
|
1608
|
+
[type='reset']:focus,
|
|
1609
|
+
[type='submit']:active,
|
|
1610
|
+
[type='submit']:focus {
|
|
1611
|
+
box-shadow: 0 0 0 3px var(--bf-dark-button-shadow);
|
|
1063
1612
|
}
|
|
1064
|
-
|
|
1065
|
-
|
|
1613
|
+
|
|
1614
|
+
dialog {
|
|
1615
|
+
color: var(--bf-light);
|
|
1616
|
+
background-color: var(--bf-dark-bg);
|
|
1066
1617
|
}
|
|
1067
|
-
|
|
1068
|
-
|
|
1618
|
+
|
|
1619
|
+
caption {
|
|
1620
|
+
color: var(--bf-gray-light);
|
|
1069
1621
|
}
|
|
1070
1622
|
|
|
1071
|
-
|
|
1072
|
-
|
|
1623
|
+
progress[value] {
|
|
1624
|
+
background: var(--bf-gray-dark-extra);
|
|
1625
|
+
color: var(--bf-blue);
|
|
1073
1626
|
}
|
|
1074
1627
|
|
|
1075
|
-
|
|
1076
|
-
|
|
1628
|
+
progress[value]::-webkit-progress-bar {
|
|
1629
|
+
background: var(--bf-gray-dark-extra);
|
|
1077
1630
|
}
|
|
1078
1631
|
|
|
1079
|
-
|
|
1080
|
-
|
|
1632
|
+
progress[value]::-webkit-progress-value {
|
|
1633
|
+
background: var(--bf-blue);
|
|
1081
1634
|
}
|
|
1082
|
-
|
|
1083
|
-
|
|
1635
|
+
|
|
1636
|
+
a:focus,
|
|
1637
|
+
input:focus {
|
|
1638
|
+
outline-color: rgb(214 140 0); /* orange -15% */
|
|
1084
1639
|
}
|
|
1085
|
-
|
|
1086
|
-
|
|
1640
|
+
|
|
1641
|
+
:focus-visible {
|
|
1642
|
+
outline-color: rgb(214 140 0); /* orange -15% */
|
|
1087
1643
|
}
|
|
1644
|
+
/* Dark scrollbar colors (Firefox + WebKit). */
|
|
1088
1645
|
|
|
1089
1646
|
html {
|
|
1090
|
-
scrollbar-color: rgb(
|
|
1647
|
+
scrollbar-color: rgb(97 97 97) var(--bf-dark-extra); /* gray-dark -5% lightness */
|
|
1091
1648
|
}
|
|
1092
1649
|
|
|
1650
|
+
/* WebKit thumb / track. */
|
|
1651
|
+
|
|
1093
1652
|
::-webkit-scrollbar {
|
|
1094
1653
|
width: 1.5rem;
|
|
1095
1654
|
height: 1.5rem;
|
|
1096
1655
|
}
|
|
1097
1656
|
|
|
1098
1657
|
::-webkit-scrollbar-track {
|
|
1099
|
-
background-color:
|
|
1658
|
+
background-color: var(--bf-dark-extra);
|
|
1100
1659
|
}
|
|
1101
1660
|
|
|
1102
1661
|
::-webkit-scrollbar-thumb {
|
|
1103
|
-
background-color: rgb(
|
|
1662
|
+
background-color: rgb(97 97 97); /* gray-dark -5% lightness */
|
|
1104
1663
|
}
|
|
1105
1664
|
|
|
1106
1665
|
::-webkit-scrollbar-thumb:hover {
|
|
1107
|
-
background-color: rgb(
|
|
1108
|
-
}
|
|
1109
|
-
|
|
1110
|
-
@media (prefers-color-scheme: dark) {
|
|
1111
|
-
html {
|
|
1112
|
-
color: #f0f0f0;
|
|
1113
|
-
}
|
|
1114
|
-
body {
|
|
1115
|
-
background-color: rgb(36.125, 36.125, 36.125);
|
|
1116
|
-
}
|
|
1117
|
-
a {
|
|
1118
|
-
color: rgb(102, 175.8, 255);
|
|
1119
|
-
}
|
|
1120
|
-
a:hover, a:focus {
|
|
1121
|
-
color: rgb(26, 136.0223463687, 255);
|
|
1122
|
-
}
|
|
1123
|
-
mark {
|
|
1124
|
-
background-color: #cccc00;
|
|
1125
|
-
}
|
|
1126
|
-
ins {
|
|
1127
|
-
background-color: hsl(60, 100%, 125%);
|
|
1128
|
-
}
|
|
1129
|
-
[type=email],
|
|
1130
|
-
[type=number],
|
|
1131
|
-
[type=password],
|
|
1132
|
-
[type=tel],
|
|
1133
|
-
[type=search],
|
|
1134
|
-
[type=text],
|
|
1135
|
-
[type=date],
|
|
1136
|
-
[type=datetime-local],
|
|
1137
|
-
[type=month],
|
|
1138
|
-
[type=week],
|
|
1139
|
-
[type=time],
|
|
1140
|
-
[type=url],
|
|
1141
|
-
[type=range],
|
|
1142
|
-
input[list],
|
|
1143
|
-
select,
|
|
1144
|
-
select:not([size], select[multiple]),
|
|
1145
|
-
textarea {
|
|
1146
|
-
background-color: #111;
|
|
1147
|
-
border-color: #000;
|
|
1148
|
-
color: #ccc;
|
|
1149
|
-
}
|
|
1150
|
-
[type=email]:active, [type=email]:focus,
|
|
1151
|
-
[type=number]:active,
|
|
1152
|
-
[type=number]:focus,
|
|
1153
|
-
[type=password]:active,
|
|
1154
|
-
[type=password]:focus,
|
|
1155
|
-
[type=tel]:active,
|
|
1156
|
-
[type=tel]:focus,
|
|
1157
|
-
[type=search]:active,
|
|
1158
|
-
[type=search]:focus,
|
|
1159
|
-
[type=text]:active,
|
|
1160
|
-
[type=text]:focus,
|
|
1161
|
-
[type=date]:active,
|
|
1162
|
-
[type=date]:focus,
|
|
1163
|
-
[type=datetime-local]:active,
|
|
1164
|
-
[type=datetime-local]:focus,
|
|
1165
|
-
[type=month]:active,
|
|
1166
|
-
[type=month]:focus,
|
|
1167
|
-
[type=week]:active,
|
|
1168
|
-
[type=week]:focus,
|
|
1169
|
-
[type=time]:active,
|
|
1170
|
-
[type=time]:focus,
|
|
1171
|
-
[type=url]:active,
|
|
1172
|
-
[type=url]:focus,
|
|
1173
|
-
[type=range]:active,
|
|
1174
|
-
[type=range]:focus,
|
|
1175
|
-
input[list]:active,
|
|
1176
|
-
input[list]:focus,
|
|
1177
|
-
select:active,
|
|
1178
|
-
select:focus,
|
|
1179
|
-
select:not([size], select[multiple]):active,
|
|
1180
|
-
select:not([size], select[multiple]):focus,
|
|
1181
|
-
textarea:active,
|
|
1182
|
-
textarea:focus {
|
|
1183
|
-
background-color: #111;
|
|
1184
|
-
border-color: rgb(51, 149.4, 255);
|
|
1185
|
-
}
|
|
1186
|
-
[type=email]:active, [type=email]:focus,
|
|
1187
|
-
[type=number]:active,
|
|
1188
|
-
[type=number]:focus,
|
|
1189
|
-
[type=password]:active,
|
|
1190
|
-
[type=password]:focus,
|
|
1191
|
-
[type=tel]:active,
|
|
1192
|
-
[type=tel]:focus,
|
|
1193
|
-
[type=search]:active,
|
|
1194
|
-
[type=search]:focus,
|
|
1195
|
-
[type=text]:active,
|
|
1196
|
-
[type=text]:focus,
|
|
1197
|
-
[type=date]:active,
|
|
1198
|
-
[type=date]:focus,
|
|
1199
|
-
[type=datetime-local]:active,
|
|
1200
|
-
[type=datetime-local]:focus,
|
|
1201
|
-
[type=month]:active,
|
|
1202
|
-
[type=month]:focus,
|
|
1203
|
-
[type=week]:active,
|
|
1204
|
-
[type=week]:focus,
|
|
1205
|
-
[type=time]:active,
|
|
1206
|
-
[type=time]:focus,
|
|
1207
|
-
[type=url]:active,
|
|
1208
|
-
[type=url]:focus,
|
|
1209
|
-
input[list]:active,
|
|
1210
|
-
input[list]:focus,
|
|
1211
|
-
select:active,
|
|
1212
|
-
select:focus,
|
|
1213
|
-
select:not([size], select[multiple]):active,
|
|
1214
|
-
select:not([size], select[multiple]):focus,
|
|
1215
|
-
textarea:active,
|
|
1216
|
-
textarea:focus {
|
|
1217
|
-
box-shadow: 0 0 0 3px rgba(3, 102, 214, 0.5);
|
|
1218
|
-
}
|
|
1219
|
-
select:not([size], select[multiple]) {
|
|
1220
|
-
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23f0f0f0' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e");
|
|
1221
|
-
}
|
|
1222
|
-
/* stylelint-disable-next-line */
|
|
1223
|
-
}
|
|
1224
|
-
@media screen and (prefers-color-scheme: dark) and (min-width: 0\0 ) and (min-resolution: 0.001dpcm) {
|
|
1225
|
-
select:not([size], select[multiple]),
|
|
1226
|
-
*[dir=rtl] select:not([size], select[multiple]),
|
|
1227
|
-
select[dir=rtl]:not([size], select[multiple]) {
|
|
1228
|
-
background-image: none;
|
|
1229
|
-
}
|
|
1230
|
-
}
|
|
1231
|
-
@media (prefers-color-scheme: dark) {
|
|
1232
|
-
[type=range] {
|
|
1233
|
-
background-color: transparent;
|
|
1234
|
-
}
|
|
1235
|
-
[type=range]:focus {
|
|
1236
|
-
background-color: transparent;
|
|
1237
|
-
}
|
|
1238
|
-
[type=range]::-webkit-slider-runnable-track {
|
|
1239
|
-
background-color: #111;
|
|
1240
|
-
}
|
|
1241
|
-
[type=range]::-moz-range-track {
|
|
1242
|
-
background-color: #111;
|
|
1243
|
-
}
|
|
1244
|
-
input::-moz-placeholder, textarea::-moz-placeholder {
|
|
1245
|
-
color: #999;
|
|
1246
|
-
}
|
|
1247
|
-
input::placeholder,
|
|
1248
|
-
textarea::placeholder {
|
|
1249
|
-
color: #999;
|
|
1250
|
-
}
|
|
1251
|
-
button,
|
|
1252
|
-
[type=button],
|
|
1253
|
-
[type=reset],
|
|
1254
|
-
[type=submit] {
|
|
1255
|
-
background: #ccc;
|
|
1256
|
-
}
|
|
1257
|
-
button:hover, button:active, button:focus,
|
|
1258
|
-
[type=button]:hover,
|
|
1259
|
-
[type=button]:active,
|
|
1260
|
-
[type=button]:focus,
|
|
1261
|
-
[type=reset]:hover,
|
|
1262
|
-
[type=reset]:active,
|
|
1263
|
-
[type=reset]:focus,
|
|
1264
|
-
[type=submit]:hover,
|
|
1265
|
-
[type=submit]:active,
|
|
1266
|
-
[type=submit]:focus {
|
|
1267
|
-
background: rgb(178.5, 178.5, 178.5);
|
|
1268
|
-
}
|
|
1269
|
-
button:active, button:focus,
|
|
1270
|
-
[type=button]:active,
|
|
1271
|
-
[type=button]:focus,
|
|
1272
|
-
[type=reset]:active,
|
|
1273
|
-
[type=reset]:focus,
|
|
1274
|
-
[type=submit]:active,
|
|
1275
|
-
[type=submit]:focus {
|
|
1276
|
-
box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.45);
|
|
1277
|
-
}
|
|
1278
|
-
button:active, button:focus,
|
|
1279
|
-
[type=button]:active,
|
|
1280
|
-
[type=button]:focus,
|
|
1281
|
-
[type=reset]:active,
|
|
1282
|
-
[type=reset]:focus,
|
|
1283
|
-
[type=submit]:active,
|
|
1284
|
-
[type=submit]:focus {
|
|
1285
|
-
box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.45);
|
|
1286
|
-
}
|
|
1287
|
-
a:focus,
|
|
1288
|
-
input:focus {
|
|
1289
|
-
outline-color: rgb(178.5, 115.5, 0);
|
|
1290
|
-
}
|
|
1291
|
-
:focus-visible {
|
|
1292
|
-
outline-color: rgb(178.5, 115.5, 0);
|
|
1293
|
-
}
|
|
1294
|
-
dialog {
|
|
1295
|
-
color: #f0f0f0;
|
|
1296
|
-
background-color: rgb(36.125, 36.125, 36.125);
|
|
1297
|
-
}
|
|
1666
|
+
background-color: rgb(115 115 115); /* gray-dark +10% lightness */
|
|
1298
1667
|
}
|
|
1299
|
-
/*# sourceMappingURL=bullframe-classless-dark.css.map */
|