/* Lead upload modal. Scoped to prevent the global form rules from distorting it. */
#lead-import-modal .import-card {
  width: min(1040px, 96vw);
  max-height: min(92vh, 900px);
  padding: 34px 38px 30px;
  overflow: auto;
}

#lead-import-modal .import-card > h2 { margin: 6px 0 8px; }
#lead-import-modal .import-card > p { max-width: 820px; margin: 0 0 22px; line-height: 1.55; }
#lead-import-modal[data-import-mode="csv"] .call-paper-email-inbox,
#lead-import-modal[data-import-mode="csv"] .call-paper-paste,
#lead-import-modal[data-import-mode="csv"] #call-paper-analysis { display: none !important; }

#lead-import-modal .import-top {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 18px 20px;
  margin: 0 0 24px;
}

#lead-import-modal .import-top label {
  display: grid;
  min-width: 0;
  gap: 8px;
  margin: 0;
  color: #c7cfdd;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.3;
}

#lead-import-modal .import-top input,
#lead-import-modal .import-top select {
  width: 100%;
  min-width: 0;
  height: 46px;
  margin: 0;
  padding: 0 13px;
  line-height: 1.2;
}

#lead-import-modal #lead-csv {
  padding: 6px;
  overflow: hidden;
  color: #c8d0df;
  line-height: 30px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#lead-import-modal #lead-csv::file-selector-button {
  height: 30px;
  margin: 0 10px 0 0;
  padding: 0 12px;
  border: 1px solid #78632e;
  border-radius: 6px;
  background: linear-gradient(145deg, #3a321d, #201b10);
  color: #f1d37a;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

#lead-import-modal #lead-csv::file-selector-button:hover {
  border-color: #bf8f2f;
  background: #40351d;
}

#lead-import-modal .custom-field-row {
  display: grid;
  grid-template-columns: minmax(180px, 1.2fr) minmax(140px, .55fr) minmax(220px, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin: 20px 0;
  padding: 18px;
  border: 1px solid #303c55;
  border-radius: 10px;
  background: #0d1523;
}

#lead-import-modal .custom-field-row input,
#lead-import-modal .custom-field-row select,
#lead-import-modal .custom-field-row button {
  height: 44px;
  margin: 0;
}

#lead-import-modal .custom-field-row button,
#lead-import-modal .import-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 11px 18px;
  line-height: 1.15;
  white-space: nowrap;
}

#lead-import-modal #lead-mapping-step > div:nth-child(2) {
  margin: 4px 0 20px;
  padding: 18px;
  border: 1px solid #34405a;
  border-radius: 10px;
  background: #101827;
}

#lead-import-modal #lead-mapping-step > div:nth-child(2) > strong { display: block; margin-bottom: 4px; }

#lead-import-modal .lead-advisor-choices {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0 0;
}

#lead-import-modal .lead-advisor-choices label {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  margin: 0;
  padding: 10px 12px;
}

#lead-import-modal .lead-advisor-choices input { flex: 0 0 auto; }

#lead-import-modal .mapping-empty {
  margin: 16px 0;
  padding: 24px;
  border: 1px dashed #47536e;
  border-radius: 10px;
  color: var(--muted);
  text-align: center;
}

#lead-import-modal .advisor-assignment-help {
  display: block;
  margin-top: 5px;
  color: #aeb8ca;
}

#lead-import-modal .mapping-table {
  width: 100%;
  border-collapse: collapse;
}

#lead-import-modal .mapping-table th,
#lead-import-modal .mapping-table td {
  padding: 11px;
  border-bottom: 1px solid var(--line);
  text-align: left;
}

#lead-import-modal .mapping-table th {
  color: var(--gold-hi);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
}

#lead-import-modal .mapping-table select {
  min-width: 190px;
  margin: 0;
}

#lead-import-modal .mapping-table input[type="checkbox"] {
  width: 20px;
  height: 20px;
  margin: 0;
}

#lead-import-modal .import-actions {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid #2d3850;
}

@media (max-width: 820px) {
  #lead-import-modal .import-card { padding: 30px 20px; }
  #lead-import-modal .import-top,
  #lead-import-modal .custom-field-row { grid-template-columns: 1fr; }
  #lead-import-modal .lead-advisor-choices { grid-template-columns: 1fr; }
  #lead-import-modal .custom-field-row button { width: 100%; }
  #lead-import-modal .mapping-table { min-width: 720px; }
  #lead-import-modal #mapping-table-wrap { overflow: auto; }
}
