/* TeamAct CRM V12.3 — compact Add/Edit Lead forms.
   Goal: the complete lead form stays inside one desktop viewport with no vertical form scrolling.
   Scope is intentionally limited to crmFormModal(layout:'lead-entry'). */

body:has(dialog.crm-lead-entry-dialog[open]){
  overflow:hidden !important;
}

.crm-dialog.crm-lead-entry-dialog{
  width:min(1180px,calc(100vw - 36px)) !important;
  max-width:1180px !important;
  max-height:calc(100dvh - 24px) !important;
  overflow:hidden !important;
  border-radius:16px !important;
}

.crm-lead-entry-dialog .crm-dialog-form{
  max-height:calc(100dvh - 24px);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}

.crm-lead-entry-dialog .crm-dialog-header{
  flex:0 0 auto;
  gap:10px !important;
  padding:12px 16px 10px !important;
  background:#fff !important;
}
.crm-lead-entry-dialog .crm-dialog-symbol{
  width:34px !important;
  height:34px !important;
  border-radius:9px !important;
  font-size:17px !important;
  box-shadow:none !important;
}
.crm-lead-entry-dialog .crm-dialog-heading h2{
  font-size:18px !important;
  line-height:1.25 !important;
  letter-spacing:-.2px !important;
}
.crm-lead-entry-dialog .crm-dialog-heading p{
  margin-top:2px !important;
  font-size:12px !important;
  line-height:1.35 !important;
}
.crm-lead-entry-dialog .crm-dialog-x{
  width:29px !important;
  height:29px !important;
  min-height:29px !important;
  border-radius:7px !important;
}

.crm-lead-entry-dialog .crm-dialog-content{
  flex:1 1 auto;
  min-height:0;
  overflow:visible !important;
  padding:10px 16px 8px !important;
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-content:start;
  gap:8px 10px;
}
.crm-lead-entry-dialog .crm-dialog-field{
  min-width:0;
  margin:0 !important;
}
.crm-lead-entry-dialog .crm-dialog-field label{
  margin:0 0 4px !important;
  font-size:11.5px !important;
  line-height:1.2 !important;
  font-weight:600 !important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.crm-lead-entry-dialog .crm-dialog-field input,
.crm-lead-entry-dialog .crm-dialog-field select,
.crm-lead-entry-dialog .crm-dialog-field textarea{
  min-height:35px !important;
  height:35px;
  padding:7px 9px !important;
  border-radius:7px !important;
  font-size:13px !important;
  line-height:1.25 !important;
}
.crm-lead-entry-dialog .crm-dialog-field textarea{
  height:50px !important;
  min-height:50px !important;
  resize:none !important;
}
.crm-lead-entry-dialog .crm-dialog-field small{
  margin-top:3px !important;
  font-size:10.5px !important;
}

/* Give narrative fields room without making the form tall. */
.crm-lead-entry-dialog .crm-dialog-field[data-field-name="address_line"],
.crm-lead-entry-dialog .crm-dialog-field[data-field-name="notes"]{
  grid-column:span 2;
}

.crm-lead-entry-dialog .crm-dialog-error,
.crm-lead-entry-dialog .crm-dialog-question,
.crm-lead-entry-dialog .crm-dialog-content > .lead-id-warning,
.crm-lead-entry-dialog .crm-dialog-content > .note,
.crm-lead-entry-dialog .crm-dialog-content > p{
  grid-column:1/-1;
}
.crm-lead-entry-dialog .crm-dialog-error:not([hidden]){
  margin:0 !important;
  padding:7px 9px !important;
  border-radius:7px !important;
  font-size:11px !important;
}

.crm-lead-entry-dialog .crm-dialog-footer{
  flex:0 0 auto;
  min-height:48px;
  gap:7px !important;
  padding:8px 16px 10px !important;
  background:#fbfcfe !important;
}
.crm-lead-entry-dialog .crm-dialog-progress{
  font-size:10px !important;
}
.crm-lead-entry-dialog .crm-dialog-cancel,
.crm-lead-entry-dialog .crm-dialog-primary{
  min-height:34px !important;
  height:34px;
  padding:6px 13px !important;
  border-radius:7px !important;
  font-size:12px !important;
}

@media(max-width:1050px){
  .crm-dialog.crm-lead-entry-dialog{width:calc(100vw - 20px) !important;max-height:calc(100dvh - 16px) !important}
  .crm-lead-entry-dialog .crm-dialog-form{max-height:calc(100dvh - 16px)}
  .crm-lead-entry-dialog .crm-dialog-content{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px 9px}
}

@media(max-width:760px){
  .crm-dialog.crm-lead-entry-dialog{width:calc(100vw - 8px) !important;max-height:calc(100dvh - 8px) !important;border-radius:12px !important}
  .crm-lead-entry-dialog .crm-dialog-form{max-height:calc(100dvh - 8px)}
  .crm-lead-entry-dialog .crm-dialog-header{padding:8px 10px 7px !important}
  .crm-lead-entry-dialog .crm-dialog-symbol{display:none !important}
  .crm-lead-entry-dialog .crm-dialog-heading h2{font-size:16px !important}
  .crm-lead-entry-dialog .crm-dialog-heading p{font-size:10.5px !important}
  .crm-lead-entry-dialog .crm-dialog-content{padding:7px 10px 6px !important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 7px}
  .crm-lead-entry-dialog .crm-dialog-field label{font-size:10px !important;margin-bottom:2px !important}
  .crm-lead-entry-dialog .crm-dialog-field input,
  .crm-lead-entry-dialog .crm-dialog-field select,
  .crm-lead-entry-dialog .crm-dialog-field textarea{height:31px;min-height:31px !important;padding:5px 7px !important;font-size:12px !important}
  .crm-lead-entry-dialog .crm-dialog-field textarea{height:38px !important;min-height:38px !important}
  .crm-lead-entry-dialog .crm-dialog-footer{padding:6px 10px 7px !important;min-height:42px}
  .crm-lead-entry-dialog .crm-dialog-cancel,
  .crm-lead-entry-dialog .crm-dialog-primary{height:31px;min-height:31px !important;padding:5px 10px !important}
}
