.evq-quiz {
	--evq-green: #527235;
	--evq-green-dark: #3e5628;
	--evq-green-tint: #eef3e8;
	--evq-wrong: #c62828;
	--evq-ink: #1f2933;
	--evq-muted: #5f6b76;
	--evq-line: #e1e6dc;
	max-width: 760px;
	margin: 2rem auto;
	/* Text follows your theme (same as blog text); can be overridden in the quiz settings. */
	font-family: inherit;
	font-size: inherit;
	line-height: 1.6;
	color: var(--evq-ink);
}

.evq-quiz *, .evq-quiz *::before, .evq-quiz *::after { box-sizing: border-box; }

/* Buttons never inherit the theme font by default, so force it. */
.evq-quiz button,
.evq-quiz a.evq-btn {
	font-family: inherit;
	font-size: 1em;
	line-height: 1.3;
}

.evq-card {
	background: #fff;
	border: 1px solid var(--evq-line);
	border-top: 6px solid var(--evq-green);
	border-radius: 14px;
	padding: 1.6em;
	box-shadow: 0 8px 30px rgba(0, 0, 0, .07);
}

.evq-start, .evq-result { text-align: center; }

.evq-quiz .evq-title { margin: 0 0 .4em; font-size: 1.75em; line-height: 1.25; color: var(--evq-green); }
.evq-quiz .evq-intro { color: var(--evq-muted); margin: 0 0 1.3em; font-size: 1em; }

/* Buttons */
.evq-quiz .evq-btn {
	display: inline-block;
	background: var(--evq-green);
	color: #fff;
	border: 0;
	border-radius: 999px;
	padding: .8em 1.9em;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
	transition: transform .15s, box-shadow .15s, background .15s, opacity .15s;
	box-shadow: 0 4px 0 var(--evq-green-dark);
}
.evq-quiz .evq-btn:hover:not(:disabled) { background: #5d8039; color: #fff; transform: translateY(-1px); }
.evq-quiz .evq-btn:active:not(:disabled) { transform: translateY(2px); box-shadow: 0 2px 0 var(--evq-green-dark); }
.evq-quiz .evq-btn:disabled { opacity: .45; cursor: not-allowed; box-shadow: none; }
.evq-quiz .evq-btn-light { margin-top: 1.6em; }

/* Question screen */
.evq-progress { height: 8px; background: var(--evq-line); border-radius: 99px; overflow: hidden; }
.evq-progress-bar { height: 100%; background: var(--evq-green); transition: width .3s; }
.evq-count { margin: .5em 0 1em; color: var(--evq-muted); font-size: .9em; }

.evq-image { display: block; width: 100%; max-height: 360px; object-fit: cover; border-radius: 10px; margin: 0 0 1.1em; }
.evq-quiz .evq-question { margin: 0 0 1em; font-size: 1.4em; line-height: 1.35; color: var(--evq-ink); }

.evq-answers { display: grid; gap: .7em; }

.evq-quiz .evq-answer {
	width: 100%;
	text-align: left;
	background: #fff;
	color: var(--evq-ink);
	border: 2px solid var(--evq-line);
	border-radius: 10px;
	padding: .8em 1em;
	cursor: pointer;
	transition: border-color .15s, background .15s;
}
.evq-quiz .evq-answer:hover { border-color: var(--evq-green); background: var(--evq-green-tint); }
.evq-quiz .evq-answer.evq-selected { border-color: var(--evq-green); background: var(--evq-green-tint); box-shadow: inset 0 0 0 1px var(--evq-green); }

/* Answers with photos: picture cards that always fill the row.
   The number of columns depends on how many answers the question has,
   and the photos scale to the card width (bigger when there are fewer options). */
.evq-answers-images {
	--evq-gap: .8em;
	--evq-cols: 2;
	display: flex;
	flex-wrap: wrap;
	justify-content: center; /* an incomplete last row (3 or 5 answers) is centered */
	gap: var(--evq-gap);
}
.evq-answers-images.evq-n-3,
.evq-answers-images.evq-n-5,
.evq-answers-images.evq-n-6 { --evq-cols: 3; }
.evq-answers-images.evq-n-1 { --evq-cols: 1; }

.evq-quiz .evq-answers-images .evq-answer {
	width: calc((100% - (var(--evq-cols) - 1) * var(--evq-gap)) / var(--evq-cols));
}
.evq-quiz .evq-answer-has-img { display: flex; flex-direction: column; padding: .5em .5em .8em; text-align: center; }
.evq-answer-img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 7px; margin-bottom: .6em; }
.evq-answer-text { display: block; }
.evq-answer-has-img .evq-answer-text { padding: 0 .4em; }

.evq-actions { margin-top: 1.4em; text-align: right; }

/* Result screen */
.evq-sticker { display: block; max-width: 230px; max-height: 230px; width: auto; height: auto; margin: 0 auto .9em; }
.evq-scoreline {
	display: inline-block;
	background: var(--evq-green-tint);
	color: var(--evq-green);
	font-weight: 700;
	border-radius: 999px;
	padding: .35em 1.1em;
	margin-bottom: .8em;
}
.evq-stay { font-size: 1.25em; margin: .3em 0 .8em; }
.evq-stay strong { color: var(--evq-green); }
.evq-message { margin-bottom: 1.3em; }
.evq-message p { margin: 0 0 .8em; }

.evq-cta {
	background: var(--evq-green-tint);
	border: 1px solid var(--evq-line);
	border-radius: 12px;
	padding: 1.3em 1.2em;
	margin: .6em 0 .5em;
}
.evq-cta-text p { margin: 0 0 .9em; }

/* Answer review */
.evq-review { text-align: left; margin-top: 1.8em; }
.evq-quiz .evq-review-title { margin: 0 0 .8em; font-size: 1.3em; color: var(--evq-green); }

.evq-rv {
	border: 1px solid var(--evq-line);
	border-left: 5px solid var(--evq-green);
	border-radius: 10px;
	padding: .9em 1em;
	margin-bottom: .9em;
	background: #fff;
}
.evq-rv-bad { border-left-color: var(--evq-wrong); }
.evq-rv-q { font-weight: 700; margin-bottom: .3em; }
.evq-rv-status { font-size: .9em; font-weight: 700; margin-bottom: .4em; color: var(--evq-green); }
.evq-rv-bad .evq-rv-status { color: var(--evq-wrong); }

.evq-rv-line { margin: .2em 0; }
.evq-rv-ok strong { color: var(--evq-green); }
.evq-rv-no strong { color: var(--evq-wrong); }
.evq-rv-label { color: var(--evq-muted); }

.evq-rv-expl {
	margin-top: .7em;
	padding: .65em .8em;
	background: var(--evq-green-tint);
	border-radius: 8px;
	font-size: .95em;
}

@media (max-width: 480px) {
	.evq-card { padding: 1.2em 1em; }
	.evq-quiz .evq-title { font-size: 1.5em; }
	.evq-quiz .evq-question { font-size: 1.25em; }
	/* phones: always 2 per row (single last card is centered) */
	.evq-answers-images,
	.evq-answers-images.evq-n-3,
	.evq-answers-images.evq-n-5,
	.evq-answers-images.evq-n-6 { --evq-cols: 2; --evq-gap: .6em; }
	.evq-answers-images.evq-n-1 { --evq-cols: 1; }
	.evq-actions { text-align: center; }
}
