@bi-digital/css 0.0.0-experimental-ca10f7e → 0.0.0-experimental-2ec4984

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.
@@ -48,3 +48,9 @@
48
48
  --bic-avatar-size: var(--bi-scale-16x);
49
49
  --bic-avatar-font-size: 1.25rem;
50
50
  }
51
+
52
+ .bi-avatar > img {
53
+ object-fit: cover;
54
+ width: 100%;
55
+ height: 100%;
56
+ }
@@ -109,15 +109,96 @@
109
109
  .bi-card .bi-card--content {
110
110
  padding: var(--bic-card-content-padding);
111
111
  gap: var(--bi-scale-4x);
112
+ border-radius: inherit;
113
+ border: none;
112
114
  flex-direction: column;
113
115
  flex: auto;
114
116
  display: flex;
115
117
  }
116
118
 
119
+ .bi-card .bi-card--content > p {
120
+ color: var(--bic-card-content-color);
121
+ white-space: break-spaces;
122
+ text-overflow: ellipsis;
123
+ -webkit-line-clamp: 2;
124
+ line-clamp: 2;
125
+ -webkit-box-orient: vertical;
126
+ margin: 0;
127
+ font-size: .875rem;
128
+ font-weight: 500;
129
+ line-height: 1.5;
130
+ display: -webkit-box;
131
+ overflow: hidden;
132
+ }
133
+
134
+ @media not (min-width: 768px) {
135
+ .bi-card .bi-card--content {
136
+ --bic-card-content-padding: var(--bi-scale-3x);
137
+ gap: var(--bi-scale-3x);
138
+ }
139
+ }
140
+
141
+ .bi-card:-webkit-any(a, button) {
142
+ cursor: pointer;
143
+ background: none;
144
+ text-decoration: none;
145
+ position: relative;
146
+ }
147
+
148
+ .bi-card:-webkit-any(a, button):not(.disabled):focus-visible {
149
+ box-shadow: var(--_bi--focus, 0 0 0 4.5px var(--bi-basic-white), var(--bic-button-box-shadow));
150
+ outline: var(--_bi--focus, 1.5px solid var(--bi-primary-50));
151
+ outline-offset: var(--_bi--focus, 2px);
152
+ }
153
+
154
+ .bi-card:-webkit-any(a, button):not(.disabled):focus-visible * {
155
+ --_bi--focus: ;
156
+ }
157
+
158
+ .bi-card:-webkit-any(a, button):not(.disabled):hover {
159
+ box-shadow: 0px 0px 0px 2px var(--bi-neutral-50), 0px 0px 20px var(--bi-scale-1-5x) #0000000d, 0px 0px 10px 0px #0000000d;
160
+ }
161
+
162
+ .bi-card:-webkit-any(a, button):not(.disabled):active {
163
+ box-shadow: 0px 0px 0px var(--bi-stroke-default) var(--bi-primary-50), 0px 0px 20px var(--bi-scale-1-5x) #0000000d, 0px 0px 10px 0px #0000000d;
164
+ }
165
+
166
+ .bi-card:-webkit-any(a, button):disabled {
167
+ cursor: not-allowed;
168
+ }
169
+
170
+ .bi-card:is(a, button) {
171
+ cursor: pointer;
172
+ background: none;
173
+ text-decoration: none;
174
+ position: relative;
175
+ }
176
+
177
+ .bi-card:is(a, button):not(.disabled):focus-visible {
178
+ box-shadow: var(--_bi--focus, 0 0 0 4.5px var(--bi-basic-white), var(--bic-button-box-shadow));
179
+ outline: var(--_bi--focus, 1.5px solid var(--bi-primary-50));
180
+ outline-offset: var(--_bi--focus, 2px);
181
+ }
182
+
183
+ .bi-card:is(a, button):not(.disabled):focus-visible * {
184
+ --_bi--focus: ;
185
+ }
186
+
187
+ .bi-card:is(a, button):not(.disabled):hover {
188
+ box-shadow: 0px 0px 0px 2px var(--bi-neutral-50), 0px 0px 20px var(--bi-scale-1-5x) #0000000d, 0px 0px 10px 0px #0000000d;
189
+ }
190
+
191
+ .bi-card:is(a, button):not(.disabled):active {
192
+ box-shadow: 0px 0px 0px var(--bi-stroke-default) var(--bi-primary-50), 0px 0px 20px var(--bi-scale-1-5x) #0000000d, 0px 0px 10px 0px #0000000d;
193
+ }
194
+
195
+ .bi-card:is(a, button):disabled {
196
+ cursor: not-allowed;
197
+ }
198
+
117
199
  .bi-card .bi-card--content:-webkit-any(a, button) {
118
200
  cursor: pointer;
119
201
  background: none;
120
- border: none;
121
202
  text-decoration: none;
122
203
  position: relative;
123
204
  }
@@ -147,7 +228,6 @@
147
228
  .bi-card .bi-card--content:is(a, button) {
148
229
  cursor: pointer;
149
230
  background: none;
150
- border: none;
151
231
  text-decoration: none;
152
232
  position: relative;
153
233
  }
@@ -174,28 +254,6 @@
174
254
  cursor: not-allowed;
175
255
  }
176
256
 
177
- .bi-card .bi-card--content > p {
178
- color: var(--bic-card-content-color);
179
- white-space: break-spaces;
180
- text-overflow: ellipsis;
181
- -webkit-line-clamp: 2;
182
- line-clamp: 2;
183
- -webkit-box-orient: vertical;
184
- margin: 0;
185
- font-size: .875rem;
186
- font-weight: 500;
187
- line-height: 1.5;
188
- display: -webkit-box;
189
- overflow: hidden;
190
- }
191
-
192
- @media not (min-width: 768px) {
193
- .bi-card .bi-card--content {
194
- --bic-card-content-padding: var(--bi-scale-3x);
195
- gap: var(--bi-scale-3x);
196
- }
197
- }
198
-
199
257
  .bi-card .bi-card--actions {
200
258
  flex-direction: var(--bic-card-actions-flex-direction, column);
201
259
  justify-content: center;
@@ -215,7 +273,7 @@
215
273
  --bic-button-font-size: var(--bi-icon-medium);
216
274
  --bic-button-color: var(--bic-card-actions-icon-color);
217
275
  --bic-button-size: var(--bi-scale-14x);
218
- height: 100%;
276
+ flex: 1;
219
277
  }
220
278
 
221
279
  @media not (min-width: 768px) {
@@ -0,0 +1,22 @@
1
+ .bi-checkbox-subsection {
2
+ --bic-checkbox-subsection-line-bg: var(--bi-neutral-30);
3
+ display: flex;
4
+ }
5
+
6
+ .bi-checkbox-subsection[data-dark="true"] {
7
+ --bic-checkbox-subsection-line-bg: var(--bi-neutral-50);
8
+ }
9
+
10
+ .bi-checkbox-subsection > div:first-child {
11
+ margin: 0 var(--bi-scale-3x) 0 var(--bi-scale-5x);
12
+ background-color: var(--bic-checkbox-subsection-line-bg);
13
+ width: var(--bi-stroke-default);
14
+ }
15
+
16
+ .bi-checkbox-subsection > div:last-child {
17
+ align-items: flex-start;
18
+ gap: var(--bi-scale-0-50x);
19
+ flex-direction: column;
20
+ flex: 1;
21
+ display: flex;
22
+ }
@@ -0,0 +1,80 @@
1
+ .bi-filter-group {
2
+ --bic-filter-group-background-color: var(--bi-basic-white);
3
+ --bic-filter-group-background-color-hover: var(--bi-primary-5);
4
+ --bic-filter-group-background-color-expanded: var(--bi-neutral-15);
5
+ --bic-filter-group-border-color: var(--bi-neutral-15);
6
+ --bic-filter-group-text-color: var(--bi-neutral-90);
7
+ }
8
+
9
+ .bi-filter-group[data-dark="true"] {
10
+ --bic-filter-group-background-color: var(--bi-neutral-90);
11
+ --bic-filter-group-background-color-hover: var(--bi-primary-90);
12
+ --bic-filter-group-background-color-expanded: var(--bi-neutral-80);
13
+ --bic-filter-group-border-color: var(--bi-neutral-70);
14
+ --bic-filter-group-text-color: var(--bi-basic-white);
15
+ }
16
+
17
+ .bi-filter-group {
18
+ flex-direction: column;
19
+ display: flex;
20
+ }
21
+
22
+ .bi-filter-group > button {
23
+ box-shadow: 0 var(--bi-scale-0-25x) 0 0 var(--bic-filter-group-border-color);
24
+ height: var(--bi-scale-12x);
25
+ color: var(--bic-filter-group-text-color);
26
+ align-items: center;
27
+ gap: var(--bi-scale-2x);
28
+ width: 100%;
29
+ padding: var(--bi-scale-2x) var(--bi-scale-1-5x);
30
+ background: var(--bic-filter-group-background-color);
31
+ cursor: pointer;
32
+ border-radius: var(--bi-radius-small) var(--bi-radius-small) 0 0;
33
+ border: none;
34
+ flex-direction: row;
35
+ font-size: 1rem;
36
+ display: flex;
37
+ }
38
+
39
+ .bi-filter-group > button:hover {
40
+ background: var(--bic-filter-group-background-color-hover);
41
+ }
42
+
43
+ .bi-filter-group > button:focus-visible {
44
+ box-shadow: 0 0 0 4.5px var(--bi-basic-white);
45
+ outline: 1.5px solid var(--bi-primary-50);
46
+ outline-offset: 2px;
47
+ border-radius: var(--bi-radius-small);
48
+ }
49
+
50
+ .bi-filter-group > button > [data-bi-icon="true"] {
51
+ width: var(--bi-scale-6x);
52
+ height: var(--bi-scale-6x);
53
+ font-size: var(--bi-icon-medium);
54
+ }
55
+
56
+ .bi-filter-group > button > h3 {
57
+ text-align: left;
58
+ flex: 1;
59
+ margin: 0;
60
+ font-family: museo-sans, Arial, sans-serif;
61
+ font-weight: 700;
62
+ line-height: 1.5;
63
+ }
64
+
65
+ .bi-filter-group > div {
66
+ gap: var(--bi-scale-2x);
67
+ padding: var(--bi-scale-3x) 0 var(--bi-scale-8x);
68
+ flex-direction: column;
69
+ display: none;
70
+ }
71
+
72
+ .bi-filter-group[data-expanded="true"] > button {
73
+ box-shadow: none;
74
+ --bic-filter-group-background-color: var(--bic-filter-group-background-color-expanded);
75
+ border-radius: var(--bi-radius-small);
76
+ }
77
+
78
+ .bi-filter-group[data-expanded="true"] > div {
79
+ display: flex;
80
+ }
@@ -13,7 +13,7 @@
13
13
  --bic-navbar-color: var(--bi-basic-white);
14
14
  }
15
15
 
16
- .bi-navbar .bi-navbar__header {
16
+ .bi-navbar > header {
17
17
  height: var(--bi-layout-navbar-height);
18
18
  align-items: center;
19
19
  gap: var(--bi-scale-6x);
@@ -24,38 +24,20 @@
24
24
  display: flex;
25
25
  }
26
26
 
27
- .bi-navbar .bi-navbar__header > :first-child {
27
+ @media (prefers-reduced-motion: no-preference) {
28
+ .bi-navbar > header {
29
+ transition: transform .2s ease-in-out;
30
+ }
31
+ }
32
+
33
+ .bi-navbar > header > :first-child {
28
34
  margin-right: auto;
29
35
  }
30
36
 
31
- .bi-navbar[data-fixed="true"] .bi-navbar__header {
37
+ .bi-navbar[data-fixed="true"] > header {
32
38
  z-index: 100;
33
39
  position: fixed;
34
40
  top: 0;
35
41
  left: 0;
36
42
  right: 0;
37
43
  }
38
-
39
- .bi-navbar .bi-navbar__skip-link {
40
- background: var(--bi-primary-50);
41
- color: var(--bi-basic-white);
42
- outline-offset: 0px;
43
- border-radius: 4px;
44
- align-content: center;
45
- height: 44px;
46
- padding: 0 7px;
47
- font-size: .75rem;
48
- font-weight: 400;
49
- position: absolute;
50
- left: 50%;
51
- transform: translate(-50%, -62px);
52
- }
53
-
54
- .bi-navbar .bi-navbar__skip-link:focus {
55
- border-radius: var(--bi-radius-medium);
56
- outline-offset: 2px;
57
- outline: 1.5px solid var(--bi-primary-50);
58
- box-shadow: 0 0 0 2px var(--bi-basic-white);
59
- transition: transform .3s;
60
- transform: translate(-50%);
61
- }
@@ -0,0 +1,32 @@
1
+ .bi-skip-link {
2
+ --bic-skip-link-color: var(--bi-basic-white);
3
+ --bic-skip-link-background: var(--bi-primary-50);
4
+ background: var(--bic-skip-link-background);
5
+ color: var(--bic-skip-link-color);
6
+ outline-offset: 0px;
7
+ z-index: 200;
8
+ border-radius: 4px;
9
+ align-content: center;
10
+ height: 44px;
11
+ padding: 0 7px;
12
+ font-size: 1rem;
13
+ font-weight: 500;
14
+ transition: transform .3s ease-in-out;
15
+ position: absolute;
16
+ left: 50%;
17
+ transform: translate(-50%, -110%);
18
+ }
19
+
20
+ @media (prefers-reduced-motion: reduce) {
21
+ .bi-skip-link {
22
+ transition: none;
23
+ }
24
+ }
25
+
26
+ .bi-skip-link:focus {
27
+ transform: translate(-50%, var(--bi-scale-2x));
28
+ border-radius: var(--bi-radius-medium);
29
+ outline-offset: 2px;
30
+ outline: 1.5px solid var(--bi-primary-50);
31
+ box-shadow: 0 0 0 2px var(--bi-basic-white);
32
+ }
@@ -0,0 +1,11 @@
1
+ .bi-sticky-header {
2
+ z-index: 101;
3
+ position: -webkit-sticky;
4
+ position: sticky;
5
+ }
6
+
7
+ @media (prefers-reduced-motion: no-preference) {
8
+ .bi-sticky-header {
9
+ transition: top .2s ease-in-out;
10
+ }
11
+ }
@@ -0,0 +1,34 @@
1
+ .bi-sub-navbar--wrapper {
2
+ height: var(--bi-layout-navbar-height);
3
+ position: relative;
4
+ }
5
+
6
+ .bi-sub-navbar--wrapper .bi-sub-navbar {
7
+ --bic-sub-navbar-background-color: var(--bi-basic-white);
8
+ --bic-sub-navbar-color: var(--bi-basic-key);
9
+ --bic-sub-navbar-border-color: var(--bi-neutral-15);
10
+ height: var(--bi-layout-navbar-height);
11
+ background-color: var(--bic-sub-navbar-background-color);
12
+ border-bottom: 1px solid var(--bic-sub-navbar-border-color);
13
+ width: 100%;
14
+ position: absolute;
15
+ top: 0;
16
+ left: 0;
17
+ }
18
+
19
+ .bi-sub-navbar--wrapper .bi-sub-navbar[data-dark="true"] {
20
+ --bic-sub-navbar-background-color: var(--bi-primary-95);
21
+ --bic-sub-navbar-color: var(--bi-basic-white);
22
+ --bic-sub-navbar-border-color: var(--bi-neutral-70);
23
+ }
24
+
25
+ .bi-sub-navbar--wrapper .bi-sub-navbar[data-fixed="true"] {
26
+ z-index: 101;
27
+ position: fixed;
28
+ }
29
+
30
+ @media (prefers-reduced-motion: no-preference) {
31
+ .bi-sub-navbar--wrapper .bi-sub-navbar[data-fixed="true"] {
32
+ transition: top .2s ease-in-out;
33
+ }
34
+ }
@@ -153,6 +153,12 @@
153
153
  --bic-avatar-font-size: 1.25rem;
154
154
  }
155
155
 
156
+ .bi-avatar > img {
157
+ object-fit: cover;
158
+ width: 100%;
159
+ height: 100%;
160
+ }
161
+
156
162
  .bi-badge {
157
163
  --bic-badge-background: transparent;
158
164
  --bic-badge-color: var(--bi-neutral-60);
@@ -561,15 +567,96 @@
561
567
  .bi-card .bi-card--content {
562
568
  padding: var(--bic-card-content-padding);
563
569
  gap: var(--bi-scale-4x);
570
+ border-radius: inherit;
571
+ border: none;
564
572
  flex-direction: column;
565
573
  flex: auto;
566
574
  display: flex;
567
575
  }
568
576
 
577
+ .bi-card .bi-card--content > p {
578
+ color: var(--bic-card-content-color);
579
+ white-space: break-spaces;
580
+ text-overflow: ellipsis;
581
+ -webkit-line-clamp: 2;
582
+ line-clamp: 2;
583
+ -webkit-box-orient: vertical;
584
+ margin: 0;
585
+ font-size: .875rem;
586
+ font-weight: 500;
587
+ line-height: 1.5;
588
+ display: -webkit-box;
589
+ overflow: hidden;
590
+ }
591
+
592
+ @media not (min-width: 768px) {
593
+ .bi-card .bi-card--content {
594
+ --bic-card-content-padding: var(--bi-scale-3x);
595
+ gap: var(--bi-scale-3x);
596
+ }
597
+ }
598
+
599
+ .bi-card:-webkit-any(a, button) {
600
+ cursor: pointer;
601
+ background: none;
602
+ text-decoration: none;
603
+ position: relative;
604
+ }
605
+
606
+ .bi-card:-webkit-any(a, button):not(.disabled):focus-visible {
607
+ box-shadow: var(--_bi--focus, 0 0 0 4.5px var(--bi-basic-white), var(--bic-button-box-shadow));
608
+ outline: var(--_bi--focus, 1.5px solid var(--bi-primary-50));
609
+ outline-offset: var(--_bi--focus, 2px);
610
+ }
611
+
612
+ .bi-card:-webkit-any(a, button):not(.disabled):focus-visible * {
613
+ --_bi--focus: ;
614
+ }
615
+
616
+ .bi-card:-webkit-any(a, button):not(.disabled):hover {
617
+ box-shadow: 0px 0px 0px 2px var(--bi-neutral-50), 0px 0px 20px var(--bi-scale-1-5x) #0000000d, 0px 0px 10px 0px #0000000d;
618
+ }
619
+
620
+ .bi-card:-webkit-any(a, button):not(.disabled):active {
621
+ box-shadow: 0px 0px 0px var(--bi-stroke-default) var(--bi-primary-50), 0px 0px 20px var(--bi-scale-1-5x) #0000000d, 0px 0px 10px 0px #0000000d;
622
+ }
623
+
624
+ .bi-card:-webkit-any(a, button):disabled {
625
+ cursor: not-allowed;
626
+ }
627
+
628
+ .bi-card:is(a, button) {
629
+ cursor: pointer;
630
+ background: none;
631
+ text-decoration: none;
632
+ position: relative;
633
+ }
634
+
635
+ .bi-card:is(a, button):not(.disabled):focus-visible {
636
+ box-shadow: var(--_bi--focus, 0 0 0 4.5px var(--bi-basic-white), var(--bic-button-box-shadow));
637
+ outline: var(--_bi--focus, 1.5px solid var(--bi-primary-50));
638
+ outline-offset: var(--_bi--focus, 2px);
639
+ }
640
+
641
+ .bi-card:is(a, button):not(.disabled):focus-visible * {
642
+ --_bi--focus: ;
643
+ }
644
+
645
+ .bi-card:is(a, button):not(.disabled):hover {
646
+ box-shadow: 0px 0px 0px 2px var(--bi-neutral-50), 0px 0px 20px var(--bi-scale-1-5x) #0000000d, 0px 0px 10px 0px #0000000d;
647
+ }
648
+
649
+ .bi-card:is(a, button):not(.disabled):active {
650
+ box-shadow: 0px 0px 0px var(--bi-stroke-default) var(--bi-primary-50), 0px 0px 20px var(--bi-scale-1-5x) #0000000d, 0px 0px 10px 0px #0000000d;
651
+ }
652
+
653
+ .bi-card:is(a, button):disabled {
654
+ cursor: not-allowed;
655
+ }
656
+
569
657
  .bi-card .bi-card--content:-webkit-any(a, button) {
570
658
  cursor: pointer;
571
659
  background: none;
572
- border: none;
573
660
  text-decoration: none;
574
661
  position: relative;
575
662
  }
@@ -599,7 +686,6 @@
599
686
  .bi-card .bi-card--content:is(a, button) {
600
687
  cursor: pointer;
601
688
  background: none;
602
- border: none;
603
689
  text-decoration: none;
604
690
  position: relative;
605
691
  }
@@ -626,28 +712,6 @@
626
712
  cursor: not-allowed;
627
713
  }
628
714
 
629
- .bi-card .bi-card--content > p {
630
- color: var(--bic-card-content-color);
631
- white-space: break-spaces;
632
- text-overflow: ellipsis;
633
- -webkit-line-clamp: 2;
634
- line-clamp: 2;
635
- -webkit-box-orient: vertical;
636
- margin: 0;
637
- font-size: .875rem;
638
- font-weight: 500;
639
- line-height: 1.5;
640
- display: -webkit-box;
641
- overflow: hidden;
642
- }
643
-
644
- @media not (min-width: 768px) {
645
- .bi-card .bi-card--content {
646
- --bic-card-content-padding: var(--bi-scale-3x);
647
- gap: var(--bi-scale-3x);
648
- }
649
- }
650
-
651
715
  .bi-card .bi-card--actions {
652
716
  flex-direction: var(--bic-card-actions-flex-direction, column);
653
717
  justify-content: center;
@@ -667,7 +731,7 @@
667
731
  --bic-button-font-size: var(--bi-icon-medium);
668
732
  --bic-button-color: var(--bic-card-actions-icon-color);
669
733
  --bic-button-size: var(--bi-scale-14x);
670
- height: 100%;
734
+ flex: 1;
671
735
  }
672
736
 
673
737
  @media not (min-width: 768px) {
@@ -794,6 +858,29 @@
794
858
  line-height: 1.15;
795
859
  }
796
860
 
861
+ .bi-checkbox-subsection {
862
+ --bic-checkbox-subsection-line-bg: var(--bi-neutral-30);
863
+ display: flex;
864
+ }
865
+
866
+ .bi-checkbox-subsection[data-dark="true"] {
867
+ --bic-checkbox-subsection-line-bg: var(--bi-neutral-50);
868
+ }
869
+
870
+ .bi-checkbox-subsection > div:first-child {
871
+ margin: 0 var(--bi-scale-3x) 0 var(--bi-scale-5x);
872
+ background-color: var(--bic-checkbox-subsection-line-bg);
873
+ width: var(--bi-stroke-default);
874
+ }
875
+
876
+ .bi-checkbox-subsection > div:last-child {
877
+ align-items: flex-start;
878
+ gap: var(--bi-scale-0-50x);
879
+ flex-direction: column;
880
+ flex: 1;
881
+ display: flex;
882
+ }
883
+
797
884
  .bi-chip {
798
885
  --bic-chip-background: var(--bi-primary-5);
799
886
  --bic-chip-background-hover: var(--bi-primary-10);
@@ -1633,6 +1720,87 @@ body:has(.bi-dialog:modal) {
1633
1720
  opacity: var(--ds-opacity-disabled);
1634
1721
  }
1635
1722
 
1723
+ .bi-filter-group {
1724
+ --bic-filter-group-background-color: var(--bi-basic-white);
1725
+ --bic-filter-group-background-color-hover: var(--bi-primary-5);
1726
+ --bic-filter-group-background-color-expanded: var(--bi-neutral-15);
1727
+ --bic-filter-group-border-color: var(--bi-neutral-15);
1728
+ --bic-filter-group-text-color: var(--bi-neutral-90);
1729
+ }
1730
+
1731
+ .bi-filter-group[data-dark="true"] {
1732
+ --bic-filter-group-background-color: var(--bi-neutral-90);
1733
+ --bic-filter-group-background-color-hover: var(--bi-primary-90);
1734
+ --bic-filter-group-background-color-expanded: var(--bi-neutral-80);
1735
+ --bic-filter-group-border-color: var(--bi-neutral-70);
1736
+ --bic-filter-group-text-color: var(--bi-basic-white);
1737
+ }
1738
+
1739
+ .bi-filter-group {
1740
+ flex-direction: column;
1741
+ display: flex;
1742
+ }
1743
+
1744
+ .bi-filter-group > button {
1745
+ box-shadow: 0 var(--bi-scale-0-25x) 0 0 var(--bic-filter-group-border-color);
1746
+ height: var(--bi-scale-12x);
1747
+ color: var(--bic-filter-group-text-color);
1748
+ align-items: center;
1749
+ gap: var(--bi-scale-2x);
1750
+ width: 100%;
1751
+ padding: var(--bi-scale-2x) var(--bi-scale-1-5x);
1752
+ background: var(--bic-filter-group-background-color);
1753
+ cursor: pointer;
1754
+ border-radius: var(--bi-radius-small) var(--bi-radius-small) 0 0;
1755
+ border: none;
1756
+ flex-direction: row;
1757
+ font-size: 1rem;
1758
+ display: flex;
1759
+ }
1760
+
1761
+ .bi-filter-group > button:hover {
1762
+ background: var(--bic-filter-group-background-color-hover);
1763
+ }
1764
+
1765
+ .bi-filter-group > button:focus-visible {
1766
+ box-shadow: 0 0 0 4.5px var(--bi-basic-white);
1767
+ outline: 1.5px solid var(--bi-primary-50);
1768
+ outline-offset: 2px;
1769
+ border-radius: var(--bi-radius-small);
1770
+ }
1771
+
1772
+ .bi-filter-group > button > [data-bi-icon="true"] {
1773
+ width: var(--bi-scale-6x);
1774
+ height: var(--bi-scale-6x);
1775
+ font-size: var(--bi-icon-medium);
1776
+ }
1777
+
1778
+ .bi-filter-group > button > h3 {
1779
+ text-align: left;
1780
+ flex: 1;
1781
+ margin: 0;
1782
+ font-family: museo-sans, Arial, sans-serif;
1783
+ font-weight: 700;
1784
+ line-height: 1.5;
1785
+ }
1786
+
1787
+ .bi-filter-group > div {
1788
+ gap: var(--bi-scale-2x);
1789
+ padding: var(--bi-scale-3x) 0 var(--bi-scale-8x);
1790
+ flex-direction: column;
1791
+ display: none;
1792
+ }
1793
+
1794
+ .bi-filter-group[data-expanded="true"] > button {
1795
+ box-shadow: none;
1796
+ --bic-filter-group-background-color: var(--bic-filter-group-background-color-expanded);
1797
+ border-radius: var(--bi-radius-small);
1798
+ }
1799
+
1800
+ .bi-filter-group[data-expanded="true"] > div {
1801
+ display: flex;
1802
+ }
1803
+
1636
1804
  .bi-footer {
1637
1805
  --bic-footer-color: var(--bi-basic-key);
1638
1806
  --bic-footer-background: var(--bi-basic-white);
@@ -2319,7 +2487,7 @@ body:has(.bi-dialog:modal) {
2319
2487
  --bic-navbar-color: var(--bi-basic-white);
2320
2488
  }
2321
2489
 
2322
- .bi-navbar .bi-navbar__header {
2490
+ .bi-navbar > header {
2323
2491
  height: var(--bi-layout-navbar-height);
2324
2492
  align-items: center;
2325
2493
  gap: var(--bi-scale-6x);
@@ -2330,11 +2498,17 @@ body:has(.bi-dialog:modal) {
2330
2498
  display: flex;
2331
2499
  }
2332
2500
 
2333
- .bi-navbar .bi-navbar__header > :first-child {
2501
+ @media (prefers-reduced-motion: no-preference) {
2502
+ .bi-navbar > header {
2503
+ transition: transform .2s ease-in-out;
2504
+ }
2505
+ }
2506
+
2507
+ .bi-navbar > header > :first-child {
2334
2508
  margin-right: auto;
2335
2509
  }
2336
2510
 
2337
- .bi-navbar[data-fixed="true"] .bi-navbar__header {
2511
+ .bi-navbar[data-fixed="true"] > header {
2338
2512
  z-index: 100;
2339
2513
  position: fixed;
2340
2514
  top: 0;
@@ -2342,28 +2516,39 @@ body:has(.bi-dialog:modal) {
2342
2516
  right: 0;
2343
2517
  }
2344
2518
 
2345
- .bi-navbar .bi-navbar__skip-link {
2346
- background: var(--bi-primary-50);
2347
- color: var(--bi-basic-white);
2348
- outline-offset: 0px;
2349
- border-radius: 4px;
2350
- align-content: center;
2351
- height: 44px;
2352
- padding: 0 7px;
2353
- font-size: .75rem;
2354
- font-weight: 400;
2519
+ .bi-sub-navbar--wrapper {
2520
+ height: var(--bi-layout-navbar-height);
2521
+ position: relative;
2522
+ }
2523
+
2524
+ .bi-sub-navbar--wrapper .bi-sub-navbar {
2525
+ --bic-sub-navbar-background-color: var(--bi-basic-white);
2526
+ --bic-sub-navbar-color: var(--bi-basic-key);
2527
+ --bic-sub-navbar-border-color: var(--bi-neutral-15);
2528
+ height: var(--bi-layout-navbar-height);
2529
+ background-color: var(--bic-sub-navbar-background-color);
2530
+ border-bottom: 1px solid var(--bic-sub-navbar-border-color);
2531
+ width: 100%;
2355
2532
  position: absolute;
2356
- left: 50%;
2357
- transform: translate(-50%, -62px);
2533
+ top: 0;
2534
+ left: 0;
2358
2535
  }
2359
2536
 
2360
- .bi-navbar .bi-navbar__skip-link:focus {
2361
- border-radius: var(--bi-radius-medium);
2362
- outline-offset: 2px;
2363
- outline: 1.5px solid var(--bi-primary-50);
2364
- box-shadow: 0 0 0 2px var(--bi-basic-white);
2365
- transition: transform .3s;
2366
- transform: translate(-50%);
2537
+ .bi-sub-navbar--wrapper .bi-sub-navbar[data-dark="true"] {
2538
+ --bic-sub-navbar-background-color: var(--bi-primary-95);
2539
+ --bic-sub-navbar-color: var(--bi-basic-white);
2540
+ --bic-sub-navbar-border-color: var(--bi-neutral-70);
2541
+ }
2542
+
2543
+ .bi-sub-navbar--wrapper .bi-sub-navbar[data-fixed="true"] {
2544
+ z-index: 101;
2545
+ position: fixed;
2546
+ }
2547
+
2548
+ @media (prefers-reduced-motion: no-preference) {
2549
+ .bi-sub-navbar--wrapper .bi-sub-navbar[data-fixed="true"] {
2550
+ transition: top .2s ease-in-out;
2551
+ }
2367
2552
  }
2368
2553
 
2369
2554
  .bi-pagination {
@@ -2502,6 +2687,39 @@ body:has(.bi-dialog:modal) {
2502
2687
  display: none;
2503
2688
  }
2504
2689
 
2690
+ .bi-skip-link {
2691
+ --bic-skip-link-color: var(--bi-basic-white);
2692
+ --bic-skip-link-background: var(--bi-primary-50);
2693
+ background: var(--bic-skip-link-background);
2694
+ color: var(--bic-skip-link-color);
2695
+ outline-offset: 0px;
2696
+ z-index: 200;
2697
+ border-radius: 4px;
2698
+ align-content: center;
2699
+ height: 44px;
2700
+ padding: 0 7px;
2701
+ font-size: 1rem;
2702
+ font-weight: 500;
2703
+ transition: transform .3s ease-in-out;
2704
+ position: absolute;
2705
+ left: 50%;
2706
+ transform: translate(-50%, -110%);
2707
+ }
2708
+
2709
+ @media (prefers-reduced-motion: reduce) {
2710
+ .bi-skip-link {
2711
+ transition: none;
2712
+ }
2713
+ }
2714
+
2715
+ .bi-skip-link:focus {
2716
+ transform: translate(-50%, var(--bi-scale-2x));
2717
+ border-radius: var(--bi-radius-medium);
2718
+ outline-offset: 2px;
2719
+ outline: 1.5px solid var(--bi-primary-50);
2720
+ box-shadow: 0 0 0 2px var(--bi-basic-white);
2721
+ }
2722
+
2505
2723
  .bi-spinner {
2506
2724
  --bic-spinner-color: currentColor;
2507
2725
  aspect-ratio: 1;
@@ -2554,6 +2772,18 @@ body:has(.bi-dialog:modal) {
2554
2772
  }
2555
2773
  }
2556
2774
 
2775
+ .bi-sticky-header {
2776
+ z-index: 101;
2777
+ position: -webkit-sticky;
2778
+ position: sticky;
2779
+ }
2780
+
2781
+ @media (prefers-reduced-motion: no-preference) {
2782
+ .bi-sticky-header {
2783
+ transition: top .2s ease-in-out;
2784
+ }
2785
+ }
2786
+
2557
2787
  .bi-tabs {
2558
2788
  --bic-tabs-tab-color-selected: var(--bi-primary-50);
2559
2789
  --bic-tabs-panel-padding: var(--bi-scale-4x) var(--bi-scale-5x);
@@ -2676,3 +2906,39 @@ body:has(.bi-dialog:modal) {
2676
2906
  left: var(--bic-validation-message-padding);
2677
2907
  position: absolute;
2678
2908
  }
2909
+
2910
+ html:has(.bi-navbar) {
2911
+ scroll-padding-top: var(--bi-layout-navbar-height);
2912
+ }
2913
+
2914
+ html:has(.bi-sub-navbar) {
2915
+ scroll-padding-top: var(--bi-layout-navbar-height);
2916
+ }
2917
+
2918
+ html .bi-sticky-header {
2919
+ top: 0;
2920
+ }
2921
+
2922
+ html:has(.bi-navbar[data-fixed="true"]) .bi-sticky-header {
2923
+ top: var(--bi-layout-navbar-height);
2924
+ }
2925
+
2926
+ html:has(.bi-sub-navbar[data-fixed="true"][data-scroll-dir="down"]) .bi-navbar > header {
2927
+ transform: translateY(-100%);
2928
+ }
2929
+
2930
+ html:has(.bi-sub-navbar[data-fixed="true"][data-scroll-dir="down"]) .bi-sub-navbar {
2931
+ top: 0;
2932
+ }
2933
+
2934
+ html:has(.bi-navbar[data-fixed="true"]):has(.bi-sub-navbar[data-fixed="true"][data-scroll-dir="up"]) .bi-navbar > header {
2935
+ transform: translateY(0);
2936
+ }
2937
+
2938
+ html:has(.bi-navbar[data-fixed="true"]):has(.bi-sub-navbar[data-fixed="true"][data-scroll-dir="up"]) .bi-sub-navbar {
2939
+ top: var(--bi-layout-navbar-height);
2940
+ }
2941
+
2942
+ html:has(.bi-navbar[data-fixed="true"]):has(.bi-sub-navbar[data-fixed="true"][data-scroll-dir="up"]) .bi-sticky-header {
2943
+ top: calc(var(--bi-layout-navbar-height) + var(--bi-layout-navbar-height));
2944
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bi-digital/css",
3
- "version": "0.0.0-experimental-ca10f7e",
3
+ "version": "0.0.0-experimental-2ec4984",
4
4
  "description": "CSS for the BI Design System",
5
5
  "author": "BI Digital",
6
6
  "license": "ISC",
@@ -23,7 +23,7 @@
23
23
  "lightningcss": "^1.30.1",
24
24
  "modern-normalize": "^3.0.1",
25
25
  "rimraf": "^6.0.1",
26
- "@bi-digital/tokens": "0.0.0-experimental-ca10f7e"
26
+ "@bi-digital/tokens": "0.0.0-experimental-2ec4984"
27
27
  },
28
28
  "scripts": {
29
29
  "build": "rimraf dist && node config.js",