/* Shared data tables in the gym, platform console and member portal. */
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table {
    --table-column-rule: color-mix(in srgb, var(--text) 10%, var(--surface));
    --table-heading-rule: color-mix(in srgb, var(--text) 19%, var(--surface));
    border-collapse: separate;
    border-spacing: 0;
}
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table > :is(thead, tbody, tfoot) > tr > :is(th, td) {
    text-align: center;
    vertical-align: middle;
    font-variant-numeric: lining-nums tabular-nums;
}
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table > :is(thead, tbody, tfoot) > tr > :is(th, td) + :is(th, td) {
    border-inline-start: 1px solid var(--table-column-rule);
}
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table > thead > tr > th {
    border-inline-start-color: var(--table-heading-rule);
    border-block-end: 2px solid var(--table-heading-rule);
    line-height: 1.6;
    white-space: normal;
}
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table :is(.table-actions, .row-actions) {
    justify-content: center;
}
/* A flex action cell must remain a table cell so columns keep their alignment. */
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table td.row-actions {
    display: table-cell;
}
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table td.row-actions > form {
    display: inline-flex;
    margin: 3px;
}
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table :is(code, time, bdi[dir="ltr"], .table-value) {
    direction: ltr;
    unicode-bidi: isolate;
    font-variant-numeric: lining-nums tabular-nums;
}
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table .table-value {
    display: inline-block;
    white-space: nowrap;
}
:is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table :is(.table-text, [data-table-align="start"]) {
    text-align: start;
}
@media print {
    :is(.area-admin, .area-superadmin, .area-portal, .area-receipt) :is(.content, .portal-content, .invoice-card, .receipt-card) .table {
        --table-column-rule: #d1d5db;
        --table-heading-rule: #9ca3af;
    }
}
