✓ 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 which is correct, but writing-mode/appearance means slider thumb at top=0, which is air — actually direction may be browser-dependent; crown motion formula puts crowns starting at TANK_WATER_START+0-40px=60px at value=0, moving down as value increases, which is correct conceptually, but vertical slider with writing-mode bt-lr means dragging UP increases value, making it so bottom=air/top=water from user perspective — inverted UX); mass/volume/density values are static (not live-updating); no smooth fall animation distinct from slider motion; water-height calculation uses nonsensical pixel-unit area formula producing negligible water rise.
Slider direction is inverted (value=0 is top/air which is correct, but writing-mode/appearance means slider thumb at top=0, which is air — actually direction may be browser-dependent; crown motion formula puts crowns starting at TANK_WATER_START+0-40px=60px at value=0, moving down as value increases, which is correct conceptually, but vertical slider with writing-mode bt-lr means dragging UP increases value, making it so bottom=air/top=water from user perspective — inverted UX); mass/volume/density values are static (not live-updating); no smooth fall animation distinct from slider motion; water-height calculation uses nonsensical pixel-unit area formula producing negligible water rise.