/**
 * All of the CSS for your public-facing functionality should be
 * included in this file.
 */

.rm-rating {
    position: relative;
    display: inline-block;
    margin-right: 0.5em;
}
    .rm-rating-icons i:before {
    	display: block;
    	width: 1em;
    	text-align: center;
    }
    .rm-rating-icons {
        white-space: nowrap;
    }
    .rm-rating-icons > i {
        color: #ddd;
        text-shadow: 1px 2px 1px rgba(0, 0, 0, 0.2);
    }
    .rm-rating-icons i {
        display: inline-block;
    }
    .rm-rating-icons i + i {
        display: inline-block;
        margin-left: -0.2em;
    }
    .rm-rating-icons .half:before {
        width: 0.5em;
    }
    .rm-rating-icons-fill {
        position:absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        color: #fc3;
    }

.rm-review-stream {
    position: relative;
    overflow: hidden;
}
    .rm-review-stream .rm-reviews,
    .rm-review-stream .rm-pagination {
        opacity: 1;
        -webkit-transition: opacity 0.2s;
        -moz-transition: opacity 0.2s;
        -o-transition: opacity 0.2s;
        -ms-transition: opacity 0.2s;
        transition: opacity 0.2s;
    }
    .rm-review-stream.loading .rm-reviews,
    .rm-review-stream.loading .rm-pagination {
        opacity: 0.5;
    }
    .rm-review-stream.loading .rm-pagination {
        -webkit-pointer-events: none;
        -moz-pointer-events: none;
        -o-pointer-events: none;
        -ms-pointer-events: none;
        pointer-events: none;
    }
    .rm-offscreen {
        position: absolute;
        top: 0;
        left: 100%;
    }
    .rm-aggregate {
        font-size: 2em;
        border-color: #eee;
        border-width: 1px 0;
        border-style: solid;
        margin-bottom: 10px;
    }
        .rm-count {
            display: inline-block;
            vertical-align: baseline;
        }

        .rm-review {
            margin-bottom: 10px;
            list-style: none;
            border-bottom: 1px solid #eee;
        }
            .rm-author {
                font-size: 1.5em;
                margin-bottom: 10px;
            }
            .rm-review .rm-rating {
            	margin-bottom: 10px;
            }
            .rm-date {
                display: inline-block;
                margin-bottom: 10px;
            }
            .rm-source {
                position: relative;
                margin-bottom: 10px;
                padding-left: 1.5em;
            }
                .rm-source:before {
                    position: absolute;
                    top: 50%;
                    left: 0;
                    content: '\f1fa';
                    font-family: 'FontAwesome';
                    color: #CCC;
                    line-height: 1;
                    margin-top: -0.5em;
                }
                .rm-source img {
                    display: block;
                    max-height: 1em;
                }
            .rm-content {
                position: relative;
                margin-bottom: 10px;
                padding-left: 1.5em;
            }
                .rm-content:before {
                    position: absolute;
                    top: 0;
                    left: 0;
                    content: '\f10d' !important;
                    font-family: 'FontAwesome';
                    color: #CCC;
                    line-height: 1;
                }
            .rm-replies {
                list-style: none;
                padding-left: 0;
                margin-left: 0;   
            }
                .rm-reply {
                    position: relative;
                    padding-left: 1.5em;
                }
                    .rm-reply:before {
                        position: absolute;
                        top: 0;
                        left: 0;
                        content: '\f112';
                        font-family: 'FontAwesome';
                        color: #CCC;
                        -webkit-transform: rotate(180deg);
                        -moz-transform: rotate(180deg);
                        -o-transform: rotate(180deg);
                        -ms-transform: rotate(180deg);
                        transform: rotate(180deg);
                        line-height: 2.25;
                    }
.rm-pagination {
    text-align: center;
    margin-bottom: 10px;
}
    .rm-pagination a {
        display: inline-block;
        width: 1em;
        font-size: 2em;
        white-space: nowrap;
        text-decoration: none;
        padding: 0.5em;
        cursor: pointer;
        box-sizing: content-box;
        text-decoration: none;
    }
    .rm-pagination > * {
        vertical-align: middle;
    }

    .rm-page-divider:after {
        content: ' / ';
    }

.rm-disclaimer {
    font-size: 0.75em;
    margin-bottom: 10px;
    opacity: 0.5;
}

.rm-form {
    width: 100%;
    max-width: 48em;
    margin-bottom: 10px;
}
    .rm-form fieldset {
        min-width: 0;
        max-width: 100%; 
    }
    .rm-form div {
        position: relative;
        max-width: 100%;
        margin-bottom: 10px;
        clear: both; 
    }
        .rm-form label {
            display: block;
            font-size: 1.5em;
            margin-bottom: 5px; 
        }
    .rm-form input {
        font-size: 1em; 
    }
    .rm-form .info {
        margin-right: 1em;
        margin-bottom: 1em;
        float: left; 
    }
    .rm-form .rating {
        position: relative;
        margin-right: 1.5em;
        float: left;
        clear: none; 
    }
    .rm-form .rating label {
        position: static; 
    }
    .rm-form.loaded .rating > label {
        display: none; 
    }
    .rm-rating-bar {
        display: block;
        width: 5.25em;
        font-size: 4em;
        margin-bottom: 0;
        float: left;
        white-space: nowrap; 
    }
    .rm-rating-bar input {
        display: none;
        clear: none; 
    }
    .rm-rating-bar label {
        display: block;
        width: 0.5em;
        height: 1em;
        font-size: 1em;
        line-height: 1em;
        margin-bottom: 0;
        float: right;
        cursor: pointer;
        clear: none; 
        box-sizing: content-box;
    }
    .rm-rating-bar label[for$="_0"] {
        width: 0.25em; 
    }
    .rm-rating-bar label[for$="_5"] {
        padding-right: 0.25em; 
    }
    .rm-rating-bar label i {
        position: relative;
        width: 100%;
        height: 100%;
        display: block;
        color: #DDD;
        text-indent: -1em;
        text-shadow: 1px 2px 1px rgba(0, 0, 0, 0.2); 
        overflow: hidden;
        float: left;
        zoom: 1;
    }
    .rm-rating-bar label i + i {
        top: 0;
        color: #FC3;
        text-shadow: none; 
        opacity: 0;
        -webkit-transition: opacity 0.25s, top 0.5s;
        -moz-transition: opacity 0.25s, top 0.5s;
        -o-transition: opacity 0.25s, top 0.5s;
        -ms-transition: opacity 0.25s, top 0.5s;
        transition: opacity 0.25s, top 0.5s;

    }
    .rm-rating-bar label[for$="h"] i {
        text-indent: 0; 
    }
    .rm-rating-bar input:checked ~ label i + i {
        top: -1em;
        filter: alpha(opacity=0);
        opacity: 1; 
        -webkit-pointer-events: none;
        -moz-pointer-events: none;
        -o-pointer-events: none;
        -ms-pointer-events: none;
        pointer-events: none;
    }
    .rm-rating-bar:hover input:checked ~ label i + i {
        top: 0;
        filter: alpha(opacity=100);
        opacity: 0; 
    }
    .rm-rating-bar:hover input:checked ~ label:hover i + i,
    .rm-rating-bar:hover label:hover i + i,
    .rm-rating-bar:hover label:hover ~ label i + i {
        top: -1em;
        filter: alpha(opacity=0);
        opacity: 1; 
    }
    .rm-rating-bar i:before {
    	display: block;
    	width: 1em;
    	text-align: center;
    }
    .rm-form.loaded .rating label.error {
        display: block !important;
        width: auto;
        height: auto;
        font-size: 0.25em; 
    }
    .rm-form .refer {
        margin-bottom: 2.5em; 
    }
    .rm-refer-bar label {
        position: static;
        top: 0;
        left: 0; 
    }
    .rm-refer-bar {
        position: relative;
        font-size: 3em;
        height: 1em;
        margin-left: 0.25em; 
    }
    .rm-refer-bar label,
    .rm-refer-bar span {
        display: block;
        position: relative;
        width: 9%;
        height: 100%;
        float: left;
        clear: none; 
    }
    .rm-refer-bar label {
        font-size: 0.5em;
        line-height: 5.25em;
        text-align: center;
        color: #8BE;
        margin-left: -9%;
        cursor: pointer;
        z-index: 2;
        -webkit-transition: color 0.25s;
        -moz-transition: color 0.25s;
        -o-transition: color 0.25s;
        -ms-transition: color 0.25s;
        transition: color 0.25s;
    }
    .rm-refer-bar input {
        display: none; 
    }
    .rm-refer-bar span {
        background: #9CF;
        border-right: 1px solid #8BE;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        box-shadow: 1px 2px 1px rgba(0, 0, 0, 0.2);
        -webkit-transition: background 0.5s, border 0.5s;
        -moz-transition: background 0.5s, border 0.5s;
        -o-transition: background 0.5s, border 0.5s;
        -ms-transition: background 0.5s, border 0.5s;
        transition: background 0.5s, border 0.5s; 
    }
    .rm-refer-bar input:first-child + span {
        border-radius: 0.25em 0 0 0.25em; 
    }
    .rm-refer-bar input[id$='_9'] + span {
        border: none;
        border-radius: 0 0.25em 0.25em 0; 
    }
    .rm-refer-bar input:checked ~ span {
        background: #DDD;
        border-right: 1px solid #CCC; 
    }
    .rm-refer-bar input:checked ~ label[for] {
        color: #CCC; 
    }
    .rm-refer-bar:hover input:checked ~ span {
        background: #9CF;
        border-right: 1px solid #8BE; 
    }
    .rm-refer-bar:hover input:checked ~ label[for] {
        color: #8BE; 
    }
    .rm-refer-bar:hover label:hover ~ span {
        background: #DDD;
        border-right: 1px solid #CCC; 
    }
    .rm-refer-bar:hover label:hover ~ label[for] {
        color: #CCC; 
    }
    .rm-refer-bar .left,
    .rm-refer-bar .middle,
    .rm-refer-bar .right {
        position: absolute;
        top: 0.5em;
        left: 0;
        width: auto;
        height: auto;
        color: #FFF;
        font-size: 0.5em;
        line-height: 1em;
        margin: 0;
        z-index: 1; 
    }
    .rm-refer-bar .left {
        left: 0.5em; 
    }
    .rm-refer-bar .middle {
        width: 100%;
        text-align: middle; 
    }
    .rm-refer-bar .right {
        left: auto;
        right: 0.5em; 
    }
    .rm-form textarea {
        width: 100%;
        max-width: 100%;
        height: 5em;
        padding-top: 0.05em;
        padding-left: 0.1em;
        -moz-box-sizing: border-box;
        box-sizing: border-box; 
    }
        .rm-form .challenge {
        width: 100%;
        float: left; 
    }
        .rm-form .challenge .question {
        display: block;
        float: none; 
    }
        .rm-form .challenge span {
        display: block;
        float: left;
        margin-top: 0.25em;
        margin-right: 0.75em; 
    }
        .rm-form .challenge label {
        position: static;
        display: inline; 
    }
    .rm-form input[type="submit"] {
        margin-top: 1em; 
    }
    .rm-form .result {
        margin-top: 1em; 
    }
    .rm-form input.error {
        border: 1px dashed #E33;
        outline: none; 
    }
    .rm-form label.error {
        font-size: 1em;
    }
    .rm-form .invalid {
        display: block;
        font-size: 0.75em;
        color: #A90329;
    }

.rm-message {
    background: #FFF;
    border: 1px solid #EEE;
    padding: 10px;
}
    .rm-message.success {
        background: #739E73;
        border-color: #739E73;
        color: white;
    }
    .rm-message.failure {
        background: #A90329;
        border-color: #A90329;
        color: white;
    }

@media screen and (max-width: 30em) {
    .rm-rating-bar,
    .rm-rating-bar-cover {
        font-size: 3em; 
    }
    .rm-refer-bar {
        width: 5em; 
    }
    .rm-refer-bar label,
    .rm-refer-bar span {
        width: 16.5%; 
    }
    .rm-refer-bar label {
        margin-left: -16.5%; 
    }
    .rm-refer-bar .middle,
    .rm-refer-bar label[for$="_1"],
    .rm-refer-bar label[for$="_3"],
    .rm-refer-bar label[for$="_5"],
    .rm-refer-bar label[for$="_7"],
    .rm-refer-bar label[for$="_9"],
    .rm-refer-bar input[id$="_0"] + span,
    .rm-refer-bar input[id$="_2"] + span,
    .rm-refer-bar input[id$="_4"] + span,
    .rm-refer-bar input[id$="_6"] + span,
    .rm-refer-bar input[id$="_8"] + span {
        display: none; 
    } 
}

@media screen and (max-width: 767px) {
    .rm-more,
    .rm-page-link {
        display: none;
    }
    .rm-page-link.active {
        display: inline-block;
    }
}