{
  "status": "completed",
  "completed_count": 30,
  "applicable_count": 30,
  "failed_count": 0,
  "data": {
    "scenes": [
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Low knee-level position inside dense undergrowth, about 1 meter from the running man, close to his injured leg and moving unevenly through the brush",
            "stage_index": 1,
            "stage_label": "injury_tracking",
            "transition_to_next": "The camera rises and accelerates forward alongside the man, climbing from leg height toward his head as he pushes through the foliage.",
            "visual_focus": "the wounded leg, blood, and frantic movement through the undergrowth"
          },
          {
            "camera_motion": "track",
            "camera_position": "Tight front-side position at the man's head height, about 0.5 meters from his face, moving backward and slightly sideways as he runs toward camera through the trees",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The camera slips past his shoulder and swings its attention toward the space behind him, allowing the threat to enter from the rear of the frame.",
            "visual_focus": "the terrified man's face, sweat, windblown hair, and panicked breathing"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Shoulder-height position just behind and to the side of the running man, roughly 2 meters back, looking past him into the dim forest corridor",
            "stage_index": 3,
            "stage_label": "threat_reveal",
            "transition_to_next": "The camera follows the black silhouette's forward burst and drops with the impact as the attack carries both figures down into the brush.",
            "visual_focus": "the black silhouette launching toward the man's back through the foliage"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Ground-level position in the undergrowth, less than 1 meter from the fallen bodies, tilted slightly upward through dust and crushed leaves",
            "stage_index": 4,
            "stage_label": "impact_collapse",
            "transition_to_next": "",
            "visual_focus": "the man and black silhouette tangled on the forest floor as dust hangs in the air"
          }
        ],
        "flow_summary": "카메라는 수풀 속 낮은 위치에서 부상당한 다리를 따라가다 남자의 얼굴까지 치고 올라와 공포를 밀착 관찰한다. 이후 그의 뒤쪽으로 시선을 돌려 검은 인영의 돌진을 받아내고, 충돌과 함께 바닥으로 떨어져 쓰러진 순간에 멈춘다.",
        "scene_index": 1,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default, compressing the background so the face fills most of the image while the running motion remains felt at the edges.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Camera settles almost on the forest floor at the instant of impact, letting airborne dust briefly obscure the tangled bodies before the focus returns to them.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At eye level near the mouth of the narrow back alley, about 7 meters from the utility pole, facing straight toward the dim streetlamp pool.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow forward move along the alley centerline, narrowing the distance to the figures at the utility pole.",
            "visual_focus": "The full bodies of the red-eyed man and the collapsing woman pressed against the utility pole under the streetlamp."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Eye-level on the alley centerline, moving from about 7 meters to 1.5 meters from the utility pole, keeping the figures centered as the background falls into darkness.",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The dolly-in continues and subtly shifts to the man's side, ending in an intimate angle near the woman's neck.",
            "visual_focus": "The man's face lowering toward the woman's neck, with the woman's body losing strength against the pole."
          },
          {
            "camera_motion": "static",
            "camera_position": "Shoulder-height beside the utility pole, about 30 centimeters from the woman's neck, angled tightly across the man's cheek and jawline.",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "The red-eyed man's teeth fixed at the woman's neck in a frozen close detail."
          }
        ],
        "flow_summary": "카메라는 어두운 골목 입구에서 전봇대 아래 두 인물의 전신을 정면으로 붙잡은 뒤, 숨소리를 따라 천천히 전진해 목덜미의 위협적인 순간까지 좁혀 들어간다. 점프 없이 하나의 돌리 인 경로로 공포의 거리감을 전신에서 클로즈업으로 압축한다.",
        "scene_index": 2,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame nearly locked-off and allow the woman's knees and body line to angle downward within the full-body composition.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten the framing to exclude most of the alley and hold the instant like a still image, emphasizing the contact point at the neck.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Low waist-height position just inside the yellow police line, about 0.6 meters from the edge of a body bag, angled slightly downward toward the activity at ground level",
            "stage_index": 1,
            "stage_label": "establishing_detail",
            "transition_to_next": "The camera begins to slide forward along the police line, rising slightly from the ground-level detail into the wider forensic activity.",
            "visual_focus": "police hands securing the body bag and the boundary of the crime scene"
          },
          {
            "camera_motion": "track",
            "camera_position": "Chest-height moving position inside the cordoned area, traveling laterally between investigators and evidence markers at a medium distance",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The track curves toward the command cluster, narrowing its angle until Hyesu becomes the dominant figure in the frame.",
            "visual_focus": "the forensic field, investigators working, and the organized police response around the scene"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Chest-height position about 1.5 meters in front of Hyesu, slightly off-center, closing to a medium close-up of her upper body",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Hyesu standing in the middle of the crime scene, frowning and staring sharply at a specific point off-camera"
          }
        ],
        "flow_summary": "카메라는 폴리스 라인 근처의 현장 디테일에서 출발해 감식 중인 공간을 가로지르며 수사 지휘선 안쪽으로 접근한다. 마지막에는 혜수 앞에서 움직임을 좁혀 그녀의 날카로운 시선과 긴장된 판단에 집중한다.",
        "scene_index": 3,
        "shot_assignments": [
          {
            "deviation_note": "Frame settles on Hyesu’s upper body, keeping the off-camera point of her stare just outside the composition to preserve tension.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "High bird's-eye position above the aging villa rooftop, roughly 25 meters up, looking straight down at the sunlit roof and wooden platform in a wide frame",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "After the static hold, the camera begins a gentle upward crane while maintaining the same downward viewing angle, letting the rooftop feel smaller within the surrounding neighborhood.",
            "visual_focus": "the old rooftop, the wooden platform, and the quiet sunlit residential outskirts"
          },
          {
            "camera_motion": "crane",
            "camera_position": "Higher overhead position above the same villa rooftop, slowly gaining altitude to include more surrounding rooftops and narrow neighborhood edges",
            "stage_index": 2,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "the rooftop receding into the broader outskirts landscape"
          }
        ],
        "flow_summary": "카메라는 햇빛 아래 낡은 빌라 옥상을 높은 부감으로 정적으로 붙잡은 뒤, 같은 시선을 유지한 채 서서히 더 높아지며 공간의 고립감과 불안을 확장한다.",
        "scene_index": 4,
        "shot_assignments": [
          {
            "deviation_note": "Keep the frame fully static for the selected shot, emphasizing a wide overhead tableau rather than beginning the later upward withdrawal.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Counter-height inside the small kitchen, about 1 meter from the sink, angled through rising steam toward the living room beyond",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera tracks out from the sink line into the living area, letting the kitchen steam fall behind while Minsuk becomes the primary subject.",
            "visual_focus": "boiling pot, rinsed herbs, and Minsuk standing beyond near the television"
          },
          {
            "camera_motion": "static",
            "camera_position": "Eye-level in the living room, about 2.5 meters in front of Minsuk, facing her directly with the television just off camera",
            "stage_index": 2,
            "stage_label": "uneasy_observation",
            "transition_to_next": "As Suryoung enters, the camera pans and slides toward the dining table, reorienting from Minsuk's guarded stillness to the mother-daughter exchange.",
            "visual_focus": "Minsuk's fixed stare and darkened expression toward the television"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Table height beside Suryoung's seat, about 60 centimeters from the tabletop, angled toward Minsuk's hands entering from the kitchen side",
            "stage_index": 3,
            "stage_label": "table_exchange",
            "transition_to_next": "A hard cut jumps the camera from the table to the entryway, matching the scripted time shift as Suryoung prepares to leave.",
            "visual_focus": "the cup of herbal drink being placed in front of Suryoung"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low position near the entryway floor, about 1 meter from Suryoung, angled back toward the interior where Minsuk stands nearby",
            "stage_index": 4,
            "stage_label": "departure_setup",
            "transition_to_next": "The camera rises and shifts closer toward Minsuk's arm as Suryoung moves near her, narrowing the view from the doorway space to the wrist.",
            "visual_focus": "Suryoung preparing to leave while speaking with Minsuk"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Tight close-up position at chest height from Suryoung's side, within 30 centimeters of Minsuk's inner wrist",
            "stage_index": 5,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the small clear circular mark on Minsuk's inner wrist"
          }
        ],
        "flow_summary": "카메라는 싱크대의 생활감에서 출발해 TV를 응시하는 민숙의 불안으로 이동하고, 식탁의 일상적 대화로 낮아졌다가 현관 쪽으로 시간 점프한다. 마지막에는 수리영의 시선에 맞춰 민숙의 손목으로 좁혀 들어가 표식을 드러낸다.",
        "scene_index": 5,
        "shot_assignments": [
          {
            "deviation_note": "Frames Minsuk frontally and excludes the kitchen foreground, emphasizing her locked gaze toward the television.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Drops the lens slightly closer to the tabletop so the cup landing becomes the center of the action while Suryoung remains implied by position.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Tightens further than the stage default to isolate only the wrist and circular mark, minimizing surrounding context.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low side-front position on the coastal road, slightly ahead of the moving bicycle at handlebar height, about 2 meters from Suriyeong",
            "stage_index": 1,
            "stage_label": "establishing_motion",
            "transition_to_next": "The camera keeps pace with the bicycle and gradually slides closer along the same side-front line, compressing the distance to her upper body.",
            "visual_focus": "Suriyeong riding forward along the coastal road, energized by the open seaside air"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Parallel to the bicycle at chest-to-face height, about 1 meter from Suriyeong, moving smoothly alongside her",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "As the dog bark cuts in, the camera finishes the push toward her face and begins to pivot with her sudden head turn toward the offscreen sound.",
            "visual_focus": "Suriyeong's face, earphones, and relaxed forward attention before the interruption"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Tight side-front close-up at face height, still moving with the bicycle, close enough to catch the quick change in her expression",
            "stage_index": 3,
            "stage_label": "reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's head snapping toward the direction of the dog bark and the instant shift in her expression"
          }
        ],
        "flow_summary": "카메라는 해안가 도로를 달리는 수리영의 자전거와 나란히 이동하다가 점점 얼굴 가까이 접근한다. 개 짖는 소리가 들리는 순간, 그 흐름을 끊지 않고 수리영의 고개가 돌아가는 방향으로 함께 회전해 반응을 포착한다.",
        "scene_index": 6,
        "shot_assignments": [
          {
            "deviation_note": "Frame slightly tighter on the earphone side and her eyes at the exact instant her head turns toward the offscreen bark.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "At the kennel entrance, low at the rottweiler's eye height, about 3 feet from Suriyeong as she bends forward toward the cage line",
            "stage_index": 1,
            "stage_label": "close_observation",
            "transition_to_next": "The lens holds the same confrontation axis, then tilts and lowers from Suriyeong's face toward the dog on the floor.",
            "visual_focus": "Suriyeong's fixed stare into the rottweiler's eyes"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Just inside the kennel threshold, near floor level, about 2 feet from the rottweiler's front paws",
            "stage_index": 2,
            "stage_label": "reaction",
            "transition_to_next": "Camera tracks around the subdued dog toward its rear side, opening space for the doctor to enter the frame.",
            "visual_focus": "The rottweiler's softened, submissive body posture"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside the rottweiler at waist height, moving from the dog's shoulder toward its rear and then backing into the shelter aisle",
            "stage_index": 3,
            "stage_label": "treatment_reveal",
            "transition_to_next": "Camera continues backing into the aisle with Suriyeong, then a restrained cut advances to her paused phone call position nearby.",
            "visual_focus": "The doctor finishing the injection and the surrounding kennel aisle"
          },
          {
            "camera_motion": "static",
            "camera_position": "In the shelter aisle at Suriyeong's chest height, close enough to see the smartphone below frame and her face above it, about 2 feet away",
            "stage_index": 4,
            "stage_label": "concerned_pause",
            "transition_to_next": "",
            "visual_focus": "Suriyeong silently looking down at the outgoing call screen on her smartphone"
          }
        ],
        "flow_summary": "카메라는 로트와일러와 수리영의 정면 대치에서 시작해, 개가 순해지는 반응을 따라 낮게 내려간 뒤 보호원 통로로 물러난다. 이후 같은 통로의 정지된 위치에서 연락이 닿지 않는 전화를 내려다보는 수리영의 굳은 얼굴로 감정의 초점을 옮긴다.",
        "scene_index": 7,
        "shot_assignments": [
          {
            "deviation_note": "Tighten to an intense close-up so the kennel environment falls out of focus and only her stare dominates.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 1
          },
          {
            "deviation_note": "Lower the lens slightly closer to the floor to emphasize the ears pinned back and the flattened body.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Frame the smartphone's outgoing call screen low in the foreground while keeping Suriyeong's hardened face as the emotional anchor.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_out",
            "camera_position": "On the neon-lit street at handlebar height, centered in the lane about two meters in front of Suriyeong as she rides toward the supermarket",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera backs with her approach, then tracks sideways toward the supermarket entrance as she arrives and leaves the bicycle outside.",
            "visual_focus": "Suriyeong moving through the busy street toward the large supermarket"
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside the supermarket entrance at shoulder height, moving just ahead and slightly to the side of Suriyeong through the display aisles",
            "stage_index": 2,
            "stage_label": "interior_search",
            "transition_to_next": "The camera slows with Suriyeong near the staff area and pivots toward the female employee as the conversation begins.",
            "visual_focus": "Suriyeong searching the aisles and looking for her mother"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Inside the supermarket near the front aisle, shoulder height, about three meters from Suriyeong and the female employee, angled so the entrance remains in the background direction",
            "stage_index": 3,
            "stage_label": "direction_reveal",
            "transition_to_next": "The pan follows the female employee's pointing gesture toward the entrance; the movement resolves on the doorway, then cuts through the same direction to outside.",
            "visual_focus": "The female employee indicating the entrance while Suriyeong absorbs the news that her mother may have already left"
          },
          {
            "camera_motion": "static",
            "camera_position": "Outside the supermarket, across the sidewalk at slightly below eye level, five to six meters from Suriyeong under a streetlamp near the entrance",
            "stage_index": 4,
            "stage_label": "exterior_anxiety",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's anxious silhouette as she tries to call her mother"
          }
        ],
        "flow_summary": "카메라는 번화가에서 수리영의 이동을 받아 마트 안으로 함께 들어가고, 진열대 사이 수색에서 직원의 말과 손짓을 따라 출입문 방향으로 시선을 돌린다. 그 손짓의 방향을 이어받아 밖으로 절단 전환한 뒤, 가로등 아래 전화를 거는 수리영을 멀리서 고정해 불안을 남긴다.",
        "scene_index": 8,
        "shot_assignments": [
          {
            "deviation_note": "Frame the female employee's pointing hand at the peak of the gesture, allowing the entrance direction to pull the viewer's eye more strongly than the surrounding aisle.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Hold Suriyeong mostly in silhouette against the streetlamp and supermarket spill light, with the phone gesture readable but her expression partially obscured.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low-mounted camera inches above the wet asphalt, just ahead and slightly to the side of the bicycle front wheel, moving at road speed along the coastal road at night",
            "stage_index": 1,
            "stage_label": "low_establishing",
            "transition_to_next": "The camera keeps pace with the bicycle, then begins to rise and drift backward along the frame of the bike, following the forward momentum without cutting.",
            "visual_focus": "the spinning front wheel, water spray, and dark sea beyond the road edge"
          },
          {
            "camera_motion": "track",
            "camera_position": "Chest-height camera tracking parallel to the bicycle on the seaward side, about one meter away, angled from the front quarter toward the rider",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "While continuing the same tracking move, the camera slides slightly farther forward and tightens its angle toward the rider's face.",
            "visual_focus": "Suriyoung leaning forward over the handlebars and pushing hard through the pedals"
          },
          {
            "camera_motion": "track",
            "camera_position": "Tight front-quarter tracking position at Suriyoung's head height, less than a meter from the bicycle, moving backward just ahead of her path",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's pale, tense face as she rides urgently along the coastal road"
          }
        ],
        "flow_summary": "카메라는 젖은 해안도로의 낮은 바퀴 위치에서 출발해 자전거와 같은 속도로 달리며 수리영의 몸과 얼굴 쪽으로 서서히 상승하고 접근한다. 마지막에는 그녀보다 약간 앞선 정면 사선 위치에서 창백하고 굳은 표정을 밀착해 따라간다.",
        "scene_index": 9,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default, emphasizing the weight on the pedals through her forward-leaning posture while holding her pale, rigid face as the dominant point of focus.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low ankle-height on the rooftop floor, several meters from the rooftop room entrance, moving past the drying reeds and toward the metal door",
            "stage_index": 1,
            "stage_label": "approach",
            "transition_to_next": "The camera continues forward with the unseen man's path and rises slightly toward the door seam as he reaches the entrance.",
            "visual_focus": "wind-blown dried reeds on the rooftop floor leading toward the stranger's feet and the closed metal door"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Very close to the rooftop room door, at chest height, aligned with the narrow gap between the door and the frame",
            "stage_index": 2,
            "stage_label": "threshold_observation",
            "transition_to_next": "As the lock releases and the door opens just enough for the stranger to enter, the camera slips its gaze off the door gap and tracks sideways along the exterior wall toward the window.",
            "visual_focus": "the dark silhouette of the stranger appearing through the slightly opened door gap"
          },
          {
            "camera_motion": "track",
            "camera_position": "Outside the rooftop room window, shoulder height, tight against the exterior wall and angled toward the glass surface",
            "stage_index": 3,
            "stage_label": "shadow_reveal",
            "transition_to_next": "",
            "visual_focus": "the window glass catching the enlarged tangled shadows of the stranger and Minsuk inside the room"
          }
        ],
        "flow_summary": "카메라는 옥상 바닥의 낮은 높이에서 낯선 남자의 접근을 따라 현관문까지 이동한 뒤, 미세하게 열린 문틈을 응시한다. 문이 열리고 남자가 안으로 사라지는 순간 카메라는 외벽을 따라 창문으로 미끄러져, 유리에 맺힌 민숙과 낯선 남자의 뒤엉킨 그림자를 포착한다.",
        "scene_index": 10,
        "shot_assignments": [
          {
            "deviation_note": "Frame the door gap as a narrow vertical slit, letting the silhouette dominate the opening while keeping the face unreadable.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold the camera outside the glass and favor the reflected shadow shapes over the room interior, enlarging the figures into an oppressive silhouette.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low at the rear corner of the small villa courtyard, about knee height, a few feet from the hastily parked bicycle and angled toward the stair entrance",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera leaves the bicycle area and tracks toward the concrete stairwell, rising slightly to catch up with 수리영 as she rushes upward.",
            "visual_focus": "the abandoned bicycle and the stair entrance beyond it"
          },
          {
            "camera_motion": "track",
            "camera_position": "Side-on along the steep concrete staircase, waist height, close enough to keep 수리영 in a dynamic lateral profile as she climbs",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera continues climbing beside her, then tightens its distance as her pace checks at the first sign of the bad smell.",
            "visual_focus": "수리영's forward-leaning body and quick footwork on the stairs"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Near the top landing of the rooftop stairs, chest height, slightly off to 수리영's front side as she reacts to the odor",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "As her gaze moves toward the rooftop entrance, the camera pans off her and tracks forward onto the roof, aligning itself squarely with the door.",
            "visual_focus": "수리영's tense reaction and the direction of her attention"
          },
          {
            "camera_motion": "static",
            "camera_position": "On the dark rooftop, eye level, centered directly in front of the half-open metal entrance door at a medium distance",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the half-open metal door with a black interior beyond it"
          }
        ],
        "flow_summary": "카메라는 마당 구석의 자전거에서 출발해 수리영의 급한 동선을 따라 계단을 함께 치고 올라간다. 냄새를 감지한 지점에서 그녀의 시선 방향으로 넘어가며, 마지막에는 어두운 옥상 위 반쯤 열린 철문을 정면으로 고정해 불길함을 드러낸다.",
        "scene_index": 11,
        "shot_assignments": [
          {
            "deviation_note": "Emphasize the instant when one foot lands on the next step and the other remains suspended, keeping the side profile more kinetic than the stage default.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Settle into a locked, symmetrical frontal frame; reduce any residual tracking motion so the black interior beyond the door feels still and threatening.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the rooftop room entrance, shoulder height, wide lens, several meters from the living room furniture, looking inward from the doorway axis.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera tracks forward past the living room table and stove area, following Suriyoung's search path toward the inner rooms.",
            "visual_focus": "the dim living room, the cold pot, the active television, and signs of interrupted presence"
          },
          {
            "camera_motion": "track",
            "camera_position": "In the narrow interior passage, eye level behind and slightly to the side of Suriyoung, about one meter from her shoulder.",
            "stage_index": 2,
            "stage_label": "search_approach",
            "transition_to_next": "The camera continues with her to her own bedroom door and pushes through the opened doorway without changing spatial continuity.",
            "visual_focus": "Suriyoung checking the empty main room, the tea cups on the table, and then her own bedroom door"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Just inside Suriyoung's bedroom doorway, waist height, wide enough to hold the floor and the far curtain in the same axis.",
            "stage_index": 3,
            "stage_label": "blood_trail_reveal",
            "transition_to_next": "The camera follows the line of bloody footprints deeper into the room, rising slightly as the trail reaches the curtain and preparing to pivot toward Suriyoung's discovery.",
            "visual_focus": "the blood pooled across the bedroom floor and the bloody footprints leading toward the curtain"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Near the curtain and bed area, chest to eye height, very close to Suriyoung, alternating between her frozen face line and the space where Minsuk has been found.",
            "stage_index": 4,
            "stage_label": "shock_reaction",
            "transition_to_next": "The camera drifts from Suriyoung's stunned face toward Minsuk's hand and wrist, then lets Suriyoung's eyeline pull the frame upward toward the wall above the bed.",
            "visual_focus": "Suriyoung's shock after finding Minsuk and the immediate horror beside the curtain"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "At the side of the bed, eye height, angled upward toward the wall above the bed from a close interior position.",
            "stage_index": 5,
            "stage_label": "supernatural_reveal",
            "transition_to_next": "",
            "visual_focus": "the red circular mark forming on the wall above the bed"
          }
        ],
        "flow_summary": "카메라는 수리영의 동선을 따라 거실에서 방 안쪽으로 계속 밀고 들어가며, 생활의 흔적에서 피의 흔적으로 시선을 좁힌다. 커튼 앞 발견 이후에는 수리영의 얼굴과 민숙 주변 단서들을 따라 흔들리듯 움직이다가, 마지막에 침대 위 벽의 붉은 원형 표식으로 시선을 들어 올린다.",
        "scene_index": 12,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame lower than the stage default so the floor dominates, keeping the opened doorway as a rear boundary and the curtain as the endpoint of the trail.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "Move into a tighter frontal close-up than the stage default, isolating Suriyoung's widened eyes and half-open mouth while the surrounding room falls out of emphasis.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 4
          },
          {
            "deviation_note": "Settle from the upward tilt into a steadier hold so the red paint-like circular mark fills the composition clearly on the wall surface.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 16,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Just outside the dark rooftop room doorway, chest height, within arm’s length of the threshold, angled slightly upward toward the figure emerging from inside",
            "stage_index": 1,
            "stage_label": "shock_emergence",
            "transition_to_next": "The camera recoils backward from the doorway as Suriyoung bursts out, then pivots toward the exterior stairs to follow her escape path.",
            "visual_focus": "Suriyoung's distorted screaming face as she leans out from the dark doorway"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "On the narrow exterior concrete stair run, waist height, moving downward one step ahead and slightly to the side of Suriyoung",
            "stage_index": 2,
            "stage_label": "descent_escape",
            "transition_to_next": "A siren sound motivates a hard cut from the stairwell movement to the street level beside the arriving patrol car.",
            "visual_focus": "Suriyoung's unstable, hurried descent down the steep stairs"
          },
          {
            "camera_motion": "static",
            "camera_position": "Street level beside the open patrol car door, low-to-medium height near the asphalt, three-quarter front angle toward Hyesu stepping out",
            "stage_index": 3,
            "stage_label": "arrival_reaction",
            "transition_to_next": "The camera pans and begins to track away from the car toward the middle of the dark roadside where Suriyoung has stopped.",
            "visual_focus": "Hyesu's hardened face as she notices Suriyoung"
          },
          {
            "camera_motion": "track",
            "camera_position": "In the dark roadside space between the patrol car and the stair entrance, eye level, moving laterally with Hyesu as she runs toward Suriyoung",
            "stage_index": 4,
            "stage_label": "convergence",
            "transition_to_next": "As Hyesu reaches and holds Suriyoung, the camera pushes inward and lowers into Suriyoung's upward eyeline for a tight emotional close observation.",
            "visual_focus": "Hyesu closing the distance to Suriyoung, who stands frozen in the road"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Very close to Suriyoung at her eye level, slightly over Hyesu's shoulder, within intimate close-up distance",
            "stage_index": 5,
            "stage_label": "close_observation",
            "transition_to_next": "After Suriyoung delivers the news, the camera breaks from the close-up with a quick reposition toward the base of the stairs as Hyesu turns to run upward.",
            "visual_focus": "Suriyoung's tear-filled eyes looking blankly up at Hyesu"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "At the base of the steep exterior stairs, shoulder height behind Hyesu and the junior detective, angled upward along the stair line",
            "stage_index": 6,
            "stage_label": "urgent_ascent",
            "transition_to_next": "",
            "visual_focus": "Hyesu and the junior detective rushing up the stairs toward the rooftop room"
          }
        ],
        "flow_summary": "카메라는 옥탑방 문 앞의 충격적인 비명에서 시작해 수리영의 도주 동선을 따라 계단 아래와 거리로 이동한다. 사이렌을 계기로 순찰차 쪽으로 컷한 뒤, 혜수가 수리영에게 달려가 감정의 클로즈업에 도달하고 다시 계단을 향해 긴박하게 상승한다.",
        "scene_index": 13,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default, isolating only the upper body and open-mouthed expression at the doorway.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Hold the otherwise static arrival position long enough to catch one foot touching the asphalt while the open car door remains in frame.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Push closer than the stage default until the frame becomes an extreme close-up of the eyes, minimizing Hyesu to an implied presence just off frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the rooftop room near the entrance hallway, shoulder height, medium distance from the group, angled slightly toward the interior doorway",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera follows Suri-young's sudden movement, tracking past Hyesu and the detective toward the bedroom doorway without breaking the spatial line.",
            "visual_focus": "the detective, Hyesu, and Suri-young realizing nothing has been found"
          },
          {
            "camera_motion": "static",
            "camera_position": "At the bedroom threshold, eye level, wide distance, centered on the room interior from just outside the doorway",
            "stage_index": 2,
            "stage_label": "empty_room_reveal",
            "transition_to_next": "The camera slowly advances across the threshold and lowers its attention from the immaculate room to the clean floor near Suri-young.",
            "visual_focus": "the unnaturally clean, empty bedroom with no bloodstains, no red mark, and no body"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Inside the bedroom, low-to-chest height, close distance beside the clean floor and slightly in front of Suri-young",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "As Suri-young rushes out, the camera pulls with her movement and tracks back toward the dining area.",
            "visual_focus": "Suri-young's pale face as she looks down at the spotless floor in disbelief"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside the dining table, waist height, medium distance, angled across the table toward Suri-young and the others",
            "stage_index": 4,
            "stage_label": "table_confrontation",
            "transition_to_next": "The camera shifts from the empty table and the detective's frustration to Hyesu stepping in, then settles into a frontal position on Hyesu and Suri-young.",
            "visual_focus": "the empty dining table, Suri-young's confusion, and the detective's irritated reaction"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "In the main room facing Hyesu and Suri-young, chest height, medium-close distance, directly frontal to their upper bodies",
            "stage_index": 5,
            "stage_label": "comfort_reaction",
            "transition_to_next": "After holding on Hyesu comforting Suri-young, the scene makes a logical cut back toward the bedroom floor for the final clue.",
            "visual_focus": "Hyesu gripping Suri-young's shoulders as Suri-young lowers her head in shock"
          },
          {
            "camera_motion": "cut",
            "camera_position": "Back inside Suri-young's bedroom, very low height near the floor, close distance to the misplaced personal objects",
            "stage_index": 6,
            "stage_label": "final_clue_reveal",
            "transition_to_next": "",
            "visual_focus": "the backpack and doll sitting slightly out of their previous positions"
          }
        ],
        "flow_summary": "카메라는 현관 쪽의 혼란에서 수리영을 따라 방 안으로 들어가 텅 빈 현장을 확인한 뒤, 식탁 쪽으로 이동해 갈등을 지나 혜수가 수리영을 붙잡는 정면으로 수렴한다. 마지막에는 논리적 컷으로 다시 방 안의 낮은 위치로 돌아가 미묘하게 달라진 물건들을 암시하는 흐름이다.",
        "scene_index": 14,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame wider and more symmetrical than the stage default to emphasize the room's sterile emptiness before Suri-young dominates the frame.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Tilt begins from the spotless floor and ends on Suri-young's face, tightening slightly to register her disbelief.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Frame Hyesu's hands firmly around both shoulders in the foreground of the upper body composition, keeping Suri-young's bowed head contained within the same frontal axis.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At bench height on the seaward side of the bus stop, medium distance from the bench, angled three-quarters toward the seated figure and the dark shoreline beyond",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow lateral move from the seaside angle toward the front of the bench as the other woman steps into the seated woman's eyeline.",
            "visual_focus": "수리영 sitting in silence against the night sea and the bus stop surroundings"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "In front of the bench at chest-to-eye height, close enough to catch the face clearly as she rises from the bench",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "As 수리영 commits to leaving, the camera lets her break away from the frontal frame and pivots toward the road to follow her first movement.",
            "visual_focus": "수리영's face and sudden resolve as she stands"
          },
          {
            "camera_motion": "track",
            "camera_position": "Just off the bench area on the road-facing side, shoulder height, moving parallel to 수리영 for a brief moment as she runs out from the bus stop",
            "stage_index": 3,
            "stage_label": "departure",
            "transition_to_next": "The camera slows and stops moving with 수리영, allowing her to recede while reframing back toward 혜수 in the foreground.",
            "visual_focus": "수리영 accelerating away from the bench toward the road"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Near the bus stop bench at upper-body height, slightly behind and to the side of 혜수, holding her in the foreground while the road opens behind her",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "A hard cut relocates the viewpoint away from the bus stop to a concealed distant angle, changing the feeling from observation to surveillance.",
            "visual_focus": "혜수 calling after 수리영, with 수리영 becoming smaller in the background"
          },
          {
            "camera_motion": "cut",
            "camera_position": "Far back from the bus stop at low standing height, partially hidden near dark roadside bushes, looking across open space toward the bench area",
            "stage_index": 5,
            "stage_label": "watching_reveal",
            "transition_to_next": "",
            "visual_focus": "the bus stop area and 혜수 from a distant, ominous watcher-like viewpoint"
          }
        ],
        "flow_summary": "카메라는 밤바다 쪽 벤치에서 시작해 수리영의 정면으로 서서히 다가가 결심의 순간을 잡고, 그녀가 달려나가자 잠시 따라붙은 뒤 혜수에게 남아 반응을 담는다. 마지막에는 버스정류장 밖의 어두운 수풀 쪽 시선으로 논리적 컷을 두어 누군가 지켜보는 듯한 불안을 남긴다.",
        "scene_index": 15,
        "shot_assignments": [
          {
            "deviation_note": "Tighten the framing slightly from the stage default so her determined expression fills the frame while she is already fully upright.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold 혜수 as the sharp foreground subject from the waist or chest up, while 수리영 remains smaller and softer in the background distance.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Just inside the police office entrance, chest height, about 10 feet from the duty desk, moving slightly behind and beside Hyesu as she enters",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera tracks forward with Hyesu along the office aisle, keeping the duty desk ahead as the next anchor point.",
            "visual_focus": "Hyesu on the unanswered phone call, with the quiet duty desk visible deeper in the room"
          },
          {
            "camera_motion": "pan",
            "camera_position": "At the front-left corner of the duty desk, standing eye level, about 5 feet from Kim and slightly behind Hyesu's shoulder",
            "stage_index": 2,
            "stage_label": "desk_encounter",
            "transition_to_next": "As Hyesu steps closer and raises the smartphone, the camera slides around the desk edge and lowers to Kim's seated eye line, converting the angle into his point of view.",
            "visual_focus": "Kim reacting lazily across the desk while Hyesu presses him for help"
          },
          {
            "camera_motion": "static",
            "camera_position": "From Kim's seated eye line behind the desk, lens just above monitor height, about 18 inches from the smartphone held toward the camera",
            "stage_index": 3,
            "stage_label": "evidence_closeup",
            "transition_to_next": "When the phone lowers, the camera dollies back a short distance and tilts up from the screen area to Hyesu leaning over the desk.",
            "visual_focus": "The smartphone screen showing Minsuk's saved phone number in Hyesu's hand"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low seated position behind the desk and monitor, centered between the monitor edges, about 4 feet from Hyesu and slightly below her eye line",
            "stage_index": 4,
            "stage_label": "pressure_reaction",
            "transition_to_next": "",
            "visual_focus": "Hyesu looming over the desk with both hands braced near the monitor, staring down with urgent pressure"
          }
        ],
        "flow_summary": "카메라는 경찰서 사무실 입구에서 혜수를 따라 책상까지 접근한 뒤, 김형사의 앉은 시야로 낮아져 스마트폰 화면을 받아낸다. 이후 같은 책상 안쪽 위치에서 뒤로 물러나고 위로 올려 혜수가 김형사를 압박하듯 내려다보는 정면 구도로 이어진다.",
        "scene_index": 16,
        "shot_assignments": [
          {
            "deviation_note": "스마트폰 화면이 프레임 대부분을 차지하도록 더 타이트하게 잡고, 혜수의 손만 화면 가장자리에서 들어오게 조정한다.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "책상 위 모니터의 양옆 가장자리를 전경 기준선으로 살리고, 혜수의 두 손과 심각한 시선이 정면 대칭에 가깝게 들어오도록 미세하게 높이를 낮춘다.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Wide exterior position across from the rooftop room, slightly below window height, at a distant rooftop-to-rooftop viewing angle in the blue dawn light",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera releases from the quiet wide hold and begins a slow lateral move toward the low rooftop wall on the same exterior plane.",
            "visual_focus": "the lit window of the old rooftop room against the dim dawn surroundings"
          },
          {
            "camera_motion": "track",
            "camera_position": "Medium distance along the rooftop parapet, camera at low wall height, moving parallel to the wall from the window side toward the corner",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The camera continues tracking with the wall line, then subtly pans to follow the movement beyond the parapet.",
            "visual_focus": "the low rooftop wall and the black cat watching the lit window"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Low exterior position near the rooftop wall corner, close to the parapet height, angled toward the open space beyond the wall",
            "stage_index": 3,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "the black cat leaping over the wall into the empty dawn space"
          }
        ],
        "flow_summary": "카메라는 푸르스름한 새벽의 옥탑방 외관을 멀리서 고요하게 붙잡은 뒤, 같은 외부 공간 안에서 담장 쪽으로 낮게 이동한다. 이후 불 켜진 창문을 바라보던 검은 고양이의 동선을 따라 담장 너머로 시선을 흘려보내며 씬을 마무리한다.",
        "scene_index": 17,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame especially still and quiet, emphasizing the contrast between the blue dawn exterior and the warm lit window before any movement toward the wall begins.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Low at the side of the bed, eye-level with Suriyeong's seated head, within arm's length and facing her from a slight front-left angle",
            "stage_index": 1,
            "stage_label": "awakening_reaction",
            "transition_to_next": "The camera loosens and backs away as she rises, then tracks with her movement toward the closed bedroom door, keeping the same anxious proximity.",
            "visual_focus": "Suriyeong's face snapping awake and searching for signs of someone in the house"
          },
          {
            "camera_motion": "track",
            "camera_position": "Just behind and slightly to the side of Suriyeong at shoulder height, moving from the doorway into the clean, empty room and toward the window",
            "stage_index": 2,
            "stage_label": "room_investigation",
            "transition_to_next": "A time-compressing cut carries the movement from the room and phone-call beat to the bathroom sink, preserving the forward momentum of her search.",
            "visual_focus": "Suriyeong checking the empty room, the window, and the absence where she feared something would be"
          },
          {
            "camera_motion": "static",
            "camera_position": "Tight in front of the bathroom sink, close to the mirror plane and angled so the reflected tile wall dominates the frame behind Suriyeong's reflected space",
            "stage_index": 3,
            "stage_label": "mirror_apparition",
            "transition_to_next": "The camera pivots with her sudden head turn toward the real wall, then cuts as she bolts out of the bathroom toward the living area.",
            "visual_focus": "The mirror reflection of the bathroom tile wall and the sudden red circular mark appearing within it"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Shoulder height in the living and dining area, tracking ahead of Suriyeong as she reaches the table and looks down toward the framed family photo",
            "stage_index": 4,
            "stage_label": "photo_hallucination",
            "transition_to_next": "The camera crosses to the opposite side of the table in a sharp logical cut, landing front-on to catch her reaction after the photo hallucination peaks.",
            "visual_focus": "The table, the glass, the framed photo, and Suriyeong's attention collapsing onto the image"
          },
          {
            "camera_motion": "static",
            "camera_position": "In front of the dining table at Suriyeong's chest-to-eye height, close enough for a tight frontal view with the photo frame near the camera axis",
            "stage_index": 5,
            "stage_label": "frozen_reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyeong frozen in fear in front of the photo frame, gripping her own cheeks as she tries to steady herself"
          }
        ],
        "flow_summary": "카메라는 침대 곁의 밀착된 불안에서 시작해 수리영을 따라 방, 욕실, 거실 식탁으로 이동하며 점점 더 주관적인 공포의 시선에 가까워진다. 욕실의 거울 환각과 사진 앞의 정면 반응은 연속 추적 중 발생한 심리적 충격 지점으로 배치된다.",
        "scene_index": 18,
        "shot_assignments": [
          {
            "deviation_note": "Tighten from the bedside proximity into a rigid facial close-up, emphasizing her eyes opening and head lifting rather than the surrounding bed.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 1
          },
          {
            "deviation_note": "Frame only the mirror-reflected tile wall and the red circular mark, minimizing Suriyeong's body so the apparition feels detached from physical space.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 3
          },
          {
            "deviation_note": "Hold the front-facing angle without drifting; let her hands clamped to her cheeks become the center of the frame after the photo hallucination.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 14,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Outside the quiet mart entrance, chest height, about 8 feet in front of Suriyeong and the bicycle handlebars, facing her head-on with the doors behind her",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow dolly past the bicycle handlebars and follows Suriyeong through the entrance into the mart.",
            "visual_focus": "Suriyeong stopped at the entrance, gripping the bicycle handlebars with tension"
          },
          {
            "camera_motion": "track",
            "camera_position": "Inside the mart just beyond the entrance, shoulder height, moving a few feet ahead of Suriyeong along the aisles",
            "stage_index": 2,
            "stage_label": "search_inside",
            "transition_to_next": "The tracking move slows near the shelves as the male employee turns toward her, settling the camera into the dialogue position.",
            "visual_focus": "Suriyeong searching through the quiet aisles and the male employee noticing her"
          },
          {
            "camera_motion": "static",
            "camera_position": "At the end of a mart aisle, eye level, about 4 feet from Suriyeong and the male employee, angled to hold both faces across the shelf line",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "On the question about CCTV, the scene makes a clear cut to the exterior wall where the possible camera location can be checked.",
            "visual_focus": "The tense exchange between Suriyeong and the male employee about what he saw yesterday"
          },
          {
            "camera_motion": "static",
            "camera_position": "Outside beside the mart wall, shoulder height, about 6 feet from the male employee's side, angled upward enough to include his pointing hand and the CCTV camera mounted high on the exterior wall",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "After confirming the CCTV angle, the camera tracks away from the wall toward the nearby streetlight where Suriyeong separates to make a call.",
            "visual_focus": "The male employee indicating the CCTV camera on the mart exterior"
          },
          {
            "camera_motion": "static",
            "camera_position": "Outside under the streetlight, chest height, about 4 feet from Suriyeong, slightly off-center in front of her upper body",
            "stage_index": 5,
            "stage_label": "reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyeong holding the smartphone tightly to her ear as she explains the situation"
          }
        ],
        "flow_summary": "카메라는 마트 입구에서 멈춘 수리영을 정면으로 잡은 뒤, 그녀를 따라 내부로 들어가 남자직원과의 대화를 거쳐 CCTV 확인을 위해 외벽으로 이동한다. 마지막에는 외벽에서 떨어져 가로등 아래의 수리영에게 붙어, 전화를 거는 긴장된 반응으로 흐름을 마무리한다.",
        "scene_index": 19,
        "shot_assignments": [
          {
            "deviation_note": "The frame emphasizes her tense grip on the bicycle handlebars while keeping the entrance directly behind her.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "The camera holds the male employee in side profile and keeps the CCTV camera visible above his pointing line.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          },
          {
            "deviation_note": "The framing tightens to Suriyeong's upper body, reducing the surrounding exterior wall and street space to background context.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "Behind and slightly above the security employee's right shoulder, standing height, medium distance from the desk and monitor",
            "stage_index": 1,
            "stage_label": "anxious_overwatch",
            "transition_to_next": "The camera continues its slow push forward, slipping closer over the security employee's shoulder toward the monitor surface.",
            "visual_focus": "Suri-young's anxious face stretching her neck toward the monitor, framed beyond the security employee's back"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Close behind the desk line, just over the security employee's shoulder at monitor height, very near the screen",
            "stage_index": 2,
            "stage_label": "screen_reveal",
            "transition_to_next": "The camera slides laterally along the desk edge toward Hyesu's side, keeping the monitor as the spatial anchor.",
            "visual_focus": "The dark CCTV monitor image where the central figure is obscured in shadow"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside Hyesu at standing eye level, close to the desk, angled across her profile toward the monitor and the security employee",
            "stage_index": 3,
            "stage_label": "request_side",
            "transition_to_next": "As Hyesu finishes her request, the camera pans and settles toward the security employee following his head turn to her.",
            "visual_focus": "Hyesu leaning toward the monitor while addressing the security employee"
          },
          {
            "camera_motion": "static",
            "camera_position": "Near Hyesu's eyeline at standing height, medium close distance from the security employee, angled three-quarters toward his face",
            "stage_index": 4,
            "stage_label": "agreement_reaction",
            "transition_to_next": "",
            "visual_focus": "The security employee's agreeing expression as he turns his head toward Hyesu"
          }
        ],
        "flow_summary": "카메라는 보안팀 직원의 등 뒤에서 모니터를 함께 들여다보는 위치로 시작해 수리영의 불안을 포착한 뒤, 어두운 CCTV 화면을 거쳐 혜수의 요청 방향으로 옆 이동한다. 마지막에는 혜수의 시선축 가까이에 멈춰 보안팀 직원의 동의하는 반응을 받는다.",
        "scene_index": 20,
        "shot_assignments": [
          {
            "deviation_note": "Frame slightly tighter than the stage default so the security employee's back becomes a foreground block and Suri-young's strained face dominates beyond it.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 1
          },
          {
            "deviation_note": "Hold the camera steady after the pan has completed, allowing the head turn and agreeing expression to play cleanly in a medium close-up.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At standing eye level near the office entrance, several meters from the main desks, moving inward along the aisle toward Hyesu's desk",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera continues forward with the emptied office in view, lowering its attention from the people leaving to the surface of Hyesu's desk.",
            "visual_focus": "Hyesu and Suriyoung entering the busy police office, then the detectives moving out toward the meeting"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Slightly above desk height, close to Hyesu's desk, angled downward at less than one meter from the scattered case photographs",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The lens completes the push into the photographs, then tilts upward along Suriyoung's line of sight to catch her reaction without changing the spatial relationship to the desk.",
            "visual_focus": "the disturbing murder case photographs spread across the desk"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Close in front of Suriyoung at seated face height, just beyond the edge of Hyesu's desk",
            "stage_index": 3,
            "stage_label": "reaction",
            "transition_to_next": "As the computer alert draws attention off-screen, the camera pivots and tracks laterally across the adjacent desks toward Kim Detective's empty workstation.",
            "visual_focus": "Suriyoung's frozen face as she stares down at the photographs"
          },
          {
            "camera_motion": "track",
            "camera_position": "At desk height beside Kim Detective's empty workstation, moving from Suriyoung's side toward the computer monitor until the screen fills the frame",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "After holding the monitor information, the camera eases back toward Suriyoung's hands and the desk area as she writes the coordinates and prepares to leave.",
            "visual_focus": "the computer monitor showing the phone location result over a dark sea map"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Close behind and slightly to the side of Suriyoung at waist-to-shoulder height, following her from the desk toward the office doorway",
            "stage_index": 5,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suriyoung hiding the note, checking the empty office, and slipping out through the door"
          }
        ],
        "flow_summary": "카메라는 경찰서 사무실 입구에서 책상 안쪽으로 흘러 들어온 뒤, 혜수의 책상 위 사진으로 내려앉고 수리영의 얼굴 반응을 타고 다시 김형사의 모니터로 이동한다. 마지막에는 위치 정보를 확인한 수리영의 행동을 따라 출입문 쪽으로 빠져나가는 흐름이다.",
        "scene_index": 21,
        "shot_assignments": [
          {
            "deviation_note": "Frame tight enough that only the damaged neck and shoulder area in the photograph dominates the image, with surrounding desk clutter reduced to blurred edges.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 2
          },
          {
            "deviation_note": "The tilt resolves into a locked close-up on Suriyoung's widened eyes and rigid expression, keeping the photographs implied below frame rather than visible.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "The track finishes in an almost flat-on screen close-up so the red marker, coordinate numbers, timestamp, and sea map are sharp and readable.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Outside the police station entrance, eye-level, about 20 feet in front of the bicycle, framing the rider and the parked bicycle in the forecourt space",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "As Suriyoung pushes off, the camera begins a forward move toward the bicycle, lowering slightly and shifting onto the bicycle's frontal axis.",
            "visual_focus": "Suriyoung poised on the bicycle in front of the police station entrance"
          },
          {
            "camera_motion": "track",
            "camera_position": "Directly in front of the moving bicycle, slightly below Suriyoung's eye line and just beyond the handlebars, moving backward at the same speed",
            "stage_index": 2,
            "stage_label": "approach_close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's determined face leaning low over the tightly gripped bicycle handlebars"
          }
        ],
        "flow_summary": "카메라는 경찰서 입구 앞에 멈춰 선 수리영과 자전거를 먼저 정면에서 잡은 뒤, 그녀가 출발하는 순간 자전거의 진행축 앞으로 들어간다. 이후 핸들 너머로 몸을 숙인 수리영의 결연한 얼굴을 유지하며 함께 뒤로 물러나는 트래킹 흐름으로 이어진다.",
        "scene_index": 22,
        "shot_assignments": [
          {
            "deviation_note": "Tighten the frame to a frontal close view so the clenched handlebars occupy the lower foreground and Suriyoung's face dominates the center.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "At seated head height in the dark aisle of the PC room, about 12 feet behind and slightly to the side of Suryoung's station",
            "stage_index": 1,
            "stage_label": "establishing_approach",
            "transition_to_next": "The camera glides forward along the aisle toward Suryoung's desk, narrowing from the dim room to the glow of the monitor.",
            "visual_focus": "Suryoung seated at a computer station, isolated by the bright map image on the monitor"
          },
          {
            "camera_motion": "static",
            "camera_position": "Close beside Suryoung at seated eye level, about 2 feet from the side of the face, angled to include the monitor edge and the map glow",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After holding on Suryoung's fixed stare, the camera gently tilts down from the face and monitor toward the desk surface.",
            "visual_focus": "Suryoung's side profile staring intensely at the bright map image on the monitor"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Beside the same computer station, lowered from face level toward desk height, close to Suryoung's hands and the backpack on the desk or nearby chair",
            "stage_index": 3,
            "stage_label": "task_detail",
            "transition_to_next": "",
            "visual_focus": "Printed folded maps being gathered and pushed toward the backpack"
          }
        ],
        "flow_summary": "카메라는 어두운 PC방 통로에서 수리영의 자리로 천천히 접근한 뒤, 모니터의 지도 빛에 붙들린 옆얼굴에 멈춘다. 이후 같은 자리에서 시선을 아래로 떨어뜨려 지도와 백팩으로 이어지는 행동의 흐름을 준비한다.",
        "scene_index": 23,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter than the stage default so the glowing map image and Suryoung's side profile dominate, with the surrounding PC room kept mostly in darkness.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "crane",
            "camera_position": "High above the stormy coastal road, about twelve meters up and twenty meters ahead of the bicycle path, looking down the empty shoreline road through heavy rain",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera cranes down toward road level as the bicycle enters the frame, aligning with its direction of travel.",
            "visual_focus": "the lightning-lit coastal road, dark clouds, rain, and the lone bicycle approaching through the storm"
          },
          {
            "camera_motion": "track",
            "camera_position": "At handlebar height, three meters off Suriyeong's front-left side, moving parallel along the wet coastal road",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The tracking move tightens in the same forward momentum, sliding closer from a three-quarter riding view toward Suriyeong's face.",
            "visual_focus": "Suriyeong forcing the bicycle forward through wind and rain"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At Suriyeong's eye level, less than half a meter from her front-left side, matched to the bicycle's speed for a tight moving close-up",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "The camera dips from the face line toward the lower front of the bicycle while maintaining forward motion.",
            "visual_focus": "Suriyeong's determined face with heavy raindrops striking and gathering on her cheeks"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low near the front wheel, about thirty centimeters above the flooded road surface and slightly ahead of the bicycle's left side",
            "stage_index": 4,
            "stage_label": "detail_hold",
            "transition_to_next": "",
            "visual_focus": "the bicycle front wheel, splashing road water, and the force of pedaling through the downpour"
          }
        ],
        "flow_summary": "카메라는 번개가 비추는 해안 도로의 높은 시야에서 시작해 빗속을 달리는 수리영에게 내려붙고, 자전거의 속도와 나란히 달리며 얼굴까지 밀착한다. 이후 같은 전진 흐름을 유지한 채 시선을 아래로 떨어뜨려 젖은 도로와 바퀴의 물보라로 이어진다.",
        "scene_index": 24,
        "shot_assignments": [
          {
            "deviation_note": "Raindrops on the cheeks are emphasized with a tighter frontal-left angle while preserving the forward tracking momentum.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low at knee height near the living room floor, just inside the rooftop room entrance, about 1 meter from the scattered furniture, angled slightly upward into the room",
            "stage_index": 1,
            "stage_label": "establishing_disorder",
            "transition_to_next": "The camera rises and tracks forward through the disturbed living room toward Suriyoung standing in the center, keeping the mess in the foreground as it approaches her.",
            "visual_focus": "muddy footprints, overturned chairs, open drawers, and the violated living room space"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Chest height in the middle of the living room, about 2 meters in front of Suriyoung, facing her directly with the open interior behind her",
            "stage_index": 2,
            "stage_label": "shock_hold",
            "transition_to_next": "The camera arcs past Suriyoung's shoulder and continues toward the open bedroom doorway, following the direction of her glance.",
            "visual_focus": "Suriyoung frozen in the ruined living room, her alarmed upper body and widened eyes"
          },
          {
            "camera_motion": "track",
            "camera_position": "Shoulder height at the bedroom doorway, about 1.5 meters from the wall, looking straight into Suriyoung's room",
            "stage_index": 3,
            "stage_label": "bedroom_reveal",
            "transition_to_next": "The camera pushes closer to the marked wall until the photograph dominates the frame, then makes a hard visual cut into the memory triggered by the image.",
            "visual_focus": "the large red circular mark on the bedroom wall and the photograph pinned at its center"
          },
          {
            "camera_motion": "cut",
            "camera_position": "Eye level outside an old countryside restaurant, medium distance from the building facade and the two seated girls in the photograph's remembered image",
            "stage_index": 4,
            "stage_label": "memory_insert",
            "transition_to_next": "A hard cut returns from the remembered photograph to the bedroom, now closer to Suriyoung as the impact of the discovery lands.",
            "visual_focus": "the old restaurant, the circular roof sign, and the two young girls from the photograph"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Waist-to-chest height inside the bedroom, close to the bed and slightly off to Suriyoung's side, within 1 meter of her",
            "stage_index": 5,
            "stage_label": "destabilized_reaction",
            "transition_to_next": "The camera backs out with Suriyoung as she rises and moves from the bedroom through the living room toward the entrance, maintaining a tense lateral proximity.",
            "visual_focus": "Suriyoung collapsing onto the bed, clutching the photograph, then gathering herself to leave"
          },
          {
            "camera_motion": "track",
            "camera_position": "Shoulder height beside the entrance, just inside the doorway and slightly behind Suriyoung's profile, about 0.8 meters from her as she steps out",
            "stage_index": 6,
            "stage_label": "exit_resolve",
            "transition_to_next": "",
            "visual_focus": "Suriyoung half outside the front door, backpack on, her determined side profile and the direction of escape"
          }
        ],
        "flow_summary": "카메라는 어지럽혀진 거실 바닥에서 시작해 수리영의 충격으로 상승하고, 그녀의 시선을 따라 방 안의 붉은 원과 사진으로 밀고 들어간다. 사진이 불러낸 기억의 컷을 지나 다시 현재로 돌아온 뒤, 흔들리는 움직임으로 수리영을 따라 현관 밖 결심의 순간까지 이동한다.",
        "scene_index": 25,
        "shot_assignments": [
          {
            "deviation_note": "Frame tighter on her upper body while still allowing the ruined living room to remain legible behind and around her.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold more static at the end of the doorway track so the red circular mark and pinned photograph read as a graphic, frontal reveal.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Shift slightly farther outside the threshold than the stage default so her half-exited body and firm side profile are emphasized against the doorway edge.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 6
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "High and wide at the empty harbor entrance, about 25 meters from the pier, looking across the fog-covered waterline at dusk",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera lowers and begins a slow forward track along the wet harbor edge toward the rocks where Suriyeong is waiting.",
            "visual_focus": "the silent fogbound harbor and barely visible seawater"
          },
          {
            "camera_motion": "track",
            "camera_position": "At human eye level beside the harbor rocks, 4 meters from Suriyeong, moving laterally from her side toward her seated position",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "A motivated cut drops from her fog-facing profile to the object vibrating in her hand.",
            "visual_focus": "Suriyeong sitting exhausted on the rocks and staring into the fog"
          },
          {
            "camera_motion": "static",
            "camera_position": "Very close above Suriyeong's hands, less than 30 centimeters from the smartphone, angled down so the screen fills the frame",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "The camera cuts back out to the pier line, then pans through the fog toward the incoming shape of a small boat.",
            "visual_focus": "the smartphone screen showing Hyesu's name and repeated missed calls"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Mid-distance on the pier, eye level, about 8 meters from the water, facing the fog where the small boat emerges",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "As the boat reaches the dock, the camera tracks with Suriyeong along the pier toward the stern and settles behind Inwoo.",
            "visual_focus": "the small fishing boat breaking through the fog and approaching the dock"
          },
          {
            "camera_motion": "track",
            "camera_position": "Tight at dock level behind Inwoo's shoulder, about 1 meter from him and slightly lower than his head height, with Suriyeong close behind him in the same axis",
            "stage_index": 5,
            "stage_label": "plea",
            "transition_to_next": "",
            "visual_focus": "Suriyeong standing close behind Inwoo, looking up at him with urgency while he works at the mooring line"
          }
        ],
        "flow_summary": "카메라는 안개 낀 포구의 넓은 적막에서 출발해 수리영의 고립된 기다림과 손안의 전화로 좁혀 들어간다. 이후 안개 속에서 배가 드러나는 방향으로 시선을 돌리고, 선착장으로 따라붙어 인우의 등 뒤에 선 수리영의 간절함까지 밀착한다.",
        "scene_index": 26,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame wider and emptier than the later stages, allowing the fog to erase the water and boats almost completely.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten to an insert-level close-up so Hyesu's name and the missed call notifications dominate over the surrounding harbor context.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Compress the space with a tighter lens so Inwoo's back blocks part of the frame while Suriyeong's upper body and pleading gaze remain clearly visible behind him.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the rooftop room living area, eye-level at about 1.55 meters, 1.2 meters in front of Hyesu standing in the center, lens aimed slightly downward past her smartphone and back up to her face",
            "stage_index": 1,
            "stage_label": "close_observation",
            "transition_to_next": "The camera releases from the locked front view, slowly dollies back a little and tracks laterally across the messy living space to bring Kim detective into the same spatial axis.",
            "visual_focus": "Hyesu's rigid face and the smartphone held in front of her"
          },
          {
            "camera_motion": "track",
            "camera_position": "Along the side of the living area, chest-height at about 1.4 meters, 3 meters from Kim detective, far enough to hold his full body while keeping the room depth behind him",
            "stage_index": 2,
            "stage_label": "reaction",
            "transition_to_next": "On the rattling door sound, the camera continues its lateral movement away from Kim detective and pans toward the entrance, shifting the attention from the argument to the source of the noise.",
            "visual_focus": "Kim detective standing crookedly with a dismissive expression"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Near the inner edge of the living area facing the entrance, eye-level at about 1.5 meters, 2 meters from the old metal door",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the half-open old metal entrance door trembling in the wind"
          }
        ],
        "flow_summary": "카메라는 옥탑방 한가운데 굳어 선 혜수의 얼굴과 스마트폰에서 출발해, 방 안을 가로지르며 김형사의 삐딱한 반응으로 이동한다. 이후 덜커덩거리는 현관문 쪽으로 시선을 넘겨 황량한 공기를 이어간다.",
        "scene_index": 27,
        "shot_assignments": [
          {
            "deviation_note": "Frame slightly tighter than the stage default so Hyesu's fixed stare dominates, with the smartphone kept as the immediate object of her gaze.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Widen the lens and hold a full-body composition to emphasize Kim detective's crooked stance and dismissive attitude.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low over the open water, about 50 meters off the fishing boat's port bow, slightly below deck height, holding a wide distance against the sunset horizon.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The forward move carries the viewer toward the hull, then resolves in a clean cut onto the deck axis as the conversation begins.",
            "visual_focus": "the small fishing boat drifting alone in the red evening sea"
          },
          {
            "camera_motion": "track",
            "camera_position": "On the open deck near the stern side, seated eye level, 2 to 3 meters from Suriyoung and Inwoo, angled across the space between their hands and faces.",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera tracks inward along Suriyoung's extended arm as the map gives way to the old photograph, tightening the visual field onto the evidence in her hand.",
            "visual_focus": "Suriyoung pressing the navigation clue toward Inwoo while he studies it uneasily"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Very close above Suriyoung's hand, about 20 to 30 centimeters from the old photograph, at chest height, lens angled downward so the deck becomes a shallow background.",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "The camera follows Inwoo's locked eyeline away from the photograph and shifts into a tight reaction angle on his face.",
            "visual_focus": "the worn, blood-stained old photograph and the tiny written clue on it"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At Inwoo's eye level, less than one meter from his face, slightly off the photograph's axis so his gaze remains trapped just below lens line.",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "As Inwoo abruptly rises, the camera yields backward and swings with his movement, breaking the controlled close-up into a more urgent pursuit path toward the wheelhouse.",
            "visual_focus": "Inwoo's distorted, alarmed expression as recognition overtakes him"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "On the deck behind and slightly to the side of Inwoo, shoulder height, moving from the seated area toward the wheelhouse entrance with Suriyoung entering the pursuit line behind him.",
            "stage_index": 5,
            "stage_label": "pursuit",
            "transition_to_next": "",
            "visual_focus": "Inwoo rushing toward the wheelhouse while Suriyoung follows to stop him"
          }
        ],
        "flow_summary": "카메라는 해질녘 바다 위의 소형어선을 멀리서 밀고 들어와 갑판의 대화 축으로 옮겨 붙고, 수리영의 손에 든 사진을 따라 인우의 얼굴까지 점점 조여 들어간다. 인우의 당황이 폭발하는 순간부터는 안정된 관찰 동선이 무너지고, 조타실을 향한 다급한 추적 흐름으로 전환된다.",
        "scene_index": 28,
        "shot_assignments": [
          {
            "deviation_note": "Use the widest framing of this stage, allowing the boat to feel small against the sunset sea before the camera begins its inward path.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten to a near-macro insert so the photograph fills most of the frame; keep Suriyoung's hand present only as the physical anchor of the continuous move.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Hold the push just long enough for Inwoo's widened eyes and strained expression to register before he bolts toward the wheelhouse.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Inside the wheelhouse beside the helm, chest height, about 6 feet from Inwoo and Suriyoung, angled across the wheel toward their tense bodies",
            "stage_index": 1,
            "stage_label": "confrontation_setup",
            "transition_to_next": "The camera slips around the helm and lowers toward Suriyoung's hands as the argument turns to the photograph.",
            "visual_focus": "Inwoo and Suriyoung locked in confrontation near the helm"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low and close over Suriyoung's hands, about 12 inches above the old photograph, lens tilted downward at a shallow angle",
            "stage_index": 2,
            "stage_label": "evidence_close_observation",
            "transition_to_next": "From the photograph, the camera tilts and rises along Suriyoung's pointing hand toward Inwoo as he hears the name.",
            "visual_focus": "Suriyoung's finger pressing the image of the young girl in the old photograph"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Tight at Inwoo's front quarter, eye level, about 2 feet from his face, with the dim wheelhouse behind him",
            "stage_index": 3,
            "stage_label": "name_shock",
            "transition_to_next": "The camera drifts past Inwoo's face and pivots over his shoulder toward the darker wall of the wheelhouse.",
            "visual_focus": "Inwoo's stunned face as the name lands"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Eye level near Inwoo's shoulder line, 5 feet from the dark wall, wide enough to take in the cramped surface of the wheelhouse wall",
            "stage_index": 4,
            "stage_label": "marking_reveal",
            "transition_to_next": "The pan completes on the wall, then the camera tracks backward and sideways to return to Suriyoung as her body begins to fail.",
            "visual_focus": "The wall covered with many red circular paint markings"
          },
          {
            "camera_motion": "track",
            "camera_position": "Close beside Suriyoung as she collapses into Inwoo, then settling just below Inwoo's eye line, about 18 inches from his face and shoulder",
            "stage_index": 5,
            "stage_label": "collapse_reaction",
            "transition_to_next": "",
            "visual_focus": "Inwoo's cold eyes looking down at Suriyoung collapsed against him"
          }
        ],
        "flow_summary": "카메라는 조타기 옆의 격한 대치에서 출발해 수리영의 손끝과 사진으로 낮게 파고든 뒤, 인우의 충격을 거쳐 벽면의 붉은 원형 표식들을 드러낸다. 마지막에는 다시 두 사람에게 돌아와 쓰러진 수리영 위로 내려다보는 인우의 서늘한 시선에 멈춘다.",
        "scene_index": 29,
        "shot_assignments": [
          {
            "deviation_note": "Use a tighter macro framing than the stage default so the pressed fingertip and the young girl's figure dominate the frame.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold the pan at its widest endpoint to make the dense red circular markings read as a disturbing full-wall pattern.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 4
          },
          {
            "deviation_note": "Settle the camera slightly lower, near Suriyoung's collapsed shoulder, so Inwoo's eyes appear to look down into the frame without emotion.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 11,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Very wide offshore vantage point at high eye level, far from the waterline, looking across the open sea toward the setting horizon",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The frame holds the glowing sea, then slowly redirects attention toward the darker band ahead, preparing a move from sunset scale to the fog barrier.",
            "visual_focus": "the golden reflection of the setting sun spread across the ocean surface"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Wide offshore position at medium height, still distant from the boat path, oriented toward the massive fog bank lying across the sea",
            "stage_index": 2,
            "stage_label": "reveal",
            "transition_to_next": "A clean cut jumps from the distant view of the fog wall to a low trailing position directly behind the small fishing boat, turning the abstract barrier into an immediate destination.",
            "visual_focus": "the dark, dense fog bank forming a wall over the water"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low trailing camera just above the water, several boat lengths behind the small fishing boat, centered on its stern as it moves away into the fog",
            "stage_index": 3,
            "stage_label": "approach_into_fog",
            "transition_to_next": "",
            "visual_focus": "the rear of the small fishing boat, its wake, and the bow disappearing into the dense fog"
          }
        ],
        "flow_summary": "카메라는 해질녘 바다의 넓은 풍경에서 시작해 거대한 안개 장벽으로 시선을 옮긴 뒤, 컷으로 배의 뒤를 따라붙어 안개 속으로 함께 진입한다. 멀리서 바라보던 세계의 경계가 마지막에는 배 바로 뒤의 물살과 사라지는 뱃머리로 좁혀진다.",
        "scene_index": 30,
        "shot_assignments": [
          {
            "deviation_note": "Keep the stern centered while allowing the bow to be half-obscured by the fog wall; emphasize the long white wake stretching back toward the camera.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          }
        ]
      }
    ]
  },
  "step_id": "scene_camera_flow",
  "run_id": "e53e4142-c5e5-4f6d-910f-d02d8398f912",
  "resolved_model": "gpt",
  "updated_at": "2026-05-07T05:46:39.559889+00:00",
  "schema_version": 1,
  "config_hash": "99914b932bd37a50",
  "project_config_snapshot": {}
}