/* Div-Table-Widget: Mobile-First, keine Nachfahren-Selektoren (011-ui-css-general.mdc 007). */

.base-div-table {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
}

.base-div-table-header {
    display: none;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
    border-bottom: 1px solid var(--color-border);
}

.base-div-table-body {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
    white-space: normal;
}

.base-div-table-row {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0 0 0.75rem 0;
    padding: 0 0 0.75rem 0;
    border-bottom: 1px solid var(--color-border);
    background-color: transparent;
}

.base-div-table-cell {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0 0 12px 0;
    padding: 0.5rem 0.75rem;
    background-color: var(--color-table-row-bg);
    color: var(--color-text);
    min-width: 0;
    overflow-wrap: break-word;
    word-wrap: break-word;
    line-height: 1.5;
    white-space: normal;
}

.base-div-table-cell:last-child {
    margin-bottom: 0;
}

.base-div-table-cell::before {
    content: attr(data-label) ": ";
    font-weight: 700;
    display: block;
    color: var(--color-headline);
    margin-bottom: 0.25rem;
}

@media (min-width: 577px) {
    .base-div-table-header {
        display: flex;
        align-items: center;
        white-space: nowrap;
        overflow-x: hidden;
        text-transform: uppercase;
        font-size: 0.75rem;
        letter-spacing: 0.04em;
    }

    .base-div-table-cell::before {
        content: none;
        display: none;
    }

    .base-div-table-row {
        display: grid;
        margin: 0 0 1px 0;
        padding: 0;
        border-bottom: none;
        background-color: var(--color-border);
        gap: 1px;
    }

    .base-div-table-row:hover {
        box-shadow: inset 0 0 0 9999px var(--color-table-row-hover-overlay);
    }

    .base-div-table-row[data-columns="2"] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .base-div-table-row[data-columns="3"] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .base-div-table-row[data-columns="4"] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .base-div-table-row[data-columns="5"] {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }

    .base-div-table-row[data-columns="6"] {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    .base-div-table-row[data-columns="7"] {
        grid-template-columns: repeat(7, minmax(0, 1fr));
    }

    .base-div-table-cell {
        display: block;
        width: auto;
        max-width: none;
        margin: 0;
        padding: 0.75rem 1rem;
        min-width: 0;
        white-space: normal;
        overflow-wrap: break-word;
        word-wrap: break-word;
        overflow: visible;
        text-overflow: clip;
    }
}
