/* Custom Responsive Table - 28a4ae83 */

.crt-28a4ae83-wrap {
    width: 100%;
    overflow-x: auto;
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
}

.crt-28a4ae83-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 8px;
}

/* Header */
.crt-28a4ae83-header-cell {
    font-weight: 900;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 0.05em;
    min-height: 48px;
    box-sizing: border-box;
    vertical-align: middle;
    white-space: nowrap;
}

/* Body cells */
.crt-28a4ae83-body-cell {
    text-align: center;
    border-style: solid;
    min-height: 48px;
    box-sizing: border-box;
    transition: background-color 0.2s ease, color 0.2s ease;
    vertical-align: middle;
    white-space: nowrap;
}

/* Row-level overrides via CSS custom properties */
.crt-28a4ae83-row--body[style*='--crt-row-bg'] .crt-28a4ae83-body-cell {
    background-color: var(--crt-row-bg);
}
.crt-28a4ae83-row--body[style*='--crt-row-color'] .crt-28a4ae83-body-cell {
    color: var(--crt-row-color);
}
.crt-28a4ae83-row--body[style*='--crt-row-border'] .crt-28a4ae83-body-cell {
    border-color: var(--crt-row-border);
}

/* Mobile horizontal scroll */
@media (max-width: 767px) {
    .crt-28a4ae83-wrap--stack {
        width: 95vw;
        max-width: 95vw;
        margin-left: auto;
        margin-right: auto;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        box-sizing: border-box;
    }

    .crt-28a4ae83-wrap--stack .crt-28a4ae83-table {
        width: max-content;
        min-width: 600px;
        table-layout: auto;
    }

    .crt-28a4ae83-wrap--stack .crt-28a4ae83-header-cell,
    .crt-28a4ae83-wrap--stack .crt-28a4ae83-body-cell {
        white-space: nowrap;
        min-width: 100px;
    }

    .crt-28a4ae83-wrap--stack .crt-28a4ae83-body-cell--first {
        font-weight: 700;
        min-width: 140px;
    }
}
