.search-select { position:relative; min-width:0; flex:1; width:100%; }
.search-select-native { position:absolute!important; width:1px!important; height:1px!important; opacity:0!important; clip-path:inset(50%); overflow:hidden; }
.search-select-input { width:100%!important; min-width:0; margin:0; }
.search-select-selection { display:none; position:absolute; inset:0; align-items:center; gap:8px; padding:0 30px 0 12px; pointer-events:none; min-width:0; }
.search-select.has-group-selection:not(.is-searching) .search-select-input { color:transparent; }
.search-select.has-group-selection:not(.is-searching) .search-select-selection { display:flex; }
.search-select-selection-group { flex:0 1 auto; max-width:45%; font-size:11px; font-weight:400; color:#8b948e; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.search-select-selection-name { min-width:0; color:#39464d; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.search-select-group-heading { display:flex; align-items:center; gap:10px; padding:10px 12px; color:#41574a; background:#f0f5f2; font-size:12px; font-weight:600; text-align:center; overflow-wrap:anywhere; }
.search-select-group-heading::before, .search-select-group-heading::after { content:""; flex:1 0 16px; border-top:1px solid #c5d3ca; }
.search-select-menu { z-index:10050; display:flex; flex-direction:column; overflow:hidden; background:#fff; border:1px solid #d5dde2; border-radius:4px; box-shadow:0 6px 18px rgba(0,0,0,.12); }
.search-select-toolbar { display:flex; justify-content:flex-end; flex-shrink:0; padding:5px 8px; border-bottom:1px solid #e6ece8; background:#f7faf8; }
.search-select-close { display:inline-flex; align-items:center; justify-content:center; min-height:28px; padding:3px 8px; border:1px solid #cbd6cf; border-radius:3px; background:#fff; color:#596d61; font-size:12px; cursor:pointer; }
.search-select-close:hover { background:#edf5f0; color:#315c42; }
.search-select-close:focus-visible, .search-select-tag-remove:focus-visible { outline:2px solid #416a80; outline-offset:2px; }
.search-select-options { min-height:0; overflow:auto; }
.search-select-menu[hidden] { display:none!important; }
.search-select-option { display:block; width:100%; padding:10px 12px; border:0; text-align:left; background:#fff; color:#39464d; font:inherit; overflow-wrap:anywhere; cursor:pointer; }
.search-select-option:hover, .search-select-option.is-active { background:#eaf5ef; color:#254c3e; }
.search-select-option.is-selected { background:#eef4fa; font-weight:600; }
.search-select-empty { padding:12px; color:#89939b; }
.search-select-tags { display:flex; flex-wrap:wrap; gap:6px; }
.search-select-tags:not(:empty) { margin-bottom:8px; }
.search-select-tag { display:inline-flex; align-items:center; gap:5px; max-width:100%; padding:4px 6px 4px 9px; border:1px solid #d6e3ef; border-radius:4px; background:#edf4fb; color:#46657f; font:inherit; }
.search-select-tag-label { min-width:0; overflow-wrap:anywhere; cursor:default; }
.search-select-tag-remove { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:22px; height:22px; padding:0; border:0; border-radius:3px; background:transparent; color:inherit; font:inherit; line-height:1; cursor:pointer; }
.search-select-tag-remove:hover:not(:disabled) { background:#dce8f3; color:#30536f; }
.search-select-tag-remove:disabled { opacity:.45; cursor:not-allowed; }

/* 品牌 LOGO 與名稱屬於同一選項／標籤，不改原 select 值。 */
.search-select-logo { display:block; flex:0 0 22px; width:22px; height:22px; object-fit:contain; pointer-events:none; }
.search-select-tag .search-select-logo { flex-basis:20px; width:20px; height:20px; }
.search-select-option.has-option-image { display:flex; align-items:center; gap:8px; }
.search-select-option.has-option-image > span:not(.search-select-option-check) { min-width:0; overflow-wrap:anywhere; }
.search-select-option-check { flex:none; margin-left:auto; }
.search-select.has-image-selection:not(.is-searching) .search-select-input { color:transparent; }
.search-select.has-image-selection:not(.is-searching) .search-select-selection { display:flex; }

.search-select-option.has-option-detail { display:flex; flex-direction:column; align-items:flex-start; gap:3px; padding:12px 14px; line-height:1.5; }
.search-select-option-title { color:#11b76b; font-size:14px; font-weight:700; }
.search-select-option-description { color:#89928e; font-size:12px; font-weight:400; }
.search-select-option-title, .search-select-option-description { max-width:100%; overflow-wrap:anywhere; }
