/* Search view (AI agent). Tokens from app.css only; every class prefixed search-. */
.search-top{flex:none;display:flex;align-items:center;gap:4px;padding:calc(10px + var(--sat)) 6px 6px 16px;max-width:760px;width:100%;margin:0 auto}
.search-field{flex:1;min-width:0}
.search-field input::-webkit-search-cancel-button,.search-field input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}
.search-clear{position:relative;flex:none;width:32px;height:32px;margin-right:-8px;border-radius:50%;display:grid;place-items:center;color:var(--muted)}
.search-clear[hidden]{display:none}
.search-clear::before{content:"";position:absolute;inset:-6px}
.search-clear svg{width:18px;height:18px}
.search-clear:active{background:var(--surface2)}
.search-cancel{flex:none;height:44px;padding:0 12px}

.search-aibar{flex:none;display:flex;align-items:center;gap:10px;padding:2px 16px 8px;max-width:760px;width:100%;margin:0 auto;min-height:48px}
.search-ai{position:relative;flex:none;height:36px;padding:0 8px 0 12px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14px;background:var(--surface);color:var(--fg2);box-shadow:0 0 0 .5px var(--hair2)}
.search-ai::before{content:"";position:absolute;inset:-5px -2px}
.search-ai svg{width:16px;height:16px;flex:none}
/* on-state: accent to a deeper accent, so the label keeps 4.5:1 along the whole fill (the --ai cyan end is too light for white text) */
.search-ai[aria-pressed="true"]{background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 62%,var(--fg)));color:var(--accent-fg);box-shadow:none}
.search-ai[data-state="off"]{color:var(--muted)}
.search-ai__sw{flex:none;width:30px;height:18px;border-radius:9px;background:var(--surface3);position:relative;transition:background .15s}
.search-ai__sw::after{content:"";position:absolute;left:2px;top:2px;width:14px;height:14px;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .15s var(--ease)}
.search-ai[aria-pressed="true"] .search-ai__sw{background:rgba(255,255,255,.35)}
.search-ai[aria-pressed="true"] .search-ai__sw::after{transform:translateX(12px)}
.search-ai__note{flex:1;min-width:0;color:var(--muted);font-size:13px;line-height:1.3}
.search-ai__setup{flex:none;height:36px;padding:0 6px;color:var(--accent);font-weight:650;font-size:14px;position:relative}
.search-ai__setup[hidden]{display:none}
.search-ai__setup::before{content:"";position:absolute;inset:-5px -4px}
.search-ai-ic{background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent) 62%,var(--fg)))!important;color:var(--accent-fg)!important}

.search-body{padding-bottom:12px}
.search-go{margin-top:4px}
.search-sug[hidden],.search-empty[hidden],.search-prodhost[hidden]{display:none}
.search-sug .stall{min-height:68px}

/* live products */
.search-prods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.search-prod{display:flex;flex-direction:column;align-items:stretch;text-align:left;background:var(--surface);border-radius:var(--r-row);padding:8px 8px 10px;box-shadow:0 0 0 .5px var(--hair);min-width:0}
.search-prod:active{background:var(--surface2)}
.search-prod.is-skel{pointer-events:none}
.search-prod__img{aspect-ratio:1/1;border-radius:12px;background:var(--surface3);overflow:hidden;display:grid;place-items:center;color:var(--muted)}
.search-prod__img img{width:100%;height:100%;object-fit:cover;display:block}
.search-prod__img.is-ph svg{width:30px;height:30px;opacity:.6}
.search-prod__n{margin-top:8px;font-weight:620;font-size:14px;line-height:1.28;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;padding:0 2px}
.search-prod__s{margin-top:2px;color:var(--muted);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 2px}
.search-prod__b{margin-top:6px;display:flex;gap:6px;padding:0 2px}
.search-prod__miss{margin-top:6px;color:var(--muted);font-size:12px;padding:0 2px}
.search-fine{color:var(--muted);font-size:12.5px;line-height:1.45;margin:10px 4px 0}
.search-note{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border-radius:var(--r-row);padding:14px;box-shadow:0 0 0 .5px var(--hair);color:var(--muted)}
.search-note>svg{flex:none;width:22px;height:22px;margin-top:1px}
.search-note div{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:13.5px;line-height:1.4}
.search-note b{color:var(--fg);font-size:14.5px}
.search-retry,.search-link{align-self:flex-start;min-height:44px;padding:0 4px;margin-left:-4px;color:var(--accent);font-weight:650;font-size:14.5px}

/* AI understanding panel */
.search-panel{background:var(--surface);border-radius:var(--r-card);box-shadow:var(--shadow);padding:16px;margin-top:6px}
.search-panel__wait{display:flex;align-items:center;gap:12px;min-height:44px;font-weight:620;font-size:15.5px}
.search-panel__k{display:flex;align-items:center;gap:8px;font-size:15px}
.search-panel__k svg{width:18px;height:18px;color:var(--accent)}
.search-panel__note{margin:8px 0 0;color:var(--muted);font-size:13.5px;line-height:1.45}
.search-panel__fine{margin:10px 0 0;color:var(--muted);font-size:12.5px}
.search-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.search-chip{--pc:var(--accent);display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 8px 0 12px;border-radius:999px;background:var(--accent-soft);color:color-mix(in srgb,var(--pc) 70%,var(--fg));font-weight:640;font-size:14px;max-width:100%;position:relative}
.search-chip::before{content:"";position:absolute;inset:-4px -2px}
.search-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-chip svg{flex:none;width:15px;height:15px}
.search-chip[data-p="1"]{background:var(--p1-soft);--pc:var(--p1)}
.search-chip[data-p="2"]{background:var(--p2-soft);--pc:var(--p2)}
.search-chip[data-p="3"]{background:var(--p3-soft);--pc:var(--p3)}
.search-chip[data-p]{color:color-mix(in srgb,var(--pc) 56%,var(--fg))}
.search-none{color:var(--muted);font-size:14px}
.search-count{margin:14px 2px 12px;color:var(--fg2);font-weight:600;font-size:14.5px;min-height:20px}
.search-panel__btns{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.search-panel__btns .btn{flex:1 1 100%}
.search-spin{flex:none;width:22px;height:22px;border-radius:50%;border:3px solid var(--surface3);border-top-color:var(--accent);animation:searchSpin .8s linear infinite}
@keyframes searchSpin{to{transform:rotate(360deg)}}

@media (min-width:700px){.search-prods{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.search-spin{animation:none;border-top-color:var(--accent);border-right-color:var(--accent)}.search-ai__sw,.search-ai__sw::after{transition:none}}

/* global search results: group counts, highlight, private hint, example chips */
.search-gn{margin-left:8px;color:var(--muted);font-weight:600;letter-spacing:0}
.search-mk{background:var(--accent-soft);color:inherit;border-radius:3px;padding:0 1px}
.search-bd{flex:none;margin-left:8px}
.search-priv{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.3}
.search-eg{display:flex;flex-wrap:wrap;gap:8px}
.search-eg .chip{height:44px;padding:0 16px}
.search-nores{margin:18px 4px 0}
.search-sug .row{min-height:56px}

/* voice mic inside the field */
.search-mic{flex:none;display:inline-flex;align-items:center;margin-right:-12px}
.search-sug .row .thumb{flex:none}
