.question-response-body {
    padding: 20px 10px;
    width: 100%;
}
.question-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 */
.open-question-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;
}

@media (max-width: 576px) {
	/* 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;
	}
}
