*{
    padding: 0;
    margin: 0;
}

#recommended-bookmaker {
    display: flex; 
    flex-direction: column;
    gap:10px;
    margin-bottom:5px;
}

#recommended-bookmaker a {
    text-decoration: none !important;
}

#recommended-bookmaker .bonus-offer a:hover {
    color:#e64946;
}

#recommended-bookmaker .popup-bonus-table {
    width: 97%;
    margin: 0 auto;
    border:1px solid grey;
    border-radius: 10px;
    display:flex;
    align-items: center;
    flex-direction: column;
    position: relative;
    text-align: center;
    padding: 5px 5px;
    background-color: transparent!important;
}

#recommended-bookmaker .popup-bonus-table > div {
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 7px;
}

#recommended-bookmaker .popup-bonus-table > div:not(:first-child)::before {
    content: '';
    display: block;
    border-left: 1px solid #EFEFF2;
    height: 100%;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

#recommended-bookmaker .popup-container {
    width:100%;
    display:flex;
    align-items: center;
    flex-direction: row;
    text-align: center;
}

.popup-mobile-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

#recommended-bookmaker .new-bookmaker-badge {
    position: absolute;
    top: -15px;
    left: 23%;
    transform: translateX(-50%) rotate(0deg);
    background-color: rgb(230, 73, 70);
    color: white;
    padding: 2px 8px;
    font-size: 14px;
    font-weight: bold;
    border-radius: 5px;
    text-transform: uppercase;
    z-index: 10;
    animation: pulse 1.5s infinite;
}

#recommended-bookmaker .new-bookmaker-badge:empty {
    display: none !important;
}

#recommended-bookmaker .bookmaker-logo {
    border-radius: 10px;
}

#recommended-bookmaker .bookmaker-logo img {
    width: 120px;
    display:block;
    height: auto;
    border-radius: 10px;
}

#recommended-bookmaker .rating-wrapper {
    padding: 0px 5px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 8em;
    color:black!important;
}

#recommended-bookmaker .star-rating {
    --star-size: 20px;
    position: relative;
    display: inline-block;
    color: gold;
    width: var(--star-size);
    height: var(--star-size);
    background-color:gold;
    clip-path: polygon(
        50% 0%, 61% 35%, 98% 35%, 68% 57%, 
        79% 91%, 50% 70%, 21% 91%, 32% 57%, 
        2% 35%, 39% 35%
    );
}

#template_star_rating {
    padding:0 5px;
}

#recommended-bookmaker .bookmaker-bonus-offer {
    width: 40%;
    text-decoration: none !important;
}

#recommended-bookmaker .bookmaker-bonus-title {
    font-size: 17px;
    font-weight: 600;
    text-transform: uppercase;
    margin:0;
}

#recommended-bookmaker .bookmaker-review {
    width:15%;
    border: none !important;
    padding-right:10px;
}

#recommended-bookmaker .bookmaker-review:hover {
    background-color: transparent!important;
}

#recommended-bookmaker .bookmaker-review-button {
    color: rgb(11, 127, 244);
    text-decoration: none;
}

.get-bonus-wrapper {
    width: 15%;
    display: flex;
    justify-content: center;
}

#recommended-bookmaker .get-bonus-button {
    display: block;
    border:none !important;
    border-radius: 20px;
    padding: 5px;
    width: 150px;
    background-color: rgb(10, 177, 10);
    color: white;
    font-weight: bold;
    cursor: pointer;
    box-shadow: inset 0px 19px 9px -11px #ffffff2b, inset 0px -18px 9px -11px #007f2e21, 0px 0px 0px 4px #00000014;
    text-decoration: none;
}

#recommended-bookmaker .get-bonus-button:hover {
    background-color: #7dd47d;
}

#recommended-bookmaker .bonus-terms {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 9px;
    color:black!important;
}

@media (max-width: 800px) {
    .popup-mobile-wrapper {
        flex-direction: column;
    }

    #recommended-bookmaker .popup-bonus-table > div:not(:first-child)::before {
        border-left: none;
    }
}

@media (max-width: 670px) {

    #recommended-bookmaker {
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        width: 100%;        
        overflow-x: auto;    
        white-space: nowrap; 
        padding:15px;
    }

    #recommended-bookmaker .popup-bonus-table {
        flex-direction: column;
        min-width:210px;
        height:280px;
        text-wrap:wrap;
        padding: 10px;
    }

    #recommended-bookmaker .popup-container {
        display: flex;
        flex-direction: column;
        height: 90%;
        gap: 10px;
    }

    #recommended-bookmaker .bookmaker-bonus-offer,
    #recommended-bookmaker .bookmaker-review,
    .get-bonus-wrapper {
        width: 100%;
    }

    #recommended-bookmaker .bookmaker-review {
        padding-top:10px;
    }

    #recommended-bookmaker .bookmaker-bonus-title {
        font-size: 14px;
    }

    #recommended-bookmaker .bonus-terms {
        font-size:0.4rem;
        font-weight:normal;
        line-height:8px;
        margin-top:0;
        margin-bottom:0;
    }

    #recommended-bookmaker .popup-bonus-table .get-bonus-wrapper {
        width:100%;
    }

    #recommended-bookmaker .new-bookmaker-badge {
        left: 50%;
        width: 60%;
        top: -14px;
        font-size: 10px;
    }

    ::-webkit-scrollbar {
        width: 7px; 
        height: 7px;
    }

    ::-webkit-scrollbar-track {
        background: #f1f1f1;
        border-radius: 10px; 
    }

    ::-webkit-scrollbar-thumb {
        background-color: #888; 
        border-radius: 10px;
        border: 3px solid #f1f1f1;
    }

    ::-webkit-scrollbar-thumb:hover {
        background-color: #555;
    }
}