/* Originator Similarity Styles */

/* Breathing room between the tab rule and pane content (originator/source detail).
   Top only: #stickyHeader already supplies the same 0.75rem below the last
   pane child, so a matching padding-bottom doubled the gap under the Bio
   credit vs the gap under the Bio/Names rule. */
.originator-tab-content {
    padding: 0.75rem 0 0;
}

/* Chicklet loading state (applied via originator-chicklets.ts) */

.chicklet-link {
    position: relative;
    cursor: pointer;
}

.chicklet-link.loading {
    pointer-events: none;
    opacity: 0.8;
}

.chicklet-link.loading .chicklet-content {
    opacity: 0.3;
}

.chicklet-link.loading .chicklet-spinner {
    display: inline-block !important;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.chicklet-spinner .spinner-border-sm {
    width: 0.875rem;
    height: 0.875rem;
}

/* Open Library cover, full height of the text beside it: the source masthead
   (title, full name, byline) and, once stuck, the Folio bar (title, search).
   source-detail-init.ts sets the height from the text block; the 2:3 width
   attributes hold the box until the image loads. */
.source-cover-row {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.source-cover-row-text {
    flex: 1 1 auto;
    min-width: 0;
}

/* max-height stops a long, wrapping title from widening the cover, which
   would narrow the text and wrap it further. */
.source-cover {
    flex: none;
    height: 4.5rem;
    max-height: 7rem;
}

@media (max-width: 575.98px) {
    .source-cover {
        max-height: 5.5rem;
    }
}

.source-cover img {
    display: block;
    height: 100%;
    width: auto;
    border-radius: 2px;
    box-shadow: 0 0 0 1px var(--bs-border-color-translucent);
}

.collection-folio-bar-main {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.collection-folio-bar:not(.is-stuck) .source-cover {
    display: none;
}
