/******************
    User custom CSS
    ---------------

    In this file you can add your own custom CSS
    It will be loaded last, so you can override any other property.
    Also, it will never be updated. So if you inheritate a core template and just add here some CSS, you'll still benefit of all the updates
*/

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    font-size: 100%;
    line-height: 1.5;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    font-family: "Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #000;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: 0;
    padding: 92px 0 0;
    background: #fff;
}

.greenzoom {
    color: #fff;
    background-color: #55b43c;
}

.modal-content {
    color: #000;
}

.jumbotron,
.well {
    background-color: transparent;
    border: 2px solid #fff;
}

.list-group-item {
    background-color: transparent;
    border: 1px solid #fff;
}

.text-danger {
    color: #f08200;
    text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px -1px 0 #fff;
}

.text-danger[role="alert"] {
    text-shadow: none;
    margin-bottom: .5em;
    background-color: #fff;
    box-shadow: 15px 0 0 0 #fff, -15px 0 0 0 #fff;
}

.popover {
    z-index: 2001;
    color: #000;
}

#dynamicReloadContainer {
    padding-top: 2rem;
}

#outerframeContainer {
    -webkit-hyphens: manual;
    hyphens: manual;
}

.ls-answers {
    padding-bottom: 15px;
}

input.form-control,
textarea.form-control,
select.form-control {
    font-size: 16px;
}

/* --- navbar ----- */
.navbar-default {
    display: flex;
    flex-flow: row wrap;
    justify-content: stretch;
    align-items: center;
    padding: 0;
    background-color: #fff;
    box-shadow: 0 0 10px 0 #666;
}

    .navbar-header {
        float: none;
        flex: 0 0 auto;
        width: calc(100% - 2.5rem);
        min-width: 0;
        min-height: 0;
        margin-left: 1.25rem;
        margin-right: 1.25rem;
        padding: 1.25rem 0;
    }

        .logo-container {
            float: none;
            min-height: 0;
        }

            .logo-container > img {
                margin-top: 14px;
                padding: 0;
            }

    .navbar-collapse {
        flex: auto;
        min-width: 0;
        min-height: 0;
        margin-left: 1.25rem;
        margin-right: 1.25rem;
    }

/* --- tables ----- */
.table {
    margin-bottom: 2em;
}

.table-bordered {
    border-style: none;
}

    .table-bordered > thead > tr,
    .table-bordered > tbody > tr,
    .table-bordered > tfoot > tr {
        border-width: 1px;
        border-style: solid none none;
    }

        .table-bordered > thead > tr > th,
        .table-bordered > tbody > tr > th,
        .table-bordered > tfoot > tr > th,
        .table-bordered > thead > tr > td,
        .table-bordered > tbody > tr > td,
        .table-bordered > tfoot > tr > td {
            border-width: 1px;
            border-style: none;
        }

        .table-bordered,
        .table-bordered > thead > tr,
        .table-bordered > tbody > tr,
        .table-bordered > tfoot > tr,
        .table-bordered > thead > tr > th,
        .table-bordered > tbody > tr > th,
        .table-bordered > tfoot > tr > th,
        .table-bordered > thead > tr > td,
        .table-bordered > tbody > tr > td,
        .table-bordered > tfoot > tr > td {
            border-color: #99d28a;
        }

        thead tr:first-child td:first-child:empty {
            position: relative;
        }

            thead tr:first-child td:first-child:empty::before {
                content: '';
                position: absolute;
                top: -1px;
                right: 0;
                bottom: 0;
                left: -1px;
                display: block;
                background-color: #55b43c;
            }

                .table .radio-item label::before,
                .table .checkbox-item label::before {
                    top: .125em;
                }

                .table .radio-item label::after {
                    top: .3125em;
                }

                .table .checkbox-item label::after {
                    top: .25em;
                }

    .table-hover > tbody > tr:hover {
        background-color: #77c363;
    }

/* --- responsive lists ----- */
.choice-5-pt-radio .radio-item label,
.list-radio .radio-item label,
.array-flexible-row .radio-item label,
.array-5-pt .radio-item label,
.array-10-pt .radio-item label,
.yes-no .radio-item label {
    position: relative;
}

    .choice-5-pt-radio .answers-list,
    .list-radio .answers-list,
    .array-flexible-row .answers-list,
    .array-5-pt .answers-list,
    .array-10-pt .answers-list,
    .yes-no .answers-list {
        display: flex;
        flex-flow: row wrap;
        justify-content: flex-start;
        align-items: center;
    }

        .array-flexible-row .answers-list .answertext,
        .array-5-pt .answers-list .answertext,
        .array-10-pt .answers-list .answertext {
            flex: none;
            width: 100%;
        }

        .choice-5-pt-radio .answers-list li,
        .list-radio .answers-list li,
        .array-flexible-row .answers-list li,
        .array-5-pt .answers-list li,
        .array-10-pt .answers-list li,
        .yes-no .answers-list li {
            flex: initial;
            margin: 0 .625rem 1em .3125rem;
        }

        .choice-5-pt-radio .answers-list .noanswer-item,
        .list-radio .answers-list .noanswer-item,
        .array-flexible-row .answers-list .noanswer-item,
        .array-5-pt .answers-list .noanswer-item,
        .array-10-pt .answers-list .noanswer-item,
        .yes-no .answers-list .noanswer-item {
            flex: initial;
        }

        .yes-no .btn-group-justified > .btn,
        .yes-no .btn-group-justified > .btn-group {
            flex: 1;
            width: auto;
        }

/* --- emoji ---- */
.choice-5-pt-radio .slidered-list.sr-only {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
}

    .choice-5-pt-radio .slidered-list .radio-item,
    .array-flexible-row .radio-item {
        flex: auto;
        width: calc((100% / 6) - .625rem);
        max-width: 80px;
        max-height: 80px;
        margin: 0 .3125rem 1em;
        padding: 0;
    }

    .array-flexible-row .answers-list td.radio-item {
        padding: 0;
    }

        .choice-5-pt-radio .slidered-list .radio-item label,
        .array-flexible-row .radio-item label {
            display: inline-block;
            font: inherit !important;
            text-align: center;
            color: inherit;
            width: 100%;
            height: auto;
            margin: 0;
            padding: calc(100% - 2vw) 0 0;
            background: none no-repeat center scroll #fff;
            background-size: contain;
            border: 1vw solid #fff;
            border-radius: 50%;
            box-shadow: 2px 2px 10px 0 #666;
            transition: none;
            cursor: pointer;
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(1) label,
        .array-flexible-row .radio-item:nth-of-type(1) label {
            background-image: url('../files/emoji-1.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(1) input:checked ~ label,
        .array-flexible-row .radio-item:nth-of-type(1) input:checked ~ label {
            background-image: url('../files/emoji-1-selected.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(2) label,
        .array-flexible-row .radio-item:nth-of-type(2) label {
            background-image: url('../files/emoji-2.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(2) input:checked ~ label,
        .array-flexible-row .radio-item:nth-of-type(2) input:checked ~ label {
            background-image: url('../files/emoji-2-selected.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(3) label,
        .array-flexible-row .radio-item:nth-of-type(3) label {
            background-image: url('../files/emoji-3.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(3) input:checked ~ label,
        .array-flexible-row .radio-item:nth-of-type(3) input:checked ~ label {
            background-image: url('../files/emoji-3-selected.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(4) label,
        .array-flexible-row .radio-item:nth-of-type(4) label {
            background-image: url('../files/emoji-4.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(4) input:checked ~ label,
        .array-flexible-row .radio-item:nth-of-type(4) input:checked ~ label {
            background-image: url('../files/emoji-4-selected.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(5) label,
        .array-flexible-row .radio-item:nth-of-type(5) label {
            background-image: url('../files/emoji-5.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item:nth-of-type(5) input:checked ~ label,
        .array-flexible-row .radio-item:nth-of-type(5) input:checked ~ label {
            background-image: url('../files/emoji-5-selected.svg');
        }

        .choice-5-pt-radio .slidered-list .radio-item.noanswer-item label,
        .array-flexible-row .radio-item.noanswer-item label {
            font-weight: bold !important;
            color: #a1a6a1;
        }

        .choice-5-pt-radio .slidered-list .radio-item.noanswer-item input:checked ~ label,
        .array-flexible-row .radio-item.noanswer-item input:checked ~ label {
            color: #f08200;
        }

        .choice-5-pt-radio .slidered-list .radio-item label::before,
        .choice-5-pt-radio .slidered-list .radio-item label::after,
        .array-flexible-row .radio-item label::before,
        .array-flexible-row .radio-item label::after {
            content: none;
        }

            .choice-5-pt-radio .slidered-list li:not(.noanswer-item) label span,
            .array-flexible-row .answers-list td:not(.noanswer-item) label span {
                position: absolute;
                width: 1px;
                height: 1px;
                margin: -1px;
                padding: 0;
                overflow: hidden;
                clip: rect(0, 0, 0, 0);
                border: 0;
            }

            .choice-5-pt-radio .slidered-list li.noanswer-item label span,
            .array-flexible-row .answers-list td.noanswer-item label span {
                position: absolute;
                top: 50%;
                right: 0;
                left: 0;
                display: block;
                font-size: .875rem;
                text-align: center;
                width: 100%;
                margin-top: calc(.875rem * -.75);
            }

.choice-5-pt-radio .slider-wrapper {
    display: none;
}

/* --- progress-bar ----- */
.progress-bar {
    float: none;
    display: flex;
    flex-flow: row wrap;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 15px;
    padding-right: 15px;
    background-color: transparent;
    box-shadow: none;
    transition: none;
}

    .progress {
        flex: auto;
        width: auto;
        margin-right: .0625rem;
        margin-left: .0625rem;
        height: .625rem;
        background-color: #99d28a;
        border-radius: 0;
        box-shadow: none;
    }

    .progress.done {
        background-color: #fff;
    }

/* --- navigator ----- */
.navigator {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    margin: 0;
    padding: 0 15px 2.5rem !important;
}

    .navigator > div {
        flex: initial;
        width: 46px;
        float: none;
    }

        .navigator .btn-lg,
        .navigator .btn-lg:focus,
        .navigator .btn-lg:hover,
        .navigator .btn-lg:active {
            position: relative;
            display: inline-block;
            width: 46px;
            height: 46px;
            padding: 6px;
            overflow: hidden;
            background-color: transparent;
            border: 3px solid #fff;
            border-radius: 50%;
            transition: none;
        }

            .navigator .btn-lg::before {
                content: '';
                display: block;
                font-size: 20px;
                line-height: 1.5;
                text-align: center;
                vertical-align: middle;
                width: 30px;
                height: 30px;
                background: none no-repeat center scroll transparent;
            }

            .navigator .nav-prev .btn-lg::before {
                background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48c3R5bGU+cGF0aCB7IGZpbGw6ICNmZmY7IH08L3N0eWxlPjxwYXRoIGQ9Ik00MDEuNCAyMjRoLTIxNGw4My03OS40YzExLjktMTIuNSAxMS45LTMyLjcgMC00NS4ycy0zMS4yLTEyLjUtNDMuMiAwTDg5IDIzMy40Yy02IDUuOC05IDEzLjctOSAyMi40di40YzAgOC43IDMgMTYuNiA5IDIyLjRsMTM4LjEgMTM0YzEyIDEyLjUgMzEuMyAxMi41IDQzLjIgMCAxMS45LTEyLjUgMTEuOS0zMi43IDAtNDUuMmwtODMtNzkuNGgyMTRjMTYuOSAwIDMwLjYtMTQuMyAzMC42LTMyIC4xLTE4LTEzLjYtMzItMzAuNS0zMnoiLz48L3N2Zz4=);
            }

            .navigator .nav-next .btn-lg::before {
                background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48c3R5bGU+cGF0aCB7IGZpbGw6ICNmZmY7IH08L3N0eWxlPjxwYXRoIGQ9Ik0yODQuOSA0MTIuNmwxMzguMS0xMzRjNi01LjggOS0xMy43IDktMjIuNHYtLjRjMC04LjctMy0xNi42LTktMjIuNGwtMTM4LjEtMTM0Yy0xMi0xMi41LTMxLjMtMTIuNS00My4yIDAtMTEuOSAxMi41LTExLjkgMzIuNyAwIDQ1LjJsODMgNzkuNGgtMjE0Yy0xNyAwLTMwLjcgMTQuMy0zMC43IDMyIDAgMTggMTMuNyAzMiAzMC42IDMyaDIxNGwtODMgNzkuNGMtMTEuOSAxMi41LTExLjkgMzIuNyAwIDQ1LjIgMTIgMTIuNSAzMS4zIDEyLjUgNDMuMyAweiIvPjwvc3ZnPg==);
            }

            .navigator .nav-finish .btn-lg::before {
                background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48c3R5bGU+cGF0aCB7IGZpbGw6ICNmZmY7IH08L3N0eWxlPjxwYXRoIGQ9Ik0zNjIuNiAxOTIuOUwzNDUgMTc0LjhjLS43LS44LTEuOC0xLjItMi44LTEuMi0xLjEgMC0yLjEuNC0yLjggMS4ybC0xMjIgMTIyLjktNDQuNC00NC40Yy0uOC0uOC0xLjgtMS4yLTIuOC0xLjItMSAwLTIgLjQtMi44IDEuMmwtMTcuOCAxNy44Yy0xLjYgMS42LTEuNiA0LjEgMCA1LjdsNTYgNTZjMy42IDMuNiA4IDUuNyAxMS43IDUuNyA1LjMgMCA5LjktMy45IDExLjYtNS41aC4xbDEzMy43LTEzNC40YzEuNC0xLjcgMS40LTQuMi0uMS01Ljd6Ii8+PC9zdmc+);
                background-size: 175%;
            }

            .navigator .btn-lg span {
                position: absolute;
                width: 1px;
                height: 1px;
                overflow: hidden;
                clip: rect(0, 0, 0, 0);
            }

    .navigator .current {
        flex: auto;
        font-size: 30px;
        font-weight: 700;
        text-align: center;
        color: #99d28a;
        width: auto;
    }

        .navigator .current span {
            color: #fff;
        }

/* --- slider ----- */
.slider-list .slider-container {
    padding-left: 3px;
    padding-right: 10px;
}

    .slider.slider-horizontal {
        margin: 0;
    }

        .slider .slider-track {
            overflow: hidden;
            border-radius: 15px;
        }

        .slider-container .slider.slider-horizontal .slider-track {
            height: 6px;
        }

            .slider-track .slider-track-low,
            .slider-track .slider-track-high {
                background-image: none;
                background-color: #ccc;
            }

            .slider-track .slider-selection {
                background-image: none;
                background-color: #f08200;
            }

        .slider.slider-horizontal .tooltip.top {
            margin-top: -48px;
        }

            .tooltip.top .tooltip-arrow {
                border-top-color: #99d28a;
            }

            .tooltip-inner {
                font-size: 1.5rem;
                padding: 0 .5rem;
                background-color: #99d28a;
                border-radius: 5px;
                -webkit-touch-callout: none;
                -webkit-user-select: none;
                -khtml-user-select: none;
                -moz-user-select: none;
                -ms-user-select: none;
                user-select: none;
            }

        .slider-handle.round {
            width: 16px;
            height: 16px;
            background-image: none;
            background-color: #fff;
            box-shadow: .5px .5px 2px 1px rgba(0, 0, 0, .32);
        }

        .slider-container .slider.slider-horizontal .slider-handle {
            margin-left: -8px;
        }

        .help-block {
            font-size: 1rem;
            color: #fff;
            margin: 0;
        }

        .pull-left {
            -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
        }

        .pull-right {
            -webkit-transform: translateX(50%);
            transform: translateX(50%);
        }

.text-primary,
.text-info,
.text-muted {
    color: #fff;
}

.question-container {
    color: inherit;
    margin-bottom: 0;
    background-color: inherit;
    border-color: #fff;
    border-style: none none solid;

    a {
        color: inherit;
        text-decoration: underline;

        &:focus,
        &:hover {
            color: color-mix(in oklch, #99d28a 25%, #fff);
            text-decoration: none;
        }
    }
}

.group-title + .question-container {
    border-top-style: solid;
}

.question-title-container,
.question-valid-container,
.question-answer-container,
.answer-container,
.slider-wrapper {
    font-size: 1rem;
}

h3 {
    font-size: 1.9375rem;
    line-height: 1.1;
    margin-bottom: 1.25rem;
}

input[data-number="1"] {
    text-align: left;
}

input[maxlength="4"] {
    width: 5em;
}

.radio-item {
    padding-left: 16px;
}

.radio-item label::before,
.checkbox-item label::before {
    top: .25em;
}

.radio-item label::after {
    top: .4375em;
    background-color: #f08200;
}

.checkbox-item label::after {
    top: .4545em;
    line-height: 1.25;
    padding-left: .0909em;
    background-color: #f08200;
}

li.radio-item,
li.checkbox-item,
li.radio-text-item,
li.checkbox-text-item {
    margin-bottom: .5em;
}

.wrap-up-btn-container {
    text-align: center;
}

.btn-wrap-up-survey,
.btn-wrap-up-survey:focus,
.btn-wrap-up-survey:hover,
.btn-wrap-up-survey:active {
    display: inline-block;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
    text-decoration: none;
    color: #fff;
    height: 46px;
    margin: 1rem 0;
    padding: 6px 1em;
    background-color: transparent;
    border: 3px solid #fff;
    border-radius: 23px;
    box-sizing: border-box;
}

.btn-wrap-up-survey:focus,
.btn-wrap-up-survey:hover,
.btn-wrap-up-survey:active {
    color: #55b43c;
    background-color: #fff;
}

@media print, screen and (min-width: 350px) {

    /* --- emoji ---- */
    .choice-5-pt-radio .slidered-list li.noanswer-item label span,
    .array-flexible-row .answers-list td.noanswer-item label span {
        font-size: 1rem;
        margin-top: -.75rem;
    }

    .radio-item {
        padding-left: 20px;
    }
}

@media print, screen and (min-width: 380px) {

    /* --- responsive lists ----- */
    .choice-5-pt-radio .answers-list .radio-item {
        margin-right: 1rem;
    }

    /* --- emoji ---- */
    .choice-5-pt-radio .slidered-list .radio-item {
        margin-right: .3125rem;
    }
}

@media print, screen and (min-width: 410px) {

    /* --- responsive lists ----- */
    .choice-5-pt-radio .answers-list .radio-item {
        margin-right: 1.25rem;
    }

    /* --- emoji ---- */
    .choice-5-pt-radio .slidered-list .radio-item {
        margin-right: .3125rem;
    }
}

@media print, screen and (min-width: 430px) {

    /* --- responsive lists ----- */
    .choice-5-pt-radio .answers-list .radio-item {
        margin-right: 1.5rem;
    }

    /* --- emoji ---- */
    .choice-5-pt-radio .slidered-list .radio-item {
        margin-right: .3125rem;
    }
}

@media print, screen and (min-width: 480px) {

    /* --- responsive lists ----- */
    .choice-5-pt-radio .answers-list .radio-item {
        margin-right: 2rem;
    }

    /* --- emoji ---- */
    .choice-5-pt-radio .slidered-list .radio-item {
        margin-right: .3125rem;
    }
}

@media print, screen and (min-width: 580px) {

    /* --- responsive lists ----- */
    .choice-5-pt-radio .answers-list .radio-item {
        margin-right: 3rem;
    }

    /* --- emoji ---- */
    .choice-5-pt-radio .slidered-list .radio-item {
        margin-right: .3125rem;
    }
}

@media print, screen and (min-width: 640px) {

    /* --- navbar ----- */
    .logo-container > img {
        height: auto;
    }

    /* --- emoji ---- */
    .choice-5-pt-radio .slidered-list .radio-item label,
    .array-flexible-row .radio-item label {
        padding-top: calc(100% - 8px);
        border-width: 4px;
    }

    .choice-5-pt-radio .slidered-list li.noanswer-item label span,
    .array-flexible-row .answers-list td.noanswer-item label span {
        font-size: 1.5rem;
        margin-top: -1.125rem;
    }

    .question-title-container,
    .question-valid-container,
    .question-answer-container,
    .answer-container,
    .slider-wrapper {
        font-size: 1.5rem;
    }

    .radio-item label::before {
        top: .4167em;
    }

    .radio-item label::after {
        top: .5417em;
    }

    .checkbox-item label::before {
        top: .4583em;
    }

    .checkbox-item label::after {
        top: 1.0909em;
    }

    /* --- tables ----- */
    .table .radio-item label::before,
    .table .checkbox-item label::before {
        top: .2917em;
    }

    .table .radio-item label::after {
        top: .4167em;
    }

    .table .checkbox-item label::after {
        top: .3333em;
    }
}

@media print, screen and (min-width: 768px) {

    .text-danger[role="alert"] {
        margin-bottom: 0;
    }

    /* --- navbar ----- */
    .navbar-header {
        width: calc(50% - 6.25rem);
        margin-left: 3.125rem;
        margin-right: 3.125rem;
        padding: 1.875rem 0;
    }

    .navbar-collapse {
        margin-left: 3.125rem;
        margin-right: 3.125rem;
    }

        .logo-container > img {
            margin-top: 0;
        }

    /* --- progress-bar ----- */
    .progress-bar {
        width: 720px;
    }

    /* --- slider ----- */
    .slider-list .slider-item .control-label {
        margin-top: 1.4em;
    }

    .slider-list .slider-container {
        margin-top: 1.75em;
        padding-left: 15px;
        padding-right: 15px;
    }

        .tooltip-inner {
            padding: 0 1rem;
        }
}

@media print, screen and (min-width: 992px) {

    /* --- progress-bar ----- */
    .progress-bar {
        width: 940px;
    }
}

@media print, screen and (min-width: 1025px) {

    /* --- tables ----- */
    .table-bordered {
        border-style: solid;
    }

        .table-bordered > thead > tr,
        .table-bordered > tbody > tr,
        .table-bordered > tfoot > tr {
            display: table-row;
            border-style: none;
        }

            .table-bordered > thead > tr > th,
            .table-bordered > tbody > tr > th,
            .table-bordered > tfoot > tr > th,
            .table-bordered > thead > tr > td,
            .table-bordered > tbody > tr > td,
            .table-bordered > tfoot > tr > td {
                display: table-cell;
                border-style: solid;
            }

                .table .radio-item label::before,
                .table .checkbox-item label::before {
                    top: 0;
                }

                .table .radio-item label::after {
                    top: .125em;
                }

                .table .checkbox-item label::after {
                    top: .0909em;
                }

    /* --- responsive lists ----- */
    .choice-5-pt-radio .radio-item label,
    .list-radio .radio-item label,
    .array-flexible-row .radio-item label,
    .array-5-pt .radio-item label,
    .array-10-pt .radio-item label,
    .yes-no .radio-item label {
        position: relative;
    }

        .list-radio .answers-list {
            display: block;
        }

        .array-flexible-row .answers-list,
        .array-5-pt .answers-list,
        .array-10-pt .answers-list {
            display: table-row;
        }

            .array-flexible-row .answers-list .answertext,
            .array-5-pt .answers-list .answertext,
            .array-10-pt .answers-list .answertext {
                width: auto;
            }

    /* --- emoji ----- */
    .array-flexible-row thead .emoji {
        width: calc(100% - 8px);
        max-width: 80px;
        background-color: #fff;
        border: 4px solid #fff;
        border-radius: 50%;
    }

    .array-flexible-row .answers-list td.radio-item {
        padding: 8px 0 8px 20px;
    }

        .array-flexible-row .answers-list .radio-item label {
            position: relative;
            line-height: 21px !important;
            width: 17px;
            height: 17px;
            margin-left: -20px;
            padding: 0;
            border: none;
            box-shadow: none;
        }

            .array-flexible-row .radio-item label::before,
            .array-flexible-row .radio-item label::after {
                content: '';
            }
}

@media print, screen and (min-width: 1200px) {

    /* --- progress-bar ----- */
    .progress-bar {
        width: 1140px;
    }
}