@wwtdev/bsds-css 2.18.0 → 2.19.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.
@@ -1,12 +1,18 @@
1
+ :where(.bs-banner) {
2
+ --banner-bg: var(--bs-royal-400);
3
+ --banner-icon-display: none;
4
+ --banner-padding: var(--banner-padding-m);
5
+ --banner-padding-m: 1rem 1.5rem;
6
+ --banner-padding-dt: .5rem 2.25rem;
7
+ }
8
+
1
9
  .bs-banner {
2
- background-color: var(--bs-royal-400);
3
- color: var(--bs-gray-100);
10
+ background-color: var(--banner-bg);
11
+ color: var(--bs-ink-white);
4
12
  display: flex;
5
13
  justify-content: center;
6
- padding-bottom: 1rem;
7
- padding-left: 1.25rem;
8
- padding-right: 1.25rem;
9
- padding-top: 1rem;
14
+ min-height: 3rem;
15
+ padding: var(--banner-padding);
10
16
  }
11
17
 
12
18
  .bs-banner:where([data-dismissed]:not([data-dismissed="false"])) {
@@ -23,7 +29,7 @@
23
29
 
24
30
  .bs-banner :where(.bs-banner-content .bs-banner-warning-icon) {
25
31
  /* Do not display icon on smaller screens */
26
- display: none;
32
+ display: var(--banner-icon-display);
27
33
  margin-right: 0.625rem;
28
34
  }
29
35
 
@@ -33,18 +39,26 @@
33
39
  }
34
40
 
35
41
  .bs-banner :where(.bs-banner-content p a) {
36
- color: var(--bs-blue-lightest);
37
42
  text-decoration: underline;
38
43
  }
39
44
 
45
+ .bs-banner :where(a:hover) {
46
+ color: rgba(255, 255, 255, 0.8);
47
+ }
48
+
40
49
  .bs-banner :where(.bs-banner-content button) {
41
50
  background-color: inherit;
42
51
  color: inherit;
43
52
  cursor: pointer;
44
53
  }
45
54
 
55
+ .bs-banner:where([data-variant="negative"]) {
56
+ --banner-bg: var(--bs-red-300);
57
+ }
58
+
46
59
  @media (min-width: 957px) {
47
- .bs-banner :where(.bs-banner-content .bs-banner-warning-icon) {
48
- display: inline-flex;
60
+ .bs-banner {
61
+ --banner-icon-display: inline-flex;
62
+ --banner-padding: var(--banner-padding-dt);
49
63
  }
50
64
  }
@@ -196,6 +196,12 @@ a.bs-circle-button {
196
196
  --btn-text-color-hovered: var(--bs-pink-base);
197
197
  }
198
198
 
199
+ .bs-circle-button:where([data-variant="color-orange"]) {
200
+ --btn-border-color-focused: var(--bs-ink-orange);
201
+ --btn-text-color: var(--bs-ink-orange);
202
+ --btn-text-color-hovered: var(--bs-orange-base);
203
+ }
204
+
199
205
  .bs-circle-button:where([data-variant="color-red"]) {
200
206
  --btn-border-color-focused: var(--bs-ink-red);
201
207
  --btn-text-color: var(--bs-ink-red);
@@ -3,7 +3,6 @@
3
3
  justify-content: space-between;
4
4
  align-items: flex-start;
5
5
  gap: var(--bs-space-2);
6
- padding: 0 0.75rem;
7
6
  margin-top: 0.5rem;
8
7
  }
9
8
 
@@ -4,9 +4,9 @@
4
4
  }
5
5
 
6
6
  .bs-input-addon {
7
- --input-border: var(--bs-violet-300);
7
+ --input-border: var(--bs-border-input);
8
8
  align-items: center;
9
- background-color: var(--input-bg, transparent);
9
+ background-color: var(--input-bg, var(--bs-bg-base));
10
10
  border-radius: .25rem;
11
11
  color: var(--bs-ink-base);
12
12
  display: flex;
@@ -17,13 +17,17 @@
17
17
  position: relative;
18
18
  }
19
19
 
20
+ :where(.dark) .bs-input-addon {
21
+ background-color: var(--input-bg, transparent);
22
+ }
23
+
20
24
  .bs-input-addon * {
21
25
  background-color: transparent;
22
26
  }
23
27
 
24
28
  /* Fix issue in Windows, where <select> options would be invisible, due to background-color: transparent */
25
29
  .bs-input-addon :where(.bs-select, select) {
26
- background-color: var(--bs-bg-base);
30
+ background-color: var(--input-bg, var(--bs-bg-base));
27
31
  }
28
32
 
29
33
  /**
@@ -49,11 +53,16 @@ and issues with box-sizing
49
53
  }
50
54
 
51
55
  .bs-input-addon::after {
56
+ border-color: var(--input-border);
52
57
  border-radius: .25rem;
53
- border: 1px solid var(--input-border);
58
+ border-style: solid;
59
+ border-width: var(--input-border-width, 1px);
54
60
  }
61
+
55
62
  .bs-input-addon :where(.bs-input-addon)::after {
56
- border: 1px solid var(--input-addon-nested-border);
63
+ border-color: var(--input-addon-nested-border);
64
+ border-style: solid;
65
+ border-width: var(--input-border-width, 1px);
57
66
  }
58
67
 
59
68
  .bs-input-addon > * {
@@ -111,7 +120,7 @@ and issues with box-sizing
111
120
  /** Inner borders should be straight; shown only if variant: "inner-bordered" */
112
121
 
113
122
  .bs-input-addon:where([data-variant="inner-bordered"]) {
114
- --input-addon-nested-border: var(--bs-violet-lightest);
123
+ --input-addon-nested-border: var(--bs-violet-200);
115
124
  }
116
125
 
117
126
  .bs-input-addon > :where(.bs-input-addon:not(:last-child, :focus-within, [data-part="right"])),
@@ -176,13 +185,6 @@ and issues with box-sizing
176
185
  width: 1rem;
177
186
  }
178
187
 
179
- /* -------- Hover styles -------- */
180
- .bs-input-addon:hover,
181
- :where(label):hover + .bs-input-addon,
182
- :where(label):hover + * .bs-input-addon:where(:not(label .bs-input-addon, label + .bs-input-addon)) {
183
- --input-bg: var(--bs-bg-input-hover);
184
- }
185
-
186
188
  /* -------- Focus styles -------- */
187
189
  .bs-input-addon {
188
190
  --focus-border: var(--bs-blue-base);
@@ -247,6 +249,15 @@ and issues with box-sizing
247
249
  .bs-input-addon:where([data-disabled]:not([data-disabled="false"])) * {
248
250
  pointer-events: none;
249
251
  }
252
+ .bs-input-addon:where([data-disabled]:not([data-disabled="false"]))::after,
253
+ .bs-input-addon:where([data-disabled]:not([data-disabled="false"]))::before,
254
+ .bs-input-addon:where([data-disabled]:not([data-disabled="false"])):where([data-variant="inner-bordered"]) {
255
+ --input-border-width: 0;
256
+ }
257
+
258
+ .bs-input-addon:where([data-disabled]:not([data-disabled="false"])):where([data-variant="inner-bordered"]) > :where(:not(:focus, :focus-within))::after {
259
+ border-right-width: 0;
260
+ }
250
261
 
251
262
  /* -------- Error styles -------- */
252
263
  .bs-input-addon:where([data-error]:not([data-error="false"])),
@@ -7,6 +7,11 @@
7
7
  min-width: 6rem;
8
8
  padding: 0 1rem;
9
9
  }
10
+
11
+ .bs-input-phone .bs-input-addon:where([data-disabled]:not([data-disabled="false"])) :where(button) :where(span) {
12
+ filter: grayscale(1);
13
+ }
14
+
10
15
  .bs-input-phone ul:where(.bs-dropdown-options) {
11
16
  min-width: 7.5rem;
12
17
  }
@@ -21,8 +21,8 @@ textarea,
21
21
  select,
22
22
  :is(.bs-input, .bs-select, .bs-textarea) {
23
23
  appearance: none;
24
- background-color: var(--input-bg, transparent);
25
- border-color: var(--input-border, var(--bs-violet-medium));
24
+ background-color: var(--input-bg, var(--bs-bg-base));
25
+ border-color: var(--input-border, var(--bs-border-input));
26
26
  border-radius: 0.25rem;
27
27
  border-style: solid;
28
28
  border-width: var(--input-border-width, 1px);
@@ -36,6 +36,13 @@ select,
36
36
  padding-inline: var(--input-padding-inline, 0.75rem);
37
37
  }
38
38
 
39
+ :where(.dark) input:where(:not([type='checkbox'], [type='radio'], [type='file'], [type='range'])),
40
+ :where(.dark) textarea,
41
+ :where(.dark) select,
42
+ :where(.dark) :is(.bs-input, .bs-select, .bs-textarea) {
43
+ --input-bg: transparent;
44
+ }
45
+
39
46
  input:where(:not([type='checkbox'], [type='radio'], [type='file'], [type='range'])),
40
47
  textarea,
41
48
  select,
@@ -60,15 +67,21 @@ textarea {
60
67
  :is(input, textarea, select)::placeholder,
61
68
  :is(.bs-input, .bs-select, .bs-textarea)::placeholder,
62
69
  :is(.bs-input, .bs-select, .bs-textarea):where([data-placeholder="true"]) {
63
- color: var(--input-placeholder, var(--bs-violet-lightest));
70
+ color: var(--input-placeholder, var(--bs-violet-100));
64
71
  }
72
+
73
+ :where(.dark) :is(input, textarea, select)::placeholder,
74
+ :where(.dark) :is(.bs-input, .bs-select, .bs-textarea)::placeholder,
75
+ :where(.dark) :is(.bs-input, .bs-select, .bs-textarea):where([data-placeholder="true"]) {
76
+ --input-placeholder: var(--bs-violet-200);
77
+ }
78
+
65
79
  :is(input, textarea, select):where(:focus-visible)::placeholder,
66
80
  :is(.bs-input, .bs-select, .bs-textarea):where(:focus-visible)::placeholder {
67
81
  opacity: 0;
68
82
  }
69
83
 
70
84
  /* FOCUS state */
71
-
72
85
  :is(input:where(:not([type='checkbox'], [type='radio'])), textarea, select):where(:focus-visible),
73
86
  :is(.bs-input, .bs-select, .bs-textarea):where(:focus-visible),
74
87
  :is(select, .bs-select):where(:focus) {
@@ -77,15 +90,7 @@ textarea {
77
90
  outline-width: 0px;
78
91
  }
79
92
 
80
- /* HOVER state */
81
-
82
- :is(input:where(:not([type='checkbox'], [type='radio'])), textarea, select):where(:hover),
83
- :is(.bs-input, .bs-select, .bs-textarea):where(:hover) {
84
- --input-bg: var(--bs-bg-input-hover);
85
- }
86
-
87
93
  /* DISABLED state */
88
-
89
94
  :is(input:where(:not([type='checkbox'],[type='radio'])), textarea, select):where(:disabled),
90
95
  :is(.bs-input, .bs-select, .bs-textarea):where(:disabled) {
91
96
  --input-border: var(--bs-ink-disabled);
@@ -94,7 +99,10 @@ textarea {
94
99
  }
95
100
 
96
101
  /* Text inputs should not have a border when disabled */
97
- :is(input:where(:not([type]),[type="text"],[type="number"],[type="email"],[type="password"],[type="url"])):where(:disabled) {
102
+ :is(input:where(:not([type]),[type="text"],[type="number"],[type="email"],[type="password"],[type="url"])):where(:disabled),
103
+ textarea:where(:disabled),
104
+ select:where(:disabled),
105
+ :is(.bs-input, .bs-select, .bs-textarea):where(:disabled) {
98
106
  --input-border-width: 0px;
99
107
  }
100
108
 
@@ -145,16 +153,10 @@ select[multiple],
145
153
 
146
154
  :where(.dark) select,
147
155
  :where(.dark) .bs-select {
148
- --input-bg: var(--bs-bg-base);
149
156
  /* URL Encoded SVG dropdown caret so there is something there */
150
157
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath fill='%23ffffff' d='M8.048 13.375a.745.745 0 0 1-.526-.217L0 5.686l1.053-1.061 6.995 6.95 6.897-6.85 1.053 1.06-7.423 7.373a.745.745 0 0 1-.527.217Z'/%3E%3C/svg%3E");
151
158
  }
152
159
 
153
- :where(.dark .box) select,
154
- :where(.dark .box) .bs-select {
155
- --input-bg: var(--bg-color, var(--bs-bg-subtle));
156
- }
157
-
158
160
  :where(.dark) select:where(:disabled),
159
161
  :where(.dark) .bs-select:where(:disabled) {
160
162
  /* URL Encoded SVG dropdown caret so there is something there */
@@ -171,7 +171,8 @@ module.exports = {
171
171
  "dark": "var(--bs-border-dark)",
172
172
  "base": "var(--bs-border-base)",
173
173
  "medium": "var(--bs-border-medium)",
174
- "light": "var(--bs-border-light)"
174
+ "light": "var(--bs-border-light)",
175
+ "input": "var(--bs-border-input)",
175
176
  },
176
177
  borderRadius: {
177
178
  md: ".25rem"
@@ -387,6 +387,7 @@ button {
387
387
  --bs-border-base: var(--bs-gray-200);
388
388
  --bs-border-medium: var(--bs-gray-150);
389
389
  --bs-border-light: var(--bs-gray-100);
390
+ --bs-border-input: rgba(99, 66, 145, 0.75); /* --bs-violet-300 at .75 opacity */
390
391
 
391
392
  /* Spacing */
392
393
  --bs-content-top: 4rem;
@@ -447,7 +448,7 @@ button {
447
448
  --bs-ink-plum: var(--bs-plum-100);
448
449
  --bs-ink-purple: var(--bs-purple-200);
449
450
  --bs-ink-red: var(--bs-red-200);
450
- --bs-ink-royal: var(--bs-royal-100);
451
+ --bs-ink-royal: var(--bs-royal-200);
451
452
  --bs-ink-violet: var(--bs-violet-200);
452
453
 
453
454
  --bs-blue-base: var(--bs-blue-300);
@@ -473,6 +474,7 @@ button {
473
474
  --bs-border-base: rgba(163, 164, 183, 0.7); /* --bs-gray-300 at .7 opacity */
474
475
  --bs-border-medium: var(--bs-gray-400);
475
476
  --bs-border-light: rgba(78, 79, 95, 0.5); /* --bs-gray-400 at .5 opacity */
477
+ --bs-border-input: var(--bs-violet-200);
476
478
 
477
479
  --bs-shadow-base: rgba(0, 0, 0, 0.06);
478
480
  --bs-shadow-invert: rgba(10, 11, 25, 0.60);
@@ -891,7 +893,7 @@ a:where(.bs-link):where(:focus:not(:focus-visible)) {
891
893
  /* Specificity should be either (0, 1, 0) (class-based) or (0, 0, 1) (element-based) for each selector */
892
894
 
893
895
  .box {
894
- background: var(--bg-color, var(--bs-bg-subtle));
896
+ background: var(--bg-color, var(--bs-bg-medium-to-light));
895
897
  border-radius: 0.25rem;
896
898
  padding: var(--box-space, var(--bs-space-6));
897
899
  }