.zp-headlink-wrap {
	clear: both;
	position: relative;
}

.zp-headlink {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 0;
	list-style: none;
	margin: 0;
	padding: 0;
}

.zp-headlink-center {
	justify-content: center;
}

.zp-headlink-end {
	justify-content: end;
}

.zp-headlink-item {
	margin: 0 4px;
}

.zp-headlink-link {
	background-color: var(--zp-headlink-bg);
	border-radius: 4px;
	display: block;
	font-size: 13px;
	padding: 7px;
	transition: background-color 0.2s;
	white-space: nowrap;
}

.zp-headlink-link:hover {
	background-color: var(--zp-headlink-hover-bg, var(--zp-headlink-bg));
	text-decoration: none;
}

.zp-headlink-bordered {
	border: 2px solid var(--zp-headlink-border-color);
}

.zp-headlink-shadowed {
	box-shadow: 2px 4px 4px var(--zp-headlink-box-shadow-color);
}

.zp-headlink-link i {
	color: var(--zp-headlink-icon-color);
}

.zp-headlink-link span {
	color: var(--zp-headlink-text-color);
}

/* Pulsanti a base immagine ("solo immagine" e "immagine con testo"):
   3px di margine tra il bordo del pulsante e l'immagine, non i 7px del
   pulsante testuale — altrimenti l'alone attorno all'immagine risulta
   sproporzionato. */
.zp-headlink-has-image {
	line-height: 0;
	padding: 3px;
}

.zp-headlink-has-image img {
	display: block;
}

.zp-headlink-image-text {
	position: relative;
}

.zp-headlink-image-text-overlay {
	left: 50%;
	line-height: normal;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	white-space: nowrap;
}
