.mhqb-wrap {
	max-width: 760px;
	margin: 0 auto;
	font-family: inherit;
	background: #ece6e6;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(0,0,0,0.08);
}

.mhqb-header {
	background: #6e1414;
	color: #fff;
	padding: 18px 25px;
}
.mhqb-header h2 { margin: 0; color: #fff; font-size: 20px; }
.mhqb-subheader {
	background: #e8552f;
	color: #fff;
	margin: 0;
	padding: 12px 25px;
	font-size: 15px;
}

.mhqb-description { padding: 15px 25px 0; }

.mhqb-form { padding: 20px 25px 30px; }

.mhqb-field { margin-bottom: 16px; }
.mhqb-field label { display: block; font-weight: 600; margin-bottom: 5px; }
.mhqb-field input,
.mhqb-field select,
.mhqb-field textarea {
	width: 100%;
	max-width: 100%;
	padding: 9px 12px;
	border: 1px solid #c9c2c2;
	border-radius: 4px;
	box-sizing: border-box;
}
.req { color: #d63638; }

.mhqb-question { margin-bottom: 24px; }
.mhqb-question h4 { margin: 0 0 8px; font-size: 16px; }
.mhqb-q-desc { font-size: 13px; color: #555; margin: 0 0 8px; }
.mhqb-answers { display: flex; flex-direction: column; gap: 8px; }
.mhqb-answer {
	display: flex;
	align-items: center;
	gap: 8px;
	background: #fff;
	padding: 10px 14px;
	border-radius: 4px;
	border: 1px solid #ddd;
	cursor: pointer;
}
.mhqb-answer input { margin: 0; }
.mhqb-answer:hover { border-color: #e8552f; }

.mhqb-progress {
	background: #d7cfcf;
	height: 8px;
	border-radius: 4px;
	overflow: hidden;
	margin: 20px 0;
}
.mhqb-progress-bar {
	background: #e8552f;
	height: 100%;
	transition: width 0.3s ease;
}

.mhqb-btn {
	background: #6e1414;
	color: #fff;
	border: none;
	padding: 11px 26px;
	border-radius: 4px;
	font-size: 15px;
	cursor: pointer;
}
.mhqb-btn:hover { background: #8a1a1a; }
.mhqb-nav { display: flex; justify-content: space-between; }
.mhqb-prev-btn { background: #8a8a8a; }
.mhqb-prev-btn:hover { background: #6f6f6f; }

.mhqb-result-wrap { padding: 30px 25px; }
.mhqb-result-card { text-align: center; }
.mhqb-result-image { max-width: 260px; margin: 0 auto 15px; display: block; }
.mhqb-result-title { color: #6e1414; margin-bottom: 6px; }
.mhqb-result-score { font-weight: 600; margin-bottom: 15px; }
.mhqb-result-content { text-align: left; }

.mhqb-error { border-color: #d63638 !important; box-shadow: 0 0 0 1px #d63638; }
.mhqb-error-question { border: 1px solid #d63638; border-radius: 4px; padding: 8px; }

@media (max-width: 600px) {
	.mhqb-header, .mhqb-subheader, .mhqb-form { padding-left: 16px; padding-right: 16px; }
}
