{
  "spec_version": 2,
  "extractor_version": "0.2.0",
  "url": "https://rive.app/",
  "final_url": "https://rive.app/",
  "slug": "rive.app",
  "captured_at": "2026-11-12T15:26:42.222Z",
  "title": "Rive: agent-native 2D and 3D engine for games, apps, and UI",
  "meta": {
    "description": "Behind Duolingo and Spotify Wrapped. Build 2D and 3D games, apps, and interactive UI with your coding agent and pro design and animation tools.",
    "og_image": "https://framerusercontent.com/assets/DkWNj6EOquY1ZxbQbIDUXP3BZE.jpg",
    "og_title": "Rive: agent-native 2D and 3D engine for games, apps, and UI",
    "lang": "en-US",
    "generator": "Framer e326834"
  },
  "capture": {
    "variants": [
      {
        "name": "desktop-light",
        "width": 1440,
        "height": 900,
        "scheme": "light",
        "page_height": 20182,
        "full": "screens/desktop-light-full.png",
        "fold": "screens/desktop-light-fold.png"
      },
      {
        "name": "desktop-dark",
        "width": 1440,
        "height": 900,
        "scheme": "dark",
        "page_height": 20182,
        "full": "screens/desktop-dark-full.png",
        "fold": "screens/desktop-dark-fold.png"
      },
      {
        "name": "mobile-light",
        "width": 390,
        "height": 844,
        "scheme": "light",
        "page_height": 33931,
        "full": "screens/mobile-light-full.png",
        "fold": "screens/mobile-light-fold.png"
      },
      {
        "name": "mobile-dark",
        "width": 390,
        "height": 844,
        "scheme": "dark",
        "page_height": 33910,
        "full": "screens/mobile-dark-full.png",
        "fold": "screens/mobile-dark-fold.png"
      }
    ],
    "status": 200,
    "warnings": [
      "desktop-light: page is 20182px tall; full screenshot clipped to 16000px",
      "desktop-dark: page is 20182px tall; full screenshot clipped to 16000px",
      "mobile-light: page is 33931px tall; full screenshot clipped to 16000px",
      "mobile-dark: page is 33910px tall; full screenshot clipped to 16000px"
    ],
    "element_count": 2062,
    "render_quality": {
      "status": "ok",
      "reasons": [],
      "screenshot": "ok",
      "screenshot_reasons": []
    },
    "worker_os": "macos"
  },
  "color": {
    "scheme": "dark",
    "palette": [
      {
        "hex": "#0E0E0E",
        "oklch": [
          0.164,
          0,
          0
        ],
        "role": "bg",
        "area": 0.5267,
        "uses": {
          "bg": 0.993,
          "text": 0,
          "border": 0,
          "fill": 0.007
        },
        "variants": [
          "#111111",
          "#0B0B0D",
          "#0D0D0F",
          "#0E0E10",
          "#0A0A0C",
          "#111114"
        ]
      },
      {
        "hex": "#000000",
        "oklch": [
          0,
          0,
          0
        ],
        "role": "other",
        "area": 0.3386,
        "uses": {
          "bg": 0.99,
          "text": 0.001,
          "border": 0,
          "fill": 0.009
        },
        "css_var": "--token-4bc907cf-0ec8-4967-8973-9af027b6efeb"
      },
      {
        "hex": "#FFFFFFBF",
        "oklch": [
          1,
          0,
          0
        ],
        "role": "muted",
        "area": 0.0594,
        "uses": {
          "bg": 0.002,
          "text": 0.998,
          "border": 0,
          "fill": 0
        },
        "on_bg": "#C3C3C3",
        "variants": [
          "#FFFFFFC7",
          "#FFFFFFCC",
          "#FFFFFFD1",
          "#FFFFFFB3"
        ]
      },
      {
        "hex": "#FFFFFF",
        "oklch": [
          1,
          0,
          0
        ],
        "role": "text",
        "area": 0.0208,
        "uses": {
          "bg": 0.012,
          "text": 0.985,
          "border": 0.002,
          "fill": 0.002
        },
        "css_var": "--token-c99e19d0-c303-4d9c-be83-14338c373acd",
        "variants": [
          "#FFFFFFF2"
        ]
      },
      {
        "hex": "#030304",
        "oklch": [
          0.098,
          0.004,
          285.6
        ],
        "role": "surface",
        "area": 0.0143,
        "uses": {
          "bg": 0.89,
          "text": 0,
          "border": 0,
          "fill": 0.11
        },
        "variants": [
          "#040405",
          "#050506"
        ]
      },
      {
        "hex": "#ECEDF0CC",
        "oklch": [
          0.946,
          0.004,
          271.4
        ],
        "role": "other",
        "area": 0.0073,
        "uses": {
          "bg": 0,
          "text": 1,
          "border": 0,
          "fill": 0
        },
        "on_bg": "#C0C0C3",
        "variants": [
          "#ECEDF0BF",
          "#ECEDF0D9",
          "#ECEDF0C7",
          "#ECEDF0DB"
        ]
      },
      {
        "hex": "#999999",
        "oklch": [
          0.683,
          0,
          0
        ],
        "role": "other",
        "area": 0.0051,
        "uses": {
          "bg": 0,
          "text": 1,
          "border": 0,
          "fill": 0
        }
      },
      {
        "hex": "#FFFFFF14",
        "oklch": [
          1,
          0,
          0
        ],
        "role": "border",
        "area": 0.006,
        "uses": {
          "bg": 0.661,
          "text": 0,
          "border": 0.297,
          "fill": 0.042
        },
        "on_bg": "#212121",
        "variants": [
          "#FFFFFF0D",
          "#FFFFFF12",
          "#FFFFFF1A",
          "#FFFFFF1F",
          "#FFFFFF0F"
        ]
      },
      {
        "hex": "#070708",
        "oklch": [
          0.129,
          0.003,
          286
        ],
        "role": "other",
        "area": 0.0038,
        "uses": {
          "bg": 0.128,
          "text": 0,
          "border": 0,
          "fill": 0.872
        },
        "variants": [
          "#08080A",
          "#09090B",
          "#060607"
        ]
      },
      {
        "hex": "#00000073",
        "oklch": [
          0,
          0,
          0
        ],
        "role": "other",
        "area": 0.0021,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 0,
          "fill": 1
        },
        "on_bg": "#080808"
      },
      {
        "hex": "#000000D9",
        "oklch": [
          0,
          0,
          0
        ],
        "role": "other",
        "area": 0.0021,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 0,
          "fill": 1
        },
        "on_bg": "#020202"
      },
      {
        "hex": "#FFFFFFE6",
        "oklch": [
          1,
          0,
          0
        ],
        "role": "other",
        "area": 0.0017,
        "uses": {
          "bg": 0.24,
          "text": 0.755,
          "border": 0.004,
          "fill": 0.001
        },
        "on_bg": "#E7E7E7",
        "variants": [
          "#FFFFFFD9"
        ]
      }
    ],
    "roles": {
      "bg": "#0E0E0E",
      "text": "#FFFFFF",
      "muted": "#FFFFFFBF",
      "surface": "#030304",
      "accent": "#FFFFFF",
      "border": "#FFFFFF14"
    },
    "accent_strategy": "monochrome",
    "contrast": {
      "text_on_bg": 19.3,
      "muted_on_bg": 10.92,
      "accent_on_bg": 19.3
    },
    "gradients": [
      "linear-gradient(rgba(0, 0, 0, 0) 11%, rgba(0, 0, 0, 0.45) 56%, rgba(0, 0, 0, 0.85) 76%, rgb(0, 0, 0) 100%)",
      "linear-gradient(rgb(13, 13, 15) 0%, rgb(7, 7, 8) 100%)",
      "linear-gradient(rgb(23, 23, 26), rgb(8, 8, 10) 55%, rgb(3, 3, 4)), linear-gradient(rgba(236, 237, 240, 0.24), rgba(236, 237, 240, 0.04))",
      "conic-gradient(from 215.976deg, rgb(243, 0, 88), rgb(255, 72, 60), rgb(255, 164, 28), rgb(113, 255, 25), rgb(25, 242, 255), rgb(48, 132, 255), rgb(243, 0, 88))"
    ],
    "dark_mode": {
      "responds_to_prefers_color_scheme": false
    },
    "declared_accents": [],
    "accent_detail": {
      "method": "cta-monochrome",
      "cta": "#FFFFFF",
      "candidates": [
        {
          "hex": "#F30058",
          "css_var": "--token-75acc5c3-4fc7-4da4-90f3-9be85e4b5893",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 0,
          "fills": 8,
          "area": 0.00053,
          "score": 9.5,
          "strong": false
        },
        {
          "hex": "#71FF19",
          "css_var": "--token-7ef6dc17-a7ae-4e2d-a24d-69315105cab3",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 1,
          "fills": 4,
          "area": 0.00027,
          "score": 9.3,
          "strong": false
        },
        {
          "hex": "#FF483C",
          "css_var": "--token-b0402e74-e1d0-4ce5-8e93-52c31493861e",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 0,
          "fills": 4,
          "area": 0.00027,
          "score": 8.3,
          "strong": false
        },
        {
          "hex": "#FFA41C",
          "css_var": "--token-86ae4b96-3efe-494a-9017-a49e6bc2738d",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 0,
          "fills": 4,
          "area": 0.00027,
          "score": 8.3,
          "strong": false
        },
        {
          "hex": "#19F2FF",
          "css_var": "--token-f03fb86e-906a-4c75-821b-587006042a1c",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 0,
          "fills": 4,
          "area": 0.00027,
          "score": 8.3,
          "strong": false
        },
        {
          "hex": "#3084FF",
          "css_var": "--token-b0653460-7eb3-4b6c-a21c-a27d9436b029",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 0,
          "fills": 4,
          "area": 0.00027,
          "score": 8.3,
          "strong": false
        }
      ]
    },
    "highlights": []
  },
  "type": {
    "families": [
      {
        "family": "Inter",
        "css_family": "Inter",
        "role": "body",
        "roles": [
          "body"
        ],
        "weights": [
          400,
          500
        ],
        "share": 0.811,
        "kind": "webfont",
        "classification": "sans",
        "foundry": null,
        "stack": "Inter, \"Inter Placeholder\", sans-serif",
        "files": [
          "https://framerusercontent.com/assets/5A3Ce6C9YYmCjpQx9M4inSaKU.woff2",
          "https://framerusercontent.com/assets/Qx95Xyt0Ka3SGhinnbXIGpEIyP4.woff2",
          "https://framerusercontent.com/assets/6mJuEAguuIuMog10gGvH5d3cl8.woff2",
          "https://framerusercontent.com/assets/xYYWaj7wCU5zSQH0eXvSaS19wo.woff2"
        ],
        "internal_names": [
          "Inter Medium",
          "Inter",
          "Inter SemiBold"
        ]
      },
      {
        "family": "Orbitron",
        "css_family": "Orbitron",
        "role": "display",
        "roles": [
          "display"
        ],
        "weights": [
          700,
          900
        ],
        "share": 0.13,
        "kind": "webfont",
        "classification": "sans",
        "foundry": null,
        "stack": "Orbitron, \"Orbitron Placeholder\", sans-serif",
        "files": [
          "https://fonts.gstatic.com/s/orbitron/v35/yMJRMIlzdpvBhQQL_Qq7dy0.woff2",
          "https://fonts.gstatic.com/s/orbitron/v35/yMJRMIlzdpvBhQQL_Qq7dy0.woff2",
          "https://fonts.gstatic.com/s/orbitron/v35/yMJMMIlzdpvBhQQL_SC3X9yhF25-T1nysimBoWgz.woff2"
        ],
        "internal_names": [
          "Orbitron Black",
          "Orbitron"
        ]
      },
      {
        "family": "Pragmata Pro",
        "css_family": "PragmataPro VF Variable Regular",
        "role": "other",
        "roles": [
          "other"
        ],
        "weights": [
          400,
          500
        ],
        "share": 0.057,
        "kind": "webfont",
        "classification": "mono",
        "foundry": null,
        "stack": "\"PragmataPro VF Variable Regular\", \"PragmataPro VF\", PragmataPro, ui-monospace, monospace",
        "files": [
          "https://framerusercontent.com/assets/hlJph9cAPEB5L803Ax8BQ3UQuU.woff2"
        ],
        "internal_names": [
          "PragmataPro VF"
        ]
      }
    ],
    "declared_unused": [
      {
        "family": "Inter Display",
        "css_family": "Inter Display",
        "face_status": "unloaded",
        "css_mentions": 135
      },
      {
        "family": "JetBrains Mono",
        "css_family": "JetBrains Mono",
        "face_status": "unloaded",
        "css_mentions": 19
      },
      {
        "family": "Tomorrow",
        "css_family": "Tomorrow",
        "face_status": "loaded",
        "css_mentions": 19
      },
      {
        "family": "Roboto",
        "css_family": "Roboto",
        "face_status": "unloaded",
        "css_mentions": 9
      },
      {
        "family": "Roboto Flex",
        "css_family": "Roboto Flex",
        "face_status": "unloaded",
        "css_mentions": 6
      },
      {
        "family": "Be Vietnam Pro",
        "css_family": "Be Vietnam Pro",
        "face_status": "unloaded",
        "css_mentions": 3
      },
      {
        "family": "Fragment Mono",
        "css_family": "Fragment Mono",
        "face_status": "unloaded",
        "css_mentions": 3
      },
      {
        "family": "Zodiak",
        "css_family": "Zodiak Extrabold",
        "face_status": "unloaded",
        "css_mentions": 1
      }
    ],
    "scale_px": [
      11,
      12,
      12.5,
      13,
      14,
      15,
      16,
      18,
      20,
      24,
      34,
      48
    ],
    "ratio": 1.246,
    "body_size": 16,
    "root_size": 12,
    "line_height": 1.55,
    "display_size": 48,
    "tracking_display": "-0.03em",
    "case": "upper",
    "styles": [
      {
        "name": "display",
        "family": "Orbitron",
        "size_px": 48,
        "weight": 900,
        "line_height": 1.02,
        "letter_spacing_em": -0.03,
        "transform": "uppercase",
        "sample": "Build games, apps, and interactive UI"
      },
      {
        "name": "headline",
        "family": "Orbitron",
        "size_px": 34,
        "weight": 900,
        "line_height": 1.08,
        "letter_spacing_em": -0.01,
        "transform": "uppercase",
        "sample": "Pro tools to draw, rig, and animate"
      },
      {
        "name": "title",
        "family": "Inter",
        "size_px": 12,
        "weight": 500,
        "line_height": 1.3,
        "letter_spacing_em": 0.08,
        "transform": "uppercase",
        "sample": "Rigging"
      },
      {
        "name": "body",
        "family": "Inter",
        "size_px": 16,
        "weight": 400,
        "line_height": 1.5,
        "letter_spacing_em": 0,
        "sample": "Use Rive as your whole engine, or add it"
      },
      {
        "name": "body-sm",
        "family": "Inter",
        "size_px": 15,
        "weight": 400,
        "line_height": 1.55,
        "letter_spacing_em": 0,
        "sample": "Bones and meshes for vector and raster a"
      },
      {
        "name": "label",
        "family": "Inter",
        "size_px": 16,
        "weight": 500,
        "line_height": 1.2,
        "letter_spacing_em": 0,
        "sample": "Editor"
      },
      {
        "name": "mono",
        "family": "Pragmata Pro",
        "size_px": 13,
        "weight": 400,
        "line_height": 1.538,
        "letter_spacing_em": 0,
        "sample": "(x , y , r , a ) ; { x ; y ; } (i , t ) "
      }
    ],
    "mobile": {
      "body_size": 15,
      "display_size": 32
    }
  },
  "space": {
    "scale_px": [
      5,
      6,
      8,
      9,
      10,
      11,
      12,
      14,
      16,
      20,
      40,
      64,
      140
    ],
    "base": null,
    "base_fit": 0,
    "density": 0.098,
    "section_padding_px": 140
  },
  "shape": {
    "radii_px": [
      2,
      4,
      6,
      8,
      10,
      9999
    ],
    "dominant_radius": 0,
    "border_usage": "hairline",
    "border_width_px": 1
  },
  "depth": {
    "shadows": [
      "rgba(255, 255, 255, 0.07) 0px 1px 0px 0px inset",
      "rgba(255, 255, 255, 0.1) 0px 1px 0px 0px inset",
      "rgba(0, 0, 0, 0.6) 0px 24px 60px 0px",
      "rgba(255, 255, 255, 0.14) 0px 1px 0px 0px inset",
      "rgba(255, 255, 255, 0.12) 0px 1px 0px 0px inset"
    ],
    "style": "subtle"
  },
  "layout": {
    "container_px": 1200,
    "columns": 3,
    "hero": "left-over-media",
    "nav": "none-detected",
    "page_height_px": 20182,
    "section_count": 13
  },
  "motion": {
    "transitions": 111,
    "easing": "ease",
    "durations_ms": [
      150,
      200,
      250,
      400
    ],
    "animations": [
      "rive-prism-spin",
      "asr-spin",
      "asr-blink"
    ]
  },
  "components": {
    "button-primary": {
      "backgroundColor": "#FFFFFF",
      "textColor": "#000000",
      "rounded": "4px",
      "padding": "5px 9px",
      "height": "26.6px",
      "fontFamily": "Pragmata Pro",
      "fontSize": "12px",
      "fontWeight": 500,
      "shadow": "rgba(255, 255, 255, 0.1) 0px 0px 0px 1px inset",
      "sample": "Get Started"
    },
    "button-secondary": {
      "backgroundColor": "#FFFFFFE6",
      "textColor": "#000000",
      "rounded": "4px",
      "padding": "5px 9px",
      "height": "28.6px",
      "fontFamily": "Pragmata Pro",
      "fontSize": "12px",
      "fontWeight": 500,
      "border": "1px solid #FFFFFF",
      "sample": "Copy"
    },
    "input": {
      "rounded": "4px",
      "height": "40px",
      "padding": "0px 14px"
    }
  },
  "imagery": {
    "media_share": 0.204,
    "dominant_colors": [
      {
        "hex": "#040404",
        "share": 0.324
      },
      {
        "hex": "#0F0F0F",
        "share": 0.225
      },
      {
        "hex": "#1F1D28",
        "share": 0.163
      },
      {
        "hex": "#382E39",
        "share": 0.068
      },
      {
        "hex": "#000000",
        "share": 0.059
      },
      {
        "hex": "#403B58",
        "share": 0.04
      }
    ],
    "has_photography": null,
    "has_illustration": null
  },
  "stack": [
    "framer",
    "google-tag-manager",
    "cloudfront"
  ],
  "sections": [
    {
      "index": 0,
      "kind": "hero",
      "kind_source": "dom",
      "confidence": 0.7,
      "bbox": {
        "x": 0,
        "y": 0,
        "w": 1440,
        "h": 640
      },
      "bg": "#000000",
      "crop": "img/section-00-hero.webp"
    },
    {
      "index": 1,
      "kind": "feature-detail",
      "kind_source": "dom",
      "confidence": 0.4,
      "bbox": {
        "x": 120,
        "y": 380,
        "w": 1200,
        "h": 1803
      },
      "heading": "Build games, apps, and interactive UI",
      "bg": "#000000",
      "crop": "img/section-01-feature-detail.webp"
    },
    {
      "index": 2,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 698,
        "y": 2183,
        "w": 622,
        "h": 2105
      },
      "heading": "Give notes",
      "bg": "#0E0E0E",
      "crop": "img/section-02-features.webp"
    },
    {
      "index": 3,
      "kind": "feature-detail",
      "kind_source": "dom",
      "confidence": 0.45,
      "bbox": {
        "x": 120,
        "y": 4288,
        "w": 1200,
        "h": 1214
      },
      "heading": "Pro tools to draw, rig, and animate",
      "bg": "#000000",
      "crop": "img/section-03-feature-detail.webp"
    },
    {
      "index": 4,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 120,
        "y": 5503,
        "w": 1200,
        "h": 3487
      },
      "heading": "Flash Import",
      "bg": "#000000",
      "crop": null
    },
    {
      "index": 5,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 120,
        "y": 8990,
        "w": 1200,
        "h": 1601
      },
      "heading": "Rive, written in plain text",
      "bg": "#0E0E0E",
      "crop": "img/section-05-features.webp"
    },
    {
      "index": 6,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 120,
        "y": 10591,
        "w": 1200,
        "h": 1316
      },
      "heading": "Scripts your engineers can sign off on",
      "bg": "#0E0E0E",
      "crop": "img/section-06-features.webp"
    },
    {
      "index": 7,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 0,
        "y": 11906,
        "w": 1440,
        "h": 2566
      },
      "heading": "Turn your Figma file into a working app",
      "bg": "#0E0E0E",
      "crop": "img/section-07-features.webp"
    },
    {
      "index": 8,
      "kind": "feature-detail",
      "kind_source": "dom",
      "confidence": 0.45,
      "bbox": {
        "x": 0,
        "y": 14472,
        "w": 1440,
        "h": 1314
      },
      "heading": "Use the right tool for the job",
      "bg": "#0E0E0E",
      "crop": "img/section-08-feature-detail.webp"
    },
    {
      "index": 9,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 0,
        "y": 15786,
        "w": 1440,
        "h": 1344
      },
      "heading": "Ship faster, spend less, build better",
      "bg": "#000000",
      "crop": "img/section-09-features.webp"
    },
    {
      "index": 10,
      "kind": "feature-detail",
      "kind_source": "dom",
      "confidence": 0.45,
      "bbox": {
        "x": 120,
        "y": 17130,
        "w": 1200,
        "h": 1884
      },
      "heading": "Products built with Rive reach over 2 billion users",
      "bg": "#111111",
      "crop": null
    },
    {
      "index": 11,
      "kind": "newsletter",
      "kind_source": "dom",
      "confidence": 0.75,
      "bbox": {
        "x": 0,
        "y": 19014,
        "w": 1440,
        "h": 275
      },
      "heading": "Join our newsletter",
      "bg": "#000000",
      "crop": null
    },
    {
      "index": 12,
      "kind": "footer",
      "kind_source": "dom",
      "confidence": 0.95,
      "bbox": {
        "x": 0,
        "y": 19289,
        "w": 1440,
        "h": 893
      },
      "bg": "#000000",
      "crop": null
    }
  ],
  "images": {
    "manifest": "img/manifest.json",
    "count": 13
  },
  "review": {
    "threshold": 0.7,
    "needs_review": [
      "layout.columns",
      "layout.hero",
      "layout.section_count",
      "sections[].kind",
      "space.base",
      "space.section_padding_px"
    ],
    "vision": "not-run"
  },
  "provenance": {
    "color.roles.bg": {
      "source": "dom",
      "confidence": 0.95
    },
    "color.roles.text": {
      "source": "dom",
      "confidence": 0.92
    },
    "color.roles.muted": {
      "source": "dom",
      "confidence": 0.82
    },
    "color.roles.surface": {
      "source": "dom",
      "confidence": 0.78
    },
    "color.roles.border": {
      "source": "dom",
      "confidence": 0.75
    },
    "color.roles.accent": {
      "source": "dom",
      "confidence": 0.8,
      "note": "monochrome page; fill of the primary button"
    },
    "color.accent_strategy": {
      "source": "dom",
      "confidence": 0.75,
      "note": "no chromatic color used on controls, links or repeated text"
    },
    "color.palette": {
      "source": "dom",
      "confidence": 0.9
    },
    "color.declared_accents": {
      "source": "dom",
      "confidence": 0.95
    },
    "color.dark_mode": {
      "source": "dom",
      "confidence": 0.9
    },
    "color.contrast": {
      "source": "dom",
      "confidence": 0.9
    },
    "color.gradients": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.families": {
      "source": "dom",
      "confidence": 0.95,
      "note": "named from the @font-face rule that rendered (CDP platform fonts)"
    },
    "type.families[].roles": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.declared_unused": {
      "source": "dom",
      "confidence": 0.95
    },
    "type.scale_px": {
      "source": "dom",
      "confidence": 0.9
    },
    "type.body_size": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.display_size": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.styles": {
      "source": "dom",
      "confidence": 0.8
    },
    "type.ratio": {
      "source": "dom",
      "confidence": 0.7,
      "note": "geometric fit over the scale above body size"
    },
    "type.case": {
      "source": "dom",
      "confidence": 0.75
    },
    "type.line_height": {
      "source": "dom",
      "confidence": 0.85
    },
    "type.tracking_display": {
      "source": "dom",
      "confidence": 0.85
    },
    "space.base": {
      "source": "dom",
      "confidence": 0.5,
      "note": "no base unit explains 70% of spacing values",
      "needs_review": true
    },
    "space.scale_px": {
      "source": "dom",
      "confidence": 0.85
    },
    "space.section_padding_px": {
      "source": "dom",
      "confidence": 0.65,
      "needs_review": true
    },
    "space.density": {
      "source": "dom",
      "confidence": 0.85
    },
    "shape.radii_px": {
      "source": "dom",
      "confidence": 0.88
    },
    "shape.dominant_radius": {
      "source": "dom",
      "confidence": 0.8
    },
    "shape.border_usage": {
      "source": "dom",
      "confidence": 0.8
    },
    "depth.shadows": {
      "source": "dom",
      "confidence": 0.9
    },
    "depth.style": {
      "source": "dom",
      "confidence": 0.75
    },
    "layout.container_px": {
      "source": "dom",
      "confidence": 0.8
    },
    "layout.columns": {
      "source": "dom",
      "confidence": 0.6,
      "note": "most common grid track count; layout grids and card grids are not separated",
      "needs_review": true
    },
    "layout.nav": {
      "source": "dom",
      "confidence": 0.78
    },
    "layout.hero": {
      "source": "dom",
      "confidence": 0.6,
      "note": "geometric heuristic over the h1 and nearby media",
      "needs_review": true
    },
    "layout.section_count": {
      "source": "dom",
      "confidence": 0.6,
      "needs_review": true
    },
    "motion": {
      "source": "dom",
      "confidence": 0.8
    },
    "components": {
      "source": "dom",
      "confidence": 0.78
    },
    "stack": {
      "source": "dom",
      "confidence": 0.85,
      "note": "globals, script URLs and response headers"
    },
    "meta": {
      "source": "dom",
      "confidence": 0.99
    },
    "sections[].bbox": {
      "source": "dom",
      "confidence": 0.8
    },
    "sections[].kind": {
      "source": "dom",
      "confidence": 0.55,
      "note": "class-name and content-count heuristics; per-section confidence in sections[].confidence",
      "needs_review": true
    },
    "imagery.media_share": {
      "source": "dom",
      "confidence": 0.8
    },
    "imagery.dominant_colors": {
      "source": "pixels",
      "confidence": 0.7,
      "note": "clustered screenshot pixels inside media boxes (approximate, OKLab ΔE 0.06 clusters)"
    }
  }
}