✓ Two crowns ✓ Same mass, different density ✓ Vertical slider ✓ Slider works ✓ Slider controls crowns — Slider direction correct ✓ Full slider range — Fall animation ✓ Water displacement ✓ Rising water level ✓ Splash effects — Physics correct ✓ Live mass value ✓ Live volume value ✓ Live density value ✓ Live displaced water ✓ Gilded displaces more ✓ Heureka animation ✓ No external deps ✓ Light bg / dark text ✓ Self-contained HTML
Slider direction is inverted (value=0 is top/air, but HTML range inputs with slider-vertical render min at bottom, so top of slider = 100 = submerged — actually reversed from spec); buoyancy is shown in mN but computed as g·cm³·9.81 without proper unit conversion (9.81 mN ≠ 9.81 mN for 1 cm³); water level change math is implausible (3.5 cm³ total displaced causes essentially no visual rise); no smooth fall animation (crowns jump linearly with no easing or gravity); splash only triggers in the narrow 50–75% band and fires every input event rather than once on entry.
Slider direction is inverted (value=0 is top/air, but HTML range inputs with slider-vertical render min at bottom, so top of slider = 100 = submerged — actually reversed from spec); buoyancy is shown in mN but computed as g·cm³·9.81 without proper unit conversion (9.81 mN ≠ 9.81 mN for 1 cm³); water level change math is implausible (3.5 cm³ total displaced causes essentially no visual rise); no smooth fall animation (crowns jump linearly with no easing or gravity); splash only triggers in the narrow 50–75% band and fires every input event rather than once on entry.