{
  "status": "completed",
  "completed_count": 30,
  "applicable_count": 30,
  "failed_count": 0,
  "data": {
    "scenes": [
      {
        "flow_stages": [
          {
            "camera_motion": "handheld",
            "camera_position": "Low to the forest floor, about knee height, tracking just behind and slightly to the side of the fleeing Korean man through dense undergrowth",
            "stage_index": 1,
            "stage_label": "pursuit_establishing",
            "transition_to_next": "The camera closes the distance from his feet and injured leg toward his upper body, rising slightly as it keeps pace with his stumble.",
            "visual_focus": "the Korean man's uneven run through the brush and the immediate danger suggested by his wounds"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Chest-height and close in front of the Korean man, backing through the trees at roughly two meters away",
            "stage_index": 2,
            "stage_label": "fear_approach",
            "transition_to_next": "As his fear peaks, the camera begins to drift off his face toward the open space beside him, preparing for the incoming threat.",
            "visual_focus": "the Korean man's terrified expression and the space around him where the attack may come from"
          },
          {
            "camera_motion": "track",
            "camera_position": "Three-quarter front-left of the Korean man, shoulder height, about three meters away, with enough side clearance to catch movement entering from the forest edge",
            "stage_index": 3,
            "stage_label": "attack_reveal",
            "transition_to_next": "The camera rides the attacking motion downward, snapping from the airborne reach into a fast drop toward the forest floor as both bodies collide.",
            "visual_focus": "the black silhouette launching through the air toward the Korean man with arms extended"
          },
          {
            "camera_motion": "static",
            "camera_position": "Very low on the forest floor, slightly canted, about one meter from the fallen bodies and looking across the ground plane",
            "stage_index": 4,
            "stage_label": "impact_aftermath",
            "transition_to_next": "",
            "visual_focus": "the black silhouette overlapped on top of the Korean man after the impact"
          }
        ],
        "flow_summary": "카메라는 숲바닥 가까이에서 도망치는 한국인 남자를 따라붙다가 그의 공포를 정면에서 압박하고, 옆 공간으로 시선을 열어 검은 인영의 돌진을 포착한다. 공격 순간에는 낙하 방향을 따라 바닥으로 떨어지듯 내려가며, 충돌 후 겹쳐 쓰러진 두 형체에 정지한다.",
        "scene_index": 1,
        "shot_assignments": [
          {
            "deviation_note": "Freeze the motion at the apex of the leap; hold the Korean man in the receiving line of the attack while the black silhouette hangs suspended in the frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Settle the camera fully after the impact, widening only enough to read both bodies overlapped on the ground.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "At the mouth of the dim back alley, eye level, about 20 feet from the utility pole, aligned slightly off-center to the figures under the streetlight",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera pushes straight down the alley toward the utility pole, narrowing the distance until the bodies fill the frame.",
            "visual_focus": "The two figures pressed together beneath the weak streetlight near the utility pole"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Shoulder height, within 3 feet of the couple, tight side angle beside the utility pole, close enough to isolate the man's face and the woman's neck",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "As the woman loses strength, the camera dips and tilts downward with her movement, staying beside the pair rather than cutting away.",
            "visual_focus": "The man's mouth at the woman's neck, the violent contact, and the blood at the point of contact"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low beside the pavement, about 4 feet from the utility pole, angled downward from the couple's side toward the ground",
            "stage_index": 3,
            "stage_label": "fall_reveal",
            "transition_to_next": "",
            "visual_focus": "The woman's body coming to rest face-down on the alley floor"
          }
        ],
        "flow_summary": "카메라는 어두운 골목 입구에서 전봇대 아래 밀착된 두 사람을 향해 천천히 접근한 뒤, 남자의 입과 여자의 목덜미에 시선을 고정한다. 이후 여자가 힘없이 무너지자 카메라는 같은 위치 축을 따라 아래로 따라 내려가 바닥에 멈춘 몸을 드러낸다.",
        "scene_index": 2,
        "shot_assignments": [
          {
            "deviation_note": "Hold the motion almost still for a frozen instant on the bloodied contact point at the neck.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Complete the downward tilt and settle into a still frame once the body stops moving on the pavement.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "pan",
            "camera_position": "Behind the police line at eye level, about 8 meters from the investigators, looking slightly downward into the secured ground area",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The pan follows the line of activity and then eases forward through a visible opening, bringing the camera closer to the recovery area without a spatial jump.",
            "visual_focus": "police officers crouched near the ground behind the police line"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside the secured area at stretcher height, about 1.5 meters from the side of the stretcher, angled slightly down toward its surface",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After holding on the stretcher, the camera resumes a slow lateral track past it and turns toward the cluster of detectives nearby.",
            "visual_focus": "the covered body lying on the stretcher"
          },
          {
            "camera_motion": "track",
            "camera_position": "At shoulder height on the edge of the detective group, about 3 meters from Hyesu, facing inward toward the center of the group",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "Hyesu directing the investigation among the detectives"
          }
        ],
        "flow_summary": "카메라는 폴리스 라인 바깥에서 현장 전체를 훑은 뒤, 안쪽으로 접근해 들것 위 시신에 잠시 멈춘다. 이후 들것을 지나 형사들 무리와 혜수 쪽으로 이어지며 사건 지휘의 중심을 드러낸다.",
        "scene_index": 3,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame as a frozen news-footage moment, keeping the covered body centered on the stretcher.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "High aerial position above the outskirts of Incheon, looking down at an old villa rooftop room and the surrounding low-rise buildings from a distant bird's-eye angle",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera holds the aerial tableau, then begins a slow, controlled crane descent toward the old rooftop room, tightening the sense of place without changing the viewing direction abruptly.",
            "visual_focus": "the old villa rooftop room within the surrounding neighborhood"
          },
          {
            "camera_motion": "crane",
            "camera_position": "Elevated exterior position gradually lowering toward the rooftop level, still outside the building and maintaining a wide view of the old villa among nearby structures",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "",
            "visual_focus": "the rooftop room as the visual center of the neighborhood"
          }
        ],
        "flow_summary": "카메라는 인천 변두리의 낡은 빌라 옥탑방을 높은 부감에서 정지된 풍경처럼 포착한 뒤, 그 공간을 향해 천천히 내려갈 수 있는 흐름으로 설계된다. 뉴스 음성의 불안감을 공간 전체에 먼저 깔고, 옥탑방을 지역의 불안이 응축된 지점으로 고정한다.",
        "scene_index": 4,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame completely still for the selected moment, emphasizing the bird's-eye overview before any descent begins.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Waist-high at the kitchen sink, close to the counter surface, angled across the faucet and stovetop toward the small living area",
            "stage_index": 1,
            "stage_label": "domestic_establishing",
            "transition_to_next": "The camera tracks laterally from the sink and steaming pot line toward the living room, letting the kitchen foreground slide away as Minsuk and the television become dominant.",
            "visual_focus": "herbs under running water, the boiling pot, and the tense domestic quiet beyond them"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Eye-level in the living room, about three meters from Minsuk, slightly off her front-left side with the television glow implied just beyond frame",
            "stage_index": 2,
            "stage_label": "anxious_observation",
            "transition_to_next": "As Suriyoung enters and the television is shut off, the camera eases with the action toward the dining table, shifting attention from Minsuk's guarded face to the daughter's seat.",
            "visual_focus": "Minsuk staring toward the television with a dark, fixed expression"
          },
          {
            "camera_motion": "track",
            "camera_position": "Seated height beside the dining table, about one meter from Suriyoung, angled across the tabletop toward her face and the cup in her hand",
            "stage_index": 3,
            "stage_label": "table_exchange",
            "transition_to_next": "A hard cut relocates the camera to the entryway for the later departure beat, marking the time jump after the table conversation.",
            "visual_focus": "Suriyoung reacting to the bitter drink while Minsuk remains present just outside the main focus"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low to mid height near the entryway, two meters from the door area, positioned to see Suriyoung preparing to leave and Minsuk nearby in the room",
            "stage_index": 4,
            "stage_label": "departure_reposition",
            "transition_to_next": "The camera holds through their closeness, then tilts and pushes attention downward from the affectionate exchange toward Minsuk's wrist.",
            "visual_focus": "Suriyoung and Minsuk sharing a brief warm departure moment"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Close and slightly below shoulder height beside Minsuk, within half a meter of her arm, angled downward toward her wrist",
            "stage_index": 5,
            "stage_label": "mark_reveal",
            "transition_to_next": "",
            "visual_focus": "the small circular mark on Minsuk's wrist"
          }
        ],
        "flow_summary": "카메라는 싱크대와 냄비의 생활감에서 시작해 TV를 바라보는 민숙의 불안으로 천천히 접근하고, 식탁의 대화로 자연스럽게 옮겨간다. 이후 현관 쪽으로 시간 점프를 명시한 컷을 거쳐 모녀의 가까운 순간에서 민숙의 손목 표식으로 시선을 좁힌다.",
        "scene_index": 5,
        "shot_assignments": [
          {
            "deviation_note": "민숙의 얼굴 긴장을 더 강하게 읽히도록 TV 자체는 프레임 밖 또는 흐릿한 가장자리로 남긴다.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "컵과 찡그린 눈을 같은 초점면에 두기 위해 단계 기본 위치보다 약간 더 낮고 가까운 테이블 높이로 조정한다.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 3
          },
          {
            "deviation_note": "표식이 선명하게 보이도록 손목만 극단적으로 좁히고, 인물의 얼굴은 프레임 밖으로 배제한다.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 13,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the coastal road shoulder, hip height, about 3 meters from the bicycle, perpendicular to Suriyoung in a clean side profile.",
            "stage_index": 1,
            "stage_label": "side_establishing",
            "transition_to_next": "As Suriyoung begins to push off, the camera releases from the static side view and starts moving parallel to her path.",
            "visual_focus": "Suriyoung seated on the bicycle with earbuds, feet poised on the pedals against the open coastal road."
          },
          {
            "camera_motion": "track",
            "camera_position": "Alongside the bicycle on the road edge, hip-to-chest height, maintaining a medium side distance while moving parallel with Suriyoung.",
            "stage_index": 2,
            "stage_label": "moving_with_character",
            "transition_to_next": "The camera gradually eases slightly forward and rotates its attention from her side profile toward her face and the sea breeze around her.",
            "visual_focus": "Suriyoung riding along the coastal road, energized by the air and rhythm of the ride."
          },
          {
            "camera_motion": "pan",
            "camera_position": "Still beside the road at moving height, slightly ahead of Suriyoung’s front wheel line, angled back toward her face and the open seaside space.",
            "stage_index": 3,
            "stage_label": "sensory_reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyoung’s bright expression as the seaside atmosphere surrounds her, with the offscreen dog bark entering the moment."
          }
        ],
        "flow_summary": "카메라는 해안가 도로 옆에서 멈춰 있는 수리영의 측면을 먼저 잡고, 그녀가 출발하면 자전거와 나란히 이동하며 활기찬 라이딩의 흐름을 이어간다. 마지막에는 약간 앞서가며 얼굴과 주변 공기를 받아들이는 반응 쪽으로 시선을 돌린다.",
        "scene_index": 6,
        "shot_assignments": [
          {
            "deviation_note": "",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Low camera outside the kennel bars at dog head height, about 1 meter from the Rottweiler, facing straight into the cage.",
            "stage_index": 1,
            "stage_label": "establishing_threat",
            "transition_to_next": "The camera pulls its attention back from the bars and slides slightly into the kennel corridor, aligning with Suriyeong's eyeline toward the dog.",
            "visual_focus": "the Rottweiler baring its teeth and lifting its front paw behind the metal bars"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Eye-level camera in the kennel corridor, just beside the cage front, moving from a medium distance toward Suriyeong and the dog's face line.",
            "stage_index": 2,
            "stage_label": "approach_and_control",
            "transition_to_next": "As the dog's aggression softens, the camera arcs right along the cage front toward the dog's rear side, revealing the doctor's access point.",
            "visual_focus": "Suriyeong's steady gaze holding the Rottweiler's attention as the dog begins to calm"
          },
          {
            "camera_motion": "static",
            "camera_position": "Waist-high tight angle at the side of the kennel, about 50 centimeters from the Rottweiler's rear flank, with the doctor's hands entering from frame edge.",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "After the injection moment, the camera tracks back into the corridor and follows Suriyeong as she turns away toward the row of dogs and her phone call.",
            "visual_focus": "the doctor's hand, the syringe, and the Rottweiler's hip"
          },
          {
            "camera_motion": "track",
            "camera_position": "Shoulder-height camera trailing Suriyeong by about 1 meter along the kennel corridor, looking past her toward the cages and the shelter activity.",
            "stage_index": 4,
            "stage_label": "corridor_transition",
            "transition_to_next": "On the helper's call, the movement resolves with a practical cut into the grooming work area, keeping Suriyeong's forward momentum continuous.",
            "visual_focus": "Suriyeong moving from the cages toward the next task while the shelter remains busy around her"
          },
          {
            "camera_motion": "static",
            "camera_position": "Waist-high close side angle at the grooming table, about 70 centimeters from Suriyeong's hands and the dog's fur.",
            "stage_index": 5,
            "stage_label": "grooming_close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's scissors, her hand resting on the dog's fur, and the grooming action"
          }
        ],
        "flow_summary": "카메라는 철창 앞의 위협적인 로트와일러에서 시작해 수리영의 시선과 의사의 주사 순간을 따라가며 보호원 복도의 업무 흐름으로 이동한다. 이후 도우미의 부름을 계기로 그 움직임이 미용 작업대로 이어지고, 수리영의 손과 가위에 가까이 정착한다.",
        "scene_index": 7,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame at the instant of maximum aggression, with the raised front paw and exposed teeth emphasized through the bars.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten the framing slightly so the syringe entering the hip becomes the dominant detail, with the doctor's face mostly outside the frame.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Settle into a clean locked close frame on the scissors, Suriyeong's hand, and the dog's fur, minimizing background shelter activity.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Exterior market street, eye-level, moving parallel to the curb about 8 feet from Suri-young as she rides toward the large mart entrance at dusk",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera continues its lateral track, then eases forward toward the mart frontage as she stops and parks the bicycle near the entrance.",
            "visual_focus": "Suri-young navigating through neon-lit street activity toward the mart"
          },
          {
            "camera_motion": "track",
            "camera_position": "Just inside the mart entrance, eye-level, following 4 to 6 feet behind Suri-young through the display aisles",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The camera arcs around the aisle end and settles into a frontal two-person angle as Suri-young approaches the female employee.",
            "visual_focus": "Suri-young searching the aisles for her mother"
          },
          {
            "camera_motion": "static",
            "camera_position": "Interior mart aisle, eye-level medium distance, about 5 feet from Suri-young and the female employee, positioned slightly off their shared eyeline for a balanced face-to-face two-shot",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "After the exchange, the camera pans and subtly tracks toward the side aisle where another employee enters the conversation.",
            "visual_focus": "Suri-young confronting the female employee with her question about her mother"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Interior near the aisle end, eye-level, held between Suri-young and the male employee at a medium distance",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "A logical cut carries the movement back to the mart entrance, matching Suri-young's decision to leave and check outside.",
            "visual_focus": "The male employee revealing that Min-sook had been seen talking with someone outside, and Suri-young's confused reaction"
          },
          {
            "camera_motion": "static",
            "camera_position": "Exterior just beyond the mart automatic doors, eye-level, facing the entrance from about 6 feet away with the street and parked bicycle in the surrounding space",
            "stage_index": 5,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suri-young stepping out of the mart and calling on her smartphone when her mother does not answer"
          }
        ],
        "flow_summary": "카메라는 번화가에서 마트 입구까지 수리영의 이동을 따라 들어간 뒤, 진열대 사이의 탐색과 직원들과의 대화를 한 흐름으로 좁혀 간다. 이후 남자 직원의 말로 불안이 생긴 순간 논리적 컷으로 다시 자동문 밖으로 빠져나와, 전화를 받지 않는 상황을 정지감 있게 붙잡는다.",
        "scene_index": 8,
        "shot_assignments": [
          {
            "deviation_note": "Hold the two-shot still for a beat so the face-to-face question lands clearly before cutting or panning toward the next speaker.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          },
          {
            "deviation_note": "Keep the automatic doors behind her visible to preserve the exit geography, while tightening slightly on the phone gesture.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 9,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Low wide position on the shoulder of the dark coastal road, about 12 meters ahead of the bicycle path, lens height near the road surface",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a low dolly-in along the road axis toward Sooriyoung, tightening the distance while keeping the coastline darkness around her.",
            "visual_focus": "the empty dark coastal road and Sooriyoung paused on the bicycle in the distance"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low three-quarter frontal position on the road ahead of Sooriyoung, closing from medium distance to near full-body distance at handlebar height",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "",
            "visual_focus": "Sooriyoung leaning forward with her foot set on the bicycle pedal, held in a tense still moment before riding off"
          }
        ],
        "flow_summary": "카메라는 어두운 해안도로의 낮은 지점에서 수리영을 멀리 포착한 뒤, 도로 축을 따라 천천히 다가가 자전거에 올라탄 정지 순간의 긴장으로 수렴한다. 이동은 공간을 먼저 드러내고 인물의 출발 직전 자세에 집중하는 짧은 접근 흐름이다.",
        "scene_index": 9,
        "shot_assignments": [
          {
            "deviation_note": "Hold the dolly-in nearly still at the end of the move so the frame reads as a suspended pause rather than active riding.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low ankle-height camera on the rooftop floor, several feet behind and slightly to the side of the approaching man, moving toward the rooftop room's iron door.",
            "stage_index": 1,
            "stage_label": "approach",
            "transition_to_next": "The camera continues forward with the man's path and rises slightly into a tighter position at the door seam.",
            "visual_focus": "the man's approach across the rooftop toward the iron door"
          },
          {
            "camera_motion": "static",
            "camera_position": "Tight close-up position just outside the iron door, at hand height and only inches from the narrow door seam.",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "The camera holds the same axis while the paper is pressed inward, then creeps visually toward the seam as the lock gives way.",
            "visual_focus": "the man's fingers gripping the advertising flyer caught in the door gap"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Extreme close position directly facing the iron door gap, lens aligned with the thin opening at about chest height.",
            "stage_index": 3,
            "stage_label": "reveal",
            "transition_to_next": "A hard cut shifts the viewpoint from the exterior door seam to the rooftop window reflection after the man enters.",
            "visual_focus": "the iron door opening by a narrow crack after the lock releases"
          },
          {
            "camera_motion": "cut",
            "camera_position": "Outside the rooftop room window, medium distance from the glass, angled to catch the dark reflected shapes inside rather than looking directly through.",
            "stage_index": 4,
            "stage_label": "shadow_reveal",
            "transition_to_next": "",
            "visual_focus": "two reflected silhouettes in the window, one bending down over the other's shoulder"
          }
        ],
        "flow_summary": "카메라는 옥상 바닥의 낮은 시선으로 남자의 접근을 따라가다가 철문 문틈의 손과 전단지, 미세하게 열리는 틈으로 점점 압축된다. 남자가 안으로 사라지는 순간 외부 창문 반사로 논리적 컷을 걸어, 내부의 폭력적인 그림자를 직접 보이지 않고 드러낸다.",
        "scene_index": 10,
        "shot_assignments": [
          {
            "deviation_note": "Freeze the movement at the instant the fingers first secure the flyer; keep the frame tight enough that the man's face remains unseen.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold on the thinnest visible opening of the door, emphasizing the minimal gap and the off-screen sound of the released lock.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "Use the window glass as the primary surface; the figures should read only as reflected silhouettes, with one head lowered toward the other's shoulder.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Low front-side tracking position in the dark alley, about handlebar height and one meter ahead of Suriyeong's bicycle path",
            "stage_index": 1,
            "stage_label": "approach_from_alley",
            "transition_to_next": "The camera keeps moving with her until the villa entrance fills the frame, then follows her momentum through the doorway into the courtyard.",
            "visual_focus": "Suriyeong riding quickly through the alley and gripping the bicycle as she heads toward the villa"
          },
          {
            "camera_motion": "track",
            "camera_position": "Shoulder-height position just inside the villa courtyard, moving laterally from the doorway toward the dim back corner",
            "stage_index": 2,
            "stage_label": "courtyard_arrival",
            "transition_to_next": "As the bicycle is left in the back corner, the camera abandons the bicycle and pivots toward the rooftop stairway, beginning to follow Suriyeong upward.",
            "visual_focus": "the bicycle being left roughly in the secluded corner of the courtyard and Suriyeong turning toward the stairs"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Close behind Suriyeong at waist-to-shoulder height on the narrow rooftop stairs, keeping a tight distance of about one meter",
            "stage_index": 3,
            "stage_label": "stair_ascent",
            "transition_to_next": "The handheld climb slows as Suriyeong reacts to the smell; the camera compresses the space behind her and holds near the middle of the stairway.",
            "visual_focus": "Suriyeong's urgent climb up the rooftop stairs"
          },
          {
            "camera_motion": "static",
            "camera_position": "Mid-stair landing position at Suriyeong's side, eye-level and close enough to catch her pause without leaving the stairwell space",
            "stage_index": 4,
            "stage_label": "reaction_to_smell",
            "transition_to_next": "The camera resumes upward movement behind her, cresting the final steps and letting the rooftop doorway enter her sightline.",
            "visual_focus": "Suriyeong stopping as the foul smell registers"
          },
          {
            "camera_motion": "static",
            "camera_position": "Eye-level position at the top of the rooftop stairs, slightly behind and to the right of Suriyeong, looking across the rooftop toward the rooftop room entrance",
            "stage_index": 5,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "the half-open metal entrance door at the rooftop room, seen at the end of Suriyeong's line of sight"
          }
        ],
        "flow_summary": "카메라는 골목에서 빌라 마당으로 수리영의 움직임을 따라 들어간 뒤, 자전거를 버려두고 계단을 오르는 동선을 끊지 않고 추적한다. 악취에 멈칫한 지점에서 속도를 늦춘 후 옥상에 도착하며, 수리영의 시선 끝에 반쯤 열린 철문을 정지된 프레임으로 드러낸다.",
        "scene_index": 11,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame in a tense pause, keeping Suriyeong only as a sightline anchor while the half-open metal door becomes the dominant subject.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the dim living room at standing eye level, about 10 feet from Suriyeong, moving from the entrance line toward the inner rooms",
            "stage_index": 1,
            "stage_label": "establishing_investigation",
            "transition_to_next": "The camera tracks past the living room clues and follows Suriyeong toward her room door, tightening the path into the darker doorway.",
            "visual_focus": "Suriyeong entering the apartment and scanning the silent living room"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Just inside Suriyeong's room, low at knee height, 4 feet behind the doorway and angled down toward the floor",
            "stage_index": 2,
            "stage_label": "blood_trail_discovery",
            "transition_to_next": "The dolly continues along the line of bloody footprints, rising slightly as the trail leads the eye toward the closed curtain.",
            "visual_focus": "The pooled blood on the floor and the bloody footprints leading toward the curtain"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Near the curtain at waist height, slightly behind and to the side of Suriyeong, less than 3 feet from her hand",
            "stage_index": 3,
            "stage_label": "curtain_reveal",
            "transition_to_next": "After the curtain is pulled aside, the camera tilts from the revealed body back toward Suriyeong's face, then cuts to a more frontal reaction position.",
            "visual_focus": "Suriyeong pulling the curtain aside and revealing Minsuk seated behind it"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "In front of Suriyeong inside the room at chest height, about 5 feet away, with Minsuk's position just off her eyeline",
            "stage_index": 4,
            "stage_label": "shock_reaction",
            "transition_to_next": "The camera drifts backward with Suriyeong's recoil, then arcs closer to the bed side as her attention shifts to the phone, the photo, and the marks near Minsuk.",
            "visual_focus": "Suriyeong frozen in shock as she processes Minsuk's condition"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At the bed side facing Suriyeong head-on at eye level, starting about 6 feet away and pushing into a tight frontal distance",
            "stage_index": 5,
            "stage_label": "panic_escalation",
            "transition_to_next": "",
            "visual_focus": "Suriyeong's escalating terror as she sees the unnatural signs and screams"
          }
        ],
        "flow_summary": "카메라는 거실의 불길한 단서들을 지나 수리영의 방 안으로 낮게 파고들며 핏자국을 따라가고, 커튼 앞에서 시선을 들어 참혹한 발견으로 이어진다. 이후 수리영의 반응을 정면으로 붙잡은 뒤, 방 안의 이상 징후를 따라 더 가까이 밀고 들어가 비명으로 끝난다.",
        "scene_index": 12,
        "shot_assignments": [
          {
            "deviation_note": "Hold the camera lower and more static than the stage's general push so the blood trail reads like a fixed clue before the move continues.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 2
          },
          {
            "deviation_note": "Shift from the side-reveal path into a frontal handheld position, keeping Suriyeong centered and almost motionless while the background remains unstable.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 4
          },
          {
            "deviation_note": "End the push-in on a tighter, symmetrical frontal frame of Suriyeong's distorted face and open mouth.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 16,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At the lower edge of the rooftop exterior, shoulder height, several meters from the stair exit, moving laterally along the open walkway toward the space between the stairs and the parked car.",
            "stage_index": 1,
            "stage_label": "establishing_panic",
            "transition_to_next": "The camera continues forward and slightly right, closing the distance to the meeting point as Hyesu runs toward Suri-young.",
            "visual_focus": "Suri-young emerging from the rooftop stairs and the surrounding rooftop exterior tension"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low chest height, close to Hyesu's side of the walkway, about one meter from Suri-young, angled upward toward Suri-young's lifted face.",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "A sharp reverse cut across their eyeline to Hyesu's side of the confrontation.",
            "visual_focus": "Suri-young looking up at Hyesu while delivering the discovery"
          },
          {
            "camera_motion": "static",
            "camera_position": "Eye level in front of Hyesu, tight distance, with the rooftop walkway behind her falling out of attention.",
            "stage_index": 3,
            "stage_label": "reaction",
            "transition_to_next": "The camera breaks from the held reaction and tracks with Hyesu as she turns toward the rooftop stairs.",
            "visual_focus": "Hyesu frozen in shock, eyes widening at Suri-young's words"
          },
          {
            "camera_motion": "track",
            "camera_position": "Behind and slightly below Hyesu on the stair approach, waist height, moving upward along the first steps of the rooftop stairs with enough depth to include the detective following her.",
            "stage_index": 4,
            "stage_label": "urgent_ascent",
            "transition_to_next": "",
            "visual_focus": "Hyesu rushing up the rooftop stairs with Kim detective climbing behind her"
          }
        ],
        "flow_summary": "카메라는 옥탑방 계단에서 뛰쳐나온 수리영의 공포를 따라 이동하다가 혜수와 맞닥뜨리는 지점으로 밀착한다. 수리영의 고백과 혜수의 충격을 시선축으로 연결한 뒤, 곧바로 계단을 향해 뒤따라 올라가며 수사의 긴박한 전환을 만든다.",
        "scene_index": 13,
        "shot_assignments": [
          {
            "deviation_note": "Hold the dolly-in at its closest point so Suri-young's raised gaze becomes a suspended still moment toward Hyesu.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 2
          },
          {
            "deviation_note": "Use the reverse angle as a locked-off beat, minimizing motion to emphasize Hyesu's sudden shock.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "Let Hyesu remain partially ahead in the frame while Kim detective is isolated behind her in a climbing pose at the end of the upward track.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the entry area at eye level, about 8 feet from the room doorway, aligned behind Hyesu and the detective as the search concludes",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera follows Suriyeong's sudden movement, tracking from the entry area toward her room doorway without breaking spatial continuity.",
            "visual_focus": "Hyesu, the detective, and Suriyeong reacting to the empty apartment"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At the threshold of Suriyeong's room, eye level, starting 6 feet from Suriyeong and pushing to within 2 feet of her face",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After holding on Suriyeong's shock, the camera pulls its attention away and tracks with her as she rushes out toward the dining table.",
            "visual_focus": "Suriyeong's pale face against the unnaturally clean room"
          },
          {
            "camera_motion": "track",
            "camera_position": "Beside the dining table at chest height, moving laterally from Suriyeong's pointing hand toward the detective's skeptical stance",
            "stage_index": 3,
            "stage_label": "disbelief",
            "transition_to_next": "The camera lets the detective's irritation carry the movement back toward Hyesu, then settles closer as Hyesu steps in to protect Suriyeong.",
            "visual_focus": "The empty dining table, Suriyeong's insistence, and the detective's dismissive reaction"
          },
          {
            "camera_motion": "static",
            "camera_position": "Close beside Suriyeong and Hyesu at shoulder height, about 2 feet away, angled slightly from Suriyeong's rear quarter toward Hyesu's hand",
            "stage_index": 4,
            "stage_label": "comfort",
            "transition_to_next": "As the emotional beat quiets, the camera leaves the two women by tracking back through the room doorway and lowering its gaze toward the floor objects.",
            "visual_focus": "Hyesu's hand resting on Suriyeong's shoulder"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low inside Suriyeong's room, about 1 foot above the floor and 3 feet from the bed area, angled downward toward the objects on the floor",
            "stage_index": 5,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "The backpack and doll placed slightly differently in the clean room"
          }
        ],
        "flow_summary": "카메라는 현관 쪽 수색의 끝에서 수리영을 따라 방 안으로 밀고 들어가 그녀의 충격을 포착한 뒤, 식탁과 대립을 거쳐 혜수의 위로로 좁혀진다. 마지막에는 인물에게서 조용히 빠져나와 방 안 낮은 위치로 돌아가, 달라진 백팩과 인형을 불길한 증거처럼 남긴다.",
        "scene_index": 14,
        "shot_assignments": [
          {
            "deviation_note": "Push-in ends tighter than the stage default, isolating only Suriyeong's face and draining the clean room into soft background.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 2
          },
          {
            "deviation_note": "Frame crops out most of both faces to freeze the contact point of Hyesu's hand on Suriyeong's shoulder.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 4
          },
          {
            "deviation_note": "The camera has lowered from the prior human-height comfort beat and holds the objects as the final visual evidence, with no character in frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 12,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At eye level on the seaward side of the bus stop, about 6 meters from the bench, framing the bench against the dark ocean and coastal road lights",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera leaves the wide position with a slow lateral track toward the bench, narrowing attention from the empty coastline to 수리영's stillness.",
            "visual_focus": "수리영 sitting blankly on the bus stop bench with the dark sea behind her"
          },
          {
            "camera_motion": "track",
            "camera_position": "At seated shoulder height beside the bus stop bench, about 1 meter from 수리영, angled slightly from her front-left toward the space where 혜수 steps in",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "As the drink offer hangs in the air, the camera continues its small move upward and back to follow 수리영 rising from the bench.",
            "visual_focus": "혜수's hand holding a drink can in front of 수리영, with 수리영's distracted presence behind it"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Just in front of the bench at chest height, 2 meters from 수리영, backing away along the bus stop curb to keep both women within the same coastal roadside space",
            "stage_index": 3,
            "stage_label": "decision_shift",
            "transition_to_next": "When 수리영 turns away, the camera pivots and joins her direction of movement along the coastal road.",
            "visual_focus": "수리영 abruptly standing and deciding to go home while 혜수 reacts beside the bench"
          },
          {
            "camera_motion": "track",
            "camera_position": "Behind 수리영 at waist-to-shoulder height on the coastal road shoulder, 3 to 5 meters back, moving parallel to the road with the bus stop falling behind",
            "stage_index": 4,
            "stage_label": "departure",
            "transition_to_next": "After following 수리영's first run down the road, the scene cuts to a more distant watching angle near the roadside structure.",
            "visual_focus": "수리영 running away along the coastal road, seen from behind"
          },
          {
            "camera_motion": "cut",
            "camera_position": "Partly concealed behind a roadside structure near the bus stop, low standing height, far enough to hold 혜수 and the road in a compressed distant view",
            "stage_index": 5,
            "stage_label": "watcher_reveal",
            "transition_to_next": "",
            "visual_focus": "the bus stop area and the direction where 수리영 has run, as if observed from hiding"
          }
        ],
        "flow_summary": "카메라는 어두운 바다를 등진 버스정류장의 정적에서 시작해 벤치 곁으로 조심스럽게 다가가고, 혜수의 음료수 제안과 수리영의 결심을 따라 해안도로 쪽으로 흐른다. 수리영이 뛰쳐나간 뒤에는 멀리서 지켜보는 듯한 시선으로 물러나며 불안을 남긴다.",
        "scene_index": 15,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame still and slightly wider than the later stages so the dark sea dominates behind 수리영.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          },
          {
            "deviation_note": "Tighten to the drink can and 혜수's extended hand; let 수리영 remain emotionally present but softer in the background.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          },
          {
            "deviation_note": "Freeze the tracking movement into a rear view of 수리영 already gaining distance, with the bus stop receding behind her.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "At standing eye level just inside the police office doorway, three to four meters from the duty desk, moving in behind and slightly to the side of Hyesu as she enters with her phone.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera keeps following Hyesu across the office aisle toward the duty desk, narrowing the distance to Kim Detective.",
            "visual_focus": "Hyesu entering the quiet office while calling Min-sook, with Kim Detective at the desk in the background."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At standing eye level beside the front corner of the duty desk, about two meters from Kim Detective, angled across the desk toward his seated position.",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The dolly-in continues along the desk edge and settles into a tighter over-the-shoulder angle as Hyesu raises the phone toward Kim Detective.",
            "visual_focus": "The exchange between Hyesu and Kim Detective as her urgency begins to press into his seated space."
          },
          {
            "camera_motion": "static",
            "camera_position": "Tight over Hyesu's shoulder at standing height, close to the desk, with the smartphone held in the foreground just in front of Kim Detective's face.",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "As the phone drops slightly from the foreground, the camera tracks a half step toward Kim Detective's seated side and tilts up to isolate Hyesu's face above him.",
            "visual_focus": "The smartphone screen with Min-sook's saved number and Kim Detective's immediate reaction behind it."
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Near Kim Detective's seated eyeline at the desk, slightly low and less than two meters from Hyesu, looking upward across the desk toward her rigid face.",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "",
            "visual_focus": "Hyesu's hardened expression as she looks down at Kim Detective, making her bad feeling unmistakable."
          }
        ],
        "flow_summary": "카메라는 혜수를 따라 경찰서 사무실 안으로 들어와 김형사의 책상까지 자연스럽게 접근한 뒤, 휴대폰 화면을 김형사 눈앞에 밀어붙이는 압박의 거리로 좁혀진다. 이후 김형사 쪽 낮은 시선으로 자리를 옮겨, 혜수가 그를 내려다보는 불길하고 단호한 표정을 강조한다.",
        "scene_index": 16,
        "shot_assignments": [
          {
            "deviation_note": "Hold the phone screen sharply in the foreground while allowing Kim Detective's eyes and face to remain readable behind it.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 3
          },
          {
            "deviation_note": "Frame Hyesu slightly tighter than the stage default, keeping Kim Detective mostly implied below the frame line to emphasize her downward stare.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Low exterior position at alley-floor height, about 8 feet from the black cat, angled slightly upward toward the lit rooftop room beyond the wall",
            "stage_index": 1,
            "stage_label": "establishing_observation",
            "transition_to_next": "The camera begins a gentle upward tilt and slight track toward the wall as the cat prepares to move, maintaining the lit rooftop room in the background.",
            "visual_focus": "the black cat paused under dawn light, looking up at the lit rooftop room"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low exterior position closer to the wall, lens rising from cat-eye level toward the top edge of the wall",
            "stage_index": 2,
            "stage_label": "transition_to_escape",
            "transition_to_next": "",
            "visual_focus": "the black cat's movement line from the ground toward the wall, with the rooftop room light as the spatial anchor"
          }
        ],
        "flow_summary": "카메라는 새벽 골목의 낮은 위치에서 검은 고양이와 불 켜진 옥탑방을 함께 바라보며 시작한다. 이후 고양이의 움직임을 따라 담장 쪽으로 시선을 들어 올리는 연속 흐름으로 이어진다.",
        "scene_index": 17,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame still for a brief suspended moment before any upward tilt begins, emphasizing the cat's gaze toward the lit rooftop room.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 1
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Low beside the bed, about 2.5 meters from Suriyeong, at the height of a seated person’s face, looking across the room toward the bedroom doorway.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera leaves the bedside axis by beginning a slow track behind Suriyeong as she moves toward the closed room and the window beyond it.",
            "visual_focus": "Suriyeong waking, searching the quiet room, and orienting herself toward the closed door."
          },
          {
            "camera_motion": "track",
            "camera_position": "Shoulder height just behind and slightly to the side of Suriyeong, moving from the doorway into the room and then toward the window, keeping her body and the empty curtain area in the same forward line.",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "After the phone call and backpack pickup, the camera continues with her movement out of the room and resets its angle inside the bathroom to face the mirror plane.",
            "visual_focus": "Suriyeong checking the room, opening the curtain, reacting to the absence of a body, then preparing to leave."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the bathroom, just behind and slightly left of Suriyeong at mirror height, about 0.8 meters from her back, angled so the mirror reflection includes the bathroom wall behind her.",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "When Suriyeong turns from the mirror toward the real wall and then rushes out, the camera pivots with her and tracks through the bathroom doorway toward the living room table.",
            "visual_focus": "The mirror image of Suriyeong and the reflected bathroom wall where the red circle appears."
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "At dining-table height in the living room, very close to the picture frame, about 20 centimeters from the glass, looking directly into the framed photograph.",
            "stage_index": 4,
            "stage_label": "reveal",
            "transition_to_next": "A hard cut jumps from the distorted photograph to Suriyeong’s face across the table, preserving the emotional direction of her gaze back toward the frame.",
            "visual_focus": "The framed photograph of Minsuk and Suriyeong, with Minsuk’s face grotesquely melting."
          },
          {
            "camera_motion": "cut",
            "camera_position": "In front of Suriyeong across the dining table, about 0.6 meters from her face, slightly below eye level, tight enough to isolate her expression.",
            "stage_index": 5,
            "stage_label": "reaction",
            "transition_to_next": "",
            "visual_focus": "Suriyeong’s terrified reaction as she squeezes her eyes shut and screams."
          }
        ],
        "flow_summary": "카메라는 침대 곁의 낮은 정지 시점에서 시작해 수리영의 불안한 동선을 따라 방, 욕실 거울, 거실 식탁으로 점점 가까워진다. 욕실의 반사된 환영에서 식탁 위 사진의 왜곡으로 시선이 수렴한 뒤, 마지막에는 수리영의 공포 반응으로 컷 인한다.",
        "scene_index": 18,
        "shot_assignments": [
          {
            "deviation_note": "Hold the dolly-in at its most rigid point so the red circle is seen primarily as a reflected event on the bathroom wall, with Suriyeong only implied at the mirror edge.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 3
          },
          {
            "deviation_note": "Push the lens to an extreme close distance on the picture frame so the melting face fills the frame and the table context nearly disappears.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 15,
            "stage_index": 4
          },
          {
            "deviation_note": "Use the cut as an abrupt emotional impact; hold Suriyeong’s face in a tight frontal freeze as her eyes shut and mouth opens.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 16,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the quiet supermarket, at eye level in the central aisle, about 8 feet in front of Suriyoung, moving backward between the shelves as she searches.",
            "stage_index": 1,
            "stage_label": "search_approach",
            "transition_to_next": "The camera continues retreating to the aisle end, then gently pans toward the male employee as Suriyoung finds him.",
            "visual_focus": "Suriyoung moving through the supermarket aisles, scanning for the male employee"
          },
          {
            "camera_motion": "pan",
            "camera_position": "At the end of the aisle, eye level, medium distance from Suriyoung and the male employee, angled slightly across the open space between shelves.",
            "stage_index": 2,
            "stage_label": "encounter",
            "transition_to_next": "As the conversation turns to what he saw yesterday, the camera shifts closer to Suriyoung’s side of the exchange.",
            "visual_focus": "Suriyoung facing the male employee during their questioning"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Just beside and slightly behind the male employee’s shoulder line, at Suriyoung’s eye level, moving from a medium close distance to a tight front-facing view of her reaction.",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "Hard cut relocates the camera from the interior conversation to the outside wall where the possible CCTV angle is being checked.",
            "visual_focus": "Suriyoung’s face as she processes the mention of a man and asks about CCTV"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Outside the supermarket near the exterior wall, slightly below Suriyoung’s eye level and a few feet to her front-left, angled upward toward the mounted CCTV area.",
            "stage_index": 4,
            "stage_label": "exterior_reveal",
            "transition_to_next": "",
            "visual_focus": "Suriyoung looking up toward the CCTV position on the supermarket exterior"
          }
        ],
        "flow_summary": "카메라는 한산한 마트 안에서 수리영을 정면으로 받아내며 진열대 사이를 따라가고, 남자 직원과의 대화가 핵심 단서로 좁혀질수록 수리영의 반응으로 밀착한다. 이후 내부에서 외부 벽면으로 명확히 컷 전환되어, CCTV 위치를 올려다보는 수리영의 시선으로 이동한다.",
        "scene_index": 19,
        "shot_assignments": [
          {
            "deviation_note": "Hold the tracking movement briefly into a steadier frontal composition between the shelves.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 1
          },
          {
            "deviation_note": "The dolly-in resolves into a still, tight reaction frame as Suriyoung widens her eyes at the male employee.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Settle the upward tilt into a static moment with Suriyoung’s raised face leading the eye toward the CCTV direction.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the small administrative office, standing-height camera behind the seated security employee and Hyesu, about 2 meters from the desk, looking over their shoulders toward the CCTV monitor",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera begins a slow forward push between the people at the desk, narrowing its view toward the monitor.",
            "visual_focus": "the CCTV monitor framed by the backs and shoulders of the people watching it"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Very close to the desk monitor at seated eye level, less than half a meter from the screen, slightly off-axis to avoid a flat reflection",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "After holding on the unclear footage, the camera eases back from the screen and slides toward the rear of the room, letting the monitor fall out of dominance as Suryoung comes into view.",
            "visual_focus": "the dark, low-quality CCTV footage on the monitor"
          },
          {
            "camera_motion": "track",
            "camera_position": "Standing-height camera just behind and slightly to the side of Hyesu, about 1 meter from Suryoung, angled past the desk toward Suryoung's face",
            "stage_index": 3,
            "stage_label": "reaction",
            "transition_to_next": "The camera continues its lateral move across the desk line, panning away from Suryoung toward the security employee as the conversation shifts to the CCTV copy request.",
            "visual_focus": "Suryoung's tense face as she watches the monitor"
          },
          {
            "camera_motion": "static",
            "camera_position": "Across the desk from the security employee at seated eye level, medium-close distance of about 1 meter, angled slightly from Hyesu's side toward the employee",
            "stage_index": 4,
            "stage_label": "response",
            "transition_to_next": "",
            "visual_focus": "the security employee acknowledging Hyesu's request"
          }
        ],
        "flow_summary": "카메라는 총무과 책상 뒤편에서 CCTV 모니터로 천천히 밀고 들어가 어두운 화면을 확인한 뒤, 다시 빠져나오며 수리영의 불안을 포착한다. 이후 책상선을 따라 보안직원 쪽으로 시선을 옮겨 대화의 결정을 받는 흐름으로 마무리된다.",
        "scene_index": 20,
        "shot_assignments": [
          {
            "deviation_note": "Frame the monitor tightly so the dark CCTV image nearly fills the shot, allowing only minimal screen edge context.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Settle the track into a brief stillness on Suryoung's furrowed brow and bitten lip, compressing the room behind her.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 3
          },
          {
            "deviation_note": "Hold on the security employee at the completion of the nod, with the desk and monitor implied off-frame rather than emphasized.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Eye-level wide position just inside the police office entrance, several meters from the main desks, looking inward across the busy room.",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "A clear temporal cut skips forward from the crowded office to the moment after the detectives have rushed out, preserving the same room orientation but removing the crowd.",
            "visual_focus": "Hyesu, Suri-young, the detectives, and the office desks as one working environment"
          },
          {
            "camera_motion": "static",
            "camera_position": "Eye-level medium-wide position from the far side of the office, about 3 meters from Hyesu's desk, facing Suri-young alone in the now-empty room.",
            "stage_index": 2,
            "stage_label": "isolation",
            "transition_to_next": "The camera begins a slow physical move toward Hyesu's desk, dropping its gaze from Suri-young to the desktop surface.",
            "visual_focus": "Suri-young sitting alone at Hyesu's desk, surrounded by the silent police office"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low desktop-height position, 8 to 12 inches above Hyesu's desk, at macro close range, angled downward across the scattered case photographs.",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "The camera tilts and rises from the photographs toward Suri-young's face as she lifts one image into her hands.",
            "visual_focus": "The disturbing murder-case photographs spread messily across the desk"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Close eye-level position at the front edge of Hyesu's desk, about 2 feet from Suri-young, looking slightly up from the photographs to her face.",
            "stage_index": 4,
            "stage_label": "reaction",
            "transition_to_next": "A notification sound motivates a pan and short track across the nearby desks toward the detective's workstation and monitor.",
            "visual_focus": "Suri-young frozen with the photograph in her hand, shocked by what she sees"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Monitor-height position beside the detective's desk, starting over Suri-young's shoulder and pushing to a screen-filling close-up.",
            "stage_index": 5,
            "stage_label": "reveal",
            "transition_to_next": "",
            "visual_focus": "The maritime map on the monitor with red coordinates marking the last phone location"
          }
        ],
        "flow_summary": "카메라는 붐비던 경찰서 사무실을 시간 점프로 비운 뒤, 홀로 남은 수리영을 기준으로 혜수의 책상 위 사진들까지 낮게 파고든다. 이후 수리영의 충격적인 반응을 거쳐 알림 소리를 따라 옆 책상의 모니터로 이동하며 좌표의 실체를 드러낸다.",
        "scene_index": 21,
        "shot_assignments": [
          {
            "deviation_note": "The lens drops slightly lower than the stage baseline for a tighter, more oppressive close-up of the photographs, letting the frame fill with the scattered images.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 3
          },
          {
            "deviation_note": "The tilt completes into a held, almost frozen close-up; the photograph remains partially visible near the bottom edge while Suri-young's widened eyes dominate the frame.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 4
          },
          {
            "deviation_note": "The push-in ends with the monitor image fully occupying the frame, cropping out Suri-young and the desk so the red coordinates become the only visual emphasis.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 11,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "Across the street from the police station entrance, eye-level height, wide distance facing the parked bicycle and Suriyoung",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "The camera dollies forward across the sidewalk axis, tightening from the exterior space toward Suriyoung on the bicycle.",
            "visual_focus": "Suriyoung seated on the parked bicycle outside the police station"
          },
          {
            "camera_motion": "static",
            "camera_position": "Near the front-left side of the bicycle, waist-to-chest height, medium distance angled slightly toward Suriyoung on the saddle",
            "stage_index": 2,
            "stage_label": "close_observation",
            "transition_to_next": "As Suriyoung begins to move, the camera releases from the static hold into a lateral track parallel to the bicycle.",
            "visual_focus": "Suriyoung's poised body on the saddle and the first pressure on the pedals"
          },
          {
            "camera_motion": "track",
            "camera_position": "Alongside the bicycle path at street level, eye-level height, medium distance moving parallel to Suriyoung",
            "stage_index": 3,
            "stage_label": "departure",
            "transition_to_next": "",
            "visual_focus": "Suriyoung riding away from the police station"
          }
        ],
        "flow_summary": "카메라는 경찰서 밖의 넓은 거리 시야에서 수리영과 자전거 쪽으로 다가간 뒤, 페달을 밟기 직전의 정지된 순간을 가까이 붙잡는다. 이후 수리영이 달리기 시작하면 카메라는 옆으로 따라붙는 이동으로 자연스럽게 전환된다.",
        "scene_index": 22,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame for a brief suspended moment before the bicycle starts rolling, emphasizing the stillness of the pedaling posture.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 1,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Seated eye level, about 18 inches from the computer monitor, slightly off-axis to avoid reflection, framed tight on the screen surface in the PC room cubicle",
            "stage_index": 1,
            "stage_label": "close_observation",
            "transition_to_next": "The camera leaves the monitor by tracking laterally along the desk line, following the implied workflow from digital map to printed paper.",
            "visual_focus": "The nautical map displayed on the monitor screen"
          },
          {
            "camera_motion": "track",
            "camera_position": "Desk height, moving beside the workstation toward the nearby printer area, maintaining a close practical distance of about 2 feet from the objects",
            "stage_index": 2,
            "stage_label": "process_transition",
            "transition_to_next": "The camera continues the same movement downward and back toward Suriyoung's seat, settling near the open backpack as the printed maps are gathered.",
            "visual_focus": "Printed maps and the work area between the computer and the backpack"
          },
          {
            "camera_motion": "tilt",
            "camera_position": "Low at chair and desk-edge height, about 12 inches from the open backpack, angled down toward Suriyoung's hands",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's hand pushing the folded maps into the backpack"
          }
        ],
        "flow_summary": "카메라는 모니터의 해상 지도에서 시작해 책상 동선을 따라 인쇄된 지도 쪽으로 이동한 뒤, 수리영의 손과 백팩 가까이로 낮아진다. 디지털 좌표 확인에서 물리적인 지도 수납으로 이어지는 준비 과정을 하나의 작업 흐름처럼 따라간다.",
        "scene_index": 23,
        "shot_assignments": [
          {
            "deviation_note": "Held as a still, screen-dominant composition within the monitor-focused starting position.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 1
          },
          {
            "deviation_note": "The tilt settles into a frozen close detail as the hand remains inside the backpack with the folded maps.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 3
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "tilt",
            "camera_position": "High above the coastal road, angled up toward the storm clouds, with the camera exposed to heavy rain and wind",
            "stage_index": 1,
            "stage_label": "storm_establishing",
            "transition_to_next": "The camera tilts downward from the lightning-filled sky toward the rain-lashed coastal road, finding the line of travel below.",
            "visual_focus": "dark storm clouds, lightning, and sheets of rain over the coast"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low and slightly front-left of the bicycle on the coastal road, at handlebar height, close enough to feel the spray from the wheels and rain",
            "stage_index": 2,
            "stage_label": "approach_under_rain",
            "transition_to_next": "The camera continues tracking alongside and then creeps closer toward 수리영, rising slightly from the handlebar line toward her face.",
            "visual_focus": "수리영 gripping the bicycle handlebar tightly while leaning forward against the downpour"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Close beside the moving bicycle, just above handlebar height and angled toward 수리영's face from the front-left side",
            "stage_index": 3,
            "stage_label": "close_observation",
            "transition_to_next": "",
            "visual_focus": "수리영's tense, rain-soaked face and fixed determination"
          }
        ],
        "flow_summary": "카메라는 번개 치는 먹구름에서 해안도로로 시선을 끌어내린 뒤, 빗속을 뚫고 달리는 수리영의 자전거 옆으로 낮게 따라붙는다. 이후 핸들에 힘이 들어간 순간을 지나 얼굴 가까이까지 접근하며 절박한 집중을 압축한다.",
        "scene_index": 24,
        "shot_assignments": [
          {
            "deviation_note": "Hold the tracking movement into a near-freeze for the selected instant, emphasizing the tight grip on the handlebar and her lowered upper body against the rain.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 2
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "track",
            "camera_position": "Inside the rooftop room near the entrance, chest height, moving slowly across the disturbed living area from the front door toward the open bedroom doorway",
            "stage_index": 1,
            "stage_label": "establishing_disturbance",
            "transition_to_next": "The camera continues forward past the overturned furniture and aligns with Su-ri-young's sightline into the open bedroom, tightening the path toward the wall inside.",
            "visual_focus": "muddy footprints, scattered household objects, overturned chairs, and the open bedroom doorway"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Just inside Su-ri-young's bedroom doorway, eye level, facing the bedroom wall from a medium distance",
            "stage_index": 2,
            "stage_label": "approach_to_mark",
            "transition_to_next": "The push-in completes at the wall, compressing the red circle into an intimate close view of the object pinned at its center.",
            "visual_focus": "the red circle drawn on the bedroom wall and the old bloodstained photograph pinned in its center"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "Very close to the bedroom wall at first, then pulling back to bedside distance at eye level",
            "stage_index": 3,
            "stage_label": "shock_and_decision",
            "transition_to_next": "As Su-ri-young gathers herself, the camera retreats with her movement out of the bedroom and reorients toward the living room exit.",
            "visual_focus": "Su-ri-young processing the photograph, the disordered room around her, and the photograph held in her hand"
          },
          {
            "camera_motion": "track",
            "camera_position": "Behind Su-ri-young at shoulder height, following from the living room toward the front door and stopping just inside the threshold",
            "stage_index": 4,
            "stage_label": "withdraw_exit",
            "transition_to_next": "",
            "visual_focus": "Su-ri-young leaving the rooftop room while holding the photograph"
          }
        ],
        "flow_summary": "카메라는 어질러진 옥탑방 입구에서 출발해 수리영의 시선을 따라 열린 방 안 벽의 붉은 원으로 밀고 들어간다. 사진의 발견 이후에는 뒤로 물러나며 그녀의 충격과 결심을 받아낸 뒤, 현관으로 나가는 뒷모습까지 따라간다.",
        "scene_index": 25,
        "shot_assignments": [
          {
            "deviation_note": "The dolly-in briefly settles into a still, frontal composition so the red circle on the wall registers as a fixed sign before the photograph is emphasized.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 2
          },
          {
            "deviation_note": "The push-in reaches its tightest point, shifting from the full red circle to a close-up centered on the bloodstained old photograph pinned in the middle.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 2
          },
          {
            "deviation_note": "The tracking movement ends in a held frame from behind as Su-ri-young crosses out through the front door, leaving the room behind her.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 13,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "At the edge of the empty harbor, eye-level height about 1.6 meters above the wet quay, facing straight out over the fog-covered water from a medium-long distance",
            "stage_index": 1,
            "stage_label": "reveal",
            "transition_to_next": "The camera pivots from the emerging bow toward the quay and begins to track laterally with Suriyeong as she moves toward the boat.",
            "visual_focus": "the small boat bow slowly appearing through the dense sea fog"
          },
          {
            "camera_motion": "track",
            "camera_position": "Moving parallel to the quay at shoulder height, about 2 meters beside Suriyeong as she walks from the rocks toward the mooring area",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "The tracking move arrives at the mooring post and settles into a lower dockside position facing the boat.",
            "visual_focus": "Suriyeong crossing the empty harbor toward the only visible boat"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low on the quay near the mooring post, about 1.2 meters high and 2 to 3 meters from Suriyeong, angled upward toward the boat deck",
            "stage_index": 3,
            "stage_label": "first_contact",
            "transition_to_next": "The camera inches closer from the same dockside axis, tightening from the two-person spatial relation into Suriyeong's pleading face.",
            "visual_focus": "Suriyeong standing before the boat and looking up at Inwoo while he remains above her on deck"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Dockside at chest height, close to Suriyeong from a slight three-quarter front angle, with the boat edge and Inwoo's eyeline implied just above the frame",
            "stage_index": 4,
            "stage_label": "close_observation",
            "transition_to_next": "After the plea, the camera holds the axis and can tilt or drift back toward Inwoo's reaction, keeping the dock and boat relationship intact.",
            "visual_focus": "Suriyeong's clasped hands and urgent eyes directed toward Inwoo"
          },
          {
            "camera_motion": "dolly_out",
            "camera_position": "A few steps back on the quay, eye-level height, framing Suriyeong near the boat with the foggy sea opening behind her",
            "stage_index": 5,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "Suriyeong turning back toward the sea to leave a voice message before departing"
          }
        ],
        "flow_summary": "카메라는 안개 낀 바다를 바라보는 포구 가장자리에서 시작해, 안개 속 배의 출현을 포착한 뒤 수리영의 이동을 따라 부두의 배 앞까지 이어진다. 이후 같은 축을 유지한 채 수리영과 인우의 높이 차를 살리고, 간절한 부탁의 순간으로 서서히 밀고 들어간다.",
        "scene_index": 26,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame still at the end of the reveal so the bow feels as if it has materialized out of the fog rather than arrived abruptly.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 5,
            "stage_index": 1
          },
          {
            "deviation_note": "Settle slightly lower than the stage default to emphasize Suriyeong looking up at Inwoo from the dock.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 3
          },
          {
            "deviation_note": "Tighten the dolly-in into a close framing that includes her gathered hands at the lower edge and keeps her eyes as the emotional center.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 10,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Eye-level medium close position three feet in front-left of Hyesu, inside the cluttered rooftop room living area, lens held just above her phone side",
            "stage_index": 1,
            "stage_label": "close_observation",
            "transition_to_next": "The camera begins a slow clockwise track around Hyesu as her attention shifts from the recorded message toward Kim detective.",
            "visual_focus": "Hyesu listening to the smartphone, her widened eyes and frozen alarm"
          },
          {
            "camera_motion": "track",
            "camera_position": "Eye-level position sliding to Hyesu's front-right side, four feet away, keeping Kim detective's direction just off the edge of frame",
            "stage_index": 2,
            "stage_label": "anxious_turn",
            "transition_to_next": "The track continues past Hyesu's eyeline and pans toward the room entrance as the rattling door sound pulls attention away from the conversation.",
            "visual_focus": "Hyesu turning back toward Kim detective with an anxious expression"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Shoulder-height medium-wide position near the center of the living room, angled from Hyesu and Kim detective's side toward the entrance area",
            "stage_index": 3,
            "stage_label": "door_reveal",
            "transition_to_next": "After holding on the source of the sound, the scene makes a restrained cut to a wider, more distant view of the same room to emphasize emptiness.",
            "visual_focus": "the rattling entrance door and the surrounding bare interior space"
          },
          {
            "camera_motion": "static",
            "camera_position": "Low eye-level wide position from the far corner of the rooftop room living area, backed against the wall and looking across the now-empty floor toward the dim evening window light",
            "stage_index": 4,
            "stage_label": "withdraw",
            "transition_to_next": "",
            "visual_focus": "the empty rooftop room living area filled with dusky evening light"
          }
        ],
        "flow_summary": "카메라는 혜수의 얼굴 가까이에서 녹음메시지를 듣는 충격을 붙잡은 뒤, 그녀의 시선을 따라 김형사 쪽으로 미끄러지고 다시 현관문 소리로 방향을 돌린다. 마지막에는 같은 공간을 멀리서 바라보는 정적인 와이드로 물러나, 인물보다 텅 빈 옥탑방의 황량함을 남긴다.",
        "scene_index": 27,
        "shot_assignments": [
          {
            "deviation_note": "Hold the frame slightly longer than the stage default so the shock reads as a still, suspended beat.",
            "flow_position": "start",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 1
          },
          {
            "deviation_note": "Frame Hyesu a touch tighter while leaving negative space in the direction of Kim detective to motivate her question.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          },
          {
            "deviation_note": "Exclude Hyesu and Kim detective from frame; prioritize the dim evening light and vacant floor over any dialogue presence.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 6,
            "stage_index": 4
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "High and distant off the boat's port quarter, above sea level, looking toward the small fishing boat against the sunset horizon",
            "stage_index": 1,
            "stage_label": "establishing",
            "transition_to_next": "Cut from the distant sea view to a lower deck position, preserving the boat's orientation and sunset direction.",
            "visual_focus": "the fishing boat drifting on open water"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "On the open deck at seated eye level, about 1.5 meters from Inwoo and slightly to his front-left, angled down toward the map in his hands before rising to his face",
            "stage_index": 2,
            "stage_label": "map_observation",
            "transition_to_next": "The camera continues its forward pressure, then slides laterally across the shared space between the map and the old photo in Suriyoung's hand.",
            "visual_focus": "Inwoo studying the map with a tightening expression"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low over the deck between Suriyoung and Inwoo, about 40 centimeters above the objects, close enough to isolate the old photo and Suriyoung's pointing hand",
            "stage_index": 3,
            "stage_label": "evidence_reveal",
            "transition_to_next": "The camera lifts from the photo toward Inwoo's eyes, then swings with his sudden movement as he rises.",
            "visual_focus": "Suriyoung's fingertip fixed on the small lettering in the photograph"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Shoulder height on the deck, backing and panning with Inwoo as he bolts from the seated area toward the wheelhouse door, with Suriyoung entering the same path behind him",
            "stage_index": 4,
            "stage_label": "pursuit_transition",
            "transition_to_next": "The handheld move follows them through the doorway and compresses into the tight wheelhouse space near the helm.",
            "visual_focus": "Inwoo breaking away toward the wheelhouse as Suriyoung reacts and follows"
          },
          {
            "camera_motion": "static",
            "camera_position": "Inside the wheelhouse beside the helm, chest height and very close to the bodies, angled down to the point where Suriyoung grips Inwoo's arm",
            "stage_index": 5,
            "stage_label": "physical_block",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's hands clamped around Inwoo's arm, stopping his attempt to turn the boat"
          }
        ],
        "flow_summary": "카메라는 해질녘 바다 위 어선의 거리감에서 출발해 갑판 위 지도와 사진의 증거로 점점 낮고 가까워진다. 인우가 조타실로 돌진하는 순간 handheld로 동선을 따라붙고, 마지막에는 조타실 안에서 팔을 붙잡는 정지된 접촉으로 압축된다.",
        "scene_index": 28,
        "shot_assignments": [
          {
            "deviation_note": "Tighten the lens and raise the frame slightly from the map to isolate Inwoo's furrowed brow while keeping the downward deck angle implied.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Hold the track at its closest point and stop on the fingertip and the lettering, excluding most facial information.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 8,
            "stage_index": 3
          },
          {
            "deviation_note": "Drop the frame a little lower than the stage default to make the locked hands and Inwoo's restrained arm the entire visual event.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 15,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "static",
            "camera_position": "Inside the wheelhouse near the helm doorway, chest height, medium distance facing Suriyoung and Inwoo across the cramped control space",
            "stage_index": 1,
            "stage_label": "confrontation_establishing",
            "transition_to_next": "The camera lowers and glides between their torsos toward the photograph in Suriyoung's hand, compressing the argument into the object between them.",
            "visual_focus": "Suriyoung blocking Inwoo and the tense space between their faces"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Low chest height between Suriyoung and Inwoo, very close to the photograph held near the helm console, angled down over Suriyoung's hand",
            "stage_index": 2,
            "stage_label": "evidence_close_observation",
            "transition_to_next": "The lens rises from the photograph along Suriyoung's pointing hand line and tilts up toward Inwoo's face as the name begins to register.",
            "visual_focus": "Suriyoung's finger indicating the young girl's face in the photograph"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Eye level, tight distance on Inwoo from slightly Suriyoung's side of the wheelhouse, with the background beginning to crowd behind his head",
            "stage_index": 3,
            "stage_label": "recognition_reaction",
            "transition_to_next": "The push continues past Inwoo's cheek into a slight over-shoulder angle, shifting attention from his face to the circular shapes behind him.",
            "visual_focus": "Inwoo's face hardening and losing color as he understands the name"
          },
          {
            "camera_motion": "pan",
            "camera_position": "Just behind and beside Inwoo's shoulder at eye level, close enough for his head to edge the frame while the wheelhouse wall and window fill the background",
            "stage_index": 4,
            "stage_label": "ominous_reveal",
            "transition_to_next": "The camera pivots back from the wall toward the two bodies as Suriyoung's balance fails, dropping with her movement toward Inwoo's shoulder.",
            "visual_focus": "the many round shapes in the wheelhouse and the red circle emerging among them"
          },
          {
            "camera_motion": "handheld",
            "camera_position": "Shoulder height beside Inwoo, tight distance, angled slightly downward into the narrow space where Suriyoung collapses against him",
            "stage_index": 5,
            "stage_label": "collapse_hold",
            "transition_to_next": "",
            "visual_focus": "Suriyoung's head coming to rest on Inwoo's shoulder while Inwoo remains rigid"
          }
        ],
        "flow_summary": "카메라는 조타실의 대치 구도에서 시작해 두 사람 사이의 사진으로 파고든 뒤, 사진의 단서가 인우의 얼굴에 닿는 순간까지 위로 밀고 올라간다. 이후 인우 뒤의 불길한 원형 이미지들을 스치듯 드러내고, 다시 두 사람에게 돌아와 수리영이 쓰러지는 정지 순간에 멈춘다.",
        "scene_index": 29,
        "shot_assignments": [
          {
            "deviation_note": "Use an even tighter close-up than the stage default so the fingertip and the young girl's face dominate the frame; the surrounding photograph edges remain barely visible.",
            "flow_position": "mid",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 4,
            "stage_index": 2
          },
          {
            "deviation_note": "Tighten to a face-filling close-up and let the wheelhouse background fall slightly out of focus, preserving only the sense of circular shapes behind him.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 7,
            "stage_index": 3
          },
          {
            "deviation_note": "The handheld descent settles into stillness at the instant Suriyoung's head touches Inwoo's shoulder, holding the contact without further movement.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "camera_motion",
              "visual_focus"
            ],
            "shot_index": 13,
            "stage_index": 5
          }
        ]
      },
      {
        "flow_stages": [
          {
            "camera_motion": "dolly_in",
            "camera_position": "Wide sea-level position above the open water, about 80 meters from the fog bank, lens held near the horizon line and facing straight toward the gray wall of mist",
            "stage_index": 1,
            "stage_label": "reveal",
            "transition_to_next": "The forward glide continues until the fog wall fills the frame, then cuts to a much lower bow-level position in front of the approaching boat.",
            "visual_focus": "the dense gray fog bank rising like a wall across the middle of the ocean"
          },
          {
            "camera_motion": "track",
            "camera_position": "Low bow-height position just ahead of the small fishing boat, slightly off center, moving backward at the same speed as the bow as it nears the fog boundary",
            "stage_index": 2,
            "stage_label": "approach",
            "transition_to_next": "After the bow touches the fog, the camera lets the boat pass into the mist and drifts into a softer, obscured view.",
            "visual_focus": "the bow of the small fishing boat meeting the dark fog wall"
          },
          {
            "camera_motion": "dolly_in",
            "camera_position": "Inside the edge of the fog, very close to the water surface, with the boat disappearing behind the camera's forward path",
            "stage_index": 3,
            "stage_label": "absorption",
            "transition_to_next": "",
            "visual_focus": "empty fog swallowing the ocean space"
          }
        ],
        "flow_summary": "카메라는 황금빛 바다 위에서 안개 벽을 향해 천천히 전진하다가, 낮은 뱃머리 시점으로 절단되어 소형 어선이 안개의 경계에 닿는 순간을 따라간다. 이후 흐름은 배가 안개 속으로 흡수되며 바다와 경계가 사라지는 방향으로 이어진다.",
        "scene_index": 30,
        "shot_assignments": [
          {
            "deviation_note": "Held as a still moment, with the forward motion visually suspended so the fog reads as a massive immovable wall.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 2,
            "stage_index": 1
          },
          {
            "deviation_note": "The tracking movement resolves into a locked still frame exactly as the bow makes contact with the fog boundary.",
            "flow_position": "end",
            "inherits": [
              "camera_position",
              "visual_focus"
            ],
            "shot_index": 3,
            "stage_index": 2
          }
        ]
      }
    ]
  },
  "step_id": "scene_camera_flow",
  "run_id": "2864d493-343f-4bbb-bc14-d47a22ebf1b2",
  "resolved_model": "gpt",
  "updated_at": "2026-04-27T10:19:46.036560+00:00"
}