/* Locked contacts: a single action next to the company title. */
.ooo-container__header,
.ip-container__header { position: relative !important; }

.sx-company-contacts--title-action {
  position: absolute !important;
  top: 18px !important;
  right: 0 !important;
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.sx-company-contacts--title-action .sx-company-contacts__head,
.sx-company-contacts--title-action .sx-ip-contact-preview { display: none !important; }
.sx-company-contacts--title-action .sx-company-contacts__button {
  display: inline-flex !important;
  min-height: 44px !important;
  padding: 11px 17px !important;
  border-radius: 12px !important;
  box-shadow: 0 5px 16px rgba(69, 87, 214, .18) !important;
}
.ooo-container__header:has(.sx-company-contacts--title-action),
.ip-container__header:has(.sx-company-contacts--title-action) { padding-right: 230px !important; }

/* Unlocked contacts: full dynamic table below the summary. */
.sx-company-contacts.is-unlocked {
  display: block !important;
  padding: 0 !important;
  overflow: hidden;
}
.sx-company-contacts.is-unlocked > .sx-company-contacts__head,
.sx-company-contacts.is-unlocked > .sx-company-contacts__values,
.sx-company-contacts.is-unlocked > .sx-ip-contacts-more { display: none !important; }

.sx-contact-data { width: 100%; }
.sx-contact-data__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 22px 15px;
}
.sx-contact-data__heading span { color: #69758a; font-size: 13px; font-weight: 650; }
.sx-contact-data__heading h2 { margin: 3px 0 0; color: #172033; font-size: 20px; line-height: 1.25; }
.sx-contact-data__heading > b { padding: 6px 10px; border-radius: 999px; background: #eef2f7; color: #556174; font-size: 13px; white-space: nowrap; }
.sx-contact-data__tools { padding: 0 22px 14px; }
.sx-contact-data__tools label { display: flex; align-items: center; gap: 9px; max-width: 420px; padding: 9px 12px; border-radius: 11px; background: #f3f5f8; color: #788397; }
.sx-contact-data__tools input { width: 100%; border: 0; outline: 0; background: transparent; color: #172033; font-size: 14px; }
.sx-contact-data__scroll { overflow-x: auto; }
.sx-contact-data table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.sx-contact-data th { padding: 10px 22px; border-top: 1px solid #edf0f4; border-bottom: 1px solid #edf0f4; color: #737f92; text-align: left; font-size: 12px; font-weight: 650; }
.sx-contact-data th:first-child { width: 170px; }
.sx-contact-data th:last-child { width: 104px; }
.sx-contact-data th button { padding: 0; border: 0; background: none; color: inherit; font: inherit; cursor: pointer; }
.sx-contact-data td { padding: 13px 22px; border-bottom: 1px solid #edf0f4; color: #273247; font-size: 15px; overflow-wrap: anywhere; }
.sx-contact-data td:first-child { color: #667286; font-size: 14px; }
.sx-contact-data td:first-child i { width: 21px; color: #7a8597; }
.sx-contact-data td:nth-child(2) a { color: #172033; font-weight: 600; text-decoration: none; }
.sx-contact-data td:last-child { text-align: right; white-space: nowrap; }
.sx-contact-data td:last-child a,
.sx-contact-data td:last-child button { display: inline-grid; place-items: center; width: 32px; height: 32px; margin-left: 3px; padding: 0; border: 0; border-radius: 9px; background: #f0f3f7; color: #4f5c71; cursor: pointer; }
.sx-contact-data__more { display: block; margin: 14px auto 16px; padding: 8px 13px; border: 0; border-radius: 10px; background: #eef2f7; color: #435066; font-size: 14px; font-weight: 650; cursor: pointer; }
.sx-contact-data__more span { margin-left: 4px; color: #778397; }
.sx-contact-data__empty { padding: 22px; color: #748094; text-align: center; }

@media (max-width: 700px) {
  .ooo-container__header:has(.sx-company-contacts--title-action),
  .ip-container__header:has(.sx-company-contacts--title-action) { padding-right: 0 !important; }
  .sx-company-contacts--title-action { position: static !important; margin-top: 15px !important; }
  .sx-contact-data__heading { align-items: flex-start; padding: 17px 16px 13px; }
  .sx-contact-data__heading h2 { font-size: 18px; }
  .sx-contact-data__tools { padding: 0 16px 12px; }
  .sx-contact-data th, .sx-contact-data td { padding-left: 16px; padding-right: 16px; }
  .sx-contact-data th:first-child { width: 112px; }
  .sx-contact-data th:last-child { width: 80px; }
  .sx-contact-data td { font-size: 14px; }
}

/* v5b: intentionally show only the primary phone and email. */
.sx-company-contacts.is-unlocked {
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 18px !important;
  padding: 17px 20px !important;
}
.sx-company-contacts.is-unlocked > .sx-company-contacts__head {
  display: block !important;
  order: 1 !important;
}
.sx-company-contacts.is-unlocked > .sx-company-contacts__values {
  display: grid !important;
  order: 2 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
}
.sx-company-contacts.is-unlocked > .sx-ip-contacts-more,
.sx-company-contacts.is-unlocked > .sx-contact-data { display: none !important; }
.sx-company-contacts.is-unlocked .sx-company-contacts__label {
  display: block !important;
  margin-bottom: 4px;
  color: #758094;
  font-size: 12px;
  font-weight: 600;
}
.sx-company-contacts.is-unlocked .sx-ip-contact-line {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.sx-company-contacts.is-unlocked .sx-ip-contact-line > span {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

@media (max-width: 700px) {
  .sx-company-contacts.is-unlocked {
    grid-template-columns: 1fr !important;
    gap: 13px !important;
    padding: 16px !important;
  }
  .sx-company-contacts.is-unlocked > .sx-company-contacts__values {
    grid-template-columns: 1fr !important;
  }
}
