Switch the active chart between "status" (current findings) and "plan"
(proposed treatment). The first time "plan" is entered, it is deep-cloned
from "status" (see cloneChart); later switches reuse the existing
plan chart untouched. Re-renders every tooth from the newly active chart
via the SAME full-repaint mechanism importStatus() uses, so no new
render path is introduced and SVG output stays byte-identical to the
single-chart render (parity is unaffected — only WHICH chart is active
changes, never how a chart renders).
Switch the active chart between "status" (current findings) and "plan" (proposed treatment). The first time "plan" is entered, it is deep-cloned from "status" (see cloneChart); later switches reuse the existing plan chart untouched. Re-renders every tooth from the newly active chart via the SAME full-repaint mechanism
importStatus()uses, so no new render path is introduced and SVG output stays byte-identical to the single-chart render (parity is unaffected — only WHICH chart is active changes, never how a chart renders).