﻿.fs-survey-container {
    position: fixed;
    inset: 0;
    z-index: 4;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 100%;
    height: 100vh;
    padding-block: clamp(10px,2vw,40px);
    background-color: rgba(0,0,0,.4);
    overflow-y: auto;
    scrollbar-width: 10px;
    scrollbar-color: rgba(0,0,0,.4);
    scrollbar-gutter: rgba(255,255,255,.6);
}

    .fs-survey-container::-webkit-scrollbar {
        width: 10px;
        border-radius: 4px;
    }

    .fs-survey-container::-webkit-scrollbar-track {
        border-radius: 4px;
        background-color:rgba(0,0,0,.4);
    }

     .fs-survey-container::-webkit-scrollbar-thumb {
        border-radius: 4px;
        background-color:rgba(255,255,255,.6);
    }

.fs-step {
    width: 100%;
}

        .fs-step.active{
            display:block;
        }

        .fs-survey-wrapper {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            width: clamp(300px,100%,600px);
            background-color:var(--fs-white);
            margin-block:auto;
            border-radius:16px;
            padding:15px;
        }

    .fs-survey-logos-wrapper {
        width: clamp(90px,15vw,300px);
        margin-inline:auto;
    }

.fs-survey-logos-wrapper img{
    width:100%;
    margin-block:10px;
}

.fs-survey-container blockquote {
    line-height: 2;
    text-align: center;
    font-size: clamp(10px,1vw,16px);
    font-family: roboto-medium;
    margin: 20px 10px;
}

.fs-survey-description {
    text-align: center;
    line-height: 2;
    font-size: clamp(14px,1.3vw,20px);
    margin:20px 10px;
}

.fs-survey-btns-wrapper{
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    align-items:center;
    gap:15px;
}

.fs-survey-skip-btn {
    background-color: transparent;
    border: none;
    padding: 10px;
}

.fs-survey-header {
    width: 100%;
    padding: clamp(5px,.7vw,15px) clamp(10px,1vw,20px);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.fs-survey-skip-btn, .fs-survey-back-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px 10px;
    border: none;
    background-color: transparent;
}

.fs-survey-progress-bar-container{
    width:86%;
    margin-bottom:15px;
    margin-inline:auto;
}

.fs-survey-progress-bar-container h3 {
    color: var(--fs-orange);
    font-size: 22px;
    font-family: roboto-bold;
    margin-block: 15px;
    text-align:center;
}

.fs-survey-progress-bar-wrapper {
    position: relative;
    z-index:0;
    display:flex;
    gap:2px;
    width:100%;
    height:8px;
}

    .fs-survey-progress-bar-wrapper:before, .fs-survey-progress-bar-wrapper:after {
        content: '';
        position: absolute;
        top: -9px;
        background-color: var(--fs-dark-brown);
        width: 25px;
        height: 25px;
        border-radius: 50%;
    }

    .fs-survey-progress-bar-wrapper:before {
        left: -10px;
    }

    .fs-survey-progress-bar-wrapper:after {
        right: -10px;
    }

.fs-survey-progress-bar-track {
    background-color: #D5D5D5;
    height:100%;
    flex:1;
}
/*.fs-survey-progress-bar-separator{
    position:absolute;
    z-index:1;
    top:0;
    left:calc(50% - 1px);
    width:2px;
    height:100%;
    background-color:var(--fs-white);
}*/
.fs-survey-progress-bar-value {
    background-color: var(--fs-orange);
    height: 100%;
}

.fs-survey-offered-answers-wrapper {
    margin-block: auto;
}

.fs-survey-question-title {
    text-align: center;
    font-family: roboto-bold;
}

.fs-survey-question-description {
    text-align: center;
    font-family: roboto-medium;
    line-height:2;
}

.fs-survey-wrapper form{
    flex:1;
}

.fs-survey-offered-answers-wrapper {
    display: grid;
    justify-content: center;
    width: 100%;
    overflow-y: auto;
    padding: 15px;
}
    .fs-survey-offered-answers-wrapper .fs-survey-answer:hover {
        cursor:pointer;
    }

    .fs-survey-offered-answers-wrapper::-webkit-scrollbar {
       width:5px;
    }

        .fs-survey-offered-answers-wrapper::-webkit-scrollbar-track{
            background-color:rgba(0,0,0,.4);
            border-radius:3px;
        }

    .fs-survey-offered-answers-wrapper::-webkit-scrollbar-thumb {
        background-color: rgba(255,255,255,.8);
        border-radius: 3px;
    }
        /*Answer type card*/

        .fs-survey-offered-answer-type-card {
            grid-template-columns: repeat(auto-fill, minmax(140px,200px));
            grid-auto-rows: clamp(160px,15vw,200px);
            gap: 20px;
        }

            .fs-survey-offered-answer-type-card .fs-survey-answer {
                position: relative;
                border-radius: 20px;
            }

            .fs-survey-offered-answer-type-card.fs-survey-answer {
                border-radius: 15px;
            }

                .fs-survey-offered-answer-type-card .fs-survey-answer img {
                    border-radius: 15px;
                }

            .fs-survey-offered-answer-type-card .fs-survey-card-overlay {
                position: absolute;
                top: 0;
                left: 0;
                color: var(--fs-white);
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100%;
                height: 100%;
                font-family: roboto-light;
                font-size: 25px;
                background-color: rgba(103, 57, 69, .4);
                border-radius: 15px;
            }

                .fs-survey-offered-answer-type-card .fs-survey-answer.active{
                    border: 7px solid var(--fs-orange);
                }

                    .fs-survey-offered-answer-type-card .fs-survey-answer.active .fs-survey-card-overlay {
                        background-color: rgba(103, 57, 69, .8);
                    }

                    /*Answer type checkbox*/
                    .fs-survey-offered-answer-type-checkbox,
                    .fs-survey-offered-answer-type-radio {
                        grid-template-columns: repeat(auto-fill, minmax(280px,500px));
                        grid-auto-rows: clamp(45px,4vw,70px);
                        gap: 20px;
                    }

    .fs-survey-offered-answer-type-checkbox .fs-survey-answer,
    .fs-survey-offered-answer-type-radio .fs-survey-answer {
        position: relative;
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 10px;
        border: 1px solid var(--fs-dark-brown);
        border-radius: clamp(25px,2vw,40px);
        padding: clamp(15px,1.5vw,30px);
        font-size: clamp(13px,1vw,20px);
        transition: all ease .3s;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    .fs-survey-offered-answer-type-checkbox.fs-img-checkbox .fs-survey-answer {
        border-radius: clamp(10px,1vw,20px);
        padding: 5px clamp(10px,1vw,20px);
    }

    .fs-survey-offered-answer-type-checkbox.fs-img-checkbox .fs-survey-answer span:first-child{
        display:inline-flex;
        align-items:center;
        gap:5px;
        height:100%;
    }

        .fs-survey-offered-answer-type-checkbox.fs-img-checkbox .fs-survey-answer img{
            height: 100%;
        }

    /* Hide the browser's default checkbox */
    .fs-survey-offered-answer-type-checkbox .fs-survey-answer input,
    .fs-survey-offered-answer-type-radio .fs-survey-answer input {
        position: absolute;
        opacity: 0;
        cursor: pointer;
        height: 0;
        width: 0;
    }

/* Create a custom checkbox */
    .fs-survey-offered-answer-type-checkbox .checkmark,
    .fs-survey-offered-answer-type-radio .checkmark {
        position: relative;
        top: 0;
        left: 0;
        height: 25px;
        width: 25px;
        border: 1px solid var(--fs-dark-brown);
        color: var(--fs-white);
    }

    /* On mouse-over, add a grey background color */
    .fs-survey-offered-answer-type-checkbox .fs-survey-answer:hover input ~ .checkmark,
    .fs-survey-offered-answer-type-radio .fs-survey-answer:hover input ~ .checkmark {
        background-color: #ccc;
    }

/* When the checkbox is checked, add a blue background */
    .fs-survey-offered-answer-type-checkbox .fs-survey-answer input:checked ~ .checkmark,
    .fs-survey-offered-answer-type-radio .fs-survey-answer input:checked ~ .checkmark {
        background-color: var(--fs-white);
    }

/* Create the checkmark/indicator (hidden when not checked) */
    .fs-survey-offered-answer-type-checkbox .checkmark:after,
    .fs-survey-offered-answer-type-radio .checkmark:after {
        content: "";
        position: absolute;
        display: none;
    }

/* Show the checkmark when checked */
    .fs-survey-offered-answer-type-checkbox .fs-survey-answer input:checked ~ .checkmark:after,
    .fs-survey-offered-answer-type-radio .fs-survey-answer input:checked ~ .checkmark:after {
        display: block;
    }

    /* Style the checkmark/indicator */
    .fs-survey-offered-answer-type-checkbox .fs-survey-answer .checkmark:after {
        left: 9px;
        top: 3px;
        width: 6px;
        height: 12px;
        border: solid var(--fs-dark-brown);
        border-width: 0 3px 3px 0;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .fs-survey-offered-answer-type-checkbox .fs-survey-answer.fs-disabled,
    .fs-survey-offered-answer-type-radio .fs-survey-answer.disabled {
        opacity: .6;
    }

    .fs-survey-offered-answer-type-checkbox .fs-survey-answer.fs-checked,
    .fs-survey-offered-answer-type-radio .fs-survey-answer.fs-checked {
        background-color: var(--fs-orange);
        color: var(--fs-white);
    }
    /*Answer Type Radio*/

    .fs-survey-offered-answer-type-radio .checkmark, .fs-survey-offered-answer-type-checkbox.fs-img-checkbox .fs-survey-answer input[type="radio"] + .checkmark {
        border-radius: 50%;
    }

    .fs-survey-offered-answer-type-radio .fs-checked .checkmark,
    .fs-survey-offered-answer-type-checkbox.fs-img-checkbox .fs-survey-answer.fs-checked input[type="radio"] + .checkmark {
        border-radius: 50%;
        border: none;
    }

    .fs-survey-offered-answer-type-radio .fs-survey-answer .checkmark:after,
    .fs-survey-offered-answer-type-checkbox.fs-img-checkbox .fs-survey-answer input[type="radio"] + .checkmark:after {
        top: 3px;
        left: 3px;
        width: 19px;
        height: 19px;
        border-radius: 50%;
        background-color: var(--fs-dark-brown);
    }

    .fs-survey-offered-answer-type-checkbox.fs-img-checkbox .fs-survey-answer input[type="radio"] + .checkmark:after {
        top: 2px;
        left: 2px;
        width: 18px;
        height: 18px;
    }


/*Answer Type Button*/

.fs-muscle-group-wrapper{
    position:relative;
    width:100%;
}

.fs-survey-offered-answer-type-button {
    grid-template-columns: repeat(3,1fr);
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: 10px 5px;
}

    .fs-survey-offered-answer-type-button .fs-survey-answer {
        width: 80px;
        margin: auto;
        background-color: var(--fs-dark-purple);
        color: var(--fs-white);
        border: none;
        padding: 10px clamp(5px,.5vw,10px);
        border-radius: 13px;
        text-wrap: break-word;
        font-family: roboto-light;
        font-size: clamp(12px,1vw,15px);
        transition: all ease .3s;
        text-align:center;
    }

.fs-survey-answer-illustration {
    width: 100%;
    min-width: 160px;
    grid-column: 2/3;
    grid-row: 1/4;
    opacity:1;
}

.fs-survey-offered-answer-type-button .fs-survey-answer:nth-child(8) {
    grid-column: 1/4;
    grid-row: 4/5;
}

.fs-survey-offered-answer-type-button .fs-survey-answer:hover {
    background-color: var(--fs-orange);
}

.fs-survey-offered-answer-type-button .fs-survey-answer.active {
    background-color: var(--fs-orange);
}

    .muscle-groups {
        width: 100%;
        overflow: hidden;
    }

    .muscle-groups input, .muscle-groups label{
        visibility:collapse;
    }

        .muscle-groups label:hover, .muscle-groups label.hover {
            opacity: 1;
            border-color: rgba(51, 51, 51, 0.75);
        }

    .muscle-groups svg {
        height: 350px;
    }

       /* .muscle-groups svg g[id] path {
            opacity: 0.2;
            transition: opacity 0.25s ease-in-out;
        }
*/
        .muscle-groups svg g g[id]:hover path {
            cursor: pointer;
            opacity: 0.5;
            fill: #F2888A !important;
        }

    .muscle-groups .muscles-helper {
        display: none;
    }

        .muscle-groups.obliques svg #Obliques path,
        .muscle-groups.fullBody svg #Obliques path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.abs svg #Abs path,
        .muscle-groups.fullBody svg #Abs path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.quads svg #Quads path,
        .muscle-groups.fullBody svg #Quads path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.biceps svg #Biceps path,
        .muscle-groups.fullBody svg #Biceps path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.adductors svg #Adductors path,
        .muscle-groups.fullBody svg #Adductors path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.pectorals svg #Pectorals path,
        .muscle-groups.fullBody svg #Pectorals path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.deltoids svg #Deltoids path,
        .muscle-groups.fullBody svg #Deltoids path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.hamstrings #Hamstrings path,
        .muscle-groups.fullBody #Hamstrings path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.quads #Quads path,
        .muscle-groups.fullBody #Quads path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.forearms svg #Forearms path,
        .muscle-groups.fullBody svg #Forearms path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.calves svg #Calves path,
        .muscle-groups.fullBody svg #Calves path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.triceps svg #Triceps path,
        .muscle-groups.fullBody svg #Triceps path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.glutes svg #Glutes path,
        .muscle-groups.fullBody svg #Glutes path {
            opacity: 0.8;
            fill: #F2888A !important;
        }

        .muscle-groups.lats svg #Lats path,
        .muscle-groups.fullBody svg #Lats path {
            opacity: 0.8 !important;
            fill: #F2888A !important;
        }

        .muscle-groups.trapezius svg #Trapezius path,
        .muscle-groups.fullBody svg #Trapezius path {
            opacity: 0.8;
            fill: #F2888A !important;
        }


/*Answer Type Text*/

.fs-survey-offered-answer-type-text {
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    align-items:center;
    gap:10px;
    width:100%;
    font-family: roboto-light;
}

    .fs-survey-offered-answer-type-text label {
        width: clamp(280px,80%,460px);
        font-size: 20px;
    }

.fs-survey-offered-answer-type-text .fs-survey-answer {
    width: clamp(280px,80%,460px);
    border-radius: 20px;
    font-size: 40px;
    text-align: center;
    border: 1px solid #707070;
    padding:20px;
    box-sizing:border-box;
}

/*************************************/

.fs-survey-summary-container{
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    align-items:center;
    gap:clamp(10px,1vw,20px);
    width:clamp(280px,100%,460px); 
    border-radius:clamp(22px,1.5vw,30px);
    padding:clamp(20px,2vw,40px);
    background-color:var(--fs-dark-purple);
    text-align:center;
    margin:30px auto;
}

.fs-survey-summary-title {
    color: var(--fs-white);
    font-size: clamp(14px,1vw,20px);
    font-family:roboto-medium;
}

.fs-survey-bmi-value {
    color: var(--fs-green);
    font-size: 60px;
    padding-bottom:30px;
}

.fs-bmi-meter{
    position:relative;
    width:100%;
}

    .fs-bmi-meter-value {
        position:absolute;
        bottom:120%;
        padding:5px 8px;
        color:var(--fs-white);
        background-color:var(--fs-green);
        font-family:roboto-light;
        border-radius:3px;
    }

        .fs-bmi-meter-value:after{
            content:'';
            position:absolute;
            top:calc(100% - 4px);
            left:calc(50% - 4px);
            width:8px;
            height:8px;
            transform:rotate(45deg);
            background-color:inherit;
        }

        .fs-bmi-meter img {
            width: 100%;
        }

.fs-survey-summary-container hr {
    width: 100%;
    border-width: 0;
    height: .5px;
    background-color: var(--fs-white);
    opacity: .8;
}

.fs-user-metrics-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    width: 100%;
    max-width: 360px;
}

.fs-user-metric-value {
    color: var(--fs-green);
    font-size: 25px;
    font-family: roboto-medium;
}

.fs-user-metric-key {
    color: var(--fs-white);
    font-family: roboto-light;
    padding-top:10px;
    opacity:.7;
}

.fs-survey-recommended-bmi{
    color:var(--fs-white);
    font-family:roboto-medium;
    margin-top:15px;
}

.fs-survey-recommended-bmi-value {
    color: var(--fs-green);
    padding-top:10px;
}

.fs-survey-summary-hint {
    padding-block: clamp(10px,1.5vw,30px);
    margin: auto;
    width: max(70%,240px);
    text-align: center;
    font-size: 16px;
    font-family: roboto-bold;
    color: var(--fs-dark-brown);
}

.fs-survey-footer {
    width: 100%;
    display: flex;
    flex-direction:column;
    justify-content: center;
    align-items: center;
    padding: 15px 20px;
}

.fs-survey-error-msg{
    color:red;
    font-family:roboto-light;
    margin-block:10px;
}

@media screen and (max-width:768px) {
    .fs-survey-offered-answer-type-checkbox .checkmark, .fs-survey-offered-answer-type-checkbox.fs-img-checkbox .checkmark {
        height: 15px;
        width: 15px;
    }

    .fs-survey-offered-answer-type-radio .checkmark {
        height: 20px;
        width: 20px;
    }

    .fs-survey-offered-answer-type-radio .fs-survey-answer .checkmark:after {
        top: 2px;
        left: 2px;
        width: 16px;
        height: 16px;
        border-radius: 50%;
        background-color: var(--fs-dark-brown);
    }

    .fs-survey-offered-answer-type-checkbox.fs-img-checkbox .fs-survey-answer input[type="radio"] + .checkmark:after {
        width: 8px;
        height: 8px;
    }

    .fs-survey-offered-answer-type-checkbox .fs-survey-answer .checkmark:after {
        left: 4px;
        top: 0;
        width: 4px;
        height: 9px;
        border: solid var(--fs-dark-brown);
        border-width: 0 3px 3px 0;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .fs-survey-container {
        padding-block: 0;
    }

    .fs-survey-wrapper {
        border-radius: 0;
        min-height:100vh;
        width:100%;
        margin-block:unset;
        padding-block:90px;
    }

    .no-for-mobile{
        display: none;
    }
}