✓ 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 (label says "Oben=Luft" at top but the CSS writing-mode+direction combo for vertical-lr/rtl makes the slider value increase downward visually yet the getCrownY maps slider=0→crown in air correctly in code, however the `computeFraction` approximation hardcodes entry around t=0.28–0.88 rather than deriving it geometrically, and there is no genuine fall/drop animation — crowns glide linearly rather than falling under gravity.
Slider direction is inverted (label says "Oben=Luft" at top but the CSS writing-mode+direction combo for vertical-lr/rtl makes the slider value increase downward visually yet the getCrownY maps slider=0→crown in air correctly in code, however the `computeFraction` approximation hardcodes entry around t=0.28–0.88 rather than deriving it geometrically, and there is no genuine fall/drop animation — crowns glide linearly rather than falling under gravity.