1/* Input */
2@layer components {
3 :is(.form, .admin-field) input[type='text']:not(:is(.admin-select [data-popover] > header input[role='combobox'], .command > header input, .admin-dialog > * > header input)),
4 :is(.form, .admin-field) input[type='email'],
5 :is(.form, .admin-field) input[type='password'],
6 :is(.form, .admin-field) input[type='number'],
7 :is(.form, .admin-field) input[type='file'],
8 :is(.form, .admin-field) input[type='tel'],
9 :is(.form, .admin-field) input[type='url'],
10 :is(.form, .admin-field) input[type='search']:not(:is(.admin-select [data-popover] > header input[role='combobox'], .command > header input, .admin-dialog > * > header input)),
11 :is(.form, .admin-field) input[type='date'],
12 :is(.form, .admin-field) input[type='datetime-local'],
13 :is(.form, .admin-field) input[type='month'],
14 :is(.form, .admin-field) input[type='week'],
15 :is(.form, .admin-field) input[type='time'],
16 .admin-input[type='text'],
17 .admin-input[type='email'],
18 .admin-input[type='password'],
19 .admin-input[type='number'],
20 .admin-input[type='file'],
21 .admin-input[type='tel'],
22 .admin-input[type='url'],
23 .admin-input[type='search'],
24 .admin-input[type='date'],
25 .admin-input[type='datetime-local'],
26 .admin-input[type='month'],
27 .admin-input[type='week'],
28 .admin-input[type='time'] {
29 @apply focus-control appearance-none file:text-admin-foreground placeholder:text-admin-muted-foreground selection:bg-admin-primary selection:text-admin-primary-foreground dark:bg-admin-input/30 border-admin-input flex h-9 w-full min-w-0 border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm;
30 border-radius: var(--radius-input);
31 }
32
33 /* Small variant. Pair with `.admin-input`: `class="input input-sm"`.
34 The `[type]` qualifier matches the specificity of the base
35 selectors above (e.g. `.admin-input[type='text']` = class + attr) so
36 the override actually wins — without it, the base selectors had
37 higher specificity and `h-9 py-1` would leak through. */
38 input.input-sm[type] {
39 @apply h-8 py-0 text-sm;
40 }
41}