/* Sprint 12.5 — Commercial CRM */
.tools-crm-modal .tools-crm-body {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.crm-kpi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
  gap: 8px;
  margin-bottom: 10px;
}

.crm-kpi-card {
  padding: 10px;
  border: var(--borde-fino, 1px solid #cbd5e1);
  border-radius: 10px;
  background: var(--gris-0, #fff);
  text-align: center;
}

.crm-kpi-card__val {
  display: block;
  font-size: 15px;
  font-weight: 900;
  color: var(--texto-fuerte, #0f172a);
}

.crm-kpi-card__lbl {
  font-size: 10px;
  font-weight: 700;
  color: var(--texto-suave, #64748b);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.crm-kanban {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 8px;
  min-height: 200px;
}

.crm-kanban-col {
  flex: 0 0 168px;
  min-width: 168px;
  background: var(--gris-100, #f1f5f9);
  border: var(--borde-fino, 1px solid #cbd5e1);
  border-radius: 10px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 420px;
  overflow-y: auto;
}

.crm-kanban-col__h {
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--texto-fuerte, #0f172a);
}

.crm-kanban-col__n {
  color: var(--texto-suave, #64748b);
}

.crm-kanban-card {
  background: var(--gris-0, #fff);
  border: var(--borde-fino, 1px solid #cbd5e1);
  border-radius: 8px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.crm-kanban-card__t {
  font-size: 12px;
  font-weight: 800;
  color: var(--texto-fuerte, #0f172a);
}

.crm-kanban-card__s {
  font-size: 11px;
  color: var(--texto-suave, #64748b);
}

.crm-kanban-card__m {
  font-size: 12px;
  font-weight: 700;
}

.crm-stage-sel {
  font-size: 11px;
  padding: 4px 6px;
  min-height: 32px;
}

.crm-badge {
  font-size: 11px;
  font-weight: 700;
  color: var(--texto-suave, #64748b);
}

.crm-form-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: flex-end;
}

.crm-form-grid .fg {
  flex: 1 1 140px;
  min-width: 120px;
}
