/* Tarjetas de profesores, al estilo de la ficha de Moodle. Hereda tipografía y color de enlaces del tema. */
.mpcv {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr));
	gap: 1.25em;
	align-items: start;
}

.mpcv-card {
	padding: 1.75em 1.75em 1.5em;
	border: 1px solid rgba(0, 0, 0, .12);
	border-radius: 14px;
	background: #fff;
	color: #333;
}

/* La tarjeta desplegada ocupa toda la fila para que la ficha se lea cómoda. */
.mpcv-card:has(.mpcv-more[open]) {
	grid-column: 1 / -1;
}

.mpcv-photo {
	display: block;
	width: 96px;
	height: 96px;
	margin: 0 0 1em;
	border-radius: 50%;
	border: 2px solid rgba(0, 0, 0, .08);
	object-fit: cover;
}

.mpcv-name {
	margin: 0 0 .5em;
	font-size: 1.35em;
	font-weight: 400;
	line-height: 1.25;
}

.mpcv-meta {
	margin: 0 0 .2em;
	color: #777;
}

.mpcv-intro {
	margin: 1em 0 0;
}

.mpcv-pending {
	margin: 0;
}

.mpcv-more {
	margin-top: 1.25em;
}

.mpcv-more > summary {
	display: inline-block;
	cursor: pointer;
	list-style: none;
	font-weight: 600;
	color: #1a3fa6;
}

.mpcv-more > summary::-webkit-details-marker {
	display: none;
}

.mpcv-more > summary span {
	display: inline-block;
	transition: transform .15s;
}

.mpcv-more[open] > summary span {
	transform: rotate(90deg);
}

.mpcv-ficha {
	margin-top: 1.25em;
	padding-top: 1.25em;
	border-top: 1px solid rgba(0, 0, 0, .08);
}

.mpcv-field {
	margin: 0 0 1.1em;
}

.mpcv-label {
	margin: 0 0 .3em;
	font-size: 1em;
	font-weight: 600;
}

.mpcv-line {
	margin: 0 0 .3em;
}

.mpcv-email {
	margin: 0 0 1.1em;
}

@media (max-width: 600px) {
	.mpcv-card {
		padding: 1.4em 1.25em 1.25em;
	}
}
