{
  "url": "https://mobile-x4.simontokx.asia",
  "auditedAt": "2026-07-18T22:25:16.414Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Coverage complete. The requested host redirects to https://simontokx.tv/, which is the rendered and canonical site audited.",
  "page": {
    "appType": "mpa",
    "framework": "Server-rendered HTML with jQuery/Sidr and a service worker registration",
    "notes": "Adult media listing. Requested hostname redirects to simontokx.tv. Representative coverage includes home/listing, search results, a detail/watch path, empty search validation, and a missing route."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "layout-metrics",
    "evaluate-probe",
    "discoverability",
    "trace",
    "har",
    "lighthouse",
    "headers",
    "cookies",
    "trackers",
    "images",
    "secrets",
    "heap-summary",
    "curl HTTP/robots/sitemap"
  ],
  "guidanceConsulted": [
    "dark-mode",
    "accessibility",
    "shrinking-header-on-scroll",
    "position-aware-tooltips",
    "avoid intrusive interstitial popup content first",
    "declarative-dialog-popover-control",
    "reduce visual clutter maximize content",
    "size-aware-styling",
    "direct user attention primary action visual hierarchy task success",
    "loading empty error success retry undo cancel state",
    "improve core web vitals LCP INP CLS",
    "prevent layout shift reserve space CLS aspect-ratio",
    "optimize-image-priority",
    "identify-heavy-scripts",
    "html",
    "security",
    "privacy",
    "offline fallback service worker web app manifest installable pwa",
    "http error network failure timeout retry stale data resilient state",
    "honest defaults no dark patterns confirmshaming forced continuity consent",
    "deliver-optimized-decorative-images",
    "deprioritize-background-fetches",
    "efficient-background-processing"
  ],
  "artifacts": [
    {
      "type": "screenshot",
      "path": "evidence/404-mobile.png",
      "caption": "Audit evidence: 404-mobile.png",
      "condition": "mobile viewport 360x800",
      "findingIds": [
        "F12",
        "F26"
      ]
    },
    {
      "type": "other",
      "path": "evidence/cookies.json",
      "caption": "Audit evidence: cookies.json",
      "findingIds": [
        "F22",
        "F23"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/desktop.png",
      "caption": "Audit evidence: desktop.png",
      "findingIds": [
        "F08"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/detail-dom.json",
      "caption": "Audit evidence: detail-dom.json",
      "findingIds": []
    },
    {
      "type": "layout",
      "path": "evidence/detail-layout.json",
      "caption": "Audit evidence: detail-layout.json",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-mobile.png",
      "caption": "Audit evidence: detail-mobile.png",
      "condition": "mobile viewport 360x800",
      "findingIds": [
        "F05",
        "F07",
        "F10",
        "F27"
      ]
    },
    {
      "type": "other",
      "path": "evidence/detail-probe.json",
      "caption": "Audit evidence: detail-probe.json",
      "findingIds": [
        "F05",
        "F10",
        "F11",
        "F17",
        "F19"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-crawler.png",
      "caption": "Audit evidence: discoverability-crawler.png",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discoverability-rendered.png",
      "caption": "Audit evidence: discoverability-rendered.png",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/discoverability.json",
      "caption": "Audit evidence: discoverability.json",
      "findingIds": []
    },
    {
      "type": "dom",
      "path": "evidence/dom.json",
      "caption": "Audit evidence: dom.json",
      "findingIds": [
        "F04",
        "F06",
        "F25"
      ]
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "Audit evidence: headers.json",
      "findingIds": [
        "F22",
        "F24"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/heap-baseline.json",
      "caption": "Audit evidence: heap-baseline.json",
      "findingIds": []
    },
    {
      "type": "heap",
      "path": "evidence/heap-post-menu.json",
      "caption": "Audit evidence: heap-post-menu.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/images.json",
      "caption": "Audit evidence: images.json",
      "findingIds": [
        "F14",
        "F20",
        "F28"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/layout-mobile.json",
      "caption": "Audit evidence: layout-mobile.json",
      "condition": "mobile viewport 360x800",
      "findingIds": [
        "F03",
        "F13"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse.json",
      "caption": "Audit evidence: lighthouse.json",
      "findingIds": [
        "F09",
        "F13",
        "F14",
        "F15",
        "F16",
        "F17",
        "F18",
        "F19",
        "F21",
        "F28"
      ]
    },
    {
      "type": "trace-summary",
      "path": "evidence/load-trace-summary.json",
      "caption": "Audit evidence: load-trace-summary.json",
      "findingIds": []
    },
    {
      "type": "trace",
      "path": "evidence/load-trace.json",
      "caption": "Audit evidence: load-trace.json",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/mobile-contrast.png",
      "caption": "Audit evidence: mobile-contrast.png",
      "condition": "mobile viewport 360x800",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/mobile-dark.png",
      "caption": "Audit evidence: mobile-dark.png",
      "condition": "mobile viewport 360x800",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/mobile.png",
      "caption": "Audit evidence: mobile.png",
      "condition": "mobile viewport 360x800",
      "findingIds": [
        "F02",
        "F03",
        "F05",
        "F07",
        "F08",
        "F27",
        "F30"
      ]
    },
    {
      "type": "har-summary",
      "path": "evidence/network-summary.json",
      "caption": "Audit evidence: network-summary.json",
      "findingIds": [
        "F15",
        "F16",
        "F23",
        "F29",
        "F30"
      ]
    },
    {
      "type": "har",
      "path": "evidence/network.har",
      "caption": "Audit evidence: network.har",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/player.png",
      "caption": "Audit evidence: player.png",
      "findingIds": [
        "F11",
        "F12",
        "F26"
      ]
    },
    {
      "type": "other",
      "path": "evidence/probe.json",
      "caption": "Audit evidence: probe.json",
      "findingIds": [
        "F04",
        "F06",
        "F08",
        "F09",
        "F18",
        "F20",
        "F25"
      ]
    },
    {
      "type": "other",
      "path": "evidence/reduced-motion-probe.json",
      "caption": "Audit evidence: reduced-motion-probe.json",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "other",
      "path": "evidence/robots-headers.txt",
      "caption": "Audit evidence: robots-headers.txt",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/robots.txt",
      "caption": "Audit evidence: robots.txt",
      "findingIds": []
    },
    {
      "type": "dom",
      "path": "evidence/search-dom.json",
      "caption": "Audit evidence: search-dom.json",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/search-invalid.png",
      "caption": "Audit evidence: search-invalid.png",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/search-mobile.png",
      "caption": "Audit evidence: search-mobile.png",
      "condition": "mobile viewport 360x800",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/secrets.json",
      "caption": "Audit evidence: secrets.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/sitemap-headers.txt",
      "caption": "Audit evidence: sitemap-headers.txt",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/sitemap.xml",
      "caption": "Audit evidence: sitemap.xml",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/targets-theme.json",
      "caption": "Audit evidence: targets-theme.json",
      "findingIds": [
        "F01",
        "F09",
        "F19"
      ]
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "Audit evidence: trackers.json",
      "findingIds": [
        "F23",
        "F29"
      ]
    }
  ],
  "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": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The dark-mode screenshot is visually identical to the default mobile capture; the theme probe reports colorScheme \"normal\" and body background rgb(255,255,255).",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F01"
      ],
      "artifacts": [
        "evidence/mobile-dark.png",
        "evidence/targets-theme.json"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Under prefers-reduced-motion: reduce, the probe still found many 0.15s to 1s transitions. Four above-the-fold GIF adverts also continue animating because they are image animations outside getAnimations().",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F02"
      ],
      "artifacts": [
        "evidence/reduced-motion-probe.json",
        "evidence/mobile.png"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Lighthouse contrast audit passed and the prefers-contrast screenshot retained visible text and controls.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/mobile-contrast.png",
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "The document declares <meta name=\"view-transition\" content=\"same-origin\"> for cross-document navigation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dom.json"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and feature/content applicability inspection",
      "evidence": "The site has no parallax, scrollytelling, carousel, or scroll-linked reveal to implement.",
      "reason": "The site has no parallax, scrollytelling, carousel, or scroll-linked reveal to implement."
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and feature/content applicability inspection",
      "evidence": "No swipe, pull, drag, carousel, or other physical gesture surface is present; ordinary links and a menu are covered elsewhere.",
      "reason": "No swipe, pull, drag, carousel, or other physical gesture surface is present; ordinary links and a menu are covered elsewhere."
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The mobile layout is 2,841px tall, while DOM/CSS inspection found no sticky progress treatment, scroll-state query, or scroll timeline.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F03"
      ],
      "artifacts": [
        "evidence/layout-mobile.json",
        "evidence/mobile.png"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The search validation notice is an absolutely positioned div and the mobile menu is a jQuery Sidr div; the DOM has no popover, dialog, anchor-name, or position-anchor usage.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F04"
      ],
      "artifacts": [
        "evidence/dom.json",
        "evidence/probe.json"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Descriptive navigation labels, card titles, active pagination, and a clear detail heading provide basic attention cues.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/mobile.png"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The mobile home and detail screenshots show four animated gambling banners before the listing or player; on the detail page the player iframe starts at y=724.8px.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F05"
      ],
      "artifacts": [
        "evidence/mobile.png",
        "evidence/detail-mobile.png",
        "evidence/detail-probe.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "DOM inspection found zero dialog, popover, and details elements; the rendered menu is injected as #menu.sidr and controlled by jQuery click handlers.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F06"
      ],
      "artifacts": [
        "evidence/dom.json",
        "evidence/probe.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "At 360x800, logo/search/header, heading, four ad banners, and an update panel consume most of the viewport; the detail player is only reached at the bottom edge.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F07"
      ],
      "artifacts": [
        "evidence/mobile.png",
        "evidence/detail-mobile.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "At 360px the home layout reported 0px overflow; the detail page only reported a negligible 2px rounding difference.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/layout-mobile.json",
        "evidence/detail-layout.json"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The feature probe found no @container rules even though cards, banners, search, and navigation are reused at materially different widths.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F08"
      ],
      "artifacts": [
        "evidence/probe.json",
        "evidence/mobile.png",
        "evidence/desktop.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Computed focus outlines are none on the search input, button, navigation, and cards. The target probe measured the menu at 24.5x29px and pagination controls around 31.6x36px; Lighthouse reported 15 target-size failures.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F09"
      ],
      "artifacts": [
        "evidence/probe.json",
        "evidence/targets-theme.json",
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "On the representative detail page, the title appears after six banner placements and the embedded player begins at y=724.8px, nearly below the first mobile viewport.",
      "pathIds": [
        "detail"
      ],
      "findingIds": [
        "F10"
      ],
      "artifacts": [
        "evidence/detail-mobile.png",
        "evidence/detail-probe.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The clipped player artifact is an empty grey 344x300 iframe from player.bokep234.club, has no iframe title, and the page shows no loading, error, retry, or alternate-source state.",
      "pathIds": [
        "detail"
      ],
      "findingIds": [
        "F11"
      ],
      "artifacts": [
        "evidence/player.png",
        "evidence/detail-probe.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The player remains blank without status or recovery. A deliberately missing URL returns HTTP 404 but renders a homepage-like grid with blank image boxes rather than a clear not-found message and next action.",
      "pathIds": [
        "detail"
      ],
      "findingIds": [
        "F12"
      ],
      "artifacts": [
        "evidence/player.png",
        "evidence/404-mobile.png"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Lighthouse measured CLS 0.168 (needs improvement) with six shifts; the first-party mobile layout observer also recorded CLS 0.0218 after its observation window. LCP was 2.3s and TBT 20ms.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F13"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/layout-mobile.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The images primitive found 25 of 34 images without explicit width/height; Lighthouse associated the load with six layout shifts and CLS 0.168.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F14"
      ],
      "artifacts": [
        "evidence/images.json",
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Trace measured zero long tasks and 0ms TBT; Lighthouse measured 20ms TBT.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/load-trace-summary.json",
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "HAR found four parser-inserted VeryHigh-priority stylesheets; Lighthouse estimated 1,150ms render-blocking savings, flagged font display and 14 cache-lifetime items.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F15"
      ],
      "artifacts": [
        "evidence/network-summary.json",
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Lighthouse estimated 185KiB unused JavaScript and 60KiB unused CSS. HAR attributes about 281KiB to two Google tag scripts plus 90KiB to Webvisor.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F16"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/network-summary.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Lighthouse failed link-name for one link; detail probing found the primary player iframe title is empty.",
      "pathIds": [
        "detail"
      ],
      "findingIds": [
        "F17"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/detail-probe.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Lighthouse color-contrast audit passed with no failing nodes.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Lighthouse reports no main landmark. DOM probing found no semantic landmarks and computed focus outlines were none across primary controls.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F18"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/probe.json"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Mobile screenshots show readable 14-24px text, adequate line spacing, and no clipping in key prose.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/mobile.png",
        "evidence/detail-mobile.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Lighthouse found 15 insufficient target-size instances; the probe measured menu and pagination controls below 44px. The cross-origin player iframe has no title and no visible caption/equivalent surfaced by the host page.",
      "pathIds": [
        "detail"
      ],
      "findingIds": [
        "F19"
      ],
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/targets-theme.json",
        "evidence/detail-probe.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Lighthouse logged no browser console errors.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Although doctype and UTF-8 charset are valid, 25 of 34 images lack dimensions and all 34 use legacy PNG/GIF/JPEG formats.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F20"
      ],
      "artifacts": [
        "evidence/images.json",
        "evidence/probe.json"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Lighthouse found three deprecation warnings and one DevTools Inspector issue; best-practices score was 0.58.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F21"
      ],
      "artifacts": [
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Home and detail DOMs contain descriptive, page-specific titles and meta descriptions.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dom.json",
        "evidence/detail-dom.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Links use hrefs, viewport meta is present, robots permits search, and Lighthouse SEO passed.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dom.json",
        "evidence/robots.txt",
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Canonical URLs are present, robots.txt and sitemap index respond, public pages return 200, and the tested unknown route correctly returns 404.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dom.json",
        "evidence/sitemap.xml",
        "evidence/robots.txt"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "The home page includes WebSite JSON-LD plus Open Graph and Twitter card metadata matching visible purpose.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dom.json",
        "evidence/probe.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Headers primitive found no CSP or HSTS. Cookie audit found six cookies flagged insecure by the primitive, including _ga cookies without Secure and all cookies using SameSite=None.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F22"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Trackers primitive found 13 third-party origins plus Google Analytics and Yandex/Webvisor; HAR shows 50/54 requests and 1.69/1.71MB transferred are third-party.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F23"
      ],
      "artifacts": [
        "evidence/trackers.json",
        "evidence/network-summary.json",
        "evidence/cookies.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and feature/content applicability inspection",
      "evidence": "No authentication flow or browser permission request exists on the representative paths.",
      "reason": "No authentication flow or browser permission request exists on the representative paths."
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "No CSP, HSTS, frame-ancestors/X-Frame-Options, or Permissions-Policy is present; only nosniff and Referrer-Policy: origin were observed.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F24"
      ],
      "artifacts": [
        "evidence/headers.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Discoverability measured 100% raw/rendered content coverage, no JS shell, and title/H1/description in raw HTML.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/discoverability.json",
        "evidence/discoverability-rendered.png",
        "evidence/discoverability-crawler.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "The mobile menu was opened/closed ten times without visible cutoff or runtime failure; navigation and content are server-rendered.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-post-menu.json",
        "evidence/mobile.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "DOM inspection shows service-worker registration code, while the feature probe found no web app manifest and no controlling worker on first load.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F25"
      ],
      "artifacts": [
        "evidence/dom.json",
        "evidence/probe.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The missing URL returns HTTP 404 but presents homepage-like content with blank cards, while the representative player is a blank iframe with no retry or explanation.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F26"
      ],
      "artifacts": [
        "evidence/404-mobile.png",
        "evidence/player.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "The document correctly declares lang=\"id\"; its left-to-right Indonesian content does not require an explicit dir override.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dom.json"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and feature/content applicability inspection",
      "evidence": "The reviewed Indonesian pages render no user-facing dates, currencies, durations, or locale-sensitive numeric data.",
      "reason": "The reviewed Indonesian pages render no user-facing dates, currencies, durations, or locale-sensitive numeric data."
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and feature/content applicability inspection",
      "evidence": "The representative pages contain no events, schedules, or user-facing time-zone data.",
      "reason": "The representative pages contain no events, schedules, or user-facing time-zone data."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Four branded gambling banners appear before content on home and detail views, repeat again below the title, and are not visibly labelled “Advertisement”.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F27"
      ],
      "artifacts": [
        "evidence/mobile.png",
        "evidence/detail-mobile.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Submitting empty search keeps focus in the field and reveals a specific bilingual prompt rather than navigating or blaming the user.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dom.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "pass",
      "confidence": "high",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "The only input is a search field with a clear placeholder and predictable GET behavior; address/payment/auth autocomplete is not involved.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dom.json"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and feature/content applicability inspection",
      "evidence": "The audited host has no checkout, subscription, authentication, or account-management flow; outbound adverts were judged under dark patterns.",
      "reason": "The audited host has no checkout, subscription, authentication, or account-management flow; outbound adverts were judged under dark patterns."
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "Images audit found 34/34 legacy formats, 30 without srcset, and 25 below-fold images without native loading=lazy. Lighthouse estimates 410KiB image-delivery savings.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F28"
      ],
      "artifacts": [
        "evidence/images.json",
        "evidence/lighthouse.json"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "50 of 54 requests are third-party; analytics, Webvisor, cookie synchronization, and both desktop/mobile ad assets load immediately.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F29"
      ],
      "artifacts": [
        "evidence/network-summary.json",
        "evidence/trackers.json"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "Visual screenshots plus objective DOM/evaluate/Lighthouse or primitive evidence cited by the linked finding",
      "evidence": "The 1.71MB load is 1.69MB third-party. Eight animated ad GIF requests transfer about 944KiB, and Google tag scripts transfer about 281KiB.",
      "pathIds": [
        "home"
      ],
      "findingIds": [
        "F30"
      ],
      "artifacts": [
        "evidence/network-summary.json",
        "evidence/mobile.png"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and feature/content applicability inspection",
      "evidence": "This public media catalogue exposes no transactional/productivity capability that currently warrants WebMCP tools; crawler-readable content is handled by discoverability.",
      "reason": "This public media catalogue exposes no transactional/productivity capability that currently warrants WebMCP tools; crawler-readable content is handled by discoverability."
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and feature/content applicability inspection",
      "evidence": "No summarisation, generation, translation, or other inference task is part of the experience.",
      "reason": "No summarisation, generation, translation, or other inference task is part of the experience."
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "After ten real menu open/close cycles, retained heap rose 3.7% (13.23MB to 13.72MB) with only small object/closure deltas, not evidence of unbounded growth.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post-menu.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Heap summary measured about 13.2MB self size for the content-rich page, proportionate to the loaded scripts and DOM.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "medium",
      "method": "Direct DOM/evaluate, visual, or objective primitive inspection across representative paths",
      "evidence": "Heap summaries contain no reported Detached* constructor population; closure count increased only 25 across separate-run snapshots.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post-menu.json"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01",
        "F02"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F03",
        "F04"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F05",
        "F06",
        "F07"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F08",
        "F09"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F10",
        "F11",
        "F12"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F13",
        "F14",
        "F15",
        "F16"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F17",
        "F18",
        "F19"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F20",
        "F21"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F22",
        "F23",
        "F24"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F25",
        "F26"
      ]
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F27"
      ]
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F28",
        "F29",
        "F30"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "Both emerging agent-facing checks are inapplicable to this content catalogue: no structured transactional capability or inference task was observed."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "pass"
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage/listing template and global header, advertising, navigation, cards, responsive layout, preference, performance, security, privacy, sustainability, and memory behavior.",
      "url": "https://simontokx.tv/",
      "conditions": [
        "desktop 1440x900",
        "mobile 360x800",
        "prefers-color-scheme: dark",
        "prefers-contrast: more",
        "prefers-reduced-motion: reduce",
        "keyboard focus",
        "10x mobile-menu interaction"
      ],
      "result": "issues"
    },
    {
      "id": "search",
      "description": "Search-results template and empty-query validation; represents query navigation and form feedback.",
      "url": "https://simontokx.tv/?id=indonesia",
      "conditions": [
        "mobile 360x800",
        "empty submission"
      ],
      "result": "issues"
    },
    {
      "id": "detail",
      "description": "Representative video detail/watch journey from listing card to embedded player; tests primary task, media accessibility, and failure state.",
      "url": "https://simontokx.tv/watch/jAIAGjIA-cewek-live-abg-indonesia.html",
      "conditions": [
        "mobile 360x800"
      ],
      "result": "issues"
    },
    {
      "id": "missing",
      "description": "Deliberately unknown route to inspect HTTP and user-facing recovery behavior.",
      "url": "https://simontokx.tv/does-not-exist-web-uplift",
      "conditions": [
        "mobile 360x800"
      ],
      "result": "issues"
    }
  ],
  "findings": [
    {
      "id": "F01",
      "severity": "medium",
      "confidence": "high",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "guidanceCategory": "modern-web-guidance",
      "summary": "The site is fixed to a light theme.",
      "evidence": "The dark-mode screenshot is visually identical to the default mobile capture; the theme probe reports colorScheme \"normal\" and body background rgb(255,255,255).",
      "suggestedFix": "Declare color-scheme: light dark and use preference-driven surface/text colors with light-dark() or a prefers-color-scheme query.",
      "artifacts": [
        "evidence/mobile-dark.png",
        "evidence/targets-theme.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F02",
      "severity": "medium",
      "confidence": "high",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-reduced-motion",
      "guidanceId": "accessibility",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Animated advertising and transitions do not adapt to reduced motion.",
      "evidence": "Under prefers-reduced-motion: reduce, the probe still found many 0.15s to 1s transitions. Four above-the-fold GIF adverts also continue animating because they are image animations outside getAnimations().",
      "suggestedFix": "Replace animated GIF ads with static alternatives for reduced motion and remove or shorten non-essential transitions in the reduce media query.",
      "artifacts": [
        "evidence/reduced-motion-probe.json",
        "evidence/mobile.png"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F03",
      "severity": "low",
      "confidence": "high",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "scroll-state-aware-chrome",
      "guidanceId": "shrinking-header-on-scroll",
      "guidanceCategory": "modern-web-guidance",
      "summary": "The long listing has no scroll-aware orientation aid.",
      "evidence": "The mobile layout is 2,841px tall, while DOM/CSS inspection found no sticky progress treatment, scroll-state query, or scroll timeline.",
      "suggestedFix": "Add lightweight scroll position feedback or a compact sticky header that responds to scroll state without obscuring content.",
      "artifacts": [
        "evidence/layout-mobile.json",
        "evidence/mobile.png"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F04",
      "severity": "low",
      "confidence": "high",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "anchored-positioning",
      "guidanceId": "position-aware-tooltips",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Transient UI is manually positioned.",
      "evidence": "The search validation notice is an absolutely positioned div and the mobile menu is a jQuery Sidr div; the DOM has no popover, dialog, anchor-name, or position-anchor usage.",
      "suggestedFix": "Use popover/dialog semantics and CSS anchor positioning with fallback positions for transient UI.",
      "artifacts": [
        "evidence/dom.json",
        "evidence/probe.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F05",
      "severity": "high",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "no-intrusive-interruptions",
      "guidanceId": "avoid intrusive interstitial popup content first",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Advertising dominates the first viewport before core content.",
      "evidence": "The mobile home and detail screenshots show four animated gambling banners before the listing or player; on the detail page the player iframe starts at y=724.8px.",
      "suggestedFix": "Reduce and clearly separate advertising, reserve the first viewport for the page purpose, and place the player/listing before secondary promotions.",
      "artifacts": [
        "evidence/mobile.png",
        "evidence/detail-mobile.png",
        "evidence/detail-probe.json"
      ],
      "effort": "medium",
      "pathId": "detail",
      "url": "https://simontokx.tv/watch/jAIAGjIA-cewek-live-abg-indonesia.html"
    },
    {
      "id": "F06",
      "severity": "medium",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "semantic-dismissible-primitives",
      "guidanceId": "declarative-dialog-popover-control",
      "guidanceCategory": "modern-web-guidance",
      "summary": "The mobile navigation uses a custom div-based jQuery overlay.",
      "evidence": "DOM inspection found zero dialog, popover, and details elements; the rendered menu is injected as #menu.sidr and controlled by jQuery click handlers.",
      "suggestedFix": "Use a semantic dialog or popover with declarative invocation, focus management, Escape handling, and light-dismiss.",
      "artifacts": [
        "evidence/dom.json",
        "evidence/probe.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F07",
      "severity": "high",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "reduced-chrome",
      "guidanceId": "reduce visual clutter maximize content",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Decorative and commercial chrome crowds out content.",
      "evidence": "At 360x800, logo/search/header, heading, four ad banners, and an update panel consume most of the viewport; the detail player is only reached at the bottom edge.",
      "suggestedFix": "Remove repeated banners and update boilerplate from the primary visual path; give the listing/player the dominant area.",
      "artifacts": [
        "evidence/mobile.png",
        "evidence/detail-mobile.png"
      ],
      "effort": "medium",
      "pathId": "detail",
      "url": "https://simontokx.tv/watch/jAIAGjIA-cewek-live-abg-indonesia.html"
    },
    {
      "id": "F08",
      "severity": "low",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "component-level-responsiveness",
      "guidanceId": "size-aware-styling",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Reusable components depend on global responsive styling rather than their container.",
      "evidence": "The feature probe found no @container rules even though cards, banners, search, and navigation are reused at materially different widths.",
      "suggestedFix": "Add container-type to reusable regions and adapt card/banner composition with @container queries while retaining a safe fallback.",
      "artifacts": [
        "evidence/probe.json",
        "evidence/mobile.png",
        "evidence/desktop.png"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F09",
      "severity": "high",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "input-modality-aware",
      "guidanceId": "accessibility",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Keyboard focus and touch target treatment are inadequate.",
      "evidence": "Computed focus outlines are none on the search input, button, navigation, and cards. The target probe measured the menu at 24.5x29px and pagination controls around 31.6x36px; Lighthouse reported 15 target-size failures.",
      "suggestedFix": "Provide a high-contrast :focus-visible indicator and enlarge controls/spacing to at least a comfortable 44px target where possible.",
      "artifacts": [
        "evidence/probe.json",
        "evidence/targets-theme.json",
        "evidence/lighthouse.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F10",
      "severity": "high",
      "confidence": "high",
      "principleId": "support-core-task-success",
      "principleCheckId": "clear-purpose-and-primary-action",
      "guidanceId": "direct user attention primary action visual hierarchy task success",
      "guidanceCategory": "modern-web-guidance",
      "summary": "The primary watch action is buried under promotions.",
      "evidence": "On the representative detail page, the title appears after six banner placements and the embedded player begins at y=724.8px, nearly below the first mobile viewport.",
      "suggestedFix": "Put title and playable media before ads, with a clear play/loading state and secondary promotions afterward.",
      "artifacts": [
        "evidence/detail-mobile.png",
        "evidence/detail-probe.json"
      ],
      "effort": "medium",
      "pathId": "detail",
      "url": "https://simontokx.tv/watch/jAIAGjIA-cewek-live-abg-indonesia.html"
    },
    {
      "id": "F11",
      "severity": "high",
      "confidence": "high",
      "principleId": "support-core-task-success",
      "principleCheckId": "primary-flow-completion",
      "guidanceId": "loading empty error success retry undo cancel state",
      "guidanceCategory": "modern-web-guidance",
      "summary": "The representative player is blank with no recovery path.",
      "evidence": "The clipped player artifact is an empty grey 344x300 iframe from player.bokep234.club, has no iframe title, and the page shows no loading, error, retry, or alternate-source state.",
      "suggestedFix": "Use a titled responsive player, detect embed failure/timeouts, and show retry plus an alternate source or explanatory error.",
      "artifacts": [
        "evidence/player.png",
        "evidence/detail-probe.json"
      ],
      "effort": "medium",
      "pathId": "detail",
      "url": "https://simontokx.tv/watch/jAIAGjIA-cewek-live-abg-indonesia.html"
    },
    {
      "id": "F12",
      "severity": "medium",
      "confidence": "high",
      "principleId": "support-core-task-success",
      "principleCheckId": "clear-system-state-and-recovery",
      "guidanceId": "loading empty error success retry undo cancel state",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Failure states do not explain what happened.",
      "evidence": "The player remains blank without status or recovery. A deliberately missing URL returns HTTP 404 but renders a homepage-like grid with blank image boxes rather than a clear not-found message and next action.",
      "suggestedFix": "Create explicit player error and 404 templates with status text, retry/back controls, and links to safe destinations.",
      "artifacts": [
        "evidence/player.png",
        "evidence/404-mobile.png"
      ],
      "effort": "small",
      "pathId": "detail",
      "url": "https://simontokx.tv/watch/jAIAGjIA-cewek-live-abg-indonesia.html"
    },
    {
      "id": "F13",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "improve core web vitals LCP INP CLS",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Visual stability is outside the good Core Web Vitals range.",
      "evidence": "Lighthouse measured CLS 0.168 (needs improvement) with six shifts; the first-party mobile layout observer also recorded CLS 0.0218 after its observation window. LCP was 2.3s and TBT 20ms.",
      "suggestedFix": "Reserve dimensions for images and embeds, stabilize font metrics, and verify CLS below 0.1 across reloads.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/layout-mobile.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F14",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "visual-stability",
      "guidanceId": "prevent layout shift reserve space CLS aspect-ratio",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Thumbnail space is not reserved.",
      "evidence": "The images primitive found 25 of 34 images without explicit width/height; Lighthouse associated the load with six layout shifts and CLS 0.168.",
      "suggestedFix": "Set width/height or aspect-ratio on every thumbnail and embed before it loads.",
      "artifacts": [
        "evidence/images.json",
        "evidence/lighthouse.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F15",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "modern-web-guidance",
      "summary": "The critical path contains avoidable blocking and poorly cached resources.",
      "evidence": "HAR found four parser-inserted VeryHigh-priority stylesheets; Lighthouse estimated 1,150ms render-blocking savings, flagged font display and 14 cache-lifetime items.",
      "suggestedFix": "Inline only critical CSS, defer non-critical styles, self-host/subset fonts where useful, and apply long immutable caching to versioned assets.",
      "artifacts": [
        "evidence/network-summary.json",
        "evidence/lighthouse.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F16",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "identify-heavy-scripts",
      "guidanceCategory": "modern-web-guidance",
      "summary": "The page ships substantial unused code.",
      "evidence": "Lighthouse estimated 185KiB unused JavaScript and 60KiB unused CSS. HAR attributes about 281KiB to two Google tag scripts plus 90KiB to Webvisor.",
      "suggestedFix": "Remove unused CSS/JS and load analytics or menu dependencies only when needed.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/network-summary.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F17",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "guidanceCategory": "modern-web-guidance",
      "summary": "One interactive link lacks a discernible name and the player iframe is untitled.",
      "evidence": "Lighthouse failed link-name for one link; detail probing found the primary player iframe title is empty.",
      "suggestedFix": "Give every actionable link an accessible name and add a concise title to the player iframe.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/detail-probe.json"
      ],
      "effort": "small",
      "pathId": "detail",
      "url": "https://simontokx.tv/watch/jAIAGjIA-cewek-live-abg-indonesia.html"
    },
    {
      "id": "F18",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "accessibility",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Landmark and focus structure is incomplete.",
      "evidence": "Lighthouse reports no main landmark. DOM probing found no semantic landmarks and computed focus outlines were none across primary controls.",
      "suggestedFix": "Add header/nav/main/footer landmarks, keep one visible heading hierarchy, and implement visible :focus-visible styles in reading order.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/probe.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F19",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "zoom-reflow-targets-and-media",
      "guidanceId": "accessibility",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Many touch targets are too small and the embedded media lacks an accessible equivalent.",
      "evidence": "Lighthouse found 15 insufficient target-size instances; the probe measured menu and pagination controls below 44px. The cross-origin player iframe has no title and no visible caption/equivalent surfaced by the host page.",
      "suggestedFix": "Increase target size/spacing and expose player title, captions/transcript availability, and a fallback link.",
      "artifacts": [
        "evidence/lighthouse.json",
        "evidence/targets-theme.json",
        "evidence/detail-probe.json"
      ],
      "effort": "medium",
      "pathId": "detail",
      "url": "https://simontokx.tv/watch/jAIAGjIA-cewek-live-abg-indonesia.html"
    },
    {
      "id": "F20",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "sound-document-and-assets",
      "guidanceId": "html",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Image markup is incomplete.",
      "evidence": "Although doctype and UTF-8 charset are valid, 25 of 34 images lack dimensions and all 34 use legacy PNG/GIF/JPEG formats.",
      "suggestedFix": "Add intrinsic dimensions and picture/srcset-based modern formats while preserving correct aspect ratios.",
      "artifacts": [
        "evidence/images.json",
        "evidence/probe.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F21",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "browser-platform-hygiene",
      "guidanceId": "html",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Chrome reports deprecated API and inspector issues.",
      "evidence": "Lighthouse found three deprecation warnings and one DevTools Inspector issue; best-practices score was 0.58.",
      "suggestedFix": "Use the Lighthouse audit item details to replace deprecated calls, resolve the inspector issue, and retest BFCache/platform hygiene.",
      "artifacts": [
        "evidence/lighthouse.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F22",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Transport is HTTPS, but key security headers and cookie flags are missing.",
      "evidence": "Headers primitive found no CSP or HSTS. Cookie audit found six cookies flagged insecure by the primitive, including _ga cookies without Secure and all cookies using SameSite=None.",
      "suggestedFix": "Deploy a restrictive CSP, HSTS, and secure cookie settings; use Lax/Strict unless cross-site use is necessary.",
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F23",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Tracking and third-party exposure are disproportionate and begin by default.",
      "evidence": "Trackers primitive found 13 third-party origins plus Google Analytics and Yandex/Webvisor; HAR shows 50/54 requests and 1.69/1.71MB transferred are third-party.",
      "suggestedFix": "Remove redundant analytics, disable session-wide Webvisor by default, gate optional tracking on informed consent, and minimize retention/events.",
      "artifacts": [
        "evidence/trackers.json",
        "evidence/network-summary.json",
        "evidence/cookies.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F24",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "defensive-browser-policies",
      "guidanceId": "security",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Browser-enforced defenses are incomplete.",
      "evidence": "No CSP, HSTS, frame-ancestors/X-Frame-Options, or Permissions-Policy is present; only nosniff and Referrer-Policy: origin were observed.",
      "suggestedFix": "Add CSP including frame-ancestors, HSTS, Permissions-Policy, and a stricter referrer policy appropriate to this cross-origin media site.",
      "artifacts": [
        "evidence/headers.json"
      ],
      "effort": "small",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F25",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-resilient",
      "principleCheckId": "offline-and-installable",
      "guidanceId": "offline fallback service worker web app manifest installable pwa",
      "guidanceCategory": "modern-web-guidance",
      "summary": "The app-like video site registers a service worker but is not installable.",
      "evidence": "DOM inspection shows service-worker registration code, while the feature probe found no web app manifest and no controlling worker on first load.",
      "suggestedFix": "Add a valid manifest and test an intentional offline fallback; do not silently swallow registration errors.",
      "artifacts": [
        "evidence/dom.json",
        "evidence/probe.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F26",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-resilient",
      "principleCheckId": "network-and-http-failure-states",
      "guidanceId": "http error network failure timeout retry stale data resilient state",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Error routes and embed failures do not provide intentional recovery.",
      "evidence": "The missing URL returns HTTP 404 but presents homepage-like content with blank cards, while the representative player is a blank iframe with no retry or explanation.",
      "suggestedFix": "Render a clear 404 template and instrument media/network failure states with retry, timeout, and alternate-source controls.",
      "artifacts": [
        "evidence/404-mobile.png",
        "evidence/player.png"
      ],
      "effort": "small",
      "pathId": "detail",
      "url": "https://simontokx.tv/watch/jAIAGjIA-cewek-live-abg-indonesia.html"
    },
    {
      "id": "F27",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-trustworthy",
      "principleCheckId": "no-dark-patterns",
      "guidanceId": "honest defaults no dark patterns confirmshaming forced continuity consent",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Gambling promotions are not clearly disclosed as advertising and overwhelm the primary flow.",
      "evidence": "Four branded gambling banners appear before content on home and detail views, repeat again below the title, and are not visibly labelled “Advertisement”.",
      "suggestedFix": "Clearly label paid placements, reduce repetition, separate them from content cards, and keep the primary task visually dominant.",
      "artifacts": [
        "evidence/mobile.png",
        "evidence/detail-mobile.png"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F28",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "optimised-assets",
      "guidanceId": "deliver-optimized-decorative-images",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Assets are delivered wastefully.",
      "evidence": "Images audit found 34/34 legacy formats, 30 without srcset, and 25 below-fold images without native loading=lazy. Lighthouse estimates 410KiB image-delivery savings.",
      "suggestedFix": "Serve AVIF/WebP responsive sources with srcset/sizes, native lazy loading below the fold, and dimensions.",
      "artifacts": [
        "evidence/images.json",
        "evidence/lighthouse.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F29",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "no-wasteful-work",
      "guidanceId": "deprioritize-background-fetches",
      "guidanceCategory": "modern-web-guidance",
      "summary": "The page performs substantial non-core work on load.",
      "evidence": "50 of 54 requests are third-party; analytics, Webvisor, cookie synchronization, and both desktop/mobile ad assets load immediately.",
      "suggestedFix": "Remove redundant tracking and avoid fetching hidden breakpoint variants; conditionally load non-core scripts/assets after user intent or idle time.",
      "artifacts": [
        "evidence/network-summary.json",
        "evidence/trackers.json"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    },
    {
      "id": "F30",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "third-party-and-media-budget",
      "guidanceId": "efficient-background-processing",
      "guidanceCategory": "modern-web-guidance",
      "summary": "Third-party media dominates the page budget.",
      "evidence": "The 1.71MB load is 1.69MB third-party. Eight animated ad GIF requests transfer about 944KiB, and Google tag scripts transfer about 281KiB.",
      "suggestedFix": "Set a third-party/media budget, replace GIFs with efficient static or motion-aware assets, and defer optional analytics.",
      "artifacts": [
        "evidence/network-summary.json",
        "evidence/mobile.png"
      ],
      "effort": "medium",
      "pathId": "home",
      "url": "https://simontokx.tv/"
    }
  ],
  "taskList": [
    {
      "id": "T01",
      "title": "Put title and playable media before ads, with a clear play/loading state and secondary promotions afterward.",
      "priority": 1,
      "findingIds": [
        "F10"
      ],
      "guidanceId": "direct user attention primary action visual hierarchy task success",
      "status": "open"
    },
    {
      "id": "T02",
      "title": "Use a titled responsive player, detect embed failure/timeouts, and show retry plus an alternate source or explanatory error.",
      "priority": 2,
      "findingIds": [
        "F11"
      ],
      "guidanceId": "loading empty error success retry undo cancel state",
      "status": "open"
    },
    {
      "id": "T03",
      "title": "Deploy a restrictive CSP, HSTS, and secure cookie settings; use Lax/Strict unless cross-site use is necessary.",
      "priority": 3,
      "findingIds": [
        "F22"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T04",
      "title": "Remove redundant analytics, disable session-wide Webvisor by default, gate optional tracking on informed consent, and minimize retention/events.",
      "priority": 4,
      "findingIds": [
        "F23"
      ],
      "guidanceId": "privacy",
      "status": "open"
    },
    {
      "id": "T05",
      "title": "Reduce and clearly separate advertising, reserve the first viewport for the page purpose, and place the player/listing before secondary promotions.",
      "priority": 5,
      "findingIds": [
        "F05"
      ],
      "guidanceId": "avoid intrusive interstitial popup content first",
      "status": "open"
    },
    {
      "id": "T06",
      "title": "Remove repeated banners and update boilerplate from the primary visual path; give the listing/player the dominant area.",
      "priority": 6,
      "findingIds": [
        "F07"
      ],
      "guidanceId": "reduce visual clutter maximize content",
      "status": "open"
    },
    {
      "id": "T07",
      "title": "Provide a high-contrast :focus-visible indicator and enlarge controls/spacing to at least a comfortable 44px target where possible.",
      "priority": 7,
      "findingIds": [
        "F09"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T08",
      "title": "Add header/nav/main/footer landmarks, keep one visible heading hierarchy, and implement visible :focus-visible styles in reading order.",
      "priority": 8,
      "findingIds": [
        "F18"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T09",
      "title": "Increase target size/spacing and expose player title, captions/transcript availability, and a fallback link.",
      "priority": 9,
      "findingIds": [
        "F19"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T10",
      "title": "Add CSP including frame-ancestors, HSTS, Permissions-Policy, and a stricter referrer policy appropriate to this cross-origin media site.",
      "priority": 10,
      "findingIds": [
        "F24"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T11",
      "title": "Clearly label paid placements, reduce repetition, separate them from content cards, and keep the primary task visually dominant.",
      "priority": 11,
      "findingIds": [
        "F27"
      ],
      "guidanceId": "honest defaults no dark patterns confirmshaming forced continuity consent",
      "status": "open"
    },
    {
      "id": "T12",
      "title": "Serve AVIF/WebP responsive sources with srcset/sizes, native lazy loading below the fold, and dimensions.",
      "priority": 12,
      "findingIds": [
        "F28"
      ],
      "guidanceId": "deliver-optimized-decorative-images",
      "status": "open"
    },
    {
      "id": "T13",
      "title": "Remove redundant tracking and avoid fetching hidden breakpoint variants; conditionally load non-core scripts/assets after user intent or idle time.",
      "priority": 13,
      "findingIds": [
        "F29"
      ],
      "guidanceId": "deprioritize-background-fetches",
      "status": "open"
    },
    {
      "id": "T14",
      "title": "Set a third-party/media budget, replace GIFs with efficient static or motion-aware assets, and defer optional analytics.",
      "priority": 14,
      "findingIds": [
        "F30"
      ],
      "guidanceId": "efficient-background-processing",
      "status": "open"
    },
    {
      "id": "T15",
      "title": "Create explicit player error and 404 templates with status text, retry/back controls, and links to safe destinations.",
      "priority": 15,
      "findingIds": [
        "F12"
      ],
      "guidanceId": "loading empty error success retry undo cancel state",
      "status": "open"
    },
    {
      "id": "T16",
      "title": "Reserve dimensions for images and embeds, stabilize font metrics, and verify CLS below 0.1 across reloads.",
      "priority": 16,
      "findingIds": [
        "F13"
      ],
      "guidanceId": "improve core web vitals LCP INP CLS",
      "status": "open"
    },
    {
      "id": "T17",
      "title": "Set width/height or aspect-ratio on every thumbnail and embed before it loads.",
      "priority": 17,
      "findingIds": [
        "F14"
      ],
      "guidanceId": "prevent layout shift reserve space CLS aspect-ratio",
      "status": "open"
    },
    {
      "id": "T18",
      "title": "Inline only critical CSS, defer non-critical styles, self-host/subset fonts where useful, and apply long immutable caching to versioned assets.",
      "priority": 18,
      "findingIds": [
        "F15"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T19",
      "title": "Remove unused CSS/JS and load analytics or menu dependencies only when needed.",
      "priority": 19,
      "findingIds": [
        "F16"
      ],
      "guidanceId": "identify-heavy-scripts",
      "status": "open"
    },
    {
      "id": "T20",
      "title": "Give every actionable link an accessible name and add a concise title to the player iframe.",
      "priority": 20,
      "findingIds": [
        "F17"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T21",
      "title": "Add intrinsic dimensions and picture/srcset-based modern formats while preserving correct aspect ratios.",
      "priority": 21,
      "findingIds": [
        "F20"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T22",
      "title": "Use the Lighthouse audit item details to replace deprecated calls, resolve the inspector issue, and retest BFCache/platform hygiene.",
      "priority": 22,
      "findingIds": [
        "F21"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T23",
      "title": "Add a valid manifest and test an intentional offline fallback; do not silently swallow registration errors.",
      "priority": 23,
      "findingIds": [
        "F25"
      ],
      "guidanceId": "offline fallback service worker web app manifest installable pwa",
      "status": "open"
    },
    {
      "id": "T24",
      "title": "Render a clear 404 template and instrument media/network failure states with retry, timeout, and alternate-source controls.",
      "priority": 24,
      "findingIds": [
        "F26"
      ],
      "guidanceId": "http error network failure timeout retry stale data resilient state",
      "status": "open"
    },
    {
      "id": "T25",
      "title": "Declare color-scheme: light dark and use preference-driven surface/text colors with light-dark() or a prefers-color-scheme query.",
      "priority": 25,
      "findingIds": [
        "F01"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T26",
      "title": "Replace animated GIF ads with static alternatives for reduced motion and remove or shorten non-essential transitions in the reduce media query.",
      "priority": 26,
      "findingIds": [
        "F02"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T27",
      "title": "Add lightweight scroll position feedback or a compact sticky header that responds to scroll state without obscuring content.",
      "priority": 27,
      "findingIds": [
        "F03"
      ],
      "guidanceId": "shrinking-header-on-scroll",
      "status": "open"
    },
    {
      "id": "T28",
      "title": "Use popover/dialog semantics and CSS anchor positioning with fallback positions for transient UI.",
      "priority": 28,
      "findingIds": [
        "F04"
      ],
      "guidanceId": "position-aware-tooltips",
      "status": "open"
    },
    {
      "id": "T29",
      "title": "Use a semantic dialog or popover with declarative invocation, focus management, Escape handling, and light-dismiss.",
      "priority": 29,
      "findingIds": [
        "F06"
      ],
      "guidanceId": "declarative-dialog-popover-control",
      "status": "open"
    },
    {
      "id": "T30",
      "title": "Add container-type to reusable regions and adapt card/banner composition with @container queries while retaining a safe fallback.",
      "priority": 30,
      "findingIds": [
        "F08"
      ],
      "guidanceId": "size-aware-styling",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 4,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-18T22-25-16-414Z"
}
