.hh-quiz-dialog {
	position: fixed;
	inset: 0;
	max-width: 650px;
	width: calc(100% - 30px);
	max-height: 90dvh;
	margin: auto;
	border: 0;
	padding: 35px;
	overflow-y: auto;
	background: white;
	color: #242424;
	z-index: 10000;
}
.hh-quiz-dialog::backdrop {
	background: rgba(0, 0, 0, 0.65);
}
.hh-quiz-dialog h2 {
	padding-right: 30px;
}
.hh-quiz-close {
	position: absolute;
	right: 12px;
	top: 8px;
	background: none;
	color: #242424;
	border: 0;
	font-size: 28px;
	padding: 5px 12px;
}
.hh-quiz-dialog progress {
	width: 100%;
	height: 6px;
	margin: 10px 0 25px;
	accent-color: #212121;
}
.hh-quiz-dialog fieldset {
	border: 0;
	padding: 0;
	margin: 0;
}
.hh-quiz-dialog legend {
	font-size: 21px;
	margin-bottom: 20px;
}
.hh-quiz-dialog label {
	display: block;
	border: 1px solid #ddd;
	padding: 12px;
	margin: 8px 0;
	cursor: pointer;
}
.hh-quiz-dialog label:has(input:checked) {
	border-color: #212121;
	background: #f3f3f3;
}
.hh-quiz-actions {
	display: flex;
	justify-content: space-between;
	gap: 15px;
	margin: 22px 0;
}
.hh-quiz-dialog button {
	border-radius: 0;
	text-transform: none;
}
.hh-quiz-dialog [role='alert'] {
	color: #a00;
}
.hh-quiz-dialog [hidden] {
	display: none !important;
}
.hh-quiz-dialog :focus-visible {
	outline: 2px solid #242424;
	outline-offset: 3px;
}
@media (max-width: 600px) {
	.hh-quiz-dialog {
		width: 100%;
		height: 100dvh;
		max-height: 100dvh;
		padding: 25px 18px;
	}
	.hh-quiz-dialog legend {
		font-size: 19px;
	}
}
/* Shared picker, deliberately isolated from catalog and product form styles. */
.hh-quiz-dialog { max-width:760px; padding:38px; border-radius:16px; box-shadow:0 24px 90px #0004; }
.hh-quiz-eyebrow { text-transform:uppercase; letter-spacing:.12em; font-size:11px; color:#707b67; margin-bottom:12px; }
.hh-quiz-dialog h2 { margin-bottom:8px; font-size:30px; }
#hh-quiz-counter { font-size:13px; color:#666; margin:0; }
.hh-quiz-dialog progress { accent-color:#78886b; }
.hh-quiz-dialog fieldset + fieldset { margin-top:25px; }
.hh-quiz-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.hh-quiz-options label { display:flex; align-items:center; gap:10px; margin:0; padding:14px; border-radius:9px; background:#fafbf8; min-height:68px; }
.hh-quiz-options label:has(input:checked) { border-color:#667557; background:#edf1e7; }
.hh-quiz-options label:has(input:focus-visible) { outline:2px solid #667557; outline-offset:2px; }
.hh-quiz-options input { flex:0 0 auto; margin:0; accent-color:#667557; }
.hh-quiz-option-icon { width:28px; height:28px; flex:0 0 28px; fill:none; stroke:#667557; stroke-width:1.5; object-fit:contain; }
.hh-quiz-actions button { border-radius:8px!important; }
.hh-quiz-actions button:last-child { background:#293426; color:#fff; }
.hh-quiz-restart { background:none; border:0; padding:12px 0; text-decoration:underline; color:#555; }
.hh-quiz-disclaimer, .hh-quiz-privacy { font-size:12px; color:#777; margin-top:12px; }
#hh-quiz-lead { border-top:1px solid #ddd; margin-top:28px; padding-top:24px; }
#hh-quiz-lead label { border:0; padding:0; background:transparent; cursor:default; }
#hh-quiz-lead input:not([type=checkbox]), #hh-quiz-lead select { margin-top:7px; }
#hh-quiz-lead input[type=submit] { width:100%; }
.hh-quiz-dialog button:disabled { opacity:.55; cursor:default; }
.hh-quiz-start .hh-first-options { max-height:300px; overflow:auto; }
@media(max-width:600px) {
 .hh-quiz-dialog { max-width:none; max-height:100dvh; height:100dvh; width:100%; padding:28px 18px; border-radius:0; }
 .hh-quiz-dialog h2 { font-size:25px; }
 .hh-quiz-options { grid-template-columns:1fr; }
 .hh-quiz-options label { min-height:56px; padding:12px; }
 .hh-quiz-actions { position:sticky; bottom:-28px; padding:14px 0; background:#fff; z-index:1; }
}

.hh-first-options label>span {gap:8px}

#hh-quiz-contact-back {margin:18px 18px 0 0;background:#f2f3ef;color:#293426;border-radius:8px}
#hh-quiz-lead .wpcf7-spinner {display:none;margin:12px auto 0}
#hh-quiz-lead form.submitting .wpcf7-spinner {display:block}
#hh-quiz-lead input[type=submit] {text-transform:none;border-radius:8px;background:#293426;color:#fff}
