Leading and justification for index entries in in-dexter

It is not exactly those lines. Remember the surround parameter from earlier? This is where you can just adjust the hanging-indent. Just make sure that the first-line-indent is also set to some relevant value.

Adapted from the default surround:

make-index(
  ...
  surround: body => {
    set par(
      first-line-indent: 0pt,
      spacing: 0.65em, 
      hanging-indent: 2em) // Try this if you use only level 1 and 2
    body
  },
...
)

Note: Also be aware of the box(width: lvl * 1em) that is inserted in front of every entry, which creates a manual first line indent. This may interfere with the way the hanging indent is displayed depending of the nested level. If you use nested level 3, a value over 2em would produce a visible result.

MWE with 3 nested levels
#import "@preview/in-dexter:0.7.2": *
#set page(paper: "a7")

#index("level1")
// Nested level3
#index("level2", lorem(8))

#index("level3", lorem(8), lorem(12))

// Debug - show the manual `first line indent`
#set box(stroke: red + 0.5pt)

#make-index(
  title: "INDEX",
  inline-page-numbers: true, // Custom parameter
  entry-casing: x => x,
  use-bang-grouping: true,
  use-page-counter: true,
  sort-order: upper,
  surround: body => {
    set par(
      first-line-indent: 0em,
      spacing: 0.65em,
      hanging-indent: 2.5em,
    )
    body
  },
)