{
  "url": "http://xxx18hot.com",
  "auditedAt": "2026-07-19T02:40:06.408Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Atomic coverage complete across seven representative paths. The age gate blocked visual access to underlying content but DOM, crawler, performance, network and route evidence remained available; the gate itself was audited as a primary-flow issue.",
  "page": {
    "appType": "mpa",
    "framework": "server-rendered custom HTML/CSS/JavaScript",
    "notes": "Adult media catalogue with listing, category, detail, localization, content-removal and server-error templates. A third-party closed-shadow age gate obscures primary pages."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "layout-metrics",
    "evaluate-probe",
    "trace",
    "har",
    "discoverability",
    "headers",
    "cookies",
    "trackers",
    "secrets",
    "images",
    "heap-summary",
    "lighthouse"
  ],
  "guidanceConsulted": [
    "dark-mode",
    "component-specific-light-dark-theme",
    "accessibility",
    "adapt-scrollbar-to-contrast-preferences",
    "same-document-transitions",
    "cross-document-transitions",
    "group-element-transitions",
    "faster-spa-view-transitions",
    "scrollytelling",
    "parallax-scroll-effects",
    "scroll-entry-exit-effects",
    "carousel-slide-effects",
    "physics-based-easing",
    "individual-transform-properties",
    "animate-element-entry-exit",
    "animate-to-from-top-layer",
    "animate-to-intrinsic-sizes",
    "dynamic-sibling-animations",
    "interactive-content-reveal",
    "pull-to-reveal",
    "swipe-to-remove",
    "shrinking-header-on-scroll",
    "scroll-progress-indicator",
    "scroll-position-aware-elements",
    "scroll-snap-realtime-feedback",
    "scroll-snap-state-sync",
    "scroll-target-on-load",
    "soft-edge-content-fade",
    "scrollability-affordance-hints",
    "anchor-positioning-tab-underline",
    "position-aware-tooltips",
    "interest-triggered-tooltips",
    "interest-triggered-action-previews",
    "directional-navigation-transitions",
    "carousel-snap-highlights",
    "navigation-drawer",
    "stack-drill-down",
    "persistent-app-tours",
    "persistent-toast-notifications",
    "light-dismiss-a-dialog",
    "platform-controls-dismiss-dialog",
    "declarative-dialog-popover-control",
    "animated-select-picker",
    "branded-select-styling",
    "brand-consistent-forms",
    "custom-select-picker-layouts",
    "rich-media-picker",
    "complex-shapes",
    "shaped-cutouts",
    "overflow-clipping-control",
    "visually-texture-content",
    "apply-webgl-shaders",
    "interactive-content-in-3d-scenes",
    "highlight-text-ranges",
    "prevent-text-wrapping",
    "customize-scrollbar-color-and-thickness",
    "export-html-media-from-canvas",
    "fluid-scaling",
    "calculate-with-intrinsic-sizes",
    "css-layout",
    "size-aware-styling",
    "content-based-styling",
    "child-state-based-styling",
    "design-token-reactivity",
    "dynamic-sibling-styling",
    "form-fields-automatically-fit-contents",
    "improve-text-layout-and-legibility",
    "forms",
    "accessible-error-announcement",
    "required-field-feedback",
    "validate-input-after-interaction",
    "identify-inp-causes",
    "schedule-tasks-by-priority",
    "optimize-preload-priority",
    "improve-next-page-load-performance",
    "interactions-in-complex-layouts",
    "performance",
    "visually-stable-font-fallbacks",
    "break-up-long-tasks",
    "identify-heavy-scripts",
    "optimize-script-priority",
    "defer-rendering-heavy-content",
    "defer-work-until-scroll-ends",
    "optimize-image-priority",
    "conditional-async-dependencies",
    "expose-canvas-content-to-browser-features",
    "move-dom-element-without-losing-state",
    "precise-text-alignment",
    "visually-stable-mixed-fonts",
    "css",
    "html",
    "reduce-style-repetition",
    "security",
    "privacy",
    "batch-analytics-events",
    "full-session-analytics",
    "calculate-total-foreground-time",
    "passkeys",
    "passkey-registration",
    "passkey-authentication",
    "passkey-reauthentication",
    "passkey-conditional-create",
    "passkey-management",
    "flicker-free-client-side-ab-testing",
    "consistent-cross-document-transitions",
    "stabilize-reactive-state",
    "resilient-context-menus-and-nested-dropdowns",
    "persistent-top-layer-ui",
    "detect-initial-visibility-state",
    "sequence-distributed-events",
    "translator",
    "language-detection",
    "support-global-calendar-systems",
    "capture-location-agnostic-data",
    "format-human-readable-durations",
    "manage-recurring-intervals",
    "calculate-event-differentials",
    "coordinate-global-events",
    "model-partial-time-concepts",
    "search-hidden-content",
    "select-menu-interaction",
    "style-parent-with-has",
    "autofill-address-form",
    "autofill-payment-form",
    "autofill-sign-in-form",
    "autofill-sign-up-form",
    "autofill-highlight-inputs",
    "deliver-optimized-decorative-images",
    "resolution-optimized-pseudo-elements",
    "deprioritize-background-fetches",
    "efficient-background-processing",
    "webmcp",
    "agentic-forms",
    "agentic-javascript-tools",
    "language-model",
    "summarizer"
  ],
  "artifacts": [
    {
      "type": "screenshot",
      "path": "evidence/abuse-mobile.png",
      "caption": "Audit evidence: abuse mobile.png",
      "condition": "mobile viewport",
      "findingIds": [
        "F22"
      ]
    },
    {
      "type": "other",
      "path": "evidence/age-gate-elements.json",
      "caption": "Audit evidence: age gate elements.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/age-gate-host-click.json",
      "caption": "Audit evidence: age gate host click.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/age-gate-interaction.json",
      "caption": "Audit evidence: age gate interaction.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/age-gate-probe.json",
      "caption": "Audit evidence: age gate probe.json",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/arabic-mobile.png",
      "caption": "Audit evidence: arabic mobile.png",
      "condition": "mobile viewport",
      "findingIds": [
        "F34"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/categories-mobile.png",
      "caption": "Audit evidence: categories mobile.png",
      "condition": "mobile viewport",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/categories-recon.json",
      "caption": "Audit evidence: categories recon.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/cookies.json",
      "caption": "Audit evidence: cookies.json",
      "findingIds": [
        "F29",
        "F30"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/detail-desktop.png",
      "caption": "Audit evidence: detail desktop.png",
      "findingIds": [
        "F13"
      ]
    },
    {
      "type": "other",
      "path": "evidence/detail-metadata-media.json",
      "caption": "Audit evidence: detail metadata media.json",
      "findingIds": [
        "F23",
        "F28"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-detail-crawler.png",
      "caption": "Audit evidence: discover detail crawler.png",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-detail-rendered.png",
      "caption": "Audit evidence: discover detail rendered.png",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/discover-detail.json",
      "caption": "Audit evidence: discover detail.json",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-home-crawler.png",
      "caption": "Audit evidence: discover home crawler.png",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-home-rendered.png",
      "caption": "Audit evidence: discover home rendered.png",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/discover-home.json",
      "caption": "Audit evidence: discover home.json",
      "findingIds": [
        "F21"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-videos-crawler.png",
      "caption": "Audit evidence: discover videos crawler.png",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/discover-videos-rendered.png",
      "caption": "Audit evidence: discover videos rendered.png",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/discover-videos.json",
      "caption": "Audit evidence: discover videos.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/document-focus-probe.json",
      "caption": "Audit evidence: document focus probe.json",
      "findingIds": [
        "F12",
        "F19",
        "F21",
        "F23",
        "F27"
      ]
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "Audit evidence: headers.json",
      "findingIds": [
        "F29",
        "F31"
      ]
    },
    {
      "type": "heap",
      "path": "evidence/heap-baseline.heapsnapshot",
      "caption": "Audit evidence: heap baseline.heapsnapshot",
      "findingIds": []
    },
    {
      "type": "heap",
      "path": "evidence/heap-post-valid.heapsnapshot",
      "caption": "Audit evidence: heap post valid.heapsnapshot",
      "findingIds": []
    },
    {
      "type": "heap",
      "path": "evidence/heap-post.heapsnapshot",
      "caption": "Audit evidence: heap post.heapsnapshot",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/hit-test.json",
      "caption": "Audit evidence: hit test.json",
      "findingIds": [
        "F09",
        "F14",
        "F32"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-dark-reduced.png",
      "caption": "Audit evidence: home dark reduced.png",
      "condition": "prefers-color-scheme: dark and reduced motion",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-desktop.png",
      "caption": "Audit evidence: home desktop.png",
      "findingIds": [
        "F01",
        "F08",
        "F13",
        "F15",
        "F36",
        "F39"
      ]
    },
    {
      "type": "dom",
      "path": "evidence/home-dom.json",
      "caption": "Audit evidence: home dom.json",
      "findingIds": [
        "F02",
        "F05",
        "F06",
        "F11"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/home-layout-mobile.json",
      "caption": "Audit evidence: home layout mobile.json",
      "condition": "mobile viewport",
      "findingIds": [
        "F05",
        "F10"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/home-mobile.png",
      "caption": "Audit evidence: home mobile.png",
      "condition": "mobile viewport",
      "findingIds": [
        "F08",
        "F10",
        "F15"
      ]
    },
    {
      "type": "other",
      "path": "evidence/home-summary.json",
      "caption": "Audit evidence: home summary.json",
      "findingIds": [
        "F17",
        "F26",
        "F30",
        "F32",
        "F38",
        "F39"
      ]
    },
    {
      "type": "trace-summary",
      "path": "evidence/home-trace-summary.json",
      "caption": "Audit evidence: home trace summary.json",
      "findingIds": [
        "F16"
      ]
    },
    {
      "type": "trace",
      "path": "evidence/home-trace.json",
      "caption": "Audit evidence: home trace.json",
      "findingIds": []
    },
    {
      "type": "har",
      "path": "evidence/home.har",
      "caption": "Audit evidence: home.har",
      "findingIds": [
        "F17"
      ]
    },
    {
      "type": "other",
      "path": "evidence/i18n-probe.json",
      "caption": "Audit evidence: i18n probe.json",
      "findingIds": [
        "F34",
        "F35"
      ]
    },
    {
      "type": "other",
      "path": "evidence/images-videos.json",
      "caption": "Audit evidence: images videos.json",
      "findingIds": [
        "F25",
        "F37",
        "F38"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-home.json",
      "caption": "Audit evidence: lighthouse home.json",
      "findingIds": []
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-summary.json",
      "caption": "Audit evidence: lighthouse summary.json",
      "findingIds": [
        "F03",
        "F09",
        "F14",
        "F16",
        "F18",
        "F19",
        "F20",
        "F24",
        "F26",
        "F27",
        "F37"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-videos.json",
      "caption": "Audit evidence: lighthouse videos.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/memory-series.json",
      "caption": "Audit evidence: memory series.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/modern-css-probe.json",
      "caption": "Audit evidence: modern css probe.json",
      "findingIds": [
        "F02",
        "F04",
        "F07",
        "F11"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/not-found-mobile.png",
      "caption": "Audit evidence: not found mobile.png",
      "condition": "mobile viewport",
      "findingIds": [
        "F33"
      ]
    },
    {
      "type": "other",
      "path": "evidence/not-found-probe.json",
      "caption": "Audit evidence: not found probe.json",
      "findingIds": [
        "F33"
      ]
    },
    {
      "type": "other",
      "path": "evidence/platform-probe.json",
      "caption": "Audit evidence: platform probe.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/recon.json",
      "caption": "Audit evidence: recon.json",
      "findingIds": [
        "F04",
        "F07",
        "F27"
      ]
    },
    {
      "type": "other",
      "path": "evidence/secrets.json",
      "caption": "Audit evidence: secrets.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "Audit evidence: trackers.json",
      "findingIds": [
        "F30",
        "F36"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/videos-desktop.png",
      "caption": "Audit evidence: videos desktop.png",
      "findingIds": [
        "F08"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/videos-layout.json",
      "caption": "Audit evidence: videos layout.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/videos-links.json",
      "caption": "Audit evidence: videos links.json",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/videos-recon.json",
      "caption": "Audit evidence: videos recon.json",
      "findingIds": []
    }
  ],
  "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": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Default and dark-emulated screenshots are byte-identical at 150,560 bytes, and CSS inspection found no prefers-color-scheme rule or color-scheme declaration.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dark-reduced.png"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The reduced-motion probe found no prefers-reduced-motion rule. Existing 0.3s to 0.8s transitions remain declared for menus and navigation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/modern-css-probe.json",
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Lighthouse reported a failing color-contrast audit on both the home and videos templates.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "CSS inspection found no view-transition rules, while the site exposes many MPA routes and JS-toggled menu states.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/modern-css-probe.json",
        "evidence/recon.json"
      ],
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon of representative routes and interaction inventory.",
      "evidence": "No parallax, scrollytelling, reveal, or other scroll-linked animation was present on the representative templates.",
      "reason": "No parallax, scrollytelling, reveal, or other scroll-linked animation was present on the representative templates."
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon of representative routes and interaction inventory.",
      "evidence": "No swipe, pull, carousel gesture, or other gesture-driven control was present to evaluate.",
      "reason": "No swipe, pull, carousel gesture, or other gesture-driven control was present to evaluate."
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The home document is 13,737 CSS px tall; CSS inspection found no scroll-state query or progress treatment, only a basic fixed scroll-to-top link.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F05"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Rendered CSS positions language, category, and sorting dropdowns with absolute left/right offsets and contains no anchor positioning or fallback positions.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json"
      ],
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The route inventory and CSS show ordinary links and abrupt state toggles, with no highlight, directional transition, or focus cue after navigation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/modern-css-probe.json"
      ],
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Desktop and mobile screenshots show the whole page blurred beneath a non-dismissible AgeVerif prompt before any interaction.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/videos-desktop.png"
      ],
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "DOM queries found no dialog or role=dialog. Hit testing returned a closed AGEVERIF-CHECKER custom element, and Lighthouse reported a malformed accessibility tree.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/hit-test.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The home page renders 13,737 CSS px of categories and recommended-site chrome, while the first viewport is entirely occupied by the age gate.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/home-layout-mobile.json"
      ],
      "findingIds": [
        "F10"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "Mobile layout measurement on home reported 360px scrollWidth for a 360px viewport, zero horizontal overflow, and a viewport meta tag.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/home-mobile.png"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "CSS inspection shows many viewport media queries and no @container rule, although card variants are reused at multiple widths.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/modern-css-probe.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The focus probe found the search input and button with outline-style none; several nav targets are about 29 to 33 CSS px high.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/document-focus-probe.json"
      ],
      "findingIds": [
        "F12"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Every main template opens on a generic AgeVerif prompt over blurred content, so users cannot evaluate the page purpose before pressing Start.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/detail-desktop.png"
      ],
      "findingIds": [
        "F13"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The visible flow stops at a closed-shadow AgeVerif element; agent and DOM probes cannot identify or activate its Start control, and Lighthouse says the accessibility tree is malformed.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/hit-test.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F14"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Screenshots show only a Start action and generic copy. No alternative or recovery control is visible on desktop or mobile.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png"
      ],
      "findingIds": [
        "F15"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Mobile Lighthouse measured LCP at 4.8s on home and 5.8s on videos, both above the 2.5s good threshold.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json"
      ],
      "findingIds": [
        "F16"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "Layout and Lighthouse evidence reported CLS 0 on home and 0.023 on videos, both in the good range.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "The trace reported zero long tasks and 0ms total blocking time; Lighthouse also measured 0ms TBT on home and videos.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/lighthouse-summary.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The HAR recorded 160 requests and 2.77 MB, uncompressed HTML/CSS/JS, render-blocking resources, and HTTP to HTTPS to HTTP 307 redirects.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home.har"
      ],
      "findingIds": [
        "F17"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Lighthouse estimated 21 to 22 KiB unused CSS and 37 to 76 KiB unused JavaScript across home and videos.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F18"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The search input has no associated label, the custom age gate exposes no dialog semantics, and Lighthouse failed the label and accessibility-tree audits.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/document-focus-probe.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F19"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Lighthouse failed the color-contrast audit on both home and videos.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F20"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "All main templates have zero h1 elements; the home page has no nav landmark, and search controls suppress focus outlines.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/document-focus-probe.json",
        "evidence/discover-home.json"
      ],
      "findingIds": [
        "F21"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The 360px screenshot renders the removal instructions as extremely small centered text occupying only a narrow strip at the top.",
      "pathIds": [
        "removal"
      ],
      "artifacts": [
        "evidence/abuse-mobile.png"
      ],
      "findingIds": [
        "F22"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The focus probe measured multiple nav/search targets below 44 CSS px high; the detail probe found video elements with zero caption tracks.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/document-focus-probe.json",
        "evidence/detail-metadata-media.json"
      ],
      "findingIds": [
        "F23"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Lighthouse failed errors-in-console on both the home and videos templates.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F24"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The images primitive found all 100 video thumbnails missing width/height and srcset, all in legacy JPEG, and 96 below-fold images not lazy-loaded.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images-videos.json"
      ],
      "findingIds": [
        "F25"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "Lighthouse failed inspector-issues on both templates, and the HAR recorded an aborted statistics request plus a favicon 404.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F26"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "Home, videos, and detail pages expose descriptive titles and meta descriptions in raw server HTML.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/discover-home.json",
        "evidence/discover-videos.json",
        "evidence/detail-metadata-media.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "Representative routes use real href links, robots.txt allows crawling, viewport meta is present, and raw HTML contains the links and content.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/document-focus-probe.json",
        "evidence/discover-home.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "No canonical link is present, /sitemap.xml returns a 404 page, Lighthouse reports invalid hreflang, and transport redirects loop between HTTP and HTTPS.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/recon.json",
        "evidence/document-focus-probe.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F27"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The representative detail page has no JSON-LD and no Open Graph tags despite representing a video entity.",
      "pathIds": [
        "detail"
      ],
      "artifacts": [
        "evidence/detail-metadata-media.json"
      ],
      "findingIds": [
        "F28"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The headers primitive reports HTTP, no CSP, HSTS, nosniff, framing protection, Referrer-Policy, or Permissions-Policy; all six cookies lack Secure.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "findingIds": [
        "F29"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The tracker probe saw five third-party origins including age verification and ad infrastructure; a 400-day __suvt cookie and SameSite=None cookies are set on load.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/trackers.json",
        "evidence/cookies.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F30"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "No geolocation or notification request appeared on load, and the site exposes no authentication flow where passkeys would apply.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The headers primitive found no HSTS, clickjacking protection, CSP, Referrer-Policy, Permissions-Policy, or nosniff.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json"
      ],
      "findingIds": [
        "F31"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "Discoverability captures found 100% raw-HTML content coverage on home and videos and 92% on detail, with no JS shell.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/discover-home.json",
        "evidence/discover-videos.json",
        "evidence/discover-detail.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The gate is a closed custom element and its statistics request aborts; menus use manually positioned absolute dropdowns without modern fallback positioning.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/hit-test.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F32"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon of representative routes and interaction inventory.",
      "evidence": "This is a server-rendered media catalogue rather than an app-like installed experience; an offline media experience is not a proportionate expectation.",
      "reason": "This is a server-rendered media catalogue rather than an app-like installed experience; an offline media experience is not a proportionate expectation."
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "A representative missing URL displays only “404 Not Found nginx” with no navigation, search, explanation, or recovery link.",
      "pathIds": [
        "not-found"
      ],
      "artifacts": [
        "evidence/not-found-mobile.png",
        "evidence/not-found-probe.json"
      ],
      "findingIds": [
        "F33"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The Arabic page declares lang=ar but no dir, while CSS inspection counted 46 physical left/right rules and only 10 logical-property rules.",
      "pathIds": [
        "arabic"
      ],
      "artifacts": [
        "evidence/i18n-probe.json",
        "evidence/arabic-mobile.png"
      ],
      "findingIds": [
        "F34"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The Arabic route translates labels but displays category counts with the same Western formatting as English and exposes no evidence of locale-aware number formatting.",
      "pathIds": [
        "arabic"
      ],
      "artifacts": [
        "evidence/i18n-probe.json"
      ],
      "findingIds": [
        "F35"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon of representative routes and interaction inventory.",
      "evidence": "No dates, event times, schedules, or time-zone-sensitive concepts were present on the representative routes.",
      "reason": "No dates, event times, schedules, or time-zone-sensitive concepts were present on the representative routes."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The gate loads with only Start, no leave option, no privacy link, no provider explanation, while advertising and age-verification requests already run.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/trackers.json"
      ],
      "findingIds": [
        "F36"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon of representative routes and interaction inventory.",
      "evidence": "The representative site exposes search/navigation but no user-submitted validated form with required fields.",
      "reason": "The representative site exposes search/navigation but no user-submitted validated form with required fields."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon of representative routes and interaction inventory.",
      "evidence": "No address, payment, sign-in, sign-up, or other personal-data form requiring autofill assistance is present.",
      "reason": "No address, payment, sign-in, sign-up, or other personal-data form requiring autofill assistance is present."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon of representative routes and interaction inventory.",
      "evidence": "No checkout, subscription, authentication, consent-management, or account-management flow was exposed.",
      "reason": "No checkout, subscription, authentication, consent-management, or account-management flow was exposed."
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "All 100 inspected thumbnails are JPEG with no srcset; all lack dimensions, and Lighthouse estimates 588 to 815 KiB of image savings.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images-videos.json",
        "evidence/lighthouse-summary.json"
      ],
      "findingIds": [
        "F37"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The images primitive found 96 below-fold thumbnails without loading=lazy; the home HAR fetched 148 images and 2.53 MB of image transfers.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/images-videos.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F38"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "Cross-template visual, DOM, CDP and/or Lighthouse evidence matched to this atomic check.",
      "evidence": "The HAR reports 129 third-party requests and 2.28 MB classified third-party, while the only visible first interaction is an age gate.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-desktop.png"
      ],
      "findingIds": [
        "F39"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon of representative routes and interaction inventory.",
      "evidence": "No declared agent-facing intent or transactional agent surface exists; this emerging capability is a legitimate opportunity rather than a requirement here.",
      "reason": "No declared agent-facing intent or transactional agent surface exists; this emerging capability is a legitimate opportunity rather than a requirement here."
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon of representative routes and interaction inventory.",
      "evidence": "No experience need for on-device inference was identified, so built-in AI is not applicable.",
      "reason": "No experience need for on-device inference was identified, so built-in AI is not applicable."
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "A same-session series across 10 category open/close cycles remained exactly 1,182,893 used heap bytes and 2,693 DOM nodes at every sample.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/memory-series.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "Heap snapshots reported about 9.2 to 13.4 MB self size, and the same-session runtime sample used 1.18 MB JS heap with 2,693 DOM elements, proportionate to the catalogue.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.heapsnapshot",
        "evidence/heap-post-valid.heapsnapshot",
        "evidence/memory-series.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "high",
      "method": "Direct review of representative rendered templates and check-specific probes.",
      "evidence": "Ten repeated menu cycles left DOM node count and JS heap unchanged at every same-session sample, with no active animations or observable accumulation.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/memory-series.json"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01",
        "F02",
        "F03"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F05",
        "F06",
        "F07"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F08",
        "F09",
        "F10"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F11",
        "F12"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F13",
        "F14",
        "F15"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F16",
        "F17",
        "F18"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F19",
        "F20",
        "F21",
        "F22",
        "F23"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F24",
        "F25",
        "F26"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F27",
        "F28"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F29",
        "F30",
        "F31"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F32",
        "F33"
      ]
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F34",
        "F35"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F36"
      ]
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F37",
        "F38",
        "F39"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "No declared agent-facing intent or transactional agent surface exists; this emerging capability is a legitimate opportunity rather than a requirement here. No experience need for on-device inference was identified, so built-in AI is not applicable."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "pass",
      "findingIds": []
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage and dense category/recommendation template, highest-risk entry surface.",
      "url": "http://xxx18hot.com/",
      "conditions": [
        "desktop",
        "360x800",
        "dark preference",
        "reduced motion",
        "keyboard focus",
        "network and performance"
      ],
      "result": "issues"
    },
    {
      "id": "videos",
      "description": "Primary video listing archetype with 100 thumbnail cards and pagination.",
      "url": "http://xxx18hot.com/videos/",
      "conditions": [
        "desktop",
        "Lighthouse",
        "image audit"
      ],
      "result": "issues"
    },
    {
      "id": "categories",
      "description": "Category index archetype and mobile navigation behavior.",
      "url": "http://xxx18hot.com/categories/",
      "conditions": [
        "360x800"
      ],
      "result": "issues"
    },
    {
      "id": "detail",
      "description": "Representative video detail and media playback metadata surface.",
      "url": "http://xxx18hot.com/c/?g=98081",
      "conditions": [
        "desktop",
        "crawler without JavaScript"
      ],
      "result": "issues"
    },
    {
      "id": "removal",
      "description": "Content-removal/legal support path representing a critical trust and help flow.",
      "url": "http://xxx18hot.com/abuse.html",
      "conditions": [
        "360x800"
      ],
      "result": "issues"
    },
    {
      "id": "arabic",
      "description": "Arabic localized route representing internationalized templates and RTL behavior.",
      "url": "http://xxx18hot.com/ar/",
      "conditions": [
        "360x800",
        "language and direction probe"
      ],
      "result": "issues"
    },
    {
      "id": "not-found",
      "description": "Representative HTTP failure state and recovery path.",
      "url": "http://xxx18hot.com/definitely-not-a-real-page",
      "conditions": [
        "360x800"
      ],
      "result": "issues"
    }
  ],
  "findings": [
    {
      "id": "F01",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "severity": "medium",
      "confidence": "high",
      "summary": "The fixed palette does not respond to the user color-scheme preference",
      "evidence": "Default and dark-emulated screenshots are byte-identical at 150,560 bytes, and CSS inspection found no prefers-color-scheme rule or color-scheme declaration.",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-dark-reduced.png"
      ],
      "suggestedFix": "Add color-scheme support and theme tokens using prefers-color-scheme or light-dark().",
      "effort": "small"
    },
    {
      "id": "F02",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-reduced-motion",
      "guidanceId": "accessibility",
      "severity": "low",
      "confidence": "high",
      "summary": "Motion preferences are not represented in the stylesheet",
      "evidence": "The reduced-motion probe found no prefers-reduced-motion rule. Existing 0.3s to 0.8s transitions remain declared for menus and navigation.",
      "artifacts": [
        "evidence/modern-css-probe.json",
        "evidence/home-dom.json"
      ],
      "suggestedFix": "Disable or shorten non-essential transitions inside prefers-reduced-motion: reduce.",
      "effort": "small"
    },
    {
      "id": "F03",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-contrast",
      "guidanceId": "adapt-scrollbar-to-contrast-preferences",
      "severity": "medium",
      "confidence": "high",
      "summary": "Some text and controls fail minimum contrast",
      "evidence": "Lighthouse reported a failing color-contrast audit on both the home and videos templates.",
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Adjust foreground and background design tokens to meet WCAG contrast and verify in forced-colors.",
      "effort": "small"
    },
    {
      "id": "F04",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "cross-document-transitions",
      "severity": "low",
      "confidence": "high",
      "summary": "Route and state changes are abrupt",
      "evidence": "CSS inspection found no view-transition rules, while the site exposes many MPA routes and JS-toggled menu states.",
      "artifacts": [
        "evidence/modern-css-probe.json",
        "evidence/recon.json"
      ],
      "suggestedFix": "Use cross-document View Transitions for route changes and same-document transitions for state changes, with reduced-motion handling.",
      "effort": "small"
    },
    {
      "id": "F05",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "scroll-state-aware-chrome",
      "guidanceId": "scroll-progress-indicator",
      "severity": "low",
      "confidence": "high",
      "summary": "Long pages provide little state-aware orientation",
      "evidence": "The home document is 13,737 CSS px tall; CSS inspection found no scroll-state query or progress treatment, only a basic fixed scroll-to-top link.",
      "artifacts": [
        "evidence/home-layout-mobile.json",
        "evidence/home-dom.json"
      ],
      "suggestedFix": "Add a lightweight scroll progress or scroll-state-aware header treatment.",
      "effort": "small"
    },
    {
      "id": "F06",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "anchored-positioning",
      "guidanceId": "position-aware-tooltips",
      "severity": "low",
      "confidence": "high",
      "summary": "Dropdowns use manually positioned absolute layouts",
      "evidence": "Rendered CSS positions language, category, and sorting dropdowns with absolute left/right offsets and contains no anchor positioning or fallback positions.",
      "artifacts": [
        "evidence/home-dom.json"
      ],
      "suggestedFix": "Use CSS anchor positioning with position-try fallbacks for transient menus.",
      "effort": "small"
    },
    {
      "id": "F07",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "provide-guided-navigation",
      "principleCheckId": "directs-attention",
      "guidanceId": "directional-navigation-transitions",
      "severity": "low",
      "confidence": "high",
      "summary": "Navigation changes do not cue the destination",
      "evidence": "The route inventory and CSS show ordinary links and abrupt state toggles, with no highlight, directional transition, or focus cue after navigation.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/modern-css-probe.json"
      ],
      "suggestedFix": "Preserve focus and add restrained directional or highlight cues for route and in-page changes.",
      "effort": "small"
    },
    {
      "id": "F08",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "no-intrusive-interruptions",
      "guidanceId": "light-dismiss-a-dialog",
      "severity": "high",
      "confidence": "high",
      "summary": "A third-party age gate obscures every audited content page on load",
      "evidence": "Desktop and mobile screenshots show the whole page blurred beneath a non-dismissible AgeVerif prompt before any interaction.",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png",
        "evidence/videos-desktop.png"
      ],
      "suggestedFix": "Keep required age assurance content-first: explain the process, offer privacy and exit choices, use an accessible modal, and avoid loading unrelated ads first.",
      "effort": "medium"
    },
    {
      "id": "F09",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "semantic-dismissible-primitives",
      "guidanceId": "declarative-dialog-popover-control",
      "severity": "high",
      "confidence": "high",
      "summary": "The age gate is an opaque custom element rather than an accessible dialog",
      "evidence": "DOM queries found no dialog or role=dialog. Hit testing returned a closed AGEVERIF-CHECKER custom element, and Lighthouse reported a malformed accessibility tree.",
      "artifacts": [
        "evidence/hit-test.json",
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Implement the gate with a native dialog or equivalent exposed semantics, focus trapping, labelled controls, and an explicit exit.",
      "effort": "medium"
    },
    {
      "id": "F10",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "reduced-chrome",
      "guidanceId": "overflow-clipping-control",
      "severity": "medium",
      "confidence": "high",
      "summary": "Dense tags, partner promotions, and the gate crowd out primary content",
      "evidence": "The home page renders 13,737 CSS px of categories and recommended-site chrome, while the first viewport is entirely occupied by the age gate.",
      "artifacts": [
        "evidence/home-mobile.png",
        "evidence/home-layout-mobile.json"
      ],
      "suggestedFix": "Reduce repeated category and partner blocks, prioritize primary content, and defer secondary promotions.",
      "effort": "small"
    },
    {
      "id": "F11",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "component-level-responsiveness",
      "guidanceId": "size-aware-styling",
      "severity": "low",
      "confidence": "high",
      "summary": "Reusable cards only respond to global viewport breakpoints",
      "evidence": "CSS inspection shows many viewport media queries and no @container rule, although card variants are reused at multiple widths.",
      "artifacts": [
        "evidence/home-dom.json",
        "evidence/modern-css-probe.json"
      ],
      "suggestedFix": "Give reusable card and navigation components containment and container-query adaptations.",
      "effort": "small"
    },
    {
      "id": "F12",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "input-modality-aware",
      "guidanceId": "accessibility",
      "severity": "medium",
      "confidence": "high",
      "summary": "Keyboard focus and target sizing are inconsistent",
      "evidence": "The focus probe found the search input and button with outline-style none; several nav targets are about 29 to 33 CSS px high.",
      "artifacts": [
        "evidence/document-focus-probe.json"
      ],
      "suggestedFix": "Provide visible :focus-visible styles and make primary interactive targets at least 44 by 44 CSS px where practical.",
      "effort": "small"
    },
    {
      "id": "F13",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "support-core-task-success",
      "principleCheckId": "clear-purpose-and-primary-action",
      "guidanceId": "scrollability-affordance-hints",
      "severity": "high",
      "confidence": "high",
      "summary": "The first viewport does not explain the site or content choice",
      "evidence": "Every main template opens on a generic AgeVerif prompt over blurred content, so users cannot evaluate the page purpose before pressing Start.",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/detail-desktop.png"
      ],
      "suggestedFix": "Explain the site purpose and age-check consequences in the gate, with clear continue and leave actions.",
      "effort": "medium"
    },
    {
      "id": "F14",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "support-core-task-success",
      "principleCheckId": "primary-flow-completion",
      "guidanceId": "custom-button-actions",
      "severity": "high",
      "confidence": "high",
      "summary": "The primary content flow depends on an inaccessible third-party gate",
      "evidence": "The visible flow stops at a closed-shadow AgeVerif element; agent and DOM probes cannot identify or activate its Start control, and Lighthouse says the accessibility tree is malformed.",
      "artifacts": [
        "evidence/hit-test.json",
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Replace or configure the gate so its controls are in the accessibility tree and the continue path works predictably for keyboard and assistive technology users.",
      "effort": "medium"
    },
    {
      "id": "F15",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "support-core-task-success",
      "principleCheckId": "clear-system-state-and-recovery",
      "guidanceId": "persistent-toast-notifications",
      "severity": "high",
      "confidence": "high",
      "summary": "The gate offers no visible cancel, leave, privacy, or recovery path",
      "evidence": "Screenshots show only a Start action and generic copy. No alternative or recovery control is visible on desktop or mobile.",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/home-mobile.png"
      ],
      "suggestedFix": "Add clear leave, privacy, help, and retry states, and preserve context if verification fails.",
      "effort": "medium"
    },
    {
      "id": "F16",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "severity": "high",
      "confidence": "high",
      "summary": "Largest Contentful Paint is slow on primary templates",
      "evidence": "Mobile Lighthouse measured LCP at 4.8s on home and 5.8s on videos, both above the 2.5s good threshold.",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-trace-summary.json"
      ],
      "suggestedFix": "Prioritize the LCP asset, reduce initial image volume and redirects, and defer below-fold content.",
      "effort": "medium"
    },
    {
      "id": "F17",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-image-priority",
      "severity": "high",
      "confidence": "high",
      "summary": "Resource delivery is heavy and includes a redirect loop",
      "evidence": "The HAR recorded 160 requests and 2.77 MB, uncompressed HTML/CSS/JS, render-blocking resources, and HTTP to HTTPS to HTTP 307 redirects.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home.har"
      ],
      "suggestedFix": "Serve one canonical HTTPS response, compress text, shorten blocking chains, and apply useful cache and priority hints.",
      "effort": "medium"
    },
    {
      "id": "F18",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "identify-heavy-scripts",
      "severity": "medium",
      "confidence": "high",
      "summary": "The page ships avoidable unused CSS and JavaScript",
      "evidence": "Lighthouse estimated 21 to 22 KiB unused CSS and 37 to 76 KiB unused JavaScript across home and videos.",
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Split template-specific assets and load third-party scripts only when required.",
      "effort": "small"
    },
    {
      "id": "F19",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Search and gate controls lack reliable accessible names and semantics",
      "evidence": "The search input has no associated label, the custom age gate exposes no dialog semantics, and Lighthouse failed the label and accessibility-tree audits.",
      "artifacts": [
        "evidence/document-focus-probe.json",
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Label the search field, expose gate controls through native semantics, and verify names and roles with axe or Lighthouse.",
      "effort": "medium"
    },
    {
      "id": "F20",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-inclusive",
      "principleCheckId": "sufficient-contrast",
      "guidanceId": "accessibility",
      "severity": "medium",
      "confidence": "high",
      "summary": "Text and UI contrast is insufficient",
      "evidence": "Lighthouse failed the color-contrast audit on both home and videos.",
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Update color tokens to meet WCAG AA in default and high-contrast conditions.",
      "effort": "small"
    },
    {
      "id": "F21",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Heading, navigation, and focus structure is weak",
      "evidence": "All main templates have zero h1 elements; the home page has no nav landmark, and search controls suppress focus outlines.",
      "artifacts": [
        "evidence/document-focus-probe.json",
        "evidence/discover-home.json"
      ],
      "suggestedFix": "Add one descriptive h1 per page, semantic nav landmarks, and visible focus styles in logical DOM order.",
      "effort": "medium"
    },
    {
      "id": "F22",
      "pathId": "removal",
      "url": "http://xxx18hot.com/abuse.html",
      "principleId": "be-inclusive",
      "principleCheckId": "legible-text",
      "guidanceId": "improve-text-layout-and-legibility",
      "severity": "medium",
      "confidence": "high",
      "summary": "The removal page is not legible on mobile",
      "evidence": "The 360px screenshot renders the removal instructions as extremely small centered text occupying only a narrow strip at the top.",
      "artifacts": [
        "evidence/abuse-mobile.png"
      ],
      "suggestedFix": "Use a readable base font, constrained line length, left-aligned prose, and fluid spacing.",
      "effort": "small"
    },
    {
      "id": "F23",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-inclusive",
      "principleCheckId": "zoom-reflow-targets-and-media",
      "guidanceId": "accessibility",
      "severity": "high",
      "confidence": "high",
      "summary": "Small targets and uncaptained video reduce inclusive access",
      "evidence": "The focus probe measured multiple nav/search targets below 44 CSS px high; the detail probe found video elements with zero caption tracks.",
      "artifacts": [
        "evidence/document-focus-probe.json",
        "evidence/detail-metadata-media.json"
      ],
      "suggestedFix": "Increase target sizes, retain zoom and reflow support, and add captions or equivalent transcripts to meaningful media.",
      "effort": "medium"
    },
    {
      "id": "F24",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "follow-best-practices",
      "principleCheckId": "no-console-errors",
      "guidanceId": "html",
      "severity": "medium",
      "confidence": "high",
      "summary": "Browser errors are logged during load",
      "evidence": "Lighthouse failed errors-in-console on both the home and videos templates.",
      "artifacts": [
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Resolve each runtime and network console error and prevent expected third-party failures from surfacing as uncaught errors.",
      "effort": "small"
    },
    {
      "id": "F25",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "follow-best-practices",
      "principleCheckId": "sound-document-and-assets",
      "guidanceId": "html",
      "severity": "medium",
      "confidence": "high",
      "summary": "Image and document asset hygiene is poor",
      "evidence": "The images primitive found all 100 video thumbnails missing width/height and srcset, all in legacy JPEG, and 96 below-fold images not lazy-loaded.",
      "artifacts": [
        "evidence/images-videos.json"
      ],
      "suggestedFix": "Add dimensions, responsive sources, modern formats, and lazy loading while preserving useful alt text.",
      "effort": "small"
    },
    {
      "id": "F26",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "follow-best-practices",
      "principleCheckId": "browser-platform-hygiene",
      "guidanceId": "html",
      "severity": "medium",
      "confidence": "high",
      "summary": "DevTools reports browser-platform issues",
      "evidence": "Lighthouse failed inspector-issues on both templates, and the HAR recorded an aborted statistics request plus a favicon 404.",
      "artifacts": [
        "evidence/lighthouse-summary.json",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Clear DevTools issues, remove broken requests, and keep third-party integration failures contained.",
      "effort": "small"
    },
    {
      "id": "F27",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-discoverable",
      "principleCheckId": "canonical-and-indexing-signals",
      "guidanceId": "html",
      "severity": "medium",
      "confidence": "high",
      "summary": "Canonical and indexing signals are inconsistent",
      "evidence": "No canonical link is present, /sitemap.xml returns a 404 page, Lighthouse reports invalid hreflang, and transport redirects loop between HTTP and HTTPS.",
      "artifacts": [
        "evidence/recon.json",
        "evidence/document-focus-probe.json",
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Choose a canonical HTTPS origin, emit canonical and valid hreflang links, publish a sitemap, and align robots and redirects.",
      "effort": "small"
    },
    {
      "id": "F28",
      "pathId": "detail",
      "url": "http://xxx18hot.com/c/?g=98081",
      "principleId": "be-discoverable",
      "principleCheckId": "structured-and-shareable-metadata",
      "guidanceId": "html",
      "severity": "medium",
      "confidence": "high",
      "summary": "Detail pages lack entity and social metadata",
      "evidence": "The representative detail page has no JSON-LD and no Open Graph tags despite representing a video entity.",
      "artifacts": [
        "evidence/detail-metadata-media.json"
      ],
      "suggestedFix": "Add accurate VideoObject JSON-LD plus Open Graph and social preview metadata matching visible content.",
      "effort": "small"
    },
    {
      "id": "F29",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "severity": "critical",
      "confidence": "high",
      "summary": "The site is served over HTTP without baseline security headers",
      "evidence": "The headers primitive reports HTTP, no CSP, HSTS, nosniff, framing protection, Referrer-Policy, or Permissions-Policy; all six cookies lack Secure.",
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "suggestedFix": "Serve exclusively over HTTPS, fix redirects, secure cookies, and deploy a restrictive CSP plus baseline security headers.",
      "effort": "large"
    },
    {
      "id": "F30",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "severity": "high",
      "confidence": "high",
      "summary": "Third parties and persistent identifiers load before meaningful consent",
      "evidence": "The tracker probe saw five third-party origins including age verification and ad infrastructure; a 400-day __suvt cookie and SameSite=None cookies are set on load.",
      "artifacts": [
        "evidence/trackers.json",
        "evidence/cookies.json",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Minimize pre-consent third parties, document purpose and retention, shorten identifiers, and defer advertising until an appropriate lawful choice.",
      "effort": "medium"
    },
    {
      "id": "F31",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-private-and-secure",
      "principleCheckId": "defensive-browser-policies",
      "guidanceId": "security",
      "severity": "high",
      "confidence": "high",
      "summary": "Browser-enforced defensive policies are absent",
      "evidence": "The headers primitive found no HSTS, clickjacking protection, CSP, Referrer-Policy, Permissions-Policy, or nosniff.",
      "artifacts": [
        "evidence/headers.json"
      ],
      "suggestedFix": "Add HSTS, CSP frame-ancestors, nosniff, a strict referrer policy, and a minimal permissions policy.",
      "effort": "medium"
    },
    {
      "id": "F32",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-resilient",
      "principleCheckId": "resilient-runtime-behaviour",
      "guidanceId": "resilient-context-menus-and-nested-dropdowns",
      "severity": "medium",
      "confidence": "high",
      "summary": "Critical UI relies on opaque third-party runtime behavior",
      "evidence": "The gate is a closed custom element and its statistics request aborts; menus use manually positioned absolute dropdowns without modern fallback positioning.",
      "artifacts": [
        "evidence/hit-test.json",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Use accessible first-party fallback UI and resilient overlay positioning so third-party failure cannot block the page.",
      "effort": "small"
    },
    {
      "id": "F33",
      "pathId": "not-found",
      "url": "http://xxx18hot.com/definitely-not-a-real-page",
      "principleId": "be-resilient",
      "principleCheckId": "network-and-http-failure-states",
      "guidanceId": "persistent-toast-notifications",
      "severity": "medium",
      "confidence": "high",
      "summary": "HTTP failures fall through to a bare server page",
      "evidence": "A representative missing URL displays only “404 Not Found nginx” with no navigation, search, explanation, or recovery link.",
      "artifacts": [
        "evidence/not-found-mobile.png",
        "evidence/not-found-probe.json"
      ],
      "suggestedFix": "Provide branded 404 and network error states with useful navigation, retry, and search options.",
      "effort": "small"
    },
    {
      "id": "F34",
      "pathId": "arabic",
      "url": "http://xxx18hot.com/ar/",
      "principleId": "be-internationalised",
      "principleCheckId": "lang-dir-and-logical-properties",
      "guidanceId": "translator",
      "severity": "high",
      "confidence": "high",
      "summary": "The Arabic variant lacks RTL direction and relies on physical layout properties",
      "evidence": "The Arabic page declares lang=ar but no dir, while CSS inspection counted 46 physical left/right rules and only 10 logical-property rules.",
      "artifacts": [
        "evidence/i18n-probe.json",
        "evidence/arabic-mobile.png"
      ],
      "suggestedFix": "Set dir=rtl for Arabic and migrate layout to logical inline/block properties.",
      "effort": "medium"
    },
    {
      "id": "F35",
      "pathId": "arabic",
      "url": "http://xxx18hot.com/ar/",
      "principleId": "be-internationalised",
      "principleCheckId": "locale-aware-data",
      "guidanceId": "support-global-calendar-systems",
      "severity": "low",
      "confidence": "high",
      "summary": "Localized pages do not localize numeric presentation",
      "evidence": "The Arabic route translates labels but displays category counts with the same Western formatting as English and exposes no evidence of locale-aware number formatting.",
      "artifacts": [
        "evidence/i18n-probe.json"
      ],
      "suggestedFix": "Format counts and other locale-sensitive data with Intl.NumberFormat for the active locale.",
      "effort": "small"
    },
    {
      "id": "F36",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-trustworthy",
      "principleCheckId": "no-dark-patterns",
      "guidanceId": "custom-button-actions",
      "severity": "high",
      "confidence": "high",
      "summary": "The age gate asks users to start a third-party process without meaningful context or choice",
      "evidence": "The gate loads with only Start, no leave option, no privacy link, no provider explanation, while advertising and age-verification requests already run.",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/trackers.json"
      ],
      "suggestedFix": "Present honest purpose, provider, data-use, continue and leave choices before third-party processing.",
      "effort": "medium"
    },
    {
      "id": "F37",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-sustainable",
      "principleCheckId": "optimised-assets",
      "guidanceId": "deliver-optimized-decorative-images",
      "severity": "high",
      "confidence": "high",
      "summary": "Thumbnail delivery wastes bandwidth",
      "evidence": "All 100 inspected thumbnails are JPEG with no srcset; all lack dimensions, and Lighthouse estimates 588 to 815 KiB of image savings.",
      "artifacts": [
        "evidence/images-videos.json",
        "evidence/lighthouse-summary.json"
      ],
      "suggestedFix": "Generate responsive AVIF/WebP sources, set dimensions, and prioritize only visible images.",
      "effort": "medium"
    },
    {
      "id": "F38",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-sustainable",
      "principleCheckId": "no-wasteful-work",
      "guidanceId": "deprioritize-background-fetches",
      "severity": "high",
      "confidence": "high",
      "summary": "Nearly all below-fold thumbnails load eagerly",
      "evidence": "The images primitive found 96 below-fold thumbnails without loading=lazy; the home HAR fetched 148 images and 2.53 MB of image transfers.",
      "artifacts": [
        "evidence/images-videos.json",
        "evidence/home-summary.json"
      ],
      "suggestedFix": "Lazy-load below-fold media, paginate or virtualize long lists, and stop background requests that add no immediate value.",
      "effort": "medium"
    },
    {
      "id": "F39",
      "pathId": "home",
      "url": "http://xxx18hot.com/",
      "principleId": "be-sustainable",
      "principleCheckId": "third-party-and-media-budget",
      "guidanceId": "efficient-background-processing",
      "severity": "medium",
      "confidence": "high",
      "summary": "Third-party and media cost is disproportionate to the first interaction",
      "evidence": "The HAR reports 129 third-party requests and 2.28 MB classified third-party, while the only visible first interaction is an age gate.",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/home-desktop.png"
      ],
      "suggestedFix": "Budget third-party scripts and media, defer advertising, and cache or eliminate low-value requests.",
      "effort": "small"
    }
  ],
  "taskList": [
    {
      "id": "T1",
      "title": "Move the entire site to canonical HTTPS and deploy security headers",
      "priority": 1,
      "findingIds": [
        "F29",
        "F30",
        "F31"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T2",
      "title": "Replace or reconfigure the age gate as an accessible, transparent, recoverable dialog",
      "priority": 2,
      "findingIds": [
        "F08",
        "F09",
        "F10",
        "F13",
        "F14",
        "F15",
        "F36"
      ],
      "guidanceId": "declarative-dialog-popover-control",
      "status": "open"
    },
    {
      "id": "T3",
      "title": "Lazy-load and modernize thumbnail delivery",
      "priority": 3,
      "findingIds": [
        "F17",
        "F18",
        "F37",
        "F39"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T4",
      "title": "Repair semantics, labels, focus, contrast, target sizes, and captions",
      "priority": 4,
      "findingIds": [
        "F12",
        "F19",
        "F20",
        "F21",
        "F22",
        "F23"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T5",
      "title": "Add canonical, sitemap, hreflang, structured data, and social metadata",
      "priority": 5,
      "findingIds": [
        "F27",
        "F28"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T6",
      "title": "Use RTL direction and logical CSS on localized routes",
      "priority": 6,
      "findingIds": [
        "F34",
        "F35"
      ],
      "guidanceId": "translator",
      "status": "open"
    },
    {
      "id": "T7",
      "title": "Add resilient branded failure and fallback states",
      "priority": 7,
      "findingIds": [
        "F32",
        "F33"
      ],
      "guidanceId": "persistent-toast-notifications",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 7,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-19T02-28-11-881Z"
}
