@bpjs/design-system 0.0.0-stage → 0.0.2

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/dist/bpjs.css ADDED
@@ -0,0 +1,3275 @@
1
+ /*! @bpjs/design-system v0.0.2 | generated from Figma */
2
+ @font-face {
3
+ font-family: Plus Jakarta Sans;
4
+ font-style: normal;
5
+ font-display: swap;
6
+ font-weight: 200 800;
7
+ src: url("./fonts/plus-jakarta-sans-latin-wght-normal.woff2") format("woff2");
8
+ unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
9
+ }
10
+
11
+ @font-face {
12
+ font-family: Plus Jakarta Sans;
13
+ font-style: normal;
14
+ font-display: swap;
15
+ font-weight: 200 800;
16
+ src: url("./fonts/plus-jakarta-sans-latin-ext-wght-normal.woff2") format("woff2");
17
+ unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
18
+ }
19
+
20
+ :root {
21
+ --bpjs-color-blues-10: #f3f8ff;
22
+ --bpjs-color-blues-50: #cfe0f9;
23
+ --bpjs-color-blues-100: #afcbf4;
24
+ --bpjs-color-blues-200: #86b1ef;
25
+ --bpjs-color-blues-300: #5e98ea;
26
+ --bpjs-color-blues-400: #367ee4;
27
+ --bpjs-color-blues-500: #0e64df;
28
+ --bpjs-color-blues-600: #0c53ba;
29
+ --bpjs-color-blues-700: #094395;
30
+ --bpjs-color-blues-800: #073270;
31
+ --bpjs-color-blues-900: #05214a;
32
+ --bpjs-color-blues-1000: #03142d;
33
+ --bpjs-color-gray-dark-50: #b9babb;
34
+ --bpjs-color-gray-dark-100: #979899;
35
+ --bpjs-color-gray-dark-200: #747577;
36
+ --bpjs-color-gray-dark-300: #515355;
37
+ --bpjs-color-gray-dark-400: #2e3033;
38
+ --bpjs-color-gray-dark-500: #26282b;
39
+ --bpjs-color-gray-dark-600: #1f2022;
40
+ --bpjs-color-gray-dark-700: #17181a;
41
+ --bpjs-color-gray-dark-800: #0f1011;
42
+ --bpjs-color-gray-dark-900: #090a0a;
43
+ --bpjs-color-gray-light-50: #fdfdfd;
44
+ --bpjs-color-gray-light-100: #f4f4f4;
45
+ --bpjs-color-gray-light-200: #d6d6d6;
46
+ --bpjs-color-gray-light-300: #c8c8c8;
47
+ --bpjs-color-gray-light-400: #bbb;
48
+ --bpjs-color-gray-light-500: #adadad;
49
+ --bpjs-color-gray-light-600: #909090;
50
+ --bpjs-color-gray-light-700: #737373;
51
+ --bpjs-color-gray-light-800: #575757;
52
+ --bpjs-color-gray-light-900: #3a3a3a;
53
+ --bpjs-color-gray-light-1000: #232323;
54
+ --bpjs-color-greens-10: #eaf7ef;
55
+ --bpjs-color-greens-50: #ccf0d9;
56
+ --bpjs-color-greens-100: #aae6c0;
57
+ --bpjs-color-greens-200: #80daa0;
58
+ --bpjs-color-greens-300: #55ce80;
59
+ --bpjs-color-greens-400: #2bc161;
60
+ --bpjs-color-greens-500: #00b541;
61
+ --bpjs-color-greens-600: #009736;
62
+ --bpjs-color-greens-700: #00792b;
63
+ --bpjs-color-greens-800: #005b21;
64
+ --bpjs-color-greens-900: #003c16;
65
+ --bpjs-color-greens-1000: #00240d;
66
+ --bpjs-color-red-10: #fdeded;
67
+ --bpjs-color-red-50: #facdcc;
68
+ --bpjs-color-red-100: #f7abaa;
69
+ --bpjs-color-red-200: #f28180;
70
+ --bpjs-color-red-300: #ee5855;
71
+ --bpjs-color-red-400: #ea2e2b;
72
+ --bpjs-color-red-500: #e60400;
73
+ --bpjs-color-red-600: #c00300;
74
+ --bpjs-color-red-700: #990300;
75
+ --bpjs-color-red-800: #730200;
76
+ --bpjs-color-red-900: #4d0100;
77
+ --bpjs-color-red-1000: #2e0100;
78
+ --bpjs-color-whites-500: #fff;
79
+ --bpjs-color-yellow-50: #fcecd6;
80
+ --bpjs-color-yellow-100: #fae0ba;
81
+ --bpjs-color-yellow-200: #f7d098;
82
+ --bpjs-color-yellow-300: #f5c076;
83
+ --bpjs-color-yellow-400: #f2b153;
84
+ --bpjs-color-yellow-500: #f0a131;
85
+ --bpjs-color-yellow-600: #c88629;
86
+ --bpjs-color-yellow-700: #a06b21;
87
+ --bpjs-color-yellow-800: #785119;
88
+ --bpjs-color-yellow-900: #503610;
89
+ --bpjs-display-2xl-font-size: 72px;
90
+ --bpjs-display-2xl-line-height: 90px;
91
+ --bpjs-display-lg-font-size: 48px;
92
+ --bpjs-display-lg-line-height: 60px;
93
+ --bpjs-display-md-font-size: 36px;
94
+ --bpjs-display-md-line-height: 44px;
95
+ --bpjs-display-sm-font-size: 30px;
96
+ --bpjs-display-sm-line-height: 38px;
97
+ --bpjs-display-xl-font-size: 60px;
98
+ --bpjs-display-xl-line-height: 72px;
99
+ --bpjs-display-xs-font-size: 24px;
100
+ --bpjs-display-xs-line-height: 32px;
101
+ --bpjs-font-family: "Plus Jakarta Sans", system-ui, sans-serif;
102
+ --bpjs-font-weight-black: 900;
103
+ --bpjs-font-weight-bold: 700;
104
+ --bpjs-font-weight-extra-bold: 800;
105
+ --bpjs-font-weight-medium: 500;
106
+ --bpjs-font-weight-regular: 400;
107
+ --bpjs-font-weight-semi-bold: 600;
108
+ --bpjs-number-0: 0px;
109
+ --bpjs-number-2: 2px;
110
+ --bpjs-number-4: 4px;
111
+ --bpjs-number-6: 6px;
112
+ --bpjs-number-8: 8px;
113
+ --bpjs-number-10: 10px;
114
+ --bpjs-number-12: 12px;
115
+ --bpjs-number-14: 14px;
116
+ --bpjs-number-16: 16px;
117
+ --bpjs-number-20: 20px;
118
+ --bpjs-number-24: 24px;
119
+ --bpjs-number-28: 28px;
120
+ --bpjs-number-32: 32px;
121
+ --bpjs-number-40: 40px;
122
+ --bpjs-number-48: 48px;
123
+ --bpjs-number-56: 56px;
124
+ --bpjs-number-64: 64px;
125
+ --bpjs-number-72: 72px;
126
+ --bpjs-number-80: 80px;
127
+ --bpjs-number-128: 128px;
128
+ --bpjs-number-999: 999px;
129
+ --bpjs-text-lg-font-size: 18px;
130
+ --bpjs-text-lg-line-height: 28px;
131
+ --bpjs-text-md-font-size: 16px;
132
+ --bpjs-text-md-line-height: 24px;
133
+ --bpjs-text-sm-font-size: 14px;
134
+ --bpjs-text-sm-line-height: 20px;
135
+ --bpjs-text-xl-font-size: 20px;
136
+ --bpjs-text-xl-line-height: 30px;
137
+ --bpjs-text-xs-font-size: 12px;
138
+ --bpjs-text-xs-line-height: 18px;
139
+ --bpjs-device-desktop-sm: 1440px;
140
+ --bpjs-device-desktop-xl: 1728px;
141
+ --bpjs-device-mobile: 390px;
142
+ --bpjs-device-tablet: 768px;
143
+ --bpjs-layout-grid-color: #ff000008;
144
+ --bpjs-layout-grid-desktop-columns: 12;
145
+ --bpjs-layout-grid-tablet-columns: 8;
146
+ --bpjs-layout-grid-mobile-columns: 4;
147
+ --bpjs-blue-10: var(--bpjs-color-blues-10);
148
+ --bpjs-blue-50: var(--bpjs-color-blues-50);
149
+ --bpjs-blue-100: var(--bpjs-color-blues-100);
150
+ --bpjs-blue-200: var(--bpjs-color-blues-200);
151
+ --bpjs-blue-300: var(--bpjs-color-blues-300);
152
+ --bpjs-blue-400: var(--bpjs-color-blues-400);
153
+ --bpjs-blue-500: var(--bpjs-color-blues-500);
154
+ --bpjs-blue-600: var(--bpjs-color-blues-600);
155
+ --bpjs-blue-700: var(--bpjs-color-blues-700);
156
+ --bpjs-blue-800: var(--bpjs-color-blues-800);
157
+ --bpjs-blue-900: var(--bpjs-color-blues-900);
158
+ --bpjs-blue-1000: var(--bpjs-color-blues-1000);
159
+ --bpjs-brand-10: var(--bpjs-color-blues-10);
160
+ --bpjs-brand-50: var(--bpjs-color-blues-50);
161
+ --bpjs-brand-100: var(--bpjs-color-blues-100);
162
+ --bpjs-brand-200: var(--bpjs-color-blues-200);
163
+ --bpjs-brand-300: var(--bpjs-color-blues-300);
164
+ --bpjs-brand-400: var(--bpjs-color-blues-400);
165
+ --bpjs-brand-500: var(--bpjs-color-blues-500);
166
+ --bpjs-brand-600: var(--bpjs-color-blues-600);
167
+ --bpjs-brand-700: var(--bpjs-color-blues-700);
168
+ --bpjs-brand-800: var(--bpjs-color-blues-800);
169
+ --bpjs-brand-900: var(--bpjs-color-blues-900);
170
+ --bpjs-brand-1000: var(--bpjs-color-blues-1000);
171
+ --bpjs-gray-dark-50: var(--bpjs-color-gray-dark-50);
172
+ --bpjs-gray-dark-100: var(--bpjs-color-gray-dark-100);
173
+ --bpjs-gray-dark-200: var(--bpjs-color-gray-dark-200);
174
+ --bpjs-gray-dark-300: var(--bpjs-color-gray-dark-300);
175
+ --bpjs-gray-dark-400: var(--bpjs-color-gray-dark-400);
176
+ --bpjs-gray-dark-500: var(--bpjs-color-gray-dark-500);
177
+ --bpjs-gray-dark-600: var(--bpjs-color-gray-dark-600);
178
+ --bpjs-gray-dark-700: var(--bpjs-color-gray-dark-700);
179
+ --bpjs-gray-dark-800: var(--bpjs-color-gray-dark-800);
180
+ --bpjs-gray-dark-900: var(--bpjs-color-gray-dark-900);
181
+ --bpjs-gray-light-50: var(--bpjs-color-gray-light-50);
182
+ --bpjs-gray-light-100: var(--bpjs-color-gray-light-100);
183
+ --bpjs-gray-light-200: var(--bpjs-color-gray-light-200);
184
+ --bpjs-gray-light-300: var(--bpjs-color-gray-light-300);
185
+ --bpjs-gray-light-400: var(--bpjs-color-gray-light-400);
186
+ --bpjs-gray-light-500: var(--bpjs-color-gray-light-500);
187
+ --bpjs-gray-light-600: var(--bpjs-color-gray-light-600);
188
+ --bpjs-gray-light-700: var(--bpjs-color-gray-light-700);
189
+ --bpjs-gray-light-800: var(--bpjs-color-gray-light-800);
190
+ --bpjs-gray-light-900: var(--bpjs-color-gray-light-900);
191
+ --bpjs-green-10: var(--bpjs-color-greens-10);
192
+ --bpjs-green-50: var(--bpjs-color-greens-50);
193
+ --bpjs-green-100: var(--bpjs-color-greens-100);
194
+ --bpjs-green-200: var(--bpjs-color-greens-200);
195
+ --bpjs-green-300: var(--bpjs-color-greens-300);
196
+ --bpjs-green-400: var(--bpjs-color-greens-400);
197
+ --bpjs-green-500: var(--bpjs-color-greens-500);
198
+ --bpjs-green-600: var(--bpjs-color-greens-600);
199
+ --bpjs-green-700: var(--bpjs-color-greens-700);
200
+ --bpjs-green-800: var(--bpjs-color-greens-800);
201
+ --bpjs-green-900: var(--bpjs-color-greens-900);
202
+ --bpjs-green-1000: var(--bpjs-color-greens-1000);
203
+ --bpjs-red-10: var(--bpjs-color-red-10);
204
+ --bpjs-red-50: var(--bpjs-color-red-50);
205
+ --bpjs-red-100: var(--bpjs-color-red-100);
206
+ --bpjs-red-200: var(--bpjs-color-red-200);
207
+ --bpjs-red-300: var(--bpjs-color-red-300);
208
+ --bpjs-red-400: var(--bpjs-color-red-400);
209
+ --bpjs-red-500: var(--bpjs-color-red-500);
210
+ --bpjs-red-600: var(--bpjs-color-red-600);
211
+ --bpjs-red-700: var(--bpjs-color-red-700);
212
+ --bpjs-red-800: var(--bpjs-color-red-800);
213
+ --bpjs-red-900: var(--bpjs-color-red-900);
214
+ --bpjs-red-1000: var(--bpjs-color-red-1000);
215
+ --bpjs-yellow-50: var(--bpjs-color-yellow-50);
216
+ --bpjs-yellow-100: var(--bpjs-color-yellow-100);
217
+ --bpjs-yellow-200: var(--bpjs-color-yellow-200);
218
+ --bpjs-yellow-300: var(--bpjs-color-yellow-300);
219
+ --bpjs-yellow-400: var(--bpjs-color-yellow-400);
220
+ --bpjs-yellow-500: var(--bpjs-color-yellow-500);
221
+ --bpjs-yellow-600: var(--bpjs-color-yellow-600);
222
+ --bpjs-yellow-700: var(--bpjs-color-yellow-700);
223
+ --bpjs-yellow-800: var(--bpjs-color-yellow-800);
224
+ --bpjs-yellow-900: var(--bpjs-color-yellow-900);
225
+ --bpjs-spacing-2xl: var(--bpjs-number-32);
226
+ --bpjs-spacing-2xs: var(--bpjs-number-2);
227
+ --bpjs-spacing-4xl: var(--bpjs-number-48);
228
+ --bpjs-spacing-5xl: var(--bpjs-number-56);
229
+ --bpjs-spacing-6: var(--bpjs-number-6);
230
+ --bpjs-spacing-6xl: var(--bpjs-number-64);
231
+ --bpjs-spacing-7xl: var(--bpjs-number-72);
232
+ --bpjs-spacing-10: var(--bpjs-number-10);
233
+ --bpjs-spacing-14: var(--bpjs-number-14);
234
+ --bpjs-spacing-20: var(--bpjs-number-20);
235
+ --bpjs-spacing-28: var(--bpjs-number-28);
236
+ --bpjs-spacing-40: var(--bpjs-number-40);
237
+ --bpjs-spacing-lg: var(--bpjs-number-16);
238
+ --bpjs-spacing-md: var(--bpjs-number-12);
239
+ --bpjs-spacing-none: var(--bpjs-number-0);
240
+ --bpjs-spacing-sm: var(--bpjs-number-8);
241
+ --bpjs-spacing-xl: var(--bpjs-number-24);
242
+ --bpjs-spacing-xs: var(--bpjs-number-4);
243
+ --bpjs-radius-2xl: var(--bpjs-number-16);
244
+ --bpjs-radius-2xs: var(--bpjs-number-2);
245
+ --bpjs-radius-lg: var(--bpjs-number-12);
246
+ --bpjs-radius-md: var(--bpjs-number-10);
247
+ --bpjs-radius-none: var(--bpjs-number-0);
248
+ --bpjs-radius-round: var(--bpjs-number-999);
249
+ --bpjs-radius-sm: var(--bpjs-number-8);
250
+ --bpjs-radius-xs: var(--bpjs-number-4);
251
+ --bpjs-display-2xl-bold: var(--bpjs-font-weight-bold) var(--bpjs-display-2xl-font-size)/var(--bpjs-display-2xl-line-height) var(--bpjs-font-family);
252
+ --bpjs-display-2xl-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-display-2xl-font-size)/var(--bpjs-display-2xl-line-height) var(--bpjs-font-family);
253
+ --bpjs-display-2xl-medium: var(--bpjs-font-weight-medium) var(--bpjs-display-2xl-font-size)/var(--bpjs-display-2xl-line-height) var(--bpjs-font-family);
254
+ --bpjs-display-2xl-regular: var(--bpjs-font-weight-regular) var(--bpjs-display-2xl-font-size)/var(--bpjs-display-2xl-line-height) var(--bpjs-font-family);
255
+ --bpjs-display-2xl-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-display-2xl-font-size)/var(--bpjs-display-2xl-line-height) var(--bpjs-font-family);
256
+ --bpjs-display-lg-bold: var(--bpjs-font-weight-bold) var(--bpjs-display-lg-font-size)/var(--bpjs-display-lg-line-height) var(--bpjs-font-family);
257
+ --bpjs-display-lg-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-display-lg-font-size)/var(--bpjs-display-lg-line-height) var(--bpjs-font-family);
258
+ --bpjs-display-lg-medium: var(--bpjs-font-weight-medium) var(--bpjs-display-lg-font-size)/var(--bpjs-display-lg-line-height) var(--bpjs-font-family);
259
+ --bpjs-display-lg-regular: var(--bpjs-font-weight-regular) var(--bpjs-display-lg-font-size)/var(--bpjs-display-lg-line-height) var(--bpjs-font-family);
260
+ --bpjs-display-lg-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-display-lg-font-size)/var(--bpjs-display-lg-line-height) var(--bpjs-font-family);
261
+ --bpjs-display-md-bold: var(--bpjs-font-weight-bold) var(--bpjs-display-md-font-size)/var(--bpjs-display-md-line-height) var(--bpjs-font-family);
262
+ --bpjs-display-md-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-display-md-font-size)/var(--bpjs-display-md-line-height) var(--bpjs-font-family);
263
+ --bpjs-display-md-medium: var(--bpjs-font-weight-medium) var(--bpjs-display-md-font-size)/var(--bpjs-display-md-line-height) var(--bpjs-font-family);
264
+ --bpjs-display-md-regular: var(--bpjs-font-weight-regular) var(--bpjs-display-md-font-size)/var(--bpjs-display-md-line-height) var(--bpjs-font-family);
265
+ --bpjs-display-md-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-display-md-font-size)/var(--bpjs-display-md-line-height) var(--bpjs-font-family);
266
+ --bpjs-display-sm-bold: var(--bpjs-font-weight-bold) var(--bpjs-display-sm-font-size)/var(--bpjs-display-sm-line-height) var(--bpjs-font-family);
267
+ --bpjs-display-sm-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-display-sm-font-size)/var(--bpjs-display-sm-line-height) var(--bpjs-font-family);
268
+ --bpjs-display-sm-medium: var(--bpjs-font-weight-medium) var(--bpjs-display-sm-font-size)/var(--bpjs-display-sm-line-height) var(--bpjs-font-family);
269
+ --bpjs-display-sm-regular: var(--bpjs-font-weight-regular) var(--bpjs-display-sm-font-size)/var(--bpjs-display-sm-line-height) var(--bpjs-font-family);
270
+ --bpjs-display-sm-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-display-sm-font-size)/var(--bpjs-display-sm-line-height) var(--bpjs-font-family);
271
+ --bpjs-display-xl-bold: var(--bpjs-font-weight-bold) var(--bpjs-display-xl-font-size)/var(--bpjs-display-xl-line-height) var(--bpjs-font-family);
272
+ --bpjs-display-xl-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-display-xl-font-size)/var(--bpjs-display-xl-line-height) var(--bpjs-font-family);
273
+ --bpjs-display-xl-medium: var(--bpjs-font-weight-medium) var(--bpjs-display-xl-font-size)/var(--bpjs-display-xl-line-height) var(--bpjs-font-family);
274
+ --bpjs-display-xl-regular: var(--bpjs-font-weight-regular) var(--bpjs-display-xl-font-size)/var(--bpjs-display-xl-line-height) var(--bpjs-font-family);
275
+ --bpjs-display-xl-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-display-xl-font-size)/var(--bpjs-display-xl-line-height) var(--bpjs-font-family);
276
+ --bpjs-display-xs-bold: var(--bpjs-font-weight-bold) var(--bpjs-display-xs-font-size)/var(--bpjs-display-xs-line-height) var(--bpjs-font-family);
277
+ --bpjs-display-xs-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-display-xs-font-size)/var(--bpjs-display-xs-line-height) var(--bpjs-font-family);
278
+ --bpjs-display-xs-medium: var(--bpjs-font-weight-medium) var(--bpjs-display-xs-font-size)/var(--bpjs-display-xs-line-height) var(--bpjs-font-family);
279
+ --bpjs-display-xs-regular: var(--bpjs-font-weight-regular) var(--bpjs-display-xs-font-size)/var(--bpjs-display-xs-line-height) var(--bpjs-font-family);
280
+ --bpjs-display-xs-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-display-xs-font-size)/var(--bpjs-display-xs-line-height) var(--bpjs-font-family);
281
+ --bpjs-text-lg-bold: var(--bpjs-font-weight-bold) var(--bpjs-text-lg-font-size)/var(--bpjs-text-lg-line-height) var(--bpjs-font-family);
282
+ --bpjs-text-lg-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-text-lg-font-size)/var(--bpjs-text-lg-line-height) var(--bpjs-font-family);
283
+ --bpjs-text-lg-medium: var(--bpjs-font-weight-medium) var(--bpjs-text-lg-font-size)/var(--bpjs-text-lg-line-height) var(--bpjs-font-family);
284
+ --bpjs-text-lg-regular: var(--bpjs-font-weight-regular) var(--bpjs-text-lg-font-size)/var(--bpjs-text-lg-line-height) var(--bpjs-font-family);
285
+ --bpjs-text-lg-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-text-lg-font-size)/var(--bpjs-text-lg-line-height) var(--bpjs-font-family);
286
+ --bpjs-text-md-bold: var(--bpjs-font-weight-bold) var(--bpjs-text-md-font-size)/var(--bpjs-text-md-line-height) var(--bpjs-font-family);
287
+ --bpjs-text-md-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-text-md-font-size)/var(--bpjs-text-md-line-height) var(--bpjs-font-family);
288
+ --bpjs-text-md-medium: var(--bpjs-font-weight-medium) var(--bpjs-text-md-font-size)/var(--bpjs-text-md-line-height) var(--bpjs-font-family);
289
+ --bpjs-text-md-regular: var(--bpjs-font-weight-regular) var(--bpjs-text-md-font-size)/var(--bpjs-text-md-line-height) var(--bpjs-font-family);
290
+ --bpjs-text-md-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-text-md-font-size)/var(--bpjs-text-md-line-height) var(--bpjs-font-family);
291
+ --bpjs-text-sm-bold: var(--bpjs-font-weight-bold) var(--bpjs-text-sm-font-size)/var(--bpjs-text-sm-line-height) var(--bpjs-font-family);
292
+ --bpjs-text-sm-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-text-sm-font-size)/var(--bpjs-text-sm-line-height) var(--bpjs-font-family);
293
+ --bpjs-text-sm-medium: var(--bpjs-font-weight-medium) var(--bpjs-text-sm-font-size)/var(--bpjs-text-sm-line-height) var(--bpjs-font-family);
294
+ --bpjs-text-sm-regular: var(--bpjs-font-weight-regular) var(--bpjs-text-sm-font-size)/var(--bpjs-text-sm-line-height) var(--bpjs-font-family);
295
+ --bpjs-text-sm-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-text-sm-font-size)/var(--bpjs-text-sm-line-height) var(--bpjs-font-family);
296
+ --bpjs-text-xl-bold: var(--bpjs-font-weight-bold) var(--bpjs-text-xl-font-size)/var(--bpjs-text-xl-line-height) var(--bpjs-font-family);
297
+ --bpjs-text-xl-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-text-xl-font-size)/var(--bpjs-text-xl-line-height) var(--bpjs-font-family);
298
+ --bpjs-text-xl-medium: var(--bpjs-font-weight-medium) var(--bpjs-text-xl-font-size)/var(--bpjs-text-xl-line-height) var(--bpjs-font-family);
299
+ --bpjs-text-xl-regular: var(--bpjs-font-weight-regular) var(--bpjs-text-xl-font-size)/var(--bpjs-text-xl-line-height) var(--bpjs-font-family);
300
+ --bpjs-text-xl-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-text-xl-font-size)/var(--bpjs-text-xl-line-height) var(--bpjs-font-family);
301
+ --bpjs-text-xs-bold: var(--bpjs-font-weight-bold) var(--bpjs-text-xs-font-size)/var(--bpjs-text-xs-line-height) var(--bpjs-font-family);
302
+ --bpjs-text-xs-extra-bold: var(--bpjs-font-weight-extra-bold) var(--bpjs-text-xs-font-size)/var(--bpjs-text-xs-line-height) var(--bpjs-font-family);
303
+ --bpjs-text-xs-medium: var(--bpjs-font-weight-medium) var(--bpjs-text-xs-font-size)/var(--bpjs-text-xs-line-height) var(--bpjs-font-family);
304
+ --bpjs-text-xs-regular: var(--bpjs-font-weight-regular) var(--bpjs-text-xs-font-size)/var(--bpjs-text-xs-line-height) var(--bpjs-font-family);
305
+ --bpjs-text-xs-semibold: var(--bpjs-font-weight-semi-bold) var(--bpjs-text-xs-font-size)/var(--bpjs-text-xs-line-height) var(--bpjs-font-family);
306
+ --bpjs-layout-grid-desktop-gutter: var(--bpjs-number-32);
307
+ --bpjs-layout-grid-desktop-margin: var(--bpjs-number-32);
308
+ --bpjs-layout-grid-tablet-gutter: var(--bpjs-number-24);
309
+ --bpjs-layout-grid-tablet-margin: var(--bpjs-number-24);
310
+ --bpjs-layout-grid-mobile-gutter: var(--bpjs-number-16);
311
+ --bpjs-layout-grid-mobile-margin: var(--bpjs-number-16);
312
+ --bpjs-icon-size-xs: var(--bpjs-number-12);
313
+ --bpjs-icon-size-sm: var(--bpjs-number-16);
314
+ --bpjs-icon-size-md: var(--bpjs-number-20);
315
+ --bpjs-icon-size-lg: var(--bpjs-number-24);
316
+ --bpjs-icon-size-xl: var(--bpjs-number-32);
317
+ --bpjs-brand-radius-components: var(--bpjs-radius-md);
318
+ }
319
+
320
+ :root, [data-theme="light"] {
321
+ --lightningcss-light: initial;
322
+ --lightningcss-dark: ;
323
+ color-scheme: light;
324
+ --bpjs-shadow-md: 0px 3px 14px 0px #00000014;
325
+ --bpjs-shadow-sm: 0px 1px 3px 0px #00000014, 0px 1px 2px -1px #00000014;
326
+ --bpjs-background-gradient-primary: linear-gradient(180deg, #0e64df 2.4%, #0752be 86.54%);
327
+ --bpjs-border-gradient-low: linear-gradient(180deg, #0000 14.42%, #0000001a 100%);
328
+ --bpjs-border-gradient-primary: linear-gradient(180deg, #ffffff73 0%, #fff0 100%);
329
+ --bpjs-border-very-low: #d6d6d6b3;
330
+ --bpjs-shadow-border-gray: 0px 0px 0px 1px var(--bpjs-border-very-low);
331
+ --bpjs-background-black: var(--bpjs-color-gray-dark-900);
332
+ --bpjs-background-black-static: var(--bpjs-color-gray-dark-900);
333
+ --bpjs-background-gray: var(--bpjs-color-gray-light-200);
334
+ --bpjs-background-high: var(--bpjs-color-gray-light-50);
335
+ --bpjs-background-low: var(--bpjs-color-gray-light-300);
336
+ --bpjs-background-medium: var(--bpjs-color-gray-light-100);
337
+ --bpjs-background-white: var(--bpjs-color-whites-500);
338
+ --bpjs-background-white-static: var(--bpjs-color-whites-500);
339
+ --bpjs-border-black: var(--bpjs-color-gray-dark-900);
340
+ --bpjs-border-black-static: var(--bpjs-color-gray-dark-900);
341
+ --bpjs-border-high: var(--bpjs-color-gray-light-600);
342
+ --bpjs-border-low: var(--bpjs-color-gray-light-400);
343
+ --bpjs-border-medium: var(--bpjs-color-gray-light-500);
344
+ --bpjs-border-white: var(--bpjs-color-whites-500);
345
+ --bpjs-border-white-static: var(--bpjs-color-whites-500);
346
+ --bpjs-text-white: var(--bpjs-color-whites-500);
347
+ --bpjs-background-gradient-danger: linear-gradient(180deg, var(--bpjs-red-500) 0%, var(--bpjs-red-600) 100%);
348
+ --bpjs-background-brand-primary: var(--bpjs-brand-500);
349
+ --bpjs-background-brand-primary-soft: var(--bpjs-brand-200);
350
+ --bpjs-background-brand-secondary: var(--bpjs-brand-700);
351
+ --bpjs-background-danger-hard: var(--bpjs-red-500);
352
+ --bpjs-background-danger-soft: var(--bpjs-red-10);
353
+ --bpjs-background-info-hard: var(--bpjs-blue-500);
354
+ --bpjs-background-info-soft: var(--bpjs-blue-10);
355
+ --bpjs-background-success-hard: var(--bpjs-green-500);
356
+ --bpjs-background-success-soft: var(--bpjs-green-10);
357
+ --bpjs-background-warning-hard: var(--bpjs-yellow-500);
358
+ --bpjs-background-warning-soft: var(--bpjs-yellow-50);
359
+ --bpjs-border-brand-primary: var(--bpjs-brand-500);
360
+ --bpjs-border-brand-secondary: var(--bpjs-brand-700);
361
+ --bpjs-border-danger-hard: var(--bpjs-red-500);
362
+ --bpjs-border-danger-soft: var(--bpjs-red-300);
363
+ --bpjs-border-info-hard: var(--bpjs-blue-500);
364
+ --bpjs-border-info-soft: var(--bpjs-blue-300);
365
+ --bpjs-border-success-hard: var(--bpjs-green-500);
366
+ --bpjs-border-success-soft: var(--bpjs-green-300);
367
+ --bpjs-border-warning-hard: var(--bpjs-yellow-500);
368
+ --bpjs-border-warning-soft: var(--bpjs-yellow-300);
369
+ --bpjs-focus-danger: var(--bpjs-red-100);
370
+ --bpjs-focus-normal: var(--bpjs-brand-100);
371
+ --bpjs-text-black: var(--bpjs-gray-dark-900);
372
+ --bpjs-text-brand: var(--bpjs-brand-500);
373
+ --bpjs-text-danger: var(--bpjs-red-500);
374
+ --bpjs-text-high: var(--bpjs-gray-dark-900);
375
+ --bpjs-text-info: var(--bpjs-blue-500);
376
+ --bpjs-text-low: var(--bpjs-gray-light-600);
377
+ --bpjs-text-medium: var(--bpjs-gray-light-700);
378
+ --bpjs-text-success: var(--bpjs-green-600);
379
+ --bpjs-text-very-low: var(--bpjs-gray-light-500);
380
+ --bpjs-text-warning: var(--bpjs-yellow-600);
381
+ --bpjs-shadow-border-brand: 0px 0px 0px 1px var(--bpjs-border-brand-primary);
382
+ --bpjs-shadow-focus: 0px 0px 0px 2px var(--bpjs-focus-normal);
383
+ --bpjs-shadow-focus-danger: 0px 0px 0px 2px var(--bpjs-focus-danger);
384
+ }
385
+
386
+ [data-theme="dark"] {
387
+ --lightningcss-light: ;
388
+ --lightningcss-dark: initial;
389
+ color-scheme: dark;
390
+ --bpjs-shadow-md: 0px 3px 14px 0px #00000014;
391
+ --bpjs-shadow-sm: 0px 1px 3px 0px #00000014, 0px 1px 2px -1px #00000014;
392
+ --bpjs-background-gradient-primary: linear-gradient(180deg, #0e64df 2.4%, #0752be 86.54%);
393
+ --bpjs-border-gradient-low: linear-gradient(180deg, #0000 14.42%, #0000001a 100%);
394
+ --bpjs-border-gradient-primary: linear-gradient(180deg, #ffffff73 0%, #fff0 100%);
395
+ --bpjs-border-very-low: #26282bb3;
396
+ --bpjs-shadow-border-gray: 0px 0px 0px 1px var(--bpjs-border-very-low);
397
+ --bpjs-background-black: var(--bpjs-color-whites-500);
398
+ --bpjs-background-black-static: var(--bpjs-color-gray-dark-900);
399
+ --bpjs-background-high: var(--bpjs-color-gray-dark-700);
400
+ --bpjs-background-low: var(--bpjs-color-gray-dark-900);
401
+ --bpjs-background-medium: var(--bpjs-color-gray-dark-800);
402
+ --bpjs-background-warning-hard: var(--bpjs-color-yellow-400);
403
+ --bpjs-background-white: var(--bpjs-color-gray-dark-900);
404
+ --bpjs-background-white-static: var(--bpjs-color-whites-500);
405
+ --bpjs-border-black: var(--bpjs-color-whites-500);
406
+ --bpjs-border-black-static: var(--bpjs-color-gray-dark-900);
407
+ --bpjs-border-brand-primary: var(--bpjs-color-blues-500);
408
+ --bpjs-border-brand-secondary: var(--bpjs-color-blues-700);
409
+ --bpjs-border-high: var(--bpjs-color-gray-dark-200);
410
+ --bpjs-border-low: var(--bpjs-color-gray-dark-400);
411
+ --bpjs-border-medium: var(--bpjs-color-gray-dark-300);
412
+ --bpjs-border-white: var(--bpjs-color-gray-dark-900);
413
+ --bpjs-border-white-static: var(--bpjs-color-whites-500);
414
+ --bpjs-text-white: var(--bpjs-color-whites-500);
415
+ --bpjs-shadow-border-brand: 0px 0px 0px 1px var(--bpjs-border-brand-primary);
416
+ --bpjs-background-gradient-danger: linear-gradient(180deg, var(--bpjs-red-500) 0%, var(--bpjs-red-600) 100%);
417
+ --bpjs-background-brand-primary: var(--bpjs-brand-500);
418
+ --bpjs-background-brand-primary-soft: var(--bpjs-brand-800);
419
+ --bpjs-background-brand-secondary: var(--bpjs-brand-700);
420
+ --bpjs-background-danger-hard: var(--bpjs-red-500);
421
+ --bpjs-background-danger-soft: var(--bpjs-red-1000);
422
+ --bpjs-background-gray: var(--bpjs-gray-dark-300);
423
+ --bpjs-background-info-hard: var(--bpjs-blue-400);
424
+ --bpjs-background-info-soft: var(--bpjs-blue-1000);
425
+ --bpjs-background-success-hard: var(--bpjs-green-600);
426
+ --bpjs-background-success-soft: var(--bpjs-green-1000);
427
+ --bpjs-background-warning-soft: var(--bpjs-yellow-900);
428
+ --bpjs-border-danger-hard: var(--bpjs-red-400);
429
+ --bpjs-border-danger-soft: var(--bpjs-red-800);
430
+ --bpjs-border-info-hard: var(--bpjs-blue-400);
431
+ --bpjs-border-info-soft: var(--bpjs-blue-800);
432
+ --bpjs-border-success-hard: var(--bpjs-green-400);
433
+ --bpjs-border-success-soft: var(--bpjs-green-800);
434
+ --bpjs-border-warning-hard: var(--bpjs-yellow-400);
435
+ --bpjs-border-warning-soft: var(--bpjs-yellow-800);
436
+ --bpjs-focus-danger: var(--bpjs-red-800);
437
+ --bpjs-focus-normal: var(--bpjs-brand-800);
438
+ --bpjs-text-black: var(--bpjs-gray-dark-900);
439
+ --bpjs-text-brand: var(--bpjs-brand-400);
440
+ --bpjs-text-danger: var(--bpjs-red-400);
441
+ --bpjs-text-high: var(--bpjs-gray-light-50);
442
+ --bpjs-text-info: var(--bpjs-blue-400);
443
+ --bpjs-text-low: var(--bpjs-gray-light-600);
444
+ --bpjs-text-medium: var(--bpjs-gray-light-400);
445
+ --bpjs-text-success: var(--bpjs-green-400);
446
+ --bpjs-text-very-low: var(--bpjs-gray-light-700);
447
+ --bpjs-text-warning: var(--bpjs-yellow-500);
448
+ --bpjs-shadow-focus: 0px 0px 0px 2px var(--bpjs-focus-normal);
449
+ --bpjs-shadow-focus-danger: 0px 0px 0px 2px var(--bpjs-focus-danger);
450
+ }
451
+
452
+ .bpjs-type-display-2xl-bold {
453
+ font: var(--bpjs-display-2xl-bold);
454
+ }
455
+
456
+ .bpjs-type-display-2xl-extra-bold {
457
+ font: var(--bpjs-display-2xl-extra-bold);
458
+ }
459
+
460
+ .bpjs-type-display-2xl-medium {
461
+ font: var(--bpjs-display-2xl-medium);
462
+ }
463
+
464
+ .bpjs-type-display-2xl-regular {
465
+ font: var(--bpjs-display-2xl-regular);
466
+ }
467
+
468
+ .bpjs-type-display-2xl-semibold {
469
+ font: var(--bpjs-display-2xl-semibold);
470
+ }
471
+
472
+ .bpjs-type-display-lg-bold {
473
+ font: var(--bpjs-display-lg-bold);
474
+ }
475
+
476
+ .bpjs-type-display-lg-extra-bold {
477
+ font: var(--bpjs-display-lg-extra-bold);
478
+ }
479
+
480
+ .bpjs-type-display-lg-medium {
481
+ font: var(--bpjs-display-lg-medium);
482
+ }
483
+
484
+ .bpjs-type-display-lg-regular {
485
+ font: var(--bpjs-display-lg-regular);
486
+ }
487
+
488
+ .bpjs-type-display-lg-semibold {
489
+ font: var(--bpjs-display-lg-semibold);
490
+ }
491
+
492
+ .bpjs-type-display-md-bold {
493
+ font: var(--bpjs-display-md-bold);
494
+ }
495
+
496
+ .bpjs-type-display-md-extra-bold {
497
+ font: var(--bpjs-display-md-extra-bold);
498
+ }
499
+
500
+ .bpjs-type-display-md-medium {
501
+ font: var(--bpjs-display-md-medium);
502
+ }
503
+
504
+ .bpjs-type-display-md-regular {
505
+ font: var(--bpjs-display-md-regular);
506
+ }
507
+
508
+ .bpjs-type-display-md-semibold {
509
+ font: var(--bpjs-display-md-semibold);
510
+ }
511
+
512
+ .bpjs-type-display-sm-bold {
513
+ font: var(--bpjs-display-sm-bold);
514
+ }
515
+
516
+ .bpjs-type-display-sm-extra-bold {
517
+ font: var(--bpjs-display-sm-extra-bold);
518
+ }
519
+
520
+ .bpjs-type-display-sm-medium {
521
+ font: var(--bpjs-display-sm-medium);
522
+ }
523
+
524
+ .bpjs-type-display-sm-regular {
525
+ font: var(--bpjs-display-sm-regular);
526
+ }
527
+
528
+ .bpjs-type-display-sm-semibold {
529
+ font: var(--bpjs-display-sm-semibold);
530
+ }
531
+
532
+ .bpjs-type-display-xl-bold {
533
+ font: var(--bpjs-display-xl-bold);
534
+ }
535
+
536
+ .bpjs-type-display-xl-extra-bold {
537
+ font: var(--bpjs-display-xl-extra-bold);
538
+ }
539
+
540
+ .bpjs-type-display-xl-medium {
541
+ font: var(--bpjs-display-xl-medium);
542
+ }
543
+
544
+ .bpjs-type-display-xl-regular {
545
+ font: var(--bpjs-display-xl-regular);
546
+ }
547
+
548
+ .bpjs-type-display-xl-semibold {
549
+ font: var(--bpjs-display-xl-semibold);
550
+ }
551
+
552
+ .bpjs-type-display-xs-bold {
553
+ font: var(--bpjs-display-xs-bold);
554
+ }
555
+
556
+ .bpjs-type-display-xs-extra-bold {
557
+ font: var(--bpjs-display-xs-extra-bold);
558
+ }
559
+
560
+ .bpjs-type-display-xs-medium {
561
+ font: var(--bpjs-display-xs-medium);
562
+ }
563
+
564
+ .bpjs-type-display-xs-regular {
565
+ font: var(--bpjs-display-xs-regular);
566
+ }
567
+
568
+ .bpjs-type-display-xs-semibold {
569
+ font: var(--bpjs-display-xs-semibold);
570
+ }
571
+
572
+ .bpjs-type-text-lg-bold {
573
+ font: var(--bpjs-text-lg-bold);
574
+ }
575
+
576
+ .bpjs-type-text-lg-extra-bold {
577
+ font: var(--bpjs-text-lg-extra-bold);
578
+ }
579
+
580
+ .bpjs-type-text-lg-medium {
581
+ font: var(--bpjs-text-lg-medium);
582
+ }
583
+
584
+ .bpjs-type-text-lg-regular {
585
+ font: var(--bpjs-text-lg-regular);
586
+ }
587
+
588
+ .bpjs-type-text-lg-semibold {
589
+ font: var(--bpjs-text-lg-semibold);
590
+ }
591
+
592
+ .bpjs-type-text-md-bold {
593
+ font: var(--bpjs-text-md-bold);
594
+ }
595
+
596
+ .bpjs-type-text-md-extra-bold {
597
+ font: var(--bpjs-text-md-extra-bold);
598
+ }
599
+
600
+ .bpjs-type-text-md-medium {
601
+ font: var(--bpjs-text-md-medium);
602
+ }
603
+
604
+ .bpjs-type-text-md-regular {
605
+ font: var(--bpjs-text-md-regular);
606
+ }
607
+
608
+ .bpjs-type-text-md-semibold {
609
+ font: var(--bpjs-text-md-semibold);
610
+ }
611
+
612
+ .bpjs-type-text-sm-bold {
613
+ font: var(--bpjs-text-sm-bold);
614
+ }
615
+
616
+ .bpjs-type-text-sm-extra-bold {
617
+ font: var(--bpjs-text-sm-extra-bold);
618
+ }
619
+
620
+ .bpjs-type-text-sm-medium {
621
+ font: var(--bpjs-text-sm-medium);
622
+ }
623
+
624
+ .bpjs-type-text-sm-regular {
625
+ font: var(--bpjs-text-sm-regular);
626
+ }
627
+
628
+ .bpjs-type-text-sm-semibold {
629
+ font: var(--bpjs-text-sm-semibold);
630
+ }
631
+
632
+ .bpjs-type-text-xl-bold {
633
+ font: var(--bpjs-text-xl-bold);
634
+ }
635
+
636
+ .bpjs-type-text-xl-extra-bold {
637
+ font: var(--bpjs-text-xl-extra-bold);
638
+ }
639
+
640
+ .bpjs-type-text-xl-medium {
641
+ font: var(--bpjs-text-xl-medium);
642
+ }
643
+
644
+ .bpjs-type-text-xl-regular {
645
+ font: var(--bpjs-text-xl-regular);
646
+ }
647
+
648
+ .bpjs-type-text-xl-semibold {
649
+ font: var(--bpjs-text-xl-semibold);
650
+ }
651
+
652
+ .bpjs-type-text-xs-bold {
653
+ font: var(--bpjs-text-xs-bold);
654
+ }
655
+
656
+ .bpjs-type-text-xs-extra-bold {
657
+ font: var(--bpjs-text-xs-extra-bold);
658
+ }
659
+
660
+ .bpjs-type-text-xs-medium {
661
+ font: var(--bpjs-text-xs-medium);
662
+ }
663
+
664
+ .bpjs-type-text-xs-regular {
665
+ font: var(--bpjs-text-xs-regular);
666
+ }
667
+
668
+ .bpjs-type-text-xs-semibold {
669
+ font: var(--bpjs-text-xs-semibold);
670
+ }
671
+
672
+ .bpjs-theme {
673
+ background-color: var(--bpjs-background-high);
674
+ color: var(--bpjs-text-high);
675
+ font: var(--bpjs-text-md-regular);
676
+ }
677
+
678
+ .bpjs-sr-only {
679
+ clip-path: inset(50%);
680
+ white-space: nowrap;
681
+ width: 1px;
682
+ height: 1px;
683
+ font: var(--bpjs-text-sm-regular);
684
+ border: 0;
685
+ margin: -1px;
686
+ padding: 0;
687
+ position: absolute;
688
+ overflow: hidden;
689
+ }
690
+
691
+ .bpjs-button, .bpjs-pill, .bpjs-segmented-item, .bpjs-pagination__page, .bpjs-pagination__nav, .bpjs-table__sort, .bpjs-file-row__retry, .bpjs-dropdown-item, .bpjs-text-field__control, .bpjs-textarea__control, .bpjs-select__control, .bpjs-select__native {
692
+ font-family: var(--bpjs-font-family);
693
+ }
694
+
695
+ .bpjs-scroll-lock {
696
+ overflow: hidden;
697
+ }
698
+
699
+ @keyframes bpjs-spin {
700
+ to {
701
+ transform: rotate(360deg);
702
+ }
703
+ }
704
+
705
+ .bpjs-icon {
706
+ width: var(--bpjs-icon-size, var(--bpjs-icon-size-md));
707
+ height: var(--bpjs-icon-size, var(--bpjs-icon-size-md));
708
+ vertical-align: middle;
709
+ flex: none;
710
+ display: inline-block;
711
+ }
712
+
713
+ .bpjs-icon--xs {
714
+ --bpjs-icon-size: var(--bpjs-icon-size-xs);
715
+ }
716
+
717
+ .bpjs-icon--sm {
718
+ --bpjs-icon-size: var(--bpjs-icon-size-sm);
719
+ }
720
+
721
+ .bpjs-icon--md {
722
+ --bpjs-icon-size: var(--bpjs-icon-size-md);
723
+ }
724
+
725
+ .bpjs-icon--lg {
726
+ --bpjs-icon-size: var(--bpjs-icon-size-lg);
727
+ }
728
+
729
+ .bpjs-icon--xl {
730
+ --bpjs-icon-size: var(--bpjs-icon-size-xl);
731
+ }
732
+
733
+ .bpjs-button {
734
+ --bpjs-button-bg: var(--bpjs-background-brand-primary);
735
+ --bpjs-button-bg-hover: var(--bpjs-background-brand-secondary);
736
+ --bpjs-button-fg: var(--bpjs-text-white);
737
+ --bpjs-button-border: transparent;
738
+ --bpjs-button-shadow: 0 0 #0000;
739
+ --bpjs-button-ring: var(--bpjs-shadow-focus);
740
+ --bpjs-button-height: 40px;
741
+ --bpjs-button-padding-x: var(--bpjs-spacing-14);
742
+ --bpjs-button-font: var(--bpjs-text-sm-semibold);
743
+ --bpjs-icon-size: var(--bpjs-icon-size-md);
744
+ box-sizing: border-box;
745
+ justify-content: center;
746
+ align-items: center;
747
+ gap: var(--bpjs-spacing-6);
748
+ min-height: var(--bpjs-button-height);
749
+ padding: 0 calc(var(--bpjs-button-padding-x) - 1px);
750
+ border: 1px solid var(--bpjs-button-border);
751
+ border-radius: var(--bpjs-brand-radius-components);
752
+ background-color: var(--bpjs-button-bg);
753
+ box-shadow: var(--bpjs-button-shadow);
754
+ color: var(--bpjs-button-fg);
755
+ font: var(--bpjs-button-font);
756
+ text-align: center;
757
+ white-space: nowrap;
758
+ cursor: pointer;
759
+ -webkit-user-select: none;
760
+ user-select: none;
761
+ -webkit-tap-highlight-color: transparent;
762
+ outline-offset: 2px;
763
+ outline: 2px solid #0000;
764
+ margin: 0;
765
+ text-decoration: none;
766
+ transition: background-color .15s, box-shadow .15s, color .15s;
767
+ display: inline-flex;
768
+ }
769
+
770
+ .bpjs-button--secondary {
771
+ --bpjs-button-bg: var(--bpjs-background-high);
772
+ --bpjs-button-bg-hover: var(--bpjs-background-medium);
773
+ --bpjs-button-fg: var(--bpjs-text-high);
774
+ --bpjs-button-border: var(--bpjs-border-very-low);
775
+ }
776
+
777
+ .bpjs-button--tertiary {
778
+ --bpjs-button-bg: var(--bpjs-background-high);
779
+ --bpjs-button-bg-hover: var(--bpjs-background-medium);
780
+ --bpjs-button-fg: var(--bpjs-text-brand);
781
+ }
782
+
783
+ .bpjs-button--ghost {
784
+ --bpjs-button-bg: var(--bpjs-background-high);
785
+ --bpjs-button-bg-hover: var(--bpjs-background-medium);
786
+ --bpjs-button-fg: var(--bpjs-text-brand);
787
+ --bpjs-button-border: var(--bpjs-border-brand-primary);
788
+ }
789
+
790
+ .bpjs-button--danger {
791
+ --bpjs-button-bg: var(--bpjs-background-danger-hard);
792
+ --bpjs-button-bg-hover: var(--bpjs-red-600);
793
+ --bpjs-button-fg: var(--bpjs-text-white);
794
+ --bpjs-button-ring: var(--bpjs-shadow-focus-danger);
795
+ }
796
+
797
+ .bpjs-button--text {
798
+ --bpjs-button-bg: transparent;
799
+ --bpjs-button-bg-hover: transparent;
800
+ --bpjs-button-fg: var(--bpjs-text-brand);
801
+ border-radius: var(--bpjs-radius-xs);
802
+ border: 0;
803
+ min-height: 0;
804
+ padding: 0;
805
+ }
806
+
807
+ .bpjs-button--sm {
808
+ --bpjs-button-height: 36px;
809
+ --bpjs-button-padding-x: var(--bpjs-spacing-md);
810
+ }
811
+
812
+ .bpjs-button--md {
813
+ --bpjs-button-height: 40px;
814
+ --bpjs-button-padding-x: var(--bpjs-spacing-14);
815
+ }
816
+
817
+ .bpjs-button--lg {
818
+ --bpjs-button-height: 44px;
819
+ --bpjs-button-padding-x: var(--bpjs-spacing-14);
820
+ --bpjs-button-font: var(--bpjs-text-md-semibold);
821
+ }
822
+
823
+ .bpjs-button--xl {
824
+ --bpjs-button-height: 48px;
825
+ --bpjs-button-padding-x: var(--bpjs-spacing-lg);
826
+ --bpjs-button-font: var(--bpjs-text-md-semibold);
827
+ }
828
+
829
+ .bpjs-button--icon-only {
830
+ width: var(--bpjs-button-height);
831
+ padding: 0;
832
+ }
833
+
834
+ .bpjs-button--icon-only.bpjs-button--text {
835
+ width: auto;
836
+ }
837
+
838
+ .bpjs-button--block {
839
+ width: 100%;
840
+ display: flex;
841
+ }
842
+
843
+ .bpjs-button--gradient {
844
+ --bpjs-button-gradient: var(--bpjs-background-gradient-primary);
845
+ --bpjs-button-stroke: var(--bpjs-border-gradient-primary);
846
+ background-image: var(--bpjs-button-gradient), var(--bpjs-button-stroke), var(--bpjs-button-gradient);
847
+ background-origin: border-box;
848
+ background-clip: padding-box, border-box, border-box;
849
+ border-color: #0000;
850
+ }
851
+
852
+ .bpjs-button--gradient.bpjs-button--danger {
853
+ --bpjs-button-gradient: var(--bpjs-background-gradient-danger);
854
+ }
855
+
856
+ .bpjs-button--gradient.bpjs-button--secondary, .bpjs-button--gradient.bpjs-button--ghost, .bpjs-button--gradient.bpjs-button--tertiary {
857
+ --bpjs-button-gradient: linear-gradient(var(--bpjs-button-bg) 0 0);
858
+ --bpjs-button-stroke: var(--bpjs-border-gradient-low);
859
+ }
860
+
861
+ .bpjs-button--gradient.bpjs-button--secondary {
862
+ --bpjs-button-shadow: var(--bpjs-shadow-border-gray);
863
+ }
864
+
865
+ .bpjs-button--gradient.bpjs-button--ghost {
866
+ --bpjs-button-shadow: var(--bpjs-shadow-border-brand);
867
+ }
868
+
869
+ .bpjs-button--gradient.bpjs-button--tertiary {
870
+ --bpjs-button-stroke: linear-gradient(transparent 0 0);
871
+ }
872
+
873
+ .bpjs-button--gradient.bpjs-button--text {
874
+ background-image: none;
875
+ }
876
+
877
+ .bpjs-button:not(:disabled, [aria-disabled="true"], [aria-busy="true"]):hover {
878
+ --bpjs-button-bg: var(--bpjs-button-bg-hover);
879
+ }
880
+
881
+ .bpjs-button--gradient:not(:disabled, [aria-disabled="true"], [aria-busy="true"]):hover {
882
+ --bpjs-button-gradient: linear-gradient(var(--bpjs-button-bg-hover) 0 0);
883
+ }
884
+
885
+ .bpjs-button--text:not(:disabled, [aria-disabled="true"], [aria-busy="true"]):hover {
886
+ text-decoration: underline;
887
+ }
888
+
889
+ .bpjs-button:focus-visible {
890
+ box-shadow: var(--bpjs-button-shadow), var(--bpjs-button-ring);
891
+ }
892
+
893
+ .bpjs-button:disabled, .bpjs-button[aria-disabled="true"] {
894
+ --bpjs-button-bg: var(--bpjs-background-medium);
895
+ --bpjs-button-fg: var(--bpjs-text-low);
896
+ --bpjs-button-border: transparent;
897
+ --bpjs-button-shadow: 0 0 #0000;
898
+ cursor: not-allowed;
899
+ }
900
+
901
+ .bpjs-button--gradient:disabled, .bpjs-button--gradient[aria-disabled="true"] {
902
+ --bpjs-button-gradient: linear-gradient(var(--bpjs-background-medium) 0 0);
903
+ --bpjs-button-stroke: var(--bpjs-border-gradient-low);
904
+ }
905
+
906
+ .bpjs-button--text:disabled, .bpjs-button--text[aria-disabled="true"] {
907
+ --bpjs-button-bg: transparent;
908
+ }
909
+
910
+ .bpjs-button[aria-busy="true"] {
911
+ cursor: progress;
912
+ pointer-events: none;
913
+ }
914
+
915
+ .bpjs-button[aria-busy="true"] > .bpjs-icon {
916
+ display: none;
917
+ }
918
+
919
+ .bpjs-button[aria-busy="true"]:before {
920
+ content: "";
921
+ box-sizing: border-box;
922
+ width: var(--bpjs-icon-size);
923
+ height: var(--bpjs-icon-size);
924
+ border-radius: var(--bpjs-radius-round);
925
+ border: 2px solid;
926
+ border-right-color: #0000;
927
+ flex: none;
928
+ animation: .8s linear infinite bpjs-spin;
929
+ }
930
+
931
+ .bpjs-button--icon-only[aria-busy="true"] > :not(.bpjs-icon) {
932
+ display: none;
933
+ }
934
+
935
+ @media (prefers-reduced-motion: reduce) {
936
+ .bpjs-button {
937
+ transition: none;
938
+ }
939
+
940
+ .bpjs-button[aria-busy="true"]:before {
941
+ animation-duration: 2.4s;
942
+ }
943
+ }
944
+
945
+ .bpjs-modal {
946
+ --bpjs-modal-width: 480px;
947
+ --bpjs-modal-gutter: var(--bpjs-spacing-6xl);
948
+ --bpjs-modal-backdrop: #000000a6;
949
+ box-sizing: border-box;
950
+ width: min(var(--bpjs-modal-width), calc(100vw - 2 * var(--bpjs-spacing-lg)));
951
+ max-width: none;
952
+ max-height: calc(100dvh - 2 * var(--bpjs-modal-gutter));
953
+ border-radius: var(--bpjs-radius-lg);
954
+ background-color: var(--bpjs-background-high);
955
+ box-shadow: var(--bpjs-shadow-md);
956
+ color: var(--bpjs-text-high);
957
+ font: var(--bpjs-text-sm-regular);
958
+ border: 0;
959
+ margin: auto;
960
+ padding: 0;
961
+ overflow: hidden;
962
+ }
963
+
964
+ .bpjs-modal[open] {
965
+ flex-direction: column;
966
+ animation: .16s ease-out bpjs-modal-in;
967
+ display: flex;
968
+ }
969
+
970
+ .bpjs-modal::backdrop {
971
+ background-color: var(--bpjs-modal-backdrop);
972
+ }
973
+
974
+ .bpjs-modal[open]::backdrop {
975
+ animation: .16s ease-out bpjs-modal-backdrop-in;
976
+ }
977
+
978
+ .bpjs-modal--sm {
979
+ --bpjs-modal-width: 480px;
980
+ }
981
+
982
+ .bpjs-modal--md {
983
+ --bpjs-modal-width: 600px;
984
+ }
985
+
986
+ .bpjs-modal--lg {
987
+ --bpjs-modal-width: 720px;
988
+ }
989
+
990
+ @media (width <= 480px) {
991
+ .bpjs-modal {
992
+ --bpjs-modal-gutter: var(--bpjs-spacing-lg);
993
+ }
994
+ }
995
+
996
+ .bpjs-modal__header {
997
+ align-items: flex-start;
998
+ gap: var(--bpjs-spacing-lg);
999
+ padding: var(--bpjs-spacing-20);
1000
+ flex: none;
1001
+ display: flex;
1002
+ }
1003
+
1004
+ .bpjs-modal__heading {
1005
+ gap: var(--bpjs-spacing-lg);
1006
+ flex-direction: column;
1007
+ flex: auto;
1008
+ min-width: 0;
1009
+ display: flex;
1010
+ }
1011
+
1012
+ .bpjs-modal__icon {
1013
+ box-sizing: border-box;
1014
+ border: 1px solid var(--bpjs-border-very-low);
1015
+ border-radius: var(--bpjs-radius-sm);
1016
+ background-color: var(--bpjs-background-high);
1017
+ width: 40px;
1018
+ height: 40px;
1019
+ color: var(--bpjs-text-high);
1020
+ --bpjs-icon-size: var(--bpjs-icon-size-lg);
1021
+ justify-content: center;
1022
+ align-items: center;
1023
+ display: inline-flex;
1024
+ }
1025
+
1026
+ .bpjs-modal__titles {
1027
+ gap: var(--bpjs-spacing-2xs);
1028
+ flex-direction: column;
1029
+ display: flex;
1030
+ }
1031
+
1032
+ .bpjs-modal__title {
1033
+ color: var(--bpjs-text-high);
1034
+ font: var(--bpjs-text-md-semibold);
1035
+ margin: 0;
1036
+ }
1037
+
1038
+ .bpjs-modal__description {
1039
+ color: var(--bpjs-text-medium);
1040
+ font: var(--bpjs-text-sm-regular);
1041
+ margin: 0;
1042
+ }
1043
+
1044
+ .bpjs-modal__close {
1045
+ box-sizing: border-box;
1046
+ border-radius: var(--bpjs-brand-radius-components);
1047
+ width: 36px;
1048
+ height: 36px;
1049
+ color: var(--bpjs-text-medium);
1050
+ cursor: pointer;
1051
+ outline-offset: 2px;
1052
+ --bpjs-icon-size: var(--bpjs-icon-size-md);
1053
+ background-color: #0000;
1054
+ border: 0;
1055
+ outline: 2px solid #0000;
1056
+ flex: none;
1057
+ justify-content: center;
1058
+ align-items: center;
1059
+ margin: 0;
1060
+ padding: 0;
1061
+ transition: background-color .15s;
1062
+ display: inline-flex;
1063
+ }
1064
+
1065
+ .bpjs-modal__close:hover {
1066
+ background-color: var(--bpjs-background-medium);
1067
+ color: var(--bpjs-text-high);
1068
+ }
1069
+
1070
+ .bpjs-modal__close:focus-visible {
1071
+ box-shadow: var(--bpjs-shadow-focus);
1072
+ }
1073
+
1074
+ .bpjs-modal__body {
1075
+ min-height: 0;
1076
+ padding: 0 var(--bpjs-spacing-20) var(--bpjs-spacing-20);
1077
+ overscroll-behavior: contain;
1078
+ flex: auto;
1079
+ overflow-y: auto;
1080
+ }
1081
+
1082
+ .bpjs-modal__footer {
1083
+ box-sizing: border-box;
1084
+ gap: var(--bpjs-spacing-md);
1085
+ padding: var(--bpjs-spacing-20);
1086
+ box-shadow: inset 0 1px 0 var(--bpjs-border-very-low);
1087
+ flex: none;
1088
+ display: flex;
1089
+ }
1090
+
1091
+ .bpjs-modal__footer > * {
1092
+ flex: 1 1 0;
1093
+ min-width: 0;
1094
+ }
1095
+
1096
+ .bpjs-modal__footer--end {
1097
+ justify-content: flex-end;
1098
+ }
1099
+
1100
+ .bpjs-modal__footer--end > * {
1101
+ flex: none;
1102
+ }
1103
+
1104
+ @keyframes bpjs-modal-in {
1105
+ from {
1106
+ opacity: 0;
1107
+ transform: translateY(8px) scale(.98);
1108
+ }
1109
+ }
1110
+
1111
+ @keyframes bpjs-modal-backdrop-in {
1112
+ from {
1113
+ opacity: 0;
1114
+ }
1115
+ }
1116
+
1117
+ @media (prefers-reduced-motion: reduce) {
1118
+ .bpjs-modal[open], .bpjs-modal[open]::backdrop {
1119
+ animation: none;
1120
+ }
1121
+ }
1122
+
1123
+ .bpjs-heading {
1124
+ --bpjs-type-size: var(--bpjs-display-md-font-size);
1125
+ --bpjs-type-leading: var(--bpjs-display-md-line-height);
1126
+ }
1127
+
1128
+ .bpjs-subtitle {
1129
+ --bpjs-type-size: var(--bpjs-text-lg-font-size);
1130
+ --bpjs-type-leading: var(--bpjs-text-lg-line-height);
1131
+ }
1132
+
1133
+ .bpjs-body {
1134
+ --bpjs-type-size: var(--bpjs-text-sm-font-size);
1135
+ --bpjs-type-leading: var(--bpjs-text-sm-line-height);
1136
+ }
1137
+
1138
+ .bpjs-note {
1139
+ --bpjs-type-size: var(--bpjs-text-xs-font-size);
1140
+ --bpjs-type-leading: var(--bpjs-text-xs-line-height);
1141
+ }
1142
+
1143
+ .bpjs-heading, .bpjs-subtitle, .bpjs-body, .bpjs-note {
1144
+ --bpjs-type-weight: var(--bpjs-font-weight-regular);
1145
+ color: var(--bpjs-text-high);
1146
+ font-family: var(--bpjs-font-family);
1147
+ font-size: var(--bpjs-type-size);
1148
+ font-weight: var(--bpjs-type-weight);
1149
+ line-height: var(--bpjs-type-leading);
1150
+ margin: 0;
1151
+ }
1152
+
1153
+ .bpjs-heading--2xl {
1154
+ --bpjs-type-size: var(--bpjs-display-2xl-font-size);
1155
+ --bpjs-type-leading: var(--bpjs-display-2xl-line-height);
1156
+ }
1157
+
1158
+ .bpjs-heading--xl {
1159
+ --bpjs-type-size: var(--bpjs-display-xl-font-size);
1160
+ --bpjs-type-leading: var(--bpjs-display-xl-line-height);
1161
+ }
1162
+
1163
+ .bpjs-heading--lg {
1164
+ --bpjs-type-size: var(--bpjs-display-lg-font-size);
1165
+ --bpjs-type-leading: var(--bpjs-display-lg-line-height);
1166
+ }
1167
+
1168
+ .bpjs-heading--md {
1169
+ --bpjs-type-size: var(--bpjs-display-md-font-size);
1170
+ --bpjs-type-leading: var(--bpjs-display-md-line-height);
1171
+ }
1172
+
1173
+ .bpjs-heading--sm {
1174
+ --bpjs-type-size: var(--bpjs-display-sm-font-size);
1175
+ --bpjs-type-leading: var(--bpjs-display-sm-line-height);
1176
+ }
1177
+
1178
+ .bpjs-heading--xs {
1179
+ --bpjs-type-size: var(--bpjs-display-xs-font-size);
1180
+ --bpjs-type-leading: var(--bpjs-display-xs-line-height);
1181
+ }
1182
+
1183
+ .bpjs-subtitle--lg {
1184
+ --bpjs-type-size: var(--bpjs-text-xl-font-size);
1185
+ --bpjs-type-leading: var(--bpjs-text-xl-line-height);
1186
+ }
1187
+
1188
+ .bpjs-body--lg {
1189
+ --bpjs-type-size: var(--bpjs-text-md-font-size);
1190
+ --bpjs-type-leading: var(--bpjs-text-md-line-height);
1191
+ }
1192
+
1193
+ .bpjs-heading--medium, .bpjs-subtitle--medium, .bpjs-body--medium, .bpjs-note--medium {
1194
+ --bpjs-type-weight: var(--bpjs-font-weight-medium);
1195
+ }
1196
+
1197
+ .bpjs-heading--semibold, .bpjs-subtitle--semibold, .bpjs-body--semibold, .bpjs-note--semibold {
1198
+ --bpjs-type-weight: var(--bpjs-font-weight-semi-bold);
1199
+ }
1200
+
1201
+ .bpjs-heading--bold, .bpjs-subtitle--bold, .bpjs-body--bold, .bpjs-note--bold {
1202
+ --bpjs-type-weight: var(--bpjs-font-weight-bold);
1203
+ }
1204
+
1205
+ .bpjs-heading--extra-bold, .bpjs-subtitle--extra-bold, .bpjs-body--extra-bold, .bpjs-note--extra-bold {
1206
+ --bpjs-type-weight: var(--bpjs-font-weight-extra-bold);
1207
+ }
1208
+
1209
+ .bpjs-subtitle--level-medium, .bpjs-body--level-medium, .bpjs-note--level-medium {
1210
+ color: var(--bpjs-text-medium);
1211
+ }
1212
+
1213
+ .bpjs-subtitle--level-low, .bpjs-body--level-low, .bpjs-note--level-low {
1214
+ color: var(--bpjs-text-low);
1215
+ }
1216
+
1217
+ .bpjs-subtitle--level-very-low, .bpjs-body--level-very-low, .bpjs-note--level-very-low {
1218
+ color: var(--bpjs-text-very-low);
1219
+ }
1220
+
1221
+ .bpjs-control-field:focus-within {
1222
+ border-color: var(--bpjs-border-brand-primary);
1223
+ box-shadow: var(--bpjs-shadow-focus);
1224
+ }
1225
+
1226
+ .bpjs-control-field:has(:is(input, textarea, select)[aria-invalid="true"]) {
1227
+ border-color: var(--bpjs-border-danger-hard);
1228
+ }
1229
+
1230
+ .bpjs-control-field:focus-within:has(:is(input, textarea, select)[aria-invalid="true"]) {
1231
+ box-shadow: var(--bpjs-shadow-focus-danger);
1232
+ }
1233
+
1234
+ .bpjs-control-field:has(:is(input, textarea, select):disabled) {
1235
+ background-color: var(--bpjs-background-medium);
1236
+ color: var(--bpjs-text-low);
1237
+ }
1238
+
1239
+ .bpjs-control-field:has(:is(input, textarea, select):disabled) :is(input, textarea, select) {
1240
+ cursor: not-allowed;
1241
+ color: var(--bpjs-text-low);
1242
+ }
1243
+
1244
+ .bpjs-control-field:has(:is(input, textarea):disabled) :is(input, textarea)::placeholder {
1245
+ color: var(--bpjs-text-very-low);
1246
+ }
1247
+
1248
+ @media (forced-colors: active) {
1249
+ .bpjs-control-field:focus-within {
1250
+ outline-offset: 2px;
1251
+ outline: 2px solid highlight;
1252
+ }
1253
+ }
1254
+
1255
+ .bpjs-text-field {
1256
+ --bpjs-icon-size: var(--bpjs-icon-size-md);
1257
+ box-sizing: border-box;
1258
+ border: 1px solid var(--bpjs-border-very-low);
1259
+ border-radius: var(--bpjs-radius-sm);
1260
+ background-color: var(--bpjs-background-high);
1261
+ width: 100%;
1262
+ height: 40px;
1263
+ color: var(--bpjs-text-high);
1264
+ font: var(--bpjs-text-sm-regular);
1265
+ align-items: stretch;
1266
+ transition: border-color .15s, box-shadow .15s;
1267
+ display: flex;
1268
+ overflow: hidden;
1269
+ }
1270
+
1271
+ .bpjs-text-field__control {
1272
+ box-sizing: border-box;
1273
+ min-width: 0;
1274
+ color: inherit;
1275
+ font: inherit;
1276
+ background: none;
1277
+ border: 0;
1278
+ outline: none;
1279
+ flex: auto;
1280
+ margin: 0;
1281
+ padding: 0;
1282
+ }
1283
+
1284
+ .bpjs-text-field__control:first-child {
1285
+ padding-inline-start: var(--bpjs-spacing-md);
1286
+ }
1287
+
1288
+ .bpjs-text-field__control:last-child {
1289
+ padding-inline-end: var(--bpjs-spacing-md);
1290
+ }
1291
+
1292
+ .bpjs-text-field__control::placeholder {
1293
+ color: var(--bpjs-text-medium);
1294
+ opacity: 1;
1295
+ }
1296
+
1297
+ .bpjs-text-field__icon {
1298
+ margin-inline: var(--bpjs-spacing-md);
1299
+ flex: none;
1300
+ align-self: center;
1301
+ }
1302
+
1303
+ .bpjs-text-field__addon {
1304
+ box-sizing: border-box;
1305
+ padding: var(--bpjs-spacing-sm) var(--bpjs-spacing-md);
1306
+ color: var(--bpjs-text-high);
1307
+ font: var(--bpjs-text-sm-medium);
1308
+ white-space: nowrap;
1309
+ flex: none;
1310
+ align-items: center;
1311
+ display: flex;
1312
+ }
1313
+
1314
+ .bpjs-text-field__addon--prefix {
1315
+ border-right: 1px solid var(--bpjs-border-very-low);
1316
+ }
1317
+
1318
+ .bpjs-text-field__addon--suffix {
1319
+ border-left: 1px solid var(--bpjs-border-very-low);
1320
+ }
1321
+
1322
+ .bpjs-textarea {
1323
+ box-sizing: border-box;
1324
+ border: 1px solid var(--bpjs-border-very-low);
1325
+ border-radius: var(--bpjs-radius-sm);
1326
+ background-color: var(--bpjs-background-high);
1327
+ width: 100%;
1328
+ height: 100px;
1329
+ color: var(--bpjs-text-high);
1330
+ font: var(--bpjs-text-sm-regular);
1331
+ transition: border-color .15s, box-shadow .15s;
1332
+ display: flex;
1333
+ }
1334
+
1335
+ .bpjs-textarea__control {
1336
+ box-sizing: border-box;
1337
+ border-radius: inherit;
1338
+ min-width: 0;
1339
+ height: 100%;
1340
+ min-height: 0;
1341
+ color: inherit;
1342
+ font: inherit;
1343
+ resize: vertical;
1344
+ background: none;
1345
+ border: 0;
1346
+ outline: none;
1347
+ flex: auto;
1348
+ margin: 0;
1349
+ padding: 10px 12px 12px 10px;
1350
+ }
1351
+
1352
+ .bpjs-textarea__control::placeholder {
1353
+ color: var(--bpjs-text-medium);
1354
+ opacity: 1;
1355
+ }
1356
+
1357
+ .bpjs-textarea__control:disabled {
1358
+ cursor: not-allowed;
1359
+ resize: none;
1360
+ }
1361
+
1362
+ .bpjs-checkbox {
1363
+ --bpjs-checkbox-size: 16px;
1364
+ --bpjs-checkbox-radius: var(--bpjs-radius-xs);
1365
+ --bpjs-checkbox-mark: 12px;
1366
+ color: var(--bpjs-text-high);
1367
+ font: var(--bpjs-text-sm-regular);
1368
+ cursor: pointer;
1369
+ -webkit-user-select: none;
1370
+ user-select: none;
1371
+ align-items: center;
1372
+ gap: 8px;
1373
+ display: inline-flex;
1374
+ position: relative;
1375
+ }
1376
+
1377
+ .bpjs-checkbox--lg {
1378
+ --bpjs-checkbox-size: 20px;
1379
+ --bpjs-checkbox-radius: 6px;
1380
+ --bpjs-checkbox-mark: 14px;
1381
+ font-size: 16px;
1382
+ }
1383
+
1384
+ .bpjs-checkbox__control {
1385
+ clip-path: inset(50%);
1386
+ white-space: nowrap;
1387
+ opacity: 0;
1388
+ border: 0;
1389
+ width: 1px;
1390
+ height: 1px;
1391
+ margin: -1px;
1392
+ padding: 0;
1393
+ position: absolute;
1394
+ overflow: hidden;
1395
+ }
1396
+
1397
+ .bpjs-checkbox__box {
1398
+ box-sizing: border-box;
1399
+ width: var(--bpjs-checkbox-size);
1400
+ height: var(--bpjs-checkbox-size);
1401
+ border: 1px solid var(--bpjs-border-very-low);
1402
+ border-radius: var(--bpjs-checkbox-radius);
1403
+ background-color: var(--bpjs-background-high);
1404
+ flex: none;
1405
+ justify-content: center;
1406
+ align-items: center;
1407
+ transition: background-color .15s, border-color .15s, box-shadow .15s;
1408
+ display: inline-flex;
1409
+ }
1410
+
1411
+ .bpjs-checkbox__mark {
1412
+ --bpjs-icon-size: var(--bpjs-checkbox-mark);
1413
+ color: var(--bpjs-text-white);
1414
+ display: none;
1415
+ }
1416
+
1417
+ .bpjs-checkbox__control:checked:not(:indeterminate) + .bpjs-checkbox__box .bpjs-checkbox__mark--check, .bpjs-checkbox__control:indeterminate + .bpjs-checkbox__box .bpjs-checkbox__mark--minus {
1418
+ display: inline-block;
1419
+ }
1420
+
1421
+ .bpjs-checkbox__control:checked + .bpjs-checkbox__box, .bpjs-checkbox__control:indeterminate + .bpjs-checkbox__box {
1422
+ border-color: var(--bpjs-border-brand-primary);
1423
+ background-color: var(--bpjs-background-brand-primary);
1424
+ }
1425
+
1426
+ .bpjs-checkbox__control:focus-visible + .bpjs-checkbox__box {
1427
+ box-shadow: var(--bpjs-shadow-focus);
1428
+ }
1429
+
1430
+ .bpjs-checkbox:has(.bpjs-checkbox__control:disabled) {
1431
+ cursor: not-allowed;
1432
+ color: var(--bpjs-text-low);
1433
+ }
1434
+
1435
+ .bpjs-checkbox__control:disabled + .bpjs-checkbox__box {
1436
+ border-color: var(--bpjs-border-very-low);
1437
+ background-color: var(--bpjs-background-medium);
1438
+ }
1439
+
1440
+ .bpjs-checkbox__control:disabled:checked + .bpjs-checkbox__box, .bpjs-checkbox__control:disabled:indeterminate + .bpjs-checkbox__box {
1441
+ border-color: var(--bpjs-border-brand-primary);
1442
+ background-color: var(--bpjs-background-brand-primary-soft);
1443
+ }
1444
+
1445
+ @media (forced-colors: active) {
1446
+ .bpjs-checkbox__control:focus-visible + .bpjs-checkbox__box {
1447
+ outline-offset: 2px;
1448
+ outline: 2px solid highlight;
1449
+ }
1450
+ }
1451
+
1452
+ .bpjs-radio {
1453
+ --bpjs-radio-size: 16px;
1454
+ --bpjs-radio-dot: 6px;
1455
+ color: var(--bpjs-text-high);
1456
+ font: var(--bpjs-text-sm-regular);
1457
+ cursor: pointer;
1458
+ -webkit-user-select: none;
1459
+ user-select: none;
1460
+ align-items: center;
1461
+ gap: 8px;
1462
+ display: inline-flex;
1463
+ position: relative;
1464
+ }
1465
+
1466
+ .bpjs-radio--lg {
1467
+ --bpjs-radio-size: 20px;
1468
+ --bpjs-radio-dot: 8px;
1469
+ font-size: 16px;
1470
+ }
1471
+
1472
+ .bpjs-radio__control {
1473
+ clip-path: inset(50%);
1474
+ white-space: nowrap;
1475
+ opacity: 0;
1476
+ border: 0;
1477
+ width: 1px;
1478
+ height: 1px;
1479
+ margin: -1px;
1480
+ padding: 0;
1481
+ position: absolute;
1482
+ overflow: hidden;
1483
+ }
1484
+
1485
+ .bpjs-radio__dot {
1486
+ box-sizing: border-box;
1487
+ width: var(--bpjs-radio-size);
1488
+ height: var(--bpjs-radio-size);
1489
+ border: 1px solid var(--bpjs-border-very-low);
1490
+ border-radius: var(--bpjs-radius-round);
1491
+ background-color: var(--bpjs-background-high);
1492
+ flex: none;
1493
+ justify-content: center;
1494
+ align-items: center;
1495
+ transition: background-color .15s, border-color .15s, box-shadow .15s;
1496
+ display: inline-flex;
1497
+ }
1498
+
1499
+ .bpjs-radio__dot:after {
1500
+ content: "";
1501
+ width: var(--bpjs-radio-dot);
1502
+ height: var(--bpjs-radio-dot);
1503
+ border-radius: var(--bpjs-radius-round);
1504
+ background-color: var(--bpjs-background-white-static);
1505
+ transition: transform .15s;
1506
+ transform: scale(0);
1507
+ }
1508
+
1509
+ .bpjs-radio__control:checked + .bpjs-radio__dot {
1510
+ border-color: var(--bpjs-border-brand-primary);
1511
+ background-color: var(--bpjs-background-brand-primary);
1512
+ }
1513
+
1514
+ .bpjs-radio__control:checked + .bpjs-radio__dot:after {
1515
+ transform: scale(1);
1516
+ }
1517
+
1518
+ .bpjs-radio__control:focus-visible + .bpjs-radio__dot {
1519
+ box-shadow: var(--bpjs-shadow-focus);
1520
+ border-color: var(--bpjs-border-brand-primary);
1521
+ }
1522
+
1523
+ .bpjs-radio:has(.bpjs-radio__control:disabled) {
1524
+ cursor: not-allowed;
1525
+ color: var(--bpjs-text-low);
1526
+ }
1527
+
1528
+ .bpjs-radio__control:disabled + .bpjs-radio__dot {
1529
+ border-color: var(--bpjs-border-very-low);
1530
+ background-color: var(--bpjs-background-medium);
1531
+ }
1532
+
1533
+ .bpjs-radio__control:disabled:checked + .bpjs-radio__dot {
1534
+ border-color: var(--bpjs-border-brand-primary);
1535
+ background-color: var(--bpjs-background-brand-primary-soft);
1536
+ }
1537
+
1538
+ @media (forced-colors: active) {
1539
+ .bpjs-radio__control:focus-visible + .bpjs-radio__dot {
1540
+ outline-offset: 2px;
1541
+ outline: 2px solid highlight;
1542
+ }
1543
+ }
1544
+
1545
+ .bpjs-radio-card {
1546
+ --bpjs-radio-size: 16px;
1547
+ --bpjs-radio-dot: 6px;
1548
+ box-sizing: border-box;
1549
+ border: 1px solid var(--bpjs-border-very-low);
1550
+ background-color: var(--bpjs-background-medium);
1551
+ width: 100%;
1552
+ color: var(--bpjs-text-high);
1553
+ cursor: pointer;
1554
+ -webkit-user-select: none;
1555
+ user-select: none;
1556
+ border-radius: 10px;
1557
+ align-items: center;
1558
+ gap: 16px;
1559
+ padding: 16px;
1560
+ transition: border-color .15s, background-color .15s, box-shadow .15s;
1561
+ display: flex;
1562
+ position: relative;
1563
+ }
1564
+
1565
+ .bpjs-radio-card__control {
1566
+ clip-path: inset(50%);
1567
+ white-space: nowrap;
1568
+ opacity: 0;
1569
+ border: 0;
1570
+ width: 1px;
1571
+ height: 1px;
1572
+ margin: -1px;
1573
+ padding: 0;
1574
+ position: absolute;
1575
+ overflow: hidden;
1576
+ }
1577
+
1578
+ .bpjs-radio-card__icon {
1579
+ --bpjs-icon-size: var(--bpjs-icon-size-md);
1580
+ color: var(--bpjs-text-high);
1581
+ flex: none;
1582
+ justify-content: center;
1583
+ align-items: center;
1584
+ display: inline-flex;
1585
+ }
1586
+
1587
+ .bpjs-radio-card__content {
1588
+ flex-direction: column;
1589
+ flex: auto;
1590
+ gap: 4px;
1591
+ min-width: 0;
1592
+ display: flex;
1593
+ }
1594
+
1595
+ .bpjs-radio-card__value {
1596
+ color: var(--bpjs-text-high);
1597
+ font: var(--bpjs-text-sm-medium);
1598
+ }
1599
+
1600
+ .bpjs-radio-card__description {
1601
+ color: var(--bpjs-text-high);
1602
+ font: var(--bpjs-text-xs-regular);
1603
+ }
1604
+
1605
+ .bpjs-radio-card__icon {
1606
+ order: 1;
1607
+ }
1608
+
1609
+ .bpjs-radio-card__content {
1610
+ order: 2;
1611
+ }
1612
+
1613
+ .bpjs-radio-card .bpjs-radio__dot {
1614
+ flex: none;
1615
+ order: 3;
1616
+ }
1617
+
1618
+ .bpjs-radio-card:has(.bpjs-radio-card__control:checked) {
1619
+ border-color: var(--bpjs-border-brand-primary);
1620
+ background-color: var(--bpjs-background-high);
1621
+ }
1622
+
1623
+ .bpjs-radio-card:has(.bpjs-radio-card__control:checked) .bpjs-radio-card__value, .bpjs-radio-card:has(.bpjs-radio-card__control:checked) .bpjs-radio-card__icon {
1624
+ color: var(--bpjs-text-brand);
1625
+ }
1626
+
1627
+ .bpjs-radio-card:has(.bpjs-radio-card__control:focus-visible) {
1628
+ box-shadow: var(--bpjs-shadow-focus);
1629
+ }
1630
+
1631
+ .bpjs-radio-card:has(.bpjs-radio-card__control:disabled) {
1632
+ cursor: not-allowed;
1633
+ background-color: var(--bpjs-background-medium);
1634
+ color: var(--bpjs-text-low);
1635
+ }
1636
+
1637
+ .bpjs-radio-card:has(.bpjs-radio-card__control:disabled) .bpjs-radio-card__value, .bpjs-radio-card:has(.bpjs-radio-card__control:disabled) .bpjs-radio-card__description, .bpjs-radio-card:has(.bpjs-radio-card__control:disabled) .bpjs-radio-card__icon {
1638
+ color: var(--bpjs-text-low);
1639
+ }
1640
+
1641
+ .bpjs-switch-field {
1642
+ --bpjs-switch-width: 36px;
1643
+ --bpjs-switch-height: 20px;
1644
+ --bpjs-switch-thumb: 16px;
1645
+ color: var(--bpjs-text-high);
1646
+ font: var(--bpjs-text-sm-medium);
1647
+ cursor: pointer;
1648
+ -webkit-user-select: none;
1649
+ user-select: none;
1650
+ align-items: center;
1651
+ gap: 8px;
1652
+ display: inline-flex;
1653
+ position: relative;
1654
+ }
1655
+
1656
+ .bpjs-switch-field--lg {
1657
+ --bpjs-switch-width: 44px;
1658
+ --bpjs-switch-height: 24px;
1659
+ --bpjs-switch-thumb: 20px;
1660
+ }
1661
+
1662
+ .bpjs-switch {
1663
+ clip-path: inset(50%);
1664
+ white-space: nowrap;
1665
+ opacity: 0;
1666
+ border: 0;
1667
+ width: 1px;
1668
+ height: 1px;
1669
+ margin: -1px;
1670
+ padding: 0;
1671
+ position: absolute;
1672
+ overflow: hidden;
1673
+ }
1674
+
1675
+ .bpjs-switch__track {
1676
+ box-sizing: border-box;
1677
+ width: var(--bpjs-switch-width);
1678
+ height: var(--bpjs-switch-height);
1679
+ border-radius: var(--bpjs-radius-round);
1680
+ background-color: var(--bpjs-background-low);
1681
+ flex: none;
1682
+ transition: background-color .15s, box-shadow .15s;
1683
+ display: inline-block;
1684
+ position: relative;
1685
+ }
1686
+
1687
+ .bpjs-switch__thumb {
1688
+ width: var(--bpjs-switch-thumb);
1689
+ height: var(--bpjs-switch-thumb);
1690
+ border-radius: var(--bpjs-radius-round);
1691
+ background-color: var(--bpjs-background-white-static);
1692
+ transition: transform .15s;
1693
+ position: absolute;
1694
+ top: 2px;
1695
+ left: 2px;
1696
+ }
1697
+
1698
+ .bpjs-switch:checked + .bpjs-switch__track {
1699
+ background-color: var(--bpjs-background-brand-primary);
1700
+ }
1701
+
1702
+ .bpjs-switch:checked + .bpjs-switch__track .bpjs-switch__thumb {
1703
+ transform: translateX(calc(var(--bpjs-switch-width) - var(--bpjs-switch-thumb) - 4px));
1704
+ }
1705
+
1706
+ .bpjs-switch:focus-visible + .bpjs-switch__track {
1707
+ box-shadow: var(--bpjs-shadow-focus);
1708
+ }
1709
+
1710
+ .bpjs-switch-field:has(.bpjs-switch:disabled) {
1711
+ cursor: not-allowed;
1712
+ color: var(--bpjs-text-low);
1713
+ }
1714
+
1715
+ .bpjs-switch:disabled + .bpjs-switch__track {
1716
+ background-color: var(--bpjs-background-medium);
1717
+ }
1718
+
1719
+ .bpjs-switch:disabled:checked + .bpjs-switch__track {
1720
+ background-color: var(--bpjs-background-brand-primary-soft);
1721
+ opacity: 1;
1722
+ }
1723
+
1724
+ @media (prefers-reduced-motion: reduce) {
1725
+ .bpjs-switch__thumb, .bpjs-switch__track {
1726
+ transition: none;
1727
+ }
1728
+ }
1729
+
1730
+ @media (forced-colors: active) {
1731
+ .bpjs-switch:focus-visible + .bpjs-switch__track {
1732
+ outline-offset: 2px;
1733
+ outline: 2px solid highlight;
1734
+ }
1735
+ }
1736
+
1737
+ .bpjs-pill {
1738
+ box-sizing: border-box;
1739
+ border: 1px solid var(--bpjs-border-very-low);
1740
+ border-radius: var(--bpjs-radius-round);
1741
+ background-color: var(--bpjs-background-medium);
1742
+ height: 32px;
1743
+ color: var(--bpjs-text-medium);
1744
+ font: var(--bpjs-text-xs-medium);
1745
+ white-space: nowrap;
1746
+ cursor: pointer;
1747
+ -webkit-user-select: none;
1748
+ user-select: none;
1749
+ align-items: center;
1750
+ gap: 4px;
1751
+ padding: 6px 8px 6px 6px;
1752
+ transition: border-color .15s, background-color .15s, box-shadow .15s;
1753
+ display: inline-flex;
1754
+ position: relative;
1755
+ }
1756
+
1757
+ .bpjs-pill__icon {
1758
+ --bpjs-icon-size: var(--bpjs-icon-size-sm);
1759
+ color: var(--bpjs-text-high);
1760
+ flex: none;
1761
+ }
1762
+
1763
+ .bpjs-pill__label {
1764
+ line-height: 18px;
1765
+ }
1766
+
1767
+ .bpjs-pill--active {
1768
+ border-color: var(--bpjs-border-brand-primary);
1769
+ background-color: var(--bpjs-background-high);
1770
+ color: var(--bpjs-text-brand);
1771
+ font: var(--bpjs-text-xs-semibold);
1772
+ }
1773
+
1774
+ .bpjs-pill--active .bpjs-pill__icon {
1775
+ color: var(--bpjs-text-brand);
1776
+ }
1777
+
1778
+ .bpjs-pill__badge {
1779
+ box-sizing: border-box;
1780
+ border: 1px solid var(--bpjs-border-info-soft);
1781
+ border-radius: var(--bpjs-radius-round);
1782
+ background-color: var(--bpjs-background-brand-primary);
1783
+ height: 20px;
1784
+ color: var(--bpjs-text-white);
1785
+ font: var(--bpjs-text-xs-semibold);
1786
+ align-items: center;
1787
+ gap: 2px;
1788
+ padding: 2px 6px 2px 4px;
1789
+ display: inline-flex;
1790
+ }
1791
+
1792
+ .bpjs-pill__dot {
1793
+ border-radius: var(--bpjs-radius-round);
1794
+ background-color: var(--bpjs-background-high);
1795
+ width: 6px;
1796
+ height: 6px;
1797
+ }
1798
+
1799
+ .bpjs-pill--active .bpjs-pill__badge {
1800
+ background-color: var(--bpjs-background-brand-primary);
1801
+ }
1802
+
1803
+ .bpjs-pill--radio {
1804
+ --bpjs-radio-size: 16px;
1805
+ --bpjs-radio-dot: 6px;
1806
+ padding: 6px 12px 6px 6px;
1807
+ }
1808
+
1809
+ .bpjs-pill--radio .bpjs-radio__control {
1810
+ clip-path: inset(50%);
1811
+ white-space: nowrap;
1812
+ opacity: 0;
1813
+ border: 0;
1814
+ width: 1px;
1815
+ height: 1px;
1816
+ margin: -1px;
1817
+ padding: 0;
1818
+ position: absolute;
1819
+ overflow: hidden;
1820
+ }
1821
+
1822
+ .bpjs-pill--radio .bpjs-radio__dot {
1823
+ order: 3;
1824
+ }
1825
+
1826
+ .bpjs-pill--radio .bpjs-pill__icon {
1827
+ order: 1;
1828
+ }
1829
+
1830
+ .bpjs-pill--radio .bpjs-pill__label {
1831
+ order: 2;
1832
+ }
1833
+
1834
+ .bpjs-pill--radio .bpjs-pill__badge {
1835
+ order: 4;
1836
+ }
1837
+
1838
+ .bpjs-pill--radio:has(.bpjs-radio__control:checked) {
1839
+ border-color: var(--bpjs-border-brand-primary);
1840
+ background-color: var(--bpjs-background-high);
1841
+ color: var(--bpjs-text-brand);
1842
+ font: var(--bpjs-text-xs-semibold);
1843
+ }
1844
+
1845
+ .bpjs-pill--radio:has(.bpjs-radio__control:focus-visible) {
1846
+ box-shadow: var(--bpjs-shadow-focus);
1847
+ }
1848
+
1849
+ .bpjs-pill--radio:has(.bpjs-radio__control:disabled) {
1850
+ cursor: not-allowed;
1851
+ color: var(--bpjs-text-low);
1852
+ }
1853
+
1854
+ .bpjs-pill:disabled, .bpjs-pill[aria-disabled="true"] {
1855
+ cursor: not-allowed;
1856
+ color: var(--bpjs-text-low);
1857
+ background-color: var(--bpjs-background-medium);
1858
+ }
1859
+
1860
+ .bpjs-pill:focus-visible {
1861
+ box-shadow: var(--bpjs-shadow-focus);
1862
+ outline: none;
1863
+ }
1864
+
1865
+ @media (forced-colors: active) {
1866
+ .bpjs-pill:focus-visible {
1867
+ outline-offset: 2px;
1868
+ outline: 2px solid highlight;
1869
+ }
1870
+ }
1871
+
1872
+ .bpjs-form-item {
1873
+ gap: var(--bpjs-spacing-6);
1874
+ min-width: 0;
1875
+ color: var(--bpjs-text-high);
1876
+ font: var(--bpjs-text-sm-regular);
1877
+ flex-direction: column;
1878
+ display: flex;
1879
+ }
1880
+
1881
+ .bpjs-form-item__label {
1882
+ color: var(--bpjs-text-high);
1883
+ font: var(--bpjs-text-sm-medium);
1884
+ margin: 0;
1885
+ }
1886
+
1887
+ .bpjs-form-item__caption {
1888
+ --bpjs-icon-size: var(--bpjs-icon-size-sm);
1889
+ align-items: center;
1890
+ gap: var(--bpjs-spacing-xs);
1891
+ color: var(--bpjs-text-medium);
1892
+ font: var(--bpjs-text-sm-regular);
1893
+ margin: 0;
1894
+ display: flex;
1895
+ }
1896
+
1897
+ .bpjs-form-item:has(:is(input, textarea, select):disabled) .bpjs-form-item__label, .bpjs-form-item:has(:is(input, textarea, select):disabled) .bpjs-form-item__caption {
1898
+ color: var(--bpjs-text-low);
1899
+ }
1900
+
1901
+ .bpjs-form-item:has([aria-invalid="true"]) .bpjs-form-item__caption {
1902
+ color: var(--bpjs-text-danger);
1903
+ }
1904
+
1905
+ .bpjs-select {
1906
+ --bpjs-icon-size: var(--bpjs-icon-size-md);
1907
+ box-sizing: border-box;
1908
+ border: 1px solid var(--bpjs-border-very-low);
1909
+ border-radius: var(--bpjs-radius-sm);
1910
+ background-color: var(--bpjs-background-high);
1911
+ width: 100%;
1912
+ height: 40px;
1913
+ color: var(--bpjs-text-high);
1914
+ font: var(--bpjs-text-sm-regular);
1915
+ align-items: stretch;
1916
+ transition: border-color .15s, box-shadow .15s;
1917
+ display: flex;
1918
+ position: relative;
1919
+ overflow: hidden;
1920
+ }
1921
+
1922
+ .bpjs-select__control {
1923
+ box-sizing: border-box;
1924
+ min-width: 0;
1925
+ height: 100%;
1926
+ padding: 0 calc(var(--bpjs-spacing-md) + var(--bpjs-icon-size-md) + var(--bpjs-spacing-xs)) 0 var(--bpjs-spacing-md);
1927
+ color: inherit;
1928
+ font: inherit;
1929
+ appearance: none;
1930
+ cursor: pointer;
1931
+ background: none;
1932
+ border: 0;
1933
+ outline: none;
1934
+ flex: auto;
1935
+ margin: 0;
1936
+ }
1937
+
1938
+ .bpjs-select__control:has( > option[value=""]:checked) {
1939
+ color: var(--bpjs-text-medium);
1940
+ }
1941
+
1942
+ .bpjs-select__control:disabled {
1943
+ cursor: not-allowed;
1944
+ }
1945
+
1946
+ .bpjs-select__icon {
1947
+ top: 50%;
1948
+ right: var(--bpjs-spacing-md);
1949
+ color: var(--bpjs-text-high);
1950
+ pointer-events: none;
1951
+ position: absolute;
1952
+ transform: translateY(-50%);
1953
+ }
1954
+
1955
+ .bpjs-select__addon {
1956
+ box-sizing: border-box;
1957
+ padding: var(--bpjs-spacing-sm) var(--bpjs-spacing-md);
1958
+ color: var(--bpjs-text-high);
1959
+ font: var(--bpjs-text-sm-medium);
1960
+ white-space: nowrap;
1961
+ flex: none;
1962
+ align-items: center;
1963
+ display: flex;
1964
+ }
1965
+
1966
+ .bpjs-select__addon--prefix {
1967
+ border-right: 1px solid var(--bpjs-border-very-low);
1968
+ }
1969
+
1970
+ .bpjs-select:has(.bpjs-select__control:disabled) .bpjs-select__icon {
1971
+ color: var(--bpjs-text-low);
1972
+ }
1973
+
1974
+ .bpjs-select:has(.bpjs-select__control:disabled) .bpjs-select__control:has( > option[value=""]:checked) {
1975
+ color: var(--bpjs-text-very-low);
1976
+ }
1977
+
1978
+ .bpjs-avatar {
1979
+ --bpjs-avatar-size: 40px;
1980
+ --bpjs-avatar-status-size: 14px;
1981
+ --bpjs-avatar-font: var(--bpjs-text-md-medium);
1982
+ box-sizing: border-box;
1983
+ width: var(--bpjs-avatar-size);
1984
+ height: var(--bpjs-avatar-size);
1985
+ border: 1px solid var(--bpjs-border-low);
1986
+ border-radius: var(--bpjs-radius-round);
1987
+ background-color: var(--bpjs-background-medium);
1988
+ color: var(--bpjs-text-medium);
1989
+ flex: none;
1990
+ justify-content: center;
1991
+ align-items: center;
1992
+ display: inline-flex;
1993
+ position: relative;
1994
+ overflow: visible;
1995
+ }
1996
+
1997
+ .bpjs-avatar--xs {
1998
+ --bpjs-avatar-size: 24px;
1999
+ --bpjs-avatar-status-size: 10px;
2000
+ --bpjs-avatar-font: var(--bpjs-font-weight-medium) 10px / 14px var(--bpjs-font-family);
2001
+ }
2002
+
2003
+ .bpjs-avatar--sm {
2004
+ --bpjs-avatar-size: 32px;
2005
+ --bpjs-avatar-status-size: 12px;
2006
+ --bpjs-avatar-font: var(--bpjs-text-sm-medium);
2007
+ }
2008
+
2009
+ .bpjs-avatar--md {
2010
+ --bpjs-avatar-size: 40px;
2011
+ --bpjs-avatar-status-size: 14px;
2012
+ --bpjs-avatar-font: var(--bpjs-text-md-medium);
2013
+ }
2014
+
2015
+ .bpjs-avatar--lg {
2016
+ --bpjs-avatar-size: 48px;
2017
+ --bpjs-avatar-status-size: 16px;
2018
+ --bpjs-avatar-font: var(--bpjs-text-lg-medium);
2019
+ }
2020
+
2021
+ .bpjs-avatar--xl {
2022
+ --bpjs-avatar-size: 56px;
2023
+ --bpjs-avatar-status-size: 18px;
2024
+ --bpjs-avatar-font: var(--bpjs-display-xs-medium);
2025
+ }
2026
+
2027
+ .bpjs-avatar--2xl {
2028
+ --bpjs-avatar-size: 64px;
2029
+ --bpjs-avatar-status-size: 20px;
2030
+ --bpjs-avatar-font: var(--bpjs-display-xs-medium);
2031
+ }
2032
+
2033
+ .bpjs-avatar__image {
2034
+ border-radius: inherit;
2035
+ object-fit: cover;
2036
+ width: 100%;
2037
+ height: 100%;
2038
+ }
2039
+
2040
+ .bpjs-avatar__icon {
2041
+ --bpjs-icon-size: calc(var(--bpjs-avatar-size) * .6);
2042
+ color: var(--bpjs-text-high);
2043
+ }
2044
+
2045
+ .bpjs-avatar__text {
2046
+ font: var(--bpjs-avatar-font);
2047
+ color: var(--bpjs-text-medium);
2048
+ text-transform: uppercase;
2049
+ }
2050
+
2051
+ .bpjs-avatar__status {
2052
+ --bpjs-avatar-status-color: var(--bpjs-color-greens-400);
2053
+ box-sizing: border-box;
2054
+ width: var(--bpjs-avatar-status-size);
2055
+ height: var(--bpjs-avatar-status-size);
2056
+ border: 1.5px solid var(--bpjs-background-white-static);
2057
+ border-radius: var(--bpjs-radius-round);
2058
+ background-color: var(--bpjs-avatar-status-color);
2059
+ color: var(--bpjs-text-white);
2060
+ justify-content: center;
2061
+ align-items: center;
2062
+ display: inline-flex;
2063
+ position: absolute;
2064
+ bottom: -1px;
2065
+ right: -1px;
2066
+ }
2067
+
2068
+ .bpjs-avatar__status--inactive {
2069
+ --bpjs-avatar-status-color: var(--bpjs-background-low);
2070
+ }
2071
+
2072
+ .bpjs-avatar__status--badge {
2073
+ --bpjs-avatar-status-color: var(--bpjs-background-danger-hard);
2074
+ font: var(--bpjs-text-xs-semibold);
2075
+ font-size: 9px;
2076
+ line-height: 1;
2077
+ }
2078
+
2079
+ .bpjs-avatar__status--icon {
2080
+ --bpjs-avatar-status-color: var(--bpjs-background-high);
2081
+ color: var(--bpjs-text-high);
2082
+ }
2083
+
2084
+ .bpjs-avatar__status--icon .bpjs-icon {
2085
+ --bpjs-icon-size: calc(var(--bpjs-avatar-status-size) * .5);
2086
+ color: inherit;
2087
+ }
2088
+
2089
+ @media (forced-colors: active) {
2090
+ .bpjs-avatar__status {
2091
+ border-color: canvas;
2092
+ }
2093
+ }
2094
+
2095
+ .bpjs-badge {
2096
+ --bpjs-badge-height: 22px;
2097
+ --bpjs-badge-font: var(--bpjs-text-xs-semibold);
2098
+ --bpjs-badge-fill: var(--bpjs-background-high);
2099
+ --bpjs-badge-border: var(--bpjs-border-very-low);
2100
+ --bpjs-badge-text: var(--bpjs-text-high);
2101
+ --bpjs-badge-dot: var(--bpjs-text-high);
2102
+ box-sizing: border-box;
2103
+ height: var(--bpjs-badge-height);
2104
+ border: 1px solid var(--bpjs-badge-border);
2105
+ border-radius: var(--bpjs-radius-xs);
2106
+ background-color: var(--bpjs-badge-fill);
2107
+ color: var(--bpjs-badge-text);
2108
+ font: var(--bpjs-badge-font);
2109
+ white-space: nowrap;
2110
+ flex: none;
2111
+ align-items: center;
2112
+ gap: 4px;
2113
+ padding: 2px 6px;
2114
+ display: inline-flex;
2115
+ }
2116
+
2117
+ .bpjs-badge--md {
2118
+ --bpjs-badge-height: 24px;
2119
+ --bpjs-badge-font: var(--bpjs-text-sm-semibold);
2120
+ }
2121
+
2122
+ .bpjs-badge--lg {
2123
+ --bpjs-badge-height: 28px;
2124
+ --bpjs-badge-font: var(--bpjs-text-sm-semibold);
2125
+ }
2126
+
2127
+ .bpjs-badge__icon {
2128
+ --bpjs-icon-size: var(--bpjs-icon-size-sm);
2129
+ color: inherit;
2130
+ flex: none;
2131
+ }
2132
+
2133
+ .bpjs-badge__dot {
2134
+ border-radius: var(--bpjs-radius-round);
2135
+ background-color: var(--bpjs-badge-dot);
2136
+ flex: none;
2137
+ width: 6px;
2138
+ height: 6px;
2139
+ }
2140
+
2141
+ .bpjs-badge--icon-only {
2142
+ width: var(--bpjs-badge-height);
2143
+ justify-content: center;
2144
+ padding: 2px;
2145
+ }
2146
+
2147
+ .bpjs-badge--icon-only .bpjs-badge__icon {
2148
+ margin: 0;
2149
+ }
2150
+
2151
+ .bpjs-badge--neutral.bpjs-badge--hard {
2152
+ --bpjs-badge-fill: var(--bpjs-background-medium);
2153
+ }
2154
+
2155
+ .bpjs-badge--info {
2156
+ --bpjs-badge-dot: var(--bpjs-background-info-hard);
2157
+ }
2158
+
2159
+ .bpjs-badge--info.bpjs-badge--hard {
2160
+ --bpjs-badge-fill: var(--bpjs-background-info-soft);
2161
+ --bpjs-badge-border: var(--bpjs-border-info-soft);
2162
+ --bpjs-badge-text: var(--bpjs-text-info);
2163
+ }
2164
+
2165
+ .bpjs-badge--success {
2166
+ --bpjs-badge-dot: var(--bpjs-background-success-hard);
2167
+ }
2168
+
2169
+ .bpjs-badge--success.bpjs-badge--hard {
2170
+ --bpjs-badge-fill: var(--bpjs-background-success-soft);
2171
+ --bpjs-badge-border: var(--bpjs-border-success-soft);
2172
+ --bpjs-badge-text: var(--bpjs-text-success);
2173
+ }
2174
+
2175
+ .bpjs-badge--warning {
2176
+ --bpjs-badge-dot: var(--bpjs-background-warning-hard);
2177
+ }
2178
+
2179
+ .bpjs-badge--warning.bpjs-badge--hard {
2180
+ --bpjs-badge-fill: var(--bpjs-background-warning-soft);
2181
+ --bpjs-badge-border: var(--bpjs-border-warning-soft);
2182
+ --bpjs-badge-text: var(--bpjs-text-warning);
2183
+ }
2184
+
2185
+ .bpjs-badge--danger {
2186
+ --bpjs-badge-dot: var(--bpjs-background-danger-hard);
2187
+ }
2188
+
2189
+ .bpjs-badge--danger.bpjs-badge--hard {
2190
+ --bpjs-badge-fill: var(--bpjs-background-danger-soft);
2191
+ --bpjs-badge-border: var(--bpjs-border-danger-soft);
2192
+ --bpjs-badge-text: var(--bpjs-text-danger);
2193
+ }
2194
+
2195
+ @media (forced-colors: active) {
2196
+ .bpjs-badge {
2197
+ border-color: canvastext;
2198
+ }
2199
+ }
2200
+
2201
+ .bpjs-swiper-dots {
2202
+ align-items: center;
2203
+ gap: 4px;
2204
+ display: inline-flex;
2205
+ }
2206
+
2207
+ .bpjs-swiper-dot {
2208
+ box-sizing: border-box;
2209
+ border-radius: var(--bpjs-radius-round);
2210
+ background-color: var(--bpjs-background-gray);
2211
+ width: 8px;
2212
+ height: 8px;
2213
+ transition: background-color .15s;
2214
+ }
2215
+
2216
+ .bpjs-swiper-dot--active {
2217
+ background-color: var(--bpjs-background-brand-primary);
2218
+ }
2219
+
2220
+ .bpjs-swiper-progress {
2221
+ --bpjs-swiper-progress: 0%;
2222
+ border-radius: var(--bpjs-radius-round);
2223
+ background-color: var(--bpjs-background-gray);
2224
+ width: 72px;
2225
+ height: 6px;
2226
+ position: relative;
2227
+ overflow: hidden;
2228
+ }
2229
+
2230
+ .bpjs-swiper-progress__bar {
2231
+ width: var(--bpjs-swiper-progress);
2232
+ border-radius: inherit;
2233
+ background-color: var(--bpjs-background-brand-primary);
2234
+ transition: width .3s;
2235
+ position: absolute;
2236
+ inset: 0 auto 0 0;
2237
+ }
2238
+
2239
+ @media (prefers-reduced-motion: reduce) {
2240
+ .bpjs-swiper-dot, .bpjs-swiper-progress__bar {
2241
+ transition: none;
2242
+ }
2243
+ }
2244
+
2245
+ .bpjs-stepper {
2246
+ --bpjs-step-marker: 24px;
2247
+ --bpjs-step-line: var(--bpjs-border-very-low);
2248
+ margin: 0;
2249
+ padding: 0;
2250
+ list-style: none;
2251
+ }
2252
+
2253
+ .bpjs-stepper--vertical {
2254
+ flex-direction: column;
2255
+ display: flex;
2256
+ }
2257
+
2258
+ .bpjs-stepper--timeline {
2259
+ flex-direction: column;
2260
+ align-items: flex-start;
2261
+ display: flex;
2262
+ }
2263
+
2264
+ .bpjs-step {
2265
+ --bpjs-step-ring: var(--bpjs-border-very-low);
2266
+ box-sizing: border-box;
2267
+ display: flex;
2268
+ position: relative;
2269
+ }
2270
+
2271
+ .bpjs-stepper--vertical .bpjs-step {
2272
+ gap: 12px;
2273
+ min-height: 52px;
2274
+ padding-bottom: 12px;
2275
+ }
2276
+
2277
+ .bpjs-stepper--timeline .bpjs-step {
2278
+ align-items: flex-start;
2279
+ min-height: 52px;
2280
+ padding-bottom: 0;
2281
+ }
2282
+
2283
+ .bpjs-step:not(:last-child):after {
2284
+ content: "";
2285
+ background-color: var(--bpjs-step-line);
2286
+ position: absolute;
2287
+ }
2288
+
2289
+ .bpjs-stepper--vertical .bpjs-step:not(:last-child):after, .bpjs-stepper--timeline .bpjs-step:not(:last-child):after {
2290
+ top: var(--bpjs-step-marker);
2291
+ bottom: 0;
2292
+ left: calc(var(--bpjs-step-marker) / 2 - 1px);
2293
+ width: 2px;
2294
+ }
2295
+
2296
+ .bpjs-step__marker {
2297
+ box-sizing: border-box;
2298
+ width: var(--bpjs-step-marker);
2299
+ height: var(--bpjs-step-marker);
2300
+ border: 1px solid var(--bpjs-step-ring);
2301
+ border-radius: var(--bpjs-radius-round);
2302
+ background-color: var(--bpjs-background-high);
2303
+ color: var(--bpjs-text-very-low);
2304
+ font: var(--bpjs-text-xs-semibold);
2305
+ flex: none;
2306
+ justify-content: center;
2307
+ align-items: center;
2308
+ display: inline-flex;
2309
+ }
2310
+
2311
+ .bpjs-step__icon {
2312
+ --bpjs-icon-size: var(--bpjs-icon-size-sm);
2313
+ color: inherit;
2314
+ }
2315
+
2316
+ .bpjs-step__content {
2317
+ flex-direction: column;
2318
+ gap: 2px;
2319
+ min-width: 0;
2320
+ display: flex;
2321
+ }
2322
+
2323
+ .bpjs-step__title {
2324
+ color: var(--bpjs-text-high);
2325
+ font: var(--bpjs-text-sm-semibold);
2326
+ }
2327
+
2328
+ .bpjs-step__note {
2329
+ color: var(--bpjs-text-medium);
2330
+ font: var(--bpjs-text-xs-regular);
2331
+ }
2332
+
2333
+ .bpjs-step--idle .bpjs-step__title {
2334
+ color: var(--bpjs-text-medium);
2335
+ font: var(--bpjs-text-sm-regular);
2336
+ }
2337
+
2338
+ .bpjs-step--active {
2339
+ --bpjs-step-ring: var(--bpjs-border-brand-primary);
2340
+ }
2341
+
2342
+ .bpjs-step--active .bpjs-step__marker, .bpjs-step--active .bpjs-step__title {
2343
+ color: var(--bpjs-text-brand);
2344
+ }
2345
+
2346
+ .bpjs-step--done {
2347
+ --bpjs-step-ring: var(--bpjs-background-brand-primary);
2348
+ }
2349
+
2350
+ .bpjs-step--done .bpjs-step__marker {
2351
+ background-color: var(--bpjs-background-brand-primary);
2352
+ color: var(--bpjs-text-white);
2353
+ }
2354
+
2355
+ .bpjs-step--active:not(:last-child):after, .bpjs-step--done:not(:last-child):after {
2356
+ --bpjs-step-line: var(--bpjs-background-brand-primary);
2357
+ }
2358
+
2359
+ @media (forced-colors: active) {
2360
+ .bpjs-step--active .bpjs-step__marker, .bpjs-step--done .bpjs-step__marker {
2361
+ border: 2px solid canvastext;
2362
+ }
2363
+ }
2364
+
2365
+ .bpjs-tooltip-wrap {
2366
+ display: inline-flex;
2367
+ position: relative;
2368
+ }
2369
+
2370
+ .bpjs-tooltip {
2371
+ --bpjs-tooltip-gap: 8px;
2372
+ z-index: 10;
2373
+ box-sizing: border-box;
2374
+ border-radius: var(--bpjs-radius-sm);
2375
+ background-color: var(--bpjs-background-black-static);
2376
+ width: max-content;
2377
+ max-width: 240px;
2378
+ color: var(--bpjs-text-white);
2379
+ font: var(--bpjs-text-xs-regular);
2380
+ text-align: left;
2381
+ opacity: 0;
2382
+ visibility: hidden;
2383
+ pointer-events: none;
2384
+ flex-direction: column;
2385
+ gap: 2px;
2386
+ padding: 8px 12px;
2387
+ transition: opacity .15s, visibility .15s;
2388
+ display: flex;
2389
+ position: absolute;
2390
+ }
2391
+
2392
+ .bpjs-tooltip:after {
2393
+ content: "";
2394
+ background-color: var(--bpjs-background-black-static);
2395
+ clip-path: polygon(0 0, 100% 0, 50% 100%);
2396
+ width: 16px;
2397
+ height: 6px;
2398
+ position: absolute;
2399
+ }
2400
+
2401
+ .bpjs-tooltip__title {
2402
+ font: var(--bpjs-text-xs-semibold);
2403
+ }
2404
+
2405
+ .bpjs-tooltip__description {
2406
+ font: var(--bpjs-text-xs-regular);
2407
+ }
2408
+
2409
+ .bpjs-tooltip-wrap:hover > .bpjs-tooltip, .bpjs-tooltip-wrap:focus-within > .bpjs-tooltip, .bpjs-tooltip--open {
2410
+ opacity: 1;
2411
+ visibility: visible;
2412
+ }
2413
+
2414
+ .bpjs-tooltip--top {
2415
+ bottom: calc(100% + var(--bpjs-tooltip-gap));
2416
+ left: 50%;
2417
+ transform: translateX(-50%);
2418
+ }
2419
+
2420
+ .bpjs-tooltip--top:after {
2421
+ top: 100%;
2422
+ left: 50%;
2423
+ transform: translateX(-50%);
2424
+ }
2425
+
2426
+ .bpjs-tooltip--bottom {
2427
+ top: calc(100% + var(--bpjs-tooltip-gap));
2428
+ left: 50%;
2429
+ transform: translateX(-50%);
2430
+ }
2431
+
2432
+ .bpjs-tooltip--bottom:after {
2433
+ bottom: 100%;
2434
+ left: 50%;
2435
+ transform: translateX(-50%) rotate(180deg);
2436
+ }
2437
+
2438
+ .bpjs-tooltip--top.bpjs-tooltip--start, .bpjs-tooltip--bottom.bpjs-tooltip--start {
2439
+ left: 0;
2440
+ transform: none;
2441
+ }
2442
+
2443
+ .bpjs-tooltip--top.bpjs-tooltip--start:after, .bpjs-tooltip--bottom.bpjs-tooltip--start:after {
2444
+ left: 12px;
2445
+ transform: none;
2446
+ }
2447
+
2448
+ .bpjs-tooltip--top.bpjs-tooltip--end, .bpjs-tooltip--bottom.bpjs-tooltip--end {
2449
+ left: auto;
2450
+ right: 0;
2451
+ transform: none;
2452
+ }
2453
+
2454
+ .bpjs-tooltip--top.bpjs-tooltip--end:after, .bpjs-tooltip--bottom.bpjs-tooltip--end:after {
2455
+ left: auto;
2456
+ right: 12px;
2457
+ transform: none;
2458
+ }
2459
+
2460
+ .bpjs-tooltip--left, .bpjs-tooltip--right {
2461
+ top: 50%;
2462
+ transform: translateY(-50%);
2463
+ }
2464
+
2465
+ .bpjs-tooltip--left {
2466
+ right: calc(100% + var(--bpjs-tooltip-gap));
2467
+ }
2468
+
2469
+ .bpjs-tooltip--right {
2470
+ left: calc(100% + var(--bpjs-tooltip-gap));
2471
+ }
2472
+
2473
+ .bpjs-tooltip--left:after, .bpjs-tooltip--right:after {
2474
+ clip-path: polygon(0 0, 100% 50%, 0 100%);
2475
+ width: 6px;
2476
+ height: 16px;
2477
+ top: 50%;
2478
+ transform: translateY(-50%);
2479
+ }
2480
+
2481
+ .bpjs-tooltip--left:after {
2482
+ left: 100%;
2483
+ }
2484
+
2485
+ .bpjs-tooltip--right:after {
2486
+ clip-path: polygon(100% 0, 0 50%, 100% 100%);
2487
+ right: 100%;
2488
+ }
2489
+
2490
+ @media (prefers-reduced-motion: reduce) {
2491
+ .bpjs-tooltip {
2492
+ transition: none;
2493
+ }
2494
+ }
2495
+
2496
+ @media (forced-colors: active) {
2497
+ .bpjs-tooltip {
2498
+ border: 1px solid canvastext;
2499
+ }
2500
+ }
2501
+
2502
+ .bpjs-dropdown {
2503
+ box-sizing: border-box;
2504
+ border: 1px solid var(--bpjs-border-very-low);
2505
+ border-radius: var(--bpjs-radius-md);
2506
+ background-color: var(--bpjs-background-high);
2507
+ width: 240px;
2508
+ box-shadow: var(--bpjs-shadow-md);
2509
+ flex-direction: column;
2510
+ padding: 4px 0;
2511
+ display: flex;
2512
+ }
2513
+
2514
+ .bpjs-dropdown-header {
2515
+ flex-direction: column;
2516
+ gap: 0;
2517
+ padding: 12px;
2518
+ display: flex;
2519
+ }
2520
+
2521
+ .bpjs-dropdown-header__title {
2522
+ color: var(--bpjs-text-high);
2523
+ font: var(--bpjs-text-sm-semibold);
2524
+ }
2525
+
2526
+ .bpjs-dropdown-header__description {
2527
+ color: var(--bpjs-text-medium);
2528
+ font: var(--bpjs-text-sm-regular);
2529
+ }
2530
+
2531
+ .bpjs-dropdown-header--user {
2532
+ flex-direction: row;
2533
+ align-items: center;
2534
+ gap: 12px;
2535
+ }
2536
+
2537
+ .bpjs-dropdown-header__text {
2538
+ flex-direction: column;
2539
+ min-width: 0;
2540
+ display: flex;
2541
+ }
2542
+
2543
+ .bpjs-dropdown__divider {
2544
+ background-color: var(--bpjs-border-very-low);
2545
+ height: 1px;
2546
+ margin: 4px 0;
2547
+ }
2548
+
2549
+ .bpjs-dropdown-item {
2550
+ box-sizing: border-box;
2551
+ border-radius: var(--bpjs-radius-sm);
2552
+ background-color: var(--bpjs-background-high);
2553
+ width: 100%;
2554
+ height: 36px;
2555
+ color: var(--bpjs-text-high);
2556
+ font: inherit;
2557
+ text-align: left;
2558
+ cursor: pointer;
2559
+ -webkit-user-select: none;
2560
+ user-select: none;
2561
+ border: 0;
2562
+ align-items: center;
2563
+ gap: 8px;
2564
+ margin: 2px 0;
2565
+ padding: 8px 6px;
2566
+ display: flex;
2567
+ }
2568
+
2569
+ .bpjs-dropdown-item:hover {
2570
+ background-color: var(--bpjs-background-medium);
2571
+ }
2572
+
2573
+ .bpjs-dropdown-item__leading {
2574
+ --bpjs-icon-size: var(--bpjs-icon-size-md);
2575
+ color: inherit;
2576
+ flex: none;
2577
+ }
2578
+
2579
+ .bpjs-dropdown-item__label {
2580
+ text-overflow: ellipsis;
2581
+ white-space: nowrap;
2582
+ min-width: 0;
2583
+ font: var(--bpjs-text-sm-medium);
2584
+ flex: auto;
2585
+ overflow: hidden;
2586
+ }
2587
+
2588
+ .bpjs-dropdown-item__trailing {
2589
+ --bpjs-icon-size: var(--bpjs-icon-size-sm);
2590
+ color: inherit;
2591
+ flex: none;
2592
+ }
2593
+
2594
+ .bpjs-dropdown-item:focus-visible {
2595
+ box-shadow: var(--bpjs-shadow-focus);
2596
+ outline: none;
2597
+ }
2598
+
2599
+ .bpjs-dropdown-item:disabled, .bpjs-dropdown-item[aria-disabled="true"] {
2600
+ cursor: not-allowed;
2601
+ color: var(--bpjs-text-low);
2602
+ }
2603
+
2604
+ .bpjs-dropdown-item:disabled:hover, .bpjs-dropdown-item[aria-disabled="true"]:hover {
2605
+ background-color: var(--bpjs-background-high);
2606
+ }
2607
+
2608
+ @media (forced-colors: active) {
2609
+ .bpjs-dropdown-item:focus-visible {
2610
+ outline-offset: 2px;
2611
+ outline: 2px solid highlight;
2612
+ }
2613
+ }
2614
+
2615
+ .bpjs-segmented {
2616
+ box-sizing: border-box;
2617
+ border-radius: var(--bpjs-radius-sm);
2618
+ background-color: var(--bpjs-background-medium);
2619
+ align-items: stretch;
2620
+ gap: 0;
2621
+ height: 40px;
2622
+ padding: 2px;
2623
+ display: inline-flex;
2624
+ }
2625
+
2626
+ .bpjs-segmented-item {
2627
+ box-sizing: border-box;
2628
+ border-radius: var(--bpjs-radius-sm);
2629
+ min-width: 104px;
2630
+ height: 36px;
2631
+ color: var(--bpjs-text-medium);
2632
+ font: var(--bpjs-text-sm-medium);
2633
+ white-space: nowrap;
2634
+ cursor: pointer;
2635
+ -webkit-user-select: none;
2636
+ user-select: none;
2637
+ background: none;
2638
+ border: 0;
2639
+ flex: auto;
2640
+ justify-content: center;
2641
+ align-items: center;
2642
+ gap: 4px;
2643
+ margin: 0;
2644
+ padding: 8px 10px;
2645
+ transition: background-color .15s;
2646
+ display: inline-flex;
2647
+ }
2648
+
2649
+ .bpjs-segmented-item:hover {
2650
+ background-color: var(--bpjs-background-low);
2651
+ }
2652
+
2653
+ .bpjs-segmented-item--active, .bpjs-segmented-item[aria-pressed="true"] {
2654
+ background-color: var(--bpjs-background-high);
2655
+ color: var(--bpjs-text-high);
2656
+ font: var(--bpjs-text-sm-semibold);
2657
+ }
2658
+
2659
+ .bpjs-segmented-item:focus-visible {
2660
+ box-shadow: var(--bpjs-shadow-focus);
2661
+ outline: none;
2662
+ }
2663
+
2664
+ .bpjs-segmented-item:disabled, .bpjs-segmented-item[aria-disabled="true"] {
2665
+ cursor: not-allowed;
2666
+ color: var(--bpjs-text-low);
2667
+ background-color: #0000;
2668
+ }
2669
+
2670
+ @media (prefers-reduced-motion: reduce) {
2671
+ .bpjs-segmented-item {
2672
+ transition: none;
2673
+ }
2674
+ }
2675
+
2676
+ @media (forced-colors: active) {
2677
+ .bpjs-segmented-item:focus-visible {
2678
+ outline-offset: 2px;
2679
+ outline: 2px solid highlight;
2680
+ }
2681
+ }
2682
+
2683
+ .bpjs-pagination {
2684
+ box-sizing: border-box;
2685
+ font: var(--bpjs-text-xs-medium);
2686
+ color: var(--bpjs-text-high);
2687
+ align-items: center;
2688
+ gap: 4px;
2689
+ display: inline-flex;
2690
+ }
2691
+
2692
+ .bpjs-pagination__pages {
2693
+ align-items: center;
2694
+ gap: 4px;
2695
+ margin: 0;
2696
+ padding: 0;
2697
+ list-style: none;
2698
+ display: inline-flex;
2699
+ }
2700
+
2701
+ .bpjs-pagination__page, .bpjs-pagination__nav {
2702
+ box-sizing: border-box;
2703
+ border-radius: var(--bpjs-radius-sm);
2704
+ background-color: var(--bpjs-background-high);
2705
+ width: 32px;
2706
+ height: 32px;
2707
+ color: var(--bpjs-text-high);
2708
+ font: var(--bpjs-text-xs-medium);
2709
+ cursor: pointer;
2710
+ -webkit-user-select: none;
2711
+ user-select: none;
2712
+ border: 0;
2713
+ flex: none;
2714
+ justify-content: center;
2715
+ align-items: center;
2716
+ margin: 0;
2717
+ padding: 0;
2718
+ display: inline-flex;
2719
+ }
2720
+
2721
+ .bpjs-pagination__page:hover, .bpjs-pagination__nav:hover:not(:disabled) {
2722
+ background-color: var(--bpjs-background-medium);
2723
+ }
2724
+
2725
+ .bpjs-pagination__page--active, .bpjs-pagination__page[aria-current="page"] {
2726
+ background-color: var(--bpjs-background-brand-primary);
2727
+ color: var(--bpjs-text-white);
2728
+ font: var(--bpjs-text-xs-bold);
2729
+ }
2730
+
2731
+ .bpjs-pagination__page--active:hover, .bpjs-pagination__page[aria-current="page"]:hover {
2732
+ background-color: var(--bpjs-background-brand-primary);
2733
+ }
2734
+
2735
+ .bpjs-pagination__nav {
2736
+ color: var(--bpjs-text-high);
2737
+ }
2738
+
2739
+ .bpjs-pagination__nav .bpjs-icon {
2740
+ --bpjs-icon-size: var(--bpjs-icon-size-sm);
2741
+ }
2742
+
2743
+ .bpjs-pagination__nav:disabled {
2744
+ cursor: not-allowed;
2745
+ color: var(--bpjs-text-low);
2746
+ background-color: var(--bpjs-background-high);
2747
+ }
2748
+
2749
+ .bpjs-pagination__ellipsis {
2750
+ width: 32px;
2751
+ height: 32px;
2752
+ color: var(--bpjs-text-medium);
2753
+ justify-content: center;
2754
+ align-items: center;
2755
+ display: inline-flex;
2756
+ }
2757
+
2758
+ .bpjs-pagination__page:focus-visible, .bpjs-pagination__nav:focus-visible {
2759
+ box-shadow: var(--bpjs-shadow-focus);
2760
+ outline: none;
2761
+ }
2762
+
2763
+ .bpjs-pagination__summary {
2764
+ color: var(--bpjs-text-high);
2765
+ font: var(--bpjs-text-xs-regular);
2766
+ }
2767
+
2768
+ .bpjs-pagination__summary strong {
2769
+ font: var(--bpjs-text-xs-semibold);
2770
+ }
2771
+
2772
+ .bpjs-pagination__per-page {
2773
+ color: var(--bpjs-text-high);
2774
+ font: var(--bpjs-text-xs-regular);
2775
+ align-items: center;
2776
+ gap: 8px;
2777
+ display: inline-flex;
2778
+ }
2779
+
2780
+ .bpjs-select__native {
2781
+ box-sizing: border-box;
2782
+ border: 1px solid var(--bpjs-border-very-low);
2783
+ border-radius: var(--bpjs-radius-sm);
2784
+ background-color: var(--bpjs-background-high);
2785
+ height: 32px;
2786
+ color: var(--bpjs-text-high);
2787
+ font: var(--bpjs-text-xs-regular);
2788
+ padding: 0 28px 0 10px;
2789
+ }
2790
+
2791
+ @media (forced-colors: active) {
2792
+ .bpjs-pagination__page--active, .bpjs-pagination__page[aria-current="page"] {
2793
+ border: 2px solid highlight;
2794
+ }
2795
+ }
2796
+
2797
+ @media (prefers-reduced-motion: reduce) {
2798
+ .bpjs-pagination__page, .bpjs-pagination__nav {
2799
+ transition: none;
2800
+ }
2801
+ }
2802
+
2803
+ .bpjs-pagination-row {
2804
+ flex-wrap: wrap;
2805
+ justify-content: space-between;
2806
+ align-items: center;
2807
+ gap: 12px;
2808
+ width: 100%;
2809
+ display: flex;
2810
+ }
2811
+
2812
+ .bpjs-pagination__meta {
2813
+ flex-wrap: wrap;
2814
+ align-items: center;
2815
+ gap: 16px;
2816
+ display: flex;
2817
+ }
2818
+
2819
+ .bpjs-table-card {
2820
+ box-sizing: border-box;
2821
+ border: 1px solid var(--bpjs-border-very-low);
2822
+ border-radius: var(--bpjs-radius-sm);
2823
+ background-color: var(--bpjs-background-high);
2824
+ flex-direction: column;
2825
+ display: flex;
2826
+ overflow: hidden;
2827
+ }
2828
+
2829
+ .bpjs-table-title {
2830
+ flex-wrap: wrap;
2831
+ justify-content: space-between;
2832
+ align-items: center;
2833
+ gap: 12px;
2834
+ padding: 20px 20px 16px;
2835
+ display: flex;
2836
+ }
2837
+
2838
+ .bpjs-table-title__heading {
2839
+ color: var(--bpjs-text-high);
2840
+ font: var(--bpjs-text-lg-bold);
2841
+ margin: 0;
2842
+ }
2843
+
2844
+ .bpjs-table-title__description {
2845
+ color: var(--bpjs-text-medium);
2846
+ font: var(--bpjs-text-xs-regular);
2847
+ margin: 2px 0 0;
2848
+ }
2849
+
2850
+ .bpjs-table-toolbar {
2851
+ flex-wrap: wrap;
2852
+ justify-content: space-between;
2853
+ align-items: center;
2854
+ gap: 12px;
2855
+ padding: 0 20px 16px;
2856
+ display: flex;
2857
+ }
2858
+
2859
+ .bpjs-table-toolbar__end {
2860
+ flex-wrap: wrap;
2861
+ align-items: center;
2862
+ gap: 8px;
2863
+ display: flex;
2864
+ }
2865
+
2866
+ .bpjs-table__stack {
2867
+ font: var(--bpjs-text-sm-regular);
2868
+ flex-direction: column;
2869
+ gap: 2px;
2870
+ display: flex;
2871
+ }
2872
+
2873
+ .bpjs-table__secondary {
2874
+ color: var(--bpjs-text-medium);
2875
+ font: var(--bpjs-text-xs-regular);
2876
+ }
2877
+
2878
+ .bpjs-table__action {
2879
+ text-align: right;
2880
+ width: 48px;
2881
+ }
2882
+
2883
+ .bpjs-table__row-action {
2884
+ border-radius: var(--bpjs-radius-sm);
2885
+ width: 32px;
2886
+ height: 32px;
2887
+ color: var(--bpjs-text-high);
2888
+ cursor: pointer;
2889
+ background: none;
2890
+ border: 0;
2891
+ justify-content: center;
2892
+ align-items: center;
2893
+ margin: 0;
2894
+ padding: 0;
2895
+ display: inline-flex;
2896
+ }
2897
+
2898
+ .bpjs-table__row-action:hover {
2899
+ background-color: var(--bpjs-background-medium);
2900
+ }
2901
+
2902
+ .bpjs-table__row-action:focus-visible {
2903
+ box-shadow: var(--bpjs-shadow-focus);
2904
+ outline: none;
2905
+ }
2906
+
2907
+ .bpjs-table__row-action .bpjs-icon {
2908
+ --bpjs-icon-size: var(--bpjs-icon-size-md);
2909
+ }
2910
+
2911
+ .bpjs-table-scroll {
2912
+ overflow-x: auto;
2913
+ }
2914
+
2915
+ .bpjs-table {
2916
+ border-collapse: separate;
2917
+ border-spacing: 0;
2918
+ width: 100%;
2919
+ color: var(--bpjs-text-high);
2920
+ font: var(--bpjs-text-sm-regular);
2921
+ }
2922
+
2923
+ .bpjs-table th, .bpjs-table td {
2924
+ box-sizing: border-box;
2925
+ border-bottom: 1px solid var(--bpjs-border-very-low);
2926
+ text-align: left;
2927
+ vertical-align: middle;
2928
+ padding: 8px 20px;
2929
+ }
2930
+
2931
+ .bpjs-table td {
2932
+ height: 68px;
2933
+ }
2934
+
2935
+ .bpjs-table th {
2936
+ white-space: nowrap;
2937
+ background-color: var(--bpjs-background-medium);
2938
+ height: 40px;
2939
+ color: var(--bpjs-text-high);
2940
+ font: var(--bpjs-text-xs-semibold);
2941
+ }
2942
+
2943
+ .bpjs-table tbody tr:hover td {
2944
+ background-color: var(--bpjs-background-medium);
2945
+ }
2946
+
2947
+ .bpjs-table tbody tr:last-child td {
2948
+ border-bottom: 0;
2949
+ }
2950
+
2951
+ .bpjs-table th.bpjs-table__check, .bpjs-table td.bpjs-table__check {
2952
+ width: 40px;
2953
+ padding-inline: 12px;
2954
+ }
2955
+
2956
+ .bpjs-table__check input {
2957
+ margin: 0;
2958
+ }
2959
+
2960
+ .bpjs-table__sort {
2961
+ color: inherit;
2962
+ font: inherit;
2963
+ cursor: pointer;
2964
+ background: none;
2965
+ border: 0;
2966
+ align-items: center;
2967
+ gap: 4px;
2968
+ margin: 0;
2969
+ padding: 0;
2970
+ display: inline-flex;
2971
+ }
2972
+
2973
+ .bpjs-table__sort .bpjs-icon {
2974
+ --bpjs-icon-size: var(--bpjs-icon-size-sm);
2975
+ }
2976
+
2977
+ .bpjs-table__sort:focus-visible {
2978
+ box-shadow: var(--bpjs-shadow-focus);
2979
+ border-radius: var(--bpjs-radius-xs);
2980
+ outline: none;
2981
+ }
2982
+
2983
+ .bpjs-table-footer {
2984
+ border-top: 1px solid var(--bpjs-border-very-low);
2985
+ flex-wrap: wrap;
2986
+ justify-content: space-between;
2987
+ align-items: center;
2988
+ gap: 12px;
2989
+ padding: 12px 20px;
2990
+ display: flex;
2991
+ }
2992
+
2993
+ .bpjs-table-footer .bpjs-pagination {
2994
+ margin-inline-start: auto;
2995
+ }
2996
+
2997
+ .bpjs-empty-state {
2998
+ box-sizing: border-box;
2999
+ text-align: center;
3000
+ flex-direction: column;
3001
+ align-items: center;
3002
+ width: 100%;
3003
+ padding: 24px;
3004
+ display: flex;
3005
+ }
3006
+
3007
+ .bpjs-empty-state__body {
3008
+ flex-direction: column;
3009
+ align-items: center;
3010
+ gap: 16px;
3011
+ display: flex;
3012
+ }
3013
+
3014
+ .bpjs-empty-state__icon {
3015
+ box-sizing: border-box;
3016
+ border: 1px solid var(--bpjs-border-very-low);
3017
+ border-radius: var(--bpjs-radius-sm);
3018
+ background-color: var(--bpjs-background-high);
3019
+ width: 40px;
3020
+ height: 40px;
3021
+ color: var(--bpjs-text-high);
3022
+ justify-content: center;
3023
+ align-items: center;
3024
+ display: inline-flex;
3025
+ }
3026
+
3027
+ .bpjs-empty-state__icon .bpjs-icon {
3028
+ --bpjs-icon-size: var(--bpjs-icon-size-lg);
3029
+ }
3030
+
3031
+ .bpjs-empty-state__content {
3032
+ flex-direction: column;
3033
+ align-items: center;
3034
+ gap: 4px;
3035
+ display: flex;
3036
+ }
3037
+
3038
+ .bpjs-empty-state__title {
3039
+ color: var(--bpjs-text-high);
3040
+ font: var(--bpjs-text-md-semibold);
3041
+ margin: 0;
3042
+ }
3043
+
3044
+ .bpjs-empty-state__description {
3045
+ color: var(--bpjs-text-medium);
3046
+ font: var(--bpjs-text-sm-regular);
3047
+ margin: 0;
3048
+ }
3049
+
3050
+ .bpjs-empty-state__footer {
3051
+ flex-wrap: wrap;
3052
+ justify-content: center;
3053
+ align-items: center;
3054
+ gap: 12px;
3055
+ margin-top: 24px;
3056
+ display: flex;
3057
+ }
3058
+
3059
+ @media (forced-colors: active) {
3060
+ .bpjs-table th, .bpjs-table td {
3061
+ border-color: canvastext;
3062
+ }
3063
+ }
3064
+
3065
+ .bpjs-file-upload {
3066
+ box-sizing: border-box;
3067
+ width: 100%;
3068
+ display: block;
3069
+ }
3070
+
3071
+ .bpjs-file-upload__zone {
3072
+ box-sizing: border-box;
3073
+ border: 1px solid var(--bpjs-border-very-low);
3074
+ border-radius: var(--bpjs-radius-lg);
3075
+ background-color: var(--bpjs-background-high);
3076
+ width: 100%;
3077
+ color: var(--bpjs-text-high);
3078
+ text-align: center;
3079
+ cursor: pointer;
3080
+ flex-direction: column;
3081
+ align-items: center;
3082
+ gap: 8px;
3083
+ padding: 24px 16px;
3084
+ transition: border-color .15s, background-color .15s;
3085
+ display: flex;
3086
+ position: relative;
3087
+ }
3088
+
3089
+ .bpjs-file-upload__zone:hover {
3090
+ border-color: var(--bpjs-border-brand-primary);
3091
+ }
3092
+
3093
+ .bpjs-file-upload__zone:focus-within {
3094
+ border-color: var(--bpjs-border-brand-primary);
3095
+ box-shadow: var(--bpjs-shadow-focus);
3096
+ }
3097
+
3098
+ .bpjs-file-upload__input {
3099
+ clip-path: inset(50%);
3100
+ white-space: nowrap;
3101
+ opacity: 0;
3102
+ border: 0;
3103
+ width: 1px;
3104
+ height: 1px;
3105
+ margin: -1px;
3106
+ padding: 0;
3107
+ position: absolute;
3108
+ overflow: hidden;
3109
+ }
3110
+
3111
+ .bpjs-file-upload__icon {
3112
+ box-sizing: border-box;
3113
+ border: 1px solid var(--bpjs-border-very-low);
3114
+ border-radius: var(--bpjs-radius-sm);
3115
+ background-color: var(--bpjs-background-high);
3116
+ justify-content: center;
3117
+ align-items: center;
3118
+ width: 40px;
3119
+ height: 40px;
3120
+ display: inline-flex;
3121
+ }
3122
+
3123
+ .bpjs-file-upload__icon .bpjs-icon {
3124
+ --bpjs-icon-size: var(--bpjs-icon-size-md);
3125
+ }
3126
+
3127
+ .bpjs-file-upload__title {
3128
+ color: var(--bpjs-text-high);
3129
+ font: var(--bpjs-text-sm-regular);
3130
+ }
3131
+
3132
+ .bpjs-file-upload__action {
3133
+ color: var(--bpjs-text-brand);
3134
+ font: var(--bpjs-text-sm-semibold);
3135
+ }
3136
+
3137
+ .bpjs-file-upload__hint {
3138
+ color: var(--bpjs-text-medium);
3139
+ font: var(--bpjs-text-sm-regular);
3140
+ }
3141
+
3142
+ .bpjs-file-upload__zone:has(.bpjs-file-upload__input:focus-visible) {
3143
+ box-shadow: var(--bpjs-shadow-focus);
3144
+ }
3145
+
3146
+ .bpjs-file-upload__zone:has(.bpjs-file-upload__input:disabled) {
3147
+ cursor: not-allowed;
3148
+ background-color: var(--bpjs-background-medium);
3149
+ border-color: var(--bpjs-border-very-low);
3150
+ }
3151
+
3152
+ .bpjs-file-upload__zone:has(.bpjs-file-upload__input:disabled) .bpjs-file-upload__title, .bpjs-file-upload__zone:has(.bpjs-file-upload__input:disabled) .bpjs-file-upload__icon {
3153
+ color: var(--bpjs-text-low);
3154
+ }
3155
+
3156
+ .bpjs-file-upload__zone:has(.bpjs-file-upload__input:disabled) .bpjs-file-upload__icon {
3157
+ background-color: var(--bpjs-background-medium);
3158
+ }
3159
+
3160
+ .bpjs-file-upload__zone:has(.bpjs-file-upload__input:disabled) .bpjs-file-upload__hint {
3161
+ color: var(--bpjs-text-low);
3162
+ }
3163
+
3164
+ .bpjs-file-row {
3165
+ box-sizing: border-box;
3166
+ border: 1px solid var(--bpjs-border-very-low);
3167
+ border-radius: var(--bpjs-radius-lg);
3168
+ background-color: var(--bpjs-background-high);
3169
+ width: 100%;
3170
+ color: var(--bpjs-text-high);
3171
+ grid-template-columns: minmax(0, 1fr) auto;
3172
+ grid-template-areas: "name meta"
3173
+ "bar bar";
3174
+ gap: 8px 12px;
3175
+ padding: 16px;
3176
+ display: grid;
3177
+ }
3178
+
3179
+ .bpjs-file-row__name {
3180
+ text-overflow: ellipsis;
3181
+ white-space: nowrap;
3182
+ min-width: 0;
3183
+ color: var(--bpjs-text-black);
3184
+ font: var(--bpjs-text-sm-semibold);
3185
+ grid-area: name;
3186
+ overflow: hidden;
3187
+ }
3188
+
3189
+ .bpjs-file-row__meta {
3190
+ color: var(--bpjs-text-medium);
3191
+ font: var(--bpjs-text-sm-regular);
3192
+ white-space: nowrap;
3193
+ grid-area: meta;
3194
+ align-items: center;
3195
+ gap: 8px;
3196
+ display: inline-flex;
3197
+ }
3198
+
3199
+ .bpjs-file-row__status {
3200
+ font: var(--bpjs-text-xs-medium);
3201
+ }
3202
+
3203
+ .bpjs-file-row__percent {
3204
+ color: var(--bpjs-text-black);
3205
+ font: var(--bpjs-text-sm-regular);
3206
+ }
3207
+
3208
+ .bpjs-file-row__bar {
3209
+ --bpjs-file-progress: 0%;
3210
+ border-radius: var(--bpjs-radius-round);
3211
+ background-color: var(--bpjs-background-gray);
3212
+ grid-area: bar;
3213
+ height: 6px;
3214
+ display: block;
3215
+ overflow: hidden;
3216
+ }
3217
+
3218
+ .bpjs-file-row__bar > span {
3219
+ width: var(--bpjs-file-progress, 0%);
3220
+ border-radius: inherit;
3221
+ background-color: var(--bpjs-background-brand-primary);
3222
+ height: 100%;
3223
+ transition: width .2s;
3224
+ display: block;
3225
+ }
3226
+
3227
+ .bpjs-file-row--completed .bpjs-file-row__status {
3228
+ color: var(--bpjs-text-success);
3229
+ }
3230
+
3231
+ .bpjs-file-row--completed .bpjs-file-row__bar > span {
3232
+ background-color: var(--bpjs-background-brand-primary);
3233
+ }
3234
+
3235
+ .bpjs-file-row--failed .bpjs-file-row__status, .bpjs-file-row--failed .bpjs-file-row__retry {
3236
+ color: var(--bpjs-text-danger);
3237
+ }
3238
+
3239
+ .bpjs-file-row--failed {
3240
+ border-color: var(--bpjs-border-danger-soft);
3241
+ }
3242
+
3243
+ .bpjs-file-row--failed .bpjs-file-row__bar > span {
3244
+ background-color: var(--bpjs-background-danger-hard);
3245
+ }
3246
+
3247
+ .bpjs-file-row__retry {
3248
+ color: var(--bpjs-text-danger);
3249
+ font: var(--bpjs-text-sm-semibold);
3250
+ cursor: pointer;
3251
+ text-underline-offset: 2px;
3252
+ background: none;
3253
+ border: 0;
3254
+ margin: 0;
3255
+ padding: 0;
3256
+ text-decoration: underline;
3257
+ }
3258
+
3259
+ .bpjs-file-row__retry:focus-visible {
3260
+ box-shadow: var(--bpjs-shadow-focus);
3261
+ border-radius: var(--bpjs-radius-xs);
3262
+ outline: none;
3263
+ }
3264
+
3265
+ @media (prefers-reduced-motion: reduce) {
3266
+ .bpjs-file-row__bar > span, .bpjs-file-upload__zone {
3267
+ transition: none;
3268
+ }
3269
+ }
3270
+
3271
+ @media (forced-colors: active) {
3272
+ .bpjs-file-upload__zone, .bpjs-file-row {
3273
+ border-color: canvastext;
3274
+ }
3275
+ }