{
  "url": "https://www.capcut.com",
  "auditedAt": "2026-07-22T15:12:27.075Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Coverage-complete representative audit of public marketing, tool, content, template, localisation, authentication-entry and failure-state archetypes.",
  "page": {
    "appType": "hybrid",
    "framework": "React-like",
    "notes": "Server-rendered public marketing/content pages with client hydration; authenticated editor is gated behind sign-in."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "evaluate-probe",
    "layout-metrics",
    "trace",
    "har",
    "headers",
    "cookies",
    "trackers",
    "images",
    "secrets",
    "discoverability",
    "heap-summary",
    "lighthouse",
    "manual-visual-review",
    "Modern Web Guidance"
  ],
  "guidanceConsulted": [
    "dark-mode",
    "component-specific-light-dark-theme",
    "adapt-scrollbar-to-contrast-preferences",
    "accessibility",
    "css",
    "scroll-entry-exit-effects",
    "directional-navigation-transitions",
    "position-aware-tooltips",
    "navigation-drawer",
    "declarative-dialog-popover-control",
    "light-dismiss-a-dialog",
    "size-aware-styling",
    "stabilize-reactive-state",
    "break-up-long-tasks",
    "performance",
    "identify-heavy-scripts",
    "schedule-tasks-by-priority",
    "accessible-error-announcement",
    "security",
    "search-hidden-content",
    "forms",
    "passkeys",
    "passkey-management",
    "coordinate-global-events",
    "capture-location-agnostic-data",
    "support-global-calendar-systems",
    "autofill-payment-form",
    "autofill-sign-in-form",
    "agentic-javascript-tools",
    "agentic-forms",
    "webmcp",
    "privacy",
    "optimize-image-priority",
    "improve-text-layout-and-legibility",
    "manage-recurring-intervals",
    "deprioritize-background-fetches",
    "persistent-toast-notifications",
    "html"
  ],
  "artifacts": [
    {
      "type": "other",
      "path": "evidence/404-probe.json",
      "caption": "404 probe json",
      "findingIds": [
        "F022"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/404.png",
      "caption": "404 png",
      "findingIds": [
        "F022"
      ]
    },
    {
      "type": "other",
      "path": "evidence/a11y-probe.json",
      "caption": "a11y probe json"
    },
    {
      "type": "other",
      "path": "evidence/ar-resource-probe.json",
      "caption": "ar resource probe json",
      "findingIds": [
        "F023"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/article.png",
      "caption": "article png"
    },
    {
      "type": "other",
      "path": "evidence/cookies.json",
      "caption": "cookies json",
      "findingIds": [
        "F019"
      ]
    },
    {
      "type": "other",
      "path": "evidence/css-semantics-probe.json",
      "caption": "css semantics probe json",
      "findingIds": [
        "F001",
        "F003",
        "F004",
        "F006",
        "F008",
        "F027"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-article-crawler.png",
      "caption": "discover article crawler png"
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-article-rendered.png",
      "caption": "discover article rendered png"
    },
    {
      "type": "discoverability",
      "path": "evidence/discover-article.json",
      "caption": "discover article json"
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-home-crawler.png",
      "caption": "discover home crawler png"
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-home-rendered.png",
      "caption": "discover home rendered png"
    },
    {
      "type": "discoverability",
      "path": "evidence/discover-home.json",
      "caption": "discover home json",
      "findingIds": [
        "F027"
      ]
    },
    {
      "type": "other",
      "path": "evidence/focus-probe.json",
      "caption": "focus probe json",
      "findingIds": [
        "F009",
        "F015"
      ]
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "headers json",
      "findingIds": [
        "F019",
        "F021"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/heap-baseline.json",
      "caption": "heap baseline json"
    },
    {
      "type": "heap",
      "path": "evidence/heap-post-menu.json",
      "caption": "heap post menu json"
    },
    {
      "type": "layout",
      "path": "evidence/home-ar-layout.json",
      "caption": "home ar layout json",
      "findingIds": [
        "F007"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-ar-mobile.png",
      "caption": "home ar mobile png",
      "findingIds": [
        "F023"
      ],
      "condition": "viewport: 360x800"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-contrast.png",
      "caption": "home contrast png",
      "condition": "prefers-contrast: more"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark.png",
      "caption": "home dark png",
      "findingIds": [
        "F001"
      ],
      "condition": "prefers-color-scheme: dark"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-desktop.png",
      "caption": "home desktop png",
      "findingIds": [
        "F001",
        "F005",
        "F006",
        "F020"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "home dom json"
    },
    {
      "type": "layout",
      "path": "evidence/home-mobile-layout.json",
      "caption": "home mobile layout json",
      "findingIds": [
        "F007",
        "F012"
      ],
      "condition": "viewport: 360x800"
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "home mobile png",
      "findingIds": [
        "F005",
        "F007",
        "F010"
      ],
      "condition": "viewport: 360x800"
    },
    {
      "type": "other",
      "path": "evidence/home-recon.json",
      "caption": "home recon json"
    },
    {
      "type": "har-summary",
      "path": "evidence/home-summary.json",
      "caption": "home summary json",
      "findingIds": [
        "F013",
        "F016",
        "F020",
        "F025"
      ]
    },
    {
      "type": "trace-summary",
      "path": "evidence/home-trace-summary.json",
      "caption": "home trace summary json",
      "findingIds": [
        "F011"
      ]
    },
    {
      "type": "trace",
      "path": "evidence/home-trace.json",
      "caption": "home trace json"
    },
    {
      "type": "har",
      "path": "evidence/home.har",
      "caption": "home har",
      "findingIds": [
        "F013"
      ]
    },
    {
      "type": "other",
      "path": "evidence/i18n-probe.json",
      "caption": "i18n probe json",
      "findingIds": [
        "F023"
      ]
    },
    {
      "type": "other",
      "path": "evidence/images.json",
      "caption": "images json",
      "findingIds": [
        "F012",
        "F026"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-home.json",
      "caption": "lighthouse home json",
      "findingIds": [
        "F011",
        "F012",
        "F016",
        "F017",
        "F018"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/login-dom-probe.json",
      "caption": "login dom probe json"
    },
    {
      "type": "other",
      "path": "evidence/login-email-state.json",
      "caption": "login email state json",
      "findingIds": [
        "F014"
      ]
    },
    {
      "type": "other",
      "path": "evidence/login-recon.json",
      "caption": "login recon json",
      "findingIds": [
        "F010"
      ]
    },
    {
      "type": "other",
      "path": "evidence/login-validation-state.json",
      "caption": "login validation state json",
      "findingIds": [
        "F024"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/login.png",
      "caption": "login png",
      "findingIds": [
        "F005",
        "F010"
      ]
    },
    {
      "type": "other",
      "path": "evidence/memory-metrics.json",
      "caption": "memory metrics json"
    },
    {
      "type": "other",
      "path": "evidence/platform-probe.json",
      "caption": "platform probe json",
      "findingIds": [
        "F002",
        "F006",
        "F008",
        "F009",
        "F013",
        "F025"
      ]
    },
    {
      "type": "other",
      "path": "evidence/preferences-motion-css.json",
      "caption": "preferences motion css json",
      "findingIds": [
        "F002"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/resource-listing.png",
      "caption": "resource listing png",
      "findingIds": [
        "F005"
      ]
    },
    {
      "type": "other",
      "path": "evidence/resource-recon.json",
      "caption": "resource recon json"
    },
    {
      "type": "other",
      "path": "evidence/secrets.json",
      "caption": "secrets json"
    },
    {
      "type": "other",
      "path": "evidence/site-files.json",
      "caption": "site files json",
      "findingIds": [
        "F018",
        "F027"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/template-listing.png",
      "caption": "template listing png"
    },
    {
      "type": "other",
      "path": "evidence/template-recon.json",
      "caption": "template recon json"
    },
    {
      "type": "other",
      "path": "evidence/tool-ai-recon.json",
      "caption": "tool ai recon json"
    },
    {
      "type": "screenshot",
      "path": "evidence/tool-ai-video.png",
      "caption": "tool ai video png"
    },
    {
      "type": "other",
      "path": "evidence/tool-editor-recon.json",
      "caption": "tool editor recon json"
    },
    {
      "type": "screenshot",
      "path": "evidence/tool-editor.png",
      "caption": "tool editor png",
      "findingIds": [
        "F004",
        "F005",
        "F010"
      ]
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "trackers json",
      "findingIds": [
        "F020"
      ]
    }
  ],
  "config": {
    "loaded": false
  },
  "coverage": {
    "catalogVersion": "modern-web-guidance@0.0.172",
    "catalogChecksum": "sha256:78ccfdb2d483f4c57d9dafed80fd86c6265585a56457c8dcfddc254b80fb44d7",
    "expected": 58,
    "recorded": 58,
    "judged": 58,
    "blocked": 0,
    "notRun": 0,
    "missing": 0,
    "unknown": 0,
    "duplicates": 0,
    "complete": true
  },
  "checkOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-color-scheme",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The dark-mode screenshot is pixel-identical to the default capture, computed color-scheme is normal, and the CSS probe found no prefers-color-scheme rules.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dark.png",
        "evidence/home-desktop.png",
        "evidence/css-semantics-probe.json"
      ],
      "findingIds": [
        "F001"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Under prefers-reduced-motion: reduce, the CSS probe found no reduced-motion rule and a scroll animation remained active; the platform probe found 11 autoplaying videos without controls.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/preferences-motion-css.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F002"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Lighthouse accessibility scored 1.0, the high-contrast screenshot retained readable controls/text, and the CSS includes two prefers-contrast rules.",
      "pathIds": [
        "home",
        "arabic-localisation"
      ],
      "artifacts": [
        "evidence/home-contrast.png",
        "evidence/lighthouse-home.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The CSS/source probe found zero view-transition declarations across the loaded public landing surface.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/css-semantics-probe.json"
      ],
      "findingIds": [
        "F003"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "CSS inspection found animation-timeline: scroll(root) on the shrinking header, with a non-support transition fallback.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/preferences-motion-css.json",
        "evidence/css-semantics-probe.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The audited public templates use native scrolling and clickable controls without custom pointer-role divs; no gesture surface fought platform scrolling.",
      "pathIds": [
        "home",
        "template-listing"
      ],
      "artifacts": [
        "evidence/css-semantics-probe.json",
        "evidence/template-listing.png"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The fixed header uses a declarative scroll(root) animation to change chrome through the first 40 px of scrolling.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/preferences-motion-css.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The online-editor screenshot shows a floating welcome-bonus card overlapping the hero; the CSS probe found no anchor-name, position-anchor, or position-try usage.",
      "pathIds": [
        "online-editor"
      ],
      "artifacts": [
        "evidence/tool-editor.png",
        "evidence/css-semantics-probe.json"
      ],
      "findingIds": [
        "F004"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Breadcrumbs, selected template chips, prominent headings, and clear route labels orient users across tool, article and template archetypes.",
      "pathIds": [
        "online-editor",
        "resource-listing",
        "template-listing"
      ],
      "artifacts": [
        "evidence/tool-editor.png",
        "evidence/resource-listing.png",
        "evidence/template-listing.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Desktop, mobile, editor, AI-tool, resource, and sign-in screenshots show a cookie banner covering a large portion of the first viewport; several content pages also show a welcome-bonus popup.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/tool-editor.png",
        "evidence/resource-listing.png",
        "evidence/login.png"
      ],
      "findingIds": [
        "F005"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The loaded page contained no dialog or popover elements and no ARIA dialog, despite presenting modal-like cookie and promotional overlays.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/css-semantics-probe.json",
        "evidence/home-desktop.png"
      ],
      "findingIds": [
        "F006"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Outside overlays, the homepage and template listing devote the viewport to content with restrained header chrome and clear section hierarchy.",
      "pathIds": [
        "home",
        "template-listing"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/template-listing.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The mobile layout primitive measured 376 px content against a 360 px visual viewport, producing 16 px horizontal overflow on both English and Arabic homepages.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/home-ar-layout.json",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F007"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The computed/source probes found zero @container rules and zero elements with a non-normal container-type.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/css-semantics-probe.json"
      ],
      "findingIds": [
        "F008"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "An active-focus probe successfully focused links and buttons but consistently reported outline: none and no focus box-shadow; the menu control measured only 24 by 24 px and many nav targets were 32 px high.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/focus-probe.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F009"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Home and tool first viewports provide descriptive H1s and prominent Try online, Generate AI Video, or Upload actions.",
      "pathIds": [
        "home",
        "online-editor",
        "ai-video-generator"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/tool-editor-recon.json",
        "evidence/tool-ai-recon.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "“Try online for free” and tool CTAs route to a sign-in page whose main message is “Sign up to unlock all features”; no editing surface is available without authentication.",
      "pathIds": [
        "sign-in-flow"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/tool-editor.png",
        "evidence/login.png",
        "evidence/login-recon.json"
      ],
      "findingIds": [
        "F010"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The deliberate missing-route probe produced a bare infrastructure 404 with no recovery action.",
      "pathIds": [
        "404-recovery"
      ],
      "artifacts": [
        "evidence/404.png",
        "evidence/404-probe.json"
      ],
      "findingIds": [
        "F022"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Lighthouse measured LCP 12.3 s, FCP 5.0 s, CLS 0.261, and a performance score of 0.47. A separate trace on a warm desktop-like run was much faster, so the mobile throttled result is the risk signal.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/home-trace-summary.json"
      ],
      "findingIds": [
        "F011"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Lighthouse measured CLS 0.261 and identified the templates section plus cookie banner fonts as major shift sources; all 34 audited img elements lacked width and height attributes.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/images.json",
        "evidence/home-mobile-layout.json"
      ],
      "findingIds": [
        "F012"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The DevTools trace found two short long tasks, longest 61.34 ms, and only 14.03 ms total blocking time; Lighthouse TBT was 120 ms.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/lighthouse-home.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The HAR recorded 105 requests and 11.63 MB transferred, including 9.17 MB of media; 98 requests and 11.53 MB came from origins other than www.capcut.com. One synchronous parser-inserted head script was confirmed without async/defer.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home.har",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F013"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The HAR shipped 29 scripts / 1.31 MB and Lighthouse reported legacy/deprecated behavior; multiple login, monitoring, analytics and polyfill bundles load on the public landing page.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/lighthouse-home.json"
      ],
      "findingIds": [
        "F013",
        "F017"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "After opening “Continue with email”, the only email input had no associated label and no aria-label, relying solely on placeholder=\"Enter email\".",
      "pathIds": [
        "sign-in-flow"
      ],
      "artifacts": [
        "evidence/login-email-state.json"
      ],
      "findingIds": [
        "F014"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Lighthouse accessibility scored 1.0 and the default/high-contrast screenshots preserve readable foreground/background contrast.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/home-contrast.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The focus probe focused dozens of controls while computed outline remained none and box-shadow remained none, making keyboard location imperceptible.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/focus-probe.json"
      ],
      "findingIds": [
        "F015"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Screenshots across home, tools, resources, templates and sign-in show readable type, clear alignment, and no text clipping at the tested viewports.",
      "pathIds": [
        "home",
        "online-editor",
        "resource-listing",
        "template-listing",
        "sign-in-flow"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/tool-editor.png",
        "evidence/resource-listing.png",
        "evidence/template-listing.png",
        "evidence/login.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The 360 px reflow had 16 px horizontal overflow, several targets were below 44 px, and 11 autoplay videos had no controls.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F007",
        "F009",
        "F002"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Lighthouse failed the console-errors audit due to TikTok monitoring CORS failures; the HAR also recorded monitoring failures and a malformed image 404.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F016"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The document has valid HTML doctype/UTF-8, but every audited image lacks intrinsic dimensions and Lighthouse found invalid picture/source markup.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/images.json",
        "evidence/lighthouse-home.json"
      ],
      "findingIds": [
        "F012",
        "F017"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Lighthouse reported unload event listeners, invalid picture/source markup, and BFCache prevention from unload and no-store behavior.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-home.json"
      ],
      "findingIds": [
        "F017"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Homepage and all representative tool, listing and article routes expose unique descriptive titles and meta descriptions.",
      "pathIds": [
        "home",
        "online-editor",
        "ai-video-generator",
        "resource-listing",
        "template-listing"
      ],
      "artifacts": [
        "evidence/home-recon.json",
        "evidence/tool-editor-recon.json",
        "evidence/tool-ai-recon.json",
        "evidence/resource-recon.json",
        "evidence/template-recon.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Lighthouse found four links named only “More” and marked robots.txt invalid because of the unknown LLM-Content directive.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/site-files.json"
      ],
      "findingIds": [
        "F018"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Homepage returned 200, has a canonical URL, 28 hreflang links, an indexable robots policy for major crawlers, and sitemap indexes.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/site-files.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Homepage includes aligned WebSite JSON-LD plus Open Graph title, description, image, dimensions, URL, type and locale.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Eight cookies were flagged as insecure by the cookie primitive, all used SameSite=None, two fingerprint cookies last 400 days, and CSP permits unsafe-eval/unsafe-inline.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/cookies.json",
        "evidence/headers.json"
      ],
      "findingIds": [
        "F019"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Before any consent action, the tracker primitive observed 13 third-party origins including Microsoft Clarity and TikTok monitoring; the HAR counted 98 third-party requests.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home-summary.json",
        "evidence/home-desktop.png"
      ],
      "findingIds": [
        "F020"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "No permission prompt appeared on load; sign-in offers federated providers and the environment supports WebAuthn, though passkey enrolment was not visible in the unauthenticated state.",
      "pathIds": [
        "home",
        "sign-in-flow"
      ],
      "artifacts": [
        "evidence/login.png",
        "evidence/login-recon.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The headers primitive confirmed HSTS, nosniff and frame protection but found no Referrer-Policy or Permissions-Policy.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json"
      ],
      "findingIds": [
        "F021"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Discoverability captures found 92% homepage and 91% article rendered-word coverage in raw HTML; neither route is a JS shell and article H1/content survives no-JS.",
      "pathIds": [
        "home",
        "article-detail"
      ],
      "artifacts": [
        "evidence/discover-home.json",
        "evidence/discover-home-crawler.png",
        "evidence/discover-article.json",
        "evidence/discover-article-crawler.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "issues",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The floating welcome-bonus card overlaps hero/content while the implementation has no anchor positioning or position fallback rules.",
      "pathIds": [
        "online-editor",
        "resource-listing"
      ],
      "artifacts": [
        "evidence/tool-editor.png",
        "evidence/resource-listing.png",
        "evidence/css-semantics-probe.json"
      ],
      "findingIds": [
        "F004"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The app-like product links a valid standalone web manifest with icons/start_url and navigator.serviceWorker is present.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/site-files.json",
        "evidence/platform-probe.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "A representative missing route returned a bare “404 Not Found / Guru Meditation / Goofy Deploy Page Server” page with no navigation, explanation, search, or recovery link.",
      "pathIds": [
        "404-recovery"
      ],
      "artifacts": [
        "evidence/404.png",
        "evidence/404-probe.json"
      ],
      "findingIds": [
        "F022"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The Arabic resource page rendered Arabic content while html.lang and html.dir were both empty. Its cookie banner remained English, and the page carries substantial physical left/right CSS alongside logical rules.",
      "pathIds": [
        "arabic-localisation"
      ],
      "artifacts": [
        "evidence/ar-resource-probe.json",
        "evidence/home-ar-mobile.png",
        "evidence/i18n-probe.json"
      ],
      "findingIds": [
        "F023"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Arabic resource dates render with Arabic digits and month names; the site exposes 28 locale alternates.",
      "pathIds": [
        "arabic-localisation"
      ],
      "artifacts": [
        "evidence/ar-resource-probe.json",
        "evidence/platform-probe.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and applicability judgement",
      "evidence": "No event scheduling, local-time entry, recurring interval, or time-zone-sensitive user flow appears in the representative public/editor-entry surfaces.",
      "reason": "No event scheduling, local-time entry, recurring interval, or time-zone-sensitive user flow appears in the representative public/editor-entry surfaces."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Consent presents equally prominent Accept all and Decline all controls, and terms/privacy links are visible in sign-in.",
      "pathIds": [
        "home",
        "sign-in-flow"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/login.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Submitting the empty email state showed “Enter a valid email address”, but the field remained validity.valid=true and had no aria-invalid or aria-describedby association.",
      "pathIds": [
        "sign-in-flow"
      ],
      "artifacts": [
        "evidence/login-validation-state.json"
      ],
      "findingIds": [
        "F024"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "pass",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The email field uses type=email, inputmode=email, and autocomplete=username.",
      "pathIds": [
        "sign-in-flow"
      ],
      "artifacts": [
        "evidence/login-email-state.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The free-editor promise is followed by mandatory sign-up before editing; the commitment is not disclosed at the CTA.",
      "pathIds": [
        "home",
        "online-editor",
        "sign-in-flow"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/tool-editor.png",
        "evidence/login.png"
      ],
      "findingIds": [
        "F010"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The image primitive found all 34 images missing dimensions, 24 without srcset, six oversized beyond twice display width, and one below-fold image eagerly loaded.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images.json"
      ],
      "findingIds": [
        "F026"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Before interaction the page starts 11 autoplay videos and 98 third-party requests, including analytics/monitoring.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F020",
        "F025"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The load transferred 11.63 MB, 9.17 MB as media and 11.53 MB from third-party origins; 11 video elements autoplayed muted without controls.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F025"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "issues",
      "confidence": "high",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The site publishes a useful llms.txt and server-rendered content, but loaded source exposed no WebMCP or agentic tool registration for its editing/generation capabilities.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/site-files.json",
        "evidence/discover-home.json",
        "evidence/css-semantics-probe.json"
      ],
      "findingIds": [
        "F027"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "medium",
      "method": "Recon and applicability judgement",
      "evidence": "The audited public marketing, content, sign-in and editor-entry surfaces do not expose a bounded inference task that can be verified as appropriate for built-in on-device AI.",
      "reason": "The audited public marketing, content, sign-in and editor-entry surfaces do not expose a bounded inference task that can be verified as appropriate for built-in on-device AI."
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "After ten real menu open/close cycles, DOM nodes returned to 1,169; separate heap summaries differed by only 0.4% nodes and 0.6% retained size, with no top detached constructor signal.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post-menu.json",
        "evidence/memory-metrics.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "The loaded media-rich landing page retained about 28.1 MB across 455k snapshot nodes, proportionate to its React, video and login integrations despite network-weight concerns.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "medium",
      "method": "Active screenshots plus targeted DOM/CSS/network/runtime probes",
      "evidence": "Ten menu cycles left live DOM count unchanged and the post snapshot did not surface Detached constructors among top retained constructor groups.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post-menu.json",
        "evidence/memory-metrics.json"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F001",
        "F002"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F003"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F004"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F005",
        "F006"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F007",
        "F008",
        "F009"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F010",
        "F022"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F011",
        "F012",
        "F013",
        "F017"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F014",
        "F015",
        "F007",
        "F009",
        "F002"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F016",
        "F012",
        "F017"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F018"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F019",
        "F020",
        "F021"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F004",
        "F022"
      ]
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F023"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F024",
        "F010"
      ]
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F026",
        "F020",
        "F025"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F027"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "pass"
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage and global navigation archetype; tested desktop/mobile, dark, contrast, reduced motion, performance, privacy, network and memory.",
      "url": "https://www.capcut.com",
      "conditions": [
        "default",
        "viewport: 360x800",
        "prefers-color-scheme: dark",
        "prefers-contrast: more",
        "prefers-reduced-motion: reduce",
        "keyboard focus"
      ],
      "result": "issues"
    },
    {
      "id": "online-editor",
      "description": "Primary online-editor product landing and CTA entry.",
      "url": "https://www.capcut.com/tools/online-video-editor",
      "conditions": [
        "default"
      ],
      "result": "issues"
    },
    {
      "id": "ai-video-generator",
      "description": "AI generation product landing and primary generation CTA.",
      "url": "https://www.capcut.com/tools/ai-video-generator",
      "conditions": [
        "default"
      ],
      "result": "issues"
    },
    {
      "id": "resource-listing",
      "description": "How-to listing archetype and content discovery.",
      "url": "https://www.capcut.com/resource/howto-guides",
      "conditions": [
        "default"
      ],
      "result": "issues"
    },
    {
      "id": "article-detail",
      "description": "Article/detail archetype and no-JavaScript discoverability.",
      "url": "https://www.capcut.com/resource/create-logo-with-capcut",
      "conditions": [
        "default",
        "JavaScript disabled crawler view"
      ],
      "result": "pass"
    },
    {
      "id": "template-listing",
      "description": "Template listing archetype with category navigation and media cards.",
      "url": "https://www.capcut.com/template/social",
      "conditions": [
        "default"
      ],
      "result": "pass"
    },
    {
      "id": "sign-in-flow",
      "description": "Primary Try online journey through sign-in, email entry and invalid submission.",
      "url": "https://www.capcut.com/login?redirect_url=https%3A%2F%2Fwww.capcut.com%2Fmy-edit",
      "conditions": [
        "default",
        "empty email submission"
      ],
      "result": "issues"
    },
    {
      "id": "404-recovery",
      "description": "Representative missing-route recovery state.",
      "url": "https://www.capcut.com/not-a-real-route-atomic-audit",
      "conditions": [
        "HTTP 404"
      ],
      "result": "issues"
    },
    {
      "id": "arabic-localisation",
      "description": "Arabic RTL/localisation archetype on homepage and resource listing.",
      "url": "https://www.capcut.com/ar-eg/resource/howto-guides",
      "conditions": [
        "viewport: 360x800",
        "Arabic locale"
      ],
      "result": "issues"
    }
  ],
  "findings": [
    {
      "id": "F001",
      "severity": "medium",
      "confidence": "high",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "guidanceCategory": "user-experience",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "The public site is hard-coded to a light theme.",
      "evidence": "The dark-mode screenshot is pixel-identical to the default capture, computed color-scheme is normal, and the CSS probe found no prefers-color-scheme rules.",
      "artifacts": [
        "evidence/home-dark.png",
        "evidence/home-desktop.png",
        "evidence/css-semantics-probe.json"
      ],
      "suggestedFix": "Declare light dark support at the document root and retint page tokens with color-scheme, light-dark(), or prefers-color-scheme fallbacks.",
      "effort": "medium"
    },
    {
      "id": "F002",
      "severity": "high",
      "confidence": "high",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-reduced-motion",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Motion-heavy media does not adapt to reduced-motion preferences.",
      "evidence": "Under prefers-reduced-motion: reduce, the CSS probe found no reduced-motion rule and a scroll animation remained active; the platform probe found 11 autoplaying videos without controls.",
      "artifacts": [
        "evidence/preferences-motion-css.json",
        "evidence/platform-probe.json"
      ],
      "suggestedFix": "Disable non-essential animation and autoplay in a prefers-reduced-motion: reduce block, default media to static posters, and provide play/pause controls.",
      "effort": "medium"
    },
    {
      "id": "F003",
      "severity": "low",
      "confidence": "high",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "directional-navigation-transitions",
      "guidanceCategory": "user-experience",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Page and state changes do not use View Transitions.",
      "evidence": "The CSS/source probe found zero view-transition declarations across the loaded public landing surface.",
      "artifacts": [
        "evidence/css-semantics-probe.json"
      ],
      "suggestedFix": "Use cross-document or same-document View Transitions for route and major state changes, with reduced-motion handling.",
      "effort": "medium"
    },
    {
      "id": "F004",
      "severity": "low",
      "confidence": "medium",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "anchored-positioning",
      "guidanceId": "position-aware-tooltips",
      "guidanceCategory": "css",
      "pathId": "online-editor",
      "url": "https://www.capcut.com/tools/online-video-editor",
      "summary": "Floating promotional UI is manually positioned rather than anchored with resilient fallbacks.",
      "evidence": "The online-editor screenshot shows a floating welcome-bonus card overlapping the hero; the CSS probe found no anchor-name, position-anchor, or position-try usage.",
      "artifacts": [
        "evidence/tool-editor.png",
        "evidence/css-semantics-probe.json"
      ],
      "suggestedFix": "Attach floating cards and menus to their trigger with CSS Anchor Positioning and position-try fallbacks; ensure viewport-edge collision handling.",
      "effort": "small"
    },
    {
      "id": "F005",
      "severity": "high",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "no-intrusive-interruptions",
      "guidanceId": "light-dismiss-a-dialog",
      "guidanceCategory": "user-experience",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Load-time consent and promotional overlays obscure primary content.",
      "evidence": "Desktop, mobile, editor, AI-tool, resource, and sign-in screenshots show a cookie banner covering a large portion of the first viewport; several content pages also show a welcome-bonus popup.",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/tool-editor.png",
        "evidence/resource-listing.png",
        "evidence/login.png"
      ],
      "suggestedFix": "Reduce the consent surface, avoid overlapping promotional popups, preserve content visibility, and make non-modal notices light-dismissable after a user-triggered action.",
      "effort": "medium"
    },
    {
      "id": "F006",
      "severity": "medium",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "semantic-dismissible-primitives",
      "guidanceId": "declarative-dialog-popover-control",
      "guidanceCategory": "html",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Overlay UI does not use native dialog or popover primitives.",
      "evidence": "The loaded page contained no dialog or popover elements and no ARIA dialog, despite presenting modal-like cookie and promotional overlays.",
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/css-semantics-probe.json",
        "evidence/home-desktop.png"
      ],
      "suggestedFix": "Use dialog for modal consent and popover for transient promotions, with declarative control, light-dismiss, focus management, and accessible names.",
      "effort": "medium"
    },
    {
      "id": "F007",
      "severity": "medium",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "responsive-no-horizontal-scroll",
      "guidanceId": "size-aware-styling",
      "guidanceCategory": "css",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "The page overflows horizontally at a 360 px viewport.",
      "evidence": "The mobile layout primitive measured 376 px content against a 360 px visual viewport, producing 16 px horizontal overflow on both English and Arabic homepages.",
      "artifacts": [
        "evidence/home-mobile-layout.json",
        "evidence/home-ar-layout.json",
        "evidence/home-mobile.png"
      ],
      "suggestedFix": "Remove the 376 px minimum/fixed sizing, use intrinsic fluid widths, and constrain all overlays and media to 100% of the visual viewport.",
      "effort": "small"
    },
    {
      "id": "F008",
      "severity": "low",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "component-level-responsiveness",
      "guidanceId": "size-aware-styling",
      "guidanceCategory": "css",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Reusable components rely on viewport styling rather than container queries.",
      "evidence": "The computed/source probes found zero @container rules and zero elements with a non-normal container-type.",
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/css-semantics-probe.json"
      ],
      "suggestedFix": "Establish inline-size containment on reusable cards, navigation groups, and media tiles, then adapt them with container queries.",
      "effort": "medium"
    },
    {
      "id": "F009",
      "severity": "high",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "input-modality-aware",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Keyboard focus is invisible and several controls are undersized.",
      "evidence": "An active-focus probe successfully focused links and buttons but consistently reported outline: none and no focus box-shadow; the menu control measured only 24 by 24 px and many nav targets were 32 px high.",
      "artifacts": [
        "evidence/focus-probe.json",
        "evidence/platform-probe.json"
      ],
      "suggestedFix": "Add high-contrast :focus-visible indicators and enlarge touch targets to at least 44 by 44 CSS px without relying on hover.",
      "effort": "small"
    },
    {
      "id": "F010",
      "severity": "high",
      "confidence": "high",
      "principleId": "support-core-task-success",
      "principleCheckId": "primary-flow-completion",
      "guidanceId": "forms",
      "guidanceCategory": "forms",
      "pathId": "sign-in-flow",
      "url": "https://www.capcut.com/login?redirect_url=https%3A%2F%2Fwww.capcut.com%2Fmy-edit",
      "summary": "The advertised free online editor journey requires account creation before the task can begin.",
      "evidence": "“Try online for free” and tool CTAs route to a sign-in page whose main message is “Sign up to unlock all features”; no editing surface is available without authentication.",
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/tool-editor.png",
        "evidence/login.png",
        "evidence/login-recon.json"
      ],
      "suggestedFix": "Offer a bounded guest editing path or state the account requirement before the CTA; defer sign-up until save/export where possible.",
      "effort": "large"
    },
    {
      "id": "F011",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "guidanceCategory": "performance",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Lab Core Web Vitals are poor on mobile.",
      "evidence": "Lighthouse measured LCP 12.3 s, FCP 5.0 s, CLS 0.261, and a performance score of 0.47. A separate trace on a warm desktop-like run was much faster, so the mobile throttled result is the risk signal.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/home-trace-summary.json"
      ],
      "suggestedFix": "Prioritise the actual LCP element, reduce initial media/script work, reserve late content space, and retest under mobile throttling.",
      "effort": "large"
    },
    {
      "id": "F012",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "visual-stability",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Late content and unreserved images cause visible layout shift.",
      "evidence": "Lighthouse measured CLS 0.261 and identified the templates section plus cookie banner fonts as major shift sources; all 34 audited img elements lacked width and height attributes.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/images.json",
        "evidence/home-mobile-layout.json"
      ],
      "suggestedFix": "Set intrinsic width/height or aspect-ratio on media, reserve banner space, and use metrically compatible font fallbacks.",
      "effort": "medium"
    },
    {
      "id": "F013",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Initial delivery is dominated by eager third-party media.",
      "evidence": "The HAR recorded 105 requests and 11.63 MB transferred, including 9.17 MB of media; 98 requests and 11.53 MB came from origins other than www.capcut.com. One synchronous parser-inserted head script was confirmed without async/defer.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home.har",
        "evidence/platform-probe.json"
      ],
      "suggestedFix": "Use posters and user-triggered media loading, defer non-critical login/analytics code, reduce origin fan-out, and keep only truly critical parser-blocking work.",
      "effort": "large"
    },
    {
      "id": "F014",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "pathId": "sign-in-flow",
      "url": "https://www.capcut.com/login?redirect_url=https%3A%2F%2Fwww.capcut.com%2Fmy-edit",
      "summary": "The email sign-in field has no accessible label.",
      "evidence": "After opening “Continue with email”, the only email input had no associated label and no aria-label, relying solely on placeholder=\"Enter email\".",
      "artifacts": [
        "evidence/login-email-state.json"
      ],
      "suggestedFix": "Add a visible label explicitly associated with the email input; keep placeholder text supplementary rather than using it as the name.",
      "effort": "trivial"
    },
    {
      "id": "F015",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "accessibility",
      "guidanceCategory": "accessibility",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Focus indication is removed across the navigation and primary controls.",
      "evidence": "The focus probe focused dozens of controls while computed outline remained none and box-shadow remained none, making keyboard location imperceptible.",
      "artifacts": [
        "evidence/focus-probe.json"
      ],
      "suggestedFix": "Provide a consistent, high-contrast :focus-visible outline with adequate offset and preserve logical tab order.",
      "effort": "small"
    },
    {
      "id": "F016",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "no-console-errors",
      "guidanceId": "security",
      "guidanceCategory": "best-practices",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "The homepage logs network and CORS errors.",
      "evidence": "Lighthouse failed the console-errors audit due to TikTok monitoring CORS failures; the HAR also recorded monitoring failures and a malformed image 404.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Stop or correctly configure failing telemetry requests, remove the malformed image URL, and keep production console/network error-free.",
      "effort": "small"
    },
    {
      "id": "F017",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "browser-platform-hygiene",
      "guidanceId": "html",
      "guidanceCategory": "html",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Deprecated markup and unload handlers reduce platform resilience.",
      "evidence": "Lighthouse reported unload event listeners, invalid picture/source markup, and BFCache prevention from unload and no-store behavior.",
      "artifacts": [
        "evidence/lighthouse-home.json"
      ],
      "suggestedFix": "Replace unload with pagehide/visibilitychange where needed, correct source to use srcset, and remove avoidable BFCache blockers.",
      "effort": "medium"
    },
    {
      "id": "F018",
      "severity": "low",
      "confidence": "high",
      "principleId": "be-discoverable",
      "principleCheckId": "crawlable-and-mobile-friendly",
      "guidanceId": "accessibility",
      "guidanceCategory": "seo",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Generic link text and a non-standard robots directive reduce crawler clarity.",
      "evidence": "Lighthouse found four links named only “More” and marked robots.txt invalid because of the unknown LLM-Content directive.",
      "artifacts": [
        "evidence/lighthouse-home.json",
        "evidence/site-files.json"
      ],
      "suggestedFix": "Give links destination-specific names and move the llms.txt pointer to documented discovery conventions without inserting unknown robots directives.",
      "effort": "trivial"
    },
    {
      "id": "F019",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "guidanceCategory": "security",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Cookie and CSP settings weaken browser-enforced protection.",
      "evidence": "Eight cookies were flagged as insecure by the cookie primitive, all used SameSite=None, two fingerprint cookies last 400 days, and CSP permits unsafe-eval/unsafe-inline.",
      "artifacts": [
        "evidence/cookies.json",
        "evidence/headers.json"
      ],
      "suggestedFix": "Mark HTTPS cookies Secure, choose Lax/Strict unless cross-site use is essential, shorten fingerprint lifetimes, and migrate CSP to nonces/hashes without unsafe directives.",
      "effort": "large"
    },
    {
      "id": "F020",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "guidanceCategory": "privacy",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Tracking and third-party activity begins before consent.",
      "evidence": "Before any consent action, the tracker primitive observed 13 third-party origins including Microsoft Clarity and TikTok monitoring; the HAR counted 98 third-party requests.",
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home-summary.json",
        "evidence/home-desktop.png"
      ],
      "suggestedFix": "Gate non-essential analytics and fingerprinting behind consent, minimise identifiers and session-wide collection, and consolidate/batch necessary telemetry.",
      "effort": "large"
    },
    {
      "id": "F021",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "defensive-browser-policies",
      "guidanceId": "security",
      "guidanceCategory": "security",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Referrer-Policy and Permissions-Policy are absent.",
      "evidence": "The headers primitive confirmed HSTS, nosniff and frame protection but found no Referrer-Policy or Permissions-Policy.",
      "artifacts": [
        "evidence/headers.json"
      ],
      "suggestedFix": "Set a restrictive Referrer-Policy and an explicit Permissions-Policy allowing only capabilities required by each surface.",
      "effort": "small"
    },
    {
      "id": "F022",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-resilient",
      "principleCheckId": "network-and-http-failure-states",
      "guidanceId": "persistent-toast-notifications",
      "guidanceCategory": "user-experience",
      "pathId": "404-recovery",
      "url": "https://www.capcut.com/not-a-real-route-atomic-audit",
      "summary": "Unknown routes dead-end on an infrastructure error page.",
      "evidence": "A representative missing route returned a bare “404 Not Found / Guru Meditation / Goofy Deploy Page Server” page with no navigation, explanation, search, or recovery link.",
      "artifacts": [
        "evidence/404.png",
        "evidence/404-probe.json"
      ],
      "suggestedFix": "Serve a branded 404 with navigation, search, preserved context, and a clear route back to the editor or homepage.",
      "effort": "small"
    },
    {
      "id": "F023",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-internationalised",
      "principleCheckId": "lang-dir-and-logical-properties",
      "guidanceId": "accessibility",
      "guidanceCategory": "internationalisation",
      "pathId": "arabic-localisation",
      "url": "https://www.capcut.com/ar-eg/resource/howto-guides",
      "summary": "Arabic pages omit document language and direction metadata.",
      "evidence": "The Arabic resource page rendered Arabic content while html.lang and html.dir were both empty. Its cookie banner remained English, and the page carries substantial physical left/right CSS alongside logical rules.",
      "artifacts": [
        "evidence/ar-resource-probe.json",
        "evidence/home-ar-mobile.png",
        "evidence/i18n-probe.json"
      ],
      "suggestedFix": "Set lang=\"ar\" and dir=\"rtl\" at the root for Arabic routes, localise consent UI, and prefer logical properties throughout reusable layouts.",
      "effort": "medium"
    },
    {
      "id": "F024",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-trustworthy",
      "principleCheckId": "humane-error-handling",
      "guidanceId": "accessible-error-announcement",
      "guidanceCategory": "forms",
      "pathId": "sign-in-flow",
      "url": "https://www.capcut.com/login?redirect_url=https%3A%2F%2Fwww.capcut.com%2Fmy-edit",
      "summary": "Email validation errors are not programmatically associated with the field.",
      "evidence": "Submitting the empty email state showed “Enter a valid email address”, but the field remained validity.valid=true and had no aria-invalid or aria-describedby association.",
      "artifacts": [
        "evidence/login-validation-state.json"
      ],
      "suggestedFix": "Use native required/type validity or aria-invalid after interaction, associate the error with aria-describedby, and announce it in a polite live region.",
      "effort": "small"
    },
    {
      "id": "F025",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "third-party-and-media-budget",
      "guidanceId": "deprioritize-background-fetches",
      "guidanceCategory": "performance",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Autoplay media and third-party bytes are disproportionate for a landing page.",
      "evidence": "The load transferred 11.63 MB, 9.17 MB as media and 11.53 MB from third-party origins; 11 video elements autoplayed muted without controls.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/platform-probe.json"
      ],
      "suggestedFix": "Replace below-fold autoplay video with responsive posters, load media on intent/visibility, and enforce per-template third-party and media budgets.",
      "effort": "large"
    },
    {
      "id": "F026",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "optimised-assets",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "performance",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Images are not responsively sized or dimensioned.",
      "evidence": "The image primitive found all 34 images missing dimensions, 24 without srcset, six oversized beyond twice display width, and one below-fold image eagerly loaded.",
      "artifacts": [
        "evidence/images.json"
      ],
      "suggestedFix": "Emit responsive srcset/sizes, intrinsic dimensions, modern formats, and lazy loading for below-fold images while preserving LCP priority.",
      "effort": "medium"
    },
    {
      "id": "F027",
      "severity": "low",
      "confidence": "medium",
      "principleId": "be-agent-ready",
      "principleCheckId": "structured-agent-capabilities",
      "guidanceId": "webmcp",
      "guidanceCategory": "ai",
      "pathId": "home",
      "url": "https://www.capcut.com",
      "summary": "Agent discovery is documented, but product capabilities are not exposed as safe structured tools.",
      "evidence": "The site publishes a useful llms.txt and server-rendered content, but loaded source exposed no WebMCP or agentic tool registration for its editing/generation capabilities.",
      "artifacts": [
        "evidence/site-files.json",
        "evidence/discover-home.json",
        "evidence/css-semantics-probe.json"
      ],
      "suggestedFix": "Pilot narrowly scoped WebMCP/agentic form tools for safe tasks such as project creation or template search, with explicit confirmation for consequential actions.",
      "effort": "large"
    }
  ],
  "taskList": [
    {
      "id": "T001",
      "title": "Remove eager autoplay media and cut the 11.6 MB initial load",
      "priority": 1,
      "findingIds": [
        "F011",
        "F013",
        "F025",
        "F026"
      ],
      "guidanceId": "performance",
      "status": "open"
    },
    {
      "id": "T002",
      "title": "Make consent privacy-preserving, compact, and non-obscuring",
      "priority": 2,
      "findingIds": [
        "F005",
        "F006",
        "F019",
        "F020",
        "F021"
      ],
      "guidanceId": "privacy",
      "status": "open"
    },
    {
      "id": "T003",
      "title": "Restore visible keyboard focus and accessible sign-in semantics",
      "priority": 3,
      "findingIds": [
        "F009",
        "F014",
        "F015",
        "F024"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T004",
      "title": "Reserve image/banner space and eliminate mobile overflow",
      "priority": 4,
      "findingIds": [
        "F007",
        "F012",
        "F026"
      ],
      "guidanceId": "size-aware-styling",
      "status": "open"
    },
    {
      "id": "T005",
      "title": "Let users trial the free editor before mandatory sign-up",
      "priority": 5,
      "findingIds": [
        "F010"
      ],
      "guidanceId": "forms",
      "status": "open"
    },
    {
      "id": "T006",
      "title": "Honor dark mode and reduced-motion preferences",
      "priority": 6,
      "findingIds": [
        "F001",
        "F002"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T007",
      "title": "Fix Arabic lang/dir and localise embedded consent UI",
      "priority": 7,
      "findingIds": [
        "F023"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T008",
      "title": "Serve a useful branded recovery page for failed routes",
      "priority": 8,
      "findingIds": [
        "F022"
      ],
      "guidanceId": "persistent-toast-notifications",
      "status": "open"
    },
    {
      "id": "T009",
      "title": "Remove console errors, deprecated APIs, and BFCache blockers",
      "priority": 9,
      "findingIds": [
        "F016",
        "F017"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T010",
      "title": "Adopt resilient transition, anchoring, and component-query primitives",
      "priority": 10,
      "findingIds": [
        "F003",
        "F004",
        "F008"
      ],
      "guidanceId": "size-aware-styling",
      "status": "open"
    },
    {
      "id": "T011",
      "title": "Improve crawler link labels and robots conventions",
      "priority": 11,
      "findingIds": [
        "F018"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T012",
      "title": "Pilot safe structured agent capabilities",
      "priority": 12,
      "findingIds": [
        "F027"
      ],
      "guidanceId": "webmcp",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 9,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-22T15-12-27-075Z"
}
