/* ODDS */


/* CSS sports, league */

.odds-item-sport {
    min-height: 180px;
    border-radius: 8px;
    transition: all .3s ease-in-out;
}

:is(.odds-item-sport, .odds-item-league):hover {
    background-color: #2a7dfb;
    color: #fff;
}

.odds-item-sport:hover svg {
    fill: #fff;
}

.item-sport-icon svg {
    transition: all .3s ease-in-out;
    fill: #2a7dfb;
}

.item-sport-badge {
    position: absolute;
    top: -7px;
    right: -7px;
    --bs-bg-opacity: 1;
    background: #4c5f8d;
    border: 2px solid #fff;
    min-width: 24px
}

.odds-header-dark {
    max-height: 300px;
}

.odds-img-head {
    width: auto;
    height: 340px;
    transform: translateY(-41px);
}

.odds-item-league {
    min-height: 100px;
    border-radius: 8px;
    transition: all .3s ease-in-out;
    justify-content: flex-start;
    gap: 0.5rem;
}

.item-league-img {
    width: 40px;
    height: 40px;
}

.tdodds-matches-sidebar {
    background-color: #fff;
    border-radius: 5px;
}

.oddssidebar-item-league {
    align-items: center;
    display: flex;
    padding: 10px;
    transition: color .3s cubic-bezier(.25, .8, .25, 1);
    width: 100%;
    justify-content: space-between;
}

.flag-team-icon {
    width: 42px;
    height: 42px;
}

.tdodds-flag {
    width: 24px;
    height: 24px;
    overflow: hidden;
    position: relative;
    margin-left: 4px;
    flex-shrink: 0;
    border-radius: 50%;
}

.tdodds-league-infomation {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 10px;
    background-color: #f5f7f9;
}

.odds-item-matches {
    background-color: #fff;
    border-radius: 5px;
    border: 2px solid transparent;
}

.odds-item-matches .delimiter {
    padding: 3px;
}

.odds-matches-timming {
    color: #6f8caa;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
}

.odds-item-matches.active {
    border: 2px solid #2a7dfb;
}

.odds-item-matches:hover {
    border: 2px solid #2a7dfb;
    color: #4a5b68;
}

.odds-item-matches.active .matches-sport-badge {
    display: flex;
}

.matches-sport-badge {
    display: none;
    position: absolute;
    top: -8%;
    right: -6%;
    width: 28px;
    height: 28px;
    background-color: #2a7dfb;
    align-items: center;
    justify-content: center;
    padding: 5px;
}

.td-odds-custom iframe {
    width: 100% !important;
}

.odds-comparesion-item-sport {
    transition: all .3s ease-in-out;
    flex-shrink: 0;
    color: #313131;
    display: flex;
    height: 40px;
    position: relative;
    text-transform: uppercase;
    white-space: nowrap;
    border-radius: 8px;
    background: #d9dfed;
}

.td-item-sport-icon svg {
    fill: #313131;
}

.selections-item-header {
    color: #7b8c98;
    font-size: 12px;
    line-height: 16px;
}

.selections-item-header svg {
    fill: #7b8c98;
}

.odds-comparesion-item-sport:hover,
.odds-comparesion-item-sport:hover .item-sport-badge {
    background-color: #2a7dfb;
    color: #fff;
}

.odds-comparesion-item-sport:hover svg {
    fill: #fff;
    transition: all 0.3s ease-in-out;
}

.odds-comparesion-item-sport.active,
.odds-comparesion-item-sport.active .item-sport-badge {
    background-color: #2a7dfb;
    color: #fff;
}

.odds-comparesion-item-sport.active svg {
    fill: #fff;
    transition: all 0.3s ease-in-out;
}

.selections-item-link {
    display: flex;
    font-size: 12px;
    font-weight: 500;
    line-height: 20px;
    transition: color .3s cubic-bezier(.25, .8, .25, 1);
    width: 100%;
}

.selections-item-link.active {
    color: #2a7dfb;
}


.selections-item-toggle-head {
    padding: 10px;
}

.selections-item-toggle-body {
    display: none;
    padding: 10px;
}

.odds-league-list-link {
    display: flex;
    font-size: 12px;
    font-weight: 500;
    line-height: 20px;
    transition: color .3s cubic-bezier(.25, .8, .25, 1);
    width: 100%;
    padding: 10px 0;
}

.odds-league-list-link.active {
    color: #2a7dfb;
}

.selections-item-toggle {
    cursor: pointer;
}

.selections-item-toggle-head:hover {
    color: #007dff;
}

.selections-item-toggle.active .selections-item-toggle-head {
    background-color: #f5f7f9;
    color: #2a7dfb;
}

.selections-item-toggle.active .selections-item-toggle-body {
    display: block;
}

.selections-item-toggle.active {
    background-color: #fff;
    border-radius: 0.25rem;
}

.selections-item-toggle-body-list {
    overflow-y: auto;
    max-height: 240px;
}

.tdoods-main-content {
    background-color: #fff;
    border-radius: 0.25rem;
    box-shadow: 0 -1px 5px #00000030;
}

.odds-aside-top-bookmakers-item {
    display: flex;
    border-radius: 8px;
    display: flex;
    position: relative;
    color: #4a5b68;
    flex-direction: column;
    max-width: 500px;
    margin: auto;
    width: 100%;
    padding: 6px 10px;
}

.odds-bookmaker-logo {
    border-radius: 0.5rem;
    display: flex;
    height: 50px;
    min-width: 50px;
    margin: auto 8px auto 0;
    border: 3px solid #fff;
}

.odds-bookmaker-logo img {
    object-fit: cover;
    margin: auto;
}

.odds-bookmaker-info-name {
    line-height: 16px;
    text-transform: uppercase;
}

.odds-bookmaker-info {
    max-width: 196px;
}

.odds-bookmaker-wrapper-bonus-code {
    border: 2px dashed #009cff;
    text-align: center;
    max-width: 90px;
    text-transform: uppercase;
    font-weight: 700;
    cursor: pointer;
    border-radius: 0.25rem;
    font-size: 9px;
    max-height: 33px;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5px;
}

.odds-bookmaker-wrapper {
    min-width: 100px;
    margin-left: auto;
    display: flex;
    flex-direction: column;
    align-items: end;
    justify-content: center;
}

.odds-bookmaker-wrapper-bonus-get {
    width: 90px;
    max-height: 32px;
    text-transform: uppercase;
    border-radius: 0.25rem;
    font-size: 9px;
}

.odds-bookmaker-info-desc {
    font-weight: 700;
    font-size: 13px;
    font-family: 'Playfair Display', serif;
}

.odds-bookmaker-info-term {
    cursor: pointer;
    font-size: 9px;
    -webkit-text-decoration: underline;
    text-decoration: underline;
}

.odds-bookmaker-desc-term {
    border-top: 1px solid #e2e7ec;
    font-size: 9px;
    margin-top: 9px;
    padding-top: 6px;
    width: 100%;
    display: none;
    max-height: 48px;
    overflow-y: auto;
}

.odds-aside-top-bookmakers-item.active .odds-bookmaker-desc-term {
    display: block;
}

.odds-aside-header-img {
    display: inline-block;
    width: 18px;
    height: 18px;
    overflow: hidden;
    position: relative;
    flex-shrink: 0;
    border-radius: 50%;
}

.odds-aside-header-img img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.odds-bookmarker-active-code {
    background: #009cff14;
    line-height: 22px;
    color: #006eb4;
    word-break: break-word;
    width: 100%;
}

.odds-aside-top-bookmakers-item .bonus-exclusive-tag {
    font-weight: 500;
    font-size: 8px;
    padding: 2px 5px;
}

.odds-bookmaker-name {
    font-size: 16px;
    line-height: 20px;
    color: #fff;
    font-weight: 500;
}

.odds-bookmaker-num {
    height: 28px;
    line-height: 24px;
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    font-weight: 700;
    color: #4a5b68;
    font-size: 13px;
    z-index: 3;
    padding: 0 8px;
    border-top-left-radius: 6px;
    border-bottom-right-radius: 13px;
}

.odds-comparesion-content .widget-container iframe {
    box-shadow: unset;
}

.odds-aside-top-bookmakers-item:nth-child(odd) {
    background-color: #f5f7f9;
}

.stack-tab-container {
    position: relative;
}

.stack-tab-container .tab-bar {
    overflow: hidden;
    padding-right: 25px;
}

.stack-tab-container .left-arrow,
.stack-tab-container .right-arrow {
    position: absolute;
    width: 100px;
    height: 100%;
    top: 0;
    display: none;
    align-items: center;
    padding: 0 10px;
    pointer-events: none;
}

.stack-tab-container .right-arrow {
    right: 0;
    justify-content: flex-end;
    background: linear-gradient(to left, #f0f3f7 20%, transparent)
}

.stack-tab-container .left-arrow {
    background: linear-gradient(to right, #f0f3f7 20%, transparent)
}

.stack-tab-container .right-arrow.active,
.stack-tab-container .left-arrow.active {
    display: flex;
    z-index: 1;
}

.stack-tab-container .right-arrow-btn,
.stack-tab-container .right-arrow-btn {
    width: 32px;
    height: 32px;
    padding: 8px;
    cursor: pointer;
    pointer-events: auto;
    background-color: var(--bs-main);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.stack-tab-container ul.tabs {
    display: flex;
    gap: 1rem;
    margin: 0;
    padding-top: 16px;
    padding-bottom: 16px;
    list-style: none;
    overflow-x: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    scroll-behavior: smooth;
    padding-left: 0;
}

.stack-tab-container ul.dragging {
    scroll-behavior: auto;
    cursor: pointer;
}

.stack-tab-container ul::-webkit-scrollbar {
    display: none;
}

/* layout */
.sidebar-comperision-custom {
    flex: 0 0 auto;
    width: 220px;
    flex-basis: 220px;
}

.odds-main-content {
    flex: 1;
    min-width: 0;
    position: relative;
}

.odds-content {
    display: flex;
    flex: 1;
    background-color: #fff;
    border-radius: 5px;
    padding: 12px;
}

.sidebar-bookmaker-custom {
    flex: 1 1 100%;
    min-width: 0;
    padding-left: 12px;
}


.odds-iframe-main {
    flex: 0 0 auto;
    width: 590px;
    flex-basis: 590px;
}

/* CSS */


/* Responsive */

@media(max-width:1199.98px) {}

@media(max-width:1023.98px) {
    .odds-content {
        flex-direction: column;
    }

    .odds-aside-top-bookmakers-item {
        max-width: unset;
    }

    .sidebar-bookmaker-custom {
        padding-left: 0;
    }

    .odds-iframe-main {
        flex: 1 1;
        width: 100%;
        flex-basis: 100%;
    }
}

@media(max-width:991.98px) {
    .odds-matches-list {
        flex-wrap: nowrap;
        overflow-x: auto;
    }

    .matches-sport-badge {
        width: 22px;
        height: 22px;
        padding: 3px;
    }

    .matches-sport-badge svg {
        width: 22px;
        height: 22px;
    }
}

@media(max-width:767.98px) {
    .stack-tab-container .tab-bar {
        padding-right: 0;
    }

    .stack-tab-container .right-arrow.active,
    .stack-tab-container .left-arrow.active {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .competition-nav {
        width: 80%;
    }
}