/* ---------------------------------------------------------------------------
 * Enrolment overlay + VOC list
 *
 * This lives in its own file ON PURPOSE. It used to sit at the end of the
 * compiled style.css, where LiteSpeed's Unused-CSS pass could drop the rules
 * for the overlay — the overlay is hidden at page load, so a purger that
 * judges by what is visible decides nothing here is used, and visitors got an
 * unstyled modal. As its own file it is excluded by name in functions.php
 * (see aiims_litespeed_leave_enrol_alone), which LiteSpeed honours reliably.
 *
 * Do not fold this back into style.css, and do not rename it without changing
 * the exclusion list.
 *
 * The RTO's form does not post its height out, so the frame cannot size itself
 * to its content. It gets a tall panel and scrolls internally — which is why
 * the panel is capped in viewport units rather than left to grow.
 * ------------------------------------------------------------------------ */

.rr-enrol[hidden] { display: none; }
.rr-enrol {
	position: fixed;
	inset: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}
body.rr-enrol-open { overflow: hidden; }

.rr-enrol-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(10, 16, 26, 0.72);
}

.rr-enrol-panel {
	position: relative;
	display: flex;
	flex-direction: column;
	width: min(980px, 100%);
	max-height: 92vh;
	max-height: 92dvh;
	background: #fff;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 24px 70px rgba(0, 0, 0, 0.35);
}

.rr-enrol-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 20px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.rr-enrol-title {
	margin: 0;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.3;
	color: #00000e;
}
.rr-enrol-close {
	flex: 0 0 auto;
	width: 36px;
	height: 36px;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 50%;
	background: #fff;
	color: #00000e;
	font-size: 15px;
	line-height: 1;
	cursor: pointer;
}
.rr-enrol-close:hover { background: #f3f5f8; }

.rr-enrol-body {
	position: relative;
	flex: 1 1 auto;
	min-height: 0;
}
.rr-enrol-frame {
	display: block;
	width: 100%;
	height: 72vh;
	height: 72dvh;
	border: 0;
}
.rr-enrol-loading {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	color: #5a6472;
	font-size: 15px;
}
.rr-enrol-loading[hidden] { display: none; }

.rr-enrol-foot {
	margin: 0;
	padding: 12px 20px;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	background: #f7f9fb;
	font-size: 14px;
	color: #5a6472;
}
.rr-enrol-foot a { color: #c65f0d; }

@media (max-width: 640px) {
	.rr-enrol { padding: 0; }
	.rr-enrol-panel { max-height: 100vh; max-height: 100dvh; border-radius: 0; width: 100%; }
	.rr-enrol-frame { height: 100%; min-height: 60vh; }
}

/* VOC rows */
.rr-voc { list-style: none; margin: 0; padding: 0; }
.rr-voc-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	flex-wrap: wrap;
	padding: 18px 22px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 14px;
	background: #fff;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.rr-voc-row:hover {
	border-color: rgba(198, 95, 13, 0.45);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
}
.rr-voc-title {
	margin: 0;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.3;
	color: #00000e;
}
.rr-voc-note {
	margin: 4px 0 0;
	font-size: 14.5px;
	line-height: 1.45;
	color: rgba(0, 0, 14, 0.62);
}
.rr-voc-btn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 150px;
	padding: 13px 24px;
	border-radius: 100px;
	background: #f47b20;
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	text-decoration: none;
	transition: background 0.2s ease;
}
.rr-voc-btn:hover { background: #00000e; color: #fff; }
