/* /feed/assets/feed.css */

.feed-avatar{
	width:44px;
	height:44px;
	border-radius:999px;
	object-fit:cover;
	flex:0 0 44px;
	border:1px solid rgba(0,0,0,.12);
	background:var(--bs-tertiary-bg,#f3f3f3);
	display:block;
}

.feed-item-shell,
.feed-comment-shell{
	min-width:0;
}

.feed-item-avatar-wrap,
.feed-comment-avatar-wrap{
	flex:0 0 auto;
}

.feed-item-main,
.feed-comment-main,
.feed-item-title-wrap,
.feed-comment-title-wrap,
.feed-item-content-wrap,
.feed-comment-content-wrap{
	min-width:0;
}

.feed-item-header,
.feed-comment-header{
	min-width:0;
}

.feed-item .feed-author,
.feed-comment .feed-comment-author{
	font-weight:700;
	line-height:1.15;
}

.feed-name-wrap,
.feed-item .feed-author,
.feed-comment .feed-comment-author,
.feed-people-list-name{
	white-space:normal;
	overflow-wrap:anywhere;
	word-break:break-word;
}

.feed-item .feed-author a,
.feed-comment .feed-comment-author a{
	display:inline;
	white-space:normal;
	overflow-wrap:anywhere;
	word-break:break-word;
}

.feed-item-date,
.feed-comment-date{
	line-height:1.2;
	white-space:normal;
	overflow-wrap:anywhere;
	word-break:break-word;
}

.feed-item-action-menu,
.feed-comment-action-menu{
	flex:0 0 auto;
}

.feed-item .feed-body{
	white-space:normal;
	word-break:break-word;
}


.feed-edit .feed-edit-editable,
#feedComposeCard .js-feed-compose-editable,
.feed-comment-compose .js-feed-comment-compose-editable,
.feed-comment-edit .js-feed-comment-editable{
	min-height: calc(1.5em + .75rem + 2px);
	white-space: pre-wrap;
	overflow-wrap: anywhere;
	cursor: text;
}

.feed-edit .feed-edit-editable:empty:before,
#feedComposeCard .js-feed-compose-editable:empty:before,
.feed-comment-compose .js-feed-comment-compose-editable:empty:before,
.feed-comment-edit .js-feed-comment-editable:empty:before{
	content: attr(data-placeholder);
	color: var(--bs-secondary-color, #6c757d);
	pointer-events: none;
}

.feed-edit .feed-edit-editable .ksw-mention-token,
#feedComposeCard .js-feed-compose-editable .ksw-mention-token,
.feed-comment-compose .js-feed-comment-compose-editable .ksw-mention-token,
.feed-comment-edit .js-feed-comment-editable .ksw-mention-token{
	vertical-align: baseline;
}

#feedList .card{
	border-radius: .75rem;
}

#feedList .feed-item{
	--feed-kind-color: var(--bs-border-color, #dee2e6);
	border-inline-start:4px solid var(--feed-kind-color);
	/* Action dropdowns can extend beyond the card boundary. */
	overflow:visible;
}

/* A master-feed broadcast is intentionally part of a person's profile history,
   but remains visually distinct from a post made on that personal profile. */
#profilePaneFeed #feedList .feed-item--profile-broadcast{
	--feed-kind-color:#0d6efd;
	background:rgba(13,110,253,.045);
	box-shadow:inset 0 0 0 1px rgba(13,110,253,.22);
}

[data-bs-theme="dark"] #profilePaneFeed #feedList .feed-item--profile-broadcast{
	background:rgba(77,154,255,.09);
	box-shadow:inset 0 0 0 1px rgba(111,174,255,.34);
}

.feed-broadcast-origin-badge{
	color:#084298;
	background:#cfe2ff;
	border:1px solid #9ec5fe;
}

[data-bs-theme="dark"] .feed-broadcast-origin-badge{
	color:#cfe2ff;
	background:#0b376f;
	border-color:#3d7dc4;
}

#feedList .feed-item--event{ --feed-kind-color:#d88b12; }
#feedList .feed-item--gallery{ --feed-kind-color:#7654c4; }
#feedList .feed-item--feed{ --feed-kind-color:#3c6fa8; }
#feedList .feed-item--attraction{ --feed-kind-color:#078f82; }
#feedList .feed-item--poll{ --feed-kind-color:#2878b8; }
#feedList .feed-item--relationship{ --feed-kind-color:#cf4e78; }
#feedList .feed-item--blog{ --feed-kind-color:#397d91; }

.feed-item-meta{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:.3rem .55rem;
	line-height:1.25;
}

.feed-item-kind-label{
	display:inline-flex;
	align-items:center;
	gap:.32rem;
	color:var(--feed-kind-color);
	font-weight:650;
}

#feedComposeCard .js-feed-compose-editable{
	min-height:7rem;
}

.feed-compose-options,
.feed-compose-submit{
	min-width:0;
}

.feed-compose-privacy,
.feed-edit-privacy-control{
	display:inline-flex;
	align-items:center;
	gap:.6rem;
	width:auto;
	min-width:0;
	padding:.3rem .35rem .3rem .75rem;
	border:1px solid var(--bs-border-color, #dee2e6);
	border-radius:.65rem;
	background:var(--bs-tertiary-bg, #f3f3f3);
}

.feed-compose-privacy .form-label,
.feed-edit-privacy-control .form-label{
	margin:0 !important;
	white-space:nowrap;
}

.feed-compose-privacy .ksw-privacy-btn-group,
.feed-edit-privacy-control .ksw-privacy-btn-group{
	flex:0 0 auto;
}

.feed-compose-privacy .ksw-privacy-btn-group .btn,
.feed-edit-privacy-control .ksw-privacy-btn-group .btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:2.7rem;
	padding:.55rem .7rem !important;
}

.feed-compose-audience-note{
	display:inline-flex;
	align-items:center;
	gap:.45rem;
	min-height:2.75rem;
	padding:.55rem .8rem;
	border:1px solid var(--bs-border-color, #dee2e6);
	border-radius:.65rem;
	background:var(--bs-tertiary-bg, #f3f3f3);
}

.feed-compose-count{
	white-space:nowrap;
}

.feed-compose-post{
	min-width:6.5rem;
}

#feedNewBar{
	display:none;
	position: sticky;
	top: 92px; /* below header */
	z-index: 50;
}

@media (max-width: 991.98px){
	#feedNewBar{ top: 78px; }
}

.feed-tag-badges .badge{
	margin-right:.25rem;
	margin-bottom:.25rem;
}

/* Content previews replace generic type badges with useful imagery or icons. */
.feed-activity-card,
.feed-source-card{
	--feed-activity-color:var(--feed-kind-color, #6c757d);
	position:relative;
	display:grid;
	grid-template-columns:7.5rem minmax(0, 1fr);
	min-height:7rem;
	margin-top:.75rem;
	border:1px solid var(--bs-border-color, rgba(0,0,0,.12));
	border-radius:.8rem;
	overflow:hidden;
	background:var(--bs-tertiary-bg, #f3f3f3);
}

.feed-activity-card--event{ --feed-activity-color:#d88b12; }
.feed-activity-card--gallery{ --feed-activity-color:#7654c4; }
.feed-activity-card--feed{ --feed-activity-color:#3c6fa8; }
.feed-activity-card--attraction{ --feed-activity-color:#078f82; }
.feed-activity-card--poll{ --feed-activity-color:#2878b8; }
.feed-activity-card--relationship{ --feed-activity-color:#cf4e78; }
.feed-source-card--event{ --feed-activity-color:#d88b12; }
.feed-source-card--gallery{ --feed-activity-color:#7654c4; }
.feed-source-card--blog{ --feed-activity-color:#397d91; }

.feed-activity-visual,
.feed-source-visual{
	position:relative;
	min-height:100%;
	background:var(--bs-tertiary-bg, #f3f3f3);
	background:color-mix(in srgb, var(--feed-activity-color) 16%, var(--bs-body-bg, #fff));
	overflow:hidden;
}

.feed-activity-visual__image,
.feed-source-visual__image{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
}

.feed-activity-visual__fallback,
.feed-source-visual__fallback{
	position:absolute;
	inset:0;
	display:none;
	align-items:center;
	justify-content:center;
	color:var(--feed-activity-color);
	font-size:2.35rem;
}

.feed-activity-visual--fallback .feed-activity-visual__fallback,
.feed-source-visual--fallback .feed-source-visual__fallback{
	display:flex;
}

.feed-activity-copy,
.feed-source-copy{
	display:flex;
	flex-direction:column;
	justify-content:center;
	min-width:0;
	padding:.85rem 1rem;
}

.feed-activity-eyebrow{
	display:flex;
	align-items:center;
	gap:.4rem;
	color:var(--feed-activity-color);
	font-weight:650;
}

.feed-activity-title,
.feed-source-title{
	margin-top:.2rem;
	font-weight:750;
	font-size:1.06rem;
	line-height:1.3;
	overflow-wrap:anywhere;
}

.feed-activity-title .stretched-link:focus-visible,
.feed-source-title .stretched-link:focus-visible{
	outline:2px solid var(--feed-activity-color);
	outline-offset:3px;
	border-radius:.2rem;
}

.feed-activity-status{
	display:block;
	margin-top:.25rem;
	font-weight:500;
	color:var(--bs-secondary-color, #6c757d);
}

.feed-activity-action,
.feed-source-action{
	display:inline-flex;
	align-items:center;
	margin-top:.55rem;
	color:var(--feed-activity-color);
	font-weight:650;
}

.feed-source-description{
	margin-top:.35rem;
	overflow-wrap:anywhere;
}

.feed-post-actions{
	margin-top:.6rem;
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:.5rem 1rem;
}

.feed-action-group{
	display:inline-flex;
	align-items:center;
	gap:.45rem;
}

.feed-heart-btn,
.feed-comment-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:2.25rem;
}

.feed-heart-btn[aria-disabled="true"]{
	opacity:.55;
	cursor:not-allowed;
}

.feed-action-count{
	display:inline-flex;
	align-items:center;
	min-height:2rem;
	line-height:1.1;
}

.feed-action-count-clickable{
	cursor:pointer;
}

.feed-action-count-clickable:hover,
.feed-action-count-clickable:focus{
	text-decoration:underline;
}

.feed-action-count-clickable:focus-visible{
	outline:2px solid rgba(13,110,253,.35);
	outline-offset:2px;
	border-radius:.25rem;
}

/* Verified + star badge alignment */
.feedStarBadge{
	display:inline-flex;
	align-items:center;
}

/* -------------------------------------------------------------------------
   Feed post media thumbnails (Fancybox)
   ------------------------------------------------------------------------- */
.feed-post-media{
	/* Masonry-style layout with pure CSS (no JS): */
	column-gap: 8px;
	column-count: 3;
	line-height: 0;
}

.feed-post-media-thumb{
	display:inline-block;
	width:100%;
	margin: 0 0 8px 0;
	break-inside: avoid;
}

.feed-post-media-thumb img{
	width:100%;
	height:auto;
	border-radius:.6rem;
	border:1px solid rgba(0,0,0,.12);
	background:var(--bs-tertiary-bg,#f3f3f3);
}

@media (max-width: 991.98px){
	.feed-post-media{ column-count: 2; }
}

@media (max-width: 575.98px){
	.feed-post-media{ column-count: 1; }
}

@media (min-width: 1200px){
	.feed-post-media{ column-count: 4; }
}

/* -------------------------------------------------------------------------
   Composer Dropzone
   ------------------------------------------------------------------------- */
.feedDropzone{
	min-height:120px;
	padding:12px;
}

.feedDropzone.dz-clickable{
	cursor:pointer;
}

/* -------------------------------------------------------------------------
   Feed post comments
   ------------------------------------------------------------------------- */
.feed-comments{
	border-top:1px solid rgba(0,0,0,.06);
	padding-top:.75rem;
}

.feed-comment{
	padding:.5rem 0;
	border-bottom:1px solid rgba(0,0,0,.05);
}

.feed-comment:last-child{
	border-bottom:none;
}

.feed-comment .feed-comment-avatar{
	width:34px;
	height:34px;
	border-radius:999px;
	object-fit:cover;
	border:1px solid rgba(0,0,0,.12);
	background:var(--bs-tertiary-bg,#f3f3f3);
	flex:0 0 34px;
	display:block;
}

.feed-comment .feed-comment-body{
	white-space:normal;
	word-break:break-word;
}

.feed-comment-compose textarea{
	resize:vertical;
}

/* =======================
   Feed account search suggest + user tab
   ======================= */

#feedSearchWrap{
  position: relative;
}

#feedSearchSuggest{
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1050;
  display: none;
  margin-top: 2px;
}

.feedSuggestAvatar{
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: cover;
  margin-right: 10px;
  flex: 0 0 auto;
}

.feedSuggestName{
  font-weight: 500;
  line-height: 1.2;
}

.feedUserTabAvatar{
  width: 16px;
  height: 16px;
  border-radius: 50%;
  object-fit: cover;
  margin-right: 6px;
}

.feedUserTabClose{
	margin-left: 0 !important;
	font-weight: 700;
	opacity: 0.55;
	cursor: pointer;
}

#btnModeUser{
	border-top-right-radius:0;
	border-bottom-right-radius:0;
}

#btnModeUserClose{
	border-top-left-radius:0;
	border-bottom-left-radius:0;
}

.feedUserTabClose:hover{
  opacity: 0.9;
}

.feedUserHeaderAvatar{
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
}

#feedModeGroup .btn{
  white-space: nowrap;
}

#feedModeGroup{
	max-width:100%;
	overflow-x:auto;
	overflow-y:hidden;
	flex-wrap:nowrap;
	-webkit-overflow-scrolling:touch;
	scrollbar-width:thin;
}

#feedModeGroup .btn:focus-visible,
.feedUserTabClose:focus-visible{
	position:relative;
	z-index:2;
}

#btnModeFavourites i{
  color: #dc3545;
}

.feed-people-list,
.feed-hearters-list{
	max-height: 60vh;
	overflow-y: auto;
}

.feed-people-list .list-group-item,
.feed-hearters-list .list-group-item{
	white-space: normal;
}

.feed-people-list-item{
	display:block;
}

.feed-people-list-name{
	display:block;
}

.feed-people-list .badge{
	white-space:nowrap;
}

@media (max-width: 549.98px){
	#feedComposeCard .js-feed-compose-editable{
		min-height:8rem;
	}

	.feed-compose-options,
	.feed-compose-submit{
		width:100%;
	}

	.feed-compose-options{
		display:grid !important;
		grid-template-columns:minmax(0, 1fr) auto;
		align-items:center;
	}

	.feed-compose-privacy{
		grid-column:1 / -1;
		width:100%;
		justify-content:space-between;
	}

	.feed-compose-audience-note{
		min-width:0;
		justify-content:center;
		overflow-wrap:anywhere;
	}

	.feed-compose-count{
		margin-right:auto;
	}

	.feed-compose-post{
		flex:1 1 auto;
	}

	.feed-item-shell,
	.feed-comment-shell{
		display:block !important;
		position:relative;
	}

	.feed-item-avatar-wrap,
	.feed-comment-avatar-wrap{
		position:absolute;
		top:0;
		left:0;
	}

	.feed-item-header{
		padding-left:56px;
		min-height:44px;
	}

	.feed-comment-header{
		padding-left:42px;
		min-height:34px;
	}

	.feed-item-content-wrap{
		margin-top:.5rem;
	}

	.feed-comment-content-wrap{
		margin-top:.35rem;
	}

	.feed-activity-card,
	.feed-source-card{
		grid-template-columns:5.4rem minmax(0, 1fr);
		min-height:6.4rem;
	}

	.feed-activity-copy,
	.feed-source-copy{
		padding:.75rem .8rem;
	}
}

@media (max-width: 379.98px){
	.feed-compose-options{
		grid-template-columns:1fr;
	}

	#feedAttachBtn{
		width:100%;
	}
}
