/**
 * Pinterest "Save" button on images.
 */
.tp-pin { position: relative; display: inline-block; max-width: 100%; line-height: 0; }
.tp-pin img { max-width: 100%; height: auto; }

.tp-pin__btn {
	position: absolute;
	z-index: 5;
	display: inline-flex;
	align-items: center;
	gap: 0.45em;
	background: var(--tp-pin-bg, #e60023);
	color: var(--tp-pin-color, #fff);
	border-radius: var(--tp-pin-radius, 10px);
	/* Exact size from the Customizer; padding scales with it (em). */
	font-size: var(--tp-pin-fs, 14px);
	padding: 0.55em 0.8em;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
	opacity: 0;
	transform: translateY(-2px);
	transition: opacity 0.18s ease, transform 0.18s ease;
	pointer-events: none;
}
.tp-pin:hover .tp-pin__btn,
.tp-pin.is-always .tp-pin__btn,
.tp-pin__btn:focus-visible { opacity: 1; transform: none; pointer-events: auto; }

.tp-pin__icon { display: inline-flex; }
.tp-pin__icon svg { width: 1.05em; height: 1.05em; display: block; }
.tp-pin__text { white-space: nowrap; }

/* Positions */
.tp-pin-pos-top-left { top: 12px; left: 12px; }
.tp-pin-pos-top-right { top: 12px; right: 12px; }
.tp-pin-pos-bottom-left { bottom: 12px; left: 12px; }
.tp-pin-pos-bottom-right { bottom: 12px; right: 12px; }
.tp-pin-pos-center { top: 50%; left: 50%; transform: translate(-50%, -50%) translateY(-2px); }
.tp-pin:hover .tp-pin-pos-center,
.tp-pin.is-always .tp-pin-pos-center { transform: translate(-50%, -50%); }
