.page[name='race'][mode] > .menu,
.page[name='race']:not([mode='statistics']) > .header,
.page[name='race'][mode] > .content > .imageWrapper,
.page[name='race'][mode='scoreboard'] > .content > .section[key='records'],
.page[name='race'][mode='records'] > .content > .section[key='scoreboard'],
.page[name='race']:not([mode='statistics']) > .content > .section[key='laps'],
.page[name='race'][mode='statistics'] > .content > .section[key='records'],
.page[name='race'][mode] > .footer {
    display: none;
}
.page[name='race'] > .header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    height: 64px;
}
.page[name='race'] > .header > .side {
    width: 64px;
}
.page[name='race'] > .header > .side > .button {
    padding: 20px;
}
.page[name='race'] > .header > .side > .button > img {
    display: block;
    width: 24px;
}
.page[name='race'] > .header > .center {
    display: table;
    width: calc(100% - 128px);
    height: 100%;
    text-align: center;
}
.page[name='race'] > .header > .center > div {
    display: table-cell;
    font-size: 16px;
    font-weight: 600;
    vertical-align: middle;
}
.page[name='race'] > .content {
    position: absolute;
    overflow-y: auto;
    padding-top: 20px;
    scroll-behavior: smooth;
}
.page[name='race']:not([mode]) > .content {
    padding-bottom: 20px;  
}
.page[name='race']:not([mode='statistics']) > .content {
    top: 0;
}
.page[name='race'][mode='statistics'] > .content {
    top: 64px;
}
.page[name='race'] > .content > div:not(:last-child) {
    margin-bottom: 24px;
}
.page[name='race'] > .content > .imageWrapper {
    width: calc(100% - 40px);
    height: 160px;
    border-radius: 8px;
    margin-right: 20px;
    margin-left: 20px;
    position: relative;
}
.page[name='race'] > .content > .imageWrapper > img {
    width: 100%;
    height: 100%;
    border-radius: 8px;
    object-fit: cover;
}
.page[name='race'] > .content > .imageWrapper > .button {
    position: absolute;
    top: 0;
    padding: 8px;
    border-radius: 12px;
    margin-top: 8px;
    font-weight: 500;
    /* enabled temporarily */
    display: none;
}
.page[name='race'] > .content > .imageWrapper > .button > .location {
    width: 16px;
    height: 16px;
    display: inline-block;
    vertical-align: middle;
}
.page[name='race'] > .content > .imageWrapper > .button > .arrow {
    width: 12px;
    height: 12px;
    display: inline-block;
    vertical-align: middle;
}
.page[name='race'] > .content > .section.fullScreen {
    position: fixed;
    top: 0;
    left: 100vw;
    height: 100vw;
    z-index: 3;
    width: 100vh;
    transform-origin: 0 0;
    padding-top: 24px;
    padding-bottom: 24px;
    animation: spin 0.15s ease 1 forwards, fadeIn 0.3s ease forwards;
}
.page[name='race'] > .content > .section > .header {
    margin-right: 20px;
    margin-bottom: 12px;
    margin-left: 20px;
    overflow: hidden;
}
.page[name='race'] > .content > .section.fullScreen > .header > .title {
    font-size: 20px;
}
.page[name='race'] > .content > .section:not(.fullScreen) > .header > .title {
    font-size: 16px;
}
.page[name='race'] > .content > .section > .header > .title {
    font-weight: 600;
}
.page[name='race'] > .content > .section > .header > .timer {
    margin-top: 2px;
}
.page[name='race'] > .content > .section > .header > .timer > .status {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-top: 5px;
}
.page[name='race'] > .content > .section.fullScreen > .header > .timer > .value {
    font-size: 17px;
}
.page[name='race'] > .content > .section:not(.fullScreen) > .header > .timer > .value {
    font-size: 13px;
}
.page[name='race'] > .content > .section > .tabs {
    margin-bottom: 12px;
    overflow-x: auto;
    white-space: nowrap;
}
.page[name='race'] > .content > .section > .tabs > .button {
    border-radius: 8px;
    display: inline-block;
    padding: 4px 8px;
    vertical-align: middle;
    margin-right: 4px;
    margin-bottom: 4px;
    font-weight: 500;
}
.page[name='race'] > .content > .section.fullScreen > .tableWrapper {
    font-size: 17px;
}
.page[name='race'] > .content > .section:not(.fullScreen) > .tableWrapper {
    font-size: 13px;
}
.page[name='race'] > .content > .section > .tableWrapper {
    padding-right: 12px;
    padding-left: 12px;
    border-radius: 16px;
    margin-right: 20px;
    margin-left: 20px;
}
.page[name='race'] > .content > .section > .tableWrapper > .fTable > .content > table {
    border-spacing: 0px 15px;
}
.page[name='race'] > .content > .section > .tableWrapper > .fTable > .content > table > thead > .filterFields,
.page[name='race'] > .content > .section > .tableWrapper > .fTable > .content > table > thead > .buttons {
    display: none;
}
.page[name='race'] > .content > .section > .tableWrapper > .fTable > .content > table > thead > tr > th {
    pointer-events: none;
}
.page[name='race'] > .content > .section[key='records'] > .tableWrapper > .fTable > .content > table > thead > tr > th,
.page[name='race'] > .content > .section[key='records'] > .tableWrapper > .fTable > .content > table > tbody > tr > td:not([colspan]),
.page[name='race'] > .content > .section[key='laps'] > .tableWrapper > .fTable > .content > table > thead > tr > th,
.page[name='race'] > .content > .section[key='laps'] > .tableWrapper > .fTable > .content > table > tbody > tr > td:not([colspan]) {
    font-size: 12px;
}
.page[name='race'] > .content > .section:not(.fullScreen)[key='scoreboard'] > .tableWrapper > .fTable > .content > table > thead > tr > th,
.page[name='race'] > .content > .section:not(.fullScreen)[key='scoreboard'] > .tableWrapper > .fTable > .content > table > tbody > tr > td:not([colspan]) {
    font-size: 11px;
}
.page[name='race'] > .content > .section[key='laps'] > .tableWrapper > .fTable > .content > table > tbody > tr.best {
    font-weight: bold
}
.page[name='race'] > .content > .section > .tableWrapper > .fTable > .content > table > tbody > tr > td[key='clientKey'] > .badge {
    width: 22px;
    height: 24px;
    display: inline-block;
    vertical-align: middle;
    position: relative;
}
.page[name='race'] > .content > .section > .tableWrapper > .fTable > .content > table > tbody > tr > td[key='clientKey'] > .badge > img {
    width: 100%;
    height: 100%;
    opacity: 0;
}
.page[name='race'] > .content > .section > .tableWrapper > .fTable > .content > table > tbody > tr > td[key='clientKey'] > .badge > .level {
    text-align: center;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    line-height: 24px;
}
.page[name='race'] > .content > .section > .tableWrapper > .fTable > .content > table > tbody > tr > td[key='clientKey'] > .name {
    font-weight: 500;
    display: inline-block;
    vertical-align: middle;
}
.page[name='race'] > .content > .section[key='laps'] > .tableWrapper > .fTable > .content > table > tbody > tr > .operations > .button {
    border-radius: 8px;
    padding: 4px 8px;
    vertical-align: middle;
}
.page[name='race'] > .content > .section[key='scoreboard'] > .header > .title > img {
    height: 18px;
    display: inline-block;
    vertical-align: middle;
}
.page[name='race'] > .content > .section[key='scoreboard'] > .controls {
    padding: 4px;
    border-radius: 16px;
    margin-top: 6px;
}
.page[name='race'] > .content > .section[key='scoreboard'] > .controls > img {
    width: 26px;
    display: block;
}
.page[name='race'] > .footer.records {
    display: block;
}

@media (max-width: 799px) {
    .page[name='race']:not([mode]) > .content {
        bottom: 71px;
    }
    .page[name='race'][mode] > .content {
        bottom: 0;
    }
}
@media (min-width: 800px) {
    .page[name='race'] > .content {
        bottom: 0;
    }
}

@keyframes spin { 
    100% { 
        transform:rotate(90deg);
    } 
}
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}