@wwtdev/bsds-css 2.19.0 → 2.20.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.
@@ -112,6 +112,13 @@
112
112
  --dropdown-wscreen-left: 50%;
113
113
  }
114
114
 
115
+ /* data-right */
116
+ .bs-dropdown-parent:where([data-right]:not([data-right="false"])) :where(.bs-dropdown) {
117
+ --dropdown-transform: translate(0, 0);
118
+ --dropdown-wscreen-left: auto;
119
+ --dropdown-wscreen-right: 0;
120
+ }
121
+
115
122
  /* Overrides mobile style when not min-width 1166 */
116
123
  .bs-dropdown:where([data-no-mobile="true"]) {
117
124
  --dropdown-bottom: var(--dropdown-wscreen-bottom, auto);
@@ -0,0 +1,194 @@
1
+ @mixin horizontal-navigation-mobile() {
2
+ .bs-horizontal-nav-mobile {
3
+ --bg-color: var(--bs-bg-light);
4
+ --top-offset: 48px;
5
+ -ms-overflow-style: none; /* Internet Explorer 10+ */
6
+ background-color: var(--bg-color);
7
+ display: flex;
8
+ flex-direction: column;
9
+ height: auto;
10
+ left: 0;
11
+ max-height: calc(100vh - var(--top-offset));
12
+ overflow: scroll;
13
+ position: fixed;
14
+ right: 0;
15
+ scrollbar-width: none; /* Firefox */
16
+ top: var(--top-offset);
17
+ z-index: 1001;
18
+ }
19
+
20
+ .bs-horizontal-nav-mobile:where([data-shown="true"]) {
21
+ height: 100vh;
22
+ }
23
+
24
+ @media (min-width: 752px) {
25
+ .bs-horizontal-nav-mobile {
26
+ display: none;
27
+ }
28
+ }
29
+
30
+ /* ===== Nav List ===== */
31
+ .bs-horizontal-nav-mobile :where(ul) {
32
+ display: none;
33
+ flex-direction: column;
34
+ list-style: none;
35
+ }
36
+
37
+ .bs-horizontal-nav-mobile:where([data-shown="true"]) :where(ul) {
38
+ display: flex;
39
+ }
40
+
41
+ /* ===== Toggle ===== */
42
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-toggle) {
43
+ align-items: center;
44
+ color: var(--bs-ink-light);
45
+ cursor: pointer;
46
+ display: flex;
47
+ height: 48px;
48
+ justify-content: space-between;
49
+ padding-bottom: 0.5rem;
50
+ padding-left: 2.25rem;
51
+ padding-right: 2.25rem;
52
+ padding-top: 0.5rem;
53
+ width: 100%;
54
+ }
55
+
56
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-toggle-title) {
57
+ align-items: center;
58
+ display: flex;
59
+ gap: 0.5rem;
60
+ }
61
+
62
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-toggle-title-icon) {
63
+ color: var(--bs-ink-blue);
64
+ height: 1rem;
65
+ width: 1rem;
66
+ }
67
+
68
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-toggle-caret) {
69
+ height: 0.75rem;
70
+ transform: none;
71
+ transition-duration: 0.2s;
72
+ transition-property: transform;
73
+ transition-timing-function: ease-in-out;
74
+ width: 0.75rem;
75
+ }
76
+
77
+ .bs-horizontal-nav-mobile:where([data-shown="true"]) :where(.bs-horizontal-nav-mobile-toggle-caret) {
78
+ transform: rotate(180deg);
79
+ }
80
+
81
+ /* ===== Nav Items ===== */
82
+ .bs-horizontal-nav-mobile :where(ul > li) {
83
+ border-top: 1px solid var(--bs-border-base);
84
+ }
85
+
86
+ .bs-horizontal-nav-mobile :where(ul:not(.bs-horizontal-nav-mobile-nested-menu) > li:last-child) {
87
+ border-bottom: 1px solid var(--bs-border-base);
88
+ }
89
+
90
+ .bs-horizontal-nav-mobile :where(ul > li > a) {
91
+ color: var(--bs-ink-light);
92
+ cursor: pointer;
93
+ display: flex;
94
+ font-weight: 400;
95
+ padding-bottom: 0.75rem;
96
+ padding-left: 2.25rem;
97
+ padding-right: 2.25rem;
98
+ padding-top: 0.75rem;
99
+ }
100
+
101
+ .bs-horizontal-nav-mobile :where(ul > li > a:hover) {
102
+ color: var(--bs-ink-blue);
103
+ }
104
+
105
+ .bs-horizontal-nav-mobile :where(ul > li > a[data-active="true"]) {
106
+ color: var(--bs-ink-base);
107
+ font-weight: 600;
108
+ }
109
+
110
+ .bs-horizontal-nav-mobile :where(ul > li > a[data-active="true"]:hover) {
111
+ color: var(--bs-ink-blue);
112
+ }
113
+
114
+ /* ===== Nested Nav Items ===== */
115
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-nested-toggle) {
116
+ align-items: center;
117
+ color: var(--bs-ink-light);
118
+ cursor: pointer;
119
+ display: flex;
120
+ justify-content: space-between;
121
+ padding-bottom: 0.75rem;
122
+ padding-left: 2.25rem;
123
+ padding-right: 2.25rem;
124
+ padding-top: 0.75rem;
125
+ width: 100%;
126
+ }
127
+
128
+ .bs-horizontal-nav-mobile :where(ul li .bs-horizontal-nav-mobile-nested-toggle[data-active="true"]) {
129
+ font-weight: 600;
130
+ }
131
+
132
+ .bs-horizontal-nav-mobile :where(ul li[data-expanded="true"] .bs-horizontal-nav-mobile-nested-toggle) {
133
+ background-color: var(--bs-bg-medium);
134
+ color: var(--bs-ink-blue);
135
+ font-weight: 600;
136
+ }
137
+
138
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-nested-toggle:hover) {
139
+ color: var(--bs-ink-blue);
140
+ }
141
+
142
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-nested-toggle-caret) {
143
+ height: 0.75rem;
144
+ transform: none;
145
+ transition-duration: 0.2s;
146
+ transition-property: transform;
147
+ transition-timing-function: ease-in-out;
148
+ width: 0.75rem;
149
+ }
150
+
151
+ .bs-horizontal-nav-mobile :where(ul li[data-expanded="true"] .bs-horizontal-nav-mobile-nested-toggle-caret) {
152
+ transform: rotate(180deg);
153
+ }
154
+
155
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-nested-menu) {
156
+ background-color: var(--bs-bg-medium);
157
+ display: none;
158
+ }
159
+
160
+ .bs-horizontal-nav-mobile :where(ul li[data-expanded="true"] .bs-horizontal-nav-mobile-nested-menu) {
161
+ display: block;
162
+ }
163
+
164
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-nested-menu > li) {
165
+ border-top: none;
166
+ }
167
+
168
+ /* ===== External Links ===== */
169
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-external-link) {
170
+ align-items: center;
171
+ display: flex;
172
+ gap: 0.5rem;
173
+ }
174
+
175
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-external-link-icon) {
176
+ height: 1rem;
177
+ width: 1rem;
178
+ }
179
+
180
+ /* ===== Slotted Items ===== */
181
+ .bs-horizontal-nav-mobile :where(.bs-horizontal-nav-mobile-slotted-items) {
182
+ display: none;
183
+ padding-bottom: 0.75rem;
184
+ padding-left: 2.25rem;
185
+ padding-right: 2.25rem;
186
+ padding-top: 0.75rem;
187
+ }
188
+
189
+ .bs-horizontal-nav-mobile:where([data-shown="true"]) :where(.bs-horizontal-nav-mobile-slotted-items) {
190
+ display: block;
191
+ }
192
+
193
+ }
194
+
@@ -0,0 +1,213 @@
1
+ @mixin horizontal-navigation() {
2
+ .bs-horizontal-nav {
3
+ --bg-color: var(--bs-bg-light);
4
+ --top-offset: 48px;
5
+ align-items: center;
6
+ background-color: var(--bg-color);
7
+ bottom: auto;
8
+ display: none;
9
+ height: 48px;
10
+ left: 0;
11
+ position: fixed;
12
+ right: 0;
13
+ top: var(--top-offset);
14
+ z-index: 1001;
15
+ }
16
+
17
+ @media (min-width: 752px) {
18
+ .bs-horizontal-nav {
19
+ display: flex;
20
+ }
21
+ }
22
+
23
+ .bs-horizontal-nav :where(nav) {
24
+ align-items: center;
25
+ display: flex;
26
+ justify-content: space-between;
27
+ margin-left: auto;
28
+ margin-right: auto;
29
+ max-width: calc(85.5rem + 2.25rem + 2.25rem); /* 1368px + 2.25rem x2 padding */
30
+ padding-left: 2.25rem;
31
+ padding-right: 2.25rem;
32
+ width: 100%;
33
+ }
34
+
35
+ /* ===== Nav List ===== */
36
+ .bs-horizontal-nav :where(nav > ul),
37
+ .bs-horizontal-nav :where(nav > .bs-horizontal-nav-external-links > ul) {
38
+ align-items: center;
39
+ display: flex;
40
+ flex-direction: row;
41
+ gap: 1.5rem;
42
+ list-style: none;
43
+ width: 100%;
44
+ }
45
+
46
+ /* ===== Optional Title ===== */
47
+ .bs-horizontal-nav :where(.bs-horizontal-nav-title) {
48
+ border-right: 1px solid var(--bs-border-base);
49
+ padding-right: 1.5rem;
50
+ width: auto;
51
+ }
52
+
53
+ .bs-horizontal-nav :where(.bs-horizontal-nav-title > a) {
54
+ cursor: pointer;
55
+ display: inline;
56
+ padding-bottom: 0;
57
+ padding-left: 0;
58
+ padding-right: 0;
59
+ padding-top: 0;
60
+ width: auto;
61
+ }
62
+
63
+ /* ===== Nav Items ===== */
64
+ .bs-horizontal-nav :where(nav > ul > li),
65
+ .bs-horizontal-nav :where(nav > .bs-horizontal-nav-external-links > ul > li) {
66
+ border-bottom: none;
67
+ display: list-item;
68
+ margin-left: 0;
69
+ width: auto;
70
+ }
71
+
72
+ .bs-horizontal-nav :where(nav > ul > li:not(.bs-horizontal-nav-title) > a),
73
+ .bs-horizontal-nav :where(nav > .bs-horizontal-nav-external-links > ul > li > a) {
74
+ align-items: center;
75
+ border-radius: 4px;
76
+ color: var(--bs-ink-light);
77
+ cursor: pointer;
78
+ display: flex;
79
+ font-weight: 400;
80
+ gap: 0.5rem;
81
+ height: 100%;
82
+ padding-bottom: 0.5rem;
83
+ padding-left: 0;
84
+ padding-right: 0;
85
+ padding-top: 0.5rem;
86
+ width: 100%;
87
+ }
88
+
89
+ .bs-horizontal-nav :where(nav > ul > li:not(.bs-horizontal-nav-title) > a:hover),
90
+ .bs-horizontal-nav :where(nav > .bs-horizontal-nav-external-links > ul > li > a:hover) {
91
+ color: var(--bs-ink-blue);
92
+ }
93
+
94
+ .bs-horizontal-nav :where(nav > ul > li > a[data-active="true"]),
95
+ .bs-horizontal-nav :where(nav > .bs-horizontal-nav-external-links > ul > li > a[data-active="true"]) {
96
+ color: var(--bs-ink-base);
97
+ font-weight: 600;
98
+ }
99
+
100
+ .bs-horizontal-nav :where(nav > ul > li > a[data-active="true"]:hover),
101
+ .bs-horizontal-nav :where(nav > .bs-horizontal-nav-external-links > ul > li > a[data-active="true"]:hover) {
102
+ color: var(--bs-ink-blue);
103
+ }
104
+
105
+ .bs-horizontal-nav :where(.bs-horizontal-nav-first-link-icon) {
106
+ color: var(--bs-ink-blue);
107
+ height: 1rem;
108
+ width: 1rem;
109
+ }
110
+
111
+ /* ===== Nested Nav Items ===== */
112
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-toggle) {
113
+ align-items: center;
114
+ cursor: pointer;
115
+ display: flex;
116
+ gap: 0.5rem;
117
+ line-height: 1.5;
118
+ padding-bottom: 0.5rem;
119
+ padding-top: 0.5rem;
120
+ }
121
+
122
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-toggle:hover) {
123
+ color: var(--bs-ink-blue);
124
+ }
125
+
126
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-toggle[data-active="true"]) {
127
+ color: var(--bs-ink-base);
128
+ font-weight: 600;
129
+ }
130
+
131
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-toggle[data-active="true"]:hover) {
132
+ color: var(--bs-ink-blue);
133
+ }
134
+
135
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-toggle-caret) {
136
+ height: 0.75rem;
137
+ transform: none;
138
+ transition-duration: 0.2s;
139
+ transition-property: transform;
140
+ transition-timing-function: ease-in-out;
141
+ width: 0.75rem;
142
+ }
143
+
144
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-toggle:hover ~ .bs-horizontal-nav-caret) {
145
+ color: var(--bs-ink-blue);
146
+ }
147
+
148
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-toggle[data-expanded="true"]) {
149
+ color: var(--bs-ink-blue);
150
+ font-weight: 600;
151
+ }
152
+
153
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-toggle[data-expanded="true"] .bs-horizontal-nav-nested-toggle-caret) {
154
+ transform: rotate(180deg);
155
+ }
156
+
157
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-menu) {
158
+ --dropdown-top: 100%;
159
+ border-radius: 8px;
160
+ padding: 1.5rem;
161
+ width: 10.5rem;
162
+ }
163
+
164
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-menu > ul) {
165
+ list-style: none;
166
+ }
167
+
168
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-menu > ul > li) {
169
+ margin-left: 0;
170
+ }
171
+
172
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-menu > ul > li > a) {
173
+ font-size: 0.875rem;
174
+ }
175
+
176
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-menu > ul > li > a:hover) {
177
+ color: var(--bs-ink-blue);
178
+ text-decoration: underline;
179
+ }
180
+
181
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-menu > ul > li > a[data-active="true"]) {
182
+ color: var(--bs-ink-base);
183
+ font-weight: 600;
184
+ }
185
+
186
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-menu > ul > li > a[data-active="true"]:hover) {
187
+ color: var(--bs-ink-blue);
188
+ }
189
+
190
+ /* ===== External Links ===== */
191
+ .bs-horizontal-nav :where(.bs-horizontal-nav-external-link-icon) {
192
+ height: 1rem;
193
+ width: 1rem;
194
+ }
195
+
196
+ /* ===== Slotted Items ===== */
197
+ .bs-horizontal-nav :where(.bs-horizontal-nav-slotted-items) {
198
+ margin-left: auto;
199
+ }
200
+
201
+ .bs-horizontal-nav :where(.bs-horizontal-nav-external-links ~ .bs-horizontal-nav-slotted-items) {
202
+ margin-left: 1.5rem;
203
+ }
204
+
205
+ /* ===== Component-specific ===== */
206
+ .bs-horizontal-nav :where(.bs-horizontal-nav-nested-menu-override) {
207
+ --dropdown-top: 0;
208
+ padding: 1.5rem;
209
+ width: 10.5rem;
210
+ }
211
+
212
+ }
213
+
@@ -23,7 +23,7 @@
23
23
 
24
24
  @media (min-width: 752px) {
25
25
  .bs-modal {
26
- max-height: 40.625rem;
26
+ max-height: min(calc(100vh - 3rem), 40.625rem);
27
27
  width: 35rem;
28
28
  }
29
29
  }
@@ -0,0 +1,231 @@
1
+ @mixin vertical-navigation() {
2
+ .bs-vertical-nav {
3
+ --active-color: rgba(255, 255, 255, 0.25);
4
+ --bg-color: var(--bs-navy-base);
5
+ --border-color: var(--bs-border-dark);
6
+ --top-offset: 48px;
7
+ --width: auto;
8
+ -ms-overflow-style: none; /* Internet Explorer 10+ */
9
+ background-color: var(--bg-color);
10
+ color: var(--bs-white);
11
+ display: none;
12
+ flex-direction: column;
13
+ height: 100vh;
14
+ left: 0;
15
+ max-height: calc(100vh - var(--top-offset));
16
+ overflow: scroll;
17
+ padding-bottom: 1.5rem;
18
+ padding-left: 1.5rem;
19
+ padding-right: 1.5rem;
20
+ padding-top: 1.5rem;
21
+ position: fixed;
22
+ right: 0;
23
+ scrollbar-width: none; /* Firefox */
24
+ top: var(--top-offset);
25
+ transition-duration: 0.2s;
26
+ transition-property: max-height, transform;
27
+ transition-timing-function: ease;
28
+ width: var(--width);
29
+ z-index: 1001;
30
+ }
31
+
32
+ .bs-vertical-nav:where([data-mobile-shown="true"]) {
33
+ display: flex;
34
+ }
35
+
36
+ .dark .bs-vertical-nav {
37
+ --active-color: rgba(255, 255, 255, 0.25);
38
+ --bg-color: var(--bs-bg-base);
39
+ --border-color: var(--bs-border-dark);
40
+ border-right: 1px solid var(--bs-border-medium);
41
+ }
42
+
43
+ @media (min-width: 752px) {
44
+ .bs-vertical-nav {
45
+ --width: 9.875rem;
46
+ border-right: 1px solid var(--bg-color);
47
+ display: flex;
48
+ padding-bottom: 1rem;
49
+ padding-left: 0.5rem;
50
+ padding-right: 0.5rem;
51
+ padding-top: 1rem;
52
+ right: auto;
53
+ }
54
+
55
+ .bs-vertical-nav:where([data-narrow="true"]) {
56
+ --width: 4.5rem;
57
+ }
58
+ }
59
+
60
+ .bs-vertical-nav::-webkit-scrollbar {
61
+ display: none; /* Safari and Chrome */
62
+ }
63
+
64
+ .bs-vertical-nav:where([data-y-expand="true"]) {
65
+ transform: translateY(calc(-1 * var(--top-offset)));
66
+ max-height: 100vh;
67
+ }
68
+
69
+ /* ===== Sections ===== */
70
+ .bs-vertical-nav :where(.bs-vertical-nav-section) {
71
+ border-top: 2px solid var(--border-color);
72
+ margin-top: 0.5rem;
73
+ padding-top: 0.5rem;
74
+ }
75
+
76
+ @media (min-width: 752px) {
77
+ .bs-vertical-nav :where(.bs-vertical-nav-section) {
78
+ margin-top: 0.25rem;
79
+ }
80
+ }
81
+
82
+ /* Don't show border if the very first item is a section */
83
+ .bs-vertical-nav :where(ul li:first-child) {
84
+ border-top: none;
85
+ margin-top: 0;
86
+ padding-top: 0;
87
+ }
88
+
89
+ .bs-vertical-nav :where(.bs-vertical-nav-section-toggle) {
90
+ align-items: center;
91
+ cursor: pointer;
92
+ display: flex;
93
+ font-size: 0.75rem;
94
+ font-weight: 600;
95
+ justify-content: space-between;
96
+ padding-bottom: 0.5rem;
97
+ padding-left: 0.75rem;
98
+ padding-right: 0.5rem;
99
+ padding-top: 0.5rem;
100
+ width: 100%;
101
+ }
102
+
103
+ .bs-vertical-nav :where(.bs-vertical-nav-section-toggle-caret) {
104
+ height: 0.75rem;
105
+ transform: none;
106
+ transition-duration: 0.2s;
107
+ transition-property: transform;
108
+ transition-timing-function: ease-in-out;
109
+ width: 0.75rem;
110
+ }
111
+
112
+ .bs-vertical-nav :where(.bs-vertical-nav-section[data-collapsed="true"] .bs-vertical-nav-section-toggle-caret) {
113
+ transform: rotate(180deg);
114
+ }
115
+
116
+ /* ===== Nav List ===== */
117
+ .bs-vertical-nav :where(ul) {
118
+ display: flex;
119
+ flex-direction: column;
120
+ gap: 0;
121
+ list-style: none;
122
+ margin-top: 0;
123
+ padding-left: 0;
124
+ }
125
+
126
+ @media (min-width: 752px) {
127
+ .bs-vertical-nav :where(ul) {
128
+ gap: 0.25rem;
129
+ }
130
+ }
131
+
132
+ /* ===== Nav List Items / Links */
133
+ .bs-vertical-nav :where(ul li a) {
134
+ align-items: center;
135
+ border-radius: 4px;
136
+ cursor: pointer;
137
+ display: flex;
138
+ font-size: 1rem;
139
+ font-weight: 400;
140
+ gap: 0.5rem;
141
+ height: 100%;
142
+ padding-bottom: 0.75rem;
143
+ padding-left: 0.75rem;
144
+ padding-right: 0.75rem;
145
+ padding-top: 0.75rem;
146
+ width: 100%;
147
+ }
148
+
149
+ @media (min-width: 752px) {
150
+ .bs-vertical-nav :where(ul li a) {
151
+ font-size: 0.875rem;
152
+ padding-bottom: 0.5rem;
153
+ padding-top: 0.5rem;
154
+ }
155
+
156
+ .bs-vertical-nav:where([data-narrow="true"]) :where(ul li a) {
157
+ flex-direction: column;
158
+ font-size: 0.6875rem;
159
+ gap: 0.25rem;
160
+ line-height: 110%;
161
+ padding-bottom: 0.75rem;
162
+ padding-left: 0.25rem;
163
+ padding-right: 0.25rem;
164
+ padding-top: 0.75rem;
165
+ text-align: center;
166
+ }
167
+ }
168
+
169
+ .bs-vertical-nav :where(ul li a:hover) {
170
+ font-weight: 600;
171
+ }
172
+
173
+ .bs-vertical-nav :where(ul li a[data-active="true"]) {
174
+ background-color: var(--active-color);
175
+ font-weight: 600;
176
+ }
177
+
178
+ .bs-vertical-nav :where(.bs-vertical-nav-link-icon) {
179
+ height: 1rem;
180
+ width: 1rem;
181
+ }
182
+
183
+ @media (min-width: 752px) {
184
+ .bs-vertical-nav :where(.bs-vertical-nav-link-icon) {
185
+ height: 0.875rem;
186
+ width: 0.875rem;
187
+ }
188
+
189
+ .bs-vertical-nav:where([data-narrow="true"]) :where(.bs-vertical-nav-link-icon) {
190
+ height: 1rem;
191
+ width: 1rem;
192
+ }
193
+ }
194
+
195
+ /* ===== External Links ===== */
196
+ .bs-vertical-nav :where(.bs-vertical-nav-external-links) {
197
+ margin-top: auto;
198
+ padding-top: 2.25rem;
199
+ }
200
+
201
+ .bs-vertical-nav:where([data-narrow="true"]) :where(.bs-vertical-nav-external-links) {
202
+ display: none;
203
+ }
204
+
205
+ .bs-vertical-nav :where(.bs-vertical-nav-external-links .bs-vertical-nav-external-link-icon) {
206
+ height: 1rem;
207
+ width: 1rem;
208
+ }
209
+
210
+ @media (min-width: 752px) {
211
+ .bs-vertical-nav :where(.bs-vertical-nav-external-links .bs-vertical-nav-external-link-icon) {
212
+ height: 0.875rem;
213
+ width: 0.875rem;
214
+ }
215
+ }
216
+
217
+ /* ===== Slotted Items ===== */
218
+ .bs-vertical-nav :where(.bs-vertical-nav-slotted-items) {
219
+ margin-top: auto;
220
+ }
221
+
222
+ .bs-vertical-nav :where(.bs-vertical-nav-external-links ~ .bs-vertical-nav-slotted-items) {
223
+ margin-top: 1rem;
224
+ }
225
+
226
+ .bs-vertical-nav:where([data-narrow="true"]) :where(.bs-vertical-nav-slotted-items) {
227
+ display: none;
228
+ }
229
+
230
+ }
231
+
@@ -111,6 +111,13 @@
111
111
  --dropdown-wscreen-left: 50%;
112
112
  }
113
113
 
114
+ /* data-right */
115
+ .bs-dropdown-parent:where([data-right]:not([data-right="false"])) :where(.bs-dropdown) {
116
+ --dropdown-transform: translate(0, 0);
117
+ --dropdown-wscreen-left: auto;
118
+ --dropdown-wscreen-right: 0;
119
+ }
120
+
114
121
  /* Overrides mobile style when not min-width 1166 */
115
122
  .bs-dropdown:where([data-no-mobile="true"]) {
116
123
  --dropdown-bottom: var(--dropdown-wscreen-bottom, auto);