✓ 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 (slider label says top=air/bottom=deep, but slider value 0→100 maps crown from top to bottom, which may render correctly depending on vertical slider orientation quirks; label says "Oben=Luft, Unten=Tief" which is correct labeling but the slider's rtl/direction:rtl combo needs scrutiny) — physics values are solid (gold 19.3, alloy 13.0, same 1000g mass, correct displacement ratio), ASCII art is clean, smooth animation with splash particles and Heureka trigger all work, but mass/volume/density values in data panel are static rather than truly "live" (displaced water and buoyancy do update live).
Slider direction is inverted (slider label says top=air/bottom=deep, but slider value 0→100 maps crown from top to bottom, which may render correctly depending on vertical slider orientation quirks; label says "Oben=Luft, Unten=Tief" which is correct labeling but the slider's rtl/direction:rtl combo needs scrutiny) — physics values are solid (gold 19.3, alloy 13.0, same 1000g mass, correct displacement ratio), ASCII art is clean, smooth animation with splash particles and Heureka trigger all work, but mass/volume/density values in data panel are static rather than truly "live" (displaced water and buoyancy do update live).