/* Prüfschritte als aufklappbare Ergebnisliste mit Status-Kennzeichnung. */
.pruefschritt {
    border: 1px solid var(--farbe-rahmen);
    border-radius: var(--radius-mittel);
    margin-bottom: 0.7rem;
    background: var(--farbe-flaeche);
    overflow: hidden;
}

.pruefschritt__kopf {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 0.85rem 1rem;
    cursor: pointer;
    list-style: none;
    font-weight: 600;
}

.pruefschritt__kopf::-webkit-details-marker {
    display: none;
}

.pruefschritt__kopf::after {
    content: "▸";
    margin-left: auto;
    color: var(--farbe-text-leise);
    transition: transform 0.15s ease;
}

.pruefschritt[open] .pruefschritt__kopf::after {
    transform: rotate(90deg);
}

.pruefschritt__name {
    color: var(--farbe-primaer);
}

.pruefschritt__zahl {
    color: var(--farbe-text-leise);
    font-weight: 400;
    font-size: 0.88rem;
}

.pruefschritt__koerper {
    padding: 0 1rem 1rem;
    border-top: 1px solid var(--farbe-rahmen);
}

.pruefschritt__meta {
    font-size: 0.85rem;
    color: var(--farbe-text-leise);
    margin-block: 0.5rem var(--abstand-mittel);
}

/* Statuskennzeichen – funktionale Farben (Ampel), unabhängig von der Markenfarbe. */
.status-kennzeichen {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.15rem 0.6rem;
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 700;
    white-space: nowrap;
}

.status-kennzeichen::before {
    content: "";
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 50%;
    background: currentColor;
}

.status-kennzeichen--bestanden {
    background: var(--farbe-erfolg-flaeche);
    color: var(--farbe-erfolg);
}

.status-kennzeichen--fehler {
    background: var(--farbe-fehler-flaeche);
    color: var(--farbe-fehler);
}

.status-kennzeichen--neutral {
    background: var(--farbe-neutral-flaeche);
    color: var(--farbe-text-leise);
}

/* Informativer Prüfschritt (über dem Zielniveau des Verfahrens, nicht bewertet). */
.pruefschritt--informativ {
    border-style: dashed;
    background: var(--farbe-flaeche-gedaempft);
}

.pruefschritt--informativ .pruefschritt__name {
    color: var(--farbe-text-leise);
}

/* Konformitätsstufen-Kennzeichnung (A / AA / AAA) */
.stufe-kennzeichen {
    display: inline-block;
    padding: 0.05rem 0.5rem;
    border-radius: var(--radius-klein);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    border: 1px solid var(--farbe-rahmen-kraeftig);
    background: var(--farbe-flaeche-gedaempft);
    color: var(--farbe-primaer);
}

.stufe-kennzeichen--a   { border-color: var(--farbe-primaer); }
.stufe-kennzeichen--aa  { border-color: var(--farbe-sekundaer); background: #e7f0f8; }
.stufe-kennzeichen--aaa { border-color: var(--farbe-erfolg); background: var(--farbe-erfolg-flaeche); color: var(--farbe-erfolg); }

/* Schweregrad-Kennzeichnung */
.schweregrad {
    font-weight: 600;
}
.schweregrad--kritisch      { color: var(--farbe-fehler); }
.schweregrad--schwerwiegend { color: #b3251d; }
.schweregrad--moderat       { color: var(--farbe-warnung); }
.schweregrad--gering        { color: var(--farbe-text-leise); }
