fusionSetup { "backgroundNode": "Background_Canvas", "background": { "width": 1920, "height": 1080, "background": "#ffffff" }, "outputNode": "MediaOut1", "input": "Merge_disclosure", "layerOrder": "Each array is back-to-front. Every sibling output feeds the next backgroundInput. Group children use their own transparent base.", "coordinatePolicy": "CSS top-left local pixel boxes. Build local child domains and compose parent transforms. Fusion center/angle mappings are construction targets, not application-verified settings.", "easing": "sample() uses the left key easing: linear by default, smooth=progress^2*(3-2*progress), hold until the right key then its exact value. Clamp before first/after last keys. Preserve dense per-frame linear tracks; do not auto-smooth." } fusionNodes [ { "layerId": "desktop", "nodeId": "Layer_desktop", "kind": "image", "parentLayerId": null, "recipePointer": "/layers/0", "mergeIndex": 0, "tools": [ "SVG vector source", "Transform", "Merge" ], "backgroundInput": "Background_Canvas", "foregroundInput": "Processed_desktop", "output": "Merge_desktop", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 0, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "desktop", "width": 1920, "height": 1080, "fit": "contain" }, "construction": "Use the declared original SVG, not a source/reconstruction movie. Recreate/import its vector geometry into a local domain with explicit fit; SVG import/filter support is not application-tested.", "assets": { "defaults": { "kind": "image", "path": "art/codex-modal-relay/desktop-default.svg", "width": 1920, "height": 1080, "rights": "Original illustrated study artwork authored for this library; no source footage, screenshots, brand marks or demo data. SVG glyphs outlined from local Geist under SIL OFL 1.1; local FONT-LICENSE.txt. No font bytes or remote resources in SVGs. Not real Poe UI." }, "adaptation": { "kind": "image", "path": "art/codex-modal-relay/desktop-adaptation.svg", "width": 1920, "height": 1080, "rights": "Original illustrated study artwork authored for this library; no source footage, screenshots, brand marks or demo data. SVG glyphs outlined from local Geist under SIL OFL 1.1; local FONT-LICENSE.txt. No font bytes or remote resources in SVGs. Not real Poe UI." } } }, { "layerId": "workspace-before-relay", "nodeId": "Layer_workspace-before-relay", "kind": "image", "parentLayerId": null, "recipePointer": "/layers/1", "mergeIndex": 1, "tools": [ "SVG vector source", "Transform", "Merge" ], "backgroundInput": "Merge_desktop", "foregroundInput": "Processed_workspace-before-relay", "output": "Merge_workspace-before-relay", "activeLocalFrames": [ 0, 47 ], "effectiveActiveLocalFrames": [ 0, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "workspaceBefore", "width": 1720, "height": 1080, "fit": "contain" }, "construction": "Use the declared original SVG, not a source/reconstruction movie. Recreate/import its vector geometry into a local domain with explicit fit; SVG import/filter support is not application-tested.", "assets": { "defaults": { "kind": "image", "path": "art/codex-modal-relay/workspace-r04-default-before.svg", "width": 1720, "height": 1080, "rights": "Original illustrated study artwork authored for this library; no source footage, screenshots, brand marks or demo data. SVG glyphs outlined from local Geist under SIL OFL 1.1; local FONT-LICENSE.txt. No font bytes or remote resources in SVGs. Not real Poe UI." }, "adaptation": { "kind": "image", "path": "art/codex-modal-relay/workspace-r04-adaptation-before.svg", "width": 1720, "height": 1080, "rights": "Original illustrated study artwork authored for this library; no source footage, screenshots, brand marks or demo data. SVG glyphs outlined from local Geist under SIL OFL 1.1; local FONT-LICENSE.txt. No font bytes or remote resources in SVGs. Not real Poe UI." } } }, { "layerId": "workspace-after-relay", "nodeId": "Layer_workspace-after-relay", "kind": "image", "parentLayerId": null, "recipePointer": "/layers/2", "mergeIndex": 2, "tools": [ "SVG vector source", "Transform", "Merge" ], "backgroundInput": "Merge_workspace-before-relay", "foregroundInput": "Processed_workspace-after-relay", "output": "Merge_workspace-after-relay", "activeLocalFrames": [ 47, 122 ], "effectiveActiveLocalFrames": [ 47, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "workspaceAfter", "width": 1720, "height": 1080, "fit": "contain" }, "construction": "Use the declared original SVG, not a source/reconstruction movie. Recreate/import its vector geometry into a local domain with explicit fit; SVG import/filter support is not application-tested.", "assets": { "defaults": { "kind": "image", "path": "art/codex-modal-relay/workspace-r04-default-after.svg", "width": 1720, "height": 1080, "rights": "Original illustrated study artwork authored for this library; no source footage, screenshots, brand marks or demo data. SVG glyphs outlined from local Geist under SIL OFL 1.1; local FONT-LICENSE.txt. No font bytes or remote resources in SVGs. Not real Poe UI." }, "adaptation": { "kind": "image", "path": "art/codex-modal-relay/workspace-r04-adaptation-after.svg", "width": 1720, "height": 1080, "rights": "Original illustrated study artwork authored for this library; no source footage, screenshots, brand marks or demo data. SVG glyphs outlined from local Geist under SIL OFL 1.1; local FONT-LICENSE.txt. No font bytes or remote resources in SVGs. Not real Poe UI." } } }, { "layerId": "toolbar-dropdown-hover", "nodeId": "Layer_toolbar-dropdown-hover", "kind": "rect", "parentLayerId": null, "recipePointer": "/layers/3", "mergeIndex": 3, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_workspace-after-relay", "foregroundInput": "Processed_toolbar-dropdown-hover", "output": "Merge_toolbar-dropdown-hover", "activeLocalFrames": [ 80, 82 ], "effectiveActiveLocalFrames": [ 80, 82 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 1417, "y": 19, "width": 34, "height": 33, "radius": 10, "fill": "#000000", "opacity": 0.098 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "toolbar-main-hover", "nodeId": "Layer_toolbar-main-hover", "kind": "rect", "parentLayerId": null, "recipePointer": "/layers/4", "mergeIndex": 4, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_toolbar-dropdown-hover", "foregroundInput": "Processed_toolbar-main-hover", "output": "Merge_toolbar-main-hover", "activeLocalFrames": [ 82, 87 ], "effectiveActiveLocalFrames": [ 82, 87 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 1313, "y": 19, "width": 104, "height": 33, "radius": 10, "fill": "#000000", "opacity": 0.098 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "first-scrim", "nodeId": "Layer_first-scrim", "kind": "rect", "parentLayerId": null, "recipePointer": "/layers/5", "mergeIndex": 5, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_toolbar-main-hover", "foregroundInput": "Processed_first-scrim", "output": "Merge_first-scrim", "activeLocalFrames": [ 4, 47 ], "effectiveActiveLocalFrames": [ 4, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "width": 1720, "height": 1080, "fill": "#101010", "opacity": 0.135 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "create-copy-dialog", "nodeId": "Layer_create-copy-dialog", "kind": "group", "parentLayerId": null, "recipePointer": "/layers/6", "mergeIndex": 6, "tools": [ "Group", "Transform", "Merge" ], "backgroundInput": "Merge_first-scrim", "foregroundInput": "Processed_create-copy-dialog", "output": "Merge_create-copy-dialog", "activeLocalFrames": [ 4, 26 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 550, "width": 483, "height": 402 }, "construction": "Merge children in this order on a transparent local domain; apply local clipping only when declared; transform the assembled group, then blur/alpha and merge over backgroundInput. Preserve shadow/overflow pixels where overflow is visible.", "children": [ { "layerId": "first-card", "nodeId": "Layer_first-card", "kind": "rect", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/0", "mergeIndex": 0, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Transparent_create-copy-dialog", "foregroundInput": "Processed_first-card", "output": "Merge_first-card", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "width": 483, "height": 402, "radius": 26, "fill": "#ffffff", "shadow": "0 4px 10px #00000010" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "copy-tile", "nodeId": "Layer_copy-tile", "kind": "rect", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/1", "mergeIndex": 1, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_first-card", "foregroundInput": "Processed_copy-tile", "output": "Merge_copy-tile", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 25, "width": 46, "height": 46, "radius": 13, "fill": "#f7f7f7" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "copy-glyph", "nodeId": "Layer_copy-glyph", "kind": "path", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/2", "mergeIndex": 2, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_copy-tile", "foregroundInput": "Processed_copy-glyph", "output": "Merge_copy-glyph", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 36, "y": 36, "width": 24, "height": 24, "path": "M6 3V21M6 12H17V3M3 3A3 3 0 1 0 9 3A3 3 0 1 0 3 3M14 3A3 3 0 1 0 20 3A3 3 0 1 0 14 3", "viewBox": [ 0, 0, 24, 24 ], "fill": "none", "stroke": "#24292c", "strokeWidth": 2 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "first-close", "nodeId": "Layer_first-close", "kind": "path", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/3", "mergeIndex": 3, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_copy-glyph", "foregroundInput": "Processed_first-close", "output": "Merge_first-close", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 440, "y": 30, "width": 15, "height": 15, "path": "M2 2L13 13M13 2L2 13", "viewBox": [ 0, 0, 15, 15 ], "fill": "none", "stroke": "#777777", "strokeWidth": 1.5 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "first-title", "nodeId": "Layer_first-title", "kind": "text", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/4", "mergeIndex": 4, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_first-close", "foregroundInput": "Processed_first-title", "output": "Merge_first-title", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "firstTitle", "x": 25, "y": 90, "width": 433, "height": 32, "fontSize": 24, "weight": 600, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "first-body", "nodeId": "Layer_first-body", "kind": "text", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/5", "mergeIndex": 5, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_first-title", "foregroundInput": "Processed_first-body", "output": "Merge_first-body", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "firstBody", "x": 25, "y": 141, "width": 433, "height": 76, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#777777" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "name-label", "nodeId": "Layer_name-label", "kind": "text", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/6", "mergeIndex": 6, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_first-body", "foregroundInput": "Processed_name-label", "output": "Merge_name-label", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "nameLabel", "x": 25, "y": 234, "width": 300, "height": 25, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "prefix-hint", "nodeId": "Layer_prefix-hint", "kind": "text", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/7", "mergeIndex": 7, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_name-label", "foregroundInput": "Processed_prefix-hint", "output": "Merge_prefix-hint", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "prefixHint", "x": 345, "y": 234, "width": 106, "height": 25, "fontSize": 16, "weight": 400, "lineHeight": 1.25, "color": "#999999", "align": "right" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "copy-name-input", "nodeId": "Layer_copy-name-input", "kind": "rect", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/8", "mergeIndex": 8, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_prefix-hint", "foregroundInput": "Processed_copy-name-input", "output": "Merge_copy-name-input", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 275, "width": 433, "height": 47, "radius": 15, "fill": "#f7f7f7", "stroke": "#e5e5e5", "strokeWidth": 1.5 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "copy-name", "nodeId": "Layer_copy-name", "kind": "text", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/9", "mergeIndex": 9, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_copy-name-input", "foregroundInput": "Processed_copy-name", "output": "Merge_copy-name", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "copyName", "x": 41, "y": 286, "width": 399, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "first-button", "nodeId": "Layer_first-button", "kind": "rect", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/10", "mergeIndex": 10, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_copy-name", "foregroundInput": "Processed_first-button", "output": "Merge_first-button", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 338, "width": 433, "height": 35, "radius": 13, "fill": "#3b3b3b" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "first-action", "nodeId": "Layer_first-action", "kind": "text", "parentLayerId": "create-copy-dialog", "recipePointer": "/layers/6/children/11", "mergeIndex": 11, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_first-button", "foregroundInput": "Processed_first-action", "output": "Merge_first-action", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 4, 26 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "firstAction", "x": 35, "y": 343, "width": 413, "height": 25, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#ffffff", "align": "center" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." } ] }, { "layerId": "one-frame-progress", "nodeId": "Layer_one-frame-progress", "kind": "group", "parentLayerId": null, "recipePointer": "/layers/7", "mergeIndex": 7, "tools": [ "Group", "Transform", "Merge" ], "backgroundInput": "Merge_create-copy-dialog", "foregroundInput": "Processed_one-frame-progress", "output": "Merge_one-frame-progress", "activeLocalFrames": [ 26, 27 ], "effectiveActiveLocalFrames": [ 26, 27 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 550, "y": 565, "width": 483, "height": 174 }, "construction": "Merge children in this order on a transparent local domain; apply local clipping only when declared; transform the assembled group, then blur/alpha and merge over backgroundInput. Preserve shadow/overflow pixels where overflow is visible.", "children": [ { "layerId": "progress-card", "nodeId": "Layer_progress-card", "kind": "rect", "parentLayerId": "one-frame-progress", "recipePointer": "/layers/7/children/0", "mergeIndex": 0, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Transparent_one-frame-progress", "foregroundInput": "Processed_progress-card", "output": "Merge_progress-card", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 26, 27 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "width": 483, "height": 174, "radius": 26, "fill": "#ffffff", "shadow": "0 4px 10px #00000010" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "progress-icon-tile", "nodeId": "Layer_progress-icon-tile", "kind": "rect", "parentLayerId": "one-frame-progress", "recipePointer": "/layers/7/children/1", "mergeIndex": 1, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_progress-card", "foregroundInput": "Processed_progress-icon-tile", "output": "Merge_progress-icon-tile", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 26, 27 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 22, "width": 46, "height": 46, "radius": 13, "fill": "#fafafa" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "progress-spinner", "nodeId": "Layer_progress-spinner", "kind": "path", "parentLayerId": "one-frame-progress", "recipePointer": "/layers/7/children/2", "mergeIndex": 2, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_progress-icon-tile", "foregroundInput": "Processed_progress-spinner", "output": "Merge_progress-spinner", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 26, 27 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 38, "y": 34, "width": 22, "height": 22, "path": "M11 2A9 9 0 1 1 2 11", "viewBox": [ 0, 0, 22, 22 ], "fill": "none", "stroke": "#c5c9c8", "strokeWidth": 2.5 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "progress-close", "nodeId": "Layer_progress-close", "kind": "path", "parentLayerId": "one-frame-progress", "recipePointer": "/layers/7/children/3", "mergeIndex": 3, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_progress-spinner", "foregroundInput": "Processed_progress-close", "output": "Merge_progress-close", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 26, 27 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 440, "y": 25, "width": 15, "height": 15, "path": "M2 2L13 13M13 2L2 13", "viewBox": [ 0, 0, 15, 15 ], "fill": "none", "stroke": "#777777", "strokeWidth": 1.5 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "progress-message", "nodeId": "Layer_progress-message", "kind": "text", "parentLayerId": "one-frame-progress", "recipePointer": "/layers/7/children/4", "mergeIndex": 4, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_progress-close", "foregroundInput": "Processed_progress-message", "output": "Merge_progress-message", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 26, 27 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "progress", "x": 25, "y": 80, "width": 433, "height": 32, "fontSize": 24, "weight": 600, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "progress-subline", "nodeId": "Layer_progress-subline", "kind": "text", "parentLayerId": "one-frame-progress", "recipePointer": "/layers/7/children/5", "mergeIndex": 5, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_progress-message", "foregroundInput": "Processed_progress-subline", "output": "Merge_progress-subline", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 26, 27 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "progressSubline", "x": 25, "y": 123, "width": 433, "height": 27, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#858585" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." } ] }, { "layerId": "copy-confirmation", "nodeId": "Layer_copy-confirmation", "kind": "group", "parentLayerId": null, "recipePointer": "/layers/8", "mergeIndex": 8, "tools": [ "Group", "Transform", "Merge" ], "backgroundInput": "Merge_one-frame-progress", "foregroundInput": "Processed_copy-confirmation", "output": "Merge_copy-confirmation", "activeLocalFrames": [ 27, 47 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 550, "y": 451, "width": 483, "height": 402 }, "construction": "Merge children in this order on a transparent local domain; apply local clipping only when declared; transform the assembled group, then blur/alpha and merge over backgroundInput. Preserve shadow/overflow pixels where overflow is visible.", "children": [ { "layerId": "success-card", "nodeId": "Layer_success-card", "kind": "rect", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/0", "mergeIndex": 0, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Transparent_copy-confirmation", "foregroundInput": "Processed_success-card", "output": "Merge_success-card", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "width": 483, "height": 402, "radius": 26, "fill": "#ffffff", "shadow": "0 4px 10px #00000010" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "success-tile", "nodeId": "Layer_success-tile", "kind": "rect", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/1", "mergeIndex": 1, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_success-card", "foregroundInput": "Processed_success-tile", "output": "Merge_success-tile", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 25, "width": 46, "height": 46, "radius": 13, "fill": "#e5f5ed" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "success-glyph", "nodeId": "Layer_success-glyph", "kind": "path", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/2", "mergeIndex": 2, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_success-tile", "foregroundInput": "Processed_success-glyph", "output": "Merge_success-glyph", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 36, "y": 36, "width": 24, "height": 24, "path": "M3 12L9 18L22 4", "viewBox": [ 0, 0, 24, 24 ], "fill": "none", "stroke": "#247b52", "strokeWidth": 2 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "success-close", "nodeId": "Layer_success-close", "kind": "path", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/3", "mergeIndex": 3, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_success-glyph", "foregroundInput": "Processed_success-close", "output": "Merge_success-close", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 440, "y": 30, "width": 15, "height": 15, "path": "M2 2L13 13M13 2L2 13", "viewBox": [ 0, 0, 15, 15 ], "fill": "none", "stroke": "#777777", "strokeWidth": 1.5 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "success-title", "nodeId": "Layer_success-title", "kind": "text", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/4", "mergeIndex": 4, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_success-close", "foregroundInput": "Processed_success-title", "output": "Merge_success-title", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "successTitle", "x": 25, "y": 90, "width": 433, "height": 32, "fontSize": 24, "weight": 600, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "success-body", "nodeId": "Layer_success-body", "kind": "text", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/5", "mergeIndex": 5, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_success-title", "foregroundInput": "Processed_success-body", "output": "Merge_success-body", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "successBody", "x": 25, "y": 128, "width": 433, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#777777" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "success-name-heading", "nodeId": "Layer_success-name-heading", "kind": "text", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/6", "mergeIndex": 6, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_success-body", "foregroundInput": "Processed_success-name-heading", "output": "Merge_success-name-heading", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "nameLabel", "x": 25, "y": 165, "width": 108, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "success-name-glyph", "nodeId": "Layer_success-name-glyph", "kind": "path", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/7", "mergeIndex": 7, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_success-name-heading", "foregroundInput": "Processed_success-name-glyph", "output": "Merge_success-name-glyph", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 124, "y": 169, "width": 15, "height": 18, "path": "M3 2V16M3 8H12V2M1 2H5M10 2H14", "viewBox": [ 0, 0, 15, 18 ], "fill": "none", "stroke": "#343434", "strokeWidth": 1.5 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "success-name", "nodeId": "Layer_success-name", "kind": "text", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/8", "mergeIndex": 8, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_success-name-glyph", "foregroundInput": "Processed_success-name", "output": "Merge_success-name", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "copyNameShort", "x": 145, "y": 165, "width": 313, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "success-next-heading", "nodeId": "Layer_success-next-heading", "kind": "text", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/9", "mergeIndex": 9, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_success-name", "foregroundInput": "Processed_success-next-heading", "output": "Merge_success-next-heading", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "nextHeading", "x": 25, "y": 205, "width": 433, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "success-steps", "nodeId": "Layer_success-steps", "kind": "text", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/10", "mergeIndex": 10, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_success-next-heading", "foregroundInput": "Processed_success-steps", "output": "Merge_success-steps", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "successSteps", "x": 25, "y": 241, "width": 433, "height": 60, "fontSize": 17, "weight": 400, "lineHeight": 1.53, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "success-foot", "nodeId": "Layer_success-foot", "kind": "text", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/11", "mergeIndex": 11, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_success-steps", "foregroundInput": "Processed_success-foot", "output": "Merge_success-foot", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "successFoot", "x": 25, "y": 303, "width": 433, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#787878" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "continue-button", "nodeId": "Layer_continue-button", "kind": "rect", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/12", "mergeIndex": 12, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_success-foot", "foregroundInput": "Processed_continue-button", "output": "Merge_continue-button", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 341, "width": 433, "height": 35, "radius": 13, "fill": "#3b3b3b" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "continue-action", "nodeId": "Layer_continue-action", "kind": "text", "parentLayerId": "copy-confirmation", "recipePointer": "/layers/8/children/13", "mergeIndex": 13, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_continue-button", "foregroundInput": "Processed_continue-action", "output": "Merge_continue-action", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 27, 47 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "closeAction", "x": 35, "y": 346, "width": 413, "height": 25, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#ffffff", "align": "center" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." } ] }, { "layerId": "second-scrim", "nodeId": "Layer_second-scrim", "kind": "rect", "parentLayerId": null, "recipePointer": "/layers/9", "mergeIndex": 9, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_copy-confirmation", "foregroundInput": "Processed_second-scrim", "output": "Merge_second-scrim", "activeLocalFrames": [ 87, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "width": 1720, "height": 1080, "fill": "#101010" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "save-dialog", "nodeId": "Layer_save-dialog", "kind": "group", "parentLayerId": null, "recipePointer": "/layers/10", "mergeIndex": 10, "tools": [ "Group", "Transform", "Merge" ], "backgroundInput": "Merge_second-scrim", "foregroundInput": "Processed_save-dialog", "output": "Merge_save-dialog", "activeLocalFrames": [ 87, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 525, "width": 533, "height": 636 }, "construction": "Merge children in this order on a transparent local domain; apply local clipping only when declared; transform the assembled group, then blur/alpha and merge over backgroundInput. Preserve shadow/overflow pixels where overflow is visible.", "children": [ { "layerId": "second-card", "nodeId": "Layer_second-card", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/0", "mergeIndex": 0, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Transparent_save-dialog", "foregroundInput": "Processed_second-card", "output": "Merge_second-card", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "width": 533, "height": 636, "radius": 26, "fill": "#ffffff", "shadow": "0 4px 10px #00000010" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "save-tile", "nodeId": "Layer_save-tile", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/1", "mergeIndex": 1, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_second-card", "foregroundInput": "Processed_save-tile", "output": "Merge_save-tile", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 26, "width": 46, "height": 46, "radius": 13, "fill": "#f7f7f7" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "save-glyph", "nodeId": "Layer_save-glyph", "kind": "path", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/2", "mergeIndex": 2, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_save-tile", "foregroundInput": "Processed_save-glyph", "output": "Merge_save-glyph", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 36, "y": 37, "width": 24, "height": 24, "path": "M6 3V21M6 12H17V3M3 3A3 3 0 1 0 9 3A3 3 0 1 0 3 3M14 3A3 3 0 1 0 20 3A3 3 0 1 0 14 3", "viewBox": [ 0, 0, 24, 24 ], "fill": "none", "stroke": "#24292c", "strokeWidth": 2 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "second-close", "nodeId": "Layer_second-close", "kind": "path", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/3", "mergeIndex": 3, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_save-glyph", "foregroundInput": "Processed_second-close", "output": "Merge_second-close", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 490, "y": 29, "width": 15, "height": 15, "path": "M2 2L13 13M13 2L2 13", "viewBox": [ 0, 0, 15, 15 ], "fill": "none", "stroke": "#777777", "strokeWidth": 1.5 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "second-title", "nodeId": "Layer_second-title", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/4", "mergeIndex": 4, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_second-close", "foregroundInput": "Processed_second-title", "output": "Merge_second-title", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "secondTitle", "x": 25, "y": 89, "width": 483, "height": 32, "fontSize": 24, "weight": 600, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "branch-heading", "nodeId": "Layer_branch-heading", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/5", "mergeIndex": 5, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_second-title", "foregroundInput": "Processed_branch-heading", "output": "Merge_branch-heading", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "nameLabel", "x": 25, "y": 137, "width": 180, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "branch-value-glyph", "nodeId": "Layer_branch-value-glyph", "kind": "path", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/6", "mergeIndex": 6, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_branch-heading", "foregroundInput": "Processed_branch-value-glyph", "output": "Merge_branch-value-glyph", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 220, "y": 141, "width": 17, "height": 18, "path": "M3 2V16M3 8H12V2M1 2H5M10 2H14", "viewBox": [ 0, 0, 15, 18 ], "fill": "none", "stroke": "#343434", "strokeWidth": 1.5 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "branch-value", "nodeId": "Layer_branch-value", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/7", "mergeIndex": 7, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_branch-value-glyph", "foregroundInput": "Processed_branch-value", "output": "Merge_branch-value", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "copyNameShort", "x": 251, "y": 137, "width": 257, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "changes-heading", "nodeId": "Layer_changes-heading", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/8", "mergeIndex": 8, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_branch-value", "foregroundInput": "Processed_changes-heading", "output": "Merge_changes-heading", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "changesLabel", "x": 25, "y": 178, "width": 230, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "changes-value", "nodeId": "Layer_changes-value", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/9", "mergeIndex": 9, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_changes-heading", "foregroundInput": "Processed_changes-value", "output": "Merge_changes-value", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "changeCount", "x": 325, "y": 178, "width": 183, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#8b9691", "align": "right" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "include-toggle", "nodeId": "Layer_include-toggle", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/10", "mergeIndex": 10, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_changes-value", "foregroundInput": "Processed_include-toggle", "output": "Merge_include-toggle", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 30, "y": 218, "width": 40, "height": 26, "radius": 13, "fill": "#111111" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "toggle-knob", "nodeId": "Layer_toggle-knob", "kind": "ellipse", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/11", "mergeIndex": 11, "tools": [ "Ellipse mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_include-toggle", "foregroundInput": "Processed_toggle-knob", "output": "Merge_toggle-knob", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 47, "y": 221, "width": 20, "height": 20, "fill": "#ffffff" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "toggle-label", "nodeId": "Layer_toggle-label", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/12", "mergeIndex": 12, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_toggle-knob", "foregroundInput": "Processed_toggle-label", "output": "Merge_toggle-label", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "toggleLabel", "x": 85, "y": 218, "width": 415, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "summary-heading", "nodeId": "Layer_summary-heading", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/13", "mergeIndex": 13, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_toggle-label", "foregroundInput": "Processed_summary-heading", "output": "Merge_summary-heading", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "summaryLabel", "x": 25, "y": 265, "width": 483, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "summary-field", "nodeId": "Layer_summary-field", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/14", "mergeIndex": 14, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_summary-heading", "foregroundInput": "Processed_summary-field", "output": "Merge_summary-field", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 299, "width": 483, "height": 73, "radius": 15, "fill": "#f7f7f7", "stroke": "#e5e5e5", "strokeWidth": 1.5 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "summary-placeholder", "nodeId": "Layer_summary-placeholder", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/15", "mergeIndex": 15, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_summary-field", "foregroundInput": "Processed_summary-placeholder", "output": "Merge_summary-placeholder", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "summaryPlaceholder", "x": 41, "y": 311, "width": 453, "height": 55, "fontSize": 17, "weight": 400, "lineHeight": 1.45, "color": "#999999" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "next-heading", "nodeId": "Layer_next-heading", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/16", "mergeIndex": 16, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_summary-placeholder", "foregroundInput": "Processed_next-heading", "output": "Merge_next-heading", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "nextHeading", "x": 25, "y": 389, "width": 483, "height": 26, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "option-row-background", "nodeId": "Layer_option-row-background", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/17", "mergeIndex": 17, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_next-heading", "foregroundInput": "Processed_option-row-background", "output": "Merge_option-row-background", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 422, "width": 483, "height": 137, "radius": 14, "fill": "#f9f9f9" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "second-option-hover", "nodeId": "Layer_second-option-hover", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/18", "mergeIndex": 18, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_option-row-background", "foregroundInput": "Processed_second-option-hover", "output": "Merge_second-option-hover", "activeLocalFrames": [ 98, 104 ], "effectiveActiveLocalFrames": [ 98, 104 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 469, "width": 483, "height": 44, "fill": "#f4f4f4" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "third-option-hover", "nodeId": "Layer_third-option-hover", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/19", "mergeIndex": 19, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_second-option-hover", "foregroundInput": "Processed_third-option-hover", "output": "Merge_third-option-hover", "activeLocalFrames": [ 103, 121 ], "effectiveActiveLocalFrames": [ 103, 121 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 515, "width": 483, "height": 43, "radius": 12, "fill": "#f4f4f4" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "option-icon-1", "nodeId": "Layer_option-icon-1", "kind": "path", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/20", "mergeIndex": 20, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_third-option-hover", "foregroundInput": "Processed_option-icon-1", "output": "Merge_option-icon-1", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 46, "y": 435, "width": 22, "height": 22, "path": "M1 11H21M6 11A5 5 0 1 0 16 11A5 5 0 1 0 6 11", "viewBox": [ 0, 0, 22, 22 ], "fill": "none", "stroke": "#171a1c", "strokeWidth": 1.8 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "option-label-1", "nodeId": "Layer_option-label-1", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/21", "mergeIndex": 21, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_option-icon-1", "foregroundInput": "Processed_option-label-1", "output": "Merge_option-label-1", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "option1", "x": 83, "y": 433, "width": 375, "height": 27, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "option-divider-1", "nodeId": "Layer_option-divider-1", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/22", "mergeIndex": 22, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_option-label-1", "foregroundInput": "Processed_option-divider-1", "output": "Merge_option-divider-1", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 468, "width": 483, "height": 1, "fill": "#e5e5e5" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "option-icon-2", "nodeId": "Layer_option-icon-2", "kind": "path", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/23", "mergeIndex": 23, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_option-divider-1", "foregroundInput": "Processed_option-icon-2", "output": "Merge_option-icon-2", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 46, "y": 481, "width": 22, "height": 22, "path": "M4 8L11 1L18 8M11 1V21", "viewBox": [ 0, 0, 22, 22 ], "fill": "none", "stroke": "#171a1c", "strokeWidth": 1.8 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "option-label-2", "nodeId": "Layer_option-label-2", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/24", "mergeIndex": 24, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_option-icon-2", "foregroundInput": "Processed_option-label-2", "output": "Merge_option-label-2", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "option2", "x": 83, "y": 479, "width": 375, "height": 27, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "option-divider-2", "nodeId": "Layer_option-divider-2", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/25", "mergeIndex": 25, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_option-label-2", "foregroundInput": "Processed_option-divider-2", "output": "Merge_option-divider-2", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 514, "width": 483, "height": 1, "fill": "#e5e5e5" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "option-icon-3", "nodeId": "Layer_option-icon-3", "kind": "path", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/26", "mergeIndex": 26, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_option-divider-2", "foregroundInput": "Processed_option-icon-3", "output": "Merge_option-icon-3", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 46, "y": 527, "width": 22, "height": 22, "path": "M2 3H20V19H2ZM6 8H16M6 13H14", "viewBox": [ 0, 0, 22, 22 ], "fill": "none", "stroke": "#171a1c", "strokeWidth": 1.8 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "option-label-3", "nodeId": "Layer_option-label-3", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/27", "mergeIndex": 27, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_option-icon-3", "foregroundInput": "Processed_option-label-3", "output": "Merge_option-label-3", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "option3", "x": 83, "y": 525, "width": 375, "height": 27, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." }, { "layerId": "first-option-check", "nodeId": "Layer_first-option-check", "kind": "path", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/28", "mergeIndex": 28, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_option-label-3", "foregroundInput": "Processed_first-option-check", "output": "Merge_first-option-check", "activeLocalFrames": [ 0, 110 ], "effectiveActiveLocalFrames": [ 87, 110 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 465, "y": 434, "width": 23, "height": 23, "path": "M3 12L9 18L21 3", "viewBox": [ 0, 0, 24, 24 ], "fill": "none", "stroke": "#101010", "strokeWidth": 2 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "third-option-check", "nodeId": "Layer_third-option-check", "kind": "path", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/29", "mergeIndex": 29, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_first-option-check", "foregroundInput": "Processed_third-option-check", "output": "Merge_third-option-check", "activeLocalFrames": [ 110, 122 ], "effectiveActiveLocalFrames": [ 110, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 465, "y": 526, "width": 23, "height": 23, "path": "M3 12L9 18L21 3", "viewBox": [ 0, 0, 24, 24 ], "fill": "none", "stroke": "#101010", "strokeWidth": 2 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "save-button", "nodeId": "Layer_save-button", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/30", "mergeIndex": 30, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_third-option-check", "foregroundInput": "Processed_save-button", "output": "Merge_save-button", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 575, "width": 483, "height": 36, "radius": 13, "fill": "#0b0b0b" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "save-button-hover", "nodeId": "Layer_save-button-hover", "kind": "rect", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/31", "mergeIndex": 31, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_save-button", "foregroundInput": "Processed_save-button-hover", "output": "Merge_save-button-hover", "activeLocalFrames": [ 120, 122 ], "effectiveActiveLocalFrames": [ 120, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 25, "y": 575, "width": 483, "height": 36, "radius": 13, "fill": "#3b3b3b" }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "save-action", "nodeId": "Layer_save-action", "kind": "text", "parentLayerId": "save-dialog", "recipePointer": "/layers/10/children/32", "mergeIndex": 32, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_save-button-hover", "foregroundInput": "Processed_save-action", "output": "Merge_save-action", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 87, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "saveAction", "x": 35, "y": 580, "width": 463, "height": 25, "fontSize": 17, "weight": 400, "lineHeight": 1.25, "color": "#ffffff", "align": "center" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." } ] }, { "layerId": "relay-cursor", "nodeId": "Layer_relay-cursor", "kind": "group", "parentLayerId": null, "recipePointer": "/layers/11", "mergeIndex": 11, "tools": [ "Group", "Transform", "Merge" ], "backgroundInput": "Merge_save-dialog", "foregroundInput": "Processed_relay-cursor", "output": "Merge_relay-cursor", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 0, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "width": 40, "height": 48 }, "construction": "Merge children in this order on a transparent local domain; apply local clipping only when declared; transform the assembled group, then blur/alpha and merge over backgroundInput. Preserve shadow/overflow pixels where overflow is visible.", "children": [ { "layerId": "relay-arrow-before-selection-halo", "nodeId": "Layer_relay-arrow-before-selection-halo", "kind": "path", "parentLayerId": "relay-cursor", "recipePointer": "/layers/11/children/0", "mergeIndex": 0, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Transparent_relay-cursor", "foregroundInput": "Processed_relay-arrow-before-selection-halo", "output": "Merge_relay-arrow-before-selection-halo", "activeLocalFrames": [ 0, 97 ], "effectiveActiveLocalFrames": [ 0, 97 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "arrowPath", "viewBox": [ 0, 0, 24, 30 ], "width": 32, "height": 40, "fill": "#111111", "stroke": "#111111", "strokeWidth": 2.4, "scaleY": 1.05, "origin": [ 4.3, 5.7 ], "blur": 1.3, "opacity": 0.22, "y": 1.6 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "third-option-hand-halo", "nodeId": "Layer_third-option-hand-halo", "kind": "path", "parentLayerId": "relay-cursor", "recipePointer": "/layers/11/children/1", "mergeIndex": 1, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_relay-arrow-before-selection-halo", "foregroundInput": "Processed_third-option-hand-halo", "output": "Merge_third-option-hand-halo", "activeLocalFrames": [ 97, 119 ], "effectiveActiveLocalFrames": [ 97, 119 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "handPath", "viewBox": [ 0, 0, 26, 32 ], "width": 37, "height": 46, "fill": "#111111", "stroke": "#111111", "strokeWidth": 2.4, "x": -8, "y": -2, "origin": [ 4, 1 ], "blur": 1.3, "opacity": 0.22 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "relay-arrow-to-continue-halo", "nodeId": "Layer_relay-arrow-to-continue-halo", "kind": "path", "parentLayerId": "relay-cursor", "recipePointer": "/layers/11/children/2", "mergeIndex": 2, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_third-option-hand-halo", "foregroundInput": "Processed_relay-arrow-to-continue-halo", "output": "Merge_relay-arrow-to-continue-halo", "activeLocalFrames": [ 119, 122 ], "effectiveActiveLocalFrames": [ 119, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "arrowPath", "viewBox": [ 0, 0, 24, 30 ], "width": 32, "height": 40, "fill": "#111111", "stroke": "#111111", "strokeWidth": 2.4, "scaleY": 1.05, "origin": [ 4.3, 5.7 ], "blur": 1.3, "opacity": 0.22, "y": 1.6 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "relay-arrow-before-selection", "nodeId": "Layer_relay-arrow-before-selection", "kind": "path", "parentLayerId": "relay-cursor", "recipePointer": "/layers/11/children/3", "mergeIndex": 3, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_relay-arrow-to-continue-halo", "foregroundInput": "Processed_relay-arrow-before-selection", "output": "Merge_relay-arrow-before-selection", "activeLocalFrames": [ 0, 97 ], "effectiveActiveLocalFrames": [ 0, 97 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "arrowPath", "viewBox": [ 0, 0, 24, 30 ], "width": 32, "height": 40, "fill": "#050505", "stroke": "#ffffff", "strokeWidth": 1.8, "scaleY": 1.05, "origin": [ 4.3, 5.7 ], "y": 1.6 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "third-option-hand", "nodeId": "Layer_third-option-hand", "kind": "path", "parentLayerId": "relay-cursor", "recipePointer": "/layers/11/children/4", "mergeIndex": 4, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_relay-arrow-before-selection", "foregroundInput": "Processed_third-option-hand", "output": "Merge_third-option-hand", "activeLocalFrames": [ 97, 119 ], "effectiveActiveLocalFrames": [ 97, 119 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "handPath", "viewBox": [ 0, 0, 26, 32 ], "width": 37, "height": 46, "fill": "#ffffff", "stroke": "#111111", "strokeWidth": 1.7, "x": -8, "y": -2, "origin": [ 4, 1 ] }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "relay-arrow-to-continue", "nodeId": "Layer_relay-arrow-to-continue", "kind": "path", "parentLayerId": "relay-cursor", "recipePointer": "/layers/11/children/5", "mergeIndex": 5, "tools": [ "SVG path geometry", "Transform", "Merge" ], "backgroundInput": "Merge_third-option-hand", "foregroundInput": "Processed_relay-arrow-to-continue", "output": "Merge_relay-arrow-to-continue", "activeLocalFrames": [ 119, 122 ], "effectiveActiveLocalFrames": [ 119, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "arrowPath", "viewBox": [ 0, 0, 24, 30 ], "width": 32, "height": 40, "fill": "#050505", "stroke": "#ffffff", "strokeWidth": 1.8, "scaleY": 1.05, "origin": [ 4.3, 5.7 ], "y": 1.6 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." } ], "exposure": { "samples": 41, "shutterTrack": "/layers/11/exposure/shutterFrames", "evaluation": "For positive shutter, sample parent transform at frame+(sampleIndex/(samples-1)-0.5)*shutter; otherwise one sample at frame. Children and all visibility gates remain at frame. Over-composite samples in ascending index with opacity 1/(sampleIndex+1)." } }, { "layerId": "disclosure-back", "nodeId": "Layer_disclosure-back", "kind": "rect", "parentLayerId": null, "recipePointer": "/layers/12", "mergeIndex": 12, "tools": [ "Rectangle mask", "Background", "Transform", "Merge" ], "backgroundInput": "Merge_relay-cursor", "foregroundInput": "Processed_disclosure-back", "output": "Merge_disclosure-back", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 0, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "x": 18, "y": 1038, "width": 254, "height": 28, "radius": 5, "fill": "#ffffff", "opacity": 0.9 }, "construction": "Construct editable geometry from these local controls and the recipe. Preserve fill/stroke/shadow and ordering; normalize coordinates only after parent composition." }, { "layerId": "disclosure", "nodeId": "Layer_disclosure", "kind": "text", "parentLayerId": null, "recipePointer": "/layers/13", "mergeIndex": 13, "tools": [ "TextPlus", "Transform", "Merge" ], "backgroundInput": "Merge_disclosure-back", "foregroundInput": "Processed_disclosure", "output": "Merge_disclosure", "activeLocalFrames": [ 0, 122 ], "effectiveActiveLocalFrames": [ 0, 122 ], "frameConvention": "Start inclusive, end exclusive; ancestors gate children without subtracting their starts.", "staticControls": { "slot": "disclosure", "x": 29, "y": 1044, "width": 232, "height": 19, "fontSize": 13, "weight": 600, "lineHeight": 1.25, "color": "#292d31" }, "construction": "Text+ with declared content slot, box and line breaks. Font metrics and pixel size must be compared, not assumed equivalent to CSS. Use a single revealed substring when reveal is present." } ] tracks [ { "layerId": "desktop", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "desktop", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "workspace-before-relay", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "workspace-before-relay", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "workspace-after-relay", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "workspace-after-relay", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-dropdown-hover", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-dropdown-hover", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-dropdown-hover", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-dropdown-hover", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-dropdown-hover", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-dropdown-hover", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-main-hover", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-main-hover", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-main-hover", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-main-hover", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-main-hover", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toolbar-main-hover", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-scrim", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-scrim", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-scrim", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "create-copy-dialog", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "create-copy-dialog", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "create-copy-dialog", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "create-copy-dialog", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "create-copy-dialog", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "create-copy-dialog", "property": "blur", "mapping": "CSS spatial blur radius in local pixels, after the layer transform; not a shutter angle or a directly calibrated Fusion Blur Size.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "first-card", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-card", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-card", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-tile", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-tile", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-tile", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-tile", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-tile", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-glyph", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-glyph", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-glyph", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-glyph", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-close", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-close", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-close", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-close", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-title", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-title", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-title", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-title", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-body", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-body", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-body", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-body", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "name-label", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "name-label", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "name-label", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "name-label", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "prefix-hint", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "prefix-hint", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "prefix-hint", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "prefix-hint", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-name-input", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-name-input", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-name-input", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-name-input", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-name-input", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-name", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-name", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-name", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-name", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-button", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-button", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-button", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-button", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-button", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-action", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-action", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-action", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-action", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "one-frame-progress", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "one-frame-progress", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "one-frame-progress", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "one-frame-progress", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-card", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-card", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-card", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-icon-tile", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-icon-tile", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-icon-tile", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-icon-tile", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-icon-tile", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-spinner", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-spinner", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-spinner", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-spinner", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-close", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-close", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-close", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-close", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-message", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-message", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-message", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-message", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-subline", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-subline", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-subline", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "progress-subline", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-confirmation", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-confirmation", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-confirmation", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "copy-confirmation", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-card", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-card", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-card", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-tile", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-tile", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-tile", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-tile", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-tile", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-glyph", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-glyph", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-glyph", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-glyph", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-close", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-close", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-close", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-close", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-title", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-title", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-title", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-title", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-body", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-body", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-body", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-body", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name-heading", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name-heading", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name-heading", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name-heading", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name-glyph", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name-glyph", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name-glyph", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name-glyph", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-name", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-next-heading", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-next-heading", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-next-heading", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-next-heading", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-steps", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-steps", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-steps", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-steps", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-foot", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-foot", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-foot", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "success-foot", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "continue-button", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "continue-button", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "continue-button", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "continue-button", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "continue-button", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "continue-action", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "continue-action", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "continue-action", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "continue-action", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-scrim", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-scrim", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-scrim", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "save-dialog", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-dialog", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "save-dialog", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-dialog", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-dialog", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "save-dialog", "property": "blur", "mapping": "CSS spatial blur radius in local pixels, after the layer transform; not a shutter angle or a directly calibrated Fusion Blur Size.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "second-card", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-card", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-card", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-tile", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-tile", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-tile", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-tile", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-tile", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-glyph", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-glyph", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-glyph", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-glyph", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-close", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-close", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-close", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-close", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-title", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-title", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-title", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-title", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-heading", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-heading", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-heading", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-heading", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-value-glyph", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-value-glyph", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-value-glyph", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-value-glyph", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-value", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-value", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-value", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "branch-value", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "changes-heading", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "changes-heading", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "changes-heading", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "changes-heading", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "changes-value", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "changes-value", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "changes-value", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "changes-value", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "include-toggle", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "include-toggle", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "include-toggle", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "include-toggle", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "include-toggle", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toggle-knob", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toggle-knob", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toggle-knob", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toggle-knob", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toggle-label", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toggle-label", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toggle-label", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "toggle-label", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-heading", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-heading", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-heading", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-heading", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-field", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-field", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-field", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-field", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-field", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-placeholder", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-placeholder", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-placeholder", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "summary-placeholder", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "next-heading", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "next-heading", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "next-heading", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "next-heading", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-row-background", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-row-background", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-row-background", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-row-background", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-row-background", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-option-hover", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-option-hover", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-option-hover", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-option-hover", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "second-option-hover", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "third-option-hover", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hover", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hover", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hover", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hover", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "third-option-hover", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-1", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-1", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-1", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-1", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-1", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-1", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-1", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-1", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-divider-1", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-divider-1", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-divider-1", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-divider-1", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-2", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-2", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-2", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-2", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-2", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-2", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-2", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-2", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-divider-2", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-divider-2", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-divider-2", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-divider-2", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-3", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-3", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-3", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-icon-3", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-3", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-3", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-3", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "option-label-3", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-option-check", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-option-check", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-option-check", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "first-option-check", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-check", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-check", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-check", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-check", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button-hover", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button-hover", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button-hover", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button-hover", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-button-hover", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-action", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-action", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-action", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "save-action", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-cursor", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "relay-cursor", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "relay-cursor", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-cursor", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-cursor", "property": "exposure.shutterFrames", "mapping": "Centered parent-transform exposure width in native frames; use the recipe sample count and 1/(sampleIndex+1) over-composite stack, keeping children at integer time.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "relay-arrow-before-selection-halo", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection-halo", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection-halo", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection-halo", "property": "scaleY", "mapping": "Vertical scale multiplier in addition to uniform scale, about the recipe origin.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection-halo", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection-halo", "property": "blur", "mapping": "CSS spatial blur radius in local pixels, after the layer transform; not a shutter angle or a directly calibrated Fusion Blur Size.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand-halo", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand-halo", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand-halo", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand-halo", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand-halo", "property": "scaleX", "mapping": "Horizontal scale multiplier in addition to uniform scale, about the recipe origin.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "third-option-hand-halo", "property": "scaleY", "mapping": "Vertical scale multiplier in addition to uniform scale, about the recipe origin.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "third-option-hand-halo", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand-halo", "property": "blur", "mapping": "CSS spatial blur radius in local pixels, after the layer transform; not a shutter angle or a directly calibrated Fusion Blur Size.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue-halo", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue-halo", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue-halo", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue-halo", "property": "scaleY", "mapping": "Vertical scale multiplier in addition to uniform scale, about the recipe origin.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue-halo", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue-halo", "property": "blur", "mapping": "CSS spatial blur radius in local pixels, after the layer transform; not a shutter angle or a directly calibrated Fusion Blur Size.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection", "property": "scaleY", "mapping": "Vertical scale multiplier in addition to uniform scale, about the recipe origin.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-before-selection", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "relay-arrow-before-selection", "property": "blur", "mapping": "CSS spatial blur radius in local pixels, after the layer transform; not a shutter angle or a directly calibrated Fusion Blur Size.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "third-option-hand", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "third-option-hand", "property": "scaleX", "mapping": "Horizontal scale multiplier in addition to uniform scale, about the recipe origin.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "third-option-hand", "property": "scaleY", "mapping": "Vertical scale multiplier in addition to uniform scale, about the recipe origin.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "third-option-hand", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "third-option-hand", "property": "blur", "mapping": "CSS spatial blur radius in local pixels, after the layer transform; not a shutter angle or a directly calibrated Fusion Blur Size.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "relay-arrow-to-continue", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue", "property": "scaleY", "mapping": "Vertical scale multiplier in addition to uniform scale, about the recipe origin.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "relay-arrow-to-continue", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "relay-arrow-to-continue", "property": "blur", "mapping": "CSS spatial blur radius in local pixels, after the layer transform; not a shutter angle or a directly calibrated Fusion Blur Size.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": true }, { "layerId": "disclosure-back", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "disclosure-back", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "disclosure-back", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "disclosure-back", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "disclosure-back", "property": "opacity", "mapping": "Apply layer/group alpha after compositing its own children, then multiply by its half-open activity gate. Parent alpha multiplies child alpha.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "disclosure-back", "property": "radius", "mapping": "CSS corner radius in local pixels; construct a matching rounded mask, not the same number in a normalized Fusion corner control.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "disclosure", "property": "x", "mapping": "Local box left in parent pixels; combine with origin, scale and rotation before normalizing the Fusion Transform center. Never treat this as a world-space Center X.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "disclosure", "property": "y", "mapping": "Local box top in parent pixels, positive downward; compose ancestors first and invert the final normalized vertical center for Fusion.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "disclosure", "property": "width", "mapping": "Untransformed local box width in pixels; use for the image/shape/text domain, not as the post-scale visible width.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false }, { "layerId": "disclosure", "property": "height", "mapping": "Untransformed local box height in pixels; preserve overflow and parent clipping rather than auto-fitting it.", "caveat": "Pinned implementation data, not a fresh source measurement. Respect ancestor activity, coordinate domains and README-specific mask/overlap/shutter instructions; no native Resolve verification.", "animated": false } ] steps [ "Create a 1920x1080 composition of 122 frames at rational 24000/1001. Set local zero at source 1390, end exclusive 1512. Keep the camera locked; do not add a global zoom or a dissolve.", "Build the desktop from the declared desktop SVG. Overlay the 1720x1080 workspaceBefore SVG on [0,47), then workspaceAfter on [47,122), both at x=0,y=0. Retain the 200-pixel desktop strip on the right and the illustrated-UI disclosure above all other layers.", "Create each modal as a transparent local group. Merge every child in the listed fusionNodes order, then position the whole group. First and confirmation boxes are 483x402 at x=550; progress is 483x174 at (550,565); save is 533x636 at x=525. Never center every box independently on the full 1920-pixel stage.", "Merge first-scrim, #101010 at alpha 0.135, over only the 1720x1080 workspace on [4,47). First form runs [4,26), progress [26,27), confirmation [27,47). Frame 26 must exist as one frame; do not replace this hard state relay with crossfades.", "Animate first-form y=454,451.8,451 at frames 4,5,6; opacity=0.88,0.97,0.985,1 at 4,5,6,7; blur=0.32,0.12,0 at 4,5,6. Keep this retained fit separate from the open one-frame-too-late settling finding.", "Remove the first scrim at 47. Keep frames 47 through 86 undimmed, including toolbar hover rectangles on [80,82) and [82,87). At 87 add second-scrim alpha 0.06, then 0.135 at 88; second form y=338,335,334 at 87,88,89 with opacity=0.525,0.94,0.975,1 at 87,88,89,90.", "Within save-dialog keep second-option-hover on [98,104) and third-option-hover on [103,121); both are present at 103. Hard-switch first-option-check to third-option-check at 110. Apply save-button-hover at 120. End at local 121 with the summary placeholder and no submit/result.", "Place relay-cursor above every modal. Compose halo paths before foreground paths. Keep arrow [0,97), hand [97,119), arrow [119,122); do not time-shift these child gates with the parent exposure. Reproduce 41 parent-transform samples and the per-frame shutter track only as an implementation approximation; see README for the alpha-stack formula.", "Keep text editable in Text+ and use the bundled Geist substitute as a starting point, not an asserted native font. Copy each text layer box, weight, tracking, alignment, line-height and line breaks from the recipe. Full/truncated identifiers and toolbar art must be edited together; validation cannot prove their semantics.", "Use the shared handoff verifier/control exporter and the archive-checked Remotion commands. Compare source, original and adaptation separately at the listed checkpoints before any fidelity claim. No Resolve import, render or fresh moving-source verdict is supplied here." ] checkpoints [ { "localFrame": 0, "check": "Workspace before relay; cursor visible. Retained entry description is broader than the actual first four frames: no modal yet." }, { "localFrame": 4, "check": "First scrim and first translucent modal start; y=454, alpha=0.88." }, { "localFrame": 6, "check": "First form reaches y=451; retained alpha 0.985 still leaves background residue, an inherited open finding." }, { "localFrame": 16, "check": "Fast arrow flight; inspect dark leading edge against source. First button stays gray in the implementation despite source feedback change at 17." }, { "localFrame": 25, "check": "Last first-form frame; next frame must be compact progress, not an interpolated height." }, { "localFrame": 26, "check": "Only compact-progress frame, 483x174 at (550,565); viewed retained source/original native PNG pair." }, { "localFrame": 27, "check": "Confirmation replaces progress; no overlap of the two groups." }, { "localFrame": 46, "check": "Last confirmation and first-scrim frame." }, { "localFrame": 47, "check": "WorkspaceAfter replaces WorkspaceBefore and the scrim clears in the same native frame." }, { "localFrame": 80, "check": "Dropdown hover, before the main-toolbar hover at 82; background remains undimmed." }, { "localFrame": 86, "check": "Last undimmed frame." }, { "localFrame": 87, "check": "Second scrim and taller modal start; second alpha/blur animation is distinct from first arrival." }, { "localFrame": 89, "check": "Second y reaches 334 but alpha is 0.975; source settles a frame earlier than the retained output." }, { "localFrame": 97, "check": "Cursor changes from arrow to hand, without changing child time during exposure." }, { "localFrame": 103, "check": "Two option-hover backgrounds coexist at alpha 0.6 each in different rows." }, { "localFrame": 110, "check": "First check disappears; third check appears. Summary remains a placeholder." }, { "localFrame": 119, "check": "Cursor changes back to arrow." }, { "localFrame": 120, "check": "Final button hover starts while third hover fades to 0.5." }, { "localFrame": 121, "check": "Last frame; no submit or success screen may be invented." } ] limitations [ "Cursor exposure: the retained 41-sample fit still leaves a dark leading arrow/hand rather than the source streak; no Resolve equivalent has been validated.", "Inherited open minor CM-R03-01: Fast arrow and hand flights remain much more opaque at the leading edge", "Inherited open minor CM-R03-02: Early control feedback starts in the wrong visual states", "Inherited open minor CM-R03-03: Both modal arrivals retain faint background text for one extra native frame", "Editable text layout does not reproduce native form density automatically; original state plates or constrained layouts are required.", "No measured scrim alpha or native-font match is supplied by the API; both remain fresh-review work.", "Source excerpt playback had headless limitations; source transitions were inspected through labelled native contacts. Source contacts do not approve rendered motion.", "Geometry marked estimate remains a fit target; new original text, symbols and required disclosure differ intentionally.", "No full-film source UI pixels become presentation assets.", "Maintain camera lock while modal state changes.", "No Poe branch or commit behavior is asserted.", "Arbitrary UI screenshots, reflowing copy or aspect-ratio changes are unsupported.", "Fresh moving-source fidelity review and final font/blur/alpha fitting are outstanding.", "Full/truncated identifier, toolbar artwork, option labels and cursor targets are manually coupled; typed constraints do not prove semantic agreement.", "Source pointer subframe blur and optical type metrics require fresh retest. Forty-one-sample cursor exposure and opacity are implementation fits, not a measured source shutter. Generic hand contour and residual exposure weighting differ from source.", "Only retained contact sheets and the explicitly listed source/original native stills were visually inspected in this authoring pass. Archive extraction is not viewing. No fresh moving-source playback, audio review, Resolve import/render, new Remotion render or installed-dependency test.", "Fusion mask, Text+ font shaping, rounded-corner, blur, color-management and sampled-exposure equivalence remain unverified. The shared controls CSV is raw local implementation data, not world-space or native Resolve controls.", "Variants, tracks, nodes, revisions and this guide do not create additional source treatments. Separate fresh critique must assess the actual guide before integration." ]