/* ============ BASE TABLE ============ */
:is(.inline-table, article table, .ro-blocks table) {
    width: 100%;
    overflow-x: auto;
    color: #000; 
    margin: 15px 0;
}

/* ============ WRAPPER ============ */
:is(article, .ro-blocks) .table-wrapper {
    border: 1px solid #F5F5F5;
    border-radius: var(--border-radius-sm,5px);
    overflow: hidden;
    width: 100%;
}

/* ============ TABLE STRUCTURE ============ */
:is(.inline-table, article table, .ro-blocks table) {
    border-collapse: collapse;
}

/* ============ HEADINGS ============ */
:is(.inline-table, article table, .ro-blocks table) th {
    font-weight: 600;
    text-align: left;
    background-color: #f5f5f5;
}

/* ============ CELLS ============ */
:is(.inline-table, article table, .ro-blocks table) td,
:is(.inline-table, article table, .ro-blocks table) th {
    padding: 10px 12px;
}

/* ============ ROW COLORS ============ */
:is(.inline-table, article table, .ro-blocks table) tr:nth-child(even) td {
    background-color: #f5f5f5;
}

:is(.inline-table, article table, .ro-blocks table) tr:nth-child(odd) td {
    background-color: #ffffff;
}

/* ============ FIRST COLUMN ============ */
:is(.inline-table, article table, .ro-blocks table) td:first-child {
    font-weight: 500;
}

/* ============ SPACING AFTER TEXT ============ */
article *:is(p, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5) + table {
    margin-top:20px;
}

/* ============ RESPONSIVE ============ */
@media (max-width: 960px) {
    :is(.inline-table, article table, .ro-blocks table) {
        overflow-x: auto;
        max-width: 100%;
    }
    :is(.inline-table, article table, .ro-blocks table) > * { 
        min-width: 960px;	
    }
}

/* ============ BORDER RADIUS TOP ============ */
:is(.inline-table, article table, .ro-blocks table) *:not(tbody:first-child) > tr:first-child > *:first-child {
    border-top-left-radius:var(--border-radius-sm,5px);
}

:is(.inline-table, article table, .ro-blocks table) *:not(tbody:first-child) > tr:first-child > *:last-child {
    border-top-right-radius:var(--border-radius-sm,5px);
}

/* ============ BORDER RADIUS BOTTOM ============ */
:is(.inline-table, article table, .ro-blocks table) tbody tr:last-child,
:is(.inline-table, article table, .ro-blocks table) tbody tr:last-child > td:first-child {
    border-bottom-left-radius: var(--border-radius-sm,5px);
}

:is(.inline-table, article table, .ro-blocks table) tr:last-child,
:is(.inline-table, article table, .ro-blocks table) tr:last-child > td:last-child {
    border-bottom-right-radius:var(--border-radius-sm,5px);
}