/* SMRC Report Card - printable A4 official document styling.
   High-contrast: black grid lines, black text, white paper.
   The card is always compressed and scaled to occupy exactly one A4 page. */

.smrc-reportcard {
	--smrc-rc-scale: 1;
	--smrc-rc-font: 13.5px;
	--smrc-rc-cell-pad: 6px 8px;
	--smrc-rc-gap: 12px;
	--smrc-rc-sign: 30px;
	--smrc-rc-stamp: 40px;
	background: #fff;
	color: #000;
	border: 2px solid #000;
	padding: 18px 20px;
	font-family: "Times New Roman", Georgia, serif;
	font-size: var(--smrc-rc-font);
	line-height: 1.35;
	max-width: 900px;
	margin: 0 auto;
}

.smrc-rc-compress-1 {
	--smrc-rc-font: 12px;
	--smrc-rc-cell-pad: 4px 6px;
	--smrc-rc-gap: 8px;
	--smrc-rc-sign: 24px;
	--smrc-rc-stamp: 32px;
	line-height: 1.25;
	padding: 14px 16px;
}

.smrc-rc-compress-2 {
	--smrc-rc-font: 10.5px;
	--smrc-rc-cell-pad: 3px 4px;
	--smrc-rc-gap: 6px;
	--smrc-rc-sign: 18px;
	--smrc-rc-stamp: 26px;
	line-height: 1.18;
	padding: 10px 12px;
}

.smrc-rc-compress-3 {
	--smrc-rc-font: 9px;
	--smrc-rc-cell-pad: 2px 3px;
	--smrc-rc-gap: 4px;
	--smrc-rc-sign: 14px;
	--smrc-rc-stamp: 20px;
	line-height: 1.12;
	padding: 8px 10px;
}

/* Last-resort compression level (v12.0.2): squeezes remaining whitespace,
   padding and signature/stamp space so a very full card still fits one A4
   page before any further scaling is applied. No content is hidden. */
.smrc-rc-compress-4 {
	--smrc-rc-font: 8px;
	--smrc-rc-cell-pad: 1px 2px;
	--smrc-rc-gap: 2px;
	--smrc-rc-sign: 10px;
	--smrc-rc-stamp: 14px;
	line-height: 1.05;
	padding: 5px 7px;
}
.smrc-rc-compress-3 .smrc-rc-title,
.smrc-rc-compress-4 .smrc-rc-title { margin: 4px 0; padding: 3px; font-size: 12px; }
.smrc-rc-compress-4 .smrc-rc-gov { padding-bottom: 3px; margin-bottom: 4px; }
.smrc-rc-compress-4 .smrc-rc-crest { height: 34px; margin-bottom: 2px; }
.smrc-rc-compress-4 .smrc-rc-school h2 { margin: 2px 0 4px; font-size: 15px; }
.smrc-rc-compress-4 .smrc-rc-box-label { padding: 2px 5px; font-size: 9px; }
.smrc-rc-compress-4 .smrc-rc-box-body { padding: 3px; min-height: calc(24px * var(--smrc-rc-scale)); }
.smrc-rc-compress-4 .smrc-rc-signname { padding: 2px 5px; font-size: 9px; }


/* ---------- Government / ministry header ---------- */
.smrc-rc-gov { text-align: center; border-bottom: 3px double #000; padding-bottom: 8px; margin-bottom: 10px; }
.smrc-rc-crest { display: block; margin: 0 auto 6px; height: 64px; width: auto; }
.smrc-rc-gov-country { font-size: 17px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: #000; }
.smrc-rc-gov-ministry { font-size: 15px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: #000; }
.smrc-rc-gov-agency { font-size: 12.5px; font-weight: 600; text-transform: uppercase; color: #000; margin-top: 2px; }
.smrc-rc-gov-motto { font-size: 12px; font-style: italic; color: #000; margin-top: 2px; }

/* ---------- School heading ---------- */
.smrc-rc-school h2 { text-align: center; margin: 6px 0 8px; font-size: 20px; font-weight: 700; letter-spacing: 1px; color: #000; }

.smrc-rc-title {
	text-align: center; font-weight: 700; font-size: 15px; letter-spacing: 1px;
	border: 2px solid #000; background: #e9e9e9; color: #000; padding: 6px; margin: 12px 0;
	text-transform: uppercase;
}

/* ---------- Tables ---------- */
.smrc-reportcard table { width: 100%; border-collapse: collapse; margin-bottom: var(--smrc-rc-gap); color: #000; }
.smrc-reportcard th,
.smrc-reportcard td { border: 1.5px solid #000; padding: var(--smrc-rc-cell-pad); color: #000; font-size: var(--smrc-rc-font); }

.smrc-rc-profile th { background: #ededed; text-align: left; font-weight: 700; white-space: nowrap; width: 15%; }
.smrc-rc-profile td { font-weight: 600; }

.smrc-rc-marks { font-size: var(--smrc-rc-font); }
.smrc-rc-marks thead th {
	background: #d9d9d9; text-align: center; font-weight: 700; text-transform: uppercase;
	letter-spacing: .4px; border: 2px solid #000;
}
.smrc-rc-marks tbody td { text-align: center; font-weight: 600; }
.smrc-rc-marks tbody td.smrc-rc-subj { text-align: left; font-weight: 700; }
.smrc-rc-marks tbody tr:nth-child(even) td { background: #f4f4f4; }
.smrc-rc-marks tr.smrc-rc-total td { background: #e2e2e2; font-weight: 700; text-transform: uppercase; }

/* ---------- Editable fields (screen only) ---------- */
.smrc-rc-input {
	font-family: inherit; font-size: 13px; color: #000; background: #fffdf2;
	border: 1.5px solid #000; border-radius: 0; padding: 5px 7px;
}
.smrc-rc-conduct { width: 80px; text-align: center; font-weight: 700; }
.smrc-rc-textarea { width: 100%; display: block; resize: vertical; }
.smrc-rc-print-only { display: none; }

/* ---------- Remark / signature boxes ---------- */
.smrc-rc-box { border: 2px solid #000; margin-bottom: var(--smrc-rc-gap); }
.smrc-rc-box-label {
	background: #e2e2e2; border-bottom: 1.5px solid #000; padding: 5px 8px;
	font-weight: 700; font-size: 12.5px; letter-spacing: .5px; text-transform: uppercase; color: #000;
}
.smrc-rc-box .smrc-rc-textarea { border: 0; background: #fffdf2; min-height: calc(62px * var(--smrc-rc-scale)); }
.smrc-rc-box-body { padding: 8px; min-height: calc(46px * var(--smrc-rc-scale)); font-size: var(--smrc-rc-font); color: #000; }

.smrc-rc-signrow { display: flex; gap: var(--smrc-rc-gap); }
.smrc-rc-signrow .smrc-rc-sign { flex: 1; }
.smrc-rc-signspace { height: var(--smrc-rc-sign); }
.smrc-rc-stampspace { height: var(--smrc-rc-stamp); }
.smrc-rc-signname {
	border-top: 1.5px dotted #000; padding: 5px 8px; font-size: 12.5px; font-weight: 700; color: #000;
}

/* =====================================================
   Print: isolate the report card only, fixed to A4
   ===================================================== */
@page { size: A4; margin: 5mm; }

@media print {
	body * { visibility: hidden !important; }
	#rc-printable, #rc-printable *, .smrc-print-doc, .smrc-print-doc * { visibility: visible !important; }
	#rc-printable, .smrc-print-doc {
		position: absolute !important; left: 0; top: 0; width: 190mm; margin: 0; padding: 4mm;
		box-shadow: none !important; border: 2px solid #000 !important;
		color: #000 !important; background: #fff !important;
		zoom: var(--smrc-rc-scale, 1);
		transform-origin: top left;
		max-height: 287mm;
		overflow: hidden !important;
	}
	@supports not (zoom: 1) {
		#rc-printable, .smrc-print-doc {
			transform: scale(var(--smrc-rc-scale, 1));
			width: calc(190mm / var(--smrc-rc-scale, 1));
		}
	}
	.smrc-reportcard th, .smrc-reportcard td { border: 1.2pt solid #000 !important; color: #000 !important; }
	.smrc-rc-input { display: none !important; }
	.smrc-rc-print-only { display: block !important; }
	.smrc-rc-marks tbody tr:nth-child(even) td,
	.smrc-rc-marks thead th,
	.smrc-rc-total td,
	.smrc-rc-profile th,
	.smrc-rc-box-label,
	.smrc-rc-title { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
	.smrc-rc-box, .smrc-reportcard table, .smrc-rc-signrow { break-inside: avoid; page-break-inside: avoid; }
	#rc-printable, .smrc-print-doc { page-break-after: avoid; page-break-inside: avoid; break-inside: avoid; }
	.smrc-rc-crest { height: calc(64px * var(--smrc-rc-scale, 1)); }
	.smrc-portal-topbar, .smrc-portal-nav, #smrc-portal-nav-backdrop, #rc-actions, #reg-actions, .smrc-inline-form, .smrc-card, .smrc-theme-toggle, .smrc-nav-toggle { display: none !important; }
}
