@use '../core/styles/common/select' as *;

@use '../core/styles/common/tokens' as *;

@use './select-theme' as *;

.kbq-select {
    @extend %kbq-select-base;
}

.kbq-select__panel {
    @extend %kbq-select-panel;

    & .kbq-select__footer {
        @extend %kbq-select-footer;
    }
}

.kbq-select__content {
    @extend %kbq-select-content;

    box-sizing: initial;

    .kbq-option {
        @include item-active-area(var(--kbq-size-3xs));
    }

    &:not(:has(> .kbq-select__no-options-message)) .cdk-virtual-scroll-viewport {
        min-height: var(--kbq-select-panel-size-max-height, 256px);
        max-height: var(--kbq-select-panel-size-max-height, 256px);

        &.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper {
            max-width: 100%;
        }
    }
}

.kbq-form-field-type-select {
    &:not(.kbq-disabled) .kbq-form-field-flex {
        cursor: pointer;
    }
}

@include kbq-select-theme();
@include kbq-select-typography();
