/**
 * ZCPojs Theme v0.8.4 — Editorial Portrait Support
 * Native OJS profile-image presentation with no forced crop and initials fallback.
 */

.zcp_masthead_identity_media {
  position: relative;
  display: flex;
  width: 66px;
  min-width: 66px;
  align-items: flex-start;
  justify-content: center;
  align-self: flex-start;
}

.zcp_masthead_card_leadership .zcp_masthead_identity_media {
  width: 82px;
  min-width: 82px;
}

.zcp_masthead_portrait {
  position: relative;
  display: flex;
  width: 66px;
  height: 82px;
  flex: 0 0 66px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--zcp-accent, #0b6b5b) 22%, #d9e7e2);
  border-radius: calc(var(--zcp-radius, 12px) * .72);
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--zcp-accent, #0b6b5b) 4%, #fff), #f8faf9);
  box-shadow: 0 7px 18px rgba(18, 41, 34, .07);
}

.zcp_masthead_portrait_leadership {
  width: 82px;
  height: 102px;
  flex-basis: 82px;
}

.zcp_masthead_portrait img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  object-fit: contain; /* Deliberately no crop. */
  object-position: 50% 50%;
  background: #f8faf9;
  transition: filter .18s ease, transform .18s ease;
}

.zcp_masthead_card:hover .zcp_masthead_portrait img,
.zcp_masthead_card:focus-within .zcp_masthead_portrait img {
  filter: saturate(1.025) contrast(1.015);
}

.zcp_masthead_avatar_fallback[hidden],
.zcp_masthead_portrait[hidden] {
  display: none !important;
}

.zcp_masthead_identity_media > .zcp_masthead_avatar:not([hidden]) {
  margin: 0;
}

.zcp_masthead_has_portrait.zcp_masthead_card_leadership {
  min-height: 190px;
}

.zcp_masthead_has_portrait.zcp_masthead_card_board {
  min-height: 184px;
}

@media (max-width: 560px) {
  .zcp_masthead_card_leadership .zcp_masthead_identity_media {
    width: 72px;
    min-width: 72px;
  }
  .zcp_masthead_portrait_leadership {
    width: 72px;
    height: 90px;
    flex-basis: 72px;
  }
  .zcp_masthead_portrait {
    width: 60px;
    height: 74px;
    flex-basis: 60px;
  }
}

@media print {
  .zcp_masthead_portrait {
    box-shadow: none;
  }
  .zcp_masthead_portrait img {
    filter: none !important;
  }
}
