/******************
    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, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.42857143;
  color: #333;
  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: #204ca1;
  text-decoration: none;
}

.question-text a {
  color: yellow;
  text-decoration: none;
}

a:hover,
a:focus {
  color: #009F97;
  text-decoration: none;
}
img {
    max-width: 100%;
}

/* Navbar */
.header-wrapper {
  margin-bottom: 15px;
}
.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;
  text-transform: uppercase;
  color: #000;
  font-weight: bold;
  height: auto;
  line-height: 130%;
  font-size: 36px;
  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;
}

@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;
  }
}

/* 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: #f0f0f0;
  margin-bottom: 0;
}
.progress-bar {
  background-color: #048a83;
}

/* 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 #eee;
  background-color: #eee;
}
p.ls-privacy-body {
  margin: 15px 0 0 0;
  font-style: italic;
}

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

/* Question layout */
.question-number, .question-code {
	float: none;
	margin: 0;
}
.question-container {
    background-color: #fff;
    margin-bottom: 30px;
    padding-bottom: 15px;
    border: 1px solid #aaa;
}
.input-error.question-container {
    border: 1px solid #a94442;
}
.question-title-container {
    padding: 8px 15px;
    background-color: #204ca1;
    color: #FFF;
    margin-bottom: 15px;
}
.question-text {
  font-weight: 500;
}
.question-valid-container {
  padding-left: 0;
  padding-right: 0;
  font-style: italic;
  font-size: 80%;
  color: #FFF;
}

.question-valid-container .text-danger {
  color: orange;
  font-weight: normal;
}

.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: #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: #888;
}
.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: 100%;
  font-weight: 700;
  border-radius: 4px;
  padding: 10px 24px 10px 24px;
}
a.btn-primary {
  color: #fff;
}
.btn-primary {
  color: #ffffff;
  background-color: #204ca1;
  border-color: #204ca1;
}
.btn-primary:hover {
  color: #ffffff;
  background-color: #048a83;
  border-color: #048a83;
}
.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: #048a83;
  border-color: #048a83;
}
.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: #333;
}
/* checkboxes */
.checkbox-item label::before {
  border: 1px solid #aaa;
  background-color: #FFF;
}
.checkbox-item label::after {
  color: #333;
  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: #ddd;
  border: 1px solid #ddd;
  margin-bottom: 5px;
}
.sortable-rank {
  padding: 5px;
}
.sortable-rank .ls-choice.sortable-item {
  background-color: #048a83;
  border: 1px solid #048a83;
  margin-bottom: 5px;
  color: #fff;
}

/* Gender question */
.gender-button .btn-primary {
  color: #333;
  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 {
  color: #FFF;
  background-color: #048a83;
  border-color: #048a83;
  border: 2px solid #fff;
}

/* Yes No question */
.yes-no .btn-primary {
  color: #333;
  background-color: #eee;
  border-color: #eee;
  border: 2px solid #FFF;
}
.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 {
  color: #FFF;
  background-color: #048a83;
  border-color: #048a83;
  border: 2px solid #FFF;
}

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

/* Slider question */
.slider-handle {
    background-color: #333;
    background-image: -webkit-linear-gradient(top, #555 0%, #222 100%);
    background-image: -o-linear-gradient(top, #555 0%, #222 100%);
    background-image: linear-gradient(to bottom, #555 0%, #222 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);
}

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

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

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

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


/* 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-02 Marcel: Improvements for "Memorandum" form */
.boilerplate,
.pdfreport-question
{
    border: none !important;
    margin-bottom: 0;
}

.boilerplate .question-title-container,
.pdfreport-question .question-title-container
{
    border: none !important;
    background-color: #fff;
    color: #000;
    margin-bottom: 0;
    padding: 0;
}


/* 2019-04-02 Marcel: Special styles for certain report tables */
.summarytable
{
    width: 100%;
    margin-bottom: 30px;
}

.summarytable td {
    padding: 5px;
}


table.t2
{
    font-weight: bold;
}

/* OLD 
table.t4
{
    border: none;
    text-align: center;
}

.t4 td {
    border-color: #fff;
}

.t4 td.with-border
{
    text-decoration: underline;
}
*/

.commenttext
{
    font-style: italic;
}
/* Equalize the visual height of selected question boxes */
.question-container.same-height {
  min-height: 150px;                 /* adjust to taste (130–170px usually looks right) */
}

/* Make the actual input controls the same vertical size */
.question-container.same-height input[type="text"],
.question-container.same-height input.numeric,
.question-container.same-height .form-control {
  height: 38px;
  line-height: 38px;
  padding-top: 6px;
  padding-bottom: 6px;
}

/* Optional: keep content nicely centered within the white answer area */
.question-container.same-height .answer-container,
.question-container.same-height .ls-answers,
.question-container.same-height .input-group,
.question-container.same-height .form-group {
  display: flex;
  align-items: center;               /* vertical centering */
  gap: .5rem;                        /* nice spacing between prefix (e.g., W3993-) and input */
  flex-wrap: wrap;
}
/* Darken question text */
.ls-question-text,
.ls-answers label,
.ls-answers td {
    color: #222222 !important; /* dark gray for readability */
}

/* Style links inside survey */
.ls-question-text a,
.ls-answers a,
.ls-question-help a,
.ls-questionhelp a,
.ls-question a {
    color: #0645AD !important; /* accessible dark blue */
    text-decoration: underline; /* optional for clarity */
}

.ls-question-text a:hover,
.ls-answers a:hover,
.ls-question-help a:hover,
.ls-questionhelp a:hover,
.ls-question a:hover {
    color: #0B0080 !important; /* darker hover effect */
}
/* Darken question text */
.ls-question-text,
.ls-answers label,
.ls-answers td {
    color: #222222 !important; /* dark gray for readability */
}

/* Style links inside survey */
.ls-question-text a,
.ls-answers a,
.ls-question-help a,
.ls-questionhelp a,
.ls-question a {
    color: #0645AD !important; /* accessible dark blue */
    text-decoration: underline; /* optional for clarity */
}

.ls-question-text a:hover,
.ls-answers a:hover,
.ls-question-help a:hover,
.ls-questionhelp a:hover,
.ls-question a:hover {
    color: #0B0080 !important; /* darker hover effect */
}
/* Darken question text */
.ls-question-text,
.ls-answers label,
.ls-answers td {
    color: #222222 !important; /* dark gray for readability */
}

/* Style links inside survey */
.ls-question-text a,
.ls-answers a,
.ls-question-help a,
.ls-questionhelp a,
.ls-question a {
    color: #0645AD !important; /* accessible dark blue */
    text-decoration: underline; /* optional for clarity */
}

.ls-question-text a:hover,
.ls-answers a:hover,
.ls-question-help a:hover,
.ls-questionhelp a:hover,
.ls-question a:hover {
    color: #0B0080 !important; /* darker hover effect */
}
/* Darken question text */
.ls-question-text,
.ls-answers label,
.ls-answers td {
    color: #222222 !important; /* dark gray for readability */
}

/* Style links inside survey */
.ls-question-text a,
.ls-answers a,
.ls-question-help a,
.ls-questionhelp a,
.ls-question a {
    color: #0645AD !important; /* accessible dark blue */
    text-decoration: underline; /* optional for clarity */
}

.ls-question-text a:hover,
.ls-answers a:hover,
.ls-question-help a:hover,
.ls-questionhelp a:hover,
.ls-question a:hover {
    color: #0B0080 !important; /* darker hover effect */
}
