Single-item enumeration item takes style from label

I try to change the style of enumeration labels, but revert the change for the item text.
This does however not work for single-item (sub) enumerations:

#set enum(numbering: "a.1.i.")
#show enum: set text(blue, weight: "bold")
#show enum.item: set text(black, weight: "regular")

+ wrong
  + correct
  + correct
    + wrong
  + correct
    + correct
      + still wrong#parbreak()
    + correct

Adding a paragraph break as suggested for a related issue here does not help:

Based on this thread I can get the desired result, but it looks far less elegant that the snippet above:

#set enum(
  numbering: (..n) => {
    n = n.pos()
    let i = n.len()
    text(blue, weight: "bold", numbering(
      ("a.", "1.", "i.").at(calc.rem(i, 3) - 1),
      ..n.slice(i - 1)))
  },
  full: true,
)

+ now correct
  + correct
  + correct
    + also correct
  + correct
    + correct
      + also correct#parbreak()
    + correct

Is there a way to fix the first snippet, or is the second one ‘the right way’ to style enumeration labels?