/* Public search dialog, shared by all front-end pages. */
#searchOverlay{position:fixed;inset:0;z-index:2000;display:none;overflow-y:auto;padding:20px 15px 90px;background:#0009;overscroll-behavior:contain}
#searchOverlay.show{display:block}
#searchOverlay .search-panel{width:100%;max-width:560px;margin:65px auto 0;padding:24px;border:1px solid var(--front-border);border-radius:8px;background:var(--front-surface);color:var(--front-text);box-shadow:0 15px 40px #0004}
#searchOverlay .search-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:22px}
#searchOverlay .title{font-size:20px;font-weight:500}
#searchOverlay .sub{margin-top:5px;color:var(--front-muted);font-size:12px}
#searchOverlay .close-btn,#searchOverlay .clear-input-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:5px;background:transparent;color:var(--front-muted);font-size:25px}
#searchOverlay .close-btn:hover,#searchOverlay .clear-input-btn:hover{color:var(--front-accent)}
#searchOverlay .search-input-wrapper{display:flex;gap:10px;margin-bottom:25px}
#searchOverlay .search-input-box{position:relative;flex:1;min-width:0}
#searchOverlay #searchInput{width:100%;height:46px;padding:10px 40px 10px 13px;border:1px solid var(--front-border);border-radius:5px;background:var(--front-panel);color:var(--front-text);font:inherit;font-size:16px;line-height:1.5}
#searchOverlay .clear-input-btn{position:absolute;right:5px;top:5px;display:none}
#searchOverlay .clear-input-btn.show{display:flex}
#searchOverlay .do-search-btn{flex:0 0 auto;min-height:46px;padding:10px 20px;border:0;border-radius:5px;background:var(--front-accent);color:#fff}
#searchOverlay .search-section{margin-top:22px}
#searchOverlay .section-title{display:flex;align-items:center;gap:10px;margin:0 0 12px;color:var(--front-text);font-size:14px;font-weight:500}
#searchOverlay .section-title small{color:var(--front-dim);font-size:12px;font-weight:400}
#searchOverlay .tags{display:flex;flex-wrap:wrap;gap:9px}
#searchOverlay .tag{max-width:100%;min-height:36px;padding:6px 12px;border:0;border-radius:4px;background:var(--front-panel);color:var(--front-muted);font-size:13px;overflow-wrap:anywhere;text-align:left;cursor:pointer}
#searchOverlay .tag:hover{color:var(--front-accent);background:var(--front-accent-soft)}
#searchOverlay .history-header{display:flex;align-items:center;justify-content:space-between;gap:10px}
#searchOverlay .clear-btn{min-height:36px;padding:4px 8px;border:0;background:transparent;color:var(--front-dim);font-size:12px}
#searchOverlay .search-empty-tip{display:none;padding:15px 0;color:var(--front-muted);font-size:13px}
#searchOverlay .search-empty-tip.show{display:block}
@media(max-width:640px){#searchOverlay .search-panel{margin-top:45px;padding:20px 17px}#searchOverlay .tag{min-height:42px}#searchOverlay .do-search-btn{padding-inline:16px}}
