.chat-search-results { margin: 1.1rem 0 1.6rem; border: 1px solid var(--border, #dedbd2); border-radius: 14px; background: var(--surface, #fff); overflow: hidden; color: var(--text, #252820); }
.chat-search-results > header { padding: 1.25rem 1.3rem .8rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.chat-search-results h3 { font-size: 1.3rem; margin: .15rem 0; }
.search-eyebrow { margin: 0; text-transform: uppercase; letter-spacing: .11em; font-size: .65rem; color: #64745c; font-weight: 700; }
.search-match-label { font-size: .72rem; border: 1px solid #d8e0d0; color: #405338; background: #f2f6ee; padding: .3rem .55rem; border-radius: 20px; }
.chat-search-results form { margin: 0 1.3rem; }
.chat-search-results label { display: flex; flex-direction: column; gap: .35rem; min-width: 0; font-size: .72rem; color: #596051; }
.chat-search-results input, .chat-search-results select { box-sizing: border-box; width: 100%; min-width: 0; font: inherit; font-size: .85rem; padding: .55rem .65rem; color: inherit; background: var(--surface, #fff); border: 1px solid #d6d9cf; border-radius: 6px; }
.search-query-row { display: flex; align-items: end; gap: .6rem; }
.search-query-row label { flex: 1; }
.chat-search-results button { font: inherit; font-size: .78rem; border: 1px solid #ccd2c3; background: #f6f8f2; color: #35472b; border-radius: 6px; padding: .55rem .75rem; cursor: pointer; }
.chat-search-results button:hover { background: #eaf0e3; }
.chat-search-results button:disabled { opacity: .45; cursor: default; }
.chat-search-results button:focus-visible, .chat-search-results input:focus-visible, .chat-search-results select:focus-visible, .chat-search-results summary:focus-visible, .chat-search-results a:focus-visible { outline: 2px solid #657f4d; outline-offset: 3px; }
.search-filter-panel { margin: .85rem 0; }
.search-filter-panel summary { cursor: pointer; font-size: .8rem; color: #4c5d40; }
.search-filter-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7rem; padding: .8rem 0; }
.search-controls { display: flex; align-items: end; flex-wrap: wrap; gap: .6rem; margin: .8rem 0; }
.search-controls label { flex: 1; }
.search-scope, .search-explanation, .search-live-note { margin: .7rem 1.3rem; font-size: .73rem; line-height: 1.5; color: #697060; }
.search-scope { color: #405136; }
.search-live-note { font-size: .66rem; padding-bottom: .3rem; }
.search-hit-list { list-style: none; padding: 0; margin: 0; }
.search-hit { border-top: 1px solid #e8eadf; padding: 1.1rem 1.3rem; }
.search-hit-heading { display: flex; gap: .6rem; align-items: baseline; }
.search-hit-heading h4 { font-size: 1rem; line-height: 1.45; margin: 0; }
.search-hit-heading a { color: #344b2b; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.search-hit-number { color: #88907e; font-size: .7rem; min-width: 1rem; }
.search-hit-meta { color: #727769; font-size: .72rem; margin: .4rem 0 .65rem; line-height: 1.6; }
.search-hit-snippet { font-size: .86rem; line-height: 1.7; margin: 0; }
.search-hit mark { background: #ecedca; color: inherit; padding: 0 .05em; }
.search-hit-full { margin-top: .65rem; font-size: .75rem; }
.search-hit-full summary { cursor: pointer; color: #5b6c4b; }
.search-hit-full p { white-space: pre-wrap; font-size: .84rem; line-height: 1.7; max-height: 32rem; overflow: auto; }
.search-hit-full a { color: #405a32; }
.search-empty, .search-status, .search-error { margin: 1rem 1.3rem; font-size: .85rem; line-height: 1.6; }
.search-error { color: #a44232; }
.chat-search-results > footer { border-top: 1px solid #e8eadf; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .8rem; padding: .9rem 1.3rem; }
.search-pagination, .search-exports { display: flex; align-items: center; gap: .5rem; font-size: .72rem; color: #697060; }
.search-exports { flex-wrap: wrap; }
@media (max-width: 600px) { .search-filter-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .chat-search-results > header { align-items: start; } .search-match-label { max-width: 8rem; } .search-exports span { flex-basis: 100%; } }
