.osbs .osbs-edit-document{margin:18px 0 0;padding-top:10px;border-top:1px solid var(--bs-line);}
.osbs .osbs-edit-document a{display:inline-block;font-size:12px!important;line-height:1.5!important;color:var(--bs-muted);text-decoration:underline;text-underline-offset:3px;}
/* Compact references avoid the theme's paragraph and heading spacing. */
.osbs .osbs-reference{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px;padding:12px;margin:16px 0;border:1px solid var(--bs-line);border-radius:8px;background:var(--bs-paper);box-shadow:none;}
.osbs .osbs-reference-cover{display:block;align-self:start;height:78px;overflow:hidden;background:var(--bs-tint);}
.osbs .osbs-reference-cover img{width:100%;height:78px;object-fit:contain;margin:0;}
.osbs .osbs-reference-cover .osbs-auto-cover{height:78px;}
.osbs .osbs-reference-cover .osbs-placeholder{min-height:78px;height:78px;font-size:9px;gap:2px;}
.osbs .osbs-reference-cover .osbs-placeholder>span:first-child{font-size:24px;}
.osbs .osbs-reference-body{min-width:0;display:flex;flex-direction:column;gap:5px;}
.osbs .osbs-reference .osbs-reference-label{font-size:10px!important;line-height:1.3!important;color:var(--bs-muted);}
.osbs .osbs-reference .osbs-reference-title,.osbs .osbs-reference .osbs-reference-title a{font-size:15px!important;line-height:1.35!important;font-weight:700;color:var(--bs-ink);margin:0;padding:0;overflow-wrap:anywhere;text-decoration:none;}
.osbs .osbs-reference-meta{display:flex;flex-wrap:wrap;gap:2px 12px;color:var(--bs-muted);}
.osbs .osbs-reference .osbs-reference-meta,.osbs .osbs-reference .osbs-reference-meta *{font-size:11px!important;line-height:1.4!important;margin:0;padding:0;overflow-wrap:anywhere;}
.osbs .osbs-reference-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin:2px 0 0;}
.osbs .osbs-reference .osbs-reference-links a{display:inline-flex;align-items:center;min-height:28px;padding:0;border:0;background:none;color:var(--bs-blue);border-radius:0;font-size:12px!important;line-height:1.4!important;text-decoration:underline;font-weight:500;}
@media(pointer:coarse){.osbs .osbs-reference .osbs-reference-links a{min-height:44px;}}
/* Previous card rules retained for cached shortcode markup. */
.osbs .osbs-card.osbs-embedded {
    display:grid;
    grid-template-columns:96px minmax(0,1fr);
    width:100%;
    max-width:100%;
    margin:18px 0;
    border:1px solid var(--bs-line);
    border-radius:8px;
    box-shadow:none;
    font-size:14px;
    line-height:1.5;
}
.osbs .osbs-embedded .osbs-cover {
    height:auto; min-height:0; padding:12px 8px;
    align-items:flex-start;
}
.osbs .osbs-embedded .osbs-cover-image {
    width:100%; height:auto; max-height:120px; margin:0;
}
.osbs .osbs-embedded .osbs-auto-cover { height:auto; }
.osbs .osbs-embedded .osbs-placeholder { min-height:96px; font-size:11px; }
.osbs .osbs-embedded .osbs-placeholder > span:first-child { font-size:30px; }
.osbs .osbs-embedded .osbs-card-body { padding:14px 16px; }
.osbs .osbs-card.osbs-embedded h3 {
    font-size:17px; line-height:1.35; margin:0 !important;
}
.osbs .osbs-card.osbs-embedded .osbs-document-type {
    font-size:12px !important; line-height:1.5 !important;
    margin:0 0 8px !important; padding:0 0 0 8px;
}
/* Article typography can explicitly size links and spans as well as paragraphs. */
.osbs .osbs-card.osbs-embedded .osbs-document-type > span,
.osbs .osbs-card.osbs-embedded .osbs-document-type > a {
    font-size:inherit !important; line-height:inherit !important;
}
.osbs .osbs-embedded .osbs-meta { font-size:12px; line-height:1.5; margin:1px 0; }
.osbs .osbs-card.osbs-embedded .osbs-summary {
    font-size:13px; line-height:1.55;
    margin:10px 0 0 !important; padding:0 !important;
}
.osbs .osbs-card.osbs-embedded .osbs-badges {
    gap:5px; margin:10px 0 9px !important; padding:0 !important;
}
.osbs .osbs-embedded .osbs-badges a { font-size:12px; padding:3px 8px; }
.osbs .osbs-embedded .osbs-actions { margin:3px 0 0; gap:8px; }
.osbs .osbs-embedded .osbs-button {
    min-height:34px; padding:6px 10px; border-radius:6px;
    font-size:12px; line-height:1.4; text-decoration:none;
}
.osbs .osbs-embedded .osbs-library-link {
    display:inline-flex; align-items:center; min-height:34px;
    margin:0; padding:4px 2px; font-size:12px; line-height:1.4;
}
@media (max-width:480px) {
    .osbs .osbs-card.osbs-embedded { grid-template-columns:64px minmax(0,1fr); }
    .osbs .osbs-embedded .osbs-cover { padding:12px 5px; }
    .osbs .osbs-embedded .osbs-card-body { padding:12px 10px; }
    .osbs .osbs-card.osbs-embedded h3 { font-size:16px; }
}
/* Retain comfortable touch targets while keeping desktop buttons compact. */
@media (pointer:coarse) {
    .osbs .osbs-embedded .osbs-button,
    .osbs .osbs-embedded .osbs-library-link { min-height:44px; }
}
