<style>
	.valign-top {
		vertical-align: top !important;
	}
	.primary-table table {
		border-collapse: collapse !important;
		page-break-inside: auto;
	}
	.primary-table th {
		text-align: center;
		background: none !important;
		vertical-align: middle;
		padding: 0 2mm !important;
		font-family: 'Lora', serif;
        border: 1px solid #000;
	}
	.primary-table td {
		padding: 2mm !important;
		line-height: 18px !important;
		border: 1px solid #000;
		text-align: center;
		vertical-align: middle;
		page-break-inside: avoid !important; 
		font-family: 'Lora', serif;
	}
	.primary-table td.valign-top {
		vertical-align: top;
	}
	.print-border-0 th {
		border: 1px solid #fff !important;
		background-color: #fff !important;
		height: 5mm !important;
	}
    .print-border-1 th {
		border-top: 1px solid #fff !important;
        border-left: 1px solid #fff !important;
        border-right: 1px solid #fff !important;
		background-color: #fff !important;
	}
	.text-left {
		text-align: left !important;
	}
	.text-center {
		text-align: center !important;
	}
	.text-right{
		text-align: right !important;
	}
	.m-t-20 {
		margin-top: 20px !important;
	}
	.m-b-50 {
		margin-bottom: 40px !important;
	}
	.cols td{
		height:35px!important;
	}

</style>
{% for exam in examList %}

    {# Subject counts: count per subjectCode+groupId across all students #}
    {% set subjectCounts = {} %}
    {% for student in exam.students %}
        {% set key = student.groupId %}
        {% if subjectCounts[key] is defined %}
            {% set subjectCounts = subjectCounts|merge({
                (key): {batchName: student.batchName, code: student.subjectCode, name: student.subjectName, count: subjectCounts[key].count + 1}
            }) %}
        {% else %}
            {% set subjectCounts = subjectCounts|merge({
                (key): {batchName: student.batchName, code: student.subjectCode, name: student.subjectName, count: 1}
            }) %}
        {% endif %}
    {% endfor %}

    {# Paginate: max 20 students per page #}
    {% set total      = exam.students|length %}
    {% set totalPages = total > 0 ? (total / 20)|round(0, 'ceil') : 1 %}

    {% for pageNo in 0..(totalPages - 1) %}
        {% set pageStudents = exam.students|slice(pageNo * 20, 20) %}
        {% set isLastPage   = (pageNo == totalPages - 1) %}
        {% set fillCount    = 20 - pageStudents|length %}

<div class="text-center" style="page-break-after: always;">
	<div class="text-center m-t-20" style="min-height: 82vh!important;">

		<div style="text-align:center; margin-bottom:10px; margin-top:10px;">
			<b style="font: bold 22px 'Times New Roman', serif; text-transform:uppercase;">{{ additionalInfo.collegeData.collegeName }}</b><br>
		</div>
		<div style="text-align:center; margin-bottom:10px; margin-top:10px;">
			<b style="font-size:15px; font-family:'book antiqua';">{{ exam.examRegName }}</b>
		</div>

		<!-- TITLE + DATE + HALL -->
		<table style="width:100%; border-collapse:collapse; margin-bottom:10px; border:none; margin-top:10px;">
			<tr>
				<td style="width:44%; border:0; font-size:14px; font-family:'Lora',serif; padding:1px 4px;">
					<u><b>Attendance of Candidates and Account of Answer Books</b></u>
				</td>
				<td style="width:22%; border:0; text-align:center; font-size:14px; font-family:'Lora',serif; padding:1px 4px;">
					Date: &nbsp;<b>{{ exam.dateTime | raw }}</b>
				</td>
				<td style="width:34%; border:0; text-align:right; font-size:15px; font-family:'Lora',serif; padding:1px 4px;">
					<b>Hall / Room No: {{ exam.hallName }}</b>
				</td>
			</tr>
		</table>

        <table style="width:100% !important; margin-top:10px;" class="table table-bordered primary-table" id="batch-hall-arrangement-report" >
        <thead>
			<tr>
				<th rowspan="2" style="width:13%; padding:1px 4px;">Seat No</th>
				<th rowspan="2" style="width:12%; padding:1px 4px;">Register No of Candidate</th>
				<th rowspan="2" style="width:15%; padding:1px 4px;">Student Name</th>
				<th colspan="2" style="padding:1px 4px;">No of answer books issued with series</th>
				<th rowspan="2" style="width:15%; padding:1px 4px;">Signature of Candidate</th>
			</tr>
			<tr>
				<th style="width:22%;">Main</th>
				<th style="width:22%;">Addl</th>
			</tr>
        </thead>

        {% for student in pageStudents %}
            <tr style="page-break-inside: avoid !important;" class="cols">
                <td>{{ student.seatNo }}</td>
                <td style="text-align:left;">{{ student.registerNo }}</td>
                <td style="text-align:left;">{{ student.studentName }}</td>
                <td></td>
                <td></td>
                <td></td>
            </tr>
        {% endfor %}

        {% if fillCount > 0 %}
			{% for i in 1..fillCount %}
				<tr style="page-break-inside: avoid !important;" class="cols">
					<td></td>
					<td></td>
					<td></td>
					<td></td>
					<td></td>
					<td></td>
				</tr>
			{% endfor %}
        {% endif %}
	    </table>

		{% if isLastPage %}
		<table style="width:100%; border-collapse:collapse; margin-top:10px; border:none;">
        <tr>
            <td style="width:100%; vertical-align:top; border:0; padding:0 4px 0 0 !important;">
                <table class="t26s-sum" style="width:100%; margin:0;">
                    <tr>
                        <th style="text-align:center; width:30%; padding:5px;">No of answer books</th>
                        <th style="width:35%; text-align:center; padding:5px;">Main</th>
                        <th style="width:35%; text-align:center; padding:5px;">Additional</th>
                    </tr>
                    <tr><td style="padding:5px;">Received</td><td></td><td></td></tr>
                    <tr><td style="padding:5px;">Issued</td><td></td><td></td></tr>
                    <tr><td style="padding:5px;">Returned</td><td></td><td></td></tr>
                </table>
            </td>
		</tr>
		<tr style="margin-top:10px;">
            <td style="width:100%; vertical-align:top; border:0; font-family:'Lora',serif; font-size:14px; line-height:20px; padding:5px 0 0 4px !important;">
                {% for key, subject in subjectCounts %}
                    <b>{{ subject.batchName }}</b>  {{ subject.name }}  {{ subject.count }} Nos.{% if not loop.last %}<br><br>{% endif %}
                {% endfor %}
            </td>
        </tr>
    </table>

    <!-- FOOTER -->
    <div style="margin-top:14px; font-family:'Lora',serif; font-size:14px; padding:6px 14px; text-align:right;">
        Name &amp; Signature of the invigilator:
    </div>
		{% endif %}

	</div>
</div>
    {% endfor %}{# end pageNo #}

{% endfor %}{# end examList #}