/* Live Supsystic tables: navy headings, clear results and restrained row guides. */
.fp-ranking,
.fp-honours {
    --rank-width: 60px;
    --previous-width: 52px;
    --name-width: 190px;
    border: 0;
    border-bottom: 1px solid var(--line);
    background: var(--paper);
    scrollbar-color: #88939a #e8eae6;
    scrollbar-width: thin;
    overscroll-behavior-x: contain;
}
.fp-ranking .supsystic-tables-wrap,
.fp-honours .supsystic-tables-wrap,
.fp-ranking .dataTables_wrapper,
.fp-honours .dataTables_wrapper { overflow: visible !important; margin: 0 !important; }
.fp-ranking table,
.fp-honours table {
    display: table !important;
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    font-family: inherit !important;
    font-variant-numeric: tabular-nums;
}
.fp-ranking table tbody,
.fp-honours table tbody { display: table-row-group !important; }
.fp-ranking table tbody tr,
.fp-honours table tbody tr { display: table-row !important; border: 0 !important; }
.fp-ranking table td,
.fp-ranking table th,
.fp-honours table td,
.fp-honours table th {
    display: table-cell !important;
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    border: 0 !important;
    border-bottom: 1px solid #e1e4df !important;
    padding: 14px 16px !important;
    background: var(--row-surface, #fff) !important;
    color: var(--ink) !important;
    font: 400 15px/1.5 'Segoe UI', Arial, sans-serif !important;
    vertical-align: middle !important;
    white-space: nowrap;
    box-shadow: none !important;
    transition: background-color .15s ease;
}
.fp-ranking table td { text-align: center !important; }
.fp-ranking table td [style],
.fp-ranking table th [style],
.fp-honours table td [style] { color: inherit !important; font: inherit !important; background: transparent !important; }
.fp-ranking table .fp-row-alt,
.fp-honours table .fp-row-alt { --row-surface: #f4f5f1; }
.fp-ranking table .fp-leading-rank { --row-surface: #f7eeeb; }
.fp-ranking table tbody tr:not(.fp-table-labels):hover,
.fp-honours table tbody tr:not(.fp-season-heading):hover { --row-surface: #eaece7; }
.fp-ranking table .fp-table-labels { --row-surface: var(--ink); }
.fp-ranking table .fp-table-labels td,
.fp-ranking table thead th {
    background: var(--ink) !important;
    color: #f7f6f2 !important;
    border-bottom: 0 !important;
    padding-block: 16px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: .04em;
}
.fp-ranking table td:first-child,
.fp-ranking table th:first-child {
    position: sticky;
    left: 0;
    z-index: 3;
    width: var(--rank-width) !important;
    min-width: var(--rank-width) !important;
    max-width: var(--rank-width) !important;
    padding-inline: 10px !important;
    font-weight: 600 !important;
}
.fp-ranking table td:nth-child(2),
.fp-ranking table th:nth-child(2) {
    position: sticky;
    left: var(--rank-width);
    z-index: 3;
    width: var(--previous-width) !important;
    min-width: var(--previous-width) !important;
    max-width: var(--previous-width) !important;
    padding-inline: 8px !important;
    color: var(--muted) !important;
    font-size: 13px !important;
}
.fp-ranking table td:nth-child(3),
.fp-ranking table th:nth-child(3) {
    position: sticky;
    left: calc(var(--rank-width) + var(--previous-width));
    z-index: 3;
    min-width: var(--name-width) !important;
    text-align: left !important;
    font-weight: 600 !important;
    box-shadow: 1px 0 #dfe3df !important;
}
.fp-ranking table td:nth-child(4) {
    min-width: 76px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #9f2038 !important;
}
.fp-ranking table .fp-table-labels td:nth-child(2),
.fp-ranking table .fp-table-labels td:nth-child(4) { color: #f7f6f2 !important; font-size: 12px !important; }
.fp-ranking table .fp-top-rank td:first-child { color: #a41e38 !important; font-size: 19px !important; }
.fp-ranking table .fp-leading-rank td:first-child { box-shadow: inset 3px 0 var(--red) !important; }
.fp-ranking table td:nth-child(n+6) { min-width: 100px !important; }
.fp-ranking table .sorting,
.fp-ranking table .sorting_asc,
.fp-ranking table .sorting_desc { background-image: none !important; }
/* Blank spreadsheet columns and spacer rows stay in the plugin output and editor. */
.fp-ranking table tr.fp-empty-row,
.fp-honours table tr.fp-empty-row,
.fp-ranking table tr > .fp-empty-column,
.fp-honours table tr > .fp-empty-column { display: none !important; }
.fp-ranking .dataTables_scrollBody { max-height: none !important; }
.table-hint { display: none; }
.fp-honours { padding: 0 0 24px; border-bottom: 0; }
.fp-honours table td { text-align: left !important; white-space: normal; }
.fp-honours table td:first-child { width: 42% !important; color: var(--muted) !important; }
.fp-honours table td:last-child { font-weight: 600 !important; }
.fp-honours table .fp-season-heading td { background: var(--ink) !important; color: #fff !important; font-size: 12px !important; letter-spacing: .08em; text-transform: uppercase; padding-block: 12px !important; border: 0 !important; }
.fp-honours table .fp-season-winner td { background: #ebece6 !important; font-weight: 600 !important; }
.fp-honours table .fp-season-winner td:last-child { color: #9f2038 !important; }
.fp-ranking.is-overflowing + .table-hint { display: block; }
@media (max-width: 720px) {
    .fp-ranking { --rank-width: 46px; --previous-width: 38px; --name-width: 146px; }
    .fp-ranking table td,
    .fp-ranking table th { padding: 13px 12px !important; font-size: 13px !important; }
    .fp-ranking table td:nth-child(3),
    .fp-ranking table th:nth-child(3) { width: var(--name-width) !important; max-width: var(--name-width) !important; white-space: normal; }
    .fp-ranking table td:nth-child(4) { min-width: 64px !important; font-size: 16px !important; }
    .fp-ranking table td:nth-child(n+6) { min-width: 88px !important; }
    .fp-ranking table .fp-table-labels td { font-size: 11px !important; letter-spacing: 0; }
    .fp-honours table td { padding: 13px 12px !important; font-size: 14px !important; }
    .fp-honours table td:first-child { width: 44% !important; }
}
@media (prefers-reduced-motion: reduce) {
    .fp-ranking table td, .fp-honours table td { transition: none; }
}

.fp-ranking table .fp-table-labels td:nth-child(3) { box-shadow: 1px 0 #45515c !important; }
