{
 "schema": "aprime-asset-manifest/1",
 "repo": "gm-build-c13-block-out",
 "items": [
  {
   "id": "cell-pink",
   "file": "cell-pink.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=310,692,445,825",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "pink brick 1x1 cell tile (studs), tiled to fill any block shape",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-pink.webp"
  },
  {
   "id": "bar3-pink",
   "file": "bar3-pink.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=175,700,580,833",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 405,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "pink 1x3 bar reference / left-mid-right caps",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（参照件 1×3 条形参考，运行时用 cell-* 平铺）"
  },
  {
   "id": "cell-red",
   "file": "cell-red.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=310,825,445,958",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "red brick 1x1 cell tile (studs), tiled to fill any block shape",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-red.webp"
  },
  {
   "id": "bar3-red",
   "file": "bar3-red.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=175,833,580,966",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 405,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "red 1x3 bar reference / left-mid-right caps",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（参照件 1×3 条形参考，运行时用 cell-* 平铺）"
  },
  {
   "id": "cell-orange",
   "file": "cell-orange.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=310,958,445,1091",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "orange brick 1x1 cell tile (studs), tiled to fill any block shape",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-orange.webp"
  },
  {
   "id": "bar3-orange",
   "file": "bar3-orange.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=175,966,580,1099",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 405,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "orange 1x3 bar reference / left-mid-right caps",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（参照件 1×3 条形参考，运行时用 cell-* 平铺）"
  },
  {
   "id": "cell-yellow",
   "file": "cell-yellow.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=310,1091,445,1224",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "yellow brick 1x1 cell tile (studs), tiled to fill any block shape",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-yellow.webp"
  },
  {
   "id": "bar3-yellow",
   "file": "bar3-yellow.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=175,1099,580,1232",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 405,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "yellow 1x3 bar reference / left-mid-right caps",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（参照件 1×3 条形参考，运行时用 cell-* 平铺）"
  },
  {
   "id": "cell-lime",
   "file": "cell-lime.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=310,1224,445,1357",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "lime brick 1x1 cell tile (studs), tiled to fill any block shape",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-lime.webp"
  },
  {
   "id": "bar3-lime",
   "file": "bar3-lime.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=175,1232,580,1365",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 405,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "lime 1x3 bar reference / left-mid-right caps",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（参照件 1×3 条形参考，运行时用 cell-* 平铺）"
  },
  {
   "id": "cell-green",
   "file": "cell-green.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=310,1357,445,1490",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "green brick 1x1 cell tile (studs), tiled to fill any block shape",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-green.webp"
  },
  {
   "id": "bar3-green",
   "file": "bar3-green.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=175,1365,580,1498",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 405,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "green 1x3 bar reference / left-mid-right caps",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（参照件 1×3 条形参考，运行时用 cell-* 平铺）"
  },
  {
   "id": "cell-cyan",
   "file": "cell-cyan.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=310,1490,445,1623",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "cyan brick 1x1 cell tile (studs), tiled to fill any block shape",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-cyan.webp"
  },
  {
   "id": "bar3-cyan",
   "file": "bar3-cyan.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=175,1498,580,1631",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 405,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "cyan 1x3 bar reference / left-mid-right caps",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（参照件 1×3 条形参考，运行时用 cell-* 平铺）"
  },
  {
   "id": "cell-blue",
   "file": "cell-blue.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=310,1623,445,1756",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "blue brick 1x1 cell tile (studs), tiled to fill any block shape",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-blue.webp"
  },
  {
   "id": "bar3-blue",
   "file": "bar3-blue.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=175,1631,580,1764",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 405,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "blue 1x3 bar reference / left-mid-right caps",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（参照件 1×3 条形参考，运行时用 cell-* 平铺）"
  },
  {
   "id": "cell-purple",
   "file": "cell-purple.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=310,1756,445,1889",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "purple brick 1x1 cell tile (studs), tiled to fill any block shape",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-purple.webp"
  },
  {
   "id": "bar3-purple",
   "file": "bar3-purple.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=175,1764,580,1897",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 405,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "purple 1x3 bar reference / left-mid-right caps",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（参照件 1×3 条形参考，运行时用 cell-* 平铺）"
  },
  {
   "id": "cell-white",
   "file": "cell-white.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=580,692,715,825",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "white non-removable obstacle cell tile",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-white.webp"
  },
  {
   "id": "cell-black",
   "file": "cell-black.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=715,692,850,825",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 135,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 43.6,
    "h": 43.6
   },
   "purpose": "black non-removable obstacle cell tile",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:70 cell=min(43,…) ; src/render.js:125 drawImage(…, B.cell+0.6, B.cell+0.6)",
   "rendered": true,
   "web": "cell-black.webp"
  },
  {
   "id": "gate-yellow",
   "file": "gate-yellow.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=1118,700,1188,833",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 70,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "yellow exit gate tile (arrow points right; rotate for other sides)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "gate-cyan",
   "file": "gate-cyan.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=1118,833,1188,966",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 70,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "cyan exit gate tile (arrow points right; rotate for other sides)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "gate-lime",
   "file": "gate-lime.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=1118,966,1188,1099",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 70,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "lime exit gate tile (arrow points right; rotate for other sides)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "gate-blue",
   "file": "gate-blue.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=1118,1099,1188,1232",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 70,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "blue exit gate tile (arrow points right; rotate for other sides)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "gate-pink",
   "file": "gate-pink.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=1118,1232,1188,1365",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 70,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "pink exit gate tile (arrow points right; rotate for other sides)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "gate-purple",
   "file": "gate-purple.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=1118,1365,1188,1498",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 70,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "purple exit gate tile (arrow points right; rotate for other sides)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "gate-red",
   "file": "gate-red.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=1118,1498,1188,1631",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 70,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "red exit gate tile (arrow points right; rotate for other sides)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "gate-green",
   "file": "gate-green.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=1118,1631,1188,1764",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 70,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "green exit gate tile (arrow points right; rotate for other sides)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "gate-orange",
   "file": "gate-orange.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=1118,1764,1188,1897",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 70,
    "h": 133,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "orange exit gate tile (arrow points right; rotate for other sides)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "gate-white",
   "file": "gate-white.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=575,592,715,700",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 140,
    "h": 108,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "white/neutral gate tile (arrow up)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（门用 GATE_COL 色三角程序化绘制 render.js:100）"
  },
  {
   "id": "btn-restart",
   "file": "btn-restart.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=110,178,270,329",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 160,
    "h": 151,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 48,
    "h": 48
   },
   "purpose": "restart button",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:75 L.restart 48×48; render.js:53",
   "rendered": true,
   "web": "btn-restart.webp"
  },
  {
   "id": "btn-pause",
   "file": "btn-pause.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=989,178,1149,329",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 160,
    "h": 151,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 48,
    "h": 48
   },
   "purpose": "pause button",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:75 L.pause 48×48; render.js:54",
   "rendered": true,
   "web": "btn-pause.webp"
  },
  {
   "id": "coin-icon",
   "file": "coin-icon.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=117,78,195,160",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 78,
    "h": 82,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 26,
    "h": 26
   },
   "purpose": "coin icon",
   "post": [
    "crop"
   ],
   "render_source": "src/render.js:179 booster price 24×24; src/render.js winCard rewards R0=26×26; failCard revive button 26×26（HUD 金币图标不再单独绘制——随 pill-coins 左 cap 原样带出）",
   "rendered": true,
   "web": "coin-icon.webp"
  },
  {
   "id": "booster-clock",
   "file": "booster-clock.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=263,2096,480,2340",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 217,
    "h": 244,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 66,
    "h": 58
   },
   "purpose": "booster +time card w/ price 300",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:78 boosters {w:66,h:72}; render.js:163 drawImage(img,0,0,w,h*0.74,…,b.w,b.h*0.8)",
   "rendered": true,
   "render_src_crop": "top 74% (217×181)",
   "web": "booster-clock.webp"
  },
  {
   "id": "booster-rocket",
   "file": "booster-rocket.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=519,2096,736,2340",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 217,
    "h": 244,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 66,
    "h": 58
   },
   "purpose": "booster rocket card w/ count 99",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:78 boosters {w:66,h:72}; render.js:163 drawImage(img,0,0,w,h*0.74,…,b.w,b.h*0.8)",
   "rendered": true,
   "render_src_crop": "top 74% (217×181)",
   "web": "booster-rocket.webp"
  },
  {
   "id": "booster-ufo",
   "file": "booster-ufo.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=776,2096,993,2340",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 217,
    "h": 244,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 66,
    "h": 58
   },
   "purpose": "booster UFO card w/ price 1200",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:78 boosters {w:66,h:72}; render.js:163 drawImage(img,0,0,w,h*0.74,…,b.w,b.h*0.8)",
   "rendered": true,
   "render_src_crop": "top 74% (217×181)",
   "web": "booster-ufo.webp"
  },
  {
   "id": "pill-timer",
   "file": "pill-timer.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=466,192,783,306",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 317,
    "h": 114,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 104,
    "h": 36
   },
   "purpose": "timer pill (clock icon + left cap baked, from Pack); 3-slice, digits drawn at runtime over the plain body column",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:77-78 L.timer {w:104,h:36}; render.js pill() 3-slice（capL 96 / body 96..102 / capR 18 源列；caps 按 h/ih 等比 ≤1.0×@dpr3，只拉伸纯色 body 列）",
   "rendered": true,
   "web": "pill-timer.webp"
  },
  {
   "id": "pill-coins",
   "file": "pill-coins.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=103,74,370,163",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 267,
    "h": 89,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 88,
    "h": 29
   },
   "purpose": "coin counter pill (coin icon + left cap baked, from Pack); 3-slice, digits drawn at runtime over the plain body column",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:77-78 L.coins {w:88,h:29}; render.js pill() 3-slice（capL 100 / body 100..109 / capR 36 源列；caps 按 h/ih 等比 ≤1.0×@dpr3，只拉伸纯色 body 列）",
   "rendered": true,
   "web": "pill-coins.webp"
  },
  {
   "id": "pill-level",
   "file": "pill-level.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=890,74,1148,163",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 258,
    "h": 89,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 78,
    "h": 29
   },
   "purpose": "level pill background (from Pack); 3-slice, \"Lv N\" drawn at runtime over the plain body column",
   "post": [
    "crop"
   ],
   "render_source": "src/main.js:77-78 L.level {w:78,h:29}; render.js pill() 3-slice（capL 40 / body 40..59 / capR 58 源列；caps 按 h/ih 等比 ≤1.0×@dpr3，只拉伸纯色 body 列）",
   "rendered": true,
   "web": "pill-level.webp"
  },
  {
   "id": "board-frame",
   "file": "board-frame.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=89,587,1201,2011",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 1112,
    "h": 1424,
    "anchor": "center"
   },
   "max_render_px": {
    "w": 300,
    "h": 240
   },
   "purpose": "purple board frame (9-slice)",
   "post": [
    "crop"
   ],
   "render_source": "ux-r3: overlay() 九宫切片已由代码绘制的金边紫卡（render.js cardFrame）取代；slot 保留，不再绘制",
   "rendered": false
  },
  {
   "id": "bg-tile",
   "file": "bg-tile.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=0,347,1287,587",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 1287,
    "h": 240,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "dark navy background patch (stretched)",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（render.js:14 注释：改用渐变底）"
  },
  {
   "id": "fx-dust",
   "file": "fx-dust.png",
   "kind": "image",
   "role": "ship",
   "source": "SHOT",
   "origin": "ss-00.png#bbox=453,356,836,587",
   "derived_from_competitor": true,
   "slot_geom": {
    "w": 383,
    "h": 231,
    "anchor": "center"
   },
   "max_render_px": null,
   "purpose": "white cube burst above gate when a block exits",
   "post": [
    "crop"
   ],
   "rendered": false,
   "render_source": "src 未引用（碎屑用 DUST_COL 程序化粒子 main.js:133）"
  }
 ],
 "design_canvas": {
  "w": 390,
  "h": 844,
  "source": "src/main.js:7 DW/DH；渲染像素 = design × min(vw/390,vh/844) × devicePixelRatio（main.js:63-64）",
  "max_render_px_unit": "design px（绘制矩形 w/h；rendered=false 的 slot 运行时未 drawImage）"
 }
}
