/* ============================================================
   pages/changelog.css — Public-Changelog (0.1.3.1)
   ------------------------------------------------------------
   Ersetzt das alte /assets/css/changelog_public.css. Vokabular:
   .cl-pub-* (kein Konflikt mit Admin-`.cl-*`).

   0.1.3.1: Description-Block bekommt Paragraph-Spacing,
   damit mehrere Absätze in der DB-Description visuell getrennt
   sind. Render-Logik in changelog.php splittet an \n\n in <p>.
============================================================ */

/* ----------------------------------------------------------------
   Ein Version-Block — Headline + Modul-Gruppen
   ---------------------------------------------------------------- */
.cl-pub-version {
    background: var(--pub-bg-surface);
    border: 1px solid var(--pub-border);
    border-left: 4px solid var(--pub-brand);
    border-radius: var(--pub-radius-md);
    padding: 18px 22px;
    margin-bottom: 18px;
    box-shadow: var(--pub-shadow-sm);
}

.cl-pub-version__title {
    margin: 0 0 12px 0;
    font-size: 1.15rem;
    color: var(--pub-text);
}

/* ----------------------------------------------------------------
   Modul-Gruppe innerhalb einer Version
   ---------------------------------------------------------------- */
.cl-pub-mod {
    margin-top: 14px;
    padding-top: 10px;
    border-top: 1px dashed var(--pub-border);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--pub-text-muted);
    font-weight: 600;
}

.cl-pub-mod:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

/* ----------------------------------------------------------------
   Einzelner Changelog-Eintrag
   ---------------------------------------------------------------- */
.cl-pub-entry {
    padding: 12px 0;
}

.cl-pub-entry + .cl-pub-entry {
    border-top: 1px solid var(--pub-border);
}

.cl-pub-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
    font-size: 0.95rem;
}

.cl-pub-meta strong {
    color: var(--pub-text);
}

.cl-pub-meta time,
.cl-pub-meta .cl-pub-date {
    color: var(--pub-text-muted);
    font-size: 0.85rem;
}

.cl-pub-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    background: var(--pub-bg-subtle);
    border: 1px solid var(--pub-border);
    color: var(--pub-text-muted);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

/* Typ-spezifische Badges */
.cl-pub-badge--feature     { color: var(--pub-info);    border-color: var(--pub-info-border);    background: var(--pub-info-bg); }
.cl-pub-badge--fix         { color: var(--pub-success); border-color: var(--pub-success-border); background: var(--pub-success-bg); }
.cl-pub-badge--improvement { color: var(--pub-brand-strong); border-color: var(--pub-brand-soft); background: var(--pub-brand-tint); }
.cl-pub-badge--security    { color: var(--pub-danger);  border-color: var(--pub-danger-border);  background: var(--pub-danger-bg); }

/* ----------------------------------------------------------------
   Description: mehrere Absätze
   0.1.3.1: <p>-Render statt Block-Text. Bullet-Listen ebenfalls
   gestylt für reformatierte Migration-Texte.
   ---------------------------------------------------------------- */
.cl-pub-desc {
    color: var(--pub-text);
    line-height: 1.55;
    font-size: 0.92rem;
}

.cl-pub-desc p {
    margin: 0 0 8px 0;
}

.cl-pub-desc p:last-child {
    margin-bottom: 0;
}

.cl-pub-desc ul,
.cl-pub-desc ol {
    margin: 4px 0 8px 0;
    padding-left: 20px;
}

.cl-pub-desc li + li {
    margin-top: 2px;
}

.cl-pub-desc code {
    background: var(--pub-bg-subtle);
    padding: 1px 6px;
    border-radius: var(--pub-radius-sm);
    font-size: 0.9em;
    color: var(--pub-brand-strong);
}

.cl-pub-empty {
    padding: 24px;
    text-align: center;
    color: var(--pub-text-muted);
    background: var(--pub-bg-subtle);
    border: 1px dashed var(--pub-border);
    border-radius: var(--pub-radius-md);
}
