/* LearnHive logged-in community: compact Nouveau overrides.
   Load after community.css and community-refinements.css. */
.lh-community-page {
--lh-community-indigo: #202044;
	--lh-community-indigo-soft: var(--lh-indigo-pale, #eeecff);
	--lh-community-ink: var(--lh-ink, #29283d);
	--lh-community-muted: var(--lh-muted, #686982);
	--lh-community-line: var(--lh-line, #e8e5dc);
	--lh-community-surface: var(--lh-cream, #FAF9F6);
}

/* Short inner-page masthead. The parent supplies the page-specific h1. */
.lh-community-titlebar {
--lh-community-line: #e8e5dc;
--lh-community-indigo-soft: #eeecff;
	padding: 18px 0 15px;
	border-bottom: 1px solid var(--lh-community-line);
	background: var(--lh-community-indigo-soft);
}
.lh-community-titlebar > .lh-wrap {
	width: min(1120px, calc(100% - 48px));
	margin-inline: auto;
}
.lh-community-titlebar h1 {
	max-width: 100%;
	margin: 0;
	color: var(--lh-navy, #202044);
	font-family: var(--lh-font-display, Georgia, serif);
	font-size: clamp(1.45rem, 2.4vw, 1.9rem);
	font-weight: 700;
	line-height: 1.2;
	overflow-wrap: anywhere;
}

/* Member directory: a true short card, with avatar, identity and action aligned. */
.lh-community-page #buddypress ul#members-list,
.lh-community-page #buddypress .members-list,
.lh-community-page .bp-wrap ul#members-list,
.lh-community-page .bp-wrap .members-list {
grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
align-items: start;
	gap: 10px;
}
.lh-community-page #buddypress ul#members-list > li,
.lh-community-page #buddypress .members-list > li,
.lh-community-page .bp-wrap ul#members-list > li,
.lh-community-page .bp-wrap .members-list > li {
	height: auto;
	min-height: 0;
	padding: 12px;
}
.lh-community-page #buddypress ul#members-list .list-wrap,
.lh-community-page #buddypress .members-list .list-wrap {
	grid-template-columns: 48px minmax(0, 1fr);
	align-items: center;
	gap: 8px 10px;
	min-height: 0;
	height: auto;
}
.lh-community-page #buddypress ul#members-list .item-avatar,
.lh-community-page #buddypress .members-list .item-avatar {
	width: 48px;
}
.lh-community-page #buddypress ul#members-list .item-avatar img,
.lh-community-page #buddypress .members-list .item-avatar img {
	width: 44px;
	height: 44px;
	max-width: 44px;
}
.lh-community-page #buddypress ul#members-list .item,
.lh-community-page #buddypress .members-list .item {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-content: start;
	gap: 5px;
	min-height: 0;
	height: auto;
}
.lh-community-page #buddypress ul#members-list .item-block,
.lh-community-page #buddypress .members-list .item-block {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 3px 8px;
	min-height: 0;
	height: auto;
}
.lh-community-page #buddypress ul#members-list .member-name,
.lh-community-page #buddypress .members-list .member-name {
	grid-column: 1;
	grid-row: 1;
	display: -webkit-box;
	max-height: 2.7em;
	margin: 0;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	font-size: .96rem;
	line-height: 1.35;
	overflow-wrap: anywhere;
}
.lh-community-page #buddypress ul#members-list .last-activity,
.lh-community-page #buddypress .members-list .last-activity {
	grid-column: 1;
	grid-row: 2;
	margin: 0;
	font-size: .76rem;
	line-height: 1.35;
}
.lh-community-page #buddypress ul#members-list .members-meta,
.lh-community-page #buddypress .members-list .members-meta {
	grid-column: 2;
	grid-row: 1 / span 2;
	align-self: center;
	justify-self: end;
	gap: 4px;
	margin: 0;
}
.lh-community-page #buddypress ul#members-list .members-meta li,
.lh-community-page #buddypress .members-list .members-meta li {
	flex: 0 0 auto;
}
.lh-community-page #buddypress ul#members-list .members-meta button,
.lh-community-page #buddypress .members-list .members-meta button,
.lh-community-page #buddypress ul#members-list .members-meta a,
.lh-community-page #buddypress .members-list .members-meta a {
	min-width: 40px;
	height: 40px;
	min-height: 40px;
	margin: 0;
	padding-inline: 10px;
	font-size: .82rem;
	white-space: nowrap;
}
.lh-community-page #buddypress ul#members-list .item-extra-content,
.lh-community-page #buddypress .members-list .item-extra-content,
.lh-community-page #buddypress ul#members-list .user-update,
.lh-community-page #buddypress .members-list .user-update {
	grid-column: 1 / -1;
	min-width: 0;
	margin-top: 5px;
}
.lh-community-page #buddypress ul#members-list .user-update,
.lh-community-page #buddypress .members-list .user-update {
	grid-row: 2;
}

/* Group directory: place native membership actions after the full description.
   Nouveau nests the buttons in .item-block above the sibling .group-desc, so
   display:contents lets grid order the existing nodes without changing markup. */
.lh-community-page #buddypress ul#groups-list .item,
.lh-community-page #buddypress .groups-list .item,
.lh-community-page .bp-wrap ul#groups-list .item,
.lh-community-page .bp-wrap .groups-list .item {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-content: start;
	gap: 0;
	min-height: 0;
	height: auto;
}
.lh-community-page #buddypress ul#groups-list .item-block,
.lh-community-page #buddypress .groups-list .item-block {
	display: contents;
}
.lh-community-page #buddypress ul#groups-list .groups-title,
.lh-community-page #buddypress .groups-list .groups-title,
.lh-community-page #buddypress ul#groups-list .group-details,
.lh-community-page #buddypress .groups-list .group-details,
.lh-community-page #buddypress ul#groups-list .last-activity,
.lh-community-page #buddypress .groups-list .last-activity {
	order: 1;
}
.lh-community-page #buddypress ul#groups-list .group-desc,
.lh-community-page #buddypress .groups-list .group-desc {
	order: 2;
	margin-top: 7px;
}
.lh-community-page #buddypress ul#groups-list .generic-button,
.lh-community-page #buddypress .groups-list .generic-button,
.lh-community-page #buddypress ul#groups-list .action,
.lh-community-page #buddypress .groups-list .action {
	order: 3;
	margin-top: 9px;
}
.lh-community-page #buddypress ul#groups-list .generic-button a,
.lh-community-page #buddypress .groups-list .generic-button a {
	border-color: var(--lh-community-indigo);
	background: var(--lh-community-surface);
	color: var(--lh-community-indigo);
}
.lh-community-page #buddypress ul#groups-list .generic-button a:hover,
.lh-community-page #buddypress .groups-list .generic-button a:hover {
	background: var(--lh-community-indigo-soft);
	color: var(--lh-community-indigo);
}

/* Keep the directory sort controls readable instead of clipping their first glyph. */
.lh-community-page #buddypress .subnav-filters .select-wrap,
.lh-community-page #buddypress .subnav-filters .select-wrap select,
.lh-community-page #buddypress .bp-toolbar select,
.lh-community-page #buddypress select#members-order-by,
.lh-community-page #buddypress select#groups-order-by {
	box-sizing: border-box;
	min-width: 0;
	overflow: visible;
	text-indent: 0;
}
.lh-community-page #buddypress .subnav-filters .select-wrap select,
.lh-community-page #buddypress .bp-toolbar select,
.lh-community-page #buddypress select#members-order-by,
.lh-community-page #buddypress select#groups-order-by {
	padding-left: 12px;
	padding-right: 34px;
	text-align: left;
}

/* Public-message and private-message actions stay outlined on cover art. */
.lh-profile-page #buddypress #item-header-cover-image #item-header-content .generic-button a,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content .generic-button button,
.lh-profile-page #buddypress #item-header-content .generic-button a,
.lh-profile-page #buddypress #item-header-content .generic-button button,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content a.button,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content .friendship-button a,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content a.send-message,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content a.bp-primary-action,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content a.bp-secondary-action {
	border: 1px solid var(--lh-community-indigo);
	background: var(--lh-community-surface);
	color: var(--lh-community-indigo);
	text-shadow: none;
}
.lh-profile-page #buddypress #item-header-cover-image #item-header-content .generic-button a:hover,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content a.button:hover,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content a.send-message:hover,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content a.bp-primary-action:hover,
.lh-profile-page #buddypress #item-header-cover-image #item-header-content a.bp-secondary-action:hover {
	background: var(--lh-community-indigo-soft);
	color: var(--lh-community-indigo);
}

/* Nouveau account settings actions use the same 48px / 12px control geometry. */
.lh-community-page #buddypress #your-profile .submit input[type="submit"],
.lh-community-page #buddypress #your-profile input[type="submit"],
.lh-community-page #buddypress #your-profile .wp-generate-pw {
	box-sizing: border-box;
	height: 48px;
	min-height: 48px;
	padding: 0 14px;
	border: 1px solid var(--lh-community-indigo);
	border-radius: 12px;
background: #4B3BD0;
	color: var(--lh-cream, #FAF9F6);
	font-family: var(--lh-font-body, "Inter", system-ui, sans-serif);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
}
.lh-community-page #buddypress #your-profile .submit input[type="submit"]:hover,
.lh-community-page #buddypress #your-profile .wp-generate-pw:hover {
	background: var(--lh-navy, #202044);
	border-color: var(--lh-navy, #202044);
	color: var(--lh-cream, #FAF9F6);
}

/* Brand the informational glyph only; warning/error state colors remain semantic. */
.lh-community-page #buddypress .bp-feedback.info .bp-icon,
.lh-community-page #buddypress .bp-feedback:not(.error):not(.warning):not(.success) .bp-icon {
	background-color: var(--lh-community-indigo);
	color: var(--lh-cream, #FAF9F6);
}
.lh-community-page #buddypress .bp-feedback.info .bp-icon::before,
.lh-community-page #buddypress .bp-feedback:not(.error):not(.warning):not(.success) .bp-icon::before {
	color: inherit;
}
.lh-community-page #buddypress .bp-feedback.info a,
.lh-community-page #buddypress .bp-feedback:not(.error):not(.warning):not(.success) a {
	color: var(--lh-community-indigo);
}

/* Empty result notices should hug their message, not retain a blank panel. */
.lh-community-page #buddypress .bp-feedback.no-results,
.lh-community-page #buddypress .bp-feedback.empty {
	min-height: 0;
	margin: 10px 0;
	padding: 12px 14px;
	border: 1px solid var(--lh-community-line);
	border-radius: 12px;
	background: var(--lh-community-indigo-soft);
	box-shadow: none;
}
.lh-community-page #buddypress .bp-feedback.no-results p,
.lh-community-page #buddypress .bp-feedback.empty p {
	margin: 0;
}
.lh-community-page #buddypress #notifications-user-list:has(.bp-feedback.no-results),
.lh-community-page #buddypress #friends-list:has(.bp-feedback.no-results),
.lh-community-page #buddypress .bp-messages-wrap:has(.bp-feedback.no-results) {
	min-height: 0;
	height: auto;
	padding-block: 0;
	background: transparent;
	box-shadow: none;
}

/* Don't reserve a gray zero-width-looking badge beside an empty Mentions item. */
.lh-community-page #buddypress #activity-mentions span:empty,
.lh-community-page #buddypress #activity-mentions .count:empty {
	display: none;
}

/* Empty native loops have .info, not a separate .no-results class. */
.lh-community-page #buddypress [data-bp-list]:has(> .bp-feedback.info) {
min-height: 0;
height: auto;
padding-bottom: 0;
}
.lh-community-page #buddypress .profile.public,
.lh-community-page #buddypress .profile.public .bp-widget {
min-height: 0;
height: auto;
}
.lh-community-page #buddypress .profile.public .bp-widget:not(:has(.profile-fields tr)) {
display: none;
}
.lh-member-display-name {
margin: 8px 0;
color: #202044;
font-size: 1.25rem;
overflow-wrap: anywhere;
}
.lh-community-page #buddypress #message.info,
.lh-community-page #buddypress .lh-empty-message-action {
margin: 0;
padding: 12px 16px;
background: #eeecff;
}
.lh-community-page #buddypress #message.info:has(+ .lh-empty-message-action) {
border-radius: 12px 12px 0 0;
padding-bottom: 0;
}
.lh-community-page #buddypress .lh-empty-message-action {
border-radius: 0 0 12px 12px;
}

/* Profile navigation remains a single, touch-scrollable rail on small screens. */
@media (max-width: 767px) {
.lh-profile-page #buddypress #object-nav {
max-width: 100%;
overflow-x: auto;
overflow-y: hidden;
}
.lh-profile-page #buddypress #object-nav ul {
display: flex;
width: max-content;
min-width: 100%;
flex-wrap: nowrap;
}
.lh-profile-page #buddypress #object-nav ul li {
flex: 0 0 auto;
}
	.lh-community-titlebar {
		padding: 14px 0 12px;
	}
	.lh-community-titlebar > .lh-wrap {
		width: min(100% - 36px, 620px);
	}
	.lh-profile-page #buddypress #item-nav .bp-navs,
	.lh-profile-page #buddypress #item-nav .item-list-tabs,
	.lh-profile-page #buddypress #subnav.bp-navs,
	.lh-profile-page #buddypress #subnav.item-list-tabs {
		max-width: 100%;
		overflow-x: auto;
		overflow-y: hidden;
		overscroll-behavior-x: contain;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
	}
	.lh-profile-page #buddypress #item-nav .bp-navs ul,
	.lh-profile-page #buddypress #item-nav .item-list-tabs ul,
	.lh-profile-page #buddypress #subnav.bp-navs ul,
	.lh-profile-page #buddypress #subnav.item-list-tabs ul {
		display: flex;
		width: max-content;
		min-width: max-content;
		flex-wrap: nowrap;
	}
	.lh-profile-page #buddypress #item-nav .bp-navs li,
	.lh-profile-page #buddypress #item-nav .item-list-tabs li,
	.lh-profile-page #buddypress #subnav.bp-navs li,
	.lh-profile-page #buddypress #subnav.item-list-tabs li {
		flex: 0 0 auto;
	}
}

/* Keep the native toolbar on one row without clipping its account dropdown. */
#wpadminbar {
	white-space: nowrap;
overflow: visible;
}
#wpadminbar .quicklinks,
#wpadminbar .quicklinks > ul,
#wpadminbar .quicklinks .ab-top-menu {
	display: flex;
	flex-wrap: nowrap;
	white-space: nowrap;
}
#wpadminbar .quicklinks > ul {
width: auto;
min-width: 0;
}
#wpadminbar #wp-admin-bar-root-default {
flex: 1 1 auto;
}
#wpadminbar #wp-admin-bar-top-secondary {
flex: 0 0 auto;
}
#wpadminbar #wp-admin-bar-root-default > li {
min-width: 0;
}
#wpadminbar #wp-admin-bar-root-default > li > .ab-item {
overflow: hidden;
text-overflow: ellipsis;
}
#wpadminbar .ab-item,
#wpadminbar .ab-label,
#wpadminbar #wp-admin-bar-my-account > .ab-item {
	white-space: nowrap;
}
