/* Presentation-only layer. Native BuddyBoss controls, modal content and AJAX stay intact. */
html.cspfu-prepaint .activity-list .activity-item .activity-state,
html.cspfu-prepaint .activity-item > .activity-state,
html.cspfu-active .activity-list .activity-item .activity-state:not(.cspfu-state-ready),
html.cspfu-active .activity-item > .activity-state:not(.cspfu-state-ready) {
	visibility: hidden !important;
}

html.cspfu-active .activity-list .activity-item .activity-state.cspfu-enhanced,
html.cspfu-active .activity-item > .activity-state.cspfu-enhanced {
	display: flex !important;
	align-items: center !important;
	min-width: 0 !important;
	min-height: 48px;
	gap: 12px !important;
	white-space: nowrap;
}

html.cspfu-active .activity-state.cspfu-enhanced .cspfu-reaction-ready {
	display: inline-flex !important;
	align-items: center !important;
	min-width: 0;
	min-height: 44px;
	margin-right: auto !important;
	color: #5a24d6;
	cursor: pointer;
	white-space: nowrap;
}

/* Native names and icons remain in the DOM and continue to drive BuddyBoss. */
html.cspfu-active .cspfu-reaction-ready > :is(
	.reactions_item,
	.reactions_item_names,
	.reaction-names,
	.reactions-names,
	.reactions-count,
	.activity-reactions_count,
	.reaction-count,
	.likes-count,
	.like-count,
	.activity-state-reaction-label,
	.activity-state-reactions-label,
	[class*="reaction"][class*="name"]
) {
	display: none !important;
}

html.cspfu-active .cspfu-reaction-summary {
	display: inline-flex !important;
	align-items: center;
	min-width: 0;
	gap: 8px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
}

html.cspfu-active .cspfu-reaction-summary__avatars {
	display: inline-flex;
	align-items: center;
	padding-left: 2px;
}

html.cspfu-active .cspfu-reaction-summary__avatar {
	display: block;
	width: 28px;
	height: 28px;
	margin-left: -8px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #eef0f4;
	box-shadow: 0 2px 8px rgba(31, 36, 50, .12);
	object-fit: cover;
}

html.cspfu-active .cspfu-reaction-summary__avatar:first-child {
	margin-left: 0;
}

html.cspfu-active .cspfu-reaction-summary__icons {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	overflow: visible;
	padding-left: 3px;
}

html.cspfu-active .cspfu-reaction-summary__icons .reactions_item {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	flex: 0 0 24px;
	width: 24px;
	min-width: 24px;
	max-width: 24px;
	height: 24px;
	margin-left: -5px;
	padding: 0 !important;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #fff;
	overflow: visible !important;
}

html.cspfu-active .cspfu-reaction-summary__icons .reactions_item:first-child {
	margin-left: 0;
}

html.cspfu-active .cspfu-reaction-summary__icons :is(img.emotions, svg) {
	display: block;
	box-sizing: border-box;
	flex: 0 0 20px;
	width: 20px !important;
	min-width: 20px !important;
	max-width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	object-fit: contain !important;
	aspect-ratio: 1 / 1;
	overflow: visible;
}

html.cspfu-active .cspfu-reaction-summary__icons i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	flex: 0 0 20px;
	width: 20px;
	min-width: 20px;
	max-width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #3379f6;
	color: #fff !important;
	font-size: 13px !important;
	line-height: 1 !important;
	aspect-ratio: 1 / 1;
	overflow: visible;
}

html.cspfu-active .cspfu-reaction-summary__label {
	overflow: hidden;
	color: #5a24d6;
	text-overflow: ellipsis;
}

html.cspfu-active .cspfu-reaction-summary__chevron,
html.cspfu-active .cspfu-reaction-summary__chevron svg {
	display: block;
	width: 18px;
	height: 18px;
}

html.cspfu-active .cspfu-reaction-summary__chevron svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

html.cspfu-active .activity-state.cspfu-enhanced .cspfu-stat-ready {
	display: inline-flex !important;
	align-items: center !important;
	flex: 0 0 auto;
	min-height: 44px;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: #737b8c;
	font-size: 14px !important;
	font-weight: 500;
	line-height: 1 !important;
	text-decoration: none !important;
}

html.cspfu-active .cspfu-stat-ready::after {
	display: none !important;
	content: none !important;
}

html.cspfu-active .cspfu-stat-ready > :not(.cspfu-stat) {
	display: none !important;
}

html.cspfu-active .cspfu-stat {
	display: inline-flex !important;
	align-items: center;
}

html.cspfu-active .cspfu-stat-ready.cspfu-is-zero {
	display: none !important;
}

html.cspfu-active .cspfu-stat-ready:focus-visible,
html.cspfu-active .cspfu-reaction-ready:focus-visible,
html.cspfu-active .cspfu-popup-ready :is(a, button, input):focus-visible {
	border-radius: 10px;
	outline: 3px solid rgba(106, 29, 150, .24) !important;
	outline-offset: 2px;
}

/* Responsive native reactions popup. */
body.cspfu-modal-open {
	overflow: hidden !important;
}

html.cspfu-active .activity-state-popup.cspfu-popup-ready {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147483000 !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

html.cspfu-active .activity-state-popup.cspfu-popup-ready .activity-state-popup_overlay {
	position: absolute !important;
	inset: 0 !important;
	background: rgba(20, 24, 35, .5) !important;
	backdrop-filter: blur(2px);
}

html.cspfu-active .activity-state-popup.cspfu-popup-ready .activity-state-popup_inner {
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	display: flex !important;
	flex-direction: column;
	width: min(560px, calc(100vw - 32px)) !important;
	height: min(720px, calc(100dvh - 48px)) !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 28px 30px 24px !important;
	transform: translate(-50%, -50%) !important;
	border: 1px solid #e4e7ed;
	border-radius: 20px !important;
	background: #fff !important;
	box-shadow: 0 28px 70px rgba(18, 23, 38, .24) !important;
	box-sizing: border-box;
	overflow: hidden !important;
}

html.cspfu-active .activity-state-popup.cspfu-popup-ready.cspfu-popup--compact .activity-state-popup_inner {
	height: min(460px, calc(100dvh - 48px)) !important;
}

html.cspfu-active .cspfu-popup__drag-handle {
	display: none;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_title {
	position: relative;
	flex: 0 0 auto;
	min-height: 60px;
	margin: 0 !important;
	padding: 0 58px 18px 0 !important;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_title h4 {
	margin: 0 0 5px !important;
	color: #202537 !important;
	font-size: 26px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
}

html.cspfu-active .cspfu-popup__subtitle {
	margin: 0 !important;
	color: #737b8c;
	font-size: 15px;
	line-height: 1.35;
}

html.cspfu-active .cspfu-popup__close {
	position: absolute;
	top: 0;
	right: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #f2f3f6;
	color: #596174;
	cursor: pointer;
}

html.cspfu-active .cspfu-popup__close:hover {
	background: #e9eaf0;
	color: #202537;
}

html.cspfu-active .cspfu-popup__close svg {
	display: block;
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab {
	display: flex !important;
	flex: 1 1 auto;
	flex-direction: column;
	min-height: 0;
	margin: 0 !important;
}

html.cspfu-active .cspfu-popup__search {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	min-height: 50px;
	margin: 0 0 16px;
	padding: 0 15px;
	border: 1px solid #dfe2e9;
	border-radius: 13px;
	background: #fff;
	color: #8b92a1;
	box-sizing: border-box;
}

html.cspfu-active .cspfu-popup__search:focus-within {
	border-color: #6d35df;
	box-shadow: 0 0 0 3px rgba(109, 53, 223, .11);
}

html.cspfu-active .cspfu-popup__search svg {
	display: block;
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	margin-right: 10px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
}

html.cspfu-active .cspfu-popup__search input {
	flex: 1 1 auto;
	width: 100%;
	height: 46px;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #202537 !important;
	font-size: 16px !important;
}

html.cspfu-active .cspfu-popup__search input::placeholder {
	color: #9aa0ad;
	opacity: 1;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_panel {
	flex: 0 0 auto;
	margin: 0 0 12px !important;
	overflow: hidden;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_panel ul {
	display: flex !important;
	align-items: stretch;
	width: 100%;
	margin: 0 !important;
	padding: 0 0 4px !important;
	gap: 7px;
	list-style: none !important;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scrollbar-width: thin;
	scroll-snap-type: x proximity;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_panel li {
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 0 !important;
	scroll-snap-align: start;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_panel a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 60px;
	height: 46px;
	margin: 0 !important;
	padding: 0 17px !important;
	gap: 7px;
	border: 1px solid #e0e3e9 !important;
	border-radius: 12px !important;
	background: #fff !important;
	color: #4b5264 !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	box-sizing: border-box;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_panel li:first-child a {
	min-width: 136px;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_panel a.active {
	border-color: #6d35df !important;
	background: #f6f2ff !important;
	color: #5a24d6 !important;
	box-shadow: 0 3px 10px rgba(90, 36, 214, .08);
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_panel a :is(img.emotions, svg) {
	display: block;
	width: 25px !important;
	height: 25px !important;
	margin: 0 !important;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_panel a .bb-icon-thumbs-up {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	background: #3379f6;
	color: #fff !important;
	font-size: 15px !important;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_content {
	position: relative;
	display: block !important;
	flex: 1 1 auto;
	min-height: 0;
	margin: 0 -12px 0 0 !important;
	padding: 0 12px 0 0 !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	overscroll-behavior: contain;
	scrollbar-color: #aeb3bd transparent;
	scrollbar-width: thin;
}

html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_item.active {
	display: block !important;
	height: auto !important;
	overflow: visible !important;
}

html.cspfu-active .cspfu-popup-ready .activity-state_users {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user {
	display: flex !important;
	align-items: center !important;
	min-height: 68px;
	margin: 0 !important;
	padding: 8px 4px !important;
	border-bottom: 1px solid #eff0f3;
	box-sizing: border-box;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user:last-child {
	border-bottom: 0;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user__avatar {
	flex: 0 0 48px;
	width: 48px !important;
	height: 48px !important;
	margin: 0 14px 0 0 !important;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user__avatar > a {
	position: relative;
	display: block;
	width: 48px;
	height: 48px;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user__avatar img.avatar {
	display: block;
	width: 48px !important;
	height: 48px !important;
	margin: 0 !important;
	border-radius: 50% !important;
	background: #eff1f5;
	object-fit: cover;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user__reaction {
	position: absolute !important;
	right: -3px !important;
	bottom: -2px !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 20px !important;
	height: 20px !important;
	margin: 0 !important;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #fff;
	box-sizing: content-box;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user__reaction :is(img.emotions, svg) {
	display: block;
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user__reaction .bb-icon-thumbs-up {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #3379f6;
	color: #fff !important;
	font-size: 11px !important;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user__name {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0 !important;
}

html.cspfu-active .cspfu-popup-ready .activity-state_user__name a {
	color: #202537 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.35;
	text-decoration: none !important;
}

html.cspfu-active .cspfu-popup__empty {
	margin: 24px 0 !important;
	padding: 18px;
	border-radius: 12px;
	background: #f6f7f9;
	color: #687083;
	font-size: 14px;
	text-align: center;
}

html.cspfu-active .cspfu-popup__empty[hidden],
html.cspfu-active .cspfu-popup-ready .activity-state_user[hidden] {
	display: none !important;
}

@media (max-width: 900px) {
	html.cspfu-mobile-active .activity-list .activity-item .activity-state.cspfu-enhanced,
	html.cspfu-mobile-active .activity-item > .activity-state.cspfu-enhanced {
		min-height: 52px;
		gap: 8px !important;
		padding-right: 2px;
		padding-left: 2px;
	}

	html.cspfu-mobile-active .activity-state.cspfu-enhanced .cspfu-reaction-ready {
		max-width: calc(100% - 118px);
	}

	html.cspfu-mobile-active .cspfu-reaction-summary {
		gap: 6px;
		font-size: 13px;
	}

	html.cspfu-mobile-active .cspfu-reaction-summary__avatar {
		width: 26px;
		height: 26px;
		margin-left: -9px;
	}

	html.cspfu-mobile-active .cspfu-reaction-summary__icons .reactions_item {
		flex-basis: 22px;
		width: 22px;
		min-width: 22px;
		max-width: 22px;
		height: 22px;
	}

	html.cspfu-mobile-active .cspfu-reaction-summary__icons :is(img.emotions, svg) {
		flex-basis: 18px;
		width: 18px !important;
		min-width: 18px !important;
		max-width: 18px !important;
		height: 18px !important;
	}

	html.cspfu-mobile-active .cspfu-reaction-summary__icons i {
		flex-basis: 18px;
		width: 18px;
		min-width: 18px;
		max-width: 18px;
		height: 18px;
	}

	html.cspfu-mobile-active .activity-state.cspfu-enhanced .cspfu-stat-ready {
		min-height: 44px;
		font-size: 13px !important;
	}

	html.cspfu-mobile-active .activity-state-popup.cspfu-popup-ready .activity-state-popup_inner {
		top: auto !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: min(78dvh, 760px) !important;
		padding: 18px 18px calc(18px + env(safe-area-inset-bottom)) !important;
		transform: translateY(var(--cspfu-drag-y, 0px)) !important;
		border-right: 0 !important;
		border-bottom: 0 !important;
		border-left: 0 !important;
		border-radius: 26px 26px 0 0 !important;
		box-shadow: 0 -16px 44px rgba(18, 23, 38, .2) !important;
		transition: transform .18s ease-out;
	}

	html.cspfu-mobile-active .activity-state-popup.cspfu-popup-ready.cspfu-popup--compact .activity-state-popup_inner {
		height: min(78dvh, 760px) !important;
	}

	html.cspfu-mobile-active .cspfu-popup__drag-handle {
		display: block;
		flex: 0 0 auto;
		width: 44px;
		height: 5px;
		margin: 0 auto 14px;
		border-radius: 999px;
		background: #d3d6dd;
		touch-action: pan-y;
	}

	html.cspfu-mobile-active .cspfu-popup-ready .activity-state-popup_title {
		min-height: 58px;
		padding: 0 56px 15px 2px !important;
	}

	html.cspfu-mobile-active .cspfu-popup-ready .activity-state-popup_title h4 {
		font-size: 25px !important;
	}

	html.cspfu-mobile-active .cspfu-popup__close {
		width: 46px;
		height: 46px;
	}

	html.cspfu-mobile-active .cspfu-popup__search {
		min-height: 50px;
		margin-bottom: 14px;
		border-radius: 14px;
	}

	html.cspfu-mobile-active .cspfu-popup-ready .activity-state-popup_tab_panel {
		margin-right: -18px !important;
		margin-bottom: 10px !important;
	}

	html.cspfu-mobile-active .cspfu-popup-ready .activity-state-popup_tab_panel ul {
		padding-right: 18px !important;
	}

	html.cspfu-mobile-active .cspfu-popup-ready .activity-state-popup_tab_panel a {
		height: 48px;
		padding: 0 15px !important;
	}

	html.cspfu-mobile-active .cspfu-popup-ready .activity-state_user {
		min-height: 64px;
		padding: 7px 2px !important;
	}

	html.cspfu-mobile-active .cspfu-popup-ready .activity-state_user__avatar,
	html.cspfu-mobile-active .cspfu-popup-ready .activity-state_user__avatar > a,
	html.cspfu-mobile-active .cspfu-popup-ready .activity-state_user__avatar img.avatar {
		width: 46px !important;
		height: 46px !important;
	}
}

@media (max-width: 480px) {
	html.cspfu-mobile-active .activity-state.cspfu-enhanced .cspfu-stat-ready--share,
	html.cspfu-mobile-active .activity-state.cspfu-enhanced .activity-state-shares.cspfu-stat-ready {
		display: none !important;
	}

	html.cspfu-mobile-active .activity-state.cspfu-enhanced .cspfu-reaction-ready {
		max-width: calc(100% - 104px);
	}

	html.cspfu-mobile-active .cspfu-reaction-summary__label {
		max-width: 82px;
	}
}

@media (max-width: 374px) {
	html.cspfu-mobile-active .cspfu-reaction-summary__avatars .cspfu-reaction-summary__avatar:nth-child(3) {
		display: none;
	}

	html.cspfu-mobile-active .cspfu-reaction-summary__icons .reactions_item:nth-child(n+3) {
		display: none !important;
	}

	html.cspfu-mobile-active .cspfu-reaction-summary__label {
		max-width: 70px;
	}
}

@media (prefers-reduced-motion: reduce) {
	html.cspfu-active .activity-state-popup.cspfu-popup-ready .activity-state-popup_inner {
		transition: none !important;
	}
}

@media (forced-colors: active) {
	html.cspfu-active .cspfu-reaction-summary__avatar,
	html.cspfu-active .cspfu-reaction-summary__icons .reactions_item,
	html.cspfu-active .cspfu-popup-ready .activity-state-popup_inner,
	html.cspfu-active .cspfu-popup-ready .activity-state-popup_tab_panel a,
	html.cspfu-active .cspfu-popup__search {
		border: 1px solid CanvasText !important;
	}
}
