/**
 * Staging shell nav — based on testingnavbar.html mockup.
 */

:root {
	--tp-shell-bg: #0d0f14;
	--tp-shell-card: #161b22;
	--tp-shell-border: rgba(255, 255, 255, 0.06);
	--tp-shell-text: #e6edf3;
	--tp-shell-muted: #8b949e;
	--tp-shell-accent: #a78bfa;
	--tp-shell-nav-h: 64px;
	--tp-shell-top-h: 52px;
	--tp-shell-rail-collapsed: 72px;
	--tp-shell-rail-expanded: 200px;
	--tp-shell-right-w: 210px;
}

/* Hide legacy Olympus header when shell is active */
body.tp-shell-nav-active #stunning-header,
body.tp-shell-nav-active #header--standard,
body.tp-shell-nav-active .header--standard,
body.tp-shell-nav-active #mobile-header,
body.tp-shell-nav-active .mobile-header {
	display: none !important;
}

body.tp-shell-nav-active.tp-scroll-hide-header #header--standard {
	transform: none !important;
}

body.tp-shell-nav-active {
	--tp-shell-content-pad-bottom: var(--tp-shell-nav-h);
}

@media (min-width: 992px) {
	body.tp-shell-nav-active {
		--tp-shell-content-pad-bottom: 24px;
	}
}

body.tp-shell-nav-active #page,
body.tp-shell-nav-active #content,
body.tp-shell-nav-active .youzify-page-main-content,
body.tp-shell-nav-active .youzify-page {
	padding-bottom: calc(var(--tp-shell-content-pad-bottom) + env(safe-area-inset-bottom, 0px));
}

@media (min-width: 992px) {
	body.tp-shell-nav-active #page,
	body.tp-shell-nav-active #content,
	body.tp-shell-nav-active .youzify-page-main-content {
		padding-left: var(--tp-shell-rail-collapsed);
		transition: padding-left 0.22s ease;
	}
	body.tp-shell-nav-active.tp-shell-rail-expanded #page,
	body.tp-shell-nav-active.tp-shell-rail-expanded #content,
	body.tp-shell-nav-active.tp-shell-rail-expanded .youzify-page-main-content {
		padding-left: var(--tp-shell-rail-expanded);
	}
}

body.tp-shell-map-page #page,
body.tp-shell-map-page #content {
	padding-top: 0 !important;
}

/* Map page: remove shell top overlay bar */
body.tp-shell-map-page .tp-shell-topbar {
	display: none !important;
}

body.tp-shell-map-page.tp-shell-nav-active #content,
body.tp-shell-map-page.tp-shell-nav-active .youzify-page-main-content {
	padding-top: 0 !important;
}

/* Explore route fallback: remove reserved header band so map starts at top */
body.tp-shell-nav-active.page-explore {
	--tp-explore-header-offset: 0px !important;
}

body.tp-shell-nav-active.page-explore .sticky-wrap,
body.tp-shell-nav-active.page-explore #header--standard,
body.tp-shell-nav-active.page-explore #mobile-header,
body.tp-shell-nav-active.page-explore header,
body.tp-shell-nav-active.page-explore .header {
	display: none !important;
}

body.tp-shell-nav-active.page-explore #content,
body.tp-shell-nav-active.page-explore .youzify-page-main-content,
body.tp-shell-nav-active.page-explore #page {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

/* ── Top bar ── */
.tp-shell-topbar {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: var(--tp-shell-top-h);
	z-index: 100050;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 16px;
	padding-top: env(safe-area-inset-top, 0px);
	background: rgba(13, 15, 20, 0.95);
	backdrop-filter: blur(16px);
	border-bottom: 1px solid var(--tp-shell-border);
	transition: transform 0.3s ease, background 0.3s, border-color 0.3s;
}

@media (min-width: 992px) {
	.tp-shell-topbar {
		left: var(--tp-shell-rail-collapsed);
		transition: transform 0.3s ease, left 0.22s ease;
	}
	body.tp-shell-rail-expanded .tp-shell-topbar {
		left: var(--tp-shell-rail-expanded);
	}
}

.tp-shell-topbar.is-hidden {
	transform: translateY(-100%);
}

.tp-shell-topbar-logo {
	font-family: Montserrat, sans-serif;
	font-size: 16px;
	font-weight: 900;
}

.tp-shell-topbar-logo a {
	color: var(--tp-shell-text);
	text-decoration: none;
}

.tp-shell-topbar-logo span {
	color: var(--tp-shell-accent);
}

.tp-shell-topbar-logo--hidden {
	opacity: 0;
	pointer-events: none;
}

.tp-shell-topbar-actions {
	display: flex;
	align-items: center;
	gap: 12px;
	position: relative;
}

.tp-shell-topbar-actions--guest {
	gap: 8px;
}

.tp-shell-auth-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 6px 12px;
	border-radius: 8px;
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
	line-height: 1.2;
}

.tp-shell-auth-btn--ghost {
	color: var(--tp-shell-text);
	border: 1px solid var(--tp-shell-border);
	background: rgba(255, 255, 255, 0.04);
}

.tp-shell-auth-btn--ghost:hover {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
}

.tp-shell-auth-btn--primary {
	color: #fff;
	border: 1px solid rgba(167, 139, 250, 0.45);
	background: linear-gradient(135deg, #7c3aed, #a78bfa);
}

.tp-shell-auth-btn--primary:hover {
	opacity: 0.92;
	color: #fff;
}

@media (max-width: 380px) {
	.tp-shell-auth-btn {
		padding: 6px 9px;
		font-size: 10px;
	}
}

.tp-shell-nav-pill--guest-profile svg {
	width: 22px;
	height: 22px;
}

.tp-shell-topbar-icon {
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--tp-shell-muted);
	text-decoration: none;
	position: relative;
}

.tp-shell-topbar-icon svg {
	width: 20px;
	height: 20px;
}

.tp-shell-notif-dot {
	position: absolute;
	top: 4px;
	right: 4px;
	width: 7px;
	height: 7px;
	background: var(--tp-shell-accent);
	border-radius: 50%;
	border: 1.5px solid var(--tp-shell-bg);
}

.tp-shell-topbar-avatar {
	width: 36px;
	height: 36px;
	border-radius: 10px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	background: rgba(13, 15, 20, 0.55);
	color: #e6edf3;
	font-size: 11px;
	font-weight: 700;
	font-family: Montserrat, sans-serif;
	padding: 0;
	cursor: pointer;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	backdrop-filter: blur(10px);
	transition: background 0.15s ease, border-color 0.15s ease;
}

.tp-shell-topbar-avatar:hover {
	background: rgba(13, 15, 20, 0.72);
	border-color: rgba(255, 255, 255, 0.22);
	color: #fff;
}

.tp-shell-topbar-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tp-shell-topbar-settings-ic {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.tp-shell-topbar-settings-ic svg {
	width: 18px;
	height: 18px;
}

/* Dropdown */
.tp-shell-dropdown {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	width: 220px;
	background: #161b22;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 14px;
	padding: 8px;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.6);
	z-index: 100060;
}

.tp-shell-dropdown[hidden] {
	display: none !important;
}

.tp-shell-dropdown-header {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px;
}

.tp-shell-dropdown-avatar {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: linear-gradient(135deg, #2a2f3a, #3d4450);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 700;
	color: #e6edf3;
	font-family: Montserrat, sans-serif;
}

.tp-shell-dropdown-name {
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	font-weight: 700;
	color: var(--tp-shell-text);
}

.tp-shell-dropdown-sub {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: var(--tp-shell-accent);
	margin-top: 2px;
}

.tp-shell-dropdown-divider {
	height: 1px;
	background: rgba(255, 255, 255, 0.06);
	margin: 4px 0;
}

.tp-shell-dropdown-item {
	display: block;
	padding: 10px;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
	color: var(--tp-shell-muted);
	text-decoration: none;
	transition: background 0.15s, color 0.15s;
}

.tp-shell-dropdown-item:hover {
	background: rgba(255, 255, 255, 0.05);
	color: var(--tp-shell-text);
}

.tp-shell-dropdown-item--danger {
	color: #f87171;
}

/* Settings sheet (mockup2 style) */
.tp-shell-account-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	z-index: 100070;
}

.tp-shell-account-backdrop[hidden] {
	display: none !important;
}

.tp-shell-account-sheet {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	background: #161b22;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 16px 16px 0 0;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.58);
	z-index: 100071;
	padding: 0 0 calc(env(safe-area-inset-bottom, 0px) + 6px);
}

.tp-shell-account-sheet[hidden] {
	display: none !important;
}

.tp-shell-account-sheet.open {
	display: block;
	animation: tpShellAccountSlideUp 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
}

@keyframes tpShellAccountSlideUp {
	from { transform: translateY(100%); }
	to { transform: translateY(0); }
}

.tp-shell-account-handle {
	width: 32px;
	height: 3px;
	border-radius: 2px;
	background: rgba(255, 255, 255, 0.12);
	margin: 10px auto 0;
}

.tp-shell-account-title {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: var(--tp-shell-text);
	text-align: center;
	padding: 12px 0;
	border-bottom: 1px solid var(--tp-shell-border);
}

.tp-shell-account-row {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 20px;
	text-decoration: none;
	transition: background 0.15s;
}

.tp-shell-account-row:hover {
	background: rgba(255, 255, 255, 0.03);
}

.tp-shell-account-row svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	color: var(--tp-shell-muted);
}

.tp-shell-account-row-label {
	flex: 1;
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: var(--tp-shell-text);
}

.tp-shell-account-chevron {
	color: var(--tp-shell-muted);
}

.tp-shell-account-chevron svg {
	width: 14px;
	height: 14px;
}

.tp-shell-account-divider {
	height: 1px;
	background: var(--tp-shell-border);
	margin: 4px 0;
}

.tp-shell-account-row--danger svg,
.tp-shell-account-row--danger .tp-shell-account-row-label {
	color: #f87171;
}

/* ── Desktop left rail (Instagram-style expand) ── */
.tp-shell-rail {
	display: none;
}

@media (min-width: 992px) {
	.tp-shell-rail {
		display: flex;
		flex-direction: column;
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		width: var(--tp-shell-rail-collapsed);
		padding: calc(var(--tp-shell-top-h) + 12px) 10px 16px;
		background: rgba(13, 15, 20, 0.98);
		border-right: 1px solid var(--tp-shell-border);
		z-index: 100040;
		overflow: hidden;
		transition: width 0.22s cubic-bezier(0.4, 0, 0.2, 1);
	}
	body.tp-shell-rail-expanded .tp-shell-rail {
		width: var(--tp-shell-rail-expanded);
	}
	.tp-shell-rail:hover,
	body.tp-shell-rail-expanded .tp-shell-rail {
		width: var(--tp-shell-rail-expanded);
	}
	.tp-shell-rail-item {
		display: flex;
		align-items: center;
		gap: 14px;
		padding: 10px 12px;
		margin-bottom: 4px;
		border-radius: 12px;
		color: var(--tp-shell-muted);
		text-decoration: none;
		white-space: nowrap;
		transition: background 0.15s, color 0.15s;
	}
	.tp-shell-rail-item:hover,
	.tp-shell-rail-item.is-active {
		background: rgba(167, 139, 250, 0.12);
		color: var(--tp-shell-accent);
	}
	.tp-shell-rail-icon {
		flex: 0 0 40px;
		width: 40px;
		height: 36px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.tp-shell-rail-icon svg {
		width: 22px;
		height: 22px;
	}
	.tp-shell-rail-avatar {
		width: 26px;
		height: 26px;
		border-radius: 50%;
		background: linear-gradient(135deg, #2a2f3a, #3d4450);
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 10px;
		font-weight: 700;
		color: #fff;
		font-family: Montserrat, sans-serif;
		overflow: hidden;
	}
	.tp-shell-rail-avatar img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
		border-radius: 50%;
	}
	.tp-shell-rail-item.is-active .tp-shell-rail-avatar {
		border: 2px solid rgba(255, 255, 255, 0.45);
	}
	.tp-shell-rail-label {
		font-size: 14px;
		font-weight: 600;
		opacity: 0;
		transform: translateX(-6px);
		transition: opacity 0.18s ease, transform 0.18s ease;
	}
	.tp-shell-rail:hover .tp-shell-rail-label,
	body.tp-shell-rail-expanded .tp-shell-rail-label {
		opacity: 1;
		transform: translateX(0);
	}
}

/* ── Bottom nav (mobile / tablet) ── */
.tp-shell-bottom-nav {
	display: flex;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	height: calc(var(--tp-shell-nav-h) + env(safe-area-inset-bottom, 0px));
	padding-bottom: env(safe-area-inset-bottom, 0px);
	background: rgba(13, 15, 20, 0.96);
	backdrop-filter: blur(24px);
	border-top: 1px solid var(--tp-shell-border);
	z-index: 100045;
	align-items: center;
	justify-content: space-around;
	padding-left: 6px;
	padding-right: 6px;
}

@media (min-width: 992px) {
	.tp-shell-bottom-nav {
		display: none;
	}
}

.tp-shell-nav-item {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	color: inherit;
	min-height: 44px;
}

.tp-shell-nav-pill {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 36px;
	border-radius: 20px;
	color: rgba(139, 148, 158, 0.75);
	transition: all 0.2s cubic-bezier(0.34, 1.4, 0.64, 1);
}

.tp-shell-nav-pill svg {
	width: 22px;
	height: 22px;
}

.tp-shell-nav-item.is-active .tp-shell-nav-pill {
	width: 58px;
	background: rgba(167, 139, 250, 0.15);
	color: var(--tp-shell-accent);
}

.tp-shell-nav-pill--map {
	width: 48px;
	height: 42px;
}

.tp-shell-nav-avatar {
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: linear-gradient(135deg, #2a2f3a, #3d4450);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 10px;
	font-weight: 700;
	color: #fff;
	font-family: Montserrat, sans-serif;
	overflow: hidden;
}

.tp-shell-nav-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tp-shell-nav-item.is-active .tp-shell-nav-avatar {
	border: 2px solid rgba(255, 255, 255, 0.45);
}

body.tp-shell-account-sheet-open .tp-shell-bottom-nav {
	transform: translateY(calc(100% + 18px));
	opacity: 0;
	pointer-events: none;
}

@media (min-width: 992px) {
	.tp-shell-account-sheet {
		left: 50%;
		right: auto;
		top: 50%;
		bottom: auto;
		width: min(620px, calc(100vw - 40px));
		max-width: 620px;
		transform: translate(-50%, -50%);
		border-radius: 16px;
		padding-bottom: 6px;
	}
	.tp-shell-account-sheet.open {
		animation: tpShellAccountDesktopIn 0.2s ease-out forwards;
	}
	body.tp-shell-account-sheet-open .tp-shell-bottom-nav {
		transform: none;
		opacity: 1;
		pointer-events: auto;
	}
}

@keyframes tpShellAccountDesktopIn {
	from {
		opacity: 0;
		transform: translate(-50%, -46%) scale(0.98);
	}
	to {
		opacity: 1;
		transform: translate(-50%, -50%) scale(1);
	}
}

.tp-shell-nav-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

/* Explore map: leave room for shell chrome */
body.tp-shell-nav-active.page-explore #map {
	height: calc(100vh - env(safe-area-inset-bottom, 0px)) !important;
	min-height: 280px;
}

@media (min-width: 992px) {
	body.tp-shell-nav-active.page-explore #map {
		height: 100vh !important;
	}
}

body.tp-shell-nav-active.page-explore .leaflet-top.leaflet-right {
	margin-top: calc(var(--tp-shell-top-h) + 8px);
}

@media (max-width: 991px) {
	body.tp-shell-nav-active.page-explore .leaflet-top.leaflet-right {
		margin-bottom: calc(var(--tp-shell-nav-h) + 8px);
	}
}

/* ── Feed layout (activity directory) ── */
body.tp-shell-feed-layout {
	background: var(--tp-shell-bg) !important;
}

/* Single member-activity permalink: hide legacy profile tabs/header chrome. */
body.tp-shell-activity-single-layout #youzify-profile-header,
body.tp-shell-activity-single-layout #youzify-profile-navmenu,
body.tp-shell-activity-single-layout .youzify-profile-navmenu,
body.tp-shell-activity-single-layout #item-nav,
body.tp-shell-activity-single-layout .item-list-tabs,
body.tp-shell-activity-single-layout .youzify-user-statistics,
body.tp-shell-activity-single-layout .youzify-page-main-content .youzify-widget,
body.tp-shell-activity-single-layout .youzify-page-main-content .youzify-sidebar {
	display: none !important;
}

body.tp-shell-activity-single-layout #content,
body.tp-shell-activity-single-layout .youzify-page,
body.tp-shell-activity-single-layout .youzify-page-main-content,
body.tp-shell-activity-single-layout .youzify-right-sidebar-layout,
body.tp-shell-activity-single-layout .youzify-left-sidebar-layout,
body.tp-shell-activity-single-layout .youzify-main-column {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.tp-shell-activity-single-layout #activity-stream {
	max-width: min(100vw, 640px) !important;
	margin: 0 auto !important;
	padding-left: 12px !important;
	padding-right: 12px !important;
}

body.tp-shell-activity-single-layout #activity-stream > li.activity-item {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 auto 14px !important;
}

/* Single activity permalink: Instagram-style centered post card (different from fullscreen feed). */
body.tp-shell-activity-single-layout #activity-stream {
	padding-top: calc(var(--tp-shell-top-h) + 14px + env(safe-area-inset-top, 0px)) !important;
}

body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post.activity-item {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
}

body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .activity-content {
	position: relative !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 16px !important;
	padding: 12px !important;
	overflow: visible !important;
}

body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .activity-content::after {
	display: none !important;
}

body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap,
body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .tp-shell-media-single {
	position: relative !important;
	width: 100% !important;
	max-width: 100% !important;
	aspect-ratio: 1 / 1 !important;
	max-height: min(72vh, 620px) !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	background: #000 !important;
}

body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .tp-shell-media-track,
body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .tp-shell-media-slide,
body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .tp-shell-media-slide img {
	width: 100% !important;
	height: 100% !important;
}

body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .tp-shell-media-slide img {
	object-fit: contain !important;
	background: #000 !important;
}

/* Keep title/author in normal flow above media instead of absolute overlay stack. */
body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .activity-header,
body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-info {
	position: static !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	margin: 0 0 8px 0 !important;
	padding: 0 !important;
	max-width: none !important;
	text-align: left !important;
}

body.tp-shell-activity-single-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-info {
	gap: 4px !important;
}

/* Actions row below image (not right rail / overlay). */
body.tp-shell-activity-single-layout li.tp-shell-ig-post .activity-content > .activity-meta,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .activity-meta {
	position: static !important;
	inset: auto !important;
	margin: 10px 0 2px 0 !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 18px !important;
	width: 100% !important;
}

body.tp-shell-activity-single-layout li.tp-shell-ig-post .activity-meta > a {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	margin: 0 !important;
}

/* Youzify's entrance effects set `.youzify_effect { visibility: hidden }` and rely on
   viewportChecker, which only reveals rows entering the *window* viewport. The shell feed
   scrolls inside #activity-stream, so the window never scrolls and rows past the first stay
   hidden over the black media background. Keep rows visible and kill animate.css re-runs —
   carousel class toggles used to re-trigger fadeIn and flash the whole card. */
body.tp-shell-feed-layout #activity-stream > li.activity-item,
body.tp-shell-feed-layout #activity-stream > li.activity-item.youzify_effect,
body.tp-shell-feed-layout #activity-stream > li.activity-item.invisible,
body.tp-shell-feed-layout #activity-stream > li.activity-item.animated,
body.tp-shell-feed-layout #activity-stream > li.activity-item.fadeIn,
body.tp-shell-profile-layout #activity-stream > li.activity-item.youzify_effect {
	visibility: visible !important;
	opacity: 1 !important;
	animation: none !important;
}

/* Gate first paint until LATE shell CSS wins (Youzify sheets load in between). */
body.tp-shell-feed-layout.tp-shell-paint-pending #content,
body.tp-shell-feed-layout.tp-shell-paint-pending #buddypress,
body.tp-shell-feed-layout.tp-shell-paint-pending .youzify-page-main-content,
body.tp-shell-feed-layout.tp-shell-paint-pending #activity-stream,
body.tp-shell-feed-layout.tp-shell-feed-unhydrated #content,
body.tp-shell-feed-layout.tp-shell-feed-unhydrated #buddypress,
body.tp-shell-feed-layout.tp-shell-feed-unhydrated .youzify-page-main-content,
body.tp-shell-feed-layout.tp-shell-feed-unhydrated #activity-stream {
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/* Reveal only after CSS is ready AND feed.js has enhanced the first rows.
   (css-ready alone used to unhide classic Youzify markup + "Open in Explore".) */
body.tp-shell-feed-layout.tp-shell-css-ready:not(.tp-shell-paint-pending):not(.tp-shell-feed-unhydrated) #content,
body.tp-shell-feed-layout.tp-shell-css-ready:not(.tp-shell-paint-pending):not(.tp-shell-feed-unhydrated) #buddypress,
body.tp-shell-feed-layout.tp-shell-css-ready:not(.tp-shell-paint-pending):not(.tp-shell-feed-unhydrated) .youzify-page-main-content,
body.tp-shell-feed-layout.tp-shell-css-ready:not(.tp-shell-paint-pending):not(.tp-shell-feed-unhydrated) #activity-stream,
body.tp-shell-feed-layout.tp-shell-feed-hydrated:not(.tp-shell-paint-pending) #content,
body.tp-shell-feed-layout.tp-shell-feed-hydrated:not(.tp-shell-paint-pending) #buddypress,
body.tp-shell-feed-layout.tp-shell-feed-hydrated:not(.tp-shell-paint-pending) .youzify-page-main-content,
body.tp-shell-feed-layout.tp-shell-feed-hydrated:not(.tp-shell-paint-pending) #activity-stream {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
}

body.tp-shell-feed-layout.tp-shell-feed-unhydrated .youzify-page-main-content {
	position: relative;
}

body.tp-shell-feed-layout.tp-shell-feed-unhydrated .youzify-page-main-content::after {
	content: none !important;
}

@keyframes tp-shell-feed-spin {
	to {
		transform: rotate(360deg);
	}
}

body.tp-shell-feed-layout #content,
body.tp-shell-feed-layout .youzify-page-main-content {
	padding-top: calc(var(--tp-shell-top-h) + 8px + env(safe-area-inset-top, 0px));
}

/* Center feed column on desktop (override tp-activity-directory left-align) */
body.tp-shell-feed-layout.tp-activity-directory .youzify-left-sidebar-layout,
body.tp-shell-feed-layout.tp-activity-directory .youzify-right-sidebar-layout {
	display: block !important;
	width: 100% !important;
	max-width: min(100%, 600px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 12px !important;
	padding-right: 12px !important;
	box-sizing: border-box !important;
}

body.tp-shell-feed-layout.tp-activity-directory .youzify-left-sidebar-layout > .youzify-main-column,
body.tp-shell-feed-layout.tp-activity-directory .youzify-right-sidebar-layout > .youzify-main-column.grid-column:first-of-type {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

@media (max-width: 640px) {
	body.tp-shell-feed-layout.tp-activity-directory .youzify-left-sidebar-layout,
	body.tp-shell-feed-layout.tp-activity-directory .youzify-right-sidebar-layout {
		max-width: 100% !important;
		padding-left: 8px !important;
		padding-right: 8px !important;
	}
}

@media (min-width: 992px) {
	body.tp-shell-feed-layout.tp-shell-nav-active #page,
	body.tp-shell-feed-layout.tp-shell-nav-active #content {
		padding-left: 0 !important;
	}
	body.tp-shell-feed-layout.tp-shell-nav-active .youzify-page-main-content {
		padding-left: var(--tp-shell-rail-collapsed) !important;
		padding-right: 16px !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: calc(620px + var(--tp-shell-rail-collapsed) + 16px) !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
	body.tp-shell-feed-layout.tp-shell-nav-active.tp-shell-rail-expanded .youzify-page-main-content {
		padding-left: var(--tp-shell-rail-expanded) !important;
		max-width: calc(620px + var(--tp-shell-rail-expanded) + 16px) !important;
	}
}

body.tp-shell-feed-layout .tp-community-feed-header,
body.tp-shell-feed-layout .tp-profile-nav-on-directory,
body.tp-shell-feed-layout #youzify-profile-navmenu.tp-profile-nav-on-directory {
	display: none !important;
}

/* Feed filter tabs (Recently Added / Nearby) */
body.tp-shell-feed-layout .tp-shell-feed-filters {
	width: 100%;
	max-width: min(100%, 600px);
	margin: 0 auto 12px;
	padding: 0 12px 10px;
	box-sizing: border-box;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__head {
	margin-bottom: 12px;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__title {
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	font-weight: 800;
	color: var(--tp-shell-text);
	margin: 0 0 4px;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__subtitle {
	font-size: 12px;
	color: var(--tp-shell-muted);
	margin: 0;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tabs {
	display: flex;
	gap: 8px;
	margin-bottom: 8px;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tab {
	flex: 1 1 0;
	appearance: none;
	border: 1px solid var(--tp-shell-border);
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.04);
	color: var(--tp-shell-muted);
	font-family: Barlow, sans-serif;
	font-size: 12px;
	font-weight: 600;
	padding: 9px 12px;
	cursor: pointer;
	transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tab:hover {
	color: var(--tp-shell-text);
	background: rgba(255, 255, 255, 0.07);
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tab.is-active {
	color: var(--tp-shell-text);
	background: rgba(167, 139, 250, 0.12);
	border-color: rgba(167, 139, 250, 0.35);
}

body.tp-shell-feed-layout .tp-shell-feed-filters__status {
	font-size: 11px;
	color: var(--tp-shell-muted);
	margin: 0;
	line-height: 1.4;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__fullscreen {
	display: none;
	appearance: none;
	border: 1px solid var(--tp-shell-border);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.04);
	color: var(--tp-shell-text);
	font-family: Barlow, sans-serif;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	align-items: center;
	gap: 6px;
	padding: 7px 10px;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__fullscreen:hover {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.22);
}

body.tp-shell-feed-layout .tp-shell-feed-filters__fullscreen.is-active {
	background: rgba(167, 139, 250, 0.18);
	border-color: rgba(167, 139, 250, 0.45);
}

body.tp-shell-feed-layout .tp-shell-feed-filters__fullscreen-icon {
	font-size: 13px;
	line-height: 1;
}

@media (max-width: 991px) {
	body.tp-shell-feed-layout .tp-shell-feed-filters__fullscreen {
		display: inline-flex;
		margin: 0 0 8px;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #page,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #content,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .youzify-page-main-content {
		height: 100dvh !important;
		overflow: hidden !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-topbar,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-bottom-nav {
		display: none !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-feed-filters {
		position: fixed;
		top: calc(env(safe-area-inset-top, 0px) + 18px);
		right: 8px;
		left: 8px;
		/* Must stay above the composited activity stream (was 1200 — tabs vanished on scroll). */
		z-index: 100130;
		margin: 0;
		padding: 0;
		max-width: none;
		pointer-events: none;
		opacity: 1 !important;
		visibility: visible !important;
		transform: none !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-feed-filters__head,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-feed-filters__status {
		display: none !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-feed-filters__tabs {
		display: inline-flex !important;
		pointer-events: auto !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-feed-filters__fullscreen {
		pointer-events: auto;
		margin: 0 0 0 auto;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream {
		height: 100dvh;
		overflow-y: auto;
		overflow-x: hidden;
		scroll-snap-type: y mandatory;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-y: contain;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.activity-item {
		scroll-snap-align: start;
		scroll-snap-stop: always;
		min-height: 100dvh;
		margin: 0 !important;
		padding: calc(env(safe-area-inset-top, 0px) + 44px) 0 calc(env(safe-area-inset-bottom, 0px) + 14px) !important;
		border-bottom: none !important;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
	}
}

/* TikTok-style pull refresh: keep the reel, just grey it out while reloading. */
body.tp-shell-feed-layout #activity-stream.tp-shell-feed-filters--loading {
	opacity: 0.38;
	filter: grayscale(0.45) brightness(0.78);
	pointer-events: none;
	transition: opacity 0.18s ease, filter 0.18s ease;
}

body.tp-shell-feed-layout #activity-stream:not(.tp-shell-feed-filters--loading) {
	transition: opacity 0.22s ease, filter 0.22s ease;
}

body.tp-shell-feed-layout li.tp-shell-feed-empty .activity-content {
	padding: 24px 18px;
	text-align: center;
}

body.tp-shell-feed-layout .tp-shell-feed-empty__text {
	font-size: 13px;
	color: var(--tp-shell-muted);
	margin: 0;
}

/* Unlock Premium teaser slide (mockup: .tk-locked) */
body.tp-shell-feed-layout #activity-stream > li.tp-shell-premium-teaser.activity-item {
	position: relative;
	overflow: hidden;
	padding: 0 !important;
	justify-content: stretch;
	background: #0d0f14;
	/* Match reel snap height even if other ig-post rules lose specificity. */
	min-height: 100dvh !important;
	height: 100dvh !important;
	scroll-snap-align: start;
	scroll-snap-stop: always;
	flex: 0 0 100dvh;
	box-sizing: border-box;
}
body.tp-shell-feed-layout .tp-shell-premium-teaser__bg {
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(135deg, #241820 0%, #2a1a2e 45%, #1a1420 100%),
		radial-gradient(120% 80% at 50% 30%, rgba(167, 139, 250, 0.18), transparent 60%);
	filter: blur(22px) saturate(0.8) brightness(0.55);
	transform: scale(1.15);
}
body.tp-shell-feed-layout .tp-shell-premium-teaser__bg::after {
	content: "🏚️";
	position: absolute;
	left: 50%;
	top: 42%;
	transform: translate(-50%, -50%);
	font-size: clamp(64px, 14vw, 96px);
	line-height: 1;
	opacity: 0.55;
	filter: none;
}
body.tp-shell-feed-layout .tp-shell-premium-teaser__veil {
	position: absolute;
	inset: 0;
	z-index: 6;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 32px 26px calc(env(safe-area-inset-bottom, 0px) + 48px);
	background: radial-gradient(120% 90% at 50% 40%, rgba(13, 15, 20, 0.35), rgba(13, 15, 20, 0.78));
}
body.tp-shell-feed-layout .tp-shell-premium-teaser__ring {
	width: 72px;
	height: 72px;
	border-radius: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.16);
	margin-bottom: 22px;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35);
}
body.tp-shell-feed-layout .tp-shell-premium-teaser__ring svg {
	width: 32px;
	height: 32px;
	color: #fff;
}
body.tp-shell-feed-layout .tp-shell-premium-teaser__title {
	font-family: "Barlow Condensed", sans-serif;
	font-size: 31px;
	font-weight: 900;
	line-height: 1.02;
	text-transform: uppercase;
	color: #fff;
	letter-spacing: 0.3px;
	max-width: 300px;
}
body.tp-shell-feed-layout .tp-shell-premium-teaser__btn {
	margin-top: 24px;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	cursor: pointer;
	padding: 13px 24px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.95);
	border: none;
	text-decoration: none !important;
	font-family: "Montserrat", sans-serif;
	font-size: 13.5px;
	font-weight: 800;
	color: #0d0f14 !important;
	transition: transform 0.14s, background 0.14s;
}
body.tp-shell-feed-layout .tp-shell-premium-teaser__btn:hover {
	background: #fff;
	transform: translateY(-1px);
	color: #0d0f14 !important;
}
body.tp-shell-feed-layout .tp-shell-premium-teaser__btn svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}
/* Feed teaser CTA only — no manage/cancel footer on this surface. */
body.tp-shell-feed-layout .tp-shell-premium-teaser__manage {
	display: none !important;
}

body.tp-shell-feed-layout .tp-shell-post-tag--distance {
	color: var(--tp-shell-accent);
	border-color: rgba(167, 139, 250, 0.3);
	background: rgba(167, 139, 250, 0.1);
}

body.tp-shell-feed-layout .youzify-page-header,
body.tp-shell-feed-layout .youzify-wall-head,
body.tp-shell-feed-layout .youzify-wall-nav,
body.tp-shell-feed-layout #youzify-wall-nav,
body.tp-shell-feed-layout .youzify-wall-form {
	display: none !important;
}

body.tp-shell-feed-layout #activity-stream,
body.tp-shell-feed-layout ul.activity-list {
	margin: 0;
	padding: 0;
	list-style: none;
	background: transparent;
}

body.tp-shell-feed-layout #activity-stream > li.activity-item,
body.tp-shell-feed-layout ul.activity-list > li.activity-item {
	border: none !important;
	border-bottom: 1px solid var(--tp-shell-border) !important;
	margin: 0 0 28px !important;
	padding: 0 0 20px !important;
	background: transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

/* Author meta echoed before content — hidden until JS moves into header */
body.tp-shell-feed-layout li.activity-item > .tp-shell-post-author-line,
body.tp-shell-feed-layout li.activity-item > .tp-shell-post-location-sub {
	display: none !important;
}

body.tp-shell-feed-layout li.activity-item .activity-head,
body.tp-shell-feed-layout li.activity-item .youzify-activity-header {
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: none !important;
}

body.tp-shell-feed-layout li.activity-item .activity-avatar {
	width: 38px !important;
	height: 38px !important;
	margin-right: 10px !important;
	border-radius: 50% !important;
	overflow: hidden !important;
	flex-shrink: 0 !important;
}

body.tp-shell-feed-layout li.activity-item .activity-avatar a {
	display: block !important;
	width: 38px !important;
	height: 38px !important;
	border-radius: 50% !important;
	overflow: hidden !important;
}

body.tp-shell-feed-layout li.activity-item .activity-avatar img {
	width: 38px !important;
	height: 38px !important;
	border-radius: 50% !important;
	object-fit: cover !important;
	display: block !important;
}

/* Do not force .activity-head visible inside .activity-header — that duplicate
 * BP name/time row sat beside .tp-shell-post-user and clipped @usernames. */
body.tp-shell-feed-layout li.activity-item > .activity-head,
body.tp-shell-feed-layout li.activity-item > .youzify-activity-header {
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-start !important;
	gap: 10px !important;
}

body.tp-shell-feed-layout li.activity-item .activity-avatar {
	flex-shrink: 0 !important;
	float: none !important;
}

body.tp-shell-feed-layout li.activity-item .activity-header {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-wrap: nowrap !important;
	gap: 8px !important;
	margin: 0 !important;
	padding: 12px 18px 10px !important;
}

/* Keep post tools compact so username/location can use available space */
body.tp-shell-feed-layout li.activity-item .activity-header .youzify-show-item-tools {
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	margin-left: 4px !important;
	padding: 0 !important;
}

body.tp-shell-feed-layout li.activity-item .activity-header .youzify-show-item-tools i {
	margin: 0 !important;
}

body.tp-shell-feed-layout .tp-shell-post-user {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 6px !important;
	flex: 1 1 100% !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	overflow: hidden !important;
}

body.tp-shell-feed-layout .tp-shell-post-user-meta {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;
	gap: 2px !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	max-width: 100% !important;
	overflow: hidden !important;
}

body.tp-shell-feed-layout .tp-shell-post-user .activity-avatar {
	margin-right: 0 !important;
}

body.tp-shell-feed-layout li.activity-item .youzify-wall-post-author {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	gap: 2px !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.tp-shell-feed-layout .tp-shell-post-author-line {
	font-family: Montserrat, sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	align-self: stretch !important;
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
}

body.tp-shell-feed-layout .tp-shell-post-author-line a {
	display: inline-block !important;
	max-width: calc(100% - 24px) !important;
	color: var(--tp-shell-text) !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
}

body.tp-shell-feed-layout .tp-shell-post-author-line a:hover {
	color: #fff !important;
}

/* Premium check after feed username (mockup .tk-verified — purple ✓, no circle). */
body.tp-shell-feed-layout .tp-shell-post-author-line .post-verified {
	display: inline-block;
	width: auto;
	height: auto;
	margin-left: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	color: #a78bfa;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	flex: 0 0 auto;
}

/* Hide duplicate BP username + inline timestamp in header (mockup uses name + location only) */
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-head > p,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-header > p,
body.tp-shell-feed-layout li.tp-shell-ig-post .youzify-timestamp-area {
	display: none !important;
}

/*
 * Critical: BP/Youzify .activity-head stays in the header flex row next to our
 * .tp-shell-post-user and steals ~half the width, so @usernames ellipsis early.
 * JS sets display:none inline, but an earlier shell rule forced display:flex !important.
 */
body.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .activity-header > .activity-head,
body.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .activity-header > .tresspassers-head,
body.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .activity-header > .youzify-activity-header {
	display: none !important;
	width: 0 !important;
	max-width: 0 !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	flex: 0 0 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

body.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .activity-header > .tp-shell-post-user {
	flex: 1 1 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

body.tp-shell-feed-layout li.activity-item .activity-content {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
}

body.tp-shell-feed-layout li.activity-item .activity-inner {
	padding: 0 !important;
}

body.tp-shell-feed-layout li.activity-item .youzify-activity-statistics,
body.tp-shell-feed-layout li.activity-item .youzify-show-item-tools {
	padding-left: 14px !important;
	padding-right: 14px !important;
}

/* Header ellipsis tool must stay compact; this wins over the generic rule above */
body.tp-shell-feed-layout li.activity-item .activity-header .youzify-show-item-tools {
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 4px !important;
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
}

/* Media / map preview full width */
body.tp-shell-feed-layout li.activity-item .youzify-post-item-img,
body.tp-shell-feed-layout li.activity-item .tp-location-feed-preview,
body.tp-shell-feed-layout li.activity-item .youzify-wall-embed-giphy,
body.tp-shell-feed-layout li.activity-item .activity-content img:not(.emoji) {
	width: 100% !important;
	max-width: 100% !important;
	border-radius: 0 !important;
	margin: 0 !important;
}

body.tp-shell-feed-layout .youzify .activity-content a.tp-location-feed-preview,
body.tp-shell-feed-layout .youzify .activity-content .tp-shell-media-map-preview.tp-location-feed-preview {
	display: block !important;
	width: 100% !important;
	aspect-ratio: 4 / 3 !important;
	min-height: 0 !important;
	max-height: none !important;
	margin-top: 0 !important;
	border-radius: 0 !important;
	overflow: hidden !important;
	position: relative !important;
	background: var(--tp-shell-card) !important;
}

body.tp-shell-feed-layout .youzify .activity-content a.tp-location-feed-preview:not(.tp-location-feed-preview--placeholder),
body.tp-shell-feed-layout .youzify .activity-content .tp-shell-media-map-preview.tp-location-feed-preview:not(.tp-location-feed-preview--placeholder) {
	aspect-ratio: 4 / 3 !important;
	min-height: 0 !important;
}

/* Static map fallbacks are generated as portrait; keep that ratio in shell feed. */
body.tp-shell-feed-layout .youzify .activity-content a.tp-location-feed-preview.tp-location-feed-preview--map-only:not(.tp-location-feed-preview--placeholder),
body.tp-shell-feed-layout .youzify .activity-content .tp-shell-media-map-preview.tp-location-feed-preview.tp-location-feed-preview--map-only:not(.tp-location-feed-preview--placeholder) {
	aspect-ratio: 9 / 16 !important;
}

body.tp-shell-feed-layout .youzify .activity-content a.tp-location-feed-preview--placeholder,
body.tp-shell-feed-layout .youzify .activity-content .tp-shell-media-map-preview.tp-location-feed-preview--placeholder {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	aspect-ratio: 4 / 3 !important;
	min-height: 0 !important;
	background: var(--tp-shell-card) !important;
}

body.tp-shell-feed-layout .youzify .activity-content a.tp-location-feed-preview--placeholder .tp-location-feed-preview__ph-icon {
	font-size: 2.5rem !important;
	color: var(--tp-shell-muted) !important;
}

body.tp-shell-feed-layout .youzify .activity-content .tp-location-feed-preview__img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-height: none !important;
	object-fit: cover !important;
	position: absolute !important;
	inset: 0 !important;
}

body.tp-shell-feed-layout .youzify .activity-content .tp-location-feed-preview.tp-location-feed-preview--map-only .tp-location-feed-preview__img,
body.tp-shell-feed-layout .youzify .activity-content .tp-shell-media-map-preview.tp-location-feed-preview.tp-location-feed-preview--map-only .tp-location-feed-preview__img {
	object-fit: cover !important;
	background: transparent !important;
}

body.tp-shell-feed-layout .youzify .activity-content .tp-location-feed-preview__pin {
	position: absolute !important;
	z-index: 3 !important;
	left: 50% !important;
	top: 50% !important;
	transform: translate(-50%, -92%) !important;
	width: 36px !important;
	height: 50px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.38)) !important;
	pointer-events: none !important;
}

body.tp-shell-feed-layout .youzify .activity-content .tp-location-feed-preview__pin .tp-location-feed-preview__pin-svg {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

body.tp-shell-feed-layout .tpp-map-preview-pin {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 30px;
	height: 42px;
	transform: translate(-50%, -90%);
	z-index: 3;
	pointer-events: none;
	filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.45));
}

body.tp-shell-feed-layout .tpp-map-preview-pin svg {
	display: block;
	width: 100%;
	height: 100%;
}

body.tp-shell-feed-layout li.activity-item .youzify-post-item-img {
	display: block !important;
	width: 100% !important;
	aspect-ratio: 4 / 3 !important;
	overflow: hidden !important;
	background: var(--tp-shell-card) !important;
	position: relative !important;
}

body.tp-shell-feed-layout li.activity-item .youzify-post-item-img img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	position: absolute !important;
	inset: 0 !important;
}

body.tp-shell-feed-layout li.activity-item .activity-inner > p,
body.tp-shell-feed-layout li.activity-item .activity-inner .activity-content-text {
	padding: 8px 14px 4px !important;
	font-size: 12px !important;
	color: var(--tp-shell-muted) !important;
	line-height: 1.5 !important;
}

body.tp-shell-feed-layout li.activity-item .tp-difficulty-rating,
body.tp-shell-feed-layout li.activity-item .tp-location-meta-row {
	margin: 0 14px 6px !important;
	font-size: 12px !important;
}

body.tp-shell-feed-layout li.activity-item .youzify-activity-statistics {
	border-top: none !important;
}

body.tp-shell-feed-layout li.activity-item .youzify-activity-statistics .activity-comments-links {
	gap: 14px !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-content .tp-difficulty-rating,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-content .tp-location-meta-row,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-content .tp-location-access-notes {
	display: none !important;
}

/* ── Instagram-style feed post chrome ── */
body.tp-shell-feed-layout li.tp-shell-ig-post,
body.tp-shell-feed-layout li.activity-item.tp-is-location-post {
	display: flex !important;
	flex-direction: column !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post > .activity-head,
body.tp-shell-feed-layout li.tp-shell-ig-post > .youzify-activity-header {
	order: 1;
}

body.tp-shell-feed-layout li.tp-shell-ig-post > .activity-content {
	order: 2;
}

body.tp-shell-feed-layout li.tp-shell-ig-post > .youzify-activity-statistics,
body.tp-shell-feed-layout li.tp-shell-ig-post > .activity-meta {
	order: 3;
}

body.tp-shell-feed-layout li.tp-shell-ig-post > .tp-shell-post-info {
	order: 4;
}

body.tp-shell-feed-layout .tp-shell-post-location-sub {
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	color: var(--tp-shell-accent);
	letter-spacing: 0.3px;
	margin-top: 1px;
	line-height: 1.35;
	align-self: stretch;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	white-space: normal;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	text-overflow: clip;
	overflow-wrap: break-word;
	word-break: normal;
	hyphens: manual;
	padding-left: 12px;
	background: no-repeat left 0.1em / 9px 9px
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f87171' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E");
}

/* Grouped media (map preview + uploads) */
body.tp-shell-feed-layout .tp-shell-media-wrap {
	width: 100%;
	position: relative;
	background: var(--tp-shell-card);
	overflow: hidden;
}

body.tp-shell-feed-layout .tp-shell-like-fly {
	position: fixed;
	left: 0;
	top: 0;
	width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
	transition: left 620ms cubic-bezier(0.2, 0.78, 0.14, 1), top 620ms cubic-bezier(0.2, 0.78, 0.14, 1), transform 620ms ease, opacity 620ms ease;
	z-index: 100090;
}

body.tp-shell-feed-layout .tp-shell-like-fly .tp-shell-action-icon {
	width: 34px !important;
	height: 34px !important;
	stroke: #f87171 !important;
	fill: #f87171 !important;
	stroke-width: 2.1 !important;
	filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.22));
}

body.tp-shell-feed-layout .tp-shell-like-glyph.tp-shell-like-glyph--flash .tp-shell-action-icon {
	animation: tp-shell-like-glyph-flash 320ms ease;
}

@keyframes tp-shell-like-glyph-flash {
	0% {
		transform: scale(1);
	}
	45% {
		transform: scale(1.24);
	}
	100% {
		transform: scale(1);
	}
}

body.tp-shell-feed-layout .tp-shell-media-wrap--multi {
	display: block;
}

body.tp-shell-feed-layout .tp-shell-media-wrap .tp-location-feed-preview,
body.tp-shell-feed-layout .tp-shell-media-wrap .tp-shell-media-map-preview,
body.tp-shell-feed-layout .tp-shell-media-wrap .youzify-post-item-img,
body.tp-shell-feed-layout .tp-shell-media-wrap .youzify-wall-embed-giphy {
	width: 100% !important;
	margin: 0 !important;
	aspect-ratio: 4 / 3;
}

body.tp-shell-feed-layout .tp-shell-media-wrap .youzify-post-item-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

body.tp-shell-feed-layout .tp-shell-media-carousel {
	overflow: hidden;
	/*
	 * pan-y keeps vertical reel scroll native. Horizontal is claimed in JS via
	 * non-passive touchmove + preventDefault. Do NOT flip touch-action to none
	 * mid-gesture — iOS cancels the touch and sideways swipe dies.
	 */
	touch-action: pan-y;
	-webkit-user-select: none;
	user-select: none;
	/* Promote early so the first sideways drag doesn't create a compositor layer flash. */
	transform: translateZ(0);
	backface-visibility: hidden;
}

body.tp-shell-feed-layout .tp-shell-media-carousel.is-carousel-dragging {
	overscroll-behavior: none;
}

/*
 * Multi-image posts: caption/header overlays sit on the photo. Let swipes hit the
 * media wrap (carousel gesture root). Keep real controls clickable.
 */
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .tp-shell-post-info,
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .tp-shell-post-spot-head,
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .activity-header {
	pointer-events: none;
}

body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .tp-shell-post-info a,
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .tp-shell-post-haz-toggle,
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .tp-shell-post-caption-more,
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .tp-shell-post-caplock,
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .tp-shell-post-caption.is-locked,
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .tp-shell-feed-edit-btn,
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .activity-header a,
body.tp-shell-feed-layout li.tp-shell-ig-post:has(.tp-shell-media-carousel) .activity-avatar {
	pointer-events: auto;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-track {
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	height: 100%;
	overflow: visible;
	/* TikTok-like glide: soft ease, long enough to read as a swipe not a jump. */
	transition: transform 0.38s cubic-bezier(0.22, 0.82, 0.2, 1);
	will-change: transform;
	cursor: grab;
	touch-action: pan-y;
	user-select: none;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-track.is-dragging {
	cursor: grabbing;
	transition: none !important;
	user-select: none;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-slide {
	flex: 0 0 100%;
	width: 100%;
	height: 100%;
	position: relative;
	flex-shrink: 0;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-slide > * {
	width: 100% !important;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-slide img {
	-webkit-user-drag: none;
	user-drag: none;
	user-select: none;
}

/* Corner multi-photo count badge removed — bottom dots cover this. */
body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-multi-indicator {
	display: none !important;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-dots {
	position: absolute;
	left: 50%;
	bottom: 14px;
	transform: translateX(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	width: auto;
	box-sizing: border-box;
	z-index: 8;
	margin: 0;
	padding: 6px 10px;
	border-radius: 999px;
	background: rgba(13, 15, 20, 0.55);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	pointer-events: auto;
}

/* Full-bleed feed: sit just above the bottom shell nav (mobile) / lower edge (desktop). */
body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-media-carousel .tp-shell-media-dots,
body.tp-shell-feed-layout.tp-shell-mode-feed .tp-shell-media-carousel .tp-shell-media-dots,
body.tp-shell-feed-layout.tp-shell-mode-photos .tp-shell-media-carousel .tp-shell-media-dots {
	bottom: 18px;
}

@media (max-width: 991px) {
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-media-carousel .tp-shell-media-dots,
	body.tp-shell-feed-layout.tp-shell-mode-feed .tp-shell-media-carousel .tp-shell-media-dots,
	body.tp-shell-feed-layout.tp-shell-mode-photos .tp-shell-media-carousel .tp-shell-media-dots {
		bottom: calc(var(--tp-shell-nav-h, 64px) + env(safe-area-inset-bottom, 0px) + 12px);
	}
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-dot {
	appearance: none;
	-webkit-appearance: none;
	border: none;
	width: 7px;
	height: 7px;
	border-radius: 999px;
	padding: 0;
	margin: 0;
	cursor: pointer;
	background: rgba(230, 237, 243, 0.4);
	box-shadow: none;
	transition: transform 0.15s ease, background 0.15s ease;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-dot.is-active {
	background: rgba(230, 237, 243, 0.98);
	transform: scale(1.25);
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-nav {
	appearance: none;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 32px;
	height: 32px;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.18);
	background: rgba(13, 15, 20, 0.68);
	color: rgba(230, 237, 243, 0.9);
	display: none;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	z-index: 8;
	padding: 0;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-nav--prev {
	left: 8px;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-nav--next {
	right: 8px;
}

body.tp-shell-feed-layout .tp-shell-media-carousel .tp-shell-media-nav:hover {
	background: rgba(13, 15, 20, 0.85);
	color: #fff;
}

body.tp-shell-feed-layout .tp-shell-post-premium-hint {
	font-size: 11px;
	color: var(--tp-shell-muted);
	margin: 4px 0 0;
	line-height: 1.4;
}

body.tp-shell-feed-layout .tp-shell-post-premium-hint a {
	color: var(--tp-shell-accent);
	text-decoration: none;
	font-weight: 600;
}

body.tp-shell-feed-layout .tp-shell-post-access-notes {
	position: relative;
	font-size: 13px;
	color: var(--tp-shell-muted);
	line-height: 1.55;
	margin-top: 10px;
	padding: 12px 14px 12px 16px;
	border-radius: 8px;
	border: 1px solid rgba(251, 191, 36, 0.22);
	background-color: rgba(251, 191, 36, 0.06);
	box-shadow: none;
}

body.tp-shell-feed-layout .tp-shell-post-access-notes + .tp-shell-post-time {
	margin-top: 14px !important;
}

body.tp-shell-feed-layout .tp-shell-post-access-notes::before {
	content: "";
	position: absolute;
	left: 0;
	top: 7px;
	bottom: 7px;
	width: 3px;
	border-radius: 0 3px 3px 0;
	background: rgba(251, 191, 36, 0.55);
}

body.tp-shell-feed-layout .tp-shell-post-access-notes strong {
	display: block;
	font-size: 9px;
	text-transform: uppercase;
	letter-spacing: 0.45px;
	margin-bottom: 5px;
	color: rgba(251, 191, 36, 0.95);
	font-family: "JetBrains Mono", monospace;
}

body.tp-shell-feed-layout .tp-shell-post-access-notes p {
	margin: 0;
	white-space: pre-wrap;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-location-place,
body.tp-shell-feed-layout li.tp-shell-ig-post .tp-location-access-notes,
body.tp-shell-feed-layout li.tp-shell-ig-post .tp-location-reviews,
body.tp-shell-feed-layout li.tp-shell-ig-post .tp-location-meta-row,
body.tp-shell-feed-layout li.tp-shell-ig-post .gamipress-buddypress-user-details,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-inner:empty {
	display: none !important;
}

body.tp-shell-feed-layout li.activity-item .tp-location-place,
body.tp-shell-feed-layout li.activity-item .tp-location-access-notes {
	display: none !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-inner > p {
	display: none !important;
}

/* Verify stays on map/explore — hidden on community feed only (must win over inline-flex rules below) */
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-verify-wrapper,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > .tp-verify-wrapper,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.yzpr-verify-location,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.yzpr-verified-location,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.yzpr-verify-location,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.yzpr-verified-location {
	display: none !important;
	visibility: hidden !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	pointer-events: none !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta {
	--tp-shell-action-size: 26px;
	--tp-shell-action-stroke-heart: 2;
	--tp-shell-action-stroke-comment: 2;
	--tp-shell-action-stroke-share: 2;
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: flex-start !important;
	width: 100% !important;
	box-sizing: border-box !important;
	gap: 16px !important;
	padding: 12px 18px 8px !important;
	margin: 0 !important;
	border: none !important;
	background: transparent !important;
}

/* Override global 42px activity-meta action height */
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > .tp-like-wrapper,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.acomment-reply,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > button.tp-admin-delete-location {
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	padding: 0 !important;
}

/* Icon-only actions (mockup .post-actions) */
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-like-wrapper,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.acomment-reply,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > button.tp-admin-delete-location {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	height: auto !important;
	min-height: 0 !important;
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: rgba(255, 255, 255, 0.94) !important;
	cursor: pointer;
	transition: color 0.15s ease, transform 0.15s ease;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > .tp-like-wrapper:hover,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.acomment-reply:hover,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map:hover,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity:hover,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > button.tp-admin-delete-location:hover {
	background: transparent !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-like-wrapper:hover,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.acomment-reply:hover,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map:hover,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity:hover {
	color: var(--tp-shell-text) !important;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta .yzpr-react-title,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta a.tp-shell-action-icon-only,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta a.acomment-reply,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta a.youzify-social-share-activity,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta button.tp-admin-delete-location {
	font-size: 0 !important;
	line-height: 0 !important;
	letter-spacing: 0 !important;
	color: transparent !important;
	text-shadow: none !important;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta .yzpr-react-title {
	display: none !important;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta a.acomment-reply::before,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta a.youzify-social-share-activity::before,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta button.tp-admin-delete-location::before {
	display: none !important;
	content: none !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-shell-action-icon-wrap {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 var(--tp-shell-action-size) !important;
	width: var(--tp-shell-action-size) !important;
	height: var(--tp-shell-action-size) !important;
	flex-shrink: 0 !important;
	line-height: 0 !important;
	color: rgba(255, 255, 255, 0.94) !important;
}

/* Like heart — explicit color so it never inherits transparent/text-hidden from Youzify link styles */
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper a.yzpr-reacto-post > .tp-shell-like-glyph {
	display: inline-flex !important;
	color: rgba(255, 255, 255, 0.94) !important;
	flex: 0 0 var(--tp-shell-action-size) !important;
	width: var(--tp-shell-action-size) !important;
	height: var(--tp-shell-action-size) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper.tp-like-has-reaction a.yzpr-reacto-post > .tp-shell-like-glyph,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper:has(.yzpr-yes-reaction) a.yzpr-reacto-post > .tp-shell-like-glyph {
	color: #f87171 !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-shell-action-icon {
	width: var(--tp-shell-action-size) !important;
	height: var(--tp-shell-action-size) !important;
	display: block !important;
	stroke: currentColor !important;
	fill: none !important;
	color: inherit !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
	transition: stroke 0.15s ease, fill 0.15s ease, transform 0.2s ease;
	transform-origin: center center;
}

/* Heart outline reads lighter than the comment bubble at equal stroke-width */
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-shell-like-glyph .tp-shell-action-icon {
	transform: scale(1.06);
	stroke-width: var(--tp-shell-action-stroke-heart) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.acomment-reply .tp-shell-action-icon {
	stroke-width: var(--tp-shell-action-stroke-comment) !important;
	fill: none !important;
	stroke: currentColor !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.youzify-social-share-activity .tp-shell-action-icon,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.tp-shell-action-share .tp-shell-action-icon,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.youzify-social-share-activity.tp-shell-action-share .tp-shell-action-icon {
	stroke-width: var(--tp-shell-action-stroke-share) !important;
	fill: none !important;
	stroke: currentColor !important;
	transform: none;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.tp-shell-action-bookmark .tp-shell-action-icon,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.tp-shell-action-icon-only.tp-shell-action-bookmark .tp-shell-action-icon {
	fill: none !important;
	stroke: currentColor !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.tp-shell-action-bookmark.is-bookmarked .tp-shell-action-icon,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.tp-shell-action-icon-only.tp-shell-action-bookmark.is-bookmarked .tp-shell-action-icon {
	fill: #f5c15d !important;
	stroke: #f5c15d !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.tp-shell-action-bookmark.is-pending,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.tp-shell-action-icon-only.tp-shell-action-bookmark.is-pending {
	opacity: 0.86 !important;
	pointer-events: none !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper.tp-like-has-reaction .tp-shell-like-glyph .tp-shell-action-icon,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper:has(.yzpr-yes-reaction) .tp-shell-like-glyph .tp-shell-action-icon {
	transform: scale(1.18);
	stroke-width: var(--tp-shell-action-stroke-heart) !important;
	stroke: #f87171 !important;
	fill: #f87171 !important;
}

/* Youzify reaction node — keep for JS state, hide visually (glyph is on the link like comment) */
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper .yzpr-post-reaction.tp-shell-like-reaction-sr,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper .yzpr-post-reaction.tp-shell-like-reaction-sr > i[data-tp-heart].tp-shell-like-fa-sr {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper a.yzpr-reacto-post {
	position: relative !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-like-wrapper,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.acomment-reply {
	align-items: center !important;
	min-height: var(--tp-shell-action-size) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > .tp-like-wrapper.tp-like-has-reaction,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > .tp-like-wrapper.tp-like-has-reaction:hover,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > .tp-like-wrapper.tp-like-has-reaction:active {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0 !important;
	color: var(--tp-shell-muted) !important;
	background: transparent !important;
	padding: 0 !important;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta .tp-like-wrapper a.yzpr-reacto-post {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 5px !important;
	width: auto !important;
	min-width: 0 !important;
	height: var(--tp-shell-action-size) !important;
	min-height: var(--tp-shell-action-size) !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: visible !important;
	background: transparent !important;
	border: none !important;
	color: rgba(255, 255, 255, 0.94) !important;
	flex: 0 0 auto !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper .yzpr-post-reaction {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta .tp-like-wrapper .tp-shell-like-count-num,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta .tp-like-wrapper .tp-like-count {
	font-family: Barlow, sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: var(--tp-shell-action-size) !important;
	height: var(--tp-shell-action-size) !important;
	display: inline-flex !important;
	align-items: center !important;
	align-self: center !important;
	padding: 0 !important;
	margin: 0 !important;
	min-width: 0 !important;
	width: auto !important;
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: rgba(255, 255, 255, 0.96) !important;
	-webkit-text-stroke: 0 !important;
	cursor: pointer;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper:has(.yzpr-yes-reaction) .tp-shell-like-count-num,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper:has(.yzpr-yes-reaction) .tp-like-count {
	color: rgba(255, 255, 255, 0.96) !important;
}

/* Verify removed from community feed — keep final hide after any legacy verify rules below */
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta .tp-verify-wrapper,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-verify-wrapper,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.yzpr-verify-location,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.yzpr-verified-location,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.yzpr-verify-location,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.yzpr-verified-location {
	display: none !important;
	visibility: hidden !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	pointer-events: none !important;
	opacity: 0 !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map {
	margin-left: auto !important;
	margin-inline-start: auto !important;
	margin-right: 0 !important;
	font-size: 0 !important;
	line-height: 0 !important;
	min-width: 0 !important;
	width: auto !important;
	order: 98 !important;
	flex: 0 0 auto !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-share,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity.tp-shell-action-share {
	margin-left: 0 !important;
	order: 3 !important;
	flex: 0 0 auto !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map:hover,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map .tp-shell-action-icon,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map:hover .tp-shell-action-icon {
	color: rgba(255, 255, 255, 0.94) !important;
	stroke: currentColor !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map .tp-shell-action-icon {
	stroke-width: var(--tp-shell-action-stroke-share) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map:hover {
	margin-left: auto !important;
	margin-right: 0 !important;
	color: var(--tp-shell-text) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map + a.tp-shell-action-share,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map + a.youzify-social-share-activity.tp-shell-action-share {
	margin-left: -2px !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > button.tp-admin-delete-location {
	margin-left: 0 !important;
	order: 98 !important;
	flex: 0 0 auto !important;
}

/* Strong ordering guards so right-cluster always stays at end */
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > .tp-like-wrapper,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.acomment-reply {
	order: 1 !important;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > button.tp-admin-delete-location {
	order: 98 !important;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map {
	order: 99 !important;
	margin-left: auto !important;
	margin-inline-start: auto !important;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.tp-shell-action-share,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity.tp-shell-action-share {
	order: 3 !important;
}

body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta a.acomment-reply {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 5px !important;
	height: var(--tp-shell-action-size) !important;
	min-height: var(--tp-shell-action-size) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.acomment-reply .tp-shell-action-icon-wrap {
	align-self: center !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta a.acomment-reply > .tp-shell-comment-count {
	font-family: Barlow, sans-serif !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: var(--tp-shell-action-size) !important;
	height: var(--tp-shell-action-size) !important;
	display: inline-flex !important;
	align-items: center !important;
	align-self: center !important;
	color: rgba(139, 148, 158, 0.5) !important;
	min-width: 0.5em !important;
}

/* Always show comment count (including 0), matching like/bookmark */

/* Keep comment icon same weight/color as heart; only the count brightens when active */
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.acomment-reply.tp-shell-comment-active .tp-shell-action-icon,
body.tp-shell-feed-layout li.tp-shell-ig-post.has-comments .activity-meta > a.acomment-reply .tp-shell-action-icon {
	color: var(--tp-shell-muted) !important;
	stroke: currentColor !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.acomment-reply.tp-shell-comment-active > .tp-shell-comment-count,
body.tp-shell-feed-layout li.tp-shell-ig-post.has-comments .activity-meta > a.acomment-reply > .tp-shell-comment-count {
	color: rgba(230, 237, 243, 0.75) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-like-wrapper:hover .tp-shell-like-glyph {
	color: var(--tp-shell-text) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-like-wrapper:has(.yzpr-yes-reaction):hover .tp-shell-like-glyph {
	color: #f87171 !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.acomment-reply:hover .tp-shell-action-icon-wrap,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.acomment-reply:hover .tp-shell-action-icon,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity:hover .tp-shell-action-icon-wrap,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity:hover .tp-shell-action-icon {
	color: var(--tp-shell-text) !important;
	stroke: var(--tp-shell-text) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-verify-wrapper:hover a.button:not(.yzpr-verified-location) {
	display: none !important;
}

/* Inline comments hidden on feed — opened in bottom sheet */
body.tp-shell-feed-layout li.tp-shell-ig-post > .activity-comments {
	display: none !important;
}

body.tp-shell-comments-sheet-open {
	overflow: hidden;
}

/* Comments bottom sheet (template-style) */
.tp-shell-comments-sheet {
	position: fixed;
	inset: 0;
	z-index: 100045;
	pointer-events: none;
	visibility: hidden;
}

.tp-shell-comments-sheet.is-open {
	pointer-events: auto;
	visibility: visible;
}

.tp-shell-comments-sheet__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0);
	transition: background 0.25s ease;
}

.tp-shell-comments-sheet.is-open .tp-shell-comments-sheet__backdrop {
	background: rgba(0, 0, 0, 0.4);
}

.tp-shell-comments-sheet__panel {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 160;
	height: 72%;
	display: flex;
	flex-direction: column;
	background: #0d0f14;
	border-radius: 16px 16px 0 0;
	transform: translateY(100%);
	transition: transform 0.3s cubic-bezier(0.32, 0.72, 0, 1);
	overflow: hidden;
}

.tp-shell-comments-sheet.is-open .tp-shell-comments-sheet__panel {
	transform: translateY(0);
}

/* Desktop: keep the sheet to the feed column width instead of edge-to-edge. */
@media (min-width: 992px) {
	.tp-shell-comments-sheet__panel {
		left: 50%;
		right: auto;
		width: min(620px, calc(100vw - var(--tp-shell-rail-collapsed, 72px) - 48px));
		max-width: 620px;
		height: min(78vh, 820px);
		transform: translate(-50%, 100%);
		border-radius: 16px 16px 0 0;
		box-shadow: 0 -12px 48px rgba(0, 0, 0, 0.45);
	}

	body.tp-shell-rail-expanded .tp-shell-comments-sheet__panel {
		width: min(620px, calc(100vw - var(--tp-shell-rail-expanded, 200px) - 48px));
	}

	.tp-shell-comments-sheet.is-open .tp-shell-comments-sheet__panel {
		transform: translate(-50%, 0);
	}
}

.tp-shell-comments-sheet__handle {
	display: block;
	width: 32px;
	height: 3px;
	border-radius: 2px;
	background: rgba(255, 255, 255, 0.12);
	margin: 10px auto 0;
	flex-shrink: 0;
}

.tp-shell-comments-sheet__head {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 16px 10px;
	position: relative;
	flex-shrink: 0;
}

.tp-shell-comments-sheet__banner {
	margin: 0 14px 8px;
	padding: 7px 12px;
	border-radius: 999px;
	border: 1px solid rgba(248, 113, 113, 0.45);
	background: rgba(220, 38, 38, 0.14);
	color: #fca5a5;
	font-family: Barlow, sans-serif;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.25;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tp-shell-comments-sheet__banner[hidden] {
	display: none !important;
}

.tp-shell-comments-sheet__title {
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: var(--tp-shell-text, #e6edf3);
}

.tp-shell-comments-sheet__close {
	appearance: none;
	border: none;
	background: transparent;
	color: var(--tp-shell-muted, #8b949e);
	font-size: 20px;
	line-height: 1;
	padding: 0;
	cursor: pointer;
	position: absolute;
	right: 14px;
}

.tp-shell-comments-sheet__close:hover {
	color: var(--tp-shell-text, #e6edf3);
}

.tp-shell-comments-sheet__body {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	padding: 8px 16px 8px;
}

/* Spot reviews (map "I've been here") — mockup comment-rating rows */
.tp-shell-reviews-block {
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 10px 16px 14px;
	margin: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
	box-sizing: border-box;
	width: 100%;
}

.tp-shell-review-row {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	min-width: 0;
	width: 100%;
	box-sizing: border-box;
	position: relative;
}

.tp-shell-review-delete {
	flex: 0 0 auto;
	align-self: flex-start;
	margin-top: 2px;
	margin-left: auto;
	width: 28px;
	height: 28px;
	padding: 0;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: var(--tp-shell-muted, #8b949e);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	-webkit-appearance: none;
	appearance: none;
	transition: color 0.15s, background 0.15s;
}

.tp-shell-review-delete svg {
	width: 15px;
	height: 15px;
	display: block;
}

.tp-shell-review-delete:hover {
	color: #f87171;
	background: rgba(248, 113, 113, 0.1);
}

.tp-shell-review-delete:disabled {
	opacity: 0.45;
	pointer-events: none;
}

.tp-shell-review-avatar {
	width: 30px;
	height: 30px;
	min-width: 30px;
	min-height: 30px;
	border-radius: 50%;
	flex: 0 0 30px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #2a2f3a, #3d4450);
	color: #e6edf3;
	font-family: Montserrat, sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-decoration: none;
	box-sizing: border-box;
}

.tp-shell-review-avatar img {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.tp-shell-reviews-block--loading {
	gap: 14px;
}

.tp-shell-review-skel {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

.tp-shell-review-skel__av,
.tp-shell-review-skel__line {
	background: rgba(255, 255, 255, 0.06);
	border-radius: 999px;
	animation: tp-shell-review-pulse 1.1s ease-in-out infinite;
}

.tp-shell-review-skel__av {
	width: 30px;
	height: 30px;
	flex-shrink: 0;
}

.tp-shell-review-skel__body {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-top: 2px;
}

.tp-shell-review-skel__line {
	height: 10px;
	border-radius: 6px;
}

.tp-shell-review-skel__line--sm {
	width: 42%;
}

.tp-shell-review-skel__line--md {
	width: 68%;
}

@keyframes tp-shell-review-pulse {
	0%,
	100% {
		opacity: 0.45;
	}
	50% {
		opacity: 0.9;
	}
}

.tp-shell-review-body {
	flex: 1;
	min-width: 0;
}

.tp-shell-review-user {
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	color: var(--tp-shell-text, #e6edf3);
	display: inline;
}

.tp-shell-review-user a {
	color: inherit;
	text-decoration: none;
}

.tp-shell-review-user a:hover {
	text-decoration: underline;
}

.tp-shell-review-time {
	font-size: 10px;
	color: var(--tp-shell-muted, #8b949e);
	font-weight: 400;
	margin-left: 6px;
}

.tp-shell-comment-rating {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 2px;
	font-family: Barlow, sans-serif;
	font-size: 13px;
	color: var(--tp-shell-muted, #8b949e);
}

.tp-shell-comment-rating .stars {
	letter-spacing: 2px;
	font-size: 13px;
	line-height: 1;
}

.tp-shell-comment-rating .stars .on {
	color: #fbbf24;
}

.tp-shell-comment-rating .stars .off {
	color: rgba(255, 255, 255, 0.18);
}

.tp-shell-comment-rating b {
	color: var(--tp-shell-text, #e6edf3);
	font-weight: 700;
}

.tp-shell-comment-rating .rlabel {
	color: var(--tp-shell-muted, #8b949e);
}

.tp-shell-review-text {
	font-size: 12px;
	color: #c9d1d9;
	line-height: 1.5;
	margin-top: 2px;
	margin-bottom: 0;
	word-break: break-word;
}

.tp-shell-reviews-block--locked {
	padding-bottom: 16px;
}

.tp-shell-reviews-gate {
	display: block;
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	border: 1px solid rgba(255, 255, 255, 0.08);
	background: rgba(255, 255, 255, 0.03);
}

.tp-shell-reviews-gate__blur {
	padding: 12px 12px 36px;
	filter: blur(5px);
	user-select: none;
	pointer-events: none;
	opacity: 0.85;
}

.tp-shell-reviews-gate__cta {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 16px;
	text-align: center;
	background: linear-gradient(180deg, rgba(13, 15, 20, 0.2), rgba(13, 15, 20, 0.82) 55%, rgba(13, 15, 20, 0.92));
}

.tp-shell-reviews-gate__title {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	font-weight: 800;
	color: #e6edf3;
}

.tp-shell-reviews-gate__hint {
	font-family: Barlow, sans-serif;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.35;
	color: #8b949e;
	max-width: 280px;
}

.tp-shell-reviews-gate:hover .tp-shell-reviews-gate__title {
	color: #fff;
}

/* Comment composer: + rate / photo (mockup parity) */
.tp-shell-comments-sheet .activity-comments > .ac-form {
	display: flex !important;
	flex-direction: column !important;
}

.tp-shell-comments-sheet .activity-comments > .ac-form .ac-reply-content.tp-shell-comment-input-row {
	position: relative !important;
}

.tp-shell-comments-sheet .tp-shell-rate-btn {
	background: none !important;
	border: none !important;
	cursor: pointer !important;
	color: var(--tp-shell-muted, #8b949e) !important;
	padding: 2px !important;
	margin: 0 !important;
	flex-shrink: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	line-height: 1 !important;
	-webkit-appearance: none !important;
	appearance: none !important;
	transition: color 0.15s, transform 0.12s !important;
}

.tp-shell-comments-sheet .tp-shell-rate-btn svg {
	width: 21px !important;
	height: 21px !important;
	display: block !important;
}

.tp-shell-comments-sheet .tp-shell-rate-btn:hover {
	color: var(--tp-shell-text, #e6edf3) !important;
}

.tp-shell-comments-sheet .tp-shell-rate-btn.on {
	color: #fbbf24 !important;
}

.tp-shell-comments-sheet .tp-shell-rate-btn.on svg {
	fill: rgba(251, 191, 36, 0.15);
}

.tp-shell-comments-sheet .tp-shell-rate-pop,
.tp-shell-rate-pop.tp-shell-rate-pop--portal {
	position: absolute;
	bottom: calc(100% - 2px);
	left: 12px;
	display: none;
	flex-direction: column;
	align-items: stretch;
	gap: 0;
	min-width: 248px;
	background: rgba(22, 27, 34, 0.98);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 14px;
	padding: 0;
	overflow: hidden;
	box-shadow: 0 12px 34px rgba(0, 0, 0, 0.55);
	z-index: 40;
	backdrop-filter: blur(8px);
	pointer-events: auto;
}

.tp-shell-comments-sheet .tp-shell-rate-pop.open,
.tp-shell-rate-pop.tp-shell-rate-pop--portal.open {
	display: flex;
}

/* Portaled above the transformed panel so overflow:hidden can't clip it */
.tp-shell-rate-pop.tp-shell-rate-pop--portal {
	position: fixed;
	z-index: 100080;
}

.tp-shell-comments-sheet .tp-shell-rate-pop-top {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 11px 13px 6px;
}

.tp-shell-comments-sheet .tp-shell-rate-lbl {
	font-family: "JetBrains Mono", ui-monospace, monospace;
	font-size: 9px;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	color: var(--tp-shell-muted, #8b949e);
}

.tp-shell-comments-sheet .tp-shell-rate-required {
	font-family: "JetBrains Mono", ui-monospace, monospace;
	font-size: 9px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	color: #fbbf24;
	border: 1px solid rgba(251, 191, 36, 0.45);
	border-radius: 999px;
	padding: 2px 7px;
	line-height: 1.2;
	white-space: nowrap;
}

.tp-shell-comments-sheet .tp-shell-rate-pop.has-rating .tp-shell-rate-required {
	color: #86efac;
	border-color: rgba(134, 239, 172, 0.4);
}

.tp-shell-comments-sheet .tp-shell-rate-pop.is-missing {
	animation: tp-shell-rate-missing 0.45s ease;
}

.tp-shell-comments-sheet .tp-shell-rate-pop.is-missing .tp-shell-rate-required {
	color: #f87171;
	border-color: rgba(248, 113, 113, 0.55);
}

.tp-shell-comments-sheet .tp-shell-rate-pop.is-missing .tp-shell-rate-star:not(.on) {
	color: rgba(248, 113, 113, 0.55);
}

@keyframes tp-shell-rate-missing {
	0%,
	100% {
		transform: translateX(0);
	}
	20% {
		transform: translateX(-3px);
	}
	40% {
		transform: translateX(3px);
	}
	60% {
		transform: translateX(-2px);
	}
	80% {
		transform: translateX(2px);
	}
}

.tp-shell-comments-sheet .tp-shell-rate-pop-stars {
	display: flex;
	align-items: center;
	gap: 5px;
	padding: 2px 13px 11px;
}

.tp-shell-comments-sheet .tp-shell-rate-star {
	background: none !important;
	border: none !important;
	cursor: pointer;
	font-size: 21px;
	line-height: 1;
	color: rgba(255, 255, 255, 0.22);
	padding: 0;
	margin: 0;
	transition: color 0.1s, transform 0.1s;
	-webkit-appearance: none;
	appearance: none;
}

.tp-shell-comments-sheet .tp-shell-rate-star:hover {
	transform: scale(1.15);
}

.tp-shell-comments-sheet .tp-shell-rate-star.on {
	color: #fbbf24;
}

.tp-shell-comments-sheet .tp-shell-rate-x {
	background: none !important;
	border: none !important;
	cursor: pointer;
	color: var(--tp-shell-muted, #8b949e);
	font-size: 19px;
	line-height: 1;
	padding: 0 2px 0 8px;
	margin-left: 4px;
	border-left: 1px solid rgba(255, 255, 255, 0.12) !important;
	transition: color 0.13s;
	-webkit-appearance: none;
	appearance: none;
}

.tp-shell-comments-sheet .tp-shell-rate-x:hover {
	color: #f87171;
}

.tp-shell-comments-sheet .tp-shell-rate-divider {
	height: 1px;
	background: var(--tp-shell-border, rgba(255, 255, 255, 0.06));
}

.tp-shell-comments-sheet .tp-shell-rate-photo {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 13px;
	background: none !important;
	border: none !important;
	cursor: pointer;
	width: 100%;
	text-align: left;
	color: var(--tp-shell-text, #e6edf3);
	font-family: Barlow, sans-serif;
	font-size: 13px;
	font-weight: 600;
	transition: background 0.13s;
	-webkit-appearance: none;
	appearance: none;
}

.tp-shell-comments-sheet .tp-shell-rate-photo:hover {
	background: rgba(255, 255, 255, 0.04) !important;
}

.tp-shell-comments-sheet .tp-shell-rate-photo svg {
	width: 17px;
	height: 17px;
	color: var(--tp-shell-muted, #8b949e);
	flex-shrink: 0;
}

.tp-shell-comments-sheet .tp-shell-rate-note {
	font-family: "JetBrains Mono", ui-monospace, monospace;
	font-size: 8.5px;
	line-height: 1.55;
	color: var(--tp-shell-muted, #8b949e);
	padding: 0 13px 12px;
	letter-spacing: 0.2px;
}

.tp-shell-comments-sheet .tp-shell-rate-photo-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0 14px 10px 48px;
}

.tp-shell-comments-sheet .tp-shell-rate-photo-chips[hidden] {
	display: none !important;
}

.tp-shell-comments-sheet .tp-shell-rate-photo-chip {
	position: relative;
	width: 52px;
	height: 52px;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.04);
	flex-shrink: 0;
}

.tp-shell-comments-sheet .tp-shell-rate-photo-chip img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tp-shell-comments-sheet .tp-shell-rate-photo-chip-rm {
	position: absolute;
	top: 2px;
	right: 2px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	border: none !important;
	background: rgba(0, 0, 0, 0.72) !important;
	color: #fff !important;
	font-size: 13px;
	line-height: 1;
	padding: 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-appearance: none;
	appearance: none;
}

.tp-shell-feed-review-toast {
	position: fixed;
	left: 50%;
	bottom: calc(var(--tp-shell-nav-h, 64px) + 28px);
	transform: translateX(-50%) translateY(10px);
	background: rgba(20, 24, 30, 0.96);
	border: 1px solid var(--tp-shell-border, rgba(255, 255, 255, 0.06));
	color: var(--tp-shell-text, #e6edf3);
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	font-weight: 700;
	padding: 10px 18px;
	border-radius: 10px;
	z-index: 100090;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.25s, transform 0.25s;
	max-width: min(90vw, 360px);
	text-align: center;
}

.tp-shell-feed-review-toast.show {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

.tp-shell-comments-sheet__body > .activity-comments {
	display: flex !important;
	flex-direction: column !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	min-height: 0;
}

/* ── Comment thread (shell feed look) ── */
.tp-shell-comments-sheet .activity-comments > ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 12px 14px 8px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
}

.tp-shell-comments-sheet .activity-comments > ul > li,
.tp-shell-comments-sheet .activity-comments li.tp-shell-comment-row {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	list-style: none !important;
}

.tp-shell-comments-sheet .activity-comments li .comment-container {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: flex-start !important;
	gap: 0 10px !important;
	padding: 12px 13px !important;
	margin: 0 !important;
	border-radius: 10px !important;
	background: rgba(255, 255, 255, 0.035) !important;
	border: 1px solid var(--tp-shell-border, rgba(255, 255, 255, 0.08)) !important;
	box-shadow: none !important;
}

.tp-shell-comments-sheet .activity-comments li .comment-container:hover {
	background: rgba(255, 255, 255, 0.05) !important;
}

/* Circular avatars (match feed header) */
.tp-shell-comments-sheet .activity-comments .acomment-avatar {
	flex: 0 0 38px !important;
	width: 38px !important;
	height: 38px !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-avatar a,
.tp-shell-comments-sheet .activity-comments .acomment-avatar a.tp-shell-comment-author-link {
	display: block !important;
	width: 38px !important;
	height: 38px !important;
	border-radius: 50% !important;
	overflow: hidden !important;
	line-height: 0 !important;
	pointer-events: auto !important;
	cursor: pointer !important;
	position: relative !important;
	z-index: 2 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-avatar img {
	display: block !important;
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	min-height: 38px !important;
	border-radius: 50% !important;
	object-fit: cover !important;
	border: none !important;
	box-shadow: none !important;
	background: var(--tp-shell-card, #161b22) !important;
}

.tp-shell-comments-sheet .activity-comments .comment-inner {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	width: auto !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: baseline !important;
	gap: 4px 8px !important;
	margin: 0 0 4px !important;
	padding: 0 !important;
	line-height: 1.25 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta > a,
.tp-shell-comments-sheet .activity-comments .acomment-meta a.tp-shell-comment-author-link {
	font-family: Montserrat, sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	color: var(--tp-shell-text, #e6edf3) !important;
	text-decoration: none !important;
	pointer-events: auto !important;
	cursor: pointer !important;
	position: relative !important;
	z-index: 2 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta > a:hover,
.tp-shell-comments-sheet .activity-comments .acomment-meta a.tp-shell-comment-author-link:hover {
	color: #fff !important;
	text-decoration: underline !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta .youzify-account-verified {
	font-size: 11px !important;
	margin-left: 4px !important;
	color: var(--tp-shell-accent, #a78bfa) !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta-time {
	font-family: "JetBrains Mono", monospace !important;
	font-size: 9px !important;
	font-weight: 400 !important;
	color: rgba(139, 148, 158, 0.55) !important;
	line-height: 1.3 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta-time a,
.tp-shell-comments-sheet .activity-comments .acomment-meta-time .activity-time-since {
	font-size: inherit !important;
	color: inherit !important;
	text-decoration: none !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta-time i {
	display: none !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-content {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	color: var(--tp-shell-muted, #8b949e) !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-content p {
	margin: 0 !important;
	padding: 0 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-content .gamipress-buddypress-user-details,
.tp-shell-comments-sheet .activity-comments .youzify-clear {
	display: none !important;
}

/* Per-comment actions */
.tp-shell-comments-sheet .activity-comments .acomment-options {
	flex: 1 1 100% !important;
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 10px 14px !important;
	margin: 8px 0 0 !important;
	padding: 8px 0 0 48px !important;
	border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
	font-size: 11px !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options > a {
	font-family: Barlow, sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	color: var(--tp-shell-muted, #8b949e) !important;
	text-decoration: none !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options > a:hover {
	color: var(--tp-shell-text, #e6edf3) !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options > a.delete,
.tp-shell-comments-sheet .activity-comments .acomment-options > a.acomment-delete {
	color: #f87171 !important;
	opacity: 0.85;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .tp-like-wrapper {
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	height: auto !important;
	padding: 0 !important;
	background: transparent !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .yzpr-react-title {
	display: none !important;
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
}

/* Heart only — hide Youzify thumbs-up emoji (sheet is outside .youzify) */
.tp-shell-comments-sheet .activity-comments .acomment-options .yzpr-post-reaction::before,
.tp-shell-comments-sheet .activity-comments .acomment-options .yzpr-post-reaction::after {
	content: none !important;
	display: none !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .yzpr-post-reaction img {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	visibility: hidden !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .yzpr-post-reaction {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 0 !important;
	margin: 0 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .yzpr-post-reaction i:not([data-tp-heart]) {
	display: none !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options a.yzpr-reacto-post .yzpr-post-reaction,
.tp-shell-comments-sheet .activity-comments .acomment-options a.yzpr-reacto-post .yzpr-post-reaction * {
	pointer-events: none;
}

.tp-shell-comments-sheet .activity-comments .acomment-options i[data-tp-heart] {
	display: inline-block !important;
	font-size: 14px !important;
	color: var(--tp-shell-muted) !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .tp-like-wrapper:has(.yzpr-yes-reaction) i[data-tp-heart],
.tp-shell-comments-sheet .activity-comments .acomment-options .tp-like-wrapper.tp-like-has-reaction i[data-tp-heart] {
	color: #f87171 !important;
	font-weight: 900 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .tp-like-count,
.tp-shell-comments-sheet .activity-comments .acomment-options .tp-like-count-circle {
	font-size: 11px !important;
	font-weight: 400 !important;
	color: rgba(139, 148, 158, 0.55) !important;
	border: none !important;
	background: transparent !important;
	padding: 0 !important;
	min-width: 0 !important;
}

/* Nested replies — indent only, no rail/outline/card chrome */
.tp-shell-comments-sheet .activity-comments ul ul {
	list-style: none !important;
	margin: 8px 0 0 !important;
	padding: 0 0 0 40px !important;
	border: none !important;
	border-left: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
}

.tp-shell-comments-sheet .activity-comments ul ul li,
.tp-shell-comments-sheet .activity-comments ul ul li .comment-container {
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
}

/* All comment forms hidden until explicitly opened (prevents duplicate composers). */
.tp-shell-comments-sheet .activity-comments .ac-form {
	display: none !important;
}

/* Compose box — pinned to bottom of modal (top-level open form only) */
.tp-shell-comments-sheet .activity-comments > .ac-form[data-tp-comment-open="1"] {
	display: block !important;
	flex-shrink: 0 !important;
	order: 99 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 2 !important;
	margin: 0 !important;
	padding: 12px 14px calc(12px + env(safe-area-inset-bottom, 0px)) !important;
	border: none !important;
	border-top: 1px solid var(--tp-shell-border, rgba(255, 255, 255, 0.08)) !important;
	border-radius: 0 !important;
	background: rgba(13, 15, 20, 0.98) !important;
	box-shadow: none !important;
}

/* Reply-to-comment form (only while that reply thread is open) */
.tp-shell-comments-sheet .activity-comments li[id^="acomment-"] > .ac-form {
	order: unset !important;
	position: static !important;
	margin: 8px 0 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
}

.tp-shell-comments-sheet .activity-comments li[id^="acomment-"].tp-shell-comment-reply-open > .ac-form[data-tp-comment-open="1"] {
	display: block !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	outline: none !important;
}

.tp-shell-comments-sheet .activity-comments li[id^="acomment-"] > .ac-form .ac-reply-content,
.tp-shell-comments-sheet .activity-comments li[id^="acomment-"] > .ac-form .ac-textarea {
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form .ac-reply-content:not(.tp-shell-comment-input-row),
.tp-shell-comments-sheet .activity-comments .ac-form .ac-textarea:not(.tp-shell-comment-input-wrap) {
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form textarea.ac-input {
	display: block !important;
	width: 100% !important;
	min-height: 72px !important;
	max-height: 140px !important;
	padding: 10px 12px !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
	color: var(--tp-shell-text, #e6edf3) !important;
	background: rgba(255, 255, 255, 0.05) !important;
	border: 1px solid var(--tp-shell-border, rgba(255, 255, 255, 0.1)) !important;
	border-radius: 10px !important;
	resize: vertical !important;
	box-sizing: border-box !important;
}

/* Pill composer: kill the boxed-textarea look so left padding comes from the wrap */
.tp-shell-comments-sheet .activity-comments .ac-form .ac-textarea.tp-shell-comment-input-wrap textarea.ac-input {
	min-height: 20px !important;
	max-height: 20px !important;
	padding: 0 0 0 2px !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	resize: none !important;
	box-shadow: none !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form textarea.ac-input::placeholder {
	color: rgba(139, 148, 158, 0.65) !important;
}

.tp-shell-comments-sheet .activity-comments .youzify-wall-comments-buttons {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 8px !important;
	margin-top: 10px !important;
}

.tp-shell-comments-sheet .activity-comments .youzify-wall-comments-buttons .btn,
.tp-shell-comments-sheet .activity-comments .youzify-wall-upload-btn,
.tp-shell-comments-sheet .activity-comments .youzify-wall-add-gif,
.tp-shell-comments-sheet .activity-comments .youzify-send-comment {
	font-family: Barlow, sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	padding: 6px 10px !important;
	border-radius: 6px !important;
	border: 1px solid var(--tp-shell-border) !important;
	background: rgba(255, 255, 255, 0.05) !important;
	color: var(--tp-shell-muted) !important;
}

.tp-shell-comments-sheet .activity-comments .youzify-send-comment {
	background: rgba(167, 139, 250, 0.2) !important;
	border-color: rgba(167, 139, 250, 0.4) !important;
	color: var(--tp-shell-text) !important;
}

.tp-shell-comments-sheet__body:not(.has-comments) .activity-comments > ul:empty::before {
	content: "No comments yet. Be the first to reply.";
	display: block;
	padding: 24px 14px;
	text-align: center;
	font-size: 13px;
	color: var(--tp-shell-muted);
}

/* Template parity pass: comments sheet internals */
.tp-shell-comments-sheet__body {
	padding: 0 !important;
}

.tp-shell-comments-sheet__body > .activity-comments {
	border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.tp-shell-comments-sheet .activity-comments > ul {
	padding: 8px 16px 8px !important;
	gap: 18px !important;
}

.tp-shell-comments-sheet .activity-comments li .comment-container {
	gap: 10px !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background: transparent !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-avatar,
.tp-shell-comments-sheet .activity-comments .acomment-avatar a,
.tp-shell-comments-sheet .activity-comments .acomment-avatar img {
	width: 30px !important;
	height: 30px !important;
	min-width: 30px !important;
	min-height: 30px !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta {
	gap: 0 !important;
	margin: 0 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta > a {
	font-size: 11px !important;
	font-weight: 700 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-meta-time {
	font-size: 10px !important;
	font-weight: 400 !important;
	color: var(--tp-shell-muted, #8b949e) !important;
	margin-left: 6px !important;
	display: inline-flex !important;
	align-items: baseline !important;
	line-height: 1.2 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-content {
	font-size: 12px !important;
	line-height: 1.5 !important;
	color: #c9d1d9 !important;
	margin-top: 2px !important;
	margin-bottom: 4px !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	width: 100% !important;
	gap: 12px !important;
	margin: 4px 0 0 !important;
	padding: 0 !important;
	border: 0 !important;
	font-size: 11px !important;
	color: var(--tp-shell-muted, #8b949e) !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .yz-post-reactors-list {
	display: none !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options > a {
	font-size: 11px !important;
	font-weight: 500 !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .tp-like-wrapper {
	gap: 4px !important;
}

.tp-shell-comments-sheet .activity-comments .acomment-options .tp-like-count,
.tp-shell-comments-sheet .activity-comments .acomment-options .tp-like-count-circle {
	font-family: "JetBrains Mono", monospace !important;
	font-size: 9px !important;
}

/* (nested reply chrome cleared above; keep indent-only) */

.tp-shell-comments-sheet .activity-comments > .ac-form[data-tp-comment-open="1"] {
	padding: 10px 14px calc(14px + env(safe-area-inset-bottom, 0px)) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
	background: #0d0f14 !important;
}

.tp-shell-comments-sheet .activity-comments > .ac-form .ac-reply-content {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tp-shell-comments-sheet .activity-comments > .ac-form .ac-reply-content {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

.tp-shell-comments-sheet .activity-comments > .ac-form .ac-textarea {
	display: flex !important;
	align-items: center !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	min-height: 36px !important;
	padding: 8px 16px !important;
	border-radius: 20px !important;
	background: rgba(255, 255, 255, 0.06) !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form textarea.ac-input {
	min-height: 18px !important;
	max-height: 84px !important;
	padding: 1px 6px 1px 2px !important;
	line-height: 1.35 !important;
	border: 0 !important;
	background: transparent !important;
	resize: none !important;
	outline: 0 !important;
	box-shadow: none !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form textarea.ac-input:focus,
.tp-shell-comments-sheet .activity-comments .ac-form textarea.ac-input:focus-visible {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form .ac-textarea:focus-within {
	outline: 0 !important;
	box-shadow: none !important;
}

.tp-shell-comments-sheet .activity-comments li[id^="acomment-"] > .ac-form .ac-reply-content {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tp-shell-comments-sheet .activity-comments li[id^="acomment-"] > .ac-form .ac-textarea {
	display: flex !important;
	align-items: center !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
	min-height: 36px !important;
	padding: 8px 16px !important;
	border-radius: 20px !important;
	background: rgba(255, 255, 255, 0.06) !important;
}

.tp-shell-comments-sheet .activity-comments .youzify-wall-upload-btn,
.tp-shell-comments-sheet .activity-comments .youzify-wall-add-gif {
	display: none !important;
}

.tp-shell-comments-sheet .activity-comments .youzify-wall-comments-buttons {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 0 !important;
	width: auto !important;
}

.tp-shell-comments-sheet .activity-comments .youzify-send-comment.tp-shell-comment-send-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 15px !important;
	height: 15px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--tp-shell-muted, #8b949e) !important;
}

.tp-shell-comments-sheet .activity-comments .youzify-send-comment.tp-shell-comment-send-icon:hover {
	color: #fff !important;
}

.tp-shell-comments-sheet .activity-comments .youzify-send-comment.tp-shell-comment-send-icon svg {
	width: 15px !important;
	height: 15px !important;
	display: block !important;
}

/* Mockup2 parity: comment input row */
.tp-shell-comments-sheet .activity-comments .ac-form .ac-reply-content.tp-shell-comment-input-row,
.tp-shell-comments-sheet .activity-comments > .ac-form .ac-reply-content.tp-shell-comment-input-row,
.tp-shell-comments-sheet .activity-comments li[id^="acomment-"] > .ac-form .ac-reply-content.tp-shell-comment-input-row {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	padding: 10px 14px 14px !important;
	margin: 0 !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form .ac-reply-content .ac-reply-avatar,
.tp-shell-comments-sheet .activity-comments .ac-form .ac-reply-content .acomment-avatar,
.tp-shell-comments-sheet .activity-comments .ac-form .ac-reply-content .tp-shell-comment-input-avatar {
	width: 28px !important;
	height: 28px !important;
	min-width: 28px !important;
	min-height: 28px !important;
	border-radius: 999px !important;
	overflow: hidden !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: linear-gradient(135deg, #2a2f3a, #3d4450) !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form .ac-reply-content .ac-reply-avatar img,
.tp-shell-comments-sheet .activity-comments .ac-form .ac-reply-content .acomment-avatar img,
.tp-shell-comments-sheet .activity-comments .ac-form .ac-reply-content img.tp-shell-comment-input-avatar-img {
	width: 28px !important;
	height: 28px !important;
	border-radius: 999px !important;
	object-fit: cover !important;
	display: block !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form .ac-textarea.tp-shell-comment-input-wrap,
.tp-shell-comments-sheet .activity-comments > .ac-form .ac-textarea.tp-shell-comment-input-wrap,
.tp-shell-comments-sheet .activity-comments li[id^="acomment-"] > .ac-form .ac-textarea.tp-shell-comment-input-wrap {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	flex: 1 1 auto !important;
	width: auto !important;
	min-width: 0 !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 8px 36px 8px 14px !important;
	border-radius: 20px !important;
	background: rgba(255, 255, 255, 0.06) !important;
	box-sizing: border-box !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form .ac-textarea.tp-shell-comment-input-wrap textarea.ac-input,
.tp-shell-comments-sheet .activity-comments .ac-form textarea.ac-input {
	font-family: "Barlow", sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	color: #e6edf3 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form textarea.ac-input::placeholder {
	color: #8b949e !important;
	opacity: 1 !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form .ac-textarea.tp-shell-comment-input-wrap .youzify-wall-comments-buttons {
	position: absolute !important;
	right: 12px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form .ac-textarea.tp-shell-comment-input-wrap .youzify-send-comment.tp-shell-comment-send-icon {
	margin: 0 !important;
	padding: 0 !important;
	width: 15px !important;
	height: 15px !important;
	color: #8b949e !important;
}

/* Final placeholder alignment fix (prevent clipped "Add a comment…"). */
.tp-shell-comments-sheet .activity-comments .ac-form .ac-textarea.tp-shell-comment-input-wrap textarea.ac-input,
.tp-shell-comments-sheet .activity-comments > .ac-form .ac-textarea.tp-shell-comment-input-wrap textarea.ac-input,
.tp-shell-comments-sheet .activity-comments li[id^="acomment-"] > .ac-form .ac-textarea.tp-shell-comment-input-wrap textarea.ac-input {
	display: block !important;
	flex: 1 1 auto !important;
	width: 100% !important;
	height: 20px !important;
	min-height: 20px !important;
	max-height: 20px !important;
	line-height: 20px !important;
	padding: 0 0 0 2px !important;
	margin: 0 !important;
	overflow: hidden !important;
	resize: none !important;
	background: transparent !important;
	border: none !important;
	box-sizing: border-box !important;
}

.tp-shell-comments-sheet .activity-comments .ac-form .ac-textarea.tp-shell-comment-input-wrap textarea.ac-input::placeholder {
	line-height: 20px !important;
	opacity: 1 !important;
	padding-left: 0 !important;
	text-indent: 0 !important;
}

.tp-shell-comments-sheet .activity-comments .bp-ajax-message.error,
.tp-shell-comments-sheet .activity-comments #message.error.bp-ajax-message {
	display: none !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > button.tp-admin-delete-location::before {
	color: #f87171 !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-shell-post-info {
	flex: 1 1 100% !important;
	width: 100% !important;
	padding: 2px 0 10px !important;
	margin: 0 !important;
	order: 10 !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-location-meta-actions {
	display: none !important;
}

/* Hide before .tp-shell-ig-post exists — style.css shows this pill by default. */
body.tp-shell-feed-layout .tp-location-feed-preview__label,
body.tp-shell-feed-layout li.tp-shell-ig-post .tp-location-feed-preview__label {
	display: none !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-location-feed-preview {
	margin-top: 0 !important;
	order: 0;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .youzify-activity-statistics {
	padding-top: 4px !important;
	padding-bottom: 2px !important;
	border-top: none !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .youzify-activity-statistics a,
body.tp-shell-feed-layout li.tp-shell-ig-post .youzify-activity-statistics button {
	color: var(--tp-shell-muted) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-content > .tp-shell-post-info {
	display: block !important;
	width: 100% !important;
	flex: 0 0 auto !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta + .tp-shell-post-info,
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-content > .activity-meta + .tp-shell-post-info {
	margin-top: 0;
}

body.tp-shell-feed-layout .tp-shell-post-info {
	padding: 4px 18px 14px;
	display: block !important;
	width: 100% !important;
	box-sizing: border-box;
}

body.tp-shell-feed-layout .tp-shell-post-spot-head {
	display: block;
	width: 100%;
	margin-bottom: 6px;
}

body.tp-shell-feed-layout .tp-shell-post-spot-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	width: 100%;
	margin-bottom: 8px;
}

body.tp-shell-feed-layout .tp-shell-post-spot-meta .tp-shell-post-tag {
	flex-shrink: 0;
}

body.tp-shell-feed-layout .tp-shell-post-spot-head + .tp-shell-post-spot-meta {
	margin-top: 0;
}

body.tp-shell-feed-layout .tp-shell-post-spot-meta + .tp-shell-post-tags {
	margin-top: 0;
}

body.tp-shell-feed-layout .tp-shell-post-spot-name {
	font-family: Montserrat, sans-serif;
	font-size: 15px;
	font-weight: 800;
	color: var(--tp-shell-text);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

body.tp-shell-feed-layout .tp-shell-post-spot-name:hover {
	color: #fff;
}

body.tp-shell-feed-layout .tp-shell-post-spot-name svg {
	width: 13px;
	height: 13px;
	color: var(--tp-shell-muted);
	flex-shrink: 0;
}

body.tp-shell-feed-layout .tp-shell-post-tags {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin-bottom: 10px;
	width: 100%;
}

body.tp-shell-feed-layout .tp-shell-post-tags-expand {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 1px;
	min-width: 22px;
	height: 22px;
	padding: 0 6px;
	margin: 0;
	border-radius: 5px;
	border: 1px solid var(--tp-shell-border);
	background: rgba(255, 255, 255, 0.04);
	color: var(--tp-shell-muted);
	font-family: Barlow, sans-serif;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
	flex-shrink: 0;
	transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

body.tp-shell-feed-layout .tp-shell-post-tags-expand:hover {
	color: var(--tp-shell-text);
	border-color: rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.07);
}

body.tp-shell-feed-layout .tp-shell-post-tags-expand__icon {
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
}

body.tp-shell-feed-layout .tp-shell-post-tags-expand__count {
	font-size: 10px;
	font-weight: 600;
	line-height: 1;
}

body.tp-shell-feed-layout .tp-shell-post-tags--collapsible.is-expanded .tp-shell-post-tags-expand {
	display: none;
}

body.tp-shell-feed-layout .tp-shell-post-tag {
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	padding: 3px 9px;
	border-radius: 5px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid var(--tp-shell-border);
	color: var(--tp-shell-muted);
	text-transform: uppercase;
	letter-spacing: 0.35px;
	line-height: 1.3;
}

/* Spot type — meta row pill (not mixed with hazard tags) */
body.tp-shell-feed-layout .tp-shell-post-tag--type {
	font-family: Barlow, sans-serif;
	font-size: 10px;
	font-weight: 600;
	text-transform: none;
	letter-spacing: 0.02em;
	color: rgba(196, 181, 253, 0.9);
	background: rgba(167, 139, 250, 0.1);
	border: 1px dashed rgba(167, 139, 250, 0.28);
}

body.tp-shell-feed-layout .tp-shell-post-tag--diff-easy {
	color: #56d98a;
	border-color: rgba(86, 217, 138, 0.35);
	background: rgba(86, 217, 138, 0.14);
}

body.tp-shell-feed-layout .tp-shell-post-tag--diff-moderate {
	color: #fbbf24;
	border-color: rgba(251, 191, 36, 0.35);
	background: rgba(251, 191, 36, 0.14);
}

body.tp-shell-feed-layout .tp-shell-post-tag--diff-hard {
	color: #f87171;
	border-color: rgba(248, 113, 113, 0.35);
	background: rgba(248, 113, 113, 0.14);
}

body.tp-shell-feed-layout .tp-shell-post-tag--diff-extreme {
	color: var(--tp-shell-accent);
	border-color: rgba(167, 139, 250, 0.35);
	background: rgba(167, 139, 250, 0.14);
}

body.tp-shell-feed-layout .tp-shell-post-caption {
	font-size: 12px;
	color: var(--tp-shell-muted);
	line-height: 1.5;
	margin-top: 2px;
	margin-bottom: 5px;
}

body.tp-shell-feed-layout .tp-shell-post-time {
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	margin-top: 4px;
	color: rgba(139, 148, 158, 0.55);
	letter-spacing: 0.3px;
}

body.tp-shell-feed-layout .tp-shell-post-place {
	margin-bottom: 4px;
}

/* Difficulty badge on image */
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-content {
	position: relative;
	display: flex !important;
	flex-direction: column !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-difficulty-rating {
	margin: 0 !important;
	padding: 4px 10px !important;
	border-radius: 5px !important;
	font-family: "JetBrains Mono", monospace !important;
	font-size: 9px !important;
	letter-spacing: 0.5px !important;
	font-weight: 700 !important;
	backdrop-filter: blur(8px);
	background: rgba(13, 15, 20, 0.72) !important;
	border: 1px solid var(--tp-shell-border) !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-difficulty-rating {
	font-size: 0;
	line-height: 1;
	color: transparent;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-difficulty-rating .dif-rating {
	font-size: 9px;
	font-weight: 700;
	color: inherit;
	display: inline-block;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-difficulty-rating.difficulty-easy .dif-rating {
	color: #56d98a !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-difficulty-rating.difficulty-moderate .dif-rating {
	color: #fbbf24 !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-difficulty-rating.difficulty-hard .dif-rating {
	color: #f87171 !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-difficulty-rating.difficulty-extreme .dif-rating {
	color: var(--tp-shell-accent) !important;
}

/* ── Profile layout (mockup) ── */
body.tp-shell-profile-layout {
	background: var(--tp-shell-bg) !important;
}

body.tp-shell-profile-layout #youzify-profile-header.youzify-hdr-v2 {
	background: var(--tp-shell-bg) !important;
	border-bottom: 1px solid var(--tp-shell-border) !important;
	padding-bottom: 0 !important;
}

body.tp-shell-profile-layout #youzify-profile-header .youzify-header-cover {
	background: transparent !important;
	min-height: 0 !important;
}

body.tp-shell-profile-layout #youzify-profile-header .youzify-name h2 {
	font-family: Montserrat, sans-serif !important;
	font-size: 18px !important;
	font-weight: 900 !important;
	color: var(--tp-shell-text) !important;
}

body.tp-shell-profile-layout #youzify-profile-header .youzify-usermeta,
body.tp-shell-profile-layout #youzify-profile-header .youzify-user-meta {
	color: var(--tp-shell-muted) !important;
	font-size: 12px !important;
}

body.tp-shell-profile-layout .tp-shell-profile-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 12px 16px 14px;
	max-width: 100%;
	margin: 0 auto;
	border-bottom: 1px solid var(--tp-shell-border);
}

body.tp-shell-profile-layout .tp-shell-profile-chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	border-radius: 100px;
	font-size: 11px;
	font-weight: 700;
	font-family: Montserrat, sans-serif;
	color: var(--tp-shell-muted);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid var(--tp-shell-border);
	text-decoration: none;
	transition: background 0.15s, color 0.15s, border-color 0.15s;
}

body.tp-shell-profile-layout .tp-shell-profile-chip i {
	font-size: 10px;
	opacity: 0.85;
}

body.tp-shell-profile-layout .tp-shell-profile-chip:hover,
body.tp-shell-profile-layout .tp-shell-profile-chip.is-active {
	color: var(--tp-shell-text);
	border-color: rgba(167, 139, 250, 0.35);
	background: rgba(167, 139, 250, 0.1);
}

body.tp-shell-profile-layout .tp-shell-profile-chip-count {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	padding: 1px 5px;
	border-radius: 4px;
	background: rgba(167, 139, 250, 0.2);
	color: var(--tp-shell-accent);
}

body.tp-shell-profile-layout #youzify-profile-navmenu.tp-shell-profile-nav--compact {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	margin: 0 auto !important;
	max-width: 100% !important;
}

body.tp-shell-profile-layout #youzify-profile-navmenu.tp-shell-profile-nav--compact .youzify-inner-content {
	justify-content: flex-start !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
	padding: 8px 16px 12px !important;
}

body.tp-shell-profile-layout #youzify-profile-navmenu.tp-shell-profile-nav--compact ul.youzify-profile-navmenu {
	flex: 1 1 100% !important;
	justify-content: flex-start !important;
	gap: 4px !important;
}

body.tp-shell-profile-layout #youzify-profile-navmenu.tp-shell-profile-nav--compact .youzify-navbar-item a {
	font-size: 11px !important;
	padding: 6px 10px !important;
	border-radius: 8px !important;
}

body.tp-shell-profile-layout #youzify-profile-navmenu.tp-shell-profile-nav--compact .youzify-navbar-item.youzify-active-menu a {
	background: rgba(167, 139, 250, 0.12) !important;
	color: var(--tp-shell-accent) !important;
}

/* Hide Friends/Media in main nav — duplicated in chip row */
body.tp-shell-profile-layout #youzify-profile-navmenu.tp-shell-profile-nav--compact .youzify-navbar-item a[href*="/friends/"],
body.tp-shell-profile-layout #youzify-profile-navmenu.tp-shell-profile-nav--compact .youzify-navbar-item a[href*="/media/"] {
	display: none !important;
}

body.tp-shell-profile-layout .youzify-page-main-content {
	padding-top: calc(var(--tp-shell-top-h) + 8px);
}

/* ===== 2026 mockup refresh (staging shell) ===== */

.tp-shell-bottom-nav {
	left: 50%;
	right: auto;
	bottom: calc(10px + env(safe-area-inset-bottom, 0px));
	transform: translateX(-50%);
	width: auto;
	height: 56px;
	padding: 0 10px;
	border-radius: 40px;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.12);
	backdrop-filter: blur(24px);
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.1);
	gap: 0;
}

.tp-shell-nav-item {
	flex: 0 0 auto;
	padding: 0 6px;
}

.tp-shell-nav-pill {
	width: 42px;
	height: 40px;
	color: rgba(255, 255, 255, 0.45);
}

.tp-shell-nav-item.is-active .tp-shell-nav-pill {
	width: 42px;
	background: rgba(255, 255, 255, 0.16);
	color: #fff;
}

body.tp-shell-feed-layout .tp-shell-feed-filters {
	margin: 0 auto 8px;
	padding: 0 8px 8px;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__head {
	display: none;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tabs {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 999px;
	padding: 4px;
	gap: 4px;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tab {
	border-radius: 999px;
	border: 0;
	padding: 8px 10px;
	font-size: 11px;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tab.is-active {
	background: rgba(255, 255, 255, 0.16);
	border-color: transparent;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__status {
	font-size: 10px;
	padding-left: 6px;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map,
body.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map {
	display: none !important;
}

body.tp-shell-feed-layout .tp-shell-post-user-meta {
	display: flex;
	flex-direction: column;
}

body.tp-shell-feed-layout .tp-shell-post-user-meta .tp-shell-post-location-sub {
	order: 1;
}

body.tp-shell-feed-layout .tp-shell-post-user-meta .tp-shell-post-author-line {
	order: 2;
}

@media (max-width: 991px) {
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-bottom-nav {
		display: flex !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post {
		position: relative;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta {
		position: absolute;
		right: 10px;
		bottom: calc(96px + env(safe-area-inset-bottom, 0px));
		width: auto !important;
		padding: 0 !important;
		margin: 0 !important;
		display: flex !important;
		flex-direction: column !important;
		gap: 12px !important;
		align-items: center !important;
		z-index: 5;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta > .tp-like-wrapper,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta > a.acomment-reply,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta > a.youzify-social-share-activity {
		flex-direction: column !important;
		gap: 4px !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta .tp-shell-like-count-num,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta .tp-shell-comment-count {
		height: auto !important;
		line-height: 1 !important;
		font-size: 11px !important;
	}
}

body.tp-shell-profile-layout .tp-shell-profile-chips {
	display: none !important;
}

/* Full profile replacement: hide legacy Youzify/BuddyPress profile template blocks */
body.tp-shell-profile-layout #youzify-profile-navmenu,
body.tp-shell-profile-layout .youzify-profile-navmenu {
	display: none !important;
}

body.tp-shell-profile-layout:has(.tp-shell-profile-surface) #youzify-profile-header {
	display: none !important;
}

body.tp-shell-profile-layout .youzify-page-main-content:has(> .tp-shell-profile-surface) > * {
	display: none !important;
}

body.tp-shell-profile-layout .youzify-page-main-content:has(> .tp-shell-profile-surface) > .tp-shell-profile-surface {
	display: block !important;
}

body.tp-shell-profile-layout .tp-shell-profile-surface {
	display: block !important;
}

body.tp-shell-profile-layout .tp-shell-profile-surface {
	margin: 0 auto 18px;
	max-width: 100%;
	border-bottom: 1px solid var(--tp-shell-border);
	padding-bottom: 14px;
}

body.tp-shell-profile-layout .tp-shell-profile-head {
	padding: 10px 16px 4px;
}

body.tp-shell-profile-layout .tp-shell-profile-id {
	display: flex;
	align-items: center;
	gap: 12px;
}

body.tp-shell-profile-layout .tp-shell-profile-avatar {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid rgba(255, 255, 255, 0.16);
	background: linear-gradient(135deg, #2a2f3a, #3d4450);
}

body.tp-shell-profile-layout .tp-shell-profile-avatar img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tp-shell-profile-layout .tp-shell-profile-name {
	margin: 0;
	font-family: Montserrat, sans-serif;
	font-size: 20px;
	font-weight: 900;
}

body.tp-shell-profile-layout .tp-shell-profile-handle {
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	color: var(--tp-shell-muted);
	margin-top: 2px;
}

body.tp-shell-profile-layout .tp-shell-profile-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 6px;
	margin-top: 12px;
}

body.tp-shell-profile-layout .tp-shell-profile-stats > div {
	text-align: center;
}

body.tp-shell-profile-layout .tp-shell-profile-stats strong {
	display: block;
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	font-weight: 900;
	color: var(--tp-shell-text);
}

body.tp-shell-profile-layout .tp-shell-profile-stats span {
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	color: var(--tp-shell-muted);
	letter-spacing: 0.6px;
	text-transform: uppercase;
}

body.tp-shell-profile-layout .tp-shell-profile-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 10px;
}

body.tp-shell-profile-layout .tp-shell-profile-pill {
	padding: 6px 11px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.12);
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	color: rgba(255, 255, 255, 0.85);
}

body.tp-shell-profile-layout .tp-shell-profile-pill--premium {
	color: #fbbf24;
	border-color: rgba(251, 191, 36, 0.28);
	background: rgba(251, 191, 36, 0.11);
}

body.tp-shell-profile-layout .tp-shell-profile-friends {
	padding: 10px 16px 12px;
	border-top: 1px solid var(--tp-shell-border);
	border-bottom: 1px solid var(--tp-shell-border);
}

body.tp-shell-profile-layout .tp-shell-profile-friends-title {
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	font-weight: 700;
	margin-bottom: 9px;
}

body.tp-shell-profile-layout .tp-shell-profile-friends-list {
	display: flex;
	gap: 14px;
	overflow-x: auto;
	scrollbar-width: none;
}

body.tp-shell-profile-layout .tp-shell-profile-friends-list::-webkit-scrollbar {
	display: none;
}

body.tp-shell-profile-layout .tp-shell-profile-friend {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	text-decoration: none;
	color: inherit;
	flex: 0 0 auto;
	max-width: 52px;
}

body.tp-shell-profile-layout .tp-shell-profile-friend-av {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
	background: linear-gradient(135deg, #1e2430, #2a3040);
}

body.tp-shell-profile-layout .tp-shell-profile-friend-av img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tp-shell-profile-layout .tp-shell-profile-friend-name {
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	color: var(--tp-shell-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
}

body.tp-shell-profile-layout .tp-shell-profile-tabs {
	display: flex;
	padding: 0 16px;
	border-bottom: 1px solid var(--tp-shell-border);
}

body.tp-shell-profile-layout .tp-shell-profile-tab {
	flex: 1 1 0;
	border: 0;
	background: transparent;
	color: var(--tp-shell-muted);
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	padding: 11px 4px;
	border-bottom: 2px solid transparent;
	cursor: pointer;
}

body.tp-shell-profile-layout .tp-shell-profile-tab.is-active {
	color: var(--tp-shell-text);
	border-bottom-color: rgba(255, 255, 255, 0.72);
}

body.tp-shell-profile-layout .tp-shell-profile-tab-panel {
	display: none;
}

body.tp-shell-profile-layout .tp-shell-profile-tab-panel.is-active {
	display: block;
}

body.tp-shell-profile-layout .tp-shell-profile-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 2px;
	padding: 2px;
}

body.tp-shell-profile-layout .tp-shell-profile-grid-item {
	position: relative;
	aspect-ratio: 1 / 1;
	background: rgba(255, 255, 255, 0.05);
	overflow: hidden;
}

body.tp-shell-profile-layout .tp-shell-profile-grid-item-bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
}

body.tp-shell-profile-layout .tp-shell-profile-grid-item-bg img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tp-shell-profile-layout.tp-profile-grid-img-fade .tp-shell-profile-grid-item-bg img {
	opacity: 0;
	transition: opacity 0.16s ease;
}

body.tp-shell-profile-layout.tp-profile-grid-img-fade .tp-shell-profile-grid-item-bg img.is-loaded {
	opacity: 1;
}

body.tp-shell-profile-layout .tp-shell-profile-grid-empty {
	padding: 18px 16px;
	font-size: 12px;
	color: var(--tp-shell-muted);
}

body.tp-shell-profile-layout .tp-shell-profile-grid-more-wrap {
	display: flex;
	justify-content: center;
	padding: 12px 10px 16px;
}

body.tp-shell-profile-layout .tp-shell-profile-grid-more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	padding: 0 16px;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: rgba(22, 28, 38, 0.82);
	color: #eef2ff;
	font-family: Barlow, sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.1px;
	cursor: pointer;
}

body.tp-shell-profile-layout .tp-shell-profile-grid-more[disabled] {
	opacity: 0.7;
	cursor: default;
}

/* Profile 1:1 template overhaul */
body.tp-shell-profile-layout .tp-shell-profile-surface {
	margin: 0 auto !important;
	max-width: 100% !important;
	border: 0 !important;
	padding: 0 !important;
}

body.tp-shell-profile-layout .profile-page {
	padding: 0 !important;
}

/* Profile topbar logo removed — shell chrome already brands the page. */
body.tp-shell-profile-layout .page-topbar {
	display: none !important;
}

body.tp-shell-profile-layout .profile-gear {
	position: absolute;
	right: 14px;
	top: 8px;
	width: 30px;
	height: 30px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.04);
	color: var(--tp-shell-muted);
}

/* Legacy profile settings trigger/sheet are replaced by shell topbar settings menu. */
body.tp-shell-profile-layout .profile-gear,
body.tp-shell-profile-layout #tpProfileSettingsBackdrop,
body.tp-shell-profile-layout #tpProfileSettingsSheet {
	display: none !important;
}

body.tp-shell-profile-layout .profile-gear svg {
	width: 16px;
	height: 16px;
}

body.tp-shell-profile-layout .settings-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	z-index: 150;
	display: none;
	pointer-events: none;
}

body.tp-shell-profile-layout .settings-backdrop.open {
	display: block;
	pointer-events: all;
}

body.tp-shell-profile-layout .settings-sheet {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: #161b22;
	border-radius: 16px 16px 0 0;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	z-index: 160;
	padding: 0 0 20px;
	display: none;
}

body.tp-shell-profile-layout .settings-sheet.open {
	display: block;
	animation: tpProfileSlideUp 0.3s cubic-bezier(0.32, 0.72, 0, 1) forwards;
}

@keyframes tpProfileSlideUp {
	from { transform: translateY(100%); }
	to { transform: translateY(0); }
}

body.tp-shell-profile-layout .settings-handle {
	width: 32px;
	height: 3px;
	border-radius: 2px;
	background: rgba(255, 255, 255, 0.12);
	margin: 10px auto 0;
}

body.tp-shell-profile-layout .settings-sheet-title {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: var(--tp-shell-text);
	text-align: center;
	padding: 12px 0;
	border-bottom: 1px solid var(--tp-shell-border);
}

body.tp-shell-profile-layout .settings-row {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 20px;
	cursor: pointer;
	transition: background 0.15s;
	text-decoration: none;
}

body.tp-shell-profile-layout .settings-row:hover {
	background: rgba(255, 255, 255, 0.03);
}

body.tp-shell-profile-layout .settings-row svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	color: var(--tp-shell-muted);
}

body.tp-shell-profile-layout .settings-row-label {
	flex: 1;
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: var(--tp-shell-text);
}

body.tp-shell-profile-layout .settings-chevron {
	color: var(--tp-shell-muted);
}

body.tp-shell-profile-layout .settings-chevron svg {
	width: 14px;
	height: 14px;
}

body.tp-shell-profile-layout .settings-divider {
	height: 1px;
	background: var(--tp-shell-border);
	margin: 4px 0;
}

body.tp-shell-profile-layout .profile-header {
	padding: 0 0 12px;
	border-bottom: 1px solid var(--tp-shell-border);
}

body.tp-shell-profile-layout .profile-cover {
	height: 140px;
	margin: 0;
	border-radius: 0;
	background: linear-gradient(135deg, #1d2230, #2a3143);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

body.tp-shell-profile-layout .profile-cover--has-image {
	background-color: #1d2230;
}

body.tp-shell-profile-layout .profile-cover-editable {
	position: relative;
	display: block;
	overflow: hidden;
	text-decoration: none;
}

body.tp-shell-profile-layout .profile-avatar-wrap {
	display: flex;
	justify-content: center;
	margin-top: -28px;
}

body.tp-shell-profile-layout .profile-avatar-img {
	width: 84px;
	height: 84px;
	border-radius: 50%;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: Montserrat, sans-serif;
	font-size: 20px;
	font-weight: 800;
	background: linear-gradient(135deg, #2a2f3a, #3d4450);
	border: 2px solid rgba(255, 255, 255, 0.18);
}

body.tp-shell-profile-layout .profile-avatar-editable {
	position: relative;
	text-decoration: none;
	color: inherit;
	/* Badge sits outside avatar ring; don't clip it. */
	overflow: visible;
}

body.tp-shell-profile-layout .profile-avatar-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tp-shell-profile-layout .profile-avatar-img.profile-avatar-editable img {
	border-radius: 50%;
}

body.tp-shell-profile-layout .profile-edit-badge {
	position: absolute;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(13, 15, 20, 0.88);
	border: 1px solid rgba(255, 255, 255, 0.2);
	color: #e6edf3;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.35);
}

body.tp-shell-profile-layout .profile-edit-badge svg {
	width: 12px;
	height: 12px;
}

body.tp-shell-profile-layout .profile-edit-badge--cover {
	right: 10px;
	bottom: 10px;
}

body.tp-shell-profile-layout .profile-edit-badge--avatar {
	right: -3px;
	bottom: -3px;
	z-index: 2;
}

body.tp-shell-profile-layout .profile-top {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 14px;
	padding: 0 16px;
}

body.tp-shell-profile-layout .profile-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 4px;
}

body.tp-shell-profile-layout .profile-stat {
	text-align: center;
}

body.tp-shell-profile-layout .profile-stat-num {
	font-family: Montserrat, sans-serif;
	font-size: 20px;
	font-weight: 900;
	color: var(--tp-shell-text);
}

body.tp-shell-profile-layout .profile-stat-label {
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	color: var(--tp-shell-muted);
	letter-spacing: 0.5px;
}

body.tp-shell-profile-layout .profile-stat.clickable {
	cursor: pointer;
	border-radius: 10px;
	transition: background 0.15s ease;
}

body.tp-shell-profile-layout .profile-stat.clickable:hover {
	background: rgba(255, 255, 255, 0.04);
}

body.tp-shell-profile-layout .profile-stat.clickable:active {
	background: rgba(255, 255, 255, 0.07);
}

body.tp-shell-profile-layout .profile-name {
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	font-weight: 900;
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 3px;
	padding: 0 16px;
}

body.tp-shell-profile-layout .post-verified {
	display: inline;
	width: auto;
	height: auto;
	margin-left: 3px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	color: #a78bfa;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	flex-shrink: 0;
}

body.tp-shell-profile-layout .profile-staff-tag {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 2px 8px;
	border-radius: 999px;
	background: rgba(34, 197, 94, 0.16);
	border: 1px solid rgba(34, 197, 94, 0.45);
	color: #86efac;
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	font-weight: 700;
	line-height: 1;
}

body.tp-shell-profile-layout .profile-staff-tag svg {
	width: 11px;
	height: 11px;
	display: block;
}

body.tp-shell-profile-layout .profile-handle {
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	color: var(--tp-shell-muted);
	padding: 0 16px;
	margin-bottom: 10px;
}

body.tp-shell-profile-layout .profile-pills-row {
	display: flex;
	gap: 8px;
	padding: 0 16px;
	flex-wrap: wrap;
}

body.tp-shell-profile-layout .glass-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.14);
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	color: rgba(255, 255, 255, 0.9);
}

body.tp-shell-profile-layout .glass-pill-chevron {
	color: var(--tp-shell-muted);
	transition: transform 0.18s ease;
}

body.tp-shell-profile-layout .glass-pill-chevron.is-open {
	transform: rotate(90deg);
}

body.tp-shell-profile-layout .expand-panel {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.28s ease;
	padding: 0 16px;
}

body.tp-shell-profile-layout .expand-panel.is-open {
	max-height: 320px;
}

body.tp-shell-profile-layout .expand-inner {
	padding: 10px 0 2px;
}

body.tp-shell-profile-layout .badges-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
}

body.tp-shell-profile-layout .badge-bubble {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	padding: 8px 6px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.09);
}

body.tp-shell-profile-layout .badge-icon {
	width: 28px;
	height: 28px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: rgba(167, 139, 250, 0.12);
	color: #c4b5fd;
}

body.tp-shell-profile-layout .badge-icon img {
	width: 22px;
	height: 22px;
	object-fit: contain;
	border-radius: 50%;
}

body.tp-shell-profile-layout .badge-icon svg {
	width: 16px;
	height: 16px;
}

body.tp-shell-profile-layout .badge-bubble span {
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	color: var(--tp-shell-muted);
	text-align: center;
	line-height: 1.25;
	display: block;
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

body.tp-shell-profile-layout .tp-profile-review-head {
	display: flex;
	align-items: baseline;
	gap: 10px;
	margin-bottom: 8px;
}

body.tp-shell-profile-layout .tp-profile-review-avg {
	font-family: Montserrat, sans-serif;
	font-size: 18px;
	font-weight: 900;
	color: var(--tp-shell-text);
}

body.tp-shell-profile-layout .tp-profile-review-count {
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	color: var(--tp-shell-muted);
}

body.tp-shell-profile-layout .tp-profile-review-note {
	font-size: 12px;
	line-height: 1.45;
	color: var(--tp-shell-muted);
}

body.tp-shell-profile-layout .tp-profile-reviews-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

body.tp-shell-profile-layout .tp-profile-review-item {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

body.tp-shell-profile-layout .tp-profile-review-item-av {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	overflow: hidden;
	flex: 0 0 30px;
	background: linear-gradient(135deg, #1e2430, #2a3040);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 700;
	color: #e6edf3;
}

body.tp-shell-profile-layout .tp-profile-review-item-av img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tp-shell-profile-layout .tp-profile-review-item-body {
	min-width: 0;
	flex: 1 1 auto;
}

body.tp-shell-profile-layout .tp-profile-review-item-head {
	display: flex;
	align-items: baseline;
	gap: 8px;
}

body.tp-shell-profile-layout .tp-profile-review-item-name {
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	color: var(--tp-shell-text);
}

body.tp-shell-profile-layout .tp-profile-review-item-time {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: var(--tp-shell-muted);
}

body.tp-shell-profile-layout .tp-profile-review-item-stars {
	margin-top: 2px;
}

body.tp-shell-profile-layout .tp-profile-review-item-star {
	font-size: 11px;
	color: rgba(255, 255, 255, 0.18);
}

body.tp-shell-profile-layout .tp-profile-review-item-star.is-on {
	color: #fbbf24;
}

body.tp-shell-profile-layout .tp-profile-review-item-note {
	margin-top: 3px;
	font-size: 12px;
	line-height: 1.4;
	color: #c9d1d9;
	white-space: pre-wrap;
}

body.tp-shell-profile-layout .tp-profile-review-form {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid var(--tp-shell-border);
}

body.tp-shell-profile-layout .tp-profile-review-form-label {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	letter-spacing: 1.1px;
	text-transform: uppercase;
	color: var(--tp-shell-muted);
	margin-bottom: 6px;
}

body.tp-shell-profile-layout .tp-profile-review-stars {
	display: inline-flex;
	gap: 4px;
	margin-bottom: 8px;
}

body.tp-shell-profile-layout .tp-profile-review-star {
	border: 0;
	padding: 0;
	background: transparent;
	cursor: pointer;
	font-size: 18px;
	line-height: 1;
	color: rgba(255, 255, 255, 0.2);
}

body.tp-shell-profile-layout .tp-profile-review-star.is-on {
	color: #fbbf24;
}

body.tp-shell-profile-layout .tp-profile-review-input {
	width: 100%;
	min-height: 46px;
	max-height: 120px;
	resize: vertical;
	padding: 8px 10px;
	border-radius: 10px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.05);
	color: var(--tp-shell-text);
	font-size: 12px;
	line-height: 1.35;
}

body.tp-shell-profile-layout .tp-profile-review-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 8px;
}

body.tp-shell-profile-layout .tp-profile-review-submit {
	border: 1px solid rgba(167, 139, 250, 0.4);
	background: rgba(167, 139, 250, 0.2);
	color: var(--tp-shell-text);
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	border-radius: 7px;
	padding: 6px 10px;
	cursor: pointer;
}

body.tp-shell-profile-layout .tp-profile-review-msg {
	font-size: 11px;
	color: var(--tp-shell-muted);
}

body.tp-shell-profile-layout .profile-friends-row {
	padding: 12px 16px;
}

body.tp-shell-profile-layout .profile-friends-title {
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	font-weight: 700;
	margin-bottom: 9px;
}

body.tp-shell-profile-layout .profile-friends-title span {
	color: var(--tp-shell-muted);
	font-weight: 400;
	margin-left: 4px;
}

body.tp-shell-profile-layout .profile-friends-list {
	display: flex;
	gap: 14px;
	overflow-x: auto;
	scrollbar-width: none;
	padding-bottom: 4px;
}

body.tp-shell-profile-layout .profile-friends-list::-webkit-scrollbar {
	display: none;
}

body.tp-shell-profile-layout .pf-friend {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	text-decoration: none;
	color: inherit;
	flex: 0 0 auto;
	max-width: 56px;
}

body.tp-shell-profile-layout .pf-friend-av {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	overflow: hidden;
	background: linear-gradient(135deg, #1e2430, #2a3040);
}

body.tp-shell-profile-layout .pf-friend-av img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tp-shell-profile-layout .pf-friend-name {
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	color: var(--tp-shell-muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
}

body.tp-shell-profile-layout .profile-tabs {
	display: flex;
	padding: 0 16px;
	border-bottom: 1px solid var(--tp-shell-border);
}

body.tp-shell-profile-layout .cred-row {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 5px 16px 0;
}

body.tp-shell-profile-layout .cred-item {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	cursor: pointer;
}

body.tp-shell-profile-layout .cred-strong {
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 800;
	color: var(--tp-shell-text);
}

body.tp-shell-profile-layout .cred-muted {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: var(--tp-shell-muted);
	letter-spacing: 0.2px;
}

body.tp-shell-profile-layout .cred-dot {
	color: var(--tp-shell-muted);
	font-size: 11px;
	line-height: 1;
}

body.tp-shell-profile-layout .cred-chevron {
	font-family: Barlow, sans-serif;
	font-size: 12px;
	color: var(--tp-shell-muted);
	transition: transform 0.25s ease;
}

body.tp-shell-profile-layout .cred-chevron.is-open {
	transform: rotate(90deg);
}

body.tp-shell-profile-layout .tp-shell-profile-socials {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 16px 0;
}

body.tp-shell-profile-layout .tp-shell-profile-social {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 8px;
	color: rgba(255, 255, 255, 0.78);
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	text-decoration: none;
	transition: color 0.15s ease, background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

body.tp-shell-profile-layout .tp-shell-profile-social:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.12);
	border-color: rgba(255, 255, 255, 0.18);
	transform: translateY(-1px);
}

body.tp-shell-profile-layout .tp-shell-profile-social--instagram:hover {
	color: #f777a1;
	border-color: rgba(247, 119, 161, 0.35);
}

body.tp-shell-profile-layout .tp-shell-profile-social--twitter:hover {
	color: #e7e9ea;
}

body.tp-shell-profile-layout .tp-shell-profile-social--facebook:hover {
	color: #4b9dff;
	border-color: rgba(75, 157, 255, 0.35);
}

body.tp-shell-profile-layout .tp-shell-profile-social--discord:hover {
	color: #a5b4fc;
	border-color: rgba(88, 101, 242, 0.4);
}

body.tp-shell-profile-layout .tp-shell-profile-social--youtube:hover {
	color: #ff6b6b;
	border-color: rgba(255, 0, 0, 0.35);
}

body.tp-shell-profile-layout .tp-shell-profile-social--tiktok:hover {
	color: #69c9d0;
	border-color: rgba(105, 201, 208, 0.4);
}

body.tp-shell-profile-layout .profile-action-row {
	display: flex;
	gap: 8px;
	padding: 12px 16px 0;
}

body.tp-shell-profile-layout .pa-btn {
	flex: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 9px 0;
	border-radius: 9px;
	cursor: pointer;
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.2px;
	transition: all 0.18s ease;
	border: 1px solid transparent;
	text-decoration: none;
}

body.tp-shell-profile-layout .pa-follow {
	background: #a78bfa;
	color: #0d0f14;
}

body.tp-shell-profile-layout .pa-follow:hover {
	background: #b9a1fb;
}

body.tp-shell-profile-layout .pa-follow.following {
	background: transparent;
	color: var(--tp-shell-text);
	border-color: rgba(255, 255, 255, 0.15);
}

body.tp-shell-profile-layout .pa-follow.following:hover {
	background: rgba(255, 255, 255, 0.06);
}

body.tp-shell-profile-layout .pa-message {
	background: rgba(255, 255, 255, 0.06);
	color: var(--tp-shell-text);
	border-color: rgba(255, 255, 255, 0.12);
}

body.tp-shell-profile-layout .pa-message:hover {
	background: rgba(255, 255, 255, 0.1);
}

body.tp-shell-profile-layout .pa-message svg {
	width: 15px;
	height: 15px;
}

body.tp-shell-profile-layout .conn-backdrop,
body.tp-shell-profile-layout .msg-backdrop {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 170;
	pointer-events: none;
	transition: background 0.25s;
}

body.tp-shell-profile-layout .conn-backdrop.open,
body.tp-shell-profile-layout .msg-backdrop.open {
	background: rgba(0, 0, 0, 0.5);
	pointer-events: all;
}

body.tp-shell-profile-layout .conn-sheet,
body.tp-shell-profile-layout .msg-sheet {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: #0d0f14;
	border-radius: 18px 18px 0 0;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	z-index: 180;
	display: flex;
	flex-direction: column;
	transform: translateY(100%);
	transition: transform 0.34s cubic-bezier(0.32, 0.72, 0, 1);
	box-shadow: 0 -20px 60px rgba(0, 0, 0, 0.5);
}

body.tp-shell-profile-layout .conn-sheet {
	height: 80%;
}

body.tp-shell-profile-layout .msg-sheet {
	height: 62%;
}

body.tp-shell-profile-layout .conn-sheet.open,
body.tp-shell-profile-layout .msg-sheet.open {
	transform: translateY(0);
}

body.tp-shell-profile-layout .conn-handle,
body.tp-shell-profile-layout .msg-handle {
	width: 34px;
	height: 4px;
	border-radius: 2px;
	background: rgba(255, 255, 255, 0.14);
	margin: 10px auto 0;
	flex-shrink: 0;
}

body.tp-shell-profile-layout .conn-header {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding: 12px 0 8px;
	flex-shrink: 0;
}

body.tp-shell-profile-layout .conn-username {
	font-family: "JetBrains Mono", monospace;
	font-size: 12px;
	color: var(--tp-shell-text);
	letter-spacing: 0.3px;
}

body.tp-shell-profile-layout .conn-close,
body.tp-shell-profile-layout .msg-close {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	color: var(--tp-shell-muted);
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
	padding: 0 4px;
}

body.tp-shell-profile-layout .conn-tabs {
	display: flex;
	position: relative;
	border-bottom: 1px solid var(--tp-shell-border);
	flex-shrink: 0;
}

body.tp-shell-profile-layout .conn-tab {
	flex: 1;
	text-align: center;
	padding: 13px 0;
	background: none;
	border: none;
	cursor: pointer;
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	font-weight: 700;
	color: var(--tp-shell-muted);
	transition: color 0.2s;
}

body.tp-shell-profile-layout .conn-tab.active {
	color: var(--tp-shell-text);
}

body.tp-shell-profile-layout .conn-tab-num {
	font-weight: 900;
}

body.tp-shell-profile-layout .conn-tab-indicator {
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 50%;
	height: 2px;
	background: rgba(255, 255, 255, 0.85);
	transition: transform 0.32s cubic-bezier(0.32, 0.72, 0, 1);
}

body.tp-shell-profile-layout .conn-tab-indicator.right {
	transform: translateX(100%);
}

body.tp-shell-profile-layout .conn-search {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 12px 16px 2px;
	flex-shrink: 0;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--tp-shell-border);
	border-radius: 10px;
	padding: 9px 12px;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}

body.tp-shell-profile-layout .conn-search svg {
	width: 15px;
	height: 15px;
	color: var(--tp-shell-muted);
	flex-shrink: 0;
	opacity: 0.95;
}

body.tp-shell-profile-layout .conn-search-input {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	flex: 1;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none;
	color: var(--tp-shell-text);
	font-family: Barlow, sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.2;
	padding: 0 !important;
	margin: 0 !important;
	min-height: 0;
	height: auto;
}

body.tp-shell-profile-layout .conn-search-input::placeholder {
	color: var(--tp-shell-muted);
	opacity: 1;
}

body.tp-shell-profile-layout .conn-search:focus-within {
	border-color: rgba(167, 139, 250, 0.34);
	background: rgba(255, 255, 255, 0.06);
}

body.tp-shell-profile-layout .conn-scroll {
	flex: 1;
	overflow-y: auto;
	scrollbar-width: none;
	padding: 2px 16px 20px;
}

body.tp-shell-profile-layout .conn-scroll::-webkit-scrollbar {
	display: none;
}

body.tp-shell-profile-layout .conn-list {
	display: none;
}

body.tp-shell-profile-layout .conn-list.active {
	display: block;
	animation: connFade 0.28s ease;
}

@keyframes connFade {
	from { opacity: 0; transform: translateY(6px); }
	to { opacity: 1; transform: translateY(0); }
}

body.tp-shell-profile-layout .conn-row {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 9px 0;
}

body.tp-shell-profile-layout .conn-link {
	flex: 1;
	min-width: 0;
	display: flex;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	color: inherit;
}

body.tp-shell-profile-layout .conn-av {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	flex-shrink: 0;
	background: linear-gradient(135deg, #1e2430, #2a3040);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 700;
	color: #e6edf3;
	font-family: Montserrat, sans-serif;
	border: 1px solid rgba(255, 255, 255, 0.08);
	overflow: hidden;
}

body.tp-shell-profile-layout .conn-av img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tp-shell-profile-layout .conn-info {
	flex: 1;
	min-width: 0;
}

body.tp-shell-profile-layout .conn-name {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: var(--tp-shell-text);
}

body.tp-shell-profile-layout .conn-real {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: var(--tp-shell-muted);
	margin-top: 2px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

body.tp-shell-profile-layout .conn-empty {
	text-align: center;
	color: var(--tp-shell-muted);
	font-family: "JetBrains Mono", monospace;
	font-size: 11px;
	padding: 36px 16px;
}

body.tp-shell-profile-layout .follow-btn {
	padding: 6px 14px;
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: transparent;
	color: var(--tp-shell-text);
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.15s;
	white-space: nowrap;
}

body.tp-shell-profile-layout .follow-btn:hover {
	background: rgba(255, 255, 255, 0.06);
}

body.tp-shell-profile-layout .follow-btn.following {
	background: rgba(255, 255, 255, 0.06);
	color: var(--tp-shell-muted);
	border-color: var(--tp-shell-border);
}

body.tp-shell-profile-layout .follow-btn.friends {
	background: rgba(255, 255, 255, 0.1);
	color: var(--tp-shell-text);
}

.tp-follow-button-wrap .tp-follow-btn-global {
	padding: 6px 14px;
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: transparent;
	color: #fff;
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.15s ease;
	white-space: nowrap;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.tp-follow-button-wrap .tp-follow-btn-global:hover {
	background: rgba(255, 255, 255, 0.06);
}

.tp-follow-button-wrap .tp-follow-btn-global.following {
	background: rgba(255, 255, 255, 0.06);
	color: var(--tp-shell-muted);
	border-color: var(--tp-shell-border);
}

.tp-follow-button-wrap .tp-follow-btn-global.friends {
	background: rgba(255, 255, 255, 0.1);
	color: #fff;
}

/* Discover members search UI (searchbar.html parity) */
body.tp-shell-nav-active .tp-shell-discover-surface {
	padding: 0 0 24px;
	max-width: 640px;
	margin: 0 auto;
}

body.tp-shell-nav-active .tp-shell-discover-surface .discover-page {
	padding: 0;
}

body.tp-shell-nav-active .tp-disc-head {
	padding: 18px 16px 8px;
	position: sticky;
	top: 0;
	z-index: 5;
	background: #0d0f14;
}

body.tp-shell-nav-active #members-directory-form .tp-disc-search-wrap,
body.tp-shell-nav-active #buddypress .tp-disc-search-wrap,
body.tp-shell-nav-active .tp-shell-discover-surface .tp-disc-search-wrap {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	background: rgba(255, 255, 255, 0.06);
	border: 0;
	border-radius: 24px;
	padding: 12px 15px;
}

body.tp-shell-nav-active .tp-shell-discover-surface .tp-discover-sect {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	color: var(--tp-shell-muted, #8b949e);
	margin: 14px 20px 6px;
}

body.tp-shell-nav-active .tp-shell-discover-surface .tp-discover-sect[hidden] {
	display: none !important;
}

body.tp-shell-nav-active .tp-shell-discover-surface .tp-discover-empty {
	padding: 28px 20px;
	text-align: center;
	color: var(--tp-shell-muted, #8b949e);
	font-family: Barlow, sans-serif;
	font-size: 13px;
}

body.tp-shell-nav-active .tp-shell-discover-surface.is-loading .tp-discover-list {
	opacity: 0.55;
	transition: opacity 0.15s ease;
}

body.tp-shell-nav-active #members-directory-form.tp-shell-discover-legacy-hidden #youzify-members-list,
body.tp-shell-nav-active #members-directory-form.tp-shell-discover-legacy-hidden .pagination,
body.tp-shell-nav-active #members-directory-form.tp-shell-discover-legacy-hidden .pag-count,
body.tp-shell-nav-active #members-directory-form.tp-shell-discover-legacy-hidden .youzify-directory-filter,
body.tp-shell-nav-active #members-directory-form.tp-shell-discover-legacy-hidden .youzify-directory-search {
	display: none !important;
}

/* Discover: hide native BP/Youzify chrome only — never hide the content wrapper
   (our search UI is rendered inside .youzify-membership-inner-content). */
body.tp-shell-discover-layout #members-directory-form #youzify-members-list,
body.tp-shell-discover-layout #members-directory-form #members-dir-list,
body.tp-shell-discover-layout #members-directory-form .members.dir-list,
body.tp-shell-discover-layout #members-directory-form .pagination,
body.tp-shell-discover-layout #members-directory-form .pag-count,
body.tp-shell-discover-layout #members-directory-form .youzify-directory-filter,
body.tp-shell-discover-layout #members-directory-form .youzify-directory-search,
body.tp-shell-discover-layout #youzify-members-list,
body.tp-shell-discover-layout #members-dir-list,
body.tp-shell-discover-layout ul#members-list,
body.tp-shell-discover-layout .members.dir-list,
body.tp-shell-discover-layout #buddypress .item-list-tabs,
body.tp-shell-discover-layout #buddypress .bp-navs.bp-subnavs,
body.tp-shell-discover-layout .youzify-mobile-nav,
body.tp-shell-discover-layout #directory-show-filter,
body.tp-shell-discover-layout #directory-show-search,
body.tp-shell-discover-layout #directory-show-menu,
body.tp-shell-discover-layout .tp-members-directory-stack,
body.tp-shell-discover-layout .tp-directory-tools-open,
body.tp-shell-discover-layout .tp-members-inline-search,
body.tp-shell-discover-layout .youzify-directory-header,
body.tp-shell-discover-layout #youzify-directory-search,
body.tp-shell-discover-layout #youzify-directory-filter,
body.tp-shell-discover-layout .youzify-directory-search,
body.tp-shell-discover-layout .youzify-directory-filter,
body.tp-shell-discover-layout form#search-members-form,
body.tp-shell-discover-layout .dir-search,
body.tp-shell-discover-layout .members-sidebar,
body.tp-shell-discover-layout aside.members-sidebar {
	display: none !important;
}

/* Discover: flat shell background — no card/panel behind the search. */
body.tp-shell-discover-layout,
body.tp-shell-discover-layout #page,
body.tp-shell-discover-layout #content,
body.tp-shell-discover-layout #primary,
body.tp-shell-discover-layout #main,
body.tp-shell-discover-layout #buddypress,
body.tp-shell-discover-layout #youzify,
body.tp-shell-discover-layout .youzify-page,
body.tp-shell-discover-layout .youzify-page-main-content,
body.tp-shell-discover-layout .youzify-main-column,
body.tp-shell-discover-layout .youzify-left-sidebar-layout,
body.tp-shell-discover-layout .youzify-right-sidebar-layout,
body.tp-shell-discover-layout #youzify-members-directory,
body.tp-shell-discover-layout #members-directory-form,
body.tp-shell-discover-layout .youzify-membership-inner-content,
body.tp-shell-discover-layout .youzify-directory-filter,
body.tp-shell-discover-layout .youzify-content,
body.tp-shell-discover-layout .site-content,
body.tp-shell-discover-layout .content-area {
	background: var(--tp-shell-bg, #0d0f14) !important;
	background-color: var(--tp-shell-bg, #0d0f14) !important;
	box-shadow: none !important;
	border: 0 !important;
}

body.tp-shell-discover-layout #members-directory-form,
body.tp-shell-discover-layout #youzify-members-directory,
body.tp-shell-discover-layout .youzify-membership-inner-content,
body.tp-shell-discover-layout .youzify-page-main-content,
body.tp-shell-discover-layout #buddypress {
	border-radius: 0 !important;
	outline: 0 !important;
}

body.tp-shell-discover-layout .tp-shell-discover-surface,
body.tp-shell-discover-layout #tpShellDiscoverSurface {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: relative;
	z-index: 2;
	background: transparent !important;
}

body.tp-shell-discover-layout .tp-disc-head {
	background: var(--tp-shell-bg, #0d0f14) !important;
}

body.tp-shell-discover-layout .tp-shell-topbar {
	background: var(--tp-shell-bg, #0d0f14) !important;
	border-bottom-color: transparent !important;
	backdrop-filter: none !important;
}

body.tp-shell-discover-layout footer,
body.tp-shell-discover-layout #footer,
body.tp-shell-discover-layout #main-footer,
body.tp-shell-discover-layout #colophon,
body.tp-shell-discover-layout #socket,
body.tp-shell-discover-layout .site-footer,
body.tp-shell-discover-layout .footer,
body.tp-shell-discover-layout .main-footer,
body.tp-shell-discover-layout .footer-wrap,
body.tp-shell-discover-layout .footer-bottom,
body.tp-shell-discover-layout .site-info,
body.tp-shell-discover-layout .socket,
body.tp-shell-discover-layout .footer-widgets,
body.tp-shell-discover-layout .footer-widget-area,
body.tp-shell-discover-layout .stunning-footer,
body.tp-shell-discover-layout .youzify-footer {
	display: none !important;
}

body.tp-shell-discover-layout #page,
body.tp-shell-discover-layout #content,
body.tp-shell-discover-layout .youzify-page-main-content,
body.tp-shell-discover-layout .youzify-page {
	padding-bottom: calc(var(--tp-shell-nav-h, 64px) + env(safe-area-inset-bottom, 0px) + 12px) !important;
}

@media (min-width: 992px) {
	body.tp-shell-discover-layout #page,
	body.tp-shell-discover-layout #content,
	body.tp-shell-discover-layout .youzify-page-main-content,
	body.tp-shell-discover-layout .youzify-page {
		padding-bottom: 28px !important;
	}
}

body.tp-shell-nav-active .tp-shell-discover-surface .tp-discover-more {
	display: block;
	width: calc(100% - 32px);
	max-width: 320px;
	margin: 12px auto 8px;
	padding: 11px 16px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.05);
	color: #fff;
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}

body.tp-shell-nav-active .tp-shell-discover-surface .tp-discover-more[hidden] {
	display: none !important;
}

body.tp-shell-nav-active .tp-shell-discover-surface .tp-discover-more:disabled {
	opacity: 0.55;
	cursor: default;
}

body.tp-shell-discover-custom #directory-show-filter,
body.tp-shell-discover-custom #directory-show-search,
body.tp-shell-discover-custom #directory-show-menu,
body.tp-shell-discover-custom .tp-members-directory-stack,
body.tp-shell-discover-custom .tp-directory-tools-open,
body.tp-shell-discover-custom .tp-members-inline-search,
body.tp-shell-discover-custom .tp-directory-tools-backdrop,
body.tp-shell-discover-custom .tp-directory-tools-modal {
	display: none !important;
}

body.tp-shell-discover-custom #members-dir-filters,
body.tp-shell-discover-custom #youzify-directory-filter,
body.tp-shell-discover-custom .youzify-directory-filter,
body.tp-shell-discover-custom #members-dir-search,
body.tp-shell-discover-custom #youzify-directory-search,
body.tp-shell-discover-custom .youzify-directory-search,
body.tp-shell-discover-custom form#search-members-form,
body.tp-shell-discover-custom .dir-search,
body.tp-shell-discover-custom .members-sidebar,
body.tp-shell-discover-custom aside.members-sidebar,
body.tp-shell-discover-custom .youzify-mobile-nav {
	display: none !important;
}

body.tp-shell-nav-active #tpDiscoverList .member-row {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 10px 16px;
	border-bottom: 0;
	transition: background 0.15s ease;
	cursor: pointer;
}

body.tp-shell-nav-active #tpDiscoverList .member-row:hover {
	background: rgba(255, 255, 255, 0.03);
}

body.tp-shell-nav-active #tpDiscoverList .tp-discover-link {
	flex: 1;
	min-width: 0;
	display: flex;
	align-items: center;
	gap: 13px;
	text-decoration: none;
	color: inherit;
}

/* Dedicated discover surface parity (searchbar.html) */
body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .member-avatar {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	font-size: 15px;
	font-weight: 800;
	color: #fff;
	font-family: Montserrat, sans-serif;
	background: linear-gradient(135deg, #242932, #39404c);
	border: 1.5px solid rgba(255, 255, 255, 0.12);
	position: relative;
}

body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .member-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .member-info {
	flex: 1;
	min-width: 0;
}

body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .member-name,
body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .member-name a {
	font-size: 14.5px;
	font-weight: 800;
	color: #fff !important;
	font-family: Montserrat, sans-serif;
	line-height: 1.2;
	text-decoration: none;
}

body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .member-meta {
	font-family: Barlow, sans-serif;
	font-size: 12px;
	color: var(--tp-shell-muted, #8b949e);
	margin-top: 2px;
	line-height: 1.25;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .member-meta .hi {
	color: var(--tp-shell-text, #e6edf3);
	font-weight: 600;
}

body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .follow-btn {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	flex-shrink: 0;
	padding: 8px 17px !important;
	border-radius: 9px !important;
	border: none !important;
	background: #fff !important;
	color: #0d0f14 !important;
	font-family: Montserrat, sans-serif !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	cursor: pointer;
	transition: transform 0.14s ease, background 0.14s ease, color 0.14s ease;
	white-space: nowrap;
	line-height: 1;
	margin-left: 0;
	box-shadow: none !important;
	outline: none !important;
}

body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .follow-btn:active {
	transform: scale(0.96);
}

body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .follow-btn:hover {
	background: #fff !important;
}

body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .follow-btn.following,
body.tp-shell-nav-active #tpShellDiscoverSurface #tpDiscoverList .follow-btn.friends {
	background: rgba(255, 255, 255, 0.08) !important;
	color: var(--tp-shell-text, #e6edf3) !important;
	border: none !important;
}

body.tp-shell-nav-active .tp-disc-search-icon {
	width: 18px;
	height: 18px;
	color: var(--tp-shell-muted, #8b949e);
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

body.tp-shell-nav-active .tp-disc-search-icon svg {
	width: 18px;
	height: 18px;
}

body.tp-shell-nav-active #members-directory-form .disc-search,
body.tp-shell-nav-active #buddypress .disc-search,
body.tp-shell-nav-active .tp-shell-discover-surface .disc-search {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	flex: 1;
	background: transparent !important;
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	color: var(--tp-shell-text, #e6edf3);
	font-family: "TikTok Sans", Barlow, sans-serif;
	font-size: 14.5px;
	padding: 0 !important;
	margin: 0 !important;
	min-width: 0;
}

body.tp-shell-nav-active #members-directory-form .disc-search::placeholder,
body.tp-shell-nav-active #buddypress .disc-search::placeholder,
body.tp-shell-nav-active .tp-shell-discover-surface .disc-search::placeholder {
	color: var(--tp-shell-muted, #8b949e);
	opacity: 1;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-row {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 16px;
	border-bottom: 1px solid var(--tp-shell-border);
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-row .youzify-user-badges,
body.tp-shell-nav-active #youzify-members-list .tp-member-row .youzify-user-statistics,
body.tp-shell-nav-active #youzify-members-list .tp-member-row .youzify-item-tools,
body.tp-shell-nav-active #youzify-members-list .tp-member-row .youzify-card-footer,
body.tp-shell-nav-active #youzify-members-list .tp-member-row .youzify-item-description,
body.tp-shell-nav-active #youzify-members-list .tp-member-row .youzify-item-desc {
	display: none !important;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-row .item {
	flex: 1;
	min-width: 0;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-avatar {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	flex-shrink: 0;
	overflow: hidden;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-info {
	flex: 1;
	min-width: 0;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-name,
body.tp-shell-nav-active #youzify-members-list .tp-member-name a {
	font-size: 13px;
	font-weight: 700;
	color: var(--tp-shell-text) !important;
	font-family: Montserrat, sans-serif;
	text-decoration: none;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-meta {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: var(--tp-shell-muted);
	margin-top: 2px;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-action {
	margin-left: auto;
}

body.tp-shell-nav-active #youzify-members-list .tp-member-action .follow-btn,
body.tp-shell-nav-active #youzify-members-list .tp-member-action .tp-follow-btn-global {
	padding: 6px 14px;
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: transparent;
	color: var(--tp-shell-text);
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	cursor: pointer;
	white-space: nowrap;
}

body.tp-shell-profile-layout .msg-header {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 16px;
	border-bottom: 1px solid var(--tp-shell-border);
	flex-shrink: 0;
	position: relative;
}

body.tp-shell-profile-layout .msg-av {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: linear-gradient(135deg, #2a2f3a, #3d4450);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	font-family: Montserrat, sans-serif;
}

body.tp-shell-profile-layout .msg-title-wrap {
	flex: 1;
	min-width: 0;
}

body.tp-shell-profile-layout .msg-name {
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: var(--tp-shell-text);
}

body.tp-shell-profile-layout .msg-handle-sub {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: var(--tp-shell-muted);
	margin-top: 1px;
}

body.tp-shell-profile-layout .msg-body {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	color: var(--tp-shell-muted);
	padding: 20px;
	text-align: center;
}

body.tp-shell-profile-layout .msg-body svg {
	width: 34px;
	height: 34px;
	opacity: 0.4;
}

body.tp-shell-profile-layout .msg-empty-text {
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	letter-spacing: 0.3px;
	line-height: 1.6;
}

body.tp-shell-profile-layout .msg-input-row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-top: 1px solid var(--tp-shell-border);
	flex-shrink: 0;
	background: #0d0f14;
}

body.tp-shell-profile-layout .msg-input {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	flex: 1;
	background: rgba(255, 255, 255, 0.05) !important;
	border: 1px solid var(--tp-shell-border) !important;
	border-radius: 20px;
	padding: 9px 14px;
	color: var(--tp-shell-text);
	font-family: Barlow, sans-serif;
	font-size: 13px;
	line-height: 1.2;
	outline: none !important;
	box-shadow: none !important;
	margin: 0 !important;
	min-height: 0;
	height: auto;
}

body.tp-shell-profile-layout .msg-input::placeholder {
	color: var(--tp-shell-muted);
	opacity: 1;
}

body.tp-shell-profile-layout .msg-input:focus,
body.tp-shell-profile-layout .msg-input:focus-visible {
	border-color: rgba(167, 139, 250, 0.38) !important;
	background: rgba(255, 255, 255, 0.06) !important;
}

body.tp-shell-profile-layout .msg-send {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #a78bfa;
	border: none;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: transform 0.15s ease, background 0.15s ease, opacity 0.15s ease;
}

body.tp-shell-profile-layout .msg-send:hover {
	background: #b9a1fb;
}

body.tp-shell-profile-layout .msg-send:active {
	transform: scale(0.96);
}

body.tp-shell-profile-layout .msg-send:disabled {
	opacity: 0.68;
	cursor: default;
}

body.tp-shell-profile-layout .msg-send svg {
	width: 16px;
	height: 16px;
	color: #0d0f14;
}

body.tp-shell-profile-overlay-open .tp-shell-bottom-nav {
	opacity: 0;
	transform: translateY(130%);
	pointer-events: none;
}

body.tp-shell-profile-layout .profile-tab {
	flex: 1 1 0;
	border: 0;
	background: transparent;
	color: var(--tp-shell-muted);
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	padding: 11px 4px;
	border-bottom: 2px solid transparent;
	cursor: pointer;
}

body.tp-shell-profile-layout .profile-tab.is-active {
	color: var(--tp-shell-text);
	border-bottom-color: rgba(255, 255, 255, 0.72);
}

body.tp-shell-profile-layout .profile-tab-content {
	display: none;
}

body.tp-shell-profile-layout .profile-tab-content.is-active {
	display: block;
}

body.tp-shell-profile-layout .profile-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 2px;
	padding: 2px;
}

body.tp-shell-profile-layout .profile-grid-item {
	position: relative;
	aspect-ratio: 1 / 1;
	background: rgba(255, 255, 255, 0.05);
	overflow: hidden;
}

body.tp-shell-profile-layout .profile-grid-item .pgi-bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
}

body.tp-shell-profile-layout .profile-grid-item .pgi-bg img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.tp-shell-profile-layout.tp-profile-grid-img-fade .profile-grid-item .pgi-bg img {
	opacity: 0;
	transition: opacity 0.16s ease;
}

body.tp-shell-profile-layout.tp-profile-grid-img-fade .profile-grid-item .pgi-bg img.is-loaded {
	opacity: 1;
}

body.tp-shell-profile-layout .profile-grid-item.is-locked .pgi-bg {
	filter: blur(1.5px) brightness(0.5);
	transform: scale(1.02);
}

/* Private account: blurred placeholder spot tiles (no real media). */
body.tp-shell-profile-layout .tp-shell-profile-grid--private-locked .profile-grid-item.is-private-placeholder {
	pointer-events: none;
	cursor: default;
}

body.tp-shell-profile-layout .tp-shell-profile-grid--private-locked .profile-grid-item.is-private-placeholder .pgi-bg {
	background:
		radial-gradient(circle at 30% 28%, rgba(255, 255, 255, 0.16), transparent 42%),
		radial-gradient(circle at 72% 70%, rgba(120, 140, 120, 0.22), transparent 48%),
		linear-gradient(145deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
	filter: blur(10px) brightness(0.55) saturate(0.85);
	transform: scale(1.12);
}

body.tp-shell-profile-layout .tp-shell-profile-grid--private-locked .profile-grid-item.is-private-placeholder .grid-overlay {
	background: rgba(0, 0, 0, 0.35);
}

body.tp-shell-profile-layout .tp-shell-profile-private-note {
	margin: 18px 16px 8px;
	text-align: center;
	color: rgba(255, 255, 255, 0.72);
}

body.tp-shell-profile-layout .tp-shell-profile-private-note strong {
	display: block;
	margin-bottom: 6px;
	color: rgba(255, 255, 255, 0.92);
	font-size: 14px;
	font-weight: 700;
}

body.tp-shell-profile-layout .tp-shell-profile-private-note p {
	margin: 0;
	font-size: 13px;
	line-height: 1.4;
	color: rgba(255, 255, 255, 0.62);
}

body.tp-shell-profile-private-locked .profile-stat[aria-disabled="true"] {
	cursor: default;
	opacity: 0.9;
}

body.tp-shell-profile-layout .profile-grid-item.is-locked .grid-overlay {
	position: absolute;
	inset: 0;
	opacity: 1;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.72), rgba(0, 0, 0, 0.45));
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	color: #fff;
}

body.tp-shell-profile-layout .profile-grid-item.is-locked .grid-overlay__label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #fff;
}

body.tp-shell-profile-layout .profile-grid-item .grid-place {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	padding: 14px 5px 4px;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.78) 0%, rgba(0, 0, 0, 0.32) 60%, rgba(0, 0, 0, 0) 100%);
	pointer-events: none;
}

body.tp-shell-profile-layout .profile-grid-item .grid-place__text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 8.5px;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: 0.01em;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
	word-break: break-word;
}

@media (min-width: 720px) {
	body.tp-shell-profile-layout .profile-grid-item .grid-place {
		padding: 16px 6px 5px;
	}

	body.tp-shell-profile-layout .profile-grid-item .grid-place__text {
		font-size: 9px;
	}
}

/* ===== Strict template parity pass ===== */
body.tp-shell-feed-layout footer,
body.tp-shell-feed-layout #footer,
body.tp-shell-feed-layout #main-footer,
body.tp-shell-feed-layout #colophon,
body.tp-shell-feed-layout #socket,
body.tp-shell-feed-layout .site-footer,
body.tp-shell-feed-layout .footer,
body.tp-shell-feed-layout .main-footer,
body.tp-shell-feed-layout .footer-wrap,
body.tp-shell-feed-layout .footer-bottom,
body.tp-shell-feed-layout .site-info,
body.tp-shell-feed-layout .socket,
body.tp-shell-feed-layout .footer-widgets,
body.tp-shell-feed-layout .footer-widget-area,
body.tp-shell-feed-layout .stunning-footer,
body.tp-shell-feed-layout .youzify-footer {
	display: none !important;
}

/* Feed is full-bleed cards; shell bottom-nav overlays instead of reserving page footer space. */
body.tp-shell-feed-layout #page,
body.tp-shell-feed-layout #content,
body.tp-shell-feed-layout .youzify-page-main-content,
body.tp-shell-feed-layout .youzify-page {
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

body.tp-shell-feed-layout #activity-stream,
body.tp-shell-feed-layout ul.activity-list {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

/* Logged-out Safari: prevent stray footer/socket bands and bottom clipping. */
body.tp-shell-nav-guest.tp-shell-feed-layout footer,
body.tp-shell-nav-guest.tp-shell-feed-layout #footer,
body.tp-shell-nav-guest.tp-shell-feed-layout #main-footer,
body.tp-shell-nav-guest.tp-shell-feed-layout #colophon,
body.tp-shell-nav-guest.tp-shell-feed-layout #socket,
body.tp-shell-nav-guest.tp-shell-feed-layout .site-footer,
body.tp-shell-nav-guest.tp-shell-feed-layout .footer,
body.tp-shell-nav-guest.tp-shell-feed-layout .main-footer,
body.tp-shell-nav-guest.tp-shell-feed-layout .footer-wrap,
body.tp-shell-nav-guest.tp-shell-feed-layout .footer-bottom,
body.tp-shell-nav-guest.tp-shell-feed-layout .site-info,
body.tp-shell-nav-guest.tp-shell-feed-layout .socket,
body.tp-shell-nav-guest.tp-shell-feed-layout .footer-widgets,
body.tp-shell-nav-guest.tp-shell-feed-layout .footer-widget-area,
body.tp-shell-nav-guest.tp-shell-feed-layout .stunning-footer,
body.tp-shell-nav-guest.tp-shell-feed-layout .youzify-footer {
	display: none !important;
}

body.tp-shell-nav-guest.tp-shell-feed-layout #page,
body.tp-shell-nav-guest.tp-shell-feed-layout #content,
body.tp-shell-nav-guest.tp-shell-feed-layout .youzify-page-main-content,
body.tp-shell-nav-guest.tp-shell-feed-layout .youzify-page {
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
	background: #000 !important;
}

@supports (height: 100svh) {
	body.tp-shell-nav-guest.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.activity-item,
	body.tp-shell-nav-guest.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.activity-item,
	body.tp-shell-nav-guest.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content,
	body.tp-shell-nav-guest.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content {
		min-height: 100svh !important;
		height: 100svh !important;
	}
}

/* Desktop parity pass from testing1123 mockup (profile only). */
@media (min-width: 992px) {
	body.tp-shell-profile-layout .youzify-page-main-content {
		max-width: 620px !important;
		width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	body.tp-shell-profile-layout .tp-shell-profile-surface {
		max-width: 620px !important;
		margin: 0 auto !important;
		padding: 0 !important;
		border: 0 !important;
	}

	body.tp-shell-profile-layout .profile-header {
		padding: 0 0 12px !important;
		border-bottom: 1px solid var(--tp-shell-border) !important;
	}

	body.tp-shell-profile-layout .profile-cover {
		height: 180px !important;
		margin: 0 !important;
		border-radius: 0 !important;
		width: 100% !important;
	}

	body.tp-shell-profile-layout .profile-avatar-wrap {
		padding-left: 16px !important;
		margin-top: -28px !important;
		display: block !important;
	}

	body.tp-shell-profile-layout .profile-avatar-img {
		width: 60px !important;
		height: 60px !important;
		border: 3px solid var(--tp-shell-bg) !important;
		font-size: 18px !important;
		font-weight: 900 !important;
	}

	body.tp-shell-profile-layout .profile-top {
		margin-top: 8px !important;
		margin-bottom: 14px !important;
		padding: 0 16px !important;
	}

	body.tp-shell-profile-layout .profile-stats {
		gap: 4px !important;
	}

	body.tp-shell-profile-layout .profile-stat-num {
		font-size: 20px !important;
	}

	body.tp-shell-profile-layout .profile-stat-label {
		font-size: 8px !important;
		letter-spacing: 0.5px !important;
	}

	body.tp-shell-profile-layout .profile-name {
		font-size: 18px !important;
		margin-bottom: 3px !important;
		padding: 0 16px !important;
	}

	body.tp-shell-profile-layout .profile-handle {
		font-size: 10px !important;
		margin-top: 2px !important;
		margin-bottom: 0 !important;
		padding: 0 16px !important;
	}

	body.tp-shell-profile-layout .profile-action-row {
		padding: 12px 16px 0 !important;
	}

	body.tp-shell-profile-layout .cred-row {
		padding: 5px 16px 0 !important;
	}

	body.tp-shell-profile-layout .profile-tabs {
		padding: 0 16px !important;
	}

	body.tp-shell-profile-layout .profile-grid {
		gap: 2px !important;
		padding: 2px !important;
	}
}

/* ===== Desktop 1:1 mockup hard lock (feed/messages/rail) ===== */
@media (min-width: 992px) {
	/* Even if old JS toggles expanded class, keep desktop rail layout fixed. */
	body.tp-shell-nav-active.tp-shell-rail-expanded #page,
	body.tp-shell-nav-active.tp-shell-rail-expanded #content,
	body.tp-shell-nav-active.tp-shell-rail-expanded .youzify-page-main-content {
		padding-left: var(--tp-shell-rail-collapsed) !important;
	}

	body.tp-shell-nav-active.tp-shell-rail-expanded .tp-shell-topbar {
		left: var(--tp-shell-rail-collapsed) !important;
	}

	/* Keep desktop rail icon-only like the mockup (no hover expansion). */
	:root {
		--tp-shell-rail-collapsed: 74px;
		/* Suggested explorers column — shrinks once the window can't comfortably fit left rail + feed + this column. */
		--tp-shell-right-w: min(240px, max(176px, 100vw - var(--tp-shell-rail-collapsed) - 780px));
	}

	.tp-shell-rail,
	body.tp-shell-rail-expanded .tp-shell-rail,
	.tp-shell-rail:hover {
		width: 74px !important;
		padding: 22px 8px !important;
		align-items: center !important;
		overflow-y: auto !important;
		border-right: 0 !important;
	}

	.tp-shell-rail-item {
		justify-content: center !important;
		font-size: 0 !important;
		gap: 0 !important;
		padding: 0 !important;
		width: 48px !important;
		height: 48px !important;
		margin: 0 auto 6px !important;
		border-radius: 12px !important;
		color: var(--tp-shell-text) !important;
	}

	.tp-shell-rail-item.is-active {
		background: rgba(255, 255, 255, 0.08) !important;
		color: var(--tp-shell-text) !important;
	}

	.tp-shell-rail-icon {
		flex: 0 0 26px !important;
		width: 26px !important;
		height: 26px !important;
	}

	.tp-shell-rail-icon svg {
		width: 25px !important;
		height: 25px !important;
	}

	.tp-shell-rail-label {
		display: none !important;
	}

	/* Right desktop column (suggested explorers) — shell/position only.
	   Row + Follow styles live in min-width:768 so tablet/devtools widths match. */
	.tp-shell-right-rail {
		display: flex;
		flex-direction: column;
		position: fixed;
		top: calc(var(--tp-shell-top-h) + env(safe-area-inset-top, 0px));
		right: 0;
		bottom: 0;
		width: var(--tp-shell-right-w);
		padding: 16px 14px 20px;
		background: var(--tp-shell-bg);
		border-left: none;
		z-index: 100030;
		overflow-y: auto;
		scrollbar-width: none;
		box-sizing: border-box;
	}

	.tp-shell-right-rail::-webkit-scrollbar {
		display: none;
	}

	/* Reserve both rails so center column stays centered. */
	body.tp-shell-nav-active:not(.tp-shell-map-page):not(.tp-shell-settings-layout):not(.tp-shell-discover-layout) #page,
	body.tp-shell-nav-active:not(.tp-shell-map-page):not(.tp-shell-settings-layout):not(.tp-shell-discover-layout) #content,
	body.tp-shell-nav-active:not(.tp-shell-map-page):not(.tp-shell-settings-layout):not(.tp-shell-discover-layout) .youzify-page-main-content {
		padding-right: var(--tp-shell-right-w) !important;
	}

	/* Force desktop feed stage back to centered mockup frame. */
	body.tp-shell-feed-layout.tp-activity-directory .youzify-left-sidebar-layout,
	body.tp-shell-feed-layout.tp-activity-directory .youzify-right-sidebar-layout {
		max-width: 620px !important;
		width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen.tp-activity-directory .youzify-left-sidebar-layout,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen.tp-activity-directory .youzify-right-sidebar-layout,
	body.tp-shell-feed-layout.tp-shell-mode-feed.tp-activity-directory .youzify-left-sidebar-layout,
	body.tp-shell-feed-layout.tp-shell-mode-feed.tp-activity-directory .youzify-right-sidebar-layout,
	body.tp-shell-feed-layout.tp-shell-mode-photos.tp-activity-directory .youzify-left-sidebar-layout,
	body.tp-shell-feed-layout.tp-shell-mode-photos.tp-activity-directory .youzify-right-sidebar-layout {
		max-width: 620px !important;
		width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	body.tp-shell-feed-layout.tp-shell-nav-active .youzify-page-main-content {
		padding-left: var(--tp-shell-rail-collapsed) !important;
		padding-right: calc(var(--tp-shell-right-w) + 16px) !important;
		max-width: calc(620px + var(--tp-shell-rail-collapsed) + 16px) !important;
		width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	body.tp-shell-feed-layout.tp-shell-nav-active.tp-shell-rail-expanded .youzify-page-main-content {
		padding-left: var(--tp-shell-rail-collapsed) !important;
		max-width: calc(620px + var(--tp-shell-rail-collapsed) + 16px) !important;
	}

	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #page,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #content,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen .youzify-page-main-content,
	body.tp-shell-feed-layout.tp-shell-mode-feed #page,
	body.tp-shell-feed-layout.tp-shell-mode-feed #content,
	body.tp-shell-feed-layout.tp-shell-mode-feed .youzify-page-main-content,
	body.tp-shell-feed-layout.tp-shell-mode-photos #page,
	body.tp-shell-feed-layout.tp-shell-mode-photos #content,
	body.tp-shell-feed-layout.tp-shell-mode-photos .youzify-page-main-content {
		max-width: calc(620px + var(--tp-shell-rail-collapsed) + 16px) !important;
		width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		padding-left: var(--tp-shell-rail-collapsed) !important;
		padding-right: calc(var(--tp-shell-right-w) + 16px) !important;
	}

	/* Keep messages panes inside centered desktop app frame. */
	.tp-shell-messages-layer .inbox-sheet,
	.tp-shell-messages-layer .msg-sheet,
	.tp-shell-messages-layer .share-sheet,
	.tp-shell-messages-layer .newchat-sheet {
		left: 0 !important;
		right: 0 !important;
		width: min(620px, calc(100vw - var(--tp-shell-rail-collapsed) - 24px)) !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	/* Desktop reel: keep fullscreen one-post viewport (drag / snap / double-click like). */
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap,
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-track,
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-media-track,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-media-track,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-slide,
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-media-slide,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-media-slide {
		height: 100dvh !important;
		min-height: 100dvh !important;
	}

	body.tp-shell-feed-layout #activity-stream .tp-shell-media-wrap {
		-webkit-user-select: none;
		user-select: none;
	}

	body.tp-shell-feed-layout #activity-stream .tp-shell-media-wrap img {
		-webkit-user-drag: none;
		user-drag: none;
		pointer-events: auto;
	}
}

@media (max-width: 767px) {
	.tp-shell-right-rail {
		display: none !important;
	}
}

/* Suggested explorers innards — apply whenever the rail is shown (desktop + tablet). */
@media (min-width: 768px) {
	.tp-shell-right-me {
		display: flex;
		align-items: center;
		gap: 13px;
		margin-bottom: 22px;
	}

	.tp-shell-right-me-av {
		width: 44px;
		height: 44px;
		border-radius: 50%;
		overflow: hidden;
		flex-shrink: 0;
		background: linear-gradient(135deg, #242932, #343a45);
		display: inline-flex;
		align-items: center;
		justify-content: center;
		font-family: Montserrat, sans-serif;
		font-size: 14px;
		font-weight: 800;
		color: #fff;
	}

	.tp-shell-right-me-av img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}

	.tp-shell-right-me-copy {
		min-width: 0;
		display: flex;
		flex-direction: column;
	}

	.tp-shell-right-me-copy strong {
		font-family: Montserrat, sans-serif;
		font-size: 14px;
		font-weight: 700;
		color: var(--tp-shell-text);
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.tp-shell-right-me-copy small {
		font-size: 13px;
		color: var(--tp-shell-muted);
		margin-top: 1px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.tp-shell-right-head {
		margin-bottom: 8px;
	}

	.tp-shell-right-head span {
		font-family: Barlow, sans-serif;
		font-size: 14px;
		font-weight: 700;
		color: var(--tp-shell-muted);
	}

	.tp-shell-right-list {
		display: flex;
		flex-direction: column;
	}

	.tp-shell-right-row {
		display: flex;
		align-items: center;
		flex-wrap: nowrap;
		gap: 10px;
		padding: 8px 0;
		min-width: 0;
	}

	.tp-shell-right-av {
		width: 36px;
		height: 36px;
		border-radius: 50%;
		overflow: hidden;
		flex-shrink: 0;
		background: linear-gradient(135deg, #242932, #343a45);
		display: inline-flex;
		align-items: center;
		justify-content: center;
		font-family: Montserrat, sans-serif;
		font-size: 11px;
		font-weight: 800;
		color: #fff;
		text-decoration: none;
	}

	.tp-shell-right-av img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}

	.tp-shell-right-info {
		flex: 1 1 auto;
		min-width: 0;
		display: flex;
		flex-direction: column;
	}

	.tp-shell-right-name {
		font-family: Montserrat, sans-serif;
		font-size: 13px;
		font-weight: 700;
		color: var(--tp-shell-text);
		text-decoration: none;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.tp-shell-right-info small {
		font-size: 11px;
		color: var(--tp-shell-muted);
		margin-top: 1px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.tp-shell-right-rail .follow-btn.tp-shell-right-follow {
		appearance: none;
		-webkit-appearance: none;
		padding: 6px 10px;
		border-radius: 8px;
		border: 1px solid rgba(255, 255, 255, 0.15);
		background: transparent;
		color: var(--tp-shell-text);
		font-family: Montserrat, sans-serif;
		font-size: 11px;
		font-weight: 700;
		cursor: pointer;
		transition: all 0.15s ease;
		white-space: nowrap;
		line-height: 1;
		flex: 0 0 auto;
		text-decoration: none;
		box-shadow: none;
	}

	.tp-shell-right-rail .follow-btn.tp-shell-right-follow:hover {
		background: rgba(255, 255, 255, 0.06);
	}

	.tp-shell-right-rail .follow-btn.tp-shell-right-follow.following {
		background: rgba(255, 255, 255, 0.06);
		color: var(--tp-shell-muted);
		border-color: var(--tp-shell-border);
	}

	.tp-shell-right-rail .follow-btn.tp-shell-right-follow.friends {
		background: rgba(255, 255, 255, 0.1);
		color: var(--tp-shell-text);
	}
}

/* Profile pages: full-shell look like mockup (no footer, extend dark theme down). */
body.tp-shell-profile-layout footer,
body.tp-shell-profile-layout #footer,
body.tp-shell-profile-layout .site-footer,
body.tp-shell-profile-layout .footer,
body.tp-shell-profile-layout .youzify-footer {
	display: none !important;
}

body.tp-shell-profile-layout,
body.tp-shell-profile-layout #youzify,
body.tp-shell-profile-layout .youzify-page,
body.tp-shell-profile-layout .youzify-page-main-content,
body.tp-shell-profile-layout .youzify-right-sidebar-layout,
body.tp-shell-profile-layout .youzify-left-sidebar-layout,
body.tp-shell-profile-layout .youzify-main-column {
	background: #0d0f14 !important;
}

body.tp-shell-profile-layout .youzify-page-main-content {
	min-height: calc(100vh - var(--tp-shell-top-h) - env(safe-area-inset-top, 0px)) !important;
}

body.tp-shell-feed-layout .tp-shell-topbar {
	background: transparent !important;
	border-bottom-color: transparent !important;
	backdrop-filter: none !important;
	pointer-events: none !important;
}

body.tp-shell-feed-layout .tp-shell-topbar-logo,
body.tp-shell-feed-layout .tp-shell-topbar-actions {
	display: none !important;
}

/* Desktop feed: show settings control (same style as global topbar). */
@media (min-width: 992px) {
	body.tp-shell-feed-layout .tp-shell-topbar-actions {
		display: flex !important;
		margin-left: auto;
		pointer-events: auto !important;
		z-index: 100320;
	}

	body.tp-shell-feed-layout .tp-shell-topbar-avatar {
		pointer-events: auto !important;
	}

	/* Keep settings reachable — don't slide the topbar away on desktop feed scroll. */
	body.tp-shell-feed-layout .tp-shell-topbar.is-hidden {
		transform: none !important;
	}
}

/* Feed gutters: match profile shell background. */
body.tp-shell-feed-layout,
body.tp-shell-feed-layout #page,
body.tp-shell-feed-layout #content,
body.tp-shell-feed-layout .youzify-page-main-content {
	background: var(--tp-shell-bg, #0d0f14) !important;
}

body.tp-shell-feed-layout .tp-shell-right-rail {
	background: var(--tp-shell-bg, #0d0f14) !important;
	border-left: none !important;
	box-shadow: none !important;
}

body.tp-shell-feed-layout .tp-shell-feed-filters {
	position: fixed;
	top: calc(env(safe-area-inset-top, 0px) + 18px);
	left: 10px;
	right: 10px;
	z-index: 100130;
	max-width: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	opacity: 1;
	visibility: visible;
	transform: none;
}

body.tp-shell-feed-layout .tp-shell-feed-logo {
	position: fixed;
	top: calc(env(safe-area-inset-top, 0px) + 20px);
	left: 14px;
	z-index: 100121;
	font-family: Montserrat, sans-serif;
	font-size: 22px;
	font-weight: 900;
	letter-spacing: -1px;
	color: rgba(255, 255, 255, 0.35);
	pointer-events: none;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tabs {
	pointer-events: auto;
	display: inline-flex;
	gap: 20px;
	padding: 0;
	border-radius: 0;
	background: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border: 0 !important;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tab {
	flex: 0 0 auto;
	min-width: auto;
	padding: 4px 0;
	text-decoration: none !important;
	font-family: Montserrat, sans-serif;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	color: rgba(255, 255, 255, 0.45);
	background: transparent !important;
	border: 0;
	border-radius: 0;
	border-bottom: 2px solid transparent;
	letter-spacing: 0.2px;
	transition: color 0.2s ease, border-color 0.2s ease;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__tab.is-active {
	background: transparent !important;
	color: #fff;
	border-bottom-color: #fff;
}

body.tp-shell-feed-layout .tp-shell-feed-filters__status {
	display: none !important;
}

/* Hide BuddyPress "load newest" row and shell new-post banner. */
body.tp-shell-feed-layout #activity-stream > li.load-newest,
body.tp-shell-feed-layout ul.activity-list > li.load-newest,
body.tp-shell-feed-layout .tp-feed-new-posts-banner {
	display: none !important;
}

body.tp-shell-feed-layout .tp-shell-feed-plus {
	position: fixed;
	top: calc(env(safe-area-inset-top, 0px) + 20px);
	right: 12px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.12);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.18);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	text-decoration: none;
	z-index: 100121;
	pointer-events: auto;
}

/* Profile post viewer launched from profile tiles */
body.tp-shell-profile-post-view .tp-shell-feed-filters,
body.tp-shell-profile-post-view .tp-shell-feed-plus {
	display: none !important;
}

/*
 * Profile tile → post reel: force the same bottom text stack as For You/Nearby.
 * Absolute/shrink-wrapped .activity-header made usernames ellipsis early while
 * spot titles (siblings) still used the full column width.
 */
body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post > .activity-content {
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-end !important;
	align-items: stretch !important;
	gap: 9px !important;
	padding: 0 72px calc(104px + env(safe-area-inset-bottom, 0px)) 14px !important;
	box-sizing: border-box !important;
}

body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .activity-header,
body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo {
	position: static !important;
	inset: auto !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	padding: 0 !important;
	margin: 0 !important;
	align-self: stretch !important;
}

body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-user {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	display: flex !important;
	align-items: center !important;
	gap: 9px !important;
	flex: 1 1 auto !important;
	overflow: hidden !important;
}

body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-user .activity-avatar {
	flex: 0 0 auto !important;
}

body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-user-meta {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	flex: 1 1 0% !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: none !important;
	overflow: hidden !important;
}

body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line {
	display: flex !important;
	align-items: center !important;
	gap: 3px !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	align-self: stretch !important;
}

body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line a {
	display: block !important;
	flex: 0 1 auto !important;
	min-width: 0 !important;
	/* auto (not max-content): avoids shrink-wrap ↔ % max-width ellipsis death spiral */
	width: auto !important;
	max-width: calc(100% - 16px) !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
	color: #fff !important;
}

body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line .post-verified {
	flex: 0 0 auto !important;
	display: inline-block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	box-shadow: none !important;
	color: #a78bfa !important;
	font-size: 12px !important;
	line-height: 1 !important;
}

/* In profile post viewer, keep topbar visible so the close X is always accessible. */
body.tp-shell-feed-layout.tp-shell-feed-fullscreen.tp-shell-profile-post-view .tp-shell-topbar {
	display: flex !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen.tp-shell-profile-post-view .tp-shell-bottom-nav {
	display: none !important;
}

/* Feed topbar uses pointer-events:none; don't let scroll-hide yank the close control away. */
body.tp-shell-profile-post-view .tp-shell-topbar.is-hidden,
body.tp-shell-activity-single-layout .tp-shell-topbar.is-hidden {
	transform: none !important;
}

body.tp-shell-profile-post-view .tp-shell-topbar-logo,
body.tp-shell-activity-single-layout .tp-shell-topbar-logo {
	margin-left: 18px;
}

body.tp-shell-profile-post-view .tp-shell-profile-post-close,
body.tp-shell-activity-single-layout .tp-shell-profile-post-close {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 34px;
	height: 34px;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	color: #fff;
	font-size: 24px;
	line-height: 1;
	background: rgba(0, 0, 0, 0.35);
	border: 1px solid rgba(255, 255, 255, 0.14);
	/* Feed topbar sets pointer-events:none (and it inherits) — re-enable clicks on the X. */
	pointer-events: auto !important;
	z-index: 100060;
}

body.tp-shell-feed-layout .tp-shell-feed-plus svg {
	width: 18px;
	height: 18px;
}

body.tp-shell-route-loading {
	overflow: hidden;
}

.tp-shell-route-transition {
	position: fixed;
	inset: 0;
	background: #05070b;
	opacity: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: opacity 0.18s ease;
	z-index: 100250;
	pointer-events: none;
}

.tp-shell-route-transition.is-visible {
	opacity: 1;
}

.tp-shell-route-transition__spinner {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 3px solid rgba(255, 255, 255, 0.2);
	border-top-color: #fff;
	animation: tp-shell-route-spin 0.7s linear infinite;
}

@keyframes tp-shell-route-spin {
	to { transform: rotate(360deg); }
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream {
	height: 100dvh;
	padding-top: 0 !important;
	margin-top: 0 !important;
	scroll-snap-type: y mandatory;
	overflow-y: auto;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #page,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #content,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen .youzify-page-main-content {
	padding-top: 0 !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-feed-filters,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen .tp-shell-feed-filters__tabs {
	display: flex !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post.activity-item {
	position: relative;
	min-height: 100dvh;
	height: 100dvh;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	scroll-snap-align: start;
	scroll-snap-stop: always;
	overflow: hidden;
	background: #05070b !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .activity-content {
	position: absolute;
	inset: 0;
	padding: 0 !important;
	margin: 0 !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap {
	position: absolute;
	inset: 0;
	height: 100dvh;
	width: 100%;
	background: #000 !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap .tp-location-feed-preview,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap .tp-shell-media-map-preview,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap .youzify-post-item-img,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap .youzify-wall-embed-giphy {
	height: 100dvh !important;
	aspect-ratio: auto !important;
	background: #000 !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	background: #000 !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-track,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-slide {
	background: #000 !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .activity-header {
	position: absolute;
	left: 14px;
	right: 86px;
	bottom: calc(34px + env(safe-area-inset-bottom, 0px));
	z-index: 4;
	padding: 0 !important;
	margin: 0 !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-info {
	position: absolute;
	left: 14px;
	right: 86px;
	bottom: calc(64px + env(safe-area-inset-bottom, 0px));
	z-index: 4;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-tag,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-time,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-name {
	color: rgba(255, 255, 255, 0.92) !important;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.45);
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta {
	right: 10px;
	bottom: calc(62px + env(safe-area-inset-bottom, 0px));
	left: auto !important;
	top: auto !important;
	position: absolute !important;
	width: auto !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: visible !important;
	justify-content: flex-start !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	background: transparent !important;
	border-top: 0 !important;
	z-index: 7 !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post.activity-item {
	position: relative !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta > .tp-like-wrapper,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta > a.acomment-reply,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post > .activity-meta > a.youzify-social-share-activity {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-user .activity-avatar {
	display: block !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-location-sub {
	display: block !important;
	color: rgba(255, 255, 255, 0.92) !important;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line a,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line {
	color: #fff !important;
	font-weight: 800 !important;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.55);
}

/* Mode-locked feed layout (works even if fullscreen class desyncs) */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.activity-item,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.activity-item {
	position: relative !important;
	min-height: 100dvh !important;
	height: 100dvh !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	background: #000 !important;
}

/* Fullscreen feed should use the full viewport width (no 600px column). */
body.tp-shell-feed-layout.tp-shell-feed-fullscreen.tp-activity-directory .youzify-left-sidebar-layout,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen.tp-activity-directory .youzify-right-sidebar-layout,
body.tp-shell-feed-layout.tp-shell-mode-feed.tp-activity-directory .youzify-left-sidebar-layout,
body.tp-shell-feed-layout.tp-shell-mode-feed.tp-activity-directory .youzify-right-sidebar-layout,
body.tp-shell-feed-layout.tp-shell-mode-photos.tp-activity-directory .youzify-left-sidebar-layout,
body.tp-shell-feed-layout.tp-shell-mode-photos.tp-activity-directory .youzify-right-sidebar-layout {
	max-width: 100% !important;
	width: 100% !important;
	margin: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen #page,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #content,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen .youzify-page-main-content,
body.tp-shell-feed-layout.tp-shell-mode-feed #page,
body.tp-shell-feed-layout.tp-shell-mode-feed #content,
body.tp-shell-feed-layout.tp-shell-mode-feed .youzify-page-main-content,
body.tp-shell-feed-layout.tp-shell-mode-photos #page,
body.tp-shell-feed-layout.tp-shell-mode-photos #content,
body.tp-shell-feed-layout.tp-shell-mode-photos .youzify-page-main-content {
	max-width: 100% !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.activity-item::after,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.activity-item::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: min(50dvh, 56%);
	background: linear-gradient(
		to top,
		rgba(0, 0, 0, 0.82) 0%,
		rgba(0, 0, 0, 0.64) 35%,
		rgba(0, 0, 0, 0.34) 62%,
		rgba(0, 0, 0, 0) 100%
	);
	pointer-events: none;
	z-index: 6;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content {
	position: absolute !important;
	inset: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	min-height: 100dvh !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-media-track,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-media-track,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-media-slide,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-media-slide {
	background: #000 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap img,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap img {
	object-fit: cover !important;
	background: #000 !important;
}

/* TikTok-like media handling:
   - portrait/square fills screen
   - landscape keeps full frame with top/bottom letterbox (no side bars) */
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap img.tp-shell-media-img-landscape,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap img.tp-shell-media-img-landscape,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap img.tp-shell-media-img-landscape {
	object-fit: contain !important;
	background: #000 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-location-feed-preview:not(.tp-location-feed-preview--placeholder),
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-location-feed-preview:not(.tp-location-feed-preview--placeholder),
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-location-feed-preview__img,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-location-feed-preview__img {
	background: #000 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-location-feed-preview.tp-location-feed-preview--placeholder,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-location-feed-preview.tp-location-feed-preview--placeholder {
	background: linear-gradient(180deg, #202532 0%, #161a24 100%) !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post > .activity-meta,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post > .activity-meta {
	position: absolute !important;
	right: 10px !important;
	bottom: calc(62px + env(safe-area-inset-bottom, 0px)) !important;
	left: auto !important;
	top: auto !important;
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	align-items: center !important;
	background: transparent !important;
	border: 0 !important;
	z-index: 8 !important;
}

/* Some posts render meta inside .activity-content; force same bottom-right rail there too */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta {
	position: absolute !important;
	right: 10px !important;
	bottom: calc(166px + env(safe-area-inset-bottom, 0px)) !important;
	left: auto !important;
	top: auto !important;
	width: auto !important;
	max-width: none !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	align-items: center !important;
	justify-content: flex-start !important;
	background: transparent !important;
	border: 0 !important;
	overflow: visible !important;
	z-index: 10 !important;
	--tp-shell-action-size: 26px;
	--tp-shell-action-stroke-heart: 2;
	--tp-shell-action-stroke-comment: 2;
	--tp-shell-action-stroke-share: 2;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > .tp-like-wrapper,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.acomment-reply,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > .tp-shell-feed-edit-btn,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > .tp-like-wrapper,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.acomment-reply,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > .tp-shell-feed-edit-btn {
	position: relative !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	flex-direction: column !important;
	gap: 10px !important;
}

/* Fixed action order in vertical rail: like -> comment -> bookmark -> share */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > .tp-like-wrapper,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > .tp-like-wrapper {
	order: 1 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.acomment-reply,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.acomment-reply {
	order: 2 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark {
	order: 3 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-share,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity.tp-shell-action-share,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-share,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity.tp-shell-action-share {
	order: 4 !important;
	margin-top: 0 !important;
}

/* Keep action buttons visually even and put Share text under icon */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.acomment-reply,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-share,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity.tp-shell-action-share,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.acomment-reply,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-share,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity.tp-shell-action-share {
	display: inline-flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	min-width: 42px !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-share,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity.tp-shell-action-share,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-share,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity.tp-shell-action-share {
	position: relative !important;
	overflow: visible !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-share::after,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity.tp-shell-action-share::after,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-share::after,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.youzify-social-share-activity.tp-shell-action-share::after {
	content: "Share";
	position: absolute;
	left: 50%;
	top: calc(100% + 4px);
	transform: translateX(-50%);
	white-space: nowrap;
	line-height: 1.05;
	font-size: 13px;
	font-weight: 700;
	text-align: center;
	color: rgba(255, 255, 255, 0.94) !important;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.48);
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-like-wrapper a.yzpr-reacto-post,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-like-wrapper a.yzpr-reacto-post {
	display: inline-flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	height: auto !important;
	line-height: 1 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-shell-action-icon,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-shell-action-icon {
	width: var(--tp-shell-action-size) !important;
	height: var(--tp-shell-action-size) !important;
	color: #fff !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.acomment-reply,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.acomment-reply {
	color: #fff !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-shell-like-count-num,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-shell-comment-count,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-shell-bookmark-count,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-shell-like-count-num,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-shell-comment-count,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta .tp-shell-bookmark-count {
	display: block !important;
	height: auto !important;
	line-height: 1.05 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	text-align: center !important;
	color: rgba(255, 255, 255, 0.94) !important;
	text-shadow: 0 2px 8px rgba(0, 0, 0, 0.48);
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark {
	display: inline-flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	color: #fff !important;
	text-decoration: none !important;
	padding: 0 !important;
	border-radius: 0 !important;
	transition: color 0.16s ease;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark.is-bookmarked .tp-shell-action-icon,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark.is-bookmarked .tp-shell-action-icon {
	color: #f5c15d !important;
	fill: #f5c15d !important;
	stroke: #f5c15d !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark.is-bookmarked .tp-shell-bookmark-count,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-content > .activity-meta > a.tp-shell-action-bookmark.is-bookmarked .tp-shell-bookmark-count {
	color: rgba(255, 255, 255, 0.94) !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-header,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-header {
	bottom: calc(180px + env(safe-area-inset-bottom, 0px)) !important;
	left: 14px !important;
	right: 72px !important;
	z-index: 11 !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-user,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-user {
	align-items: center !important;
	gap: 9px !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: 1 1 100% !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-user-meta,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-user-meta {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;
	/* Force meta to consume leftover row width so username ellipsis uses real space. */
	flex: 1 1 0% !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: none !important;
	align-self: stretch !important;
	overflow: hidden !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-user .activity-avatar,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-user .activity-avatar {
	margin-right: 0 !important;
	flex: 0 0 auto !important;
}

/* Username — TikTok Sans, no glass pill (mockup .tk-username) */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line {
	line-height: 1.2 !important;
	margin: 0 !important;
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	letter-spacing: -0.2px !important;
	display: flex !important;
	align-items: center !important;
	gap: 3px !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	align-self: stretch !important;
	padding: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	border: none !important;
	box-shadow: none !important;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line a,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line a {
	color: #fff !important;
	font-family: inherit !important;
	font-weight: inherit !important;
	letter-spacing: inherit !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-location-sub,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-location-sub,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-type-line,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-type-line {
	display: none !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-info {
	bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
	left: 14px !important;
	right: 72px !important;
	background: transparent !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 9px !important;
	max-height: none !important;
	overflow: visible !important;
	z-index: 9 !important;
	padding-top: 0 !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
	text-align: left !important;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
}

/* Spot name + type row (mockup .tk-map-pill) */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head {
	position: absolute !important;
	left: 14px !important;
	right: 72px !important;
	bottom: calc(198px + env(safe-area-inset-bottom, 0px)) !important;
	z-index: 12 !important;
	margin: 0 !important;
	pointer-events: none;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-name,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-name {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	column-gap: 7px !important;
	row-gap: 3px !important;
	max-width: 100% !important;
	padding: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	border: none !important;
	box-shadow: none !important;
	color: #fff !important;
	line-height: 1.2 !important;
	overflow: visible;
	white-space: normal;
	pointer-events: auto;
	text-decoration: none !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-name-text,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-name-text {
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	color: #fff !important;
	/* Natural width so type sits beside short names; no grow-to-end. */
	flex: 0 0 auto;
	min-width: 0;
	max-width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Type + › wrap together onto the next line when the name is long. */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-tail,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-tail {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	flex: 0 0 auto;
	max-width: 100%;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-type,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-type {
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 9.5px !important;
	letter-spacing: 1.2px !important;
	text-transform: uppercase !important;
	font-weight: 700 !important;
	color: rgba(255, 255, 255, 0.92) !important;
	border-left: 1px solid rgba(255, 255, 255, 0.22) !important;
	padding-left: 9px !important;
	flex-shrink: 0;
	line-height: 1.2 !important;
}

/* Difficulty meter next to spot type (mockup .tk-diff) — premium / own posts only in PHP */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-diff {
	display: inline-flex !important;
	align-items: flex-end !important;
	gap: 2px !important;
	height: 11px !important;
	margin: 0 0 0 1px !important;
	padding: 0 !important;
	flex-shrink: 0;
	line-height: 0 !important;
}
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff i,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff i,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-diff i {
	width: 3px !important;
	border-radius: 1px !important;
	background: rgba(255, 255, 255, 0.2) !important;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
}
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff i:nth-child(1),
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff i:nth-child(1),
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-diff i:nth-child(1) {
	height: 5px !important;
}
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff i:nth-child(2),
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff i:nth-child(2),
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-diff i:nth-child(2) {
	height: 8px !important;
}
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff i:nth-child(3),
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff i:nth-child(3),
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-diff i:nth-child(3) {
	height: 11px !important;
}
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff--easy i:nth-child(1),
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff--easy i:nth-child(1),
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-diff--easy i:nth-child(1) {
	background: #56d98a !important;
}
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff--mod i:nth-child(-n + 2),
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff--mod i:nth-child(-n + 2),
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-diff--mod i:nth-child(-n + 2) {
	background: #fbbf24 !important;
}
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff--hard i,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff--hard i,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-diff--hard i {
	background: #f87171 !important;
}
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff--extreme i,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-diff--extreme i,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-diff--extreme i {
	background: #dc2626 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-arrow,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-arrow {
	font-size: 15px !important;
	color: rgba(255, 255, 255, 0.45) !important;
	font-weight: 700 !important;
	flex-shrink: 0;
	margin-left: 0;
	line-height: 1 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-name svg,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-name svg {
	display: none !important;
}

/* Geo line (mockup .tk-geo) — first row inside post-info, under spot name */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-geo {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	margin: 0 !important;
	order: 1;
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	color: rgba(255, 255, 255, 0.82) !important;
	letter-spacing: 0.3px !important;
	line-height: 1.2 !important;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
	max-width: 100%;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo[hidden],
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo[hidden],
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-geo[hidden] {
	display: none !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo svg,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo svg {
	width: 13px !important;
	height: 13px !important;
	opacity: 0.7;
	flex-shrink: 0;
	color: rgba(255, 255, 255, 0.6);
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo-dist,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo-dist,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-geo-dist {
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	font-weight: 500 !important;
	color: rgba(255, 255, 255, 0.62) !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo-dist::before,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo-dist::before,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-geo-dist::before {
	content: "·";
	margin: 0 0.35em 0 0.15em;
	opacity: 0.7;
}

/* Hide difficulty / legacy type chips */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-tag--diff,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-tag--diff,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-meta,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-meta,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-tag--type,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-tag--type,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-tags,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-tags {
	display: none !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-info > .tp-shell-post-spot-head,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-info > .tp-shell-post-spot-head {
	display: none !important;
}

/* Caption — bare text, TikTok Sans (mockup .tk-caption) */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption {
	order: 2 !important;
	margin: 0 !important;
	display: block !important;
	padding: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	border: none !important;
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
	color: rgba(255, 255, 255, 0.96) !important;
	overflow: visible !important;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
	align-self: flex-start !important;
	text-align: left !important;
	overflow-wrap: anywhere !important;
	word-break: break-word !important;
	max-width: calc(100vw - 122px) !important;
	backdrop-filter: none;
	-webkit-backdrop-filter: none;
	-webkit-box-decoration-break: unset;
	box-decoration-break: unset;
	-webkit-line-clamp: unset;
	line-clamp: unset;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption-text,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption-text {
	font: inherit;
	color: inherit;
}

/* Premium-locked access notes (mockup .tk-caption.locked + .tk-caplock) */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption.is-locked,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption.is-locked {
	filter: blur(5px);
	-webkit-filter: blur(5px);
	user-select: none;
	-webkit-user-select: none;
	opacity: 0.9;
	cursor: pointer;
	max-width: min(300px, calc(100vw - 122px)) !important;
	text-decoration: none !important;
	color: rgba(255, 255, 255, 0.96) !important;
	pointer-events: auto !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caplock,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caplock {
	order: 2 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	margin: 2px 0 0 !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	cursor: pointer;
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #fff !important;
	text-decoration: none !important;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
	transition: opacity 0.15s;
	pointer-events: auto !important;
	position: relative;
	z-index: 2;
	align-self: flex-start !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caplock:hover,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caplock:hover {
	opacity: 0.82;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caplock svg,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caplock svg {
	width: 14px;
	height: 14px;
	color: rgba(255, 255, 255, 0.9);
	flex-shrink: 0;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caplock .prem,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caplock .prem {
	color: var(--tp-shell-accent, #a78bfa);
}

/* Never show Youzify multi-emoji reaction picker (bar may be appended under <body>). */
body.tp-shell-feed-layout .yzpr-bar,
body.tp-shell-nav-active .yzpr-bar {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
	position: absolute !important;
	left: -9999px !important;
	top: -9999px !important;
	z-index: -1 !important;
}

/* TikTok-style inline "more" after truncated access notes / description */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption-more,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption-more {
	display: inline !important;
	margin: 0 0 0 4px !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
	box-shadow: none !important;
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: inherit !important;
	letter-spacing: 0 !important;
	color: rgba(255, 255, 255, 0.55) !important;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
	cursor: pointer;
	vertical-align: baseline;
	/* Parent .tp-shell-post-info uses pointer-events:none for carousel swipes. */
	pointer-events: auto !important;
	position: relative;
	z-index: 2;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption-more:hover,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption-more:hover {
	color: rgba(255, 255, 255, 0.82) !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption-more[hidden],
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption-more[hidden] {
	display: none !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption.is-expanded .tp-shell-post-caption-more,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption.is-expanded .tp-shell-post-caption-more {
	color: rgba(255, 255, 255, 0.55) !important;
}

/* Collapsible hazards (mockup .tk-haz) */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz {
	order: 3;
	width: 100%;
	margin: 0 !important;
	align-self: flex-start !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-toggle,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-toggle {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	background: none !important;
	border: none !important;
	cursor: pointer;
	padding: 0 !important;
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 13px !important;
	letter-spacing: 0.2px !important;
	font-weight: 700 !important;
	color: rgba(255, 255, 255, 0.78) !important;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
	transition: color 0.15s;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-toggle:hover,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-toggle:hover {
	color: #fff !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-toggle svg,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-toggle svg {
	width: 13px !important;
	height: 13px !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-chev,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-chev {
	transition: transform 0.25s ease;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz.is-open .tp-shell-post-haz-chev,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz.is-open .tp-shell-post-haz-chev {
	transform: rotate(180deg);
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-list,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-list {
	display: none;
	flex-wrap: wrap;
	gap: 8px 16px;
	margin-top: 11px;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz.is-open .tp-shell-post-haz-list,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz.is-open .tp-shell-post-haz-list {
	display: flex;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 12.5px !important;
	font-weight: 500 !important;
	color: rgba(255, 255, 255, 0.88) !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	background: none !important;
	border-radius: 0 !important;
	--hd: #8b949e;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag::before,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	flex-shrink: 0;
	background: var(--hd, #8b949e);
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--struct,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--struct { --hd: #f87171; }
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--access,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--access { --hd: #a78bfa; }
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--security,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--security { --hd: #60a5fa; }
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--env,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--env { --hd: #56d98a; }
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--animal,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz-tag--animal { --hd: #fbbf24; }

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-access-notes,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-access-notes {
	max-width: calc(100vw - 122px) !important;
	overflow-wrap: anywhere !important;
	word-break: break-word !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-time,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-time {
	order: 4;
	font-family: "TikTok Sans", Barlow, sans-serif !important;
	font-size: 10px !important;
	font-weight: 400 !important;
	opacity: 0.7;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55);
	letter-spacing: 0.2px !important;
	margin-top: 0 !important;
	align-self: flex-start !important;
	text-align: left !important;
	line-height: 1.15 !important;
	color: rgba(255, 255, 255, 0.55) !important;
}

@media (max-width: 767px) {
	/* TikTok-style mobile contrast pass: keep right-rail actions and captions readable on bright media. */
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap::after,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-media-wrap::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		height: 42%;
		background: linear-gradient(to top, rgba(0, 0, 0, 0.62) 0%, rgba(0, 0, 0, 0.38) 34%, rgba(0, 0, 0, 0) 100%);
		pointer-events: none;
		z-index: 1;
	}

	/* The action rail is anchored with `bottom` against the card, so it has to stay
	   absolute — as `relative` that anchor becomes a flow offset and lifts the rail
	   clean off the top of the card. Stacking above the gradient only needs z-index. */
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-meta,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-meta {
		position: absolute;
		z-index: 3;
	}

	/* Bare icons on the right rail — no pill/circle behind them. Legibility over bright
	   media comes from the gradient above plus the icon drop-shadow below. */
	body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-shell-action-icon {
		stroke: rgba(255, 255, 255, 0.98) !important;
		filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.48));
	}

	body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-shell-like-glyph .tp-shell-action-icon {
		fill: rgba(255, 255, 255, 0.12) !important;
	}

	body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper.tp-like-has-reaction .tp-shell-like-glyph .tp-shell-action-icon,
	body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-wrapper:has(.yzpr-yes-reaction) .tp-shell-like-glyph .tp-shell-action-icon {
		fill: #ff4d67 !important;
		stroke: #ff4d67 !important;
	}

	body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-shell-comment-count,
	body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-shell-bookmark-count,
	body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-shell-like-count-num,
	body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta .tp-like-count {
		color: #fff !important;
		font-weight: 800 !important;
		text-shadow: 0 2px 8px rgba(0, 0, 0, 0.62) !important;
		letter-spacing: 0.01em;
	}

	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption {
		color: rgba(255, 255, 255, 0.96) !important;
		font-weight: 500 !important;
		text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55) !important;
	}

	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line a,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line a {
		color: #fff !important;
		font-weight: 800 !important;
		text-shadow: 0 1px 4px rgba(0, 0, 0, 0.55) !important;
	}
}

/* Responsive text safety: keep long username/caption out of right action rail. */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-header,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-header,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo {
	right: 72px !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line {
	min-width: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line a,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line a {
	display: block !important;
	/* Don't grow (keeps ✓ next to name). Shrink against a real column width. */
	flex: 0 1 auto !important;
	min-width: 0 !important;
	width: auto !important;
	max-width: calc(100% - 16px) !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line .post-verified,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-author-line .post-verified {
	flex: 0 0 auto !important;
	margin-left: 0 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	overflow: visible !important;
	-webkit-line-clamp: unset;
	line-clamp: unset;
}

/* Spot name, author row and the caption/tags/time block were three separately anchored
   overlays, each with its own hand-tuned `bottom`. Because the caption is variable
   height and grows upward, a long one runs straight through the author row. Put the
   three back into the card's flex column and pin the stack to the bottom instead, so
   they push each other up as a unit no matter how long the caption is. The media and
   the action rail stay absolutely positioned and are unaffected. */
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post > .activity-content,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post > .activity-content,
body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post > .activity-content {
	justify-content: flex-end !important;
	/* Tighter rail reserve so usernames can use more horizontal space before ellipsis.
	   Bottom padding kept modest so title/caption sit lower on the frame. */
	padding: 0 72px calc(72px + env(safe-area-inset-bottom, 0px)) 14px !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-header,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-header,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo,
body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .activity-header,
body.tp-shell-profile-post-view.tp-shell-feed-layout #activity-stream > li.tp-shell-ig-post .tp-shell-post-info {
	position: static !important;
	inset: auto !important;
	/* Must be 100% — width:auto shrink-wrapped the username and caused early … */
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	align-self: stretch !important;
}

body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption {
	width: 100% !important;
	max-width: 100% !important;
}

/* Stack gap between username → spot → geo → caption/haz when they sit in one column. */
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post > .activity-content,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen:not(.tp-shell-activity-single-layout).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post > .activity-content {
	gap: 9px !important;
}

@media (max-width: 767px) {
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-header,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-header,
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo {
		right: 68px !important;
	}
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .activity-header,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .activity-header {
	bottom: calc(200px + env(safe-area-inset-bottom, 0px)) !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .tp-shell-post-spot-head,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .tp-shell-post-spot-head {
	bottom: calc(250px + env(safe-area-inset-bottom, 0px)) !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .tp-shell-post-info,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .tp-shell-post-info {
	bottom: calc(124px + env(safe-area-inset-bottom, 0px)) !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .activity-content > .activity-meta,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .activity-content > .activity-meta {
	bottom: calc(186px + env(safe-area-inset-bottom, 0px)) !important;
}

/* No description + no tags: pull header/type stack lower toward timestamp. */
/* Metadata-aware placement: keep username/type stable, lift timestamp block when meta is sparse. */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-minimal-meta .tp-shell-post-info,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-minimal-meta .tp-shell-post-info {
	bottom: calc(146px + env(safe-area-inset-bottom, 0px)) !important;
	gap: 2px !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-tags-only .tp-shell-post-info,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-tags-only .tp-shell-post-info {
	bottom: calc(126px + env(safe-area-inset-bottom, 0px)) !important;
	gap: 4px !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-caption-only .tp-shell-post-info,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-caption-only .tp-shell-post-info {
	bottom: calc(118px + env(safe-area-inset-bottom, 0px)) !important;
	gap: 5px !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-minimal-meta .tp-shell-post-time,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-minimal-meta .tp-shell-post-time,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-tags-only .tp-shell-post-time,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-tags-only .tp-shell-post-time {
	margin-top: 0 !important;
}

/* Guests / non-premium viewers: lower pill + username/type cluster closer to tags. */
body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-header,
body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-header {
	bottom: calc(160px + env(safe-area-inset-bottom, 0px)) !important;
}

body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head,
body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-head {
	bottom: calc(204px + env(safe-area-inset-bottom, 0px)) !important;
}

body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .activity-header,
body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .activity-header {
	bottom: calc(174px + env(safe-area-inset-bottom, 0px)) !important;
}

body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .tp-shell-post-spot-head,
body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-dense-text .tp-shell-post-spot-head {
	bottom: calc(218px + env(safe-area-inset-bottom, 0px)) !important;
}

body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-minimal-meta .tp-shell-post-info,
body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-minimal-meta .tp-shell-post-info {
	bottom: calc(136px + env(safe-area-inset-bottom, 0px)) !important;
}

body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.tp-shell-post-tags-only .tp-shell-post-info,
body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private).tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.tp-shell-post-tags-only .tp-shell-post-info {
	bottom: calc(118px + env(safe-area-inset-bottom, 0px)) !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-meta,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-meta,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-access,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-access {
	align-self: flex-start !important;
	text-align: left !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-header .tp-shell-post-tag--type,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-header .tp-shell-post-tag--type,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-header .tp-shell-post-spot-meta,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-header .tp-shell-post-spot-meta {
	display: none !important;
}

/* Hide post tools (ellipsis) for template parity */
body.tp-shell-feed-layout .youzify-show-item-tools,
body.tp-shell-feed-layout .youzify-item-tools.youzify-activity-tools {
	display: none !important;
}

body.tp-shell-feed-layout .youzify-item-tools.youzify-activity-tools[data-tp-synthetic-tools],
body.tp-shell-feed-layout .activity-content > .youzify-item-tools,
body.tp-shell-feed-layout .activity-content > .youzify-item-tools.youzify-activity-tools {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-header .youzify-show-item-tools,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-header .youzify-show-item-tools,
body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .activity-header .youzify-show-item-tools {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	width: 0 !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Template parity: hide difficulty/type/hazard blocks on feed cards */
body.tp-shell-feed-layout .tp-shell-post-spot-meta,
body.tp-shell-feed-layout .tp-shell-post-tags,
body.tp-shell-feed-layout .tp-location-meta-row,
body.tp-shell-feed-layout .tp-location-access-notes,
body.tp-shell-feed-layout .tp-difficulty-rating {
	display: none !important;
}

/* Mockup overlay: caption + hazards + geo stay visible; legacy chips stay hidden. */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-caption,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-haz,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-geo {
	visibility: visible !important;
	opacity: 1 !important;
}

body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-meta,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-tags,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-spot-meta,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-tags {
	display: none !important;
}

/* Fallback safety: keep feed overlay text visible even if a row misses JS enhancement. */
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.activity-item .tp-shell-post-caption,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.activity-item .tp-shell-post-haz,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.activity-item .tp-shell-post-geo,
body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.activity-item .tp-shell-post-time,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.activity-item .tp-shell-post-caption,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.activity-item .tp-shell-post-haz,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.activity-item .tp-shell-post-geo,
body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.activity-item .tp-shell-post-time {
	visibility: visible !important;
	opacity: 1 !important;
}

/* ── Auth pages (login / register) — same shell chrome as guest app ── */
body.tp-shell-auth-page.tp-shell-nav-active #stunning-header,
body.tp-shell-auth-page.tp-shell-nav-active #header--standard,
body.tp-shell-auth-page.tp-shell-nav-active #mobile-header {
	display: none !important;
}

body.tp-shell-auth-page.tp-shell-nav-active #page,
body.tp-shell-auth-page.tp-shell-nav-active #content {
	padding-top: calc(var(--tp-shell-top-h) + 20px) !important;
}

body.tp-shell-auth-page .tp-shell-topbar--auth {
	justify-content: space-between;
}

body.tp-shell-auth-page .tp-shell-topbar-actions--auth {
	gap: 8px;
}

/* Keep login/register cards clear of the bottom nav on mobile. */
body.tp-shell-auth-page.tp-shell-nav-active #login-page,
body.tp-shell-auth-page.tp-shell-nav-active #register-page,
body.tp-shell-auth-page.tp-shell-nav-active #lost-password-page {
	padding-bottom: calc(var(--tp-shell-nav-h, 64px) + env(safe-area-inset-bottom, 0px) + 24px) !important;
	min-height: calc(100dvh - var(--tp-shell-top-h, 52px) - var(--tp-shell-nav-h, 64px)) !important;
}

/* Guest feed: keep like/comment row visible; pointer cursor */
body.tp-shell-feed-layout.tp-shell-nav-guest .youzify-activity-statistics a,
body.tp-shell-feed-layout.tp-shell-nav-guest .youzify-activity-statistics button,
body.tp-shell-feed-layout.tp-shell-nav-guest .tp-like-wrapper {
	cursor: pointer;
}

/* Non-premium viewers: private spots are removed server-side; hide any gated row fallback */
body.tp-shell-feed-layout:not(.tp-shell-viewer-can-private) li.tp-activity-access-gated {
	display: none !important;
}

/* Hide floating dark mode toggle (will be relocated later) */
#dark-mode-toggle,
.olympus-theme-toggle {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/* --- Single activity permalink hard overrides (wins over feed rail styles) --- */
body.tp-shell-activity-single-layout li.tp-shell-ig-post::after,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .activity-content::after {
	display: none !important;
}

body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-spot-name {
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
}

body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-caption,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-time,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .tp-shell-post-info {
	background: transparent !important;
}

body.tp-shell-activity-single-layout.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta,
body.tp-shell-activity-single-layout.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta,
body.tp-shell-activity-single-layout.tp-shell-feed-layout li.tp-shell-ig-post .activity-content > .activity-meta {
	position: static !important;
	inset: auto !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
	margin: 10px 0 2px 0 !important;
	width: 100% !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 18px !important;
	z-index: auto !important;
	transform: none !important;
}

body.tp-shell-activity-single-layout.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > .tp-like-wrapper,
body.tp-shell-activity-single-layout.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.acomment-reply,
body.tp-shell-activity-single-layout.tp-shell-feed-layout #youzify li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity,
body.tp-shell-activity-single-layout.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-like-wrapper,
body.tp-shell-activity-single-layout.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.acomment-reply,
body.tp-shell-activity-single-layout.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > a.youzify-social-share-activity {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
}

/* Single activity: only show like / comment / share actions. */
body.tp-shell-activity-single-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-map,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .activity-meta > a.tp-shell-action-bookmark,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .activity-meta > button.tp-admin-delete-location,
body.tp-shell-activity-single-layout li.tp-shell-ig-post .activity-meta > .tp-verify-wrapper {
	display: none !important;
}

/* ===== Shell Messages + Share (mockup2) ===== */
.tp-shell-nav-item,
.tp-shell-rail-item {
	position: relative;
}

.tp-shell-nav-dm-badge {
	position: absolute;
	top: 2px;
	right: 2px;
	min-width: 14px;
	height: 14px;
	padding: 0 3px;
	border-radius: 999px;
	background: #a78bfa;
	color: #0d0f14;
	font-family: "Montserrat", sans-serif;
	font-size: 8px;
	font-weight: 800;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1.5px solid #0d0f14;
	z-index: 2;
}

.tp-shell-rail-item > .tp-shell-nav-dm-badge {
	top: 4px;
	right: 4px;
}

.tp-shell-nav-dm-badge.is-hidden {
	display: none;
}

.tp-shell-nav-dm-badge.is-bump {
	animation: tp-shell-nav-badge-bump 0.55s ease;
}

@keyframes tp-shell-nav-badge-bump {
	0% {
		transform: scale(1);
	}
	35% {
		transform: scale(1.35);
	}
	100% {
		transform: scale(1);
	}
}

.tp-shell-messages-layer {
	position: fixed;
	inset: 0;
	z-index: 200;
	pointer-events: none;
}

.tp-shell-messages-layer.is-open,
.tp-shell-messages-layer.is-page {
	pointer-events: auto;
}

.tp-shell-messages-layer .inbox-backdrop,
.tp-shell-messages-layer .msg-backdrop,
.tp-shell-messages-layer .share-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0);
	pointer-events: none;
	transition: background 0.25s;
}

.tp-shell-messages-layer .inbox-backdrop.open,
.tp-shell-messages-layer .msg-backdrop.open,
.tp-shell-messages-layer .share-backdrop.open {
	background: rgba(0, 0, 0, 0.5);
	pointer-events: auto;
}

/* Ignore ghost clicks on the backdrop right after open (fast tap / double-fire). */
.tp-shell-messages-layer.is-backdrop-guard .inbox-backdrop,
.tp-shell-messages-layer.is-backdrop-guard .msg-backdrop,
.tp-shell-messages-layer.is-backdrop-guard .share-backdrop {
	pointer-events: none !important;
}

.tp-shell-messages-layer .inbox-sheet,
.tp-shell-messages-layer .msg-sheet {
	position: absolute;
	top: calc(var(--tp-shell-top-h) + env(safe-area-inset-top, 0px));
	right: 0;
	left: 0;
	bottom: 0;
	padding-top: 0;
	background: #0d0f14;
	z-index: 205;
	display: flex;
	flex-direction: column;
	transform: translateY(100%);
	transition: transform 0.34s cubic-bezier(0.32, 0.72, 0, 1);
	pointer-events: auto;
}

.tp-shell-messages-layer .inbox-sheet.open,
.tp-shell-messages-layer .msg-sheet.open {
	transform: translateY(0);
}

.tp-shell-messages-layer .sheet-handle,
.tp-shell-messages-layer .msg-handle {
	display: none;
}

.tp-shell-messages-layer .sheet-title-row {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding: 12px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	flex-shrink: 0;
}

.tp-shell-messages-layer .sheet-title {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 800;
	color: #fff;
}

.tp-shell-messages-layer .sheet-x {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: 0;
	color: #9ca3af;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	padding: 0 4px;
}

.tp-shell-messages-layer .inbox-search {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 12px 16px 2px;
	padding: 9px 12px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.tp-shell-messages-layer .inbox-search svg {
	width: 15px;
	height: 15px;
	color: #9ca3af;
	flex-shrink: 0;
}

.tp-shell-messages-layer .inbox-search input {
	flex: 1;
	background: none;
	border: 0;
	outline: none;
	color: #fff;
	font-family: "Barlow", sans-serif;
	font-size: 13px;
}

@media (max-width: 991px) {
	/* iOS Safari zoom guard: keep search inputs at 16px+ on focus. */
	.tp-shell-messages-layer .inbox-search input,
	body.tp-shell-nav-active #members-directory-form .disc-search,
	body.tp-shell-nav-active #buddypress .disc-search {
		font-size: 16px !important;
	}
}

.tp-shell-messages-layer .inbox-search input::placeholder {
	color: #9ca3af;
}

.tp-shell-messages-layer .inbox-scroll {
	flex: 1;
	overflow-y: auto;
	scrollbar-width: none;
	min-height: 0;
}

.tp-shell-messages-layer .inbox-scroll::-webkit-scrollbar {
	display: none;
}

.tp-shell-messages-layer .inbox-scroll .inbox-list {
	flex: none;
	overflow: visible;
	padding: 0 0 16px;
}

.tp-shell-messages-layer .inbox-activity {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 12px 16px;
	background: transparent;
	border: 0;
	cursor: pointer;
	text-align: left;
	transition: background 0.15s;
}

.tp-shell-messages-layer .inbox-activity:hover {
	background: rgba(255, 255, 255, 0.03);
}

.tp-shell-messages-layer .inbox-act-ic {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #f472b6, #f87171);
}

.tp-shell-messages-layer .inbox-act-ic svg {
	width: 24px;
	height: 24px;
	color: #fff;
}

.tp-shell-messages-layer .inbox-act-ic.nearby {
	background: linear-gradient(135deg, #a78bfa, #7c5cff);
}

.tp-shell-messages-layer .inbox-act-ic.nearby svg {
	width: 23px;
	height: 23px;
}

.tp-shell-messages-layer .inbox-act-title {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 800;
	color: #e6edf3;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0;
}

.tp-shell-messages-layer .inbox-act-sub {
	font-family: "Barlow", sans-serif;
	font-size: 11.5px;
	color: #9ca3af;
	margin-top: 2px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 215px;
	display: block;
}

.tp-shell-messages-layer .inbox-act-badge {
	flex-shrink: 0;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 10px;
	background: #f87171;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 11px;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
}

.tp-shell-messages-layer .inbox-act-badge.is-hidden {
	display: none;
}

.tp-shell-messages-layer .act-sheet {
	z-index: 210;
}

.tp-shell-messages-layer .nearby-note {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	font-family: "Barlow", sans-serif;
	font-size: 11px;
	color: #9ca3af;
	line-height: 1.4;
	padding: 2px 18px 8px;
	flex-shrink: 0;
}

.tp-shell-messages-layer .nearby-note-text {
	flex: 1;
	min-width: 0;
}

.tp-shell-messages-layer .nearby-clear {
	flex-shrink: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font-family: "Barlow", sans-serif;
	font-size: 11px;
	font-weight: 600;
	color: #a78bfa;
	cursor: pointer;
	white-space: nowrap;
	line-height: 1.4;
}

.tp-shell-messages-layer .nearby-clear:hover {
	color: #c4b5fd;
	text-decoration: underline;
}

.tp-shell-messages-layer .nearby-clear:disabled {
	opacity: 0.5;
	cursor: default;
	text-decoration: none;
}

.tp-shell-messages-layer .nearby-setup {
	margin: 8px 16px 12px;
	padding: 16px;
	border: 1px solid rgba(167, 139, 250, 0.28);
	border-radius: 12px;
	background: rgba(167, 139, 250, 0.08);
}

.tp-shell-messages-layer .nearby-setup-title {
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: #e6edf3;
	margin-bottom: 6px;
}

.tp-shell-messages-layer .nearby-setup-text {
	font-family: "Barlow", sans-serif;
	font-size: 12px;
	line-height: 1.45;
	color: #9ca3af;
	margin-bottom: 12px;
}

.tp-shell-messages-layer .nearby-setup-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border-radius: 8px;
	background: #7c3aed;
	color: #fff !important;
	font-family: "Barlow", sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none !important;
}

.tp-shell-messages-layer .nearby-setup-btn:hover {
	background: #6d28d9;
}

.tp-shell-messages-layer .sheet-back {
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	color: #e6edf3;
	cursor: pointer;
	padding: 4px;
	display: flex;
}

.tp-shell-messages-layer .sheet-back svg {
	width: 20px;
	height: 20px;
}

.tp-shell-messages-layer .act-item {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 16px;
	background: transparent;
	border: 0;
	cursor: pointer;
	text-align: left;
	transition: background 0.15s;
	color: inherit;
	font: inherit;
	box-sizing: border-box;
}

.tp-shell-messages-layer .act-item:hover {
	background: rgba(255, 255, 255, 0.03);
}

.tp-shell-messages-layer .act-item.unread {
	background: rgba(167, 139, 250, 0.05);
}

.tp-shell-messages-layer .act-av {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	flex-shrink: 0;
	background: linear-gradient(135deg, #1e2430, #2a3040);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	position: relative;
	overflow: visible;
}

.tp-shell-messages-layer .act-av img {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	object-fit: cover;
	display: block;
}

.tp-shell-messages-layer .act-av-badge {
	position: absolute;
	right: -2px;
	bottom: -2px;
	width: 19px;
	height: 19px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid #0d0f14;
}

.tp-shell-messages-layer .act-av-badge svg {
	width: 11px;
	height: 11px;
	color: #fff;
}

.tp-shell-messages-layer .act-av-badge.like { background: #f87171; }
.tp-shell-messages-layer .act-av-badge.follow { background: #56d98a; }
.tp-shell-messages-layer .act-av-badge.comment { background: #60a5fa; }
.tp-shell-messages-layer .act-av-badge.spot { background: #a78bfa; }
.tp-shell-messages-layer .act-av-badge.photo_approved { background: #34d399; }
.tp-shell-messages-layer .act-av-badge.photo_rejected { background: #f87171; }

.tp-shell-messages-layer .act-av.act-av--system {
	background: linear-gradient(145deg, #2a3140, #1a1f2a);
	color: #c9d1d9;
	/* Keep overflow visible so the approve/deny badge sits over the camera avatar. */
	overflow: visible;
}

.tp-shell-messages-layer .act-av-system {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	overflow: hidden;
}

.tp-shell-messages-layer .act-av-system svg {
	width: 22px;
	height: 22px;
	opacity: 0.92;
}

.tp-shell-messages-layer .act-item--photo .act-av-badge {
	right: -1px;
	bottom: -1px;
	z-index: 2;
}

.tp-shell-messages-layer .act-item--photo .act-text {
	font-weight: 600;
}

.tp-shell-messages-layer .act-body {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 3px;
}

.tp-shell-messages-layer .act-text {
	display: block;
	font-family: "Barlow", sans-serif;
	font-size: 13px;
	color: #e6edf3;
	line-height: 1.4;
}

.tp-shell-messages-layer .act-text b {
	font-weight: 700;
}

.tp-shell-messages-layer .act-time {
	display: block;
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: #9ca3af;
	letter-spacing: 0.3px;
}

.tp-shell-messages-layer .act-thumb {
	width: 42px;
	height: 42px;
	border-radius: 8px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	background: linear-gradient(135deg, #161a22, #242018);
	overflow: hidden;
}

.tp-shell-messages-layer .act-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tp-shell-messages-layer .act-item .act-follow {
	appearance: none;
	-webkit-appearance: none;
	flex: 0 0 auto;
	margin-left: auto;
	align-self: center;
	padding: 6px 14px;
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: transparent;
	color: var(--tp-shell-text, #e6edf3);
	font-family: Montserrat, sans-serif;
	font-size: 11px;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.15s ease;
	white-space: nowrap;
	line-height: 1;
	box-shadow: none;
}

.tp-shell-messages-layer .act-item .act-follow:hover {
	background: rgba(255, 255, 255, 0.06);
}

.tp-shell-messages-layer .act-item .act-follow.following {
	background: rgba(255, 255, 255, 0.06);
	color: var(--tp-shell-muted, #9ca3af);
	border-color: var(--tp-shell-border, rgba(255, 255, 255, 0.12));
}

.tp-shell-messages-layer .act-item .act-follow.friends,
.tp-shell-messages-layer .act-item .act-follow.act-message {
	background: rgba(255, 255, 255, 0.06);
	color: var(--tp-shell-text, #e6edf3);
	border-color: rgba(255, 255, 255, 0.15);
}

.tp-shell-messages-layer .act-item .act-follow.act-message:hover {
	background: rgba(255, 255, 255, 0.1);
}

.tp-shell-messages-layer .act-new {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	align-self: center;
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	font-weight: 700;
	color: #56d98a;
	border: 1px solid rgba(86, 217, 138, 0.4);
	border-radius: 5px;
	padding: 2px 6px;
}

.tp-shell-messages-layer .inbox-list {
	flex: 1;
	overflow-y: auto;
	padding: 6px 0 16px;
	scrollbar-width: none;
}

.tp-shell-messages-layer .inbox-list::-webkit-scrollbar,
.tp-shell-messages-layer .msg-thread::-webkit-scrollbar,
.tp-shell-messages-layer .share-friends::-webkit-scrollbar {
	display: none;
}

.tp-shell-messages-layer .inbox-row {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 16px;
	background: transparent;
	border: 0;
	cursor: pointer;
	text-align: left;
}

.tp-shell-messages-layer .inbox-row:hover {
	background: rgba(255, 255, 255, 0.03);
}

.tp-shell-messages-layer .inbox-av {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	flex-shrink: 0;
	background: linear-gradient(135deg, #1e2430, #2a3040);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	font-size: 13px;
	font-weight: 700;
	color: #e6edf3;
	font-family: "Montserrat", sans-serif;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.tp-shell-messages-layer .inbox-av img,
.tp-shell-messages-layer .msg-av img,
.tp-shell-messages-layer .share-friend-av img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tp-shell-messages-layer .inbox-info {
	flex: 1;
	min-width: 0;
}

.tp-shell-messages-layer .inbox-name {
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	display: flex;
	align-items: center;
	gap: 6px;
}

.tp-shell-msg-friend-pill {
	display: inline-flex;
	align-items: center;
	padding: 2px 6px;
	border-radius: 999px;
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	letter-spacing: 0.2px;
	color: #0d0f14;
	background: #a78bfa;
}

.tp-shell-messages-layer .inbox-preview {
	font-family: "Barlow", sans-serif;
	font-size: 11px;
	color: #9ca3af;
	margin-top: 2px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: block;
	max-width: 240px;
}

.tp-shell-messages-layer .inbox-row.unread .inbox-preview {
	color: #fff;
	font-weight: 600;
}

.tp-shell-messages-layer .inbox-meta {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 5px;
	flex-shrink: 0;
}

.tp-shell-messages-layer .inbox-time {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: #9ca3af;
}

.tp-shell-messages-layer .inbox-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #a78bfa;
}

.tp-shell-messages-layer .inbox-dot.hidden {
	visibility: hidden;
}

.tp-shell-messages-layer .msg-header {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 6px 16px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	flex-shrink: 0;
}

/* Override older profile sheet sizing rules so shell messages fill full height. */
body.tp-shell-profile-layout .tp-shell-messages-layer .inbox-sheet,
body.tp-shell-profile-layout .tp-shell-messages-layer .msg-sheet {
	position: absolute !important;
	top: calc(var(--tp-shell-top-h) + env(safe-area-inset-top, 0px)) !important;
	right: 0 !important;
	left: 0 !important;
	bottom: 0 !important;
	height: auto !important;
	border-radius: 0 !important;
}

.tp-shell-messages-layer .msg-back {
	background: none;
	border: 0;
	color: #fff;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	padding: 0 2px 0 0;
	display: none;
}

.tp-shell-messages-layer .msg-back.show {
	display: block;
}

.tp-shell-messages-layer .msg-user-link {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 1;
	min-width: 0;
	text-decoration: none;
	color: inherit;
	border-radius: 8px;
	margin: 0;
	padding: 2px 4px 2px 0;
	cursor: pointer;
}

.tp-shell-messages-layer .msg-user-link:hover .msg-name {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.tp-shell-messages-layer .msg-user-link.is-disabled {
	pointer-events: none;
	cursor: default;
}

.tp-shell-messages-layer .msg-av {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: linear-gradient(135deg, #2a2f3a, #3d4450);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	font-family: "Montserrat", sans-serif;
	overflow: hidden;
	flex-shrink: 0;
}

.tp-shell-messages-layer .msg-title-wrap {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
}

.tp-shell-messages-layer .msg-name {
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tp-shell-messages-layer .msg-handle-sub {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: #9ca3af;
	margin-top: 1px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tp-shell-messages-layer .msg-close {
	background: none;
	border: 0;
	color: #9ca3af;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	padding: 0 4px;
}

.tp-shell-messages-layer .msg-thread {
	flex: 1;
	overflow-y: auto;
	padding: 14px 14px 8px;
	display: flex;
	flex-direction: column;
	gap: 7px;
	scrollbar-width: none;
}

.tp-shell-messages-layer .msg-row {
	display: flex;
	align-items: flex-end;
	gap: 0;
	max-width: 80%;
}

.tp-shell-messages-layer .msg-bubble-wrap {
	display: flex;
	flex-direction: column;
	transition: transform 0.18s ease;
}

.tp-shell-messages-layer .msg-row.me {
	align-self: flex-end;
}

.tp-shell-messages-layer .msg-row.them {
	align-self: flex-start;
}

.tp-shell-messages-layer .msg-day-sep {
	display: flex;
	justify-content: center;
	margin: 6px 0 2px;
}

.tp-shell-messages-layer .msg-day-sep > span {
	padding: 3px 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: #9ca3af;
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	letter-spacing: 0.3px;
}

.tp-shell-messages-layer .msg-bubble {
	padding: 9px 13px;
	border-radius: 16px;
	font-family: "Barlow", sans-serif;
	font-size: 13px;
	line-height: 1.4;
	word-break: break-word;
}

.tp-shell-messages-layer .msg-row.them .msg-bubble {
	background: #1c2128;
	color: #fff;
	border-bottom-left-radius: 5px;
}

.tp-shell-messages-layer .msg-row.me .msg-bubble {
	background: #a78bfa;
	color: #0d0f14;
	font-weight: 600;
	border-bottom-right-radius: 5px;
}

.tp-shell-messages-layer .msg-time {
	margin: 0 0 4px 0;
	width: 0;
	opacity: 0;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: clip;
	color: #8b949e;
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	line-height: 1;
	text-align: right;
	transition: width 0.18s ease, opacity 0.18s ease, margin-left 0.18s ease;
	display: none;
}

.tp-shell-messages-layer .msg-row.me .msg-time {
	text-align: left;
}

.tp-shell-messages-layer .msg-thread.tp-show-times .msg-time {
	display: block;
	width: 58px;
	margin-left: 6px;
	opacity: 0.95;
}

.tp-shell-messages-layer .msg-thread.tp-show-times .msg-bubble-wrap {
	transform: translateX(-10px);
}

.tp-shell-messages-layer .msg-card {
	width: min(260px, 72vw);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 16px;
	overflow: hidden;
	background: #12151b;
	cursor: pointer;
	text-decoration: none;
	display: block;
}

.tp-shell-messages-layer .msg-card-media {
	height: 128px;
	background: linear-gradient(135deg, #1a1428, #2a1f3d);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 42px;
	overflow: hidden;
	position: relative;
}

.tp-shell-messages-layer .msg-card-media-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tp-shell-messages-layer .msg-card.has-preview .msg-card-media {
	background: #0a0c10;
	height: 148px;
}

.tp-shell-messages-layer .msg-card.is-locked {
	opacity: 0.85;
	pointer-events: none;
}

.tp-shell-messages-layer .msg-card-body {
	padding: 10px 12px 12px;
}

.tp-shell-messages-layer .msg-card-title {
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tp-shell-messages-layer .msg-card-sub {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: #a78bfa;
	margin-top: 4px;
	letter-spacing: 0.8px;
}

.tp-shell-messages-layer .msg-composer {
	flex-shrink: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	background: #0d0f14;
}

.tp-shell-messages-layer .msg-attach-preview {
	display: flex;
	gap: 8px;
	padding: 10px 12px 0;
	overflow-x: auto;
	scrollbar-width: none;
}

.tp-shell-messages-layer .msg-attach-preview[hidden] {
	display: none !important;
}

.tp-shell-messages-layer .msg-attach-preview::-webkit-scrollbar {
	display: none;
}

.tp-shell-messages-layer .msg-attach-thumb {
	position: relative;
	width: 56px;
	height: 56px;
	border-radius: 10px;
	overflow: hidden;
	flex-shrink: 0;
	background: #1c2128;
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.tp-shell-messages-layer .msg-attach-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tp-shell-messages-layer .msg-attach-remove {
	position: absolute;
	top: 3px;
	right: 3px;
	width: 18px;
	height: 18px;
	border: 0;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.72);
	color: #fff;
	font-size: 12px;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.tp-shell-messages-layer .msg-input-row {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	flex-shrink: 0;
}

.tp-shell-messages-layer .msg-input {
	flex: 1;
	min-width: 0;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 20px;
	padding: 9px 14px;
	color: #fff;
	font-family: "Barlow", sans-serif;
	font-size: 13px;
	outline: none;
}

.tp-shell-messages-layer .msg-input::placeholder {
	color: #9ca3af;
}

.tp-shell-messages-layer .msg-media {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.06);
	border: 0;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: #fff;
	transition: background 0.15s ease;
}

.tp-shell-messages-layer .msg-media:hover {
	background: rgba(255, 255, 255, 0.12);
}

.tp-shell-messages-layer .msg-media:disabled {
	opacity: 0.55;
	cursor: default;
}

.tp-shell-messages-layer .msg-media svg {
	width: 19px;
	height: 19px;
}

.tp-shell-messages-layer .msg-send {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #a78bfa;
	border: 0;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: #0d0f14;
}

.tp-shell-messages-layer .msg-send:disabled {
	opacity: 0.6;
	cursor: default;
}

.tp-shell-messages-layer .msg-send svg {
	width: 16px;
	height: 16px;
}

.tp-shell-messages-layer .msg-bubble.has-media {
	padding: 0;
	overflow: visible;
	background: transparent !important;
}

.tp-shell-messages-layer .msg-bubble-text + .msg-bubble-media {
	margin-top: 6px;
}

.tp-shell-messages-layer .msg-bubble.has-media .msg-bubble-text {
	padding: 9px 13px;
	border-radius: 16px;
	display: inline-block;
	max-width: 100%;
}

.tp-shell-messages-layer .msg-row.me .msg-bubble.has-media .msg-bubble-text {
	background: #a78bfa;
	color: #0d0f14;
	border-bottom-right-radius: 5px;
}

.tp-shell-messages-layer .msg-row.them .msg-bubble.has-media .msg-bubble-text {
	background: #1c2128;
	color: #fff;
	border-bottom-left-radius: 5px;
}

.tp-shell-messages-layer .msg-bubble-media {
	display: grid;
	gap: 4px;
}

.tp-shell-messages-layer .msg-bubble-media.count-1 {
	grid-template-columns: 1fr;
}

.tp-shell-messages-layer .msg-bubble-media.count-2,
.tp-shell-messages-layer .msg-bubble-media.count-4 {
	grid-template-columns: 1fr 1fr;
}

.tp-shell-messages-layer .msg-bubble-media.count-3,
.tp-shell-messages-layer .msg-bubble-media.count-5 {
	grid-template-columns: 1fr 1fr;
}

.tp-shell-messages-layer .msg-bubble-media img {
	width: 100%;
	max-width: 240px;
	aspect-ratio: 1;
	object-fit: cover;
	border-radius: 14px;
	display: block;
	background: #1c2128;
	cursor: pointer;
	border: 0;
	outline: 0;
	box-shadow: none;
}

.tp-shell-messages-layer .msg-bubble-media.count-1 img {
	aspect-ratio: 4 / 3;
	max-width: 260px;
}

.tp-shell-messages-layer .msg-lightbox {
	position: absolute;
	inset: 0;
	z-index: 260;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px 16px;
	background: rgba(0, 0, 0, 0.88);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}

.tp-shell-messages-layer .msg-lightbox[hidden] {
	display: none !important;
}

.tp-shell-messages-layer .msg-lightbox.open {
	display: flex;
}

.tp-shell-messages-layer .msg-lightbox img {
	max-width: min(920px, 100%);
	max-height: min(86vh, 100%);
	width: auto;
	height: auto;
	object-fit: contain;
	border-radius: 10px;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.45);
}

.tp-shell-messages-layer .msg-lightbox-close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 36px;
	height: 36px;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.tp-shell-messages-layer .share-sheet {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	max-height: 86%;
	background: #0d0f14;
	border-radius: 18px 18px 0 0;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	z-index: 210;
	display: flex;
	flex-direction: column;
	transform: translateY(100%);
	transition: transform 0.34s cubic-bezier(0.32, 0.72, 0, 1);
	pointer-events: auto;
}

.tp-shell-messages-layer .share-sheet.open {
	transform: translateY(0);
}

.tp-shell-messages-layer .share-preview {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 10px 16px 4px;
	padding: 10px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.tp-shell-messages-layer .share-preview-ic {
	width: 40px;
	height: 40px;
	border-radius: 8px;
	background: linear-gradient(135deg, #1a1428, #2a1f3d);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	flex-shrink: 0;
	overflow: hidden;
}

.tp-shell-messages-layer .share-preview-ic.has-preview {
	background: #0a0c10;
}

.tp-shell-messages-layer .share-preview-ic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tp-shell-messages-layer .share-preview-name {
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
}

.tp-shell-messages-layer .share-preview-sub {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: #a78bfa;
	margin-top: 2px;
}

.tp-shell-messages-layer .share-section-label {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #9ca3af;
	padding: 8px 16px 2px;
}

.tp-shell-messages-layer .share-friends {
	display: flex;
	gap: 16px;
	padding: 8px 16px 10px;
	overflow-x: auto;
	scrollbar-width: none;
}

.tp-shell-messages-layer .share-friend {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	width: 54px;
	flex-shrink: 0;
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
}

.tp-shell-messages-layer .share-friend-av {
	position: relative;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: linear-gradient(135deg, #1e2430, #2a3040);
	border: 2px solid transparent;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 700;
	color: #e6edf3;
	font-family: "Montserrat", sans-serif;
	overflow: visible;
}

.tp-shell-messages-layer .share-friend.selected .share-friend-av {
	border-color: #a78bfa;
}

.tp-shell-messages-layer .share-friend-check {
	position: absolute;
	right: -2px;
	bottom: -2px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #a78bfa;
	border: 2px solid #0d0f14;
	display: none;
	align-items: center;
	justify-content: center;
}

.tp-shell-messages-layer .share-friend.selected .share-friend-check {
	display: inline-flex;
}

.tp-shell-messages-layer .share-friend-check svg {
	width: 10px;
	height: 10px;
	color: #0d0f14;
}

.tp-shell-messages-layer .share-friend-av > img {
	border-radius: 50%;
}

.tp-shell-messages-layer .share-friend-name {
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	color: #9ca3af;
	max-width: 58px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: center;
}

.tp-shell-messages-layer .share-ext {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	scrollbar-width: none;
	padding: 12px 16px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.tp-shell-messages-layer .share-ext::-webkit-scrollbar {
	display: none;
}

.tp-shell-messages-layer .share-ext-item {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	flex-shrink: 0;
}

.tp-shell-messages-layer .share-ext-ic {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}

.tp-shell-messages-layer .share-ext-item:hover .share-ext-ic {
	background: rgba(255, 255, 255, 0.1);
}

.tp-shell-messages-layer .share-ext-ic svg {
	width: 20px;
	height: 20px;
}

.tp-shell-messages-layer .share-ext-label {
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	color: #9ca3af;
}

.tp-shell-messages-layer .share-send-bar {
	padding: 10px 16px 16px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.tp-shell-messages-layer .share-send-btn {
	width: 100%;
	padding: 11px 0;
	border-radius: 10px;
	border: 0;
	cursor: pointer;
	background: #a78bfa;
	color: #0d0f14;
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 800;
	opacity: 0.4;
	pointer-events: none;
}

.tp-shell-messages-layer .share-send-btn.active {
	opacity: 1;
	pointer-events: auto;
}

.tp-shell-messages-layer .share-toast {
	position: absolute;
	left: 50%;
	bottom: 96px;
	transform: translateX(-50%) translateY(10px);
	background: rgba(20, 24, 30, 0.96);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	font-weight: 700;
	padding: 10px 18px;
	border-radius: 10px;
	opacity: 0;
	pointer-events: none;
	transition: all 0.25s;
	white-space: nowrap;
	z-index: 220;
}

.tp-shell-messages-layer .share-toast.show {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

.tp-shell-msg-empty,
.tp-shell-msg-empty-inline {
	color: #9ca3af;
	font-family: "JetBrains Mono", monospace;
	font-size: 11px;
	padding: 26px 16px;
	text-align: center;
}

.tp-shell-messages-layer .msg-empty2 {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: #9ca3af;
}

.tp-shell-messages-layer .msg-empty-text {
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	line-height: 1.6;
	text-align: center;
}

.tp-shell-messages-layer.is-page .inbox-backdrop.open,
.tp-shell-messages-layer.is-page .msg-backdrop.open {
	background: #0d0f14;
}

.tp-shell-messages-layer[aria-hidden="true"] .inbox-backdrop,
.tp-shell-messages-layer[aria-hidden="true"] .msg-backdrop,
.tp-shell-messages-layer[aria-hidden="true"] .share-backdrop,
.tp-shell-messages-layer[aria-hidden="true"] .inbox-sheet,
.tp-shell-messages-layer[aria-hidden="true"] .msg-sheet,
.tp-shell-messages-layer[aria-hidden="true"] .share-sheet {
	display: none !important;
}

/* Keep message surfaces full-height without footer distractions. */
body.bp-messages footer,
body.bp-messages #footer,
body.bp-messages .site-footer,
body.bp-messages .footer,
body.bp-messages .youzify-footer,
body.tp-shell-messages-open footer,
body.tp-shell-messages-open #footer,
body.tp-shell-messages-open .site-footer,
body.tp-shell-messages-open .footer,
body.tp-shell-messages-open .youzify-footer {
	display: none !important;
}

/* Messages route: hide native BP/Youzify UI under shell layer. */
body.tp-shell-nav-active.bp-messages .youzify-page-main-content > .youzify,
body.tp-shell-nav-active.bp-messages #item-header,
body.tp-shell-nav-active.bp-messages #item-nav,
body.tp-shell-nav-active.bp-messages #subnav,
body.tp-shell-nav-active.bp-messages #message,
body.tp-shell-nav-active.bp-messages #messages-bulk-management,
body.tp-shell-nav-active.bp-messages #message-thread,
body.tp-shell-nav-active.bp-messages #message-threads {
	display: none !important;
}

body.tp-shell-messages-page .youzify-page-main-content > .youzify,
body.tp-shell-messages-page #item-header,
body.tp-shell-messages-page #item-nav,
body.tp-shell-messages-page #subnav,
body.tp-shell-messages-page #message,
body.tp-shell-messages-page #messages-bulk-management,
body.tp-shell-messages-page #message-thread,
body.tp-shell-messages-page #message-threads {
	display: none !important;
}

body.tp-shell-messages-page .youzify-page-main-content > * {
	display: none !important;
}

body.tp-shell-messages-page .youzify-page-main-content {
	min-height: calc(100vh - var(--tp-shell-top-h)) !important;
}

@media (min-width: 992px) {
	/* Desktop messages route: force shell inbox as centered popup. */
	body.tp-shell-messages-page .tp-shell-messages-layer {
		position: fixed !important;
		inset: 0 !important;
		z-index: 220 !important;
	}

	body.tp-shell-messages-page .tp-shell-messages-layer .inbox-backdrop.open,
	body.tp-shell-messages-page .tp-shell-messages-layer .msg-backdrop.open,
	body.tp-shell-messages-page .tp-shell-messages-layer .share-backdrop.open {
		background: rgba(0, 0, 0, 0.55) !important;
	}

	body.tp-shell-messages-page .tp-shell-messages-layer .inbox-sheet,
	body.tp-shell-messages-page .tp-shell-messages-layer .msg-sheet,
	body.tp-shell-messages-page .tp-shell-messages-layer .share-sheet {
		top: 78px !important;
		bottom: 56px !important;
		left: 50% !important;
		right: auto !important;
		width: min(620px, calc(100vw - 120px)) !important;
		height: auto !important;
		transform: translate(-50%, 12px) !important;
		border-radius: 16px !important;
		border: 1px solid rgba(255, 255, 255, 0.1) !important;
		overflow: hidden !important;
		box-shadow: 0 24px 70px rgba(0, 0, 0, 0.55) !important;
	}

	body.tp-shell-messages-page .tp-shell-messages-layer .inbox-sheet.open,
	body.tp-shell-messages-page .tp-shell-messages-layer .msg-sheet.open,
	body.tp-shell-messages-page .tp-shell-messages-layer .share-sheet.open {
		transform: translate(-50%, 0) !important;
	}

	/* Profile followers/following (+ profile message) sheet: same centered width as Messages. */
	body.tp-shell-profile-layout .conn-sheet,
	body.tp-shell-profile-layout .msg-sheet {
		top: 78px !important;
		bottom: 56px !important;
		left: 50% !important;
		right: auto !important;
		width: min(620px, calc(100vw - 120px)) !important;
		height: auto !important;
		max-height: calc(100vh - 134px) !important;
		transform: translate(-50%, 16px) !important;
		border-radius: 16px !important;
		border: 1px solid rgba(255, 255, 255, 0.1) !important;
		overflow: hidden !important;
		box-shadow: 0 24px 70px rgba(0, 0, 0, 0.55) !important;
		opacity: 0;
		pointer-events: none;
		transition:
			transform 0.28s cubic-bezier(0.32, 0.72, 0, 1),
			opacity 0.2s ease;
	}

	body.tp-shell-profile-layout .conn-sheet.open,
	body.tp-shell-profile-layout .msg-sheet.open {
		transform: translate(-50%, 0) !important;
		opacity: 1;
		pointer-events: auto;
	}

	body.tp-shell-profile-layout .conn-backdrop.open,
	body.tp-shell-profile-layout .msg-backdrop.open {
		background: rgba(0, 0, 0, 0.55);
	}
}

/* Feed: suppress legacy Youzify social-share strips/popovers. */
body.tp-shell-feed-layout #youzify .youzify-social-share,
body.tp-shell-feed-layout #youzify .youzify-share-buttons,
body.tp-shell-feed-layout #youzify .youzify-share-links,
body.tp-shell-feed-layout #youzify .youzify-share-icons,
body.tp-shell-feed-layout #youzify .youzify-social-share-list,
body.tp-shell-feed-layout #youzify .youzify-social-share-items {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

/* Feed: hide BuddyPress repost Share (a.share-activity / #ashare-*). Keep rail paper-plane share. */
body.tp-shell-feed-layout #activity-stream a.share-activity:not(.youzify-social-share-activity):not(.tp-shell-action-share),
body.tp-shell-feed-layout #activity-stream .activity-meta > a.share-activity:not(.youzify-social-share-activity),
body.tp-shell-feed-layout #activity-stream .activity-meta > a.button.share-activity:not(.youzify-social-share-activity),
body.tp-shell-feed-layout #activity-stream .activity-meta > a.bp-primary-action.share-activity:not(.youzify-social-share-activity),
body.tp-shell-feed-layout #youzify #activity-stream .activity-meta > a.bp-primary-action.share-activity:not(.youzify-social-share-activity) {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	font-size: 0 !important;
}

/* Timezone row in profile settings */
.tp-tz-row {
	margin: 14px 0 0;
	padding: 12px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.03);
}

.tp-tz-head {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin-bottom: 10px;
}

.tp-tz-title {
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
}

.tp-tz-sub {
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	color: #9ca3af;
}

.tp-tz-controls {
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
}

.tp-tz-label {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #c9d1d9;
	font-family: "Barlow", sans-serif;
	font-size: 12px;
}

.tp-tz-select {
	width: 100%;
	padding: 8px 10px;
	border-radius: 9px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(0, 0, 0, 0.25);
	color: #fff;
	font-family: "Barlow", sans-serif;
	font-size: 12px;
}

.tp-tz-save {
	width: 110px;
	padding: 7px 10px;
	border: 0;
	border-radius: 9px;
	background: #a78bfa;
	color: #0d0f14;
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}

.tp-tz-msg {
	min-height: 14px;
	color: #9ca3af;
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
}

/* ===================== Settings Overhaul ===================== */
body.tp-shell-settings-layout {
	background: #0d0f14 !important;
}

body.tp-shell-settings-layout footer,
body.tp-shell-settings-layout #footer,
body.tp-shell-settings-layout .site-footer,
body.tp-shell-settings-layout .footer,
body.tp-shell-settings-layout .youzify-footer {
	display: none !important;
}

body.tp-shell-settings-layout .youzify {
	background: transparent !important;
}

body.tp-shell-settings-layout .youzify-page-main-content {
	background: transparent !important;
	max-width: 1240px !important;
	margin: 0 auto !important;
	padding: calc(var(--tp-shell-top-h) + 8px) 20px 96px !important;
	min-height: calc(100vh - var(--tp-shell-top-h)) !important;
}

body.tp-shell-settings-layout .tp-shell-settings-page-head {
	margin: 0 0 14px;
}

body.tp-shell-settings-layout .tp-shell-settings-page-title {
	font-family: "Barlow Condensed", "Montserrat", sans-serif;
	font-size: clamp(30px, 5vw, 44px);
	font-weight: 900;
	letter-spacing: -0.4px;
	line-height: 1;
	color: #e6edf3;
	text-transform: uppercase;
}

body.tp-shell-settings-layout .tp-shell-settings-page-sub {
	margin-top: 8px;
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	letter-spacing: 1.6px;
	text-transform: uppercase;
	color: #8b949e;
}

body.tp-shell-settings-layout .youzify-settings-area {
	display: grid !important;
	grid-template-columns: minmax(240px, 290px) minmax(0, 1fr);
	gap: 24px;
	align-items: start;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	overflow: visible !important;
	padding: 0 !important;
	border-radius: 0 !important;
}

body.tp-shell-settings-layout .youzify-settings-sidebar {
	position: sticky;
	top: calc(var(--tp-shell-top-h) + 14px);
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
}

body.tp-shell-settings-layout .tp-shell-settings-menu-native-hidden {
	display: none !important;
}

body.tp-shell-settings-layout .tp-shell-settings-sidebar-shell {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

body.tp-shell-settings-layout .tp-shell-settings-identity {
	display: flex;
	align-items: center;
	gap: 12px;
	background: #1b2029;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 14px;
	padding: 12px;
}

body.tp-shell-settings-layout .tp-shell-settings-identity-avatar {
	width: 44px;
	height: 44px;
	border-radius: 999px;
	overflow: hidden;
	flex-shrink: 0;
	background: rgba(255, 255, 255, 0.06);
}

body.tp-shell-settings-layout .tp-shell-settings-identity-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

body.tp-shell-settings-layout .tp-shell-settings-identity-name {
	font-family: "Montserrat", sans-serif;
	font-size: 18px;
	font-weight: 800;
	color: #e6edf3;
	line-height: 1.2;
}

body.tp-shell-settings-layout .tp-shell-settings-identity-sub {
	margin-top: 3px;
	font-family: "Barlow", sans-serif;
	font-size: 12px;
	color: #8b949e;
}

body.tp-shell-settings-layout .tp-shell-settings-menu-mock {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

body.tp-shell-settings-layout .nav-group {
	background: #161b22;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 14px;
	overflow: hidden;
}

body.tp-shell-settings-layout .group-head {
	width: 100%;
	border: 0;
	background: transparent;
	color: #e6edf3;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 13px 14px;
	cursor: pointer;
	text-align: left;
}

body.tp-shell-settings-layout .group-head:hover {
	background: #1c2128;
}

body.tp-shell-settings-layout .group-ic {
	width: 34px;
	height: 34px;
	border-radius: 9px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.045);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: #9ca3af;
	flex-shrink: 0;
}

body.tp-shell-settings-layout .group-ic svg {
	width: 16px;
	height: 16px;
}

body.tp-shell-settings-layout .group-txt {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
}

body.tp-shell-settings-layout .group-name {
	font-family: "Montserrat", sans-serif;
	font-weight: 800;
	font-size: 12.5px;
	color: #e6edf3;
}

body.tp-shell-settings-layout .group-desc {
	margin-top: 3px;
	font-family: "JetBrains Mono", monospace;
	font-size: 8.5px;
	color: #8b949e;
	letter-spacing: 0.3px;
}

body.tp-shell-settings-layout .group-arrow {
	color: #8b949e;
	transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

body.tp-shell-settings-layout .group-arrow svg {
	width: 14px;
	height: 14px;
}

body.tp-shell-settings-layout .nav-group.open .group-arrow {
	transform: rotate(180deg);
}

body.tp-shell-settings-layout .group-body {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.32s cubic-bezier(0.4, 0, 0.2, 1);
}

body.tp-shell-settings-layout .nav-group.open .group-body {
	max-height: 420px;
}

body.tp-shell-settings-layout .group-inner {
	padding: 2px 8px 10px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

body.tp-shell-settings-layout .nav-item {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 11px;
	padding: 9px 11px;
	margin-top: 4px;
	border-radius: 9px;
	color: #8b949e;
	text-decoration: none;
	position: relative;
	transition: all 0.16s;
}

body.tp-shell-settings-layout .nav-item:hover {
	background: rgba(255, 255, 255, 0.04);
	color: #e6edf3;
}

body.tp-shell-settings-layout .nav-item svg {
	width: 15px;
	height: 15px;
	flex-shrink: 0;
}

body.tp-shell-settings-layout .nav-item span {
	font-family: "Barlow", sans-serif;
	font-weight: 600;
	font-size: 13px;
	flex: 0 1 auto;
}

body.tp-shell-settings-layout .nav-item .nav-badge {
	margin-left: auto;
	padding: 2px 7px;
	border-radius: 999px;
	font-family: "JetBrains Mono", monospace;
	font-size: 9px;
	letter-spacing: 0.2px;
	background: rgba(167, 139, 250, 0.22);
	border: 1px solid rgba(167, 139, 250, 0.55);
	color: #c4b5fd;
}

body.tp-shell-settings-layout .nav-item .tp-shell-conn-ind {
	margin-left: 6px;
	display: inline-flex;
	align-items: center;
}

body.tp-shell-settings-layout .nav-item .tp-yz-sidebar-connections-brand {
	display: inline-flex;
	position: relative !important;
	align-items: center;
	justify-content: center;
	gap: 4px;
	width: 1.15em;
	height: 1em;
	padding: 0;
	line-height: 1;
}

body.tp-shell-settings-layout .nav-item .tp-yz-sidebar-connections-brand--trailing {
	margin-left: 0 !important;
}

body.tp-shell-settings-layout .nav-item .tp-yz-sidebar-connections-discord {
	font-size: 12px;
	color: #7aa2ff;
}

body.tp-shell-settings-layout .nav-item .tp-yz-sidebar-connections-dot {
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: #22c55e;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.15);
}

body.tp-shell-settings-layout .nav-item .tp-yz-sidebar-connections-dot--off {
	background: #ef4444;
}

body.tp-shell-settings-layout.tp-shell-connections-page .tp-di-discord-youzify__head {
	display: none !important;
}

body.tp-shell-settings-layout.tp-shell-connections-page .tp-di-discord-youzify__title-text,
body.tp-shell-settings-layout.tp-shell-connections-page #tp-di-discord-social-mount h2,
body.tp-shell-settings-layout.tp-shell-connections-page #tp-di-discord-social-mount .option-title {
	display: none !important;
}

body.tp-shell-settings-layout .nav-item.active {
	background: rgba(255, 255, 255, 0.07);
	color: #e6edf3;
}

body.tp-shell-settings-layout .nav-item.active span {
	font-weight: 700;
}

body.tp-shell-settings-layout .nav-item.active::before {
	content: "";
	position: absolute;
	left: 0;
	top: 8px;
	bottom: 8px;
	width: 2px;
	border-radius: 2px;
	background: #a78bfa;
}

body.tp-shell-settings-layout .nav-item.danger {
	color: #f87171;
}

body.tp-shell-settings-layout .nav-item.danger.active::before {
	background: #f87171;
}

body.tp-shell-settings-layout .youzify-account-settings-menu,
body.tp-shell-settings-layout .tp-shell-settings-menu {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.tp-shell-settings-layout .tp-shell-settings-nav-link,
body.tp-shell-settings-layout .youzify-account-settings-menu li a {
	display: flex !important;
	align-items: center;
	gap: 10px;
	padding: 10px !important;
	margin: 0 0 6px !important;
	border-radius: 10px;
	text-decoration: none !important;
	color: #9ba4af !important;
	background: transparent !important;
	border: 1px solid transparent !important;
}

body.tp-shell-settings-layout .tp-shell-settings-nav-link:hover,
body.tp-shell-settings-layout .youzify-account-settings-menu li a:hover {
	color: #e6edf3 !important;
	background: rgba(255, 255, 255, 0.04) !important;
	border-color: rgba(255, 255, 255, 0.08) !important;
}

body.tp-shell-settings-layout .tp-shell-settings-nav-icon {
	width: 34px;
	height: 34px;
	border-radius: 9px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.08);
	color: #c9d1d9;
	flex-shrink: 0;
}

body.tp-shell-settings-layout .tp-shell-settings-nav-icon svg {
	width: 16px;
	height: 16px;
}

body.tp-shell-settings-layout .tp-shell-settings-nav-text {
	display: inline-flex;
	flex-direction: column;
	min-width: 0;
	gap: 2px;
}

body.tp-shell-settings-layout .tp-shell-settings-nav-label {
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	font-weight: 700;
	color: inherit;
}

body.tp-shell-settings-layout .tp-shell-settings-nav-sub {
	font-family: "JetBrains Mono", monospace;
	font-size: 8px;
	letter-spacing: 0.4px;
	opacity: 0.78;
}

body.tp-shell-settings-layout .tp-shell-settings-nav-arrow {
	margin-left: auto;
	color: #7f8a97;
}

body.tp-shell-settings-layout .tp-shell-settings-nav-arrow svg {
	width: 14px;
	height: 14px;
}

body.tp-shell-settings-layout .youzify-account-settings-menu li.current a,
body.tp-shell-settings-layout .youzify-account-settings-menu li.active a,
body.tp-shell-settings-layout .youzify-account-settings-menu .youzify-active a {
	color: #fff !important;
	background: rgba(255, 255, 255, 0.08) !important;
	border-color: rgba(255, 255, 255, 0.14) !important;
}

body.tp-shell-settings-layout .youzify-settings-main-content,
body.tp-shell-settings-layout .tp-shell-settings-main {
	background: #161b22 !important;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 16px;
	padding: 0 22px 22px !important;
	overflow: hidden;
}

/* Route uses .youzify-main-content.settings-main-content wrapper */
body.tp-shell-settings-layout .youzify-main-content.settings-main-content {
	background: #161b22 !important;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 16px;
	overflow: hidden;
	margin-top: 20px !important;
	position: relative !important;
	top: auto !important;
	transform: none !important;
	clear: both !important;
}

body.tp-shell-settings-layout .youzify-main-content.settings-main-content > .youzify-inner-content.settings-inner-content {
	padding: 0 22px 22px !important;
}

body.tp-shell-settings-layout .tp-shell-settings-panel-head {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 20px 2px 14px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	margin-bottom: 8px;
}

body.tp-shell-settings-layout .tp-shell-settings-panel-ic {
	width: 42px;
	height: 42px;
	border-radius: 11px;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.045);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: #e6edf3;
}

body.tp-shell-settings-layout .tp-shell-settings-panel-ic svg {
	width: 20px;
	height: 20px;
}

body.tp-shell-settings-layout .tp-shell-settings-panel-text {
	min-width: 0;
}

body.tp-shell-settings-layout .tp-shell-settings-legacy-hidden {
	display: none !important;
}

/* Hide legacy Youzify section title/action strip (e.g. "Email & Password" + Save) */
body.tp-shell-settings-layout .youzify-main-content.settings-main-content > .youzify-inner-content.settings-inner-content > .options-section-title,
body.tp-shell-settings-layout .youzify-settings-main-content > .options-section-title,
body.tp-shell-settings-layout .youzify-settings-main-content > .options-section-title {
	display: none !important;
}

/* If plugin renders save controls inside its title bar, hide those too. */
body.tp-shell-settings-layout .options-section-title .youzify-settings-actions,
body.tp-shell-settings-layout .options-section-title .youzify-account-form-actions,
body.tp-shell-settings-layout .options-section-title .submit,
body.tp-shell-settings-layout .options-section-title input[type="submit"],
body.tp-shell-settings-layout .options-section-title button[type="submit"] {
	display: none !important;
}

/* Top native header/actions inside settings form */
body.tp-shell-settings-layout .youzify-settings-form > .options-section-title,
body.tp-shell-settings-layout .youzify-settings-form > .youzify-account-form-actions {
	display: none !important;
}

body.tp-shell-settings-layout .tp-shell-settings-panel-title {
	font-family: "Barlow Condensed", "Montserrat", sans-serif;
	font-size: clamp(24px, 4vw, 32px);
	line-height: 1;
	letter-spacing: 0.2px;
	text-transform: uppercase;
	color: #e6edf3;
	font-weight: 900;
}

body.tp-shell-settings-layout .tp-shell-settings-panel-desc {
	margin-top: 8px;
	font-family: "JetBrains Mono", monospace;
	font-size: 10px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #8b949e;
}

/* Flatten nested card chrome inside desktop settings content. */
body.tp-shell-settings-layout .tp-shell-settings-main,
body.tp-shell-settings-layout .youzify-settings-main-content {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

body.tp-shell-settings-layout .tp-shell-settings-row,
body.tp-shell-settings-layout .editfield,
body.tp-shell-settings-layout .youzify-settings-item,
body.tp-shell-settings-layout .youzify-field-item,
body.tp-shell-settings-layout .youzify-form-item {
	padding: 14px 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

/* Native Youzify settings field rows -> msg.html-like layout */
body.tp-shell-settings-layout .youzify-section-content.youzify-no-widgets {
	padding: 6px 0 8px !important;
	background: transparent !important;
	border: 0 !important;
}

body.tp-shell-settings-layout .youzify-section-content.youzify-no-widgets > .uk-option-item {
	display: grid !important;
	grid-template-columns: 1fr 1.15fr !important;
	gap: 26px !important;
	align-items: center !important;
	padding: 19px 0 !important;
	margin: 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	background: transparent !important;
}

body.tp-shell-settings-layout .youzify-section-content.youzify-no-widgets > .uk-option-item:last-of-type {
	border-bottom: 0 !important;
}

body.tp-shell-settings-layout .youzify-section-content .option-infos {
	min-width: 0;
}

body.tp-shell-settings-layout .youzify-section-content .option-title {
	display: block !important;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 800 !important;
	font-size: 13px !important;
	line-height: 1.3 !important;
	color: #e6edf3 !important;
	margin: 0 !important;
}

body.tp-shell-settings-layout .youzify-section-content .option-desc {
	margin-top: 5px !important;
	font-family: "Barlow", sans-serif !important;
	font-size: 12px !important;
	line-height: 1.5 !important;
	color: #8b949e !important;
}

body.tp-shell-settings-layout .youzify-section-content .option-content {
	width: 100% !important;
	margin: 0 !important;
}

body.tp-shell-settings-layout .youzify-section-content .option-content > input,
body.tp-shell-settings-layout .youzify-section-content .option-content > textarea,
body.tp-shell-settings-layout .youzify-section-content .option-content > select {
	width: 100% !important;
}

body.tp-shell-settings-layout .editfield label,
body.tp-shell-settings-layout .youzify-settings-item label,
body.tp-shell-settings-layout .youzify-field-item label,
body.tp-shell-settings-layout .youzify-form-item label {
	font-family: "Montserrat", sans-serif !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	color: #e6edf3 !important;
}

body.tp-shell-settings-layout .editfield p,
body.tp-shell-settings-layout .youzify-settings-item p,
body.tp-shell-settings-layout .youzify-field-item p,
body.tp-shell-settings-layout .youzify-form-item p,
body.tp-shell-settings-layout .field-visibility-settings-notoggle,
body.tp-shell-settings-layout .description {
	font-family: "Barlow", sans-serif !important;
	font-size: 12px !important;
	line-height: 1.5 !important;
	color: #8b949e !important;
}

body.tp-shell-settings-layout .tp-shell-settings-field,
body.tp-shell-settings-layout input[type="text"],
body.tp-shell-settings-layout input[type="email"],
body.tp-shell-settings-layout input[type="password"],
body.tp-shell-settings-layout input[type="number"],
body.tp-shell-settings-layout input[type="url"],
body.tp-shell-settings-layout textarea,
body.tp-shell-settings-layout select {
	width: 100%;
	background: #11151c !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 10px !important;
	color: #e6edf3 !important;
	padding: 11px 14px !important;
	font-family: "Barlow", sans-serif !important;
	font-size: 14px !important;
	outline: none;
	box-shadow: none !important;
}

body.tp-shell-settings-layout textarea {
	min-height: 92px;
	line-height: 1.55;
}

body.tp-shell-settings-layout select,
body.tp-shell-settings-layout .tp-shell-settings-field select,
body.tp-shell-settings-layout select.tp-shell-settings-field {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%238b949e' stroke-width='2'%3E%3Cpath d='M3 5l4 4 4-4'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 14px center !important;
	padding-right: 38px !important;
}

body.tp-shell-settings-layout .tp-shell-settings-field::placeholder,
body.tp-shell-settings-layout input::placeholder,
body.tp-shell-settings-layout textarea::placeholder {
	color: #6f7a86;
}

body.tp-shell-settings-layout .tp-shell-settings-field:focus,
body.tp-shell-settings-layout input:focus,
body.tp-shell-settings-layout textarea:focus,
body.tp-shell-settings-layout select:focus {
	border-color: rgba(255, 255, 255, 0.24) !important;
	background: #141922 !important;
}

body.tp-shell-settings-layout .tp-shell-settings-btn,
body.tp-shell-settings-layout input[type="submit"],
body.tp-shell-settings-layout button[type="submit"] {
	border: 0 !important;
	border-radius: 10px !important;
	padding: 10px 18px !important;
	background: #e6edf3 !important;
	color: #0d0f14 !important;
	font-family: "Montserrat", sans-serif !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: 0.2px;
	cursor: pointer;
}

body.tp-shell-settings-layout .tp-shell-right-rail {
	display: none !important;
}

body.tp-shell-map-page .tp-shell-right-rail {
	display: none !important;
}

/* Discover: hide desktop suggested rail — suggestions live in the main list (mobile parity). */
body.tp-shell-discover-layout .tp-shell-right-rail {
	display: none !important;
}

body.tp-shell-discover-layout.tp-shell-nav-active #page,
body.tp-shell-discover-layout.tp-shell-nav-active #content,
body.tp-shell-discover-layout.tp-shell-nav-active .youzify-page-main-content {
	padding-right: 0 !important;
}

@media (min-width: 768px) {
	body.tp-shell-discover-layout .tp-shell-discover-surface {
		max-width: 640px;
		margin: 0 auto;
		width: 100%;
	}
}

body.tp-shell-settings-layout .youzify-settings-actions,
body.tp-shell-settings-layout .youzify-account-form-actions {
	display: flex !important;
	justify-content: flex-end;
	align-items: center;
	padding-top: 14px !important;
	margin-top: 14px !important;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

body.tp-shell-settings-layout .submit {
	margin-top: 14px !important;
}

body.tp-shell-settings-layout .tp-tz-row {
	margin-top: 12px;
	border-color: rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.03);
}

@media (max-width: 940px) {
	body.tp-shell-settings-layout .youzify-page-main-content {
		padding-top: calc(var(--tp-shell-top-h) + 8px) !important;
		padding-left: 14px !important;
		padding-right: 14px !important;
	}
	body.tp-shell-settings-layout .youzify-settings-area {
		grid-template-columns: 1fr !important;
		gap: 24px;
	}
	body.tp-shell-settings-layout .youzify-settings-sidebar {
		position: static;
		margin-bottom: 12px;
	}
	body.tp-shell-settings-layout .youzify-main-content.settings-main-content {
		margin-top: 26px !important;
	}
	body.tp-shell-settings-layout .youzify-section-content.youzify-no-widgets > .uk-option-item {
		grid-template-columns: 1fr !important;
		gap: 11px !important;
		align-items: start !important;
	}
}

@media (min-width: 992px) {
	/* Final desktop authority block (wins over legacy fullscreen overrides). */
	body.tp-shell-feed-layout.tp-shell-nav-active #page,
	body.tp-shell-feed-layout.tp-shell-nav-active #content,
	body.tp-shell-feed-layout.tp-shell-nav-active .youzify-page-main-content {
		padding-left: 74px !important;
		padding-right: var(--tp-shell-right-w) !important;
		overflow: hidden !important;
	}

	body.tp-shell-feed-layout.tp-shell-nav-active #activity-stream,
	body.tp-shell-feed-layout.tp-shell-nav-active ul.activity-list {
		width: 620px !important;
		max-width: 620px !important;
		margin-left: auto !important;
		margin-right: auto !important;
		height: 100dvh !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
		scroll-snap-type: y mandatory !important;
		-webkit-overflow-scrolling: touch !important;
		scrollbar-width: none !important;
	}

	body.tp-shell-feed-layout.tp-shell-nav-active #activity-stream > li.tp-shell-ig-post.activity-item,
	body.tp-shell-feed-layout.tp-shell-nav-active ul.activity-list > li.tp-shell-ig-post.activity-item,
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post.activity-item,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post.activity-item {
		width: 620px !important;
		max-width: 620px !important;
		min-height: 100dvh !important;
		height: 100dvh !important;
		margin: 0 !important;
		padding: 0 !important;
		position: relative !important;
		scroll-snap-align: start !important;
		scroll-snap-stop: always !important;
		overflow: hidden !important;
	}

	body.tp-shell-feed-layout.tp-shell-mode-feed #page,
	body.tp-shell-feed-layout.tp-shell-mode-feed #content,
	body.tp-shell-feed-layout.tp-shell-mode-feed .youzify-page-main-content,
	body.tp-shell-feed-layout.tp-shell-mode-photos #page,
	body.tp-shell-feed-layout.tp-shell-mode-photos #content,
	body.tp-shell-feed-layout.tp-shell-mode-photos .youzify-page-main-content {
		max-width: none !important;
		width: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 74px !important;
		padding-right: var(--tp-shell-right-w) !important;
	}

	body.tp-shell-feed-layout .tp-shell-feed-filters {
		left: 74px !important;
		right: var(--tp-shell-right-w) !important;
		max-width: 620px !important;
		width: auto !important;
		margin-left: auto !important;
		margin-right: auto !important;
		transform: none !important;
		pointer-events: auto !important;
		z-index: 100300 !important;
	}

	body.tp-shell-feed-layout .tp-shell-feed-filters__tabs,
	body.tp-shell-feed-layout .tp-shell-feed-filters__tab {
		pointer-events: auto !important;
	}

	body.tp-shell-feed-layout .tp-shell-feed-logo {
		display: block !important;
		position: absolute !important;
		left: 10px !important;
		top: 1px !important;
		z-index: 3 !important;
	}

	/* Keep post info/comments width aligned to media stage */
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .activity-header,
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .activity-header,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .activity-header,
	body.tp-shell-feed-layout.tp-shell-feed-fullscreen #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
	body.tp-shell-feed-layout.tp-shell-mode-feed #activity-stream > li.tp-shell-ig-post .tp-shell-post-info,
	body.tp-shell-feed-layout.tp-shell-mode-photos #activity-stream > li.tp-shell-ig-post .tp-shell-post-info {
		left: 14px !important;
		right: 86px !important;
	}
}

/* Responsive shell contract (mockup parity): desktop/tablet starts at 768px. */
@media (min-width: 768px) {
	body.tp-shell-feed-layout .tp-shell-feed-filters {
		position: fixed !important;
		top: calc(env(safe-area-inset-top, 0px) + 18px) !important;
		left: 74px !important;
		right: var(--tp-shell-right-w) !important;
		width: auto !important;
		max-width: 620px !important;
		margin-left: auto !important;
		margin-right: auto !important;
		transform: none !important;
		pointer-events: auto !important;
		z-index: 100500 !important;
	}

	body.tp-shell-feed-layout .tp-shell-feed-filters__tabs,
	body.tp-shell-feed-layout .tp-shell-feed-filters__tab {
		pointer-events: auto !important;
		position: relative !important;
		z-index: 100501 !important;
	}

	body.tp-shell-feed-layout .tp-shell-feed-logo {
		left: 14px !important;
		right: auto !important;
		z-index: 100501 !important;
	}

	body.tp-shell-feed-layout .tp-shell-feed-plus {
		z-index: 100501 !important;
	}

	body.tp-shell-feed-layout #activity-stream {
		cursor: grab;
	}

	body.tp-shell-feed-layout #activity-stream.tp-stream-dragging {
		cursor: grabbing;
		user-select: none;
	}

	body.tp-shell-feed-layout #activity-stream > li.tp-feed-drag-active {
		will-change: transform;
		z-index: 2;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	:root {
		--tp-shell-right-w: 188px;
	}

	.tp-shell-right-rail {
		display: flex !important;
		flex-direction: column !important;
		position: fixed !important;
		top: calc(var(--tp-shell-top-h) + env(safe-area-inset-top, 0px)) !important;
		right: 0 !important;
		bottom: 0 !important;
		width: var(--tp-shell-right-w) !important;
		padding: 12px 10px 18px !important;
		background: var(--tp-shell-bg) !important;
		border-left: 1px solid rgba(255, 255, 255, 0.06) !important;
		z-index: 100030 !important;
		overflow-y: auto !important;
		box-sizing: border-box !important;
	}

	body.tp-shell-nav-active:not(.tp-shell-map-page):not(.tp-shell-settings-layout):not(.tp-shell-discover-layout) #page,
	body.tp-shell-nav-active:not(.tp-shell-map-page):not(.tp-shell-settings-layout):not(.tp-shell-discover-layout) #content,
	body.tp-shell-nav-active:not(.tp-shell-map-page):not(.tp-shell-settings-layout):not(.tp-shell-discover-layout) .youzify-page-main-content {
		padding-right: var(--tp-shell-right-w) !important;
	}
}

/* Keep profile stage the same size geometry as feed stage. */
@media (min-width: 768px) {
	body.tp-shell-profile-layout {
		--tp-shell-profile-frame-w: min(620px, calc(100vw - var(--tp-shell-rail-collapsed) - var(--tp-shell-right-w) - 24px));
	}

	body.tp-shell-profile-layout.tp-shell-nav-active #page,
	body.tp-shell-profile-layout.tp-shell-nav-active #content,
	body.tp-shell-profile-layout.tp-shell-nav-active .youzify-page-main-content {
		padding-left: var(--tp-shell-rail-collapsed) !important;
		padding-right: calc(var(--tp-shell-right-w) + 16px) !important;
		max-width: calc(var(--tp-shell-profile-frame-w) + var(--tp-shell-rail-collapsed) + var(--tp-shell-right-w) + 16px) !important;
		width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
		box-sizing: border-box !important;
		display: flex !important;
		justify-content: center !important;
	}

	body.tp-shell-profile-layout .youzify-left-sidebar-layout,
	body.tp-shell-profile-layout .youzify-right-sidebar-layout,
	body.tp-shell-profile-layout .youzify-main-column,
	body.tp-shell-profile-layout .tp-shell-profile-surface,
	body.tp-shell-profile-layout .profile-page {
		width: var(--tp-shell-profile-frame-w) !important;
		max-width: var(--tp-shell-profile-frame-w) !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	body.tp-shell-profile-layout .profile-cover {
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}
	/* Right rail empty state */
	.tp-shell-right-empty {
		padding: 10px 0;
		font-size: 12px;
		color: var(--tp-shell-muted);
	}

/* ===== Feed edit button + sheet (mockup parity) ===== */
body.tp-shell-feed-layout li.tp-shell-ig-post {
	position: relative;
}

/* Edit control: old glass pill, parked under Share on the right rail. */
body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-shell-feed-edit-btn,
body.tp-shell-feed-layout li.tp-shell-ig-post .tp-shell-feed-edit-btn {
	position: relative;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
	z-index: 12;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	min-width: 30px;
	padding: 0;
	/* Extra drop below Share. */
	margin: 22px 0 0 !important;
	order: 4 !important;
	flex: 0 0 auto !important;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	background: rgba(13, 15, 20, 0.5);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 8px;
	box-shadow: none;
	color: rgba(255, 255, 255, 0.85);
	transition: background 0.15s, color 0.15s;
	pointer-events: auto !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-shell-feed-edit-btn:hover,
body.tp-shell-feed-layout li.tp-shell-ig-post .tp-shell-feed-edit-btn:hover {
	background: rgba(13, 15, 20, 0.8);
	color: #fff;
	transform: none;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .tp-shell-feed-edit-btn svg {
	width: 14px;
	height: 14px;
	display: block;
	stroke: currentColor;
}

/* Fallback if meta rail isn't present yet — bottom-right, lowered. */
body.tp-shell-feed-layout li.tp-shell-ig-post > .tp-shell-feed-edit-btn {
	position: absolute;
	right: 10px;
	bottom: calc(12px + env(safe-area-inset-bottom, 0px));
	left: auto;
	margin: 0 !important;
}

body.tp-shell-feed-layout li.tp-shell-ig-post .activity-meta > .tp-shell-feed-edit-btn {
	position: relative !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;
}

.tp-shell-feed-edit-sheet {
	position: fixed;
	inset: 0;
	z-index: 100280;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px));
	box-sizing: border-box;
	background: rgba(6, 8, 12, 0.62);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	opacity: 0;
	transition: opacity 0.18s ease;
}

.tp-shell-feed-edit-sheet.is-open {
	opacity: 1;
}

.tp-shell-feed-edit-sheet[hidden] {
	display: none !important;
}

.tp-shell-feed-edit-sheet__panel {
	display: flex;
	flex-direction: column;
	width: min(420px, 100%);
	max-height: min(82vh, 720px);
	margin: 0 auto;
	background: #12151c;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 16px;
	box-shadow: 0 18px 48px rgba(0, 0, 0, 0.45);
	transform: translateY(14px) scale(0.98);
	transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	overflow: hidden;
}

.tp-shell-feed-edit-sheet.is-open .tp-shell-feed-edit-sheet__panel {
	transform: translateY(0) scale(1);
}

.tp-shell-feed-edit-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 16px 12px;
	border-bottom: 1px solid var(--tp-shell-border, rgba(255, 255, 255, 0.06));
	flex-shrink: 0;
}

.tp-shell-feed-edit-title {
	font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
	font-size: 21px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 0.3px;
	color: var(--tp-shell-text, #e6edf3);
}

.tp-shell-feed-edit-x {
	background: none;
	border: none;
	color: var(--tp-shell-muted, #8b949e);
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	padding: 0 4px;
}

.tp-shell-feed-edit-save {
	background: var(--tp-shell-accent, #a78bfa);
	border: none;
	color: #0d0f14;
	font-family: Montserrat, "Segoe UI", sans-serif;
	font-size: 12px;
	font-weight: 800;
	padding: 8px 16px;
	border-radius: 9px;
	cursor: pointer;
}

.tp-shell-feed-edit-save:disabled {
	opacity: 0.65;
	cursor: wait;
}

.tp-shell-feed-edit-body {
	flex: 1;
	overflow-y: auto;
	scrollbar-width: none;
	padding: 16px 16px 20px;
	-webkit-overflow-scrolling: touch;
}

.tp-shell-feed-edit-body::-webkit-scrollbar {
	display: none;
}

.tp-shell-feed-ef {
	margin-bottom: 18px;
}

.tp-shell-feed-ef-label {
	font-family: "JetBrains Mono", ui-monospace, monospace;
	font-size: 9px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var(--tp-shell-muted, #8b949e);
	margin-bottom: 7px;
	display: block;
}

.tp-shell-feed-ef input,
.tp-shell-feed-ef textarea,
.tp-shell-feed-ef select {
	width: 100%;
	box-sizing: border-box;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 10px;
	padding: 12px 13px;
	color: var(--tp-shell-text, #e6edf3);
	font-family: "TikTok Sans", Barlow, "Segoe UI", sans-serif;
	font-size: 14px;
	outline: none;
	transition: border-color 0.15s;
}

.tp-shell-feed-ef input:focus,
.tp-shell-feed-ef textarea:focus,
.tp-shell-feed-ef select:focus {
	border-color: rgba(167, 139, 250, 0.5);
}

.tp-shell-feed-ef textarea {
	resize: vertical;
	min-height: 80px;
	line-height: 1.45;
}

.tp-shell-feed-ef select {
	appearance: none;
	cursor: pointer;
}

.tp-shell-feed-ef-row {
	display: flex;
	gap: 10px;
}

.tp-shell-feed-ef-row .tp-shell-feed-ef {
	flex: 1;
	min-width: 0;
}

.tp-shell-feed-dd,
.tp-shell-feed-haz-picker {
	position: relative;
}

.tp-shell-feed-dd-trigger,
.tp-shell-feed-haz-trigger {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	box-sizing: border-box;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 10px;
	padding: 12px 13px;
	color: var(--tp-shell-text, #e6edf3);
	font-family: "TikTok Sans", Barlow, "Segoe UI", sans-serif;
	font-size: 14px;
	text-align: left;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s;
}

.tp-shell-feed-dd.is-open .tp-shell-feed-dd-trigger,
.tp-shell-feed-dd-trigger:hover,
.tp-shell-feed-dd-trigger:focus,
.tp-shell-feed-haz-picker.is-open .tp-shell-feed-haz-trigger,
.tp-shell-feed-haz-trigger:hover,
.tp-shell-feed-haz-trigger:focus {
	border-color: rgba(167, 139, 250, 0.5);
	outline: none;
}

.tp-shell-feed-dd-trigger-label,
.tp-shell-feed-haz-trigger-label {
	color: #e6edf3;
	flex: 1;
	min-width: 0;
}

.tp-shell-feed-dd-trigger-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--dd, #fbbf24);
	flex-shrink: 0;
	box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.08);
}

.tp-shell-feed-dd-trigger-chev,
.tp-shell-feed-haz-trigger-chev {
	color: var(--tp-shell-muted, #8b949e);
	font-size: 12px;
	line-height: 1;
}

.tp-shell-feed-dd-menu,
.tp-shell-feed-haz-menu {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + 6px);
	z-index: 6;
	max-height: min(42vh, 280px);
	overflow-y: auto;
	scrollbar-width: thin;
	background: #161b22;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 12px;
	box-shadow: 0 14px 36px rgba(0, 0, 0, 0.45);
	padding: 6px;
}

.tp-shell-feed-dd-menu[hidden],
.tp-shell-feed-haz-menu[hidden] {
	display: none !important;
}

.tp-shell-feed-dd-opt {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 9px 10px;
	margin: 0;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: #e6edf3;
	font-family: Barlow, "Segoe UI", sans-serif;
	font-size: 13.5px;
	font-weight: 600;
	text-align: left;
	cursor: pointer;
	transition: background 0.12s;
}

.tp-shell-feed-dd-opt .txt {
	flex: 1;
	min-width: 0;
}

.tp-shell-feed-dd-opt .check {
	opacity: 0;
	color: var(--dd, #a78bfa);
	font-size: 12px;
	font-weight: 800;
}

.tp-shell-feed-dd-opt .dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--dd, #8b949e);
	flex-shrink: 0;
}

.tp-shell-feed-dd-opt:hover,
.tp-shell-feed-dd-opt:focus {
	background: rgba(255, 255, 255, 0.06);
	outline: none;
}

.tp-shell-feed-dd-opt.is-selected {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	box-shadow: inset 3px 0 0 var(--dd, #a78bfa);
}

.tp-shell-feed-dd-opt.is-selected .check {
	opacity: 1;
}

.tp-shell-feed-haz-group + .tp-shell-feed-haz-group {
	margin-top: 4px;
	padding-top: 4px;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.tp-shell-feed-haz-group-label {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 10px 6px;
	font-family: "JetBrains Mono", ui-monospace, monospace;
	font-size: 9px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	font-weight: 700;
	color: var(--hd, #a78bfa);
}

.tp-shell-feed-haz-group-label .dot,
.tp-shell-feed-haz-opt .dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--hd, #8b949e);
	flex-shrink: 0;
	box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.08);
}

.tp-shell-feed-haz-opt {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 9px 10px;
	margin: 0;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: #e6edf3;
	font-family: Barlow, "Segoe UI", sans-serif;
	font-size: 13.5px;
	font-weight: 600;
	text-align: left;
	cursor: pointer;
	transition: background 0.12s;
}

.tp-shell-feed-haz-opt .txt {
	flex: 1;
	min-width: 0;
}

.tp-shell-feed-haz-opt .check {
	opacity: 0;
	color: var(--hd, #a78bfa);
	font-size: 12px;
	font-weight: 800;
}

.tp-shell-feed-haz-opt:hover,
.tp-shell-feed-haz-opt:focus {
	background: rgba(255, 255, 255, 0.06);
	outline: none;
}

.tp-shell-feed-haz-opt.is-selected {
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	box-shadow: inset 3px 0 0 var(--hd, #a78bfa);
}

.tp-shell-feed-haz-opt.is-selected .check {
	opacity: 1;
}

.tp-shell-feed-haz-group[data-cat="structural"] { --hd: #f87171; }
.tp-shell-feed-haz-group[data-cat="access"] { --hd: #a78bfa; }
.tp-shell-feed-haz-group[data-cat="security"] { --hd: #60a5fa; }
.tp-shell-feed-haz-group[data-cat="environmental"] { --hd: #56d98a; }
.tp-shell-feed-haz-group[data-cat="animals"] { --hd: #fbbf24; }

.tp-shell-feed-ehz-chosen {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 11px;
}

.tp-shell-feed-ehz-chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 6px 6px 11px;
	border-radius: 9px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.12);
	font-family: Barlow, "Segoe UI", sans-serif;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--tp-shell-text, #e6edf3);
}

.tp-shell-feed-ehz-chip .dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--hd, #8b949e);
	flex-shrink: 0;
}

.tp-shell-feed-ehz-chip .x {
	cursor: pointer;
	color: var(--tp-shell-muted, #8b949e);
	font-size: 16px;
	line-height: 1;
	padding: 0 3px;
	background: none;
	border: none;
	transition: color 0.13s;
}

.tp-shell-feed-ehz-chip .x:hover {
	color: var(--tp-shell-text, #e6edf3);
}

.tp-shell-feed-edit-photos {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.tp-shell-feed-edit-photo {
	position: relative;
	width: 72px;
	height: 72px;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.04);
	flex-shrink: 0;
}

.tp-shell-feed-edit-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.tp-shell-feed-edit-photo-rm {
	position: absolute;
	top: 4px;
	right: 4px;
	width: 22px;
	height: 22px;
	border-radius: 999px;
	border: none;
	padding: 0;
	background: rgba(13, 15, 20, 0.75);
	color: #fff;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
}

.tp-shell-feed-edit-add-photo {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 10px;
	padding: 10px 14px;
	border-radius: 10px;
	border: 1px dashed rgba(255, 255, 255, 0.22);
	background: rgba(255, 255, 255, 0.04);
	color: var(--tp-shell-text, #e6edf3);
	font-family: Montserrat, "Segoe UI", sans-serif;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}

.tp-shell-feed-edit-add-photo[hidden] {
	display: none !important;
}

.tp-shell-feed-edit-delete {
	width: 100%;
	margin-top: 6px;
	background: rgba(248, 113, 113, 0.1);
	border: 1px solid rgba(248, 113, 113, 0.35);
	color: #f87171;
	font-family: Montserrat, "Segoe UI", sans-serif;
	font-size: 13px;
	font-weight: 800;
	padding: 13px;
	border-radius: 11px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.tp-shell-feed-edit-delete:disabled {
	opacity: 0.65;
	cursor: wait;
}

.tp-shell-feed-edit-delete svg {
	width: 15px;
	height: 15px;
}

.tp-shell-feed-edit-msg {
	margin: 12px 0 0;
	font-size: 13px;
	color: var(--tp-shell-muted, #8b949e);
}

.tp-shell-feed-edit-msg.is-error {
	color: #f87171;
}

.tp-shell-feed-edit-toast {
	position: fixed;
	left: 50%;
	bottom: calc(var(--tp-shell-nav-h, 64px) + 24px);
	transform: translateX(-50%) translateY(12px);
	z-index: 100290;
	background: rgba(22, 27, 34, 0.95);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: var(--tp-shell-text, #e6edf3);
	font-family: Montserrat, "Segoe UI", sans-serif;
	font-size: 13px;
	font-weight: 700;
	padding: 10px 16px;
	border-radius: 12px;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.18s, transform 0.18s;
}

.tp-shell-feed-edit-toast.show {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

html.tp-shell-feed-edit-open,
body.tp-shell-feed-edit-open {
	overflow: hidden !important;
}
