/******************
    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: 14px;
  line-height: 1.42857143;
  color: #3c4245;
  background-color: #FFF;
  margin: 0 !important;
  padding: 0 !important;
}
#outerwrapper {
  margin-top: 10px;
  margin-bottom: 10px;
  float: none;
  clear: both;
  background-color: #FFF;
}
#outerwrapper #outerwrapper,
#outerwrapper #outerwrapper .container {
  padding: 0;
  width: auto;
}
#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: 1170px;*/
    width: 998px;
  }
}
hr {
  margin: 10px 0;
}
a,
a:link {
  color: #008dc9;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #008dc9;
  text-decoration: none;
}
img {
    max-width: 100%;
}

/* Navbar */
.header-wrapper {
  margin-bottom: 15px;
  background-color: #008dc9;
}
.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;
  min-height: initial;
}
h1.surveyname {
  text-align: center;
  font-weight: 700;
  height: auto;
  line-height: 130%;
  font-size: 19px;
  margin: 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: 60px;
  width: auto;
}
.marker {
	background-color: yellow;
}

@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;
  float: right;
}
.progress {
  background-color: #f0f0f0;
  margin-bottom: 0;
}
.progress-bar {
  background-color: #3c4245;
}

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

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

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

/* 2020-03-11 Marcel: Show custom data privacy text */
.privacy .limit-text-window 
{
    display: block;
    border: none;
}

/* 2020-03-11 Marcel: Optimize custom data privacy text */
.privacy .customprivacytext br 
{
    display: none;
}
.privacy .customprivacytext .row br 
{
    display: initial;
}



/* Group layout */
.group-outer-container {
	display: block;
}
.group-title {
  text-align: center;
  font-weight: normal;
  font-size: 120%;
  margin-top: 0;
  margin-bottom: 5px;
}
.group-description {
  margin-top: 0;
  text-align: center;
}

/* Question layout */
.question-number, .question-code {
	float: none;
	margin: 0;
}
.question-container {
    background-color: #fff;
    margin-top: 30px;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border: 2px solid #ddd !important;
    border-radius: 4px;
    box-shadow: 5px 5px 20px 0 rgba(218,218,218,0.5);
}


.question-text {
    font-size: 100%;
}

.input-error.question-container {
    border: 1px solid #a94442;
}
.question-title-container {
    padding: 8px 15px;
    background-color: #4BB9EB;
    /* OLD
    background-color: #008dc9;
    opacity: 0.7; */
    color: #fff;
    margin-bottom: 15px;
    font-size: 120%;
    border-top-right-radius: 4px;
    border-top-left-radius: 4px;
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
    border-top: 1px solid #eee;
}

.question-valid-container {
  padding-left: 0;
  padding-right: 0;
  font-size: 90%;
}

.question-code {
    color: #c15a1f;
  font-weight: normal;
}

.question-number {
    color: #fff;
  font-weight: normal;
}
.boilerplate .question-number {
    color: #000;
}

.ls-answers tbody .answertext {
  text-align: left;
}
tr.ls-odd,
.array-flexible-column tr.answers-list:nth-child(even) {
  background-color: #f0f0f0;
}
.table-hover > tbody > tr:hover,
tr.answers-list:hover,
.array-flexible-column tr.answers-list:hover {
    background-color: #ddd;
}
.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: 90% !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: 10px;
  color: #3c4245;
}
.numeric-multi input.numeric,
.multiple-short-txt input.form-control,
.multiple-short-txt textarea.form-control {
  margin-bottom: 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: 110%;
  border-radius: 4px;
}
a.btn-primary {
  color: #fff;
}
a.btn-default {
  color: #3c4245;
}
.btn-primary {
  color: #ffffff;
  background-color: #d86422;
  border-color: #d86422;
}
.btn-primary:hover {
  color: #ffffff;
  background-color: #c15a1f;
  border-color: #c15a1f; 
}
.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: #c15a1f;
  border-color: #c15a1f;
}
.input-group-addon.btn-primary {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.btn-default {
    border-color: #adadad;
}

/* Radios and checkboxes */

/* radio buttons */
.radio-item label::before {
  border: 1px solid #aaa;
  background-color: #FFF;
}
.radio-item label::after {
  background-color: #008dc9;
}
/* checkboxes */
.checkbox-item label::before {
  border: 1px solid #aaa;
  background-color: #FFF;
}
.checkbox-item label::after {
  color: #008dc9;
  background-color: transparent;
  width: 17px;
  height: 17px;
  left: -1px;
  top: 0px;
  font-size: 12px;
}


/* Ranking question */
.sortable-choice {
  padding: 5px;
}
.sortable-choice .ls-choice.sortable-item {
  background-color: #eee;
  border: 1px solid #ddd;
  margin-bottom: 5px;
}
.sortable-rank {
  padding: 5px;
}
.sortable-rank .ls-choice.sortable-item {
  background-color: #3c4245;
  border: 1px solid #3c4245;
  margin-bottom: 5px;
  color: #fff;
}

/* Boilerplate question */
/* 2019-04-04 No paddings for boilerplate */
.boilerplate {
    padding-bottom: 0;
}
.boilerplate.question-container {
    border: none !important;
}
/* 2020-05-25 Marcel: No background color and default font color for boilerplate */
.boilerplate .question-title-container {
    margin-bottom: 0;
    background-color: initial;
    color: #000;
}

/* Gender question */
/* Yes/no question */
/* Bootstrap buttons layout */
.gender-button .btn-primary,
.yes-no .btn-primary,
.bootstrap-buttons-div .button-item {
  color: #3c4245;
  background-color: #eee;
  border-color: #eee;
  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: #3c4245;
  border-color: #3c4245;
  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: #008dc9;
    background-image: -webkit-linear-gradient(top, #008dc9 0%, #017fb4 100%);
    background-image: -o-linear-gradient(top, #008dc9 0%, #017fb4 100%);
    background-image: linear-gradient(to bottom, #008dc9 0%, #017fb4 100%);
}
.tooltip-inner {
  background-color: #3c4245;
}
.tooltip.top .tooltip-arrow {
     border-top-color: #3c4245;
}
.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: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%;
}

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: #3c4245 !important;
  background: #3c4245 !important;
  color: #FFF !important;
 }

/* Index */
.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  background-color: #3c4245;
  color: #FFF;
}
.dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
  background-color: #ccc;
}

.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: #f0f0f0;
    }
    
    table.ls-answers > tbody > tr:nth-child(even):hover {
        background-color: #f0f0f0;
    }
    
    table.ls-answers > tbody > tr:nth-child(odd):hover {
    	background-color: #fff;
	}


    
    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;
	    background-color: #ddd;
	}
    
}

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


/* Adjustments for list surveys */
.listsurveys {
    border: none;
    padding: 0;
}


/* 2020-05-16 Marcel Minke: Adjustments for special print layout */
.custom_print_answers h3
{
    font-size: 19px;
}
.bold
{
    font-weight: bold;
}
    

/* 2020-09-01 Marcel: New button for hiding questions or groups */
.hidequestionlink,
.hidegrouplink
{
    float: left;
}

.hidegrouplink
{
    padding-top: 10px;
}

.hidequestionlink
{
    border:none;
    color:#008dc9;
    padding:5px 10px;
    text-align:center;
    text-decoration:none;
    display:inline-block;
    font-size:10px;
    cursor: pointer;
}

.hidegrouplink
{
    border:none;
    color:#d86422;
    padding:5px 10px;
    text-align:center;
    text-decoration:none;
    display:inline-block;
    font-size:12px;
    font-weight: bold;
    cursor: pointer;
}

/* 2020-09-02 Marcel Minke: Hide question code at print view by default */
.question-container-printanswers .printquestioncode {
    display: none;
    font-size: 75%;
    color: #bbb;
    float: left;
    padding-right: 5px;
}





/* Print styles for summary */
@media print 
{
            
    * 
    {
        margin:0;
        padding:0;
        float: none !important;
        overflow: visible !important;
        position: relative;
    }
        
    html, body 
    { 
        height: 99%;
        overflow:visible;
        margin:0;
        padding:0;
        min-height: auto;
    }
    
    /* Special styles for printing backgrounds */
    body {
        -webkit-print-color-adjust: exact; /*Chrome, Safari */
        color-adjust: exact; /*Firefox*/
    }
    
    div
    {
        float: none;
        width: auto;
    }
    
    
    div#outer-wrapper
    {
        width: 90%;
    }
    
    div#outerframeContainer
    {
        margin-top: 0 !important;
        min-height: auto;
    }
    
    
    #main-col
    {
        float: none;
        margin-top: 0 !important;
    }
    
    .summaryprintlink,
    #printlink,
    #topsurveymenubar,
    #bootstrap-alert-box-modal,
    #yii-flash-message,
    .progress-wrapper,
    .summaryheadline,
    .logo-bar,
    .hidequestionlink,
    .hidegrouplink
    {
        display: none !important;
    }
    
    
    /* Page breaks for adjusted print answers screen */
    groupsection {
        page-break-before: always;
    }
    groupsection:first-of-type {
      page-break-before: avoid;
    }
    
    .question-container-printanswers {
      page-break-inside: avoid;
    }
    
    
    h1.surveyname {
        font-size: 24px;
    }
    
    h2, .h2 {
        font-size: 24px;
    }
    
    h3, .h3 {
        font-size: 20px;
    }
    
    .question-container-printanswers .question-text {
      padding-left: 0px;
    }
    
    .question-container-printanswers {
        margin-top: 1em;
        margin-bottom: 1em;
        padding-bottom: 1em;
    }
    
    .question-container-printanswers .col-md-8
    {
        display: table-row;
    }
    
    .question-container-printanswers .col-md-8 .row .col-md-8.text-left
    {
        width: 400px;
        display: table-cell;
    }
    
    .question-container-printanswers .col-md-8 .row .col-md-4.text-right
    {
        width: 200px;
        display: table-cell;
    }
    
    /*  Multi short text optimizations */
    .question-container-printanswers .col-md-8 .row.subquestionitem
    {
        display: table-row;
    }
    
    .col-md-6.text-right.subquestiontext,
    .col-md-6.text-left
    {
        width: 300px;
        display: table-cell;
    }
    
    /*  Add border-bottom to array questions */
    .question-container-printanswers .table-striped tbody tr 
    {
        border-bottom: 1px solid #000;
    }
    
    /* Question text width */
    .question-container-printanswers .col-md-4.question-text
    {
        width: 100%;
    }
    
    /* Array alignment optimizations */
    .arrayquestion .col-md-8.text-right.subquestiontext,
    .arrayquestion .col-md-4.text-left
    {
        display: table-cell;
    }
}


/*
 *  END CSS for customized print answer page 
 */
 
 
 .bottomq .question-title-container,
.middleq .question-title-container{
	background-color: #fff;
    color: black;
	border-top: 0px;	
}
 
 
 