.table {
    display: table;
    width: 100%;
}

.table.fixed {
    table-layout: fixed;
}

.table-row {
    display: table-row;
}

.table-row.header {
    font-weight: 500;
}

.table-row.group {
    font-weight: 500;
    background: var(--surface-sunken);
}

.table-row.footer {
    color: var(--muted);
}

.table-row.clickable:hover {
    cursor: pointer;
}

.table-row:not(.header):not(.footer):not(.no-hover):hover {
    background: var(--surface-sunken);
}

.table-cell {
    display: table-cell;
    padding: var(--space);
}

.table-cell.text-top {
    vertical-align: top;
}

.table.compact .table-cell {
    padding: var(--space-tight);
}

.table-cell.content-fit {
    width: 1px;
    white-space: nowrap;
}

.table-cell:has(>.btn.icon) {
    padding: 0;
    vertical-align: middle;
}

.table-cell:has(>.pill) {
    padding-block: 0;
}