/* QUESTIONNAIRE */
.surquest-questionnaire-header {
	display: flex;
	flex-flow: row;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid #ddd;
	margin-top: 20px;
}

.surquest-questionnaire-header img {
	max-height: 115px;
}

/* QUESTION CONTAINER */
.surquest-question {
	padding-bottom: 60px;
	padding-top: 50px;
	padding-left: 50px;
	padding-right: 50px;
	border-bottom: 1px solid #ddd;
}

.surquest-question-text {
	font-size: 19px;
}

.surquest-question-instruction {
	font-size: 17px;
}

.surquest-question-items {
	margin-left: 30px;
}

.surquest-progress-container {
	width: 100%;
	height: 10px;
	border-bottom: 1px solid #ddd;
}

.surquest-progress-bar {
	background-color: #808080;
	height: 100%;
	border-radius: 2px;
}

.surquest-gq-response {
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 20px;
	width: 100%;
}

.surquest-hidden {
	display: none !important;
}

.surquest-input-hidden {
	opacity: 0;
}

.surquest-controls {
	padding-top: 30px;
	padding-bottom: 100px;
}

.surquest-controls-button {
	background-color: grey;
	border-radius: 3px;
	border: 1px solid grey;
	padding: 5px 30px 5px 30px;
	color: white;
}

.surquest-controls-button:hover {
	background-color: #A9A9A9;
}

.surquest-invalid {
	color:  #b30000;
}

/* FILE UPLOAD QUESTION */
.sq-file-upload-interface-container{
	display: inline-block;
}

.sq-file-upload-interface{
    padding: 10px 20px 10px 20px;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

.sq-fileupload-input{
	color: grey;
}

.sq-fileupload-info{
	font-size: 0.8rem;
	color: grey;
    font-style: italic;
    padding-left: 5px;
}

.surquest-invalid-upload-infobox {
	padding: 2px 10px 2px 10px;
	margin-top: 30px;
	border: 1px solid #d70000;
	border-radius: 4px;
	font-size: 0.85rem;
	color: #d70000;
	background-color: #fff3f3;
	width: 60%;
}

.surquest-invalid-infobox {
	color: #b30000;
	font-size: 0.9rem;
	border-radius: 3px;
	padding-left: 10px;
	padding-right: 10px;
	margin-bottom: 20px;
}

.surquest-invalid-tablerow {
	background-color: #dc35451c !important;
	color: #b30000;
	border-bottom: 1px solid #f2f2f2;
}

#sq-fileupload-msg-box {
	margin-top: 40px;
    padding: 10px;
    border: 2px solid grey;
    border-radius: 5px;
    max-width: 50%;
}

.sq-msg-box-title {
	font-size: 1rem;
    font-weight: bold;
}

.surquest-success-infobox {
	color: green;
	padding-top: 30px;
	padding-bottom: 20px;
}

.surquest-success-addendum {
	color: green;
	font-size: 0.75rem;
	margin: 0;
}

.surquest-fail-addendum {
	color: #b30000;
	font-size: 0.75rem;
	margin: 0;
}

.surquest-overlay {
	position: fixed;
	display: none;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0,0,0,0.5);
	z-index: 2;
	cursor: pointer;
}

.surquest-overlay-text {
	position: absolute;
	top: 60%;
	left: 50%;
	font-size: 50px;
	color: white;
	transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
}

.surquest-loader {
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	text-align: center;
	border: 13px solid #f3f3f3;
	border-top: 13px solid #009933;
	border-radius: 50%;
	width: 80px;
	height: 80px;
	animation: spin 2s linear infinite;
	transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/* CHOICE QUESTION */
.surquest-choice-item {
	padding-bottom: 5px;
}

.rb-cb-label {
	cursor: pointer;
}

.rb-cb-label input {
	vertical-align: middle;
}

.rb-cb-label input[type="radio"],
.rb-cb-label input[type="checkbox"]  {
	cursor: pointer;
}

/* OPEN QUESTION */
.surquest-oq-textarea {
	resize: none;
	width: 100%;
	min-height: 150px;
	border-radius: 3px;
	border: 1px solid gray;
	padding: 10px;
	font-size: 0.9rem;
}

/* MATRIX QUESTION */
.mq-table,
.dq-table {
	display: table;
	table-layout: fixed;
	width:100%;
	text-align: center;
}

.mq-table th,
.dq-table th {
	font-weight: normal;
	font-size: 0.9rem;
	vertical-align: bottom;
}

.mq-table thead tr th:first-child,
.mq-table tbody tr td:first-child,
.dq-table thead tr th:first-child,
.dq-table tbody tr td:first-child {
	width: 45%;
	padding-left: 10px;
}

.mq-table tbody tr:last-child,
.dq-table tbody tr:last-child {
	border-bottom: 1px solid #f2f2f2;
}

.mq-table tbody tr:nth-child(odd),
.dq-table tbody tr:nth-child(odd) {
	background-color: #f2f2f2;
}

.mq-table tbody tr:hover,
.dq-table tbody tr:hover {
	background-color: #e6e6e6;
}
.mq-table tbody tr td:not(:first-child),
.dq-table tbody tr td:not(:first-child) {
	width: auto;
}

.mq-table tbody td,
.dq-table tbody td {
	padding-bottom: 10px;
	padding-top: 10px;
}

.mq-table-td-item,
.dq-table-td-item {
	text-align: left;
}

.mq-table-td-input,
.dq-table-td-input {
	text-align: center;
	vertical-align: middle;
	display: table-cell;
}

.mq-table-td-input label,
.dq-table-td-input label {
    display: block;
    margin-left: 8px;
    margin-right: 8px;
    cursor: pointer;
    min-height: 100%;
    height: auto !important;
    height: 100%;
}

.mq-table-td-input label input[type="radio"],
.dq-table-td-input label input[type="radio"] {
	cursor: pointer;
}

.mq-table-td-input label input,
.dq-table-td-input label input {
	vertical-align: middle;
}

.mq-header,
.mq-repeated-header {
	border-top: none;
}

.mq-repeated-header {
	vertical-align: bottom;
	font-size: 0.9rem;
}

.mq-scale-border-left {
	border-left: 1px solid #c7c7c7;
}

/* DIFFERENTIAL QUESTION */
.dq-table thead tr th:first-child,
.dq-table tbody tr td:first-child {
	width: auto !important;
	padding-left: 10px;
}

.dq-table thead tr th:last-child,
.dq-table tbody tr td:last-child {
	width: auto !important;
	padding-left: 10px;
}

.dq-table-td-item-right,
.dq-table-td-item-right {
	width: 25%;
}

.dq-table-td-item-left {
	float: right;
}
.dq-table-td-item-right {
	float: left;
}

/* LIST QUESTION */
.surquest-list-input-container {
	width: 100%;
	padding-bottom: 10px;
}
.surquest-list-input {
	width: 80%;
    max-width: 300px;
	border-radius: 2px;
    border: 1px solid #a9a9a9;
    padding-left: 5px;
    padding-right: 5px;
}


/* FILE FEEDBACK QUESTION */
.ffq-table-container {
	background: white;
	overflow-x: scroll;
	box-shadow: 0 0 5px 0 rgba(0,0,0,.2);
	max-height: 500px;
}

.ffq-table {
	display: table;
	width:100%;
	background-color: white;
	border: 0;
	font-size: 0.75rem;
	white-space: nowrap;
}

.ffq-table tr {
	line-height: 20px;
}

.ffq-table td,
.ffq-table th {
	padding: 5px 10px 5px 10px;
}

.ffq-table tbody tr:nth-child(odd) {
	background-color: #f2f2f2;;
}

.ffq-confirmation {
	padding-top: 30px;
}

/* Collapsible Box */
.sq-collapsible {
  background-color: #777;
  color: white;
  cursor: pointer;
  padding: 12px;
  width: 100%;
  border: none;
  border-radius: 5px 5px 0px 0px;
  text-align: left;
  outline: none;
  font-size: 15px;
}

.active, .sq-collapsible:hover {
  background-color: #555;
  cursor: pointer;
}

.sq-collapsible:after {
  content: '\002B';
  color: white;
  font-weight: bold;
  float: right;
  margin-left: 5px;
}

.active:after {
  content: "\2212";
}

.sq-collapsible-content {
  padding: 12px;
  display: none;
  overflow: hidden;
  background-color: #f1f1f1;
}


@media (max-width: 576px) {
	/* GENERAL QUESTIONNAIRE LAYOUT */
	.surquest-questionnaire-header {
		flex-flow: column;
		justify-content: space-between;
		align-items: center;
		min-height: 100px;
	}

	.surquest-questionnaire-header img {
		max-height: 85px;
	}

	.surquest-question{
		padding-left: 10px;
		padding-right: 0px;
  }


	/* MATRIX QUESTION */
	.mq-table {
		text-align: left;
	}

	.mq-table tbody {
		float: left;
		width: 100%;
	}

	.mq-table thead {
		height: 1px;
		width: 1px;
		margin: -1px;
		clip: rect(0 0 0 0);
		overflow: hidden;
		position: absolute;
	}

	.mq-table th {
		display: block;
	}

	.mq-table tr {
		display: block;
		padding-bottom: 20px;
	}

	.mq-table tbody tr:not(:first-child) {
		padding-top: 20px;
		border-top: 1px solid lightgrey;
	}

	.mq-table td {
		display: block;
		text-align: left;
	}

	td.mq-table-td-item {
		text-align: left;
		padding-bottom: 5px;
	}

	.mq-table td label::after {
		content: attr(data-label);
		padding-left: 5px;
		font-size: 0.8rem;
	}

	.mq-table-td-input {
		padding-left: 20px;
	}

	.mq-table-td-input label {
		display: inline-block;
		width: 100%;
	}

	.mq-table thead tr th:first-child,
	.mq-table tbody tr td:first-child {
		width: auto;
		padding-left: 10px;
		padding-bottom: 5px;
	}

	.mq-table tbody tr:nth-child(odd) {
		background-color: inherit;
	}

	.mq-table tbody tr:last-child {
	    border-bottom: none;
	}

	.mq-table tbody tr td:nth-child(even) {
		background-color: #f2f2f2;
	}

	.mq-table tbody tr td:not(:first-child):hover {
		background-color: #e6e6e6;
	}

	.mq-table tbody tr:hover {
		background-color: inherit;
	}

	.mq-table tbody td {
		padding-bottom: 0;
		padding-top: 0;
	}

	.mq-repeated-header {
		display: none !important;
	}


	/* DIFFERENTIAL QUESTION */
	.dq-table tbody tr td {
		width: 100% !important;
		padding-left: 0px;
		padding-bottom: 5px;
	}

  .dq-table-td-input label {
		margin-left: 0;
		margin-right: 0;
	}


	/* FILE UPLOAD */
	.sq-fileupload-input{
		margin-bottom: 20px;
	}

	#sq-fileupload-msg-box {
	    max-width: 100%;
	}
}
