table.table {
    border: var(--border-width-regular) solid var(--color-tertiary-tint-500);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: var(--border-radius-medium);
    box-sizing: border-box;
    overflow: hidden;
}

table.table thead {
}

table.table thead th,
table.table thead > td {
    background: var(--color-light-tint-10);
    border-bottom: var(--border-width-thick) solid var(--color-primary-tint-500);
    font-size: var(--font-size-heading-7);
    line-height: var(--line-height-heading-7);
}

table.table th {
    padding: var(--padding-medium) 0;
}

table.table tr > td {
    background: var(--color-tertiary-tint-10);
    border-bottom: var(--border-width-regular) solid var(--color-tertiary-tint-500);
    font-size: var(--font-size-paragraph-small);
}

table.table tr.new {
    position: relative;
}

table.table tr.new > td {
    background: var(--color-light-tint-10);
}

table.table td.new-indicator::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 4px;
    display: block;
    background: var(--color-danger-tint-500);
    border-radius: 0 4px 4px 0;
    padding: 0;
}

table.table a {
    color: var(--color-emphasis);
}

table.table .table-cell__row {
    padding: var(--padding-small);
    vertical-align: top;
}

table.table tfoot tr > td {
    background: var(--color-light-tint-10);
    padding: var(--padding-small);
    border: none;
}

table.table tfoot p {
    font-size: var(--font-size-heading-7);
    color: var(--color-tertiary-tint-800);
}

table.table tfoot button.btn {
    --border-color: var(--color-tertiary-tint-500);
    padding: var(--padding-tiny);
    border: 1px solid var(--color-tertiary-tint-500);
    border-radius: var(--border-radius-small);
    line-height: 1;
    aspect-ratio: 1 / 1;
}

table.table tfoot button i {
    width: 1rem;
    height: 1rem;
    color: var(--color-tertiary-tint-800);
    font-size: 1rem;
}

/* ─── Lesson content block: reset & override table styles ─────────────────── */

.lesson-content__block .table-responsive table,
.lesson-content__block table {
    border: none;
    border-collapse: separate;
    border-spacing: var(--gap-tiny);
    border-radius: 0;
    box-sizing: border-box;
    overflow: visible;
}

.lesson-content__block .table-responsive table tr > *,
.lesson-content__block table tr > * {
    background: none;
    border: none;
    border-bottom: none;
    border-radius: 0;
    font-size: inherit;
    line-height: inherit;
    padding-top: var(--padding-medium);
    padding-bottom: var(--padding-small);
    padding-left: var(--padding-large);
    padding-right: var(--padding-large);
}

.lesson-content__block .table-responsive table th,
.lesson-content__block table th {
    padding: var(--padding-medium) var(--padding-large);
}

.lesson-content__block .table-responsive table thead tr > *,
.lesson-content__block table thead tr > * {
    background: var(--color-warning-tint-300);
    border-bottom: none;
    font-size: inherit;
    line-height: inherit;
    font-weight: bold;
}

.lesson-content__block .table-responsive table tbody tr:nth-child(odd) > *,
.lesson-content__block table tbody tr:nth-child(odd) > * {
    background: var(--color-warning-tint-10);
}

.lesson-content__block .table-responsive table tbody tr:nth-child(even) > *,
.lesson-content__block table tbody tr:nth-child(even) > * {
    background: var(--color-warning-tint-50);
}

.lesson-content__block .table-responsive table thead tr > *:first-child,
.lesson-content__block table thead tr > *:first-child  {
    border-top-left-radius: var(--border-radius-medium);
    border-bottom-left-radius: var(--border-radius-medium);
}

.lesson-content__block .table-responsive table thead tr > *:last-child,
.lesson-content__block table thead tr > *:last-child {
    border-top-right-radius: var(--border-radius-medium);
    border-bottom-right-radius: var(--border-radius-medium);
}

.lesson-content__block .table-responsive table tbody tr > *:first-child,
.lesson-content__block table tbody tr > *:first-child {
    border-top-left-radius: var(--border-radius-medium);
    border-bottom-left-radius: var(--border-radius-medium);
    font-weight: normal;
}

.lesson-content__block .table-responsive table tbody tr > *:last-child,
.lesson-content__block table tbody tr > *:last-child {
    border-top-right-radius: var(--border-radius-medium);
    border-bottom-right-radius: var(--border-radius-medium);
}

/* Reset new-row indicator inside lesson content blocks */
.lesson-content__block table.table td.new-indicator::before {
    display: none;
}

/* Reset tfoot styles inside lesson content blocks */
.lesson-content__block .table-responsive table tfoot tr > td,
.lesson-content__block table tfoot tr > td {
    background: none;
    border: none;
    padding-top: var(--padding-medium);
    padding-bottom: var(--padding-small);
    padding-left: var(--padding-large);
    padding-right: var(--padding-large);
}
