diff --git a/src/components/PairReviewModal.jsx b/src/components/PairReviewModal.jsx index f6a90eb..481fcc8 100644 --- a/src/components/PairReviewModal.jsx +++ b/src/components/PairReviewModal.jsx @@ -42,17 +42,18 @@ function buildRows(content) { } else if (type === 'word') { rows.push({ kind: 'lang', label: 'Positiv-Wörter', color: 'text-green-700', cell: wordsCell(content.positive) }); - if (content.negative?.words?.length) - rows.push({ kind: 'lang', label: 'Negativ-Wörter', color: 'text-red-600', - cell: wordsCell(content.negative) }); + // 'word' braucht laut Datenmodell Negativ-Wörter → Zeile immer zeigen, fehlende sichtbar machen + rows.push({ kind: 'lang', label: 'Negativ-Wörter', color: 'text-red-600', + cell: wordsCell(content.negative) }); } else { // text / question → Sätze if (content.positive) rows.push({ kind: 'lang', label: 'Positiv', color: 'text-green-700', cell: sentenceCell(content.positive, 'positive_sentence') }); - const negHasContent = content.negative && - LANGS.some(l => (content.negative.sentence?.[`negative_sentence_${l}`] || '').trim()); - if (negHasContent) + // 'question' = Frage + Positiv + Negativ → Negativ-Zeile immer zeigen, auch wenn leer + // ('fehlt' statt stilles Ausblenden, damit eine fehlende Negativ-Antwort auffällt). + // 'text' hat per Definition kein Negativ. + if (type === 'question') rows.push({ kind: 'lang', label: 'Negativ', color: 'text-red-600', cell: sentenceCell(content.negative, 'negative_sentence') }); }