.input-rating-stars {
    float:left;
}
.input-rating-stars:not(:checked) > input {
    position:absolute;
    display: none;
    visibility: hidden;
    clip:rect(0,0,0,0);
}
.input-rating-stars:not(:checked) > label {
    float:right;
    width:auto;
    padding:0 .1em;
    overflow:hidden;
    white-space:nowrap;
    cursor:pointer;
    font-size: 200%;
    line-height:1.2;
    color:#ddd;
    text-shadow: 0 1px 0 #bbb;
}
.input-rating-stars:not(:checked) > label:before {
    display: inline-block;
    font-family: FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: '\f005';
}
.input-rating-stars > input:checked ~ label {
    color: gold;
    text-shadow: 0 1px 0 #bbb;
}
.input-rating-stars:not(:checked) > label:hover,
.input-rating-stars:not(:checked) > label:hover ~ label {
    color: gold;
    text-shadow: 0 1px 0 #bbb;
}
.input-rating-stars > input:checked + label:hover,
.input-rating-stars > input:checked + label:hover ~ label,
.input-rating-stars > input:checked ~ label:hover,
.input-rating-stars > input:checked ~ label:hover ~ label,
.input-rating-stars > label:hover ~ input:checked ~ label {
    color: #ea0;
    text-shadow: 0 1px 0 #bbb;
}
.input-rating-stars > label:active {
    position:relative;
    top:2px;
    left:2px;
}
