/* Search suggestions (lc-search.js). Light by default; dark from <html data-theme="dark">, from
   the system setting when the page sets no theme, or from .lcs-dark (.lcs-light forces light). */
.lcs-list {
    --lcs-bg: #fff; --lcs-fg: #16171a; --lcs-mute: #555963; --lcs-line: #dcdce1;
    --lcs-hover: #f2f2f4; --lcs-act: #fdecee; --lcs-ring: #c21f2f; --lcs-av: #e7e8ec;
    position: absolute;
    z-index: 60;
    box-sizing: border-box;
    margin: 0;
    padding: 6px;
    list-style: none;
    max-height: min(70vh, 460px);
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--lcs-bg);
    color: var(--lcs-fg);
    border: 1px solid var(--lcs-line);
    border-radius: 12px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, .18);
    font: 15px/1.3 system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    text-align: start;
}
.lcs-list[hidden] { display: none; }
[data-theme="dark"] .lcs-list:not(.lcs-light), .lcs-list.lcs-dark {
    --lcs-bg: #1b1c20; --lcs-fg: #ececef; --lcs-mute: #a9acb3; --lcs-line: #34363d;
    --lcs-hover: #25262b; --lcs-act: #3a2126; --lcs-ring: #ff7480; --lcs-av: #2c2e34;
    box-shadow: 0 12px 32px rgba(0, 0, 0, .5);
}
@media (prefers-color-scheme: dark) {
    :root:not([data-theme]) .lcs-list:not(.lcs-light) {
        --lcs-bg: #1b1c20; --lcs-fg: #ececef; --lcs-mute: #a9acb3; --lcs-line: #34363d;
        --lcs-hover: #25262b; --lcs-act: #3a2126; --lcs-ring: #ff7480; --lcs-av: #2c2e34;
        box-shadow: 0 12px 32px rgba(0, 0, 0, .5);
    }
}
.lcs-opt {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 52px;
    padding: 6px 10px;
    border-radius: 8px;
    cursor: pointer;
}
.lcs-opt:hover { background: var(--lcs-hover); }
.lcs-opt[aria-selected="true"] { background: var(--lcs-act); box-shadow: inset 0 0 0 2px var(--lcs-ring); }
.lcs-av {
    flex: none;
    position: relative;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--lcs-av);
    color: var(--lcs-mute);
    font-weight: 700;
}
.lcs-av img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lcs-sq .lcs-av { border-radius: 8px; }
.lcs-wd .lcs-av { width: 64px; border-radius: 6px; }
.lcs-open .lcs-av { background: none; border: 1px dashed var(--lcs-line); color: var(--lcs-fg); }
.lcs-go { width: 18px; height: 18px; fill: currentColor; }
[dir="rtl"] .lcs-go { transform: scaleX(-1); }
.lcs-tx { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.lcs-nm { display: flex; align-items: center; gap: 5px; min-width: 0; font-weight: 600; }
.lcs-nm bdi, .lcs-sb { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lcs-sb { font-size: 13px; color: var(--lcs-mute); }
.lcs-ok { flex: none; width: 15px; height: 15px; fill: #1d9bf0; }
.lcs-msg { padding: 12px 10px; font-size: 14px; color: var(--lcs-mute); cursor: default; }
.lcs-busy::after {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-inline-start: 8px;
    vertical-align: -1px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: lcs-spin .8s linear infinite;
}
@keyframes lcs-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .lcs-busy::after { animation: none; } }
.lcs-vh {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}
