.qzm-quiz {
	max-width: 640px;
	margin: 1.5em 0;
	padding: 1.5em;
	border: 1px solid #d5d8dc;
	border-radius: 6px;
	background: #fff;
	color: #23282d;
	font-size: 1em;
	line-height: 1.5;
	box-sizing: border-box;
}

.qzm-quiz *,
.qzm-quiz *::before,
.qzm-quiz *::after {
	box-sizing: inherit;
}

.qzm-quiz .qzm-title {
	margin: 0 0 0.75em;
	font-size: 1.3em;
}

.qzm-quiz .qzm-description {
	margin-bottom: 1em;
}

.qzm-quiz .qzm-notice {
	padding: 0.75em 1em;
	border-radius: 4px;
	background: #f1f3f4;
	margin-bottom: 1em;
}

.qzm-quiz .qzm-notice--admin {
	background: #fff3cd;
	border: 1px solid #ffe69c;
}

.qzm-quiz .qzm-notice--blocked {
	background: #fbeaea;
}

.qzm-quiz .qzm-notice--error {
	background: #fbeaea;
	color: #8a1f1f;
}

.qzm-quiz .qzm-attempts-info,
.qzm-quiz .qzm-progress,
.qzm-quiz .qzm-resume-info,
.qzm-quiz .qzm-request-pending {
	font-size: 0.9em;
	color: #555;
	margin-bottom: 1em;
}

.qzm-quiz .qzm-btn {
	display: inline-block;
	padding: 0.6em 1.4em;
	border: none;
	border-radius: 4px;
	background: #2271b1;
	color: #fff;
	font-size: 1em;
	cursor: pointer;
}

.qzm-quiz .qzm-btn:hover,
.qzm-quiz .qzm-btn:focus {
	background: #135e96;
}

.qzm-quiz .qzm-btn:focus-visible {
	outline: 2px solid #135e96;
	outline-offset: 2px;
}

.qzm-quiz fieldset {
	border: none;
	padding: 0;
	margin: 0 0 1.25em;
}

.qzm-quiz .qzm-question-text {
	font-weight: 600;
	padding: 0;
	margin-bottom: 0.75em;
	font-size: 1.05em;
}

.qzm-quiz .qzm-answer-row {
	display: flex;
	align-items: flex-start;
	gap: 0.6em;
	padding: 0.5em 0;
	border-bottom: 1px solid #eee;
}

.qzm-quiz .qzm-answer-row input {
	margin-top: 0.25em;
}

.qzm-quiz .qzm-answer-row label {
	cursor: pointer;
}

.qzm-quiz .qzm-nav {
	display: flex;
	gap: 0.75em;
}

.qzm-quiz .qzm-result {
	padding: 1em;
	border-radius: 6px;
}

.qzm-quiz .qzm-result--passed {
	background: #e6f4ea;
}

.qzm-quiz .qzm-result--failed {
	background: #fbeaea;
}

.qzm-quiz .qzm-result .qzm-status {
	font-weight: 700;
	letter-spacing: 0.03em;
}

.qzm-quiz .qzm-reload-hint {
	margin-top: 1em;
	font-size: 0.9em;
}

.qzm-quiz .qzm-loading {
	color: #777;
}
