﻿.rating-wrapper {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.rating {
    width: 90%;
    /* max-width: 500px; */
}

    .rating #form-title {
        margin-top: 0;
        font-weight: 400;
        text-align: center;
    }

    .rating .rating-slider {
        display: flex;
        flex-direction: row;
        align-content: stretch;
        position: relative;
        width: 100%;
        height: 50px;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        background: #d6f0ec;
        border-radius: 20px;
        margin-bottom: 50px;
    }

        .rating .rating-slider::before {
            content: " ";
            position: absolute;
            height: 2px;
            width: 100%;
            width: calc(100% * (4 / 5));
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background: #67c0b7;
        }

        .rating .rating-slider input,
        .rating .rating-slider label {
            box-sizing: border-box;
            flex: 1;
            -webkit-user-select: none;
            -moz-user-select: none;
            -ms-user-select: none;
            user-select: none;
            cursor: pointer;
        }

        .rating .rating-slider label {
            display: inline-block;
            position: relative;
            width: 20%;
            height: 100%;
            -webkit-user-select: none;
            -moz-user-select: none;
            -ms-user-select: none;
            user-select: none;
        }

            .rating .rating-slider label::before {
                content: attr(data-rating);
                position: absolute;
                left: 50%;
                padding-top: 10px;
                transform: translate(-50%, 45px);
                font-size: 14px;
                letter-spacing: 0.4px;
                font-weight: 400;
                white-space: nowrap;
                opacity: 0.85;
                transition: all 0.15s ease-in-out;
            }

            .rating .rating-slider label::after {
                content: " ";
                position: absolute;
                left: 50%;
                top: 50%;
                transform: translate(-50%, -50%);
                width: 30px;
                height: 30px;
                border: 2px solid #67c0b7;
                background: #fff;
                border-radius: 50%;
                pointer-events: none;
                -webkit-user-select: none;
                -moz-user-select: none;
                -ms-user-select: none;
                user-select: none;
                z-index: 1;
                cursor: pointer;
                transition: all 0.15s ease-in-out;
            }

            .rating .rating-slider label:hover::after {
                transform: translate(-50%, -50%) scale(1.25);
            }

        .rating .rating-slider input {
            display: none;
        }

            .rating .rating-slider input:checked + label::before {
                font-weight: 800;
                opacity: 1;
            }

            .rating .rating-slider input:checked + label::after {
                border-width: 4px;
                transform: translate(-50%, -50%) scale(0.75);
            }

            .rating .rating-slider input:checked ~ #rating-pos {
                opacity: 1;
            }

            .rating .rating-slider input:checked:nth-child(1) ~ #rating-pos {
                left: 10%;
            }

            .rating .rating-slider input:checked:nth-child(3) ~ #rating-pos {
                left: 30%;
            }

            .rating .rating-slider input:checked:nth-child(5) ~ #rating-pos {
                left: 50%;
            }

            .rating .rating-slider input:checked:nth-child(7) ~ #rating-pos {
                left: 70%;
            }

            .rating .rating-slider input:checked:nth-child(9) ~ #rating-pos {
                left: 90%;
            }

        .rating .rating-slider #rating-pos {
            display: block;
            position: absolute;
            top: 50%;
            width: 12px;
            height: 12px;
            background: #467dac;
            border-radius: 50%;
            transition: all 0.15s ease-in-out;
            transform: translate(-50%, -50%);
            border: 2px solid #fff;
            opacity: 0;
            z-index: 2;
        }

.rating-slider.is-invalid {
    background: #ffeded;
    color: red;
}

.rating .rating-slider.is-invalid label::after {
    border: 2px solid #e74c3c;
}
.rating .rating-slider.is-invalid::before {
    background: #e74c3c;
}

@media (max-width: 800px) {
    .hide-small{
        color:transparent;
    }
    .rating .rating-slider label::before {
        font-size: 10px;
    }
}