/* Grid Pro flat summary (total) rows */
.hcg-container .hcg-table {
    > tbody.hcg-tbody-summary {
        height: auto;
        display: block;
        overflow: hidden;
        min-height: 0;
        flex: 0 0 auto;
        position: relative;
        z-index: 1;

        > tr {
            display: block;
            position: static;
        }
    }

    > tbody.hcg-tbody-summary-bottom {
        order: 1;
    }

    > tbody.hcg-tbody-summary-top {
        order: -1;
    }

    /* Keep the header above the top summary section (which sits above any
       top-pinned rows). */
    &:has(> tbody.hcg-tbody-summary-top) > thead {
        order: -2;
    }

    &:has(> tbody.hcg-tbody-summary) > tbody:not(.hcg-tbody-summary) {
        height: auto;
    }
}

.hcg-themed {
    .hcg-table {
        --ig-summary-row-border-width: var(--hcg-summary-row-border-width, var(--ig-row-border-width));
        --ig-summary-row-border-style: var(--hcg-summary-row-border-style, var(--ig-row-border-style));
        --ig-summary-row-border-color: var(--hcg-summary-row-border-color, var(--ig-row-border-color));
        --ig-summary-row-border: var(--ig-summary-row-border-width) var(--ig-summary-row-border-style) var(--ig-summary-row-border-color);
        --ig-summary-row-font-weight: var(--hcg-summary-row-font-weight, var(--hcg-row-font-weight));
    }

    .hcg-table tbody tr.hcg-summary-row {
        --ig-row-font-weight-current: var(--ig-summary-row-font-weight);
    }
}

:where(.hcg-themed .hcg-table > tbody.hcg-tbody-summary-bottom) {
    border-top: var(--ig-summary-row-border);
}

:where(.hcg-themed .hcg-table > tbody.hcg-tbody-summary-top) {
    border-bottom: var(--ig-summary-row-border);
}
