{
  "spec_version": 2,
  "extractor_version": "0.2.0",
  "url": "https://puzzle.io/",
  "final_url": "https://puzzle.io/",
  "slug": "puzzle.io",
  "captured_at": "2026-11-12T15:16:16.494Z",
  "title": "Puzzle: AI Accounting Software & Accounting Services",
  "meta": {
    "description": "Run your books with Puzzle’s AI suite or add a Puzzle bookkeeper for expert review or a fully managed close. Real-time financials on one platform.",
    "og_image": "https://cdn.prod.website-files.com/62a7b01137acdb7d70cd43d7/6a3f9fb795fb0b707c40d781_Home.png",
    "og_title": "Puzzle: AI Accounting Software & Accounting Services",
    "lang": "en"
  },
  "capture": {
    "variants": [
      {
        "name": "desktop-light",
        "width": 1440,
        "height": 900,
        "scheme": "light",
        "page_height": 11246,
        "full": "screens/desktop-light-full.png",
        "fold": "screens/desktop-light-fold.png"
      },
      {
        "name": "desktop-dark",
        "width": 1440,
        "height": 900,
        "scheme": "dark",
        "page_height": 11246,
        "full": "screens/desktop-dark-full.png",
        "fold": "screens/desktop-dark-fold.png"
      },
      {
        "name": "mobile-light",
        "width": 390,
        "height": 844,
        "scheme": "light",
        "page_height": 15792,
        "full": "screens/mobile-light-full.png",
        "fold": "screens/mobile-light-fold.png"
      },
      {
        "name": "mobile-dark",
        "width": 390,
        "height": 844,
        "scheme": "dark",
        "page_height": 15792,
        "full": "screens/mobile-dark-full.png",
        "fold": "screens/mobile-dark-fold.png"
      }
    ],
    "status": 200,
    "cookie_banner": "hid #CybotCookiebotDialog",
    "warnings": [
      "desktop-light: network never idle (12s)",
      "desktop-dark: network never idle (12s)",
      "mobile-light: network never idle (12s)",
      "mobile-dark: network never idle (12s)",
      "2 cross-origin stylesheets unreadable in-page (raw CSS taken from network instead)"
    ],
    "element_count": 826,
    "render_quality": {
      "status": "ok",
      "reasons": [],
      "screenshot": "ok",
      "screenshot_reasons": []
    },
    "worker_os": "macos"
  },
  "color": {
    "scheme": "light",
    "palette": [
      {
        "hex": "#F3F4F1",
        "oklch": [
          0.966,
          0.004,
          121.6
        ],
        "role": "bg",
        "area": 0.3927,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        },
        "css_var": "--_colors---powder",
        "variants": [
          "#F5F5F1"
        ]
      },
      {
        "hex": "#FFFFFF",
        "oklch": [
          1,
          0,
          0
        ],
        "role": "surface",
        "area": 0.2456,
        "uses": {
          "bg": 0.91,
          "text": 0.09,
          "border": 0,
          "fill": 0
        }
      },
      {
        "hex": "#311164",
        "oklch": [
          0.286,
          0.133,
          293.6
        ],
        "role": "other",
        "area": 0.1737,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        },
        "css_var": "--_colors---violet-dark"
      },
      {
        "hex": "#0A0B0B",
        "oklch": [
          0.148,
          0.002,
          197
        ],
        "role": "text",
        "area": 0.0732,
        "uses": {
          "bg": 0.087,
          "text": 0.907,
          "border": 0.002,
          "fill": 0.004
        },
        "css_var": "--neutral-black"
      },
      {
        "hex": "#F3EDFE",
        "oklch": [
          0.956,
          0.023,
          302
        ],
        "role": "other",
        "area": 0.0422,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        },
        "css_var": "--_colors---violet-light"
      },
      {
        "hex": "#FFFFFF0D",
        "oklch": [
          1,
          0,
          0
        ],
        "role": "other",
        "area": 0.0205,
        "uses": {
          "bg": 0.985,
          "text": 0,
          "border": 0.015,
          "fill": 0
        },
        "on_bg": "#F4F5F2",
        "variants": [
          "#FFFFFF1F"
        ]
      },
      {
        "hex": "#CAFDE6",
        "oklch": [
          0.953,
          0.06,
          165.9
        ],
        "role": "other",
        "area": 0.0127,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        },
        "css_var": "--_colors---green-light"
      },
      {
        "hex": "#0000004D",
        "oklch": [
          0,
          0,
          0
        ],
        "role": "other",
        "area": 0.0072,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 0,
          "fill": 1
        },
        "css_var": "--black-30",
        "on_bg": "#AAABA9"
      },
      {
        "hex": "#0A0B0BB3",
        "oklch": [
          0.148,
          0.002,
          197
        ],
        "role": "muted",
        "area": 0.0062,
        "uses": {
          "bg": 0,
          "text": 1,
          "border": 0,
          "fill": 0
        },
        "css_var": "--_colors---neutral-black-70",
        "on_bg": "#505150"
      },
      {
        "hex": "#000000",
        "oklch": [
          0,
          0,
          0
        ],
        "role": "other",
        "area": 0.0052,
        "uses": {
          "bg": 0,
          "text": 1,
          "border": 0,
          "fill": 0
        }
      },
      {
        "hex": "#E6DEF8",
        "oklch": [
          0.915,
          0.036,
          299.7
        ],
        "role": "other",
        "area": 0.0064,
        "uses": {
          "bg": 0.948,
          "text": 0,
          "border": 0.052,
          "fill": 0
        },
        "css_var": "--light-purple",
        "variants": [
          "#E9DDFB"
        ]
      },
      {
        "hex": "#CEB4FA",
        "oklch": [
          0.816,
          0.1,
          301.2
        ],
        "role": "accent",
        "area": 0.0019,
        "uses": {
          "bg": 0.978,
          "text": 0,
          "border": 0.022,
          "fill": 0
        },
        "css_var": "--_colors---violet-medium"
      },
      {
        "hex": "#DFFCEE",
        "oklch": [
          0.966,
          0.035,
          165
        ],
        "role": "other",
        "area": 0.0026,
        "uses": {
          "bg": 1,
          "text": 0,
          "border": 0,
          "fill": 0
        },
        "variants": [
          "#DBF8E6"
        ]
      },
      {
        "hex": "#0A0B0B33",
        "oklch": [
          0.148,
          0.002,
          197
        ],
        "role": "border",
        "area": 0.0005,
        "uses": {
          "bg": 0,
          "text": 0,
          "border": 1,
          "fill": 0
        },
        "css_var": "--_colors---neutral-black-20",
        "on_bg": "#C4C5C3"
      }
    ],
    "roles": {
      "bg": "#F3F4F1",
      "text": "#0A0B0B",
      "muted": "#0A0B0BB3",
      "surface": "#FFFFFF",
      "accent": "#CEB4FA",
      "border": "#0A0B0B33"
    },
    "accent_strategy": "single-accent",
    "contrast": {
      "text_on_bg": 17.85,
      "muted_on_bg": 7.23,
      "accent_on_bg": 1.65
    },
    "gradients": [
      "linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3))"
    ],
    "dark_mode": {
      "responds_to_prefers_color_scheme": false
    },
    "declared_accents": [
      {
        "css_var": "--accent",
        "hex": "#84F6B1",
        "painted": false
      },
      {
        "css_var": "--yellow-accent",
        "hex": "#FFFA84",
        "painted": false
      }
    ],
    "accent_detail": {
      "method": "usage",
      "cta": "#0A0B0B",
      "candidates": [
        {
          "hex": "#CEB4FA",
          "css_var": "--_colors---violet-medium",
          "controls": 3,
          "links": 0,
          "text": 0,
          "elements": 5,
          "fills": 0,
          "area": 0.00189,
          "score": 32,
          "strong": true
        },
        {
          "hex": "#311164",
          "css_var": "--_colors---violet-dark",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 3,
          "fills": 0,
          "area": 0.17366,
          "score": 16,
          "strong": false
        },
        {
          "hex": "#8A4B08",
          "controls": 0,
          "links": 0,
          "text": 2,
          "elements": 2,
          "fills": 0,
          "area": 0.00026,
          "score": 12.3,
          "strong": false
        },
        {
          "hex": "#61F6B0",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 3,
          "fills": 2,
          "area": 0.00032,
          "score": 10.8,
          "strong": false
        },
        {
          "hex": "#1F5C40",
          "controls": 0,
          "links": 0,
          "text": 1,
          "elements": 1,
          "fills": 0,
          "area": 0.0001,
          "score": 8.9,
          "strong": false
        },
        {
          "hex": "#6EECB8",
          "controls": 0,
          "links": 0,
          "text": 0,
          "elements": 1,
          "fills": 0,
          "area": 0.00008,
          "score": 7.3,
          "strong": false
        }
      ]
    },
    "highlights": [
      {
        "hex": "#8A4B08",
        "elements": 2
      }
    ]
  },
  "type": {
    "families": [
      {
        "family": "Haskoy",
        "css_family": "Haskoy",
        "role": "body",
        "roles": [
          "body"
        ],
        "weights": [
          400,
          500,
          700
        ],
        "share": 0.656,
        "kind": "webfont",
        "classification": "sans",
        "foundry": null,
        "stack": "Haskoy, Arial, sans-serif",
        "files": [
          "https://cdn.prod.website-files.com/62a7b01137acdb7d70cd43d7/68e8df7bc137064f078133c3_Haskoy-Regular.woff2",
          "https://cdn.prod.website-files.com/62a7b01137acdb7d70cd43d7/68ee46f0c14f34e8919836e1_Haskoy-SemiBold.woff2",
          "https://cdn.prod.website-files.com/62a7b01137acdb7d70cd43d7/68ee470824b64f113ef55af8_Haskoy-Medium.woff2"
        ],
        "internal_names": [
          "Haskoy",
          "Haskoy SemiBold",
          "Haskoy Medium"
        ]
      },
      {
        "family": "Generalsans",
        "css_family": "Generalsans Webfont",
        "role": "display",
        "roles": [
          "display"
        ],
        "weights": [
          400,
          500
        ],
        "share": 0.319,
        "kind": "webfont",
        "classification": "sans",
        "foundry": null,
        "stack": "\"Generalsans Webfont\", Arial, sans-serif",
        "files": [
          "https://cdn.prod.website-files.com/62a7b01137acdb7d70cd43d7/67f6b687d2c923ff0eb40ab5_generalsans-regular-webfont.woff2",
          "https://cdn.prod.website-files.com/62a7b01137acdb7d70cd43d7/67f6b6cae614e596c9adda6e_generalsans-medium-webfont.woff2",
          "https://cdn.prod.website-files.com/62a7b01137acdb7d70cd43d7/67f807c70c77c86f8958b714_generalsans-semibold-webfont.woff2"
        ],
        "internal_names": [
          "General Sans",
          "General Sans Medium"
        ]
      },
      {
        "family": "Jet Brains Mono",
        "css_family": "JetBrainsMono",
        "role": "mono",
        "roles": [
          "mono"
        ],
        "weights": [
          400
        ],
        "share": 0.021,
        "kind": "webfont",
        "classification": "mono",
        "foundry": null,
        "stack": "JetBrainsMono, Arial, sans-serif",
        "files": [
          "https://cdn.prod.website-files.com/62a7b01137acdb7d70cd43d7/6ad87e472201359138c78cd2_JetBrainsMono-Variable-latin.woff2"
        ],
        "internal_names": [
          "JetBrains Mono"
        ]
      }
    ],
    "declared_unused": [],
    "scale_px": [
      12.5,
      13,
      14,
      14.5,
      15,
      16,
      17,
      18,
      18.5,
      20,
      23.5,
      28,
      38.5,
      52
    ],
    "ratio": 1.193,
    "body_size": 18,
    "root_size": 18,
    "line_height": 1.5,
    "display_size": 54,
    "tracking_display": "0em",
    "case": "sentence",
    "styles": [
      {
        "name": "display",
        "family": "Haskoy",
        "size_px": 54,
        "weight": 500,
        "line_height": 1.2,
        "letter_spacing_em": 0,
        "sample": "Accounting platform or accounting servic"
      },
      {
        "name": "headline",
        "family": "Generalsans",
        "size_px": 38.7,
        "weight": 500,
        "line_height": 1.2,
        "letter_spacing_em": 0,
        "sample": "One platform underneath. Pick how much y"
      },
      {
        "name": "title",
        "family": "Generalsans",
        "size_px": 28.08,
        "weight": 500,
        "line_height": 1.25,
        "letter_spacing_em": 0,
        "sample": "Expert Reviewed"
      },
      {
        "name": "body",
        "family": "Haskoy",
        "size_px": 18,
        "weight": 400,
        "line_height": 1.5,
        "letter_spacing_em": 0,
        "sample": "You can now get both: Puzzle’s AI-native"
      },
      {
        "name": "body-sm",
        "family": "Haskoy",
        "size_px": 16,
        "weight": 400,
        "line_height": 1.4,
        "letter_spacing_em": 0,
        "sample": "Connect your books to Claude and ChatGPT"
      },
      {
        "name": "mono",
        "family": "Jet Brains Mono",
        "size_px": 14.4,
        "weight": 400,
        "line_height": 1.7,
        "letter_spacing_em": 0,
        "transform": "uppercase",
        "sample": "The Puzzle AI suite"
      }
    ],
    "mobile": {
      "body_size": 17,
      "display_size": 42
    }
  },
  "space": {
    "scale_px": [
      7,
      8,
      9,
      9.5,
      10,
      10.5,
      12,
      12.5,
      14,
      16,
      17,
      18,
      18.5,
      23.5
    ],
    "base": null,
    "base_fit": 0,
    "density": 0.119,
    "section_padding_px": 130
  },
  "shape": {
    "radii_px": [
      6.5,
      8,
      9.5,
      10.5,
      14.5,
      15.5,
      16,
      17,
      18.5,
      27,
      9999
    ],
    "dominant_radius": 16,
    "border_usage": "hairline",
    "border_width_px": 1
  },
  "depth": {
    "shadows": [
      "rgba(192, 143, 238, 0.2) 0px 2px 20px 0px",
      "rgb(80, 250, 171) 0px 2px 26px 0px"
    ],
    "style": "elevated"
  },
  "layout": {
    "container_px": 960,
    "columns": 2,
    "hero": "split",
    "nav": "top-sticky",
    "page_height_px": 11246,
    "section_count": 11
  },
  "motion": {
    "transitions": 96,
    "easing": "ease",
    "durations_ms": [
      200,
      300,
      350,
      400
    ],
    "animations": []
  },
  "components": {
    "button-primary": {
      "backgroundColor": "#0A0B0B",
      "textColor": "#FFFFFF",
      "rounded": "8px",
      "padding": "8px 30px",
      "height": "35.6px",
      "fontFamily": "Haskoy",
      "fontSize": "14px",
      "fontWeight": 500,
      "sample": "Book a demo"
    },
    "button-secondary": {
      "backgroundColor": "#CEB4FA",
      "textColor": "#0A0B0B",
      "rounded": "8px",
      "padding": "8px 30px",
      "height": "35.6px",
      "fontFamily": "Haskoy",
      "fontSize": "14px",
      "fontWeight": 500,
      "sample": "Try for free"
    },
    "card": {
      "rounded": "15.3px",
      "padding": "18.7px",
      "count": 8,
      "backgroundColor": "#FFFFFF",
      "border": "1px solid #94949466",
      "shadow": "rgba(192, 143, 238, 0.2) 0px 2px 20px 0px"
    }
  },
  "imagery": {
    "media_share": 0.125,
    "dominant_colors": [
      {
        "hex": "#F3F0F1",
        "share": 0.271
      },
      {
        "hex": "#2D0C60",
        "share": 0.178
      },
      {
        "hex": "#B1A39E",
        "share": 0.142
      },
      {
        "hex": "#958A95",
        "share": 0.078
      },
      {
        "hex": "#BCB1C6",
        "share": 0.066
      },
      {
        "hex": "#7B6F7A",
        "share": 0.041
      }
    ],
    "has_photography": null,
    "has_illustration": null
  },
  "stack": [
    "webflow",
    "gsap",
    "jquery",
    "hubspot",
    "posthog",
    "intercom",
    "google-tag-manager",
    "fastly"
  ],
  "sections": [
    {
      "index": 0,
      "kind": "nav",
      "kind_source": "dom",
      "confidence": 0.9,
      "bbox": {
        "x": 0,
        "y": 0,
        "w": 1440,
        "h": 119
      },
      "bg": "#F5F5F1",
      "crop": "img/section-00-nav.webp"
    },
    {
      "index": 1,
      "kind": "hero",
      "kind_source": "dom",
      "confidence": 0.9,
      "bbox": {
        "x": 0,
        "y": 119,
        "w": 1440,
        "h": 852
      },
      "heading": "Introducing Puzzle 2.0: AI-native accounting software + Puzzle accounting servic",
      "bg": "#F3F4F1",
      "crop": "img/section-01-hero.webp"
    },
    {
      "index": 2,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 120,
        "y": 971,
        "w": 1200,
        "h": 616
      },
      "heading": "One platform underneath. Pick how much you do yourself.",
      "bg": "#F3F4F1",
      "crop": "img/section-02-features.webp"
    },
    {
      "index": 3,
      "kind": "pricing",
      "kind_source": "dom",
      "confidence": 0.85,
      "bbox": {
        "x": 54,
        "y": 1586,
        "w": 1332,
        "h": 2075
      },
      "heading": "Ask anything. Puzzle prepares the work. You approve it.",
      "bg": "#311164",
      "crop": "img/section-03-pricing.webp"
    },
    {
      "index": 4,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 54,
        "y": 3661,
        "w": 1332,
        "h": 1272
      },
      "heading": "Your books. Your way. With an expert when you need one.",
      "bg": "#F3F4F1",
      "crop": "img/section-04-features.webp"
    },
    {
      "index": 5,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 66,
        "y": 4932,
        "w": 1308,
        "h": 1158
      },
      "heading": "How much help do you want?",
      "bg": "#F3F4F1",
      "crop": "img/section-05-features.webp"
    },
    {
      "index": 6,
      "kind": "feature-detail",
      "kind_source": "dom",
      "confidence": 0.45,
      "bbox": {
        "x": 66,
        "y": 6090,
        "w": 1308,
        "h": 403
      },
      "heading": "50% faster month-end close — or your money back.",
      "bg": "#F3F4F1",
      "crop": "img/section-06-feature-detail.webp"
    },
    {
      "index": 7,
      "kind": "feature-detail",
      "kind_source": "dom",
      "confidence": 0.45,
      "bbox": {
        "x": 0,
        "y": 6493,
        "w": 1440,
        "h": 737
      },
      "heading": "What would you do with more time?",
      "bg": "#F3F4F1",
      "crop": "img/section-07-feature-detail.webp"
    },
    {
      "index": 8,
      "kind": "features",
      "kind_source": "dom",
      "confidence": 0.5,
      "bbox": {
        "x": 66,
        "y": 7229,
        "w": 1308,
        "h": 1423
      },
      "heading": "Leave legacy accounting & manual processes behind. Keep everything that matters.",
      "bg": "#F3F4F1",
      "crop": "img/section-08-features.webp"
    },
    {
      "index": 9,
      "kind": "faq",
      "kind_source": "dom",
      "confidence": 0.85,
      "bbox": {
        "x": 0,
        "y": 8653,
        "w": 1440,
        "h": 1807
      },
      "heading": "Accurate Books. AI Speed. Starting Now.",
      "bg": "#311164",
      "crop": "img/section-09-faq.webp"
    },
    {
      "index": 10,
      "kind": "footer",
      "kind_source": "dom",
      "confidence": 0.75,
      "bbox": {
        "x": 16,
        "y": 10459,
        "w": 1408,
        "h": 771
      },
      "bg": "#F5F5F1",
      "crop": "img/section-10-footer.webp"
    }
  ],
  "images": {
    "manifest": "img/manifest.json",
    "count": 15
  },
  "review": {
    "threshold": 0.7,
    "needs_review": [
      "color.accent_strategy",
      "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.85,
      "note": "most-used chromatic color on controls, links and text"
    },
    "color.accent_strategy": {
      "source": "dom",
      "confidence": 0.6,
      "note": "hue count over chromatic colors; product mockups rendered in the DOM inflate it",
      "needs_review": true
    },
    "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.65,
      "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)"
    }
  }
}