.profile-layout > * { min-width: 0; }
.company-contacts { margin: 24px 0; padding-top: 4px; border-top: 1px solid var(--line); }
.contact-card { display: flex; gap: 12px; align-items: flex-start; margin: 12px 0; padding: 14px; background: white; border: 1px solid var(--line); border-radius: 12px; }
.contact-avatar { display: block; width: 64px; height: 64px; flex: 0 0 64px; object-fit: cover; border-radius: 50%; background: #eef2eb; border: 1px solid var(--line); }
.contact-avatar.is-default { padding: 16px; object-fit: contain; }
.contact-info { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.contact-info h4 { margin: 0; font-size: 16px; line-height: 1.4; }
.contact-primary { display: inline-block; background: #e7f2cd; padding: 3px 8px; border-radius: 6px; font-size: 12px; margin-top: 5px; }
.portrait-crop { padding: 16px; background: white; border: 1px solid var(--line); border-radius: 10px; margin-bottom: 20px; }
.portrait-crop h4 { margin: 0; }
.portrait-crop canvas { display: block; width: min(100%, 280px); height: auto; border-radius: 50%; margin: 15px auto; }
.portrait-crop input[type="range"] { padding: 8px 0; accent-color: var(--ink); }
.portrait-crop .workflow-actions { margin-top: 14px; }
.specialty-fields { border: 1px solid var(--line); border-radius: 12px; padding: 18px; min-width: 0; }
.specialty-options { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr)); gap: 10px; }
.contact-info .meta { margin: 4px 0 10px; line-height: 1.5; }
.contact-info .meta:last-child { margin-bottom: 0; }
.contact-link { display: block; font-size: 14px; padding: 6px 0; overflow-wrap: anywhere; }
.contact-link span { display: block; font-size: 13px; font-weight: 600; color: var(--muted); text-decoration: none; }
.contacts-editor { margin: 30px 0; padding-top: 22px; border-top: 1px solid var(--line); }
.contacts-editor > h3 { margin-top: 0; }
.contacts-editor > p { max-width: 70ch; }
.contacts-editor form > p { margin: 0; }
.contact-fields { margin: 0; padding: 18px; min-width: 0; border: 1px solid var(--line); border-radius: 12px; background: #f8faf5; }
.contact-fields legend { padding: 0 8px; font-weight: 700; }
.contact-editor-top { display: flex; gap: 18px; align-items: flex-start; margin-bottom: 18px; }
.contact-photo-controls { min-width: 0; flex: 1; }
.contact-photo-controls .meta { display: block; margin-top: 5px; }
.contact-photo-controls input { font-size: 14px; }
.contact-photo-controls .text { font-size: 13px; padding-left: 0; }
.contact-remove { margin-top: 16px; color: #983c23; padding-left: 0; }
.contacts-editor [data-add-contact] { justify-self: start; border-style: dashed; }
.contacts-editor .check { align-items: flex-start; }
.contacts-editor .check input { margin-top: 3px; }
@media (max-width: 400px) {
  .contact-card { padding: 12px; gap: 10px; }
  .contact-card .contact-avatar { width: 48px; height: 48px; flex-basis: 48px; }
  .contact-card .contact-avatar.is-default { padding: 11px; }
  .contact-fields { padding: 12px; }
  .contact-editor-top { flex-direction: column; gap: 12px; }
  .contact-photo-controls { width: 100%; }
}
