@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/**
* VARIABLES
*/

:root {
    --button-default-color: #4d4f50;
    --button-default-text-color: #4d4f50;
    --button-default-image-filter: brightness(0) saturate(100%) invert(6%) sepia(51%) saturate(5772%) hue-rotate(204deg) brightness(94%) contrast(101%);
    --button-hover-color: #001f44;
    --button-hover-text-color: #ffffff;
    --button-hover-image-filter: brightness(0) saturate(100%) invert(100%) sepia(5%) saturate(7500%) hue-rotate(272deg) brightness(101%) contrast(116%);
    --button-danger-hover-color: #8c2e29;
    --button-danger-hover-text-color: #ffffff;
    --button-nav-font-size: 16px;
    --button-nav-font-weight: 600;
    --button-question-font-size: 14px;
    --button-question-font-weight: 400;
    --button-line-height: 1.5;
    --button-letter-spacing: 1px;
    --link-color: #FFAD00;
    --checkbox-color: #001f44;
    --primary-text-color: #212529;
    --panel-color: #001f44;
    --panel-heading-text-color: #ffffff;
    --progress-bar-color: #001f44;
}

/**
 * GENERAL
 */
body {
    font-family: 'Montserrat', sans-serif;
    width: 100vw;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow-x: hidden;
    padding-bottom: 0 !important;
}

.reply-again-container {
    margin-top: 10px;
}

.asterisk {
    margin-right: 5px;
}

#outerframeContainer {
    margin-bottom: 80px;
}

.spacer {
    flex-grow: 1;
}

.fruity a,
.fruity a:hover,
.fruity a:focus,
.fruity a:active,
.fruity a.active {
    color: var(--link-color);
}

.fruity input[type="checkbox"]:checked::after,
.fruity .checkbox input[type="checkbox"]:checked::after,
.fruity .checkbox-inline input[type="checkbox"]:checked::after {
    background-color: var(--checkbox-color);
    border-color: var(--checkbox-color);
}

input[type="checkbox"]:focus {
    -o-box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.survey-welcome.h4.text-primary {
    color: var(--primary-text-color);
}

.panel.panel-primary {
    border-color: var(--panel-color);
    border-radius: 0;
}

.fruity .panel-primary > .panel-heading {
    color: var(--panel-heading-text-color);
    border: 1px solid var(--panel-color);
    background-color: var(--panel-color);
    border-radius: 0;
}

.fruity .text-info {
    color: var(--primary-text-color)
}

/**
 * NAVBAR
 */
.navbar-collapse {
    box-shadow: none !important;
}

.custom-navbar {
    background-color: #001f44 ! important;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 64px;
}

.custom-navbar-content {
    width: 85%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.custom-navbar-content > * {
    flex-grow: 1;
}

.custom-navbar-header-helper {
    width: 136.6px;
}

.navbar-header {
    height: 100%;
}

.custom-navbar-logo-container {
    height: 100%;
}

.custom-navbar-logo {
    height: 44px;
    margin: 10px 0 !important;
    padding: 0 !important;
}

.custom-navbar-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    height: 100%;
}

.custom-navbar-survey-title {
    color: #ffffff !important;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 26px;
    line-height: 26px;
    text-align: right;
    flex-grow: 0;
    text-overflow: ellipsis;
}

.custom-navbar-navigations {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 0 !important;
    margin: 0 !important;
    height: 100%;
}

.custom-navbar-navigations li a {
    margin: 0 !important;
    padding: 0 !important;
    color: #758599 !important;
    font-size: 14px !important;
    font-weight: 600;
    text-align: right;
    position: relative;
}

.custom-navbar-navigations li a:hover,
.custom-navbar-navigations li a:focus {
    color: #adb7c3 !important;
}

.custom-navbar-navigations li a::after {
    background-color: #ffad00 !important;
    position: absolute;
    right: 0 !important;
}

.custom-navbar-toggle {
    border: none !important;
    background: none !important;
}

.custom-navbar-toggle > span,
.custom-navbar-toggle:hover > span,
.custom-navbar-toggle:focus > span {
    background-color: #ffad00 !important;
}

@media screen and (max-width: 767px) {
    .custom-navbar-content {
        width: 100%;
        height: auto;
    }

    .custom-navbar-content > * {
        flex-grow: 0;
    }

    .custom-navbar-header-helper {
        display: none;
    }

    .custom-navbar-content .spacer {
        display: none;
    }

    .custom-navbar-survey-title {
        max-width: none;
        text-align: right;
        margin-left: 10px;
        font-size: 20px;
    }
}

/**
 * FOOTER
 */
#footer {
    background-color: #001f44;
    bottom: 0;
    width: 100%;
    height: auto; /* Height of the footer */
    padding: 20px;
}

.footer-columns {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    flex-wrap: wrap;
    gap: 3.2%;
}

.footer-column {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.footer-cof-column {
    width: 75%;
    display: inline;
    text-align: center;
    align-items: center;
}

.footer-image {
    height: 105px;
    width: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.footer-text {
    width: 100%;
    text-align: center;
    color: #c3c4cb;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 600;
}

.footer-cof-text {
    width: 80%;
    text-align: center;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 11px;
}

/**
 * QUESTIONS
 */
.checkbox-item.othertext-label-checkox-container .answertext,
.checkbox-label.control-label {
    margin-bottom: 0 !important;
}

.answer-container {
    padding-bottom: 10px !important;
    padding-top: 10px !important;
}

.ls-answers {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

.bootstrap-select {
    width: fit-content !important;
}

.bootstrap-select > .dropdown-toggle,
.bootstrap-select > .dropdown-toggle:hover,
.bootstrap-select > .dropdown-toggle:active,
.bootstrap-select > .dropdown-toggle:focus {
    letter-spacing: 0 !important;
    text-transform: none !important;
    border-color: #001f44 !important;
    color: var(--button-hover-text-color) !important;
    background-color: transparent !important;
}

.bootstrap-select > .dropdown-toggle:active .filter-option-inner-inner,
.bootstrap-select > .dropdown-toggle:focus .filter-option-inner-inner {
    color: #001f44 !important;
}

.fruity .dropdown-menu > .active > a,
.fruity .dropdown-menu > li > a:hover,
.fruity .dropdown-menu > li > a:focus {
    background-color: #001f44 !important;
}

.question-title-container {
    padding-bottom: 0 !important;
}

.fruity .open .dropdown-toggle.btn-default {
    color: #001f44 !important;
    border-color: #001f44 !important
}

li.radio-item,
li.checkbox-item,
li.radio-text-item,
li.checkbox-text-item {
    margin-bottom: 6px !important;
}

.bootstrap-buttons-div {
    width: auto;
    margin-bottom: 10px;
}

.fruity .btn-default .filter-option-inner-inner,
.fruity .btn-default .caret {
    color: #001f44 !important;
}

.fruity .question-item {
    padding-top: 0 !important;
}

.question-container {
    background-color: transparent !important;
    border: solid 1px #001f44 !important;
    box-shadow: none !important;
}

.answer-item label::after {
    background-color: #001f44 !important;
}

.custom-question-help,
.custom-question-tip {
    color: #001f44 !important;
}

.ls-answers.answers-list.radio-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
}

@media screen and (max-width: 400px) {
    .ls-answers.answers-list.radio-list {
        justify-content: center;
    }
}

.checkbox-item input[type="checkbox"]:checked + label::after {
    line-height: 1;
    padding-left: 0;
}

.survey-description {
    border: none !important;
    box-shadow: none !important;
    line-height: 1.5;
    font-weight: 400;
    color: #000000 !important;
    font-size: 16px;
}

.survey-description a,
.survey-description a:hover {
    color: var(--panel-color) !important;
    font-weight: bold;
}

.fruity .form-control:focus {
    border: 1px solid #001f44;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(0, 31, 68, 0.6);
}

.answers-list.radio-list .list-unstyled,
.answers-list.checkbox-list .list-unstyled {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 20px;
}

.answers-list.radio-list .list-unstyled > * {
    width: fit-content;
}

.radio-label,
.label-radio {
    line-height: 1;
}

.radio-label:before,
.label-radio:before,
.radio-label:after,
.label-radio:after {
    margin-top: -2px;
}

.radio-list li {
    margin-right: 0 !important;
}

li.radio-item {
    margin-bottom: 0 !important;
}

.question-item.answer-item.checkbox-text-item {
    padding-top: 0.7em;
}

.answer-item.checkbox-text-item .form-control.input-sm {
    margin-top: -3px;
}

.answer-item.radio-text-item,
.answer-item.checkbox-text-item {
    display: flex !important;
    flex-direction: row;
    align-items: center;
}

.input-sm {
    height: 24px !important;
}

@media screen and (max-width: 767px) {
    .group-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .question-container {
        width: 90% !important;
    }

    #navigator-container .text-left {
        padding-left: 5px;
    }

    #navigator-container .text-right {
        padding-right: 5px;
    }
}

.row.ls-answers.answers-list.radio-list.form-inline::before {
    display: none;
}

.ls-input-group-extra.prefix-text.prefix {
    display: none !important;
}

.question-item.answer-item.text-item.form-group .control-label {
    padding-top: 0 !important;
}

.question-valid-container.text-info.custom-question-tip .ls-question-help.tip-was-hidden:last-of-type {
    margin-bottom: 0 !important;
}

.question-title-container .question-text .ls-label-question p {
    margin-bottom: 0 !important;
}

.form-control.numeric {
    text-align: left;
}

.dropdown-menu.open .inner.open {
    max-height: 35vh !important;
}

textarea.form-control {
    resize: vertical;
}

/**
 * BUTTONS
 */
.btn.btn-primary,
.btn.btn-danger,
.btn.btn-default,
.btn.btn-info,
.btn.btn-success,
.custom-end-button {
    color: var(--button-default-text-color) !important;
    border-radius: 0;
    border: solid 1px var(--button-default-color);
    background-color: transparent;
    letter-spacing: var(--button-letter-spacing);
    text-transform: uppercase;
    padding: 10px 20px;
    line-height: var(--button-line-height);
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    cursor: pointer;
}

.btn.btn-primary:hover,
.btn.btn-primary.hover,
.btn.btn-primary:active,
.btn.btn-primary:focus,
.btn.btn-primary.active,
.btn.btn-default:hover,
.btn.btn-default.hover,
.btn.btn-default:active,
.btn.btn-default:focus,
.btn.btn-default.active,
.btn.btn-info:hover,
.btn.btn-info.hover,
.btn.btn-info:active,
.btn.btn-info:focus,
.btn.btn-info.active,
.btn.btn-success:hover,
.btn.btn-success.hover,
.btn.btn-success:active,
.btn.btn-success:focus,
.btn.btn-success.active,
.custom-end-button:hover,
.custom-end-button.hover,
.custom-end-button:active,
.custom-end-button:focus,
.custom-end-button.active {
    box-shadow: none;
    color: var(--button-hover-text-color) !important;
    background-color: var(--button-hover-color);
    border-color: var(--button-hover-color);
}

.btn.btn-danger:hover,
.btn.btn-danger:focus,
.btn.btn-danger:active,
.btn.btn-danger.active {
    color: var(--button-danger-hover-text-color) !important;
    background-color: var(--button-danger-hover-color) !important;
    border-color: var(--button-danger-hover-color) !important;
}

.custom-button, .custom-end-button {
    font-size: var(--button-nav-font-size);
    font-weight: var(--button-nav-font-weight);
}

.custom-end-button {
    width: fit-content !important;
}

.custom-end-button a {
    color: var(--button-default-text-color) !important;
    font-size: var(--button-question-font-size);
    font-weight: var(--button-nav-font-weight);
    line-height: var(--button-line-height);
    letter-spacing: var(--button-letter-spacing);
}

.custom-end-button:hover a,
.custom-end-button a:active {
    color: var(--button-hover-text-color) !important;
    text-decoration: none;
}

.bootstrap-buttons-div .btn-primary {
    font-size: var(--button-question-font-size);
    font-weight: var(--button-question-font-weight);
}

.bootstrap-buttons-div .btn-primary img {
    max-height: 30px;
    max-width: 30px;
    filter: var(--button-default-image-filter);
    margin-bottom: 5px;
}

.bootstrap-buttons-div .btn-primary:hover img,
.bootstrap-buttons-div .btn-primary.active img,
.bootstrap-buttons-div .btn-primary:focus img {
    filter: var(--button-hover-image-filter)
}

.bootstrap-buttons-div .btn-primary p {
    margin: 0 !important;
}

.answer-item.dropdown-item .text-item.other-text-item input {
    margin-top: 0 !important;
}

.othertext-label-checkox-container {
    padding-top: 0 !important;
}

.button-item.btn.btn-primary label {
    margin-bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.input-group.answer-item.date-timepicker-group .input-group-addon.btn.btn-primary {
    padding: 0 12px;
}

/**
 * PDF
 */
.custom-to-print {
    margin: 0 !important;
    width: auto !important;
}

.custom-to-print-question {
    width: auto !important;
}

.custom-to-print-question p {
    margin-bottom: 5px;
    text-align: justify;
    text-justify: inter-word;
}

.custom-to-print-question-container {
    margin: 5px 0 !important;
    padding-bottom: 0 !important;
    display: flex;
    flex-direction: column;
}

.custom-to-print-question-container:first-of-type {
    margin: 0 !important;
}

.custom-to-print .col-md-8 {
    width: fit-content !important;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.custom-to-print .col-md-8 > .row {
    width: fit-content !important;
    display: flex;
    flex-direction: row;
    margin-right: 0;
    justify-content: flex-end;
}

.custom-to-print .col-md-8 > .row > .text-left {
    width: 100% !important;
}

.custom-to-print .col-md-8 > .row > .text-left > * {
    width: 100% !important;
    text-align: right;
}

.custom-to-print .col-md-8 > .row > .text-right {
    width: fit-content !important;
}

.custom-to-print img {
    max-width: 35px;
    max-height: 35px;
    background-color: rgba(0, 0, 0, 0.15);
    padding: 5px;
    border-radius: 5px;
}

/**
 * FILE UPLOAD
 */
.file-preview {
    align-items: flex-start !important;
    flex-direction: column;
}

.form-group .control-label.col-xs-4 {
    padding-left: 0 !important;
}

.file-preview fieldset {
    width: 100%;
}

.file-name,
.btn.btn-danger .fa.fa-trash {
    margin-left: 0 !important;
}

.modal-dialog {
    width: 60%;
}

.model-container.clearfix {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.model-container.clearfix .alert.alert-info.uploadmsg,
#notice .alert.alert-success {
    color: #001f44 !important;
    border-color: #001f44 !important;
    border-radius: 0;
    padding: 5px;
    width: fit-content !important;
}

.question.uploadedfiles {
    margin-top: 10px;
    border-collapse: separate;
    border-spacing: 10px;
}

.uploadedfiles thead tr th:first-child,
.uploadedfiles tbody tr td:first-child {
    display: none;
}

.uploadedfiles tbody tr td:last-child {
    text-align: right;
}

.fruity .progress-bar {
    background-color: var(--progress-bar-color);
    font-weight: bold;
}

.ls-answers.table {
    table-layout: auto;
}

.ls-answers.table .col-responses col {
    width: auto !important;
    min-width: 55px;
}

.ls-answers.table .col-responses col:first-child {
    width: calc(100% - 200px) !important;
}

.ls-answers.table  th.answertext {
    text-align: left !important;
}

.ls-answers.table .ls-heading {
    background-color: #001f44 !important;
    color: #ffffff !important;
}

.ls-answers.table tr:nth-child(even) {
    background-color: #001f4411;
}

.fruity .table-hover>tbody>tr:hover>th, .fruity .table-hover>tbody>tr:hover>td {
    background: none;
}

/** CUSTOM CLASSES **/
.pista_multiple_small_numeric_inputs .numeric {
    width: 100%%;
}

.pista_multiple_small_numeric_inputs .control-label {
    width: 70%;
}

.pista_multiple_small_numeric_inputs .col-xs-12.col-sm-8 {
    width: 30%;
}