/* Fondo oscuro detrás del popup */
.popup-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.70);
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 99999;
	padding: 20px;
	box-sizing: border-box;
}

/* Contenedor del popup */
.popup-container {
	position: relative;
	max-width: 900px;
	width: 100%;
	background: #ffffff;
	border-radius: 10px;
	padding: 5px;
	box-sizing: border-box;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
	animation: aparecerPopup 0.3s ease-out;
}

/* Imagen */
.popup-image {
	display: block;
	width: 100%;
	height: auto;
	max-height: 90vh;
	object-fit: contain;
	border-radius: 7px;
}

/* Botón cerrar */
.popup-close {
	position: absolute;
	top: -15px;
	right: -15px;
	width: 38px;
	height: 38px;
	border: none;
	border-radius: 50%;
	background: #ffffff;
	color: #333333;
	font-size: 28px;
	font-weight: bold;
	line-height: 35px;
	cursor: pointer;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.4);
	z-index: 2;
}

.popup-close:hover {
	background: #eeeeee;
}

/* Animación */
@keyframes aparecerPopup {
	from { 
		opacity:0;
		transform: scale(0.90);
	}

	to {
		opacity: 1;
		transform: scale(1);
	}
}

/* Ajustes para celular */
@media ( max-width : 600px) {
	.popup-overlay {
		padding: 15px;
	}
	.popup-container {
		width: 100%;
	}
	.popup-close {
		top: -10px;
		right: -10px;
		width: 34px;
		height: 34px;
		font-size: 24px;
	}
}