#rating_guide_box {
    position:relative;
    margin:0 0 0 0;
    padding:8px;
    height:auto;
    overflow:hidden;
    box-sizing:border-box;
}
#rating_guide_box:before {
   content:"";
   position: absolute;
   right: 43.5%;
   top: 88px;
   border-top: 8px solid #CCCCCC;
   border-right: 14px solid transparent;
   border-bottom: 8px solid transparent;
   border-left: 14px solid transparent;
}
#rating_main_box {
    margin:0 auto;
    padding:4px 8px 8px 8px;
    height:auto;
    overflow:auto;
    box-sizing:border-box;
}
#rating_progress_box{
    margin:0 auto;
    padding:0;
    height:auto;
    overflow:auto;
    box-sizing:border-box;
}
#rating_slider_box{
    margin:0 auto;
    margin-top: 4px;
    padding:0;
    height:80px;
    overflow:hidden;
    border:1px solid #333333;
    /*background-color: #F9F9F9;*/
    border-radius:3px;
    box-sizing:border-box;
}
.rating_progress_box_inner {
    display: flex;
    justify-content: center;
    position: relative;
    width: 100%; /* Previously 92% */
    box-sizing: border-box;
}
.rating_progress_box_inner::before {
    content: '';
    background-color: transparent;
    position: absolute;
    left:2px; /* Previously 4% */
    right:2px; /* Previously 4% */
    margin-left:auto;
    margin-right:auto;
    height: 0;
    z-index: -1;
    box-sizing: border-box;
}
.rating_onward {
    background-color: transparent;
    position: absolute;
    left:4%;
    right:4%;
    margin-left:auto;
    margin-right:auto;
    height: 0;
    width: 0%;
    z-index: -1;
    transition: .4s ease;
    box-sizing: border-box;
}
.circle {
    background-color: #fff;
    color: #CCCCCC;
    border-radius: 8%;
    height: 22px;
    width: 22px;
    /*font-family: "Arial";
    font-size: 12px;*/
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #999999;
    transition: .4s ease;
    box-sizing: border-box;
    margin: 2px 5px 2px 5px;
}
.circle.active {
    border-color: #333333;
    background-color: #E3E3E3;
    color: #333333;
    box-sizing: border-box;
}
#rating_slider{
    position:relative;
    width: 100%;
    height: 80px;
    background-color: #F2F2F2;
    box-sizing: border-box;
}
.distinct_slide{
    position:relative;
    padding:0;
    width: 100%;
    height: 100%;
    background-color: #FFFFFF;
    display: none;
}
.distinct_slide.active{
    display: block;
}
.rating_control_button {
    background-color: #000000;
    color: white;
    border: 0;
    border-radius: 2px;
    cursor: pointer;
    /*font-family: "Arial";
    font-size: 12px;*/
    padding: 3px 6px 3px 6px;
    margin: 0 5px 0 5px;
    font-size: 12px;
    box-sizing: border-box;
}
.rating_control_button:focus {
    outline: 0;
}
.rating_control_button:disabled {
    background-color: #CCCCCC;
    cursor: not-allowed;
}
.controls {
    margin:0 auto;
    padding:2px 0 2px 0;
    height:auto;
    overflow:hidden;
    text-align:right;
    box-sizing:border-box;
}
.rating {
    width: 96%;
    margin:10px 2% auto;
    height: auto;
    overflow: auto;
    line-height: 18px;
    box-sizing: border-box;
}
.rating > input { 
    display: none; 
} 
.rating > label:before { 
    margin-top: 2px;
    padding:0px 5px 0px 5px;
    font-size: 12px;
    font-family: FontAwesome;
    display: inline-block;
    content: "\f005";
}
.rating > .half:before { 
    content: "\f089";
    position: absolute;
}
.rating > label { 
    color: #FFFFFF; 
    float: right;
    margin:0 1px 0px 1px;
    background-color:#CCCCCC;
    border-radius:50%;
    height:22px;
    width: 22px;
    line-height: 18px;
    padding: 1px 2px 1px 2px;
    text-align: center;
}
/***** CSS Magic to Highlight Stars on Hover *****/
.rating:not(:checked) > label:hover, /* hover current star */
.rating:not(:checked) > label:hover ~ label { 
    background-color:#000000 !important;
    cursor:pointer;
    color:#FFFF00 !important;
} /* hover previous stars in list */
.rating > input:checked + label:hover, /* hover current star when changing rating */
.rating > label:hover ~ input:checked ~ label, /* lighten current selection */
.rating > input:checked ~ label:hover ~ label { 
    background-color:#000000 !important;
    cursor:pointer;
    color:#FFFF00 !important;
}
@media only screen and (min-width: 300px) and (max-width: 468px){
#rating_guide_box:before {
   right: 43.5%;
   top: 88px;
   border-top: 8px solid #CCCCCC;
   border-right: 14px solid transparent;
   border-bottom: 8px solid transparent;
   border-left: 14px solid transparent;
}
}
@media only screen and (min-width: 469px) and (max-width: 600px){
#rating_guide_box:before {
   right: -8px;
   top: 35%;
   width: 0;
   height: 0;
   border-top: 14px solid transparent;
   border-right: 8px solid transparent;
   border-bottom: 14px solid transparent;
   border-left: 8px solid #CCCCCC;
}
}
@media only screen and (min-width: 601px) and (max-width: 768px){
#rating_guide_box:before {
   right: -8px;
   top: 35%;
   width: 0;
   height: 0;
   border-top: 14px solid transparent;
   border-right: 8px solid transparent;
   border-bottom: 14px solid transparent;
   border-left: 8px solid #CCCCCC;
}
}
@media only screen and (min-width: 769px) and (max-width: 950px){
#rating_guide_box:before {
   right: -8px;
   top: 35%;
   width: 0;
   height: 0;
   border-top: 14px solid transparent;
   border-right: 8px solid transparent;
   border-bottom: 14px solid transparent;
   border-left: 8px solid #CCCCCC;
}
}
@media only screen and (min-width: 951px) and (max-width: 1080px){
#rating_guide_box:before {
   right: -8px;
   top: 35%;
   width: 0;
   height: 0;
   border-top: 14px solid transparent;
   border-right: 8px solid transparent;
   border-bottom: 14px solid transparent;
   border-left: 8px solid #CCCCCC;
}
}
@media only screen and (min-width: 1081px) and (max-width: 1200px){
#rating_guide_box:before {
   right: -8px;
   top: 35%;
   width: 0;
   height: 0;
   border-top: 14px solid transparent;
   border-right: 8px solid transparent;
   border-bottom: 14px solid transparent;
   border-left: 8px solid #CCCCCC;
}
}
@media only screen and (min-width: 1201px) and (max-width: 1365px){
#rating_guide_box:before {
   right: -8px;
   top: 35%;
   width: 0;
   height: 0;
   border-top: 14px solid transparent;
   border-right: 8px solid transparent;
   border-bottom: 14px solid transparent;
   border-left: 8px solid #CCCCCC;
}
}
@media only screen and (min-width: 1366px) and (max-width: 1536px){
#rating_guide_box:before {
   right: -8px;
   top: 35%;
   width: 0;
   height: 0;
   border-top: 14px solid transparent;
   border-right: 8px solid transparent;
   border-bottom: 14px solid transparent;
   border-left: 8px solid #CCCCCC;
}
}
@media only screen and (min-width: 1537px){
#rating_guide_box:before {
   right: -8px;
   top: 35%;
   width: 0;
   height: 0;
   border-top: 14px solid transparent;
   border-right: 8px solid transparent;
   border-bottom: 14px solid transparent;
   border-left: 8px solid #CCCCCC;
}
}
