@use "../../01-core/prefix" as *;
@use "./input.mixins" as input;

@layer ss.components {
    .#{$ss-prefix-module}-input {
        @include input.ss-input;
    }

    .#{$ss-prefix-module}-input--sm {
        @include input.ss-input-size(sm);
    }
    .#{$ss-prefix-module}-input--md {
        @include input.ss-input-size(md);
    }
    .#{$ss-prefix-module}-input--lg {
        @include input.ss-input-size(lg);
    }

    .#{$ss-prefix-module}-input.is-invalid,
    .#{$ss-prefix-module}-input[aria-invalid="true"] {
        @include input.ss-input-error;
    }

    .#{$ss-prefix-module}-textarea {
        @include input.ss-input;
        @include input.ss-input-textarea;
    }

    // Datalist <input list="...">. Ported from legacy
    // `bup/mixins/body_atoms/inputs/_input_list.scss`. The native
    // calendar-picker indicator is hidden so the field behaves as a
    // plain combobox.
    .#{$ss-prefix-module}-input[list] {
        &::-webkit-calendar-picker-indicator {
            display: none;
        }
    }
}
