@wpmoo/ui 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -24,7 +24,9 @@ Moo UI vendors a build-time icon metadata subset from Iconify's Lucide icon
24
24
  set at `src/icons/lucide-icons.json` and renders selected icons into the
25
25
  generated catalog. Lucide is licensed under the ISC License. The source
26
26
  metadata identifies the Lucide project, its contributors, and the upstream
27
- license URL.
27
+ license URL. The root favicon set (`favicon.svg`, `favicon.ico`,
28
+ `apple-touch-icon.png`, `icon-192.png`, and `icon-512.png`) uses the Lucide
29
+ Blocks geometry and remains covered by the same ISC license notice.
28
30
 
29
31
  ## Geist
30
32
 
@@ -87,10 +87,10 @@
87
87
  --bs-secondary-color-rgb: 24, 24, 27;
88
88
  --bs-secondary-bg: #e9ecef;
89
89
  --bs-secondary-bg-rgb: 233, 236, 239;
90
- --bs-tertiary-color: rgba(24, 24, 27, 0.5);
91
- --bs-tertiary-color-rgb: 24, 24, 27;
92
- --bs-tertiary-bg: #f8f9fa;
93
- --bs-tertiary-bg-rgb: 248, 249, 250;
90
+ --bs-tertiary-color: #a1a1aa;
91
+ --bs-tertiary-color-rgb: 161, 161, 170;
92
+ --bs-tertiary-bg: #fafafa;
93
+ --bs-tertiary-bg-rgb: 250, 250, 250;
94
94
  --bs-heading-color: inherit;
95
95
  --bs-link-color: #171717;
96
96
  --bs-link-color-rgb: 23, 23, 23;
@@ -103,7 +103,7 @@
103
103
  --bs-border-width: 1px;
104
104
  --bs-border-style: solid;
105
105
  --bs-border-color: #e4e4e7;
106
- --bs-border-color-translucent: rgba(10, 10, 10, 0.175);
106
+ --bs-border-color-translucent: rgba(24, 24, 27, 0.175);
107
107
  --bs-border-radius: 0.5rem;
108
108
  --bs-border-radius-sm: 0.375rem;
109
109
  --bs-border-radius-lg: 0.625rem;
@@ -136,10 +136,10 @@
136
136
  --bs-secondary-color-rgb: 222, 226, 230;
137
137
  --bs-secondary-bg: #343a40;
138
138
  --bs-secondary-bg-rgb: 52, 58, 64;
139
- --bs-tertiary-color: rgba(222, 226, 230, 0.5);
140
- --bs-tertiary-color-rgb: 222, 226, 230;
141
- --bs-tertiary-bg: #2b3035;
142
- --bs-tertiary-bg-rgb: 43, 48, 53;
139
+ --bs-tertiary-color: #71717a;
140
+ --bs-tertiary-color-rgb: 113, 113, 122;
141
+ --bs-tertiary-bg: #202024;
142
+ --bs-tertiary-bg-rgb: 32, 32, 36;
143
143
  --bs-primary-text-emphasis: #747474;
144
144
  --bs-secondary-text-emphasis: #f8f8f9;
145
145
  --bs-success-text-emphasis: #73b38a;
@@ -173,7 +173,7 @@
173
173
  --bs-highlight-color: #dee2e6;
174
174
  --bs-highlight-bg: #664d03;
175
175
  --bs-border-color: #495057;
176
- --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
176
+ --bs-border-color-translucent: rgba(250, 250, 250, 0.15);
177
177
  --bs-form-valid-color: #75b798;
178
178
  --bs-form-valid-border-color: #75b798;
179
179
  --bs-form-invalid-color: #ea868f;
@@ -2126,7 +2126,7 @@ progress {
2126
2126
  padding-bottom: calc(0.25rem + var(--bs-border-width));
2127
2127
  margin-bottom: 0;
2128
2128
  font-size: inherit;
2129
- line-height: 1.5;
2129
+ line-height: 1.42857;
2130
2130
  }
2131
2131
 
2132
2132
  .col-form-label-lg {
@@ -2159,7 +2159,7 @@ progress {
2159
2159
  padding: 0.25rem 0.625rem;
2160
2160
  font-size: 0.875rem;
2161
2161
  font-weight: 400;
2162
- line-height: 1.5;
2162
+ line-height: 1.42857;
2163
2163
  color: var(--bs-body-color);
2164
2164
  appearance: none;
2165
2165
  background-color: transparent;
@@ -2193,7 +2193,7 @@ progress {
2193
2193
 
2194
2194
  .form-control::-webkit-date-and-time-value {
2195
2195
  min-width: 85px;
2196
- height: 1.5em;
2196
+ height: 1.42857em;
2197
2197
  margin: 0;
2198
2198
  }
2199
2199
 
@@ -2208,6 +2208,7 @@ progress {
2208
2208
  }
2209
2209
 
2210
2210
  .form-control:disabled {
2211
+ color: var(--bs-tertiary-color);
2211
2212
  background-color: color-mix(in srgb, var(--moo-border) 40%, transparent);
2212
2213
  opacity: 1;
2213
2214
  }
@@ -2242,7 +2243,7 @@ progress {
2242
2243
  width: 100%;
2243
2244
  padding: 0.25rem 0;
2244
2245
  margin-bottom: 0;
2245
- line-height: 1.5;
2246
+ line-height: 1.42857;
2246
2247
  color: var(--bs-body-color);
2247
2248
  background-color: transparent;
2248
2249
  border: solid transparent;
@@ -2259,7 +2260,7 @@ progress {
2259
2260
  }
2260
2261
 
2261
2262
  .form-control-sm {
2262
- min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
2263
+ min-height: calc(1.42857em + 0.5rem + calc(var(--bs-border-width) * 2));
2263
2264
  padding: 0.25rem 0.5rem;
2264
2265
  font-size: 0.76563rem;
2265
2266
  border-radius: var(--bs-border-radius-sm);
@@ -2278,7 +2279,7 @@ progress {
2278
2279
  }
2279
2280
 
2280
2281
  .form-control-lg {
2281
- min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
2282
+ min-height: calc(1.42857em + 1rem + calc(var(--bs-border-width) * 2));
2282
2283
  padding: 0.5rem 1rem;
2283
2284
  font-size: 1.09375rem;
2284
2285
  border-radius: var(--bs-border-radius-lg);
@@ -2295,11 +2296,11 @@ textarea.form-control {
2295
2296
  }
2296
2297
 
2297
2298
  textarea.form-control-sm {
2298
- min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
2299
+ min-height: calc(1.42857em + 0.5rem + calc(var(--bs-border-width) * 2));
2299
2300
  }
2300
2301
 
2301
2302
  textarea.form-control-lg {
2302
- min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
2303
+ min-height: calc(1.42857em + 1rem + calc(var(--bs-border-width) * 2));
2303
2304
  }
2304
2305
 
2305
2306
  .form-control-color {
@@ -2323,11 +2324,11 @@ textarea.form-control-lg {
2323
2324
  }
2324
2325
 
2325
2326
  .form-control-color.form-control-sm {
2326
- height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));
2327
+ height: calc(1.42857em + 0.5rem + calc(var(--bs-border-width) * 2));
2327
2328
  }
2328
2329
 
2329
2330
  .form-control-color.form-control-lg {
2330
- height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
2331
+ height: calc(1.42857em + 1rem + calc(var(--bs-border-width) * 2));
2331
2332
  }
2332
2333
 
2333
2334
  .form-select {
@@ -2337,7 +2338,7 @@ textarea.form-control-lg {
2337
2338
  padding: 0.25rem 1.875rem 0.25rem 0.625rem;
2338
2339
  font-size: 0.875rem;
2339
2340
  font-weight: 400;
2340
- line-height: 1.5;
2341
+ line-height: 1.42857;
2341
2342
  color: var(--bs-body-color);
2342
2343
  appearance: none;
2343
2344
  background-color: transparent;
@@ -2368,6 +2369,7 @@ textarea.form-control-lg {
2368
2369
  }
2369
2370
 
2370
2371
  .form-select:disabled {
2372
+ color: var(--bs-tertiary-color);
2371
2373
  background-color: color-mix(in srgb, var(--moo-border) 40%, transparent);
2372
2374
  }
2373
2375
 
@@ -2789,7 +2791,7 @@ textarea.form-control-lg {
2789
2791
  padding: 0.25rem 0.625rem;
2790
2792
  font-size: 0.875rem;
2791
2793
  font-weight: 400;
2792
- line-height: 1.5;
2794
+ line-height: 1.42857;
2793
2795
  color: var(--bs-body-color);
2794
2796
  text-align: center;
2795
2797
  white-space: nowrap;
@@ -2895,11 +2897,11 @@ textarea.form-control-lg {
2895
2897
 
2896
2898
  .was-validated .form-control:valid, .form-control.is-valid {
2897
2899
  border-color: var(--bs-form-valid-border-color);
2898
- padding-right: calc(1.5em + 0.5rem);
2900
+ padding-right: calc(1.42857em + 0.5rem);
2899
2901
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2316803c' 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");
2900
2902
  background-repeat: no-repeat;
2901
- background-position: right calc(0.375em + 0.125rem) center;
2902
- background-size: calc(0.75em + 0.25rem) calc(0.75em + 0.25rem);
2903
+ background-position: right calc(0.35714em + 0.125rem) center;
2904
+ background-size: calc(0.71429em + 0.25rem) calc(0.71429em + 0.25rem);
2903
2905
  }
2904
2906
 
2905
2907
  .was-validated .form-control:valid:focus, .form-control.is-valid:focus {
@@ -2908,8 +2910,8 @@ textarea.form-control-lg {
2908
2910
  }
2909
2911
 
2910
2912
  .was-validated textarea.form-control:valid, textarea.form-control.is-valid {
2911
- padding-right: calc(1.5em + 0.5rem);
2912
- background-position: top calc(0.375em + 0.125rem) right calc(0.375em + 0.125rem);
2913
+ padding-right: calc(1.42857em + 0.5rem);
2914
+ background-position: top calc(0.35714em + 0.125rem) right calc(0.35714em + 0.125rem);
2913
2915
  }
2914
2916
 
2915
2917
  .was-validated .form-select:valid, .form-select.is-valid {
@@ -2920,7 +2922,7 @@ textarea.form-control-lg {
2920
2922
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2316803c' 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");
2921
2923
  padding-right: 3.4375rem;
2922
2924
  background-position: right 0.625rem center, center right 1.875rem;
2923
- background-size: 16px 12px, calc(0.75em + 0.25rem) calc(0.75em + 0.25rem);
2925
+ background-size: 16px 12px, calc(0.71429em + 0.25rem) calc(0.71429em + 0.25rem);
2924
2926
  }
2925
2927
 
2926
2928
  .was-validated .form-select:valid:focus, .form-select.is-valid:focus {
@@ -2929,7 +2931,7 @@ textarea.form-control-lg {
2929
2931
  }
2930
2932
 
2931
2933
  .was-validated .form-control-color:valid, .form-control-color.is-valid {
2932
- width: calc(3rem + calc(1.5em + 0.5rem));
2934
+ width: calc(3rem + calc(1.42857em + 0.5rem));
2933
2935
  }
2934
2936
 
2935
2937
  .was-validated .form-check-input:valid, .form-check-input.is-valid {
@@ -2995,11 +2997,11 @@ textarea.form-control-lg {
2995
2997
 
2996
2998
  .was-validated .form-control:invalid, .form-control.is-invalid {
2997
2999
  border-color: var(--bs-form-invalid-border-color);
2998
- padding-right: calc(1.5em + 0.5rem);
3000
+ padding-right: calc(1.42857em + 0.5rem);
2999
3001
  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='%23dc2626'%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='%23dc2626' stroke='none'/%3e%3c/svg%3e");
3000
3002
  background-repeat: no-repeat;
3001
- background-position: right calc(0.375em + 0.125rem) center;
3002
- background-size: calc(0.75em + 0.25rem) calc(0.75em + 0.25rem);
3003
+ background-position: right calc(0.35714em + 0.125rem) center;
3004
+ background-size: calc(0.71429em + 0.25rem) calc(0.71429em + 0.25rem);
3003
3005
  }
3004
3006
 
3005
3007
  .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
@@ -3008,8 +3010,8 @@ textarea.form-control-lg {
3008
3010
  }
3009
3011
 
3010
3012
  .was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
3011
- padding-right: calc(1.5em + 0.5rem);
3012
- background-position: top calc(0.375em + 0.125rem) right calc(0.375em + 0.125rem);
3013
+ padding-right: calc(1.42857em + 0.5rem);
3014
+ background-position: top calc(0.35714em + 0.125rem) right calc(0.35714em + 0.125rem);
3013
3015
  }
3014
3016
 
3015
3017
  .was-validated .form-select:invalid, .form-select.is-invalid {
@@ -3020,7 +3022,7 @@ textarea.form-control-lg {
3020
3022
  --bs-form-select-bg-icon: 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='%23dc2626'%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='%23dc2626' stroke='none'/%3e%3c/svg%3e");
3021
3023
  padding-right: 3.4375rem;
3022
3024
  background-position: right 0.625rem center, center right 1.875rem;
3023
- background-size: 16px 12px, calc(0.75em + 0.25rem) calc(0.75em + 0.25rem);
3025
+ background-size: 16px 12px, calc(0.71429em + 0.25rem) calc(0.71429em + 0.25rem);
3024
3026
  }
3025
3027
 
3026
3028
  .was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
@@ -3029,7 +3031,7 @@ textarea.form-control-lg {
3029
3031
  }
3030
3032
 
3031
3033
  .was-validated .form-control-color:invalid, .form-control-color.is-invalid {
3032
- width: calc(3rem + calc(1.5em + 0.5rem));
3034
+ width: calc(3rem + calc(1.42857em + 0.5rem));
3033
3035
  }
3034
3036
 
3035
3037
  .was-validated .form-check-input:invalid, .form-check-input.is-invalid {
@@ -12304,6 +12306,17 @@ textarea.form-control-lg {
12304
12306
  }
12305
12307
  }
12306
12308
 
12309
+ :root {
12310
+ --moo-overlay-backdrop-opacity: 1;
12311
+ --moo-overlay-backdrop-bg: color-mix(in srgb, var(--bs-black) 10%, transparent);
12312
+ --moo-overlay-backdrop-filter: blur(8px);
12313
+ --moo-input-group-border-radius: var(--bs-border-radius-lg);
12314
+ --moo-disabled-control-opacity: 0.5;
12315
+ --moo-sidebar-foreground: var(--moo-foreground);
12316
+ --moo-sidebar-accent: var(--moo-muted-surface);
12317
+ --moo-sidebar-border: var(--moo-border);
12318
+ }
12319
+
12307
12320
  :root,
12308
12321
  [data-bs-theme="light"] {
12309
12322
  --moo-surface: #fff;
@@ -12314,14 +12327,7 @@ textarea.form-control-lg {
12314
12327
  --moo-ring: #18181b;
12315
12328
  --moo-destructive: #dc2626;
12316
12329
  --moo-destructive-foreground: #fff;
12317
- --moo-overlay-backdrop-opacity: 1;
12318
- --moo-overlay-backdrop-bg: color-mix(in srgb, var(--bs-black) 10%, transparent);
12319
- --moo-overlay-backdrop-filter: blur(8px);
12320
- --moo-input-group-border-radius: var(--bs-border-radius-lg);
12321
12330
  --moo-sidebar: #fafafa;
12322
- --moo-sidebar-foreground: var(--moo-foreground);
12323
- --moo-sidebar-accent: var(--moo-muted-surface);
12324
- --moo-sidebar-border: var(--moo-border);
12325
12331
  --bs-body-color: var(--moo-foreground);
12326
12332
  --bs-body-color-rgb: 24, 24, 27;
12327
12333
  --bs-heading-color: var(--moo-foreground);
@@ -12337,14 +12343,7 @@ textarea.form-control-lg {
12337
12343
  --moo-ring: #fafafa;
12338
12344
  --moo-destructive: #f87171;
12339
12345
  --moo-destructive-foreground: #18181b;
12340
- --moo-overlay-backdrop-opacity: 1;
12341
- --moo-overlay-backdrop-bg: color-mix(in srgb, var(--bs-black) 10%, transparent);
12342
- --moo-overlay-backdrop-filter: blur(8px);
12343
- --moo-input-group-border-radius: var(--bs-border-radius-lg);
12344
12346
  --moo-sidebar: #1c1c1f;
12345
- --moo-sidebar-foreground: var(--moo-foreground);
12346
- --moo-sidebar-accent: var(--moo-muted-surface);
12347
- --moo-sidebar-border: var(--moo-border);
12348
12347
  --bs-body-color: var(--moo-foreground);
12349
12348
  --bs-body-color-rgb: 250, 250, 250;
12350
12349
  --bs-heading-color: var(--moo-foreground);
@@ -12357,6 +12356,13 @@ textarea.form-control-lg {
12357
12356
  box-shadow: none;
12358
12357
  }
12359
12358
 
12359
+ .form-control.is-invalid,
12360
+ .form-control.is-invalid:focus,
12361
+ .form-select.is-invalid,
12362
+ .form-select.is-invalid:focus {
12363
+ box-shadow: 0 0 0 var(--bs-focus-ring-width) color-mix(in srgb, var(--bs-form-invalid-border-color) 20%, transparent);
12364
+ }
12365
+
12360
12366
  .btn-check:focus-visible + .btn {
12361
12367
  outline: var(--bs-focus-ring-width) solid var(--moo-ring);
12362
12368
  outline-offset: var(--bs-focus-ring-width);
@@ -12600,10 +12606,19 @@ kbd {
12600
12606
  min-height: 2rem;
12601
12607
  }
12602
12608
 
12609
+ .form-control:disabled,
12610
+ .form-select:disabled {
12611
+ opacity: var(--moo-disabled-control-opacity);
12612
+ }
12613
+
12603
12614
  textarea.form-control:not(.form-control-sm, .form-control-lg) {
12604
12615
  padding: 0.5rem 0.75rem;
12605
12616
  }
12606
12617
 
12618
+ textarea.form-control:disabled {
12619
+ resize: none;
12620
+ }
12621
+
12607
12622
  .input-group:not(:has(> .form-control[type="file"])) {
12608
12623
  border: var(--bs-border-width) solid var(--moo-border);
12609
12624
  border-radius: var(--moo-input-group-border-radius);
@@ -12857,7 +12872,12 @@ label.btn {
12857
12872
  .btn.disabled,
12858
12873
  .btn[aria-disabled="true"] {
12859
12874
  pointer-events: none;
12860
- opacity: var(--bs-btn-disabled-opacity);
12875
+ opacity: var(--moo-disabled-control-opacity);
12876
+ }
12877
+
12878
+ .btn-check:disabled + .btn {
12879
+ pointer-events: none;
12880
+ opacity: var(--moo-disabled-control-opacity);
12861
12881
  }
12862
12882
 
12863
12883
  .btn:not(:disabled):not(.disabled):not([aria-disabled="true"]):active {
@@ -14017,6 +14037,10 @@ label.btn {
14017
14037
  height: 1rem;
14018
14038
  }
14019
14039
 
14040
+ .page-item.disabled {
14041
+ opacity: var(--moo-disabled-control-opacity);
14042
+ }
14043
+
14020
14044
  .progress {
14021
14045
  --bs-progress-bar-bg: var(--moo-foreground);
14022
14046
  }
@@ -14073,6 +14097,16 @@ label.btn {
14073
14097
  text-decoration: underline;
14074
14098
  }
14075
14099
 
14100
+ .accordion-button:disabled {
14101
+ color: var(--moo-muted-foreground);
14102
+ opacity: var(--moo-disabled-control-opacity);
14103
+ pointer-events: none;
14104
+ }
14105
+
14106
+ .accordion-button:disabled:hover {
14107
+ text-decoration: none;
14108
+ }
14109
+
14076
14110
  .accordion-flush {
14077
14111
  --bs-accordion-btn-padding-x: 0;
14078
14112
  --bs-accordion-btn-padding-y: 0.625rem;
@@ -14117,6 +14151,13 @@ label.btn {
14117
14151
  box-shadow: var(--bs-box-shadow-sm);
14118
14152
  }
14119
14153
 
14154
+ .tabs-list .nav-link:disabled,
14155
+ .tabs-list .nav-link.disabled {
14156
+ color: var(--moo-muted-foreground);
14157
+ opacity: var(--moo-disabled-control-opacity);
14158
+ pointer-events: none;
14159
+ }
14160
+
14120
14161
  .tab-content {
14121
14162
  display: grid;
14122
14163
  width: 100%;
@@ -14369,6 +14410,252 @@ label.btn {
14369
14410
  opacity: 0.1;
14370
14411
  }
14371
14412
 
14413
+ .combobox {
14414
+ --moo-combobox-width: 12.5rem;
14415
+ --moo-combobox-multiple-width: 20rem;
14416
+ --moo-combobox-menu-max-height: 16rem;
14417
+ --moo-combobox-option-line-height: 1.25rem;
14418
+ --moo-combobox-description-font-size: 0.75rem;
14419
+ width: 100%;
14420
+ max-width: var(--moo-combobox-width);
14421
+ }
14422
+
14423
+ .combobox--multiple {
14424
+ max-width: var(--moo-combobox-multiple-width);
14425
+ }
14426
+
14427
+ .combobox-control {
14428
+ position: relative;
14429
+ width: 100%;
14430
+ }
14431
+
14432
+ .combobox-control:has(.combobox-input:disabled) {
14433
+ opacity: var(--moo-disabled-control-opacity);
14434
+ }
14435
+
14436
+ .combobox-control:has(.combobox-input:disabled) .combobox-input:disabled {
14437
+ opacity: 1;
14438
+ }
14439
+
14440
+ .combobox-input {
14441
+ padding-inline-end: calc(0.625rem + 2rem);
14442
+ }
14443
+
14444
+ .combobox-input.is-invalid {
14445
+ padding-inline-end: calc(0.625rem + 2rem);
14446
+ background-image: none;
14447
+ }
14448
+
14449
+ .combobox-indicator {
14450
+ position: absolute;
14451
+ inset-block: 0;
14452
+ inset-inline-end: 0;
14453
+ display: flex;
14454
+ align-items: center;
14455
+ justify-content: center;
14456
+ width: 2rem;
14457
+ color: var(--bs-secondary-color);
14458
+ pointer-events: none;
14459
+ }
14460
+
14461
+ .combobox-indicator > [data-icon] {
14462
+ width: 1rem;
14463
+ height: 1rem;
14464
+ flex: 0 0 auto;
14465
+ }
14466
+
14467
+ .combobox-clear {
14468
+ position: absolute;
14469
+ inset-block: 0;
14470
+ inset-inline-end: 0;
14471
+ display: flex;
14472
+ width: 2rem;
14473
+ align-items: center;
14474
+ justify-content: center;
14475
+ padding: 0;
14476
+ border: 0;
14477
+ background: transparent;
14478
+ color: var(--bs-secondary-color);
14479
+ cursor: pointer;
14480
+ }
14481
+
14482
+ .combobox-clear:hover,
14483
+ .combobox-clear:focus-visible {
14484
+ color: var(--bs-body-color);
14485
+ }
14486
+
14487
+ .combobox-clear > [data-icon] {
14488
+ width: 0.875em;
14489
+ height: 0.875em;
14490
+ flex: 0 0 auto;
14491
+ }
14492
+
14493
+ .combobox-chips {
14494
+ display: flex;
14495
+ min-height: 2rem;
14496
+ align-items: center;
14497
+ gap: 0.25rem;
14498
+ flex-wrap: wrap;
14499
+ padding-block: 0.25rem;
14500
+ padding-inline: 0.625rem;
14501
+ cursor: text;
14502
+ }
14503
+
14504
+ .combobox-chips:focus-within {
14505
+ border-color: #8b8b8b;
14506
+ box-shadow: 0 0 0 2px rgba(23, 23, 23, 0.25);
14507
+ }
14508
+
14509
+ .combobox-value {
14510
+ display: flex;
14511
+ min-width: 0;
14512
+ align-items: center;
14513
+ gap: 0.25rem;
14514
+ flex-wrap: wrap;
14515
+ }
14516
+
14517
+ .combobox-chip {
14518
+ display: inline-flex;
14519
+ max-width: 100%;
14520
+ align-items: center;
14521
+ gap: 0.25rem;
14522
+ cursor: default;
14523
+ }
14524
+
14525
+ .combobox-chip__label {
14526
+ min-width: 0;
14527
+ overflow: hidden;
14528
+ text-overflow: ellipsis;
14529
+ }
14530
+
14531
+ .combobox-chip__remove {
14532
+ display: inline-flex;
14533
+ align-items: center;
14534
+ justify-content: center;
14535
+ padding: 0;
14536
+ border: 0;
14537
+ border-radius: var(--bs-border-radius-pill);
14538
+ background: transparent;
14539
+ color: inherit;
14540
+ cursor: pointer;
14541
+ opacity: 0.65;
14542
+ }
14543
+
14544
+ .combobox-chip__remove:hover,
14545
+ .combobox-chip__remove:focus-visible {
14546
+ opacity: 1;
14547
+ }
14548
+
14549
+ .combobox-chip__remove > [data-icon] {
14550
+ width: 0.875rem;
14551
+ height: 0.875rem;
14552
+ flex: 0 0 auto;
14553
+ }
14554
+
14555
+ .combobox-chips-input {
14556
+ min-width: 5rem;
14557
+ flex: 1 1 5rem;
14558
+ padding: 0;
14559
+ border: 0;
14560
+ outline: 0;
14561
+ background: transparent;
14562
+ color: inherit;
14563
+ }
14564
+
14565
+ .combobox-chips-input::placeholder {
14566
+ color: var(--bs-tertiary-color);
14567
+ }
14568
+
14569
+ .combobox-menu {
14570
+ position: absolute;
14571
+ inset-block-start: calc(100% + 0.125rem);
14572
+ inset-inline-start: 0;
14573
+ z-index: 1000;
14574
+ width: max-content;
14575
+ min-width: 100%;
14576
+ max-width: calc(100vw - 1rem);
14577
+ max-height: var(--moo-combobox-menu-max-height);
14578
+ overflow-y: auto;
14579
+ overscroll-behavior: contain;
14580
+ scrollbar-width: none;
14581
+ }
14582
+
14583
+ .combobox-menu::-webkit-scrollbar {
14584
+ display: none;
14585
+ }
14586
+
14587
+ .combobox-option {
14588
+ display: flex;
14589
+ align-items: center;
14590
+ gap: 0.5rem;
14591
+ padding-inline-end: 2rem;
14592
+ line-height: var(--moo-combobox-option-line-height);
14593
+ }
14594
+
14595
+ .combobox-option__content {
14596
+ display: flex;
14597
+ min-width: 0;
14598
+ flex: 1 1 auto;
14599
+ flex-direction: column;
14600
+ }
14601
+
14602
+ .combobox-option[aria-current="true"] {
14603
+ background-color: var(--bs-dropdown-link-hover-bg);
14604
+ }
14605
+
14606
+ .combobox-option[aria-selected="true"] {
14607
+ font-weight: 500;
14608
+ }
14609
+
14610
+ .combobox-option__label {
14611
+ min-width: 0;
14612
+ overflow: hidden;
14613
+ text-overflow: ellipsis;
14614
+ }
14615
+
14616
+ .combobox--custom-items .combobox-option__label {
14617
+ font-weight: 500;
14618
+ }
14619
+
14620
+ .combobox-option__description {
14621
+ min-width: 0;
14622
+ overflow: hidden;
14623
+ color: var(--bs-secondary-color);
14624
+ font-size: var(--moo-combobox-description-font-size);
14625
+ line-height: 1.5;
14626
+ text-overflow: ellipsis;
14627
+ }
14628
+
14629
+ .combobox-option__check {
14630
+ display: inline-flex;
14631
+ flex: 0 0 auto;
14632
+ margin-inline-start: auto;
14633
+ visibility: hidden;
14634
+ }
14635
+
14636
+ .combobox-option[aria-selected="true"] .combobox-option__check {
14637
+ visibility: visible;
14638
+ }
14639
+
14640
+ .combobox-option__check > [data-icon] {
14641
+ width: 1rem;
14642
+ height: 1rem;
14643
+ flex: 0 0 auto;
14644
+ }
14645
+
14646
+ .combobox-group-label {
14647
+ padding: 0.375rem 0.5rem;
14648
+ font-size: var(--moo-combobox-description-font-size);
14649
+ font-weight: 400;
14650
+ line-height: 1rem;
14651
+ }
14652
+
14653
+ .combobox-empty {
14654
+ padding: 0.25rem 0.375rem;
14655
+ color: var(--bs-secondary-color);
14656
+ text-align: center;
14657
+ }
14658
+
14372
14659
  .form-label,
14373
14660
  .form-check-label {
14374
14661
  user-select: none;