Hello. Here is an optimized version for your code + solution:
#let conf(title: none, doc) = {
set heading(numbering: "1.1")
set pagebreak(weak: true)
v(15%)
align(center, text(17pt, strong(title)))
pagebreak()
set page(numbering: "1")
show outline.entry.where(level: 1): set block(above: 12pt)
show outline.entry.where(level: 1): strong
context if query(<appendix-exists>).len() == 0 { outline() } else {
outline(target: selector(heading).before(locate(<appendix-exists>)))
pagebreak()
outline(title: [Appendix], target: heading.where(supplement: [Appendix]))
}
pagebreak()
doc
}
#let appendix(body) = {
set heading(numbering: "A", supplement: [Appendix])
counter(heading).update(0)
[#metadata(none)<appendix-exists>]
body
}
#show: conf.with(title: "Lorem")
= About
#lorem(16)
== References
#lorem(32)
= Introduction
#lorem(16)
#show: appendix
= Tables
#lorem(16)
= Graphs
#lorem(16)