.rating_widget {
    position: relative;
    text-align: center;
    padding:5px;
    background: #333;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100;
}

.rating_widget.fixed {
    position: fixed;
}

.rating_widget > a {
    display: block;
    text-decoration: none !important;
}

.rating_widget span {
    display: inline-block;
    color: #fff;
    font-size: 75%;
    font-weight: 700;
    text-align: center;
}

.rating_wrap_stars {
    white-space: nowrap;
}

.rating_head{
    display: inline-block;
    vertical-align: text-bottom;
}

.rating_body {
    display: inline-block;
    vertical-align: bottom;
}

.rating_footer {
    display: inline-block;
    vertical-align: text-bottom;
}

.rating_wrapper{
    position: relative;
    display: inline-block;
}

.rating_widget .star {
    display: inline-block;
    content: "";
    width: 15px;
    height: 15px;
    margin: 0;
    background-size: 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='50' height='50' viewBox='0 0 50 50'%3E%3Cpath fill='%23fff' stroke='gold' stroke-width='4' d='m25,1 6,17h18l-14,11 5,17-15-10-15,10 5-17-14-11h18z'/%3E%3C/svg%3E%0A");
}

.rating_wrap_stars.active {
    position: absolute;
    overflow: hidden;
    z-index: 1;
}

.rating_wrap_stars.active .star {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='50' height='50' viewBox='0 0 50 50'%3E%3Cpath fill='gold' stroke='gold' d='m25,1 6,17h18l-14,11 5,17-15-10-15,10 5-17-14-11h18z'/%3E%3C/svg%3E%0A");
}

.rating_value {
    display: inline-block;
    vertical-align: text-bottom;
}

.rating_number {
    font-size: 125% !important;
}

.rating_label {
    font-size:110%;
}

.noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

@media (min-width: 768px) {
    .rating_widget {
        position: fixed;
        left: auto;
        bottom: 100px;
        padding:0;
        background: #ccc;
    }

    .rating_head{
        display: block;
        background:#000;
    }

    .rating_body {
        display: block;
        padding-top: 10px;
        padding-left: 10px;
        padding-right: 10px;
    }

    .rating_widget > a:hover .rating_wrap_stars {
        filter: drop-shadow(0 0 3px white);
    }

    .rating_value {
        display: block;
    }

    .rating_value span{
        color:#000 !important;
    }

    .rating_footer {
        padding-bottom: 10px;
    }

    .rating_footer span {
        color:#000 !important;
        font-weight: normal;
        font-size: 60%;
    }

    .rating_number {
        display: block !important;
        font-size: 170% !important;
    }
}