/* ===== CommunityListItem (masonry photo cell) ===== */

.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item {
  position: relative;
  display: block;
  overflow: hidden;
  break-inside: avoid;
  margin-bottom: 1.125rem;
  border: 1px solid var(--hairline);
  border-radius: var(--border-radius);
  /* background-color (not the `background` shorthand) so the global
     .kombos-skeleton shimmer (background-image) shows through while loading. */
  background-color: var(--slab);
  cursor: pointer;
}

.kombos-community-list-item__img,
.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item__placeholder {
  display: block;
  width: 100%;
  /* Reserve a fixed box so the cell never shifts when the (lazy) photo loads
     and so the skeleton shimmer shows at the right size.
     4 / 5 matches the Instagram portrait post ratio. */
  aspect-ratio: 4 / 5;
  object-fit: cover;
  transition: transform 0.5s cubic-bezier(0.2, 0.7, 0.2, 1), opacity 0.4s ease;
}

/* Skeleton: hide the image until it loads so the cell shimmer shows through,
   then fade it in. */
.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item__img.is-loading {
  opacity: 0;
}

.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item__placeholder {
  background: linear-gradient(135deg, var(--slab), var(--hairline));
}

.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item:hover .kombos-community-list-item__img {
  transform: scale(1.05);
}

/* ---- tag badge (top-left, colors from item props) ---- */
.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item__tag {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  z-index: 3;
  padding: 0.25rem 0.5rem;
  border-radius: var(--border-radius);
  line-height: 1;
}

/* ---- hover overlay (handle + caption) ---- */
.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0.25rem;
  padding: 1rem;
  opacity: 1;
  transition: opacity 0.25s;
  background: linear-gradient(
    to top,
    rgba(12, 9, 30, 0.5),
    rgba(12, 9, 30, 0.1) 55%,
    transparent
  );
}

.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item:hover .kombos-community-list-item__overlay {
  opacity: 1;
}

.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item__handle {
  color: var(--paper);
}

.cc_uNDcCLHPMB_haDT6z0ezs .kombos-community-list-item__caption {
  color: rgba(255, 255, 255, 0.7);
}
