/**
 * HommeFleur — Flux d'activité BuddyPress & cartes d'activité
 *
 * Chargé uniquement sur : is_buddypress()
 * Couvre : .hf-activity-card, badges, contexte article, commentaires,
 *          boutons actions, formulaire de post, dark mode.
 *
 * @package buddyx-child
 */

/* ==========================================================================
   08. CARTE D'ACTIVITÉ BUDDYPRESS (.hf-activity-card)
   ========================================================================== */

/* 8.1 Carte principale */
.hf-activity-card {
	background: var(--bx-color-bg-elevated, #ffffff);
	border: 1px solid var(--bx-color-border, #e8e8e8);
	border-radius: var(--bx-radius-card, 14px);
	padding: 1.25rem 1.5rem 1rem 1.5rem;
	margin-bottom: 1.25rem;
	box-shadow: var(--bx-shadow-card-sm, 0 1px 2px 0 var(--bx-color-shadow, rgba(0, 0, 0, 0.08)));
	transition:
		border-color var(--bx-duration-base, 200ms) var(--bx-easing-base, ease),
		box-shadow var(--bx-duration-base, 200ms) var(--bx-easing-base, ease);
	list-style: none;
}

.hf-activity-card:hover {
	border-color: var(--bx-color-accent-border, rgba(201, 42, 43, 0.18));
	box-shadow: var(--bx-shadow-card-md, 0 4px 12px -2px var(--bx-color-shadow, rgba(0, 0, 0, 0.08)));
}

/* 8.2 En-tête de carte */
.hf-activity-item-head {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 0.75rem;
}

/* 8.3 Avatar */
.hf-activity-avatar {
	flex-shrink: 0;
}

.hf-activity-avatar img {
	border-radius: var(--bx-radius-pill, 999px);
	width: 42px;
	height: 42px;
	object-fit: cover;
	box-shadow: 0 2px 6px var(--bx-color-shadow, rgba(0, 0, 0, 0.08));
	display: block;
}

/* 8.4 Zone header (badge + action line) */
.hf-activity-header {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

/* 8.5 Ligne d'action (texte "X a posté...") */
.hf-activity-action-line {
	font-size: 0.9rem;
	color: var(--bx-color-fg-muted, #6a6a6a);
	line-height: 1.4;
}

.hf-activity-action-line a {
	color: var(--bx-color-fg, #505050);
	font-weight: 600;
	text-decoration: none;
}

.hf-activity-action-line a:hover {
	color: var(--bx-color-link-hover, #c92a2b);
}

/* 8.6 Contenu de la carte */
.hf-activity-content {
	padding-left: calc(42px + 12px); /* avatar width + gap */
}

/* 8.7 Zone intérieure (texte du post) */
.hf-activity-inner {
	font-size: 0.98rem;
	line-height: 1.65;
	color: var(--bx-color-fg, #505050);
	margin-bottom: 0.75rem;
}

.hf-activity-inner p {
	margin: 0 0 0.5rem 0;
}

.hf-activity-inner p:last-child {
	margin-bottom: 0;
}

/* 8.8 Footer de la carte (boutons) */
.hf-activity-footer {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
	margin-top: 0.6rem;
	padding-top: 0.6rem;
	border-top: 1px solid var(--bx-color-divider, #f0f0f0);
}

/* ==========================================================================
   08b. BADGES D'ACTIVITÉ (.hf-activity-badge)
   ========================================================================== */

.hf-activity-badge {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 2px 9px;
	border-radius: var(--bx-radius-pill, 999px);
	border: 1px solid transparent;
	line-height: 1.6;
	white-space: nowrap;
}

/* Variante : forum (bbPress) */
.hf-activity-badge--bbpress,
.hf-activity-badge--forum {
	background: var(--bx-color-info-bg, rgba(2, 132, 199, 0.08));
	color: var(--bx-color-info, #0284c7);
	border-color: rgba(2, 132, 199, 0.22);
}

/* Variante : article (post) */
.hf-activity-badge--post,
.hf-activity-badge--article {
	background: var(--bx-color-accent-bg, rgba(201, 42, 43, 0.08));
	color: var(--bx-color-accent, #c92a2b);
	border-color: var(--bx-color-accent-border, rgba(201, 42, 43, 0.22));
}

/* Variante : médias (rtMedia) */
.hf-activity-badge--rtmedia,
.hf-activity-badge--medias {
	background: rgba(139, 92, 246, 0.08);
	color: #7c3aed;
	border-color: rgba(139, 92, 246, 0.22);
}

/* Variante : groupe (BuddyPress groups) */
.hf-activity-badge--groups,
.hf-activity-badge--groupe {
	background: rgba(16, 185, 129, 0.08);
	color: #059669;
	border-color: rgba(16, 185, 129, 0.22);
}

/* Variante : profil (xprofile) */
.hf-activity-badge--xprofile,
.hf-activity-badge--profil {
	background: rgba(245, 158, 11, 0.08);
	color: #d97706;
	border-color: rgba(245, 158, 11, 0.22);
}

/* Variante : papotage / discussion générale */
.hf-activity-badge--activity,
.hf-activity-badge--papotage {
	background: var(--bx-color-bg-muted, rgba(0, 0, 0, 0.04));
	color: var(--bx-color-fg-muted, #6a6a6a);
	border-color: var(--bx-color-border, #e8e8e8);
}

/* ==========================================================================
   08c. CONTEXTE ARTICLE DANS L'ACTIVITÉ (.bp-activity-article-context)
   ========================================================================== */

.bp-activity-article-context {
	margin-top: 0.75rem;
	padding: 1rem 1.25rem;
	background: var(--bx-color-bg-muted, #fafafa);
	border: 1px solid var(--bx-color-border, #e8e8e8);
	border-left: 3px solid var(--bx-color-accent, #c92a2b);
	border-radius: var(--bx-radius-card, 10px);
	transition: border-color var(--bx-duration-base, 200ms) var(--bx-easing-base, ease);
}

.bp-activity-article-context:hover {
	border-left-color: var(--bx-color-button-bg-hover, #b82526);
}

.bp-activity-article-header {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.bp-activity-article-badge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--bx-color-accent, #c92a2b);
	margin-bottom: 2px;
}

.bp-activity-article-title {
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--bx-color-fg, #505050);
	text-decoration: none;
	line-height: 1.4;
	transition: color var(--bx-duration-fast, 120ms) ease;
}

.bp-activity-article-title:hover {
	color: var(--bx-color-link-hover, #c92a2b);
	text-decoration: underline;
}

.bp-activity-article-excerpt {
	font-size: 0.88rem;
	color: var(--bx-color-fg-muted, #6a6a6a);
	line-height: 1.5;
	margin-top: 0.4rem;
}

/* ==========================================================================
   08d. BOUTONS D'ACTION ACTIVITÉ
   ========================================================================== */

/* Bouton commentaire (.acomment-reply) */
.acomment-reply.bp-secondary-action {
	display: inline-flex !important;
	align-items: center !important;
	gap: 5px !important;
	font-size: 0.82rem !important;
	font-weight: 600 !important;
	color: var(--bx-color-fg-muted, #6a6a6a) !important;
	background: transparent !important;
	border: 1px solid var(--bx-color-border, #e8e8e8) !important;
	border-radius: var(--bx-radius-pill, 999px) !important;
	padding: 4px 12px !important;
	cursor: pointer !important;
	transition: all var(--bx-duration-fast, 120ms) ease !important;
	text-decoration: none !important;
	line-height: 1.5 !important;
}

.acomment-reply.bp-secondary-action:hover {
	color: var(--bx-color-fg, #505050) !important;
	border-color: var(--bx-color-border-strong, #d4d4d4) !important;
	background: var(--bx-color-bg-muted, #fafafa) !important;
}

/* Boutons secondaires : favoris, supprimer */
.generic-button .fav,
.generic-button .unfav,
.generic-button .bp-secondary-action,
.generic-button .delete-activity {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.82rem;
	font-weight: 500;
	color: var(--bx-color-fg-muted, #6a6a6a);
	background: transparent;
	border: 1px solid var(--bx-color-border, #e8e8e8);
	border-radius: var(--bx-radius-pill, 999px);
	padding: 4px 12px;
	cursor: pointer;
	transition: all var(--bx-duration-fast, 120ms) ease;
	text-decoration: none;
	line-height: 1.5;
}

.generic-button .fav:hover,
.generic-button .unfav:hover,
.generic-button .bp-secondary-action:hover {
	color: var(--bx-color-fg, #505050);
	border-color: var(--bx-color-border-strong, #d4d4d4);
	background: var(--bx-color-bg-muted, #fafafa);
}

.generic-button .delete-activity:hover {
	color: var(--bx-color-error, #dc2626);
	border-color: rgba(220, 38, 38, 0.3);
	background: rgba(220, 38, 38, 0.06);
}

/* ==========================================================================
   08e. SECTION COMMENTAIRES (.hf-activity-comments)
   ========================================================================== */

.hf-activity-comments {
	margin-top: 0.75rem;
	padding-top: 0.75rem;
	border-top: 1px solid var(--bx-color-divider, #f0f0f0);
}

.hf-activity-comments .activity-comments li {
	display: flex;
	gap: 10px;
	padding: 0.65rem 0;
	border-bottom: 1px solid var(--bx-color-divider, #f0f0f0);
	list-style: none;
}

.hf-activity-comments .activity-comments li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.hf-activity-comments .activity-comments .avatar-block img {
	border-radius: var(--bx-radius-pill, 999px);
	width: 32px;
	height: 32px;
	object-fit: cover;
	flex-shrink: 0;
}

.hf-activity-comments .activity-comments .comment-content-block {
	flex: 1;
	min-width: 0;
}

/* ==========================================================================
   09. FORMULAIRE DE PUBLICATION D'ACTIVITÉ
   ========================================================================== */

#buddypress .activity-update-form {
	background: var(--bx-color-bg-elevated, #ffffff);
	border: 1px solid var(--bx-color-border, #e8e8e8);
	border-radius: var(--bx-radius-card, 14px);
	padding: 1.25rem 1.5rem;
	margin-bottom: 1.5rem;
	box-shadow: var(--bx-shadow-card-sm, 0 1px 2px 0 var(--bx-color-shadow, rgba(0, 0, 0, 0.08)));
}

#buddypress .activity-update-form textarea#whats-new {
	width: 100%;
	box-sizing: border-box;
	border: 1.5px solid var(--bx-color-input-border, #d4d4d4);
	border-radius: var(--bx-radius-form, 8px);
	padding: 0.85rem 1rem;
	font-size: 0.95rem;
	color: var(--bx-color-input-fg, #1a1a1a);
	background-color: var(--bx-color-input-bg, #ffffff);
	resize: vertical;
	min-height: 80px;
	transition: all var(--bx-duration-base, 200ms) var(--bx-easing-base, ease);
	font-family: inherit;
	line-height: 1.6;
}

#buddypress .activity-update-form textarea#whats-new:focus {
	border-color: var(--bx-color-input-focus-border, #c92a2b);
	box-shadow: 0 0 0 3px var(--bx-color-accent-bg, rgba(201, 42, 43, 0.15));
	outline: none;
}

#buddypress .activity-update-form #whats-new-submit {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 0.75rem;
	padding: 0.65rem 1.5rem;
	font-size: 0.9rem;
	font-weight: 700;
	color: var(--bx-color-button-fg, #ffffff);
	background: var(--bx-color-button-bg, #c92a2b);
	border: 1px solid var(--bx-color-button-border, #c92a2b);
	border-radius: var(--bx-radius-button, 10px);
	cursor: pointer;
	transition: all var(--bx-duration-base, 200ms) var(--bx-easing-base, ease);
	letter-spacing: 0.02em;
}

#buddypress .activity-update-form #whats-new-submit:hover,
#buddypress .activity-update-form #whats-new-submit:focus {
	background: var(--bx-color-button-bg-hover, #b82526);
	border-color: var(--bx-color-button-border-hover, #b82526);
	box-shadow: 0 6px 18px var(--bx-color-accent-bg-strong, rgba(201, 42, 43, 0.35));
	transform: translateY(-1px);
	outline: none;
}

#buddypress .activity-update-form #whats-new-submit:active {
	transform: translateY(0);
}

/* ==========================================================================
   DARK MODE — Activités BuddyPress
   ========================================================================== */

[data-bx-mode="dark"] .hf-activity-card {
	background: var(--bx-color-bg-elevated, #161616);
	border-color: var(--bx-color-border, #2a2a2a);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

[data-bx-mode="dark"] .hf-activity-card:hover {
	border-color: var(--bx-color-accent-border, rgba(255, 107, 107, 0.25));
}

[data-bx-mode="dark"] .hf-activity-action-line {
	color: var(--bx-color-fg-muted, #a0a0a0);
}

[data-bx-mode="dark"] .hf-activity-action-line a {
	color: var(--bx-color-fg, #f5f5f5);
}

[data-bx-mode="dark"] .hf-activity-action-line a:hover {
	color: var(--bx-color-link-hover, #ff6b6b);
}

[data-bx-mode="dark"] .hf-activity-inner {
	color: var(--bx-color-fg, #e5e5e5);
}

[data-bx-mode="dark"] .hf-activity-footer {
	border-top-color: var(--bx-color-divider, #1f1f1f);
}

[data-bx-mode="dark"] .hf-activity-badge--bbpress,
[data-bx-mode="dark"] .hf-activity-badge--forum {
	background: rgba(56, 189, 248, 0.12);
	color: #38bdf8;
	border-color: rgba(56, 189, 248, 0.25);
}

[data-bx-mode="dark"] .hf-activity-badge--post,
[data-bx-mode="dark"] .hf-activity-badge--article {
	background: rgba(255, 107, 107, 0.12);
	color: #ff6b6b;
	border-color: rgba(255, 107, 107, 0.25);
}

[data-bx-mode="dark"] .hf-activity-badge--rtmedia,
[data-bx-mode="dark"] .hf-activity-badge--medias {
	background: rgba(167, 139, 250, 0.12);
	color: #a78bfa;
	border-color: rgba(167, 139, 250, 0.25);
}

[data-bx-mode="dark"] .hf-activity-badge--groups,
[data-bx-mode="dark"] .hf-activity-badge--groupe {
	background: rgba(52, 211, 153, 0.12);
	color: #34d399;
	border-color: rgba(52, 211, 153, 0.25);
}

[data-bx-mode="dark"] .hf-activity-badge--xprofile,
[data-bx-mode="dark"] .hf-activity-badge--profil {
	background: rgba(251, 191, 36, 0.12);
	color: #fbbf24;
	border-color: rgba(251, 191, 36, 0.25);
}

[data-bx-mode="dark"] .hf-activity-badge--activity,
[data-bx-mode="dark"] .hf-activity-badge--papotage {
	background: var(--bx-color-bg-muted, rgba(255, 255, 255, 0.05));
	color: var(--bx-color-fg-muted, #a0a0a0);
	border-color: var(--bx-color-border, #2a2a2a);
}

[data-bx-mode="dark"] .bp-activity-article-context {
	background: var(--bx-color-bg-muted, #101010);
	border-color: var(--bx-color-border, #2a2a2a);
	border-left-color: var(--bx-color-accent, #ff6b6b);
}

[data-bx-mode="dark"] .bp-activity-article-badge {
	color: var(--bx-color-accent, #ff6b6b);
}

[data-bx-mode="dark"] .bp-activity-article-title {
	color: var(--bx-color-fg, #f5f5f5);
}

[data-bx-mode="dark"] .bp-activity-article-title:hover {
	color: var(--bx-color-link-hover, #ff6b6b);
}

[data-bx-mode="dark"] .bp-activity-article-excerpt {
	color: var(--bx-color-fg-muted, #a0a0a0);
}

[data-bx-mode="dark"] .acomment-reply.bp-secondary-action,
[data-bx-mode="dark"] .generic-button .fav,
[data-bx-mode="dark"] .generic-button .unfav,
[data-bx-mode="dark"] .generic-button .bp-secondary-action {
	color: var(--bx-color-fg-muted, #a0a0a0) !important;
	border-color: var(--bx-color-border, #2a2a2a) !important;
}

[data-bx-mode="dark"] .acomment-reply.bp-secondary-action:hover,
[data-bx-mode="dark"] .generic-button .fav:hover,
[data-bx-mode="dark"] .generic-button .unfav:hover,
[data-bx-mode="dark"] .generic-button .bp-secondary-action:hover {
	color: var(--bx-color-fg, #f5f5f5) !important;
	border-color: var(--bx-color-border-strong, #3a3a3a) !important;
	background: var(--bx-color-bg-muted, #1a1a1a) !important;
}

[data-bx-mode="dark"] .hf-activity-comments {
	border-top-color: var(--bx-color-divider, #1f1f1f);
}

[data-bx-mode="dark"] .hf-activity-comments .activity-comments li {
	border-bottom-color: var(--bx-color-divider, #1f1f1f);
}

[data-bx-mode="dark"] #buddypress .activity-update-form {
	background: var(--bx-color-bg-elevated, #161616);
	border-color: var(--bx-color-border, #2a2a2a);
}

[data-bx-mode="dark"] #buddypress .activity-update-form textarea#whats-new {
	background-color: var(--bx-color-input-bg, #1a1a1a);
	border-color: var(--bx-color-input-border, #333333);
	color: var(--bx-color-input-fg, #f5f5f5);
}

[data-bx-mode="dark"] #buddypress .activity-update-form textarea#whats-new:focus {
	border-color: var(--bx-color-input-focus-border, #ff6b6b);
	box-shadow: 0 0 0 3px rgba(255, 107, 107, 0.2);
}

