/* Shared presentation for FundSearchSelect. Behavior lives in fund-search-select.js. */
.fss-wrapper { position:relative; width:100%; }
.fss-input-wrap { display:flex; align-items:center; width:100%; border:1px solid var(--line-strong); border-radius:8px; background:#fff; transition:border-color .15s,box-shadow .15s; overflow:hidden; }
.fss-wrapper:focus-within .fss-input-wrap { border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent); }
.fss-icon { padding:0 10px 0 12px; font-size:16px; color:#9A968B; user-select:none; flex-shrink:0; }
.fss-input { flex:1; min-width:0; border:0; outline:0; padding:10px 4px; font-family:inherit; font-size:14px; line-height:1.5; color:var(--text); background:transparent; }
.fss-clear { display:flex; align-items:center; justify-content:center; width:32px; height:32px; margin-right:4px; border:0; border-radius:50%; background:transparent; color:#9A968B; font-family:inherit; font-size:13px; line-height:1; cursor:pointer; flex-shrink:0; }
.fss-clear:hover { background:#F1EDE2; color:var(--text-muted); }
.fss-dropdown { position:absolute; top:calc(100% + 4px); right:0; left:0; z-index:1000; overflow:visible; border:1px solid var(--line); border-radius:10px; background:#fff; box-shadow:0 8px 24px rgba(0,0,0,.12); }
.fss-tabs-wrap { display:flex; align-items:center; gap:0; overflow:hidden; padding:10px 0 0; border-radius:10px 10px 0 0; background:#fff; }
.fss-category-tabs { display:flex; flex:1; flex-wrap:nowrap; gap:6px; min-width:0; overflow-x:auto; padding:0 4px 10px; scroll-behavior:smooth; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.fss-category-tabs::-webkit-scrollbar { display:none; }
.fss-tabs-btn { display:flex; align-items:center; justify-content:center; width:28px; height:28px; margin-bottom:10px; border:1.5px solid #9A968B; border-radius:50%; background:#fff; color:var(--ink); font-family:inherit; font-size:20px; font-weight:700; line-height:1; cursor:pointer; transition:all .15s; flex-shrink:0; }
.fss-tabs-prev { margin-left:8px; }
.fss-tabs-next { margin-right:8px; }
.fss-tabs-btn:hover { border-color:var(--accent); color:var(--accent); background:var(--accent-tint); }
.fss-tab { padding:5px 12px; border:1px solid var(--line); border-radius:20px; background:#F6F2E9; color:var(--text-muted); font-family:inherit; font-size:12px; font-weight:500; line-height:1.4; white-space:nowrap; cursor:pointer; transition:all .15s; flex-shrink:0; }
.fss-tab:hover { border-color:var(--accent); color:var(--accent); background:var(--accent-tint); }
.fss-tab.active { border-color:var(--accent); color:var(--accent); background:var(--accent-tint-strong); font-weight:700; }
.fss-list { max-height:280px; overflow-y:auto; margin:0; padding:8px 0; border-radius:0 0 10px 10px; list-style:none; }
.fss-list::-webkit-scrollbar { width:6px; }
.fss-list::-webkit-scrollbar-track { background:transparent; }
.fss-list::-webkit-scrollbar-thumb { border-radius:3px; background:var(--line-strong); }
.fss-item { padding:9px 14px; color:var(--ink); font-size:13.5px; line-height:1.4; cursor:pointer; transition:background .1s; }
.fss-item:hover,.fss-item.fss-active { color:var(--accent); background:var(--accent-tint); }
.fss-item.selected { color:var(--accent); background:var(--accent-tint-strong); font-weight:600; }
.fss-empty { padding:20px 14px; border-radius:0 0 10px 10px; color:#9A968B; font-size:13px; text-align:center; }
