:root {
    --color-bg-header: #FFFFFF;
    --color-bg-content: #FFFFFF;
    --color-text-light: #FFFFFF;
    --color-text-dark: #000000;
    --color-text-pressed: #EEEEEE;
    --color-light: #00ABE7;
    --color-dark: #03378C;
    --color-highlight: #27539D;
    --color-active: #999999;
    --color-inactive: #666666;
    --color-bloc: #2803ff;
    --color-difficulte: #12916b;
    --color-vitesse: #cc0033;
    --color-combine: #ff0150;

    --width-nav: 250px;
    --height-header: 84px;
}

html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    color: var(--color-text-dark);
    font-family: Roboto, sans-serif;
    font-size: 14px;
}

#nav-left {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: var(--width-nav);
    background-color: var(--color-dark);
    color: var(--color-text-light);
}

#nav-logo {
    width: 100%;
    height: 120px;
    margin-top: 15px;
    margin-bottom: 65px;
    background-image: url("nav-logo.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

#nav-menu-container {
    background-color: rgb(3, 55, 140);
    top: 200px;
    left: 0px;
    bottom: 0px;
    width: 250px;
    position: absolute;
    overflow: hidden;
}

#nav-menu-container > div {
    top: 0px;
    left: 0px;
    right: 0px;
    width: auto;
    position: absolute;
}

#nav-menu-container > div > div {
    outline-style: none;
    padding: 0px 5px 0px 13px;
}

a.nav-menu-button {
    text-decoration: none;
}

a.nav-menu-button>div {
    outline-style: none;
    cursor: pointer;
    color: rgb(255, 255, 255);
    background-color: transparent;
    padding: 11px 8px 14px;
    border-radius: 8px;
    width: 216px;
}

a.nav-menu-button>div>div {
    display: table;
    border-collapse: collapse;
    padding: 0px;
    height: 100%;
}

a.nav-menu-button>div>div>div {
    display: table-row;
    padding: 0px;
}

a.nav-menu-button>div>div>div>div {
    display: table-cell;
    padding: 0px;
    vertical-align: middle;
    font-size: 14px;
    font-weight: bold;
}

a.nav-menu-button.selected>div, a.nav-menu-button:hover>div {
    background-color: var(--color-highlight);
}

a.nav-menu-button:active:hover>div {
    background-color: var(--color-light);
}

div.nav-menu-spacer {
    height: 10px;
    font-size: 1px;
    line-height: 0;
}

.nav-menu {
    list-style-type: none;
    margin-top: 0;
    padding-left: 28px;
}

.nav-submenu {
    list-style-type: none;
    padding-left: 24px;
}

.nav-menu>li {
    cursor: pointer;
}

.nav-submenu>li {
    padding: 4px 0px 4px 4px;
}

.nav-submenu>li:hover {
    background-color: var(--color-inactive);
    color: var(--color-text-light);
}

.nav-submenu>li:active {
    background-color: var(--color-active);
    color: var(--color-text-pressed);
}

.nav-submenu>li>a {
    color: var(--color-text-light);
    text-decoration: none;
}

.nav-submenu-element>a>span {
    display: inline-block;
    width: calc(100% - 20px);
    vertical-align: middle;
}

.nav-submenu-point {
    width: 11px !important;
    height: 11px;
    vertical-align: middle;
    margin-right: 6px;
    background: transparent;
    border: 1px solid var(--color-light);
    border-radius: 50%;
}

.nav-submenu-point.selected {
    background: var(--color-light);
}

#header {
    position: absolute;
    top: 0;
    left: var(--width-nav);
    right: 0;
    height: var(--height-header);
    background-color: var(--color-bg-header);
    color: var(--color-text-dark);
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    padding: 0 16px;
}

#header-logos {
    height: 26px;
    width: auto;
    align-self: center;
}

#header-logos>a:first-child {
    margin-right: 16px;
}

#header-actions {
    display: flex;
    align-items: center;
}

#header-connect-row {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}

#header-connect-row>a {
    display: inline-block;
    align-self: center;
}

#header-connect-buttons {
    margin-right: 8px;
}

#header-connect-buttons>a {
    display: inline-block;
    min-width: 30px;
    height: 30px;
    padding: 5px;
    border: 1px solid #00ABE7;
    border-radius: 50%;
    vertical-align: bottom;
    align-content: center;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    /*text-transform: uppercase;*/
    color: #00ABE7;
}

#header-connect-buttons>a:first-child {
    margin-right: 6px;
}

#header-connect-buttons>a:first-child:hover {
    color: #FFFFFF;
    background-color: #00ABE7;
    border-color: #03378C;
}

#header-connect-buttons>a:last-child:hover {
    background-color: #00ABE7;
    border-color: #03378C;
}

#header-connect-buttons>a:last-child:hover>img {
    content: url("dec-white.png");
}

#header-link-container {
    display: inline-flex;
    justify-content: space-between;
    width: 192px;
    margin-right: 32px;
}

.header-btn-link {
    min-width:  42px;
    max-width:  42px;
    width:      42px;
    min-height: 42px;
    max-height: 42px;
    height:     42px;
    background-position: center;
    background-size: 42px;
    background-repeat: no-repeat;
    cursor: pointer;
}

.header-btn-link.shop::before {
    content: "?";
}

.header-btn-link.shop {
    background-color: var(--color-dark);
    color: #FFFFFF;
    border-radius: 50%;
    text-align: center;
    align-content: center;
    font-size: 32px;
    text-decoration: none;
    font-weight: bold;
}

.header-btn-link.mycompet {
    background-image: url("logo-mycompet-blue.svg");
}

.header-btn-link.facebook {
    background-image: url("logo-facebook-blue.svg");
}

.header-btn-link.instagram {
    background-image: url("logo-instagram-blue.svg");
}

#header-login {
    width: 30px;
    height: 30px;
    padding: 5px;
    margin-left: 18px;
    border: 1px solid var(--color-light);
    border-radius: 50%;
    align-content: center;
    text-align: center;
    cursor: pointer;
    background-color: transparent;
    color: var(--color-light);
    text-decoration: none;
}

#header-login:hover {
    border-color: var(--color-dark);
    background-color: var(--color-light);
    color: var(--color-text-light);
}

#header-login:hover>img {
    content: url("dec-white.png");
}

#main-content {
    position: absolute;
    top: var(--height-header);
    left: var(--width-nav);
    right: 0;
    bottom: 0;
    padding: 50px;
    overflow: auto;
    background-color: var(--color-bg-content);
    color: var(--color-text-dark);
    box-shadow: inset 0 3px 30px #E0E0E0;
}

.title {
    display: block;
    width: 100%;
    margin-top: 18px;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
    color: var(--color-text-dark);
}

#main-content > .subtitle {
    display: block;
    width: 100%;
    margin-top: 18px;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
    color: var(--color-light);
}

.filter-container {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    margin-top: 24px;
    margin-bottom: 72px;
}

.filter-container>div.opened {
    display: flex;
    justify-content: center;
    flex-direction: row;
    margin: 6px 0;
    /*max-height: 100px;*/
    opacity: 1;
    transition: all .4s ease-in;
}

.filter-container>div:not(.opened) {
    max-height: 0px;
    opacity: 0;
}

.filter-button, #selected-season {
    display: inline-flex;
    padding: 12px 16px;
    margin: 0 9px;
    border: 1px solid var(--color-active);
    border-radius: 35px;
    cursor: pointer;
    color: var(--color-active);
    text-transform: uppercase;
    font-size: 14px;
}

a.filter-button {
    text-decoration: none;
}

.filter-button:hover, #selected-season:hover {
    color: var(--color-text-dark);
    border-color: var(--color-text-dark);
}

.filter-button.selected, #selected-season.selected {
    color: var(--color-text-dark);
    border-color: var(--color-text-dark);
}

.filter-button>img {
    height: 18px;
    margin-left: 16px;
}

.filter-button:hover>img, .filter-button.selected>img {
    content: url("search-black.svg");
}

#selected-season>.btn-arrow {
    margin-left: 32px;
}

.status {
    font-size: 11pt;
    color: var(--color-light);
}

#regroupement-list-head {
    display: flex;
    font-weight: bold;
    margin-top: 32px;
    margin-bottom: 12px;
}

#regroupement-tour {
    flex: 0.4;
    text-transform: uppercase;
}

.regroupement {
    border-top: 2px solid var(--color-active);
}

.regroupement:not(.visible) {
    display: none;
}

.regroupement.visible {
    display: block;
}

.regroupement-header {
    display: flex;
    justify-content: space-between;
    padding: 16px 6px 16px 0px;
    cursor: pointer;
}

.regroupement-header>div>span {
    text-transform: uppercase;
}

.regroupement-header>div>span:last-child {
    font-weight: bold;
    margin-left: 6px;
}

.regroupement-header:hover {
    background-color: var(--color-bg-header);
}

.btn-arrow {
    display: inline-block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: var(--color-bg-header);
    background-position: center;
    background-clip: border-box;
    background-repeat: no-repeat;
    background-size: 20px;
}

.btn-arrow.up {
    background-image: url("btn-up-grey.svg");
}

.btn-arrow.down {
    background-image: url("btn-down-grey.svg");
}

*:has(>.btn-arrow.up):hover>.btn-arrow.up {
    background-image: url("btn-up-black.svg");
}

*:has(>.btn-arrow.down):hover>.btn-arrow.down {
    background-image: url("btn-down-black.svg");
}

.chevron-right {
    display: inline-block;
    width: 16px;
    height: 16px;
    background-position: center;
    background-clip: border-box;
    background-repeat: no-repeat;
    background-size: 16px 22px;
}

.chevron-right.blue {
    background-image: url("chevron-right-blue.svg");
}

.regroupement-header:hover>.btn-arrow, #selected-season:hover>.btn-arrow, #selected-season.selected>.btn-arrow {
    border-color: var(--color-text-dark);
}

.regroupement-header:hover>.btn-arrow.up, #selected-season:hover>.btn-arrow.up, #selected-season.selected>.btn-arrow.up {
    background-image: url("btn-up-black.svg");
}

.regroupement-header:hover>.btn-arrow.down, #selected-season:hover>.btn-arrow.down, #selected-season.selected>.btn-arrow.down {
    background-image: url("btn-down-black.svg");
}

/*#season-select {
    display: inline-block;
}

#season-table {
    background-color: var(--color-bg-header);
    border: 1px solid var(--color-active);
    margin: 0 32px;
    width: 122px;
    position: absolute;
    z-index: 9999;
}

#season-table>table {
    border-collapse: collapse;
    width: 100%;
    text-align: center;
}

#season-table:not(.visible) {
    opacity: 0;
    max-height: 0;
    overflow-y: hidden;
    pointer-events: none;
}

#season-table.visible {
    opacity: 1;
    max-height: 150px;
    overflow-y: auto;
    pointer-events: all;
}

#season-table.visible>table>tbody>tr>td {
    padding: 8px 0;
}

#season-table.visible>table>tbody>tr>td>a {
    color: var(--color-text-dark);
    text-decoration: none;
}

#season-table.visible>table>tbody>tr:hover {
    background-color: var(--color-text-pressed);
    cursor: pointer;
}

#season-table.visible>table>tbody>tr:hover>td>a {
    font-weight: bold;
}*/

table.index-table {
    margin-top: 24px;
    width: 100%;
    border-collapse: collapse;
}

table.index-table > tbody > tr {
    cursor: pointer;
}

table.index-table > tbody > tr > td:has(>a) {
    text-align: center;
    vertical-align: middle;
}

table.index-table>thead>tr>th {
    padding: 5px 2px;
    color: var(--color-light);
    text-transform: uppercase;
    font-size: 18px;
}

table.index-table>tbody>tr>td {
    border-top: none;
    border-bottom: none;
    padding-top: 4px;
    padding-bottom: 4px;
}

table.index-table>tbody>tr>td:not(:nth-last-child(2), :last-child) {
    padding-left: 6px;
    padding-right: 6px;
    white-space: nowrap;

}

table.index-table>tbody>tr:hover>td {
    border-top: 1px solid var(--color-dark);
    border-bottom: 1px solid var(--color-dark);
    background-color: var(--color-text-light);
    padding-top: 3px;
    padding-bottom: 3px;
}

table.index-table > tbody > tr > td > a {
    display: inline-block;
    min-width: 26px;
    height: 26px;
    line-height: 27px;
    padding: 0 12px;
    text-align: center;
    vertical-align: middle;
    background-color: var(--color-light);
    color: var(--color-text-light);
    border-radius: 14px;
    text-decoration: none;
}

/*** REGROUPEMENT TABLE *******************************************************/
.regroupement-table {
    transition: all .4s ease-in;
}

.regroupement-table:not(.visible) {
    opacity: 0;
    max-height: 0px;
    pointer-events: none;
    overflow: hidden;
}

.regroupement-table.visible {
    opacity: 1;
    max-height: 10000px;
    pointer-events: all;
}

.regroupement-table>table {
    border-collapse: collapse;
}

.regroupement-table>table>thead>tr>th {
    padding: 5px 2px;
}

.regroupement-table>table>tbody>tr>td {
    border-top: none;
    border-bottom: none;
    padding-top: 4px;
    padding-bottom: 4px;
}

.regroupement-table>table>tbody>tr:hover>td {
    border-top: 1px solid var(--color-dark);
    border-bottom: 1px solid var(--color-dark);
    background-color: var(--color-text-light);
    padding-top: 3px;
    padding-bottom: 3px;
}

.table-header-1, .table-header-2 {
    color: var(--color-light);
    text-transform: uppercase;
}

.table-header-2:not(:empty):before, .table-header-3:not(:empty):before, .table-header-4:not(:empty):not(:has(>span.round)):before {
    content: "\005B";
}

.table-header-2:not(:empty):after, .table-header-3:not(:empty):after, .table-header-4:not(:empty):not(:has(>span.round)):after {
    content: "\005D";
}

.table-header-3, .table-header-4 {
    color: var(--color-light);
}

th.spacer {
    min-width: 16px;
}

.table-header-4>span.round {
    display: inline-block;
    min-width: 26px;
    height: 26px;
    line-height: 27px;
    text-align: center;
    vertical-align: middle;
    background-color: var(--color-text-light);
    border: 1px solid var(--color-light);
    border-radius: 13px;
}

/*** DETAILS INSCRIPTIONS *****************************************************/
.cr-InscriptionsColumn-0 {
    display: inline-block;
    min-width: 32px;
    height: 32px;
    line-height: 32px;
    text-align: center;
    vertical-align: middle;
    background-color: var(--color-text-light);
    border: 1px solid var(--color-text-dark);
    border-radius: 50%;
}

.cr-InscriptionsColumn-0.wide {
    min-width: 48px;
    border-radius: 32px;
}

td:has(> span.cr-InscriptionsColumn-0) {
    text-align: center;
    vertical-align: middle;
    width: 34px;
}

.cr-InscriptionsColumn-1 {
    color: var(--color-text-dark);
}

a.cr-InscriptionsColumn-1 {
    text-decoration: none;
    padding-right: 40px;
    margin-right: 6px;
    background-image: url("arrow-link-black.svg");
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: 12px;
}

tr:has(> td > a.cr-InscriptionsColumn-1) {
    cursor: pointer;
}

tr:hover>td:has(> a.cr-InscriptionsColumn-1) {
    padding-left: 24px;
    width: 426px;
    min-width: 392px;
}

td:has(> .cr-InscriptionsColumn-1) {
    width: 434px;
    min-width: 400px;
    padding-left: 16px;
}

.cr-InscriptionsColumn-2 {
    color: var(--color-text-dark);
    font-weight: bold;
}

td:has(> .cr-InscriptionsColumn-2) {
    text-align: center;
    vertical-align: middle;
}

.cr-CRRang-0 {
    display: inline-block;
    min-width: 20px;
    height: 20px;
    line-height: 22px;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 12px;
    color: var(--color-text-light);
    background-color: var(--color-light);
}

td:has(> .cr-CRRang-0) {
    text-align: center;
    vertical-align: middle;
}

/*** BLOC - ILLIMITE **********************************************************/
.cr-CRBlocIllimiteDetail-0, .cr-CRBlocIllimiteZoneDetail-0 {
    display: inline-block;
    min-width: 20px;
    height: 20px;
    line-height: 22px;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 12px;
    background-color: transparent;
}

.cr-CRBlocIllimiteDetail-0.active, .cr-CRBlocIllimiteZoneDetail-0.active {
    color: var(--color-text-light);
    background-color: var(--color-light);
}

td:has(> span.cr-CRBlocIllimiteDetail-0), td:has(> span.cr-CRBlocIllimiteZoneDetail-0) {
    text-align: center;
    vertical-align: middle;
}

.cr-CRBlocIllimiteTotal-0 {
    display: inline-block;
    min-width: 8px;
    height: 20px;
    line-height: 21px;
    padding: 0 6px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border-radius: 10px;
    color: var(--color-text-light);
    background-color: var(--color-light);
}

td:has(> span.cr-CRBlocIllimiteTotal-0) {
    text-align: center;
    vertical-align: middle;
}

.cr-CRBlocIllimiteTotal-1 {
    color: var(--color-text-dark);
    font-weight: bold;
}

td:has(> span.cr-CRBlocIllimiteTotal-1) {
    text-align: center;
    vertical-align: middle;
}

.cr-CRBlocIllimiteTotal-2, .cr-CRBlocLimiteTotal-0 {
    display: inline-block;
    min-width: 26px;
    height: 26px;
    line-height: 28px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 13px;
    color: var(--color-light);
    background-color: var(--color-text-light);
}

td:has(> span.cr-CRBlocIllimiteTotal-2), td:has(> span.cr-CRBlocLimiteTotal-0) {
    text-align: center;
    vertical-align: middle;
}

/*** BLOC - LIMITE ************************************************************/
.cr-CRBlocLimiteDetail-0, .cr-CRBlocLimiteDetail-1,
.cr-CRBlocLimiteTop-0, .cr-CRBlocLimiteTop-1,
.cr-CRBlocLimiteZone-0, .cr-CRBlocLimiteZone-1 {
    display: inline-block;
    min-width: 8px;
    height: 20px;
    line-height: 21px;
    padding: 0 6px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 10px;
    color: transparent;
}

.cr-CRBlocLimiteDetail-0.active, .cr-CRBlocLimiteDetail-1.active,
.cr-CRBlocLimiteTop-0, .cr-CRBlocLimiteTop-1,
.cr-CRBlocLimiteZone-0, .cr-CRBlocLimiteZone-1 {
    background-color: var(--color-light);
    color: var(--color-text-light);
}

td:has(> .cr-CRBlocLimiteDetail-0), td:has(> .cr-CRBlocLimiteDetail-1),
td:has(> span.cr-CRBlocLimiteTop-0), td:has(> span.cr-CRBlocLimiteTop-1),
td:has(> span.cr-CRBlocLimiteZone-0), td:has(> span.cr-CRBlocLimiteZone-1)  {
    text-align: center;
    vertical-align: middle;
}

/*** DIFF *********************************************************************/
.cr-CRDiffDetail-0, .cr-CRDiffDetailDebug-0, .cr-CRDiffDetailDebug-2, .cr-CRDiffTotalSingle-0 {
    display: inline-block;
    min-width: 8px;
    height: 20px;
    line-height: 21px;
    padding: 0 6px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 10px;
    background-color: var(--color-light);
    color: var(--color-text-light);
}

.cr-CRDiffDetail-1, .cr-CRDiffDetailDebug-1, .cr-CRPointsTotalPts-1, .cr-CRDiffTotalSingle-1 {
    display: inline-block;
    min-width: 26px;
    height: 26px;
    line-height: 28px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 13px;
    color: var(--color-light);
    background-color: var(--color-text-light);
}

.cr-CRPointsTotalPts-0 {
    font-weight: bold;
}

td:has(> .cr-CRDiffDetail-0), td:has(> .cr-CRDiffDetail-1),
td:has(> .cr-CRDiffDetailDebug-0), td:has(> .cr-CRDiffDetailDebug-1),  td:has(> .cr-CRDiffDetailDebug-2),
td:has(> .cr-CRPointsTotalPts-0), td:has(> .cr-CRPointsTotalPts-1),
td:has(> .cr-CRDiffTotalSingle-0), td:has(> .cr-CRDiffTotalSingle-1) {
    text-align: center;
    vertical-align: middle;
}

/*** VITESSE - QUALIF RECORD **************************************************/
.cr-CRVitesseQualRec-0, .cr-CRVitesseQualCla-0, .cr-CRVitesseCombine-0 {
    display: inline-block;
    min-width: 8px;
    height: 20px;
    line-height: 21px;
    padding: 0 6px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 10px;
    background-color: var(--color-light);
    color: var(--color-text-light);
}

.cr-CRVitesseQualRec-0:not(:first-child) {
    margin-top: 2px;
}

.cr-CRVitesseQualCla-1, .cr-CRVitesseCombine-1 {
    display: inline-block;
    min-width: 26px;
    height: 26px;
    line-height: 28px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 13px;
    color: var(--color-light);
    background-color: var(--color-text-light);
}

td:has(> .cr-CRVitesseQualRec-0),
td:has(> .cr-CRVitesseQualCla-0), td:has(> .cr-CRVitesseQualCla-1),
td:has(> .cr-CRVitesseCombine-0), td:has(> .cr-CRVitesseCombine-1){
    text-align: center;
    vertical-align: middle;
}

/*** VITESSE - DUEL ***********************************************************/
.cr-CRVitesseDuelTotal-0 {
    display: inline-block;
    min-width: 8px;
    height: 20px;
    line-height: 21px;
    padding: 0 6px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid transparent;
    border-radius: 10px;
    background-color: transparent;
    color: transparent;
}

.cr-CRVitesseDuelTotal-0.active {
    border-color: var(--color-light);
    background-color: var(--color-light);
    color: var(--color-text-light);
}

.cr-CRVitesseDuelTotal-1 {
    display: inline-block;
    min-width: 26px;
    height: 26px;
    line-height: 28px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 13px;
    color: var(--color-light);
    background-color: var(--color-text-light);
}

td:has(> .cr-CRVitesseDuelTotal-0), td:has(> .cr-CRVitesseDuelTotal-1), td:has(> .chevron-right) {
    text-align: center;
    vertical-align: middle;
}

/*** CLASSEMENTS **************************************************************/
#classement-header {
    display: flex;
    justify-content: space-between;
    padding: 8px 0px;
    border-bottom: 2px solid var(--color-light);
    font-size: 18px;
    color: var(--color-light);
}

#classement-header>span:first-child {
    font-weight: bold;
    text-transform: uppercase;
}

#classement-header>span:last-child:not(:empty):before {
    content: "\005B";
}

#classement-header>span:last-child:not(:empty):after {
    content: "\005D";
}

.content-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--color-active);
    cursor: pointer;
}

div.content-header:nth-child(2){
    margin-top: 8px;
    border-top: 1px solid var(--color-active);
}

div.content-header:nth-child(4) {
    margin-bottom: 8px;
}

.content-container:not(:last-of-type) {
    margin-bottom: 24px;
}

.content-header:hover {
    background-color: var(--color-bg-header);
    border-color: var(--color-text-dark);
}

.content-header>span:first-child {
    font-size: 18px;
    color: var(--color-text-dark);
}

.content-header>span:first-child:not(:empty):before {
    content: "\005B";
}

.content-header>span:first-child:not(:empty):after {
    content: "\005D";
}

.content-container.visible {
    display: block;
}

.content-container:not(.visible) {
    display: none;
}

.content-container>table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.content-container>table>thead>tr>th:not(:has(span.circle-dark)):before {
    content: "\005B";
}

.content-container>table>thead>tr>th:not(:has(span.circle-dark)):after {
    content: "\005D";
}

.content-container>table>thead>tr>th {
    text-transform: uppercase;
    padding-top: 8px;
    padding-bottom: 8px;
    vertical-align: middle;
}

.content-container>table>thead>tr>th:first-child,
.content-container>table>thead>tr>td:first-child {
    width: 56px;
    text-align: center;
}

.content-container>table:not(#classements)>thead>tr>th:nth-child(2),
.content-container>table:not(#classements)>thead>tr>td:nth-child(2) {
    width: 412px;
}

.content-container>table:not(#classements, #resultats)>thead>tr>th:nth-child(3),
.content-container>table:not(#classements, #resultats)>thead>tr>td:nth-child(3) {
    width: 312px;
}

.content-container>table>thead>tr>th:nth-child(2),
.content-container>table>thead>tr>th:nth-child(3) {
    text-align: left;
}

.content-container>table>tbody>tr>td {
    vertical-align: middle;
}

.content-container>table>thead>tr>th:not(:first-child),
.content-container>table>tbody>tr>td:not(:first-child) {
    padding-left: 16px;
}

.content-container>table>tbody>tr>td:not(:nth-child(2), :nth-child(3)) {
    text-align: center;
}

.content-container>table>tbody>tr:not(:hover)>td {
    padding-top: 8px;
    padding-bottom: 8px;
}

.content-container>table>tbody>tr:hover>td {
    padding-top: 7px;
    padding-bottom: 7px;
}

.content-container>table>tbody>tr:hover {
    border-top: 1px solid var(--color-dark);
    border-bottom: 1px solid var(--color-dark);
    background-color: var(--color-text-light);
}

.content-container>table>tbody>tr>td a {
    text-decoration: none;
    padding-right: 40px;
    margin-right: 6px;
    color: var(--color-text-dark);
    background-image: url("arrow-link-black.svg");
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: 12px;
}

.circle-dark {
    display: inline-block;
    min-width: 26px;
    height: 26px;
    line-height: 28px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-text-dark);
    border-radius: 13px;
    color: var(--color-text-dark);
    background-color: var(--color-text-light);
}

.filter-list {
    max-width: 67%;
    max-height: 33%;
    border: 2px inset var(--color-dark);
    border-radius: 16px;
    background-color: var(--color-bg-header);
    padding: 8px 8px;
}

.filter-list>div {
    width: calc(100% - 16px);
    height: 100%;
    max-height: 200px;
    overflow-y: auto;
    padding-left: 8px;
    padding-right: 8px;
}

.filter-list *.round-text {
    width: calc(100% - 32px);
}

.filter-list>div>table {
    width: 100%;
    border-collapse: collapse;
}

.filter-list>div>table>tbody>tr>td {
    padding-top: 4px;
    padding-bottom: 4px;
}

.round-text {
    text-decoration: none;
    display: inline-block;
    min-width: 8px;
    height: 20px;
    line-height: 21px;
    padding: 0 6px;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    border: 1px solid var(--color-light);
    border-radius: 10px;
    background-color: var(--color-text-light);
    color: var(--color-light);
}

.clickable {
    cursor: pointer;
}

tr:has(.clickable:only-of-type) {
    cursor: pointer;
}

tr>td:has(.clickable:only-of-type) {
    cursor: pointer;
}

td:hover>*.clickable {
    color: var(--color-light);
}

.round-text.clickable {
    padding: 8px 16px;
    border-radius: 20px;
}

.round-text.clickable:hover {
    color: var(--color-text-light);
    border-color: var(--color--text-light);
    background-color: var(--color-dark);
}

.filter-container>div>.round-text.clickable {
    min-height: 30px;
    line-height: 30px;
    border-radius: 24px;
}

.vertical-flex {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
}

.horizontal-flex {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.horizontal-flex>*/*, .vertical-flex>#season-select*/ {
    flex: 1;
    align-content: center;
}

.vertical-flex>.title/*, .vertical-flex>#season-select*/, .vertical-flex>.chart-container {
    align-self: center;
}

.horizontal-flex>.chart-container {
    flex: 0.5;
}

.vertical-flex:has(select#season-select) {
    padding-bottom: 24px;
    justify-content: space-between;
}

.chart {
    width: 500px;
    height: 210px;
}

@media (max-width: 500px) {
    .chart {
        width: 333px;
        height: 140px;
    }
}

.classement-title-item {
    font-weight: bold;
    text-transform: uppercase;
}

.saison:not(.visible) {
    display: none;
}

.td.element-classement:not(.P):not(.visible) {
    display: none;
}

td:has(.colored-circle)>*:not(.colored-circle) {
    line-height: 26px;
    vertical-align: bottom;
}

.colored-circle {
    display: inline-block;
    width: 26px;
    height: 26px;
    margin-left: 13px;
    margin-right: 13px;
    border-radius: 50%;
    background-color: var(--color-inactive);
}

.colored-circle.BLOC {
    background-color: var(--color-bloc);
}

.colored-circle.DIFFICULTE {
    background-color: var(--color-difficulte);
}

.colored-circle.VITESSE {
    background-color: var(--color-vitesse);
}

.colored-circle.COMBINE {
    background-color: var(--color-combine);
}

#classements, #resultats {
    table-layout: fixed;
}

table#classements>thead>tr>th:first-child,
table#resultats>thead>tr>th:first-child {
    width: 460px;
    padding-left: 16px;
}

table#classements>thead>tr>th:last-child,
table#resultats>thead>tr>th:last-child {
    padding-right: 16px;
}

table#classements>thead>tr>th:not(:first-child),
table#classements>tbody>tr>td:not(:first-child) {
    text-align: center;
}

table#classements>thead>tr>th:first-child,
table#resultats>thead>tr>th:first-child {
    text-align: left;
}

table#classements>tbody>tr>td:first-child,
table#resultats>tbody>tr>td:first-child {
    text-align: left;
}

select.button-grey,
select.button-blue,
select.filter,
select.button-grey::picker(select),
select.button-blue::picker(select),
select.filter::picker(select)
{
    appearance: base-select;
}

td>select.button-grey,
td>select.button-blue,
td>select.filter {
    width: 100%;
}

select.button-grey,
select.button-blue,
select.filter {
    align-self: center;
    border-radius: 20px;
}

select.button-grey {
    border: 2px solid #999999;
    background: #ffffff;
    color: #999999;
    padding: 10px;
    transition: 0.25s;
}

select.button-grey::picker-icon {
    color: #999999;
    transition: 0.25s;
}

select.button-grey:hover {
    border-color: #000000;
    color: #000000;
}

select.button-grey:hover::picker-icon {
    color: #000000;
}

select.button-grey:open::picker-icon {
    rotate: 180deg;
}

select.button-grey::picker(select) {
    border: none;
}

select.button-grey>option {
    border: 2px solid #999999;
    background: #ffffff;
    color: #999999;
    padding: 10px;
    transition: 0.25s;
}

select.button-grey>option:first-of-type {
    border-radius: 8px 8px 0 0;
}

select.button-grey>option:last-of-type {
    border-radius: 0 0 8px 8px;
}

select.button-grey::picker(select) {
    border-radius: 8px;
}

select.button-grey>option:not(select.button-grey>option:last-of-type) {
    border-bottom: none;
}

select.button-grey>option:hover,
select.button-grey>option:focus {
    color: #000000;
}

select.button-grey>option:checked {
    font-weight: bold;
}

select.button-grey>option::checkmark {
    order: 1;
    margin-left: auto;
    content: "";
}
