/**
 * PressPrimer Assignment Educator - Rubric Frontend Styles
 *
 * Student-facing read-only rubric display rendered inside the
 * free plugin's assignment page via the grading guidelines filter.
 *
 * Uses --ppa-* CSS variables from the free plugin's theme system.
 *
 * @package PressPrimer_Assignment_Educator
 * @since 2.0.0
 */

/* ── Rubric Read-Only Container ────────────────────────────── */

.ppae-rubric-readonly {
	margin-top: var(--ppa-space-md, 1rem);
}

/* ── Criterion Block ───────────────────────────────────────── */

.ppae-rubric-criterion {
	border: 1px solid var(--ppa-border, #c3c4c7);
	border-radius: var(--ppa-radius-md, 6px);
	margin-bottom: var(--ppa-space-md, 1rem);
	overflow: hidden;
}

.ppae-rubric-criterion__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: var(--ppa-space-sm, 0.5rem) var(--ppa-space-md, 1rem);
	background: var(--ppa-background-gray, #f6f7f7);
	border-bottom: 1px solid var(--ppa-border-light, #dcdcde);
	font-weight: 600;
}

.ppae-rubric-criterion__title {
	color: var(--ppa-text, #1d2327);
	font-size: var(--ppa-font-size-sm, 0.875rem);
}

.ppae-rubric-criterion__max-points {
	color: var(--ppa-text-secondary, #50575e);
	font-size: var(--ppa-font-size-sm, 0.875rem);
	white-space: nowrap;
}

/* ── Total Row ─────────────────────────────────────────────── */

.ppae-rubric-total {
	font-weight: 600;
	color: var(--ppa-text, #1d2327);
	padding: var(--ppa-space-sm, 0.5rem) 0;
	margin-top: var(--ppa-space-xs, 0.25rem);
	font-size: var(--ppa-font-size-sm, 0.875rem);
}

/* ── Points-Only Criterion Description ─────────────────────── */

.ppae-rubric-criterion__description {
	padding: var(--ppa-space-xs, 0.25rem) var(--ppa-space-md, 1rem) var(--ppa-space-sm, 0.5rem);
	color: var(--ppa-text-secondary, #50575e);
	font-size: var(--ppa-font-size-xs, 0.8125rem);
}

/* ── Rubric Scorecard (Returned Submissions) ──────────────── */

.ppae-rubric-scorecard {
	margin-bottom: var(--ppa-space-lg, 1.5rem);
}

.ppae-rubric-scorecard .ppa-feedback-heading {
	margin-bottom: var(--ppa-space-sm, 0.5rem);
}

.ppae-rubric-scorecard__criterion {
	border: 1px solid var(--ppa-border, #c3c4c7);
	border-radius: var(--ppa-radius-md, 6px);
	margin-bottom: var(--ppa-space-sm, 0.5rem);
	overflow: hidden;
}

.ppae-rubric-scorecard__criterion-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: var(--ppa-space-sm, 0.5rem) var(--ppa-space-md, 1rem);
	background: var(--ppa-background-gray, #f6f7f7);
	gap: var(--ppa-space-sm, 0.5rem);
}

.ppae-rubric-scorecard__criterion-title {
	font-weight: 600;
	color: var(--ppa-text, #1d2327);
	font-size: var(--ppa-font-size-sm, 0.875rem);
}

.ppae-rubric-scorecard__criterion-score {
	white-space: nowrap;
	color: var(--ppa-text-secondary, #50575e);
	font-size: var(--ppa-font-size-sm, 0.875rem);
}

.ppae-rubric-scorecard__criterion-score strong {
	color: var(--ppa-text, #1d2327);
}

.ppae-rubric-scorecard__not-scored {
	color: var(--ppa-text-light, #787c82);
	font-style: italic;
}

.ppae-rubric-scorecard__criterion-feedback {
	padding: var(--ppa-space-xs, 0.25rem) var(--ppa-space-md, 1rem) var(--ppa-space-sm, 0.5rem);
	color: var(--ppa-text-secondary, #50575e);
	font-size: var(--ppa-font-size-xs, 0.8125rem);
	font-style: italic;
	border-top: 1px solid var(--ppa-border-light, #dcdcde);
}

.ppae-rubric-scorecard__criterion-feedback p {
	margin: 0;
}

.ppae-rubric-scorecard__total {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: var(--ppa-space-sm, 0.5rem) var(--ppa-space-md, 1rem);
	margin-top: var(--ppa-space-xs, 0.25rem);
	background: var(--ppa-background-gray, #f6f7f7);
	border: 1px solid var(--ppa-border, #c3c4c7);
	border-radius: var(--ppa-radius-md, 6px);
	font-weight: 600;
	color: var(--ppa-text, #1d2327);
	font-size: var(--ppa-font-size-sm, 0.875rem);
}

/* ── RTL Support ───────────────────────────────────────────── */

[dir="rtl"] .ppae-rubric-scorecard__criterion-header {
	flex-direction: row-reverse;
}

[dir="rtl"] .ppae-rubric-scorecard__total {
	flex-direction: row-reverse;
}

/* ── Print Styles ──────────────────────────────────────────── */

@media print {
	.ppae-rubric-criterion {
		border-color: #000;
		page-break-inside: avoid;
	}

	.ppae-rubric-criterion__header {
		background: none;
		border-bottom-color: #000;
	}

	.ppae-rubric-scorecard__criterion {
		border-color: #000;
		page-break-inside: avoid;
	}

	.ppae-rubric-scorecard__criterion-header {
		background: none;
	}

	.ppae-rubric-scorecard__criterion-feedback {
		border-top-color: #000;
	}

	.ppae-rubric-scorecard__total {
		background: none;
		border-color: #000;
	}
}
