.wlsm-id-card-premium {
	box-sizing: border-box;
	width: 3.37in;
	height: 2.125in;
	margin: 0 auto;
	padding: 2mm;
	overflow: hidden;
	border: 1px solid #dce3ee;
	border-top: 2mm solid #c49a55;
	border-radius: 3mm;
	background: #fffefa;
	color: #25324a;
	font-family: "Segoe UI", Arial, sans-serif;
	font-size: 6pt;
}
.wlsm-id-card-premium .container-fluid {
	width: 100%;
	padding: 0;
}
.wlsm-id-card-premium .wlsm-school-header {
	align-items: center;
	height: 9mm;
	margin: -2mm -2mm 1.2mm;
	padding: .5mm 2mm 1mm;
	border-bottom: .25mm solid #dce3ee;
	border-radius: 2mm 2mm 0 0;
	background: #fffefa;
	color: #1c2c45;
}
.wlsm-id-card-premium .wlsm-school-header .col-3 {
	flex: 0 0 17%;
	max-width: 17%;
	padding: 0 1mm 0 0;
	text-align: center !important;
}
.wlsm-id-card-premium .wlsm-school-header .col-9 {
	flex: 0 0 83%;
	max-width: 83%;
	padding: 0;
}
.wlsm-id-card-premium .wlsm-print-school-logo {
	width: auto;
	height: auto;
	max-width: 8mm !important;
	max-height: 8mm !important;
	object-fit: contain;
}
.wlsm-id-card-premium .wlsm-print-school-label {
	margin: 0;
	color: #1c2c45;
	font-size: 7pt;
	font-weight: 700;
	letter-spacing: .15pt;
	line-height: 1.1;
}
.wlsm-id-card-premium .wlsm-print-school-contact,
.wlsm-id-card-premium .wlsm-print-school-contact span {
	color: #1c2c45;
	font-size: 4.5pt;
	line-height: 1.1;
}
.wlsm-id-card-premium .wlsm-print-school-address {
	display: block;
	max-width: 100%;
	font-size: 4pt;
	line-height: 1;
}
.wlsm-id-card-heading {
	margin: 0 0 .5mm;
	text-align: center;
	color: #172943;
	font-size: 7pt;
	font-weight: 750;
	letter-spacing: .6pt;
	line-height: 1.1;
}
.wlsm-id-card-heading span {
	display: inline-block;
	padding: 0 0 .5mm;
	border-bottom: .4mm solid #c49a55;
}
.wlsm-id-card-content {
	display: flex;
	flex-direction: column;
	gap: .8mm;
	height: 35mm;
	margin: 0;
	min-height: 0;
}
.wlsm-id-card-visuals {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2mm;
	height: 18.5mm;
	min-height: 18.5mm;
	margin: 0 auto;
}
.wlsm-id-card-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .4mm 1mm;
	width: 100%;
	min-width: 0;
	min-height: 0;
	flex: 1;
	margin: 0 !important;
	padding: 0;
	list-style: none;
}
.wlsm-id-card-details li {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	min-width: 0;
	height: 2.7mm;
	min-height: 2.7mm;
	margin: 0;
	padding: .25mm .8mm;
	overflow: hidden;
	border: .2mm solid #e7eaf0;
	border-radius: .7mm;
	background: #fff;
	color: #1c2c45;
	font-size: 4pt;
	line-height: 1.1;
}
.wlsm-id-card-details .wlsm-id-card-detail-wide {
	grid-column: 1 / -1;
}
.wlsm-id-card-details .wlsm-font-bold {
	flex: 0 0 auto;
	margin-right: .5mm;
	color: #1c2c45;
	font-size: 3.5pt;
	font-weight: 700;
}
.wlsm-id-card-details li > span:not(.wlsm-font-bold) {
	min-width: 0;
	overflow: hidden;
	color: #1c2c45;
	font-size: 4pt;
	font-weight: 650;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.wlsm-id-card-qr {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18.5mm;
	height: 18.5mm;
	border-radius: 1.5mm;
	background: #f1f4f9;
}
.wlsm-id-card-qr img {
	display: block;
	width: 17mm;
	height: 17mm;
}
.wlsm-id-card-portrait {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18.5mm;
	height: 18.5mm;
	border-radius: 1.5mm;
	background: #f1f4f9;
}
.wlsm-id-card-premium .wlsm-print-id-card-photo-box {
	box-sizing: border-box;
	width: 15mm;
	height: 17mm;
	margin: 0 !important;
	overflow: hidden;
	border: .5mm solid #fff;
	border-radius: 1.5mm;
	background: #f3f5f8;
	box-shadow: 0 0 0 .2mm #dce3ee;
}
.wlsm-id-card-premium .wlsm-print-id-card-photo {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media print {
	body {
		margin: 0;
		padding: 0;
		color: #25324a;
		background: #fff;
	}
	.wlsm-id-card-premium {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
		box-shadow: none;
	}
	@page {
		size: A4 landscape;
	}
}
