Symptom

The SVG panel in diagram__live-overlay showed only a muted placeholder label “SVG overlay” centered on a surfaceVariant background. The right panel occupied ~45% of the screen but provided no visual hierarchy cue — the two halves of the screen had equal weight with no focal point on the empty side.

Root cause

DiagramScreen.kt had no else branch in its loading/error/content when block. When the source URL was blank and loading completed, the bordered box was empty. The screenshot scenario in Scenarios.kt reflected this as a bare Text("SVG overlay") placeholder. The panel background used surfaceVariant, which is too close in lightness to the left node-list panel; a loaded SVG would not read as figure against ground.

Fix

Prevention

Empty states are UI states. Any when block in a loading composable (loading / error / content) needs an else branch that communicates intent to the user. Screenshot tests that use placeholder strings (“SVG overlay”, “TODO”) instead of a real composable subtree will mask this gap at review time — replace placeholders with the actual empty-state composable as soon as it exists.