/* Feed CLS guardrails: reserve stable boxes before media/reaction hydration finishes. */
.feed-post-head,
.profile-post-head {
  min-height: 48px;
  align-items: flex-start !important;
}

.feed-post-head-text,
.profile-post-head-text {
  min-height: 42px;
}

.post-content:not(:empty) {
  min-height: 1.5em;
  overflow-wrap: anywhere;
}

.media-grid {
  align-items: stretch;
  contain: layout;
}

.media-grid-item,
.media-grid-button {
  box-sizing: border-box;
  min-height: 0 !important;
  aspect-ratio: 1 / 1;
}

.media-grid.media-count-1 .media-grid-item,
.media-grid.media-count-1 .media-grid-button {
  aspect-ratio: 3 / 2;
}

.media-grid.media-count-2 .media-grid-item,
.media-grid.media-count-2 .media-grid-button,
.media-grid.media-count-3 .media-grid-item,
.media-grid.media-count-3 .media-grid-button,
.media-grid.media-count-4 .media-grid-item,
.media-grid.media-count-4 .media-grid-button,
.media-grid.media-count-5 .media-grid-item,
.media-grid.media-count-5 .media-grid-button {
  aspect-ratio: 1 / 1;
}

.media-grid.media-count-3 > .media-grid-item:first-child,
.media-grid.media-count-3 > .media-grid-button:first-child {
  aspect-ratio: 16 / 9;
}

.media-grid-image,
.media-grid-item > img,
.media-grid-button > img {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover;
}

.post-engagement-row {
  min-height: 58px;
  align-content: center;
  overflow-anchor: none;
}

.post-engagement-row .platform-reaction-root {
  min-height: 38px;
  flex: 0 0 304px;
  min-width: 304px;
  max-width: 100%;
  contain: layout;
}

.post-engagement-row .platform-reaction-main {
  flex: 0 0 auto;
  min-width: 74px;
}

.post-engagement-row .platform-reaction-summary {
  flex: 0 0 auto;
  min-width: 70px;
  justify-content: flex-start;
  font-variant-numeric: tabular-nums;
}

.post-engagement-row .platform-reaction-icons {
  min-width: 42px;
}

.post-engagement-row .platform-reaction-total {
  display: inline-block;
  min-width: 2ch;
  text-align: left;
}

.post-engagement-row .platform-reaction-avatars,
.post-engagement-row .platform-reaction-avatars:not(.has-avatars) {
  display: inline-flex;
  flex: 0 0 62px;
  width: 62px;
  min-height: 28px;
  visibility: hidden;
  pointer-events: none;
}

.post-engagement-row .platform-reaction-avatars.has-avatars {
  visibility: visible;
  pointer-events: auto;
}

.post-comment-inline-controls {
  min-height: 40px;
}

.post-comment-count-btn {
  min-width: 92px;
  text-align: center;
}

.post-comment-bubble-btn {
  flex: 0 0 38px;
}

.post-admin-options-corner,
.post-admin-options-toggle,
.post-options-toggle {
  flex: 0 0 auto;
}

.post-admin-options-corner {
  width: 36px;
  height: 36px;
}

.feed-load-marker,
.profile-feed-load-marker {
  min-height: 36px;
  overflow-anchor: none;
}

.admin-feed-blocks-bottom {
  min-height: 112px;
  overflow-anchor: none;
}

.admin-feed-block {
  min-height: 76px;
  overflow-anchor: none;
}

.admin-feed-block .admin-sidebar-block-image,
.admin-feed-block img {
  height: auto;
}

.messenger-dock-integrated .messenger-footer-tray,
.messenger-footer-tray {
  min-height: 42px;
}

.messenger-tab-icon {
  flex: 0 0 22px;
}

@supports (content-visibility: auto) {
  .feed-phase10-content-visibility-ok #feed [data-post-card]:has(.media-grid),
  .feed-phase10-content-visibility-ok #profile-feed [data-post-card]:has(.media-grid) {
    contain-intrinsic-size: auto 760px;
  }

  .feed-phase10-content-visibility-ok #feed [data-post-card]:not(:has(.media-grid)),
  .feed-phase10-content-visibility-ok #profile-feed [data-post-card]:not(:has(.media-grid)) {
    contain-intrinsic-size: auto 330px;
  }
}

@media (max-width: 760px) {
  .post-engagement-row {
    min-height: 94px;
  }

  .post-engagement-row .platform-reaction-root,
  .post-comment-inline-controls {
    width: 100%;
    flex-basis: 100%;
    min-width: 0;
  }
}
