M4ND0 Deine CSVs scheinen teilsweise verschobene Werte zu haben, es fiel mir etwas schwer die Werte den jeweils richtigen Spalten zuzuordnen.
Auf die wesentlichen Felder reduziert müssten deine Datensätze so aussehen (korrekt?):
Icons-Elemente (vereinfacht)
| uid | sys_language_uid | l18n_parent | l10n_source | CType | parentid | parenttable | header |
| 461 | 0 | 0 | 0 | mask_icons | | | |
| 467 | 1 | 461 | 461 | mask_icons | | | |
| 3 | 0 | 0 | 0 | | 461 | tt_content | |
| 8 | 0 | 0 | 0 | | 467 | tt_content | |
Buttons-Elemente (vereinfacht)
| uid | sys_language_uid | l18n_parent | l10n_source | CType | parentid | parenttable | header |
| 110 | 0 | 0 | 0 | mask_buttons | | | |
| 139 | 1 | 110 | 110 | mask_buttons | | | |
| 14 | 0 | 0 | 0 | | 110 | tt_content | Verfügbarkeit prüfen |
| 15 | 1 | 14 | 14 | | 139 | tt_content | Check availability |
Was hier im Vergleich direkt auffällt ist, dass das Icons-Kindelement mit uid=8 im Gegensatz zu seinem Elternelement uid=467 die Default-Sprache 0 nutzt statt 1 (Englisch).
Bei den Button-Elementen scheint DB-seitig soweit alles korrekt zu sein.
Was mich aber wundert ist, dass du dich doch eigentlich auf das Ausgabeverhalten von Sprache -1 bezogen hattest. In deinen CSV-Beispielen kommt aber nirgendwo die Sprache -1 vor. Kannst du klarstellen was nun konkret der verwirrende Fall ist?
Bitte achte darauf den zu betrachtenden Fall möglichst exakt auszudrücken, das ist bei diesen Translation Handling Themen ohnehin schon ganzschön kompliziert nachzuvollziehen 😅