{ "schemaVersion": 1, "figma": { "fileKey": "OTOg5cwbhVNWxkImGmzTJl", "canvasNode": "646:1997", "referenceFrames": [ "918:4398", "918:4508", "918:4607", "918:5732", "918:12834" ] }, "policy": { "description": "Each runtime bitmap is one decorative layer only. Text, controls, dynamic reward media and user media remain DOM/API content.", "forbiddenSourceNodes": [ "646:1997", "918:4398", "918:4607", "918:5732" ], "approvedStandaloneCompositeNodes": [ "918:32244", "918:4693", "918:4681", "918:4669" ], "forbiddenRuntimeTerms": [ "whole-page", "full-page", "page-screenshot", "root-frame", "hero-composite" ], "maxDecorativeLayerPixels": 1600000 }, "assets": [ { "filename": "countdown-cell.png", "sourceNode": "918:4415", "sourceName": "图片 24 5", "use": "Countdown cell decoration; time remains live DOM text.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 53, "height": 63 }, "file": { "format": "png", "pixelWidth": 105, "pixelHeight": 126, "bytes": 23166 }, "sha256": "181c560ed0cffc4d4b73aaf241267284742ec935fa1d843d8e0f56ee1b8ea7a0", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "draw-button.png", "sourceNode": "918:4489", "sourceName": "图层 0 315", "use": "Lucky draw button border; label stays in the button DOM.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 269, "height": 48 }, "file": { "format": "png", "pixelWidth": 530, "pixelHeight": 96, "bytes": 67399 }, "sha256": "82404a50e6bd352c7b5b86a60c86ca98ca1ed601b49a59ef97804efa6a566090", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "hero-game-king.png", "sourceNode": "918:32244", "sourceName": "image 5068", "use": "Approved standalone Figma header fill. It contains only the 375x501 crown, Game King title, decorative gamepad and city/crowd scene; countdown and actions remain DOM overlays.", "kind": "approved-static-header-composite", "scope": "runtime", "renderedDesignSize": { "width": 375, "height": 501 }, "naturalSize": { "width": 1085, "height": 1450 }, "file": { "format": "png", "pixelWidth": 1085, "pixelHeight": 1450, "bytes": 2866290 }, "sha256": "e430b3407f9d7f10215f3af2c113aaac9e325c6ff6409db79b5f2d3c926fa732", "containsText": true, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "prize-fallback.png", "sourceNode": "918:4464", "sourceName": "缩略图 (1) 3", "use": "Mock prize thumbnail only when ?mock=1; production prizes are API media.", "kind": "single-fixture-media", "scope": "fixture", "renderedDesignSize": { "width": 50, "height": 50 }, "file": { "format": "png", "pixelWidth": 100, "pixelHeight": 100, "bytes": 26391 }, "sha256": "11a65b70468495eb9ba1434f0829ff3af911694e0e27764ab5d10e398d4d29fa", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": true, "mockOnly": true }, { "filename": "rank-period-active.png", "sourceNode": "918:4663", "sourceName": "啊啊撒啊大撒撒撒 1", "use": "Selected ranking-period decoration; tab label remains DOM text.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 157, "height": 47 }, "file": { "format": "png", "pixelWidth": 314, "pixelHeight": 94, "bytes": 49444 }, "sha256": "efa26c376d2acc9bab308af2a953e6f0056bfa7baec3a0120165454772704f19", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "rank-period-frame.png", "sourceNode": "918:4661", "sourceName": "sadasdsad 1", "use": "Ranking-period switcher decoration; buttons remain DOM controls.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 351, "height": 87 }, "file": { "format": "png", "pixelWidth": 702, "pixelHeight": 174, "bytes": 146732 }, "sha256": "9d7055b4d21bf55b54cb04574b55c89fcf54e63587c6278e415d8bfc667c0e80", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "rank-top1-frame.png", "sourceNode": "918:4693", "sourceName": "Top 1 frame", "use": "Approved static Top 1 podium frame; avatar, account name and score are live DOM/API content within its transparent openings.", "kind": "approved-static-podium-frame", "scope": "runtime", "renderedDesignSize": { "width": 274.219, "height": 234.375 }, "naturalSize": { "width": 854, "height": 730 }, "file": { "format": "png", "pixelWidth": 854, "pixelHeight": 730, "bytes": 564570 }, "sha256": "a9f2fc2aaf6818bbbfb86e64bbb40e53a47b642e677bc5543bcd0836f43051cc", "containsText": true, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "rank-top2-frame.png", "sourceNode": "918:4681", "sourceName": "Top 2 frame", "use": "Approved static Top 2 podium frame; avatar, account name and score are live DOM/API content within its transparent openings.", "kind": "approved-static-podium-frame", "scope": "runtime", "renderedDesignSize": { "width": 117.188, "height": 181.641 }, "naturalSize": { "width": 546, "height": 847 }, "file": { "format": "png", "pixelWidth": 546, "pixelHeight": 847, "bytes": 411924 }, "sha256": "bf0831484639a218404a03a2e6ec07839960a2c91d6ea54313049fd1c093c47f", "containsText": true, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "rank-top3-frame.png", "sourceNode": "918:4669", "sourceName": "Top 3 frame", "use": "Approved static Top 3 podium frame; avatar, account name and score are live DOM/API content within its transparent openings.", "kind": "approved-static-podium-frame", "scope": "runtime", "renderedDesignSize": { "width": 117.188, "height": 181.641 }, "naturalSize": { "width": 546, "height": 847 }, "file": { "format": "png", "pixelWidth": 546, "pixelHeight": 847, "bytes": 381162 }, "sha256": "2d57e948ecb742fea3d177d4d2d4f4dd5a341be9cfa94a5e84ac63bf57f5e754", "containsText": true, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "rank-row.png", "sourceNode": "918:4706", "sourceName": "萨达大厦 1", "use": "Leaderboard row border; rank, avatar, user identity and score are live DOM/API content.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 375, "height": 84 }, "file": { "format": "png", "pixelWidth": 750, "pixelHeight": 168, "bytes": 192238 }, "sha256": "f130b00221f2a5a7c98fc63841ea06103a3c618e252a7a25624eb2bb597a8d98", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "rank-self-row.png", "sourceNode": "918:4739", "sourceName": "撒大撒撒撒 1", "use": "Current-user ranking row border; user data remains live DOM/API content.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 375, "height": 84 }, "file": { "format": "png", "pixelWidth": 750, "pixelHeight": 167, "bytes": 199098 }, "sha256": "1d047edab697448aafa8cb49d893f6e452bdaa22d2bc57dbe3c0b8c50d17221b", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "reward-count-frame.png", "sourceNode": "918:5944", "sourceName": "dsfsd 2", "use": "Reward quantity label decoration; reward name and quantity remain DOM/API content.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 100, "height": 17 }, "file": { "format": "png", "pixelWidth": 200, "pixelHeight": 34, "bytes": 13545 }, "sha256": "6e4780ce10c58f3e2ee775bb20b9fe6f0f99205fe8e5b2b1fe7d2a21ecd77bc1", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "reward-panel.png", "sourceNode": "918:5775", "sourceName": "picsart-687df19b-6e40-4c2c-a38b-270043a2c8eb 1", "use": "Ranking reward-card background slices only; Figma composes the card from this shared image-fill in a 92px top, stretchable middle and 67px bottom. Tier title, reward media and settlement state remain DOM/API content.", "kind": "single-decorative-panel", "scope": "runtime", "renderedDesignSize": { "width": 351, "height": 317 }, "naturalSize": { "width": 702, "height": 318 }, "designUseSize": { "width": 351, "height": 317 }, "file": { "format": "png", "pixelWidth": 702, "pixelHeight": 318, "bytes": 311440 }, "sha256": "fb8fc0bc0d0e7cef7833fc12608380d6853483e541fcd813b1ab56e6681379c6", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "reward-ring.png", "sourceNode": "918:5940", "sourceName": "图片 107 1", "use": "Reward and podium icon surround; item images remain API media.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 100, "height": 99 }, "file": { "format": "png", "pixelWidth": 200, "pixelHeight": 197, "bytes": 73676 }, "sha256": "0153c3b90ef9879ac45457f198a0ab580fc3e2f5f4618e2f867043b662a426f8", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "reward-status-frame.png", "sourceNode": "918:5960", "sourceName": "asdsad 1", "use": "Reward settlement-status decoration; status stays live DOM text.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 200, "height": 53 }, "file": { "format": "png", "pixelWidth": 400, "pixelHeight": 106, "bytes": 76836 }, "sha256": "813f96c2b8f500b64b7fb6a2a8c03ffe54d310431f3c0e67e435d6a8fc29c7c7", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "side-action-frame.png", "sourceNode": "918:4432", "sourceName": "图片 92 1", "use": "Rule and awards side-button decoration; button text remains DOM/i18n content.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 136, "height": 43 }, "file": { "format": "png", "pixelWidth": 421, "pixelHeight": 86, "bytes": 63072 }, "sha256": "24a168359e5238a67a2077be7fab3cea9f2bca4c708ff3e88a76337e1e1fae28", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "spin-center.png", "sourceNode": "918:4462", "sourceName": "图层 0 43", "use": "Lottery spin-center decoration; button action, chance count and label remain DOM content.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 102, "height": 112 }, "file": { "format": "png", "pixelWidth": 201, "pixelHeight": 224, "bytes": 64266 }, "sha256": "d38866cf0d5de9cd16f8e656944389c4b06dc0a33f910b7b2c5e392ebd5bf117", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "stage-background.jpg", "sourceNode": "918:4554", "sourceName": "8d9724ebcfedc7fe266dce4b22c1acd0c36d3eec106fb4-z5Hap7 2", "use": "Pure decorative space-stage background only; all activity content stays DOM/API driven.", "kind": "single-decorative-background", "scope": "runtime", "renderedDesignSize": { "width": 591, "height": 1280 }, "file": { "format": "jpeg", "pixelWidth": 591, "pixelHeight": 1280, "bytes": 68918 }, "sha256": "156036a55c0aaaa6e65cb17cd65842f343ba8b4c20d78f5a753ce25568fca766", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "tab-active.png", "sourceNode": "918:4448", "sourceName": "sdasdasd 4", "use": "Active primary-tab decoration; tab labels remain DOM/i18n content.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 112, "height": 34 }, "file": { "format": "png", "pixelWidth": 224, "pixelHeight": 68, "bytes": 29835 }, "sha256": "82ad16cf0dea642cd96fd196caba44add87a7a08a3670f9967507fa081f0c5f1", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "tab-idle.png", "sourceNode": "918:4452", "sourceName": "sdasdasd 4", "use": "Inactive primary-tab decoration; tab labels remain DOM/i18n content.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 112, "height": 34 }, "file": { "format": "png", "pixelWidth": 224, "pixelHeight": 68, "bytes": 17086 }, "sha256": "accbdd006dd7adfbe8334ae1d2bd6c0596f4f8f7d3cbd71293e9b2c0299d5d8a", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false }, { "filename": "wheel-frame.png", "sourceNode": "918:4461", "sourceName": "大撒上的 1", "use": "Lottery wheel decoration; seven prize cells and button stay DOM/API content.", "kind": "single-decorative-frame", "scope": "runtime", "renderedDesignSize": { "width": 355, "height": 417 }, "file": { "format": "png", "pixelWidth": 709, "pixelHeight": 834, "bytes": 941508 }, "sha256": "5ba68ed72edddeaa3287537c4698e7a5b2c2a7a45f1378a8f81a97dba096b3b9", "containsText": false, "containsControls": false, "containsDynamicBusinessMedia": false, "mockOnly": false } ] }