/******************
    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
*/

/* General Layout */
body {
  font-family: Arial, sans-serif;
  font-size: 4;
  line-height: 1.42857143;
  color: #183c55;
  background-color: #FFF;
  margin: 0 !important;
  padding: 0 !important;
}
#outerwrapper {
  margin-top: 0px;
  margin-bottom: 10px;
  float: none;
  clear: both;
  background-color: #FFF;
}
#outerwrapper #outerwrapper,
#outerwrapper #outerwrapper .container {
  padding: 0;
  width: auto;
}
.outerwrapper .header-wrapper {
  display: none;
}
#outerframeContainer {
  padding: 0;
  width: auto;
}
#dynamicReloadContainer {
	padding: 0;
}
@media only screen and (max-width: 768px) {
  #outerwrapper {
    margin-top: 0;
    margin-bottom: 0;
  }  
}
@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}
@media (min-width: 992px) {
  .container {
    /*width: 970px;*/
    width: 998px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 998px;
  }
}
hr {
  margin: 10px 0;
  border-color: transparent;
}
a,
a:link {
  color: #36a4de;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #36a4de;
  text-decoration: none;
}
img {
    max-width: 100%;
}

/* Navbar */
.header-wrapper {
  background: #fff;
  border: none;
  box-shadow: 1px 0px 5px rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  width: 100%;
}
.navbar-toggle {
	float: none;
  margin-right: 0;
}
.navbar-collapse {
	padding: 0;
}
.navbar {
	min-height: 0;
	margin: 0;
	text-align: center;
}
.navbar-header {
  float: none !important;
  padding: 15px 0;
}
.navbar-brand {
  padding: 15px 0 0 0;
  min-height: initial;
}
h1.surveyname {
  font-size: 130%;
  color: #183c55;
  font-weight: 700;
  text-align: left;
  line-height: 160%;
  font-family: 'Mina', sans-serif;
  margin: 10px 0;
}
@media only screen and (max-width: 768px) {
  .logo-wrapper,
  h1.surveyname {
    margin-bottom: 15px;
  }
}
.navbar-nav {
	float: none;
}
.navbar-default {
	background-color: transparent;
	border: none;
}
.navbar-action-link {
	padding: 0;
}
.navbar-collapse.in {
	overflow-y: visible;
}
.navbar-item-left {
	text-align: left;
	padding-left: 0;
}
.navbar-item-middle {
	text-align: center;
}
.navbar-item-right {
	text-align: right;
	padding-right: 0;
}
.navbar-logo-left {
  padding-left: 0;
}
.navbar-logo-middle {
  padding-right: 0;
  text-align: center;
}
.navbar-logo-right {
  padding-right: 0;
  text-align: right;
}
.logo-bar {
  margin-top: 0;
  padding: 15px 0;
}
.navbar-banner {
  text-align: center;
}
img.logo-left {
  height: 73px;
  width: auto;
}

@media only screen and (max-width: 768px) {
	.navbar-collapse {
		padding: 0 15px;
	}
  .navbar-logo-left {
    padding: 0;
    text-align: center;
  }
  .navbar-logo-middle {
    text-align: center;
    padding: 0;
    margin-top: 15px;
  }
  .navbar-logo-right {
    text-align: center;
    padding: 0;
    margin-top: 15px;
  }
  .navbar-item-left {
    text-align: center;
    margin: 6px 0;
    padding: 0;
  }
  .navbar-item-middle {
    text-align: center;
    margin: 6px 0;
    padding: 0;
  }
  .navbar-item-right {
    text-align: center;
    margin: 6px 0;
    padding: 0;
  }
    .navbar-banner {
    padding: 0;
    }
}

/* Language Changer */
.language-wrapper {
  margin: 15px 0;
  text-align: right;
}
.languagechanger {
    margin: 15px 0;
    display: block;
}
a.languagechanger,
a:link.languagechanger {
    color: #888;
    text-decoration: none;
}
a:hover.languagechanger,
a:focus.languagechanger {
    color: #888;
    text-decoration: none;
}
#langs-container {
    height: auto;
}
.form-change-lang {
    text-align: center;
}
ul#langs-container {
    margin-left: 42%;
    overflow: initial !important;
}

/* Progress bar */
.progress-wrapper {
  padding: 0;
}
.progress {
  background-color: #ecf0f1;
  margin-bottom: 0;
  margin: 0 auto;
}
.progress-bar {
  background-color: #2c3e50;
}

/* Welcome Page */
.text-info {
  color: #333;
}
.survey-welcome {
  margin-top: 15px;
}
.question-count-text {
  margin-top: 15px;
}

/* Privacy */
.privacy {
  margin-top: 15px;
  padding: 15px 0;
  margin: 15px 1px;
  border: 1px solid #ecf0f1;
  background-color: #ecf0f1;
}
p.ls-privacy-body {
  margin: 15px 0 0 0;
  font-style: italic;
}

/* Privacy policy */
.panel {
  -webkit-box-shadow: none;
  box-shadow: none;
  margin: 0;
  background-color: transparent;
}
.panel-primary {
    border-color: transparent;
}
.panel-primary > .panel-heading {
    color: #000;
    background-color: transparent;
    border-color: transparent;
    padding: 15px 0;
}
.panel-body {
    padding: 5px 0;
}
.panel-footer {
    padding: 10px 0;
    background-color: transparent;
    border-top: transparent;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}
input#datasecurity_accepted {
  vertical-align: top;
}
.limit-text-window {
    display: none;
}

/* Group layout */
.group-outer-container {
	display: block;
}
.group-title {
  text-align: left;
  font-weight: normal;
  font-size: 140%;
  margin-top: 0;
  margin-bottom: 5px;
  color: #183c55;
}
.group-description {
  margin-top: 0;
  text-align: left;
  color: #183c55;
}

/* Question layout */
.question-number, .question-code {
  font-family: Arial, sans-serif;
	float: none;
	margin: 0;
  color: #183c55;
  font-size: 14px;
}
.question-code a {
    color: #fff;
    text-decoration: underline;
}
.question-code a:hover {
    color: #fff;
    text-decoration: none;
}
.question-container {
    background-color: #fff;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border: none !important;
    margin-top: 15px;
    border-radius: 10px;
    -webkit-box-shadow: 0px 7px 15px 0px rgba(0, 56, 129, 0.09);
    box-shadow: 0px 7px 15px 0px rgba(0, 56, 129, 0.09)
}

.question-text {
      font-size: 16px;
    border-bottom: 3px solid #36a4de;
    padding-bottom: 10px;

}

.input-error.question-container {
    border: 1px solid #a94442;
}
.input-error input {
    border: 2px solid #E75041;
}
.question-title-container {
    padding: 15px 15px 10px 15px;
    background-color: transparent;
    color: #183c55;
    font-family: 'Mina', sans-serif;
    font-size: 16px;
}

.question-valid-container {
  padding-left: 0;
  padding-right: 0;
  font-size: 90%;
  margin-top: 10px;
}
.question-number,
.question-code {
  font-weight: normal;
}
.ls-answers tbody .answertext {
  text-align: left;
}
tr.ls-odd,
.array-flexible-column tr.answers-list:nth-child(even) {
  background-color: transparent;
}
.table-hover > tbody > tr:hover,
tr.answers-list:hover,
.array-flexible-column tr.answers-list:hover {
    background-color: transparent;
}
tr.ls-odd:hover,
.array-flexible-column tr.answers-list:nth-child(even):hover {
  background-color: transparent !important;
}
.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
  border: 0;
  padding: 4px 8px;
}
.table-bordered {
  border: 0;
}
.asterisk {
  margin-right: 5px;
  font-size: 80% !important;
  vertical-align: top;
}
.asterisk small {
  font-size: 90% !important;
  vertical-align: top;  
}
.input-error .asterisk {
  font-size: 90% !important;
  margin-top: 0;  
}
.question-help-container {
  font-size: 90%;
  margin-top: 15px;
  color: #82878c;
}
.numeric-multi input.numeric,
.multiple-short-txt input.form-control,
.multiple-short-txt textarea.form-control {
  margin-bottom: 15px;
}
@media only screen and (max-width: 768px) {
    .multiple-opt-comments .form-control {
        margin-top: 15px;
    }    
}
.ls-input-group-extra {
  vertical-align: top;
  padding: 1rem 1.2rem;
}
.array-flexible-row .ls-answers .answertextright {
  text-align: right;
}

/* Navigator */
#navigator-container {
  margin-bottom: 15px;
  padding-bottom: 0;
  margin-top: 30px;
}
.btn {
  border-radius: 0;
  font-size: 130%;
  border-radius: 4px;
}
a.btn-primary,
a.btn-default {
  color: #fff;
}
.btn-primary {
  color: #ffffff;
  background-color: #183c55;
  border-color: #183c55;
}
.btn-primary:hover {
  color: #ffffff;
  background-color: #183c55;
  border-color: #183c55; 
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
  color: #ffffff;
  background-color: #183c55;
  border-color: #183c55;
}
.input-group-addon.btn-primary {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.btn-default,
.btn-default:hover {
    border-color: #183c55;
    background-color: #183c55;
    color: #fff;
}

/* Radios and checkboxes */

/* radio buttons */
.radio-item label::before {
  border: 2px solid #8098ad;
  background-color: #FFF;
}
.radio-item label::after {
  background-color: #183c55;
}
/* checkboxes */
.checkbox-item label::before {
  border: 2px solid #8098ad;
  background-color: #FFF;
}
.checkbox-item label::after {
  color: #183c55;
  background-color: transparent;
  width: 17px;
  height: 17px;
  left: 4px;
  top: 2px;
  font-size: 17px;
}
.multiple-opt .checkbox-item label::after {
  left: 0px;
  top: -1px;    
}
.multiple-opt-comments .checkbox-item label::after {
  left: 0px;
  top: 6px;    
}
.radio-item .ls-label-xs-visibility, .checkbox-item .ls-label-xs-visibility {
  display: inline-block;
  position: relative;
  overflow: hidden;
  width: 24px;
  height: 24px;
  line-height: 21px;
  text-indent: 21px;
}
.checkbox-item label::before {
    width: 24px;
    height: 24px;
}
.radio-item label::before {
    width: 24px;
    height: 24px;
}
.radio-item label::after {
    width: 16px;
    height: 16px;
    left: 4px;
    top: 4px;
}
.radio-item label,
.checkbox-item label {
    padding-left: 15px;
    padding-top: 2px;
}

/* Ranking question */
.sortable-choice {
  padding: 5px;
}
.sortable-choice .ls-choice.sortable-item {
  background-color: #ecf0f1;
  border: 1px solid #ecf0f1;
  margin-bottom: 10px;
  margin-top: 10px;
}
.sortable-rank {
  padding: 5px;
}
.sortable-rank .ls-choice.sortable-item {
  background-color: #183c55;
  border: 1px solid #333;
  margin-bottom: 10px;
  margin-top: 10px;
  color: #fff;
}
.ranking .list-group-item {
    display: list-item;
    list-style-position: inside;
}
.ranking .answers-list ul {
    padding: 0 10px;
}
.ranking .answers-list ul li {
    list-style-type: decimal;
}
@media only screen and (max-width: 768px) {
    .ranking .answers-list .col-xs-6 {
        width: 100% !important;
    }    
}

/* Boilerplate question */
/* 2019-04-04 No paddings for boilerplate */
.boilerplate {
    padding-bottom: 0;
}
.boilerplate.question-container {
    border: none !important;
}
.boilerplate .question-title-container {
    margin-bottom: 0;
}

/* Gender question */
/* Yes/no question */
/* Bootstrap buttons layout */
.gender-button .btn-primary,
.yes-no .btn-primary,
.bootstrap-buttons-div .button-item {
  color: #333;
  background-color: #ecf0f1;
  border-color: #fff;
  border: 2px solid #fff;
}
.gender-button .btn-primary:hover,
.gender-button .btn-primary:focus,
.gender-button .btn-primary.active,
.gender-button .btn-primary.active:hover,
.gender-button .btn-primary.active:focus,
.yes-no .btn-primary:hover,
.yes-no .btn-primary:focus,
.yes-no .btn-primary.active,
.yes-no .btn-primary.active:hover,
.yes-no .btn-primary.active:focus,
.bootstrap-buttons-div .button-item:hover,
.bootstrap-buttons-div .button-item:focus,
.bootstrap-buttons-div .button-item.active,
.bootstrap-buttons-div .button-item:hover,
.bootstrap-buttons-div .button-item:focus {
  color: #FFF;
  background-color: #183c55;
  border-color: #fff;
  border: 2px solid #fff;
}

/* Bootstrap buttons layout */
/* 2019-04-05 Marcel: New CSS for bootstrap button layout */
.bootstrap-buttons-div
{
	padding: 0 5px;
}
.bootstrap-buttons-div .button-item {
    word-break: break-all;	/* remove this to not break words (wastes quite some space) */
    white-space: normal;
    padding: 0.5em 0.5em;
}

/* 5pt choice */
.choice-5-pt-radio li.radio-item {
  margin-right: 15px;
}

/* Slider question */
.slider-handle {
    background-color: #183c55;
    background-image: -webkit-linear-gradient(top, #183c55 0%, #224b6e 100%);
    background-image: -o-linear-gradient(top, #183c55 0%, #224b6e 100%);
    background-image: linear-gradient(to bottom, #183c55 0%, #224b6e 100%);
}
.tooltip-inner {
  background-color: #333;
}
.tooltip.top .tooltip-arrow {
     border-top-color: #333;
}
.slider-selection {
    background-image: -webkit-linear-gradient(top, #eee 0%, #ccc 100%);
    background-image: -o-linear-gradient(top, #eee 0%, #ccc 100%);
    background-image: linear-gradient(to bottom, #eee 0%, #ccc 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eee', endColorstr='#ccc', GradientType=0);
}

.numeric-multi .ls-group-remaining .suffix-text.suffix {
    display: inline;
    margin-left: -15px;
}


/* Text questions */

/* Highlight text fields with main template color */
.form-control {
    border: 2px solid #8098ad;    
}
.form-control:focus {
    border-color: #000;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(0,0,0, .6) !important;
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(0,0,0, .6) !important;
}

/* Print Page */
.url-wrapper-survey-print {
  margin: 15px 0;
}
.question-container-printanswers {
  border-bottom: 1px solid #ccc;
}

/* Footer */
footer .copyright {
	text-align: center;
  margin: 20px 0;
  font-size: 90%;
  color: #888;
}

body {
     padding-bottom: 0; /* no bottom padding, footer should be bottom aligned */
     padding-top: 60px;/* now is redefine in JS to fit any title length */
     flex-direction: column; /* article, then footer */
     display: flex; /* flex, to extend the content to full size */
     min-height: 100vh; /* full height, to bottom-align footer */
}
body > article {
    flex: 1; /* the main article should use as much space as possible */
}


div.yes-no .btn-group label,
.gender .btn-group label {
    padding-top: 10px;
}

.completed-wrapper {
  margin-bottom: 45px;
  min-height: 200px;
 }

 /* Datepicker */

 .datepicker .active,
 .datepicker .today {
  background-color: #183c55 !important;
  background: #183c55 !important;
  color: #FFF !important;
 }

/* Index */
.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  background-color: #183c55;
  color: #FFF;
}
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  background-color: #eee;
}

.dropdown-menu > li > a {
  background-color: #fff;
  color: #000;
}

/* Startpage */
.survey-list-heading,
.survey-list,
.survey-contact {
  text-align: center;
}
#surveys-list-container {
  background-color: #fff;
  padding: 45px 0;
}

/* Fix array alignment */
td.answer-item.radio-item {
    vertical-align: middle;
}

/* 2018-12-02 Marcel: Fix captcha width */
.captcha-image
{
    width: auto;
}

/* 2019-02-10 Marcel: Additional language changer adjustments */
#main-col form div.form-change-lang.form-inline
{
    display: none;
}


/* 2019-02-11 Marcel: Hide progress bar from certain screens */
.printanswers .header-wrapper .progress-wrapper,
.listsurveys .header-wrapper .progress-wrapper
{
    display: none;
}

/* 2019-03-11 Marcel: adjust margin to not show scroll bar at list survey page */
.listsurveys
{
    margin-right: 15px;
    margin-left: 15px;
}

/* 2019-02-11 Marcel: Remove background color from print version (PDF) */
body.printlayout
{
    background-color: #fff;
    padding: 10px !important;
}



/* START 2019-03-13 Marcel: Adjusted styles for "List surveys" screen */
.listsurveys
{
	border-bottom: 1px solid #000;
}

.listsurveys .header-wrapper
{
	margin-bottom: 0px;
}

.listsurveys .header-wrapper .navbar-brand
{
	display: none;
}

#surveys-list-container 
{
    padding: 0 0 45px 0;
    margin-top: 0px;
}

#surveyListFooter
{
	margin: 0px;
	padding: 0px;
	height: 0px;
}

.surveys-list .btn-group {
    margin: 0 auto;
    float: none;
}

.survey-contact.col-xs-12 {
    padding-top: 20px;
}
/* END 2019-03-13 Marcel: Adjusted styles for "List surveys" screen */




/* 2019-04-04 Marcel: Improved display for split up array questions */
@media only screen and (max-width: 760px), (max-device-width: 1024px) and (min-device-width: 768px)
{
    .table-hover > tbody > tr:hover, 
    tr.answers-list:hover, 
    .array-flexible-column tr.answers-list:hover {
        background-color: initial; 
        color: initial;
    }   
    tr.ls-odd, .array-flexible-column tr.answers-list:nth-child(even) {
        background-color: transparent;
    }
    
    table.ls-answers > tbody > tr:nth-child(even):hover {
        background-color: transparent;
    }
    
    table.ls-answers > tbody > tr:nth-child(odd):hover {
    	background-color: transparent;
	}


    
    table.ls-answers > tbody > tr td.answer-item.radio-item,
    table.ls-answers > tbody > tr td.answer-item.checkbox-item {
        border-bottom: 1px solid #ddd;
        padding-left: 30px;
        padding-top: 10px;
        padding-bottom: 0px;
    }
    
    td.answer-item.radio-item.answer_cell_ noanswer-item,
    td.answer-item.checkbox-item.answer_cell_ noanswer-item {
        border-bottom: 0px;
    }
    .array-flexible-row .ls-answers .answertextright {
        text-align: left;
    }
    
    table.ls-answers > tbody > tr.ls-heading-repeat
    {
        display: none;
    }
    
    table.ls-answers > tbody > tr th.answertext,
    table.ls-answers > tbody > tr th.answertextright {
        font-size: 120%;
    }
    
    
    
    table.ls-answers > tbody > tr td.radio-item:hover, 
    table.ls-answers > tbody > tr td.checkbox-item:hover {
	    color: #000;
	}
    
}

/* 2019-05-03 Marcel: Left align item text at multiplce choice with comment */
.multiple-opt-comments .checkbox-text-item .answer-item .checkbox-label
{
    text-align: left;
}


/* 2019-05-09 Marcel: Styles for Bootstrap tooltips */
span.tooltip
{
    cursor: pointer;
    text-decoration: underline;
    font-weight: bold;
    color: #a94442;
    opacity: 1;
    font-size: inherit;
    position: initial;
    display: inline;
}


/* Add class "tooltipquestion" at the "Display" section of your question! */
.tooltipquestion li.radio-item label, 
.tooltipquestion li.checkbox-item label {
    width: 100%;
}

.answer-item .tooltip .tooltip-inner {
    max-width: 75%;
    margin: auto;
}
/* Make sure sliders with tooltips still use same defaults */
.answer-item .slider .tooltip .tooltip-inner {
    max-width: initial;
}

/* Align modal on top */
.modal::before {
    height: auto;
    vertical-align: top;
}

/* Hide tip */
.ls-em-tip {
  display: none;
}
.ls-em-error {
  display: block;
}
.text-danger {
    color: #E75041;
}

.script-container {
  height: 0;
}

.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
  color: #E75041;
}


/* 2020-04-19 Marcel Minke: highlight disabled dates */
.bootstrap-datetimepicker-widget table td.disabled, .bootstrap-datetimepicker-widget table td.disabled:hover {
	background-color: lightgray;
}

.daterangepicker .ranges li.active,
.daterangepicker td.active {
    background-color: #183c55;
}

.calendar-table td.future {
    background-color: white !important;
}

.calendar-table td.disabled,
.bootstrap-datetimepicker-widget table td.disabled.previous-selection,
.bootstrap-datetimepicker-widget table td.disabled.previous-selection:hover {
    color: #000;
    background-color: #96BE0D;
    opacity: 0.4;
}