@justifi/webcomponents 0.4.0 → 0.6.1

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.
Files changed (60) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cjs/{index-4f2a13d2.js → index-bcfc2d01.js} +0 -25
  3. package/dist/cjs/justifi-bank-account-form.cjs.entry.js +1 -1
  4. package/dist/cjs/justifi-billing-form_2.cjs.entry.js +8 -5
  5. package/dist/cjs/justifi-card-form.cjs.entry.js +3 -2
  6. package/dist/cjs/justifi-payment-form.cjs.entry.js +7 -4
  7. package/dist/cjs/justifi-payment-method-form.cjs.entry.js +23 -5
  8. package/dist/cjs/justifi-payments-list.cjs.entry.js +1 -1
  9. package/dist/cjs/loader.cjs.js +2 -2
  10. package/dist/cjs/select-input_2.cjs.entry.js +5 -5
  11. package/dist/cjs/webcomponents.cjs.js +2 -2
  12. package/dist/collection/components/billing-form/billing-form.css +1546 -4
  13. package/dist/collection/components/billing-form/billing-form.js +2 -2
  14. package/dist/collection/components/card-form/card-form.js +19 -1
  15. package/dist/collection/components/payment-form/payment-form.css +1553 -0
  16. package/dist/collection/components/payment-form/payment-form.js +14 -3
  17. package/dist/collection/components/payment-form/payment-form.stories.js +0 -2
  18. package/dist/collection/components/payment-form/payment-method-selector.css +1254 -0
  19. package/dist/collection/components/payment-form/payment-method-selector.js +12 -2
  20. package/dist/collection/components/payment-method-form/payment-method-form.js +35 -2
  21. package/dist/collection/components/select-input/select-input.css +1248 -1
  22. package/dist/collection/components/select-input/select-input.js +2 -2
  23. package/dist/collection/components/text-input/text-input.css +1248 -1
  24. package/dist/collection/components/text-input/text-input.js +2 -2
  25. package/dist/components/billing-form.js +2 -2
  26. package/dist/components/justifi-card-form.js +3 -1
  27. package/dist/components/justifi-payment-form.js +8 -4
  28. package/dist/components/payment-method-form.js +23 -4
  29. package/dist/components/payment-method-selector.js +5 -2
  30. package/dist/components/select-input2.js +2 -2
  31. package/dist/components/text-input2.js +2 -2
  32. package/dist/esm/{index-3ce5521c.js → index-5676b87a.js} +0 -25
  33. package/dist/esm/justifi-bank-account-form.entry.js +1 -1
  34. package/dist/esm/justifi-billing-form_2.entry.js +8 -5
  35. package/dist/esm/justifi-card-form.entry.js +3 -2
  36. package/dist/esm/justifi-payment-form.entry.js +7 -4
  37. package/dist/esm/justifi-payment-method-form.entry.js +23 -5
  38. package/dist/esm/justifi-payments-list.entry.js +1 -1
  39. package/dist/esm/loader.js +2 -2
  40. package/dist/esm/select-input_2.entry.js +5 -5
  41. package/dist/esm/webcomponents.js +2 -2
  42. package/dist/types/components/card-form/card-form.d.ts +1 -0
  43. package/dist/types/components/payment-method-form/payment-method-form.d.ts +2 -0
  44. package/dist/types/components.d.ts +4 -0
  45. package/dist/webcomponents/p-165b4840.entry.js +1 -0
  46. package/dist/webcomponents/p-1c7556c1.entry.js +1 -0
  47. package/dist/webcomponents/{p-6633de1b.entry.js → p-5aec1d06.entry.js} +1 -1
  48. package/dist/webcomponents/p-81e20318.entry.js +1 -0
  49. package/dist/webcomponents/p-8f9a69d2.entry.js +1 -0
  50. package/dist/webcomponents/p-9a8abfcb.js +2 -0
  51. package/dist/webcomponents/p-ad6ad202.entry.js +1 -0
  52. package/dist/webcomponents/{p-6c3a226e.entry.js → p-f25081d7.entry.js} +1 -1
  53. package/dist/webcomponents/webcomponents.esm.js +1 -1
  54. package/package.json +4 -2
  55. package/dist/webcomponents/p-2e5be95e.entry.js +0 -1
  56. package/dist/webcomponents/p-68e47ee5.entry.js +0 -1
  57. package/dist/webcomponents/p-6a9c764f.entry.js +0 -1
  58. package/dist/webcomponents/p-763a2b4f.entry.js +0 -1
  59. package/dist/webcomponents/p-92ca574f.entry.js +0 -1
  60. package/dist/webcomponents/p-9f34a2c1.js +0 -2
@@ -0,0 +1,1254 @@
1
+ *,
2
+ *::before,
3
+ *::after {
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ @media (prefers-reduced-motion: no-preference) {
8
+ :root {
9
+ scroll-behavior: smooth;
10
+ }
11
+ }
12
+
13
+ body {
14
+ margin: 0;
15
+ font-family: var(--bs-body-font-family);
16
+ font-size: var(--bs-body-font-size);
17
+ font-weight: var(--bs-body-font-weight);
18
+ line-height: var(--bs-body-line-height);
19
+ color: var(--bs-body-color);
20
+ text-align: var(--bs-body-text-align);
21
+ background-color: var(--bs-body-bg);
22
+ -webkit-text-size-adjust: 100%;
23
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
24
+ }
25
+
26
+ hr {
27
+ margin: 1rem 0;
28
+ color: inherit;
29
+ border: 0;
30
+ border-top: 1px solid;
31
+ opacity: 0.25;
32
+ }
33
+
34
+ h6, h5, h4, h3, h2, h1 {
35
+ margin-top: 0;
36
+ margin-bottom: 0.5rem;
37
+ font-weight: 500;
38
+ line-height: 1.2;
39
+ }
40
+
41
+ h1 {
42
+ font-size: calc(1.375rem + 1.5vw);
43
+ }
44
+ @media (min-width: 1200px) {
45
+ h1 {
46
+ font-size: 2.5rem;
47
+ }
48
+ }
49
+
50
+ h2 {
51
+ font-size: calc(1.325rem + 0.9vw);
52
+ }
53
+ @media (min-width: 1200px) {
54
+ h2 {
55
+ font-size: 2rem;
56
+ }
57
+ }
58
+
59
+ h3 {
60
+ font-size: calc(1.3rem + 0.6vw);
61
+ }
62
+ @media (min-width: 1200px) {
63
+ h3 {
64
+ font-size: 1.75rem;
65
+ }
66
+ }
67
+
68
+ h4 {
69
+ font-size: calc(1.275rem + 0.3vw);
70
+ }
71
+ @media (min-width: 1200px) {
72
+ h4 {
73
+ font-size: 1.5rem;
74
+ }
75
+ }
76
+
77
+ h5 {
78
+ font-size: 1.25rem;
79
+ }
80
+
81
+ h6 {
82
+ font-size: 1rem;
83
+ }
84
+
85
+ p {
86
+ margin-top: 0;
87
+ margin-bottom: 1rem;
88
+ }
89
+
90
+ abbr[title] {
91
+ text-decoration: underline dotted;
92
+ cursor: help;
93
+ text-decoration-skip-ink: none;
94
+ }
95
+
96
+ address {
97
+ margin-bottom: 1rem;
98
+ font-style: normal;
99
+ line-height: inherit;
100
+ }
101
+
102
+ ol,
103
+ ul {
104
+ padding-left: 2rem;
105
+ }
106
+
107
+ ol,
108
+ ul,
109
+ dl {
110
+ margin-top: 0;
111
+ margin-bottom: 1rem;
112
+ }
113
+
114
+ ol ol,
115
+ ul ul,
116
+ ol ul,
117
+ ul ol {
118
+ margin-bottom: 0;
119
+ }
120
+
121
+ dt {
122
+ font-weight: 700;
123
+ }
124
+
125
+ dd {
126
+ margin-bottom: 0.5rem;
127
+ margin-left: 0;
128
+ }
129
+
130
+ blockquote {
131
+ margin: 0 0 1rem;
132
+ }
133
+
134
+ b,
135
+ strong {
136
+ font-weight: bolder;
137
+ }
138
+
139
+ small {
140
+ font-size: 0.875em;
141
+ }
142
+
143
+ mark {
144
+ padding: 0.1875em;
145
+ background-color: var(--bs-highlight-bg);
146
+ }
147
+
148
+ sub,
149
+ sup {
150
+ position: relative;
151
+ font-size: 0.75em;
152
+ line-height: 0;
153
+ vertical-align: baseline;
154
+ }
155
+
156
+ sub {
157
+ bottom: -0.25em;
158
+ }
159
+
160
+ sup {
161
+ top: -0.5em;
162
+ }
163
+
164
+ a {
165
+ color: var(--bs-link-color);
166
+ text-decoration: underline;
167
+ }
168
+ a:hover {
169
+ color: var(--bs-link-hover-color);
170
+ }
171
+
172
+ a:not([href]):not([class]), a:not([href]):not([class]):hover {
173
+ color: inherit;
174
+ text-decoration: none;
175
+ }
176
+
177
+ pre,
178
+ code,
179
+ kbd,
180
+ samp {
181
+ font-family: var(--bs-font-monospace);
182
+ font-size: 1em;
183
+ }
184
+
185
+ pre {
186
+ display: block;
187
+ margin-top: 0;
188
+ margin-bottom: 1rem;
189
+ overflow: auto;
190
+ font-size: 0.875em;
191
+ }
192
+ pre code {
193
+ font-size: inherit;
194
+ color: inherit;
195
+ word-break: normal;
196
+ }
197
+
198
+ code {
199
+ font-size: 0.875em;
200
+ color: var(--bs-code-color);
201
+ word-wrap: break-word;
202
+ }
203
+ a > code {
204
+ color: inherit;
205
+ }
206
+
207
+ kbd {
208
+ padding: 0.1875rem 0.375rem;
209
+ font-size: 0.875em;
210
+ color: var(--bs-body-bg);
211
+ background-color: var(--bs-body-color);
212
+ border-radius: 0.25rem;
213
+ }
214
+ kbd kbd {
215
+ padding: 0;
216
+ font-size: 1em;
217
+ }
218
+
219
+ figure {
220
+ margin: 0 0 1rem;
221
+ }
222
+
223
+ img,
224
+ svg {
225
+ vertical-align: middle;
226
+ }
227
+
228
+ table {
229
+ caption-side: bottom;
230
+ border-collapse: collapse;
231
+ }
232
+
233
+ caption {
234
+ padding-top: 0.5rem;
235
+ padding-bottom: 0.5rem;
236
+ color: #6c757d;
237
+ text-align: left;
238
+ }
239
+
240
+ th {
241
+ text-align: inherit;
242
+ text-align: -webkit-match-parent;
243
+ }
244
+
245
+ thead,
246
+ tbody,
247
+ tfoot,
248
+ tr,
249
+ td,
250
+ th {
251
+ border-color: inherit;
252
+ border-style: solid;
253
+ border-width: 0;
254
+ }
255
+
256
+ label {
257
+ display: inline-block;
258
+ }
259
+
260
+ button {
261
+ border-radius: 0;
262
+ }
263
+
264
+ button:focus:not(:focus-visible) {
265
+ outline: 0;
266
+ }
267
+
268
+ input,
269
+ button,
270
+ select,
271
+ optgroup,
272
+ textarea {
273
+ margin: 0;
274
+ font-family: inherit;
275
+ font-size: inherit;
276
+ line-height: inherit;
277
+ }
278
+
279
+ button,
280
+ select {
281
+ text-transform: none;
282
+ }
283
+
284
+ [role=button] {
285
+ cursor: pointer;
286
+ }
287
+
288
+ select {
289
+ word-wrap: normal;
290
+ }
291
+ select:disabled {
292
+ opacity: 1;
293
+ }
294
+
295
+ [list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
296
+ display: none !important;
297
+ }
298
+
299
+ button,
300
+ [type=button],
301
+ [type=reset],
302
+ [type=submit] {
303
+ -webkit-appearance: button;
304
+ }
305
+ button:not(:disabled),
306
+ [type=button]:not(:disabled),
307
+ [type=reset]:not(:disabled),
308
+ [type=submit]:not(:disabled) {
309
+ cursor: pointer;
310
+ }
311
+
312
+ ::-moz-focus-inner {
313
+ padding: 0;
314
+ border-style: none;
315
+ }
316
+
317
+ textarea {
318
+ resize: vertical;
319
+ }
320
+
321
+ fieldset {
322
+ min-width: 0;
323
+ padding: 0;
324
+ margin: 0;
325
+ border: 0;
326
+ }
327
+
328
+ legend {
329
+ float: left;
330
+ width: 100%;
331
+ padding: 0;
332
+ margin-bottom: 0.5rem;
333
+ font-size: calc(1.275rem + 0.3vw);
334
+ line-height: inherit;
335
+ }
336
+ @media (min-width: 1200px) {
337
+ legend {
338
+ font-size: 1.5rem;
339
+ }
340
+ }
341
+ legend + * {
342
+ clear: left;
343
+ }
344
+
345
+ ::-webkit-datetime-edit-fields-wrapper,
346
+ ::-webkit-datetime-edit-text,
347
+ ::-webkit-datetime-edit-minute,
348
+ ::-webkit-datetime-edit-hour-field,
349
+ ::-webkit-datetime-edit-day-field,
350
+ ::-webkit-datetime-edit-month-field,
351
+ ::-webkit-datetime-edit-year-field {
352
+ padding: 0;
353
+ }
354
+
355
+ ::-webkit-inner-spin-button {
356
+ height: auto;
357
+ }
358
+
359
+ [type=search] {
360
+ outline-offset: -2px;
361
+ -webkit-appearance: textfield;
362
+ }
363
+
364
+ /* rtl:raw:
365
+ [type="tel"],
366
+ [type="url"],
367
+ [type="email"],
368
+ [type="number"] {
369
+ direction: ltr;
370
+ }
371
+ */
372
+ ::-webkit-search-decoration {
373
+ -webkit-appearance: none;
374
+ }
375
+
376
+ ::-webkit-color-swatch-wrapper {
377
+ padding: 0;
378
+ }
379
+
380
+ ::file-selector-button {
381
+ font: inherit;
382
+ -webkit-appearance: button;
383
+ }
384
+
385
+ output {
386
+ display: inline-block;
387
+ }
388
+
389
+ iframe {
390
+ border: 0;
391
+ }
392
+
393
+ summary {
394
+ display: list-item;
395
+ cursor: pointer;
396
+ }
397
+
398
+ progress {
399
+ vertical-align: baseline;
400
+ }
401
+
402
+ [hidden] {
403
+ display: none !important;
404
+ }
405
+
406
+ :root {
407
+ --bs-blue: #0d6efd;
408
+ --bs-indigo: #6610f2;
409
+ --bs-purple: #6f42c1;
410
+ --bs-pink: #d63384;
411
+ --bs-red: #dc3545;
412
+ --bs-orange: #fd7e14;
413
+ --bs-yellow: #ffc107;
414
+ --bs-green: #198754;
415
+ --bs-teal: #20c997;
416
+ --bs-cyan: #0dcaf0;
417
+ --bs-black: #000;
418
+ --bs-white: #fff;
419
+ --bs-gray: #6c757d;
420
+ --bs-gray-dark: #343a40;
421
+ --bs-gray-100: #f8f9fa;
422
+ --bs-gray-200: #e9ecef;
423
+ --bs-gray-300: #dee2e6;
424
+ --bs-gray-400: #ced4da;
425
+ --bs-gray-500: #adb5bd;
426
+ --bs-gray-600: #6c757d;
427
+ --bs-gray-700: #495057;
428
+ --bs-gray-800: #343a40;
429
+ --bs-gray-900: #212529;
430
+ --bs-primary: #0d6efd;
431
+ --bs-secondary: #6c757d;
432
+ --bs-success: #198754;
433
+ --bs-info: #0dcaf0;
434
+ --bs-warning: #ffc107;
435
+ --bs-danger: #dc3545;
436
+ --bs-light: #f8f9fa;
437
+ --bs-dark: #212529;
438
+ --bs-primary-rgb: 13, 110, 253;
439
+ --bs-secondary-rgb: 108, 117, 125;
440
+ --bs-success-rgb: 25, 135, 84;
441
+ --bs-info-rgb: 13, 202, 240;
442
+ --bs-warning-rgb: 255, 193, 7;
443
+ --bs-danger-rgb: 220, 53, 69;
444
+ --bs-light-rgb: 248, 249, 250;
445
+ --bs-dark-rgb: 33, 37, 41;
446
+ --bs-white-rgb: 255, 255, 255;
447
+ --bs-black-rgb: 0, 0, 0;
448
+ --bs-body-color-rgb: 33, 37, 41;
449
+ --bs-body-bg-rgb: 255, 255, 255;
450
+ --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
451
+ --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
452
+ --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
453
+ --bs-body-font-family: var(--bs-font-sans-serif);
454
+ --bs-body-font-size: 1rem;
455
+ --bs-body-font-weight: 400;
456
+ --bs-body-line-height: 1.5;
457
+ --bs-body-color: #212529;
458
+ --bs-body-bg: #fff;
459
+ --bs-border-width: 1px;
460
+ --bs-border-style: solid;
461
+ --bs-border-color: #dee2e6;
462
+ --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
463
+ --bs-border-radius: 0.375rem;
464
+ --bs-border-radius-sm: 0.25rem;
465
+ --bs-border-radius-lg: 0.5rem;
466
+ --bs-border-radius-xl: 1rem;
467
+ --bs-border-radius-2xl: 2rem;
468
+ --bs-border-radius-pill: 50rem;
469
+ --bs-link-color: #0d6efd;
470
+ --bs-link-hover-color: #0a58ca;
471
+ --bs-code-color: #d63384;
472
+ --bs-highlight-bg: #fff3cd;
473
+ }
474
+
475
+ .form-label {
476
+ margin-bottom: 0.5rem;
477
+ }
478
+
479
+ .col-form-label {
480
+ padding-top: calc(0.375rem + 1px);
481
+ padding-bottom: calc(0.375rem + 1px);
482
+ margin-bottom: 0;
483
+ font-size: inherit;
484
+ line-height: 1.5;
485
+ }
486
+
487
+ .col-form-label-lg {
488
+ padding-top: calc(0.5rem + 1px);
489
+ padding-bottom: calc(0.5rem + 1px);
490
+ font-size: 1.25rem;
491
+ }
492
+
493
+ .col-form-label-sm {
494
+ padding-top: calc(0.25rem + 1px);
495
+ padding-bottom: calc(0.25rem + 1px);
496
+ font-size: 0.875rem;
497
+ }
498
+
499
+ .form-text {
500
+ margin-top: 0.25rem;
501
+ font-size: 0.875em;
502
+ color: #6c757d;
503
+ }
504
+
505
+ .form-control {
506
+ display: block;
507
+ width: 100%;
508
+ padding: 0.375rem 0.75rem;
509
+ font-size: 1rem;
510
+ font-weight: 400;
511
+ line-height: 1.5;
512
+ color: #212529;
513
+ background-color: #fff;
514
+ background-clip: padding-box;
515
+ border: 1px solid #ced4da;
516
+ appearance: none;
517
+ border-radius: 0.375rem;
518
+ transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
519
+ }
520
+ @media (prefers-reduced-motion: reduce) {
521
+ .form-control {
522
+ transition: none;
523
+ }
524
+ }
525
+ .form-control[type=file] {
526
+ overflow: hidden;
527
+ }
528
+ .form-control[type=file]:not(:disabled):not([readonly]) {
529
+ cursor: pointer;
530
+ }
531
+ .form-control:focus {
532
+ color: #212529;
533
+ background-color: #fff;
534
+ border-color: #86b7fe;
535
+ outline: 0;
536
+ box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
537
+ }
538
+ .form-control::-webkit-date-and-time-value {
539
+ height: 1.5em;
540
+ }
541
+ .form-control::placeholder {
542
+ color: #6c757d;
543
+ opacity: 1;
544
+ }
545
+ .form-control:disabled {
546
+ background-color: #e9ecef;
547
+ opacity: 1;
548
+ }
549
+ .form-control::file-selector-button {
550
+ padding: 0.375rem 0.75rem;
551
+ margin: -0.375rem -0.75rem;
552
+ margin-inline-end: 0.75rem;
553
+ color: #212529;
554
+ background-color: #e9ecef;
555
+ pointer-events: none;
556
+ border-color: inherit;
557
+ border-style: solid;
558
+ border-width: 0;
559
+ border-inline-end-width: 1px;
560
+ border-radius: 0;
561
+ transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
562
+ }
563
+ @media (prefers-reduced-motion: reduce) {
564
+ .form-control::file-selector-button {
565
+ transition: none;
566
+ }
567
+ }
568
+ .form-control:hover:not(:disabled):not([readonly])::file-selector-button {
569
+ background-color: #dde0e3;
570
+ }
571
+
572
+ .form-control-plaintext {
573
+ display: block;
574
+ width: 100%;
575
+ padding: 0.375rem 0;
576
+ margin-bottom: 0;
577
+ line-height: 1.5;
578
+ color: #212529;
579
+ background-color: transparent;
580
+ border: solid transparent;
581
+ border-width: 1px 0;
582
+ }
583
+ .form-control-plaintext:focus {
584
+ outline: 0;
585
+ }
586
+ .form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
587
+ padding-right: 0;
588
+ padding-left: 0;
589
+ }
590
+
591
+ .form-control-sm {
592
+ min-height: calc(1.5em + 0.5rem + 2px);
593
+ padding: 0.25rem 0.5rem;
594
+ font-size: 0.875rem;
595
+ border-radius: 0.25rem;
596
+ }
597
+ .form-control-sm::file-selector-button {
598
+ padding: 0.25rem 0.5rem;
599
+ margin: -0.25rem -0.5rem;
600
+ margin-inline-end: 0.5rem;
601
+ }
602
+
603
+ .form-control-lg {
604
+ min-height: calc(1.5em + 1rem + 2px);
605
+ padding: 0.5rem 1rem;
606
+ font-size: 1.25rem;
607
+ border-radius: 0.5rem;
608
+ }
609
+ .form-control-lg::file-selector-button {
610
+ padding: 0.5rem 1rem;
611
+ margin: -0.5rem -1rem;
612
+ margin-inline-end: 1rem;
613
+ }
614
+
615
+ textarea.form-control {
616
+ min-height: calc(1.5em + 0.75rem + 2px);
617
+ }
618
+ textarea.form-control-sm {
619
+ min-height: calc(1.5em + 0.5rem + 2px);
620
+ }
621
+ textarea.form-control-lg {
622
+ min-height: calc(1.5em + 1rem + 2px);
623
+ }
624
+
625
+ .form-control-color {
626
+ width: 3rem;
627
+ height: calc(1.5em + 0.75rem + 2px);
628
+ padding: 0.375rem;
629
+ }
630
+ .form-control-color:not(:disabled):not([readonly]) {
631
+ cursor: pointer;
632
+ }
633
+ .form-control-color::-moz-color-swatch {
634
+ border: 0 !important;
635
+ border-radius: 0.375rem;
636
+ }
637
+ .form-control-color::-webkit-color-swatch {
638
+ border-radius: 0.375rem;
639
+ }
640
+ .form-control-color.form-control-sm {
641
+ height: calc(1.5em + 0.5rem + 2px);
642
+ }
643
+ .form-control-color.form-control-lg {
644
+ height: calc(1.5em + 1rem + 2px);
645
+ }
646
+
647
+ .form-select {
648
+ display: block;
649
+ width: 100%;
650
+ padding: 0.375rem 2.25rem 0.375rem 0.75rem;
651
+ -moz-padding-start: calc(0.75rem - 3px);
652
+ font-size: 1rem;
653
+ font-weight: 400;
654
+ line-height: 1.5;
655
+ color: #212529;
656
+ background-color: #fff;
657
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
658
+ background-repeat: no-repeat;
659
+ background-position: right 0.75rem center;
660
+ background-size: 16px 12px;
661
+ border: 1px solid #ced4da;
662
+ border-radius: 0.375rem;
663
+ transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
664
+ appearance: none;
665
+ }
666
+ @media (prefers-reduced-motion: reduce) {
667
+ .form-select {
668
+ transition: none;
669
+ }
670
+ }
671
+ .form-select:focus {
672
+ border-color: #86b7fe;
673
+ outline: 0;
674
+ box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
675
+ }
676
+ .form-select[multiple], .form-select[size]:not([size="1"]) {
677
+ padding-right: 0.75rem;
678
+ background-image: none;
679
+ }
680
+ .form-select:disabled {
681
+ background-color: #e9ecef;
682
+ }
683
+ .form-select:-moz-focusring {
684
+ color: transparent;
685
+ text-shadow: 0 0 0 #212529;
686
+ }
687
+
688
+ .form-select-sm {
689
+ padding-top: 0.25rem;
690
+ padding-bottom: 0.25rem;
691
+ padding-left: 0.5rem;
692
+ font-size: 0.875rem;
693
+ border-radius: 0.25rem;
694
+ }
695
+
696
+ .form-select-lg {
697
+ padding-top: 0.5rem;
698
+ padding-bottom: 0.5rem;
699
+ padding-left: 1rem;
700
+ font-size: 1.25rem;
701
+ border-radius: 0.5rem;
702
+ }
703
+
704
+ .form-check {
705
+ display: block;
706
+ min-height: 1.5rem;
707
+ padding-left: 1.5em;
708
+ margin-bottom: 0.125rem;
709
+ }
710
+ .form-check .form-check-input {
711
+ float: left;
712
+ margin-left: -1.5em;
713
+ }
714
+
715
+ .form-check-reverse {
716
+ padding-right: 1.5em;
717
+ padding-left: 0;
718
+ text-align: right;
719
+ }
720
+ .form-check-reverse .form-check-input {
721
+ float: right;
722
+ margin-right: -1.5em;
723
+ margin-left: 0;
724
+ }
725
+
726
+ .form-check-input {
727
+ width: 1em;
728
+ height: 1em;
729
+ margin-top: 0.25em;
730
+ vertical-align: top;
731
+ background-color: #fff;
732
+ background-repeat: no-repeat;
733
+ background-position: center;
734
+ background-size: contain;
735
+ border: 1px solid rgba(0, 0, 0, 0.25);
736
+ appearance: none;
737
+ print-color-adjust: exact;
738
+ }
739
+ .form-check-input[type=checkbox] {
740
+ border-radius: 0.25em;
741
+ }
742
+ .form-check-input[type=radio] {
743
+ border-radius: 50%;
744
+ }
745
+ .form-check-input:active {
746
+ filter: brightness(90%);
747
+ }
748
+ .form-check-input:focus {
749
+ border-color: #86b7fe;
750
+ outline: 0;
751
+ box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
752
+ }
753
+ .form-check-input:checked {
754
+ background-color: #0d6efd;
755
+ border-color: #0d6efd;
756
+ }
757
+ .form-check-input:checked[type=checkbox] {
758
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
759
+ }
760
+ .form-check-input:checked[type=radio] {
761
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
762
+ }
763
+ .form-check-input[type=checkbox]:indeterminate {
764
+ background-color: #0d6efd;
765
+ border-color: #0d6efd;
766
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
767
+ }
768
+ .form-check-input:disabled {
769
+ pointer-events: none;
770
+ filter: none;
771
+ opacity: 0.5;
772
+ }
773
+ .form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
774
+ cursor: default;
775
+ opacity: 0.5;
776
+ }
777
+
778
+ .form-switch {
779
+ padding-left: 2.5em;
780
+ }
781
+ .form-switch .form-check-input {
782
+ width: 2em;
783
+ margin-left: -2.5em;
784
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
785
+ background-position: left center;
786
+ border-radius: 2em;
787
+ transition: background-position 0.15s ease-in-out;
788
+ }
789
+ @media (prefers-reduced-motion: reduce) {
790
+ .form-switch .form-check-input {
791
+ transition: none;
792
+ }
793
+ }
794
+ .form-switch .form-check-input:focus {
795
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e");
796
+ }
797
+ .form-switch .form-check-input:checked {
798
+ background-position: right center;
799
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
800
+ }
801
+ .form-switch.form-check-reverse {
802
+ padding-right: 2.5em;
803
+ padding-left: 0;
804
+ }
805
+ .form-switch.form-check-reverse .form-check-input {
806
+ margin-right: -2.5em;
807
+ margin-left: 0;
808
+ }
809
+
810
+ .form-check-inline {
811
+ display: inline-block;
812
+ margin-right: 1rem;
813
+ }
814
+
815
+ .btn-check {
816
+ position: absolute;
817
+ clip: rect(0, 0, 0, 0);
818
+ pointer-events: none;
819
+ }
820
+ .btn-check[disabled] + .btn, .btn-check:disabled + .btn {
821
+ pointer-events: none;
822
+ filter: none;
823
+ opacity: 0.65;
824
+ }
825
+
826
+ .form-range {
827
+ width: 100%;
828
+ height: 1.5rem;
829
+ padding: 0;
830
+ background-color: transparent;
831
+ appearance: none;
832
+ }
833
+ .form-range:focus {
834
+ outline: 0;
835
+ }
836
+ .form-range:focus::-webkit-slider-thumb {
837
+ box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
838
+ }
839
+ .form-range:focus::-moz-range-thumb {
840
+ box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
841
+ }
842
+ .form-range::-moz-focus-outer {
843
+ border: 0;
844
+ }
845
+ .form-range::-webkit-slider-thumb {
846
+ width: 1rem;
847
+ height: 1rem;
848
+ margin-top: -0.25rem;
849
+ background-color: #0d6efd;
850
+ border: 0;
851
+ border-radius: 1rem;
852
+ transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
853
+ appearance: none;
854
+ }
855
+ @media (prefers-reduced-motion: reduce) {
856
+ .form-range::-webkit-slider-thumb {
857
+ transition: none;
858
+ }
859
+ }
860
+ .form-range::-webkit-slider-thumb:active {
861
+ background-color: #b6d4fe;
862
+ }
863
+ .form-range::-webkit-slider-runnable-track {
864
+ width: 100%;
865
+ height: 0.5rem;
866
+ color: transparent;
867
+ cursor: pointer;
868
+ background-color: #dee2e6;
869
+ border-color: transparent;
870
+ border-radius: 1rem;
871
+ }
872
+ .form-range::-moz-range-thumb {
873
+ width: 1rem;
874
+ height: 1rem;
875
+ background-color: #0d6efd;
876
+ border: 0;
877
+ border-radius: 1rem;
878
+ transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
879
+ appearance: none;
880
+ }
881
+ @media (prefers-reduced-motion: reduce) {
882
+ .form-range::-moz-range-thumb {
883
+ transition: none;
884
+ }
885
+ }
886
+ .form-range::-moz-range-thumb:active {
887
+ background-color: #b6d4fe;
888
+ }
889
+ .form-range::-moz-range-track {
890
+ width: 100%;
891
+ height: 0.5rem;
892
+ color: transparent;
893
+ cursor: pointer;
894
+ background-color: #dee2e6;
895
+ border-color: transparent;
896
+ border-radius: 1rem;
897
+ }
898
+ .form-range:disabled {
899
+ pointer-events: none;
900
+ }
901
+ .form-range:disabled::-webkit-slider-thumb {
902
+ background-color: #adb5bd;
903
+ }
904
+ .form-range:disabled::-moz-range-thumb {
905
+ background-color: #adb5bd;
906
+ }
907
+
908
+ .form-floating {
909
+ position: relative;
910
+ }
911
+ .form-floating > .form-control,
912
+ .form-floating > .form-control-plaintext,
913
+ .form-floating > .form-select {
914
+ height: calc(3.5rem + 2px);
915
+ line-height: 1.25;
916
+ }
917
+ .form-floating > label {
918
+ position: absolute;
919
+ top: 0;
920
+ left: 0;
921
+ width: 100%;
922
+ height: 100%;
923
+ padding: 1rem 0.75rem;
924
+ overflow: hidden;
925
+ text-align: start;
926
+ text-overflow: ellipsis;
927
+ white-space: nowrap;
928
+ pointer-events: none;
929
+ border: 1px solid transparent;
930
+ transform-origin: 0 0;
931
+ transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
932
+ }
933
+ @media (prefers-reduced-motion: reduce) {
934
+ .form-floating > label {
935
+ transition: none;
936
+ }
937
+ }
938
+ .form-floating > .form-control,
939
+ .form-floating > .form-control-plaintext {
940
+ padding: 1rem 0.75rem;
941
+ }
942
+ .form-floating > .form-control::placeholder,
943
+ .form-floating > .form-control-plaintext::placeholder {
944
+ color: transparent;
945
+ }
946
+ .form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),
947
+ .form-floating > .form-control-plaintext:focus,
948
+ .form-floating > .form-control-plaintext:not(:placeholder-shown) {
949
+ padding-top: 1.625rem;
950
+ padding-bottom: 0.625rem;
951
+ }
952
+ .form-floating > .form-control:-webkit-autofill,
953
+ .form-floating > .form-control-plaintext:-webkit-autofill {
954
+ padding-top: 1.625rem;
955
+ padding-bottom: 0.625rem;
956
+ }
957
+ .form-floating > .form-select {
958
+ padding-top: 1.625rem;
959
+ padding-bottom: 0.625rem;
960
+ }
961
+ .form-floating > .form-control:focus ~ label,
962
+ .form-floating > .form-control:not(:placeholder-shown) ~ label,
963
+ .form-floating > .form-control-plaintext ~ label,
964
+ .form-floating > .form-select ~ label {
965
+ opacity: 0.65;
966
+ transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
967
+ }
968
+ .form-floating > .form-control:-webkit-autofill ~ label {
969
+ opacity: 0.65;
970
+ transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
971
+ }
972
+ .form-floating > .form-control-plaintext ~ label {
973
+ border-width: 1px 0;
974
+ }
975
+
976
+ .input-group {
977
+ position: relative;
978
+ display: flex;
979
+ flex-wrap: wrap;
980
+ align-items: stretch;
981
+ width: 100%;
982
+ }
983
+ .input-group > .form-control,
984
+ .input-group > .form-select,
985
+ .input-group > .form-floating {
986
+ position: relative;
987
+ flex: 1 1 auto;
988
+ width: 1%;
989
+ min-width: 0;
990
+ }
991
+ .input-group > .form-control:focus,
992
+ .input-group > .form-select:focus,
993
+ .input-group > .form-floating:focus-within {
994
+ z-index: 5;
995
+ }
996
+ .input-group .btn {
997
+ position: relative;
998
+ z-index: 2;
999
+ }
1000
+ .input-group .btn:focus {
1001
+ z-index: 5;
1002
+ }
1003
+
1004
+ .input-group-text {
1005
+ display: flex;
1006
+ align-items: center;
1007
+ padding: 0.375rem 0.75rem;
1008
+ font-size: 1rem;
1009
+ font-weight: 400;
1010
+ line-height: 1.5;
1011
+ color: #212529;
1012
+ text-align: center;
1013
+ white-space: nowrap;
1014
+ background-color: #e9ecef;
1015
+ border: 1px solid #ced4da;
1016
+ border-radius: 0.375rem;
1017
+ }
1018
+
1019
+ .input-group-lg > .form-control,
1020
+ .input-group-lg > .form-select,
1021
+ .input-group-lg > .input-group-text,
1022
+ .input-group-lg > .btn {
1023
+ padding: 0.5rem 1rem;
1024
+ font-size: 1.25rem;
1025
+ border-radius: 0.5rem;
1026
+ }
1027
+
1028
+ .input-group-sm > .form-control,
1029
+ .input-group-sm > .form-select,
1030
+ .input-group-sm > .input-group-text,
1031
+ .input-group-sm > .btn {
1032
+ padding: 0.25rem 0.5rem;
1033
+ font-size: 0.875rem;
1034
+ border-radius: 0.25rem;
1035
+ }
1036
+
1037
+ .input-group-lg > .form-select,
1038
+ .input-group-sm > .form-select {
1039
+ padding-right: 3rem;
1040
+ }
1041
+
1042
+ .input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
1043
+ .input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
1044
+ .input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
1045
+ .input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {
1046
+ border-top-right-radius: 0;
1047
+ border-bottom-right-radius: 0;
1048
+ }
1049
+ .input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
1050
+ .input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),
1051
+ .input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,
1052
+ .input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {
1053
+ border-top-right-radius: 0;
1054
+ border-bottom-right-radius: 0;
1055
+ }
1056
+ .input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
1057
+ margin-left: -1px;
1058
+ border-top-left-radius: 0;
1059
+ border-bottom-left-radius: 0;
1060
+ }
1061
+ .input-group > .form-floating:not(:first-child) > .form-control,
1062
+ .input-group > .form-floating:not(:first-child) > .form-select {
1063
+ border-top-left-radius: 0;
1064
+ border-bottom-left-radius: 0;
1065
+ }
1066
+
1067
+ .valid-feedback {
1068
+ display: none;
1069
+ width: 100%;
1070
+ margin-top: 0.25rem;
1071
+ font-size: 0.875em;
1072
+ color: #198754;
1073
+ }
1074
+
1075
+ .valid-tooltip {
1076
+ position: absolute;
1077
+ top: 100%;
1078
+ z-index: 5;
1079
+ display: none;
1080
+ max-width: 100%;
1081
+ padding: 0.25rem 0.5rem;
1082
+ margin-top: 0.1rem;
1083
+ font-size: 0.875rem;
1084
+ color: #fff;
1085
+ background-color: rgba(25, 135, 84, 0.9);
1086
+ border-radius: 0.375rem;
1087
+ }
1088
+
1089
+ .was-validated :valid ~ .valid-feedback,
1090
+ .was-validated :valid ~ .valid-tooltip,
1091
+ .is-valid ~ .valid-feedback,
1092
+ .is-valid ~ .valid-tooltip {
1093
+ display: block;
1094
+ }
1095
+
1096
+ .was-validated .form-control:valid, .form-control.is-valid {
1097
+ border-color: #198754;
1098
+ padding-right: calc(1.5em + 0.75rem);
1099
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
1100
+ background-repeat: no-repeat;
1101
+ background-position: right calc(0.375em + 0.1875rem) center;
1102
+ background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
1103
+ }
1104
+ .was-validated .form-control:valid:focus, .form-control.is-valid:focus {
1105
+ border-color: #198754;
1106
+ box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
1107
+ }
1108
+
1109
+ .was-validated textarea.form-control:valid, textarea.form-control.is-valid {
1110
+ padding-right: calc(1.5em + 0.75rem);
1111
+ background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
1112
+ }
1113
+
1114
+ .was-validated .form-select:valid, .form-select.is-valid {
1115
+ border-color: #198754;
1116
+ }
1117
+ .was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
1118
+ padding-right: 4.125rem;
1119
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
1120
+ background-position: right 0.75rem center, center right 2.25rem;
1121
+ background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
1122
+ }
1123
+ .was-validated .form-select:valid:focus, .form-select.is-valid:focus {
1124
+ border-color: #198754;
1125
+ box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
1126
+ }
1127
+
1128
+ .was-validated .form-control-color:valid, .form-control-color.is-valid {
1129
+ width: calc(3rem + calc(1.5em + 0.75rem));
1130
+ }
1131
+
1132
+ .was-validated .form-check-input:valid, .form-check-input.is-valid {
1133
+ border-color: #198754;
1134
+ }
1135
+ .was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
1136
+ background-color: #198754;
1137
+ }
1138
+ .was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
1139
+ box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
1140
+ }
1141
+ .was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
1142
+ color: #198754;
1143
+ }
1144
+
1145
+ .form-check-inline .form-check-input ~ .valid-feedback {
1146
+ margin-left: 0.5em;
1147
+ }
1148
+
1149
+ .was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,
1150
+ .was-validated .input-group > .form-select:not(:focus):valid,
1151
+ .input-group > .form-select:not(:focus).is-valid,
1152
+ .was-validated .input-group > .form-floating:not(:focus-within):valid,
1153
+ .input-group > .form-floating:not(:focus-within).is-valid {
1154
+ z-index: 3;
1155
+ }
1156
+
1157
+ .invalid-feedback {
1158
+ display: none;
1159
+ width: 100%;
1160
+ margin-top: 0.25rem;
1161
+ font-size: 0.875em;
1162
+ color: #dc3545;
1163
+ }
1164
+
1165
+ .invalid-tooltip {
1166
+ position: absolute;
1167
+ top: 100%;
1168
+ z-index: 5;
1169
+ display: none;
1170
+ max-width: 100%;
1171
+ padding: 0.25rem 0.5rem;
1172
+ margin-top: 0.1rem;
1173
+ font-size: 0.875rem;
1174
+ color: #fff;
1175
+ background-color: rgba(220, 53, 69, 0.9);
1176
+ border-radius: 0.375rem;
1177
+ }
1178
+
1179
+ .was-validated :invalid ~ .invalid-feedback,
1180
+ .was-validated :invalid ~ .invalid-tooltip,
1181
+ .is-invalid ~ .invalid-feedback,
1182
+ .is-invalid ~ .invalid-tooltip {
1183
+ display: block;
1184
+ }
1185
+
1186
+ .was-validated .form-control:invalid, .form-control.is-invalid {
1187
+ border-color: #dc3545;
1188
+ padding-right: calc(1.5em + 0.75rem);
1189
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
1190
+ background-repeat: no-repeat;
1191
+ background-position: right calc(0.375em + 0.1875rem) center;
1192
+ background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
1193
+ }
1194
+ .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
1195
+ border-color: #dc3545;
1196
+ box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
1197
+ }
1198
+
1199
+ .was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
1200
+ padding-right: calc(1.5em + 0.75rem);
1201
+ background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
1202
+ }
1203
+
1204
+ .was-validated .form-select:invalid, .form-select.is-invalid {
1205
+ border-color: #dc3545;
1206
+ }
1207
+ .was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
1208
+ padding-right: 4.125rem;
1209
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
1210
+ background-position: right 0.75rem center, center right 2.25rem;
1211
+ background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
1212
+ }
1213
+ .was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
1214
+ border-color: #dc3545;
1215
+ box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
1216
+ }
1217
+
1218
+ .was-validated .form-control-color:invalid, .form-control-color.is-invalid {
1219
+ width: calc(3rem + calc(1.5em + 0.75rem));
1220
+ }
1221
+
1222
+ .was-validated .form-check-input:invalid, .form-check-input.is-invalid {
1223
+ border-color: #dc3545;
1224
+ }
1225
+ .was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
1226
+ background-color: #dc3545;
1227
+ }
1228
+ .was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
1229
+ box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
1230
+ }
1231
+ .was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
1232
+ color: #dc3545;
1233
+ }
1234
+
1235
+ .form-check-inline .form-check-input ~ .invalid-feedback {
1236
+ margin-left: 0.5em;
1237
+ }
1238
+
1239
+ .was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,
1240
+ .was-validated .input-group > .form-select:not(:focus):invalid,
1241
+ .input-group > .form-select:not(:focus).is-invalid,
1242
+ .was-validated .input-group > .form-floating:not(:focus-within):invalid,
1243
+ .input-group > .form-floating:not(:focus-within).is-invalid {
1244
+ z-index: 4;
1245
+ }
1246
+
1247
+ :host {
1248
+ font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
1249
+ font-size: 1rem;
1250
+ font-weight: 400;
1251
+ line-height: 1.5;
1252
+ color: #212529;
1253
+ display: block;
1254
+ }