Controlled visual source-generation trial. Do not call shell, browser, web, file-writing, delegation, or image-generation tools. Return the requested complete source directly in your final answer. Do not save files yourself. The evaluator saves your answer verbatim (stripping only a surrounding Markdown fence), supplies the stated libraries, and runs it. You may use an image-reading tool ONLY to inspect the provided reference-plan.png when present. No external assets or network. No evaluator feedback or repair round. Return one complete HTML document, no markdown. It must run at 1280x900 and on mobile. Use real Three.js meshes, perspective, lighting and shadows, not a flat screenshot. Use an importmap mapping 'three' to './vendor/three.module.js' and 'three/addons/' to './vendor/addons/'. These are Three.js 0.180.0. Import OrbitControls and GLTFExporter from their standard addon paths. No other libraries, fetch, external assets, fonts, or network. Provide drag-to-orbit, zoom, Reset view, and an Export GLB button that downloads actual binary glTF of the model (not lights, camera or grid). The initial view must show the entire subject. Use English UI labels, refined typography using system fonts, restrained layout, and do not let controls cover the model. Honor prefers-reduced-motion. Expose window.benchmark = {scene, camera, renderer, model, controls} so the evaluator can inspect the real scene; model is the THREE.Group of exportable objects. Name important meshes semantically. Do not use deprecated Three.js APIs. Keep all code self-contained except the provided library files. Create a beautiful interactive 3D physics teaching scene showing a small ball launched from a pedestal toward an open basket on a grassy measuring field. World units meters, gravity g=9.81 m/s^2, no drag, launch from y=0 and land at y=0. Include launch speed 2..20 m/s and elevation angle 5..85 degrees sliders (defaults 10 and 45), launch/pause/reset controls, a visible trajectory arc and a moving ball that follows the analytic ballistic equations. Show flight time, maximum height and horizontal range, all computed from current controls. Basket center is x=10,z=0. Ground and markings should make distances understandable. A hit means landing horizontal distance within 0.5m of basket center; report hit or miss after landing. Do not claim this is a real robot controller. Export GLB exports the static scene. Expose window.benchmark.physics = {g:9.81, flightTime, range, maxHeight} containing values at the current sliders. Render initial trajectory immediately without needing Play. Use a fixed simulation time when paused and avoid an endless camera rotation.