.compact-table td,
.compact-table th {
    table-layout: auto !important;
    /* Erlaubt dem Browser, die Breite basierend auf dem Inhalt zu halten 
    width: 100% !important;
    padding: 0.5rem 0.5rem !important; /* Sehr kompakt */
    vertical-align: top;
    font-size: 1rem;
    white-space: normal !important;
    word-wrap: break-word;
    word-break: break-word;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 120px;
}

.compact-table th {
    background-color: #cdcdcd;
    color: black;
    padding:4px;
}

/* Damit die Karte nicht zu groß wirkt */
.card {
    border-radius: 8px;
    border: 1px solid #dee2e6;
}

/* Buttons noch ein Stück kleiner für die Zeilenhöhe */
.btn-xs {
    padding: 0.1rem 0.4rem;
    font-size: 0.75rem;
}

/* TreeGrid styling for hidden sub-rows */
tr.child-row { display: none; }
tr.child-row.visible,
table.is-searching tr.child-row { display: table-row !important; }