/* Shared by the public author card and admin crop preview: the same 6:7 frame. */
.owner-photo-frame {
  position: relative;
  aspect-ratio: 6 / 7;
  overflow: hidden;
  border-radius: 18px;
  background: var(--line, #e1e8f4);
  isolation: isolate;
}
.owner-photo-frame .owner-portrait {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* Legacy framing stays intact until an editor applies an explicit crop. */
.owner-photo-frame.is-face-centered .owner-portrait {
  position: absolute;
  max-width: none;
  width: auto;
  height: 140%;
  aspect-ratio: auto;
  top: 50%;
  left: 50%;
  transform: translate(-55%, -57%);
  border-radius: 0;
}
.owner-photo-frame.has-crop .owner-portrait {
  object-position: var(--portrait-x, 50%) var(--portrait-y, 50%);
  transform-origin: var(--portrait-x, 50%) var(--portrait-y, 50%);
  transform: scale(var(--portrait-zoom, 1));
  border-radius: 0;
}
