.mfp-bg {
    z-index: 10001!important;
}
.mfp-wrap {
    z-index: 10002!important;
}
#avatar {
   margin-bottom: 20px
}
.hidden {
    display: none;
}
.title_rating {
    display: inline-block;
    font-size: 16px;
    color: #444;
    font-weight: 600;
    position: relative;
    margin-bottom: 20px;
}
.title_rating:after {
    content: "";
    border-bottom: 3px solid var(--review-color);
    position: absolute;
    bottom: -5px;
    left: 0;
    right: 0;
}
.no_reviews {
    font-size: 13px;
    margin: 10px;
}
.btn_write {
    font-size: 14px;
}
.rating_button .fa {
    margin-right: 5px;
}
.info_rating {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.rating_total {
    margin: 5px 0;
    text-align: center;
    font-size: 12px;
}

.result_rating {
    display: flex;
    justify-content: center;
}
.result_rating span {
    position: relative;
    width: 120px;            
    height: 120px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 36px;
    font-weight: 600;
    color: #333;
    background-color: #fff;
}
.result_rating span::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: conic-gradient(var(--review-color) var(--review-percentage), #e0e0e0 0%);
    mask: radial-gradient(closest-side, transparent 65%, white);
}
.rating_table {
    display: grid;
    width: 100%;
    margin-left: 10%;
    line-height: 24px;
}
.block_star {
    display: flex;
    align-items: center;
}
.rating_star {
    white-space: nowrap;
}
.rating_strip {
    width: 100%;
    max-width: 350px;
    height: 6px;
    background: #f5f5f5;
    margin: 0 15px;
}
.rating_star_total {
    font-size: 12px;
    color: #6c757d;
}
.rating_value {
    display: block;
    height: 100%;
    background: var(--review-color);
    border-radius: 5px;
}
.block_rating_sort {
    max-width: 500px;
    margin-top: 20px;
}
.rating_sort {
    display: flex;
    justify-content: flex-end;
}
.rating_sort label {
    font-size: 13px;
    color: #6c757d;
}
#reviews-sort {
    font-size: 13px;
    border: none;
    border-bottom: 1px dashed #909090;
    margin-left: 5px;
    color: #343a40;
}
#reviews_list {
    margin-top: 20px;
}
.customer_reviews {
    display: flex;
    position: relative;
    align-items: center;
    border-radius: 5px;
    padding: 10px;
    background-color: #fdfdfd;
    border: 1px solid #ddd;
    margin-bottom: 20px;
    box-shadow: 0 1px 4px rgb(112 112 112 / 22%);
}
.review_date {
    position: absolute;
    right: 5px;
    top: 0;
    font-size: 11px;
}
.voting_block {
    position: absolute;
    bottom: 0;
    right: 0;
}
.customer_buy {
    position: absolute;
    left: 5px;
    top: 5px;
}
.review_customer_info {
    text-align: center;
    margin-right: 15px;
}
.customer_avatar img {
    border-radius: 50%;
}
.review_customer_name {
    font-weight: 600;
    color: #555;
    font-size: 12px;
}
.review_customer_status {
    font-size: 10px;
    color: #777;
}
.rating_star .fa-stack {
    font-size: 8px;
}
.rating_star .fa-star-o {
    color: #999;
    font-size: 15px;
}
.rating_star .fa-star {
    color: #FC0;
    font-size: 15px;
}
.rating_star .fa-star + .fa-star-o {
    color: #E69500;
}
.rating_star .fa-star-o:before {
    content: "\f006";
    font-weight: normal;
}
.rating_star.review_rating .fa-stack {
    font-size: 7px;
}
.rating_star.review_rating .fa-star, .rating_star.review_rating .fa-star-o {
    font-size: 13px;
}
.customer_text {
    padding: 10px 0 20px 0;
    font-size: 13px;
    color: #555;
}
.comment_customer {
    position: absolute;
    bottom: 5px;
    margin-left: 20px;
    color: #0076b0;
    cursor: pointer;
    font-size: 12px;
    font-weight: bold;
}
.voting_block button {
    font-size: 12px;
    background: none;
    border: none;
    color: #999;
}
.like_review.active, .dislike_review.active {
    color: var(--review-color);
}
.customer_text_positive, .customer_text_negative {
    margin-top: 5px;
}
.customer_text_positive span {
    color: green;
}
.customer_text_negative span {
    color: red;
}
.review_gallery {
    margin-top: -15px;
    margin-bottom: 20px;
}
.review_photo, .review_video {
    display: inline-block;
    margin: 3px;
    height: 65px;
}
.review_photo {
    width: 65px;
}
.review_video {
    position: relative;
    width: 87px;
}
.youtube_play {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
}
.review_photo img, .review_video img {
    cursor: pointer;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    vertical-align: middle;
    border-radius: 10px;
}
.block_review_comments {
    margin-left: 50px;
}
.btn_review_comments {
    display: flex;
    align-items: center;
    color: #777;
    font-size: 12px;
    cursor: pointer;
    font-weight: bold;
    margin-left: 50px;
    margin-top: -15px;
    margin-bottom: 15px;
}
.btn_review_comments .fa {
    margin-left: 5px;
}
.btn_review_comments.active {
    margin-bottom: 10px;
}
#reviews_gallery {
    margin-top: 20px;
}
.title_gallery {
    font-size: 14px;
    font-weight: 500;
    color: #000;
}
.list_gallery {
    white-space: nowrap;
    overflow: auto;
}
.list_gallery::-webkit-scrollbar {
    height: 6px;
    border-radius: 10px;
}
.list_gallery::-webkit-scrollbar-track {
    background: #ccc;
    border-radius: 10px;
}
.list_gallery::-webkit-scrollbar-thumb {
    opacity: 0.8;
    background: var(--review-color);
    border-radius: 10px;
}
.list_gallery::-webkit-scrollbar-thumb:hover {
    opacity: 1;
    background: var(--review-color);  
}
#more_reviews {
    text-align: center;
}
.mfp-bg {
    opacity: 0; 
    transition: opacity 0.3s ease-in-out;
}
.mfp-bg.mfp-ready {
    opacity: 0.8;
}
.mfp-bg.mfp-removing {
    opacity: 0;
}
.mfp-zoom-in.mfp-ready .mfp-with-anim {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}
.mfp-zoom-in .mfp-with-anim {
    opacity: 0;
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    -webkit-transform: scale(.8);
    -ms-transform: scale(.8);
    transform: scale(.8);
}
.popup_block, .popup_gallery_block {
    position: relative;
    background: #fff;
    display: block;
    width: 90%;
    margin: 0 auto;
    border-radius: 4px;
}
.popup_block {
    max-width: 500px;
}
.popup_gallery_block {
    max-width: 1200px;
}
.review_title {
    height: 44px;
    background: rgb(242, 244, 248);
    color: #555;
    text-align: center;
    border-radius: 4px 4px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}
.content_write {
    padding: 20px;
    font-size: 12px;
    color: #444;
}
#add_review label {
    font-weight: 600;
    color: #777;
}
.rating_review {
    text-align: center;
    margin-top: 10px;
}
.review_stars span {
    width: 70px;
    display: inline-grid;
    line-height: 28px;
    font-size: 12px;
    cursor: pointer;
}
.review_stars span:before {
    content: "\2606";
    color: #bbb;
    font-size: 36px;
}
.review_stars:hover span:hover~span:before {
    color: #bbb;
}
.review_stars:hover span:before {
    content: "\2605";
    color: #f7d756;
}
.review_stars:not([data-star="0"]) span:before {
    content: "\2605";
}
.review_stars[data-star="1"] span:nth-child(-n+1):before, .review_stars[data-star="2"] span:nth-child(-n+2):before, .review_stars[data-star="3"] span:nth-child(-n+3):before, .review_stars[data-star="4"] span:nth-child(-n+4):before, .review_stars[data-star="5"] span:nth-child(-n+5):before {
    color: #f9c700;
}
#add_review .form-group {
    margin-bottom: 15px;
}
.review_required label:after {
    content: '* ';
    color: #F00;
    font-weight: bold;
}
#add_review label.review_positive {
    color: #137e13;
}
#add_review label.review_negative {
    color: #d25353;
}
.block_btn_gallery {
    display: flex;
    margin-top: -10px;
}
#add_photo {
    margin-right: 5px;
}
.block_btn_gallery button {
    display: flex;
    align-items: center;
    color: #fff;
    background-color: #427d8f;
    border: 1px solid #427d8f;
    border-radius: 3px;
    padding: 3px 10px;
    font-size: 12px;
}
.block_btn_gallery button:hover {
    opacity: 0.8;
}
.btn_add_gallery {
    margin-right: 5px;
}
.btn-video {
    color: #fff;
    background-color: #5bc0de;
    border-color: #46b8da;
    border-radius: inherit;
}
.btn-video:hover {
    color: #fff;
    background-color: #5bc0de;
    border-color: #46b8da;
    border-radius: inherit;
    opacity: 0.8;
}
.review_email {
    display: flex;
    align-items: center;
    margin-top: 25px;
}
.review_email label {
    padding: 5px 13px;
    font-size: 13px;
    font-weight: normal !important;
    line-height: 1;
    cursor: pointer;
    margin: 0;
    background: #e9ecef;
    border: 1px solid #dee2e6;
    color: #fff !important;
}
.review_notify {
    margin-top: 5px;
    margin-left: 10px;
    font-size: 13px;
}
input.checkbox_notify {
    width: auto;
    position: relative;
    margin-top: 3px;
    margin-right: 5px;
    cursor: pointer;
}
input.checkbox_notify:after, input.checkbox_notify:before {
    content: "";
    width: 15px;
    height: 15px;
    background-color: #fff;
    box-shadow: 0 0px 0px 3px rgb(255 255 255);
    -webkit-box-shadow: 0 0px 0px 3px rgb(255 255 255);
    -moz-box-shadow: 0 0px 0px 3px rgb(255 255 255);
    left: 0;
    position: absolute;
}
input.checkbox_notify:before {
    z-index: 1;
    border: 3px solid #858585;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
input.checkbox_notify:checked:before {
    height: 8px;
    border-color: #393;
    border-top-style: none;
    border-right-style: none;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.alert_review {
    color: #fff;
    display: flex;
    justify-content: space-between;
    padding: 3px 7px;
    border-radius: 3px;
}
.alert_danger {
    background: #e26161;
}
.alert_success {
    background: #64b269;
}
.alert_danger button {
    background: none;
    border: none;
    color: #fff;
    font-weight: 600;
    font-size: 14px;
}
.alert_review_close {
    background: none;
    border: none;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
}
#add_photo .fa, #add_video .fa {
    margin-right: 5px;
}
#block_captcha label {
    display: none;
}
#button_write {
    margin-top: 15px;
    width: 100%;
    padding: 10px;
    font-size: 16px;
    border-radius: 5px;
}
.vd-prev img {
    max-height: 120px;
}
.vd-prev {
    display: inline-block;
    position: relative;
    margin: 5px;
}
.vd-prev .thumbnail {
    margin-bottom: 0;
}
#video-preview {
    margin-top: 10px;
}
i.video_icon {
    position: absolute;
    top: -7px;
    color: #d30000;
    right: -2px;
    opacity: 0.7;
    font-size: 24px;
    cursor: pointer;
}
i.video_icon:hover {
    opacity: 1;
}
.text_danger {
    color: red;
}
.text_success {
    text-align: center;
    font-size: 14px;
}

.reviews_carousel {
    padding: 20px;
}
.review_item, .review_gallery_item {
    display: none;
    transition: transform 0.5s ease;
}
.active.review_item {
    display: block;
}
.review_gallery_item.active {
    display: block;
}
.carousel_content {
    display: inline-block;
    width: 100%;
}
.container_gallery, .container_review {
    display: inline-block;
    width: 50%;
}
.container_gallery {
    position: relative;
    float: left;
}
.review_gallery_item iframe {
    width: 100%;
}
.review_gallery_item img {
    width: 100%;
    height: auto;
}
.container_review {
    padding-left: 20px;
}
.info_counter {
    position: absolute;
    bottom: -40px;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #333;
}
.reviews_nav {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: #ddd;
    color: #000;
    border: none;
    border-radius: 3px;
    padding: 10px;
    cursor: pointer;
}
.next_review {
    right: -30px;
}
@media (max-width: 768px) {
    .container_gallery, .container_review {
        width: 100%;
    }
    .container_gallery {
        margin-bottom: 40px;
    }
    .container_review {
        padding-left: 0;
    }
}
@media (max-width: 500px) {
    .review_stars span {
        width: 55px;
        font-size: 10px;
    }
    .info_rating {
        display: block;
    }
    .rating_button {
        text-align: center;
        margin-bottom: 20px;
    }
    .rating_table {
        display: block;
        margin-left: 0;
    }
}
