.contact-profile-summary{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 0 12px;gap:10px}
.contact-profile-summary h3{font-size:1.35rem;line-height:1.35;overflow-wrap:anywhere;margin:6px 0 0}
.contact-profile-phone{margin:0 0 8px;color:var(--muted);font-size:.95rem;overflow-wrap:anywhere}
.contact-profile-photo{position:relative;display:grid;place-items:center;flex:none;width:132px;height:132px;border-radius:50%;overflow:hidden;background:var(--surface-2);color:var(--muted);border:1px solid var(--border);cursor:zoom-in;padding:0}
.contact-profile-photo:disabled{cursor:default;opacity:1}
.contact-profile-photo>.icon{width:56px;height:56px}
.contact-profile-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.contact-profile-photo:focus-visible{outline:3px solid var(--primary);outline-offset:4px}
.contact-profile-destination{padding-bottom:16px;border-bottom:1px solid var(--border);text-align:center}
.contact-profile-destination:empty{display:none}
.contact-custom-fields{margin-top:22px;padding-top:6px;border-top:1px solid var(--border)}
.contact-custom-fields>h3{font-size:1rem;margin:14px 0}
.contact-photo-dialog{max-width:min(880px,94vw);width:880px;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text)}
.contact-photo-dialog::backdrop{background:#071016d9}
.contact-photo-dialog h2{font-size:1.05rem;margin:0;overflow-wrap:anywhere}
.contact-photo-full{display:grid;place-items:center;min-height:240px;margin-top:18px}
.contact-photo-full>img{display:block;max-width:100%;max-height:75vh;object-fit:contain;border-radius:8px}
.contact-photo-full [hidden]{display:none!important}
@media(max-width:650px){.contact-profile-photo{width:112px;height:112px}.contact-photo-dialog{padding:14px;max-width:96vw}.contact-photo-full>img{max-height:70dvh}}
