/* ReadMe Bible — Semantic Search styles */

.bs-modal:not(.bs-page-view) .bs-search-mode-toggle {
    display: flex;
    gap: 6px;
    margin-bottom: 10px;
}

.bs-modal:not(.bs-page-view) .bs-search-mode-btn {
    flex: 1;
    padding: 8px 12px;
    border: 1px solid var(--bs-border, #ddd);
    background: var(--bs-bg, #fff);
    color: var(--bs-text, #333);
    border-radius: 8px;
    cursor: pointer;
    font-size: 14px;
    transition: all 0.15s ease;
}

.bs-modal:not(.bs-page-view) .bs-search-mode-btn.active {
    background: var(--bs-accent, #2b6cb0);
    color: #fff;
    border-color: var(--bs-accent, #2b6cb0);
}

.bs-semantic-status {
    font-size: 13px;
    color: var(--bs-muted, #777);
    margin: 8px 0;
    min-height: 0;
}

.bs-semantic-hint {
    font-size: 12px;
    color: var(--bs-muted, #999);
    margin-top: 6px;
    font-style: normal;
}

.bs-semantic-score {
    font-size: 11px;
    color: var(--bs-muted, #999);
    margin-left: 8px;
}

.bs-semantic-loading {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid var(--bs-border, #ddd);
    border-top-color: var(--bs-accent, #2b6cb0);
    border-radius: 50%;
    animation: bs-spin 0.8s linear infinite;
    vertical-align: -2px;
    margin-right: 6px;
}

@keyframes bs-spin {
    to { transform: rotate(360deg); }
}
/* AI Summaries */

.bs-summarize-row {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--bs-text, #333);
    margin-bottom: 10px;
    cursor: pointer;
}

.bs-summarize-row input {
    width: 16px;
    height: 16px;
    accent-color: var(--bs-accent, #2b6cb0);
    cursor: pointer;
}

.bs-search-meta {
    text-align: center;
    font-style: italic;
    font-size: 13px;
    color: var(--bs-muted, #777);
    margin: 4px 0 14px;
}

.bs-keywords {
    text-align: center;
    margin-bottom: 16px;
    font-size: 13px;
}

.bs-keywords-label {
    font-weight: 700;
    color: var(--bs-fg, #1a1b18);
    margin-right: 6px;
}

.bs-keyword-chip {
    display: inline-block;
    padding: 5px 14px;
    margin: 0 4px 6px;
    border: 1px solid var(--bs-border, rgba(26,27,24,.14));
    border-radius: 8px;
    background: var(--bs-surface-2, #ece8df);
    color: var(--bs-fg, #1a1b18);
    font-size: 13px;
    cursor: pointer;
    transition: border-color .15s ease;
}

.bs-keyword-chip:hover {
    border-color: var(--bs-accent, #a94f4b);
}

.bs-summary-card {
    border: 1px solid var(--bs-border, rgba(26,27,24,.14));
    border-radius: 12px;
    padding: 20px 22px;
    margin-bottom: 16px;
    background: var(--bs-surface, #fffdf8);
}

.bs-summary-heading {
    font-size: 19px;
    font-weight: 700;
    color: var(--bs-fg, #1a1b18);
    margin: 0 0 12px;
    letter-spacing: -.01em;
}

.bs-summary-text {
    font-size: 15px;
    line-height: 1.7;
    color: var(--bs-fg, #1a1b18);
    margin: 0 0 10px;
}

.bs-summary-text p { margin: 0 0 10px; }
.bs-summary-text p:last-child { margin-bottom: 0; }

.bs-summary-cite {
    background: none;
    border: none;
    padding: 0;
    color: var(--bs-accent, #2b6cb0);
    text-decoration: underline;
    cursor: pointer;
    font-size: inherit;
}

.bs-summary-loading,
.bs-summary-error {
    font-size: 13px;
    color: var(--bs-muted, #777);
    margin: 0 0 8px;
}

.bs-summary-error {
    color: #c0392b;
}

.bs-summary-retry,
.bs-summary-regen {
    font-size: 12px;
    padding: 5px 10px;
    border: 1px solid var(--bs-border, #ddd);
    background: var(--bs-bg, #fff);
    color: var(--bs-text, #333);
    border-radius: 6px;
    cursor: pointer;
}

.bs-summary-retry:hover,
.bs-summary-regen:hover {
    border-color: var(--bs-accent, #2b6cb0);
    color: var(--bs-accent, #2b6cb0);
}

.bs-perspectives {
    margin-bottom: 16px;
}

.bs-perspectives-heading {
    font-size: 19px;
    font-weight: 700;
    color: var(--bs-fg, #1a1b18);
    margin: 0 0 4px;
    letter-spacing: -.01em;
}

.bs-perspectives-sub {
    font-size: 13px;
    color: var(--bs-muted, #777);
    margin: 0 0 12px;
}

.bs-perspective {
    display: block;
    width: 100%;
    text-align: left;
    border: 1px solid var(--bs-border, rgba(26,27,24,.14));
    border-radius: 12px;
    padding: 14px 16px;
    margin-bottom: 10px;
    background: var(--bs-surface, #fffdf8);
    cursor: pointer;
    font: inherit;
    color: inherit;
    transition: border-color .15s ease;
}

.bs-perspective:hover {
    border-color: var(--bs-accent, #a94f4b);
}

.bs-perspective-name {
    display: block;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--bs-accent, #a94f4b);
    margin-bottom: 6px;
}

.bs-perspective-excerpt,
.bs-perspective-full {
    display: block;
    font-size: 14px;
    line-height: 1.65;
    color: var(--bs-fg, #1a1b18);
}

.bs-perspective-full { white-space: pre-wrap; }

.bs-perspective-more {
    display: inline-block;
    margin-top: 8px;
    font-size: 12px;
    font-weight: 600;
    color: var(--bs-accent, #a94f4b);
}
