{
  "manifest": {
    "bundle_format": "ffscene_v1",
    "schema_version": "1.0.0",
    "state_digest_sha256": "e2302fdde7dff77381686bd7e5bb5db5011ccdb56a42b53c94423c5803dea467",
    "export_version": "v04.35",
    "contents": {
      "project.json": {
        "sha256": "235685f25e0b9873bc595708a5c8602ec46f7840803f85ed9f4ac1fe598ba258",
        "size_bytes": 4095
      },
      "exports/top_down_diagram.svg": {
        "sha256": "4944369ccf0cdbeeabc8e6d88747de969306fad575853a4599435330bde829d2",
        "size_bytes": 7056
      },
      "exports/pull_sheet.json": {
        "sha256": "d07f06316ad8ac7fc58aeac8602c302e100df9c35ff3b61c0720e5be2c86ed43",
        "size_bytes": 1502
      },
      "exports/exposure_cheat_sheet.json": {
        "sha256": "c6ae0c781530145a627ececcb998eac5563f56fc80fa900c56d138908d5eeb4e",
        "size_bytes": 608
      }
    }
  },
  "project": {
    "cameras": [
      {
        "aperture": 2.8,
        "catalog_ref": {
          "brand": "Sony",
          "crop_factor": 1,
          "model": "Alpha 7 IV",
          "mount": "Sony E",
          "sensor_dimensions_mm": [
            35.9,
            23.9
          ],
          "slug": "sony-a7-iv"
        },
        "focal_length_mm": 15,
        "focus_distance_m": 2.5,
        "id": "cam_primary",
        "inferred": {},
        "iso": 800,
        "name": "Main Camera",
        "overrides": {
          "focal_length_mm": 15
        },
        "position": [
          0,
          1.5,
          3
        ],
        "rotation_deg": [
          0,
          0,
          0
        ],
        "safe_frame": "3:2",
        "sensor_dimensions_mode": "preset",
        "sensor_format": "full_frame",
        "shutter_s": 0.008,
        "target": [
          0,
          1.2,
          0
        ]
      }
    ],
    "environment": {
      "appearance": {
        "source": "default_preset",
        "type": "studio_room"
      },
      "overrides": {},
      "physics": {
        "backdrops": [],
        "cyc_params": {
          "radius_m": 1.2,
          "type": "cyc_1wall",
          "walls_affected": [
            "back_wall"
          ]
        },
        "flats": [],
        "floor_confirmed": true,
        "ground_height_m": 0,
        "room_dimensions_m": [
          8,
          6,
          3.5
        ],
        "type": "studio_grid",
        "unknown_regions": 0,
        "wall_material": "white_cyclorama",
        "wall_reflectance": 0.85,
        "walls_confirmed": 4
      }
    },
    "grip": [
      {
        "dimensions_m": [
          1.22,
          2.44
        ],
        "fold_angle_deg": 90,
        "ground_contact": {
          "contact_y_m": 0,
          "is_freestanding": true,
          "locked_to_floor": true
        },
        "id": "grip_vflat_fill",
        "name": "V-Flat (Fill Side)",
        "position": [
          -1.5,
          0,
          0.5
        ],
        "rotation_deg": [
          0,
          45,
          0
        ],
        "side_a_material": "white_foamcore",
        "side_b_material": "black_velvet",
        "type": "vflat"
      }
    ],
    "lights": [
      {
        "aim_target": {
          "distance_lock_m": null,
          "mode": "target_node",
          "target_id": "performer_base"
        },
        "beam_angle_deg": 95,
        "cct_k": 5600,
        "class": "estimated",
        "confidence_tag": "[ESTIMATED]",
        "distance_m": 1.8,
        "duv": 0,
        "id": "light_key",
        "inferred": {},
        "lux_at_1m": 4500,
        "mode": "continuous",
        "modifier": "softbox_rect",
        "modifier_details": {
          "grid_angle_deg": null,
          "inner_baffle": true,
          "net_loss_ev": -1.51,
          "outer_diffuser_stops": 1
        },
        "name": "Key Light",
        "overrides": {},
        "position": [
          1.2,
          2,
          1.5
        ],
        "power_percent": 80,
        "relative_ev": 0,
        "target": [
          0,
          1.4,
          0
        ],
        "type": "continuous"
      }
    ],
    "output": {
      "intended_use": [
        "key_light_direction",
        "camera_blocking"
      ],
      "unsuitable_for": [
        "exact_photometric_exposure"
      ],
      "variants": []
    },
    "performers": [
      {
        "body": "quaternius_humanoid_male_v1",
        "ground_contact": {
          "contact_y_m": 0,
          "locked_to_floor": true,
          "status": "grounded"
        },
        "height_m": 1.75,
        "id": "performer_base",
        "identity": "default_head",
        "look_at": {
          "custom_pos": null,
          "mode": "camera",
          "target_id": "cam_primary"
        },
        "morphology": "neutral",
        "name": "Model A",
        "pose_preset": "standing_three_quarter",
        "position": [
          0,
          0,
          0
        ],
        "rotation_deg": [
          0,
          0,
          0
        ],
        "skin_proxy": {
          "diffuse_albedo_rho": 0.44,
          "melanin_fraction": 0.35,
          "preset": "TYPE_III_IV",
          "roughness_lobe1": 0.5,
          "roughness_lobe2": 0.18
        }
      }
    ],
    "project": {
      "confidence": "medium",
      "description": "",
      "mode": "location_sketch",
      "name": "Untitled Scene Studio",
      "tags": []
    },
    "schema_version": "1.0.0"
  },
  "exports": {
    "top_down_diagram_svg": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1000 800\" width=\"1000\" height=\"800\" class=\"ff-scene-diagram\" data-testid=\"ff-scene-top-down-svg\">\n  <style>\n    .grid-major { stroke: #33333c; stroke-width: 1.5; stroke-dasharray: none; }\n    .grid-minor { stroke: #1e1e24; stroke-width: 0.8; stroke-dasharray: 2 4; }\n    .grid-axis { stroke: #4f6378; stroke-width: 2.0; }\n    .grid-label { fill: #8b9eb0; font-family: monospace; font-size: 11px; }\n    .room-wall { stroke: #e5a93c; stroke-width: 2.5; fill: #16161a; fill-opacity: 0.7; }\n    .cam-frustum { fill: #38bdf8; fill-opacity: 0.08; stroke: #38bdf8; stroke-width: 1.2; stroke-dasharray: 4 4; }\n    .cam-dof { fill: #38bdf8; fill-opacity: 0.22; stroke: #0284c7; stroke-width: 1.5; }\n    .cam-body { fill: #0284c7; stroke: #ffffff; stroke-width: 2; }\n    .light-beam { fill: #facc15; fill-opacity: 0.12; stroke: #facc15; stroke-width: 1.2; }\n    .light-body { fill: #eab308; stroke: #ffffff; stroke-width: 1.8; }\n    .modifier-box { fill: #475569; stroke: #f8fafc; stroke-width: 1.5; fill-opacity: 0.85; }\n    .performer-node { fill: #ec4899; stroke: #ffffff; stroke-width: 2; }\n    .grip-vflat-white { stroke: #ffffff; stroke-width: 4; stroke-linecap: round; }\n    .grip-vflat-black { stroke: #0f172a; stroke-width: 4; stroke-linecap: round; }\n    .badge-text { font-family: system-ui, -apple-system, sans-serif; font-size: 11px; font-weight: 600; fill: #ffffff; }\n    .meta-text { font-family: monospace, ui-monospace; font-size: 9px; fill: #94a3b8; }\n  </style>\n\n  <!-- Background & Metric Grid -->\n  <rect x=\"0\" y=\"0\" width=\"1000\" height=\"800\" fill=\"#111113\" />\n  <line x1=\"0\" y1=\"0\" x2=\"0\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"4\" y=\"792\" class=\"grid-label\">-5m</text>\n  <line x1=\"50\" y1=\"0\" x2=\"50\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"100\" y1=\"0\" x2=\"100\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"104\" y=\"792\" class=\"grid-label\">-4m</text>\n  <line x1=\"150\" y1=\"0\" x2=\"150\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"200\" y1=\"0\" x2=\"200\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"204\" y=\"792\" class=\"grid-label\">-3m</text>\n  <line x1=\"250\" y1=\"0\" x2=\"250\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"300\" y1=\"0\" x2=\"300\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"304\" y=\"792\" class=\"grid-label\">-2m</text>\n  <line x1=\"350\" y1=\"0\" x2=\"350\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"400\" y1=\"0\" x2=\"400\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"404\" y=\"792\" class=\"grid-label\">-1m</text>\n  <line x1=\"450\" y1=\"0\" x2=\"450\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"500\" y1=\"0\" x2=\"500\" y2=\"800\" class=\"grid-axis\" />\n  <text x=\"504\" y=\"792\" class=\"grid-label\">0m</text>\n  <line x1=\"550\" y1=\"0\" x2=\"550\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"600\" y1=\"0\" x2=\"600\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"604\" y=\"792\" class=\"grid-label\">+1m</text>\n  <line x1=\"650\" y1=\"0\" x2=\"650\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"700\" y1=\"0\" x2=\"700\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"704\" y=\"792\" class=\"grid-label\">+2m</text>\n  <line x1=\"750\" y1=\"0\" x2=\"750\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"800\" y1=\"0\" x2=\"800\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"804\" y=\"792\" class=\"grid-label\">+3m</text>\n  <line x1=\"850\" y1=\"0\" x2=\"850\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"900\" y1=\"0\" x2=\"900\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"904\" y=\"792\" class=\"grid-label\">+4m</text>\n  <line x1=\"950\" y1=\"0\" x2=\"950\" y2=\"800\" class=\"grid-minor\" />\n  <line x1=\"1000\" y1=\"0\" x2=\"1000\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"1004\" y=\"792\" class=\"grid-label\">+5m</text>\n  <line x1=\"0\" y1=\"0\" x2=\"1000\" y2=\"0\" class=\"grid-major\" />\n  <text x=\"8\" y=\"-4\" class=\"grid-label\">-4m</text>\n  <line x1=\"0\" y1=\"50\" x2=\"1000\" y2=\"50\" class=\"grid-minor\" />\n  <line x1=\"0\" y1=\"100\" x2=\"1000\" y2=\"100\" class=\"grid-major\" />\n  <text x=\"8\" y=\"96\" class=\"grid-label\">-3m</text>\n  <line x1=\"0\" y1=\"150\" x2=\"1000\" y2=\"150\" class=\"grid-minor\" />\n  <line x1=\"0\" y1=\"200\" x2=\"1000\" y2=\"200\" class=\"grid-major\" />\n  <text x=\"8\" y=\"196\" class=\"grid-label\">-2m</text>\n  <line x1=\"0\" y1=\"250\" x2=\"1000\" y2=\"250\" class=\"grid-minor\" />\n  <line x1=\"0\" y1=\"300\" x2=\"1000\" y2=\"300\" class=\"grid-major\" />\n  <text x=\"8\" y=\"296\" class=\"grid-label\">-1m</text>\n  <line x1=\"0\" y1=\"350\" x2=\"1000\" y2=\"350\" class=\"grid-minor\" />\n  <line x1=\"0\" y1=\"400\" x2=\"1000\" y2=\"400\" class=\"grid-axis\" />\n  <text x=\"8\" y=\"396\" class=\"grid-label\">0m</text>\n  <line x1=\"0\" y1=\"450\" x2=\"1000\" y2=\"450\" class=\"grid-minor\" />\n  <line x1=\"0\" y1=\"500\" x2=\"1000\" y2=\"500\" class=\"grid-major\" />\n  <text x=\"8\" y=\"496\" class=\"grid-label\">+1m</text>\n  <line x1=\"0\" y1=\"550\" x2=\"1000\" y2=\"550\" class=\"grid-minor\" />\n  <line x1=\"0\" y1=\"600\" x2=\"1000\" y2=\"600\" class=\"grid-major\" />\n  <text x=\"8\" y=\"596\" class=\"grid-label\">+2m</text>\n  <line x1=\"0\" y1=\"650\" x2=\"1000\" y2=\"650\" class=\"grid-minor\" />\n  <line x1=\"0\" y1=\"700\" x2=\"1000\" y2=\"700\" class=\"grid-major\" />\n  <text x=\"8\" y=\"696\" class=\"grid-label\">+3m</text>\n  <line x1=\"0\" y1=\"750\" x2=\"1000\" y2=\"750\" class=\"grid-minor\" />\n  <line x1=\"0\" y1=\"800\" x2=\"1000\" y2=\"800\" class=\"grid-major\" />\n  <text x=\"8\" y=\"796\" class=\"grid-label\">+4m</text>\n\n  <!-- Studio Room Bounds -->\n  <rect x=\"100\" y=\"100\" width=\"800\" height=\"600\" class=\"room-wall\" rx=\"6\" />\n\n  <!-- Performer: Model A -->\n  <g transform=\"translate(500, 400)\">\n    <ellipse cx=\"0\" cy=\"0\" rx=\"18\" ry=\"12\" class=\"performer-node\" />\n    <path d=\"M 0,-12 L 4,-18 L -4,-18 Z\" fill=\"#ffffff\" />\n    <text x=\"22\" y=\"4\" class=\"badge-text\">Model A</text>\n  </g>\n\n  <!-- Camera: Main Camera -->\n  <g transform=\"translate(500, 700) rotate(-180)\">\n    <polygon points=\"0,0 -420,350 420,350\" class=\"cam-frustum\" />\n    <polygon points=\"-240,200 240,200 384,320 -384,320\" class=\"cam-dof\" />\n    <rect x=\"-14\" y=\"-10\" width=\"28\" height=\"20\" rx=\"3\" class=\"cam-body\" />\n    <circle cx=\"0\" cy=\"4\" r=\"5\" fill=\"#ffffff\" />\n    <line x1=\"0\" y1=\"0\" x2=\"0\" y2=\"350\" stroke=\"#38bdf8\" stroke-width=\"1\" stroke-dasharray=\"2 2\" />\n  </g>\n  <text x=\"518\" y=\"692\" class=\"badge-text\">Main Camera (15mm f/2.8)</text>\n  <text x=\"518\" y=\"706\" class=\"meta-text\">ISO 800 | 1/125s</text>\n\n  <!-- Light: Key Light -->\n  <g transform=\"translate(620, 550) rotate(141.34019174590992)\">\n    <polygon points=\"0,0 -272.8271252673179,250 272.8271252673179,250\" class=\"light-beam\" />\n    <rect x=\"-18\" y=\"-6\" width=\"36\" height=\"12\" rx=\"2\" class=\"modifier-box\" />\n    <circle cx=\"0\" cy=\"0\" r=\"7\" class=\"light-body\" />\n  </g>\n  <text x=\"642\" y=\"542\" class=\"badge-text\">Key Light</text>\n  <text x=\"642\" y=\"554\" class=\"meta-text\">5600K | ~4500 Lux [EST]</text>\n  <text x=\"642\" y=\"566\" class=\"meta-text\">softbox_rect (80%)</text>\n\n  <!-- Grip V-Flat: V-Flat (Fill Side) -->\n  <g>\n    <line x1=\"350\" y1=\"450\" x2=\"392.42640687119285\" y2=\"407.57359312880715\" class=\"grip-vflat-white\" />\n    <line x1=\"350\" y1=\"450\" x2=\"307.57359312880715\" y2=\"407.57359312880715\" class=\"grip-vflat-black\" />\n    <circle cx=\"350\" cy=\"450\" r=\"4\" fill=\"#facc15\" />\n    <text x=\"362\" y=\"454\" class=\"meta-text\">V-Flat (Fill Side) (90°)</text>\n  </g>\n</svg>\n",
    "pull_sheet": {
      "manifest": [
        {
          "id": "gear_cam_primary",
          "category": "camera",
          "name": "Main Camera",
          "model": "Alpha 7 IV",
          "quantity": 1,
          "mount": "Sony E",
          "weight_kg": 0.85,
          "confidence": "calibrated",
          "notes": "Native ISO: 800, Sensor: full_frame"
        },
        {
          "id": "lens_cam_primary",
          "category": "lens",
          "name": "Prime Lens 15mm",
          "model": "15mm f/2.8",
          "quantity": 1,
          "weight_kg": 0.65,
          "confidence": "calibrated",
          "notes": "Aperture: f/2.8"
        },
        {
          "id": "light_light_key",
          "category": "light",
          "name": "Key Light",
          "model": "600W COB LED (5600K)",
          "quantity": 1,
          "wattage_w": 480,
          "weight_kg": 2.8,
          "confidence": "estimated",
          "notes": "80% Output"
        },
        {
          "id": "mod_light_key",
          "category": "modifier",
          "name": "Modifier: softbox_rect",
          "model": "softbox_rect",
          "quantity": 1,
          "weight_kg": 1.8,
          "confidence": "estimated",
          "notes": "Speedring required. Transmission loss: -1 EV"
        },
        {
          "id": "stand_light_key",
          "category": "grip",
          "name": "C-Stand 40\" with Grip Arm & Knuckle",
          "model": "Standard 40\" / Combo",
          "quantity": 1,
          "weight_kg": 8.5,
          "confidence": "calibrated",
          "notes": "Includes 10kg sandbag for safety counterweight"
        },
        {
          "id": "grip_grip_vflat_fill",
          "category": "grip",
          "name": "V-Flat (Fill Side)",
          "model": "Foldable V-Flat 1.22x2.44m",
          "quantity": 1,
          "weight_kg": 4,
          "confidence": "calibrated",
          "notes": "Side A: white_foamcore, Side B: black_velvet"
        }
      ],
      "power_budget": {
        "total_continuous_watts": 480,
        "load_amps_120v": 4,
        "load_amps_230v": 2.1,
        "status_120v_15a": "SAFE",
        "status_230v_16a": "SAFE",
        "recommended_circuits_count": 1,
        "battery_vmount_wh_recommended_4h": 2304,
        "battery_vmount_wh_recommended_8h": 4608,
        "warnings": []
      }
    },
    "exposure_cheat_sheet": {
      "camera_summary": {
        "name": "Main Camera",
        "sensor_format": "full_frame",
        "focal_length_mm": 15,
        "aperture_f": 2.8,
        "shutter_s": 0.008,
        "iso": 800,
        "hyperfocal_m": 2.69,
        "near_limit_m": 1.3,
        "far_limit_m": 32.286,
        "total_dof_m": 30.986,
        "coc_mm": 0.03
      },
      "lighting_summary": {
        "key_fixture_name": "Key Light",
        "key_lux": "4500 Lux",
        "key_to_fill_ratio": "1.0:1",
        "delta_ev": 0,
        "mood_interpretation": "Single light / Ambient only",
        "subject_ev100": 10.81,
        "camera_ev100": 6.94,
        "exposure_delta_ev": 3.88,
        "exposure_status": "OVER (HOT)"
      },
      "epistemic_disclaimer": "Values reflect calibrated laboratory profiles and physical inverse-square calculations."
    }
  }
}