.searchable-select {
    position: relative;
    display: inline-block;
    min-width: 125px;
}

.searchable-select-backdrop {
    position: fixed;
    inset: 0;
    z-index: 49;
    background: transparent;
}

/* Default (closed) state mimics a native select control. */
.searchable-select-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    padding: 8px;
    text-align: left;
    background: #fff;
    border: 1px solid var(--border-color);
    border-radius: 15px;
    color: var(--text-color);
    font: var(--input-font);
    cursor: pointer;
}

    .searchable-select-toggle .placeholder {
        color: var(--color-gray);
    }

    .searchable-select-toggle i {
        font-size: 12px;
        color: var(--sub-text-color);
        transition: transform 0.15s ease;
    }

.searchable-select.open .searchable-select-toggle i {
    transform: rotate(180deg);
}

.searchable-select-panel {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 50;
    background: #fff;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    box-shadow: var(--shadow-near);
    overflow: hidden;
}

.searchable-select-search {
    padding: 6px;
    border-bottom: 1px solid var(--border-color);
}

.searchable-select-options {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 220px;
    overflow-y: auto;
}

    .searchable-select-options li {
        padding: 8px 12px;
        font-size: 13px;
        cursor: pointer;
    }

        .searchable-select-options li:hover {
            background: var(--color-lightest);
        }

        .searchable-select-options li.active {
            background: var(--color-light);
            color: var(--color-2);
            font-weight: 600;
        }

        .searchable-select-options li.no-results {
            color: var(--color-gray);
            cursor: default;
        }

            .searchable-select-options li.no-results:hover {
                background: none;
            }
