.search-toolbar { display:flex; align-items:center; gap:.75rem; }
.search-input-wrap { position:relative; flex:1; max-width:30rem; }
.search-input-wrap input { width:100%; padding-right:2.2rem; }
.search-clear { position:absolute; right:.45rem; top:50%; width:1.75rem; height:1.75rem; display:none; align-items:center; justify-content:center; border-radius:999px; color:var(--text-muted2); transform:translateY(-50%); }
.search-clear:hover { color:var(--text); background:var(--accent); }
.search-status { min-width:0; color:var(--text-muted); font-size:.85rem; }
.search-status strong { color:var(--text); }
.search-loading { display:none; color:var(--primary); font-size:.75rem; }
.search-loading.is-visible { display:inline-flex; align-items:center; gap:.35rem; }
.search-fallback { margin-top:1.5rem; padding:1.35rem; border:1px solid var(--border); border-radius:1rem; background:color-mix(in srgb, var(--bg-card) 92%, var(--accent)); }
.search-fallback-empty { text-align:center; padding:.75rem 0 1.15rem; }
.search-fallback-icon { width:3.25rem; height:3.25rem; margin:0 auto .8rem; display:flex; align-items:center; justify-content:center; border-radius:1rem; color:var(--primary); background:var(--primary-light); }
.search-fallback-title { color:var(--text); font-weight:700; }
.search-fallback-copy { margin-top:.35rem; color:var(--text-muted); font-size:.8rem; }
.search-fallback-section { margin-top:1.3rem; padding-top:1.15rem; border-top:1px solid var(--border); }
.search-fallback-heading { display:flex; align-items:center; justify-content:space-between; gap:.75rem; margin-bottom:.75rem; color:var(--text); font-size:.95rem; font-weight:700; }
.search-category-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.search-category-link { display:flex; align-items:center; justify-content:space-between; gap:.75rem; min-width:0; padding:.75rem .85rem; border:1px solid var(--border); border-radius:.7rem; background:var(--bg-card); color:var(--text); transition:border-color .15s, background-color .15s, transform .15s; }
.search-category-link:hover { border-color:color-mix(in srgb,var(--category-color,var(--primary)) 48%,var(--border)); background:color-mix(in srgb,var(--category-color,var(--primary)) 12%,var(--bg-card)); transform:translateY(-1px); }
.search-category-link .search-category-count { color:color-mix(in srgb,var(--category-color,var(--primary)) 64%,var(--text-muted2)); }
.search-category-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.82rem; font-weight:600; }
.search-category-count { flex:0 0 auto; color:var(--text-muted2); font-size:.72rem; }
.search-recommendations { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
@media (max-width:639px) {
    .search-toolbar { align-items:stretch; flex-direction:column; }
    .search-input-wrap { max-width:none; width:100%; }
    .search-status { min-height:1.1rem; }
    .search-category-grid, .search-recommendations { grid-template-columns:1fr; }
    .search-fallback { padding:1rem; }
}
