.rate-list-star {
    overflow: hidden;
    white-space: nowrap;
}

.rate-list-star i {
    display: inline-block;
    color: #ffbe00;
    font-size: 20px;
    cursor: pointer;
    transition: .3s;
}

.rate-open-form {
    padding: 8px 14px !important;
    border-radius: 4px;
    font-size: 15px;
}

.rate-point {
    line-height: 1;
    margin-right: 10px;
    font-size: 20px;
    font-weight: bold;
}

.rate-view .text-right {
    margin-top: 0;
}

.rate-view .text-bold {
    font-weight: bold;
}

.rate-view p {
    margin-bottom: 8px !important;
    color: #333;
    line-height: 1.6;
}

.rate-view input,
.rate-view textarea {
    width: 100%;
    font-size: 15px;
    box-sizing: border-box;
}

.rate-group-comment {
    margin: 10px 0;
    padding-top: 12px;
}

.rate-avata-user {
    font-size: 35px;
    overflow: hidden;
    background: #dedede;
    border-radius: 50%;
    padding: 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    color: #999;
    flex-shrink: 0;
}

.rate-create-date {
    line-height: 22px;
    color: #777;
    font-size: 14px;
}

.rate-icon {
    font-size: 15px;
    cursor: pointer;
}

.rate-view .form-control {
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
}

.rate-view .btn {
    min-width: auto !important;
}

.rate-comment img {
    max-width: 100%;
    height: auto;
    float: none !important;
    margin: 8px 0 !important;
    border-radius: 6px;
}

.rate-label-upload {
    line-height: 52px;
    font-weight: bold;
    color: #777;
}

.rate-image-small {
    max-width: 100%;
    max-height: 150px;
    height: auto;
    cursor: zoom-in;
    border-radius: 5px;
}

.rate-image-big {
    max-width: 100%;
    height: auto;
    cursor: zoom-out;
}

.rate-view.minimize .rate-list-star {
    display: inline-block;
}

.rate-view.minimize .text-danger {
    color: #f00;
    position: relative;
    top: -8px;
    left: 5px;
    font-size: 13px;
}

.cke_editor iframe {
    margin-left: 0 !important;
    display: block !important;
    width: 100% !important;
}

.fb_iframe_widget,
.fb_iframe_widget iframe {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
}

/*==========================
    Responsive Tablet
===========================*/
@media (max-width:991px){

    .rate-point{
        font-size:18px;
    }

    .rate-list-star i{
        font-size:18px;
    }

    .rate-open-form{
        width:100%;
        margin-top:10px;
    }

}

/*==========================
    Responsive Mobile
===========================*/
@media (max-width:767px){

    .rate-view{
        padding:10px;
    }

    .rate-group-comment{
        margin:10px 0;
        padding-top:10px;
    }

    .rate-list-star{
        white-space:normal;
    }

    .rate-list-star i{
        font-size:24px;
        margin-right:2px;
    }

    .rate-point{
        display:block;
        margin:0 0 10px;
        font-size:24px;
    }

    .rate-open-form{
        width:100%;
        text-align:center;
        font-size:16px;
        padding:10px !important;
    }

    .rate-view input,
    .rate-view textarea{
        font-size:16px;
    }

    .rate-avata-user{
        width:40px;
        height:40px;
        font-size:28px;
    }

    .rate-create-date{
        font-size:13px;
    }

    .rate-label-upload{
        display:block;
        line-height:normal;
        margin-bottom:8px;
    }

    .rate-image-small{
        max-width:100%;
        max-height:none;
    }

    .rate-view .btn{
        width:100%;
        margin-top:10px;
    }

}

/*==========================
    Small Mobile
===========================*/
@media (max-width:480px){

    .rate-list-star i{
        font-size:22px;
    }

    .rate-point{
        font-size:22px;
    }

    .rate-view p{
        font-size:14px;
    }

    .rate-view input,
    .rate-view textarea{
        font-size:15px;
    }

}
.g-recaptcha{
    display:inline-block;
    margin:10px auto;
}

@media(max-width:480px){
    .g-recaptcha{
        transform:scale(.85);
        transform-origin:left top;
    }
}
.rate-title-criteria{
    margin:25px 0 15px;
    font-size:18px;
    font-weight:700;
}

.rate-criteria{
    margin-bottom:12px;
    padding: 20px;
    align-items:center;
    border-bottom:1px solid #eee;
    padding-bottom:10px;
}

.rate-criteria strong{
    font-size:14px;
}

.rate-criteria .rate-list-star{
    text-align:right;
    cursor:pointer;
}
/*criteria-item*/
.rate-criteria{
    margin-top:20px;
}

.criteria-item{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:10px 0;

    border-bottom:1px solid #ececec;

}

.criteria-item label{

    width:180px;

    margin:0;

    font-weight:600;

}

.criteria-item .rate-list-star{

    font-size:22px;

    color:#ffb400;

    cursor:pointer;

}
.review-criteria{
    margin:12px 0;
    padding:10px 15px;
    background:#f8f8f8;
    border-radius:6px;
}

.criteria-row{
    display:flex;
    align-items:center;
    border-bottom:1px dashed #ddd;
}

.criteria-row:last-child{
    border-bottom:none;
}

 
.criteria-star{
    color:#ffb400;
    font-size:16px;
}
.criteria-row span > .criteria-name{
	margin-right: 20px
}
.criteria-row{
    display:flex;
    align-items:center;
}

.criteria-fill{
    width:0;
    height:100%;
    background:linear-gradient(90deg,#2f7edb,#3d8ff0);
    border-radius:20px;
    transition:width .8s ease;
    height: 3px;
}
 
.criteria-score{
    width:35px;
    text-align:right;
    font-weight:bold;
}
 
.criteria-score{
	float: right;
}
.review-center .criteria-row{
	padding: 8px 0
}
.criteria-rows{
    display:flex;
    align-items:center;
    gap:15px;
    margin:15px 0;
    width:100%;
}

.criteria-name{
    width:140px;
    flex-shrink:0;
    font-size:14px;
}

.criteria-bar{
    flex:1;
    height:10px;
    background:#d8e3f3;
    border-radius:30px;
    overflow:hidden;
}

.criteria-fill{
    height:100%;
    width:0;
    background:#2f7bd8;
    border-radius:30px;
    transition:width .4s ease;
}

.criteria-score{
    width:40px;
    flex-shrink:0;
    text-align:right;
    font-weight:700;
    font-size:14px;
}
.rate-total-user{
	display: none
}
@media (max-width:768px){

.criteria-name{
    width:110px;
    font-size:15px;
}

.criteria-score{
    width:35px;
    font-size:16px;
}

}
@media (max-width:576px){

.criteria-rows{
    gap:10px;
}

.criteria-name{
    width:90px;
    font-size:14px;
}

.criteria-bar{
    height:8px;
}

.criteria-score{
    width:28px;
    font-size:15px;
}

}
.criteria-rows{
    display:grid;
    grid-template-columns:140px 1fr 35px;
    gap:15px;
    align-items:center;
    margin:15px 0;
}

@media(max-width:576px){
    .criteria-rows{
        grid-template-columns:90px 1fr 28px;
        gap:10px;
    }
}
.review-right{

    background:#eef2f7;
    padding:25px;
    border-radius:8px;

}

.review-right h3{
    font-size:28px;
	margin-right:20px 
}
 
.review-title{

    font-size:28px;
    font-weight:bold;

}

.review-right .review-score{
	display:flex;
    font-size:18px;
    margin-top:5px;

}

.review-total{

    color:#777;
    margin-top:5px;

}

.rating-table{

    width:100%;
    border-collapse:collapse;

}

.rating-table tr td{

    border:1px solid #d6dbe5;
    padding:12px 15px;

}

.rating-table tr td:last-child{

    width:60px;
    text-align:center;
    font-weight:bold;

}
/*Review*/
.review-box{
    display:flex;
    background:#dde6f0;
    border:1px solid #d0d8e2;
    width:100%;
    flex-wrap:wrap;
    margin-bottom: 20px
}

.review-left{
    width:23%;
    min-width:180px;
    display:flex;
    justify-content:center;
    align-items:center;
    border-right:1px solid #fff;
    padding:20px;
    box-sizing:border-box;
}

.review-score{
    text-align:center;
}

.review-score .big-score{
    color:#66a500;
    font-size:24px;
    font-weight:700;
}

.review-score .number{
    font-size:48px;
    color:#fff;
    font-weight:bold;
    line-height:60px;
}

.review-score .based{
    margin-top:10px;
    font-size:16px;
}

.review-center{
    width:44%;
    padding:20px;
    box-sizing:border-box;
    border-right:1px solid #fff;
}

.review-center h3,
.review-right h3{
    font-size:22px;
    color:#333;
}

.rate-item{
    display:grid;
    grid-template-columns:140px 1fr 35px;
    align-items:center;
    gap:12px;
    margin-bottom:14px;
}

.rate-item span{
    font-size:16px;
}

.progress{
    width:100%;
    height:10px;
    background:#bfc8d3;
    border-radius:10px;
    overflow:hidden;
}

.bar{
    height:100%;
    background:#2f7dd3;
}

.rate-item b{
    font-size:16px;
    color:#222;
}

.review-right{
    width:33%;
    padding:20px;
    box-sizing:border-box;
}

.review-right table{
    width:100%;
    border-collapse:collapse;
    background:#fff;
}

.review-right td{
    border:1px solid #9da9b8;
    padding:10px;
    font-size:15px;
}

.review-right td:last-child{
    width:45px;
    text-align:center;
}

/*==================== Tablet ====================*/

@media(max-width:991px){

.review-left{
    width:100%;
    border-right:0;
    border-bottom:1px solid #fff;
}

.review-center{
    width:100%;
    border-right:0;
    border-bottom:1px solid #fff;
}

.review-right{
    width:100%;
}

}

/*==================== Mobile ====================*/

@media(max-width:576px){

.review-box{
    font-size:14px;
}

.review-score .big-score{
    font-size:20px;
}

.review-score .number{
    font-size:42px;
}

.review-center h3,
.review-right h3{
    font-size:18px;
}

.rate-item{
    grid-template-columns:1fr;
    gap:6px;
}

.rate-item b{
    text-align:right;
}

.review-right td{
    padding:8px;
    font-size:14px;
}

}

.modal-content{
	width: 700px
}
