.glis-searchable-select { position: relative; min-width: 0; width: 100%; }
.glis-searchable-select .glis-select-native { position: absolute !important; width: 1px !important; height: 1px !important; opacity: 0; pointer-events: none; padding: 0; border: 0; }
.glis-select-control { width: 100%; min-height: 2.25rem; text-align: start; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-inline-end: 2.25rem; cursor: pointer; }
.glis-select-control[aria-invalid="true"] { border-color: var(--bs-danger, #dc3545); }
.glis-select-menu { position: fixed; box-sizing: border-box; display: flex; flex-direction: column; gap: .4rem; padding: .5rem; border: 1px solid var(--bs-border-color, #ced4da); border-radius: .5rem; background: var(--bs-body-bg, var(--body-bg, white)); color: var(--bs-body-color, var(--body-fg, #212529)); box-shadow: 0 .5rem 1rem #0002; }
.glis-select-menu[hidden] { display: none; }
.glis-select-search { width: 100%; box-sizing: border-box; min-height: 2rem; flex-shrink: 0; padding: .25rem .5rem; border: 1px solid var(--bs-border-color, #ced4da); border-radius: .3rem; background: inherit; color: inherit; }
.glis-select-options { overflow-y: auto; min-height: 0; }
.glis-select-option { display: block; width: 100%; border: 0; border-radius: .25rem; padding: .4rem .5rem; color: inherit; background: transparent; text-align: start; font: inherit; font-size: .875rem; }
.glis-select-option:hover, .glis-select-option.is-focused { background: var(--bs-primary-bg-subtle, #e6efff); color: var(--bs-primary-text-emphasis, #084298); }
.glis-select-option[aria-selected="true"] { font-weight: 700; }
.glis-select-option:disabled { opacity: .45; }
.glis-select-group, .glis-select-empty { padding: .4rem .5rem; font-size: .8rem; opacity: .7; }
.glis-select-group { font-weight: 700; }
body:not(.glis-portal-app):not(.glis-public-app) .glis-searchable-select { max-width: 40rem; display: inline-block; }
.glis-searchable-select > .glis-multiselect { width: 100%; }
.glis-multiselect .glis-select-control { text-align: start !important; }
.glis-multiselect-menu { display: none; position: fixed !important; inset: auto; overflow-y: auto; padding: .35rem; border: 1px solid var(--bs-border-color); border-radius: .5rem; background: var(--bs-body-bg); color: var(--bs-body-color); box-shadow: 0 .5rem 1rem #0002; }
.glis-multiselect-menu.show { display: block; }
.glis-multiselect-menu .multiselect-filter { position: sticky; top: -.35rem; background: var(--bs-body-bg); z-index: 1; }
.glis-multiselect-menu .multiselect-filter > input.multiselect-search { margin: 0; padding: .25rem .5rem; border: 1px solid var(--bs-border-color); border-radius: .3rem; background: var(--bs-body-bg); color: var(--bs-body-color); }
.glis-multiselect-menu .multiselect-option, .glis-multiselect-menu .multiselect-all { white-space: normal; font-size: .875rem; border-radius: .25rem; }
.glis-multiselect-menu .multiselect-option.active, .glis-multiselect-menu .multiselect-all.active { background: var(--bs-primary-bg-subtle); color: var(--bs-primary-text-emphasis); }
.glis-multiselect-menu .multiselect-option:hover, .glis-multiselect-menu .multiselect-all:hover, .glis-multiselect-menu .multiselect-option:focus, .glis-multiselect-menu .multiselect-all:focus { background: var(--bs-tertiary-bg) !important; color: var(--bs-body-color); }
.glis-multiselect-menu .form-check { text-align: start; padding-inline: 1.5rem .25rem; }
.glis-multiselect-menu .form-check-input { float: none; margin-inline: -1.4rem .35rem; }
