/* IT Data Science — certificate sheet.
   One stylesheet for three contexts: admin preview, print view, verification page. */

.itds-cert-wrap{ display:flex; justify-content:center; }

/* Screen scaling: JS sets --itds-scale from the container width. */
.itds-cert-scale{
	transform: scale(var(--itds-scale,1));
	transform-origin: top left;
}

.itds-cert{
	position:relative;
	width:297mm; height:210mm;
	background:#fff;
	overflow:hidden;
	color:#0A1240;
	font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
	-webkit-print-color-adjust:exact;
	print-color-adjust:exact;
}

.itds-cert .frame{ position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.itds-cert .rule-out{ position:absolute; inset:9mm;    border:1.6px solid #2817BB; }
.itds-cert .rule-in { position:absolute; inset:11.4mm; border:.5px solid #1D91E4; opacity:.6; }

.itds-cert .body{
	position:absolute; inset:11.4mm;
	padding:11mm 20mm 9mm;
	display:flex; flex-direction:column; align-items:center; text-align:center;
}

.itds-cert .emblem{ width:26mm; height:26mm; border-radius:50%; object-fit:cover; display:block; }

.itds-cert .org{
	font-family:'Marcellus','Times New Roman',serif;
	font-size:20.5px; letter-spacing:.30em; text-transform:uppercase;
	color:#2817BB; margin:7px 0 0;
}
.itds-cert .org em{ font-style:normal; color:#D10F11; }
.itds-cert .org-rule{ width:74px; height:1.5px; background:#D10F11; margin:8px 0 0; opacity:.85; }
.itds-cert .org-sub{
	font-size:8.8px; font-weight:500; letter-spacing:.24em;
	text-transform:uppercase; color:#6B7392; margin:8px 0 0;
}

.itds-cert .title{
	font-family:'Marcellus','Times New Roman',serif;
	font-size:56px; line-height:1; letter-spacing:.20em; text-indent:.20em;
	text-transform:uppercase; margin:13px 0 0;
}
.itds-cert .subtitle{
	font-size:12.5px; font-weight:600; letter-spacing:.30em;
	text-transform:uppercase; color:#D10F11; margin:9px 0 0;
}

.itds-cert .lead{
	font-family:'Spectral',Georgia,serif; font-size:14px; font-style:italic;
	color:#6B7392; margin:18px 0 0;
}
.itds-cert .name{
	font-family:'Marcellus','Times New Roman',serif;
	font-size:41px; line-height:1.12; color:#2817BB; margin:7px 0 0;
	max-width:190mm; min-height:46px;
}
.itds-cert .namerule{ width:118mm; height:1px; background:#C9D2E8; border:0; margin:9px 0 0; }

.itds-cert .clause{
	font-family:'Spectral',Georgia,serif; font-size:14px; line-height:1.6;
	margin:13px 0 0; max-width:186mm;
}
.itds-cert .course{
	font-family:'Marcellus','Times New Roman',serif;
	font-size:25px; line-height:1.26; margin:8px 0 0; max-width:186mm; min-height:32px;
}
.itds-cert .meta{
	font-size:11.5px; font-weight:500; letter-spacing:.055em; color:#6B7392; margin:10px 0 0;
}
.itds-cert .meta .sep{ color:#1D91E4; margin:0 9px; font-weight:400; }

.itds-cert .grow{ flex:1; min-height:6mm; }

.itds-cert .foot{
	width:100%; display:flex; align-items:flex-end; justify-content:space-between; gap:10mm;
}
.itds-cert .col{ flex:0 0 58mm; display:flex; flex-direction:column; align-items:center; }
.itds-cert .sigspace{ height:13mm; }
.itds-cert .footrule{ width:100%; height:1px; background:#0A1240; opacity:.75; }
.itds-cert .footlabel{
	font-size:9.5px; font-weight:600; letter-spacing:.14em;
	text-transform:uppercase; margin:6px 0 0;
}
.itds-cert .footvalue{
	font-family:'Spectral',Georgia,serif; font-size:12.5px; margin:3px 0 0; min-height:15px;
}

.itds-cert .seal{
	flex:0 0 30mm; height:30mm; border-radius:50%;
	border:1px dashed transparent;
	/* The "Official Seal" label is a placement guide only. It must be invisible
	   unless the guide is switched on, or it prints on every certificate. */
	color:transparent; font-size:0;
	display:flex; align-items:center; justify-content:center;
}
.itds-cert.seal-guide .seal{
	border-color:#C9D2E8; color:#C9D2E8;
	font-size:8.5px; font-weight:500; letter-spacing:.12em; text-transform:uppercase;
}

.itds-cert .qr{ flex:0 0 26mm; text-align:center; }
.itds-cert .qr svg{ width:24mm; height:24mm; display:block; margin:0 auto; }
.itds-cert .qr .cap{
	font-size:7px; letter-spacing:.05em; color:#6B7392;
	margin-top:1.4mm; line-height:1.4; word-break:break-all;
}
.itds-cert .qr .code{
	font-size:8.5px; font-weight:600; letter-spacing:.09em; color:#0A1240; margin-top:1mm;
}

/* ---------- print ---------- */
@media print{
	@page{ size:A4 landscape; margin:0; }

	/* The sheet is exactly one page wide. Any surrounding padding, margin or
	   screen-scaling spills it onto a second page, so all of it is reset here. */
	html,body{
		margin:0!important; padding:0!important; background:#fff!important;
		width:297mm!important; height:210mm!important; overflow:hidden!important;
	}
	body > *{ display:none!important; }
	body > .itds-print-root{ display:block!important; padding:0!important; margin:0!important; }

	.itds-no-print{ display:none!important; }

	.itds-cert-wrap{ display:block!important; }
	/* certificate.js writes inline width/height for screen scaling — override both. */
	.itds-cert-scale{
		transform:none!important;
		width:auto!important; height:auto!important;
	}
	.itds-cert{ box-shadow:none!important; margin:0!important; }
}
