/* Reset */
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

.my-table {
    border-collapse: collapse;
    border-spacing: 0;
}

:root {
    --page-bg: #fff;
    --page-text-color: #111;
    --table-header-bg: #3a5a40;
    --table-header-color: #fff;
    --table-border-color: #efefef;
}

body {
    background: var(--page-bg);
    color: var(--page-text-color);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    margin: 0px 24px;
}

@media (prefers-color-scheme: dark) {
    :root {
        --page-bg: #111;
        --page-text-color: #fff;
        --table-header-bg: #283618;
        --table-header-color: #fff;
        --table-border-color: #333;
    }
}

input[type='checkbox'] {
    transform: scale(1.25);
}

/* Table styles */

.table-container {
    padding: 2rem 0 1rem 0;
}

.my-table {
    margin-bottom: 1rem;
}

.my-table thead {
    background: var(--table-header-bg);
}

.my-table th {
    vertical-align: bottom;
    color: var(--table-header-color);
    padding: 0.75rem;
    text-align: inherit;
}

.my-table th, th > a {
    text-decoration: none;
}

.my-table th > a:hover {
    text-decoration: underline;
}

.my-table th.asc, th.desc > a {
    font-weight: bold;
}

.my-table td {
    padding: 0.85rem 0.6rem;
}

.my-table tr {
    border-bottom: 1px solid var(--table-border-color);
}
