/* ==========================================================================
   Ashbar Exams — Frontend styles
   ========================================================================== */

/* Action buttons (above exam) ------------------------------------------- */
.ashbar-exams-actions {
	margin: 1.5em 0;
	display: flex;
	flex-direction: column;
	gap: 0.5em;
}

.ashbar-exams-btn {
	display: inline-block;
	padding: 0.75em 1.5em;
	font-size: 1em;
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
	border: none;
	border-radius: 4px;
	background-color: #2271b1;
	color: #fff;
	transition: background-color 0.15s ease, opacity 0.15s ease;
}

.ashbar-exams-btn:hover:not(:disabled) {
	background-color: #135e96;
}

.ashbar-exams-btn:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.ashbar-exams-error {
	color: #b32d2e;
	padding: 0.5em 0.75em;
	background: #fcf0f1;
	border-right: 3px solid #b32d2e;
	border-radius: 2px;
}

.ashbar-exams-message {
	padding: 1em 1.25em;
	background: #f0f6fc;
	border-right: 3px solid #2271b1;
	border-radius: 2px;
	margin: 1.5em 0;
}

/* Solution page wrapper ------------------------------------------------- */
.ashbar-exams-solution-wrap {
	max-width: 900px;
	margin: 0 auto;
}

.ashbar-exams-solution-title {
	margin-bottom: 1.5em;
	padding-bottom: 0.5em;
	border-bottom: 2px solid #ddd;
}

/* Exam container -------------------------------------------------------- */
.ashbar-exams-exam {
	font-size: 1rem;
	line-height: 1.6;
}

/* Meta block ------------------------------------------------------------ */
.ashbar-exams-meta {
	padding: 1.25em 1.5em;
	background: #f6f7f7;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	margin-bottom: 2em;
}

.ashbar-exams-meta-title {
	margin-top: 0;
	margin-bottom: 0.75em;
	font-size: 1.2em;
}

.ashbar-exams-meta-list {
	list-style: none;
	padding: 0;
	margin: 0 0 1em 0;
}

.ashbar-exams-meta-list li {
	margin-bottom: 0.4em;
}

.ashbar-exams-meta-list li:last-child {
	margin-bottom: 0;
}

.ashbar-exams-instructions {
	margin-top: 1em;
	padding-top: 1em;
	border-top: 1px dashed #c3c4c7;
}

.ashbar-exams-instructions h3 {
	margin-top: 0;
	margin-bottom: 0.5em;
	font-size: 1.05em;
}

/* Sections -------------------------------------------------------------- */
.ashbar-exams-sections {
	display: flex;
	flex-direction: column;
	gap: 2em;
}

.ashbar-exams-section {
	padding: 0;
}

.ashbar-exams-section-group .ashbar-exams-shared,
.ashbar-exams-section-choice .ashbar-exams-choice-instruction {
	padding: 1em 1.25em;
	background: #f0f6fc;
	border-right: 3px solid #2271b1;
	border-radius: 2px;
	margin-bottom: 1em;
}

.ashbar-exams-section-group .ashbar-exams-shared h3 {
	margin-top: 0;
}

/* Question -------------------------------------------------------------- */
.ashbar-exams-question {
	padding: 1.25em 1.5em;
	background: #fff;
	border: 1px solid #dcdcde;
	border-radius: 4px;
	margin-bottom: 1em;
}

.ashbar-exams-question:last-child {
	margin-bottom: 0;
}

.ashbar-exams-question-header {
	margin-bottom: 0.75em;
	padding-bottom: 0.5em;
	border-bottom: 1px solid #f0f0f1;
	font-weight: 600;
}

.ashbar-exams-question-number {
	font-size: 1.05em;
}

.ashbar-exams-question-points {
	color: #646970;
	font-weight: normal;
}

.ashbar-exams-question-body {
	margin-bottom: 1em;
}

.ashbar-exams-question-body p:last-child {
	margin-bottom: 0;
}

/* Multiple choice options ---------------------------------------------- */
.ashbar-exams-options {
	margin: 1em 0;
	padding-right: 2em;
}

.ashbar-exams-option {
	margin-bottom: 0.5em;
}

.ashbar-exams-option-correct {
	background: #edfaef;
	padding: 0.4em 0.6em;
	border-radius: 3px;
	border-right: 3px solid #00a32a;
}

.ashbar-exams-correct-marker {
	color: #00a32a;
	font-weight: 600;
	font-size: 0.9em;
	margin-right: 0.5em;
}

/* Solution -------------------------------------------------------------- */
.ashbar-exams-solution {
	margin-top: 1.25em;
	padding: 1em 1.25em;
	background: #fcfcfc;
	border: 1px solid #dcdcde;
	border-right: 3px solid #00a32a;
	border-radius: 4px;
}

.ashbar-exams-solution-heading {
	margin-top: 0;
	margin-bottom: 0.5em;
	color: #00733b;
	font-size: 1em;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.ashbar-exams-solution-body p:last-child {
	margin-bottom: 0;
}
