/* Dropdown tìm kiếm (Tom Select) - class form-select-tim-kiem */
.ts-wrapper.form-select,
.ts-wrapper.form-select-tim-kiem {
    width: 100%;
    position: relative;
}
.ts-wrapper.single .ts-control,
.ts-wrapper.form-select-tim-kiem.single .ts-control,
.ts-wrapper.form-select-tim-kiem.multi .ts-control {
    border: 1.5px solid var(--border, #d8e2ec);
    border-radius: var(--radius-sm, 8px);
    padding: 0.65rem 2.25rem 0.65rem 0.9rem;
    font-family: var(--font, 'Be Vietnam Pro', sans-serif);
    font-size: 0.95rem;
    min-height: calc(1.5em + 1.3rem + 3px);
    background-color: #fff;
    box-shadow: none;
    cursor: pointer;
}
.ts-wrapper.form-select-tim-kiem.form-select-sm.single .ts-control {
    padding: 0.25rem 2rem 0.25rem 0.5rem;
    font-size: 0.875rem;
    min-height: calc(1.5em + 0.5rem + 3px);
}
.ts-wrapper.form-select-tim-kiem.focus .ts-control,
.ts-wrapper.focus .ts-control {
    border-color: var(--primary-light, #2e7d32);
    box-shadow: 0 0 0 3px rgba(46, 125, 50, 0.12);
}
.ts-wrapper.form-select-tim-kiem.disabled .ts-control,
.ts-wrapper.disabled .ts-control {
    background-color: var(--bs-secondary-bg, #e9ecef);
    opacity: 1;
    cursor: not-allowed;
}
.ts-dropdown {
    border: 1.5px solid var(--border, #d8e2ec);
    border-radius: var(--radius-sm, 8px);
    font-family: var(--font, 'Be Vietnam Pro', sans-serif);
    font-size: 0.92rem;
    z-index: 2000 !important;
    min-width: 220px;
}
/* Modal lọc bản đồ (container trong .agre-map-shell) - dropdown render ra body */
body.page-bandothongke .ts-dropdown,
body.page-bandothongke-map-fs .ts-dropdown {
    z-index: 1400 !important;
}
#modalLocBanDo .ts-wrapper {
    position: relative;
    z-index: 1;
}
/* Dropdown gắn cạnh ô chọn (không render ra body) */
.ts-wrapper .ts-dropdown {
    width: 100%;
    margin-top: 2px;
}
/* Modal / card admin - không cắt dropdown */
.modal .modal-body,
body.page-admin .admin-card {
    overflow: visible;
}
/* Modal lọc bản đồ: tránh dropdown bị cắt/ẩn */
#modalLocBanDo,
#modalLocBanDo .modal-dialog,
#modalLocBanDo .modal-content,
#modalLocBanDo .modal-body {
    overflow: visible !important;
}
#modalLocBanDo .row,
#modalLocBanDo [class*="col-"] {
    overflow: visible !important;
}
#modalLocBanDo .ts-wrapper {
    position: relative;
    z-index: 5;
}
#modalLocBanDo .ts-wrapper .ts-dropdown {
    z-index: 2100 !important;
}
#modalLocBanDo .ts-wrapper.focus,
#modalLocBanDo .ts-wrapper.dropdown-active {
    z-index: 2200 !important;
}
/* Trường hợp dropdown append ra body */
body > .ts-dropdown {
    z-index: 2200 !important;
}
.ts-dropdown .dropdown-input {
    padding: 0.4rem 0.65rem;
}
.ts-dropdown .dropdown-input input {
    font-size: 0.92rem;
}
.ts-dropdown .option.active {
    background-color: rgba(27, 107, 42, 0.12);
    color: inherit;
}
.ts-dropdown .option.selected {
    background-color: var(--primary, #1b6b2a);
    color: #fff;
}
.admin-grid-select.ts-wrapper,
.doc-pagination__select.ts-wrapper,
.canned-pagination__select.ts-wrapper {
    width: auto;
    display: inline-block;
    vertical-align: middle;
}
body.page-admin .ts-wrapper.form-select-tim-kiem.focus .ts-control,
body.page-admin .ts-wrapper.focus .ts-control {
    border-color: var(--primary-light, #1a6b9a);
    box-shadow: 0 0 0 3px rgba(26, 107, 154, 0.15);
}