body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #1d1d1f;
  background: #f5f5f7;
  -webkit-font-smoothing: antialiased;
}
.app-shell {
  display: grid;
  grid-template-columns: 276px minmax(0, 1fr);
  min-height: 100vh;
}
.app-sidebar {
  position: sticky;
  top: 0;
  z-index: 20;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  width: 276px;
  height: 100vh;
  box-sizing: border-box;
  padding: 18px 16px;
  border-right: 1px solid rgba(210, 210, 215, 0.72);
  background: rgba(242, 243, 245, 0.94);
  backdrop-filter: blur(18px);
  transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.sidebar-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 48px;
  margin-bottom: 18px;
}
.sidebar-brand {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 10px;
  color: #1d1d1f;
}
.sidebar-brand-mark,
.sidebar-avatar,
.sidebar-icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
}
.sidebar-brand-mark {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: #111827;
  color: #ffffff;
  font-size: 12px;
  font-weight: 800;
}
.sidebar-brand-text {
  min-width: 0;
  overflow: hidden;
  font-size: 15px;
  font-weight: 760;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sidebar-toggle {
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 12px;
  background: rgba(229, 231, 235, 0.95);
  color: #4b5563;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.sidebar-toggle:hover,
.sidebar-toggle:focus-visible {
  background: rgba(17, 24, 39, 0.07);
  outline: none;
}
.sidebar-nav {
  display: grid;
  flex: 1 1 auto;
  min-height: 0;
  align-content: start;
  gap: 6px;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 3px;
  scrollbar-width: thin;
}

/* Admin mailbox separation: personal scope plus a dedicated read-only team view. */
.mail-subnav-label {
  padding: 7px 10px 2px;
  color: #7b8492;
  font-size: 11px;
  font-weight: 760;
  letter-spacing: 0.04em;
}

.mail-subnav-divider {
  height: 1px;
  margin: 6px 10px;
  background: rgba(29, 29, 31, 0.1);
}

.sidebar-team-mail-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.sidebar-team-mail-link small {
  padding: 2px 6px;
  border-radius: 999px;
  background: #eef2f7;
  color: #667085;
  font-size: 10px;
  font-weight: 760;
}

.sidebar-team-mail-link.active small {
  background: #dcecff;
  color: #0759bd;
}

.mail-personal-scope {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 8px 0 0;
  color: #667085;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
}

.mail-personal-scope span {
  padding: 3px 8px;
  border-radius: 999px;
  background: #e8f2ff;
  color: #075fca;
  font-size: 11px;
  font-weight: 780;
}

.team-mail-shell {
  min-width: 0;
}

.team-mail-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
}

.team-mail-heading h1 {
  margin: 0;
  color: #111827;
  font-size: clamp(30px, 3vw, 42px);
  font-weight: 780;
  letter-spacing: -0.035em;
  line-height: 1.08;
}

.team-mail-heading p {
  max-width: 72ch;
  margin: 10px 0 0;
  color: #667085;
  font-size: 14px;
  line-height: 1.55;
}

.team-mail-readonly-badge {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  box-sizing: border-box;
  padding: 7px 12px;
  border-radius: 999px;
  background: #eaf7ef;
  color: #157347;
  font-size: 12px;
  font-weight: 760;
}

.team-mail-readonly-badge i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #18864b;
}

.team-mail-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 20px;
  padding: 18px 20px;
  border: 1px solid #dfe4eb;
  border-radius: 14px 14px 0 0;
  background: #fff;
}

.team-mail-owner-filter {
  display: flex;
  align-items: end;
  gap: 10px;
  margin: 0;
}

.team-mail-owner-filter label {
  display: grid;
  min-width: min(100%, 320px);
  gap: 7px;
  color: #344054;
  font-size: 12px;
  font-weight: 720;
}

.team-mail-owner-filter select {
  width: 100%;
  min-height: 42px;
  box-sizing: border-box;
  padding: 0 38px 0 12px;
  border: 1px solid #cfd6df;
  border-radius: 10px;
  background: #fff;
  color: #101828;
  font: inherit;
  font-size: 14px;
}

.team-mail-owner-filter button {
  min-height: 42px;
  padding: 0 17px;
  border: 0;
  border-radius: 10px;
  background: #0a73df;
  color: #fff;
  font-size: 13px;
  font-weight: 760;
  cursor: pointer;
}

.team-mail-owner-filter button:hover {
  background: #075fbd;
}

.team-mail-owner-filter select:focus-visible,
.team-mail-owner-filter button:focus-visible,
.team-mail-stage-tab:focus-visible,
.team-mail-row:focus-visible,
.team-mail-pagination a:focus-visible {
  outline: 3px solid rgba(10, 115, 223, 0.28);
  outline-offset: 2px;
}

.team-mail-scope-note {
  display: grid;
  justify-items: end;
  gap: 3px;
  max-width: 430px;
  text-align: right;
}

.team-mail-scope-note strong {
  color: #344054;
  font-size: 12px;
}

.team-mail-scope-note span {
  color: #7b8492;
  font-size: 12px;
  line-height: 1.45;
}

.team-mail-stage-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(128px, 1fr));
  overflow-x: auto;
  border-right: 1px solid #dfe4eb;
  border-bottom: 1px solid #dfe4eb;
  border-left: 1px solid #dfe4eb;
  background: #f7f9fc;
}

.team-mail-stage-tab {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 58px;
  padding: 0 14px;
  border-right: 1px solid #e3e7ed;
  color: #5e6877;
  font-size: 13px;
  font-weight: 710;
  white-space: nowrap;
}

.team-mail-stage-tab:last-child {
  border-right: 0;
}

.team-mail-stage-tab strong {
  min-width: 24px;
  padding: 3px 7px;
  border-radius: 999px;
  background: #e7ebf1;
  color: #596273;
  font-size: 11px;
  text-align: center;
}

.team-mail-stage-tab:hover {
  background: #eef4fb;
  color: #155fa8;
}

.team-mail-stage-tab.active {
  background: #e9f3ff;
  color: #075fca;
  box-shadow: inset 0 -3px 0 #0a73df;
}

.team-mail-stage-tab.active strong {
  background: #0a73df;
  color: #fff;
}

.team-mail-workspace {
  display: grid;
  grid-template-columns: minmax(390px, 0.82fr) minmax(520px, 1.18fr);
  min-height: 620px;
  overflow: hidden;
  border: 1px solid #dfe4eb;
  border-top: 0;
  border-radius: 0 0 14px 14px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(21, 33, 52, 0.07);
}

.team-mail-list-panel {
  min-width: 0;
  border-right: 1px solid #dfe4eb;
  background: #fbfcfe;
}

.team-mail-list-panel > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 74px;
  box-sizing: border-box;
  padding: 15px 18px;
  border-bottom: 1px solid #e3e7ed;
  background: #fff;
}

.team-mail-list-panel h2 {
  margin: 0;
  color: #101828;
  font-size: 17px;
  font-weight: 760;
}

.team-mail-list-panel header p {
  margin: 4px 0 0;
  color: #7b8492;
  font-size: 12px;
}

.team-mail-list-scope {
  color: #667085;
  font-size: 11px;
  font-weight: 650;
  text-align: right;
}

.team-mail-list {
  display: grid;
}

.team-mail-row {
  display: grid;
  grid-template-columns: minmax(104px, 0.62fr) minmax(190px, 1.45fr) auto;
  align-items: center;
  gap: 14px;
  min-width: 0;
  padding: 15px 17px;
  border-bottom: 1px solid #e8ebf0;
  background: #fff;
  color: #1f2937;
  transition: background-color 150ms ease-out, box-shadow 150ms ease-out;
}

.team-mail-row:hover {
  background: #f2f7fd;
}

.team-mail-row.active {
  background: #e8f3ff;
  box-shadow: inset 3px 0 0 #0a73df;
}

.team-mail-owner {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 10px;
}

.team-mail-owner-avatar {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 50%;
  background: #dbeafe;
  color: #075fca;
  font-size: 13px;
  font-weight: 780;
}

.team-mail-owner-avatar.compact {
  width: 30px;
  height: 30px;
  flex-basis: 30px;
  font-size: 11px;
}

.team-mail-owner-avatar .user-avatar-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.team-mail-owner-copy {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.team-mail-owner-copy strong {
  overflow: hidden;
  color: #344054;
  font-size: 12px;
  font-weight: 740;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.team-mail-inactive {
  width: max-content;
  padding: 2px 5px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #667085;
  font-size: 9px;
  font-weight: 740;
}

.team-mail-row-main {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.team-mail-row-subject,
.team-mail-row-preview,
.team-mail-row-recipient {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.team-mail-row-subject {
  color: #101828;
  font-size: 13px;
  font-weight: 740;
}

.team-mail-row-preview {
  color: #667085;
  font-size: 12px;
}

.team-mail-row-recipient {
  color: #8a94a3;
  font-size: 11px;
}

.team-mail-row-meta {
  display: grid;
  justify-items: end;
  gap: 7px;
}

.team-mail-row-meta time {
  color: #7b8492;
  font-size: 10px;
  white-space: nowrap;
}

.team-mail-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #eef1f5;
  color: #5e6877;
  font-size: 11px;
  font-weight: 760;
  white-space: nowrap;
}

.team-mail-status-pending,
.team-mail-status-queued {
  background: #fff3d8;
  color: #8a5700;
}

.team-mail-status-approved,
.team-mail-status-sent {
  background: #e9f7ef;
  color: #157347;
}

.team-mail-status-reply {
  background: #e9f3ff;
  color: #075fca;
}

.team-mail-status-danger {
  background: #ffebea;
  color: #b42318;
}

.team-mail-detail-panel {
  min-width: 0;
  background: #fff;
}

.team-mail-detail {
  min-width: 0;
  padding: 22px 24px 28px;
}

.team-mail-detail-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
  padding-bottom: 18px;
  border-bottom: 1px solid #e5e9ef;
}

.team-mail-detail-header h2 {
  max-width: 32ch;
  margin: 16px 0 0;
  color: #101828;
  font-size: 22px;
  font-weight: 760;
  letter-spacing: -0.025em;
  line-height: 1.28;
}

.team-mail-detail-header p {
  margin: 8px 0 0;
  color: #667085;
  font-size: 12px;
  line-height: 1.45;
}

.team-mail-detail-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  padding: 16px 0;
  border-bottom: 1px solid #e5e9ef;
}

.team-mail-detail-meta > span {
  min-width: 0;
  padding: 8px 14px;
  border-right: 1px solid #edf0f4;
}

.team-mail-detail-meta > span:nth-child(3n) {
  border-right: 0;
}

.team-mail-detail-meta dt {
  margin-bottom: 4px;
  color: #7b8492;
  font-size: 10px;
  font-weight: 700;
}

.team-mail-detail-meta dd {
  overflow: hidden;
  margin: 0;
  color: #344054;
  font-size: 12px;
  font-weight: 650;
  overflow-wrap: anywhere;
}

.team-mail-message-frame {
  display: block;
  width: 100%;
  min-height: 390px;
  box-sizing: border-box;
  margin-top: 18px;
  border: 1px solid #dfe4eb;
  border-radius: 12px;
  background: #fff;
}

.team-mail-attachments {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid #e5e9ef;
}

.team-mail-attachments h3 {
  margin: 0 0 10px;
  color: #344054;
  font-size: 13px;
}

.team-mail-attachments ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.team-mail-attachments li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid #dfe4eb;
  border-radius: 9px;
  background: #f8fafc;
  color: #344054;
  font-size: 11px;
}

.team-mail-attachments li span {
  color: #7b8492;
}

.team-mail-detail-placeholder,
.team-mail-empty {
  display: grid;
  justify-items: center;
  align-content: center;
  min-height: 380px;
  padding: 34px;
  color: #667085;
  text-align: center;
}

.team-mail-detail-placeholder > span {
  display: grid;
  width: 56px;
  height: 56px;
  place-items: center;
  margin-bottom: 16px;
  border-radius: 50%;
  background: #eef4fb;
  color: #3972aa;
}

.team-mail-detail-placeholder .sidebar-svg {
  width: 25px;
  height: 25px;
}

.team-mail-detail-placeholder h2,
.team-mail-empty h3 {
  margin: 0;
  color: #344054;
  font-size: 17px;
}

.team-mail-detail-placeholder p,
.team-mail-empty p {
  max-width: 42ch;
  margin: 8px 0 0;
  font-size: 12px;
  line-height: 1.55;
}

.team-mail-empty {
  min-height: 260px;
}

.team-mail-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px;
  border-top: 1px solid #e5e9ef;
  background: #fff;
  color: #667085;
  font-size: 12px;
  font-weight: 650;
}

.team-mail-pagination a,
.team-mail-pagination > span {
  padding: 6px 9px;
  border-radius: 8px;
}

.team-mail-pagination a {
  color: #075fca;
}

.team-mail-pagination a:hover {
  background: #eaf3ff;
}

.team-mail-pagination .disabled {
  color: #a6aeb9;
}

@media (max-width: 1240px) {
  .team-mail-workspace {
    grid-template-columns: minmax(0, 1fr);
  }

  .team-mail-list-panel {
    border-right: 0;
    border-bottom: 1px solid #dfe4eb;
  }

  .team-mail-detail-placeholder {
    min-height: 260px;
  }
}

@media (max-width: 760px) {
  .team-mail-heading,
  .team-mail-controls {
    grid-template-columns: minmax(0, 1fr);
  }

  .team-mail-heading {
    display: grid;
    gap: 14px;
  }

  .team-mail-readonly-badge {
    width: max-content;
  }

  .team-mail-controls {
    padding: 16px;
  }

  .team-mail-owner-filter {
    align-items: stretch;
    flex-direction: column;
  }

  .team-mail-owner-filter label {
    min-width: 0;
  }

  .team-mail-scope-note {
    justify-items: start;
    text-align: left;
  }

  .team-mail-stage-tabs {
    grid-template-columns: repeat(5, minmax(132px, 1fr));
  }

  .team-mail-row {
    grid-template-columns: minmax(92px, 0.62fr) minmax(160px, 1.38fr);
  }

  .team-mail-row-meta {
    grid-column: 1 / -1;
    grid-template-columns: auto 1fr;
    align-items: center;
    justify-items: start;
  }

  .team-mail-detail {
    padding: 18px 16px 22px;
  }

  .team-mail-detail-header {
    display: grid;
  }

  .team-mail-detail-meta {
    grid-template-columns: minmax(0, 1fr);
  }

  .team-mail-detail-meta > span,
  .team-mail-detail-meta > span:nth-child(3n) {
    border-right: 0;
    border-bottom: 1px solid #edf0f4;
  }

  .team-mail-detail-meta > span:last-child {
    border-bottom: 0;
  }

  .team-mail-message-frame {
    min-height: 330px;
  }

  .mail-personal-scope {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }
}

/* Per-user Browser v1 contact checks. Kept separate from the legacy RR POC panel. */
.contact-browser-enrichment-form {
  display: grid;
  gap: 6px;
  min-width: 160px;
  margin-block-start: 9px;
  padding-block-start: 9px;
  border-block-start: 1px solid rgba(29, 29, 31, 0.1);
}

.contact-browser-enrichment-buttons {
  display: grid;
  gap: 6px;
}

.contact-browser-enrichment-buttons button {
  width: 100%;
  min-width: 0;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid rgba(0, 113, 227, 0.18);
  border-radius: 8px;
  background: #f1f7ff;
  color: #075fae;
  font-size: 12px;
  font-weight: 720;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
  cursor: pointer;
}

.contact-browser-enrichment-buttons button:hover {
  background: #e6f1ff;
  border-color: rgba(0, 95, 184, 0.28);
}

.contact-browser-enrichment-buttons button:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.24);
  outline-offset: 2px;
}

.contact-browser-enrichment-buttons button:disabled {
  cursor: progress;
  opacity: 0.58;
}

.contact-browser-enrichment-status {
  min-height: 0;
  margin: 0;
  color: #5f6873;
  font-size: 11.5px;
  font-weight: 680;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.contact-browser-enrichment-status:empty {
  display: none;
}

.contact-browser-enrichment-status[data-state="running"] {
  color: #075fae;
}

.contact-browser-enrichment-status[data-state="success"] {
  color: #1f7a3d;
}

.contact-browser-enrichment-status[data-state="error"] {
  color: #b42318;
}

.contact-browser-enrichment-note {
  display: block;
  color: #6e7781;
  font-size: 10.5px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.sidebar-link {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  padding: 0 12px;
  column-gap: 10px;
  border-radius: 8px;
  color: #2f343b;
  line-height: 1.2;
  justify-items: start;
}
.sidebar-link:hover,
.sidebar-link.active {
  background: rgba(229, 231, 235, 0.95);
  color: #111827;
}
.sidebar-icon {
  width: 34px;
  height: 34px;
  color: #1f2937;
  font-size: 13px;
  font-weight: 800;
}
.sidebar-svg {
  width: 24px;
  height: 24px;
}
.sidebar-label {
  min-width: 0;
  overflow: hidden;
  font-size: 16px;
  font-weight: 620;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sidebar-mail-group,
.sidebar-customer-group {
  display: grid;
  gap: 4px;
}
.sidebar-mail-parent.active,
.sidebar-customer-parent.active {
  background: rgba(229, 231, 235, 0.95);
  color: #111827;
}
.mail-subnav {
  display: grid;
  gap: 3px;
  margin: 0 0 4px 44px;
}
.sidebar-sub-link {
  display: block;
  min-height: 30px;
  box-sizing: border-box;
  padding: 7px 10px;
  border-radius: 8px;
  color: #5f6b7a;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.15;
}
.sidebar-sub-link:hover,
.sidebar-sub-link.active {
  background: rgba(0, 122, 255, 0.1);
  color: #0a66d9;
}
.sidebar-footer {
  display: grid;
  flex: 0 0 auto;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding-top: 16px;
}
.sidebar-footer form {
  justify-self: end;
  margin: 0;
}
.sidebar-footer button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 36px;
  margin: 0;
  padding: 0 9px;
  border: 1px solid rgba(29, 29, 31, 0.13);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.72);
  color: #4b5563;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
}
.sidebar-footer button:hover {
  border-color: rgba(29, 29, 31, 0.2);
  background: #ffffff;
  color: #111827;
}
.sidebar-avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #111827;
  color: #ffffff;
  font-size: 15px;
  font-weight: 800;
}
.sidebar-user {
  display: grid;
  min-width: 0;
  color: #6b7280;
  font-size: 12px;
  line-height: 1.25;
}
.sidebar-user strong {
  overflow: hidden;
  color: #111827;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sidebar-user small {
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sidebar-user small a {
  display: inline-flex;
  width: fit-content;
  min-height: 22px;
  align-items: center;
  margin-top: 1px;
  padding: 0 3px;
  border-radius: 5px;
  color: #667085;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0.01em;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color 150ms ease, color 150ms ease;
}
.sidebar-user small a:hover {
  background: rgba(0, 113, 227, 0.07);
  color: #075fb8;
}
.sidebar-user small a:focus-visible {
  background: rgba(0, 113, 227, 0.08);
  color: #075fb8;
  outline: 2px solid rgba(0, 113, 227, 0.28);
  outline-offset: 1px;
}
.sidebar-collapsed .app-shell {
  grid-template-columns: 76px minmax(0, 1fr);
}
.sidebar-collapsed .app-sidebar {
  width: 76px;
  padding: 18px 10px;
}
.sidebar-collapsed .sidebar-brand {
  display: none;
}
.sidebar-collapsed .sidebar-brand-text,
.sidebar-collapsed .sidebar-label,
.sidebar-collapsed .sidebar-user,
.sidebar-collapsed .mail-subnav {
  display: none;
}
.sidebar-collapsed .sidebar-topbar,
.sidebar-collapsed .sidebar-footer {
  justify-content: center;
}
.sidebar-collapsed .sidebar-topbar {
  display: grid;
  gap: 10px;
  margin-bottom: 18px;
}
.sidebar-collapsed .sidebar-link,
.sidebar-collapsed .sidebar-footer {
  grid-template-columns: 1fr;
}
.sidebar-collapsed .sidebar-footer form {
  justify-self: center;
}
.sidebar-collapsed .sidebar-link {
  width: 44px;
  min-height: 44px;
  padding: 0;
  justify-self: center;
  justify-items: center;
}
.sidebar-collapsed .sidebar-icon {
  width: 44px;
  height: 44px;
  margin: 0 auto;
}
.sidebar-collapsed .sidebar-toggle {
  width: 44px;
  height: 44px;
  background: transparent;
}
.sidebar-collapsed .sidebar-toggle:hover,
.sidebar-collapsed .sidebar-toggle:focus-visible {
  background: rgba(229, 231, 235, 0.95);
}
header {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 12px 24px;
  background: rgba(255, 255, 255, 0.88);
  border-bottom: 1px solid rgba(210, 210, 215, 0.72);
  backdrop-filter: blur(18px);
}
header strong {
  color: #1d1d1f;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
}
header nav {
  display: flex;
  flex: 1 1 320px;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: flex-end;
}
header nav a {
  flex: 0 0 auto;
  padding: 6px 8px;
  border-radius: 8px;
  color: #0f57c7;
  line-height: 1.2;
}
header nav a:hover {
  background: rgba(0, 113, 227, 0.08);
}
a {
  color: #0f57c7;
  text-decoration: none;
}
main {
  padding: 28px 24px 36px;
  overflow-x: auto;
}
.app-main {
  min-width: 0;
}
table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  background: #ffffff;
}
th, td {
  padding: 10px;
  border-bottom: 1px solid #e2e6eb;
  text-align: left;
}
th {
  background: #eef2f6;
}
details {
  min-width: 260px;
}
pre {
  max-width: 620px;
  white-space: pre-wrap;
  font-family: inherit;
  line-height: 1.45;
}
.notice {
  margin: 0 0 12px;
  color: #2f6b3f;
}
.diagnostics {
  margin: 0 0 12px;
  padding: 10px 12px 10px 28px;
  background: #fff8e6;
  border: 1px solid #ead59a;
}
.research-shell {
  display: grid;
  gap: 16px;
}
.research-refresh-region {
  display: contents;
}
.apple-page-shell {
  display: grid;
  gap: 16px;
}
.apple-page-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  min-height: 44px;
}
.apple-page-heading h1 {
  margin: 0;
  color: #1d1d1f;
  font-size: 34px;
  font-weight: 760;
  line-height: 1.12;
}
.page-kicker {
  margin: 0 0 4px;
  color: #657383;
  font-size: 12px;
  font-weight: 760;
  text-transform: uppercase;
}
.workbench-shell {
  gap: 18px;
}
.workbench-heading {
  align-items: center;
}
.workbench-brand-logo {
  display: block;
  width: clamp(118px, 12vw, 176px);
  height: auto;
  max-height: 108px;
  margin: 0 14px 0 32px;
  object-fit: contain;
  object-position: center;
}
.workbench-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 12px;
}
.workbench-metric-card {
  display: grid;
  min-height: 118px;
  box-sizing: border-box;
  padding: 16px;
  align-content: space-between;
  border-top: 4px solid #7d8b9b;
}
.workbench-metric-card span {
  color: #657383;
  font-size: 12px;
  font-weight: 760;
  line-height: 1.25;
}
.workbench-metric-card strong {
  display: block;
  margin: 8px 0 6px;
  color: #111827;
  font-size: 32px;
  font-weight: 780;
  line-height: 1;
}
.workbench-metric-card p {
  margin: 0;
  color: #657383;
  font-size: 12px;
  line-height: 1.35;
}
.workbench-metric-card.tone-blue {
  border-top-color: #2f80ed;
}
.workbench-metric-card.tone-amber {
  border-top-color: #d9a441;
}
.workbench-metric-card.tone-green {
  border-top-color: #2f9e75;
}
.workbench-metric-card.tone-purple {
  border-top-color: #8b5ac2;
}
.workbench-metric-card.tone-orange {
  border-top-color: #d97931;
}
.workbench-metric-card.tone-magenta {
  border-top-color: #cf4f8a;
}
.workbench-two-column {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  gap: 12px;
}
.workbench-view-tabs {
  display: inline-flex;
  width: fit-content;
  gap: 3px;
  padding: 4px;
  border-radius: 999px;
  background: #e8e8ed;
}
.workbench-view-tab {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border-radius: 999px;
  color: #5f6672;
  font-size: 14px;
  font-weight: 760;
}
.workbench-view-tab.active {
  background: #ffffff;
  color: #111827;
  box-shadow: 0 1px 8px rgba(17, 24, 39, 0.12);
}
.workbench-crm-view {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}
.crm-distribution-card,
.crm-group-card,
.crm-calendar-card {
  padding: 18px;
}
.crm-distribution-card {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(360px, 1.28fr);
  align-items: center;
  column-gap: clamp(24px, 4vw, 64px);
}
.crm-distribution-card > .panel-heading {
  grid-column: 1 / -1;
}
.crm-donut-stage {
  position: relative;
  display: grid;
  width: min(300px, 100%);
  aspect-ratio: 1;
  margin: 10px auto 18px;
  place-items: center;
}
.crm-donut-svg {
  width: 100%;
  height: 100%;
  overflow: visible;
  transform: rotate(-90deg);
}
.crm-donut-track,
.crm-donut-segment {
  fill: none;
  stroke-width: 22;
}
.crm-donut-track {
  stroke: #eef0f4;
}
.crm-donut-segment {
  cursor: pointer;
  transition: opacity 160ms ease, filter 160ms ease;
}
.crm-donut-segment:hover {
  opacity: 0.88;
  stroke-width: 25;
}
.crm-donut-link:focus,
.crm-donut-link:focus-visible {
  outline: none;
  box-shadow: none;
}
.crm-donut-link:focus-visible .crm-donut-segment {
  opacity: 1;
  stroke-width: 25;
  filter: drop-shadow(0 0 2px rgba(0, 113, 227, 0.8));
}
.crm-donut-center {
  position: absolute;
  inset: 27%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  pointer-events: none;
  text-align: center;
}
.crm-donut-center strong {
  color: #1d1d1f;
  font-size: 54px;
  font-weight: 780;
  letter-spacing: 0;
  line-height: 0.95;
}
.crm-donut-center span {
  margin-top: 10px;
  color: #657383;
  font-size: 14px;
  font-weight: 650;
}
.crm-donut-tooltip {
  position: absolute;
  z-index: 4;
  min-width: 180px;
  padding: 12px 14px;
  border: 1px solid rgba(29, 29, 31, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 10px 26px rgba(29, 29, 31, 0.14);
  color: #1d1d1f;
  pointer-events: none;
  transform: translate(-50%, -118%);
}
.crm-donut-tooltip[hidden] {
  display: none;
}
.crm-donut-tooltip div {
  display: grid;
  grid-template-columns: 12px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
}
.crm-donut-tooltip span[data-tooltip-swatch] {
  width: 11px;
  height: 11px;
  border-radius: 3px;
}
.crm-donut-tooltip strong {
  font-size: 14px;
  line-height: 1.2;
}
.crm-donut-tooltip em {
  color: #657383;
  font-size: 13px;
  font-style: normal;
  font-weight: 720;
  white-space: nowrap;
}
.crm-donut-tooltip small {
  display: block;
  margin-top: 10px;
  padding-top: 9px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
  color: #8a919c;
  font-size: 12px;
  line-height: 1.2;
}
.crm-legend {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: center;
  column-gap: clamp(28px, 4vw, 64px);
  row-gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.crm-legend li {
  min-width: 0;
}
.crm-legend-row {
  display: inline-grid;
  grid-template-columns: 10px minmax(0, max-content);
  align-items: center;
  justify-content: start;
  gap: 10px;
  width: fit-content;
  max-width: 100%;
  min-height: 44px;
  padding: 6px 8px;
  border-radius: 8px;
  color: #354052;
  font-size: 13px;
}
.crm-legend-row:hover,
.crm-legend-row:focus-visible {
  background: #f6f8fb;
  color: #111827;
  outline: none;
}
.crm-legend-swatch {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--legend-color);
}
.crm-legend-copy {
  display: inline-flex;
  min-width: 0;
  align-items: baseline;
  gap: 6px;
}
.crm-legend-copy strong {
  line-height: 1.45;
}
.crm-legend-row em {
  color: #657383;
  font-style: normal;
  font-weight: 760;
  line-height: 1.45;
  white-space: nowrap;
}
.crm-group-list {
  display: grid;
  gap: 8px;
}
.crm-group-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 13px 14px;
  border: 1px solid #e5e5ea;
  border-radius: 12px;
  background: #fbfbfd;
  color: #1d1d1f;
}
.crm-group-row:hover {
  border-color: rgba(0, 113, 227, 0.28);
  background: #f5f9ff;
}
.crm-group-row span,
.crm-group-row small {
  display: block;
  color: #657383;
  font-size: 12px;
  line-height: 1.35;
}
.crm-group-row strong {
  display: block;
  margin: 3px 0;
  color: #111827;
  font-size: 17px;
  line-height: 1.25;
}
.crm-group-row time {
  color: #111827;
  font-size: 13px;
  font-weight: 760;
  white-space: nowrap;
}
.team-progress-panel {
  overflow: hidden;
  padding: 0;
}
.team-progress-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 22px 22px 14px;
}
.team-progress-heading h2 {
  margin: 0;
  color: #111827;
  font-size: 21px;
  letter-spacing: -0.02em;
}
.team-progress-summary {
  display: flex;
  flex: 0 0 auto;
  gap: 18px;
  margin: 0;
}
.team-progress-summary div {
  min-width: 64px;
  text-align: right;
}
.team-progress-summary dt {
  color: #64748b;
  font-size: 12px;
  font-weight: 650;
}
.team-progress-summary dd {
  margin: 1px 0 0;
  color: #111827;
  font-size: 20px;
  font-weight: 780;
}
.team-progress-filters {
  display: flex;
  gap: 4px;
  padding: 0 22px 14px;
  border-bottom: 1px solid #e6e9ee;
}
.team-progress-filter {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border-radius: 999px;
  color: #64748b;
  font-size: 13px;
  font-weight: 720;
}
.team-progress-filter:hover,
.team-progress-filter:focus-visible {
  background: #f1f5f9;
  color: #1e293b;
  outline: none;
}
.team-progress-filter.active {
  background: #e8f1ff;
  color: #075fb8;
}
.team-progress-table-scroll {
  max-width: 100%;
  overflow-x: auto;
  scrollbar-width: thin;
}
.team-progress-table {
  width: 100%;
  min-width: 1040px;
  border-collapse: collapse;
  table-layout: fixed;
}
.team-progress-table th,
.team-progress-table td {
  padding: 14px 12px;
  border-bottom: 1px solid #eceff3;
  text-align: left;
  vertical-align: middle;
}
.team-progress-table th {
  background: #f7f8fa;
  color: #667085;
  font-size: 12px;
  font-weight: 740;
  white-space: nowrap;
}
.team-progress-table th:nth-child(1) { width: 17%; }
.team-progress-table th:nth-child(2) { width: 13%; }
.team-progress-table th:nth-child(3) { width: 10%; }
.team-progress-table th:nth-child(4) { width: 11%; }
.team-progress-table th:nth-child(5) { width: 18%; }
.team-progress-table th:nth-child(6) { width: 23%; }
.team-progress-table th:nth-child(7) { width: 8%; }
.team-progress-table tbody tr:last-child td {
  border-bottom: 0;
}
.team-progress-table tbody tr:hover {
  background: #fafcff;
}
.team-progress-table td > strong,
.team-progress-table td > small,
.team-progress-table td > span:not(.team-owner):not(.team-progress-status) {
  display: block;
}
.team-progress-table td > strong {
  color: #172033;
  font-size: 14px;
  line-height: 1.35;
}
.team-progress-table td > small,
.team-progress-goal span,
.team-progress-no-date {
  margin-top: 4px;
  color: #718096;
  font-size: 12px;
  line-height: 1.35;
}
.team-progress-goal strong {
  font-size: 15px;
}
.team-owner {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
}
.team-owner strong {
  overflow-wrap: anywhere;
  color: #172033;
  font-size: 13px;
}
.team-owner-avatar,
.data-owner-avatar {
  display: inline-grid;
  overflow: hidden;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #111827;
  color: #ffffff;
  font-weight: 780;
}
.team-owner-avatar {
  width: 30px;
  height: 30px;
  font-size: 12px;
}
.data-owner-avatar {
  width: 26px;
  height: 26px;
  font-size: 11px;
}
.team-owner-avatar img,
.data-owner-avatar img,
.sidebar-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.team-progress-status {
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  padding: 3px 9px;
  border-radius: 999px;
  background: #eef2f6;
  color: #52606f;
  font-size: 12px;
  font-weight: 740;
  white-space: nowrap;
}
.team-progress-status.is-in_progress,
.team-progress-status.is-preparing {
  background: #e8f1ff;
  color: #075fb8;
}
.team-progress-status.is-follow_up {
  background: #fff4df;
  color: #9a5b00;
}
.team-progress-status.is-covered {
  background: #e7f5ed;
  color: #147a4b;
}
.team-progress-status.is-needs_data {
  background: #f5f1fb;
  color: #6f4aa3;
}
.team-progress-next time {
  display: block;
  margin-top: 4px;
  color: #52606f;
  font-size: 12px;
  font-weight: 680;
}
.team-progress-meter-copy {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}
.team-progress-meter-copy strong {
  color: #172033;
  font-size: 14px;
}
.team-progress-meter-copy span {
  color: #64748b;
  font-size: 12px;
}
.team-progress-meter {
  height: 6px;
  margin-top: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8edf3;
}
.team-progress-meter span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #2f9e75;
}
.team-progress-action {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border: 1px solid #bcd2ee;
  border-radius: 8px;
  background: #ffffff;
  color: #0a66c2;
  font-size: 12px;
  font-weight: 720;
  white-space: nowrap;
}
.team-progress-action:hover,
.team-progress-action:focus-visible {
  border-color: #80addd;
  background: #f3f8ff;
  outline: none;
}
.team-progress-action.secondary {
  border-color: #d8dee7;
  color: #52606f;
}
.team-progress-empty {
  margin: 0;
  padding: 34px 22px;
  color: #64748b;
  text-align: center;
}
.data-attribution {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 7px;
}
.data-attribution > span:last-child {
  display: grid;
  min-width: 0;
}
.data-attribution strong {
  overflow: hidden;
  color: #344054;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.data-attribution small {
  color: #7b8492;
  font-size: 11px;
  white-space: nowrap;
}
.customer-assignment-owner {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 7px;
}
.customer-assignment-owner strong {
  overflow: hidden;
  color: #26354a;
  font-size: 12px;
  font-weight: 740;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.customer-assignment-owner-cell,
.data-attribution-cell {
  min-width: 116px;
}
.customer-assignment-unassigned {
  display: inline-flex;
  min-height: 25px;
  align-items: center;
  padding: 0 9px;
  border-radius: 999px;
  background: #f1f3f5;
  color: #707a88;
  font-size: 11px;
  font-weight: 680;
  white-space: nowrap;
}
.sidebar-avatar {
  overflow: hidden;
}
.crm-calendar-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin: 8px 0 16px;
}
.crm-calendar-title strong {
  font-size: 22px;
}
.crm-calendar-title span {
  color: #657383;
  font-size: 13px;
}
.crm-calendar-weekdays,
.crm-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(112px, 1fr));
}
.crm-calendar-weekdays span {
  padding: 0 10px 8px;
  color: #7b8492;
  font-size: 12px;
  font-weight: 760;
  text-align: right;
}
.crm-calendar-grid {
  border-top: 1px solid #e5e5ea;
  border-left: 1px solid #e5e5ea;
}
.crm-calendar-cell {
  min-height: 118px;
  padding: 9px;
  border-right: 1px solid #e5e5ea;
  border-bottom: 1px solid #e5e5ea;
  background: #ffffff;
}
.crm-calendar-cell.muted {
  background: #fafafa;
}
.crm-calendar-cell.today time {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #ff3b30;
  color: #ffffff;
}
.crm-calendar-cell time {
  display: block;
  margin-left: auto;
  color: #2f343b;
  font-weight: 700;
  text-align: right;
}
.crm-calendar-event {
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin-top: 8px;
  padding: 6px 8px;
  border: 0;
  border-radius: 8px;
  background: #eef5ff;
  color: #0f57c7;
  box-shadow: none;
  cursor: pointer;
  font-family: inherit;
  font-size: 12px;
  font-weight: 760;
  line-height: 1.25;
  text-align: left;
}
.crm-calendar-event:hover {
  background: #e2efff;
}
.crm-calendar-event:focus-visible {
  outline: none;
  box-shadow: var(--apple-focus);
}
.crm-calendar-event.is-in_progress {
  background: #e7f3ff;
  color: #075fbe;
}
.crm-calendar-event.is-completed {
  background: #edf8f1;
  color: #18794e;
}
.crm-calendar-event.is-completed strong {
  text-decoration: line-through;
  text-decoration-color: rgba(24, 121, 78, 0.45);
}
.crm-calendar-event strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.crm-calendar-event span {
  display: block;
  margin-top: 2px;
  color: #516070;
  font-weight: 650;
}
.workbench-panel {
  padding: 16px;
}
.panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}
.panel-heading h2 {
  margin: 0;
  font-size: 18px;
  line-height: 1.2;
}
.panel-heading p {
  margin: 4px 0 0;
  color: #657383;
  font-size: 12px;
  line-height: 1.35;
}
.workbench-action-grid,
.usage-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(130px, 1fr));
  gap: 10px;
}
.usage-summary-grid {
  grid-template-columns: repeat(4, minmax(140px, 1fr));
  margin-bottom: 14px;
}
.workbench-action-grid .workbench-metric-card,
.usage-summary-grid .workbench-metric-card {
  min-height: 96px;
  padding: 12px;
  box-shadow: none;
}
.workbench-action-grid .workbench-metric-card strong,
.usage-summary-grid .workbench-metric-card strong {
  font-size: 24px;
}
.usage-window-tabs {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 3px;
  padding: 3px;
  border-radius: 999px;
  background: #e7e7ea;
}
.usage-window-tab {
  display: inline-flex;
  min-width: 52px;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #5c6068;
  font-size: 14px;
  font-weight: 760;
}
.usage-window-tab.active {
  background: #ffffff;
  color: #111827;
  box-shadow: 0 1px 8px rgba(17, 24, 39, 0.12);
}
.workbench-usage-table,
.workbench-pipeline-table {
  min-width: 760px;
}
.workbench-pipeline-table td span {
  color: #657383;
  font-size: 12px;
}
.crm-stage-pill {
  display: inline-flex;
  padding: 4px 8px;
  border-radius: 999px;
  background: #f0f4f8;
  color: #405064 !important;
  font-weight: 760;
}
.crm-stage-pill.tone-danger,
.do-not-contact-badge {
  background: #fff1f0;
  color: #b42318 !important;
  border: 1px solid #ffd0ca;
}
.do-not-contact-badge {
  display: inline-flex;
  margin-top: 6px;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
}
.follow-up-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.follow-up-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 10px;
  padding: 10px 0;
  border-bottom: 1px solid #edf0f3;
}
.follow-up-item strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.follow-up-item span {
  color: #657383;
  font-size: 12px;
}
.follow-up-item time {
  grid-row: 1 / span 2;
  grid-column: 2;
  color: #1d1d1f;
  font-size: 12px;
  font-weight: 760;
}
.empty-state.compact {
  min-height: 0;
  margin: 0;
  padding: 12px;
  color: #657383;
  background: #f8fafc;
  border-radius: 8px;
}
.apple-card {
  min-width: 0;
  border: 1px solid rgba(125, 139, 155, 0.22);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 8px 24px rgba(25, 35, 49, 0.05);
}
.apple-form {
  display: grid;
  gap: 14px 16px;
  margin: 0;
}
.apple-form label {
  display: grid;
  gap: 6px;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 700;
}
.apple-form input,
.apple-form select,
.apple-form textarea {
  box-sizing: border-box;
  width: 100%;
  min-height: 42px;
  padding: 9px 12px;
  border: 1px solid #d2d2d7;
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  outline: none;
}
.apple-form input:focus,
.apple-form select:focus,
.apple-form textarea:focus {
  border-color: #0071e3;
  box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.14);
}
.apple-form button {
  align-self: end;
  min-height: 42px;
  padding: 10px 16px;
  border: 1px solid #0071e3;
  border-radius: 8px;
  background: #0071e3;
  color: #ffffff;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
}
.apple-form button:hover {
  background: #0077ed;
}
.market-control {
  gap: 8px;
}
.market-custom-input[hidden] {
  display: none !important;
}
.apple-form .market-control,
.research-form .market-control {
  min-width: 0;
}
.research-page-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  min-height: 44px;
}
.research-page-heading h1 {
  margin: 0;
  color: #1d1d1f;
  font-size: 34px;
  font-weight: 760;
  line-height: 1.12;
}
.research-provider-notices {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.research-provider-notices .notice {
  margin: 0;
  padding: 6px 10px;
  border: 1px solid rgba(36, 128, 62, 0.14);
  border-radius: 999px;
  background: rgba(238, 248, 241, 0.9);
  color: #1f7a3d;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.25;
}
.research-provider-notices .warning {
  border-color: rgba(161, 91, 18, 0.18);
  background: rgba(255, 245, 232, 0.95);
  color: #a15b12;
}
.research-worker-strip {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 11px 14px;
  border: 1px solid #dfe4eb;
  border-radius: 12px;
  background: #ffffff;
}
.research-worker-identity,
.research-worker-context {
  display: flex;
  min-width: 0;
  align-items: center;
}
.research-worker-identity {
  flex: 0 0 auto;
  gap: 8px;
}
.research-worker-identity strong {
  color: #172033;
  font-size: 13px;
  font-weight: 760;
  line-height: 1.3;
}
.research-worker-dot {
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #7a8796;
}
.research-worker-state {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  padding: 3px 8px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #586575;
  font-size: 12px;
  font-weight: 720;
  line-height: 1.2;
  white-space: nowrap;
}
.research-worker-context {
  flex: 1 1 auto;
  justify-content: flex-end;
  gap: 8px 12px;
  color: #536174;
  font-size: 12px;
  line-height: 1.4;
  text-align: right;
}
.research-worker-context > span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.research-worker-context time {
  flex: 0 0 auto;
  color: #7a8796;
  font-size: 11px;
  white-space: nowrap;
}
.research-worker-strip[data-worker-state="online"] .research-worker-state {
  background: #e7f5ed;
  color: #147a4b;
}
.research-worker-strip[data-worker-state="online"] .research-worker-dot {
  background: #2d9b67;
}
.research-worker-strip[data-worker-state="waiting"] .research-worker-state {
  background: #fff5e8;
  color: #a15b12;
}
.research-worker-strip[data-worker-state="waiting"] .research-worker-dot {
  background: #d88921;
}
.research-worker-strip[data-worker-state="processing"] .research-worker-state {
  background: #edf5ff;
  color: #1769c2;
}
.research-worker-strip[data-worker-state="processing"] .research-worker-dot {
  background: #2a7fd1;
}
.research-status-grid {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) repeat(2, minmax(280px, 1fr));
  gap: 12px;
  margin: 0;
}

.research-task-panel {
  display: grid;
  min-width: 0;
  gap: 12px;
}
.research-task-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 16px;
}
.research-task-controls p {
  flex: 1 1 240px;
  margin: 0;
  color: #4a4944;
  font-size: 14px;
  line-height: 1.5;
}
.research-task-control-form {
  margin: 0;
}
.research-task-control-form button {
  min-height: 42px;
  padding: 9px 20px;
  border: 1px solid #6a6963;
  border-radius: 8px;
  background: #ffffff;
  color: #1c1c1a;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
}
.research-task-control-form button:hover {
  background: #f0efeb;
}
.research-task-control-form button:focus-visible {
  outline: 2px solid #1c1c1a;
  outline-offset: 3px;
}

/* Lieflat Charts F11 Tick Gauge — Mono, adapted from basics-gallery.html. */
.research-status-grid.research-dashboard {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 390px), 1fr));
  gap: 16px;
  align-items: start;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.research-dashboard > .status-card {
  padding: 24px 28px 20px;
  border: 0;
  border-radius: 24px;
  background: #f0efeb;
  color: #1c1c1a;
  box-shadow: none;
}
.research-dashboard > .overview-card { align-self: stretch; }
.research-dashboard > .research-chart-card { container: research-provider / inline-size; }
.research-dashboard h2 { font-size: 16.5px; font-weight: 700; letter-spacing: -0.02em; }
.research-dashboard .status-pill { background: #deddd6; color: #4a4944; }
.research-dashboard .status-metric span,
.research-dashboard .provider-card-header p,
.research-dashboard .provider-segment span { color: #6a6963; }
.research-dashboard .status-metric strong { color: #1c1c1a; }
.research-overview-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin: 22px 0 14px;
}
.research-overview-summary .status-metric strong { font-size: 26px; font-weight: 800; }
.research-provider-summary { display: flex; align-items: center; gap: 24px; margin: 8px 0 12px; }
.research-dashboard .research-provider-summary > .provider-metrics { flex: 1; margin: 0; gap: 18px 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.research-provider-summary .status-metric strong { font-size: 20px; font-weight: 800; }
.research-tick-gauge { flex: 0 1 280px; min-width: 0; margin: 0; text-align: center; }
.research-tick-gauge svg { display: block; width: 100%; height: auto; overflow: visible; }
.research-tick-gauge svg text { font-family: inherit; }
.research-tick-gauge figcaption { color: #4a4944; font-size: 12px; font-weight: 600; }
.research-tick-gauge > small { display: block; margin-top: 5px; color: #6a6963; font-size: 10px; letter-spacing: .08em; }
.research-gauge-tick { opacity: 1; }
.research-gauge-revealing .research-gauge-tick { animation: research-gauge-reveal .9s cubic-bezier(.25,1,.5,1) backwards; animation-delay: var(--tick-delay); }
@keyframes research-gauge-reveal { from { opacity: .2; } to { opacity: 1; } }
.research-dashboard-details { margin-top: 12px; }
.research-dashboard-details > summary {
  display: list-item;
  width: fit-content;
  min-height: 36px;
  padding: 8px 0;
  color: #4a4944;
  font-size: 12px;
  cursor: pointer;
}
.research-dashboard-details > summary:focus-visible { outline: 2px solid #1c1c1a; outline-offset: 4px; }
.research-dashboard-details[open] > summary { margin-bottom: 10px; }
.research-dashboard .provider-segment { border-top-color: #deddd6; }
.research-dashboard .provider-segment strong { color: #4a4944; font-size: 12px; font-weight: 600; }
.research-dashboard .provider-error { padding: 12px 0; border-block: 1px solid #b0afa9; }
@container research-provider (max-width: 480px) {
  .research-provider-summary { flex-direction: column; gap: 20px; }
  .research-tick-gauge { flex-basis: auto; width: min(100%, 280px); }
  .research-provider-summary > .provider-metrics { align-self: stretch; }
}
@media (max-width: 700px) {
  .research-dashboard > .status-card { padding: 20px; }
  .research-overview-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .research-provider-summary { flex-direction: column; gap: 20px; }
  .research-tick-gauge { flex-basis: auto; width: min(100%, 280px); }
  .research-provider-summary > .provider-metrics { align-self: stretch; }
  .research-dashboard-details > summary { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  .research-gauge-revealing .research-gauge-tick { animation: none; }
}

.research-task-panel[data-auto-dismiss] {
  transition: opacity 180ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 180ms cubic-bezier(0.16, 1, 0.3, 1);
}

.research-task-panel.is-dismissing {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-3px);
}
.status-card {
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(125, 139, 155, 0.22);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 8px 24px rgba(25, 35, 49, 0.06);
}
.overview-heading,
.provider-card-header,
.provider-progress-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.overview-heading h2,
.provider-card-header h2 {
  margin: 0;
  font-size: 15px;
  line-height: 1.25;
}
.provider-card-header p {
  margin: 4px 0 0;
  color: #657383;
  font-size: 12px;
  line-height: 1.35;
}
.status-pill {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #546170;
  font-size: 12px;
  font-weight: 700;
}
.status-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
}
.status-running {
  background: #edf5ff;
  color: #1769c2;
}
.status-complete {
  background: #eef8f1;
  color: #1f7a3d;
}
.status-pausing,
.status-paused,
.status-cooldown,
.status-partial {
  background: #fff5e8;
  color: #a15b12;
}
.status-failed {
  background: #fff0f0;
  color: #c43f3f;
}
.status-empty,
.status-missing,
.status-waiting {
  background: #f3f5f7;
  color: #64717f;
}
.overview-metrics,
.provider-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
  margin-top: 14px;
}
.status-metric {
  min-width: 0;
}
.status-metric span,
.provider-segment span,
.provider-progress-label span {
  display: block;
  color: #657383;
  font-size: 12px;
  line-height: 1.25;
}
.status-metric strong,
.provider-segment strong,
.provider-progress-label strong {
  display: block;
  margin-top: 3px;
  overflow-wrap: anywhere;
  font-size: 15px;
  line-height: 1.3;
}
.provider-progress {
  margin-top: 14px;
}
.progress-track {
  height: 6px;
  margin-top: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #edf0f4;
}
.progress-fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #1f7ae0;
}
.provider-card-xai .progress-fill {
  background: #21a67a;
}
.provider-segment {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #edf0f4;
}
.provider-error strong {
  color: #a15b12;
  font-size: 13px;
}
.diagnostics-card,
.research-warning-card,
.research-control-card,
.research-results-card {
  border: 1px solid rgba(125, 139, 155, 0.22);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 8px 24px rgba(25, 35, 49, 0.05);
}
.diagnostics-card {
  margin: 0;
  padding: 12px 14px 12px 32px;
  background: rgba(255, 248, 230, 0.82);
  border-color: rgba(234, 213, 154, 0.72);
}
.research-warning-card {
  margin: 0;
  padding: 12px 14px;
  background: rgba(255, 245, 232, 0.88);
  border-color: rgba(161, 91, 18, 0.18);
  color: #8a4a0b;
}
.research-control-card {
  padding: 18px;
}
.research-form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) minmax(260px, 0.95fr);
  gap: 14px 16px;
  margin: 0;
}
.research-form label {
  display: grid;
  gap: 6px;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 700;
}
.research-form input,
.research-form select,
.research-form textarea {
  box-sizing: border-box;
  width: 100%;
  min-height: 42px;
  padding: 9px 12px;
  border: 1px solid #d2d2d7;
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  outline: none;
}
.research-form input:focus,
.research-form select:focus,
.research-form textarea:focus {
  border-color: #0071e3;
  box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.14);
}
.research-form textarea {
  grid-column: 1 / -1;
  min-height: 92px;
}
.research-form button {
  align-self: end;
  min-height: 42px;
  padding: 10px 16px;
  border: 1px solid #0071e3;
  border-radius: 8px;
  background: #0071e3;
  color: #ffffff;
  font: inherit;
  font-weight: 650;
  cursor: pointer;
}
.research-form button:hover {
  background: #0077ed;
}
.research-actions {
  display: flex;
  gap: 0.75rem;
  align-items: end;
}
.research-actions button {
  min-width: 10rem;
}
.research-actions button:first-child {
  min-width: 16rem;
}
.customer-shell {
  min-width: 980px;
}
.customer-filter-form {
  grid-template-columns: repeat(3, minmax(180px, 1fr)) minmax(160px, 0.45fr);
  align-items: end;
  padding: 18px;
}
.customer-market-guard {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px 24px;
  padding: 18px;
  border-color: rgba(181, 106, 0, 0.22);
  background: linear-gradient(135deg, #fffdf8 0%, #fff8e8 100%);
}
.customer-market-guard.is-reviewed {
  border-color: rgba(36, 138, 61, 0.22);
  background: linear-gradient(135deg, #fbfffc 0%, #eef8f1 100%);
}
.customer-market-guard-copy {
  min-width: 0;
}
.customer-market-guard-copy > span {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  margin-bottom: 7px;
  padding: 0 9px;
  border-radius: 999px;
  background: rgba(181, 106, 0, 0.1);
  color: #995900;
  font-size: 11px;
  font-weight: 760;
}
.customer-market-guard.is-reviewed .customer-market-guard-copy > span {
  background: rgba(36, 138, 61, 0.1);
  color: #1f7534;
}
.customer-market-guard-copy h2 {
  margin: 0 0 5px;
  color: #1d1d1f;
  font-size: 17px;
  font-weight: 780;
}
.customer-market-guard-copy p {
  max-width: 86ch;
  margin: 0;
  color: #657383;
  font-size: 13px;
  line-height: 1.55;
}
.customer-market-guard-action button,
.customer-market-exclusion-item button {
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid rgba(0, 113, 227, 0.24);
  border-radius: 10px;
  background: #ffffff;
  color: #0068d1;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 740;
}
.customer-market-guard-action button:hover,
.customer-market-exclusion-item button:hover {
  border-color: rgba(0, 113, 227, 0.42);
  background: #f3f8ff;
}
.customer-market-exclusions {
  grid-column: 1 / -1;
  padding-top: 14px;
  border-top: 1px solid rgba(29, 29, 31, 0.09);
}
.customer-market-exclusions summary {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  color: #344054;
  cursor: pointer;
  font-size: 13px;
  font-weight: 740;
}
.customer-market-exclusions summary span {
  display: inline-grid;
  min-width: 22px;
  height: 22px;
  place-items: center;
  padding: 0 6px;
  border-radius: 999px;
  background: #edf2f7;
  color: #536273;
  font-size: 11px;
}
.customer-market-exclusions > p {
  margin: 10px 0 0;
  color: #657383;
  font-size: 12px;
  line-height: 1.5;
}
.customer-market-exclusions ul {
  display: grid;
  gap: 8px;
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}
.customer-market-exclusion-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid rgba(29, 29, 31, 0.08);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.74);
}
.customer-market-exclusion-item > div {
  display: grid;
  min-width: 0;
  gap: 2px;
}
.customer-market-exclusion-item strong,
.customer-market-exclusion-item small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.customer-market-exclusion-item strong {
  color: #1d1d1f;
  font-size: 13px;
}
.customer-market-exclusion-item small {
  color: #657383;
  font-size: 11px;
}
.customer-manual-intake {
  min-width: 0;
  overflow: hidden;
}
.customer-manual-intake-summary {
  display: flex;
  min-height: 72px;
  align-items: center;
  gap: 14px;
  padding: 14px 18px;
  list-style: none;
  cursor: pointer;
}
.customer-manual-intake-summary::-webkit-details-marker {
  display: none;
}
.customer-manual-intake-summary > span:first-child {
  display: grid;
  min-width: 0;
  gap: 3px;
  margin-right: auto;
}
.customer-manual-intake-summary strong {
  color: #1d1d1f;
  font-size: 16px;
  font-weight: 760;
}
.customer-manual-intake-summary small {
  color: #657383;
  font-size: 13px;
  font-weight: 560;
  line-height: 1.4;
}
.customer-manual-intake-summary::after {
  content: "＋";
  display: inline-grid;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  place-items: center;
  border-radius: 999px;
  background: #f1f5f9;
  color: #536273;
  font-size: 18px;
  line-height: 1;
}
.customer-manual-intake[open] .customer-manual-intake-summary::after {
  content: "−";
}
.customer-manual-intake-badge {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  background: #eef7f0;
  color: #248a3d;
  font-size: 12px;
  font-weight: 760;
}
.customer-manual-intake-body {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  border-top: 1px solid rgba(29, 29, 31, 0.08);
}
.customer-manual-intake-section {
  display: grid;
  min-width: 0;
  gap: 16px;
  align-content: start;
  padding: 18px;
}
.customer-manual-intake-section + .customer-manual-intake-section {
  border-left: 1px solid rgba(29, 29, 31, 0.08);
}
.customer-manual-intake-heading h2 {
  margin: 0 0 5px;
  color: #1d1d1f;
  font-size: 15px;
  font-weight: 760;
}
.customer-manual-intake-heading p,
.customer-manual-columns,
.customer-manual-intake-footnote {
  margin: 0;
  color: #657383;
  font-size: 12px;
  line-height: 1.55;
}
.customer-manual-form > input[type="hidden"] {
  display: none;
}
.customer-manual-upload-form {
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  align-items: end;
}
.customer-company-file-upload {
  grid-column: 1 / -1;
}
.customer-manual-upload-form > button {
  grid-column: 1 / -1;
  width: 100%;
  white-space: nowrap;
}
.customer-manual-single-form {
  grid-template-columns: repeat(2, minmax(180px, 1fr));
  align-items: end;
}
.customer-manual-single-form .customer-manual-notes {
  grid-column: 1 / -1;
}
.customer-manual-single-form textarea {
  min-height: 88px;
  resize: vertical;
}
.customer-manual-single-form button {
  width: fit-content;
  min-width: 140px;
}
.customer-manual-intake-footnote {
  padding: 12px 18px 14px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
  background: #fafbfc;
}
.customer-page-notice {
  margin: 0;
  padding: 11px 14px;
  border: 1px solid rgba(36, 138, 61, 0.2);
  border-radius: 8px;
  background: #eef8f1;
}
.customer-page-notice.notice-warning {
  border-color: rgba(181, 106, 0, 0.2);
  background: #fff8e8;
  color: #9a5b00;
}
.customer-page-notice.notice-error {
  border-color: rgba(180, 35, 24, 0.2);
  background: #fff3f2;
  color: #b42318;
}
.customer-website-email-backfill {
  overflow: hidden;
  padding: 0;
  border-radius: 16px;
  color: #1d1d1f;
}
.customer-website-email-backfill-copy {
  padding: 20px 24px 16px;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.customer-website-email-backfill-copy h2 {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 700;
}
.customer-website-email-backfill-copy p,
.customer-website-email-channel > header p,
.customer-website-email-detail-note {
  max-width: 72ch;
  margin: 4px 0 0;
  color: #626873;
  font-size: 12px;
  line-height: 1.55;
}
.customer-website-email-channels { display: block; }
.customer-website-email-channel {
  min-width: 0;
  padding: 18px 24px;
  border-top: 1px solid #e8e9ed;
}
.customer-website-email-channel.is-automatic { background: #f7f8fa; }
.customer-website-email-channel > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.customer-website-email-channel h3,
.customer-website-email-section-heading h3 {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
}
.customer-website-email-channel-state {
  flex-shrink: 0;
  color: #626873;
  font-size: 12px;
  font-weight: 600;
}
.is-automatic > header .customer-website-email-channel-state {
  padding: 5px 10px;
  border-radius: 999px;
  background: #e9ebef;
}
.customer-website-email-channel-state[data-state="running"],
.customer-website-email-channel-state[data-state="queued"],
.customer-website-email-channel-state[data-state="starting"] { color: #005bb5; }
.customer-website-email-channel-state[data-state="completed_with_errors"],
.customer-website-email-channel-state[data-state="failed"] { color: #a23a2a; }
.customer-website-email-mini {
  display: flex;
  gap: clamp(28px, 5vw, 80px);
  margin: 16px 0 6px;
}
.customer-website-email-mini > div { min-width: 0; }
.customer-website-email-mini dt { color: #626873; font-size: 11px; }
.customer-website-email-mini dd {
  margin: 4px 0 0;
  font-size: 22px;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.025em;
  line-height: 1.2;
}
.customer-website-email-backfill form { margin: 0; }
.customer-website-email-backfill-action { flex: 0 0 auto; }
.customer-website-email-backfill form input[type="hidden"] { display: none; }
.customer-website-email-backfill form button {
  min-height: 40px;
  padding: 9px 16px;
  border: 0;
  border-radius: 10px;
  background: #0071e3;
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}
.customer-website-email-backfill form button:hover:not(:disabled) { background: #0066cc; }
.customer-website-email-backfill form button:disabled {
  background: #eef0f3;
  color: #646c77;
  cursor: not-allowed;
}
.customer-website-email-backfill form button:focus-visible,
.customer-website-email-backfill summary:focus-visible {
  outline: 3px solid #0071e3;
  outline-offset: 3px;
}
.customer-website-email-details { margin-top: 10px; }
.customer-website-email-backfill summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  width: fit-content;
  cursor: pointer;
  list-style: none;
  color: #626873;
  font-size: 12px;
  font-weight: 500;
}
.customer-website-email-backfill summary::-webkit-details-marker { display: none; }
.customer-website-email-backfill summary::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  margin-right: 3px;
  border: solid currentColor;
  border-width: 0 1.5px 1.5px 0;
  transform: rotate(-45deg);
}
.customer-website-email-backfill details[open] > summary::before { transform: rotate(45deg); }
.customer-website-email-backfill summary:hover { color: #1d1d1f; }
.customer-website-email-details[open] > summary { margin-bottom: 8px; }
.customer-website-email-details .customer-website-email-progress { padding-top: 12px; }
.customer-website-email-details .customer-website-email-detail-note { margin-top: 10px; }
.customer-website-email-feedback {
  margin: 0 24px 14px;
  color: #a23a2a;
  font-size: 12px;
}
.customer-website-email-feedback[hidden] { display: none; }
.customer-website-email-coverage {
  padding: 8px 24px;
  border-top: 1px solid #e8e9ed;
}
.customer-website-email-coverage[open] { padding-bottom: 20px; }
.customer-website-email-section-heading { margin: 12px 0; }
.customer-website-email-section-heading p {
  margin: 5px 0 0;
  color: #626873;
  font-size: 11px;
}
.customer-website-email-coverage dl {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 16px;
  margin: 16px 0;
}
.customer-website-email-coverage dt { color: #626873; font-size: 11px; }
.customer-website-email-coverage dd {
  margin: 5px 0;
  font-size: 18px;
  font-weight: 650;
  font-variant-numeric: tabular-nums;
}
.customer-website-email-coverage small { color: #626873; font-size: 11px; line-height: 1.4; }
.customer-email-coverage-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin: 16px 0 12px;
  color: #626873;
  font-size: 11px;
}
.customer-email-coverage-legend > span { display: inline-flex; align-items: center; gap: 6px; }
.customer-email-coverage-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  box-sizing: border-box;
  margin-right: 7px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 50%;
  vertical-align: 1px;
}
.customer-email-coverage-dot.is-has-email { background: #2b8a57; }
.customer-email-coverage-dot.is-checked-empty { background: #c4473a; }
.customer-email-coverage-dot.is-not-checked { background: #98a2b3; }
.customer-email-coverage-legend .customer-email-coverage-dot { margin-right: 0; }
.customer-website-email-progress {
  grid-column: 1 / -1;
  padding-top: 16px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
}
.customer-website-email-progress-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  color: #334155;
  font-size: 13px;
}
.customer-website-email-progress-heading strong {
  color: #1d1d1f;
  font-size: 14px;
}
.customer-website-email-progress-track {
  height: 6px;
  margin-top: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: #e7ebf0;
}
.customer-website-email-progress-track span {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: #0071e3;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 240ms cubic-bezier(0.16, 1, 0.3, 1);
}
.customer-website-email-progress > p {
  margin: 8px 0 0;
  color: #526172;
  font-size: 12px;
  line-height: 1.5;
}
.customer-website-email-progress > p[data-state="error"] {
  color: #b42318;
}
.customer-website-email-progress-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  margin: 12px 0 0;
}
.customer-website-email-progress-stats div {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
}
.customer-website-email-progress-stats dt {
  color: #657383;
  font-size: 12px;
}
.customer-website-email-progress-stats dd {
  margin: 0;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 760;
}
.customer-website-email-failure-reasons {
  display: grid;
  gap: 7px;
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid rgba(180, 35, 24, 0.14);
  border-radius: 9px;
  background: #fff8f7;
}
.customer-website-email-failure-reasons[hidden] {
  display: none !important;
}
.customer-website-email-failure-reasons > strong {
  color: #7a271a;
  font-size: 11px;
  font-weight: 760;
}
.customer-website-email-failure-reasons ul {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.customer-website-email-failure-reasons li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 7px;
  border: 1px solid rgba(180, 35, 24, 0.1);
  border-radius: 999px;
  background: #ffffff;
  color: #7a3b33;
  font-size: 10px;
}
.customer-website-email-failure-reasons li strong {
  color: #b42318;
  font-variant-numeric: tabular-nums;
}
.customer-website-email-legacy {
  grid-column: 1 / -1;
  min-width: 0;
  padding: 13px 20px 16px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
  background: #fafbfc;
}
.customer-website-email-legacy[hidden] {
  display: none !important;
}
.customer-website-email-legacy > summary {
  width: fit-content;
  cursor: pointer;
  color: #536274;
  font-size: 12px;
  font-weight: 720;
}
.customer-website-email-legacy > summary:focus-visible {
  border-radius: 5px;
  outline: 3px solid rgba(0, 113, 227, 0.18);
  outline-offset: 3px;
}
.customer-website-email-legacy > p {
  margin: 8px 0 0;
  color: #6b7787;
  font-size: 11px;
  line-height: 1.45;
}
.customer-website-email-legacy .customer-website-email-progress {
  padding-top: 12px;
}
.customer-website-email {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 8px;
}
.customer-website-email-link {
  color: #0f57c7;
  font-weight: 680;
  overflow-wrap: anywhere;
}
.customer-website-email-badge,
.customer-website-email-empty {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #f1f4f7;
  color: #5b6877;
  font-size: 12px;
  font-weight: 700;
}
.customer-website-email-badge.is-verified {
  background: #eaf7ef;
  color: #187d45;
}
.customer-website-email-badge.is-saved {
  background: #edf4ff;
  color: #175ca8;
}
.customer-website-email-badge.is-warning,
.customer-website-email-empty.is-warning {
  background: #fff6df;
  color: #8a5700;
}
.customer-website-email-empty.is-error {
  background: #fff1f0;
  color: #b42318;
}
.customer-website-email-meta {
  flex-basis: 100%;
  color: #738091;
  font-size: 11px;
  line-height: 1.45;
}
.customer-website-email-meta a {
  color: #0f57c7;
  font-weight: 650;
}
.customer-website-email-review-note {
  flex-basis: 100%;
  color: #72510c;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.45;
}
.customer-company-website {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 8px;
  min-width: 0;
}
.customer-company-website-editor {
  min-width: 0;
}
.customer-company-website-editor > summary {
  width: fit-content;
  padding: 3px 5px;
  border-radius: 6px;
  color: #0f57c7;
  cursor: pointer;
  font-size: 11px;
  font-weight: 680;
  list-style-position: inside;
  white-space: nowrap;
}
.customer-company-website-editor > summary:hover {
  background: #edf4ff;
}
.customer-company-website-editor > summary:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.18);
  outline-offset: 2px;
}
.customer-company-website-form {
  margin-top: 8px;
  padding: 10px;
  border: 1px solid #dce3ec;
  border-radius: 9px;
  background: #f8fafc;
}
.customer-company-website-form .customer-inline-field {
  align-items: stretch;
  flex-direction: column;
}
.customer-company-website-form .customer-inline-actions {
  justify-content: flex-end;
}
.customer-company-website-form .customer-inline-label { flex: 0 0 auto; }
.customer-workbench-table .customer-company-website-editor { min-width: 0; max-width: 100%; }
.customer-company-cell > details:not([open]) { display: inline-block; margin-right: 8px; }
.customer-company-cell > .customer-company-website { display: inline-flex; vertical-align: top; }
.customer-company-cell > .customer-company-website:has(details[open]) { display: flex; width: 100%; }
.customer-company-cell .customer-company-website-form { width: 100%; max-width: 100%; }
.customer-company-website-live {
  flex-basis: 100%;
  color: #18723a;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.4;
}
.customer-company-website-live:empty {
  display: none;
}
.customer-company-website-live[data-state="error"] {
  color: #b42318;
}
.customer-inline-editor {
  width: min(440px, 72vw);
  max-width: 100%;
  box-sizing: border-box;
}
.customer-display-name-editor {
  margin-top: 10px;
  padding: 10px 0 12px;
  border-bottom: 1px solid #e2e8f0;
}
.customer-inline-field {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  min-width: 0;
}
.customer-inline-label {
  display: grid;
  flex: 1 1 240px;
  gap: 5px;
  min-width: 0;
  color: #344054;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}
.customer-inline-label input {
  width: 100%;
  min-width: 0;
  height: 36px;
  box-sizing: border-box;
  padding: 7px 10px;
  border: 1px solid #b8c4d3;
  border-radius: 8px;
  outline: none;
  background: #ffffff;
  color: #172033;
  font: inherit;
  font-size: 13px;
  font-weight: 550;
  line-height: 1.35;
}
.customer-inline-label input::placeholder {
  color: #667587;
  opacity: 1;
}
.customer-inline-label input:hover {
  border-color: #91a4ba;
}
.customer-inline-label input:focus-visible {
  border-color: #0071e3;
  outline: 3px solid rgba(0, 113, 227, 0.16);
  outline-offset: 0;
}
.customer-inline-save,
.customer-inline-cancel {
  min-height: 36px;
  box-sizing: border-box;
  padding: 7px 12px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 720;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
}
.customer-inline-save {
  border: 1px solid #0071e3;
  background: #0071e3;
  color: #ffffff;
}
.customer-inline-save:hover:not(:disabled) {
  border-color: #005fc0;
  background: #005fc0;
}
.customer-inline-save:focus-visible,
.customer-inline-cancel:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.2);
  outline-offset: 2px;
}
.customer-inline-save:disabled {
  border-color: #aab6c3;
  background: #aab6c3;
  cursor: wait;
}
.customer-inline-save[hidden] {
  display: none !important;
}
.customer-inline-actions {
  display: flex;
  align-items: center;
  gap: 4px;
}
.customer-inline-cancel {
  border: 1px solid transparent;
  background: transparent;
  color: #536274;
}
.customer-inline-cancel:hover {
  background: #edf2f7;
  color: #25364a;
}
.customer-inline-help {
  display: block;
  margin-top: 6px;
  color: #5f6f82;
  font-size: 11px;
  line-height: 1.45;
}
.customer-inline-feedback {
  margin: 6px 0 0;
  color: #526276;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.4;
}
.customer-inline-feedback:empty {
  display: none;
}
.customer-inline-feedback[data-state="success"] {
  color: #18723a;
}
.customer-inline-feedback[data-state="error"] {
  color: #b42318;
}
.customer-inline-editor[data-state="error"] .customer-inline-label input {
  border-color: #d92d20;
  outline-color: rgba(217, 45, 32, 0.12);
}
.customer-workbench-table .customer-website-email-editor {
  width: min(440px, 72vw);
  max-width: 100%;
  min-width: 0;
  margin-top: 0;
}
.customer-workbench-table .customer-website-email-editor > summary {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 28px;
  padding: 1px 2px;
  border-radius: 7px;
  list-style: none;
  color: #172033;
}
.customer-workbench-table .customer-website-email-editor > summary::-webkit-details-marker {
  display: none;
}
.customer-workbench-table .customer-website-email-editor > summary::before {
  width: 6px;
  height: 6px;
  flex: 0 0 auto;
  border-right: 1.5px solid #607086;
  border-bottom: 1.5px solid #607086;
  content: "";
  transform: rotate(-45deg);
  transform-origin: 55% 55%;
  transition: transform 140ms ease-out;
}
.customer-workbench-table .customer-website-email-editor[open] > summary::before {
  transform: rotate(45deg);
}
.customer-workbench-table .customer-website-email-editor > summary:hover {
  background: #f4f7fb;
}
.customer-workbench-table .customer-website-email-editor > summary:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.18);
  outline-offset: 2px;
}
.customer-website-email-edit-hint {
  color: #0f57c7;
  font-size: 12px;
  font-weight: 680;
  white-space: nowrap;
}
.customer-website-email-form {
  margin-top: 9px;
  padding: 10px 0 2px;
  border-top: 1px solid #e2e8f0;
}
.customer-website-email-form .customer-inline-field {
  align-items: stretch;
  flex-direction: column;
}
.customer-website-email-form .customer-inline-label {
  flex-basis: auto;
}
.customer-website-email-form .customer-inline-actions {
  justify-content: flex-end;
}
@media (prefers-reduced-motion: reduce) {
  .customer-workbench-table .customer-website-email-editor > summary::before {
    transition: none;
  }
  .customer-website-email-progress-track span {
    transition: none;
  }
}
@media (max-width: 1100px) {
  .customer-manual-intake-body {
    grid-template-columns: 1fr;
  }
  .customer-manual-intake-section + .customer-manual-intake-section {
    border-top: 1px solid rgba(29, 29, 31, 0.08);
    border-left: 0;
  }
  .customer-website-email-coverage dl { grid-template-columns: repeat(4, minmax(0, 1fr)); }

}
@media (max-width: 700px) {
  .customer-manual-intake-summary {
    align-items: flex-start;
  }
  .customer-manual-intake-badge {
    display: none;
  }
  .customer-website-email-backfill-copy { padding: 18px 16px 14px; }
  .customer-website-email-channel { padding: 16px; }
  .customer-website-email-coverage { padding-right: 16px; padding-left: 16px; }
  .customer-website-email-coverage dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .customer-website-email-mini { justify-content: space-between; gap: 16px; }
  .customer-website-email-mini dd { font-size: 20px; }
  .customer-website-email-channel.is-manual > header { align-items: stretch; flex-direction: column; gap: 12px; }
  .customer-website-email-backfill form button { width: 100%; min-height: 44px; }
  .customer-website-email-backfill summary { min-height: 44px; }
  .customer-manual-upload-form,
  .customer-manual-single-form {
    grid-template-columns: 1fr;
  }
  .customer-manual-single-form .customer-manual-notes {
    grid-column: auto;
  }
  .customer-inline-field {
    align-items: stretch;
    flex-direction: column;
  }
  .customer-inline-label {
    flex-basis: auto;
  }
  .customer-inline-label input {
    font-size: 16px;
  }
  .customer-inline-actions {
    justify-content: flex-end;
  }
  .customer-inline-save,
  .customer-inline-cancel {
    min-width: 72px;
  }
}
.customer-summary-row {
  display: block;
  min-width: 0;
}
.customer-overview-bar {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
  overflow: hidden;
  padding: 0;
}
.customer-overview-primary,
.customer-overview-email {
  display: grid;
  min-width: 0;
  min-height: 88px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 24px;
  padding: 18px 24px;
}
.customer-overview-email {
  border-left: 1px solid #e4e8ee;
}
.customer-overview-copy {
  display: grid;
  min-width: 0;
  gap: 5px;
}
.customer-overview-copy > span {
  color: #536174;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
}
.customer-overview-bar strong {
  justify-self: end;
  color: #1d1d1f;
  font-size: clamp(25px, 2vw, 29px);
  font-weight: 780;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.02em;
  line-height: 1;
  white-space: nowrap;
}
.customer-overview-copy small {
  color: #748092;
  font-size: 11px;
  line-height: 1.4;
}
.customer-select-page {
  display: inline-flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 0;
  color: inherit;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.customer-select-page input,
.customer-workbench-table [data-customer-select] {
  width: 17px;
  height: 17px;
  margin: 0;
  accent-color: #0071e3;
  cursor: pointer;
}
.customer-workbench-table tr.is-selected > td {
  background: #f2f7ff;
}
.customer-workbench-table [data-customer-select]:focus-visible,
.customer-select-page input:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.55);
  outline-offset: 2px;
}
.customer-results-card {
  overflow: hidden;
}
.product-group-panels {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: -4px 0 0;
}
.product-group-card {
  min-width: 220px;
  padding: 8px 10px;
  border: 1px solid rgba(125, 139, 155, 0.22);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 6px 18px rgba(25, 35, 49, 0.04);
}
.product-group-card summary {
  cursor: pointer;
  color: #1d1d1f;
  font-weight: 750;
}
.product-term-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}
.product-term-links a {
  padding: 4px 8px;
  border-radius: 999px;
  background: #f2f5fa;
  color: #0f57c7;
  font-size: 12px;
  font-weight: 650;
}
.customer-workbench-table {
  min-width: 1390px;
  border-collapse: separate;
  border-spacing: 0;
  background: transparent;
  table-layout: fixed;
}
.customer-workbench-table .customer-col-select {
  width: 56px;
}
.customer-workbench-table .customer-col-company {
  width: 220px;
}
.customer-workbench-table .customer-col-website {
  width: 76px;
}
.customer-workbench-table .customer-col-product {
  width: 92px;
}
.customer-workbench-table .customer-col-market {
  width: 76px;
}
.customer-workbench-table .customer-col-type {
  width: 96px;
}
.customer-workbench-table .customer-col-brand-scale {
  width: 92px;
}
.customer-workbench-table .customer-col-rocketreach-scale {
  width: 124px;
}
.customer-workbench-table .customer-col-linkedin {
  width: 90px;
}
.customer-workbench-table .customer-col-score {
  width: 72px;
}
.customer-workbench-table .customer-col-created-by,
.customer-workbench-table .customer-col-owner {
  width: 118px;
}
.customer-workbench-table .customer-col-status {
  width: 160px;
}
.customer-company-cell,
.customer-status-cell {
  min-width: 0;
}
.customer-selection-heading,
.customer-selection-cell {
  padding-right: 8px;
  padding-left: 8px;
  text-align: center;
}
.customer-company-cell > strong {
  display: block;
  max-width: 100%;
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}
.customer-workbench-table .customer-company-cell > details {
  min-width: 0;
}
.customer-status-cell .status-stack {
  max-width: 100%;
}
.customer-workbench-table details {
  margin-top: 6px;
  min-width: 220px;
}
.customer-workbench-table summary {
  cursor: pointer;
  color: #1f5fbf;
}
.customer-workbench-table .score-details {
  min-width: 0;
  margin-top: 0;
}
.customer-workbench-table .score-details summary {
  display: inline-block;
  min-width: 2.5rem;
  padding: 3px 7px;
  border: 1px solid #bfd0e7;
  background: #f4f8ff;
  color: #174c96;
  font-weight: 700;
}
.customer-workbench-table .score-details ul {
  margin: 8px 0 0;
  padding-left: 18px;
  min-width: 220px;
  max-width: 360px;
  color: #172026;
}
.customer-workbench-table .score-details li {
  margin: 3px 0;
}
.customer-workbench-table .scale-details {
  min-width: 0;
  margin-top: 0;
}
.customer-workbench-table .scale-details summary {
  display: inline-block;
  padding: 3px 9px;
  border: 1px solid #d6dde8;
  border-radius: 999px;
  background: #f8fafc;
  color: #1f2937;
  font-weight: 700;
}
.brand-scale-badge,
.customer-workbench-table .scale-details summary.brand-scale-badge {
  display: inline-flex;
  width: fit-content;
  min-height: 24px;
  box-sizing: border-box;
  align-items: center;
  padding: 3px 8px;
  border: 0;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 760;
  line-height: 1.25;
  white-space: nowrap;
}
.brand-scale-badge.brand-scale-large {
  background: #edf4ff;
  color: #075bc1;
}
.brand-scale-badge.brand-scale-medium {
  background: #edf8f0;
  color: #18723a;
}
.brand-scale-badge.brand-scale-small {
  background: #fff5df;
  color: #7a4a00;
}
.brand-scale-badge.brand-scale-micro {
  background: #f4efff;
  color: #6941c6;
}
.brand-scale-badge.brand-scale-unknown {
  background: #f2f3f5;
  color: #4d5968;
}
.customer-workbench-table .scale-details dl {
  min-width: 260px;
  max-width: 420px;
  margin-top: 8px;
}
.score-breakdown-list {
  display: grid;
  gap: 8px;
  min-width: 300px;
  max-width: 420px;
  margin-top: 10px;
}
.score-breakdown-item {
  padding: 9px 10px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #f8fafc;
}
.score-breakdown-header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: baseline;
}
.score-breakdown-points {
  color: #174c96;
  font-weight: 800;
  white-space: nowrap;
}
.score-breakdown-reason {
  margin: 4px 0 0;
  color: #64717f;
  font-size: 0.92rem;
  line-height: 1.35;
}
.score-ai-review {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-top: 10px;
  padding: 8px 10px;
  border-radius: 999px;
  background: #eef4ff;
  color: #174c96;
}
.score-ai-review span {
  color: #64717f;
}
.status-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: flex-start;
}
.status-source {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 8px;
  border: 1px solid rgba(36, 128, 62, 0.16);
  border-radius: 999px;
  background: rgba(238, 248, 241, 0.95);
  color: #1f7a3d;
  font-size: 12px;
  font-weight: 750;
}
.status-source-unknown {
  border-color: rgba(100, 113, 127, 0.16);
  background: #f3f5f7;
  color: #64717f;
}
.customer-workbench-table dl {
  display: grid;
  grid-template-columns: 120px minmax(220px, 1fr);
  gap: 6px 10px;
  margin: 10px 0 0;
  max-width: 760px;
}
.customer-workbench-table dt {
  font-weight: 700;
}
.customer-workbench-table dd {
  margin: 0;
  white-space: pre-wrap;
}
.customer-workbench-table .customer-product-match-details {
  min-width: 0;
  margin-top: 0;
}
.customer-workbench-table .customer-product-match-details > summary {
  width: fit-content;
  max-width: 100%;
  box-sizing: border-box;
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid #d9e2ec;
  border-radius: 8px;
  background: #ffffff;
  color: #172033;
  font-weight: 700;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.customer-workbench-table .customer-product-match-details > summary:hover {
  border-color: #a9c4e2;
  background: #f5f9ff;
}
.customer-workbench-table .customer-product-match-details > summary:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.32);
  outline-offset: 2px;
}
.customer-workbench-table .customer-product-match-details:not([open]) > .customer-product-match-evidence,
.customer-workbench-table .customer-product-match-details:not([open]) > .customer-product-match-empty {
  display: none;
}
.customer-product-match-action {
  margin-inline-start: 8px;
  color: #5f6f82;
  font-size: 12px;
  font-weight: 650;
  white-space: nowrap;
}
.customer-workbench-table .customer-product-match-evidence {
  min-width: min(520px, 70vw);
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #e3e9f1;
}
.customer-product-match-empty {
  margin: 10px 0 0;
  color: #64717f;
  font-size: 13px;
}
.product-evidence-link {
  display: inline-block;
  max-width: 520px;
  overflow-wrap: anywhere;
  color: #0f57c7;
  font-weight: 650;
}
.product-evidence-badge,
.product-evidence-missing {
  display: inline-flex;
  align-items: center;
  margin-left: 8px;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 750;
}
.product-evidence-badge {
  border: 1px solid rgba(36, 128, 62, 0.16);
  background: rgba(238, 248, 241, 0.95);
  color: #1f7a3d;
}
.product-evidence-missing {
  margin-left: 0;
  border: 1px solid rgba(161, 91, 18, 0.18);
  background: rgba(255, 245, 232, 0.95);
  color: #a15b12;
}
.row-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(8rem, max-content));
  gap: 6px;
}
.inline-form {
  margin: 0;
}
.inline-form button {
  width: 100%;
  padding: 7px 9px;
  border: 1px solid #c8d0da;
  background: #ffffff;
  color: #172026;
  font: inherit;
  cursor: pointer;
}
.professional-options {
  grid-column: 1 / -1;
  padding-top: 4px;
}
.professional-options summary {
  cursor: pointer;
  font-weight: 700;
  color: #1d1d1f;
}
.professional-options label {
  display: block;
  margin-top: 0.75rem;
}
.research-results-card {
  overflow: hidden;
}
.research-results-table {
  min-width: 1120px;
  border-collapse: separate;
  border-spacing: 0;
  background: transparent;
}
.research-results-table th,
.research-results-table td {
  padding: 13px 14px;
  border-bottom: 1px solid #e5e5ea;
  vertical-align: top;
}
.research-results-table th {
  background: #f2f3f5;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 750;
}
.research-results-table tbody tr {
  background: rgba(255, 255, 255, 0.96);
}
.research-results-table tbody tr:hover {
  background: #f9fbff;
}
.research-results-table tbody tr:last-child td {
  border-bottom: 0;
}
.research-saved-customers {
  overflow: hidden;
}
.research-saved-header {
  display: flex;
  min-height: 76px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 20px;
  border-bottom: 1px solid #e7e9ed;
}
.research-saved-header h2 {
  margin: 0 0 4px;
  color: #172033;
  font-size: 19px;
  letter-spacing: -0.015em;
}
.research-saved-header p {
  margin: 0;
  color: #697586;
  font-size: 12px;
  line-height: 1.45;
}
.research-saved-header > span {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  background: #f1f4f7;
  color: #52606f;
  font-size: 12px;
  font-weight: 720;
  white-space: nowrap;
}
.research-saved-table-wrap {
  max-width: 100%;
  overflow-x: auto;
  scrollbar-width: thin;
}
.research-saved-customers .research-results-table {
  width: 100%;
  min-width: 980px;
  table-layout: fixed;
}
.research-saved-customers .research-results-table th,
.research-saved-customers .research-results-table td {
  padding: 14px 16px;
  vertical-align: middle;
}
.research-col-company { width: 15%; }
.research-col-website { width: 11%; }
.research-col-product { width: 12%; }
.research-col-type { width: 13%; }
.research-col-scale { width: 10%; }
.research-col-linkedin { width: 12%; }
.research-col-score { width: 7%; }
.research-col-status { width: 11%; }
.research-col-source { width: 9%; }
.research-company-name {
  color: #172033;
  font-size: 14px;
  font-weight: 740;
  line-height: 1.35;
}
.research-website-link,
.company-linkedin-link,
.research-source-button {
  display: inline-flex;
  min-height: 32px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
  border: 1px solid #d9e2ec;
  border-radius: 8px;
  background: #ffffff;
  color: #0a66c2;
  font: inherit;
  font-size: 12px;
  font-weight: 720;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}
.research-website-link:hover,
.company-linkedin-link:hover,
.research-source-button:hover {
  border-color: #a9c4e2;
  background: #f5f9ff;
  color: #0757a8;
}
.research-website-link:focus-visible,
.company-linkedin-link:focus-visible,
.research-source-button:focus-visible,
.research-source-close:focus-visible,
.research-source-item:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.32);
  outline-offset: 2px;
}
.research-link-empty {
  color: #98a2b3;
  font-size: 12px;
  white-space: nowrap;
}
.research-status-badge {
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  padding: 3px 8px;
  border-radius: 999px;
  background: #fff4df;
  color: #8a5300;
  font-size: 12px;
  font-weight: 720;
  line-height: 1.15;
  white-space: nowrap;
}
.research-status-badge.is-positive {
  background: #e7f5ed;
  color: #147a4b;
}
.research-status-badge.is-danger {
  background: #fff0ee;
  color: #b42318;
}
.research-source-control {
  display: inline-flex;
}
.research-source-button {
  gap: 6px;
}
.research-source-button span {
  display: inline-grid;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  place-items: center;
  border-radius: 999px;
  background: #edf4fc;
  color: #526f91;
  font-size: 10px;
}
.research-section-row td {
  padding-top: 12px;
  padding-bottom: 10px;
  background: #fafbfc;
}
.research-section-row h3 {
  margin: 0;
  color: #475467;
  font-size: 12px;
  font-weight: 760;
  letter-spacing: 0.015em;
}
.research-source-dialog {
  width: min(620px, calc(100vw - 32px));
  max-height: min(78vh, 720px);
  margin: auto;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(29, 29, 31, 0.12);
  border-radius: 16px;
  background: #ffffff;
  color: #172033;
  box-shadow: 0 24px 64px rgba(15, 23, 42, 0.22);
}
.research-source-dialog::backdrop {
  background: rgba(15, 23, 42, 0.38);
}
.research-source-dialog-shell {
  display: grid;
  max-height: min(78vh, 720px);
  grid-template-rows: auto auto minmax(0, 1fr);
}
.research-source-dialog-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 20px 22px 16px;
  border-bottom: 1px solid #e7e9ed;
}
.research-source-dialog-header span {
  color: #748094;
  font-size: 11px;
  font-weight: 720;
}
.research-source-dialog-header h3 {
  margin: 3px 0 0;
  color: #172033;
  font-size: 20px;
  letter-spacing: -0.015em;
}
.research-source-dialog-header form {
  margin: 0;
}
.research-source-close {
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid #d8dee7;
  border-radius: 8px;
  background: #ffffff;
  color: #52606f;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.research-source-close:hover {
  background: #f5f7fa;
  color: #172033;
}
.research-source-metadata {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  padding: 14px 22px 0;
}
.research-source-metadata span {
  padding: 5px 8px;
  border-radius: 7px;
  background: #f2f5f8;
  color: #5f6b7a;
  font-size: 11px;
  font-weight: 650;
}
.research-source-list {
  display: grid;
  gap: 9px;
  overflow-y: auto;
  padding: 14px 22px 22px;
}
.research-source-item {
  display: grid;
  gap: 4px;
  padding: 12px 13px;
  border: 1px solid #e1e6ed;
  border-radius: 10px;
  background: #fbfcfd;
  text-decoration: none;
}
.research-source-item:hover {
  border-color: #b8cee7;
  background: #f5f9ff;
}
.research-source-item strong {
  color: #175ea8;
  font-size: 13px;
}
.research-source-item span {
  overflow-wrap: anywhere;
  color: #697586;
  font-size: 11px;
  line-height: 1.45;
}
.research-source-empty {
  margin: 0;
  padding: 18px;
  border-radius: 10px;
  background: #f6f7f9;
  color: #697586;
  font-size: 13px;
  line-height: 1.5;
}
.contact-workbench {
  min-width: 980px;
}
.contact-status-grid {
  margin-bottom: 18px;
}
.contact-overview-card .status-card-actions {
  margin-top: 14px;
}
.status-card-actions button,
.contact-actions button,
.contact-review-form button {
  border: 1px solid rgba(0, 113, 227, 0.16);
  border-radius: 10px;
  background: #0071e3;
  color: white;
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.15;
  min-height: 38px;
  padding: 10px 14px;
  transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}
.status-card-actions button:hover,
.contact-actions button:hover,
.contact-review-form button:hover {
  background: #0064cc;
  border-color: rgba(0, 100, 204, 0.24);
  transform: translateY(-1px);
}
.contact-filter-card {
  display: grid;
  gap: 16px;
  padding: 18px;
}
.contact-bulk-import {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #dfe4eb;
  background: #ffffff;
}
.contact-bulk-import > summary {
  display: flex;
  min-height: 58px;
  box-sizing: border-box;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 13px 16px;
  color: #1d1d1f;
  cursor: pointer;
  list-style: none;
}
.contact-bulk-import > summary::-webkit-details-marker {
  display: none;
}
.contact-bulk-import > summary::after {
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-right: 2px solid #66758a;
  border-bottom: 2px solid #66758a;
  content: "";
  transform: rotate(45deg);
}
.contact-bulk-import[open] > summary::after {
  transform: rotate(225deg);
}
.contact-bulk-import > summary > span:first-child {
  display: grid;
  min-width: 0;
  gap: 3px;
}
.contact-bulk-import > summary strong {
  font-size: 15px;
  font-weight: 760;
}
.contact-bulk-import > summary small {
  color: #687588;
  font-size: 12px;
  font-weight: 520;
  line-height: 1.4;
}
.contact-bulk-import > summary:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.3);
  outline-offset: -2px;
}
.contact-bulk-import-format {
  flex: 0 0 auto;
  padding: 5px 8px;
  border: 1px solid #d7e1ec;
  border-radius: 999px;
  background: #f7f9fc;
  color: #526176;
  font-size: 11px;
  font-weight: 720;
}
.contact-bulk-import-body {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(280px, 1fr) minmax(320px, 0.82fr);
  gap: 22px;
  padding: 16px;
  border-top: 1px solid #e4e8ee;
  background: #fbfcfe;
}
.contact-bulk-import-guidance {
  display: grid;
  min-width: 0;
  align-content: start;
  gap: 10px;
}
.contact-bulk-import-guidance p,
.contact-bulk-import-guidance ul,
.contact-bulk-import-form p {
  margin: 0;
  color: #596678;
  font-size: 12px;
  line-height: 1.55;
}
.contact-bulk-import-guidance ul {
  display: grid;
  gap: 4px;
  padding-left: 18px;
}
.contact-bulk-import-template {
  width: fit-content;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  color: #075bc1;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}
.contact-bulk-import-template:hover {
  text-decoration: underline;
}
.contact-bulk-import-form {
  display: grid;
  min-width: 0;
  align-content: start;
  gap: 10px;
  padding-left: 22px;
  border-left: 1px solid #e1e6ed;
}
.contact-bulk-import-form label {
  display: grid;
  min-width: 0;
  gap: 6px;
  color: #465365;
  font-size: 12px;
  font-weight: 720;
}
.contact-bulk-import-form input[type="file"] {
  width: 100%;
  min-height: 44px;
  min-width: 0;
  box-sizing: border-box;
  padding: 8px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #ffffff;
  color: #2c3542;
  font: inherit;
}
.contact-bulk-import-form input[type="file"]:focus-visible {
  border-color: #0071e3;
  outline: 3px solid rgba(0, 113, 227, 0.12);
}
.contact-bulk-import-form button {
  justify-self: end;
  min-height: 44px;
  padding: 9px 16px;
  border: 1px solid #0071e3;
  border-radius: 8px;
  background: #0071e3;
  color: #ffffff;
  font: inherit;
  font-size: 13px;
  font-weight: 740;
  cursor: pointer;
}
.contact-bulk-import-form button:hover {
  border-color: #0064ca;
  background: #0064ca;
}
.contact-page-notice[data-tone="warning"] {
  color: #8a5a00;
}
.contact-page-notice[data-tone="error"] {
  color: #b42318;
}
.contact-filter-form {
  grid-template-columns: repeat(5, minmax(150px, 1fr)) minmax(120px, 0.5fr);
  align-items: end;
}
.contact-search-form {
  grid-template-columns: minmax(240px, 1fr) minmax(280px, 560px);
  align-items: end;
  padding-top: 14px;
  border-top: 1px solid #edf0f4;
}

.rocketreach-flow {
  display: grid;
  gap: 0;
  margin-top: 10px;
  border-top: 1px solid #e5e9ef;
  background: transparent;
}

.rocketreach-flow-step {
  min-width: 0;
  padding: 14px clamp(16px, 1.4vw, 20px);
}

.rocketreach-flow-step + .rocketreach-flow-step {
  border-top: 1px solid #e5e9ef;
}

.rocketreach-flow-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 5px;
  color: #526174;
  font-size: 11px;
  font-weight: 720;
  letter-spacing: 0.04em;
}

.rocketreach-flow-kicker b {
  display: inline-grid;
  width: 22px;
  height: 22px;
  place-items: center;
  border-radius: 50%;
  background: #eaf3ff;
  color: #075bc1;
  font-size: 11px;
}

.rocketreach-discovery-heading h2,
.rocketreach-discovery-heading p,
.person-export-heading h2,
.person-export-heading p {
  margin: 0;
}

.rocketreach-discovery-heading h2,
.person-export-heading h2 {
  color: #1d1d1f;
  font-size: 16px;
  line-height: 1.35;
}

.rocketreach-discovery-heading p,
.person-export-heading p {
  margin-top: 3px;
  color: #596678;
  font-size: 12px;
  line-height: 1.4;
}

.rocketreach-discovery-step .contact-search-form {
  margin-top: 8px;
  padding-top: 0;
  border-top: 0;
}

@media (max-width: 900px) {
  .contact-workbench {
    min-width: 0;
  }

  .contact-bulk-import-body {
    grid-template-columns: 1fr;
  }

  .contact-bulk-import-form {
    padding-top: 14px;
    padding-left: 0;
    border-top: 1px solid #e1e6ed;
    border-left: 0;
  }
}

@media (max-width: 640px) {
  .rocketreach-flow-step {
    padding: 12px 14px;
  }

  .premium-lookup-heading,
  .person-export-heading {
    gap: 8px;
  }

  .premium-lookup-credit-strip {
    justify-content: flex-start;
  }

  .contact-bulk-import > summary {
    align-items: flex-start;
  }

  .contact-bulk-import-format {
    display: none;
  }

  .contact-bulk-import-body {
    gap: 16px;
    padding: 14px;
  }

  .contact-bulk-import-form button {
    width: 100%;
  }
}

html::before {
  position: fixed;
  z-index: 5000;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, #0071e3, #49a5ff);
  content: "";
  opacity: 0;
  pointer-events: none;
  transform: scaleX(0);
  transform-origin: left center;
}

html.is-page-navigating::before {
  opacity: 1;
  animation: page-navigation-progress 900ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

html.is-page-navigating .app-main {
  opacity: 0.96;
  transition: opacity 120ms ease-out;
}

@keyframes page-navigation-progress {
  0% {
    transform: scaleX(0.04);
  }

  45% {
    transform: scaleX(0.68);
  }

  100% {
    transform: scaleX(0.92);
  }
}

@view-transition {
  navigation: auto;
}

::view-transition-old(root),
::view-transition-new(root) {
  animation-duration: 140ms;
  animation-timing-function: ease-out;
}

.premium-lookup-panel {
  min-width: 0;
}

.premium-lookup-form {
  display: grid;
  min-width: 0;
  gap: 10px;
}

.premium-lookup-heading,
.premium-lookup-progress-heading,
.premium-lookup-progress-actions {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.premium-lookup-heading {
  align-items: flex-start;
}

.premium-lookup-heading h2,
.premium-lookup-heading p,
.premium-lookup-progress-heading h3,
.premium-lookup-progress-heading p,
.premium-lookup-message {
  margin: 0;
}

.premium-lookup-heading h2,
.premium-lookup-progress-heading h3 {
  color: #1d1d1f;
  font-size: 16px;
  font-weight: 760;
  line-height: 1.35;
  text-wrap: balance;
}

.premium-lookup-heading p,
.premium-lookup-progress-heading p {
  max-width: 110ch;
  margin-top: 4px;
  color: #596678;
  font-size: 12px;
  line-height: 1.5;
  text-wrap: pretty;
}

.premium-lookup-credit-strip {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

.premium-lookup-credit-strip > span {
  display: inline-flex;
  min-height: 30px;
  box-sizing: border-box;
  align-items: center;
  gap: 5px;
  padding: 5px 8px;
  border: 1px solid #dce2ea;
  border-radius: 6px;
  background: #ffffff;
  color: #596678;
  font-size: 10px;
  line-height: 1.25;
  white-space: nowrap;
}

.premium-lookup-credit-strip strong {
  color: #1d1d1f;
  font-weight: 760;
}

.premium-lookup-credit-strip strong.is-metered {
  color: #8a4b08;
}

.premium-lookup-one-click {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 12px 16px;
  justify-content: flex-end;
  padding: 6px;
  border: 1px solid #dce6f2;
  border-radius: 8px;
  background: #f7faff;
}

.person-export-panel {
  display: grid;
  gap: 10px;
}

.person-export-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.person-export-balance {
  flex: 0 0 auto;
  padding: 7px 10px;
  border: 1px solid #dce2ea;
  border-radius: 6px;
  color: #596678;
  font-size: 10px;
  white-space: nowrap;
}

.person-export-balance strong {
  margin-left: 4px;
  color: #8a4b08;
}

.person-export-actions {
  display: flex;
  justify-content: flex-end;
  padding: 6px;
  border: 1px solid #dce6f2;
  border-radius: 8px;
  background: #f7faff;
}

.person-export-select-all,
.person-export-primary {
  min-height: 44px;
  padding: 10px 14px;
  border-radius: 8px;
  font: inherit;
  font-size: 13px;
  font-weight: 740;
  line-height: 1.2;
  cursor: pointer;
  transition: background-color 180ms cubic-bezier(0.22, 1, 0.36, 1), border-color 180ms cubic-bezier(0.22, 1, 0.36, 1), color 180ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 180ms cubic-bezier(0.22, 1, 0.36, 1), transform 180ms cubic-bezier(0.22, 1, 0.36, 1);
}

.rocketreach-discovery-step .contact-actions .rocketreach-flow-primary,
.premium-lookup-primary.rocketreach-flow-primary,
.person-export-primary.rocketreach-flow-primary {
  width: min(100%, 560px);
  min-height: 40px;
  box-sizing: border-box;
  padding: 9px 14px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 740;
  line-height: 1.2;
}

.person-export-select-all {
  border: 1px solid #cfd7e2;
  background: #ffffff;
  color: #364152;
}

.person-export-primary {
  border: 1px solid #0071e3;
  background: #0071e3;
  color: #ffffff;
  box-shadow: 0 6px 14px rgba(0, 113, 227, 0.18);
}

.person-export-select-all:hover:not(:disabled) {
  border-color: #8ebbe8;
  background: #f0f7ff;
  color: #075bc1;
}

.person-export-primary:hover:not(:disabled) {
  border-color: #0064cc;
  background: #0064cc;
  transform: translateY(-1px);
}

.person-export-select-all:focus-visible,
.person-export-primary:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.18);
}

.person-export-select-all:disabled,
.person-export-primary:disabled {
  cursor: default;
  opacity: 0.48;
}

.person-export-message {
  min-height: 18px;
  margin: 0;
  color: #596678;
  font-size: 11px;
  line-height: 1.45;
}

.person-export-message:empty,
.premium-lookup-message:empty {
  display: none;
}

.person-export-message[data-state="success"] { color: #18723a; }
.person-export-message[data-state="error"] { color: #a32a20; }
.person-export-message[data-state="loading"] { color: #075bc1; }
.person-export-message[data-state="notice"] { color: #875000; }

.person-export-progress {
  display: grid;
  grid-template-columns: auto auto;
  gap: 8px;
  align-items: center;
  color: #526174;
  font-size: 11px;
}

.person-export-progress[hidden] { display: none; }

.person-export-progress strong { justify-self: end; color: #1d1d1f; }

.person-export-progress-track {
  grid-column: 1 / -1;
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #dce3ec;
}

.person-export-progress-track > span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: #0071e3;
}

.premium-lookup-one-click > span {
  color: #596678;
  font-size: 11px;
  line-height: 1.5;
}

.premium-lookup-primary,
.premium-lookup-secondary,
.premium-lookup-danger {
  min-height: 36px;
  box-sizing: border-box;
  padding: 8px 11px;
  border-radius: 8px;
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 740;
  line-height: 1.2;
  transition: background-color 180ms cubic-bezier(0.22, 1, 0.36, 1), border-color 180ms cubic-bezier(0.22, 1, 0.36, 1), color 180ms cubic-bezier(0.22, 1, 0.36, 1);
}

.premium-lookup-primary {
  width: 100%;
  min-height: 44px;
  padding: 11px 16px;
  border: 1px solid #0071e3;
  background: #0071e3;
  color: #ffffff;
  box-shadow: 0 6px 14px rgba(0, 113, 227, 0.18);
  font-size: 12px;
  letter-spacing: 0.01em;
}

.premium-lookup-primary:hover:not(:disabled) {
  border-color: #0064cc;
  background: #0064cc;
  transform: translateY(-1px);
}

.premium-lookup-secondary {
  border: 1px solid #cfd7e2;
  background: #ffffff;
  color: #364152;
}

.premium-lookup-secondary:hover:not(:disabled) {
  border-color: #8ebbe8;
  background: #f0f7ff;
  color: #075bc1;
}

.premium-lookup-danger {
  border: 1px solid #e2b7b3;
  background: #ffffff;
  color: #a32a20;
}

.premium-lookup-danger:hover:not(:disabled) {
  border-color: #cf8f89;
  background: #fff5f4;
}

.premium-lookup-primary:focus-visible,
.premium-lookup-secondary:focus-visible,
.premium-lookup-danger:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.3);
  outline-offset: 2px;
}

.premium-lookup-primary:disabled,
.premium-lookup-secondary:disabled,
.premium-lookup-danger:disabled {
  cursor: default;
  opacity: 0.48;
}

.premium-lookup-primary[data-loading="true"] {
  cursor: wait;
}

.premium-lookup-message {
  min-height: 18px;
  color: #596678;
  font-size: 11px;
  line-height: 1.45;
}

.premium-lookup-message[data-state="success"] {
  color: #18723a;
}

.premium-lookup-message[data-state="error"] {
  color: #a32a20;
}

.premium-lookup-message[data-state="loading"] {
  color: #075bc1;
}

.premium-lookup-progress {
  display: grid;
  min-width: 0;
  gap: 11px;
  padding-top: 14px;
  border-top: 1px solid #e3e8ef;
}

.premium-lookup-progress[hidden],
.premium-lookup-progress-actions [hidden] {
  display: none !important;
}

.premium-lookup-progress {
  margin-top: 2px;
}

.premium-lookup-progress-heading > span {
  flex: 0 0 auto;
  color: #394454;
  font-size: 11px;
  font-weight: 760;
  white-space: nowrap;
}

.premium-lookup-progress-track {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #dce3ec;
}

.premium-lookup-progress-track > span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: #0071e3;
  transition: width 220ms cubic-bezier(0.22, 1, 0.36, 1);
}

.premium-lookup-progress-meta {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
}

.premium-lookup-progress-meta > span {
  color: #596678;
  font-size: 10px;
}

.premium-lookup-progress-meta strong {
  margin-left: 3px;
  color: #1d1d1f;
  font-size: 11px;
}

.premium-lookup-progress-actions {
  justify-content: flex-start;
}

@media (max-width: 900px) {
  .premium-lookup-heading,
  .premium-lookup-progress-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .premium-lookup-credit-strip {
    justify-content: flex-start;
  }

  .premium-lookup-one-click {
    grid-template-columns: 1fr;
  }

  .person-export-heading {
    flex-direction: column;
  }

  .person-export-actions {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .premium-lookup-progress-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .premium-lookup-progress-actions button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .person-export-select-all,
  .person-export-primary,
  .premium-lookup-primary,
  .premium-lookup-secondary,
  .premium-lookup-danger,
  .premium-lookup-progress-track > span {
    transition: none;
  }
}

.contact-actions {
  display: flex;
  gap: 10px;
}
.contact-actions button {
  flex: 1 1 auto;
}
.contact-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
  gap: 12px;
}
.contact-summary-card {
  padding: 14px;
}
.contact-summary-card span,
.contact-summary-card p {
  display: block;
  margin: 0;
  color: #657383;
  font-size: 12px;
  line-height: 1.35;
}
.contact-summary-card strong {
  display: block;
  margin-top: 6px;
  color: #1d1d1f;
  font-size: 24px;
  line-height: 1.15;
}
.contact-summary-card p {
  margin-top: 8px;
}
.contact-queue-card,
.contact-results-card {
  overflow-x: auto;
  overflow-y: hidden;
}
.contact-queue-card {
  padding: 0;
}
.contact-queue-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px;
  cursor: pointer;
  list-style: none;
}
.contact-queue-card[open] .contact-queue-summary {
  border-bottom: 1px solid #e5e5ea;
}
.contact-queue-summary::-webkit-details-marker {
  display: none;
}
.contact-queue-summary strong,
.contact-queue-summary small {
  display: block;
}
.contact-queue-summary small {
  margin-top: 4px;
  color: #657383;
  font-size: 12px;
}
.queue-toggle-icon {
  flex: 0 0 auto;
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 50%;
  background: rgba(242, 243, 245, 0.9);
}
.queue-toggle-icon::before {
  content: "";
  width: 9px;
  height: 9px;
  border-right: 2px solid #1d1d1f;
  border-bottom: 2px solid #1d1d1f;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 0.16s ease;
}
.contact-queue-card[open] .queue-toggle-icon::before {
  transform: translateY(2px) rotate(225deg);
}
.contact-queue-table-wrap {
  overflow-x: auto;
  background: rgba(255, 255, 255, 0.72);
}
.contact-queue-card h2,
.contact-results-card h2 {
  margin: 0;
  padding: 14px 14px 0;
  font-size: 16px;
  line-height: 1.25;
}
.contact-company-table,
.contact-results-table {
  width: 100%;
  margin-top: 12px;
  border-collapse: separate;
  border-spacing: 0;
  background: transparent;
}
.contact-results-table {
  min-width: 0;
  table-layout: fixed;
}
.contact-company-table {
  min-width: 1080px;
}
.contact-col-company {
  width: 11%;
}
.contact-col-product {
  width: 6%;
}
.contact-col-market {
  width: 7%;
}
.contact-col-name {
  width: 8%;
}
.contact-col-position {
  width: 10%;
}
.contact-col-email {
  width: 12%;
}
.contact-col-phone {
  width: 8%;
}
.contact-col-linkedin {
  width: 7%;
}
.contact-col-status {
  width: 8%;
}
.contact-col-source {
  width: 7%;
}
.contact-col-actions {
  width: 16%;
}
.contact-company-table th,
.contact-company-table td,
.contact-results-table th,
.contact-results-table td {
  padding: 9px 10px;
  border-bottom: 1px solid #e5e5ea;
  vertical-align: top;
  overflow-wrap: anywhere;
}
.contact-company-table th,
.contact-results-table th {
  background: #f2f3f5;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 750;
}
.contact-company-table tbody tr,
.contact-results-table tbody tr {
  background: rgba(255, 255, 255, 0.96);
}
.contact-company-table tbody tr:hover,
.contact-results-table tbody tr:hover {
  background: #f9fbff;
}
.contact-company-table td span {
  color: #657383;
  font-size: 12px;
  overflow-wrap: anywhere;
}
.provider-completion-marks {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.provider-completion-mark {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border: 1px solid #bfe7ca;
  border-radius: 999px;
  background: #effaf2;
  color: #0b6b31 !important;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  padding: 6px 8px;
}
.contact-company-cell strong {
  display: block;
}
.contact-company-cell,
.contact-group-context-cell {
  background: rgba(250, 251, 253, 0.82);
}
.contact-source-details {
  max-width: 100%;
}
.contact-source-details summary {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: fit-content;
  list-style: none;
  cursor: pointer;
  border: 1px solid #bfe7ca;
  border-radius: 999px;
  background: #effaf2;
  color: #0b6b31;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  padding: 6px 9px;
}
.contact-source-details summary::-webkit-details-marker {
  display: none;
}
.contact-source-details summary::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #16833a;
}
.contact-source-details span {
  display: block;
  margin-top: 6px;
  color: #657383;
  font-size: 11px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
.contact-profile-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #c7ddff;
  border-radius: 999px;
  background: #f2f7ff;
  color: #075bc1;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  padding: 6px 9px;
  text-decoration: none;
}
.xai-linkedin-badge {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-left: 6px;
  margin-top: 4px;
  border: 1px solid #bcd8ff;
  border-radius: 999px;
  background: #f0f7ff;
  color: #075bc1;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  padding: 5px 7px;
  vertical-align: middle;
}
.contact-email-cell {
  min-width: 0;
}
.contact-email-value,
.contact-email-state {
  display: inline-block;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.contact-email-state {
  color: #657383;
  font-size: 12px;
  font-weight: 650;
}
.contact-email-provider-list {
  display: grid;
  gap: 7px;
  min-width: 0;
}
.contact-email-provider-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  min-width: 0;
}
.contact-email-provider-row .rocketreach-email-badge,
.contact-email-provider-row .finalscout-email-badge {
  margin: 0;
}
.contact-email-provider-state {
  padding-top: 1px;
}
.rocketreach-email-badge,
.finalscout-email-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: fit-content;
  margin-left: 6px;
  margin-top: 4px;
  border: 1px solid #dec8ff;
  border-radius: 999px;
  background: #f6f0ff;
  color: #6f22b8;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  padding: 5px 7px;
  vertical-align: middle;
}
.rocketreach-email-badge::before,
.finalscout-email-badge::before {
  content: "FS";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #8b2bd7;
  color: #ffffff;
  font-size: 8px;
  font-weight: 850;
}
.rocketreach-email-badge-muted,
.finalscout-email-badge-muted {
  border-color: #d8dfe8;
  background: #f5f7fb;
  color: #657383;
}
.rocketreach-email-badge-muted::before,
.finalscout-email-badge-muted::before {
  background: #9aa7b5;
}

.rocketreach-email-badge {
  border-color: #b8d7ff;
  background: #eef6ff;
  color: #0b62b4;
}
.rocketreach-email-badge::before {
  content: "RR";
  background: #0b7bdc;
}
.rocketreach-email-badge-muted {
  border-color: #d8dfe8;
  background: #f5f7fb;
  color: #657383;
}
.rocketreach-email-badge-muted::before {
  background: #657383;
}

.unverified-linkedin {
  display: inline-flex;
  align-items: center;
  border: 1px solid #d8dfe8;
  border-radius: 999px;
  background: #f5f7fb;
  color: #657383;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  padding: 6px 9px;
}
.contact-preview-note {
  padding: 10px 14px 0;
}
.contact-review-form {
  display: flex;
  justify-content: flex-end;
  gap: 4px;
  min-width: 0;
  width: 100%;
}
.contact-row-actions {
  display: flex;
  flex-wrap: nowrap;
  gap: 4px;
  min-width: 0;
  margin-top: 0;
}
.contact-row-actions button {
  flex: 0 0 auto;
  white-space: normal;
}
.contact-review-form button {
  background: #f5f7fb;
  border-color: #d7dde8;
  color: #1d1d1f;
  width: 44px;
  height: 44px;
  min-height: 44px;
  border-radius: 50%;
  padding: 3px;
  font-size: 9px;
  font-weight: 750;
  line-height: 1.05;
  text-align: center;
}
.contact-review-form button[value="approved_for_draft"] {
  background: #e9f8ee;
  border-color: #bfe7ca;
  color: #0b6b31;
}
.contact-review-form button[value="do_not_contact"] {
  background: #fff1f0;
  border-color: #f2c5c0;
  color: #9b1c13;
}
.contact-review-form button:hover {
  background: #e9eef8;
}
.contact-review-form button[value="approved_for_draft"]:hover {
  background: #dff4e7;
}
.contact-review-form button[value="do_not_contact"]:hover {
  background: #ffe6e3;
}

.draft-workbench {
  min-width: 980px;
}

.draft-summary-grid {
  grid-template-columns: repeat(4, minmax(160px, 1fr));
}

.draft-stage-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.draft-stage-tabs a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 12px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.draft-stage-tabs a:hover {
  border-color: rgba(0, 113, 227, 0.3);
  background: rgba(0, 113, 227, 0.08);
  color: var(--apple-blue);
}

.draft-stage-pill {
  background: rgba(0, 113, 227, 0.08);
  color: #0a63c8;
}

.draft-generation-panel {
  display: grid;
  gap: 16px;
  padding: 18px;
}

.draft-generation-live {
  min-height: 0;
  color: var(--apple-blue);
  font-size: 13px;
  font-weight: 700;
}

.draft-generation-live[data-state="running"] {
  min-height: 22px;
}

.draft-generation-section {
  display: grid;
  gap: 12px;
}

.draft-generation-section + .draft-generation-section {
  padding-top: 14px;
  border-top: 1px solid rgba(0, 0, 0, 0.07);
}

.draft-generation-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.draft-generation-heading h2 {
  margin: 0;
  color: #1d1d1f;
  font-size: 18px;
  line-height: 1.2;
}

.draft-generation-heading p {
  margin: 5px 0 0;
  color: var(--apple-muted);
  font-size: 13px;
  line-height: 1.35;
}

.draft-generation-heading > strong {
  flex: 0 0 auto;
  color: #1d1d1f;
  font-size: 18px;
  white-space: nowrap;
}

.draft-generation-progress {
  width: 100%;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.06);
}

.draft-generation-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #0071e3, #34c759);
}

.draft-generation-section[data-mail-job-state="failed"] .draft-generation-progress span,
.draft-generation-section[data-mail-job-state="cancelled"] .draft-generation-progress span,
.draft-generation-section[data-mail-job-state="canceled"] .draft-generation-progress span {
  background: #c2413b;
}

.draft-generation-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(116px, 1fr));
  gap: 10px;
}

.draft-generation-metric {
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 12px;
  background: rgba(248, 250, 252, 0.88);
}

.draft-generation-metric span {
  display: block;
  color: var(--apple-muted);
  font-size: 12px;
  font-weight: 700;
}

.draft-generation-metric strong {
  display: block;
  margin-top: 3px;
  color: #1d1d1f;
  font-size: 18px;
}

.draft-generation-metric small {
  display: block;
  margin-top: 3px;
  color: var(--apple-muted);
  font-size: 12px;
}

.draft-generation-errors {
  margin: 0;
  padding: 10px 14px 10px 28px;
  border: 1px solid rgba(255, 59, 48, 0.2);
  border-radius: 12px;
  background: rgba(255, 59, 48, 0.08);
  color: #a1120b;
  font-size: 13px;
}

.draft-usage-list {
  display: grid;
  gap: 8px;
}

.draft-usage-row {
  display: grid;
  grid-template-columns: 90px minmax(140px, 1fr) 120px minmax(130px, auto);
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.86);
  color: var(--apple-muted);
  font-size: 12px;
}

.draft-usage-row strong,
.draft-usage-row em {
  color: #1d1d1f;
  font-style: normal;
  font-weight: 750;
}

.draft-usage-row small,
.draft-usage-empty {
  color: var(--apple-muted);
  font-size: 12px;
}

.draft-control-card {
  padding: 18px;
}

.draft-generate-form {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  align-items: end;
}

.draft-generate-form button {
  min-width: 168px;
}

.draft-generate-form.is-generating button {
  cursor: progress;
  opacity: 0.78;
}

.draft-signature-upload-form {
  grid-template-columns: minmax(180px, 1fr) minmax(160px, 0.8fr) minmax(240px, 1.4fr) minmax(150px, max-content) minmax(160px, max-content);
  align-items: end;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(0, 0, 0, 0.07);
}

.draft-context-hint {
  margin: 10px 0 0;
  color: var(--apple-muted);
  font-size: 13px;
  line-height: 1.35;
}

.draft-signature-upload-form input[type="file"] {
  padding: 9px 10px;
}

.draft-file-upload {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(104px, 1fr);
  gap: 6px 10px;
  align-items: center;
}

.draft-file-label {
  grid-column: 1 / -1;
}

.draft-file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.draft-file-control {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border: 1px solid rgba(29, 29, 31, 0.12);
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font-weight: 740;
  line-height: 1;
  cursor: pointer;
}

.draft-file-name {
  min-width: 0;
  overflow: hidden;
  color: var(--apple-secondary);
  font-size: 13px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-file-upload:hover .draft-file-control,
.draft-file-input:focus-visible + .draft-file-control {
  border-color: rgba(0, 113, 227, 0.36);
  background: #f5f9ff;
  color: var(--apple-blue);
}

.checkbox-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  color: var(--apple-muted);
  font-size: 13px;
  font-weight: 650;
}

.checkbox-label input {
  width: auto;
}

.checkbox-label input[type="checkbox"] {
  width: 18px;
  height: 18px;
  min-height: 18px;
  padding: 0;
}

.draft-results-card {
  overflow-x: auto;
  overflow-y: hidden;
}

.draft-results-table {
  min-width: 1180px;
  border-collapse: separate;
  border-spacing: 0;
  background: transparent;
}

.draft-results-table th,
.draft-results-table td {
  padding: 12px 14px;
  border-bottom: 1px solid #e5e5ea;
  vertical-align: top;
  overflow-wrap: anywhere;
}

.draft-results-table th {
  background: #f2f3f5;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 750;
}

.draft-results-table tbody tr {
  background: rgba(255, 255, 255, 0.96);
}

.draft-results-table tbody tr:hover {
  background: #f9fbff;
}

.draft-context-details,
.draft-preview-details {
  min-width: 0;
}

.draft-context-details summary,
.draft-preview-details summary {
  cursor: pointer;
  color: #0f57c7;
  font-weight: 700;
}

.draft-context-details dl {
  display: grid;
  grid-template-columns: 110px minmax(220px, 1fr);
  gap: 6px 10px;
  margin: 10px 0 0;
  max-width: 520px;
}

.draft-context-details dt {
  font-weight: 750;
}

.draft-context-details dd {
  margin: 0;
  white-space: pre-wrap;
}

.draft-ai-cell {
  overflow-wrap: normal;
  word-break: normal;
}

.draft-ai-stack,
.draft-status-stack {
  display: flex;
  flex-direction: column;
  gap: 7px;
  align-items: flex-start;
  min-width: 96px;
}

.draft-ai-stack span,
.draft-status-stack span {
  color: #657383;
  font-size: 12px;
  line-height: 1.25;
  overflow-wrap: normal;
  word-break: normal;
}

.draft-ai-pill,
.draft-status-pill {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 24px;
  padding: 4px 8px;
  border: 1px solid rgba(0, 113, 227, 0.14);
  border-radius: 999px;
  background: #eef5ff;
  color: #075bc1 !important;
  font-weight: 800;
  white-space: nowrap;
}

.draft-ai-model,
.draft-ai-confidence {
  max-width: 136px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-status-pill {
  border-color: rgba(36, 128, 62, 0.16);
  background: rgba(238, 248, 241, 0.95);
  color: #1f7a3d !important;
}

.draft-status-queued {
  border-color: rgba(161, 91, 18, 0.18);
  background: rgba(255, 245, 232, 0.95);
  color: #a15b12 !important;
}

.draft-status-sent {
  border-color: rgba(36, 128, 62, 0.16);
  background: rgba(238, 248, 241, 0.95);
  color: #1f7a3d !important;
}

.draft-status-sending {
  border-color: rgba(0, 113, 227, 0.18);
  background: rgba(235, 244, 255, 0.95);
  color: #075bc1 !important;
}

.draft-review-cell {
  min-width: 430px;
}

.draft-review-form {
  grid-template-columns: 1fr;
}

.draft-review-form textarea {
  min-height: 190px;
  resize: vertical;
  line-height: 1.45;
}

.draft-preview-details pre {
  max-width: 680px;
  margin: 8px 0 0;
  padding: 10px 12px;
  border: 1px solid #e1e6ef;
  border-radius: 8px;
  background: #f8fafc;
}

.draft-signature-preview {
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 10px;
  background: #ffffff;
}

.draft-signature-inline {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(0, 113, 227, 0.14);
  border-radius: 12px;
  background: rgba(246, 250, 255, 0.92);
}

.draft-signature-preview p {
  margin: 0 0 8px;
  color: #657383;
  font-size: 12px;
  font-weight: 700;
}

.draft-signature-inline p {
  margin: 0;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 800;
}

.draft-signature-inline > span {
  color: var(--apple-muted);
  font-size: 12px;
  font-weight: 700;
}

.draft-signature-html {
  min-width: 0;
  overflow-wrap: anywhere;
  color: #1d1d1f;
  font-size: 13px;
  line-height: 1.5;
}

.draft-signature-html > :first-child {
  margin-top: 0;
}

.draft-signature-html > :last-child {
  margin-bottom: 0;
}

.draft-signature-preview img {
  display: block;
  max-width: min(520px, 100%);
  height: auto;
  border-radius: 6px;
}

.draft-signature-inline img {
  display: block;
  max-width: min(420px, 100%);
  height: auto;
  border-radius: 8px;
}

.draft-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.draft-action-row button {
  flex: 1 1 120px;
  min-height: 38px;
  padding: 9px 12px;
  border: 1px solid #0071e3;
  border-radius: 8px;
  background: #0071e3;
  color: #ffffff;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}

.draft-action-row button:hover {
  background: #0064cc;
}

.draft-action-row button[formaction="/drafts/skip"] {
  border-color: #d8dfe8;
  background: #f5f7fb;
  color: #1d1d1f;
}

.draft-action-row button[formaction="/drafts/do-not-contact"] {
  border-color: #f2c5c0;
  background: #fff1f0;
  color: #9b1c13;
}

.empty-state {
  color: #657383;
  font-weight: 650;
  text-align: center;
}

@media (max-width: 1100px) {
  .workbench-metric-grid {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }

  .workbench-two-column,
  .workbench-crm-view,
  .usage-summary-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .app-shell,
  .sidebar-collapsed .app-shell {
    grid-template-columns: 1fr;
  }

  .app-sidebar,
  .sidebar-collapsed .app-sidebar {
    position: sticky;
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 10px;
    border-right: 0;
    border-bottom: 1px solid rgba(210, 210, 215, 0.72);
  }

  .sidebar-nav,
  .sidebar-collapsed .sidebar-nav {
    display: flex;
    gap: 6px;
    overflow-x: auto;
    padding-bottom: 2px;
  }

  .sidebar-link,
  .sidebar-collapsed .sidebar-link {
    grid-template-columns: 38px;
    flex: 0 0 auto;
  }

  .sidebar-label,
  .sidebar-user,
  .sidebar-brand-text,
  .sidebar-collapsed .sidebar-label,
  .sidebar-collapsed .sidebar-user,
  .sidebar-collapsed .sidebar-brand-text {
    display: none;
  }

  .sidebar-footer {
    display: none;
  }

  main {
    padding: 12px;
  }

  .workbench-metric-grid,
  .workbench-crm-view,
  .workbench-two-column,
  .workbench-action-grid,
  .usage-summary-grid {
    grid-template-columns: 1fr;
  }

  .panel-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .research-form {
    grid-template-columns: 1fr;
  }

  .research-status-grid {
    grid-template-columns: 1fr;
  }

  .research-worker-strip {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  .research-worker-context {
    width: 100%;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    text-align: left;
  }

  .contact-workbench {
    min-width: 0;
  }

  .contact-filter-form,
  .contact-search-form,
  .contact-summary-grid {
    grid-template-columns: 1fr;
  }

  .contact-actions {
    flex-direction: column;
  }

  .draft-workbench {
    min-width: 0;
  }

  .draft-generate-form,
  .draft-signature-upload-form,
  .draft-summary-grid {
    grid-template-columns: 1fr;
  }

  .draft-review-cell {
    min-width: 320px;
  }

  .overview-metrics,
  .provider-metrics {
    grid-template-columns: 1fr;
  }

  .research-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .customer-filter-form {
    grid-template-columns: 1fr;
  }

  .customer-filter-form select {
    min-width: 0;
    width: 100%;
  }

  .row-actions {
    grid-template-columns: 1fr;
  }
}

/* Apple CRM polish layer */
:root {
  --apple-bg: #f5f5f7;
  --apple-bg-elevated: rgba(255, 255, 255, 0.86);
  --apple-surface: rgba(255, 255, 255, 0.94);
  --apple-surface-strong: #ffffff;
  --apple-border: rgba(0, 0, 0, 0.08);
  --apple-border-strong: rgba(29, 29, 31, 0.14);
  --apple-text: #1d1d1f;
  --apple-muted: #6e6e73;
  --apple-blue: #0071e3;
  --apple-blue-hover: #0077ed;
  --apple-green: #248a3d;
  --apple-amber: #b56a00;
  --apple-red: #b42318;
  --apple-purple: #7e57c2;
  --apple-radius: 8px;
  --apple-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
  --apple-shadow-soft: 0 3px 14px rgba(0, 0, 0, 0.05);
  --apple-focus: 0 0 0 3px rgba(0, 113, 227, 0.18);
}

html {
  color-scheme: light;
  background: var(--apple-bg);
}

body {
  color: var(--apple-text);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.88) 0, rgba(245, 245, 247, 0.98) 220px),
    var(--apple-bg);
  font-size: 15px;
  line-height: 1.42;
}

button,
input,
select,
textarea,
a,
summary {
  transition:
    background-color 160ms ease,
    border-color 160ms ease,
    color 160ms ease,
    box-shadow 160ms ease,
    transform 160ms ease,
    opacity 160ms ease;
}

button:active,
.apple-form button:active,
.research-form button:active,
.draft-action-row button:active,
.contact-review-form button:active {
  transform: translateY(0) scale(0.99);
}

a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: none;
  box-shadow: var(--apple-focus);
}

.app-shell {
  grid-template-columns: 292px minmax(0, 1fr);
  transition: grid-template-columns 220ms ease;
}

.app-main {
  min-width: 0;
  padding: 28px clamp(18px, 2.4vw, 34px) 44px;
}

.app-sidebar {
  width: 292px;
  padding: 18px 14px;
  border-right-color: rgba(0, 0, 0, 0.08);
  background: rgba(246, 247, 249, 0.88);
  backdrop-filter: blur(22px) saturate(1.4);
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.72);
  transition: background-color 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

.sidebar-topbar {
  min-height: 54px;
  margin-bottom: 20px;
}

.sidebar-brand {
  min-width: 0;
  padding: 7px 8px 7px 4px;
  border-radius: var(--apple-radius);
}

.sidebar-brand:hover {
  background: rgba(255, 255, 255, 0.7);
}

.sidebar-brand-mark,
.sidebar-avatar {
  background: #111827;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.sidebar-brand-mark {
  width: 36px;
  height: 36px;
  border-radius: var(--apple-radius);
}

.sidebar-brand-text {
  font-size: 16px;
  font-weight: 760;
}

.sidebar-toggle {
  width: 42px;
  height: 42px;
  border: 1px solid transparent;
  border-radius: var(--apple-radius);
  background: rgba(255, 255, 255, 0.68);
  color: #4a4a4f;
  box-shadow: var(--apple-shadow-soft);
}

.sidebar-toggle:hover,
.sidebar-toggle:focus-visible {
  border-color: var(--apple-border);
  background: #ffffff;
  color: var(--apple-text);
  transform: translateY(-1px);
}

.sidebar-nav {
  gap: 5px;
}

.sidebar-link {
  position: relative;
  min-height: 46px;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: var(--apple-radius);
  color: #3a3a3c;
}

.sidebar-link::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 12px;
  bottom: 12px;
  width: 3px;
  border-radius: 999px;
  background: transparent;
}

.sidebar-link:hover {
  background: rgba(255, 255, 255, 0.72);
  color: var(--apple-text);
}

.sidebar-link.active {
  border-color: rgba(0, 0, 0, 0.06);
  background: rgba(255, 255, 255, 0.94);
  color: var(--apple-text);
  box-shadow: var(--apple-shadow-soft);
}

.sidebar-link.active::before {
  background: var(--apple-blue);
}

.sidebar-icon {
  color: currentColor;
  opacity: 0.9;
}

.sidebar-svg {
  width: 22px;
  height: 22px;
  stroke-width: 2.15;
}

.sidebar-label {
  font-size: 15px;
  font-weight: 650;
}

.sidebar-footer {
  margin-top: 12px;
  padding: 12px 8px 0;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.sidebar-collapsed .app-shell {
  grid-template-columns: 78px minmax(0, 1fr);
}

.sidebar-collapsed .app-sidebar {
  width: 78px;
  padding: 18px 10px;
}

.sidebar-collapsed .sidebar-link {
  width: 46px;
  min-height: 46px;
}

.sidebar-collapsed .sidebar-link::before {
  left: 4px;
}

.sidebar-collapsed .sidebar-icon,
.sidebar-collapsed .sidebar-toggle {
  width: 46px;
  height: 46px;
}

.apple-page-shell {
  gap: 18px;
}

.apple-page-heading {
  min-height: 54px;
}

.apple-page-heading h1 {
  font-size: clamp(30px, 3vw, 42px);
  font-weight: 780;
  letter-spacing: 0;
}

.page-kicker {
  color: var(--apple-muted);
  font-size: 12px;
  letter-spacing: 0;
}

.apple-card,
.status-card,
.research-control-card,
.research-results-card,
.diagnostics-card,
.research-warning-card {
  border-color: var(--apple-border);
  border-radius: var(--apple-radius);
  background: var(--apple-surface);
  box-shadow: var(--apple-shadow);
  backdrop-filter: blur(16px) saturate(1.25);
}

.workbench-metric-card,
.contact-summary-card {
  border-top-width: 0;
  box-shadow: var(--apple-shadow-soft);
}

.workbench-metric-card {
  position: relative;
  overflow: hidden;
  min-height: 112px;
  padding: 16px;
}

.workbench-metric-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: #8e8e93;
}

.workbench-metric-card.tone-blue::before {
  background: var(--apple-blue);
}

.workbench-metric-card.tone-amber::before {
  background: #d89b21;
}

.workbench-metric-card.tone-green::before {
  background: #2fa66a;
}

.workbench-metric-card.tone-purple::before {
  background: var(--apple-purple);
}

.workbench-metric-card.tone-orange::before {
  background: #e07a2f;
}

.workbench-metric-card.tone-magenta::before {
  background: #d14f88;
}

.workbench-metric-card:hover,
.contact-summary-card:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.08);
}

.workbench-metric-card span,
.contact-summary-card span,
.status-metric span,
.provider-segment span,
.provider-progress-label span {
  color: var(--apple-muted);
}

.workbench-metric-card strong {
  font-size: clamp(26px, 2.5vw, 34px);
}

.panel-heading {
  min-height: 38px;
}

.panel-heading h2,
.overview-heading h2,
.provider-card-header h2 {
  font-weight: 760;
}

.panel-heading a,
.customer-workbench-table summary,
.draft-context-details summary,
.draft-preview-details summary {
  border-radius: var(--apple-radius);
}

.panel-heading a {
  padding: 6px 9px;
  color: var(--apple-blue);
  font-size: 13px;
  font-weight: 720;
}

.panel-heading a:hover {
  background: rgba(0, 113, 227, 0.08);
}

.usage-window-tabs {
  padding: 4px;
  background: rgba(0, 0, 0, 0.07);
}

.usage-window-tab {
  min-width: 54px;
  min-height: 34px;
  color: #5f6368;
}

.usage-window-tab.active {
  background: #ffffff;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
}

.apple-form input,
.apple-form select,
.apple-form textarea,
.research-form input,
.research-form select,
.research-form textarea {
  min-height: 44px;
  border-color: rgba(0, 0, 0, 0.13);
  border-radius: var(--apple-radius);
  background: rgba(255, 255, 255, 0.92);
}

.apple-form input:hover,
.apple-form select:hover,
.apple-form textarea:hover,
.research-form input:hover,
.research-form select:hover,
.research-form textarea:hover {
  border-color: rgba(0, 0, 0, 0.22);
  background: #ffffff;
}

.apple-form input:focus,
.apple-form select:focus,
.apple-form textarea:focus,
.research-form input:focus,
.research-form select:focus,
.research-form textarea:focus {
  border-color: var(--apple-blue);
  box-shadow: var(--apple-focus);
}

.apple-form button,
.research-form button,
.status-card-actions button,
.contact-actions button {
  border-radius: var(--apple-radius);
  border-color: transparent;
  background: var(--apple-blue);
  color: #ffffff;
  box-shadow: 0 6px 14px rgba(0, 113, 227, 0.18);
}

.apple-form button:hover,
.research-form button:hover,
.status-card-actions button:hover,
.contact-actions button:hover {
  background: var(--apple-blue-hover);
  transform: translateY(-1px);
}

.notice {
  color: var(--apple-green);
}

.send-control-card {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) minmax(180px, auto) minmax(190px, auto);
  align-items: center;
  gap: 14px;
  padding: 18px 20px;
}

.send-control-card h2 {
  margin: 0 0 8px;
  font-size: 1.05rem;
  letter-spacing: 0;
}

.send-control-copy-block {
  min-width: 0;
}

.send-service-panel {
  display: grid;
  gap: 10px;
  min-width: 0;
  margin: 0;
  padding: 12px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 8px;
  background: #fafafa;
}

.send-service-status {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 28px;
  padding: 5px 11px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 760;
  line-height: 1.2;
  white-space: nowrap;
}

.send-service-status.ready {
  border: 1px solid rgba(36, 138, 61, 0.18);
  background: rgba(232, 248, 237, 0.94);
  color: var(--apple-green);
}

.send-service-status.missing {
  border: 1px solid rgba(181, 106, 0, 0.22);
  background: rgba(255, 247, 230, 0.94);
  color: var(--apple-amber);
}

.send-control-copy {
  margin: 0;
  color: var(--apple-secondary);
  line-height: 1.45;
}

.send-queue-notice {
  margin: 10px 0 0;
  font-weight: 760;
}

.send-queue-notice[data-auto-dismiss] {
  transition: opacity 180ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 180ms cubic-bezier(0.16, 1, 0.3, 1);
}

.send-queue-notice.is-dismissing {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-3px);
}

.send-live-status {
  min-height: 20px;
  margin: 10px 0 0;
  color: var(--apple-secondary);
  font-weight: 720;
}

.send-live-status[data-state="running"] {
  color: var(--apple-blue);
}

.mail-page-heading {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto auto;
  align-items: end;
  gap: 16px;
}

.mail-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 5px;
  border-radius: 12px;
  background: #eceef3;
}

.mail-tab {
  min-height: 34px;
  box-sizing: border-box;
  padding: 8px 12px;
  border-radius: 9px;
  color: #5f6368;
  font-size: 13px;
  font-weight: 760;
  line-height: 1.25;
}

.mail-tab:hover,
.mail-tab.active {
  background: #ffffff;
  color: #1d1d1f;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

.mail-sync-form {
  margin: 0;
}

.inbox-layout {
  display: grid;
  overflow: hidden;
}

.inbox-action-form {
  display: grid;
}

.inbox-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px 16px;
  border-bottom: 1px solid rgba(10, 124, 255, 0.16);
  background: #eaf4ff;
}

.inbox-toolbar-button,
.inbox-back-link {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border: 1px solid #c6d1de;
  border-radius: 7px;
  background: #ffffff;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 760;
  text-decoration: none;
}

.inbox-list {
  display: grid;
  background: #ffffff;
}

.inbox-date-group {
  padding: 10px 16px;
  border-bottom: 1px solid rgba(10, 124, 255, 0.22);
  background: #f7fbff;
  color: #0f5ca8;
  font-weight: 780;
}

.inbox-row {
  display: grid;
  grid-template-columns: 20px 22px 22px minmax(140px, 0.7fr) minmax(260px, 1.8fr) auto auto minmax(100px, 0.4fr);
  gap: 10px;
  align-items: center;
  padding: 10px 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  color: inherit;
}

.inbox-row:hover,
.inbox-row.active {
  background: #f1f7ff;
}

.inbox-check {
  width: 17px;
  height: 17px;
  border: 1px solid #9aa7b5;
  border-radius: 4px;
  background: #ffffff;
  cursor: pointer;
}

.inbox-envelope,
.inbox-star {
  color: #8a98a8;
  text-align: center;
}

.inbox-sender,
.inbox-subject-line,
.inbox-preview,
.inbox-match {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.inbox-sender {
  font-size: 14px;
  font-weight: 760;
}

.inbox-subject-line strong {
  margin-right: 6px;
}

.inbox-subject-line {
  color: #1d1d1f;
  text-decoration: none;
}

.inbox-preview,
.inbox-match {
  color: var(--apple-secondary);
  font-size: 13px;
}

.inbox-classification {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 3px 9px;
  border-radius: 999px;
  background: #fff4df;
  color: #9a5a00;
  font-size: 12px;
  font-weight: 780;
  white-space: nowrap;
}

.inbox-row time {
  color: #1d1d1f;
  font-size: 12px;
  font-weight: 720;
  white-space: nowrap;
}

.inbox-list-hint {
  margin: 0;
  padding: 14px 16px;
  color: var(--apple-secondary);
  font-size: 13px;
  background: #fbfcfe;
}

.inbox-reader {
  min-width: 0;
  margin: 16px;
  padding: 0;
  overflow: hidden;
}

.inbox-reader-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  background: #eaf4ff;
}

.reader-classification {
  margin-left: auto;
}

.inbox-reader-header {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding: 24px 20px;
  border-bottom: 1px solid rgba(10, 124, 255, 0.18);
  background: #eaf4ff;
}

.inbox-reader-header h2 {
  margin: 0;
  font-size: 1.25rem;
  letter-spacing: 0;
}

.inbox-reader-header time {
  color: #1d1d1f;
  font-size: 1rem;
  font-weight: 760;
  white-space: nowrap;
}

.inbox-meta {
  display: grid;
  gap: 5px;
  padding: 12px 0 0;
  color: var(--apple-secondary);
  font-size: 13px;
}

.inbox-body {
  min-height: 220px;
  margin: 0;
  padding: 26px 24px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  background: #ffffff;
  color: #1d1d1f;
  font-family: inherit;
  font-size: 15px;
  line-height: 1.65;
}

.inbox-original-summary {
  padding: 20px 24px 28px;
  background: #ffffff;
}

.inbox-original-summary h3 {
  margin: 0 0 12px;
  color: #344054;
  font-size: 1rem;
}

.inbox-original-summary pre {
  margin: 0;
  color: #526070;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.6;
  white-space: pre-wrap;
}

.send-replied-state {
  background: #fff8e8;
  border-color: rgba(209, 137, 0, 0.22);
}

.tone-warning {
  background: #fff1d6;
  color: #a25d00;
}

.mail-settings-grid {
  display: grid;
  grid-template-columns: minmax(220px, 320px) minmax(0, 1fr);
  align-items: start;
  gap: 16px;
}

.mail-service-settings,
.mail-signature-editor,
.mail-signature-list {
  padding: 18px;
}

.mail-service-settings {
  align-self: start;
}

.mail-signature-form {
  display: grid;
  gap: 12px;
}

.mail-signature-form label {
  display: grid;
  gap: 7px;
  font-weight: 760;
}

.mail-signature-form input,
.mail-signature-form select,
.mail-signature-form textarea {
  min-height: 44px;
  border: 1px solid rgba(0, 0, 0, 0.13);
  border-radius: 8px;
  padding: 10px 12px;
  font: inherit;
}

.signature-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  padding: 9px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 8px;
  background: #f5f5f7;
}

.signature-toolbar button,
.signature-toolbar select,
.signature-toolbar .signature-inline-image {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 9px;
  border: 1px solid rgba(0, 0, 0, 0.13);
  border-radius: 7px;
  background: #ffffff;
  color: #1d1d1f;
  font-size: 12px;
  font-weight: 760;
  line-height: 1;
  cursor: pointer;
}

.signature-toolbar select {
  width: auto;
  min-height: 30px;
  padding-right: 24px;
}

.signature-inline-image input {
  display: none;
}

.signature-editor-surface {
  min-height: 180px;
  padding: 14px;
  border: 1px solid rgba(0, 0, 0, 0.13);
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  line-height: 1.48;
  overflow: auto;
}

.signature-editor-surface:focus-visible {
  outline: none;
  box-shadow: var(--apple-focus);
}

.signature-editor-surface img {
  max-width: 100%;
  height: auto;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

.checkbox-row {
  display: flex !important;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 8px !important;
}

.checkbox-row input {
  min-height: auto;
}

.mail-signature-list {
  display: grid;
  gap: 12px;
}

.mail-signature-card {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 10px;
  background: #fbfbfd;
}

.mail-signature-card h3 {
  margin: 0;
}

.mail-signature-card small {
  color: var(--apple-secondary);
}

.mail-signature-card pre {
  margin: 0;
  color: var(--apple-secondary);
  font-family: inherit;
  white-space: pre-wrap;
}

.mail-signature-image {
  max-width: 520px;
  max-height: 180px;
  object-fit: contain;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 8px;
  background: #ffffff;
}

.mail-signature-workbench {
  display: grid;
  gap: 14px;
}

.mail-signature-selector {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  align-items: end;
  gap: 12px 16px;
  margin: 0;
  padding: 4px 0 10px;
}

.mail-signature-selector-field {
  display: grid;
  min-width: 0;
  gap: 6px;
}

.mail-signature-selector-label {
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 720;
  line-height: 1.35;
}

.mail-signature-selector select {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 8px 36px 8px 12px;
  border: 1px solid rgba(29, 29, 31, 0.18);
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  font-weight: 650;
}

.mail-signature-add-link {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0 14px;
  border: 1px solid rgba(0, 113, 227, 0.22);
  border-radius: 8px;
  background: #ffffff;
  color: #0f57c7;
  font-size: 14px;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
}

.mail-signature-add-link:hover {
  border-color: rgba(0, 113, 227, 0.34);
  background: #f5f9ff;
}

.mail-signature-add-link:focus-visible,
.mail-signature-selector select:focus-visible {
  outline: none;
  box-shadow: var(--apple-focus);
}

.mail-signature-preview-card,
.mail-signature-panel-form {
  overflow: hidden;
  border: 1px solid #9ecbff;
  border-radius: 0;
  background: #ffffff;
}

.mail-signature-preview-card .panel-heading {
  padding: 14px 18px 0;
}

.mail-signature-preview-card {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 0;
}

.mail-signature-preview-body {
  min-height: 360px;
  max-height: none;
  overflow: auto;
  margin: 0 18px 18px;
  padding: 18px;
  border: 1px solid rgba(29, 29, 31, 0.08);
  border-radius: 0;
  background: #ffffff;
}

.mail-signature-preview-body .mail-signature-image,
.mail-signature-current-image .mail-signature-image {
  display: block;
  max-width: min(720px, 100%);
  max-height: none;
}

.mail-signature-workbench-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 10px 18px;
  border-top: 1px solid #9ecbff;
  background: #e8f3ff;
}

.mail-signature-card-actions {
  align-items: stretch;
  gap: 10px;
  margin-top: auto;
  padding: 12px 18px;
  background: #f7f9fc;
}

.mail-signature-card-actions .mail-signature-edit-button,
.mail-signature-card-actions .mail-signature-delete-button {
  display: inline-flex;
  min-height: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 720;
  line-height: 1;
}

.mail-signature-card-actions .mail-signature-edit-button {
  border-color: rgba(29, 29, 31, 0.16);
  background: #ffffff;
  color: #1d1d1f;
}

.mail-signature-card-actions .mail-signature-edit-button:hover {
  border-color: rgba(0, 113, 227, 0.28);
  background: #f5f9ff;
  color: var(--apple-blue);
}

.mail-signature-card-delete-form {
  display: flex;
  margin: 0;
}

.mail-signature-card-actions .mail-signature-delete-button {
  border-color: rgba(180, 35, 24, 0.18);
  background: #fff8f7;
  color: #a9362c;
}

.mail-signature-card-actions .mail-signature-delete-button:hover {
  border-color: rgba(180, 35, 24, 0.28);
  background: #fff1f0;
  color: #922b22;
}

.mail-signature-workbench-footer .apple-secondary-button,
.mail-signature-workbench-footer button,
.mail-signature-inline-form button {
  min-height: 34px;
  padding: 0 16px;
  border: 1px solid rgba(29, 29, 31, 0.26);
  border-radius: 6px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  font-size: 13px;
  font-weight: 720;
  cursor: pointer;
}

.mail-signature-workbench-footer button[type="submit"] {
  border-color: rgba(0, 113, 227, 0.32);
  color: var(--apple-blue);
}

.mail-signature-inline-form {
  margin: 0;
}

.mail-signature-inline-form button.danger,
.mail-signature-delete-form button.danger {
  border-color: rgba(180, 35, 24, 0.2);
  background: #fff4f2;
  color: #b42318;
}

.mail-signature-panel-form {
  padding: 18px;
}

.mail-signature-panel-form h3 {
  margin: 0;
  font-size: 18px;
}

.mail-signature-current-image {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(29, 29, 31, 0.08);
  background: #fbfbfd;
}

.mail-signature-current-image span {
  color: #657383;
  font-size: 12px;
  font-weight: 650;
}

@media (max-width: 900px) {
  .mail-page-heading {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .inbox-layout,
  .mail-settings-grid {
    grid-template-columns: 1fr;
  }

  .inbox-row {
    grid-template-columns: 20px minmax(120px, 0.7fr) minmax(220px, 1fr) auto;
  }

  .inbox-envelope,
  .inbox-star,
  .inbox-match {
    display: none;
  }
}

.send-run-form button,
.send-secondary-button {
  min-height: 44px;
  padding: 0 20px;
  border: 1px solid transparent;
  border-radius: var(--apple-radius);
  background: var(--apple-blue);
  color: #ffffff;
  font-weight: 760;
  cursor: pointer;
  box-shadow: none;
}

.send-secondary-button {
  border-color: rgba(29, 29, 31, 0.12);
  background: #ffffff;
  color: #1d1d1f;
}

.send-run-form button:hover:not(:disabled) {
  background: var(--apple-blue-hover);
}

.send-secondary-button:hover:not(:disabled) {
  border-color: rgba(0, 113, 227, 0.24);
  background: #f5f9ff;
  color: var(--apple-blue);
}

.send-run-form button:disabled,
.send-secondary-button:disabled {
  background: #d8dce3;
  color: #6b7280;
  cursor: not-allowed;
  box-shadow: none;
}

.send-run-form.is-sending button {
  background: var(--apple-blue);
  color: #ffffff;
  cursor: progress;
}

.send-results-card {
  overflow: hidden;
}

.send-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.send-section-heading h2 {
  margin: 0;
  font-size: 1.05rem;
  letter-spacing: 0;
}

.send-section-heading span {
  color: var(--apple-secondary);
  font-weight: 760;
}

.send-results-table {
  width: 100%;
  min-width: 1220px;
  border-collapse: separate;
  border-spacing: 0;
}

.send-results-table th,
.send-results-table td {
  padding: 13px 14px;
  border-bottom: 1px solid #e5e5ea;
  vertical-align: top;
}

.send-results-table th {
  color: #4b5563;
  font-size: 0.82rem;
  text-align: left;
  text-transform: uppercase;
}

.send-subject-details summary {
  cursor: pointer;
  font-weight: 760;
}

.send-subject-details pre {
  max-width: 760px;
  margin: 10px 0 0;
  white-space: pre-wrap;
  color: var(--apple-secondary);
  font-family: inherit;
  line-height: 1.45;
}

.send-status-stack {
  display: grid;
  gap: 7px;
  justify-items: start;
}

.send-status-stack small {
  color: var(--apple-secondary);
  line-height: 1.35;
}

.send-status-stack .send-error {
  color: #b42318;
}

.send-status-stack .send-progress {
  color: var(--apple-blue);
}

.send-follow-up-actions {
  display: grid;
  gap: 8px;
  min-width: 190px;
}

.send-follow-up-muted,
.send-next-follow-up {
  display: block;
  color: var(--apple-secondary);
  font-size: 12px;
  line-height: 1.35;
}

.send-row-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.send-row-actions button,
.send-more-actions summary {
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid #d2d7df;
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}

.send-row-actions .send-follow-up-primary {
  border-color: rgba(0, 113, 227, 0.24);
  background: rgba(0, 113, 227, 0.09);
  color: var(--apple-blue);
}

.send-row-actions.is-updating button,
.send-row-actions.is-updating .send-more-actions summary {
  cursor: wait;
  opacity: 0.64;
}

.send-action-feedback {
  display: block;
  color: var(--apple-blue);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
}

.send-more-actions {
  position: relative;
}

.send-more-actions summary {
  list-style: none;
}

.send-more-actions summary::-webkit-details-marker {
  display: none;
}

.send-more-actions[open] > div {
  display: grid;
  gap: 6px;
  margin-top: 6px;
  padding: 8px;
  border: 1px solid rgba(125, 139, 155, 0.22);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 10px 26px rgba(25, 35, 49, 0.12);
}

.send-row-actions .danger {
  color: #b42318;
}

.follow-up-metric-grid {
  grid-template-columns: repeat(4, minmax(180px, 1fr));
}

.follow-up-generate-panel {
  display: grid;
  gap: 14px;
  padding: 18px;
}

.follow-up-generate-form {
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap: 12px;
  align-items: end;
}

.follow-up-generate-form label {
  display: grid;
  gap: 6px;
  color: #4f5b68;
  font-size: 12px;
  font-weight: 700;
}

.follow-up-generate-form select,
.follow-up-generate-form button {
  min-height: 42px;
}

.follow-up-generate-form button {
  border: 0;
  border-radius: 12px;
  background: var(--apple-blue);
  color: #ffffff;
  font-weight: 800;
  box-shadow: 0 10px 24px rgba(0, 113, 227, 0.22);
}

.follow-up-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(280px, 1fr));
  gap: 14px;
}

.follow-up-panel {
  min-height: 220px;
  padding: 16px;
}

.follow-up-row-list {
  display: grid;
  gap: 0;
}

.follow-up-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 16px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}

.follow-up-row:last-child {
  border-bottom: 0;
}

.follow-up-row h3 {
  margin: 3px 0 4px;
  color: #1d1d1f;
  font-size: 15px;
  line-height: 1.25;
}

.follow-up-row p {
  margin: 0;
  color: var(--apple-secondary);
  font-size: 13px;
  line-height: 1.35;
}

.follow-up-row time {
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 760;
  white-space: nowrap;
}

.follow-up-type {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  padding: 3px 8px;
  border-radius: 999px;
  background: #f0f4f8;
  color: #405064;
  font-size: 12px;
  font-weight: 760;
}

@media (max-width: 900px) {
  .follow-up-metric-grid,
  .follow-up-grid {
    grid-template-columns: 1fr;
  }

  .send-control-card {
    grid-template-columns: 1fr;
  }

  .follow-up-row {
    grid-template-columns: minmax(0, 1fr);
  }
}

.research-provider-notices .notice,
.status-pill,
.draft-ai-pill,
.draft-status-pill,
.status-source,
.provider-completion-mark,
.contact-profile-link,
.xai-linkedin-badge,
.finalscout-email-badge,
.unverified-linkedin,
.crm-stage-pill,
.product-term-links a {
  min-height: 26px;
  border-radius: 999px;
  font-weight: 760;
  box-shadow: none;
}

.research-provider-notices .notice {
  padding: 6px 11px;
  border-color: rgba(36, 138, 61, 0.18);
  background: rgba(232, 248, 237, 0.94);
  color: var(--apple-green);
}

.research-provider-notices .warning,
.research-warning-card {
  border-color: rgba(181, 106, 0, 0.22);
  background: rgba(255, 247, 230, 0.94);
  color: var(--apple-amber);
}

.research-status-grid {
  gap: 14px;
}

.status-card {
  padding: 16px;
}

.progress-track {
  height: 7px;
  background: rgba(0, 0, 0, 0.06);
}

.progress-fill {
  background: linear-gradient(90deg, #0071e3, #4da3ff);
}

.provider-card-xai .progress-fill {
  background: linear-gradient(90deg, #2fa66a, #6ed394);
}

.research-control-card,
.contact-filter-card,
.draft-control-card,
.settings-form {
  padding: 18px;
}

.settings-shell,
.suppression-shell,
.follow-up-shell,
.customer-shell,
.contact-workbench,
.draft-workbench {
  min-width: 0;
}

.settings-form {
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  align-items: stretch;
  gap: 14px;
  padding: 0;
}

.settings-form > .settings-provider-card {
  display: grid;
  gap: 14px;
  min-width: 0;
  align-content: start;
  padding: 16px;
  border: 1px solid #dfe4eb;
  border-radius: 14px;
  background: #ffffff;
}

.settings-provider-heading {
  display: grid;
  min-width: 0;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding-bottom: 12px;
  border-bottom: 1px solid #e7eaf0;
}
.settings-provider-name {
  display: grid;
  min-width: 0;
  gap: 2px;
}
.settings-provider-name h2 {
  margin: 0;
  font-size: 15px;
  font-weight: 780;
  line-height: 1.25;
}
.settings-provider-name small {
  color: #6d798a;
  font-size: 11px;
  font-weight: 560;
  line-height: 1.3;
}
.settings-provider-logo {
  display: inline-flex;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  border-radius: 11px;
  background: #eef3fa;
  color: #24415f;
  font-size: 12px;
  font-weight: 820;
  letter-spacing: -0.02em;
}
.settings-provider-logo--deepseek {
  background: #edf3ff;
  color: #2d5bd1;
}
.settings-provider-logo--openai {
  background: #eef1f2;
  color: #172126;
}
.settings-provider-logo--xai {
  background: #eceff2;
  color: #111820;
}
.settings-provider-logo--perplexity {
  background: #e8f7f6;
  color: #087d78;
}
.settings-provider-logo--finalscout {
  background: #f3edff;
  color: #7047b8;
}
.settings-provider-logo--rocketreach {
  background: #eaf4ff;
  color: #0870c9;
}
.settings-provider-logo--tencent {
  background: #eaf8ef;
  color: #18794e;
}
.settings-provider-state {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  padding: 0 8px;
  border-radius: 999px;
  background: #f1f3f5;
  color: #657181;
  font-size: 11px;
  font-weight: 740;
  white-space: nowrap;
}
.settings-provider-state.is-configured {
  background: #eaf7ef;
  color: #18794e;
}
.settings-provider-state.is-error {
  background: #fff0ee;
  color: #b42318;
}
.settings-provider-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: end;
  gap: 12px;
}
.settings-provider-fields label {
  min-width: 0;
}
.settings-provider-fields label > span {
  color: #4d5969;
  font-size: 11px;
  font-weight: 690;
}
.settings-provider-fields--imap label:last-child {
  grid-column: 1 / -1;
}

.settings-form > button {
  grid-column: 1 / -1;
  justify-self: end;
  min-width: 160px;
}

.research-results-card,
.customer-results-card,
.contact-results-card,
.draft-results-card,
.suppression-results-card {
  overflow: auto;
}

.research-results-table,
.customer-workbench-table,
.contact-company-table,
.contact-results-table,
.draft-results-table,
.workbench-usage-table,
.workbench-pipeline-table,
.suppression-table {
  border-collapse: separate;
  border-spacing: 0;
  background: transparent;
}

.research-results-table th,
.customer-workbench-table th,
.contact-company-table th,
.contact-results-table th,
.draft-results-table th,
.workbench-usage-table th,
.workbench-pipeline-table th,
.suppression-table th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: rgba(247, 247, 249, 0.96);
  color: #4b5563;
  font-size: 12px;
  font-weight: 760;
  text-transform: uppercase;
  letter-spacing: 0;
  overflow-wrap: normal;
  word-break: normal;
  white-space: nowrap;
}

.research-results-table td,
.customer-workbench-table td,
.contact-company-table td,
.contact-results-table td,
.draft-results-table td,
.workbench-usage-table td,
.workbench-pipeline-table td,
.suppression-table td {
  border-bottom-color: rgba(0, 0, 0, 0.07);
  line-height: 1.36;
}

.research-results-table tbody tr,
.customer-workbench-table tbody tr,
.contact-company-table tbody tr,
.contact-results-table tbody tr,
.draft-results-table tbody tr,
.workbench-usage-table tbody tr,
.workbench-pipeline-table tbody tr,
.suppression-table tbody tr {
  background: rgba(255, 255, 255, 0.88);
}

.research-results-table tbody tr:hover,
.customer-workbench-table tbody tr:hover,
.contact-company-table tbody tr:hover,
.contact-results-table tbody tr:hover,
.draft-results-table tbody tr:hover,
.workbench-usage-table tbody tr:hover,
.workbench-pipeline-table tbody tr:hover,
.suppression-table tbody tr:hover {
  background: #f9fbff;
}

.contact-results-table {
  min-width: 1120px;
}

.contact-col-actions {
  width: 20%;
}

.contact-review-form,
.contact-row-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 6px;
}

.contact-review-form button {
  width: auto;
  height: auto;
  min-width: 92px;
  min-height: 34px;
  padding: 7px 10px;
  border-radius: var(--apple-radius);
  font-size: 12px;
  line-height: 1.1;
  white-space: nowrap;
}

.contact-row-actions button {
  flex: 1 1 92px;
}

.contact-review-form button[value="approved_for_draft"] {
  background: #e8f7ed;
  border-color: rgba(36, 138, 61, 0.18);
  color: var(--apple-green);
}

.contact-review-form button[value="not_relevant"] {
  background: #f5f5f7;
  border-color: rgba(0, 0, 0, 0.1);
  color: #3a3a3c;
}

.contact-review-form button[value="do_not_contact"] {
  background: #fff1f0;
  border-color: rgba(180, 35, 24, 0.16);
  color: var(--apple-red);
}

.contact-review-form button:hover {
  transform: translateY(-1px);
}

.draft-review-cell {
  min-width: min(560px, 72vw);
}

.draft-review-form textarea {
  min-height: 220px;
  font-size: 14px;
}

.draft-action-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  gap: 8px;
}

.draft-action-row button {
  min-height: 40px;
  border-radius: var(--apple-radius);
  background: #f5f7fb;
  border-color: rgba(0, 0, 0, 0.1);
  color: var(--apple-text);
  box-shadow: none;
}

.draft-action-row button:hover {
  background: #ffffff;
  transform: translateY(-1px);
}

.draft-action-row button[formaction="/drafts/approve"] {
  border-color: transparent;
  background: var(--apple-blue);
  color: #ffffff;
  box-shadow: 0 6px 14px rgba(0, 113, 227, 0.18);
}

.draft-action-row button[formaction="/drafts/approve"]:hover {
  background: var(--apple-blue-hover);
}

.draft-action-row button[formaction="/drafts/do-not-contact"] {
  border-color: rgba(180, 35, 24, 0.16);
  background: #fff1f0;
  color: var(--apple-red);
}

.draft-context-details dl {
  max-width: 620px;
}

.draft-preview-details pre {
  border-color: rgba(0, 0, 0, 0.08);
  background: rgba(248, 250, 252, 0.96);
}

.empty-state {
  color: var(--apple-muted);
}

@media (max-width: 980px) {
  .settings-form,
  .contact-filter-form,
  .customer-filter-form,
  .draft-generate-form,
  .draft-signature-upload-form {
    grid-template-columns: 1fr;
  }

  .settings-form > button {
    justify-self: stretch;
  }

  .draft-action-row {
    grid-template-columns: repeat(2, minmax(120px, 1fr));
  }
}

@media (max-width: 620px) {
  .settings-provider-heading {
    grid-template-columns: 38px minmax(0, 1fr);
  }
  .settings-provider-state {
    grid-column: 2;
    justify-self: start;
  }
  .settings-provider-fields {
    grid-template-columns: 1fr;
  }
  .settings-provider-fields--imap label:last-child {
    grid-column: auto;
  }
}

/* Infinity Link brand assets */
.sidebar-brand-mark {
  display: flex;
  width: 48px;
  height: 32px;
  overflow: visible;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.sidebar-brand-mark img {
  display: block;
  width: 100%;
  height: auto;
}

.sidebar-brand-copy {
  display: grid;
  min-width: 0;
  align-content: center;
  gap: 2px;
}

.sidebar-brand-text {
  display: flex;
  width: 116px;
  max-width: 116px;
  overflow: visible;
}

.sidebar-brand-wordmark {
  display: block;
  width: 100%;
  height: auto;
}

.sidebar-release-version {
  color: #6b7280;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}

@media (max-width: 640px) {
  .app-shell,
  .sidebar-collapsed .app-shell {
    grid-template-columns: 1fr;
  }

  .app-main {
    padding: 14px 12px 28px;
  }

  .sidebar-brand-copy {
    display: none;
  }

  .app-sidebar,
  .sidebar-collapsed .app-sidebar {
    position: sticky;
    top: 0;
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 10px 12px;
    border-right: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    background: rgba(246, 247, 249, 0.94);
  }

  .sidebar-topbar,
  .sidebar-collapsed .sidebar-topbar {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
  }

  .sidebar-brand,
  .sidebar-collapsed .sidebar-brand {
    display: inline-flex;
  }

  .sidebar-brand-text,
  .sidebar-collapsed .sidebar-brand-text {
    display: inline-block;
    max-width: 190px;
  }

  .sidebar-link,
  .sidebar-collapsed .sidebar-link {
    grid-template-columns: 46px;
    flex: 0 0 auto;
    width: 46px;
    min-width: 46px;
  }

  .apple-page-heading h1 {
    font-size: 30px;
  }

  .workbench-metric-grid,
  .workbench-crm-view,
  .contact-summary-grid,
  .draft-summary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .workbench-metric-card,
  .contact-summary-card {
    min-height: 104px;
  }

  .draft-action-row {
    grid-template-columns: 1fr;
  }

  .draft-review-cell {
    min-width: min(420px, 86vw);
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.contact-results-table {
  min-width: 1040px;
}

.contact-results-table th:last-child,
.contact-results-table td.contact-actions-cell {
  position: sticky;
  right: 0;
  z-index: 3;
  min-width: 172px;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: -14px 0 24px rgba(0, 0, 0, 0.06);
}

.contact-results-table th:last-child {
  z-index: 5;
  background: rgba(247, 247, 249, 0.98);
}

.contact-col-actions {
  width: 172px;
}

.contact-review-form,
.contact-row-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  min-width: 148px;
}

.contact-review-form button {
  width: 100%;
  min-width: 0;
  min-height: 30px;
  padding: 6px 9px;
  border-radius: 10px;
  font-size: 11.5px;
  line-height: 1.12;
}

.contact-review-form.is-updating button {
  cursor: progress;
  opacity: 0.62;
}

.contact-review-form button:disabled {
  cursor: not-allowed;
  opacity: 0.62;
}

.contact-review-form button.is-current:disabled {
  opacity: 1;
}

.contact-review-form button.is-current {
  box-shadow: inset 0 0 0 1px rgba(0, 113, 227, 0.22), 0 0 0 3px rgba(0, 113, 227, 0.08);
}

.contact-action-feedback {
  margin-top: 6px;
  color: var(--apple-muted);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.contact-action-feedback[data-state="success"] {
  color: var(--apple-green);
}

.contact-action-feedback[data-state="error"] {
  color: var(--apple-red);
}

.contact-action-undo {
  display: inline;
  width: auto !important;
  min-height: 0 !important;
  margin: 0;
  padding: 0 !important;
  border: 0;
  border-radius: 0 !important;
  background: transparent;
  color: var(--apple-blue);
  font: inherit;
  text-decoration: underline;
  cursor: pointer;
}

.contact-action-undo:hover {
  background: transparent;
  color: #0057b8;
}

.contact-actions-cell.is-updated {
  animation: contact-action-saved 900ms ease;
}

.contact-actions-cell.is-error {
  background: #fff7f6;
}

@keyframes contact-action-saved {
  0% {
    background: rgba(232, 247, 237, 0.98);
  }
  100% {
    background: rgba(255, 255, 255, 0.98);
  }
}

.draft-results-table {
  width: 100%;
  min-width: 1040px;
  table-layout: fixed;
}

.draft-results-table th:nth-child(1),
.draft-results-table td:nth-child(1) {
  width: 130px;
}

.draft-results-table th:nth-child(2),
.draft-results-table td:nth-child(2) {
  width: 104px;
}

.draft-results-table th:nth-child(3),
.draft-results-table td:nth-child(3) {
  width: 126px;
}

.draft-results-table th:nth-child(4),
.draft-results-table td:nth-child(4) {
  width: 92px;
}

.draft-results-table th:nth-child(5),
.draft-results-table td:nth-child(5) {
  width: 128px;
}

.draft-results-table th:nth-child(6),
.draft-results-table td:nth-child(6) {
  width: 96px;
}

.draft-review-cell {
  min-width: 0;
  width: auto;
}

.draft-review-form {
  display: grid;
  grid-template-columns: 1fr;
  gap: 11px;
  min-width: 0;
}

.draft-review-form label,
.draft-review-form input,
.draft-review-form textarea,
.draft-preview-details,
.draft-preview-details pre {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.draft-review-form input,
.draft-review-form textarea {
  overflow-wrap: break-word;
  word-break: normal;
}

.draft-review-form textarea {
  min-height: 170px;
}

.draft-action-row {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.draft-action-row button {
  min-width: 0;
  padding-inline: 10px;
  white-space: normal;
}

.workbench-panel {
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
}

@media (max-width: 640px) {
  .app-shell,
  .sidebar-collapsed .app-shell {
    width: 100%;
    max-width: 100vw;
    overflow-x: hidden;
  }

  main,
  .app-main,
  .app-sidebar,
  .sidebar-collapsed .app-sidebar,
  .workbench-shell,
  .contact-workbench,
  .draft-workbench {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  main,
  .app-main {
    overflow-x: hidden;
  }

  .sidebar-toggle,
  .sidebar-collapsed .sidebar-toggle {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
  }

  .sidebar-brand-text,
  .sidebar-collapsed .sidebar-brand-text {
    max-width: calc(100vw - 118px);
  }

  .app-sidebar nav,
  .sidebar-collapsed .app-sidebar nav {
    overflow-x: auto;
    padding-bottom: 2px;
    scrollbar-width: none;
  }

  .app-sidebar nav::-webkit-scrollbar,
  .sidebar-collapsed .app-sidebar nav::-webkit-scrollbar {
    display: none;
  }

  .mail-subnav,
  .sidebar-collapsed .mail-subnav {
    display: none;
  }

  .contact-results-table,
  .draft-results-table {
    min-width: 960px;
  }

  .workbench-panel {
    scrollbar-width: thin;
  }
}

/* Impeccable core page polish */
.apple-page-shell {
  gap: 16px;
}

.apple-page-heading {
  align-items: center;
  min-height: 48px;
}

.apple-page-heading h1 {
  font-size: 34px;
  font-weight: 760;
  letter-spacing: 0;
}

.apple-card,
.status-card,
.research-control-card,
.research-results-card,
.diagnostics-card,
.research-warning-card {
  border-color: rgba(29, 29, 31, 0.1);
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(29, 29, 31, 0.04);
  backdrop-filter: none;
}

.apple-card:hover,
.status-card:hover,
.workbench-metric-card:hover,
.contact-summary-card:hover {
  transform: none;
  box-shadow: 0 1px 2px rgba(29, 29, 31, 0.04);
}

.workbench-metric-grid {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
}

.workbench-metric-card,
.contact-summary-card {
  border-top: 0;
  box-shadow: none;
}

.workbench-metric-card {
  min-height: 108px;
  padding: 14px 14px 13px;
}

.workbench-metric-card::before {
  display: none;
}

.workbench-metric-card span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
}

.workbench-metric-card span::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: #8e8e93;
}

.workbench-metric-card.tone-blue span::before {
  background: var(--apple-blue);
}

.workbench-metric-card.tone-amber span::before {
  background: #b56a00;
}

.workbench-metric-card.tone-green span::before {
  background: var(--apple-green);
}

.workbench-metric-card.tone-purple span::before {
  background: var(--apple-purple);
}

.workbench-metric-card.tone-orange span::before {
  background: #d97218;
}

.workbench-metric-card.tone-magenta span::before {
  background: #c33d78;
}

.workbench-metric-card strong {
  font-size: 30px;
  letter-spacing: 0;
}

.workbench-action-grid .workbench-metric-card,
.usage-summary-grid .workbench-metric-card {
  border: 1px solid rgba(29, 29, 31, 0.08);
  background: #fafafa;
}

.workbench-action-grid .workbench-metric-card strong,
.usage-summary-grid .workbench-metric-card strong {
  font-size: 22px;
}

.panel-heading {
  min-height: 34px;
  margin-bottom: 12px;
}

.panel-heading h2 {
  font-size: 17px;
  font-weight: 740;
}

.panel-heading a {
  border: 1px solid rgba(0, 113, 227, 0.12);
  background: #f5f9ff;
}

.research-results-table th,
.customer-workbench-table th,
.contact-company-table th,
.contact-results-table th,
.draft-results-table th,
.workbench-usage-table th,
.workbench-pipeline-table th,
.suppression-table th {
  background: #f6f6f8;
  color: #5f6368;
  font-size: 12px;
  text-transform: none;
}

.research-results-table td,
.customer-workbench-table td,
.contact-company-table td,
.contact-results-table td,
.draft-results-table td,
.workbench-usage-table td,
.workbench-pipeline-table td,
.suppression-table td {
  border-bottom-color: rgba(29, 29, 31, 0.08);
}

.apple-form button,
.research-form button,
.status-card-actions button,
.contact-actions button {
  box-shadow: none;
}

.contact-filter-card,
.draft-control-card {
  padding: 16px;
}

.contact-summary-grid,
.draft-summary-grid {
  gap: 10px;
}

.contact-summary-card {
  min-height: 94px;
  padding: 13px 14px;
}

.contact-summary-card strong {
  font-size: 26px;
  font-weight: 760;
}

.contact-results-table {
  min-width: 1120px;
}

.contact-results-table th:last-child,
.contact-results-table td.contact-actions-cell {
  min-width: 188px;
  background: #ffffff;
  box-shadow: -10px 0 18px rgba(29, 29, 31, 0.05);
}

.contact-results-table th:last-child {
  background: #f6f6f8;
}

.contact-col-actions {
  width: 188px;
}

.contact-review-form,
.contact-row-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  min-width: 160px;
}

.contact-review-form button {
  width: 100%;
  height: auto;
  min-height: 34px;
  padding: 7px 10px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 720;
  line-height: 1.15;
  text-align: center;
  white-space: normal;
}

.contact-review-form button[value="approved_for_draft"] {
  background: #edf9f0;
  border-color: rgba(36, 138, 61, 0.18);
}

.contact-review-form button[value="not_relevant"] {
  background: #f6f6f8;
  border-color: rgba(29, 29, 31, 0.1);
  color: #3a3a3c;
}

.contact-review-form button[value="do_not_contact"] {
  background: #fff2f0;
  border-color: rgba(180, 35, 24, 0.16);
}

.draft-generate-form {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.draft-control-card {
  display: grid;
  gap: 14px;
}

.draft-filter-form {
  grid-template-columns: minmax(180px, 0.75fr) minmax(170px, 0.65fr) minmax(220px, 1fr) minmax(124px, max-content);
  align-items: end;
}

.draft-filter-form button {
  min-width: 124px;
}

.draft-stage-select {
  min-width: 0;
}

.draft-generation-settings {
  padding-top: 14px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
}

.draft-generation-settings .draft-generate-form {
  grid-template-columns: repeat(4, minmax(170px, 1fr)) minmax(150px, max-content);
  align-items: end;
}

.draft-generation-settings .draft-generate-form button {
  min-width: 150px;
}

.manual-template-workbench,
.openai-draft-workbench {
  display: grid;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
}

.manual-template-actions,
.draft-bulk-approve-form {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.manual-template-actions button,
.draft-bulk-approve-form button {
  min-height: 34px;
  padding: 7px 11px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 8px;
  background: #f5f5f7;
  color: #1d1d1f;
  font-weight: 720;
}

.openai-draft-note {
  display: grid;
  gap: 3px;
  align-self: end;
  color: #657383;
  font-size: 12px;
}

.openai-draft-note strong {
  color: #1d1d1f;
  font-size: 14px;
}

.manual-template-field {
  display: grid;
  min-width: 0;
  gap: 8px;
  align-self: end;
}

.manual-template-field label {
  min-width: 0;
}

.manual-template-body {
  grid-column: 1 / -1;
}

.manual-placeholder-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.draft-generation-settings .draft-generate-form .manual-placeholder-button,
.apple-form .manual-placeholder-button {
  min-width: 0;
  min-height: 30px;
  padding: 5px 9px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 999px;
  background: #f5f5f7;
  color: #3a3a3c;
  font-size: 12px;
  font-weight: 720;
  line-height: 1.15;
  box-shadow: none;
}

.apple-form .manual-placeholder-button:hover,
.apple-form .manual-placeholder-button:focus-visible {
  border-color: rgba(0, 113, 227, 0.22);
  background: #edf5ff;
  color: var(--apple-blue);
}

.draft-signature-upload-form {
  grid-template-columns: minmax(180px, 1fr) minmax(160px, 0.85fr) minmax(230px, 1.2fr) minmax(170px, max-content) minmax(132px, max-content);
}

.draft-results-table {
  min-width: 1120px;
}

.draft-review-cell {
  min-width: 0;
}

.draft-review-form {
  gap: 10px;
}

.draft-review-form input {
  font-weight: 700;
}

.draft-review-form textarea {
  min-height: 210px;
  color: #1d1d1f;
  font-size: 14px;
  line-height: 1.5;
}

.draft-preview-details summary,
.draft-context-details summary {
  width: fit-content;
  padding: 5px 8px;
  border-radius: 8px;
}

.draft-preview-details pre {
  max-height: 240px;
  overflow: auto;
  color: #2f343b;
}

.draft-action-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.draft-action-row button {
  min-height: 38px;
  border-radius: 8px;
  box-shadow: none;
}

.draft-action-row button[formaction="/drafts/approve"] {
  grid-column: span 2;
}

@media (max-width: 900px) {
  .workbench-two-column,
  .workbench-crm-view,
  .usage-summary-grid {
    grid-template-columns: 1fr;
  }

  .draft-filter-form,
  .draft-generation-settings .draft-generate-form,
  .draft-signature-upload-form {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .apple-page-heading h1 {
    font-size: 30px;
  }

  .workbench-metric-grid,
  .workbench-crm-view,
  .contact-summary-grid,
  .draft-summary-grid {
    grid-template-columns: 1fr;
  }

  .contact-results-table,
  .draft-results-table {
    min-width: 900px;
  }

  .draft-action-row {
    grid-template-columns: 1fr;
  }

  .draft-action-row button[formaction="/drafts/approve"] {
    grid-column: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 1ms !important;
    animation-duration: 1ms !important;
  }
}

/* Mail execution refresh */
.mail-page-heading {
  align-items: center;
}

.mail-tabs,
.draft-mode-tabs {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px;
  padding: 4px;
  border-radius: 12px;
  background: #e9ebf0;
}

.mail-tab,
.draft-mode-tab {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  justify-content: center;
  padding: 0 13px;
  border-radius: 9px;
  color: #566170;
  font-size: 14px;
  font-weight: 740;
  white-space: nowrap;
}

.mail-tab.active,
.draft-mode-tab.active {
  background: #ffffff;
  color: #111827;
  box-shadow: 0 1px 2px rgba(29, 29, 31, 0.08);
}

.send-results-card {
  max-width: 100%;
  overflow-x: auto;
}

.send-results-table-v2 {
  min-width: 1120px;
  table-layout: fixed;
}

.send-results-table-v2 th:nth-child(1),
.send-results-table-v2 td:nth-child(1) {
  width: 11%;
}

.send-results-table-v2 th:nth-child(2),
.send-results-table-v2 td:nth-child(2) {
  width: 12%;
}

.send-results-table-v2 th:nth-child(3),
.send-results-table-v2 td:nth-child(3) {
  width: 16%;
}

.send-results-table-v2 th:nth-child(4),
.send-results-table-v2 td:nth-child(4) {
  width: 24%;
}

.send-results-table-v2 th:nth-child(5),
.send-results-table-v2 td:nth-child(5) {
  width: 12%;
}

.send-results-table-v2 th:nth-child(6),
.send-results-table-v2 td:nth-child(6) {
  width: 10%;
}

.send-results-table-v2 th:nth-child(7),
.send-results-table-v2 td:nth-child(7) {
  width: 15%;
}

.send-follow-up-actions {
  display: grid;
  gap: 8px;
  min-width: 170px;
  padding: 12px;
  border-radius: 12px;
  background: #f7f9fc;
}

.send-follow-up-actions.send-replied-state {
  background: #fff8e8;
}

.send-reply-status {
  display: inline-flex;
  width: fit-content;
  min-height: 26px;
  align-items: center;
  padding: 0 11px;
  border-radius: 999px;
  background: #fff0cc;
  color: #9a5d00;
  font-weight: 760;
}

.send-follow-up-actions strong {
  font-size: 13px;
  line-height: 1.25;
}

.send-follow-up-actions small {
  color: #5f6b7a;
  font-size: 12px;
  line-height: 1.35;
}

.send-row-actions,
.send-row-actions-compact {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
}

.send-row-actions button,
.send-more-actions button {
  min-height: 32px;
  border: 1px solid #cfd7e3;
  border-radius: 8px;
  background: #ffffff;
  color: #111827;
  font: inherit;
  font-size: 12px;
  font-weight: 740;
  cursor: pointer;
}

.send-row-actions button:hover,
.send-more-actions button:hover {
  border-color: #9ecbff;
  background: #f5f9ff;
}

.send-row-actions button.danger,
.send-more-actions button.danger {
  border-color: #ffd0ca;
  background: #fff4f2;
  color: #b42318;
}

.send-more-actions summary {
  cursor: pointer;
  color: #0f57c7;
  font-weight: 740;
}

.send-more-actions div {
  display: grid;
  gap: 7px;
  margin-top: 7px;
}

.send-action-feedback {
  color: #1f7a3d;
  font-weight: 720;
}

.send-blocked-state {
  border-color: #ffd0ca;
  background: #fff7f6;
}

.send-blocked-state strong {
  color: #7a271a;
}

.draft-workbench-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.draft-workbench-heading h2 {
  margin: 0;
  font-size: 17px;
}

.draft-workbench-heading p,
.draft-workbench-heading span {
  margin: 4px 0 0;
  color: #657383;
  font-size: 13px;
}

.draft-recipient-workbench {
  display: grid;
  gap: 16px;
}

.draft-recipient-form {
  display: grid;
  gap: 14px;
}

.draft-recipient-scope-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.draft-recipient-scope-card {
  display: flex;
  min-width: 0;
  min-height: 78px;
  align-items: flex-start;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(29, 29, 31, 0.12);
  border-radius: 12px;
  background: #ffffff;
  cursor: pointer;
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.draft-recipient-scope-card:has(input:checked) {
  border-color: rgba(0, 113, 227, 0.55);
  background: #eef6ff;
  box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.1);
}

.draft-recipient-scope-card input {
  flex: 0 0 18px;
  width: 18px;
  min-width: 18px;
  height: 18px;
  min-height: 18px;
  margin: 2px 0 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  accent-color: #0071e3;
  box-shadow: none;
}

.draft-recipient-scope-card input:focus,
.draft-recipient-scope-card input:focus-visible {
  border: 0;
  outline: none;
  box-shadow: none;
}

.draft-recipient-scope-card:has(input:focus-visible) {
  border-color: rgba(0, 113, 227, 0.68);
  box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.16);
}

.draft-recipient-scope-card span {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.draft-recipient-scope-card strong {
  color: #1d1d1f;
  font-size: 15px;
}

.draft-recipient-scope-card small {
  color: #657383;
  font-size: 12px;
  line-height: 1.4;
}

.draft-recipient-filter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr)) minmax(120px, max-content);
  align-items: end;
  gap: 10px;
}

.draft-recipient-filter-grid > label,
.draft-company-search > label,
.draft-recipient-status {
  display: grid;
  min-width: 0;
  gap: 7px;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 720;
}

.draft-readonly-field {
  display: flex;
  min-height: 42px;
  align-items: center;
  padding: 0 12px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 9px;
  background: #f5f5f7;
  color: #4b5563;
  font-weight: 650;
}

.draft-company-search {
  display: none;
  grid-column: 1 / -2;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: end;
  gap: 10px;
}

.draft-recipient-form:has(input[name="recipient_scope"][value="company"]:checked) .draft-company-search {
  display: grid;
}

.draft-company-search button,
.draft-recipient-apply {
  min-height: 42px;
  white-space: nowrap;
}

.draft-recipient-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(150px, 220px));
  align-items: center;
  gap: 10px;
  padding: 13px;
  border: 1px solid rgba(31, 122, 61, 0.16);
  border-radius: 12px;
  background: #f1faf3;
}

.draft-recipient-summary-button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  min-height: 48px;
  align-items: center;
  gap: 4px 10px;
  padding-right: 14px;
  border-top: 0;
  border-bottom: 0;
  border-left: 0;
  border-right: 1px solid rgba(31, 122, 61, 0.14);
  color: inherit;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.draft-recipient-summary-button > span:first-child,
.draft-recipient-summary small,
.draft-recipient-summary p {
  color: #4f6b58;
  font-size: 12px;
}

.draft-recipient-summary strong {
  color: #1f7a3d;
  font-size: 24px;
  line-height: 1;
}

.draft-recipient-summary-value {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
}

.draft-recipient-summary-action {
  grid-column: 1 / -1;
  color: #176b36;
  font-size: 12px;
  font-weight: 760;
}

.draft-recipient-summary-button:hover {
  background: rgba(31, 122, 61, 0.06);
}

.draft-recipient-summary-button:focus-visible {
  position: relative;
  z-index: 1;
  outline: 3px solid rgba(0, 113, 227, 0.2);
  outline-offset: -3px;
}

.draft-recipient-summary-button:disabled {
  cursor: not-allowed;
  opacity: 0.58;
}

.draft-recipient-summary p {
  margin: 0;
  line-height: 1.5;
}

.draft-recipient-policy-note {
  max-width: 72ch;
  margin: -4px 0 0;
  color: #536273;
  font-size: 13px;
  line-height: 1.55;
}

.draft-recipient-details-dialog {
  width: min(860px, calc(100vw - 32px));
}

.draft-recipient-details-dialog [hidden] {
  display: none !important;
}

.draft-recipient-dialog-close {
  min-width: 64px;
  min-height: 40px;
  padding: 8px 14px;
  border: 1px solid rgba(29, 29, 31, 0.14);
  border-radius: 10px;
  color: #344054;
  background: #ffffff;
  font: inherit;
  font-size: 13px;
  font-weight: 720;
  cursor: pointer;
}

.draft-recipient-dialog-close:hover,
.draft-recipient-dialog-close:focus-visible {
  border-color: rgba(0, 113, 227, 0.42);
  color: #005fbd;
  background: #f3f8ff;
}

.draft-recipient-dialog-close:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.18);
  outline-offset: 2px;
}

.draft-recipient-details-body {
  padding-top: 16px;
}

.draft-recipient-details-tabs {
  display: flex;
  gap: 6px;
  padding: 4px;
  border-radius: 11px;
  background: #f2f4f7;
}

.draft-recipient-details-tabs button {
  min-height: 40px;
  flex: 1 1 0;
  padding: 8px 12px;
  border: 0;
  border-radius: 8px;
  color: #667085;
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 720;
  cursor: pointer;
}

.draft-recipient-details-tabs button[aria-selected="true"] {
  color: #1d1d1f;
  background: #ffffff;
  box-shadow: 0 2px 5px rgba(16, 24, 40, 0.1);
}

.draft-recipient-details-tabs button:focus-visible,
.draft-recipient-details-pagination button:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.18);
  outline-offset: 2px;
}

.draft-recipient-reason-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px;
}

.draft-recipient-reason-summary span,
.draft-recipient-reason-summary .draft-recipient-reason-link {
  display: inline-flex;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  color: #475467;
  background: #f2f4f7;
  font-size: 12px;
  font-weight: 650;
}

.draft-recipient-reason-summary .draft-recipient-reason-link {
  border: 1px solid #b8d8f5;
  background: #edf6ff;
  color: #075fab;
  text-decoration: none;
  transition: border-color 140ms ease-out, background-color 140ms ease-out,
    color 140ms ease-out;
}

.draft-recipient-reason-summary .draft-recipient-reason-link:hover {
  border-color: #7aaedb;
  background: #dfefff;
  color: #064f8d;
}

.draft-recipient-reason-summary .draft-recipient-reason-link:focus-visible {
  outline: 3px solid rgba(10, 123, 232, 0.28);
  outline-offset: 2px;
}

.draft-recipient-details-state {
  padding: 44px 16px;
  color: #667085;
  text-align: center;
}

.draft-recipient-details-state.is-error {
  color: #9f2d24;
}

.draft-recipient-detail-meta {
  color: #667085;
  font-size: 12px;
}

.draft-recipient-detail-reason {
  display: inline-flex;
  width: fit-content;
  margin-top: 5px;
  padding: 4px 8px;
  border-radius: 999px;
  color: #8a4b08;
  background: #fff4df;
  font-size: 12px;
  font-weight: 700;
}

.draft-recipient-details-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding-top: 16px;
}

.draft-recipient-details-pagination button {
  min-height: 40px;
  padding: 8px 14px;
  border: 1px solid rgba(29, 29, 31, 0.14);
  border-radius: 9px;
  color: #0a66d9;
  background: #ffffff;
  font: inherit;
  font-size: 13px;
  font-weight: 720;
  cursor: pointer;
}

.draft-recipient-details-pagination button:disabled {
  color: #98a2b3;
  cursor: not-allowed;
}

.draft-recipient-details-pagination span {
  color: #667085;
  font-size: 13px;
}

.draft-generation-signature-panel {
  display: grid;
  grid-template-columns: minmax(190px, 0.35fr) minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  padding: 14px;
  border: 1px solid rgba(0, 113, 227, 0.14);
  border-radius: 12px;
  background: #f7faff;
}

.draft-generation-signature-panel h3,
.draft-generation-signature-panel p {
  margin: 0;
}

.draft-generation-signature-panel h3 {
  font-size: 14px;
}

.draft-generation-signature-panel p {
  margin-top: 5px;
  color: #657383;
  font-size: 12px;
  line-height: 1.45;
}

.draft-generation-signature-panel .draft-signature-preview {
  margin-top: 0;
}

.draft-generation-signature-panel.is-empty {
  grid-template-columns: 1fr;
  border-color: rgba(184, 117, 16, 0.18);
  background: #fffaf2;
}

.draft-system-checks {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(31, 122, 61, 0.16);
  border-radius: 12px;
  background: #f3faf5;
}

.draft-system-checks > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.draft-system-checks ul {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: #3d5945;
  font-size: 13px;
}

.draft-system-checks li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.draft-system-checks li span,
.draft-system-check-status {
  color: #1f7a3d;
  font-weight: 760;
}

.draft-system-check-status {
  padding: 4px 8px;
  border-radius: 999px;
  background: #e5f6e9;
  font-size: 12px;
}

.draft-bulk-approval-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.draft-bulk-approval-actions .draft-bulk-approve-form:first-child button {
  border-color: rgba(0, 113, 227, 0.32);
  background: #ffffff;
  color: #0066cc;
}

.draft-bulk-approval-actions .draft-bulk-approve-form:last-child button {
  border-color: #0071e3;
  background: #0071e3;
  color: #ffffff;
}

.draft-select-column,
.draft-select-cell {
  width: 52px;
  min-width: 52px;
  text-align: center;
}

.draft-select-cell input {
  width: 18px;
  height: 18px;
  accent-color: #0071e3;
}

.draft-select-cell input:disabled {
  opacity: 0.35;
}

.manual-template-body {
  grid-column: 1 / -1;
}

.follow-up-execution-layout {
  min-width: 0;
}

.follow-up-summary-bar {
  display: grid;
  grid-template-columns: repeat(6, minmax(128px, 1fr));
  gap: 8px;
}

.follow-up-filter-tab {
  display: grid;
  gap: 6px;
  min-height: 68px;
  padding: 12px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 10px;
  background: #ffffff;
  color: #4b5563;
}

.follow-up-filter-tab.active {
  border-color: rgba(0, 113, 227, 0.28);
  background: #edf5ff;
  color: #0f57c7;
}

.follow-up-filter-tab span {
  font-size: 13px;
  font-weight: 740;
}

.follow-up-filter-tab strong {
  color: #111827;
  font-size: 24px;
  line-height: 1;
}

.follow-up-execution-grid {
  display: grid;
  grid-template-columns: minmax(420px, 0.95fr) minmax(360px, 1.05fr);
  gap: 12px;
  align-items: start;
}

.follow-up-task-list,
.follow-up-detail-panel {
  min-width: 0;
  overflow: hidden;
}

.follow-up-task-stack {
  display: grid;
  gap: 8px;
  padding: 12px;
}

.follow-up-task-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, auto);
  gap: 10px;
  padding: 12px;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  background: #ffffff;
}

.follow-up-task-card.selected {
  border-color: #9ecbff;
  background: #f8fbff;
}

.follow-up-card-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 5px 8px;
  min-width: 0;
}

.follow-up-card-title {
  overflow: hidden;
  color: #111827;
  font-size: 15px;
  font-weight: 780;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.follow-up-kind,
.follow-up-priority,
.follow-up-risk {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  min-height: 24px;
  padding: 0 8px;
  border-radius: 999px;
  background: #eef2f6;
  color: #405064;
  font-size: 12px;
  font-weight: 740;
}

.follow-up-priority {
  text-transform: uppercase;
}

.priority-high .follow-up-priority,
.follow-up-risk {
  background: #fff1f0;
  color: #b42318;
}

.priority-medium .follow-up-priority {
  background: #fff7e8;
  color: #9a5d00;
}

.follow-up-card-main p,
.follow-up-card-main small,
.follow-up-card-main time {
  grid-column: 1 / -1;
  margin: 0;
  color: #5f6b7a;
  font-size: 12px;
  line-height: 1.35;
}

.follow-up-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-content: start;
  justify-content: flex-end;
}

.follow-up-action-form {
  margin: 0;
}

.follow-up-action-form button {
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid #cfd7e3;
  border-radius: 8px;
  background: #ffffff;
  color: #111827;
  font: inherit;
  font-size: 12px;
  font-weight: 740;
  cursor: pointer;
}

.follow-up-action-form button:hover {
  border-color: #9ecbff;
  background: #f5f9ff;
}

.follow-up-action-form button.danger {
  border-color: #ffd0ca;
  background: #fff4f2;
  color: #b42318;
}

.follow-up-detail-panel {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.follow-up-detail-section,
.follow-up-conflicts {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  background: #ffffff;
}

.follow-up-conflicts.has-conflict {
  border-color: #ffd0ca;
  background: #fff7f6;
}

.follow-up-detail-section h3,
.follow-up-conflicts h3 {
  margin: 0;
  font-size: 14px;
}

.follow-up-detail-section p,
.follow-up-conflicts li {
  margin: 0;
  color: #374151;
  line-height: 1.45;
}

.follow-up-detail-section dl {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 6px 10px;
  margin: 0;
}

.follow-up-detail-section dt {
  color: #657383;
  font-size: 12px;
  font-weight: 740;
}

.follow-up-detail-section dd {
  min-width: 0;
  margin: 0;
  color: #111827;
  overflow-wrap: anywhere;
}

.follow-up-timeline {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 18px;
}

.follow-up-timeline li {
  color: #374151;
}

.follow-up-timeline time,
.follow-up-timeline span {
  display: block;
  color: #657383;
  font-size: 12px;
}

.settings-status-overview {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
}

.settings-status-card {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(29, 29, 31, 0.08);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.04);
}

.settings-status-card-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.settings-status-card-main strong {
  min-width: 0;
  overflow: hidden;
  color: #1d1d1f;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-status-card p {
  min-width: 0;
  margin: 0;
  color: #5f6b7a;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.settings-status-pill {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  background: #eef7f0;
  color: #248a3d;
  font-size: 12px;
  font-weight: 760;
}

.settings-status-missing .settings-status-pill {
  background: #f4f4f5;
  color: #657383;
}

.settings-status-error .settings-status-pill {
  background: #fff1f0;
  color: #b42318;
}

.settings-form {
  align-items: start;
}

.settings-form section {
  border-radius: 10px;
}

.bulk-delete-form {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 12px;
}

.bulk-delete-button {
  min-height: 36px;
  padding: 0 14px;
  border: 1px solid rgba(180, 35, 24, 0.16);
  border-radius: 10px;
  background: #fff4f2;
  color: #b42318;
  font: inherit;
  font-size: 13px;
  font-weight: 760;
  box-shadow: none;
  cursor: pointer;
}

.bulk-delete-button:hover {
  border-color: rgba(180, 35, 24, 0.28);
  background: #fff1f0;
}

.customer-bulk-action-bar {
  position: fixed;
  z-index: 80;
  right: max(18px, env(safe-area-inset-right));
  bottom: max(18px, env(safe-area-inset-bottom));
  left: max(118px, calc(50% - 330px));
  display: grid;
  width: min(660px, calc(100vw - 154px));
  box-sizing: border-box;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  margin: 0 auto;
  padding: 12px 14px 12px 16px;
  border: 0;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 16px 44px rgba(22, 34, 52, 0.2);
  animation: customer-bulk-action-enter 220ms cubic-bezier(0.16, 1, 0.3, 1) both;
}
.customer-bulk-action-bar[hidden] {
  display: none !important;
}
.customer-bulk-action-copy {
  display: grid;
  min-width: 0;
  gap: 2px;
}
.customer-bulk-action-copy strong {
  color: #1d1d1f;
  font-size: 14px;
  font-weight: 780;
}
.customer-bulk-action-copy small {
  overflow: hidden;
  color: #647184;
  font-size: 11px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.customer-bulk-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.customer-bulk-action-bar .bulk-delete-button,
.customer-bulk-clear-button {
  min-height: 44px;
  padding: 0 15px;
  border-radius: 10px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 760;
  cursor: pointer;
}
.customer-bulk-action-bar .bulk-delete-button {
  margin: 0;
  border: 0;
  background: #c9342c;
  color: #ffffff;
}
.customer-bulk-action-bar .bulk-delete-button:hover {
  background: #ac2923;
}
.customer-bulk-action-bar .bulk-delete-button:disabled {
  background: #d8dce2;
  color: #7a8491;
  cursor: not-allowed;
}
.customer-bulk-clear-button {
  border: 1px solid #d5dae1;
  background: #ffffff;
  color: #344054;
}
.customer-bulk-clear-button:hover {
  background: #f4f6f8;
}
.customer-bulk-action-bar button:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.3);
  outline-offset: 2px;
}
.customer-shell.has-bulk-selection {
  padding-bottom: 92px;
}
@keyframes customer-bulk-action-enter {
  from {
    transform: translateY(12px);
    opacity: 0.35;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@media (max-width: 760px) {
  .customer-overview-primary,
  .customer-overview-email {
    column-gap: 16px;
    padding: 17px 18px;
  }
  .customer-bulk-action-bar {
    right: 12px;
    bottom: max(10px, env(safe-area-inset-bottom));
    left: 12px;
    width: auto;
  }
}
@media (max-width: 520px) {
  .customer-overview-bar {
    grid-template-columns: 1fr;
  }
  .customer-overview-email {
    border-top: 1px solid #e4e8ee;
    border-left: 0;
  }
  .customer-bulk-action-bar {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .customer-bulk-actions,
  .customer-bulk-actions button {
    width: 100%;
  }
  .customer-bulk-action-copy small {
    white-space: normal;
  }
  .customer-shell.has-bulk-selection {
    padding-bottom: 150px;
  }
}

/* Customer stage views */
.customer-stage-shell {
  gap: 14px;
}

.customer-stage-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 28px;
  padding: 26px 28px;
  border-color: #dce3ec;
  box-shadow: 0 12px 30px rgba(29, 43, 67, 0.06);
}

.customer-stage-heading-copy {
  max-width: 760px;
}

.customer-stage-eyebrow {
  display: block;
  margin-bottom: 8px;
  color: #1473e6;
  font-size: 12px;
  font-weight: 760;
  letter-spacing: 0.06em;
}

.customer-stage-hero h1 {
  margin: 0;
  color: #101828;
  font-size: clamp(30px, 3.1vw, 44px);
  font-weight: 780;
  letter-spacing: -0.045em;
  line-height: 1.08;
}

.customer-stage-hero p {
  margin: 11px 0 0;
  color: #667085;
  font-size: 15px;
  line-height: 1.65;
}

.customer-stage-all-link {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 15px;
  border: 1px solid #cfd8e5;
  border-radius: 9px;
  background: #ffffff;
  color: #285f9d;
  font-size: 13px;
  font-weight: 720;
}

.customer-stage-all-link:hover {
  border-color: #aebfd4;
  background: #f7faff;
  color: #0a66c2;
}

.customer-stage-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: hidden;
  padding: 0;
}

.customer-stage-metrics > div {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: baseline;
  gap: 4px 12px;
  min-width: 0;
  padding: 17px 20px;
}

.customer-stage-metrics > div + div {
  border-left: 1px solid #e4e8ee;
}

.customer-stage-metrics span,
.customer-stage-metrics small {
  color: #667085;
  font-size: 12px;
  font-weight: 650;
}

.customer-stage-metrics strong {
  color: #101828;
  font-size: 24px;
  font-variant-numeric: tabular-nums;
  font-weight: 780;
  letter-spacing: -0.025em;
}

.customer-stage-metrics small {
  grid-column: 1 / -1;
  color: #8a94a4;
  font-size: 11px;
  font-weight: 560;
}

.customer-stage-results-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px 20px 16px;
  border-bottom: 1px solid #e7ebf1;
}

.customer-stage-results-heading h2,
.customer-stage-results-heading p {
  margin: 0;
}

.customer-stage-results-heading h2 {
  color: #101828;
  font-size: 18px;
  font-weight: 760;
  letter-spacing: -0.02em;
}

.customer-stage-results-heading p {
  margin-top: 4px;
  color: #7a8699;
  font-size: 12px;
}

.customer-stage-results-heading > span {
  padding: 6px 10px;
  border: 1px solid #dbe5f0;
  border-radius: 999px;
  background: #f5f8fc;
  color: #45617f;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.customer-stage-empty {
  padding: 42px 22px 48px;
  border-top: 1px solid #edf0f4;
  text-align: center;
}

.customer-stage-empty strong {
  display: block;
  color: #344054;
  font-size: 16px;
}

.customer-stage-empty p {
  margin: 7px 0 0;
  color: #8a94a4;
  font-size: 13px;
}

@media (max-width: 760px) {
  .customer-stage-hero {
    flex-direction: column;
  }

  .customer-stage-metrics {
    grid-template-columns: 1fr;
  }

  .customer-stage-metrics > div + div {
    border-top: 1px solid #e4e8ee;
    border-left: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .customer-bulk-action-bar {
    animation: none;
  }
}

.mail-settings-edit-button {
  justify-content: center;
  width: fit-content;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(0, 113, 227, 0.18);
  border-radius: 999px;
  background: #f5f9ff;
  color: var(--apple-blue);
  font-size: 13px;
  font-weight: 760;
}

.mail-settings-edit-button:hover {
  background: #edf5ff;
}

.manual-template-workbench .draft-generate-form {
  grid-template-columns: repeat(5, minmax(160px, 1fr));
  align-items: end;
}

.manual-template-workbench .manual-template-body {
  grid-column: 1 / -1;
}

.manual-template-compose {
  display: grid;
  gap: 8px;
}

.manual-template-label {
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 760;
}

.manual-template-rich-shell {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(0, 113, 227, 0.14);
  border-radius: 12px;
  background: #eef5fd;
}

.manual-template-rich-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  padding: 8px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 10px;
  background: #ffffff;
}

.manual-template-rich-toolbar button,
.manual-template-rich-toolbar select {
  flex: 0 0 auto;
  width: auto;
  min-width: 0;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid rgba(29, 29, 31, 0.12);
  border-radius: 8px;
  background: #f9fafb;
  color: #1d1d1f;
  box-shadow: none;
  font: inherit;
  font-size: 12px;
  font-weight: 740;
  line-height: 1;
  cursor: pointer;
}

.manual-template-rich-toolbar select {
  width: 152px;
  max-width: 100%;
  padding-right: 28px;
}

.manual-template-rich-toolbar select[data-manual-template-size] {
  width: 110px;
}

.manual-template-rich-toolbar button[data-manual-template-command] {
  min-width: 36px;
}

.manual-template-rich-toolbar button[data-manual-template-command="bold"],
.manual-template-rich-toolbar button[data-manual-template-command="italic"],
.manual-template-rich-toolbar button[data-manual-template-command="underline"] {
  width: 36px;
  padding: 0;
}

.manual-template-rich-toolbar button[data-manual-template-command="foreColor"],
.manual-template-rich-toolbar button[data-manual-template-command="backColor"],
.manual-template-rich-toolbar button[data-manual-template-command="insertUnorderedList"],
.manual-template-rich-toolbar button[data-manual-template-command="createLink"] {
  min-width: 70px;
  padding: 0 12px;
}

.manual-template-rich-toolbar button:hover,
.manual-template-rich-toolbar select:hover {
  border-color: rgba(0, 113, 227, 0.28);
  background: #f4f9ff;
}

.manual-template-editor {
  box-sizing: border-box;
  width: 100%;
  min-height: 300px;
  max-height: 560px;
  overflow: auto;
  padding: 18px;
  border: 1px solid rgba(29, 29, 31, 0.16);
  border-radius: 10px;
  background: #ffffff;
  color: #1d1d1f;
  box-shadow: inset 0 1px 0 rgba(29, 29, 31, 0.03);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.48;
  outline: none;
}

.manual-template-editor:focus-visible {
  border-color: var(--apple-blue);
  box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.16);
}

.manual-template-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}

.placeholder-help {
  display: grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid rgba(0, 113, 227, 0.12);
  border-radius: 10px;
  background: #f5f9ff;
  color: #405064;
  font-size: 12px;
  line-height: 1.45;
}

.placeholder-help strong {
  color: #1d1d1f;
}

.manual-template-action-row {
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  align-items: center;
  overflow-x: auto;
  padding-bottom: 2px;
}

.manual-template-action-row button {
  flex: 0 0 auto;
  min-height: 38px;
  border-radius: 10px;
}

.manual-template-action-row .primary-action {
  border-color: transparent;
  background: var(--apple-blue);
  color: #ffffff;
}

.draft-file-upload.compact {
  min-height: 38px;
  padding: 8px 10px;
}

.draft-attachment-panel {
  display: grid;
  gap: 9px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid rgba(29, 29, 31, 0.08);
  border-radius: 10px;
  background: #fbfbfd;
}

.draft-attachment-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.draft-attachment-heading strong {
  font-size: 13px;
}

.draft-attachment-heading span,
.draft-attachment-empty {
  margin: 0;
  color: #657383;
  font-size: 12px;
}

.draft-attachment-list {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.draft-attachment-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  padding: 7px 9px;
  border: 1px solid rgba(29, 29, 31, 0.08);
  border-radius: 8px;
  background: #ffffff;
}

.draft-attachment-list span {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.draft-attachment-list strong {
  min-width: 0;
  overflow: hidden;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-attachment-list small {
  color: #657383;
  font-size: 11px;
}

.draft-attachment-list form,
.draft-attachment-upload {
  margin: 0;
}

.draft-attachment-list button,
.draft-attachment-upload button {
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 8px;
  background: #ffffff;
  color: #3a3a3c;
  font: inherit;
  font-size: 12px;
  font-weight: 740;
}

.draft-attachment-list button {
  color: #b42318;
}

.draft-attachment-upload {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.draft-review-form textarea {
  min-height: 300px;
  line-height: 1.55;
}

@media (max-width: 1180px) {
  .manual-template-workbench .draft-generate-form {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }

  .placeholder-help {
    grid-template-columns: 1fr;
  }

  .follow-up-summary-bar {
    grid-template-columns: repeat(3, minmax(128px, 1fr));
  }

  .follow-up-execution-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .mail-page-heading,
  .draft-workbench-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .follow-up-summary-bar {
    grid-template-columns: 1fr 1fr;
  }

  .follow-up-task-card {
    grid-template-columns: 1fr;
  }

  .follow-up-card-actions {
    justify-content: flex-start;
  }
}

/* RocketReach company discovery and candidate review */
.contact-intelligence-status {
  display: grid;
  gap: 14px;
  margin-bottom: 20px;
  padding: 20px;
}

.contact-intelligence-heading {
  align-items: flex-start;
  display: flex;
  gap: 16px;
  justify-content: space-between;
}

.contact-intelligence-heading h2 {
  font-size: 20px;
  margin: 4px 0 0;
}

.contact-intelligence-eyebrow {
  color: #087b37;
  font-size: 13px;
  font-weight: 750;
}

.contact-intelligence-state {
  background: #eaf7ef;
  border-radius: 999px;
  color: #087b37;
  font-size: 13px;
  font-weight: 750;
  padding: 7px 11px;
}

.contact-intelligence-status[data-state="failed"] .contact-intelligence-state,
.contact-intelligence-status[data-state="complete_with_errors"] .contact-intelligence-state {
  background: #fff2e8;
  color: #b54708;
}

.contact-intelligence-progress {
  background: #e8edf4;
  border-radius: 999px;
  height: 8px;
  overflow: hidden;
}

.contact-intelligence-progress span {
  background: linear-gradient(90deg, #087b37, #3baa68);
  display: block;
  height: 100%;
  transition: width 180ms ease;
}

.contact-intelligence-metrics {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(8, minmax(70px, 1fr));
}

.contact-intelligence-metrics span {
  background: #f6f8fb;
  border-radius: 10px;
  display: grid;
  gap: 2px;
  padding: 9px 10px;
}

.contact-intelligence-metrics small {
  color: #697586;
  font-size: 12px;
}

.contact-intelligence-metrics strong {
  color: #20242c;
  font-size: 16px;
}

.manual-template-editor > :first-child {
  margin-top: 0;
}

.contact-intelligence-telemetry {
  align-items: center;
  border-top: 1px solid #e5e9f0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 0;
  margin: 0;
  padding-top: 12px;
}

.contact-intelligence-telemetry > div {
  align-items: baseline;
  display: flex;
  gap: 7px;
  padding: 0 14px;
}

.contact-intelligence-telemetry > div:first-child {
  padding-left: 0;
}

.contact-intelligence-telemetry > div + div {
  border-left: 1px solid #dfe4eb;
}

.contact-intelligence-telemetry dt {
  color: #697586;
  font-size: 12px;
  font-weight: 700;
}

.contact-intelligence-telemetry dd {
  color: #3f4857;
  font-size: 13px;
  margin: 0;
}

.contact-intelligence-status > p {
  color: #5b6575;
  margin: 0;
}

@media (max-width: 900px) {
  .contact-intelligence-metrics {
    grid-template-columns: repeat(4, minmax(70px, 1fr));
  }

  .contact-intelligence-telemetry {
    align-items: flex-start;
    flex-direction: column;
  }

  .contact-intelligence-telemetry > div {
    padding: 0;
  }

  .contact-intelligence-telemetry > div + div {
    border-left: 0;
  }
}

.contact-company-table {
  min-width: 1480px;
}

.rocketreach-company-cell {
  display: grid;
  min-width: 260px;
  gap: 7px;
}

.rocketreach-company-link {
  display: inline-flex;
  width: fit-content;
  min-height: 32px;
  align-items: center;
  gap: 5px;
  padding: 0 10px;
  border: 1px solid #c7ddff;
  border-radius: 6px;
  background: #f2f7ff;
  color: #075bc1;
  font-size: 12px;
  font-weight: 750;
  text-decoration: none;
}

.rocketreach-company-link:hover,
.rocketreach-company-link:focus-visible {
  border-color: #75aff8;
  background: #e7f2ff;
  outline: none;
}

.contact-company-table td .rocketreach-company-link span {
  color: inherit;
  font-size: inherit;
}

.contact-company-table td .rocketreach-company-domain,
.contact-company-table td .rocketreach-company-instruction,
.contact-company-table td .rocketreach-company-unavailable {
  display: block;
  line-height: 1.35;
}

.contact-company-table td .rocketreach-company-domain {
  color: #4d5968;
  font-weight: 680;
}

.contact-company-table td .rocketreach-company-instruction {
  max-width: 32ch;
  color: #657383;
}

.contact-company-table td .rocketreach-company-unavailable {
  color: #8a5b16;
  font-weight: 680;
}

.rocketreach-company-actions,
.contact-candidate-company-actions,
.contact-candidate-bulk-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.rocketreach-company-actions form,
.contact-candidate-company-actions form {
  margin: 0;
}

.rocketreach-company-actions button,
.contact-candidate-company-actions button,
.contact-candidate-bulk-actions button {
  min-height: 34px;
  padding: 7px 10px;
  border-radius: 6px;
  font-size: 12px;
  line-height: 1.15;
}

.candidate-secondary-action {
  border: 1px solid rgba(29, 29, 31, 0.14);
  background: #ffffff;
  color: #2f343b;
}

.candidate-secondary-action:hover,
.candidate-secondary-action:focus-visible {
  border-color: rgba(0, 113, 227, 0.42);
  background: #f0f7ff;
  color: #075bc1;
  outline: none;
}

.candidate-sync-action,
.candidate-promote-action {
  border: 1px solid #0071e3;
  background: #0071e3;
  color: #ffffff;
}

.candidate-sync-action:hover,
.candidate-sync-action:focus-visible,
.candidate-promote-action:hover,
.candidate-promote-action:focus-visible {
  border-color: #005bb8;
  background: #005bb8;
  outline: none;
}

.contact-candidate-pool {
  overflow: hidden;
  padding: 0;
}

.contact-candidate-pool-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 18px;
  border-bottom: 1px solid #e5e5ea;
}

.contact-candidate-pool-heading h2,
.contact-candidate-pool-heading p {
  margin: 0;
}

.contact-candidate-pool-heading h2 {
  font-size: 17px;
  line-height: 1.25;
}

.contact-candidate-pool-heading p {
  max-width: 74ch;
  margin-top: 5px;
  color: #596678;
  font-size: 12px;
  line-height: 1.45;
}

.contact-candidate-pool-heading > span {
  flex: 0 0 auto;
  padding: 5px 8px;
  border-radius: 999px;
  background: #f2f3f5;
  color: #4d5968;
  font-size: 12px;
  font-weight: 720;
}

.contact-candidate-company + .contact-candidate-company {
  border-top: 1px solid #e5e5ea;
}

.contact-candidate-summary {
  display: grid;
  grid-template-columns: minmax(180px, 0.8fr) minmax(380px, 1.4fr) auto 34px;
  align-items: center;
  gap: 14px;
  min-height: 64px;
  padding: 10px 18px;
  cursor: pointer;
  list-style: none;
}

.contact-candidate-summary::-webkit-details-marker {
  display: none;
}

.contact-candidate-summary:hover {
  background: #f8faff;
}

.contact-candidate-summary:focus-visible {
  outline: 2px solid #0071e3;
  outline-offset: -2px;
}

.contact-candidate-company[open] .contact-candidate-summary {
  background: #f8faff;
}

.contact-candidate-company[open] .queue-toggle-icon::before {
  transform: translateY(2px) rotate(225deg);
}

.contact-candidate-company-name {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.contact-candidate-company-name strong {
  overflow: hidden;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-candidate-company-name small {
  overflow: hidden;
  color: #657383;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-candidate-counts {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
}

.contact-candidate-counts > span {
  color: #657383;
  font-size: 12px;
  white-space: nowrap;
}

.contact-candidate-counts strong {
  margin-left: 3px;
  color: #1d1d1f;
  font-size: 13px;
}

.candidate-toggle-label {
  color: #075bc1;
  font-size: 12px;
  font-weight: 720;
  white-space: nowrap;
}

.contact-candidate-company[open] .candidate-toggle-label {
  font-size: 0;
}

.contact-candidate-company[open] .candidate-toggle-label::after {
  content: "收起名单";
  font-size: 12px;
}

.contact-candidate-body {
  padding: 16px 18px 18px;
  border-top: 1px solid #e5e5ea;
  background: #fbfcfe;
}

.contact-candidate-guidance {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}

.contact-candidate-guidance p {
  display: grid;
  max-width: 70ch;
  gap: 3px;
  margin: 0;
}

.contact-candidate-guidance p strong {
  font-size: 13px;
}

.contact-candidate-guidance p span {
  color: #596678;
  font-size: 12px;
  line-height: 1.45;
}

.contact-candidate-review-form {
  display: grid;
  gap: 10px;
}

.contact-candidate-toolbar {
  display: grid;
  grid-template-columns: minmax(230px, 1fr) minmax(150px, 0.35fr) auto auto;
  align-items: end;
  gap: 10px;
}

.candidate-search-control,
.candidate-filter-control {
  display: grid;
  gap: 5px;
  color: #4d5968;
  font-size: 11px;
  font-weight: 700;
}

.candidate-search-control input,
.candidate-filter-control select {
  box-sizing: border-box;
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid #cfd5dd;
  border-radius: 6px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  font-size: 13px;
}

.candidate-search-control input:focus,
.candidate-filter-control select:focus {
  border-color: #0071e3;
  outline: 2px solid rgba(0, 113, 227, 0.16);
}

.candidate-select-visible {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 7px;
  color: #2f343b;
  font-size: 12px;
  font-weight: 680;
  white-space: nowrap;
}

.candidate-select-visible input,
.contact-candidate-table input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: #0071e3;
}

.candidate-visible-count {
  min-width: 86px;
  color: #657383;
  font-size: 12px;
  text-align: right;
}

.contact-candidate-table-scroll {
  overflow-x: auto;
  border: 1px solid #dde2e8;
  border-radius: 8px;
  background: #ffffff;
}

.contact-candidate-table {
  width: 100%;
  min-width: 940px;
  border-collapse: collapse;
}

.contact-candidate-table th,
.contact-candidate-table td {
  padding: 10px;
  border-bottom: 1px solid #edf0f4;
  color: #2f343b;
  font-size: 12px;
  line-height: 1.35;
  text-align: left;
  vertical-align: middle;
}

.contact-candidate-table th {
  background: #f2f3f5;
  color: #4d5968;
  font-weight: 750;
}

.contact-candidate-table tbody tr:last-child td {
  border-bottom: 0;
}

.contact-candidate-table tbody tr:hover {
  background: #f8faff;
}

.contact-candidate-table tr[hidden] {
  display: none;
}

.contact-candidate-table td strong,
.contact-candidate-table td > span {
  display: block;
}

.contact-candidate-table td > span:not(.candidate-review-badge) {
  margin-top: 2px;
  color: #657383;
  font-size: 11px;
}

.contact-candidate-table a {
  color: #075bc1;
  font-weight: 680;
}

.candidate-select-cell {
  width: 58px;
  text-align: center !important;
}

.candidate-missing-value {
  color: #7a8390 !important;
  font-size: 12px !important;
}

.candidate-review-badge {
  display: inline-flex !important;
  width: fit-content;
  margin: 0 !important;
  padding: 4px 7px;
  border-radius: 999px;
  background: #eef5ff;
  color: #075bc1 !important;
  font-size: 11px !important;
  font-weight: 720;
}

.candidate-review-badge.needs-review {
  background: #fff4dc;
  color: #7a4a00 !important;
}

.candidate-review-badge.no-email {
  background: #eef1f5;
  color: #4d5968 !important;
}

.candidate-query-complete {
  color: #596678 !important;
  font-weight: 650;
}

.candidate-empty-row td {
  padding: 24px;
  color: #657383;
  text-align: center;
}

.contact-candidate-bulk-actions {
  justify-content: flex-end;
  min-height: 38px;
}

.contact-candidate-bulk-actions > span {
  margin-right: auto;
  color: #596678;
  font-size: 12px;
}

.candidate-reject-action {
  border: 1px solid rgba(29, 29, 31, 0.14);
  background: #ffffff;
  color: #4d5968;
}

.candidate-reject-action:hover,
.candidate-reject-action:focus-visible {
  border-color: #b9c0ca;
  background: #f2f3f5;
  outline: none;
}

.contact-candidate-bulk-actions button:disabled,
.rocketreach-company-actions button:disabled {
  border-color: #dfe3e8;
  background: #f2f3f5;
  color: #9aa0aa;
  cursor: not-allowed;
}

.contact-candidate-rejected-count {
  margin: 12px 0 0;
  color: #657383;
  font-size: 11px;
}

.contact-candidate-empty {
  display: grid;
  gap: 4px;
  padding: 22px 18px;
  color: #4d5968;
}

.contact-candidate-empty strong {
  color: #1d1d1f;
  font-size: 13px;
}

.contact-candidate-empty span {
  font-size: 12px;
  line-height: 1.45;
}

.candidate-form-message {
  min-height: 18px;
  margin: 0;
  padding: 10px 18px;
  border-bottom: 1px solid #d7eadc;
  background: #f1faf3;
  color: #0b6b31;
  font-size: 12px;
  font-weight: 680;
}

.candidate-form-message.is-error {
  border-bottom-color: #f0d1cd;
  background: #fff4f2;
  color: #b42318;
}

.candidate-action-toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1200;
  width: min(440px, calc(100vw - 32px));
  padding: 12px 16px;
  border: 1px solid #b7dfc1;
  border-radius: 12px;
  background: #f1faf3;
  box-shadow: 0 12px 32px rgba(24, 38, 27, 0.18);
  color: #0b6b31;
  font-size: 13px;
  font-weight: 680;
  line-height: 1.45;
}

.candidate-action-toast.is-error {
  border-color: #f0c6c1;
  background: #fff4f2;
  color: #b42318;
}

.contact-company-table caption,
.contact-results-table caption,
.contact-candidate-table caption {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.rocketreach-mode-badge {
  display: inline-flex;
  width: fit-content;
  min-height: 24px;
  align-items: center;
  padding: 3px 8px;
  border-radius: 999px;
  background: #f2f3f5;
  color: #4d5968;
  font-size: 11px;
  font-weight: 760;
  line-height: 1.25;
}

.rocketreach-mode-badge.mode-standard {
  background: #edf8f0;
  color: #18723a;
}

.rocketreach-mode-badge.mode-precision {
  background: #edf4ff;
  color: #075bc1;
}

.rocketreach-mode-badge.mode-unknown {
  background: #fff5df;
  color: #7a4a00;
}

.customer-rocketreach-scale {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}

.rocketreach-scale-retry-form {
  margin: 0;
}

.rocketreach-scale-retry-form button {
  min-height: 28px;
  padding: 4px 8px;
  border: 1px solid #d5e4f7;
  border-radius: 6px;
  background: #fff;
  color: #075bc1;
  font: inherit;
  font-size: 11px;
  font-weight: 650;
  line-height: 1.25;
  white-space: nowrap;
  cursor: pointer;
}

.rocketreach-scale-retry-form button:hover:not(:disabled) {
  border-color: #accaf0;
  background: #edf4ff;
}

.rocketreach-scale-retry-form button:focus-visible {
  outline: 2px solid #075bc1;
  outline-offset: 2px;
}

.rocketreach-scale-retry-form button:disabled {
  color: #4d5968;
  background: #f2f3f5;
  cursor: wait;
}

@media (pointer: coarse) {
  .rocketreach-scale-retry-form button {
    min-height: 44px;
  }
}

.precision-current-action,
.precision-upload-link {
  display: inline-flex;
  width: fit-content;
  min-height: 34px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 7px 10px;
  border: 1px solid #0071e3;
  border-radius: 6px;
  background: #0071e3;
  color: #ffffff;
  font-size: 12px;
  font-weight: 720;
  line-height: 1.15;
  text-decoration: none;
}

.precision-current-action:hover,
.precision-current-action:focus-visible {
  border-color: #005bb8;
  background: #005bb8;
  outline: none;
}

.precision-company-panel {
  display: grid;
  gap: 14px;
  margin-bottom: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid #dfe4ea;
}

.precision-panel-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.precision-panel-heading h3,
.precision-panel-heading span,
.precision-status-message {
  margin: 0;
}

.precision-panel-heading h3 {
  margin-top: 3px;
  font-size: 16px;
  line-height: 1.3;
}

.precision-eyebrow,
.precision-result-count {
  color: #596678;
  font-size: 11px;
  font-weight: 720;
}

.precision-result-count {
  flex: 0 0 auto;
  padding: 4px 7px;
  border-radius: 5px;
  background: #f2f3f5;
}

.precision-workflow {
  display: grid;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.precision-step {
  position: relative;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 5px 14px 5px 0;
  color: #7a8390;
  font-size: 11px;
}

.precision-step:not(:last-child)::after {
  position: absolute;
  top: 50%;
  right: 4px;
  width: 7px;
  height: 7px;
  border-top: 1px solid #b9c0ca;
  border-right: 1px solid #b9c0ca;
  content: "";
  transform: translateY(-50%) rotate(45deg);
}

.precision-step > span {
  display: inline-flex;
  width: 24px;
  height: 24px;
  align-items: center;
  justify-content: center;
  border: 1px solid #cfd5dd;
  border-radius: 50%;
  background: #ffffff;
  color: inherit;
  font-size: 11px;
  font-weight: 760;
}

.precision-step strong {
  overflow-wrap: anywhere;
}

.precision-step.is-complete {
  color: #18723a;
}

.precision-step.is-complete > span {
  border-color: #95cda5;
  background: #edf8f0;
}

.precision-step.is-current {
  color: #075bc1;
}

.precision-step.is-current > span {
  border-color: #0071e3;
  background: #0071e3;
  color: #ffffff;
}

.precision-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.precision-summary-metric {
  display: inline-flex;
  min-height: 28px;
  align-items: baseline;
  gap: 5px;
  padding: 4px 7px;
  border: 1px solid #dfe3e8;
  border-radius: 5px;
  background: #ffffff;
}

.precision-summary-metric small {
  color: #657383;
  font-size: 10px;
}

.precision-summary-metric strong {
  color: #2f343b;
  font-size: 12px;
}

.precision-summary-metric.tier-s {
  border-color: #8fc5a0;
  background: #edf8f0;
}

.precision-summary-metric.tier-a {
  border-color: #9ec5f8;
  background: #edf4ff;
}

.precision-coverage-note {
  width: fit-content;
  max-width: 100%;
  color: #657383;
  font-size: 11px;
}

.precision-coverage-note summary {
  cursor: pointer;
  color: #455466;
  font-weight: 700;
}

.precision-coverage-note p {
  margin: 6px 0 0;
  line-height: 1.45;
}

.precision-zero-s-alert {
  display: grid;
  gap: 3px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #efcd8e;
  border-radius: 6px;
  background: #fff8e8;
  color: #64400a;
}

.precision-zero-s-alert strong {
  font-size: 12px;
}

.precision-zero-s-alert span,
.precision-status-message {
  color: #657383;
  font-size: 11px;
  line-height: 1.45;
}

.precision-status-message.precision-s-coverage-note {
  display: grid;
  gap: 3px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #b7d3f5;
  border-radius: 6px;
  background: #f2f7ff;
  color: #174d86;
}

.precision-s-coverage-note strong {
  color: #174d86;
  font-size: 12px;
}

.precision-s-coverage-note span {
  color: #526f8d;
}

.precision-current-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.precision-current-actions form {
  margin: 0;
}

.precision-upload-link {
  border-color: rgba(29, 29, 31, 0.14);
  background: #ffffff;
  color: #2f343b;
}

.precision-upload-link:hover,
.precision-upload-link:focus-visible {
  border-color: rgba(0, 113, 227, 0.42);
  background: #f0f7ff;
  color: #075bc1;
  outline: none;
}

.precision-upload-result {
  border-top: 1px solid #e5e5ea;
  padding-top: 10px;
}

.precision-upload-result > summary,
.target-score-editor > summary {
  width: fit-content;
  cursor: pointer;
  color: #075bc1;
  font-size: 11px;
  font-weight: 720;
}

.precision-upload-result form {
  display: grid;
  grid-template-columns: minmax(120px, 0.35fr) minmax(260px, 1fr) auto;
  align-items: end;
  gap: 8px;
  margin-top: 10px;
}

.precision-upload-result label,
.target-score-editor label {
  display: grid;
  gap: 4px;
  color: #596678;
  font-size: 10px;
  font-weight: 680;
}

.precision-upload-result input,
.target-score-editor input,
.target-score-editor select {
  box-sizing: border-box;
  width: 100%;
  min-height: 34px;
  padding: 6px 8px;
  border: 1px solid #cfd5dd;
  border-radius: 5px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
}

.precision-upload-result input:focus,
.target-score-editor input:focus,
.target-score-editor select:focus {
  border-color: #0071e3;
  outline: 2px solid rgba(0, 113, 227, 0.16);
}

.precision-upload-result .precision-quota-confirm {
  display: flex;
  grid-column: 1 / -1;
  align-items: center;
  gap: 7px;
  color: #2f343b;
  font-size: 11px;
}

.precision-quota-confirm input,
.target-score-lock input {
  width: 17px;
  height: 17px;
  min-height: 0;
  accent-color: #0071e3;
}

.target-score-summary {
  display: grid;
  min-width: 150px;
  gap: 3px;
}

.target-tier-badge {
  display: inline-flex;
  width: fit-content;
  min-width: 31px;
  min-height: 23px;
  align-items: center;
  justify-content: center;
  padding: 2px 7px;
  border-radius: 999px;
  background: #f2f3f5;
  color: #4d5968;
  font-size: 11px;
  font-weight: 800;
}

.target-tier-badge.tier-s {
  background: #ddf2e3;
  color: #0d642d;
}

.target-tier-badge.tier-a {
  background: #e4efff;
  color: #0755aa;
}

.target-tier-badge.tier-b {
  background: #edf4ff;
  color: #3d638d;
}

.target-tier-badge.tier-c {
  background: #f2f3f5;
  color: #596678;
}

.target-tier-badge.tier-d {
  background: #fff0ee;
  color: #a72d21;
}

.target-score-reason,
.target-score-confidence,
.target-contactability,
.target-score-empty {
  display: block;
  max-width: 32ch;
  color: #657383;
  font-size: 10px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.target-score-reason {
  color: #2f343b;
  font-weight: 650;
}

.target-score-editor {
  margin-top: 2px;
}

.target-evidence-chain {
  margin-top: 2px;
  color: #4d5968;
  font-size: 10px;
}

.target-evidence-chain > summary {
  width: fit-content;
  cursor: pointer;
  color: #075bc1;
  font-weight: 720;
}

.target-evidence-chain > summary:focus-visible {
  border-radius: 3px;
  outline: 2px solid rgba(0, 113, 227, 0.22);
  outline-offset: 2px;
}

.target-evidence-chain > ul,
.target-evidence-negative ul {
  display: grid;
  gap: 5px;
  margin: 7px 0 0;
  padding-left: 15px;
}

.target-evidence-chain li {
  line-height: 1.4;
}

.target-evidence-chain li span {
  display: block;
  color: #2f343b;
}

.target-evidence-chain li a {
  display: inline-block;
  margin-top: 2px;
  color: #075bc1;
  font-weight: 680;
  overflow-wrap: anywhere;
}

.target-evidence-chain li small {
  margin-left: 5px;
  color: #758292;
}

.target-evidence-warning,
.target-evidence-missing {
  display: block;
  margin: 6px 0 0;
  color: #9a4b00;
  font-size: 10px;
  line-height: 1.4;
}

.target-evidence-negative {
  margin-top: 7px;
  border-top: 1px solid #e5e5ea;
  padding-top: 6px;
  color: #8b342b;
}

.target-evidence-negative strong {
  font-size: 10px;
}

.target-evidence-negative ul {
  color: #8b342b;
}

.target-score-editor form {
  display: grid;
  min-width: 230px;
  gap: 7px;
  margin-top: 7px;
  padding: 8px;
  border: 1px solid #dde2e8;
  border-radius: 6px;
  background: #ffffff;
}

.candidate-score-lock-panel {
  margin-top: 10px;
  border-top: 1px solid #e5e5ea;
  padding-top: 10px;
}

.candidate-score-lock-panel > summary {
  width: fit-content;
  cursor: pointer;
  color: #075bc1;
  font-size: 11px;
  font-weight: 720;
}

.candidate-score-lock-panel form {
  display: grid;
  grid-template-columns: minmax(180px, 0.8fr) 90px minmax(240px, 1.2fr) 110px auto;
  align-items: end;
  gap: 8px;
  margin-top: 9px;
}

.candidate-score-lock-panel label {
  display: grid;
  gap: 4px;
  color: #596678;
  font-size: 10px;
  font-weight: 680;
}

.candidate-score-lock-panel input,
.candidate-score-lock-panel select {
  box-sizing: border-box;
  width: 100%;
  min-height: 34px;
  padding: 6px 8px;
  border: 1px solid #cfd5dd;
  border-radius: 5px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
}

.candidate-score-lock-panel input:focus,
.candidate-score-lock-panel select:focus {
  border-color: #0071e3;
  outline: 2px solid rgba(0, 113, 227, 0.16);
}

.target-score-lock {
  display: flex !important;
  align-items: center;
  gap: 6px !important;
}

.precision-backup-pool {
  margin-top: 14px;
  border-top: 1px solid #dfe4ea;
}

.precision-backup-pool > summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 30px;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  cursor: pointer;
  list-style: none;
}

.precision-backup-pool > summary::-webkit-details-marker {
  display: none;
}

.precision-backup-pool > summary > span:first-child {
  display: grid;
  gap: 3px;
}

.precision-backup-pool > summary strong {
  font-size: 13px;
}

.precision-backup-pool > summary small {
  color: #657383;
  font-size: 11px;
}

.precision-backup-pool[open] .queue-toggle-icon::before {
  transform: translateY(2px) rotate(225deg);
}

.precision-backup-body {
  display: grid;
  gap: 10px;
  padding-top: 10px;
}

.precision-backup-body > p {
  margin: 0;
  color: #657383;
  font-size: 11px;
  line-height: 1.45;
}

.contact-col-target-score {
  width: 190px;
}

.contact-target-score-cell,
.candidate-target-score-cell {
  min-width: 170px;
  vertical-align: top !important;
}

@media (max-width: 1180px) {
  .contact-candidate-summary {
    grid-template-columns: minmax(160px, 0.8fr) minmax(300px, 1.4fr) 34px;
  }

  .candidate-toggle-label {
    display: none;
  }

  .contact-candidate-toolbar {
    grid-template-columns: minmax(220px, 1fr) minmax(150px, 0.45fr);
  }

  .candidate-select-visible,
  .candidate-visible-count {
    align-self: center;
  }

  .candidate-visible-count {
    text-align: left;
  }

  .precision-workflow {
    grid-template-columns: repeat(3, minmax(140px, 1fr));
  }

  .precision-upload-result form {
    grid-template-columns: 1fr 1fr;
  }

  .candidate-score-lock-panel form {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 760px) {
  .contact-candidate-pool-heading,
  .contact-candidate-guidance {
    align-items: stretch;
    flex-direction: column;
  }

  .contact-candidate-summary {
    grid-template-columns: minmax(0, 1fr) 34px;
  }

  .contact-candidate-counts {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .contact-candidate-summary .queue-toggle-icon {
    grid-column: 2;
    grid-row: 1;
  }

  .contact-candidate-toolbar {
    grid-template-columns: 1fr;
  }

  .contact-candidate-bulk-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .contact-candidate-bulk-actions > span {
    margin-right: 0;
  }

  .precision-panel-heading,
  .precision-current-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .precision-workflow,
  .precision-upload-result form,
  .candidate-score-lock-panel form {
    grid-template-columns: 1fr;
  }

  .precision-step:not(:last-child)::after {
    display: none;
  }

  .precision-backup-pool > summary {
    grid-template-columns: minmax(0, 1fr) 30px;
  }

  .precision-backup-pool .candidate-toggle-label {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .contact-candidate-company .queue-toggle-icon::before {
    transition: none;
  }
}

/* Contact directory pagination and role filters */
.contact-filter-form {
  grid-template-columns: repeat(7, minmax(140px, 1fr)) minmax(100px, 0.55fr);
}

.contact-results-card {
  overflow: hidden;
}

.contact-table-scroll {
  width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
}

.contact-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
  background: #ffffff;
}

.contact-pagination-summary {
  color: #657383;
  font-size: 13px;
  font-weight: 650;
  white-space: nowrap;
}

.contact-pagination-controls {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.contact-pagination-controls > * {
  flex: 0 0 auto;
  white-space: nowrap;
}

.draft-pagination {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px 16px;
}

.draft-pagination .contact-pagination-summary {
  min-width: 0;
  flex: 1 1 240px;
  white-space: normal;
}

.draft-pagination .contact-pagination-controls {
  min-width: max-content;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  margin-left: auto;
}

.contact-page-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  min-height: 38px;
  padding: 7px 10px;
  border: 1px solid rgba(29, 29, 31, 0.12);
  border-radius: 6px;
  background: #ffffff;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
}

.contact-page-link:hover,
.contact-page-link:focus-visible {
  border-color: rgba(0, 113, 227, 0.38);
  background: #f0f7ff;
  color: #075bc1;
  outline: none;
}

.contact-page-link.is-current {
  border-color: #0071e3;
  background: #0071e3;
  color: #ffffff;
}

.contact-page-link.is-disabled {
  border-color: rgba(29, 29, 31, 0.08);
  background: #f7f7f8;
  color: #9aa0aa;
}

.contact-page-step {
  min-width: 64px;
}

.contact-page-ellipsis {
  min-width: 22px;
  color: #657383;
  text-align: center;
}

@media (max-width: 1500px) {
  .contact-filter-form {
    grid-template-columns: repeat(4, minmax(150px, 1fr));
  }
}

@media (max-width: 980px) {
  .contact-filter-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .contact-filter-form {
    grid-template-columns: 1fr;
  }

  .contact-pagination {
    align-items: flex-start;
    flex-direction: column;
  }

  .contact-pagination-controls {
    width: 100%;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 2px;
  }
}

.rocketreach-email-candidates {
  margin-top: 7px;
  color: #5f6368;
  font-size: 11px;
}

.rocketreach-email-candidates summary {
  width: fit-content;
  cursor: pointer;
  color: #0b62b4;
  font-weight: 740;
}

.rocketreach-email-candidates span {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 5px;
  margin-top: 5px;
  overflow-wrap: anywhere;
}

.rocketreach-email-candidates strong {
  color: #657383;
  font-size: 10px;
}

.rocketreach-browser-panel {
  display: grid;
  gap: 12px;
  padding: 16px 2px;
  border-top: 1px solid rgba(29, 29, 31, 0.09);
  border-bottom: 1px solid rgba(29, 29, 31, 0.09);
}

.rocketreach-browser-heading,
.rocketreach-browser-controls,
.rocketreach-browser-state {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.rocketreach-browser-heading > div:first-child span {
  display: block;
  color: #0b62b4;
  font-size: 11px;
  font-weight: 800;
}

.rocketreach-browser-heading h2 {
  margin: 3px 0 0;
  font-size: 17px;
  line-height: 1.2;
}

.rocketreach-browser-metrics {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 16px;
}

.rocketreach-browser-metrics span {
  color: #657383;
  font-size: 12px;
}

.rocketreach-browser-metrics strong {
  margin-left: 4px;
  color: #1d1d1f;
  font-size: 14px;
}

.rocketreach-browser-progress {
  height: 6px;
  overflow: hidden;
  background: rgba(29, 29, 31, 0.08);
}

.rocketreach-browser-progress span {
  display: block;
  width: 0;
  height: 100%;
  background: #0b7bdc;
  transition: width 0.25s ease;
}

.rocketreach-browser-state {
  justify-content: flex-start;
  min-height: 22px;
}

.rocketreach-browser-state strong {
  color: #1d1d1f;
  font-size: 13px;
}

.rocketreach-browser-state strong[data-state="manual_action_required"],
.rocketreach-browser-state strong[data-state="paused"],
.rocketreach-browser-state strong[data-state="completed_with_errors"] {
  color: #9a5b00;
}

.rocketreach-browser-state strong[data-state="failed"] {
  color: #b42318;
}

.rocketreach-browser-state span {
  min-width: 0;
  color: #657383;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.rocketreach-browser-controls form,
.rocketreach-browser-controls > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.rocketreach-browser-controls button {
  min-height: 36px;
  padding: 8px 12px;
  border: 1px solid rgba(0, 113, 227, 0.18);
  border-radius: 6px;
  background: #ffffff;
  color: #075bc1;
  cursor: pointer;
  font-size: 12px;
  font-weight: 760;
}

.rocketreach-browser-controls form button:first-of-type {
  background: #0071e3;
  color: #ffffff;
}

.rocketreach-browser-controls [data-rocketreach-browser-action="stop"] {
  border-color: rgba(180, 35, 24, 0.18);
  color: #b42318;
}

.rocketreach-browser-controls button:disabled {
  cursor: default;
  opacity: 0.45;
}

.rocketreach-browser-panel.is-busy .rocketreach-browser-state strong {
  color: #075bc1;
}

@media (max-width: 760px) {
  .rocketreach-browser-heading,
  .rocketreach-browser-controls,
  .rocketreach-browser-state {
    align-items: stretch;
    flex-direction: column;
  }

  .rocketreach-browser-metrics {
    justify-content: flex-start;
  }

  .rocketreach-browser-controls form,
  .rocketreach-browser-controls > div {
    width: 100%;
  }

  .rocketreach-browser-controls button {
    flex: 1 1 120px;
  }
}

.draft-review-surface {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(0, 113, 227, 0.14);
  border-radius: 12px;
  background: #eef5fd;
}

.draft-compose-subject,
.draft-compose-body-label {
  display: grid;
  gap: 6px;
  color: #223044;
  font-size: 13px;
  font-weight: 760;
}

.draft-subject-surface,
.draft-body-surface {
  box-sizing: border-box;
  width: 100%;
  border: 1px solid rgba(29, 29, 31, 0.16);
  border-radius: 10px;
  background: #ffffff;
  color: #1d1d1f;
  box-shadow: inset 0 1px 0 rgba(29, 29, 31, 0.03);
}

.draft-body-surface {
  min-height: 360px;
  max-height: 620px;
  overflow: auto;
  padding: 18px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.58;
  outline: none;
  resize: vertical;
}

.draft-body-surface:focus-visible,
.draft-subject-surface:focus-visible {
  border-color: var(--apple-blue);
  box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.16);
}

.draft-action-row {
  flex-wrap: nowrap;
  overflow-x: auto;
}

.draft-action-row button {
  flex: 0 0 auto;
}

.send-results-scroll {
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  padding-bottom: 6px;
}

.send-results-table-v2 {
  min-width: 1595px;
  table-layout: fixed;
}

.send-results-table-v2 th,
.send-results-table-v2 td {
  vertical-align: top;
}

.send-results-table-v2 th:nth-child(7),
.send-results-table-v2 td:nth-child(7) {
  width: 310px;
}

/* Send scheduling workbench */
.send-schedule-card {
  overflow: hidden;
}

.send-section-heading > div {
  min-width: 0;
}

.send-section-heading p {
  max-width: 68ch;
  margin: 5px 0 0;
  color: var(--apple-secondary);
  font-size: 13px;
  line-height: 1.45;
}

.send-schedule-form {
  display: grid;
}

.send-schedule-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  gap: 10px;
  margin: 0;
  padding: 16px 18px;
  border: 0;
  border-bottom: 1px solid #e5e7eb;
}

.send-schedule-options legend {
  width: 100%;
  margin: 0 0 10px;
  color: #1d1d1f;
  font-size: 14px;
  font-weight: 780;
}

.send-schedule-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  padding: 13px 14px;
  border: 1px solid #d8dee8;
  border-radius: 10px;
  background: #ffffff;
  cursor: pointer;
}

.send-schedule-option:has(input:checked) {
  border-color: var(--apple-blue);
  background: #f2f7fd;
}

.send-schedule-option input {
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: var(--apple-blue);
}

.send-schedule-option span {
  display: grid;
  gap: 4px;
}

.send-schedule-option strong {
  color: #1d1d1f;
  font-size: 14px;
}

.send-schedule-option small {
  color: #526173;
  font-size: 13px;
  line-height: 1.4;
}

.send-schedule-custom-fields {
  display: none;
  grid-column: 1 / -1;
  grid-template-columns: minmax(130px, auto) minmax(220px, 360px);
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 10px;
  background: #f7f8fa;
  color: #283548;
  font-size: 13px;
  font-weight: 760;
}

.send-schedule-options:has(input[value="custom"]:checked) .send-schedule-custom-fields {
  display: grid;
}

.send-schedule-custom-fields input {
  min-height: 42px;
  box-sizing: border-box;
  padding: 8px 11px;
  border: 1px solid #cbd3df;
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
}

.send-schedule-custom-fields input:focus-visible,
.send-schedule-option:focus-within {
  outline: 3px solid rgba(0, 113, 227, 0.18);
  outline-offset: 1px;
}

.send-schedule-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 18px 18px;
  border-top: 1px solid #e5e7eb;
}

.send-schedule-footer p {
  max-width: 72ch;
  margin: 0;
  color: #526173;
  font-size: 13px;
  line-height: 1.45;
}

.send-schedule-footer button {
  min-height: 42px;
  padding: 0 18px;
  border-color: transparent;
  border-radius: 9px;
  background: var(--apple-blue);
  color: #ffffff;
  font-weight: 760;
}

.send-schedule-footer button:disabled {
  background: #d8dce3;
  color: #6b7280;
  cursor: not-allowed;
}

.send-results-table-v2 th:nth-child(n),
.send-results-table-v2 td:nth-child(n) {
  width: auto;
}

.send-results-table-v2 .send-select-column {
  width: 58px;
  text-align: center;
}

.send-select-column input {
  width: 18px;
  height: 18px;
  accent-color: var(--apple-blue);
}

.send-results-table-v2 .send-plan-column {
  width: 155px;
}

.send-results-table-v2 th.send-signature-cell,
.send-results-table-v2 td.send-signature-cell {
  width: 230px;
}

.send-results-table-v2 th.send-follow-up-column,
.send-results-table-v2 td.send-follow-up-column {
  width: 310px;
}

.send-results-table-v2 th.send-company-column,
.send-results-table-v2 td.send-company-column {
  width: 160px;
}

.send-results-table-v2 th.send-contact-column,
.send-results-table-v2 td.send-contact-column {
  width: 180px;
}

.send-results-table-v2 th.send-email-column,
.send-results-table-v2 td.send-email-column {
  width: 230px;
}

.send-results-table-v2 th.send-subject-column,
.send-results-table-v2 td.send-subject-column {
  width: 300px;
}

.send-results-table-v2 th.send-status-column,
.send-results-table-v2 td.send-status-column {
  width: 185px;
}

.send-results-table-v2 .send-subject-details,
.send-results-table-v2 .send-status-stack {
  min-width: 0;
  max-width: 100%;
}

.send-results-table-v2 .send-subject-details summary,
.send-results-table-v2 .send-status-stack small {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}

.send-results-table-v2 .send-subject-details summary {
  display: list-item;
  line-height: 1.4;
}

.send-results-table-v2 .send-status-stack small {
  display: block;
  line-height: 1.45;
}

@media (prefers-reduced-motion: reduce) {
  .send-queue-notice[data-auto-dismiss],
  .research-task-panel[data-auto-dismiss] {
    transition: none;
  }

  .send-queue-notice.is-dismissing,
  .research-task-panel.is-dismissing {
    transform: none;
  }
}

.send-scheduled-time {
  display: inline-flex;
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 760;
  line-height: 1.4;
}

.send-scheduled-time.is-unscheduled {
  color: #8a5a00;
}

.send-signature-cell .draft-signature-inline {
  min-width: 0;
  max-width: 220px;
  gap: 5px;
  padding: 8px;
}

.send-signature-cell .draft-signature-inline p {
  display: none;
}

.send-signature-cell .draft-signature-html {
  max-height: 96px;
  overflow: hidden;
  color: #364153;
  font-size: 12px;
  line-height: 1.35;
}

.send-signature-cell .draft-signature-inline img {
  width: auto;
  max-width: 190px;
  max-height: 72px;
  object-fit: contain;
  object-position: left top;
}

@media (max-width: 900px) {
  .send-schedule-options {
    grid-template-columns: 1fr;
  }

  .send-schedule-custom-fields {
    grid-column: auto;
  }
}

@media (max-width: 560px) {
  .send-schedule-options,
  .send-schedule-footer {
    padding-right: 14px;
    padding-left: 14px;
  }

  .send-schedule-custom-fields {
    grid-template-columns: 1fr;
  }

  .send-schedule-footer button {
    width: 100%;
  }
}

/* Unified contact company workspaces */
.contact-workspaces {
  --workspace-accent: #0071e3;
  --workspace-accent-strong: #075bc1;
  --workspace-border: #dfe3e8;
  --workspace-border-strong: #cfd5dd;
  --workspace-ink: #1d1d1f;
  --workspace-muted: #596678;
  --workspace-subtle: #f7f8fa;
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: 12px;
}

.contact-workspaces-heading {
  align-items: end;
  padding: 8px 2px 0;
  border-bottom: 0;
}
.contact-workspaces-heading h2,
.contact-workspaces-heading h3 {
  margin: 0;
  color: var(--workspace-ink);
  font-size: 17px;
  font-weight: 780;
  line-height: 1.25;
}
.contact-workspaces-heading > span {
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #667386;
  font-size: 12px;
  font-weight: 650;
}

.contact-filtered-summary {
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  grid-template-columns: minmax(220px, 0.72fr) minmax(0, 2fr);
  align-items: stretch;
  gap: 0;
  overflow: hidden;
  padding: 0;
  border: 1px solid #dfe4eb;
  border-radius: 14px;
  background: #ffffff;
}

.contact-filtered-summary-copy,
.contact-filtered-summary-metrics {
  min-width: 0;
}

.contact-filtered-summary-copy {
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 16px 18px;
  color: #1d1d1f;
}

.contact-filtered-summary-copy > h2 {
  margin: 0;
  color: #1d1d1f;
  font-size: 18px;
  font-weight: 780;
  line-height: 1.25;
}

.contact-filtered-summary-copy > strong {
  font-size: 25px;
  font-weight: 790;
  letter-spacing: -0.025em;
  line-height: 1.15;
}

.contact-filtered-summary-copy > small {
  color: #687588;
  font-size: 11px;
}

.contact-filtered-summary-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(92px, 1fr));
  align-items: center;
  border-left: 1px solid #e4e8ee;
  background: #f8fafc;
}

.contact-filtered-summary-metrics > span {
  display: grid;
  min-height: 58px;
  box-sizing: border-box;
  align-content: center;
  gap: 4px;
  padding: 10px 13px;
  border-left: 1px solid #e4e8ee;
  color: #5b687a;
  font-size: 11px;
  line-height: 1.25;
  white-space: nowrap;
}
.contact-filtered-summary-metrics > span:first-child {
  border-left: 0;
}

.contact-filtered-summary-metrics strong {
  color: #1d1d1f;
  font-size: 17px;
  font-weight: 780;
}

.rocketreach-company-bulk-toolbar {
  display: flex;
  min-height: 58px;
  box-sizing: border-box;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  padding: 10px 14px;
  border: 1px solid #dfe4eb;
  border-radius: 11px;
  background: #ffffff;
}

.rocketreach-company-select-page,
.rocketreach-company-selected-summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #425166;
  font-size: 12px;
  font-weight: 680;
}

.rocketreach-company-select-page {
  cursor: pointer;
}

.rocketreach-company-select-page input,
.contact-company-selection input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--workspace-accent);
}

.rocketreach-company-selected-summary strong {
  color: #1d1d1f;
  font-size: 14px;
}

.rocketreach-company-selected-summary small {
  color: #7a8593;
  font-size: 11px;
  font-weight: 560;
}

.rocketreach-company-bulk-open-button {
  min-height: 38px;
  margin-left: auto;
  padding: 8px 14px;
  border: 1px solid #0071e3;
  border-radius: 8px;
  background: #0071e3;
  color: #ffffff;
  font: inherit;
  font-size: 12px;
  font-weight: 740;
  cursor: pointer;
}

.contact-company-person-export-button {
  min-height: 38px;
  padding: 8px 14px;
  border: 1px solid #0071e3;
  border-radius: 8px;
  background: #0071e3;
  color: #ffffff;
  font: inherit;
  font-size: 12px;
  font-weight: 740;
  cursor: pointer;
}

.contact-company-person-export-button:hover:not(:disabled) {
  border-color: #0064ca;
  background: #0064ca;
}

.contact-company-person-export-button:disabled {
  border-color: #cfd7e3;
  background: #e9edf2;
  color: #8994a3;
  cursor: not-allowed;
}

.rocketreach-company-bulk-open-button:hover:not(:disabled) {
  border-color: #0064ca;
  background: #0064ca;
}

.rocketreach-company-bulk-open-button:disabled {
  border-color: #cfd7e3;
  background: #e9edf2;
  color: #8994a3;
  cursor: not-allowed;
}

.rocketreach-company-bulk-status {
  flex: 1 0 100%;
  color: #596678;
  font-size: 11px;
  line-height: 1.4;
}

.rocketreach-company-bulk-status:empty {
  display: none;
}

.rocketreach-company-floating-actions {
  position: fixed;
  z-index: 80;
  right: max(18px, env(safe-area-inset-right));
  bottom: max(18px, env(safe-area-inset-bottom));
  left: max(118px, calc(50% - 490px));
  display: grid;
  width: min(980px, calc(100vw - 154px));
  box-sizing: border-box;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  margin: 0 auto;
  padding: 12px 14px 12px 16px;
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 16px 44px rgba(22, 34, 52, 0.2);
  animation: customer-bulk-action-enter 220ms cubic-bezier(0.16, 1, 0.3, 1) both;
}
.rocketreach-company-floating-actions[hidden] {
  display: none !important;
}
.rocketreach-company-floating-copy {
  display: grid;
  min-width: 0;
  gap: 2px;
}
.rocketreach-company-floating-copy strong {
  color: #1d1d1f;
  font-size: 14px;
  font-weight: 780;
}
.rocketreach-company-floating-copy small {
  overflow: hidden;
  color: #647184;
  font-size: 11px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rocketreach-company-floating-buttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}
.rocketreach-company-floating-actions .rocketreach-company-bulk-open-button,
.rocketreach-company-floating-actions .contact-company-person-export-button,
.rocketreach-company-select-all-button,
.rocketreach-company-clear-button {
  min-height: 44px;
  margin: 0;
  padding: 0 15px;
  border-radius: 10px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 760;
  cursor: pointer;
}
.rocketreach-company-select-all-button,
.rocketreach-company-clear-button {
  border: 1px solid #d5dae1;
  background: #ffffff;
  color: #344054;
}
.rocketreach-company-select-all-button:hover,
.rocketreach-company-clear-button:hover {
  background: #f4f6f8;
}
.rocketreach-company-floating-actions button:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.3);
  outline-offset: 2px;
}
.contact-workspaces.has-company-bulk-selection {
  padding-bottom: 92px;
}

.contact-workspace-card {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid var(--workspace-border);
  border-radius: 12px;
  background: #ffffff;
}

.contact-workspace-card[open] {
  border-color: #c7d5e6;
}

.contact-workspace-head[id] {
  scroll-margin-top: 18px;
}

.contact-workspace-head {
  display: grid;
  grid-template-columns: 28px minmax(220px, 0.95fr) minmax(320px, 1.45fr) minmax(230px, 0.9fr) minmax(160px, auto) 24px;
  align-items: center;
  gap: 12px 18px;
  min-height: 72px;
  box-sizing: border-box;
  padding: 12px 16px;
  color: var(--workspace-ink);
  list-style: none;
}

summary.contact-workspace-head {
  cursor: pointer;
}

summary.contact-workspace-head::-webkit-details-marker {
  display: none;
}

summary.contact-workspace-head::after {
  width: 9px;
  height: 9px;
  justify-self: center;
  border-right: 2px solid #6b7684;
  border-bottom: 2px solid #6b7684;
  content: "";
  transform: translateY(-2px) rotate(45deg);
  transition: transform 180ms cubic-bezier(0.22, 1, 0.36, 1);
}

.contact-workspace-card[open] > summary.contact-workspace-head::after {
  transform: translateY(2px) rotate(225deg);
}

.contact-workspace-head:hover {
  background: #f8faff;
}

.contact-workspace-card[open] > .contact-workspace-head {
  background: #f7f9fc;
}

.contact-workspace-head:focus-visible {
  outline: 2px solid var(--workspace-accent);
  outline-offset: -2px;
}

.contact-workspace-head > * {
  min-width: 0;
}

.contact-company-selection {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.contact-company-selection input {
  cursor: inherit;
}

.contact-workspace-head h2,
.contact-workspace-head h3,
.contact-workspace-head p {
  margin: 0;
}

.contact-workspace-head h2,
.contact-workspace-head h3 {
  overflow: hidden;
  color: var(--workspace-ink);
  font-size: 15px;
  font-weight: 760;
  line-height: 1.3;
  text-overflow: ellipsis;
  text-wrap: balance;
  white-space: nowrap;
}

.contact-workspace-company > strong {
  display: block;
  overflow: hidden;
  color: var(--workspace-ink);
  font-size: 15px;
  font-weight: 760;
  line-height: 1.3;
  text-overflow: ellipsis;
  text-wrap: balance;
  white-space: nowrap;
}

.contact-workspace-head p,
.contact-workspace-head small {
  display: block;
  margin-top: 3px;
  overflow: hidden;
  color: var(--workspace-muted);
  font-size: 11px;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-workspace-summary {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 14px;
}

.contact-workspace-summary > span,
.contact-workspace-summary > div {
  display: inline-flex;
  min-width: 0;
  align-items: baseline;
  gap: 4px;
  color: var(--workspace-muted);
  font-size: 11px;
  line-height: 1.3;
  white-space: nowrap;
}

.contact-workspace-summary strong {
  color: var(--workspace-ink);
  font-size: 13px;
  font-weight: 760;
}

.contact-workspace-attribution {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 8px 14px;
}

.contact-workspace-attribution-item {
  display: grid;
  min-width: 0;
  align-content: start;
  gap: 4px;
}

.contact-workspace-attribution-label {
  color: var(--workspace-muted);
  font-size: 10px;
  font-weight: 720;
  line-height: 1.2;
}

.contact-workspace-attribution .data-attribution,
.contact-workspace-attribution .customer-assignment-owner {
  max-width: 100%;
}

.contact-workspace-legacy-counts[hidden] {
  display: none !important;
}

.contact-legacy-provider-notices[hidden],
.contact-legacy-global-queues[hidden] {
  display: none !important;
}

.contact-workspace-actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
}

.contact-workspace-actions form {
  margin: 0;
}

.contact-workspace-actions button,
.contact-workspace-actions a {
  display: inline-flex;
  min-height: 36px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 7px 10px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 720;
  line-height: 1.2;
  text-decoration: none;
}

.contact-workspace-actions button:focus-visible,
.contact-workspace-actions a:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.28);
  outline-offset: 2px;
}

.contact-workspace-action-hint {
  display: inline-flex;
  min-height: 30px;
  box-sizing: border-box;
  align-items: center;
  padding: 5px 9px;
  border: 1px solid var(--workspace-border-strong);
  border-radius: 999px;
  background: #ffffff;
  color: var(--workspace-muted);
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

.contact-workspace-summary-only .contact-workspace-head {
  cursor: default;
}

.contact-workspace-actions .contact-workspace-open-link {
  color: var(--workspace-muted);
}

.contact-workspace-actions .contact-workspace-open-link:hover {
  border-color: #aebdce;
  background: #f7f9fc;
  color: var(--workspace-ink);
}

.contact-workspace-actions .contact-workspace-open-link[aria-busy="true"] {
  pointer-events: none;
  cursor: wait;
  opacity: 0.68;
}

.contact-workspace-deferred-chevron {
  width: 9px;
  height: 9px;
  justify-self: center;
  border-top: 2px solid #6b7684;
  border-right: 2px solid #6b7684;
  transform: rotate(45deg);
}

.contact-workspace-action-bar {
  justify-content: flex-start;
}

.contact-xai-company-action {
  display: inline-flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 9px;
}

.contact-xai-company-action form {
  display: inline-flex;
}

.contact-xai-procurement-button {
  border: 1px solid #18844f;
  background: #f0faf4;
  color: #12683f;
}

.contact-xai-procurement-button:hover,
.contact-xai-procurement-button:focus-visible {
  border-color: #12683f;
  background: #e2f5e9;
  color: #0d5634;
}

.contact-xai-procurement-button:disabled {
  border-color: #c8d0d9;
  background: #f2f4f7;
  color: #737e8c;
  cursor: not-allowed;
  opacity: 1;
}

.contact-xai-action-meta {
  display: inline-flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  color: var(--workspace-muted);
  font-size: 10px;
  line-height: 1.35;
}

.contact-xai-action-status {
  white-space: nowrap;
}

.contact-xai-action-status.is-configured {
  color: #18723a;
  font-weight: 720;
}

.contact-xai-action-status.is-missing {
  color: #8a5a12;
  font-weight: 700;
}

.contact-xai-rerun-confirmation {
  display: flex;
  flex: 1 1 100%;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
  box-sizing: border-box;
  width: 100%;
  padding: 9px 10px;
  border: 1px solid #e2bd73;
  border-radius: 6px;
  background: #fff9ec;
  color: #68440b;
  font-size: 11px;
  line-height: 1.4;
}

.contact-xai-rerun-confirmation > span {
  display: grid;
  flex: 1 1 300px;
  gap: 1px;
}

.contact-xai-rerun-confirmation strong {
  color: #563706;
  font-weight: 760;
}

.contact-xai-rerun-button {
  border: 1px solid #a9690b;
  background: #ffffff;
  color: #7a4a00;
}

.contact-xai-rerun-button:hover,
.contact-xai-rerun-button:focus-visible {
  border-color: #7a4a00;
  background: #fff2d5;
  color: #563706;
}

.contact-xai-rerun-button:disabled {
  border-color: #d6c8ad;
  background: #f5f1e8;
  color: #897b65;
  cursor: not-allowed;
}

.contact-workspace-actions .contact-xai-settings-link {
  min-height: auto;
  padding: 0;
  border-radius: 3px;
  color: var(--workspace-accent-strong);
  font-size: 10px;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.contact-workspace-primary-action {
  border: 1px solid var(--workspace-accent, #0071e3);
  background: var(--workspace-accent, #0071e3);
  color: #ffffff;
}

.contact-workspace-primary-action:hover,
.contact-workspace-primary-action:focus-visible {
  border-color: #005bb8;
  background: #005bb8;
  color: #ffffff;
}

.contact-workspace-body {
  display: grid;
  min-width: 0;
  gap: 14px;
  padding: 16px;
  border-top: 1px solid var(--workspace-border);
  background: #fbfcfe;
}

.contact-official-channels {
  display: grid;
  min-width: 0;
  gap: 10px;
  padding: 12px 0;
  border-top: 1px solid var(--workspace-border);
  border-bottom: 1px solid var(--workspace-border);
}

.contact-official-channels-heading {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.contact-official-channels-heading h3,
.contact-official-channels-heading p {
  margin: 0;
}

.contact-official-channels-heading h3 {
  color: var(--workspace-ink);
  font-size: 13px;
  font-weight: 760;
}

.contact-official-channels-heading p {
  max-width: 68ch;
  margin-top: 3px;
  color: #596678;
  font-size: 11px;
  line-height: 1.45;
}

.contact-official-channels-heading > span,
.contact-official-channel-summary {
  flex: 0 0 auto;
  color: #18723a !important;
  font-size: 11px;
  font-weight: 720;
  white-space: nowrap;
}

.contact-official-channels-heading > span {
  padding: 4px 7px;
  border-radius: 999px;
  background: #edf8f0;
}

.contact-official-channels > ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.contact-official-channel {
  display: grid;
  grid-template-columns: minmax(170px, 0.42fr) minmax(0, 1fr);
  min-width: 0;
  gap: 12px 18px;
  padding: 10px 0;
  border-top: 1px solid #e8ecf1;
}

.contact-official-channel:last-child {
  padding-bottom: 0;
}

.contact-official-channel-identity {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-content: flex-start;
  align-items: center;
  gap: 5px 7px;
}

.contact-official-channel-identity strong {
  flex: 1 1 100%;
  min-width: 0;
  color: var(--workspace-ink);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.contact-official-channel-identity small {
  color: var(--workspace-muted);
  font-size: 10px;
}

.contact-official-channel-type {
  display: inline-flex;
  min-height: 22px;
  box-sizing: border-box;
  align-items: center;
  padding: 3px 7px;
  border-radius: 999px;
  background: #eef5ff;
  color: var(--workspace-accent-strong);
  font-size: 10px;
  font-weight: 740;
  line-height: 1.2;
}

.contact-official-channel-details {
  display: grid;
  grid-template-columns: minmax(140px, 0.7fr) minmax(210px, 1.2fr) minmax(150px, 0.8fr);
  min-width: 0;
  gap: 8px 16px;
  margin: 0;
}

.contact-official-channel-details > div {
  min-width: 0;
}

.contact-official-channel-details dt {
  color: #697586;
  font-size: 10px;
  font-weight: 700;
}

.contact-official-channel-details dd {
  min-width: 0;
  margin: 3px 0 0;
  color: #2f343b;
  font-size: 11px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.contact-official-channel-details a {
  color: var(--workspace-accent-strong);
  font-weight: 680;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.contact-official-channel-details a:focus-visible {
  border-radius: 3px;
  outline: 2px solid rgba(0, 113, 227, 0.28);
  outline-offset: 2px;
}

.contact-official-channel-source {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: 4px 8px;
}

.contact-official-channel-source > span {
  color: #18723a;
  font-weight: 720;
}

.official-channel-missing {
  color: #7a8390;
}

.contact-xai-discovery-summary {
  display: grid;
  min-width: 0;
  gap: 7px;
  padding-top: 10px;
  border-top: 1px solid #e8ecf1;
}

.contact-xai-discovery-heading {
  display: flex;
  min-width: 0;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.contact-xai-discovery-heading strong {
  color: #18723a;
  font-size: 11px;
  font-weight: 760;
}

.contact-xai-discovery-heading time {
  color: #697586;
  font-size: 10px;
  white-space: nowrap;
}

.contact-xai-supplier-background {
  margin: 0;
  color: #394454;
  font-size: 11px;
  line-height: 1.5;
}

.contact-xai-supplier-background > span {
  margin-right: 8px;
  color: #697586;
  font-size: 10px;
  font-weight: 720;
}

.contact-xai-discovery-facts {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
  min-width: 0;
  gap: 8px 18px;
  margin: 0;
}

.contact-xai-discovery-facts > div {
  min-width: 0;
}

.contact-xai-discovery-facts dt {
  color: #697586;
  font-size: 10px;
  font-weight: 720;
}

.contact-xai-discovery-facts dd {
  min-width: 0;
  margin: 3px 0 0;
  color: #394454;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.contact-xai-discovery-facts dd strong {
  color: var(--workspace-ink);
}

.contact-xai-discovery-facts dd span {
  display: block;
  margin-top: 2px;
  color: #596678;
}

.contact-workflow-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  min-width: 0;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.contact-workflow-steps > li {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 42px;
  box-sizing: border-box;
  padding: 7px 9px;
  border: 1px solid var(--workspace-border);
  border-radius: 8px;
  background: #ffffff;
  color: #657383;
  font-size: 11px;
  line-height: 1.35;
}

.contact-workflow-steps > li > span:first-child {
  display: inline-flex;
  width: 24px;
  height: 24px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--workspace-border-strong);
  border-radius: 50%;
  background: #ffffff;
  color: inherit;
  font-weight: 760;
}

.contact-workflow-steps > li strong {
  color: inherit;
  overflow-wrap: anywhere;
}

.contact-workflow-steps > li.is-complete {
  border-color: #b9dbc2;
  background: #f3faf5;
  color: #18723a;
}

.contact-workflow-steps > li.is-current,
.contact-workflow-steps > li[aria-current="step"] {
  border-color: #a9ccef;
  background: #f1f7ff;
  color: var(--workspace-accent-strong);
}

.contact-workflow-steps > li.is-current > span:first-child,
.contact-workflow-steps > li[aria-current="step"] > span:first-child {
  border-color: var(--workspace-accent);
  background: var(--workspace-accent);
  color: #ffffff;
}

.contact-workspace-tabs {
  display: flex;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  align-items: flex-end;
  gap: 2px;
  overflow-x: auto;
  border-bottom: 1px solid var(--workspace-border);
  overscroll-behavior-x: contain;
  scrollbar-width: thin;
}

.contact-workspace-tabs [role="tab"],
.contact-workspace-tabs [data-workspace-tab] {
  position: relative;
  flex: 0 0 auto;
  min-height: 40px;
  padding: 8px 12px;
  border: 0;
  border-radius: 6px 6px 0 0;
  background: transparent;
  color: #5f6b7a;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
}

.contact-workspace-tabs [role="tab"]::after,
.contact-workspace-tabs [data-workspace-tab]::after {
  position: absolute;
  right: 10px;
  bottom: -1px;
  left: 10px;
  height: 2px;
  background: transparent;
  content: "";
}

.contact-workspace-tabs [role="tab"]:hover,
.contact-workspace-tabs [data-workspace-tab]:hover {
  background: #f2f5f9;
  color: #2f343b;
}

.contact-workspace-tabs [role="tab"][aria-selected="true"],
.contact-workspace-tabs [data-workspace-tab].is-active {
  background: #f5f9ff;
  color: var(--workspace-accent-strong);
}

.contact-workspace-tabs [role="tab"][aria-selected="true"]::after,
.contact-workspace-tabs [data-workspace-tab].is-active::after {
  background: var(--workspace-accent);
}

.contact-workspace-tabs [role="tab"]:focus-visible,
.contact-workspace-tabs [data-workspace-tab]:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.28);
  outline-offset: -2px;
}

.contact-workspace-pane {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding-top: 2px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
}

.contact-workspace-pane[hidden] {
  display: none !important;
}

.contact-workspace-manual-contact {
  width: 100%;
  margin: 0 0 12px;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid #d5deea;
  border-radius: 8px;
  background: #f8fafc;
}

.contact-workspace-manual-contact > summary {
  display: flex;
  min-height: 48px;
  box-sizing: border-box;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 12px;
  color: var(--workspace-ink);
  cursor: pointer;
  list-style: none;
}

.contact-workspace-manual-contact > summary::-webkit-details-marker {
  display: none;
}

.contact-workspace-manual-contact > summary > span:first-child {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.contact-workspace-manual-contact > summary strong {
  font-size: 13px;
  font-weight: 760;
}

.contact-workspace-manual-contact > summary small {
  color: var(--workspace-muted);
  font-size: 11px;
  font-weight: 520;
  line-height: 1.4;
}

.contact-workspace-manual-contact > summary:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.28);
  outline-offset: -2px;
}

.contact-workspace-manual-contact-toggle {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-right: 2px solid #657182;
  border-bottom: 2px solid #657182;
  transform: rotate(45deg) translateY(-2px);
  transition: transform 160ms ease;
}

.contact-workspace-manual-contact[open] .contact-workspace-manual-contact-toggle {
  transform: rotate(225deg) translate(-2px, -2px);
}

.contact-workspace-manual-contact-form {
  display: grid;
  gap: 12px;
  padding: 14px 12px;
  border-top: 1px solid #d5deea;
  background: #ffffff;
}

.contact-workspace-manual-contact-form.is-updating {
  opacity: 0.72;
}

.contact-workspace-manual-contact-grid {
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(4, minmax(140px, 1fr));
  gap: 10px;
}

.contact-workspace-manual-contact-grid label {
  display: grid;
  min-width: 0;
  gap: 5px;
  margin: 0;
  color: #465365;
  font-size: 11px;
  font-weight: 700;
}

.contact-workspace-manual-contact-grid label > span strong {
  color: #c43a2c;
}

.contact-workspace-manual-contact-grid input {
  width: 100%;
  min-width: 0;
  min-height: 40px;
  box-sizing: border-box;
  padding: 8px 10px;
  border: 1px solid #cbd5e1;
  border-radius: 7px;
  background: #ffffff;
  color: var(--workspace-ink);
  font: inherit;
  font-size: 13px;
}

.contact-workspace-manual-contact-grid input:focus {
  border-color: var(--workspace-accent);
  outline: 3px solid rgba(0, 113, 227, 0.12);
}

.contact-workspace-manual-contact-linkedin {
  grid-column: span 2;
}

.contact-workspace-manual-contact-actions {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.contact-workspace-manual-contact-actions p {
  margin: 0;
  color: var(--workspace-muted);
  font-size: 11px;
  line-height: 1.45;
}

.contact-workspace-manual-contact-actions button {
  flex: 0 0 auto;
  min-height: 40px;
}

.contact-candidate-readonly-table .candidate-readonly-cell {
  color: #8993a1;
  text-align: center;
}

.contact-person-toolbar {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-wrap: wrap;
  align-items: end;
  gap: 10px;
  margin-bottom: 10px;
}

.contact-person-toolbar > :first-child {
  flex: 1 1 260px;
}

.contact-workspace-query-control {
  display: flex;
  flex: 1 1 460px;
  min-width: 0;
  flex-wrap: wrap;
  align-items: end;
  gap: 8px;
}

.contact-workspace-query-control .candidate-search-control {
  flex: 1 1 260px;
}

.contact-workspace-query-submit,
.contact-workspace-query-clear {
  flex: 0 0 auto;
}

.contact-person-toolbar form,
.contact-person-toolbar label {
  min-width: 0;
  margin: 0;
}

.contact-person-toolbar label {
  display: grid;
  gap: 4px;
  color: #4d5968;
  font-size: 11px;
  font-weight: 700;
}

.contact-person-toolbar input,
.contact-person-toolbar select,
.contact-person-toolbar button {
  min-height: 38px;
  box-sizing: border-box;
}

.contact-person-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  border: 1px solid var(--workspace-border);
  border-radius: 8px;
  background: #ffffff;
  overscroll-behavior-x: contain;
}

.contact-person-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  background: #ffffff;
  table-layout: auto;
}

.contact-person-table th,
.contact-person-table td {
  max-width: 320px;
  padding: 9px 10px;
  border-bottom: 1px solid #edf0f4;
  color: #2f343b;
  font-size: 12px;
  line-height: 1.4;
  text-align: left;
  vertical-align: middle;
  overflow-wrap: anywhere;
}

.contact-person-table th {
  background: #f2f3f5;
  color: #4d5968;
  font-size: 11px;
  font-weight: 750;
  white-space: nowrap;
}

.contact-person-table tbody tr:hover {
  background: #f8faff;
}

.contact-person-table tbody tr:last-child td {
  border-bottom: 0;
}

.contact-person-table a {
  color: var(--workspace-accent-strong);
  font-weight: 680;
}

.contact-workspace-pagination {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 16px;
  box-sizing: border-box;
  padding: 12px 2px 2px;
  color: var(--workspace-muted);
  font-size: 12px;
}

.contact-workspace-pagination nav,
.contact-workspace-pagination > div {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.contact-workspace-pagination a,
.contact-workspace-pagination button,
.contact-workspace-pagination span[aria-current="page"] {
  display: inline-flex;
  min-width: 36px;
  min-height: 36px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 6px 9px;
  border: 1px solid var(--workspace-border-strong);
  border-radius: 6px;
  background: #ffffff;
  color: #2f343b;
  font: inherit;
  font-weight: 700;
  text-decoration: none;
}

.contact-workspace-pagination a:hover,
.contact-workspace-pagination a:focus-visible,
.contact-workspace-pagination button:hover,
.contact-workspace-pagination button:focus-visible {
  border-color: #8ebbe8;
  background: #f0f7ff;
  color: var(--workspace-accent-strong);
  outline: none;
}

.contact-workspace-pagination [aria-current="page"],
.contact-workspace-pagination .is-current {
  border-color: var(--workspace-accent);
  background: var(--workspace-accent);
  color: #ffffff;
}

@media (max-width: 1360px) {
  .contact-workspace-head {
    grid-template-columns: 28px minmax(220px, 0.9fr) minmax(320px, 1.35fr) 24px;
  }

  .contact-workspace-head > .contact-workspace-actions {
    grid-column: 2 / 4;
    grid-row: 2;
    justify-content: flex-start;
  }

  summary.contact-workspace-head::after {
    grid-column: 4;
    grid-row: 1;
  }
}

@media (max-width: 900px) {
  .contact-workspace-head {
    grid-template-columns: 28px minmax(0, 1fr) 24px;
    gap: 9px 12px;
    padding: 12px 14px;
  }

  .contact-workspace-summary,
  .contact-workspace-head > .contact-workspace-actions {
    grid-column: 2 / -1;
  }

  .contact-workspace-summary {
    grid-row: 2;
  }

  .contact-workspace-head > .contact-workspace-actions {
    grid-row: 3;
  }

  summary.contact-workspace-head::after {
    grid-column: 3;
    grid-row: 1;
  }

  .contact-workspace-body {
    padding: 14px;
  }

  .contact-official-channel {
    grid-template-columns: 1fr;
  }

  .contact-official-channel-details {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .contact-workflow-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .contact-workspace-manual-contact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .contact-workspaces {
    gap: 10px;
  }

  .contact-workspace-card {
    border-radius: 10px;
  }

  .contact-workspace-head h2,
  .contact-workspace-head h3,
  .contact-workspace-company > strong,
  .contact-workspace-head p,
  .contact-workspace-head small {
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .contact-workspace-summary {
    gap: 5px 11px;
  }

  .contact-workspace-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .contact-workspace-actions form,
  .contact-workspace-actions button,
  .contact-workspace-actions a {
    width: 100%;
  }

  .contact-workspace-actions button,
  .contact-workspace-actions a {
    min-height: 42px;
  }

  .contact-workspace-body {
    gap: 12px;
    padding: 12px;
  }

  .contact-official-channels-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .contact-official-channel-details {
    grid-template-columns: 1fr;
  }

  .contact-xai-discovery-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
  }

  .contact-xai-discovery-facts {
    grid-template-columns: 1fr;
  }

  .contact-workflow-steps {
    grid-template-columns: 1fr;
  }

  .contact-workspace-tabs [role="tab"],
  .contact-workspace-tabs [data-workspace-tab] {
    min-height: 44px;
    padding: 9px 11px;
  }

  .contact-person-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .contact-person-toolbar > *,
  .contact-person-toolbar input,
  .contact-person-toolbar select,
  .contact-person-toolbar button {
    width: 100%;
  }

  .contact-workspace-query-control {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
  }

  .contact-workspace-query-control > * {
    width: 100%;
  }

  .contact-workspace-manual-contact-grid {
    grid-template-columns: 1fr;
  }

  .contact-workspace-manual-contact-linkedin {
    grid-column: auto;
  }

  .contact-workspace-manual-contact-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .contact-workspace-manual-contact-actions button {
    width: 100%;
  }

  .contact-person-table {
    min-width: 720px;
  }

  .contact-workspace-pagination {
    align-items: flex-start;
    flex-direction: column;
  }

  .contact-workspace-pagination nav,
  .contact-workspace-pagination > div {
    width: 100%;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 2px;
  }
}

@media (prefers-reduced-motion: reduce) {
  summary.contact-workspace-head::after,
  .contact-workspace-manual-contact-toggle {
    transition: none;
  }
}

/* ChatGPT contact import and AI high-value contacts */
.ai-contact-import-panel,
.ai-import-review-panel {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin-bottom: 14px;
  overflow: hidden;
  border-color: #d9e2ec;
  background: #ffffff;
}

.ai-contact-import-inline {
  margin: 2px 0 16px;
  border: 1px solid #d9e2ec;
  border-radius: 10px;
  background: #f8fafc;
  box-shadow: none;
}

.ai-contact-import-inline .ai-import-panel-body {
  padding: 14px;
}

.ai-contact-import-panel > summary {
  display: flex;
  min-height: 64px;
  box-sizing: border-box;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 16px;
  color: #1d1d1f;
  cursor: pointer;
  list-style: none;
}

.ai-contact-import-panel > summary::-webkit-details-marker {
  display: none;
}

.ai-contact-import-panel > summary:hover,
.ai-contact-import-panel[open] > summary {
  background: #f7f9fc;
}

.ai-contact-import-panel > summary:focus-visible {
  outline: 2px solid #0071e3;
  outline-offset: -2px;
}

.ai-contact-import-panel > summary > span:first-child {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.ai-contact-import-panel > summary strong {
  color: #1d1d1f;
  font-size: 15px;
  font-weight: 760;
}

.ai-contact-import-panel > summary small {
  color: #596678;
  font-size: 11px;
  line-height: 1.45;
}

.ai-import-panel-state {
  display: inline-flex;
  min-height: 28px;
  flex: 0 0 auto;
  align-items: center;
  padding: 4px 9px;
  border: 1px solid #cfd7e3;
  border-radius: 999px;
  color: #596678;
  font-size: 11px;
  font-weight: 700;
}

.ai-contact-import-panel[open] .ai-import-panel-state {
  border-color: #abd0f5;
  background: #f1f7ff;
  color: #075bc1;
}

.ai-import-panel-body {
  display: grid;
  min-width: 0;
  gap: 16px;
  padding: 16px;
  border-top: 1px solid #dfe3e8;
}

.ai-import-security-note {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 10px;
  padding: 10px 12px;
  border: 1px solid #cbe2d3;
  border-radius: 8px;
  background: #f3faf5;
  color: #315b40;
  font-size: 11px;
  line-height: 1.5;
}

.ai-import-security-note strong {
  color: #18723a;
  font-weight: 760;
}

.ai-import-form,
.ai-research-prompt-builder {
  display: grid;
  min-width: 0;
  gap: 12px;
}

.ai-import-section-heading h3,
.ai-import-section-heading p {
  margin: 0;
}

.ai-import-section-heading h3 {
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 760;
}

.ai-import-section-heading p {
  margin-top: 3px;
  color: #596678;
  font-size: 11px;
  line-height: 1.45;
}

.ai-contact-import-panel:not(details) .ai-import-panel-body {
  gap: 14px;
  border-top: 0;
}

.chatgpt-text-import-form {
  display: grid;
  min-width: 0;
  gap: 10px;
}

.chatgpt-url-import-form {
  display: grid;
  min-width: 0;
  gap: 10px;
  padding-bottom: 14px;
  border-bottom: 1px solid #dfe5eb;
}

.chatgpt-url-import-form label {
  display: grid;
  min-width: 0;
  gap: 6px;
  color: #394454;
  font-size: 11px;
  font-weight: 720;
}

.chatgpt-url-import-form input {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  box-sizing: border-box;
  padding: 9px 10px;
  border: 1px solid #b9c5d3;
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  font-size: 12px;
}

.chatgpt-url-import-form input:focus {
  border-color: #0071e3;
  outline: 2px solid rgba(0, 113, 227, 0.18);
}

.chatgpt-url-import-context {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.chatgpt-url-import-actions,
.chatgpt-url-import-progress-actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
}

.chatgpt-url-import-actions [role="status"] {
  flex: 1 1 320px;
  color: #596678;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.chatgpt-url-import-progress {
  display: grid;
  gap: 9px;
  padding: 11px 12px;
  border: 1px solid #cfd7e3;
  border-radius: 8px;
  background: #f7f9fc;
}

.chatgpt-url-import-progress[hidden] { display: none !important; }
.chatgpt-url-import-progress strong { color: #1d1d1f; font-size: 12px; }
.chatgpt-url-import-progress span { display: block; margin-top: 3px; color: #596678; font-size: 11px; line-height: 1.45; }
.chatgpt-url-import-progress[data-status="success"] { border-color: #b8d9c2; background: #f3faf5; }
.chatgpt-url-import-progress[data-status="failed"] { border-color: #e3bebe; background: #fff7f7; }

.chatgpt-import-fallback-heading {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #596678;
  font-size: 11px;
}

.chatgpt-import-fallback-heading::before,
.chatgpt-import-fallback-heading::after {
  height: 1px;
  flex: 1 1 auto;
  background: #dfe5eb;
  content: "";
}

.chatgpt-import-fallback-heading strong { color: #394454; font-weight: 720; }

.chatgpt-text-import-form label {
  display: grid;
  min-width: 0;
  gap: 6px;
}

.chatgpt-text-import-form label > span {
  color: #394454;
  font-size: 11px;
  font-weight: 720;
}

.chatgpt-text-import-form textarea {
  width: 100%;
  min-width: 0;
  min-height: 210px;
  max-height: 520px;
  box-sizing: border-box;
  padding: 11px 12px;
  resize: vertical;
  border: 1px solid #b9c5d3;
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  font-size: 12px;
  font-weight: 560;
  line-height: 1.6;
}

.chatgpt-text-import-form textarea::placeholder {
  color: #657383;
  opacity: 1;
}

.chatgpt-text-import-form textarea:hover {
  border-color: #8fa0b3;
}

.chatgpt-text-import-form textarea:focus {
  border-color: #0071e3;
  outline: 2px solid rgba(0, 113, 227, 0.18);
  outline-offset: 0;
}

.chatgpt-text-import-form textarea:disabled {
  background: #f4f6f8;
  color: #657383;
}

.chatgpt-text-import-actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
}

.chatgpt-text-import-actions button {
  min-height: 42px;
  flex: 0 0 auto;
}

.chatgpt-text-import-actions [role="status"] {
  flex: 1 1 320px;
  color: #596678;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.ai-contact-import-panel[data-chatgpt-import-status="loading"] .chatgpt-text-import-actions [role="status"] {
  color: #075bc1;
}

.ai-contact-import-panel[data-chatgpt-import-status="failed"] .chatgpt-text-import-actions [role="status"] {
  color: #a92d2d;
}

.ai-contact-import-panel[data-chatgpt-import-status="success"] .chatgpt-text-import-actions [role="status"] {
  color: #18723a;
}

.chatgpt-text-import-result {
  display: grid;
  min-width: 0;
  gap: 10px;
  padding-top: 14px;
  border-top: 1px solid #dfe5eb;
}

.chatgpt-text-import-result[hidden] {
  display: none !important;
}

.chatgpt-text-import-result > div:first-child {
  display: grid;
  gap: 3px;
}

.chatgpt-text-import-result > div:first-child strong {
  color: #18723a;
  font-size: 12px;
  font-weight: 760;
}

.chatgpt-text-import-result > div:first-child span {
  color: #394454;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.chatgpt-text-import-result dl {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  min-width: 0;
  gap: 7px;
  margin: 0;
}

.chatgpt-text-import-result dl > div {
  min-width: 0;
  padding: 8px 9px;
  border-radius: 7px;
  background: #f3f6f9;
}

.chatgpt-text-import-result dt {
  color: #657383;
  font-size: 10px;
  font-weight: 680;
}

.chatgpt-text-import-result dd {
  margin: 3px 0 0;
  color: #1d1d1f;
  font-size: 14px;
  font-weight: 760;
}

.chatgpt-text-import-result > button {
  min-height: 38px;
  justify-self: start;
}

.ai-import-form-grid {
  display: grid;
  grid-template-columns: minmax(240px, 0.8fr) minmax(260px, 1fr) minmax(220px, 0.8fr);
  min-width: 0;
  gap: 12px;
}

.ai-import-form label,
.ai-research-prompt-fields label,
.ai-import-resolve-form label {
  display: grid;
  min-width: 0;
  gap: 6px;
  color: #394454;
  font-size: 11px;
  font-weight: 720;
}

.ai-import-form input,
.ai-import-form textarea,
.ai-research-prompt-fields input,
.ai-research-prompt-fields textarea,
.ai-import-resolve-form select {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  box-sizing: border-box;
  padding: 9px 10px;
  border: 1px solid #cfd7e3;
  border-radius: 8px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
}

.ai-import-form textarea,
.ai-research-prompt-fields textarea {
  resize: vertical;
}

.ai-import-form input::placeholder,
.ai-import-form textarea::placeholder,
.ai-research-prompt-fields input::placeholder,
.ai-research-prompt-fields textarea::placeholder {
  color: #657383;
  opacity: 1;
}

.ai-import-form input:focus,
.ai-import-form textarea:focus,
.ai-research-prompt-fields input:focus,
.ai-research-prompt-fields textarea:focus,
.ai-import-resolve-form select:focus {
  border-color: #0071e3;
  outline: 2px solid rgba(0, 113, 227, 0.18);
  outline-offset: 0;
}

.ai-import-token-field > div {
  display: flex;
  min-width: 0;
  gap: 7px;
}

.ai-import-token-field input {
  flex: 1 1 auto;
}

.ai-import-token-field button,
.ai-import-actions button,
.ai-import-resolve-form button,
.ai-contact-actions button,
.ai-contact-pane-heading button {
  min-height: 38px;
  box-sizing: border-box;
  padding: 7px 11px;
  border-radius: 7px;
  font: inherit;
  font-size: 11px;
  font-weight: 740;
  line-height: 1.25;
  cursor: pointer;
}

.ai-import-token-field button {
  flex: 0 0 auto;
  border: 1px solid #cfd7e3;
  background: #ffffff;
  color: #075bc1;
}

.ai-import-token-field small {
  font-size: 10px;
  font-weight: 650;
}

.ai-import-token-field small.is-ready {
  color: #18723a;
}

.ai-import-token-field small.is-missing {
  color: #8a5a12;
}

.ai-import-json-field textarea {
  min-height: 220px;
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
  font-size: 11px;
  font-weight: 500;
  tab-size: 2;
}

.ai-import-json-field > small {
  color: #596678;
  font-size: 10px;
  font-weight: 600;
}

.ai-import-actions {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.ai-import-actions [role="status"] {
  flex: 1 1 300px;
  color: #394454;
  font-size: 11px;
  line-height: 1.45;
}

.ai-import-actions button:focus-visible,
.ai-import-token-field button:focus-visible,
.ai-import-resolve-form button:focus-visible,
.ai-contact-actions button:focus-visible,
.ai-contact-pane-heading button:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.3);
  outline-offset: 2px;
}

.ai-import-actions button:disabled,
.ai-import-token-field button:disabled,
.ai-import-resolve-form button:disabled,
.ai-contact-actions button:disabled,
.ai-contact-pane-heading button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.ai-import-preview {
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid #b8d6f5;
  border-radius: 8px;
  background: #f3f8fe;
  color: #394454;
  font-size: 11px;
  line-height: 1.5;
}

.ai-import-preview[hidden] {
  display: none !important;
}

.ai-import-preview strong,
.ai-import-preview p {
  margin: 0;
}

.ai-import-preview strong {
  color: #075bc1;
}

.ai-research-prompt-builder {
  padding-top: 16px;
  border-top: 1px solid #e1e6ec;
}

.ai-research-prompt-builder h3,
.ai-research-prompt-builder p {
  margin: 0;
}

.ai-research-prompt-builder h3 {
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 760;
}

.ai-research-prompt-builder p {
  margin-top: 3px;
  color: #596678;
  font-size: 11px;
}

.ai-research-prompt-fields {
  display: grid;
  grid-template-columns: minmax(180px, 0.4fr) minmax(280px, 1fr);
  min-width: 0;
  gap: 12px;
}

.ai-prompt-company-field {
  grid-column: 1 / -1;
}

.ai-import-result {
  display: grid;
  min-width: 0;
  gap: 10px;
  padding-top: 16px;
  border-top: 1px solid #e1e6ec;
}

.ai-import-result > div:first-child {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.ai-import-result > div:first-child strong {
  color: #1d1d1f;
  font-size: 13px;
}

.ai-import-result > div:first-child span {
  color: #596678;
  font-size: 10px;
}

.ai-import-result dl {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
}

.ai-import-result dl > div {
  min-width: 110px;
  padding: 8px 10px;
  border: 1px solid #dde4eb;
  border-radius: 7px;
  background: #f8fafc;
}

.ai-import-result dt {
  color: #596678;
  font-size: 10px;
}

.ai-import-result dd {
  margin: 3px 0 0;
  color: #1d1d1f;
  font-size: 14px;
  font-weight: 760;
}

.ai-import-errors {
  margin: 0;
  padding-left: 18px;
  color: #9f2d24;
  font-size: 11px;
}

.ai-import-history {
  border-top: 1px solid #e1e6ec;
  padding-top: 12px;
}

.ai-import-history summary,
.ai-contact-evidence summary {
  color: #075bc1;
  cursor: pointer;
  font-size: 11px;
  font-weight: 720;
}

.ai-import-history summary span,
.ai-contact-evidence summary span {
  color: #596678;
  font-weight: 650;
}

.ai-import-history ul,
.ai-contact-evidence ul,
.ai-import-review-panel > ul {
  margin: 9px 0 0;
  padding: 0;
  list-style: none;
}

.ai-import-history li {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0;
  border-top: 1px solid #e8ecf1;
  color: #596678;
  font-size: 10px;
}

.ai-import-history li > div {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.ai-import-history li strong {
  overflow: hidden;
  color: #1d1d1f;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-import-review-panel {
  padding: 16px;
}

.ai-import-review-panel > div:first-child h2,
.ai-import-review-panel > div:first-child p {
  margin: 0;
}

.ai-import-review-panel > div:first-child h2 {
  color: #1d1d1f;
  font-size: 15px;
  font-weight: 760;
}

.ai-import-review-panel > div:first-child p {
  margin-top: 4px;
  color: #596678;
  font-size: 11px;
  line-height: 1.45;
}

.ai-import-review-company {
  display: grid;
  grid-template-columns: minmax(200px, 0.6fr) minmax(420px, 1.4fr);
  min-width: 0;
  gap: 16px;
  padding: 14px 0;
  border-top: 1px solid #e1e6ec;
}

.ai-import-review-identity {
  display: grid;
  align-content: start;
  gap: 3px;
}

.ai-import-review-identity strong {
  color: #1d1d1f;
  font-size: 13px;
}

.ai-import-review-identity span,
.ai-import-review-identity p {
  margin: 0;
  color: #596678;
  font-size: 10px;
  line-height: 1.45;
}

.ai-import-review-identity p {
  margin-top: 4px;
  color: #8a5a12;
}

.ai-import-resolve-form {
  display: grid;
  min-width: 0;
  gap: 8px;
}

.ai-import-resolve-form > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.ai-contact-summary-count {
  color: #075bc1 !important;
}

.ai-contact-pane-heading {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0 12px;
  border-bottom: 1px solid #e1e6ec;
}

.ai-contact-pane-heading h3,
.ai-contact-pane-heading p {
  margin: 0;
}

.ai-contact-pane-heading h3 {
  color: #1d1d1f;
  font-size: 14px;
  font-weight: 760;
}

.ai-contact-pane-heading p {
  max-width: 76ch;
  margin-top: 4px;
  color: #596678;
  font-size: 11px;
  line-height: 1.45;
}

.ai-contact-pane-heading form {
  flex: 0 0 auto;
}

.ai-contact-promote {
  border: 1px solid #0071e3;
  background: #0071e3;
  color: #ffffff;
}

.ai-contact-promote:hover:not(:disabled),
.ai-contact-promote:focus-visible:not(:disabled) {
  border-color: #005bb8;
  background: #005bb8;
}

.ai-contact-reject {
  border: 1px solid #d6b7b3;
  background: #ffffff;
  color: #9f2d24;
}

.ai-contact-reject:hover,
.ai-contact-reject:focus-visible {
  border-color: #bd6f67;
  background: #fff7f6;
}

.ai-contact-group {
  min-width: 0;
  padding-top: 14px;
}

.ai-contact-group > h3 {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0 0 6px;
  color: #394454;
  font-size: 12px;
  font-weight: 760;
}

.ai-contact-group > h3 span {
  display: inline-flex;
  min-width: 22px;
  min-height: 22px;
  align-items: center;
  justify-content: center;
  padding: 2px 6px;
  border-radius: 999px;
  background: #edf2f7;
  color: #596678;
  font-size: 10px;
}

.ai-contact-list {
  overflow: hidden;
  border: 1px solid #dfe3e8;
  border-radius: 10px;
  background: #ffffff;
}

.ai-contact-row {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  min-width: 0;
  gap: 2px;
  padding: 14px;
  border-top: 1px solid #e6eaef;
}

.ai-contact-row:first-child {
  border-top: 0;
}

.ai-contact-select {
  display: flex;
  min-height: 28px;
  align-items: center;
  justify-content: center;
}

.ai-contact-select input {
  width: 18px;
  height: 18px;
  accent-color: #0071e3;
}

.ai-contact-main {
  display: grid;
  min-width: 0;
  gap: 11px;
}

.ai-contact-heading {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.ai-contact-heading > div:first-child {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.ai-contact-heading strong {
  color: #1d1d1f;
  font-size: 13px;
  font-weight: 780;
}

.ai-contact-heading span,
.ai-contact-heading small {
  color: #394454;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.ai-contact-heading small {
  color: #697586;
  font-size: 10px;
}

.ai-contact-badges {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 5px;
}

.ai-tier,
.ai-status,
.ai-contact-action-complete {
  display: inline-flex;
  min-height: 24px;
  box-sizing: border-box;
  align-items: center;
  padding: 3px 7px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 760;
  line-height: 1.2;
}

.ai-tier-s {
  background: #e8f6ed;
  color: #12683f;
}

.ai-tier-a {
  background: #eef5ff;
  color: #075bc1;
}

.ai-tier-b {
  background: #f3f0ff;
  color: #6240a8;
}

.ai-tier-待核对 {
  background: #fff7e6;
  color: #8a5a12;
}

.ai-status {
  background: #f1f3f5;
  color: #596678;
}

.ai-status-confirmed,
.ai-status-promoted,
.ai-contact-action-complete {
  background: #edf8f0;
  color: #18723a;
}

.ai-status-pending_review,
.ai-status-company_unmatched {
  background: #fff7e6;
  color: #8a5a12;
}

.ai-status-rejected,
.ai-status-stale {
  background: #fff1f0;
  color: #9f2d24;
}

.ai-contact-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  min-width: 0;
  gap: 8px 16px;
  margin: 0;
}

.ai-contact-facts > div {
  min-width: 0;
}

.ai-contact-facts dt {
  color: #697586;
  font-size: 9px;
  font-weight: 720;
}

.ai-contact-facts dd {
  min-width: 0;
  margin: 2px 0 0;
  color: #394454;
  font-size: 10px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.ai-contact-facts a,
.ai-contact-evidence a {
  color: #075bc1;
  font-weight: 680;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.ai-contact-rationale {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
  gap: 10px 18px;
  padding: 10px 12px;
  border-radius: 8px;
  background: #f7f9fc;
}

.ai-contact-rationale p {
  display: grid;
  min-width: 0;
  gap: 3px;
  margin: 0;
}

.ai-contact-rationale strong {
  color: #394454;
  font-size: 10px;
  font-weight: 760;
}

.ai-contact-rationale span {
  color: #4e5a69;
  font-size: 10px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.ai-contact-evidence ul {
  display: grid;
  gap: 6px;
}

.ai-contact-evidence li {
  display: grid;
  grid-template-columns: minmax(110px, 0.25fr) minmax(0, 1fr);
  gap: 10px;
  padding-top: 6px;
  border-top: 1px solid #e8ecf1;
  color: #596678;
  font-size: 10px;
  line-height: 1.45;
}

.ai-contact-no-evidence {
  margin: 0;
  color: #8a5a12;
  font-size: 10px;
}

.ai-contact-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
}

@media (max-width: 980px) {
  .ai-import-form-grid,
  .ai-import-review-company {
    grid-template-columns: 1fr;
  }

  .ai-contact-facts {
    grid-template-columns: repeat(2, minmax(140px, 1fr));
  }
}

@media (max-width: 720px) {
  .chatgpt-url-import-context {
    grid-template-columns: 1fr;
  }

  .chatgpt-text-import-form textarea {
    min-height: 180px;
  }

  .chatgpt-text-import-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .chatgpt-text-import-actions button,
  .chatgpt-text-import-result > button {
    width: 100%;
  }

  .ai-contact-import-panel > summary,
  .ai-contact-pane-heading,
  .ai-import-history li {
    align-items: flex-start;
    flex-direction: column;
  }

  .ai-import-panel-state,
  .ai-contact-pane-heading form {
    align-self: stretch;
  }

  .ai-contact-pane-heading button {
    width: 100%;
  }

  .ai-import-form-grid,
  .ai-research-prompt-fields,
  .ai-contact-facts,
  .ai-contact-rationale {
    grid-template-columns: 1fr;
  }

  .ai-import-token-field > div,
  .ai-import-resolve-form > div,
  .ai-contact-heading,
  .ai-contact-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .ai-import-token-field button,
  .ai-import-resolve-form button,
  .ai-contact-actions button {
    width: 100%;
  }

  .ai-contact-row {
    grid-template-columns: 28px minmax(0, 1fr);
    padding: 12px 10px;
  }

  .ai-contact-badges {
    justify-content: flex-start;
  }

  .ai-contact-evidence li {
    grid-template-columns: 1fr;
  }
}

.draft-approval-workbench {
  display: grid;
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
}

.draft-approval-details {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(29, 29, 31, 0.12);
  border-radius: 10px;
  background: #ffffff;
}

.draft-approval-details > summary {
  display: flex;
  min-height: 56px;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 11px 13px;
  color: #1d1d1f;
  cursor: pointer;
  list-style: none;
}

.draft-approval-details > summary::-webkit-details-marker {
  display: none;
}

.draft-approval-details > summary::marker {
  content: "";
}

.draft-approval-details > summary:hover {
  background: #f7f9fc;
}

.draft-approval-details > summary:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.2);
  outline-offset: -3px;
}

.draft-approval-summary-copy {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.draft-approval-summary-copy strong {
  color: #0a66d9;
  font-size: 14px;
  line-height: 1.25;
}

.draft-approval-summary-copy small {
  overflow: hidden;
  color: #667085;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-approval-chevron {
  flex: 0 0 auto;
  color: #667085;
  font-size: 17px;
  line-height: 1;
  transition: transform 180ms ease;
}

.draft-approval-details[open] > summary {
  border-bottom: 1px solid rgba(29, 29, 31, 0.08);
  background: #f7faff;
}

.draft-approval-details[open] .draft-approval-chevron {
  transform: rotate(180deg);
}

.draft-approval-panel {
  display: grid;
  min-width: 0;
  gap: 12px;
  padding: 12px;
}

@media (max-width: 720px) {
  .draft-approval-details > summary {
    min-height: 50px;
    padding: 10px;
  }

  .draft-approval-panel {
    padding: 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .draft-approval-chevron {
    transition: none;
  }
}

.draft-summary-trigger {
  width: 100%;
  appearance: none;
  border: 1px solid var(--apple-border);
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.draft-summary-trigger .draft-summary-trigger-action {
  margin-top: 9px;
  color: #0a66d9;
  font-size: 12px;
  font-weight: 700;
}

.draft-summary-trigger:hover .draft-summary-trigger-action {
  color: #004fa8;
}

.draft-summary-trigger:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.2);
  outline-offset: 2px;
}

.draft-summary-dialog {
  width: min(760px, calc(100vw - 32px));
  max-width: none;
  max-height: calc(100vh - 48px);
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 16px;
  color: var(--apple-text);
  background: #ffffff;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.16);
}

.draft-summary-dialog::backdrop {
  background: rgba(20, 24, 31, 0.38);
}

.draft-summary-dialog-shell {
  display: grid;
  max-height: calc(100vh - 48px);
  grid-template-rows: auto minmax(0, 1fr);
}

.draft-summary-dialog-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 24px 18px;
  border-bottom: 1px solid rgba(29, 29, 31, 0.1);
}

.draft-summary-dialog-header .page-kicker,
.draft-summary-dialog-header h2,
.draft-summary-dialog-header p {
  margin: 0;
}

.draft-summary-dialog-header h2 {
  font-size: 24px;
  line-height: 1.2;
}

.draft-summary-dialog-title-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 3px;
}

.draft-summary-dialog-title-row > span {
  padding: 3px 8px;
  border-radius: 999px;
  color: #475467;
  background: #f2f4f7;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}

.draft-summary-dialog-header > div > p:last-child {
  margin-top: 7px;
  color: #667085;
  font-size: 13px;
  line-height: 1.45;
}

.draft-summary-dialog-close {
  display: inline-grid;
  width: 36px;
  height: 36px;
  flex: 0 0 auto;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(29, 29, 31, 0.12);
  border-radius: 50%;
  color: #475467;
  background: #ffffff;
  font: inherit;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}

.draft-summary-dialog-close:hover {
  border-color: rgba(29, 29, 31, 0.22);
  background: #f7f9fc;
}

.draft-summary-dialog-body {
  min-height: 0;
  padding: 0 24px 24px;
  overflow-y: auto;
}

.draft-summary-panel-helper {
  margin: 16px 0 10px;
  color: #667085;
  font-size: 13px;
}

.draft-summary-list {
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(29, 29, 31, 0.09);
  list-style: none;
}

.draft-summary-list-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  padding: 15px 0;
  border-bottom: 1px solid rgba(29, 29, 31, 0.09);
}

.draft-summary-list-copy {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.draft-summary-list-copy > strong {
  overflow: hidden;
  color: #1d1d1f;
  font-size: 15px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-summary-contact {
  overflow: hidden;
  color: #667085;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-summary-list-copy > p {
  overflow: hidden;
  margin: 5px 0 3px;
  color: #344054;
  font-size: 13px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.draft-summary-item-status {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.draft-summary-open-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 36px;
  padding: 7px 10px;
  border: 1px solid rgba(10, 102, 217, 0.24);
  border-radius: 9px;
  color: #0a66d9;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.draft-summary-open-link:hover {
  border-color: rgba(10, 102, 217, 0.42);
  background: #f3f8ff;
}

.draft-summary-empty {
  display: grid;
  justify-items: center;
  gap: 6px;
  padding: 54px 20px;
  color: #667085;
  text-align: center;
}

.draft-summary-empty strong {
  color: #344054;
}

.draft-summary-empty p {
  margin: 0;
  font-size: 13px;
}

.draft-results-table tr.is-selected-draft > td {
  background: #f3f8ff;
}

@media (max-width: 720px) {
  .draft-summary-dialog {
    width: calc(100vw - 20px);
    max-height: calc(100vh - 20px);
    border-radius: 13px;
  }

  .draft-summary-dialog-shell {
    max-height: calc(100vh - 20px);
  }

  .draft-summary-dialog-header {
    padding: 18px 16px 14px;
  }

  .draft-summary-dialog-header h2 {
    font-size: 21px;
  }

  .draft-summary-dialog-body {
    padding: 0 16px 18px;
  }

  .draft-summary-list-item {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .draft-summary-open-link {
    justify-content: center;
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .draft-summary-trigger,
  .draft-summary-dialog-close,
  .draft-summary-open-link {
    transition: none;
  }
}

/* Compact contact search task summary and resilient workspace headers. */
.contact-status-grid.research-status-grid {
  display: block;
  margin-bottom: 18px;
}

.contact-overview-card {
  padding: 14px 16px;
  box-shadow: none;
}

.contact-overview-metrics {
  grid-template-columns: repeat(4, minmax(110px, 1fr));
  gap: 0;
  margin-top: 12px;
}

.contact-overview-metrics .status-metric {
  padding: 0 14px;
  border-left: 1px solid #e3e8ef;
}

.contact-overview-metrics .status-metric:first-child {
  padding-left: 0;
  border-left: 0;
}

.contact-overview-metrics .status-metric:last-child {
  padding-right: 0;
}

.contact-overview-progress {
  margin-top: 13px;
}

.contact-overview-progress-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #596678;
  font-size: 11px;
  line-height: 1.3;
}

.contact-overview-progress-label strong {
  color: #1d1d1f;
  font-size: 12px;
  font-weight: 760;
  white-space: nowrap;
}

.contact-overview-timing,
.contact-status-detail-meta {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: 8px 24px;
  margin-top: 10px;
}

.contact-overview-timing .status-metric,
.contact-status-detail-meta .status-metric {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: 6px;
}

.contact-overview-timing .status-metric span,
.contact-status-detail-meta .status-metric span {
  font-size: 11px;
}

.contact-overview-timing .status-metric strong,
.contact-status-detail-meta .status-metric strong {
  margin-top: 0;
  font-size: 12px;
}

.contact-overview-cooldown {
  margin: 10px 0 0;
  padding: 7px 9px;
  border-radius: 6px;
  background: #fff6e8;
  color: #7a4a00;
  font-size: 11px;
  font-weight: 720;
  line-height: 1.4;
}

.contact-status-details {
  margin-top: 13px;
  padding-top: 1px;
  border-top: 1px solid #e3e8ef;
}

.contact-status-details > summary {
  display: flex;
  min-height: 42px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #2f3a49;
  cursor: pointer;
  list-style: none;
}

.contact-status-details > summary::-webkit-details-marker {
  display: none;
}

.contact-status-details > summary > span:first-child {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.contact-status-details > summary strong {
  font-size: 12px;
  line-height: 1.35;
}

.contact-status-details > summary small,
.contact-status-details > summary > span:last-child {
  color: #596678;
  font-size: 10px;
  line-height: 1.35;
}

.contact-status-details > summary:focus-visible {
  border-radius: 4px;
  outline: 2px solid rgba(0, 113, 227, 0.3);
  outline-offset: 2px;
}

.contact-status-detail-meta {
  margin: 0 0 4px;
  padding: 10px 0;
}

.contact-provider-detail-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  min-width: 0;
  gap: 0 24px;
}

.contact-provider-detail {
  min-width: 0;
  padding: 12px 0 14px;
  border-top: 1px solid #e8ecf1;
}

.contact-provider-detail .provider-metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contact-filter-form {
  grid-template-columns: repeat(5, minmax(140px, 1fr));
}

.contact-workspace-head {
  grid-template-columns: 28px minmax(230px, 0.95fr) minmax(320px, 1.4fr) minmax(230px, 0.9fr) minmax(160px, auto) 24px;
}

.contact-workspace-company {
  display: block;
  min-width: 0;
}

.contact-workspace-mode,
.contact-workspace-backfill-status {
  display: block;
  max-width: 100%;
  margin-top: 4px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-workspace-mode {
  color: #425166;
  font-size: 11px;
  line-height: 1.35;
}

.contact-workspace-backfill-status {
  width: max-content;
  padding: 3px 7px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 720;
  line-height: 1.3;
}

.contact-workspace-backfill-status.status-complete {
  background: #edf8f0;
  color: #18723a;
}

.contact-workspace-backfill-status.status-failed {
  background: #fff0f0;
  color: #a32a20;
}

.contact-workspace-backfill-status.status-incomplete {
  background: #f2f4f7;
  color: #4d5968;
}

@media (max-width: 1360px) {
  .contact-workspace-head {
    grid-template-columns: 28px minmax(220px, 0.9fr) minmax(320px, 1.35fr) 24px;
  }

  .contact-workspace-attribution {
    grid-column: 2 / 3;
    grid-row: 2;
  }

  .contact-workspace-head > .contact-workspace-actions {
    grid-column: 3 / 4;
    grid-row: 2;
  }

  summary.contact-workspace-head::after,
  .contact-workspace-deferred-chevron {
    grid-column: 4;
    grid-row: 1;
  }
}

@media (max-width: 1100px) {
  .contact-filter-form {
    grid-template-columns: repeat(3, minmax(150px, 1fr));
  }
}

@media (max-width: 900px) {
  .contact-filtered-summary {
    grid-template-columns: 1fr;
  }

  .contact-filtered-summary-metrics {
    border-top: 1px solid #e4e8ee;
    border-left: 0;
  }

  .contact-overview-metrics {
    grid-template-columns: repeat(2, minmax(110px, 1fr));
    gap: 10px 0;
  }

  .contact-overview-metrics .status-metric:nth-child(odd) {
    padding-left: 0;
    border-left: 0;
  }

  .contact-workspace-head {
    grid-template-columns: 28px minmax(0, 1fr) 24px;
  }

  .contact-workspace-summary,
  .contact-workspace-attribution,
  .contact-workspace-head > .contact-workspace-actions {
    grid-column: 2 / -1;
  }

  .contact-workspace-summary {
    grid-row: 2;
  }

  .contact-workspace-attribution {
    grid-row: 3;
  }

  .contact-workspace-head > .contact-workspace-actions {
    grid-row: 4;
  }

  summary.contact-workspace-head::after,
  .contact-workspace-deferred-chevron {
    grid-column: 3;
    grid-row: 1;
  }
}

@media (max-width: 640px) {
  .contact-filter-form,
  .contact-provider-detail-list {
    grid-template-columns: 1fr;
  }

  .contact-overview-metrics {
    grid-template-columns: 1fr;
  }

  .contact-overview-metrics .status-metric,
  .contact-overview-metrics .status-metric:nth-child(odd) {
    padding: 0;
    border-left: 0;
  }

  .rocketreach-company-bulk-toolbar {
    align-items: stretch;
  }

  .rocketreach-company-select-page,
  .rocketreach-company-selected-summary {
    min-width: 0;
    flex: 1 1 100%;
  }

  .rocketreach-company-selected-summary small {
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .contact-filtered-summary-metrics {
    grid-template-columns: repeat(5, minmax(108px, 1fr));
    overflow-x: auto;
  }

  .contact-workspaces-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .rocketreach-company-bulk-open-button,
  .contact-company-person-export-button {
    width: 100%;
    margin-left: 0;
  }

  .rocketreach-company-floating-actions {
    right: 12px;
    bottom: max(10px, env(safe-area-inset-bottom));
    left: 12px;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    width: auto;
    max-width: calc(100vw - 24px);
    max-height: calc(100dvh - 24px);
    padding: 10px;
    overflow: auto;
    border-radius: 12px;
  }

  .rocketreach-company-floating-buttons {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .rocketreach-company-floating-buttons button {
    width: 100%;
    min-width: 0;
    min-height: 40px;
    padding: 7px 9px;
    white-space: normal;
  }

  .contact-workspaces.has-company-bulk-selection {
    padding-bottom: calc(210px + env(safe-area-inset-bottom));
  }

  .contact-workspace-head h2,
  .contact-workspace-head h3,
  .contact-workspace-company > strong,
  .contact-workspace-head p,
  .contact-workspace-head small,
  .contact-workspace-mode {
    overflow-wrap: break-word;
    word-break: normal;
  }

  .contact-workspace-attribution {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 520px) {
  .rocketreach-company-floating-actions {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .rocketreach-company-floating-buttons,
  .rocketreach-company-floating-buttons button {
    width: 100%;
  }

  .rocketreach-company-floating-buttons {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rocketreach-company-floating-copy small {
    white-space: normal;
  }

  .contact-workspaces.has-company-bulk-selection {
    padding-bottom: calc(210px + env(safe-area-inset-bottom));
  }
}

@media (prefers-reduced-motion: reduce) {
  .contact-overview-card .progress-fill {
    transition: none;
  }
}

.send-follow-up-panel {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: 290px;
  overflow: visible;
  border-radius: 10px;
}

.send-follow-up-action-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 7px;
}

.send-follow-up-action-grid button,
.send-more-actions button {
  width: 100%;
  white-space: normal;
}

.send-more-actions {
  min-width: 0;
}

.send-more-actions summary {
  width: 100%;
  box-sizing: border-box;
  padding: 7px 9px;
  border: 1px solid #cfd7e3;
  border-radius: 8px;
  background: #ffffff;
}

.mail-signature-manage {
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
  padding: 14px;
  border: 1px solid rgba(0, 113, 227, 0.13);
  border-radius: 12px;
  background: #f4f8fd;
}

.mail-signature-picker {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: end;
}

.mail-signature-picker label,
.mail-signature-edit-form label {
  display: grid;
  flex: 1 1 220px;
  gap: 6px;
  color: #223044;
  font-size: 13px;
  font-weight: 760;
}

.mail-signature-picker select,
.mail-signature-edit-form input,
.mail-signature-edit-form select {
  min-height: 42px;
  border: 1px solid rgba(29, 29, 31, 0.14);
  border-radius: 10px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  font-weight: 650;
}

.apple-secondary-button,
.mail-signature-edit-actions button,
.mail-signature-delete-form button {
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid rgba(29, 29, 31, 0.12);
  border-radius: 10px;
  background: #ffffff;
  color: #1d1d1f;
  font: inherit;
  font-size: 13px;
  font-weight: 760;
  cursor: pointer;
}

.apple-secondary-button:hover,
.mail-signature-edit-actions button:hover {
  border-color: rgba(0, 113, 227, 0.28);
  background: #f5f9ff;
  color: var(--apple-blue);
}

.mail-signature-preview-panel,
.mail-signature-edit-form {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 12px;
  background: #ffffff;
}

.mail-signature-preview-body {
  min-height: 140px;
  max-height: 360px;
  overflow: auto;
  padding: 14px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 10px;
  background: #ffffff;
}

.mail-signature-preview-body img,
.mail-signature-edit-form img {
  max-width: 100%;
  height: auto;
}

.mail-signature-edit-actions,
.mail-signature-delete-form {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.mail-signature-delete-form button.danger,
.mail-signature-delete-form button {
  border-color: rgba(180, 35, 24, 0.18);
  background: #fff4f2;
  color: #b42318;
}

.mail-signature-delete-form button:hover {
  background: #fff1f0;
}

.mail-signature-workbench .mail-signature-preview-panel,
.mail-signature-workbench .mail-signature-panel-form {
  padding: 0;
  border: 1px solid #9ecbff;
  border-radius: 0;
}

.mail-signature-workbench .mail-signature-preview-card {
  gap: 0;
}

.mail-signature-workbench .mail-signature-panel-form {
  padding: 18px;
}

.mail-signature-workbench .mail-signature-preview-body {
  min-height: 360px;
  max-height: none;
  margin: 0 18px 18px;
  padding: 18px;
  border-radius: 0;
}

.mail-signature-workbench .mail-signature-delete-form button,
.mail-signature-workbench .mail-signature-inline-form button {
  min-height: 34px;
  border-radius: 6px;
}

.mail-signature-workbench .mail-signature-card-actions .mail-signature-edit-button,
.mail-signature-workbench .mail-signature-card-actions .mail-signature-delete-button {
  min-height: 40px;
  height: 40px;
  border-radius: 8px;
}

.mail-signature-workbench .mail-signature-card-actions .mail-signature-delete-button {
  border-color: rgba(180, 35, 24, 0.18);
  background: #fff8f7;
  color: #a9362c;
}

.mail-signature-workbench .mail-signature-card-actions .mail-signature-delete-button:hover {
  border-color: rgba(180, 35, 24, 0.28);
  background: #fff1f0;
  color: #922b22;
}

@media (max-width: 720px) {
  .manual-template-editor {
    min-height: 280px;
  }

  .draft-body-surface {
    min-height: 320px;
  }

  .mail-signature-picker,
  .mail-signature-edit-actions,
  .mail-signature-delete-form {
    align-items: stretch;
    flex-direction: column;
  }

  .mail-signature-selector {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .mail-signature-add-link {
    width: 100%;
  }

  .mail-signature-card-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .mail-signature-card-actions .mail-signature-edit-button,
  .mail-signature-card-delete-form,
  .mail-signature-card-actions .mail-signature-delete-button {
    width: 100%;
  }
}

/* Follow-up command board: selected visual direction 3 */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

[data-follow-up-board] {
  --follow-up-column-bg: #f7f8fa;
  --follow-up-line: #e3e7ec;
  --follow-up-ink-subtle: #5c6878;
  min-width: 0;
}

.follow-up-command-bar,
.follow-up-board-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.follow-up-scope-summary {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 10px 20px;
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid #e0e5eb;
  border-radius: 9px;
  background: #f8fafc;
  color: #526073;
  font-size: 12px;
  line-height: 1.5;
}

.follow-up-scope-summary span {
  min-width: 0;
}

.follow-up-scope-summary strong {
  margin-right: 7px;
  color: #273244;
  font-weight: 760;
}

.follow-up-board-filters,
.follow-up-filter-controls {
  display: flex;
  flex: 1 1 620px;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.follow-up-board-filters input,
.follow-up-board-filters select,
.follow-up-filter-controls input,
.follow-up-filter-controls select {
  box-sizing: border-box;
  min-width: 132px;
  min-height: 40px;
  padding: 0 36px 0 12px;
  border: 1px solid var(--apple-border-strong);
  border-radius: 8px;
  background-color: #ffffff;
  color: var(--apple-text);
  box-shadow: none;
  font: inherit;
  font-size: 13px;
  font-weight: 650;
}

.follow-up-board-filters input,
.follow-up-filter-controls input {
  width: min(260px, 100%);
  padding-right: 12px;
}

.follow-up-board-filters input::placeholder,
.follow-up-filter-controls input::placeholder {
  color: #626d7c;
  opacity: 1;
}

.follow-up-filter-submit {
  min-height: 40px;
  padding: 0 14px;
  border: 1px solid var(--apple-border-strong);
  border-radius: 8px;
  background: #ffffff;
  color: #273244;
  box-shadow: none;
  font: inherit;
  font-size: 13px;
  font-weight: 740;
  cursor: pointer;
}

.follow-up-filter-submit:hover {
  border-color: rgba(0, 113, 227, 0.45);
  color: var(--apple-blue);
}

.follow-up-view-switcher {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 2px;
  padding: 3px;
  border: 1px solid var(--apple-border);
  border-radius: 9px;
  background: #f2f3f5;
}

[data-follow-up-view] {
  min-width: 62px;
  min-height: 34px;
  padding: 0 13px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #566273;
  box-shadow: none;
  font: inherit;
  font-size: 13px;
  font-weight: 740;
  cursor: pointer;
}

[data-follow-up-view]:hover {
  background: rgba(255, 255, 255, 0.72);
  color: #273244;
}

[data-follow-up-view].active,
[data-follow-up-view].is-active,
[data-follow-up-view][aria-pressed="true"] {
  background: #ffffff;
  color: var(--apple-blue);
  box-shadow: 0 1px 4px rgba(17, 24, 39, 0.12);
}

[data-follow-up-view]:focus-visible,
[data-group-card]:focus-visible,
[data-group-panel-close]:focus-visible,
[data-calendar-date]:focus-visible,
[data-calendar-drawer-close]:focus-visible,
[data-calendar-drawer-cancel]:focus-visible {
  outline: none;
  box-shadow: var(--apple-focus);
}

.follow-up-primary-action,
.follow-up-add-work {
  display: inline-flex;
  flex: 0 0 auto;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border: 1px solid var(--apple-blue);
  border-radius: 8px;
  background: var(--apple-blue);
  color: #ffffff;
  box-shadow: none;
  font: inherit;
  font-size: 13px;
  font-weight: 760;
  cursor: pointer;
}

.follow-up-primary-action:hover,
.follow-up-add-work:hover {
  border-color: var(--apple-blue-hover);
  background: var(--apple-blue-hover);
  color: #ffffff;
}

.follow-up-week-strip {
  display: grid;
  grid-template-columns: minmax(172px, auto) minmax(0, 1fr);
  align-items: stretch;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--follow-up-line);
  border-radius: 10px;
  background: #ffffff;
}

.follow-up-week-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 12px 14px;
  border-right: 1px solid var(--follow-up-line);
}

.follow-up-week-heading strong {
  font-size: 14px;
}

.follow-up-week-heading button {
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #536071;
  font: inherit;
  cursor: pointer;
}

.follow-up-week-heading button:hover {
  background: #f0f3f7;
}

.follow-up-week-navigation {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.follow-up-week-navigation a {
  color: #536071;
  font-size: 11px;
  font-weight: 720;
}

.follow-up-week-days {
  display: grid;
  grid-template-columns: repeat(7, minmax(104px, 1fr));
  min-width: 728px;
}

.follow-up-week-day {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 10px 12px;
  border: 0;
  border-right: 1px solid var(--follow-up-line);
  background: #ffffff;
  color: var(--apple-text);
  text-align: left;
}

.follow-up-week-day:last-child {
  border-right: 0;
}

.follow-up-week-day span,
.follow-up-week-day small {
  color: var(--follow-up-ink-subtle);
  font-size: 11px;
  font-weight: 650;
}

.follow-up-week-day strong {
  font-size: 13px;
}

.follow-up-week-day.is-selected {
  background: #f3f8ff;
  color: var(--apple-blue);
  box-shadow: inset 0 0 0 1px rgba(0, 113, 227, 0.5);
}

.follow-up-week-day.is-today:not(.is-selected) {
  background: #f8fbff;
}

.follow-up-week-day.is-today span,
.follow-up-week-day.is-today strong {
  color: var(--apple-blue);
}

.follow-up-week-progress,
.follow-up-progress {
  height: 4px;
  overflow: hidden;
  border-radius: 999px;
  background: #e4e8ed;
}

.follow-up-week-progress > span,
.follow-up-progress > span {
  display: block;
  width: var(--progress, 0%);
  height: 100%;
  border-radius: inherit;
  background: var(--apple-blue);
}

[data-follow-up-view-panel][hidden],
[data-group-panel][hidden],
[data-calendar-drawer][hidden] {
  display: none !important;
}

[data-follow-up-view-panel][data-view-panel="board"] {
  min-width: 0;
  overflow-x: auto;
  scrollbar-gutter: stable;
}

.follow-up-board-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(224px, 1fr));
  gap: 10px;
  min-width: 0;
  align-items: start;
}

.follow-up-board-column {
  display: grid;
  min-width: 0;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--follow-up-line);
  border-radius: 10px;
  background: var(--follow-up-column-bg);
}

.follow-up-board-column-header {
  display: flex;
  min-height: 30px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 0 2px;
}

.follow-up-board-column-header h2,
.follow-up-board-column-header h3 {
  margin: 0;
  font-size: 14px;
  line-height: 1.25;
}

.follow-up-board-count {
  display: inline-grid;
  min-width: 22px;
  height: 22px;
  place-items: center;
  padding: 0 5px;
  border-radius: 999px;
  background: #e8edf3;
  color: #506074;
  font-size: 11px;
  font-weight: 780;
}

.follow-up-board-column[data-column="conflict"] .follow-up-board-count,
.follow-up-board-column.is-conflict .follow-up-board-count {
  background: #fff0ee;
  color: var(--apple-red);
}

.follow-up-group-list {
  display: grid;
  gap: 8px;
}

.follow-up-group-card,
[data-group-card] {
  display: grid;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  gap: 9px;
  padding: 12px;
  border: 1px solid #dfe4ea;
  border-radius: 9px;
  background: #ffffff;
  color: var(--apple-text);
  box-shadow: none;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.follow-up-group-card:hover,
[data-group-card]:hover {
  border-color: rgba(0, 113, 227, 0.36);
  background: #fbfdff;
}

.follow-up-group-card.is-selected,
[data-group-card].is-selected,
[data-group-card][aria-expanded="true"] {
  border-color: var(--apple-blue);
  background: #f7fbff;
  box-shadow: inset 0 0 0 1px rgba(0, 113, 227, 0.12);
}

.follow-up-group-card-title {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

.follow-up-group-card-title strong {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 14px;
  font-weight: 780;
  line-height: 1.35;
}

.follow-up-group-owner,
.follow-up-panel-owner,
.follow-up-list-owner,
.follow-up-table-owner,
.follow-up-calendar-owner,
.follow-up-gallery-owner,
.follow-up-owner-chip {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 6px;
}

.follow-up-group-owner {
  max-width: 120px;
  flex: 0 1 auto;
}

.follow-up-group-owner strong,
.follow-up-panel-owner strong,
.follow-up-list-owner strong,
.follow-up-table-owner strong,
.follow-up-calendar-owner strong,
.follow-up-gallery-owner strong {
  min-width: 0;
  overflow: hidden;
  color: #344154;
  font-size: 11px;
  font-weight: 740;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.follow-up-group-owner-avatar,
.follow-up-panel-owner-avatar,
.follow-up-list-owner-avatar,
.follow-up-table-owner-avatar,
.follow-up-calendar-owner-avatar,
.follow-up-gallery-owner-avatar,
.follow-up-owner-avatar {
  display: inline-grid;
  overflow: hidden;
  width: 24px;
  min-width: 24px;
  max-width: 24px;
  height: 24px;
  min-height: 24px;
  max-height: 24px;
  aspect-ratio: 1;
  place-items: center;
  flex: 0 0 24px;
  border: 1px solid rgba(29, 29, 31, 0.08);
  border-radius: 50%;
  background: #111827;
  color: #ffffff;
  font-size: 10px;
  font-weight: 780;
}

.follow-up-group-owner-avatar img,
.follow-up-panel-owner-avatar img,
.follow-up-list-owner-avatar img,
.follow-up-table-owner-avatar img,
.follow-up-calendar-owner-avatar img,
.follow-up-gallery-owner-avatar img,
.follow-up-owner-avatar img,
.user-avatar-frame > .user-avatar-image {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  border-radius: inherit;
  object-fit: cover;
}

.follow-up-private-placeholder,
.follow-up-read-only-note {
  color: #7a8492;
  font-size: 11px;
  line-height: 1.45;
}

.follow-up-read-only-note {
  margin: 0;
  padding: 9px 10px;
  border: 1px solid #e1e6ec;
  border-radius: 8px;
  background: #f7f8fa;
}

.follow-up-read-only-indicator {
  display: inline-flex;
  min-height: 22px;
  align-items: center;
  padding: 0 7px;
  border-radius: 999px;
  background: #eef1f4;
  color: #687486;
  font-size: 10px;
  font-weight: 720;
  white-space: nowrap;
}

.follow-up-group-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
  color: var(--follow-up-ink-subtle);
  font-size: 12px;
  line-height: 1.35;
}

.follow-up-group-meta time {
  color: #39475a;
  font-weight: 680;
}

.follow-up-group-status,
.follow-up-group-risk {
  display: inline-flex;
  width: fit-content;
  min-height: 22px;
  align-items: center;
  padding: 0 7px;
  border-radius: 999px;
  background: #edf2f7;
  color: #46566a;
  font-size: 11px;
  font-weight: 740;
}

.follow-up-group-risk,
.follow-up-group-status.is-conflict {
  background: #fff0ee;
  color: var(--apple-red);
}

.follow-up-group-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: var(--follow-up-ink-subtle);
  font-size: 11px;
}

.follow-up-group-card-footer > span:first-child {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.follow-up-column-empty {
  margin: 0;
  padding: 24px 12px;
  color: #647184;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

.follow-up-sheet-open [data-follow-up-board] {
  padding-bottom: 28px;
}

.follow-up-group-panel,
[data-group-panel] {
  position: fixed;
  z-index: 60;
  right: 24px;
  bottom: 20px;
  left: 300px;
  display: grid;
  height: min(720px, calc(100dvh - 48px));
  max-height: calc(100dvh - 48px);
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid #d9dee5;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 -2px 8px rgba(17, 24, 39, 0.12);
  animation: follow-up-sheet-enter 180ms cubic-bezier(0.16, 1, 0.3, 1);
}

.sidebar-collapsed .follow-up-group-panel,
.sidebar-collapsed [data-group-panel] {
  left: 100px;
}

.follow-up-group-panel-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  border-bottom: 1px solid var(--follow-up-line);
}

.follow-up-group-panel-main-header {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px 12px;
}

.follow-up-group-panel-rail-header {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  padding: 14px 16px 12px;
  border-left: 1px solid var(--follow-up-line);
}

.follow-up-group-panel-heading {
  min-width: 0;
}

.follow-up-group-panel-heading h2,
.follow-up-group-panel-heading h3 {
  margin: 0;
  overflow-wrap: anywhere;
  font-size: 18px;
  line-height: 1.25;
}

.follow-up-group-panel-heading p {
  margin: 5px 0 0;
  color: var(--follow-up-ink-subtle);
  font-size: 12px;
  line-height: 1.4;
}

[data-group-panel-close] {
  display: inline-flex;
  min-width: 54px;
  height: 34px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #4f5d6f;
  font: inherit;
  font-size: 12px;
  font-weight: 730;
  cursor: pointer;
}

[data-group-panel-close]:hover {
  background: #eff2f6;
}

.follow-up-group-panel-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  min-height: 0;
  overflow: hidden;
}

.follow-up-group-table-wrap {
  min-width: 0;
  overflow: auto;
}

.follow-up-group-table {
  min-width: 620px;
  font-size: 12px;
}

.follow-up-group-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 9px 10px;
  background: #f4f6f8;
  color: #536174;
  font-size: 11px;
  font-weight: 760;
}

.follow-up-group-table td {
  padding: 9px 10px;
  vertical-align: top;
}

.follow-up-group-select-cell {
  width: 42px;
  text-align: center;
}

.follow-up-group-select-cell input[type="radio"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--apple-blue);
  cursor: pointer;
}

.follow-up-group-table tbody tr:hover td,
.follow-up-group-table tbody tr.is-selected td {
  background: #f3f8ff;
}

.follow-up-group-table strong,
.follow-up-group-table small {
  display: block;
  min-width: 0;
}

.follow-up-group-table small {
  margin-top: 2px;
  color: var(--follow-up-ink-subtle);
  line-height: 1.35;
}

.follow-up-group-table a {
  font-weight: 690;
}

.follow-up-task-edit-button {
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid #b8d7f6;
  border-radius: 7px;
  background: #f2f8ff;
  color: #0969c7;
  box-shadow: none;
  font: inherit;
  font-size: 12px;
  font-weight: 720;
  white-space: nowrap;
  cursor: pointer;
}

.follow-up-task-edit-button:hover,
.follow-up-task-edit-button:focus-visible {
  border-color: var(--apple-blue);
  background: #e7f3ff;
}

.follow-up-task-edit-unavailable {
  color: var(--follow-up-ink-subtle);
}

.follow-up-group-generate-form button {
  min-height: 36px;
  padding: 0 13px;
  border: 1px solid var(--apple-blue);
  border-radius: 7px;
  background: var(--apple-blue);
  color: #ffffff;
  box-shadow: none;
  font: inherit;
  font-size: 12px;
  font-weight: 760;
  cursor: pointer;
}

.follow-up-group-generate-form button:hover {
  border-color: var(--apple-blue-hover);
  background: var(--apple-blue-hover);
}

.follow-up-group-rail {
  position: relative;
  min-width: 0;
  overflow: auto;
  padding: 12px 14px 16px;
  border-left: 1px solid var(--follow-up-line);
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.follow-up-group-rail h3 {
  margin: 0 0 10px;
  font-size: 14px;
}

.follow-up-group-visible-actions {
  display: grid;
  gap: 9px;
  margin: 0 0 12px;
  padding: 0 0 12px;
  border-bottom: 1px solid var(--follow-up-line);
}

.follow-up-group-visible-actions h3,
.follow-up-group-visible-actions p {
  margin: 0;
}

.follow-up-group-visible-actions p {
  color: #526073;
  font-size: 12px;
  line-height: 1.5;
}

.follow-up-task-delete-form {
  display: flex;
}

.follow-up-task-delete-form .follow-up-task-delete-button {
  height: 36px;
  min-height: 36px;
  padding: 0 13px;
  border: 1px solid #e6aaa4;
  border-radius: 8px;
  background: #fff7f6;
  color: #b42318;
  box-shadow: none;
  font: inherit;
  font-size: 12px;
  font-weight: 760;
  cursor: pointer;
}

.follow-up-task-delete-form .follow-up-task-delete-button:hover,
.follow-up-task-delete-form .follow-up-task-delete-button:focus-visible {
  border-color: #d77b72;
  background: #fff0ee;
  outline: none;
}

.follow-up-task-delete-form .follow-up-task-delete-button:focus-visible {
  box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.15);
}

.follow-up-timeline-compact,
.follow-up-group-timeline {
  display: grid;
  gap: 0;
  margin: 0 0 12px;
  padding: 0;
  list-style: none;
}

.follow-up-timeline-compact li {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 10px;
  min-height: 42px;
  padding: 0 0 10px 12px;
  border-left: 2px solid #cdd8e5;
  color: #334155;
  font-size: 12px;
}

.follow-up-timeline-compact li:last-child {
  border-left-color: var(--apple-blue);
}

.follow-up-timeline-compact time {
  color: #667386;
  font-size: 11px;
}

.follow-up-group-timeline li {
  position: relative;
  display: grid;
  grid-template-columns: 22px 58px minmax(0, 1fr);
  gap: 9px;
  min-height: 44px;
  padding: 0 0 10px;
  color: #334155;
  font-size: 12px;
}

.follow-up-group-timeline li:not(:last-child)::after {
  position: absolute;
  top: 22px;
  bottom: 0;
  left: 10px;
  width: 2px;
  background: #c6dcf7;
  content: "";
}

.follow-up-timeline-icon {
  position: relative;
  z-index: 1;
  display: inline-flex;
  width: 22px;
  height: 22px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--apple-blue);
  color: #ffffff;
}

.follow-up-timeline-icon svg {
  width: 13px;
  height: 13px;
  stroke-width: 2.2;
}

.follow-up-group-timeline time {
  padding-top: 2px;
  color: #667386;
  font-size: 11px;
}

.follow-up-group-timeline li > span:last-child {
  padding-top: 2px;
}

.follow-up-detail-disclosure,
.follow-up-group-rail details {
  min-width: 0;
  border-top: 1px solid var(--follow-up-line);
}

.follow-up-detail-disclosure summary,
.follow-up-group-rail details summary {
  min-height: 40px;
  padding: 10px 2px;
  color: #273244;
  font-size: 12px;
  font-weight: 740;
  cursor: pointer;
}

.follow-up-detail-disclosure[open] summary,
.follow-up-group-rail details[open] summary {
  color: var(--apple-blue);
}

.follow-up-detail-disclosure > :not(summary),
.follow-up-group-rail details > :not(summary) {
  margin: 0 0 10px;
  color: #526073;
  font-size: 12px;
  line-height: 1.5;
}

.follow-up-detail-disclosure.has-conflict summary,
.follow-up-group-rail details.has-conflict summary {
  color: var(--apple-red);
}

.follow-up-list-panel,
.follow-up-calendar-panel {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--follow-up-line);
  border-radius: 10px;
  background: #f7f8fa;
}

.follow-up-list-group,
.follow-up-calendar-day article {
  min-width: 0;
  border: 1px solid #dfe4ea;
  border-radius: 9px;
  background: #ffffff;
}

.follow-up-list-group {
  display: block;
  overflow: hidden;
}

.follow-up-list-group > summary {
  box-sizing: border-box;
  min-height: 70px;
  padding: 14px 18px;
  color: var(--apple-text);
  cursor: pointer;
}

.follow-up-list-group > summary::marker {
  color: #526174;
}

.follow-up-list-group > summary:hover {
  background: #fbfdff;
}

.follow-up-list-group[open] {
  border-color: rgba(0, 113, 227, 0.4);
}

.follow-up-list-group[open] > summary {
  border-bottom: 1px solid var(--follow-up-line);
  background: #f7fbff;
}

.follow-up-list-group > summary:focus-visible {
  outline: none;
  box-shadow: inset var(--apple-focus);
}

.follow-up-list-group-heading {
  display: inline-grid;
  gap: 3px;
  min-width: 0;
  width: calc(100% - 120px);
  margin-left: 8px;
  vertical-align: middle;
}

.follow-up-list-group-heading strong {
  overflow-wrap: anywhere;
  font-size: 15px;
}

.follow-up-list-group-heading small {
  min-width: 0;
}

.follow-up-list-group > summary > time {
  float: right;
  margin-top: 8px;
  color: var(--follow-up-ink-subtle);
  font-size: 12px;
  font-weight: 650;
}

.follow-up-list-group-detail {
  min-width: 0;
}

.follow-up-list-group-detail-header {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--follow-up-line);
  background: #ffffff;
}

.follow-up-list-group-detail-header > div {
  display: grid;
  gap: 3px;
}

.follow-up-list-group-detail-header small {
  color: var(--follow-up-ink-subtle);
  font-size: 12px;
}

.follow-up-list-group-detail-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
  min-height: 0;
}

.follow-up-list-group-detail .follow-up-group-table-wrap {
  max-height: 420px;
}

.follow-up-list-group-detail .follow-up-group-rail {
  max-height: 420px;
}

.follow-up-list-group small,
.follow-up-calendar-day article span {
  color: var(--follow-up-ink-subtle);
  font-size: 12px;
}

.follow-up-calendar-day article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 14px;
}

.follow-up-calendar-day {
  display: grid;
  gap: 7px;
}

.follow-up-calendar-day h2 {
  margin: 4px 2px 0;
  font-size: 14px;
}

/* The home calendar remains navigable while the in-place work drawer is open. */
.crm-calendar-cell {
  position: relative;
}

.crm-calendar-cell[data-date] {
  cursor: pointer;
  transition: background-color 150ms ease;
}

.crm-calendar-cell[data-date]:hover {
  background: #f8fbff;
}

.crm-calendar-cell[data-date]:has([data-calendar-task-open]:hover) {
  background: #ffffff;
}

[data-calendar-date] {
  cursor: pointer;
}

button[data-calendar-date] {
  display: inline-grid;
  min-width: 32px;
  min-height: 32px;
  place-items: center;
  margin-left: auto;
  padding: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #2f343b;
  box-shadow: none;
  font: inherit;
  font-weight: 760;
}

button[data-calendar-date]:hover,
button[data-calendar-date].is-selected {
  background: #edf5ff;
  color: var(--apple-blue);
}

.crm-calendar-cell.today button[data-calendar-date] {
  border-radius: 50%;
  background: #ff3b30;
  color: #ffffff;
}

.crm-calendar-cell:has([data-calendar-date].is-selected) {
  background: #f8fbff;
  box-shadow: inset 0 0 0 1px rgba(0, 113, 227, 0.46);
}

[data-calendar-drawer] {
  position: fixed;
  z-index: 80;
  top: 0;
  right: 0;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  box-sizing: border-box;
  width: min(440px, calc(100vw - 76px));
  height: 100vh;
  overflow: hidden;
  border-left: 1px solid #d9dee5;
  background: #ffffff;
  box-shadow: -6px 0 8px rgba(17, 24, 39, 0.1);
  transform: translateX(102%);
  transition: transform 180ms cubic-bezier(0.16, 1, 0.3, 1);
}

[data-calendar-drawer].is-open {
  transform: translateX(0);
}

.calendar-drawer-header {
  display: flex;
  min-height: 68px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 18px;
  border-bottom: 1px solid var(--follow-up-line);
}

.calendar-drawer-header h2 {
  margin: 0;
  font-size: 18px;
}

.calendar-drawer-header p {
  margin: 3px 0 0;
  color: var(--follow-up-ink-subtle);
  font-size: 12px;
}

[data-calendar-drawer-close] {
  display: inline-flex;
  min-width: 54px;
  height: 36px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  border-radius: 8px;
  background: #f1f3f5;
  color: #435064;
  box-shadow: none;
  font: inherit;
  font-size: 12px;
  font-weight: 730;
  cursor: pointer;
}

.sent-message-row.is-selected-message td {
  background: #edf5ff;
  box-shadow: inset 0 1px 0 rgba(0, 113, 227, 0.28),
    inset 0 -1px 0 rgba(0, 113, 227, 0.28);
}

.calendar-work-form,
[data-calendar-work-form] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-content: start;
  gap: 14px 12px;
  min-height: 0;
  overflow-y: auto;
  padding: 18px;
}

.calendar-work-form label,
[data-calendar-work-form] label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: #344154;
  font-size: 12px;
  font-weight: 740;
}

.calendar-work-form label.full,
[data-calendar-work-form] label.full {
  grid-column: 1 / -1;
}

.calendar-work-form input,
.calendar-work-form select,
.calendar-work-form textarea,
[data-calendar-work-form] input,
[data-calendar-work-form] select,
[data-calendar-work-form] textarea {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid var(--apple-border-strong);
  border-radius: 8px;
  background: #ffffff;
  color: var(--apple-text);
  box-shadow: none;
  font: inherit;
  font-size: 13px;
}

.calendar-work-form textarea,
[data-calendar-work-form] textarea {
  min-height: 110px;
  resize: vertical;
}

.calendar-work-form input:focus,
.calendar-work-form select:focus,
.calendar-work-form textarea:focus,
[data-calendar-work-form] input:focus,
[data-calendar-work-form] select:focus,
[data-calendar-work-form] textarea:focus {
  border-color: var(--apple-blue);
  outline: none;
  box-shadow: var(--apple-focus);
}

.calendar-drawer-actions {
  position: sticky;
  bottom: -18px;
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin: 4px -18px -18px;
  padding: 12px 18px;
  border-top: 1px solid var(--follow-up-line);
  background: #ffffff;
}

.calendar-drawer-actions button {
  min-height: 40px;
  padding: 0 15px;
  border: 1px solid var(--apple-border-strong);
  border-radius: 8px;
  background: #ffffff;
  color: var(--apple-text);
  box-shadow: none;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}

.calendar-drawer-actions button[type="submit"] {
  border-color: var(--apple-blue);
  background: var(--apple-blue);
  color: #ffffff;
}

@keyframes follow-up-sheet-enter {
  from {
    opacity: 0.75;
    transform: translateY(14px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (min-width: 1181px) {
  .follow-up-command-bar,
  .follow-up-board-toolbar {
    flex-wrap: nowrap;
  }

  .follow-up-board-filters,
  .follow-up-filter-controls {
    flex: 1 1 auto;
    flex-wrap: nowrap;
  }

  .follow-up-board-filters input,
  .follow-up-filter-controls input {
    width: min(220px, 22vw);
  }

  .follow-up-board-filters select,
  .follow-up-filter-controls select {
    width: 128px;
    min-width: 118px;
  }
}

@media (max-width: 1360px) {
  .follow-up-command-bar,
  .follow-up-board-toolbar {
    flex-wrap: wrap;
  }

  .follow-up-board-filters,
  .follow-up-filter-controls {
    flex: 1 1 100%;
    flex-wrap: wrap;
  }

  .follow-up-board-grid {
    grid-template-columns: repeat(3, minmax(240px, 1fr));
  }

  .follow-up-group-panel-body {
    grid-template-columns: minmax(0, 1fr) 280px;
  }
}

@media (max-width: 1180px) {
  [data-follow-up-view-panel][data-view-panel="board"] {
    padding-bottom: 4px;
  }

  .follow-up-week-strip {
    grid-template-columns: 1fr;
    overflow-x: auto;
  }

  .follow-up-week-heading {
    position: sticky;
    left: 0;
    z-index: 2;
    border-right: 0;
    border-bottom: 1px solid var(--follow-up-line);
  }

  .follow-up-board-grid {
    min-width: 940px;
    grid-template-columns: repeat(4, minmax(220px, 1fr));
  }

  .follow-up-group-panel,
  [data-group-panel] {
    right: 14px;
    bottom: 12px;
    left: 90px;
  }

  .follow-up-group-panel-body {
    grid-template-columns: minmax(0, 1fr) 260px;
  }

  .follow-up-list-group-detail-body {
    grid-template-columns: minmax(0, 1fr) 280px;
  }
}

@media (max-width: 840px) {
  .follow-up-command-bar,
  .follow-up-board-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .follow-up-board-filters,
  .follow-up-filter-controls {
    flex-basis: auto;
  }

  .follow-up-scope-summary {
    align-items: flex-start;
    flex-direction: column;
  }

  .follow-up-view-switcher,
  .follow-up-primary-action,
  .follow-up-add-work {
    width: 100%;
  }

  [data-follow-up-view] {
    flex: 1 1 0;
  }

  .follow-up-group-panel,
  [data-group-panel] {
    right: 8px;
    bottom: 8px;
    left: 8px;
    height: calc(100dvh - 16px);
    max-height: calc(100dvh - 16px);
  }

  .follow-up-group-panel-body {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(160px, 260px) minmax(0, 1fr);
    overflow: hidden;
  }

  .follow-up-list-group-detail-body {
    grid-template-columns: 1fr;
  }

  .follow-up-group-panel-header {
    grid-template-columns: 1fr;
  }

  .follow-up-group-panel-rail-header {
    border-top: 1px solid var(--follow-up-line);
    border-left: 0;
  }

  .follow-up-group-table-wrap {
    min-height: 160px;
    max-height: 260px;
  }

  .follow-up-group-rail {
    overflow: auto;
    border-top: 1px solid var(--follow-up-line);
    border-left: 0;
  }

  .follow-up-list-group-detail .follow-up-group-table-wrap,
  .follow-up-list-group-detail .follow-up-group-rail {
    max-height: none;
  }

  [data-calendar-drawer] {
    width: 100vw;
  }
}

/* Sent mailbox: compact history first, full message and CRM actions on selection. */
.sent-layout {
  display: grid;
  min-width: 0;
  overflow: hidden;
  container: sent-mail / inline-size;
}

.sent-list {
  display: grid;
  min-width: 0;
  background: #ffffff;
}

.sent-date-group {
  padding: 10px 16px;
  border-bottom: 1px solid rgba(10, 124, 255, 0.22);
  background: #f7fbff;
  color: #0f5ca8;
  font-size: 13px;
  font-weight: 780;
}

.sent-row {
  display: grid;
  grid-template-columns:
    22px
    minmax(150px, 0.78fr)
    minmax(280px, 1.8fr)
    auto
    auto
    auto
    minmax(90px, 0.45fr);
  min-width: 0;
  min-height: 58px;
  box-sizing: border-box;
  align-items: center;
  gap: 12px;
  padding: 9px 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  background: #ffffff;
}

.sent-row:hover,
.sent-row.active {
  background: #f1f7ff;
}

.sent-row:focus-within {
  box-shadow: inset 0 0 0 2px rgba(0, 113, 227, 0.2);
}

.sent-direction {
  display: inline-grid;
  width: 22px;
  height: 22px;
  place-items: center;
  color: #7b8998;
}

.sent-direction svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.65;
}

.sent-recipient {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.sent-recipient strong,
.sent-recipient small,
.sent-subject-line,
.sent-subject-line strong,
.sent-preview,
.sent-company {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sent-recipient strong {
  color: #1d1d1f;
  font-size: 14px;
  font-weight: 760;
}

.sent-recipient small,
.sent-preview,
.sent-company {
  color: #5f6b7a;
  font-size: 12px;
}

.sent-subject-line {
  display: block;
  color: #1d1d1f;
  font-size: 13px;
  text-decoration: none;
}

.sent-subject-line strong {
  margin-right: 6px;
  font-size: 14px;
  font-weight: 760;
}

.sent-stage,
.sent-outcome {
  display: inline-flex;
  width: fit-content;
  min-height: 26px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 780;
  line-height: 1.2;
  white-space: nowrap;
}

.sent-stage {
  background: #edf5ff;
  color: #0d5eaf;
}

.sent-outcome {
  background: #eef8f1;
  color: #237a45;
}

.sent-outcome.tone-pending {
  background: #fff4df;
  color: #8a5700;
}

.sent-outcome.tone-reply {
  background: #fff0cc;
  color: #8a5700;
}

.sent-outcome.tone-danger {
  background: #fff0ee;
  color: #b42318;
}

.sent-outcome.tone-muted {
  background: #eef1f5;
  color: #526070;
}

.sent-row time {
  color: #1d1d1f;
  font-size: 12px;
  font-weight: 720;
  white-space: nowrap;
}

.sent-list-hint {
  margin: 0;
  padding: 14px 16px;
  background: #fbfcfe;
  color: #5f6b7a;
  font-size: 13px;
}

.sent-reader {
  min-width: 0;
  scroll-margin-top: 20px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  background: #ffffff;
}

.sent-reader-toolbar .sent-outcome {
  margin-left: auto;
}

.sent-reader-header {
  min-width: 0;
}

.sent-reader-header > div {
  min-width: 0;
}

.sent-reader-header h2 {
  overflow-wrap: anywhere;
}

.sent-message-frame {
  min-height: 360px;
}

.sent-reader-follow-up {
  display: grid;
  gap: 12px;
  padding: 20px 24px 24px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  background: #fbfcfe;
}

.sent-reader-follow-up > h3 {
  margin: 0;
  color: #1d1d1f;
  font-size: 16px;
}

.sent-reader-follow-up .send-follow-up-panel {
  max-width: none;
}

.sent-reader-follow-up .send-follow-up-action-grid {
  grid-template-columns: minmax(180px, 260px) minmax(180px, 260px);
  align-items: start;
}

.sent-reader-follow-up .send-more-actions > div {
  display: grid;
  gap: 7px;
  margin-top: 7px;
}

.sent-reader-follow-up .send-follow-up-primary {
  display: inline-flex;
  width: fit-content;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 0 13px;
  border-radius: 8px;
  background: #0a66d9;
  color: #ffffff;
  font-size: 12px;
  font-weight: 760;
}

@container sent-mail (max-width: 1050px) {
  .sent-row {
    grid-template-columns: 22px minmax(145px, 0.7fr) minmax(240px, 1.6fr) auto auto auto;
  }

  .sent-company {
    display: none;
  }
}

@container sent-mail (max-width: 760px) {
  .sent-row {
    grid-template-columns: minmax(145px, 0.8fr) minmax(220px, 1.4fr) auto auto;
  }

  .sent-direction,
  .sent-stage,
  .sent-company {
    display: none;
  }

  .sent-reader-header {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }

  .sent-reader-follow-up .send-follow-up-action-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@container sent-mail (max-width: 560px) {
  .sent-row {
    grid-template-columns: minmax(0, 1fr) auto auto;
    grid-template-areas:
      "subject outcome time"
      "recipient recipient recipient";
    gap: 6px 10px;
    padding-block: 11px;
  }

  .sent-recipient {
    grid-area: recipient;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 7px;
  }

  .sent-subject-line {
    grid-area: subject;
  }

  .sent-outcome {
    grid-area: outcome;
  }

  .sent-row time {
    grid-area: time;
  }

  .sent-preview {
    display: none;
  }

  .sent-reader-follow-up {
    padding: 18px 16px 20px;
  }
}

/* Formal mail workflow: confirmed generate → review → queue workbenches. */
.draft-live-scope-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 22px;
  padding: 14px 18px;
  border: 1px solid #dce3eb;
  border-radius: 12px;
  background: #f8fafc;
  color: #657287;
}

.draft-live-scope-bar strong {
  color: #1e293b;
}

.draft-live-scope-bar b {
  color: #253247;
}

.draft-live-scope-bar a {
  margin-left: auto;
  color: var(--apple-blue);
  font-weight: 700;
  text-decoration: none;
}

.draft-generation-editor-grid,
.ai-generation-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.36fr) minmax(360px, 0.84fr);
  gap: 24px;
  align-items: start;
}

.draft-generation-editor-pane,
.ai-generation-form {
  min-width: 0;
}

.draft-generation-editor-pane .draft-generate-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.draft-generation-editor-pane .manual-template-body,
.draft-generation-editor-pane .manual-placeholder-toolbar,
.draft-generation-editor-pane .draft-file-upload {
  grid-column: 1 / -1;
}

.manual-template-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}

.draft-live-sample {
  position: sticky;
  top: 18px;
  min-width: 0;
  padding: 20px;
  border-left: 1px solid #dbe3ec;
  background: #f8fbff;
}

.draft-live-sample-heading,
.ai-generation-section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.draft-live-sample-heading h3,
.ai-generation-section-heading h3 {
  margin: 0;
  color: #182235;
}

.draft-live-sample-heading p,
.ai-generation-section-heading p {
  margin: 4px 0 0;
  color: #6a788d;
}

.draft-live-sample-heading > span {
  flex: 0 0 auto;
  padding: 5px 9px;
  border-radius: 999px;
  background: #e8f2ff;
  color: #075fb8;
  font-size: 12px;
  font-weight: 750;
}

.draft-live-message-card {
  overflow: hidden;
  border: 1px solid #d7e0ea;
  border-radius: 14px;
  background: #ffffff;
}

.draft-live-message-meta {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 18px;
  border-bottom: 1px solid #e3e8ef;
}

.draft-live-message-meta > div {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 10px;
}

.draft-live-message-meta dt {
  color: #778397;
}

.draft-live-message-meta dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  color: #202b3d;
  font-weight: 650;
}

.draft-live-message-body {
  min-height: 220px;
  padding: 20px;
  color: #29364a;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  line-height: 1.48;
}

.inbox-message-frame {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-height: 520px;
  border: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  background: #ffffff;
}

.draft-live-message-body > :first-child {
  margin-top: 0;
}

/* The sample column is intentionally narrower than the editor. Keep the
   signature stacked so real HTML signatures and their images remain readable
   instead of being squeezed into the panel's secondary grid column. */
.draft-live-sample .draft-generation-signature-panel {
  grid-template-columns: minmax(0, 1fr);
}

.draft-live-sample .draft-signature-html {
  overflow-wrap: normal;
  word-break: normal;
}

.draft-live-empty {
  color: #7a8798;
}

.draft-live-sample-check {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-top: 16px;
  padding: 14px;
  border: 1px solid #b9dfc7;
  border-radius: 12px;
  background: #eef9f2;
  color: #257a49;
}

.draft-live-sample-check strong {
  flex: 0 0 auto;
  font-size: 20px;
}

.ai-generation-form {
  display: grid;
  gap: 18px;
}

.ai-generation-section {
  padding-bottom: 18px;
  border-bottom: 1px solid #dfe5ec;
}

.ai-generation-section-heading {
  justify-content: flex-start;
}

.ai-generation-section-heading > span {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  place-items: center;
  border-radius: 50%;
  background: #e9f3ff;
  color: var(--apple-blue);
  font-weight: 800;
}

.ai-identity-grid,
.ai-preference-grid,
.ai-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.ai-check-grid label {
  display: flex;
  min-height: 48px;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid #dce3eb;
  border-radius: 10px;
  background: #ffffff;
}

.ai-check-grid input {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
}

.ai-forbidden-content {
  display: grid;
  gap: 7px;
  margin-top: 14px;
}

.ai-live-preview .draft-generation-signature-panel {
  margin: 0 18px 18px;
}

@media (max-width: 1120px) {
  .draft-generation-editor-grid,
  .ai-generation-grid {
    grid-template-columns: 1fr;
  }

  .draft-live-sample {
    position: static;
    border-top: 1px solid #dbe3ec;
    border-left: 0;
  }
}

@media (max-width: 720px) {
  .draft-generation-editor-pane .draft-generate-form,
  .ai-identity-grid,
  .ai-preference-grid,
  .ai-check-grid {
    grid-template-columns: 1fr;
  }

  .draft-live-scope-bar a {
    width: 100%;
    margin-left: 0;
  }
}

/* Mail workflow: the confirmed workflow preview is also the production UI. */
.mail-workflow-live .workflow-preview-step {
  min-height: 60px;
  padding-top: 16px;
  padding-bottom: 14px;
}

.mail-workflow-live .workflow-preview-step + .workflow-preview-step::before {
  height: 30px;
  top: 15px;
}

.mail-workflow-live .workflow-preview-step-marker {
  top: 16px;
}

.mail-workflow-live .mail-workflow-live-content {
  display: grid;
  min-width: 0;
}

.mail-workflow-live .draft-control-card,
.mail-workflow-live .draft-results-card {
  margin: 0;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.mail-workflow-live .draft-recipient-workbench,
.mail-workflow-live .draft-generation-methods,
.mail-workflow-live .manual-template-workbench,
.mail-workflow-live .openai-draft-workbench,
.mail-workflow-live .draft-approval-workbench,
.mail-workflow-live .draft-results-card {
  padding: 28px 32px;
  border-bottom: 1px solid #d8e0ea;
}

.mail-workflow-live .draft-workbench-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

.mail-workflow-live .draft-workbench-heading h2,
.mail-workflow-live .draft-workbench-heading p {
  margin: 0;
}

.mail-workflow-live .draft-workbench-heading p {
  margin-top: 6px;
  color: #66758a;
}

.mail-workflow-workspace-status {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex-wrap: wrap;
}

.mail-workflow-live .draft-recipient-form {
  display: grid;
  gap: 20px;
  margin-top: 24px;
}

.mail-workflow-live .draft-recipient-filter-grid {
  align-items: end;
}

.mail-workflow-live .draft-recipient-summary {
  display: grid;
  max-width: 620px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0;
  margin-top: 22px;
  overflow: hidden;
  border: 1px solid #d8e0ea;
  border-radius: 14px;
  background: #ffffff;
}

.mail-workflow-live .draft-recipient-summary-button {
  min-height: 94px;
  padding: 18px 22px;
  border: 0;
  border-right: 1px solid #d8e0ea;
  border-radius: 0;
  background: transparent;
}

.mail-workflow-live .draft-recipient-summary-button:last-of-type {
  border-right: 0;
}

.mail-workflow-live .workflow-preview-method-link {
  position: relative;
  text-decoration: none;
}

.mail-workflow-live .workflow-preview-method-link:hover,
.mail-workflow-live .workflow-preview-method-link:focus-visible {
  border-color: #0a7be8;
  background: #f4f9ff;
  outline: none;
}

.mail-workflow-live .workflow-preview-method-action {
  margin-left: auto;
  color: #006fd6;
  font-weight: 760;
}

.mail-workflow-live .workflow-preview-method-link[aria-disabled="true"],
.mail-workflow-live [data-draft-generation-methods][data-methods-enabled="false"] .workflow-preview-method-link {
  border-color: #d8e0ea;
  background: #f5f7fa;
  box-shadow: none;
  color: #7b8798;
  cursor: not-allowed;
  opacity: 0.68;
  pointer-events: none;
}

.mail-workflow-live .workflow-preview-method-link[aria-disabled="true"]:hover,
.mail-workflow-live .workflow-preview-method-link[aria-disabled="true"]:focus-visible,
.mail-workflow-live [data-draft-generation-methods][data-methods-enabled="false"] .workflow-preview-method-link:hover,
.mail-workflow-live [data-draft-generation-methods][data-methods-enabled="false"] .workflow-preview-method-link:focus-visible {
  border-color: #d8e0ea;
  background: #f5f7fa;
  outline: none;
}

.mail-workflow-live .workflow-preview-method-link[aria-disabled="true"] .workflow-preview-method-action,
.mail-workflow-live [data-draft-generation-methods][data-methods-enabled="false"] .workflow-preview-method-action {
  color: #8b96a5;
}

.mail-workflow-live .workflow-preview-status.is-scope-stale {
  background: #fff3d6;
  color: #9a5c00;
}

.mail-workflow-live .draft-generation-scope-note {
  margin: 22px 0 0;
  padding-top: 18px;
  border-top: 1px solid #d8e0ea;
  color: #66758a;
}

.mail-workflow-live .manual-template-workbench,
.mail-workflow-live .openai-draft-workbench {
  display: block;
}

.mail-workflow-live .manual-template-workbench > .draft-workbench-heading,
.mail-workflow-live .openai-draft-workbench > .draft-workbench-heading {
  margin-bottom: 24px;
}

.mail-workflow-live .manual-template-workbench .manual-template-body,
.mail-workflow-live .openai-draft-workbench .openai-draft-note,
.mail-workflow-live .openai-draft-workbench .draft-generate-form > button {
  grid-column: 1 / -1;
}

.mail-workflow-live .manual-template-action-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.mail-workflow-live .manual-template-workbench > form[id^="manual-template-"]:not(#manual-template-generate-form) {
  display: none;
}

.mail-workflow-live .manual-template-rich-shell,
.mail-workflow-live .manual-template-editor {
  min-width: 0;
}

.mail-workflow-live .manual-template-editor {
  min-height: 360px;
}

.mail-workflow-live .queue-edit-context {
  grid-column: 1 / -1;
  display: grid;
  gap: 4px;
  padding: 14px 16px;
  border: 1px solid #b8d8f5;
  border-radius: 12px;
  background: #f0f7ff;
  color: #17324d;
  overflow-wrap: anywhere;
}

.mail-workflow-live .queue-edit-context strong {
  color: #075fab;
  font-size: 14px;
}

.mail-workflow-live .queue-edit-context span {
  font-weight: 700;
}

.mail-workflow-live .queue-edit-context small {
  color: #607089;
}

.mail-workflow-live .manual-template-actions .apple-secondary-button {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.mail-workflow-live .draft-approval-workbench {
  display: grid;
  gap: 20px;
}

.mail-workflow-live .draft-approval-filter-shell {
  min-width: 0;
  container-type: inline-size;
}

.mail-workflow-live .draft-approval-filter-bar {
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  align-items: center;
  gap: 10px;
  padding: 14px 22px;
  border-bottom: 1px solid #d8e0ea;
  background: #f8fafc;
}

.mail-workflow-live .draft-approval-filter-bar label,
.mail-workflow-live .draft-approval-filter-bar select {
  min-width: 0;
}

.mail-workflow-live .draft-approval-filter-bar button {
  min-width: 120px;
  min-height: 44px;
  white-space: nowrap;
}

@container (max-width: 720px) {
  .mail-workflow-live .draft-approval-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@container (max-width: 520px) {
  .mail-workflow-live .draft-approval-filter-bar {
    grid-template-columns: minmax(0, 1fr);
    padding: 14px 16px;
  }

  .mail-workflow-live .draft-approval-filter-bar button {
    width: 100%;
  }
}

.draft-approval-selection-toolbar,
[data-draft-approval-selection-toolbar] {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 12px 14px;
  border: 1px solid #d8e0ea;
  border-radius: 12px;
  background: #f8fafc;
}

.draft-approval-selection-toolbar label,
[data-draft-approval-selection-toolbar] label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #344359;
  cursor: pointer;
  font-size: 13px;
  font-weight: 720;
}

input[data-draft-page-select] {
  width: 17px;
  height: 17px;
  margin: 0;
  accent-color: #0a7be8;
}

.draft-approval-selection-toolbar [data-draft-selected-count],
[data-draft-approval-selection-toolbar] [data-draft-selected-count] {
  color: #607089;
  font-size: 13px;
}

.draft-approval-filtered-select-button {
  min-height: 36px;
  margin-left: auto;
  padding: 7px 11px;
  border: 1px solid #cbd6e3;
  border-radius: 9px;
  background: #fff;
  color: #344359;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 760;
  transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease;
}

.draft-approval-filtered-select-button:hover:not(:disabled) {
  border-color: #9fc7ee;
  background: #f3f8ff;
  color: #075fab;
}

.draft-approval-filtered-select-button.is-active {
  border-color: #7eb8ed;
  background: #eaf4ff;
  color: #075fab;
}

.draft-approval-filtered-select-button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.draft-approval-floating-actions {
  position: fixed;
  z-index: 82;
  right: max(18px, env(safe-area-inset-right));
  bottom: max(18px, env(safe-area-inset-bottom));
  left: max(118px, calc(50% - 490px));
  display: grid;
  width: min(980px, calc(100vw - 154px));
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 12px 14px 12px 16px;
  border: 1px solid #d8e0ea;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 16px 44px rgba(20, 43, 72, 0.2);
  backdrop-filter: blur(18px);
  animation: rocketreach-company-floating-in 170ms ease-out both;
}

.draft-approval-floating-actions[hidden] {
  display: none;
}

.draft-approval-floating-copy {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.draft-approval-floating-copy strong {
  color: #172033;
  font-size: 14px;
  line-height: 1.25;
}

.draft-approval-floating-copy small {
  color: #607089;
  font-size: 11px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.draft-approval-floating-buttons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.draft-approval-floating-buttons .workflow-preview-button {
  min-height: 44px;
  padding: 9px 13px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: 760;
  white-space: nowrap;
}

.draft-approval-floating-buttons .workflow-preview-button-danger {
  border-color: #e8aaaa;
  background: #fff7f6;
  color: #b42318;
}

.draft-approval-floating-buttons .workflow-preview-button-danger:hover:not(:disabled) {
  border-color: #d77e7e;
  background: #fff0ee;
  color: #8f1912;
}

.draft-live-review-workspace.has-draft-bulk-selection {
  padding-bottom: 92px;
}

.draft-approval-bulk-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-left: auto;
}

[data-draft-selected-action][disabled],
[data-draft-filtered-action][disabled] {
  cursor: not-allowed;
  opacity: 0.55;
}

.draft-batch-edit-context,
[data-draft-batch-edit-context] {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  padding: 14px 16px;
  border: 1px solid #b8d8f5;
  border-radius: 12px;
  background: #f0f7ff;
  color: #17324d;
}

.draft-batch-edit-context strong,
[data-draft-batch-edit-context] strong {
  color: #075fab;
}

.draft-batch-edit-context small,
[data-draft-batch-edit-context] small {
  color: #607089;
}

.draft-batch-edit-confirm-dialog .draft-summary-dialog-body {
  display: grid;
  gap: 20px;
  padding-top: 22px;
}

.draft-batch-edit-confirm-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 16px 18px 16px 38px;
  border: 1px solid #d8e0ea;
  border-radius: 12px;
  color: #344359;
  background: #f8fafc;
  line-height: 1.55;
}

.draft-batch-edit-confirm-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.draft-batch-edit-confirm-actions button {
  min-height: 42px;
}

.draft-approval-selection-toolbar :is(button, a, input):focus-visible,
[data-draft-approval-selection-toolbar] :is(button, a, input):focus-visible,
.draft-approval-floating-actions :is(button, a, input):focus-visible,
.draft-batch-edit-context :is(button, a, input):focus-visible,
[data-draft-batch-edit-context] :is(button, a, input):focus-visible,
[data-draft-page-select]:focus-visible,
[data-draft-selected-action]:focus-visible,
[data-draft-filtered-action]:focus-visible {
  border-radius: 7px;
  outline: 3px solid rgba(10, 123, 232, 0.28);
  outline-offset: 2px;
}

.mail-workflow-live .draft-bulk-approval-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.mail-workflow-live .draft-results-card {
  padding-top: 0;
}

.mail-workflow-live .draft-results-table {
  overflow: hidden;
  border: 1px solid #d8e0ea;
  border-radius: 16px;
  background: #ffffff;
}

.mail-workflow-queue .mail-workflow-queue-form {
  display: grid;
  min-width: 0;
}

.mail-workflow-queue .mail-workflow-queue-form.has-send-queue-selection {
  padding-bottom: 96px;
}

.mail-workflow-queue .mail-workflow-queue-selection-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 24px;
  border-bottom: 1px solid #d8e0ea;
  background: #fbfcfe;
}

.mail-workflow-queue .mail-workflow-queue-selection-toolbar > span {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.mail-workflow-queue .mail-workflow-queue-selection-toolbar strong {
  color: #1d2939;
  font-size: 13px;
  font-weight: 780;
}

.mail-workflow-queue .mail-workflow-queue-selection-toolbar small {
  overflow: hidden;
  color: #607089;
  font-size: 11px;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mail-workflow-queue .mail-workflow-queue-selection-toolbar button {
  flex: 0 0 auto;
}

.mail-workflow-queue .send-queue-floating-actions {
  left: max(118px, calc(50% - 590px));
  width: min(1180px, calc(100vw - 154px));
}

.mail-workflow-queue .send-queue-floating-actions .workflow-preview-button {
  min-height: 44px;
  margin: 0;
  padding: 0 14px;
  border-radius: 10px;
  font-size: 13px;
  white-space: nowrap;
}

.mail-workflow-queue .send-queue-floating-actions button:disabled {
  cursor: not-allowed;
  opacity: 0.52;
}

.mail-workflow-queue .mail-workflow-queue-row {
  align-items: center;
}

.mail-workflow-queue .workflow-preview-table-head,
.mail-workflow-queue .mail-workflow-queue-row {
  grid-template-columns: minmax(170px, 1.2fr) minmax(150px, 1fr) minmax(165px, 0.8fr) 90px;
}

.mail-workflow-queue .mail-workflow-queue-recipient {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
}

.mail-workflow-queue .mail-workflow-queue-checkbox {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  margin: 2px 0 0;
  accent-color: #0a7be8;
}

.mail-workflow-queue .mail-workflow-queue-recipient-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.mail-workflow-queue .mail-workflow-queue-recipient-copy strong,
.mail-workflow-queue .mail-workflow-queue-recipient-copy span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mail-workflow-queue .mail-workflow-queue-empty {
  grid-column: 1 / -1;
}

.mail-workflow-queue .mail-workflow-queue-detail {
  margin: 0 24px 20px;
}

.mail-workflow-queue .mail-workflow-queue-remaining .workflow-preview-table-row {
  border-top: 1px solid #e4e9ef;
}

.mail-workflow-queue .send-schedule-editor {
  min-width: 0;
}

.mail-workflow-queue .mail-workflow-queue-row:has(.send-schedule-editor[open]) {
  align-items: start;
}

.mail-workflow-queue .mail-workflow-queue-row:has(.send-schedule-editor[open]) .mail-workflow-queue-status {
  visibility: hidden;
}

.mail-workflow-queue .send-schedule-editor-trigger {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  max-width: 100%;
  padding: 5px 7px;
  border-radius: 8px;
  color: #075fab;
  cursor: pointer;
  font-size: 13px;
  font-weight: 760;
  list-style: none;
  transition: background-color 140ms ease-out, color 140ms ease-out;
}

.mail-workflow-queue .send-schedule-editor-trigger::-webkit-details-marker {
  display: none;
}

.mail-workflow-queue .send-schedule-editor-trigger:hover {
  background: #edf6ff;
  color: #064f8d;
}

.mail-workflow-queue .send-schedule-editor-trigger:focus-visible {
  outline: 3px solid rgba(10, 123, 232, 0.28);
  outline-offset: 2px;
}

.mail-workflow-queue .send-schedule-editor-trigger time {
  white-space: nowrap;
}

.mail-workflow-queue .send-schedule-edit-label {
  color: #607089;
  font-size: 11px;
  font-weight: 680;
}

.mail-workflow-queue .send-schedule-editor-panel {
  display: grid;
  gap: 10px;
  width: 250px;
  max-width: min(250px, calc(100vw - 72px));
  margin-top: 7px;
  padding: 12px;
  border-radius: 10px;
  background: #f4f7fb;
}

.mail-workflow-queue .send-schedule-editor-field {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.mail-workflow-queue .send-schedule-editor-field > span {
  color: #4e5e73;
  font-size: 12px;
  font-weight: 720;
}

.mail-workflow-queue .send-schedule-editor-field input {
  width: 100%;
  min-width: 0;
}

.mail-workflow-queue .send-schedule-editor-panel .workflow-preview-button {
  width: 100%;
}

.mail-workflow-queue .send-schedule-editor-panel small {
  color: #637188;
  font-size: 11px;
  line-height: 1.5;
}

.mail-workflow-queue .send-now-button {
  border-color: #a9c9e8;
  color: #075fab;
}

.mail-workflow-queue .send-now-button:hover:not(:disabled) {
  border-color: #7aaedb;
  background: #edf6ff;
}

.mail-workflow-queue .send-queue-edit-content {
  display: inline-flex;
  width: fit-content;
  min-height: 28px;
  align-items: center;
  margin: 7px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #075fab;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 720;
  text-decoration: none;
}

.mail-workflow-queue .send-queue-edit-content:hover {
  color: #064f8d;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.mail-workflow-queue .send-queue-edit-content:focus-visible {
  border-radius: 5px;
  outline: 3px solid rgba(10, 123, 232, 0.28);
  outline-offset: 2px;
}

.mail-workflow-queue .send-cancel-task-button {
  border-color: #efb4ad;
  color: #b42318;
}

.mail-workflow-queue .send-cancel-task-button:hover:not(:disabled) {
  border-color: #dc8b82;
  background: #fff2f0;
}

.mail-workflow-queue .mail-workflow-retry-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  padding: 14px 22px 18px;
  border-top: 1px solid #d8e0ea;
}

.mail-workflow-queue .mail-workflow-service-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
  padding: 18px 32px 26px;
  border-top: 1px solid #d8e0ea;
}

.mail-workflow-queue .mail-workflow-queue-actions a {
  text-decoration: none;
}

@media (max-width: 1100px) {
  .mail-workflow-live .draft-approval-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mail-workflow-live .draft-generation-editor-grid,
  .mail-workflow-live .ai-generation-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .mail-workflow-live .draft-live-sample,
  .mail-workflow-live .ai-live-preview {
    position: static;
    border-top: 1px solid #dbe3ec;
    border-left: 0;
  }
}

@media (max-width: 640px) {
  .mail-workflow-live .draft-approval-filter-bar {
    grid-template-columns: minmax(0, 1fr);
    padding: 14px 16px;
  }

  .mail-workflow-live .draft-approval-filter-bar button {
    width: 100%;
  }
}

@media (max-width: 720px) {
  .customer-market-guard {
    grid-template-columns: minmax(0, 1fr);
  }

  .customer-market-guard-action,
  .customer-market-guard-action button,
  .customer-market-exclusion-item form,
  .customer-market-exclusion-item button {
    width: 100%;
  }

  .customer-market-exclusion-item {
    align-items: stretch;
    flex-direction: column;
  }

  .mail-workflow-queue .mail-workflow-queue-selection-toolbar {
    align-items: stretch;
    flex-direction: column;
    padding: 14px 18px;
  }

  .mail-workflow-queue .mail-workflow-queue-selection-toolbar small {
    white-space: normal;
  }

  .mail-workflow-queue .mail-workflow-queue-selection-toolbar button {
    width: 100%;
  }

  .mail-workflow-queue .send-queue-floating-actions {
    right: 12px;
    bottom: max(10px, env(safe-area-inset-bottom));
    left: 12px;
    grid-template-columns: minmax(0, 1fr);
    width: auto;
    max-width: calc(100vw - 24px);
    max-height: calc(100dvh - 24px);
    overflow: auto;
  }

  .mail-workflow-queue .send-queue-floating-buttons {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mail-workflow-queue .send-queue-floating-buttons .workflow-preview-button:last-child {
    grid-column: 1 / -1;
  }

  .mail-workflow-queue .mail-workflow-queue-form.has-send-queue-selection {
    padding-bottom: calc(230px + env(safe-area-inset-bottom));
  }

  .mail-workflow-queue .mail-workflow-queue-row {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .mail-workflow-live .draft-recipient-workbench,
  .mail-workflow-live .draft-generation-methods,
  .mail-workflow-live .manual-template-workbench,
  .mail-workflow-live .openai-draft-workbench,
  .mail-workflow-live .draft-approval-workbench,
  .mail-workflow-live .draft-results-card {
    padding: 22px 18px;
  }

  .mail-workflow-live .draft-recipient-summary,
  .mail-workflow-live .draft-generation-editor-pane .draft-generate-form,
  .mail-workflow-live .ai-identity-grid,
  .mail-workflow-live .ai-preferences-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .mail-workflow-live .draft-recipient-summary-button {
    border-right: 0;
    border-bottom: 1px solid #d8e0ea;
  }

  .mail-workflow-live .draft-recipient-summary-button:last-of-type {
    border-bottom: 0;
  }

  .draft-approval-selection-toolbar,
  [data-draft-approval-selection-toolbar],
  .draft-batch-edit-context,
  [data-draft-batch-edit-context] {
    align-items: stretch;
    flex-direction: column;
  }

  .draft-approval-filtered-select-button {
    width: 100%;
    margin-left: 0;
  }

  .draft-approval-floating-actions {
    right: 12px;
    bottom: calc(12px + env(safe-area-inset-bottom));
    left: 12px;
    width: auto;
    max-width: calc(100vw - 24px);
    max-height: calc(100dvh - 24px);
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
    overflow: auto;
  }

  .draft-approval-floating-buttons {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .draft-approval-floating-buttons .workflow-preview-button {
    width: 100%;
    min-width: 0;
    min-height: 40px;
    padding: 7px 9px;
    white-space: normal;
  }

  .draft-live-review-workspace.has-draft-bulk-selection {
    padding-bottom: calc(210px + env(safe-area-inset-bottom));
  }

  .draft-approval-bulk-actions {
    display: grid;
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
    margin-left: 0;
  }

  .draft-approval-bulk-actions > form,
  .draft-approval-bulk-actions > a,
  .draft-approval-bulk-actions > button,
  .draft-approval-bulk-actions button,
  [data-draft-selected-action],
  [data-draft-filtered-action] {
    width: 100%;
  }

  .draft-batch-edit-confirm-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .draft-batch-edit-confirm-actions button {
    width: 100%;
  }

  .mail-workflow-queue .send-schedule-editor-panel {
    width: min(250px, calc(100vw - 64px));
  }

  .mail-workflow-queue .mail-workflow-service-actions {
    justify-content: stretch;
    padding: 18px;
  }

  .mail-workflow-queue .mail-workflow-service-actions form,
  .mail-workflow-queue .mail-workflow-service-actions button {
    width: 100%;
  }

  .mail-workflow-queue .mail-workflow-queue-actions button {
    width: 100%;
  }
}

@media (max-width: 1180px) {
  .draft-recipient-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .draft-company-search {
    grid-column: 1 / -1;
  }

  .draft-recipient-apply {
    justify-self: start;
  }
}

@media (max-width: 720px) {
  .draft-recipient-scope-options,
  .draft-recipient-filter-grid,
  .draft-company-search,
  .draft-recipient-summary,
  .draft-generation-signature-panel {
    grid-template-columns: 1fr;
  }

  .draft-recipient-summary-button {
    padding: 0 0 10px;
    border-right: 0;
    border-bottom: 1px solid rgba(31, 122, 61, 0.14);
  }

  .draft-bulk-approval-actions,
  .draft-bulk-approval-actions form,
  .draft-bulk-approval-actions button {
    width: 100%;
  }
}

[data-follow-up-drag-source="status"][draggable="true"],
[data-follow-up-drag-source="date"][draggable="true"] {
  cursor: grab;
}

[data-follow-up-drag-source].is-dragging {
  opacity: 0.46;
  cursor: grabbing;
}

[data-follow-up-drag-source].is-move-pending {
  pointer-events: none;
  opacity: 0.62;
}

[data-follow-up-drag-source].is-move-error {
  outline: 2px solid #d92d20;
  outline-offset: 2px;
}

[data-follow-up-order-target] {
  position: relative;
}

[data-follow-up-order-target].is-insert-before::before,
[data-follow-up-order-target].is-insert-after::after {
  position: absolute;
  right: 10px;
  left: 10px;
  z-index: 2;
  height: 3px;
  border-radius: 999px;
  background: var(--apple-blue);
  box-shadow: 0 2px 7px rgba(0, 113, 227, 0.28);
  content: "";
  pointer-events: none;
}

[data-follow-up-order-target].is-insert-before::before {
  top: -6px;
}

[data-follow-up-order-target].is-insert-after::after {
  bottom: -6px;
}

[data-follow-up-status-drop],
[data-follow-up-date-drop] {
  transition:
    background-color 160ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 160ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.follow-up-drag-active [data-follow-up-status-drop],
body.follow-up-drag-active [data-follow-up-date-drop] {
  box-shadow: inset 0 0 0 1px rgba(0, 113, 227, 0.12);
}

body.follow-up-drag-active [data-follow-up-status-drop].is-drag-over,
body.follow-up-drag-active [data-follow-up-date-drop].is-drag-over {
  background: #eef7ff;
  box-shadow: inset 0 0 0 2px var(--apple-blue);
}

body.follow-up-drag-active [data-follow-up-status-drop].is-drop-pending,
body.follow-up-drag-active [data-follow-up-date-drop].is-drop-pending {
  background: #f1f7fd;
  box-shadow: inset 0 0 0 2px rgba(0, 113, 227, 0.55);
}

.follow-up-move-feedback {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 80;
  max-width: min(420px, calc(100vw - 32px));
  padding: 12px 14px;
  border-radius: 9px;
  background: #1f6f4a;
  color: #ffffff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}

.follow-up-move-feedback.is-error {
  background: #b42318;
}

@media (max-width: 640px) {
  .follow-up-move-feedback {
    right: 16px;
    bottom: 16px;
    left: 16px;
    max-width: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  [data-follow-up-status-drop],
  [data-follow-up-date-drop] {
    transition: none;
  }
}

/* Status-led task board and progress gallery */
[data-follow-up-board][data-active-view="board"] > .follow-up-week-strip,
[data-follow-up-board][data-active-view="gallery"] > .follow-up-week-strip {
  display: none;
}

.follow-up-board-grid {
  grid-template-columns: repeat(3, minmax(260px, 1fr));
  gap: 14px;
}

.follow-up-board-column {
  align-content: start;
  min-height: 240px;
  padding: 12px;
}

.follow-up-board-column[data-column="not_started"] {
  background: #f7f6f4;
}

.follow-up-board-column[data-column="in_progress"] {
  border-color: #d6e8fb;
  background: #f1f7fd;
}

.follow-up-board-column[data-column="completed"] {
  border-color: #d9e9df;
  background: #f3f8f5;
}

.follow-up-board-column[data-column="not_started"] .follow-up-board-column-header h2::before,
.follow-up-board-column[data-column="in_progress"] .follow-up-board-column-header h2::before,
.follow-up-board-column[data-column="completed"] .follow-up-board-column-header h2::before {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 7px;
  border-radius: 50%;
  background: #a4a7ab;
  content: "";
}

.follow-up-board-column[data-column="in_progress"] .follow-up-board-column-header h2::before {
  background: var(--apple-blue);
}

.follow-up-board-column[data-column="completed"] .follow-up-board-column-header h2::before {
  background: #43a477;
}

.follow-up-board-column[data-column="in_progress"] .follow-up-board-count {
  background: #dceeff;
  color: #075fb7;
}

.follow-up-board-column[data-column="completed"] .follow-up-board-count {
  background: #dff1e7;
  color: #25724f;
}

.follow-up-due-badge {
  display: inline-flex;
  width: fit-content;
  min-height: 23px;
  align-items: center;
  padding: 0 8px;
  border-radius: 6px;
  background: #e7f3eb;
  color: #2d7957;
  font-size: 11px;
  font-weight: 760;
}

.follow-up-due-badge.is-overdue {
  background: #fff0ee;
  color: #c43c33;
}

.follow-up-due-badge.is-today {
  background: #fff3df;
  color: #9c5f04;
}

.follow-up-due-badge.is-unscheduled {
  background: #eef1f4;
  color: #596576;
}

.follow-up-due-badge.is-completed {
  background: #e4f3ea;
  color: #25724f;
}

.follow-up-gallery-panel {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--follow-up-line);
  border-radius: 12px;
  background: #f7f8fa;
}

.follow-up-gallery-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
}

.follow-up-gallery-header p,
.follow-up-gallery-header h2,
.follow-up-gallery-card h3,
.follow-up-gallery-card p {
  margin: 0;
}

.follow-up-gallery-header p {
  color: var(--follow-up-ink-subtle);
  font-size: 12px;
  font-weight: 700;
}

.follow-up-gallery-header h2 {
  margin-top: 3px;
  font-size: 21px;
  letter-spacing: -0.02em;
}

.follow-up-gallery-header > strong {
  color: var(--apple-blue);
  font-size: 34px;
  line-height: 1;
}

.follow-up-gallery-layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(420px, 1.28fr);
  gap: 14px;
  align-items: stretch;
}

.follow-up-gallery-card {
  display: grid;
  align-content: start;
  gap: 14px;
  min-width: 0;
  padding: 18px;
  border: 1px solid #dde3ea;
  border-radius: 10px;
  background: #ffffff;
}

.follow-up-gallery-card h3 {
  font-size: 16px;
}

.follow-up-gallery-card > p {
  color: var(--follow-up-ink-subtle);
  font-size: 12px;
}

.follow-up-gallery-status-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.follow-up-gallery-status-grid > span {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 12px;
  border-radius: 8px;
  background: #f1f3f5;
  color: #596576;
  font-size: 11px;
  font-weight: 700;
}

.follow-up-gallery-status-grid > span strong {
  color: #273244;
  font-size: 24px;
  line-height: 1;
}

.follow-up-gallery-status-grid > span.is-in-progress {
  background: #e8f3ff;
  color: #1769b0;
}

.follow-up-gallery-status-grid > span.is-completed {
  background: #e8f4ed;
  color: #2d7957;
}

.follow-up-gallery-owner-list {
  display: grid;
  gap: 7px;
}

.follow-up-gallery-owner-row {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 10px;
  border: 1px solid #e4e8ed;
  border-radius: 8px;
  background: #fbfcfd;
}

.follow-up-gallery-owner-row small {
  flex: 0 0 auto;
  color: var(--follow-up-ink-subtle);
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}

.follow-up-gallery-progress-list {
  display: grid;
  gap: 14px;
}

.follow-up-gallery-progress-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px 12px;
}

.follow-up-gallery-progress-row > div:first-child {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: 9px;
}

.follow-up-gallery-progress-row strong {
  font-size: 13px;
}

.follow-up-gallery-progress-row > div:first-child span {
  color: var(--follow-up-ink-subtle);
  font-size: 11px;
}

.follow-up-gallery-percent {
  color: #344154;
  font-size: 12px;
  font-weight: 760;
}

.follow-up-gallery-progress {
  grid-column: 1 / -1;
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e7eaee;
}

.follow-up-gallery-progress > span {
  display: block;
  width: var(--progress, 0%);
  height: 100%;
  border-radius: inherit;
  background: #45a477;
}

@media (max-width: 1180px) {
  .follow-up-board-grid {
    min-width: 820px;
    grid-template-columns: repeat(3, minmax(260px, 1fr));
  }

  .follow-up-gallery-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .follow-up-gallery-panel {
    padding: 12px;
  }

  .follow-up-gallery-header {
    align-items: flex-start;
  }

  .follow-up-gallery-header > strong {
    font-size: 28px;
  }

  .follow-up-gallery-status-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .follow-up-board-filters input,
  .follow-up-board-filters select,
  .follow-up-filter-controls input,
  .follow-up-filter-controls select {
    width: 100%;
  }

  .follow-up-group-panel-main-header {
    align-items: stretch;
    flex-direction: column;
  }

  .follow-up-group-generate-form {
    justify-content: flex-start;
  }

  .calendar-work-form,
  [data-calendar-work-form] {
    grid-template-columns: 1fr;
  }

  .calendar-work-form label,
  [data-calendar-work-form] label {
    grid-column: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .follow-up-group-panel,
  [data-group-panel] {
    animation: none;
  }

  [data-calendar-drawer] {
    transition: none;
  }
}

/* Follow-up month calendar */
.follow-up-month-calendar {
  display: grid;
  gap: 0;
  padding: 0;
  overflow: hidden;
  border-color: var(--follow-up-line);
  background: #ffffff;
}

.follow-up-month-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  border-bottom: 1px solid var(--follow-up-line);
}

.follow-up-month-header p,
.follow-up-month-header h2 {
  margin: 0;
}

.follow-up-month-header p {
  color: var(--follow-up-ink-subtle);
  font-size: 12px;
  font-weight: 680;
}

.follow-up-month-header h2 {
  margin-top: 3px;
  font-size: 20px;
  letter-spacing: -0.02em;
}

.follow-up-month-header nav {
  display: inline-flex;
  overflow: hidden;
  border: 1px solid var(--follow-up-line);
  border-radius: 8px;
  background: #ffffff;
}

.follow-up-month-header nav a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 12px;
  border-right: 1px solid var(--follow-up-line);
  color: #425066;
  font-size: 12px;
  font-weight: 720;
}

.follow-up-month-header nav a:last-child {
  border-right: 0;
}

.follow-up-month-header nav a:hover {
  background: #f3f7fb;
  color: var(--apple-blue);
}

.follow-up-month-scroll {
  min-width: 0;
  overflow-x: auto;
}

.follow-up-month-weekdays,
.follow-up-month-grid {
  display: grid;
  min-width: 980px;
  grid-template-columns: repeat(7, minmax(140px, 1fr));
}

.follow-up-month-weekdays {
  border-bottom: 1px solid var(--follow-up-line);
  background: #fafbfc;
}

.follow-up-month-weekdays span {
  padding: 9px 12px;
  border-right: 1px solid var(--follow-up-line);
  color: #697689;
  font-size: 11px;
  font-weight: 720;
  text-align: right;
}

.follow-up-month-weekdays span:last-child {
  border-right: 0;
}

.follow-up-month-cell {
  min-height: 142px;
  padding: 8px;
  border-right: 1px solid var(--follow-up-line);
  border-bottom: 1px solid var(--follow-up-line);
  background: #ffffff;
}

.follow-up-month-cell:nth-child(7n) {
  border-right: 0;
}

.follow-up-month-cell:nth-last-child(-n + 7) {
  border-bottom: 0;
}

.follow-up-month-cell.is-adjacent {
  background: #fafbfc;
}

.follow-up-month-cell.is-selected {
  background: #f8fbff;
  box-shadow: inset 0 0 0 1px rgba(0, 113, 227, 0.4);
}

.follow-up-month-day-heading {
  display: flex;
  min-height: 26px;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  color: #2f3a49;
  font-size: 12px;
  font-weight: 750;
}

.follow-up-month-cell.is-adjacent .follow-up-month-day-heading {
  color: #9aa3ae;
}

.follow-up-month-cell.is-today .follow-up-month-day-heading time {
  display: inline-grid;
  width: 26px;
  height: 26px;
  place-items: center;
  border-radius: 50%;
  background: var(--apple-blue);
  color: #ffffff;
}

.follow-up-month-day-heading span {
  color: var(--apple-blue);
  font-size: 10px;
}

.follow-up-month-events {
  display: grid;
  gap: 5px;
  margin-top: 4px;
}

.follow-up-month-event {
  display: grid;
  width: 100%;
  min-width: 0;
  gap: 3px;
  padding: 7px 8px;
  border: 1px solid #dfe4ea;
  border-radius: 7px;
  background: #ffffff;
  color: #273244;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.follow-up-month-event:hover,
.follow-up-month-event:focus-visible {
  border-color: rgba(0, 113, 227, 0.5);
  background: #f6faff;
  outline: none;
}

.follow-up-month-event strong,
.follow-up-month-event span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.follow-up-month-event strong {
  font-size: 12px;
  font-weight: 760;
}

.follow-up-month-event span,
.follow-up-month-overflow {
  color: #667386;
  font-size: 10px;
}

.follow-up-month-overflow {
  padding: 2px 4px;
}

@media (max-width: 840px) {
  .follow-up-month-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .follow-up-month-header nav {
    width: 100%;
  }

  .follow-up-month-header nav a {
    flex: 1 1 0;
    justify-content: center;
  }
}

/* Mail settings: signature selector and aligned card actions */
.mail-signature-workbench .mail-signature-selector {
  display: grid;
  grid-template-columns: minmax(180px, 0.65fr) minmax(360px, 1.35fr);
  align-items: center;
  gap: 18px;
  padding: 16px 18px;
  border: 1px solid rgba(0, 113, 227, 0.16);
  border-radius: 12px;
  background: #f6f9fd;
}

.mail-signature-selector-copy {
  display: grid;
  gap: 3px;
}

.mail-signature-workbench .mail-signature-selector-label {
  color: #1d1d1f;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.35;
}

.mail-signature-selector-copy p {
  margin: 0;
  color: #657383;
  font-size: 12px;
  line-height: 1.4;
}

.mail-signature-selector-controls {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.mail-signature-workbench .mail-signature-selector-controls select,
.mail-signature-workbench .mail-signature-add-link {
  box-sizing: border-box;
  min-height: 42px;
  height: 42px;
  border-radius: 9px;
  font-family: inherit;
  font-size: 13px;
  line-height: 1;
}

.mail-signature-workbench .mail-signature-selector-controls select {
  width: 100%;
  padding: 0 38px 0 13px;
  border: 1px solid rgba(29, 29, 31, 0.16);
  background-color: #ffffff;
  color: #1d1d1f;
  font-weight: 680;
}

.mail-signature-workbench .mail-signature-add-link {
  display: inline-grid;
  min-width: 116px;
  place-items: center;
  padding: 0 14px;
  border: 1px solid rgba(0, 113, 227, 0.22);
  background: #ffffff;
  color: #0066cc;
  font-weight: 720;
  text-decoration: none;
  white-space: nowrap;
}

.mail-signature-workbench .mail-signature-card-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 18px;
  background: #f7f9fc;
}

.mail-signature-workbench .mail-signature-card-delete-form {
  display: block;
  height: 40px;
  margin: 0;
}

.mail-signature-workbench .mail-signature-card-actions .mail-signature-edit-button,
.mail-signature-workbench .mail-signature-card-actions .mail-signature-delete-button {
  display: grid;
  box-sizing: border-box;
  width: auto;
  min-width: 78px;
  height: 40px;
  min-height: 40px;
  place-items: center;
  margin: 0;
  padding: 0 18px;
  appearance: none;
  border-radius: 9px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 720;
  line-height: 1;
  text-decoration: none;
}

/* Follow-up panel: keep primary and destructive batch actions together. */
.follow-up-group-panel-header-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 9px;
}

.follow-up-group-panel-header-actions form {
  margin: 0;
}

@media (max-width: 720px) {
  .mail-signature-workbench .mail-signature-selector {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .mail-signature-selector-controls {
    grid-template-columns: 1fr;
  }

  .mail-signature-workbench .mail-signature-add-link {
    width: 100%;
  }
}

@media (max-width: 560px) {
  .follow-up-group-panel-header-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .follow-up-group-panel-header-actions button {
    width: 100%;
  }
}

/* Home: daily FX and official trade intelligence */
.trade-intelligence-panel {
  padding: 0;
  overflow: hidden;
  container-type: inline-size;
}

.trade-intelligence-heading {
  display: flex;
  min-height: 76px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 17px 20px 16px;
  border-bottom: 1px solid rgba(29, 29, 31, 0.1);
}

.trade-intelligence-heading h2,
.fx-intelligence-title h3,
.trade-news-heading h3 {
  margin: 0;
  color: #1d1d1f;
}

.trade-intelligence-heading h2 {
  font-size: 18px;
  font-weight: 760;
  line-height: 1.25;
}

.trade-intelligence-heading p,
.trade-news-heading p,
.fx-intelligence-title p {
  margin: 4px 0 0;
  color: #657383;
  font-size: 12px;
  line-height: 1.45;
}

.trade-intelligence-heading-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 12px;
}

.trade-intelligence-freshness {
  color: #657383;
  font-size: 12px;
  white-space: nowrap;
}

.trade-intelligence-refresh {
  width: auto;
  min-width: 84px;
  min-height: 36px;
  padding: 7px 13px;
  border: 1px solid rgba(0, 113, 227, 0.18);
  border-radius: 10px;
  background: #f5f9ff;
  color: #0066cc;
  font: inherit;
  font-size: 13px;
  font-weight: 720;
}

.trade-intelligence-refresh:hover {
  border-color: rgba(0, 113, 227, 0.32);
  background: #edf5ff;
}

.trade-intelligence-refresh:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.28);
  outline-offset: 2px;
}

.trade-intelligence-refresh:disabled {
  cursor: wait;
  opacity: 0.62;
}

.world-clock-intelligence {
  min-width: 0;
  max-width: 100%;
  padding: 18px 20px 20px;
  border-bottom: 1px solid rgba(29, 29, 31, 0.1);
  background: #ffffff;
}

.world-clock-heading {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.world-clock-heading h3,
.world-clock-heading p {
  margin: 0;
}

.world-clock-heading h3 {
  color: #1d1d1f;
  font-size: 16px;
  font-weight: 750;
  line-height: 1.3;
}

.world-clock-heading p {
  margin-top: 4px;
  color: #657383;
  font-size: 12px;
  line-height: 1.45;
}

.world-clock-heading [data-world-clock-china] {
  flex: 0 0 auto;
  margin: 0;
  color: #344054;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
  font-weight: 730;
  line-height: 1.45;
  white-space: nowrap;
}

.world-clock-grid {
  display: grid;
  min-width: 0;
  max-width: 100%;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1px;
  margin-top: 14px;
  padding: 1px;
  overflow: hidden;
  border-radius: 12px;
  background: rgba(29, 29, 31, 0.1);
}

.world-clock-item {
  display: grid;
  min-width: 0;
  gap: 6px;
  padding: 12px 14px;
  background: #fbfcfe;
}

.world-clock-item > div {
  display: flex;
  min-width: 0;
  align-items: baseline;
  gap: 6px;
}

.world-clock-item > div strong,
.world-clock-item > div span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.world-clock-item > div strong {
  color: #344054;
  font-size: 12px;
  font-weight: 750;
}

.world-clock-item > div span {
  color: #657383;
  font-size: 11px;
}

.world-clock-item > [data-world-clock-time] {
  color: #111827;
  font-size: clamp(21px, 1.8vw, 26px);
  font-variant-numeric: tabular-nums;
  font-weight: 770;
  letter-spacing: -0.025em;
  line-height: 1.05;
}

.world-clock-item > p {
  display: grid;
  min-width: 0;
  gap: 2px;
  margin: 0;
  line-height: 1.35;
}

.world-clock-item [data-world-clock-date],
.world-clock-item [data-world-clock-offset] {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 11px;
}

.world-clock-item [data-world-clock-date] {
  color: #657383;
}

.world-clock-item [data-world-clock-offset] {
  color: #0066cc;
  font-weight: 690;
}

.world-clock-item[data-world-clock-error="true"] [data-world-clock-offset] {
  color: #9a5a00;
}

.trade-intelligence-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
}

.fx-intelligence,
.trade-news {
  min-width: 0;
  padding: 20px;
}

.fx-intelligence {
  border-bottom: 1px solid rgba(29, 29, 31, 0.1);
  background: #fbfcfe;
}

.fx-intelligence-primary {
  display: grid;
  grid-template-columns: minmax(240px, 0.5fr) minmax(420px, 1.5fr);
  min-width: 0;
  align-items: start;
  gap: clamp(24px, 4vw, 64px);
  margin-top: 18px;
}

.fx-intelligence-summary {
  min-width: 0;
  align-self: start;
}

.fx-intelligence-title,
.trade-news-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.fx-intelligence-title h3,
.trade-news-heading h3 {
  font-size: 16px;
  font-weight: 750;
  line-height: 1.3;
}

.fx-pair-heading {
  display: flex;
  min-width: 0;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
}

.fx-currency-identity {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 7px;
}

.fx-currency-identity img {
  width: 30px;
  height: 20px;
  flex: 0 0 auto;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 3px;
  object-fit: cover;
  box-shadow: 0 1px 2px rgba(29, 29, 31, 0.08);
}

.fx-currency-identity > span {
  display: grid;
  min-width: 0;
  gap: 0;
}

.fx-currency-identity small {
  color: #718096;
  font-size: 9px;
  font-weight: 720;
  letter-spacing: 0.06em;
  line-height: 1.15;
}

.fx-pair-separator {
  color: #98a2b3;
  font-size: 15px;
  font-weight: 650;
}

.fx-intelligence-title > span {
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  padding: 4px 9px;
  border-radius: 999px;
  background: #eef2f6;
  color: #58677a;
  font-size: 11px;
  font-weight: 720;
  white-space: nowrap;
}

.fx-intelligence-title > span.is-live {
  background: #e9f7ef;
  color: #18794e;
}

.fx-intelligence-title > span.is-stale,
.fx-intelligence-title > span.is-error {
  background: #fff4df;
  color: #9a5a00;
}

.fx-intelligence-quote {
  display: flex;
  align-items: baseline;
  gap: 9px;
  margin-top: 0;
}

.fx-intelligence-quote strong {
  color: #111827;
  font-size: clamp(36px, 3.2vw, 48px);
  font-variant-numeric: tabular-nums;
  font-weight: 780;
  letter-spacing: -0.025em;
  line-height: 1;
}

.fx-intelligence-unit {
  color: #58677a;
  font-size: 12px;
  font-weight: 720;
  letter-spacing: 0.02em;
}

.fx-intelligence-as-of {
  min-height: 18px;
  margin: 8px 0 0;
  color: #657383;
  font-size: 12px;
  line-height: 1.45;
}

.fx-trend-chart {
  min-width: 0;
  margin: 0;
  padding-left: clamp(24px, 3vw, 48px);
  border-left: 1px solid rgba(29, 29, 31, 0.1);
}

.fx-trend-chart figcaption {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 8px;
}

.fx-trend-chart figcaption > div {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.fx-trend-chart figcaption strong {
  color: #26354a;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.35;
}

.fx-trend-chart figcaption span {
  color: #718096;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
  line-height: 1.35;
}

.fx-trend-chart figcaption > span {
  flex: 0 0 auto;
  color: #52606f;
  font-weight: 720;
  text-align: right;
}

.fx-trend-plot {
  display: grid;
  position: relative;
  min-width: 0;
  min-height: 200px;
  place-items: center;
}

.fx-trend-plot:focus-visible {
  border-radius: 8px;
  outline: 3px solid rgba(0, 113, 227, 0.22);
  outline-offset: 3px;
}

.fx-trend-plot svg {
  display: block;
  width: 100%;
  height: 200px;
  overflow: visible;
}

.fx-trend-grid {
  stroke: #e5eaf0;
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}

.fx-trend-axis-label,
.fx-trend-latest-label {
  fill: #718096;
  font-family: inherit;
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}

.fx-trend-line {
  fill: none;
  stroke: #0a73d9;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.5;
  vector-effect: non-scaling-stroke;
}

.fx-trend-day-hairline {
  opacity: 0.26;
  stroke: #0a73d9;
  stroke-width: 0.7;
  transition: opacity 140ms ease;
  vector-effect: non-scaling-stroke;
}

.fx-trend-day-hairline.is-peak {
  opacity: 0.72;
  stroke-width: 1.15;
}

.fx-trend-peak-dot {
  fill: #0a73d9;
}

.fx-trend-peak-label {
  fill: #344054;
  font-family: inherit;
  font-size: 9px;
  font-variant-numeric: tabular-nums;
  font-weight: 760;
  paint-order: stroke;
  stroke: #fbfcfe;
  stroke-linejoin: round;
  stroke-width: 4px;
}

.fx-trend-latest-dot {
  fill: #ffffff;
  stroke: #0a73d9;
  stroke-width: 2.5;
  vector-effect: non-scaling-stroke;
}

.fx-trend-latest-label {
  fill: #075fb8;
  font-weight: 760;
}

.fx-trend-active-guide {
  opacity: 0;
  stroke: rgba(10, 115, 217, 0.34);
  stroke-dasharray: 3 4;
  stroke-width: 1;
  transition: opacity 120ms ease;
  vector-effect: non-scaling-stroke;
}

.fx-trend-active-dot {
  opacity: 0;
  fill: #ffffff;
  stroke: #0a73d9;
  stroke-width: 2.5;
  transition: opacity 120ms ease;
  vector-effect: non-scaling-stroke;
}

.fx-trend-active-guide.is-visible,
.fx-trend-active-dot.is-visible {
  opacity: 1;
}

.fx-trend-tooltip {
  display: grid;
  position: absolute;
  z-index: 2;
  min-width: 104px;
  gap: 2px;
  padding: 7px 9px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  background: rgba(24, 33, 47, 0.94);
  box-shadow: 0 7px 18px rgba(24, 33, 47, 0.16);
  color: #ffffff;
  pointer-events: none;
  transform: translate(10px, calc(-100% - 10px));
}

.fx-trend-tooltip[hidden] {
  display: none;
}

.fx-trend-tooltip.is-left {
  transform: translate(calc(-100% - 10px), calc(-100% - 10px));
}

.fx-trend-tooltip strong {
  font-size: 12px;
  font-variant-numeric: tabular-nums;
  font-weight: 750;
  line-height: 1.25;
}

.fx-trend-tooltip span {
  color: rgba(255, 255, 255, 0.76);
  font-size: 10px;
  line-height: 1.3;
  white-space: nowrap;
}

.fx-trend-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-width: 0;
  margin: 10px 0 0;
  padding-top: 10px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
}

.fx-trend-stats > div {
  display: grid;
  min-width: 0;
  gap: 3px;
  padding: 0 12px;
}

.fx-trend-stats > div:first-child {
  padding-left: 0;
}

.fx-trend-stats > div + div {
  border-left: 1px solid rgba(29, 29, 31, 0.08);
}

.fx-trend-stats dt {
  color: #718096;
  font-size: 10px;
  line-height: 1.3;
}

.fx-trend-stats dd {
  min-width: 0;
  margin: 0;
  color: #344054;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
  font-weight: 750;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.fx-trend-stats dd.is-positive {
  color: #18794e;
}

.fx-trend-stats dd.is-negative {
  color: #ad4c2a;
}

.fx-trend-empty {
  color: #8a96a6;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

.fx-intelligence-changes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 20px 0 0;
  border-block: 1px solid rgba(29, 29, 31, 0.1);
}

.fx-intelligence-changes > div {
  min-width: 0;
  padding: 14px 14px 14px 0;
}

.fx-intelligence-changes > div + div {
  padding-left: 14px;
  border-left: 1px solid rgba(29, 29, 31, 0.1);
}

.fx-intelligence-changes dt,
.fx-intelligence-changes small {
  color: #657383;
  font-size: 11px;
  line-height: 1.35;
}

.fx-intelligence-changes dd {
  margin: 6px 0 3px;
  color: #344054;
  font-size: 21px;
  font-variant-numeric: tabular-nums;
  font-weight: 760;
  line-height: 1.1;
}

.fx-intelligence-changes dd.is-positive {
  color: #18794e;
}

.fx-intelligence-changes dd.is-negative {
  color: #ad4c2a;
}

.fx-intelligence-source {
  margin: 13px 0 0;
  color: #657383;
  font-size: 11px;
  line-height: 1.45;
}

.fx-intelligence-source a {
  color: #0066cc;
  font-weight: 700;
}

.trade-news {
  display: grid;
  align-content: start;
}

.trade-news-toggle {
  display: inline-flex;
  width: auto;
  min-width: 84px;
  min-height: 34px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  border: 1px solid rgba(0, 113, 227, 0.2);
  border-radius: 9px;
  background: #ffffff;
  color: #0066cc;
  font: inherit;
  font-weight: 720;
  white-space: nowrap;
  cursor: pointer;
}

.trade-news-toggle:hover {
  border-color: rgba(0, 113, 227, 0.38);
  background: #f2f8ff;
}

.trade-news-toggle:focus-visible {
  outline: 3px solid rgba(0, 113, 227, 0.24);
  outline-offset: 2px;
}

.trade-news-details {
  display: grid;
  min-width: 0;
}

.trade-news-details[hidden] {
  display: none !important;
}

.trade-tariff-overview {
  display: grid;
  min-width: 0;
  gap: 11px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(0, 113, 227, 0.18);
  border-radius: 12px;
  background: #f8fbff;
}

.trade-tariff-overview-heading {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.trade-tariff-overview-heading > div {
  min-width: 0;
}

.trade-tariff-overview-heading [data-tariff-overview-status] {
  display: inline-flex;
  min-height: 22px;
  align-items: center;
  margin-bottom: 7px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #e8f3ff;
  color: #075fbe;
  font-size: 10px;
  font-weight: 760;
  line-height: 1.2;
}

.trade-tariff-overview-heading h4,
.trade-tariff-overview-heading p,
.trade-tariff-overview-scope,
.trade-tariff-overview-verified {
  margin: 0;
}

.trade-tariff-overview-heading h4 {
  color: #1d1d1f;
  font-size: 14px;
  font-weight: 760;
  line-height: 1.35;
}

.trade-tariff-overview-heading p {
  margin-top: 3px;
  color: #58677a;
  font-size: 11px;
  line-height: 1.45;
}

.trade-tariff-overview-heading > strong {
  flex: 0 0 auto;
  color: #075fbe;
  font-size: clamp(28px, 3vw, 38px);
  font-variant-numeric: tabular-nums;
  font-weight: 790;
  letter-spacing: -0.03em;
  line-height: 1;
}

.trade-tariff-overview-heading > strong.is-textual {
  max-width: 132px;
  padding: 7px 10px;
  border: 1px solid rgba(0, 113, 227, 0.2);
  border-radius: 999px;
  background: #ffffff;
  font-size: 13px;
  letter-spacing: 0;
  line-height: 1.2;
  text-align: center;
}

.trade-tariff-overview-scope {
  padding-top: 10px;
  border-top: 1px solid rgba(0, 113, 227, 0.12);
  color: #465568;
  font-size: 11px;
  line-height: 1.5;
}

.trade-tariff-section-heading {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding-top: 10px;
  border-top: 1px solid rgba(0, 113, 227, 0.12);
}

.trade-tariff-section-heading[hidden] {
  display: none !important;
}

.trade-tariff-section-heading h5,
.trade-tariff-section-heading p {
  margin: 0;
}

.trade-tariff-section-heading h5 {
  color: #27364a;
  font-size: 12px;
  font-weight: 780;
  line-height: 1.35;
}

.trade-tariff-section-heading p {
  margin-top: 3px;
  color: #657383;
  font-size: 10px;
  line-height: 1.45;
}

.trade-tariff-section-heading > span {
  flex: 0 0 auto;
  padding: 3px 7px;
  border-radius: 999px;
  background: #e8f3ff;
  color: #075fbe;
  font-size: 9px;
  font-weight: 760;
}

.trade-tariff-products,
.trade-tariff-product-groups {
  display: grid;
  min-width: 0;
  gap: 10px;
}

.trade-tariff-products[hidden] {
  display: none !important;
}

.trade-tariff-product-group {
  display: grid;
  min-width: 0;
  gap: 6px;
  padding: 0;
}

.trade-tariff-product-group + .trade-tariff-product-group {
  padding-top: 9px;
  border-top: 1px solid rgba(29, 29, 31, 0.09);
}

.trade-tariff-product-group-heading h6,
.trade-tariff-product-group-heading p {
  margin: 0;
}

.trade-tariff-product-group-heading h6 {
  color: #1f2d3d;
  font-size: 12px;
  font-weight: 780;
  line-height: 1.35;
}

.trade-tariff-product-group-heading p {
  margin-top: 2px;
  color: #697789;
  font-size: 9px;
  line-height: 1.4;
}

.trade-tariff-product-items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  min-width: 0;
  gap: 7px;
}

.trade-tariff-product-item {
  display: block;
  align-self: start;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(29, 29, 31, 0.08);
  border-radius: 8px;
  background: #ffffff;
}

.trade-tariff-product-items:not(:has(> .trade-tariff-product-item[open]))
  > .trade-tariff-product-item {
  align-self: stretch;
}

.trade-tariff-product-items:not(:has(> .trade-tariff-product-item[open]))
  > .trade-tariff-product-item
  > .trade-tariff-product-item-heading {
  height: 100%;
  box-sizing: border-box;
}

.trade-tariff-product-item-heading {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 10px;
  cursor: pointer;
  list-style: none;
}

.trade-tariff-product-item-heading::-webkit-details-marker {
  display: none;
}

.trade-tariff-product-item-heading:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.72);
  outline-offset: -2px;
}

.trade-tariff-product-item[open] {
  border-color: rgba(0, 113, 227, 0.2);
}

.trade-tariff-product-detail {
  display: grid;
  min-width: 0;
  gap: 8px;
  padding: 9px 10px 10px;
  border-top: 1px solid rgba(29, 29, 31, 0.07);
}

.trade-tariff-product-item:not([open]) > .trade-tariff-product-detail {
  display: none;
}

.trade-tariff-product-item-heading > div:first-child,
.trade-tariff-product-total {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.trade-tariff-product-item-heading > div:first-child > strong {
  color: #27364a;
  font-size: 10px;
  font-weight: 760;
  line-height: 1.35;
}

.trade-tariff-product-item-heading > div:first-child > span,
.trade-tariff-product-total > span {
  color: #7a8798;
  font-size: 8px;
  line-height: 1.35;
}

.trade-tariff-product-total {
  flex: 0 0 auto;
  max-width: 132px;
  justify-items: end;
  text-align: right;
}

.trade-tariff-product-total > strong {
  color: #075fbe;
  font-size: 16px;
  font-variant-numeric: tabular-nums;
  font-weight: 790;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.trade-tariff-product-total.is-long-value > strong {
  font-size: 14px;
  line-height: 1.15;
}

.trade-tariff-product-disclosure-cue {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  color: #0066cc;
  font-size: 8px;
  font-weight: 720;
  line-height: 1.2;
}

.trade-tariff-product-disclosure-cue .is-open {
  display: none;
}

.trade-tariff-product-item[open] .trade-tariff-product-disclosure-cue .is-closed {
  display: none;
}

.trade-tariff-product-item[open] .trade-tariff-product-disclosure-cue .is-open {
  display: inline;
}

.trade-tariff-disclosure-chevron {
  width: 6px;
  height: 6px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  transition: transform 160ms cubic-bezier(0.16, 1, 0.3, 1);
}

.trade-tariff-product-item[open] .trade-tariff-disclosure-chevron {
  transform: rotate(225deg) translate(-1px, -1px);
}

@media (prefers-reduced-motion: reduce) {
  .trade-tariff-disclosure-chevron {
    transition: none;
  }
}

.trade-tariff-product-examples {
  margin: 0;
  color: #657383;
  font-size: 9px;
  line-height: 1.4;
}

.trade-tariff-product-layers {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
  margin: 0;
}

.trade-tariff-product-layers > div {
  display: grid;
  min-width: 0;
  gap: 2px;
  padding: 5px;
  border-radius: 6px;
  background: #f6f8fb;
}

.trade-tariff-product-layers dt,
.trade-tariff-product-layers dd {
  min-width: 0;
  margin: 0;
  font-size: 8px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.trade-tariff-product-layers dt {
  color: #7a8798;
}

.trade-tariff-product-layers dd {
  color: #344054;
  font-variant-numeric: tabular-nums;
  font-weight: 740;
}

.trade-tariff-product-note {
  margin: 0;
  color: #58677a;
  font-size: 9px;
  line-height: 1.45;
}

.trade-tariff-product-effective {
  margin: -3px 0 0;
  color: #7a8798;
  font-size: 8px;
  line-height: 1.4;
}

.trade-tariff-product-sources {
  display: flex;
  min-width: 0;
  flex-wrap: wrap;
  gap: 5px 8px;
}

.trade-tariff-product-sources a {
  color: #0066cc;
  font-size: 8px;
  font-weight: 700;
  text-decoration: none;
}

.trade-tariff-product-sources a:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.trade-tariff-components-disclosure {
  min-width: 0;
  padding-top: 9px;
  border-top: 1px solid rgba(0, 113, 227, 0.12);
}

.trade-tariff-components-disclosure[hidden] {
  display: none !important;
}

.trade-tariff-components-disclosure > summary {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 2px 0;
  color: #27364a;
  cursor: pointer;
  list-style: none;
  font-size: 12px;
  font-weight: 780;
}

.trade-tariff-components-disclosure > summary::-webkit-details-marker {
  display: none;
}

.trade-tariff-components-disclosure > summary:focus-visible {
  outline: 2px solid rgba(0, 113, 227, 0.72);
  outline-offset: 3px;
}

.trade-tariff-components-disclosure > summary small {
  color: #0066cc;
  font-size: 9px;
  font-weight: 720;
}

.trade-tariff-components-disclosure > p {
  margin: 6px 0 0;
  color: #657383;
  font-size: 10px;
  line-height: 1.45;
}

.trade-tariff-components-disclosure:not([open]) > :not(summary) {
  display: none;
}

.trade-tariff-components {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}

.trade-tariff-component {
  display: grid;
  min-width: 0;
  gap: 9px;
  padding: 11px;
  border: 1px solid rgba(29, 29, 31, 0.1);
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.86);
}

.trade-tariff-component > div {
  display: flex;
  min-width: 0;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.trade-tariff-component h5 {
  min-width: 0;
  margin: 0;
  color: #344054;
  font-size: 11px;
  font-weight: 740;
  line-height: 1.4;
}

.trade-tariff-component > div strong {
  flex: 0 0 auto;
  color: #075fbe;
  font-size: 16px;
  font-variant-numeric: tabular-nums;
  font-weight: 780;
}

.trade-tariff-component dl {
  display: grid;
  gap: 6px;
  margin: 0;
}

.trade-tariff-component dl > div {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 7px;
}

.trade-tariff-component dt,
.trade-tariff-component dd {
  min-width: 0;
  margin: 0;
  font-size: 10px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.trade-tariff-component dt {
  color: #7a8798;
}

.trade-tariff-component dd {
  color: #465568;
}

.trade-tariff-component > a {
  width: fit-content;
  color: #0066cc;
  font-size: 10px;
  font-weight: 700;
  text-decoration: none;
}

.trade-tariff-component > a:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.trade-tariff-overview-verified {
  color: #7a8798;
  font-size: 10px;
  line-height: 1.35;
  text-align: right;
}

.trade-tariff-overview.is-unavailable {
  border-color: rgba(29, 29, 31, 0.1);
  background: #f8f9fb;
}

.trade-tariff-overview.is-unavailable .trade-tariff-overview-heading > strong {
  color: #98a2b3;
}

.trade-tariff-overview.is-unavailable .trade-tariff-components {
  display: none;
}

.trade-tariff-overview.is-stale {
  border-color: rgba(181, 106, 0, 0.22);
  background: #fffaf0;
}

.trade-tariff-overview.is-stale .trade-tariff-overview-heading [data-tariff-overview-status] {
  background: #fff0d2;
  color: #8a5500;
}

.trade-intelligence-topics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 14px;
  border-block: 1px solid rgba(29, 29, 31, 0.1);
  background: #f8f9fb;
}

.trade-intelligence-topics > span {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 10px 12px;
}

.trade-intelligence-topics > span + span {
  border-left: 1px solid rgba(29, 29, 31, 0.1);
}

.trade-intelligence-topics strong {
  overflow: hidden;
  color: #344054;
  font-size: 12px;
  font-weight: 740;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.trade-intelligence-topics small {
  color: #657383;
  font-size: 11px;
}

.trade-intelligence-topics > span.has-updates strong {
  color: #0066cc;
}

.trade-news-list {
  display: grid;
  min-height: 182px;
}

.trade-intelligence-loading,
.trade-intelligence-empty {
  align-self: center;
  margin: 0;
  padding: 28px 6px;
  color: #657383;
  font-size: 13px;
  line-height: 1.5;
  text-align: center;
}

.trade-news-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 14px;
  padding: 13px 2px;
  border-bottom: 1px solid rgba(29, 29, 31, 0.09);
}

.trade-news-item:last-child {
  border-bottom: 0;
}

.trade-news-item-main {
  min-width: 0;
}

.trade-news-item-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  margin-bottom: 5px;
}

.trade-news-category {
  display: inline-flex;
  min-height: 22px;
  align-items: center;
  padding: 3px 8px;
  border-radius: 999px;
  background: #edf5ff;
  color: #0066cc;
  font-size: 10px;
  font-weight: 760;
}

.trade-news-item[data-category="china_tariffs"] .trade-news-category {
  background: #fff4df;
  color: #945900;
}

.trade-news-item[data-category="trump_trade_outlook"] .trade-news-category {
  background: #f4efff;
  color: #6941c6;
}

.trade-news-source,
.trade-news-date {
  color: #657383;
  font-size: 11px;
}

.trade-news-cache-status {
  display: inline-flex;
  min-height: 20px;
  align-items: center;
  padding: 2px 7px;
  border-radius: 999px;
  background: #fff0d2;
  color: #8a5500;
  font-size: 9px;
  font-weight: 760;
}

.trade-news-item h4 {
  margin: 0;
  font-size: 13px;
  font-weight: 730;
  line-height: 1.4;
}

.trade-news-item h4 a {
  color: #1d1d1f;
  text-decoration: none;
}

.trade-news-item h4 a:hover {
  color: #0066cc;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.trade-news-item h4 a:focus-visible {
  border-radius: 4px;
  outline: 3px solid rgba(0, 113, 227, 0.25);
  outline-offset: 2px;
}

.trade-news-item p {
  display: -webkit-box;
  overflow: hidden;
  margin: 4px 0 0;
  color: #58677a;
  font-size: 11px;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.trade-news-facts {
  display: grid;
  grid-template-columns: minmax(90px, 0.7fr) minmax(150px, 1.45fr) minmax(120px, 0.85fr);
  gap: 1px;
  margin: 9px 0 0;
  overflow: hidden;
  border: 1px solid rgba(29, 29, 31, 0.08);
  border-radius: 8px;
  background: rgba(29, 29, 31, 0.08);
}

.trade-news-facts > div {
  display: grid;
  min-width: 0;
  align-content: start;
  gap: 3px;
  padding: 8px 9px;
  background: #f8fafc;
}

.trade-news-facts dt,
.trade-news-facts dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
}

.trade-news-facts dt {
  color: #7a8798;
  font-size: 9px;
  font-weight: 700;
  line-height: 1.3;
}

.trade-news-facts dd {
  color: #344054;
  font-size: 10px;
  font-weight: 650;
  line-height: 1.4;
}

.trade-news-open {
  align-self: center;
  color: #0066cc;
  font-size: 12px;
  font-weight: 720;
  text-decoration: none;
  white-space: nowrap;
}

.trade-news-open:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.trade-intelligence-sources {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px 12px;
  margin-top: 12px;
  color: #657383;
  font-size: 11px;
}

.trade-intelligence-sources a {
  color: #0066cc;
  font-weight: 680;
}

.trade-intelligence-disclaimer {
  margin: 0;
  padding: 10px 20px;
  border-top: 1px solid rgba(29, 29, 31, 0.08);
  background: #fafafa;
  color: #657383;
  font-size: 11px;
  line-height: 1.45;
}

@media (max-width: 1040px) {
  .world-clock-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@container (max-width: 900px) {
  .fx-intelligence-primary {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  .fx-trend-chart {
    padding: 18px 0 0;
    border-top: 1px solid rgba(29, 29, 31, 0.1);
    border-left: 0;
  }
}

@container (max-width: 640px) {
  .trade-intelligence-heading {
    min-height: 0;
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
  }

  .trade-intelligence-heading-actions {
    justify-content: space-between;
  }

  .fx-trend-chart figcaption {
    align-items: stretch;
    flex-direction: column;
    gap: 6px;
  }

  .fx-trend-chart figcaption > span {
    text-align: left;
    white-space: normal;
  }
}

@media (max-width: 900px) {
  .fx-intelligence-primary {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  .fx-trend-chart {
    padding: 18px 0 0;
    border-top: 1px solid rgba(29, 29, 31, 0.1);
    border-left: 0;
  }
}

@media (max-width: 640px) {
  .workbench-brand-logo {
    width: 104px;
    max-height: 72px;
    margin: 0 0 0 18px;
  }

  .trade-intelligence-heading {
    min-height: 0;
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
  }

  .trade-intelligence-heading-actions {
    justify-content: space-between;
  }

  .world-clock-intelligence {
    padding: 16px;
  }

  .world-clock-heading {
    align-items: stretch;
    flex-direction: column;
    gap: 8px;
  }

  .world-clock-heading [data-world-clock-china] {
    align-self: flex-start;
  }

  .world-clock-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .fx-intelligence,
  .trade-news {
    padding: 16px;
  }

  .fx-intelligence-primary .fx-intelligence-quote {
    margin-top: 0;
  }

  .fx-intelligence-quote strong {
    font-size: 38px;
  }

  .fx-trend-chart figcaption {
    align-items: stretch;
    flex-direction: column;
    gap: 6px;
  }

  .fx-trend-chart figcaption > span {
    text-align: left;
    white-space: normal;
  }

  .fx-trend-plot,
  .fx-trend-plot svg {
    height: 176px;
    min-height: 176px;
  }

  .trade-news-item {
    grid-template-columns: minmax(0, 1fr);
  }

  .trade-tariff-components,
  .trade-tariff-product-items,
  .trade-news-facts {
    grid-template-columns: minmax(0, 1fr);
  }

  .trade-tariff-product-layers {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .trade-tariff-section-heading,
  .trade-tariff-product-item-heading {
    align-items: flex-start;
  }

  .trade-tariff-overview-heading {
    align-items: flex-end;
  }

  .trade-news-open {
    justify-self: start;
  }

  .trade-intelligence-disclaimer {
    padding-inline: 16px;
  }
}

@media (max-width: 420px) {
  .world-clock-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .fx-intelligence-changes {
    grid-template-columns: 1fr;
  }

  .fx-intelligence-changes > div {
    padding: 12px 0;
  }

  .fx-intelligence-changes > div + div {
    padding-left: 0;
    border-top: 1px solid rgba(29, 29, 31, 0.1);
    border-left: 0;
  }

  .trade-intelligence-topics {
    grid-template-columns: 1fr;
  }

  .trade-intelligence-topics > span {
    grid-template-columns: 1fr auto;
    align-items: center;
  }

  .trade-intelligence-topics > span + span {
    border-top: 1px solid rgba(29, 29, 31, 0.1);
    border-left: 0;
  }
}

/* Team progress, avatars, and shared-data attribution */
.contact-results-table {
  min-width: 1180px;
}

@media (max-width: 900px) {
  .crm-distribution-card {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-distribution-card > .panel-heading {
    grid-column: auto;
  }

  .crm-legend {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .team-progress-heading {
    gap: 16px;
  }

  .team-progress-table {
    min-width: 0;
    table-layout: auto;
  }

  .team-progress-table thead {
    display: none;
  }

  .team-progress-table tbody {
    display: block;
  }

  .team-progress-table tbody tr {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 24px;
    padding: 18px 20px;
    border-bottom: 1px solid #e6e9ee;
  }

  .team-progress-table tbody tr:last-child {
    border-bottom: 0;
  }

  .team-progress-table td {
    display: block;
    min-width: 0;
    padding: 0;
    border: 0;
  }

  .team-progress-table td::before {
    display: block;
    margin-bottom: 5px;
    color: #7b8492;
    content: attr(data-label);
    font-size: 11px;
    font-weight: 720;
  }

  .team-progress-goal,
  .team-progress-meter-cell {
    grid-column: 1 / -1;
  }

  .team-progress-action-cell {
    align-self: end;
    justify-self: end;
  }
}

@media (max-width: 640px) {
  .crm-distribution-card {
    padding: 16px;
  }

  .crm-legend {
    grid-template-columns: minmax(0, 1fr);
  }

  .team-progress-heading {
    align-items: flex-start;
    flex-direction: column;
    padding: 18px 16px 12px;
  }

  .team-progress-summary {
    width: 100%;
    justify-content: flex-start;
  }

  .team-progress-summary div {
    min-width: 72px;
    text-align: left;
  }

  .team-progress-filters {
    overflow-x: auto;
    padding: 0 16px 12px;
  }

  .team-progress-filter {
    flex: 0 0 auto;
    min-height: 40px;
  }

  .team-progress-table tbody tr {
    grid-template-columns: minmax(0, 1fr);
    gap: 13px;
    padding: 17px 16px;
  }

  .team-progress-goal,
  .team-progress-meter-cell {
    grid-column: auto;
  }

  .team-progress-action-cell {
    justify-self: stretch;
  }

  .team-progress-action {
    width: 100%;
    min-height: 44px;
  }

  .team-progress-empty {
    padding: 28px 16px;
  }
}

/* Chrome browser devices: restrained operational surface, not a marketing dashboard. */
.browser-devices-page {
  display: grid;
  gap: 22px;
  width: 100%;
  min-width: 0;
  max-width: 1180px;
}

.browser-devices-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  min-width: 0;
}

.browser-devices-heading > div {
  min-width: 0;
}

.browser-devices-heading h1 {
  margin: 0;
  color: #172033;
  font-size: clamp(28px, 3vw, 40px);
  letter-spacing: -0.035em;
}

.browser-devices-heading p,
.browser-pairing-section p {
  max-width: 760px;
  margin: 8px 0 0;
  color: #697386;
  font-size: 14px;
  line-height: 1.6;
}

.browser-pair-button,
.browser-copy-button,
.browser-revoke-button {
  min-height: 40px;
  border: 1px solid #cfd6df;
  border-radius: 8px;
  background: #fff;
  color: #263244;
  font: inherit;
  font-size: 13px;
  font-weight: 720;
  cursor: pointer;
}

.browser-pair-button {
  padding: 0 17px;
  border-color: #172033;
  background: #172033;
  color: #fff;
}

.browser-copy-button,
.browser-revoke-button {
  padding: 0 13px;
}

.browser-pair-button:hover,
.browser-pair-button:focus-visible {
  background: #2c394d;
}

.browser-pair-button:focus-visible,
.browser-copy-button:focus-visible,
.browser-revoke-button:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.22);
}

.browser-copy-button:hover,
.browser-copy-button:focus-visible,
.browser-revoke-button:hover,
.browser-revoke-button:focus-visible {
  border-color: #8d99a8;
  background: #f7f8fa;
}

.browser-revoke-button {
  min-height: 34px;
  color: #9c2f2f;
}

.browser-devices-notice {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #cdd8ea;
  border-radius: 8px;
  background: #f4f7fc;
  color: #29436d;
  font-size: 13px;
}

.browser-pairing-section,
.browser-list-section {
  min-width: 0;
  border: 1px solid #dde2e8;
  border-radius: 12px;
  background: #fff;
}

.browser-pairing-section {
  display: grid;
  grid-template-columns: minmax(240px, 0.8fr) minmax(320px, 1.2fr);
  gap: 28px;
  padding: 20px 22px;
}

.browser-pairing-section h2,
.browser-list-section h2 {
  margin: 0;
  color: #202b3c;
  font-size: 16px;
  letter-spacing: -0.01em;
}

.browser-pairing-result {
  align-self: center;
  min-width: 0;
}

.browser-pairing-label {
  display: block;
  margin-bottom: 7px;
  color: #697386;
  font-size: 12px;
  font-weight: 720;
}

.browser-pairing-code-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.browser-pairing-code-row output {
  display: block;
  min-width: 0;
  padding: 9px 12px;
  border: 1px solid #cfd6df;
  border-radius: 8px;
  background: #f7f8fa;
  color: #172033;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 16px;
  font-weight: 760;
  letter-spacing: 0.06em;
  overflow-wrap: anywhere;
  user-select: all;
}

.browser-copy-status {
  min-width: 42px;
  color: #397052;
  font-size: 12px;
}

.browser-list-section > header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
  padding: 17px 20px;
  border-bottom: 1px solid #e5e8ed;
}

.browser-list-section > header span {
  color: #7a8492;
  font-size: 12px;
}

.browser-table-scroll {
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
}

.browser-data-table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
  color: #344054;
  font-size: 13px;
}

.browser-data-table th,
.browser-data-table td {
  padding: 13px 20px;
  border-bottom: 1px solid #edf0f3;
  text-align: left;
  vertical-align: middle;
}

.browser-data-table th {
  background: #fafbfc;
  color: #697386;
  font-size: 11px;
  font-weight: 760;
  letter-spacing: 0.025em;
}

.browser-data-table tbody tr:last-child td {
  border-bottom: 0;
}

.browser-data-table code {
  color: #334155;
  font-size: 12px;
}

.browser-status {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 8px;
  border: 1px solid #d8dde4;
  border-radius: 999px;
  background: #f7f8fa;
  color: #556171;
  font-size: 11px;
  font-weight: 720;
  white-space: nowrap;
}

.browser-status-online,
.browser-status-idle,
.browser-job-succeeded {
  border-color: #c6dfd0;
  background: #f2f8f4;
  color: #316849;
}

.browser-status-busy,
.browser-job-leased,
.browser-job-pending {
  border-color: #cbd8ef;
  background: #f3f6fb;
  color: #345b95;
}

.browser-status-revoked,
.browser-job-failed,
.browser-job-expired,
.browser-job-cancelled {
  border-color: #e6caca;
  background: #fbf4f4;
  color: #8d3636;
}

.browser-action-cell form {
  margin: 0;
}

.browser-device-revoked,
.browser-empty-row {
  color: #667085;
  font-size: 12px;
}

.browser-empty-row {
  padding: 30px 20px !important;
  text-align: center !important;
}

@media (max-width: 760px) {
  .browser-devices-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .browser-devices-heading form,
  .browser-pair-button {
    width: 100%;
  }

  .browser-pair-button,
  .browser-copy-button,
  .browser-revoke-button {
    min-height: 44px;
  }

  .browser-pairing-section {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
    padding: 18px;
  }

  .browser-pairing-code-row {
    align-items: stretch;
    flex-wrap: wrap;
  }

  .browser-pairing-code-row output {
    width: 100%;
  }

  .browser-empty-row {
    position: sticky;
    left: 0;
    background: #fff;
    text-align: left !important;
  }
}

/* Keep the team-mail navigation treatment above the legacy sidebar rules. */
.sidebar-sub-link.sidebar-team-mail-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Durable mail workbench feedback stays quiet until it needs attention. */
.manual-workspace-meta {
  display: grid;
  min-width: 0;
  justify-items: end;
  gap: 2px;
  text-align: right;
}

.draft-workbench-heading .manual-workspace-meta > span {
  margin: 0;
}

[data-mail-workspace-save-status] {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  color: #667085;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
}

[data-mail-workspace-save-status][data-state="saving"],
[data-mail-workspace-save-status][data-state="dirty"] {
  color: #075fbd;
}

[data-mail-workspace-save-status][data-state="saved"] {
  color: #157347;
}

[data-mail-workspace-save-status][data-state="error"],
[data-mail-workspace-save-status][data-state="conflict"] {
  color: #9a5c00;
}

/* Compact owner-scoped mail activity in the persistent sidebar. */
[data-mail-activity] {
  min-width: 0;
  margin: 0 0 3px 44px;
}

[data-mail-activity][hidden] {
  display: none;
}

.mail-activity-link,
.mail-activity-menu > summary {
  display: flex;
  min-width: 0;
  min-height: 30px;
  box-sizing: border-box;
  align-items: center;
  gap: 7px;
  padding: 6px 9px;
  border-radius: 8px;
  color: #075fbd;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
}

.mail-activity-link:hover,
.mail-activity-menu > summary:hover {
  background: rgba(0, 113, 227, 0.08);
  color: #064f9e;
}

.mail-activity-link:focus-visible,
.mail-activity-menu > summary:focus-visible {
  background: rgba(0, 113, 227, 0.09);
  outline: 2px solid rgba(0, 113, 227, 0.3);
  outline-offset: 1px;
}

.mail-activity-dot {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: #18864b;
}

.mail-activity-label {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mail-activity-link small {
  flex: 0 0 auto;
  margin-left: auto;
  color: #667085;
  font-size: 10px;
  font-weight: 720;
}

.mail-activity-menu {
  min-width: 0;
}

.mail-activity-menu > summary {
  cursor: pointer;
  list-style: none;
}

.mail-activity-menu > summary::-webkit-details-marker {
  display: none;
}

.mail-activity-list {
  display: grid;
  gap: 2px;
  margin-top: 2px;
  padding-top: 3px;
  border-top: 1px solid rgba(29, 29, 31, 0.09);
}

.mail-activity-list .mail-activity-link {
  color: #4b5b70;
  font-weight: 650;
}

.sidebar-collapsed [data-mail-activity] {
  display: none;
}

@media (max-width: 760px) {
  .manual-workspace-meta {
    justify-items: start;
    text-align: left;
  }

  [data-mail-activity] {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  html.is-page-navigating::before {
    animation: none;
    transform: scaleX(0.85);
  }
}

/* Outbound thread mode: generation, approval and queue contract. */
.thread-mode-selector {
  min-width: 0;
  margin: 2px 0 0;
  padding: 0;
  border: 0;
}

.thread-mode-selector legend {
  margin-bottom: 9px;
  padding: 0;
  color: #243247;
  font-size: 13px;
  font-weight: 760;
}

.thread-mode-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.thread-mode-option {
  display: grid;
  min-width: 0;
  min-height: 92px;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: start;
  gap: 11px;
  box-sizing: border-box;
  padding: 14px 15px;
  border: 1px solid #cfd8e3;
  border-radius: 12px;
  background: #ffffff;
  color: #243247;
  cursor: pointer;
}

.thread-mode-option:has(input:checked) {
  border-color: #0a72d8;
  background: #f3f8fe;
}

.thread-mode-option:has(input:focus-visible) {
  outline: 3px solid rgba(10, 114, 216, 0.2);
  outline-offset: 2px;
}

.thread-mode-option.is-disabled {
  border-color: #dfe4eb;
  background: #f5f6f8;
  color: #6b7789;
  cursor: not-allowed;
}

.thread-mode-option input {
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  padding: 0;
  border: 0;
  accent-color: #0675de;
}

.thread-mode-option > span,
.thread-mode-option-title {
  display: grid;
  min-width: 0;
  gap: 5px;
}

.thread-mode-option-title {
  grid-template-columns: minmax(0, max-content) auto;
  align-items: center;
  justify-content: start;
  gap: 8px;
}

.thread-mode-option strong {
  overflow-wrap: anywhere;
  color: #172237;
  font-size: 14px;
}

.thread-mode-option.is-disabled strong {
  color: #59677a;
}

.thread-mode-option-title em {
  display: inline-flex;
  min-height: 22px;
  align-items: center;
  padding: 0 8px;
  border-radius: 999px;
  background: #e5f1fd;
  color: #075fae;
  font-size: 11px;
  font-style: normal;
  font-weight: 780;
}

.thread-mode-option small,
.thread-mode-help,
.thread-mode-subject-note {
  overflow-wrap: anywhere;
  color: #536277;
  font-size: 12px;
  line-height: 1.5;
}

.thread-mode-help,
.thread-mode-subject-note {
  margin: 8px 0 0;
}

.thread-mode-subject-note {
  padding: 10px 12px;
  border: 1px solid #d7e2ed;
  border-radius: 10px;
  background: #f7f9fc;
}

.thread-mode-subject-note[hidden] {
  display: none;
}

.thread-mode-badge {
  display: inline-flex;
  max-width: 100%;
  min-height: 25px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 3px 9px;
  border: 1px solid #cbd8e5;
  border-radius: 999px;
  background: #f5f8fb;
  color: #415168;
  font-size: 11px;
  font-weight: 760;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.thread-mode-badge.thread-mode-reply_previous {
  border-color: #a9cdec;
  background: #edf6fe;
  color: #075fae;
}

.thread-mode-badge.is-compact {
  min-height: 22px;
  padding: 2px 7px;
  font-size: 10px;
}

.draft-live-review-choice-badges {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  flex-wrap: wrap;
}

.thread-quote-preview {
  min-width: 0;
  margin-top: 14px;
  border-top: 1px solid #dce3eb;
  color: #334155;
}

.thread-quote-preview > summary {
  display: grid;
  min-height: 44px;
  grid-template-columns: max-content minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 10px 2px;
  cursor: pointer;
  list-style-position: inside;
}

.thread-quote-preview > summary span {
  color: #075fae;
  font-size: 12px;
  font-weight: 760;
}

.thread-quote-preview > summary strong {
  min-width: 0;
  overflow: hidden;
  color: #344359;
  font-size: 12px;
  font-weight: 680;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.thread-quote-preview > summary:focus-visible {
  border-radius: 7px;
  outline: 3px solid rgba(10, 114, 216, 0.2);
  outline-offset: 2px;
}

.thread-quote-content {
  min-width: 0;
  padding: 2px 0 14px;
}

.thread-quote-message-frame {
  display: block;
  width: 100%;
  min-height: 320px;
  border: 0;
}

.thread-quote-divider {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  color: #69778b;
  font-size: 11px;
}

.thread-quote-divider::before,
.thread-quote-divider::after {
  height: 1px;
  flex: 1 1 auto;
  background: #dce3eb;
  content: "";
}

.thread-quote-meta {
  display: grid;
  gap: 5px;
  margin: 0 0 12px;
  padding: 11px 12px;
  background: #f4f6f8;
}

.thread-quote-meta > div {
  display: grid;
  min-width: 0;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 8px;
}

.thread-quote-meta dt {
  color: #5a687b;
  font-size: 11px;
  font-weight: 760;
}

.thread-quote-meta dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  color: #2b3749;
  font-size: 11px;
}

.thread-quote-preview blockquote,
.thread-quote-empty {
  max-height: 180px;
  margin: 0;
  overflow: auto;
  overflow-wrap: anywhere;
  padding: 0 12px;
  border-inline-start: 1px solid #c8d2de;
  color: #4c5a6d;
  font: 12px/1.58 Arial, Helvetica, sans-serif;
  white-space: pre-wrap;
}

.thread-quote-preview.is-unavailable {
  display: grid;
  gap: 4px;
  padding: 12px 14px;
  border: 1px solid #ddc48b;
  border-radius: 10px;
  background: #fff9ea;
  color: #65450b;
}

.thread-quote-preview.is-unavailable strong {
  font-size: 12px;
}

.thread-quote-preview.is-unavailable span {
  overflow-wrap: anywhere;
  font-size: 11px;
  line-height: 1.5;
}

.mail-workflow-queue-subject-meta {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.mail-workflow-queue-subject-meta > span:first-child {
  min-width: 0;
  overflow-wrap: anywhere;
}

.mail-workflow-queue-message-preview .thread-quote-preview {
  margin-top: 16px;
}

@media (max-width: 720px) {
  .thread-mode-options {
    grid-template-columns: minmax(0, 1fr);
  }

  .thread-mode-option {
    min-height: 0;
  }

  .draft-live-review-choice-badges {
    align-items: flex-end;
    flex-direction: column;
  }

  .thread-quote-preview > summary {
    grid-template-columns: minmax(0, 1fr);
    gap: 3px;
  }

  .thread-quote-preview > summary strong {
    white-space: normal;
  }

  .thread-quote-meta > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 2px;
  }
}

@media (forced-colors: active) {
  .thread-mode-option:has(input:checked),
  .thread-mode-badge,
  .thread-quote-preview.is-unavailable {
    border-color: Highlight;
  }
}

/* Product -> member -> market: collapsed summaries keep the workbench compact. */
.team-product-groups { border-top: 1px solid #e5e7eb; }
.team-product-group + .team-product-group { border-top: 1px solid #e5e7eb; }
.team-category-summary {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(240px, 420px);
  align-items: center;
  gap: 20px;
  padding: 18px 24px;
  cursor: pointer;
  list-style: none;
}
.team-category-summary::-webkit-details-marker { display: none; }
.team-category-summary:hover { background: #f7faff; }
.team-category-summary:focus-visible { outline: 2px solid #0066cc; outline-offset: -3px; }
.team-category-label { position: relative; min-width: 0; padding-left: 22px; }
.team-category-label::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 2px;
  width: 7px;
  height: 7px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg);
}
details[open] > .team-category-summary > .team-category-label::before { transform: rotate(45deg); }
.team-category-label > strong { display: block; font-size: 17px; overflow-wrap: anywhere; }
.team-category-label > small, .team-category-metrics > small {
  display: block;
  margin-top: 5px;
  color: #526279;
  font-size: 13px;
  line-height: 1.5;
}
.team-category-metrics { display: grid; gap: 5px; min-width: 0; }
.team-category-ratio { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; }
.team-category-ratio > span { font-size: 13px; color: #526279; }
.team-category-metrics > .team-progress-meter { display: block; }
.team-member-groups { padding: 0 16px 12px; }
.team-member-group { border-top: 1px solid #e5e7eb; }
.team-member-summary { padding: 15px 12px; }
.team-member-summary .team-category-label::before { top: 13px; }
.team-progress-count-note { margin: 0; padding: 12px 24px 18px; color: #526279; font-size: 12px; line-height: 1.6; }
@media (max-width: 640px) {
  .team-category-summary { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 16px; }
  .team-category-metrics { padding-left: 22px; }
  .team-category-ratio { flex-wrap: wrap; gap: 4px 12px; }
  .team-member-groups { padding: 0 8px 8px; }
  .team-member-summary { padding: 14px 8px; }
  .team-progress-count-note { padding: 12px 16px; }
}

.inbox-classification-details {
  margin: 0 0 20px;
  border-block: 1px solid #e5e7eb;
  color: #1d1d1f;
}
.inbox-layout,
.inbox-action-form,
.inbox-list { grid-template-columns: minmax(0, 1fr); min-width: 0; }
.inbox-layout > *,
.inbox-action-form > *,
.inbox-reader > *,
.inbox-reader-header > *,
.inbox-classification-details-body { min-width: 0; }
.inbox-toolbar,
.inbox-reader-toolbar,
.inbox-classification-form { min-width: 0; max-width: 100%; flex-wrap: wrap; }
.inbox-reader-header,
.inbox-meta,
.inbox-body,
.inbox-original-summary pre { overflow-wrap: anywhere; }
.inbox-classification-form select,
.inbox-classification-form button { max-width: 100%; }
@media (max-width: 600px) {
  .inbox-row { grid-template-columns: 20px minmax(0, 1fr) auto; gap: 8px; padding: 12px; }
  .inbox-row .inbox-check { grid-column: 1; grid-row: 1 / 3; }
  .inbox-row .inbox-sender { grid-column: 2; grid-row: 1; }
  .inbox-row .inbox-subject-line { grid-column: 2 / 4; grid-row: 2; }
  .inbox-row .inbox-classification { grid-column: 2; grid-row: 3; justify-self: start; white-space: normal; }
  .inbox-row time { grid-column: 3; grid-row: 1; }
  .inbox-reader { margin: 12px 8px; }
  .inbox-reader-header { flex-direction: column; gap: 10px; padding: 18px 12px; }
  .inbox-body,
  .inbox-original-summary { padding: 18px 12px; }
  .inbox-toolbar,
  .inbox-reader-toolbar { padding: 10px 12px; }
  .inbox-toolbar-button,
  .inbox-back-link { min-height: 40px; }
}
.inbox-classification-details > summary {
  padding: 14px 0;
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
}
.inbox-classification-details > summary span {
  margin-left: 12px;
  color: #586474;
  font-size: 12px;
  font-weight: 400;
}
.inbox-classification-details-body { padding: 0 0 18px; }
.inbox-classification-details-body > p { margin: 0 0 12px; max-width: 72ch; font-size: 13px; line-height: 1.6; }
.inbox-classification-evidence { margin: 0 0 16px; padding: 12px 14px; background: #f5f6f8; font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.inbox-classification-form { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 0 0 10px; }
.inbox-classification-form label { font-size: 13px; font-weight: 600; }
.inbox-classification-form select,
.inbox-classification-form button { min-height: 40px; border: 1px solid #c5cbd2; border-radius: 8px; padding: 8px 12px; color: #1d1d1f; background: #fff; font: inherit; font-size: 13px; }
.inbox-classification-form button { cursor: pointer; font-weight: 600; }
.inbox-classification-form button:hover { background: #f0f2f5; }
.inbox-classification-form .inbox-reclassify-button { border-color: transparent; color: #005bb5; }
.inbox-classification-details > summary:focus-visible,
.inbox-classification-form select:focus-visible,
.inbox-classification-form button:focus-visible { outline: 2px solid #0071e3; outline-offset: 3px; }
.inbox-classification-details-body > .inbox-classification-help { margin: 0; color: #586474; font-size: 12px; }
@media (max-width: 600px) {
  .inbox-classification-form { align-items: stretch; }
  .inbox-classification-form label { flex-basis: 100%; }
  .inbox-classification-form select { flex: 1 1 170px; min-width: 0; }
.inbox-classification-form .inbox-reclassify-button { flex-basis: 100%; text-align: left; padding-left: 0; }
}

/* Website email task progress — Lieflat Mono / F11 Tick Gauge.
   Scoped to this component so the approved paper-and-ink treatment does not
   affect other CRM tables, forms, dialogs or status colors. */
.customer-website-email-backfill.we-lieflat {
  --we-paper: #F0EFEB;
  --we-ink: #1C1C1A;
  --we-secondary: #4A4944;
  --we-muted: #6A6963;
  --we-quiet: #8F8E88;
  --we-line: #C6C5BF;
  --we-grid: #DEDDD6;
  background: var(--we-paper);
  color: var(--we-ink);
  border: 0;
  border-radius: 24px;
  box-shadow: none;
  overflow: visible;
  font-family: Inter, "Microsoft YaHei", "PingFang SC", sans-serif;
  padding: 0 28px;
}
.we-lieflat [hidden] { display: none !important; }
.we-lieflat *, .we-lieflat *::before, .we-lieflat *::after { box-sizing: border-box; }
.we-lieflat .customer-website-email-backfill-copy { padding: 26px 0 24px; border: 0; }
.we-lieflat .customer-website-email-backfill-copy h2 { font-size: 25px; font-weight: 700; letter-spacing: -.03em; }
.we-lieflat .customer-website-email-backfill-copy p { color: var(--we-muted); font-size: 13px; margin-top: 7px; }
.we-lieflat button, .we-lieflat input { font: inherit; }
.we-lieflat button { cursor: pointer; }
.we-lieflat button:focus-visible, .we-lieflat input:focus-visible,
.we-lieflat summary:focus-visible, .we-lieflat [tabindex]:focus-visible {
  outline: 2px solid var(--we-ink); outline-offset: 4px;
}
.we-lieflat .we-tabbar { display: flex; gap: 28px; border-bottom: 1px solid var(--we-line); }
.we-lieflat .we-tabbar button {
  border: 0; border-radius: 0; background: transparent; padding: 0 0 14px;
  color: var(--we-muted); font-size: 13px; min-height: 42px; position: relative;
}
.we-lieflat .we-tabbar button[aria-selected="true"] { font-weight: 700; color: var(--we-ink); }
.we-lieflat .we-tabbar button[aria-selected="true"]::after { content: ""; position: absolute; height: 2px; bottom: -1px; left: 0; right: 0; background: var(--we-ink); }
.we-lieflat .customer-website-email-channel { padding: 20px 0 0; border: 0; background: transparent; }
.we-lieflat .customer-website-email-channel > header { align-items: center; margin: 0; gap: 20px; }
.we-lieflat .customer-website-email-channel > header h3 { font-size: 13px; margin-bottom: 4px; font-weight: 600; }
.we-lieflat .customer-website-email-channel > header p { font-size: 12px; color: var(--we-muted); }
.we-lieflat .customer-website-email-channel-state,
.we-lieflat .is-automatic > header .customer-website-email-channel-state {
  color: var(--we-secondary); background: transparent; border: 1px solid var(--we-line);
  border-radius: 5px; padding: 5px 9px; font-size: 11px; font-weight: 500;
}
.we-lieflat .we-task-overview { display: grid; grid-template-columns: minmax(250px, 32%) minmax(0, 1fr); margin-top: 18px; border-top: 1px solid var(--we-line); border-bottom: 1px solid var(--we-line); min-height: 280px; }
.we-lieflat .we-gauge-card { min-width: 0; padding: 22px 24px 18px 0; border-radius: 24px; }
.we-lieflat .we-gauge-heading { display: flex; gap: 12px; justify-content: space-between; align-items: center; }
.we-lieflat .we-gauge-heading h3 { font-size: 16.5px; margin: 0; font-weight: 700; letter-spacing: -.02em; }
.we-lieflat .we-gauge-card > p { margin: 5px 0 0; font-size: 11.5px; color: var(--we-muted); }
.we-lieflat .we-icon-button { border: 0; background: transparent; color: var(--we-muted); display: inline-flex; justify-content: center; align-items: center; width: 32px; height: 32px; padding: 0; font-size: 21px; flex: none; border-radius: 6px; }
.we-lieflat .we-icon-button:hover { background: var(--we-grid); color: var(--we-ink); }
.we-lieflat .we-gauge { display: block; width: 100%; height: 208px; overflow: visible; margin: -11px 0 -15px; }
.we-lieflat .we-gauge text { font-family: Inter, "Microsoft YaHei", sans-serif; }
.we-lieflat .we-source { display: block; color: var(--we-muted); font-size: 10px; font-weight: 500; text-align: center; letter-spacing: .04em; }
.we-lieflat .we-run { min-width: 0; border-left: 1px solid var(--we-line); padding: 25px 0 22px 32px; display: flex; flex-direction: column; justify-content: center; }
.we-lieflat .we-run-meta { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-size: 11px; color: var(--we-secondary); margin-bottom: 16px; }
.we-lieflat .we-run-updated { color: var(--we-muted); font-size: 10px; }
.we-lieflat .we-run > h3 { font-size: clamp(20px, 1.8vw, 27px); line-height: 1.4; font-weight: 700; letter-spacing: -.02em; margin: 0 0 8px; }
.we-lieflat .we-run > p { font-size: 12px; color: var(--we-muted); margin: 0; line-height: 1.7; }
.we-lieflat .we-steps { list-style: none; display: flex; gap: 14px; align-items: center; padding: 0; margin: 22px 0; }
.we-lieflat .we-steps li { display: flex; align-items: center; gap: 7px; color: var(--we-muted); font-size: 11px; white-space: nowrap; }
.we-lieflat .we-steps li + li::before { content: ""; width: 26px; height: 1px; background: var(--we-line); margin-right: 5px; }
.we-lieflat .we-steps li > span { width: 18px; height: 18px; border: 1px solid var(--we-quiet); border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 10px; }
.we-lieflat .we-steps li[data-state="complete"] > span { color: var(--we-paper); background: var(--we-ink); border-color: var(--we-ink); }
.we-lieflat .we-steps li[data-state="current"] { color: var(--we-ink); font-weight: 600; }
.we-lieflat .we-steps li[data-state="current"] > span { border-color: var(--we-ink); border-width: 2px; }
.we-lieflat .we-results-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; }
.we-lieflat .we-results { display: flex; gap: 32px; }
.we-lieflat .we-results button { background: transparent; border: 0; text-align: left; padding: 2px 0; color: var(--we-ink); border-radius: 0; }
.we-lieflat .we-results button:hover > span { text-decoration: underline; text-underline-offset: 4px; }
.we-lieflat .we-results button > span { display: block; font-size: 11px; color: var(--we-muted); margin-bottom: 4px; }
.we-lieflat .we-results button > strong { font-size: 26px; font-weight: 800; font-variant-numeric: tabular-nums; }
.we-lieflat .we-text-button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; background: transparent; color: var(--we-secondary); border: 0; border-radius: 0; font-size: 12px; padding: 8px 0; min-height: 34px; font-weight: 600; white-space: nowrap; }
.we-lieflat .we-text-button:hover { text-decoration: underline; text-underline-offset: 4px; color: var(--we-ink); }
.we-lieflat .we-live-note:empty { display: none; }
.we-lieflat .we-run > .we-live-note { margin-top: 10px; }
.we-lieflat .we-task-empty { padding: 35px 20px; color: var(--we-muted); font-size: 13px; text-align: center; line-height: 1.8; }
.we-lieflat .customer-website-email-details { margin: 0; padding: 8px 0; }
.we-lieflat summary { color: var(--we-muted); font-size: 12px; font-weight: 500; }
.we-lieflat .customer-website-email-details > summary { min-height: 35px; }
.we-lieflat .customer-website-email-details .customer-website-email-progress { border-top-color: var(--we-line); }
.we-lieflat .customer-website-email-progress-track { background: var(--we-grid); }
.we-lieflat .customer-website-email-progress-track span { background: var(--we-ink); }
.we-lieflat .customer-website-email-progress-heading strong,
.we-lieflat .customer-website-email-progress-stats dd { color: var(--we-ink); }
.we-lieflat .customer-website-email-progress-stats div { background: transparent; border-color: var(--we-line); }
.we-lieflat .customer-website-email-failure-reasons { background: var(--we-grid); color: var(--we-ink); }
.we-lieflat .customer-website-email-backfill-action form button { background: var(--we-ink); border: 1px solid var(--we-ink); border-radius: 10px; color: var(--we-paper); font-size: 12px; min-height: 42px; padding: 10px 16px; }
.we-lieflat .customer-website-email-backfill-action form button:hover:not(:disabled) { background: var(--we-secondary); border-color: var(--we-secondary); }
.we-lieflat .customer-website-email-backfill-action form button:disabled { background: var(--we-grid); border-color: var(--we-grid); color: var(--we-muted); cursor: not-allowed; }
.we-lieflat .we-companies { border-top: 1px solid var(--we-line); }
.we-lieflat .we-companies > summary { display: flex; align-items: center; gap: 12px; padding: 17px 0; min-height: 58px; width: 100%; }
.we-lieflat .we-companies > summary > strong { font-size: 17px; font-weight: 700; color: var(--we-ink); }
.we-lieflat .we-companies > summary > span { font-size: 12px; color: var(--we-muted); }
.we-lieflat .we-expand-copy { margin-left: auto; font-style: normal; font-size: 11px; white-space: nowrap; }
.we-lieflat .we-company-body { padding: 4px 0 20px; }
.we-lieflat .we-company-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 15px; flex-wrap: wrap; }
.we-lieflat .we-filters { display: flex; gap: 7px; align-items: center; flex-wrap: wrap; }
.we-lieflat .we-filters button { display: flex; align-items: center; gap: 8px; border: 0; border-radius: 8px; padding: 8px 11px; min-height: 38px; background: transparent; font-size: 12px; color: var(--we-muted); }
.we-lieflat .we-filters button[aria-pressed="true"] { color: var(--we-paper); background: var(--we-ink); }
.we-lieflat .we-filters button:hover:not([aria-pressed="true"]) { background: var(--we-grid); }
.we-lieflat .we-filters button > span { font-variant-numeric: tabular-nums; }
.we-lieflat .we-search { display: flex; align-items: center; gap: 9px; border: 1px solid var(--we-line); border-radius: 10px; padding: 0 12px; min-height: 40px; flex: 0 1 255px; max-width: 100%; margin: 0; }
.we-lieflat .we-search > span { font-size: 23px; line-height: 1; color: var(--we-muted); }
.we-lieflat .we-search input { min-width: 0; width: 100%; color: var(--we-ink); border: 0; background: transparent; outline-offset: 2px; border-radius: 4px; padding: 9px 0; font-size: 12px; }
.we-lieflat .we-search input::placeholder { color: var(--we-muted); }
.we-lieflat .we-company-note { font-size: 11px; color: var(--we-muted); padding: 10px 0; margin: 0; }
.we-lieflat .we-table-wrap { max-height: 430px; overflow: auto; scrollbar-width: thin; scrollbar-color: var(--we-line) var(--we-paper); border-top: 1px solid var(--we-line); border-bottom: 1px solid var(--we-line); }
.we-lieflat .we-company-table { width: 100%; border-collapse: collapse; table-layout: fixed; background: transparent; font-size: 12px; }
.we-lieflat .we-company-table th { background: var(--we-paper); position: sticky; top: 0; z-index: 1; padding: 12px 14px; border: 0; border-bottom: 1px solid var(--we-line); text-align: left; font-size: 11px; font-weight: 500; color: var(--we-muted); }
.we-lieflat .we-company-table th:first-child { width: 32%; }
.we-lieflat .we-company-table th:nth-child(2) { width: 22%; }
.we-lieflat .we-company-table th:nth-child(3) { width: 34%; }
.we-lieflat .we-company-table th:last-child { width: 12%; text-align: right; }
.we-lieflat .we-company-table td { padding: 15px 14px; border: 0; border-bottom: 1px solid var(--we-grid); background: transparent; color: var(--we-secondary); vertical-align: middle; overflow-wrap: anywhere; }
.we-lieflat .we-company-table td:last-child { text-align: right; }
.we-lieflat .we-company-table tr:last-child td { border-bottom: 0; }
.we-lieflat .we-company-table tbody tr:hover { background: var(--we-grid); }
.we-lieflat .we-company-cell { display: flex; align-items: center; gap: 12px; min-width: 0; }
.we-lieflat .we-company-number { flex: none; width: 36px; height: 36px; border: 1px solid var(--we-line); border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; color: var(--we-secondary); font-size: 11px; font-variant-numeric: tabular-nums; }
.we-lieflat .we-company-cell strong { display: block; color: var(--we-ink); font-size: 13px; line-height: 1.5; font-weight: 700; }
.we-lieflat .we-company-cell div > span { display: block; color: var(--we-muted); font-size: 11px; margin-top: 3px; line-height: 1.5; }
.we-lieflat .we-company-table .we-item-state { color: var(--we-ink); }
.we-lieflat .we-company-table tr[data-active="true"] .we-item-state::before { content: ""; width: 5px; height: 5px; display: inline-block; background: var(--we-ink); border-radius: 50%; margin-right: 7px; vertical-align: 2px; }
.we-lieflat .we-table-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding-top: 12px; color: var(--we-muted); font-size: 11px; }
.we-lieflat .we-page-actions { display: flex; gap: 20px; }
.we-lieflat .customer-website-email-coverage { border-top: 1px solid var(--we-line); padding: 4px 0 12px; background: transparent; }
.we-lieflat .customer-website-email-coverage > summary { min-height: 44px; }
.we-lieflat .customer-website-email-coverage > dl > div { background: transparent; border-color: var(--we-line); }
.we-lieflat .customer-website-email-legacy { background: transparent; border-color: var(--we-line); padding: 15px 0; }
.we-lieflat .customer-website-email-feedback { margin: 0; padding: 10px 0; background: transparent; color: var(--we-secondary); }
.we-lieflat .we-drawer { position: fixed; inset: 0 0 0 auto; margin: 0; width: min(490px, 100vw); height: 100dvh; max-height: 100dvh; max-width: 100vw; padding: 24px 30px; background: var(--we-paper); color: var(--we-ink); border: 0; border-left: 1px solid var(--we-line); border-radius: 0; box-shadow: none; overflow: auto; }
.we-lieflat .we-drawer::backdrop { background: #4A4944; opacity: .38; }
.we-lieflat .we-drawer > header { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-bottom: 24px; color: var(--we-muted); font-size: 12px; }
.we-lieflat .we-drawer h2 { font-size: 24px; font-weight: 700; margin: 15px 0 7px; line-height: 1.45; overflow-wrap: anywhere; }
.we-lieflat .we-drawer h3 { font-size: 14px; margin: 25px 0 12px; font-weight: 700; }
.we-lieflat .we-drawer-domain { color: var(--we-muted); font-size: 13px; overflow-wrap: anywhere; }
.we-lieflat .we-drawer-state { padding: 22px 0; margin-top: 22px; border-block: 1px solid var(--we-line); }
.we-lieflat .we-drawer-state strong { font-size: 16px; }
.we-lieflat .we-drawer-state p { color: var(--we-secondary); margin: 10px 0 0; font-size: 13px; line-height: 1.7; overflow-wrap: anywhere; }
.we-lieflat .we-detail-fields { margin: 0; }
.we-lieflat .we-detail-fields > div { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 15px; border-bottom: 1px solid var(--we-grid); padding: 13px 0; font-size: 12px; }
.we-lieflat .we-detail-fields dt { color: var(--we-muted); }
.we-lieflat .we-detail-fields dd { margin: 0; overflow-wrap: anywhere; text-align: right; }
.we-lieflat .we-drawer-note { color: var(--we-muted); font-size: 11px; margin-top: 24px; line-height: 1.8; }
.we-lieflat .we-tick-enter { animation: we-tick-reveal .9s cubic-bezier(.16, 1, .3, 1) both; }
@keyframes we-tick-reveal { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .we-lieflat .we-tick-enter { animation: none; } }
@media (max-width: 900px) {
  .we-lieflat .we-task-overview { grid-template-columns: minmax(230px, 35%) minmax(0, 1fr); }
  .we-lieflat .we-run { padding-left: 22px; }
  .we-lieflat .we-results-row { align-items: flex-start; flex-direction: column; gap: 8px; }
  .we-lieflat .we-run-meta { align-items: flex-start; flex-direction: column; gap: 5px; }
  .we-lieflat .we-steps { gap: 8px; }
  .we-lieflat .we-steps li + li::before { width: 14px; margin-right: 0; }
}
@media (max-width: 650px) {
  .customer-website-email-backfill.we-lieflat { padding: 0 18px; border-radius: 20px; }
  .we-lieflat .customer-website-email-backfill-copy { padding: 22px 0 20px; }
  .we-lieflat .customer-website-email-backfill-copy h2 { font-size: 22px; }
  .we-lieflat .we-tabbar { gap: 22px; }
  .we-lieflat .we-tabbar button { font-size: 12px; white-space: nowrap; }
  .we-lieflat .we-task-overview { display: block; }
  .we-lieflat .we-gauge-card { padding: 17px 0 18px; }
  .we-lieflat .we-gauge { height: 215px; max-width: 350px; margin: -10px auto -15px; }
  .we-lieflat .we-run { border-left: 0; border-top: 1px solid var(--we-line); padding: 23px 0; }
  .we-lieflat .we-run > h3 { font-size: 22px; }
  .we-lieflat .we-run-meta { flex-direction: row; flex-wrap: wrap; gap: 8px; }
  .we-lieflat .we-results { gap: 36px; }
  .we-lieflat .we-results button { min-width: 54px; min-height: 60px; }
  .we-lieflat .we-text-button { min-height: 44px; }
  .we-lieflat .we-companies > summary { flex-wrap: wrap; gap: 8px; }
  .we-lieflat .we-companies > summary > strong { font-size: 16px; }
  .we-lieflat .we-companies > summary > span { display: none; }
  .we-lieflat .we-company-toolbar { flex-direction: column-reverse; align-items: stretch; }
  .we-lieflat .we-search { flex-basis: auto; width: 100%; min-height: 44px; }
  .we-lieflat .we-filters { gap: 4px; }
  .we-lieflat .we-filters button { min-height: 44px; padding: 7px 9px; font-size: 11px; }
  .we-lieflat .we-company-table { min-width: 670px; }
  .we-lieflat .we-table-footer > span:last-child { display: none; }
  .we-lieflat .we-steps { justify-content: space-between; gap: 6px; }
  .we-lieflat .we-steps li { font-size: 10px; gap: 5px; }
  .we-lieflat .we-steps li + li::before { width: 14px; }
  .we-lieflat .customer-website-email-channel.is-manual > header { align-items: stretch; flex-direction: column; }
  .we-lieflat .customer-website-email-channel-state { align-self: flex-start; }
  .we-lieflat .customer-website-email-backfill-action form button { width: 100%; min-height: 44px; }
  .we-lieflat .we-drawer { padding: 20px 22px; }
}

/* Temporary release state, also visible to people keeping a page open. */
:root { --app-maintenance-height: 0px; }
body:has(.app-maintenance-status:not([hidden])) { padding-top: var(--app-maintenance-height); }
.app-maintenance-status {
  position: fixed;
  inset: 0 0 auto;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  box-sizing: border-box;
  padding: 16px 24px;
  background: #1C1C1A;
  color: #F0EFEB;
  font-size: 14px;
  line-height: 1.5;
}
.app-maintenance-status[hidden], .app-maintenance-status button[hidden] { display: none; }
.app-maintenance-status strong, .app-maintenance-status span { display: block; }
.app-maintenance-status strong { font-size: 16px; }
.app-maintenance-status span { color: #CECDC8; margin-top: 3px; }
.app-maintenance-status button {
  flex: 0 0 auto;
  min-height: 44px;
  padding: 8px 16px;
  border: 1px solid #F0EFEB;
  border-radius: 8px;
  background: #F0EFEB;
  color: #1C1C1A;
  font: inherit;
  cursor: pointer;
}
.app-maintenance-status button:focus-visible { outline: 2px solid #F0EFEB; outline-offset: 4px; }
body:has(.app-maintenance-status:not([hidden])) .app-sidebar {
  top: var(--app-maintenance-height);
  height: calc(100vh - var(--app-maintenance-height));
}

/* Approved Lieflat F5 Tick Rows, porcelain palette. This component inherits
   the CRM shell; its one shared scale compares independent tariff rates. */
.trade-news-unified,
.trade-tariff-lieflat {
  --trade-tariff-chart-bg: #F7F2EB;
  --trade-tariff-chart-ink: #081F5C;
  --trade-tariff-chart-muted: rgba(8, 31, 92, 0.72);
  --trade-tariff-chart-grid: rgba(8, 31, 92, 0.16);
  --trade-tariff-chart-quiet: rgba(8, 31, 92, 0.15);
  --trade-tariff-chart-data: #334EAC;
  --trade-tariff-chart-data-secondary: #7096D1;
  color: var(--trade-tariff-chart-ink);
  font-family: Inter, "Segoe UI", "Microsoft YaHei", sans-serif;
}
.trade-news-unified {
  padding: 16px 22px;
  border: 1px solid var(--trade-tariff-chart-grid);
  border-radius: 14px;
  background: var(--trade-tariff-chart-bg);
}
.trade-news-unified [hidden] { display: none !important; }
.trade-news-unified .trade-news-heading h3 { margin: 0; color: inherit; font-size: 16px; }
.trade-news-unified .trade-news-heading p { margin: 4px 0 0; color: var(--trade-tariff-chart-muted); font-size: 11px; line-height: 1.5; }
.trade-news-unified .trade-intelligence-topics {
  display: flex;
  gap: 22px;
  margin: 6px 0 10px;
  border: 0;
  border-bottom: 1px solid var(--trade-tariff-chart-grid);
  background: transparent;
}
.trade-news-unified [data-trade-topic] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: auto;
  min-width: 0;
  min-height: 42px;
  margin-bottom: -1px;
  padding: 8px 2px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  color: var(--trade-tariff-chart-muted);
  font: inherit;
  cursor: pointer;
}
.trade-news-unified [data-trade-topic] strong { color: inherit; font-size: 13px; font-weight: 650; }
.trade-news-unified [data-trade-topic] small { color: var(--trade-tariff-chart-muted); font-size: 10px; }
.trade-news-unified [data-trade-topic][aria-selected="true"] { color: var(--trade-tariff-chart-ink); border-bottom-color: var(--trade-tariff-chart-ink); }
.trade-news-unified [data-trade-topic]:hover { color: var(--trade-tariff-chart-ink); }
.trade-news-unified button:focus-visible,
.trade-news-unified a:focus-visible,
.trade-news-unified summary:focus-visible,
.trade-news-unified [role="tabpanel"]:focus-visible { outline: 2px solid var(--trade-tariff-chart-data); outline-offset: 3px; }
.trade-news-unified .trade-news-list { min-height: 0; }
.trade-news-unified .trade-intelligence-loading,
.trade-news-unified .trade-intelligence-empty { padding: 30px 8px; color: var(--trade-tariff-chart-muted); font-size: 12px; }
.trade-news-unified .trade-news-item { padding: 12px 0; gap: 8px 18px; border-color: var(--trade-tariff-chart-grid); }
.trade-news-unified .trade-news-item:first-child { padding-top: 2px; }
.trade-news-unified .trade-news-item-meta { gap: 8px; margin-bottom: 5px; }
.trade-news-unified .trade-news-item .trade-news-category,
.trade-news-unified .trade-news-cache-status { min-height: 0; padding: 2px 6px; border-radius: 4px; background: var(--trade-tariff-chart-quiet); color: var(--trade-tariff-chart-ink); font-size: 10px; font-weight: 500; }
.trade-news-unified .trade-news-cache-status { text-decoration: underline dotted; text-underline-offset: 3px; }
.trade-news-unified .trade-news-source,
.trade-news-unified .trade-news-date { color: var(--trade-tariff-chart-muted); font-size: 11px; }
.trade-news-unified .trade-news-item h4 { font-size: 14px; font-weight: 650; line-height: 1.6; }
.trade-news-unified .trade-news-item h4 a,
.trade-news-unified .trade-news-open { color: var(--trade-tariff-chart-ink); }
.trade-news-unified .trade-news-open { align-self: start; padding-block: 8px; font-size: 11px; }
.trade-news-unified .trade-news-item p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: var(--trade-tariff-chart-muted); font-size: 12px; line-height: 1.65; }
.trade-news-unified .trade-news-item-main:has(> .trade-news-fact-disclosure[open]) > p { display: block; overflow: visible; -webkit-line-clamp: unset; }
.trade-news-unified .trade-news-fact-disclosure { margin-top: 6px; }
.trade-news-unified .trade-news-fact-disclosure > summary { width: fit-content; padding: 6px 0; color: var(--trade-tariff-chart-muted); font-size: 11px; cursor: pointer; }
.trade-news-unified .trade-news-facts { margin: 6px 0; border-color: var(--trade-tariff-chart-grid); border-radius: 6px; background: var(--trade-tariff-chart-grid); }
.trade-news-unified .trade-news-facts > div { background: var(--trade-tariff-chart-bg); }
.trade-news-unified .trade-news-facts dt { color: var(--trade-tariff-chart-muted); font-size: 11px; }
.trade-news-unified .trade-news-facts dd { color: var(--trade-tariff-chart-ink); font-size: 12px; font-weight: 500; line-height: 1.65; }
.trade-news-unified .trade-intelligence-sources { gap: 6px 14px; margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--trade-tariff-chart-grid); color: var(--trade-tariff-chart-muted); font-size: 11px; }
.trade-news-unified .trade-intelligence-sources a { color: var(--trade-tariff-chart-ink); font-weight: 500; }
.trade-tariff-lieflat {
  gap: 6px;
  margin-top: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: var(--trade-tariff-chart-bg);
}
.trade-tariff-lieflat [hidden] { display: none !important; }
.trade-tariff-lieflat button,
.trade-tariff-lieflat a,
.trade-tariff-lieflat summary { -webkit-tap-highlight-color: transparent; }
.trade-tariff-lieflat button:focus-visible,
.trade-tariff-lieflat a:focus-visible,
.trade-tariff-lieflat summary:focus-visible {
  outline: 2px solid var(--trade-tariff-chart-data);
  outline-offset: 4px;
}
.trade-tariff-lieflat .trade-tariff-overview-heading h4 {
  color: var(--trade-tariff-chart-ink);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
}
.trade-tariff-lieflat .trade-tariff-overview-heading > div { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; }
.trade-tariff-lieflat .trade-tariff-overview-heading h4 { order: -1; }
.trade-tariff-lieflat .trade-tariff-overview-heading p { flex-basis: 100%; }
.trade-tariff-lieflat:not(.is-unavailable) .trade-tariff-overview-heading p { display: none; }
.trade-tariff-lieflat .trade-tariff-overview-heading p,
.trade-tariff-lieflat .trade-tariff-overview-verified,
.trade-tariff-lieflat .trade-tariff-overview-scope {
  color: var(--trade-tariff-chart-muted);
  line-height: 1.8;
}
.trade-tariff-lieflat .trade-tariff-overview-heading [data-tariff-overview-status] {
  color: var(--trade-tariff-chart-ink);
  background: var(--trade-tariff-chart-quiet);
  font-weight: 600;
  margin-bottom: 0;
  padding: 3px 6px;
}
.trade-tariff-lieflat .trade-tariff-overview-heading > strong {
  color: var(--trade-tariff-chart-ink);
}
.trade-tariff-lieflat .trade-tariff-overview-heading > strong.is-textual {
  color: var(--trade-tariff-chart-ink);
  background: transparent;
  border-color: var(--trade-tariff-chart-grid);
  font-size: 10px;
  padding: 5px 8px;
}
.trade-tariff-lieflat.is-stale,
.trade-tariff-lieflat.is-unavailable {
  background: var(--trade-tariff-chart-bg);
}
.trade-tariff-lieflat.is-stale .trade-tariff-overview-heading [data-tariff-overview-status] {
  color: var(--trade-tariff-chart-ink);
  background: var(--trade-tariff-chart-quiet);
  text-decoration: underline dotted;
  text-underline-offset: 3px;
}
.trade-tariff-chart-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}
.trade-tariff-chart-workspace.is-detail-open { grid-template-columns: minmax(0, 1.5fr) minmax(320px, 1fr); }
.trade-tariff-chart-comparison,
.trade-tariff-chart-rows { min-width: 0; }
.trade-tariff-chart-comparison { position: relative; }
.trade-tariff-chart-comparison > .trade-tariff-chart-heading { position: absolute; top: 0; right: 0; margin: 0; }
.trade-tariff-chart-comparison > .trade-tariff-chart-heading h5 { display: none; }
.trade-tariff-chart-comparison > .trade-tariff-chart-note { padding-right: 68px; }
.trade-tariff-chart-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 2px;
}
.trade-tariff-chart-heading h5,
.trade-tariff-chart-heading h6 {
  margin: 0;
  color: var(--trade-tariff-chart-ink);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.6;
}
.trade-tariff-chart-heading small,
.trade-tariff-chart-count,
.trade-tariff-chart-note {
  margin: 0;
  color: var(--trade-tariff-chart-muted);
  font-size: 12px;
  line-height: 1.6;
}
.trade-tariff-chart-heading small,
.trade-tariff-chart-count { flex-shrink: 0; }
.trade-tariff-chart-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin: 4px 0 8px;
}
.trade-tariff-chart-filter,
.trade-tariff-chart-scenarios button {
  width: auto;
  min-height: 32px;
  padding: 6px 11px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  box-shadow: none;
  color: var(--trade-tariff-chart-ink);
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
}
.trade-tariff-chart-filter:hover,
.trade-tariff-chart-row:hover { background: var(--trade-tariff-chart-quiet); }
.trade-tariff-chart-filter[aria-pressed="true"],
.trade-tariff-chart-scenarios button[aria-pressed="true"] {
  background: var(--trade-tariff-chart-ink);
  color: var(--trade-tariff-chart-bg);
}
.trade-tariff-chart-scale,
.trade-tariff-chart-row {
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr) 72px;
  align-items: center;
  gap: 14px;
}
.trade-tariff-chart-workspace.is-detail-open .trade-tariff-chart-scale,
.trade-tariff-chart-workspace.is-detail-open .trade-tariff-chart-row { grid-template-columns: 152px minmax(0, 1fr) 64px; }
.trade-tariff-chart-scale {
  margin: 0 10px 7px;
  color: var(--trade-tariff-chart-muted);
  font-size: 10px;
  font-variant-numeric: tabular-nums;
}
.trade-tariff-chart-scale > :last-child { text-align: right; }
.trade-tariff-chart-scale-values { display: flex; justify-content: space-between; }
.trade-tariff-chart-row {
  position: relative;
  width: 100%;
  min-width: 0;
  min-height: 48px;
  padding: 5px 10px;
  border: 0;
  border-top: 1px solid var(--trade-tariff-chart-grid);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--trade-tariff-chart-ink);
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.trade-tariff-chart-row:last-child { border-bottom: 1px solid var(--trade-tariff-chart-grid); }
.trade-tariff-chart-row[aria-pressed="true"] { background: var(--trade-tariff-chart-quiet); }
.trade-tariff-chart-name { min-width: 0; font-size: 12px; font-weight: 600; line-height: 1.5; }
.trade-tariff-chart-name small {
  display: block;
  margin-top: 2px;
  color: var(--trade-tariff-chart-muted);
  font-size: 10px;
  font-weight: 500;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.trade-tariff-chart-row svg { width: 100%; height: 32px; overflow: visible; }
.trade-tariff-chart-plot { position: relative; display: block; min-width: 0; height: 32px; }
.trade-tariff-chart-plot > svg { display: block; }
.trade-tariff-chart-alternative-marker { position: absolute; box-sizing: border-box; width: 8px; height: 8px; border: 1.25px solid var(--trade-tariff-chart-ink); border-radius: 50%; background: var(--trade-tariff-chart-bg); transform: translate(-50%, -50%); }
.trade-tariff-chart-row-rate { min-width: 0; text-align: right; overflow-wrap: anywhere; }
.trade-tariff-chart-row-rate strong {
  display: block;
  font-size: 18px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  line-height: 1.3;
  letter-spacing: -0.02em;
}
.trade-tariff-chart-row-rate small {
  display: block;
  margin-top: 4px;
  color: var(--trade-tariff-chart-muted);
  font-size: 10px;
  line-height: 1.6;
}
.trade-tariff-chart-unplotted { color: var(--trade-tariff-chart-muted); font-size: 11px; line-height: 1.8; overflow-wrap: anywhere; }
.trade-tariff-chart-row.is-textual .trade-tariff-chart-row-rate strong,
.trade-tariff-chart-row-rate.is-textual strong { font-size: 12px; }
.trade-tariff-chart-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 8px;
  color: var(--trade-tariff-chart-muted);
  font-size: 11px;
  line-height: 1.8;
}
.trade-tariff-chart-legend span { display: inline-flex; align-items: center; gap: 6px; }
.trade-tariff-chart-legend svg { width: 18px; height: 12px; }
.trade-tariff-chart-source-line {
  margin: 14px 0 0;
  color: var(--trade-tariff-chart-muted);
  font-size: 10px;
  line-height: 1.8;
  letter-spacing: 0.04em;
}
.trade-tariff-chart-detail {
  min-width: 0;
  max-height: 600px;
  padding: 0 16px 16px;
  overflow-y: auto;
  overscroll-behavior: contain;
  border-radius: 10px;
  background: var(--trade-tariff-chart-quiet);
  scroll-margin-top: 20px;
}
.trade-tariff-chart-detail-toolbar { position: sticky; top: 0; z-index: 1; display: flex; justify-content: flex-end; margin-inline: -16px; padding: 5px 12px; background: #D3D2D4; }
.trade-tariff-chart-close { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; width: auto; padding: 4px 2px; border: 0; border-radius: 0; background: transparent; color: var(--trade-tariff-chart-ink); box-shadow: none; font: inherit; font-size: 11px; cursor: pointer; }
.trade-tariff-chart-close-icon { width: 13px; height: 13px; }
.trade-tariff-chart-detail-head { display: flex; justify-content: space-between; align-items: start; gap: 16px; }
.trade-tariff-chart-detail-head h6 {
  margin: 0;
  color: var(--trade-tariff-chart-ink);
  font-size: 14px;
  line-height: 1.6;
  font-weight: 700;
}
.trade-tariff-chart-detail-group { margin: 7px 0 0; color: var(--trade-tariff-chart-muted); font-size: 11px; line-height: 1.7; }
.trade-tariff-chart-detail-rate { flex-shrink: 0; text-align: right; }
.trade-tariff-chart-detail-rate strong { font-size: 25px; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1.2; letter-spacing: -0.03em; }
.trade-tariff-chart-detail-rate small { display: block; margin-top: 5px; color: var(--trade-tariff-chart-muted); font-size: 10px; line-height: 1.6; }
.trade-tariff-chart-detail-rate.is-textual { flex: 0 1 45%; min-width: 0; overflow-wrap: anywhere; }
.trade-tariff-chart-detail-rate.is-textual strong { font-size: 16px; line-height: 1.7; white-space: normal; }
.trade-tariff-chart-detail-hts { padding-bottom: 10px; margin: 10px 0 12px; border-bottom: 1px solid var(--trade-tariff-chart-grid); color: var(--trade-tariff-chart-muted); font-size: 11px; line-height: 1.6; overflow-wrap: anywhere; }
.trade-tariff-chart-detail h5,
.trade-tariff-chart-detail h6:not(.trade-tariff-chart-detail-head h6) { margin: 14px 0 8px; color: var(--trade-tariff-chart-ink); font-size: 12px; line-height: 1.6; font-weight: 700; }
.trade-tariff-chart-scenarios { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 18px; }
.trade-tariff-chart-scenarios button { border: 1px solid var(--trade-tariff-chart-grid); padding: 8px 10px; font-size: 11px; }
.trade-tariff-chart-parts { margin: 0; }
.trade-tariff-chart-part { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--trade-tariff-chart-grid); font-size: 12px; line-height: 1.6; }
.trade-tariff-chart-part > :first-child { flex: 0 0 43%; }
.trade-tariff-chart-part strong { min-width: 0; font-size: 15px; font-weight: 700; font-variant-numeric: tabular-nums; text-align: right; overflow-wrap: anywhere; }
.trade-tariff-chart-part-note { display: block; margin: 4px 0 0; color: var(--trade-tariff-chart-muted); font-size: 10px; line-height: 1.7; }
.trade-tariff-chart-part.is-total { padding-top: 15px; border: 0; font-weight: 700; }
.trade-tariff-chart-part.is-total strong { font-size: 19px; }
.trade-tariff-chart-detail .trade-tariff-chart-note { margin: 0; font-size: 12px; line-height: 1.85; }
.trade-tariff-chart-sources { display: flex; flex-direction: column; gap: 10px; margin-top: 10px; }
.trade-tariff-chart-sources a { display: flex; align-items: start; justify-content: space-between; gap: 12px; color: var(--trade-tariff-chart-ink); font-size: 11px; line-height: 1.7; text-decoration: none; overflow-wrap: anywhere; }
.trade-tariff-chart-sources a:hover { text-decoration: underline; }
.trade-tariff-chart-sources svg { flex-shrink: 0; width: 12px; height: 12px; margin-top: 3px; }
.trade-tariff-chart-policies,
.trade-tariff-chart-scope-disclosure,
.trade-related-news { border-top: 1px solid var(--trade-tariff-chart-grid); }
.trade-related-news { margin-top: 6px; }
.trade-tariff-chart-disclosure-heading { display: flex; align-items: center; gap: 10px; min-height: 30px; padding: 4px 0; list-style: none; color: var(--trade-tariff-chart-ink); font-size: 12px; font-weight: 600; line-height: 1.5; cursor: pointer; }
.trade-tariff-chart-disclosure-heading::-webkit-details-marker { display: none; }
.trade-tariff-chart-disclosure-heading::after { content: ""; flex: 0 0 6px; height: 6px; margin-left: auto; margin-right: 3px; border-right: 1.3px solid currentColor; border-bottom: 1.3px solid currentColor; transform: rotate(45deg); }
details[open] > .trade-tariff-chart-disclosure-heading::after { transform: rotate(225deg); }
.trade-tariff-chart-disclosure-heading small { color: var(--trade-tariff-chart-muted); font-size: 10px; font-weight: 400; }
.trade-tariff-chart-scope-disclosure .trade-tariff-overview-scope { padding: 2px 0 8px; border: 0; }
.trade-tariff-chart-policies > p { margin: 8px 0 18px; color: var(--trade-tariff-chart-muted); font-size: 12px; line-height: 1.8; }
.trade-tariff-lieflat .trade-tariff-components { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 22px; margin: 0; }
.trade-tariff-chart-policy { min-width: 0; }
.trade-tariff-chart-policy summary { position: relative; padding-right: 20px; list-style: none; cursor: pointer; color: var(--trade-tariff-chart-ink); font-size: 12px; font-weight: 600; line-height: 1.7; }
.trade-tariff-chart-policy summary::-webkit-details-marker { display: none; }
.trade-tariff-chart-disclosure-icon { position: absolute; right: 0; top: 4px; width: 12px; height: 12px; }
.trade-tariff-chart-policy[open] .trade-tariff-chart-disclosure-icon .vertical,
.trade-tariff-chart-policy[open] .trade-tariff-chart-disclosure-vertical { display: none; }
.trade-tariff-chart-policy-rate { display: block; margin: 8px 0; color: var(--trade-tariff-chart-muted); font-size: 11px; font-weight: 400; line-height: 1.75; }
.trade-tariff-chart-policy-content { color: var(--trade-tariff-chart-muted); font-size: 11px; line-height: 1.85; }
.trade-tariff-chart-policy-content p { margin: 10px 0; }
.trade-tariff-chart-policy-content a { display: inline-flex; gap: 6px; align-items: center; color: var(--trade-tariff-chart-ink); }
.trade-tariff-chart-policy-content svg { width: 12px; height: 12px; }
.trade-tariff-lieflat .trade-tariff-overview-scope { padding-top: 19px; border-color: var(--trade-tariff-chart-grid); font-size: 11px; }
.trade-tariff-chart-workspace.is-revealing .trade-tariff-chart-tick { animation: trade-tariff-chart-reveal 900ms ease both; }
.trade-tariff-chart-announcement { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@keyframes trade-tariff-chart-reveal { from { opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .trade-tariff-chart-workspace.is-revealing .trade-tariff-chart-tick { animation: none; } }
@container (max-width: 1000px) {
  .trade-tariff-chart-workspace.is-detail-open { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .trade-tariff-lieflat .trade-tariff-components { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 780px) {
  .trade-news-unified { padding: 14px 12px; }
  .trade-news-unified .trade-intelligence-topics { justify-content: space-between; gap: 6px; margin-bottom: 12px; }
  .trade-news-unified [data-trade-topic] { flex-direction: column; justify-content: center; gap: 2px; padding: 7px 2px; }
  .trade-news-unified [data-trade-topic] strong { font-size: 12px; }
  .trade-news-unified [data-trade-topic] small { font-size: 10px; }
  .trade-news-unified .trade-news-item { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .trade-news-unified .trade-news-open { width: fit-content; padding: 8px 0; }
  .trade-news-unified .trade-news-facts { grid-template-columns: minmax(0, 1fr); }
  .trade-tariff-lieflat { gap: 8px; padding: 0; }
  .trade-tariff-lieflat .trade-tariff-overview-heading { align-items: flex-start; gap: 12px; }
  .trade-tariff-lieflat .trade-tariff-overview-heading h4 { font-size: 13px; }
  .trade-tariff-lieflat .trade-tariff-overview-heading > strong.is-textual { max-width: 68px; padding: 5px 7px; font-size: 10px; }
  .trade-tariff-chart-workspace { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .trade-tariff-chart-heading h5, .trade-tariff-chart-heading h6 { font-size: 12px; }
  .trade-tariff-chart-scale, .trade-tariff-chart-row,
  .trade-tariff-chart-workspace.is-detail-open .trade-tariff-chart-scale,
  .trade-tariff-chart-workspace.is-detail-open .trade-tariff-chart-row { grid-template-columns: 120px minmax(0, 1fr) 54px; gap: 7px; }
  .trade-tariff-chart-scale { margin-inline: 0; font-size: 9px; }
  .trade-tariff-chart-row { padding: 8px 0; min-height: 62px; }
  .trade-tariff-chart-name { font-size: 12px; }
  .trade-tariff-chart-name small { font-size: 10px; }
  .trade-tariff-chart-row-rate strong { font-size: 17px; }
  .trade-tariff-chart-filters { gap: 0; }
  .trade-tariff-chart-filter { padding: 7px 8px; font-size: 11px; }
  .trade-tariff-chart-detail { max-height: none; padding: 0 16px 16px; overflow: visible; }
  .trade-tariff-chart-detail-toolbar { position: static; border-radius: 10px 10px 0 0; }
  .trade-tariff-chart-detail-head h6 { font-size: 14px; }
  .trade-tariff-chart-detail-rate strong { font-size: 26px; }
  .trade-tariff-chart-legend { gap: 10px; font-size: 10px; }
  .trade-tariff-lieflat .trade-tariff-components { grid-template-columns: minmax(0, 1fr); gap: 15px; }
  .trade-tariff-chart-policy { padding-bottom: 14px; border-bottom: 1px solid var(--trade-tariff-chart-grid); }
  .trade-tariff-chart-policy:last-child { border: 0; }
}
@media (max-width: 640px) {
  .app-maintenance-status { padding: 12px 16px; align-items: flex-start; flex-direction: column; gap: 10px; }
  .app-maintenance-status button { align-self: flex-start; }
}
