/* Delvitech Share – "Share bar" (Figma 814:14045). Colori ereditati dal testo: funziona su fondo scuro e chiaro. */
.dvs-share {
	--dvs-size: 40px;          /* cerchio visibile, come nel Figma */
	--dvs-hit: 44px;           /* area cliccabile minima (accessibilità) */
	--dvs-gap: calc(8px - (var(--dvs-hit) - var(--dvs-size)));
	display: flex;
	align-items: center;
	gap: 16px;
	flex: 0 0 auto;
	flex-wrap: nowrap;
	width: fit-content;
	max-width: 100%;
	color: inherit;
	margin: 0;
}
.dvs-share__label {
	font-family: var(--tx-font-text, var(--wp--preset--font-family--text, inherit));
	font-size: 12px;
	line-height: 16px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	white-space: nowrap;
}
.dvs-share .dvs-share__list {
	display: flex;
	align-items: center;
	gap: var(--dvs-gap);
	list-style: none;
	margin: 0 calc((var(--dvs-hit) - var(--dvs-size)) / -2) !important;
	padding: 0 !important;
}
.dvs-share .dvs-share__list > li { margin: 0 !important; padding: 0 !important; list-style: none; line-height: 0; }
.dvs-share .dvs-share__list > li::before, .dvs-share .dvs-share__list > li::marker { content: none; display: none; }
.dvs-share a.dvs-share__btn,
.dvs-share button.dvs-share__btn {
	position: relative;
	display: grid;
	place-items: center;
	width: var(--dvs-hit);
	height: var(--dvs-hit);
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 50%;
	background: none;
	color: inherit !important;
	text-decoration: none !important;
	box-shadow: none;
	min-height: 0;
	font: inherit;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}
.dvs-share__btn::before {
	content: "";
	position: absolute;
	inset: calc((var(--dvs-hit) - var(--dvs-size)) / 2);
	border: 1px solid currentColor;
	border-radius: 50%;
	transition: background-color .2s ease, border-color .2s ease;
}
.dvs-share__icon { position: relative; width: 20px; height: 20px; transition: color .2s ease; }
.dvs-share__btn:hover::before,
.dvs-share__btn.is-copied::before { background: currentColor; }
.dvs-share__btn:hover .dvs-share__icon,
.dvs-share__btn.is-copied .dvs-share__icon { color: var(--dvs-hover-icon, #000); }
.dvs-share__btn:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
/* Su fondo chiaro (sezioni chiare del tema o parent con classe tx-light) l'icona al passaggio diventa bianca. */
.tx-light .dvs-share, .dvs-share.is-on-light { --dvs-hover-icon: #fff; }
.dvs-share__status {
	position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
}

/* Verticale: etichetta sopra, bottoni uno sotto l'altro (rail laterale). */
.dvs-share--vertical { flex-direction: column; align-items: center; width: max-content; }
.dvs-share--vertical .dvs-share__list { flex-direction: column; margin: calc((var(--dvs-hit) - var(--dvs-size)) / -2) 0 !important; }
.dvs-share--sticky { position: sticky; top: calc(var(--tx-hdr-h, 80px) + 24px); align-self: flex-start; }

@media (prefers-reduced-motion: reduce) {
	.dvs-share__btn::before, .dvs-share__icon { transition: none; }
}
/* Il tema schiarisce i link al passaggio: qui no, il bottone si riempie. */
.dvs-share a.dvs-share__btn:hover, .dvs-share button.dvs-share__btn:hover,
.dvs-share a.dvs-share__btn:focus, .dvs-share button.dvs-share__btn:focus { opacity: 1 !important; }

/* 1.1 – Dentro le card delle news (o accanto ad altri bottoni): la barra non si spezza e non schiaccia
   "Read more"; se non c'è spazio va intera sulla riga sotto. */
:where(*):has(> .dvs-share--horizontal) { flex-wrap: wrap; row-gap: 16px; }
.tx-ncard__actions:has(> .dvs-share) { flex-wrap: wrap !important; row-gap: 16px; }
:where(*):has(> .dvs-share--horizontal) > :is(a, .wp-block-read-more, .wp-block-buttons, .wp-block-button) { flex-shrink: 0; }
.dvs-share .dvs-share__list { flex-wrap: nowrap; }
/* Schermi molto stretti: i bottoni possono andare a capo invece di uscire dallo schermo. */
@media (max-width: 359px) {
	.dvs-share, .dvs-share .dvs-share__list { flex-wrap: wrap; }
}
