/* 【本次新增】可搜索下拉框组件样式 - 全局通用 */
/* 版本: 1.0 - 2026-08-28 */

.searchable-select {
    position: relative;
}
.searchable-select-input-wrapper {
    position: relative;
}
.searchable-select-input {
    cursor: pointer;
    background-color: #fff;
}
.searchable-select-arrow {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: #6c757d;
    transition: transform 0.2s;
}
.searchable-select.open .searchable-select-arrow {
    transform: translateY(-50%) rotate(180deg);
}
.searchable-select-dropdown {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: 300px;
    overflow-y: auto;
    background-color: #fff;
    border: 1px solid #ced4da;
    border-radius: 4px;
    box-shadow: 0 4px 6px rgba(0,0,0,.1);
    z-index: 1000;
    margin-top: 2px;
}
.searchable-select.open .searchable-select-dropdown {
    display: block;
}
.searchable-select-item {
    padding: 8px 12px;
    cursor: pointer;
    border-bottom: 1px solid #f0f0f0;
    transition: background-color 0.15s;
}
.searchable-select-item:last-child {
    border-bottom: none;
}
.searchable-select-item:hover,
.searchable-select-item.active {
    background-color: #e9ecef;
}
.searchable-select-item.selected {
    background-color: #0d6efd;
    color: #fff;
}
.searchable-select-empty {
    padding: 12px;
    text-align: center;
    color: #6c757d;
    font-size: 14px;
}
.searchable-select-highlight {
    background-color: #fff3cd;
    font-weight: bold;
}

/* 移动端适配 */
.mobile-mode .searchable-select-dropdown {
    max-height: 250px;
}
.mobile-mode .searchable-select-item {
    padding: 6px 10px;
    font-size: 14px;
}
