/* Frontend: Post Elements bar */
.post-footer-elements {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 0;
	margin: 20px 0;
	padding: 6px 8px;
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 12px;
	overflow: hidden;
	--pfe-item-gap-x: 6px;
	--pfe-item-gap-y: 5px;
}

/* Top placement keeps visual style while moving before content via PHP output order */
.post-footer-elements[data-placement="top"] {
	margin-top: 0;
}

.post-footer-elements[data-pfe="1"] > .pfe-item,
.post-footer-elements[data-pfe="1"][data-pfe-wrapped="0"] > * {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	padding: 0 3px;
	margin: var(--pfe-item-gap-y) var(--pfe-item-gap-x) 0 0;
	background: transparent;
	line-height: 1;
}

.post-footer-elements[data-pfe="1"] > .pfe-item:last-child,
.post-footer-elements[data-pfe="1"][data-pfe-wrapped="0"] > *:last-child {
	margin-right: 0;
}

/* Normalize margins from source plugins */
.post-footer-elements .pvc-view-counter,
.post-footer-elements .wpfav-inline,
.post-footer-elements .wpfav-btn {
	margin: 0;
}

/* Normalize typographic baseline inside footer */
.post-footer-elements .wpfav-btn,
.post-footer-elements .wpulike .wp_ulike_general_class,
.post-footer-elements .pvc-view-counter {
	line-height: 1;
}

.post-footer-elements .wpulike {
	margin: 0;
	padding: 0;
	display: inline-flex;
	align-items: center;
	line-height: 1;
}

.post-footer-elements .wpulike .wp_ulike_general_class {
	margin: 0;
}

/* Visual baseline shim for simpler items to match the chip's shadow */
.post-footer-elements .wpfav-inline,
.post-footer-elements .wpulike {
	margin-bottom: 2px;
}

/* Shared button baseline */
.post-footer-elements[data-pfe="1"] .wpfav-btn,
.post-footer-elements[data-pfe="1"] .abm-btn,
.post-footer-elements[data-pfe="1"] .pvc-view-counter,
.post-footer-elements[data-pfe="1"] .pfe-social-btn,
.post-footer-elements[data-pfe="1"] .pfe-report-button,
.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn,
.post-footer-elements[data-pfe="1"] .pfe-share .pfe-share__launcher,
.post-footer-elements[data-pfe="1"] .pfe-share a,
.post-footer-elements[data-pfe="1"] .pfe-share button {
	font: 600 14px/1 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
	min-height: 44px;
	box-sizing: border-box;
	border-radius: 12px;
}

/* Favorites */
.post-footer-elements[data-pfe="1"] .wpfav-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 7px 12px;
	background: #fff;
	border: 1px solid #e5e5e5;
	box-shadow: none;
	transform: none;
	transition: color 0.16s ease;
	text-align: center;
	min-width: 120px;
}

.post-footer-elements[data-pfe="1"] .wpfav-btn:hover {
	box-shadow: none;
	transform: none;
}

.post-footer-elements[data-pfe="1"] .wpfav-btn .wpfav-btn__icon {
	width: 20px;
	height: 20px;
	display: block;
}

.post-footer-elements[data-pfe="1"] .wpfav-btn .wpfav-btn__text,
.post-footer-elements[data-pfe="1"] .wpfav-btn .wpfav-btn__count {
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
}

/* Author */
.post-footer-elements[data-pfe="1"] .abm-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 12px;
	background: #fff;
	border: 1px solid #e5e5e5;
	box-shadow: none;
	text-align: center;
	min-width: 120px;
}

.post-footer-elements[data-pfe="1"] .abm-ico {
	width: 20px;
	height: 20px;
	display: block;
}

.post-footer-elements[data-pfe="1"] .abm-ico img {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.post-footer-elements[data-pfe="1"] .abm-btn-label {
	font-size: 14px;
	font-weight: 600;
}

/* Views */
.post-footer-elements[data-pfe="1"] .pvc-view-counter {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 7px 12px;
	background: #fff;
	border: 1px solid #e5e5e5;
	box-shadow: none;
	text-align: center;
	min-width: 120px;
	margin-top: 0;
}

.post-footer-elements[data-pfe="1"] .pvc-icon img,
.post-footer-elements[data-pfe="1"] .pvc-icon svg {
	width: 20px;
	height: 20px;
	display: block;
}

.post-footer-elements[data-pfe="1"] .pvc-text {
	white-space: nowrap;
	font-size: 14px;
	font-weight: 600;
}

/* Download */
.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 12px;
	line-height: 1;
	box-shadow: none;
	transform: none;
	background: transparent;
	border: 1px solid #e5e5e5;
	position: relative;
	overflow: visible;
	transform-origin: center;
	will-change: transform, box-shadow;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms cubic-bezier(0.2, 0, 0, 1), box-shadow 180ms ease;
}

.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
	box-shadow: 0 0 0 0 rgba(17, 24, 39, 0.14);
	opacity: 0;
	transform: scale(0.98);
	transition: opacity 0.18s ease;
}

.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn.pfe-click-animating {
	transform: translateY(-0.3px) scale(1.003);
	box-shadow: 0 1px 3px rgba(17, 24, 39, 0.08), 0 1px 1px rgba(0, 0, 0, 0.04);
}

.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn.pfe-click-animating::before {
	opacity: 1;
	animation: pfeRippleSoft 220ms ease-out 1 both;
}

.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn.pfe-click-animating .myplugin-icon {
	animation: pfeIconBounceSoft 220ms ease-out 1;
}

.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-icon svg {
	width: 20px;
	height: 20px;
	display: block;
}

.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-count {
	font-size: 14px;
	font-weight: 600;
}

/* Border trace loading effect */
.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn.pfe-loading {
	position: relative;
}

.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn.pfe-loading::after {
	content: "";
	position: absolute;
	inset: -2px;
	border-radius: inherit;
	background: conic-gradient(from 0deg, #2563eb 0 18%, transparent 18% 100%);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	padding: 2px;
	animation: pfeBorderSpin 1s linear infinite;
	transform-origin: 50% 50%;
}

/* WP ULike */
.post-footer-elements[data-pfe="1"] .wpulike .wp_ulike_general_class {
	display: inline-flex;
	align-items: center;
	gap: 0;
	padding: 0;
	margin: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}

.post-footer-elements[data-pfe="1"] .wpulike button.wp_ulike_btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 0;
	background-color: transparent;
	border: 0;
	box-shadow: none;
	min-width: 0;
	font: 600 14px/1 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
	color: inherit;
}

.post-footer-elements[data-pfe="1"] .wpulike button.wp_ulike_btn.wp_ulike_put_image {
	width: 20px;
	height: 20px;
}

.post-footer-elements[data-pfe="1"] .wpulike .count-box {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
	margin: 0;
	line-height: 1;
}

.post-footer-elements[data-pfe="1"] .wpulike .count-box:before,
.post-footer-elements[data-pfe="1"] .wpulike-default .count-box:before {
	display: none;
}

.post-footer-elements[data-pfe="1"] .wpulike-default .count-box {
	margin-left: 0;
}

/* Share: launcher gets the chip, wrapper stays transparent */
.post-footer-elements[data-pfe="1"] .pfe-share {
	border: 0;
	background: transparent;
}

.post-footer-elements[data-pfe="1"] .pfe-share .pfe-share__launcher,
.post-footer-elements[data-pfe="1"] .pfe-share a,
.post-footer-elements[data-pfe="1"] .pfe-share button {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 11px 16px;
	background: #fff;
	border: 1px solid #e5e5e5;
	box-shadow: none;
	text-align: center;
	min-width: 120px;
	margin: 0 -3px;
}

.post-footer-elements[data-pfe="1"] .pfe-share svg {
	width: 20px;
	height: 20px;
	display: block;
}

/* Native social buttons */
.post-footer-elements[data-pfe="1"] .pfe-social-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 7px 14px;
	background-color: #fff;
	border: 1px solid #e5e5e5;
	color: inherit;
	text-decoration: none;
	box-shadow: none;
	transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

.post-footer-elements[data-pfe="1"] .pfe-social-btn .pfe-social-icon {
	line-height: 0;
	font-size: 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.post-footer-elements[data-pfe="1"] .pfe-social-btn:hover,
.post-footer-elements[data-pfe="1"] .pfe-social-btn:focus-visible {
	border-color: #d8d8d8;
	transform: translateY(-1px) scale(1.02);
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.12);
	text-decoration: none;
}

.post-footer-elements[data-pfe="1"] .pfe-social-whatsapp .fab.fa-whatsapp {
	font-size: 1.1em;
	color: #25d366;
}

.post-footer-elements[data-pfe="1"] .pfe-social-telegram .fab.fa-telegram-plane {
	font-size: 1.1em;
	color: #229ed9;
}

.post-footer-elements[data-pfe="1"] .pfe-social-email .fas.fa-envelope {
	font-size: 1.1em;
	color: #2563eb;
}

.post-footer-elements[data-pfe="1"] .pfe-social-email--icon-only .pfe-social-text {
	display: none !important;
}

.post-footer-elements[data-pfe="1"] .pfe-social-other .fas.fa-link {
	font-size: 1.1em;
	color: #6366f1;
}

.post-footer-elements[data-pfe="1"] .pfe-social-x .fab.fa-x-twitter,
.post-footer-elements[data-pfe="1"] .pfe-social-x .fab.fa-twitter {
	font-size: 1.1em;
	color: #14171a;
}

/* BuddyPress Moderation: inline report icon */
.post-footer-elements[data-pfe="1"] .pfe-report-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 7px 12px;
	background-color: #fff;
	border: 1px solid #e5e5e5;
	color: inherit;
	text-decoration: none;
	transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
	position: relative;
	overflow: visible;
	transform-origin: center;
	will-change: transform, box-shadow;
}

.post-footer-elements[data-pfe="1"] .pfe-report-button::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
	box-shadow: 0 0 0 0 rgba(17, 24, 39, 0.14);
	opacity: 0;
	transform: scale(0.98);
	transition: opacity 0.18s ease;
}

.post-footer-elements[data-pfe="1"] .pfe-report-button:hover,
.post-footer-elements[data-pfe="1"] .pfe-report-button:focus-visible {
	border-color: #d8d8d8;
	transform: translateY(-1px) scale(1.02);
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.12);
	text-decoration: none;
}

.post-footer-elements[data-pfe="1"] .pfe-report-button.pfe-click-animating {
	transform: translateY(-0.3px) scale(1.003);
	box-shadow: 0 1px 3px rgba(17, 24, 39, 0.08), 0 1px 1px rgba(0, 0, 0, 0.04);
}

.post-footer-elements[data-pfe="1"] .pfe-report-button.pfe-click-animating::before {
	opacity: 1;
	animation: pfeRippleSoft 220ms ease-out 1 both;
}

.post-footer-elements[data-pfe="1"] .pfe-report-button.pfe-click-animating .pfe-report-icon {
	animation: pfeIconBounceSoft 220ms ease-out 1;
}

.post-footer-elements[data-pfe="1"] .pfe-report-button .pfe-report-icon {
	width: 20px;
	height: 20px;
	display: block;
}

.post-footer-elements[data-pfe="1"] .pfe-report-button .pfe-report-label {
	display: none !important;
}

/* PVC style variants */
.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style1 {
	background: #1a1a1a;
	color: #fff;
	border: 1px solid #1a1a1a;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style3 {
	background: transparent;
	color: #555;
	border: 0;
	border-bottom: 2px solid #e5e5e5;
	border-radius: 10px;
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style4 {
	background: rgba(255, 255, 255, 0.6);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	border: 1px solid rgba(0, 0, 0, 0.08);
	color: #111;
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style5 {
	background: linear-gradient(135deg, #6366f1 0%, #a855f7 100%);
	color: #fff;
	border: 0;
	box-shadow: 0 4px 15px rgba(99, 102, 241, 0.3);
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style6 {
	background: #111;
	color: #0ff;
	border: 2px solid #0ff;
	box-shadow: 0 0 12px rgba(0, 255, 255, 0.35);
	animation: pfeNeonPulse 2s infinite;
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style7 {
	background: #1da1f2;
	color: #fff;
	border: 0;
	border-radius: 9999px;
	box-shadow: 0 2px 8px rgba(29, 161, 242, 0.3);
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style8 {
	background: #e0e5ec;
	color: #4a5568;
	border: 0;
	box-shadow: 8px 8px 15px #a3b1c6, -8px -8px 15px #fff;
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style9 {
	background: #000;
	color: #0ff;
	border: 2px solid #ff0;
	clip-path: polygon(0 0, 100% 0, 95% 100%, 5% 100%);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	text-shadow: 2px 2px 0 #ff0;
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style10 {
	background: linear-gradient(45deg, #ff1493, #ff69b4);
	color: #fff;
	border: 3px solid #00ffff;
	transform: rotate(-2deg);
	text-shadow: 2px 2px 0 #ff00ff;
	box-shadow: 5px 5px 0 #00ffff, inset -2px -2px 0 rgba(0, 0, 0, 0.3);
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone1 {
	background: linear-gradient(45deg, #ffd700, #ffa500);
	color: #fff;
	border: 0;
	box-shadow: 0 0 20px rgba(255, 215, 0, 0.45);
	animation: pfeAchievementPulse 2s infinite;
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone2 {
	background: linear-gradient(45deg, #ff4500, #ff0000);
	color: #fff;
	border: 0;
	box-shadow: 0 0 20px rgba(255, 69, 0, 0.45);
	animation: pfeFlamePulse 1.5s ease-in-out infinite;
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone3 {
	background: linear-gradient(45deg, #4b0082, #8a2be2);
	color: #fff;
	border: 2px solid #e6e6fa;
	background-size: 200% 200%;
	animation: pfeStarShine 3s ease-in-out infinite;
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone4 {
	background: linear-gradient(45deg, #daa520, #ffd700);
	color: #fff;
	border: 3px solid #b8860b;
	animation: pfeTrophyBounce 2s ease-in-out infinite;
}

.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone5 {
	background: #000;
	color: #fff;
	border: 2px solid #ffd700;
	box-shadow: 0 0 20px #ffd700;
	animation: pfePowerSurge 1.5s ease-in-out infinite;
}

@keyframes pfeRippleSoft {
	0% {
		box-shadow: 0 0 0 0 rgba(17, 24, 39, 0.06);
	}
	100% {
		box-shadow: 0 0 0 6px transparent;
	}
}

@keyframes pfeIconBounceSoft {
	0% {
		transform: translateY(0);
	}
	30% {
		transform: translateY(-1px);
	}
	60% {
		transform: translateY(0);
	}
	80% {
		transform: translateY(-0.25px);
	}
	100% {
		transform: translateY(0);
	}
}

@keyframes pfeBorderSpin {
	to {
		transform: rotate(1turn);
	}
}

@keyframes pfeNeonPulse {
	0% {
		box-shadow: 0 0 12px rgba(0, 255, 255, 0.35);
	}
	50% {
		box-shadow: 0 0 22px rgba(0, 255, 255, 0.55);
	}
	100% {
		box-shadow: 0 0 12px rgba(0, 255, 255, 0.35);
	}
}

@keyframes pfeAchievementPulse {
	0% {
		transform: scale(1);
	}
	50% {
		transform: scale(1.05);
	}
	100% {
		transform: scale(1);
	}
}

@keyframes pfeFlamePulse {
	0% {
		box-shadow: 0 0 20px rgba(255, 69, 0, 0.45);
	}
	50% {
		box-shadow: 0 0 30px rgba(255, 0, 0, 0.55);
	}
	100% {
		box-shadow: 0 0 20px rgba(255, 69, 0, 0.45);
	}
}

@keyframes pfeStarShine {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

@keyframes pfeTrophyBounce {
	0%,
	100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-5px);
	}
}

@keyframes pfePowerSurge {
	0% {
		box-shadow: 0 0 20px #ffd700;
	}
	50% {
		box-shadow: 0 0 40px #ffa500;
	}
	100% {
		box-shadow: 0 0 20px #ffd700;
	}
}

@media (max-width: 768px) {
	.post-footer-elements {
		gap: 8px;
	}
}

@media (max-width: 430px) {
	/* Favorites: hide text only */
	.post-footer-elements[data-pfe="1"] .wpfav-btn .wpfav-btn__text {
		display: none !important;
	}

	/* Share: hide label only */
	.post-footer-elements[data-pfe="1"] .pfe-share__launcher-label {
		display: none !important;
	}

	/* Social buttons: icon-only */
	.post-footer-elements[data-pfe="1"] .pfe-social-whatsapp .pfe-social-text,
	.post-footer-elements[data-pfe="1"] .pfe-social-telegram .pfe-social-text,
	.post-footer-elements[data-pfe="1"] .pfe-social-x .pfe-social-text,
	.post-footer-elements[data-pfe="1"] .pfe-social-email .pfe-social-text,
	.post-footer-elements[data-pfe="1"] .pfe-social-other .pfe-social-text {
		display: none !important;
	}

	/* Shrink buttons on phones */
	.post-footer-elements[data-pfe="1"] .wpfav-btn {
		min-width: auto !important;
		padding: 7px 12px !important;
	}

	.post-footer-elements[data-pfe="1"] .pfe-share .pfe-share__launcher,
	.post-footer-elements[data-pfe="1"] .pfe-share a,
	.post-footer-elements[data-pfe="1"] .pfe-share button {
		min-width: auto !important;
		padding: 11px 16px !important;
		min-height: 44px !important;
		box-sizing: border-box;
		margin: 0 -3px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn.pfe-click-animating,
	.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn.pfe-click-animating::before,
	.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn.pfe-click-animating .myplugin-icon,
	.post-footer-elements[data-pfe="1"] .myplugin-download .myplugin-btn.pfe-loading::after,
	.post-footer-elements[data-pfe="1"] .pfe-report-button.pfe-click-animating,
	.post-footer-elements[data-pfe="1"] .pfe-report-button.pfe-click-animating::before,
	.post-footer-elements[data-pfe="1"] .pfe-report-button.pfe-click-animating .pfe-report-icon,
	.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-style6,
	.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone1,
	.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone2,
	.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone3,
	.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone4,
	.post-footer-elements[data-pfe="1"] .pvc-view-counter.pvc-milestone5 {
		transform: none !important;
		transition: none !important;
		animation: none !important;
		box-shadow: none;
	}
}
