/* Contained tables: horizontal scroll stays inside the card/column, not the page. */
.page-content .row > [class*="col-"],
.page-content [class*="col-"] > .card,
.crm-split-main,
.crm-split-panel {
    min-width: 0;
    max-width: 100%;
}

.page-content .card.wl-card-contained,
.crm-split-main > .card {
    overflow: hidden;
    max-width: 100%;
}

.wl-table-wrap.table-responsive {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}

.wl-table-wrap > .table {
    width: 100%;
    margin-bottom: 0;
}

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

.wl-table--fixed th,
.wl-table--fixed td {
    vertical-align: middle;
}

.wl-table--fixed .wl-cell-clip {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wl-table--fixed .wl-cell-wrap {
    overflow: hidden;
    word-break: break-word;
}

.wl-table--fixed .wl-cell-wrap .text-muted.small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-clients-table .crm-contact-date-cell {
    white-space: normal;
    line-height: 1.35;
}

.crm-clients-table td .wl-cell-wrap {
    overflow: hidden;
}

.crm-split-row {
    display: flex;
    flex-wrap: nowrap;
    gap: 1rem;
    align-items: flex-start;
    max-width: 100%;
    min-width: 0;
}

.crm-split-main {
    flex: 1 1 0;
}

.crm-split-panel {
    flex: 0 0 22rem;
    width: 22rem;
    max-width: min(38%, 22rem);
}

@media (max-width: 1199.98px) {
    .crm-split-row {
        flex-wrap: wrap;
    }

    .crm-split-panel {
        flex: 1 1 100%;
        width: 100%;
        max-width: 100%;
    }
}
