#survey-project {
  color: #222;
  background: none;
  font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
  min-height: 400px;
  font-size: 15px !important;
  text-align: left;
  line-height: 1.4;
}

.editable {
  cursor: pointer;
  border-bottom: 1px dotted #000;
}

.editable:hover {
  background: #ffc;
}

#survey-project-header {
}

#survey-project-footer {
  position: relative;
  z-index: 2147483646 !important;
  /*margin-bottom: 1000px;*/
}

.formButtonRow {
  margin-top: 1em;
}

/* input styles */
#survey input[type=text], #survey input[type=password], #survey textarea {
  margin: 0 !important;
  padding: 1px;
  width: auto !important;
  white-space: normal !important;
  float: none !important;
}

#survey input[type=radio], #survey input[type=checkbox], #editMode, #includeInfo, #isMobile {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
  float: none !important;
}

#survey optgroup {
  font-weight: bold;
}

#survey option {
  line-height: 1px !important;
  font-weight: normal;
  padding: 0 !important;
  margin: 0 !important;
}

/* survey */
#survey, .survey {
  border: 1px solid;
  border-left: 10px solid;
  padding: 1em;
  /*height: 100%;*/
  min-height: 200px;
}

#survey .courseInfo {
  margin: 1em 0;
  font-style: italic;
  font-weight: bold;
}

.question table.l td {
  padding: .5em;
  vertical-align: middle;
  line-height: inherit !important;
}

.question label {
  margin: 0 !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

.formular {
  border: 1px solid;
  padding: 10px;
  width: auto;
}

#survey #surveyHead {
  border: 1px solid;
  margin-bottom: 30px;
  padding: 5px;
}

#survey-title h1 {
  padding-top: 0;
  margin-top: 0;
  font-size: 1.8em;
}

#survey #surveyDescription {
}

#survey #surveyDuration {
}

/* sections */
h1.survey-section, h2.survey-section, h3.survey-section, h4.survey-section, h5.survey-section, h6.survey-section {
  margin: .5em 0 !important;
  font-weight: bold;
}

h1.survey-section {
  font-size: 1.7em;
}

h2.survey-section {
  font-size: 1.5em;
}

h3.survey-section {
  font-size: 1.3em;
}

h4.survey-section {
  font-size: 1.1em;
}

h5.survey-section {
  font-size: 1.0em;
}

/* questions */
.question-wrapper {
  page-break-inside: avoid;
}

.question {
  font-size: 1em;
  border: 1px solid;
  padding: 5px;
  margin-bottom: 5px;
  page-break-inside: avoid;
}

.questionHeader {
  font-size: 1em;
  margin-bottom: .5em;
  padding: .5em;
}

.questionText {
  font-weight: bold;
}

.questionText > p {
  margin: 0;
  padding: 0;
}

.preQuestionTitle {
  margin-top: 1.5em;
}

.preQuestionText {
  margin-bottom: .5em;
}

.questionAdvice {
  margin-top: .5em;
  font-style: italic;
}

.questionContent {
  font-size: 1em !important;
  font-weight: normal;
  padding: .5em;
}

.questionContent li {
  /*list-style: none;*/
}

.selectItemGroup {
  background: none;
  font-weight: bolder;
  margin: 1em 0 0.5em 0;
}

.selectItemGroupCell {
  background: none;
  font-weight: bold;
  padding: 1em 0.5em 1em 0;
}

.selectItemBatteryGroupCell {
  background: none;
  font-weight: bold;
  padding: 5px;
}

.singleSelectQuestionTableCell table, .multipleSelectQuestionTableCell table {
  background: none;
  border: none;
  margin: 0;
}

/* single/multiple select questions */
.singleSelectQuestion, .multipleSelectQuestion {
  border: 1px solid;
}

.singleSelectQuestionTable, .multipleSelectQuestionTable {
  border: 0;
}

.singleSelectQuestionTableCell, .multipleSelectQuestionTableCell {
  padding: .25em 1em .25em 0;
}

.singleSelectQuestionItemText, .multipleSelectQuestionItemText {
  padding: .2em;
  vertical-align: middle;
}

.singleSelectQuestionInputCell, .multipleSelectQuestionInputCell {
  padding: .2em;
  width: 1px !important;
  text-align: center !important;
  vertical-align: middle;
}

.noAnswerCell {
  padding-top: 2em;
  font-style: oblique;
}

.noAnswerCell label {
  background-color: #eee;
}

.singleSelectQuestion ul, .multipleSelectQuestion ul, .singleSelectQuestion ol, .multipleSelectQuestion ol {
  list-style: none outside;
}

/* single select battery questions */
.singleSelectBatteryQuestion {
  border: 1px solid;
  padding: 5px;
  margin-bottom: 5px;
}

.singleSelectBatteryQuestionTable {
  border-spacing: 0;
  border: 1px solid;
  border-right: 2px solid;
  border-bottom: 2px solid;
  border-collapse: separate;
  empty-cells: show;
  table-layout: fixed;
}

thead {
  display: table-header-group !important;
}

tfoot {
  display: table-row-group !important;
}

tr {
  page-break-inside: avoid !important;
}

td {
  page-break-inside: avoid !important;
}

.singleSelectBatteryQuestionTableTwoside {
  border-spacing: 0;
  border: 0 solid;
  border-right: 0 solid;
  border-bottom: 0 solid;
  border-collapse: separate;
  empty-cells: show;
}

.singleSelectBatteryQuestionTableFirstRow {
}

.singleSelectBatteryQuestionTableSecondRow {
}

.singleSelectBatteryQuestionTableHoverRow {
}

.singleSelectBatteryQuestionTableInputCell {
  padding: .5em;
  text-align: center;
  vertical-align: middle;
  border: 0 solid;
  border-left: 1px solid;
  border-top: 1px solid;
}

.singleSelectBatteryQuestionTableInputCanNotSayCell {
  padding: .5em;
  text-align: center;
  border-left: 5px solid;
  border-top: 1px solid;
  vertical-align: middle;
}

.singleSelectBatteryQuestionTableScaleItemCell {
  font-size: 1em;
  font-weight: bold;
  border-bottom: 1px solid;
  border-left: 1px solid;
  padding: .5em;
  text-align: center;
  vertical-align: middle;
  width: 50px;
}

.singleSelectBatteryQuestionTableScaleItemCanNotSayCell {
  font-size: 1em;
  font-weight: bold;
  border-bottom: 1px solid;
  border-left: 5px solid;
  border-left-width: 5px !important;
  padding: .5em;
  text-align: center;
  width: 50px;
  vertical-align: middle;
}

/* empty upper-left cell */
.singleSelectBatteryQuestionTableHeaderCell {
  text-align: left;
  border-bottom: 1px solid;
  border-right: 1px solid;
  vertical-align: middle;
  padding: .5em;
  font-size: 1em;
}

.singleSelectBatteryQuestionTableScaleHeaderCell {
  text-align: center;
  vertical-align: middle;
  padding: .5em;
  font-size: 1em;
}

.singleSelectBatteryQuestionSpacerCell {
  width: 10px !important;
  border-left-width: 1px !important;
}

.singleSelectBatteryQuestionTableHeaderCellLeft {
  text-align: left;
  border-bottom: 0 solid;
  border-right: 0 solid;
  vertical-align: middle;
  padding: .5em;
  font-size: 1em;
}

.singleSelectBatteryQuestionTableHeaderCellRight {
  text-align: left;
  border-bottom: 0 solid;
  border-right: 0 solid;
  vertical-align: middle;
  padding: .5em;
  font-size: 1em;
}

.singleSelectBatteryQuestionTableQuestionCell {
  font-weight: normal !important;
  font-size: 1em;
  border-right: 0 solid;
  border-top: 1px solid;
  text-align: left;
  padding: .5em;
  width: 600px;
  vertical-align: middle;
}

.singleSelectBatteryQuestionTableQuestionCellLeft {
  font-weight: normal !important;
  font-size: 1em;
  border-right: 1px solid;
  border-top: 1px solid;
  text-align: right;
  padding: .5em;
  width: 300px;
  vertical-align: middle;
}

.singleSelectBatteryQuestionTableQuestionCellRight {
  font-weight: normal !important;
  font-size: 1em;
  border-left: 1px solid;
  border-top: 1px solid;
  text-align: left;
  padding: .5em;
  width: 300px;
  vertical-align: middle;
}

/* sections */
#survey div.section, #survey div.subSection, #survey div.subSubSection {
  margin-top: 10px;
  margin-bottom: 10px;
  border: 1px solid;
  padding: 5px;
  line-height: 1.3;
}

#survey div.section {
  font-size: 1.5em;
}

#survey div.subSection {
  font-size: 1.3em;
}

#survey div.subSubSection {
  font-size: 1em;
}

/* question groups */
#survey .questionGroup {
  border: 1px solid;
  padding: 5px;
  margin-bottom: 5px;
}

#survey .questionGroupTable {
}

#survey .questionGroupTableCell {
  vertical-align: top;
  font-size: inherit;
}

#survey .questionGroupTitle {
  font-size: 1em;
  font-weight: bold;
  margin-bottom: 5px;
}

#survey .questionGroupAdvice {
  font-size: 1em;
  font-style: normal;
}

/* additional selects */
#survey .additionalSelect {
  margin-top: 1em;
}

/* progress bar */
#progressBar {
  border: 1px solid #999;
  margin: 0 0 1em 0;
}

#progressBar .stepDone {
  border-right: 1px solid;
}

#progressBar .stepOpen {
}

#survey .invisible {
  display: none;
}

#survey .ui-widget-content {
  padding: 0 !important;
}

#survey .varInfo {
  font-size: 0.75em;
  color: #ff0000;
}

/**
 * drag and drop questions (multiple select)
 */

#survey .multiple-drag #items {
  /*float: left;*/
  /*width: 50%;*/
  min-height: 12em;
}

* html #survey .multiple-drag #items {
  height: 12em;
}

/* IE6 */
#survey .multiple-drag .draggable-item.custom-state-active {
  background: #eee;
}

#survey .multiple-drag .draggable-item li {
  float: left;
  /*width: 96px;*/
  padding: 0.4em;
  margin: 0 0.4em 0.4em 0;
  text-align: left;
}

#survey .multiple-drag .draggable-item li h5 {
  margin: 0 0 0.4em;
  cursor: move;
}

#survey .multiple-drag .draggable-item li a {
  float: right;
}

#survey .multiple-drag .draggable-item li img {
  width: 100%;
  cursor: move;
}

#survey .multiple-drag #target {
  /*float: right;*/
  /*width: 32%;*/
  min-height: 18em;
  padding: 1%;
}

* html #survey .multiple-drag #target {
  height: 18em;
}

/* IE6 */
#survey .multiple-drag #target h4 {
  line-height: 16px;
  margin: 0 0 0.4em;
}

#survey .multiple-drag #target .draggable-item h5 {
  display: none;
}

#survey [class*="span"] {
  margin-left: auto !important;
}

.surveySubmitButton, #survey input[type=submit] {
  font-size: 1.2em !important;
  font-weight: bolder !important;
  margin-right: 0.5em !important;
}

/** reports */

.report-preface {
  font-style: italic;
}

.report-score {
  float: right;
  width: 150px;
  white-space: nowrap;
  clear: both;
  border: 1px solid red;
  padding: 0.5em;
  font-weight: bold;
  text-align: center;
}

.report-section-header {

}

.report-section-remarks {

}

.report-element-header {
  padding: 0.5em;
  border: 1px solid #ccc;
  background: #eee;
}

.report-question-answers-right {

}

.report-question-remarks {
  border: 1px solid #ccc;
  background: #eee;
  padding: 1em;
  float: right;
  width: 100px;
}

#sectionBreadcrumb {
  border-bottom: 0 solid;
}

.sectionBreadcrumbItem {
  border-top: 1px solid;
  border-right: 1px solid;
  border-left: 1px solid;
  /*border-bottom: none !important;*/
  padding: 0.25em 0.25em 0 0.25em;
  text-align: center;
  white-space: nowrap;
  font-size: 1em;
}

.questionLine {
  float: left;
  height: 1px;
}

.questionLine.active {
  height: 1px;
}

#survey-ask-for-email {
  border: 1px solid #ccc;
  background-color: #FAFAFA;
  padding: 0.5em;
}

.error, .notice, .success {
  padding: .25em;
  margin-bottom: 1em;
  border: 2px solid #ddd;
}

.error {
  background: #FBE3E4;
  color: #8a1f11;
  border-color: #FBC2C4;
}

.notice {
  background: #FFF6BF;
  color: #514721;
  border-color: #FFD324;
}

.success {
  background: #E6EFC2;
  color: #264409;
  border-color: #C6D880;
}

#survey select {
  width: auto !important;
}

#survey input:invalid {
  border: 1px solid red;
}

#survey input:invalid:required {
  /*background-image: linear-gradient(to right, pink, lightgreen);*/
}

#survey input:valid {
}

li ul, li ol {
  margin: 0 1.5em!important;
}

ul, ol {
  /*margin: 0 1.5em 1.5em 1.5em!important;*/
}

ul.list li {
  list-style-type: disc!important;
  padding: 2px 0!important;
}

ol.list li {
  list-style-type: decimal!important;
  padding: 2px 0!important;
}
