#we_schema_rating{
    clear: both;
    margin-bottom: 10px;
}
.we_schema_rating {
    --star-size: 2;  /* use CSS variables to calculate dependent dimensions later */
    padding: 0;  /* to prevent flicker when mousing over padding */
    border: none;  /* to prevent flicker when mousing over border */
    unicode-bidi: bidi-override; direction: rtl;  /* for CSS-only style change on hover */
    text-align: left;  /* revert the RTL direction */
    user-select: none;  /* disable mouse/touch selection */
    font-size: 2em;  /* fallback - IE doesn't support CSS variables */
    font-size: calc(var(--star-size) * 1em);  /* because `var(--star-size)em` would be too good to be true */
    cursor: pointer;
    /* disable touch feedback on cursor: pointer - http://stackoverflow.com/q/25704650/1269037 */
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-tap-highlight-color: transparent;
    margin-bottom: 0;
    height: calc(var(--star-size)/2);
    line-height: calc(var(--star-size)/2);
}
/* the stars */
.we_schema_rating > label {
    display: inline-block;
    position: relative;
    width: calc(var(--star-size) / 3 * 1.3em);
    margin-bottom: 0;
    margin-right: 3px;
}
.we_schema_rating > *:hover,
.we_schema_rating > *:hover ~ label,
.we_schema_rating:not(:hover) > input:checked ~ label {
    color: transparent;  /* reveal the contour/white star from the HTML markup */
    cursor: inherit;  /* avoid a cursor transition from arrow/pointer to text selection */
    background: transparent;
}
.we_schema_rating > *:hover:before,
.we_schema_rating > *:hover ~ label:before,
.we_schema_rating:not(:hover) > input:checked ~ label:before {
    content: "★";
    position: absolute;
    left: 0;
    color: gold;
}
.we_schema_rating > input {
    position: relative;
    transform: scale(3);  /* make the radio buttons big; they don't inherit font-size */
    transform: scale(var(--star-size));
    /* the magic numbers below correlate with the font-size */
    top: -0.5em;  /* margin-top doesn't work */
    top: calc(var(--star-size) / 6 * -1em);
    margin-left: -2.5em;  /* overlap the radio buttons exactly under the stars */
    margin-left: calc(var(--star-size) / 6 * -5em);
    z-index: 2;  /* bring the button above the stars so it captures touches/clicks */
    opacity: 0;  /* comment to see where the radio buttons are */
    font-size: initial; /* reset to default */
    margin-right: 0;
}
#we_schema_rating .result_msg,
#we_schema_rating .error_msg,
#we_schema_rating .sucess_msg{
    margin: 5px 0;
}
#we_schema_rating .error_msg{
    color: red;
}
#we_schema_rating .sucess_msg{
    color: green;
}
