/* ============================================================
   OSP changelog: entry preview + include headings (osp_changelog ext)
   ============================================================ */

/* ── Preview of a single osp-change entry (shown where declared) ── */

.osp-change-preview {
    border: 1px solid #d0d7de;
    border-left: 4px solid #6c757d;
    border-radius: 4px;
    padding: 0.6em 1em;
    margin: 1em 0;
    background: #fafbfc;
}

.osp-change-preview .osp-change-badge {
    display: inline-block;
    font-family: monospace;
    font-size: 0.8em;
    font-weight: 700;
    text-transform: uppercase;
    color: #57606a;
    background: #eaeef2;
    border-radius: 3px;
    padding: 0.1em 0.5em;
    margin-bottom: 0.5em;
}

.osp-change-preview:has(.osp-change-bug) .osp-change-badge {
    border-left: 3px solid #cf222e;
}

.osp-change-preview:has(.osp-change-security) .osp-change-badge {
    border-left: 3px solid #9a6700;
}

.osp-change-preview:has(.osp-change-features) .osp-change-badge {
    border-left: 3px solid #1a7f46;
}

/* ── Heading generated by osp-include-changes for each type group ── */

h3.osp-change-heading {
    font-weight: 700;
}

h3.osp-change-heading .headerlink,
h4.osp-change-feature-title .headerlink {
    visibility: hidden;
    margin-left: 0.3em;
}

h3.osp-change-heading:hover .headerlink,
h4.osp-change-feature-title:hover .headerlink {
    visibility: visible;
}

/* Feature entry title (osp-change :type: features) */

h4.osp-change-feature-title {
    font-weight: 700;
}

.osp-change-preview .osp-change-feature-title {
    margin-top: 0.4em;
    font-size: 1.1em;
    font-weight: 700;
}
