.doc-search-dialog { width:min(900px,calc(100vw - 28px)); max-height:calc(100dvh - 28px); padding:22px; color:var(--ink); border:1px solid #d6d0ca; border-radius:16px; box-shadow:0 20px 70px #25272935; background:#fff; }
.doc-search-dialog::backdrop { background:#26262766; backdrop-filter:blur(2px); }
.doc-search-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.doc-search-head h2 { margin:0; font-size:21px; line-height:1.4; }
.doc-search-object { margin:5px 0 0; color:var(--muted); font-size:14px; overflow-wrap:anywhere; }
.doc-search-close { border:1px solid var(--line); border-radius:8px; background:#fff; min-width:36px; min-height:36px; font-size:24px; line-height:1; flex:none; }
.doc-search-form { display:grid; grid-template-columns:minmax(120px,1fr) minmax(130px,190px) auto; gap:9px; margin-top:20px; }
.doc-search-form input,.doc-search-form select { width:100%; min-width:0; min-height:43px; border:1px solid #c8c1bb; border-radius:8px; background:#fff; padding:9px 11px; color:var(--ink); font-size:15px; }
.doc-search-form input:focus,.doc-search-form select:focus { outline:2px solid #d94c43; outline-offset:2px; }
.doc-search-status { margin:15px 0; font-size:14px; line-height:1.6; overflow-wrap:anywhere; color:#5f534c; }
.doc-search-status.error { color:#a41d29; }
.doc-search-coverage { margin:8px 0 14px; padding:11px 14px; border:1px solid #ead8b8; border-radius:8px; color:#715016; background:#fff9ed; }
.doc-search-coverage p { margin:3px 0; font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
.doc-search-results { display:grid; gap:12px; max-height:58dvh; overflow:auto; padding:2px 3px 4px; }
.doc-search-result { padding:15px 17px; border:1px solid #e1d9d2; border-radius:10px; background:#fff; }
.doc-search-result-heading { display:flex; gap:10px; align-items:flex-start; justify-content:space-between; }
.doc-search-result h3 { margin:0; font-size:16px; line-height:1.5; overflow-wrap:anywhere; }
.doc-search-kind { flex:none; padding:3px 7px; border:1px solid #e7dbd3; border-radius:6px; background:#faf6f2; color:#725347; font-size:11px; }
.doc-search-meta,.doc-search-path { margin:6px 0 0; font-size:12px; color:var(--muted); line-height:1.5; overflow-wrap:anywhere; }
.doc-search-snippet { margin:12px 0; white-space:pre-wrap; font-size:15px; line-height:1.65; overflow-wrap:anywhere; }
.doc-search-mark { color:#452a18; background:#ffe0a4; border-radius:2px; font-weight:650; padding:0 1px; }
.doc-search-result-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.doc-search-result-actions .button { min-height:34px; padding:6px 10px; font-size:13px; }
.doc-search-original { color:#a3342f; font-size:13px; }
.doc-search-location { outline:3px solid #c8453b; outline-offset:3px; }
#doc-search-open { white-space:nowrap; }
@media(max-width:680px) { .doc-search-dialog { width:calc(100vw - 16px); max-height:calc(100dvh - 16px); padding:16px; border-radius:12px; }.doc-search-head h2 { font-size:18px; }.doc-search-form { grid-template-columns:minmax(0,1fr) auto; }.doc-search-form input { grid-column:1/-1; }.doc-search-results { max-height:54dvh; }.doc-search-result { padding:12px; }.doc-search-result-heading { flex-wrap:wrap; }.doc-search-kind { font-size:11px; }.doc-search-form select { font-size:13px; } }

.doc-search-incomplete { font-size:13px; line-height:1.55; overflow-wrap:anywhere; }
.doc-search-incomplete summary { cursor:pointer; font-weight:600; padding:5px 0; }
.doc-search-incomplete ul { margin:8px 0 4px; padding-left:20px; max-height:28dvh; overflow:auto; }
.doc-search-incomplete li { margin:9px 0; }
.doc-search-incomplete li>span { display:block; }
.doc-search-incomplete-path { color:var(--muted); font-size:12px; }
