.reader-tools { padding: 15px; border-bottom: 1px solid #ddd; background: #f8fafb; }
.reader-tools-actions { display: block; }
.reader-tools-actions > .btn { display: inline-block; margin: 0 8px 8px 0; vertical-align: top; }
.reader-tools .btn { min-height: 44px; padding: 11px 14px; white-space: normal; }
.reader-tools [hidden] { display: none !important; }
.reader-citation { display: inline; }
.reader-citation > summary { display: inline-flex; align-items: center; gap: 7px; margin: 0; cursor: pointer; list-style: none; vertical-align: middle; }
.reader-tools .reader-citation > summary { min-height: 30px; padding: 4px 8px; font-size: 12px; line-height: 20px; }
.reader-citation > summary::-webkit-details-marker { display: none; }
.reader-citation > summary::after { content: ""; display: inline-block; width: 6px; height: 6px; margin-left: 10px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; vertical-align: 3px; transform: rotate(45deg); }
.reader-tools .reader-citation[open] > summary.btn-default { background: var(--sww-accent, #6331b7); border-color: var(--sww-accent, #6331b7); color: #fff; }
.reader-citation[open] > summary::after { transform: rotate(225deg); vertical-align: 0; }
.reader-citation-content { width: 100%; padding-top: 8px; white-space: normal; }
.reader-citation textarea { height: auto; min-height: 42px; resize: vertical; background: #fff; }
.reader-citation-content .btn { margin-top: 8px; }
.reader-copy-status { margin: 8px 0 0; color: var(--sww-muted, #626773); font-size: .875em; }
.reader-copy-status.is-copy-success { animation: reader-copy-feedback 3s ease-in-out both; }
@keyframes reader-copy-feedback {
    0%, 100% { opacity: 0; }
    20%, 75% { opacity: 1; }
}
.reader-copy-status:empty { margin: 0; }
.reader-tools summary:focus-visible, .reader-tools .btn:focus-visible { outline: 3px solid #23527c; outline-offset: 3px; }
.reader-inline-icon { flex: 0 0 14px; width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.reader-tools .sww-reader-identifiers { display: block; margin: 0; }
.reader-tools .reader-isbn { display: block; margin-bottom: 6px; }
.reader-tools .reader-doi { display: inline; margin-right: 8px; max-width: 100%; vertical-align: middle; }
.reader-quick-actions { display: inline; white-space: nowrap; }
.reader-doi > a { min-width: 0; overflow-wrap: anywhere; }
.reader-tools :is(.reader-doi-copy, .reader-citation-copy) { display: inline-flex; align-items: center; gap: 5px; min-height: 30px; padding: 4px 8px; font-size: 11px; line-height: 20px; font-weight: 500; vertical-align: middle; }
.reader-tools .reader-doi-copy { margin-right: 6px; }
.reader-doi-copy .reader-inline-icon { flex-basis: 12px; width: 12px; height: 12px; }
#search-content .public-search-result .list-group-item-text { margin-top: 6px; overflow-wrap: anywhere; }
@media (max-width: 480px) {
    .reader-tools-actions > .btn { width: 100%; margin: 0 0 8px; }
}
@media (max-width: 767px) {
    .reader-tools .reader-doi { display: block; margin: 0 0 8px; }
}
@media (prefers-reduced-motion: reduce) {
    .reader-copy-status.is-copy-success { animation: none; opacity: 1; }
}
