# Click the next slide thumbnail to hard-swap the main slide and jump the red selection outline Manual DaVinci Resolve / Fusion construction guide generated from the recipe. It is not a tested .drp. The accompanying Remotion project (recipe.json) is the executable definition; the numbers below are copied from it. Neither construction establishes source fidelity: this is an original vector approximation of an inspected editing moment. ## Source and clock Reference: OpenAI's "Work with docs, sheets, and slides in ChatGPT" (E3dDr_QtBuo), published 2026-07-23. Source interval [1688, 1740) on the 24000/1001 fps master: 52 frames, 2.168833 s. Local frame 0 = source frame 1688. Create a 1920x1080 progressive timeline at 24000/1001 fps and a Fusion composition exactly 52 frames long. Keep integer frames; do not round the frame rate. Background field: #1f1f1f. Export silent H.264 yuv420p to match the intended playback container. ## Observation A dark slide editor: thumbnail rail on the left with slide 4 outlined in red, the main canvas showing slide 4 (a line chart titled 'Short videos lead'), and a presenter PiP top-right. The pointer travels down onto thumbnail 5 during local frames 0 to 14 and clicks at ~21 (master 1709). On the next frame the main canvas shows slide 5 (a horizontal bar chart, 'Sizzle leads engagement') and the red outline sits on thumbnail 5. No transition; the new slide holds to the end. ## Mechanism Selection-driven hard swap: a click on a list item replaces the detail view in one frame and the selection indicator steps to the item, with no crossfade or motion. ## Phases (local frames) - 0: Slide 4 shown, pointer approaching thumbnail 5 - 21: Click on thumbnail 5 - 22: Main slide and red outline swap - 40: Hold ## Layer inventory (absolute 1920x1080 top-left pixels, back to front) - ribbon [rect] at (0, 0) size 1920x70 fill #2b2b2b - ribbon-t [text] at (40, 24) text "Paste Slides Insert Draw Design Transitions Animations Review View" 15px weight 400 #c9c9c9 - rail [rect] at (0, 70) size 320x1010 fill #232323 - tn-3 [text] at (46, 140) text "3" 13px weight 400 #bdbdbd - th-3 [rect] at (70, 100) size 214x120 radius 3 fill #ffffff - th3-a [rect] at (84, 112) size 186x30 radius 2 fill #4b8ef0 - th3-b [rect] at (84, 150) size 52x50 radius 2 fill #dbe7fb - th3-c [rect] at (144, 150) size 52x50 radius 2 fill #dbe7fb - th3-d [rect] at (204, 150) size 52x50 radius 2 fill #dbe7fb - tn-4 [text] at (46, 290) text "4" 13px weight 400 #bdbdbd - th-4 [rect] at (70, 250) size 214x120 radius 3 fill #ffffff - th4-line [path] at (100, 290) stroke #2b6fd6 2px - th4-title [rect] at (84, 262) size 80x6 radius 3 fill #cfcfcf - tn-5 [text] at (46, 440) text "5" 13px weight 400 #bdbdbd - th-5 [rect] at (70, 400) size 214x120 radius 3 fill #ffffff - th5-title [rect] at (84, 412) size 90x6 radius 3 fill #cfcfcf - th5-a [rect] at (100, 430) size 150x12 fill #2b5fd9 - th5-b [rect] at (100, 446) size 110x12 fill #a9c1f5 - th5-c [rect] at (100, 462) size 90x12 fill #c9d7f7 - th5-d [rect] at (100, 478) size 60x12 fill #39c3e6 - th5-e [rect] at (100, 494) size 40x12 fill #1f5bd0 - tn-6 [text] at (46, 590) text "6" 13px weight 400 #bdbdbd - th-6 [rect] at (70, 550) size 214x120 radius 3 fill #ffffff - th6-title [rect] at (84, 562) size 100x6 radius 3 fill #cfcfcf - th6-a [rect] at (84, 580) size 186x8 radius 1 fill #1a1a1a - th6-b [rect] at (84, 596) size 186x8 radius 1 fill #e0e0e0 - th6-c [rect] at (84, 612) size 186x8 radius 1 fill #e0e0e0 - selection [rect] at (64, 244) size 226x132 radius 5 stroke #e0453b 3px keyframes y: f21=244, f22=394 (hold) - slide [rect] at (420, 110) size 1180x740 radius 2 fill #ffffff - slide-a [group] at (420, 110) size 1180x740 visible [0, 22) - title-a [text] at (480, 160) text "Short videos lead" 30px weight 600 #1a1a1a - axis [path] at (720, 730) stroke #cfcfcf 1.5px - ylabels [text] at (660, 262) text "80% / 70% / 60% / 50% / 40%" 13px weight 400 #8a8a88 - series [path] at (720, 730) stroke #2b6fd6 3px - p1 [ellipse] at (754, 304) size 12x12 fill #2b6fd6 - p2 [ellipse] at (914, 344) size 12x12 fill #2b6fd6 - p3 [ellipse] at (1074, 424) size 12x12 fill #2b6fd6 - p4 [ellipse] at (1234, 534) size 12x12 fill #2b6fd6 - p5 [ellipse] at (1334, 644) size 12x12 fill #2b6fd6 - xlabels [text] at (740, 746) text "Under 60 s 60–74 s 75–89 s 90–119 s 120+ s" 13px weight 400 #8a8a88 - xaxis [text] at (720, 774) size 640x0 text "Runtime band" 14px weight 400 #6f6f6d - slide-b [group] at (420, 110) size 1180x740 visible [22, 52) - title-b [text] at (480, 160) text "Sizzle leads engagement" 30px weight 600 #1a1a1a - bl-0 [text] at (480, 272) size 200x0 text "Sizzle" 15px weight 400 #4a4a48 - bar-0 [rect] at (700, 260) size 700x46 radius 2 fill #2b5fd9 - bv-0 [text] at (1412, 272) text "Average engagement · 7.6%" 13px weight 400 #6f6f6d - bl-1 [text] at (480, 364) size 200x0 text "Product walkthrough" 15px weight 400 #4a4a48 - bar-1 [rect] at (700, 352) size 560x46 radius 2 fill #a9c1f5 - bv-1 [text] at (1272, 364) text "Average engagement · 5.3%" 13px weight 400 #6f6f6d - bl-2 [text] at (480, 456) size 200x0 text "Talking head" 15px weight 400 #4a4a48 - bar-2 [rect] at (700, 444) size 470x46 radius 2 fill #c9d7f7 - bv-2 [text] at (1182, 456) text "Average engagement · 4.6%" 13px weight 400 #6f6f6d - bl-3 [text] at (480, 548) size 200x0 text "Walkthrough" 15px weight 400 #4a4a48 - bar-3 [rect] at (700, 536) size 300x46 radius 2 fill #39c3e6 - bv-3 [text] at (1012, 548) text "Average engagement · 3.5%" 13px weight 400 #6f6f6d - bl-4 [text] at (480, 640) size 200x0 text "Customer story" 15px weight 400 #4a4a48 - bar-4 [rect] at (700, 628) size 220x46 radius 2 fill #1f5bd0 - bv-4 [text] at (932, 640) text "Average engagement · 3.4%" 13px weight 400 #6f6f6d - xaxis-b [text] at (700, 774) size 700x0 text "Average engagement" 14px weight 400 #6f6f6d - pip [rect] at (1660, 110) size 220x280 radius 10 fill #3a3d44 - pip-head [ellipse] at (1730, 170) size 80x96 fill #6c7079 - pip-body [rect] at (1700, 280) size 140x110 radius 30 fill #5a5e66 - pointer [cursor] at (190, 470) clicks at [21] keyframes tx: f0=-60, f14=0 (out) keyframes ty: f0=90, f14=0 (out) ## Construction steps 1. Timeline 1920x1080 at 23.976 fps; Fusion composition 52 frames. Local 0 = master frame 1688. 2. Rail: four 214x120 white thumbnails at y=100, 250, 400, 550 inside a 320 px dark rail; main slide 1180x740 white at (420,110) with drop shadow. 3. Selection outline: 226x132 rectangle, 3 px #e0453b stroke, radius 5; keyframe Y from 244 to 394 at frame 22 with a hold (step) interpolation. 4. Slide content: two groups. Group A (title + line chart) visible frames 0-21; group B (title + five horizontal bars with value captions) from frame 22. Use a cut, not a dissolve. 5. Pointer: starts near (130,560), eases onto thumbnail 5 by frame 14, click ring at 21. 6. Easy mistake: animating the outline's Y with default smooth interpolation; it must jump. ## Content variants Default copy: - titleA: Short videos lead - axisA: Runtime band - titleB: Sizzle leads engagement - axisB: Average engagement Adaptation changes: - titleA: Retention drops after week two - axisA: Week of subscription - titleB: Referrals convert best - axisB: Conversion by channel ## Limits Easing names map to Fusion spline shapes: linear = linear, in/out/inOut = ease curves on the same frames, hold = step, spring/overshoot = slight overshoot past the target before settling. Text reveal frames give the first and last unit; distribute characters/words evenly between them. Cursor click rings last 14 frames. Vector illustration is an approximation of layout and motion, not the product UI or recovered production assets.