{
  "url": "https://hiroba.dpoint.docomo.ne.jp",
  "auditedAt": "2026-07-19T00:36:19.518Z",
  "mode": "report",
  "status": "completed",
  "statusDetail": "Coverage-complete audit across five representative public templates/journeys; authenticated post-login and transactional completion were not covered.",
  "page": {
    "appType": "mpa",
    "framework": "server-rendered MPA with service worker",
    "notes": "Japanese rewards/points portal with campaign-heavy homepage, category listings, editorial guides/notices and a dアカウント authentication handoff."
  },
  "evidenceUsed": [
    "screenshot",
    "dom",
    "evaluate-probe",
    "layout-metrics",
    "transition-video",
    "trace",
    "har",
    "discoverability",
    "headers",
    "cookies",
    "trackers",
    "secrets",
    "images",
    "lighthouse",
    "heap-summary",
    "raw HTTP fetch",
    "Modern Web Guidance 0.0.172"
  ],
  "guidanceConsulted": [
    "accessibility",
    "accessible-error-announcement",
    "adapt-scrollbar-to-contrast-preferences",
    "agentic-forms",
    "agentic-javascript-tools",
    "anchor-positioning-tab-underline",
    "animate-element-entry-exit",
    "animate-to-from-top-layer",
    "animate-to-intrinsic-sizes",
    "animated-select-picker",
    "apply-webgl-shaders",
    "autofill-address-form",
    "autofill-highlight-inputs",
    "autofill-payment-form",
    "autofill-sign-in-form",
    "autofill-sign-up-form",
    "batch-analytics-events",
    "brand-consistent-forms",
    "branded-select-styling",
    "break-up-long-tasks",
    "calculate-event-differentials",
    "calculate-total-foreground-time",
    "calculate-with-intrinsic-sizes",
    "capture-location-agnostic-data",
    "carousel-slide-effects",
    "carousel-snap-highlights",
    "child-state-based-styling",
    "complex-shapes",
    "component-specific-light-dark-theme",
    "conditional-async-dependencies",
    "consistent-cross-document-transitions",
    "content-based-styling",
    "coordinate-global-events",
    "cross-document-transitions",
    "css",
    "css-layout",
    "custom-select-picker-layouts",
    "customize-scrollbar-color-and-thickness",
    "dark-mode",
    "declarative-dialog-popover-control",
    "defer-rendering-heavy-content",
    "defer-work-until-scroll-ends",
    "deliver-optimized-decorative-images",
    "deprioritize-background-fetches",
    "design-token-reactivity",
    "detect-initial-visibility-state",
    "directional-navigation-transitions",
    "dynamic-sibling-animations",
    "dynamic-sibling-styling",
    "efficient-background-processing",
    "export-html-media-from-canvas",
    "expose-canvas-content-to-browser-features",
    "faster-spa-view-transitions",
    "flicker-free-client-side-ab-testing",
    "fluid-scaling",
    "form-fields-automatically-fit-contents",
    "format-human-readable-durations",
    "forms",
    "full-session-analytics",
    "group-element-transitions",
    "highlight-text-ranges",
    "html",
    "identify-heavy-scripts",
    "identify-inp-causes",
    "improve-next-page-load-performance",
    "improve-text-layout-and-legibility",
    "individual-transform-properties",
    "interactions-in-complex-layouts",
    "interactive-content-in-3d-scenes",
    "interactive-content-reveal",
    "interest-triggered-action-previews",
    "interest-triggered-tooltips",
    "language-detection",
    "language-model",
    "light-dismiss-a-dialog",
    "manage-recurring-intervals",
    "model-partial-time-concepts",
    "move-dom-element-without-losing-state",
    "navigation-drawer",
    "optimize-image-priority",
    "optimize-preload-priority",
    "optimize-script-priority",
    "overflow-clipping-control",
    "parallax-scroll-effects",
    "passkey-authentication",
    "passkey-conditional-create",
    "passkey-management",
    "passkey-reauthentication",
    "passkey-registration",
    "passkeys",
    "performance",
    "persistent-app-tours",
    "persistent-toast-notifications",
    "persistent-top-layer-ui",
    "physics-based-easing",
    "platform-controls-dismiss-dialog",
    "position-aware-tooltips",
    "precise-text-alignment",
    "prevent-text-wrapping",
    "privacy",
    "pull-to-reveal",
    "reduce-style-repetition",
    "required-field-feedback",
    "resilient-context-menus-and-nested-dropdowns",
    "resolution-optimized-pseudo-elements",
    "rich-media-picker",
    "same-document-transitions",
    "schedule-tasks-by-priority",
    "scroll-entry-exit-effects",
    "scroll-position-aware-elements",
    "scroll-progress-indicator",
    "scroll-snap-realtime-feedback",
    "scroll-snap-state-sync",
    "scroll-target-on-load",
    "scrollability-affordance-hints",
    "scrollytelling",
    "search-hidden-content",
    "security",
    "select-menu-interaction",
    "sequence-distributed-events",
    "shaped-cutouts",
    "shrinking-header-on-scroll",
    "size-aware-styling",
    "soft-edge-content-fade",
    "stabilize-reactive-state",
    "stack-drill-down",
    "style-parent-with-has",
    "summarizer",
    "support-global-calendar-systems",
    "swipe-to-remove",
    "translator",
    "validate-input-after-interaction",
    "visually-stable-font-fallbacks",
    "visually-stable-mixed-fonts",
    "visually-texture-content",
    "webmcp"
  ],
  "artifacts": [
    {
      "type": "screenshot",
      "path": "evidence/home-desktop.png",
      "caption": "Homepage first load, desktop",
      "condition": "1440x1000",
      "findingIds": [
        "F04",
        "F05",
        "F15"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/category-mobile.png",
      "caption": "Category listing at narrow viewport",
      "condition": "390x844",
      "findingIds": [
        "F05",
        "F06",
        "F07",
        "F08",
        "F16"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/registration-mobile.png",
      "caption": "dアカウント registration/login handoff",
      "condition": "390x844",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/guide-desktop.png",
      "caption": "Guide landing page",
      "condition": "1440x1000",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/information-desktop.png",
      "caption": "Information article",
      "condition": "1440x1000",
      "findingIds": [
        "F01",
        "F23"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/information-dark.png",
      "caption": "Information article under dark preference",
      "condition": "prefers-color-scheme: dark",
      "findingIds": [
        "F01"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/information-contrast.png",
      "caption": "Information article under forced colors",
      "condition": "forced-colors: active; prefers-contrast: more",
      "findingIds": []
    },
    {
      "type": "layout",
      "path": "evidence/category-layout.json",
      "caption": "Narrow category layout metrics",
      "condition": "390x844",
      "findingIds": [
        "F06",
        "F08",
        "F16"
      ]
    },
    {
      "type": "layout",
      "path": "evidence/home-layout.json",
      "caption": "Homepage layout shifts",
      "condition": "1440x1000",
      "findingIds": [
        "F10"
      ]
    },
    {
      "type": "trace",
      "path": "evidence/home-trace.json",
      "caption": "Homepage DevTools trace",
      "condition": "390x844",
      "findingIds": []
    },
    {
      "type": "trace-summary",
      "path": "evidence/home-trace-summary.json",
      "caption": "Compact homepage trace summary",
      "condition": "390x844",
      "findingIds": [
        "F09"
      ]
    },
    {
      "type": "har",
      "path": "evidence/home.har",
      "caption": "Homepage HAR",
      "condition": "390x844",
      "findingIds": [
        "F11"
      ]
    },
    {
      "type": "har-summary",
      "path": "evidence/home-summary.json",
      "caption": "Compact homepage network summary",
      "condition": "390x844",
      "findingIds": [
        "F11",
        "F12",
        "F21",
        "F25",
        "F26",
        "F27"
      ]
    },
    {
      "type": "lighthouse",
      "path": "evidence/lighthouse-home.json",
      "caption": "Lighthouse mobile JSON",
      "condition": "mobile throttling",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/lighthouse-home-summary.json",
      "caption": "Lighthouse score and metric summary",
      "condition": "mobile throttling",
      "findingIds": [
        "F09",
        "F10",
        "F14"
      ]
    },
    {
      "type": "other",
      "path": "evidence/lighthouse-details.json",
      "caption": "Selected Lighthouse audit details",
      "condition": "mobile throttling",
      "findingIds": [
        "F11",
        "F12",
        "F13",
        "F14",
        "F17",
        "F18",
        "F19",
        "F21",
        "F22",
        "F26"
      ]
    },
    {
      "type": "other",
      "path": "evidence/headers.json",
      "caption": "Security response headers",
      "condition": "homepage",
      "findingIds": [
        "F20",
        "F22"
      ]
    },
    {
      "type": "other",
      "path": "evidence/cookies.json",
      "caption": "Cookie attributes",
      "condition": "homepage",
      "findingIds": [
        "F20"
      ]
    },
    {
      "type": "other",
      "path": "evidence/trackers.json",
      "caption": "Third-party tracker inventory",
      "condition": "homepage",
      "findingIds": [
        "F21",
        "F27"
      ]
    },
    {
      "type": "other",
      "path": "evidence/secrets.json",
      "caption": "Client-visible secret scan",
      "condition": "homepage",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/category-images.json",
      "caption": "Image audit for category template",
      "condition": "category",
      "findingIds": [
        "F10",
        "F13",
        "F18",
        "F25"
      ]
    },
    {
      "type": "discoverability",
      "path": "evidence/home-discoverability.json",
      "caption": "Homepage raw/rendered discoverability",
      "condition": "JavaScript on/off",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-rendered.png",
      "caption": "Homepage browser view",
      "condition": "JavaScript enabled",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/home-discoverability-crawler.png",
      "caption": "Homepage crawler view",
      "condition": "JavaScript disabled",
      "findingIds": []
    },
    {
      "type": "discoverability",
      "path": "evidence/information-discoverability.json",
      "caption": "Article raw/rendered discoverability",
      "condition": "JavaScript on/off",
      "findingIds": []
    },
    {
      "type": "screenshot",
      "path": "evidence/information-discoverability-crawler.png",
      "caption": "Article crawler view",
      "condition": "JavaScript disabled",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/platform-probe.json",
      "caption": "Viewport, CSS, focus and metadata probe",
      "condition": "390x844",
      "findingIds": [
        "F06",
        "F07",
        "F08",
        "F15",
        "F16",
        "F24"
      ]
    },
    {
      "type": "other",
      "path": "evidence/registration-probe.json",
      "caption": "Authentication entry probe",
      "condition": "390x844",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/app-probe.json",
      "caption": "Manifest, service worker, permissions and form probe",
      "condition": "homepage",
      "findingIds": [
        "F13",
        "F24"
      ]
    },
    {
      "type": "other",
      "path": "evidence/reduced-motion-probe.json",
      "caption": "Reduced-motion animation probe",
      "condition": "prefers-reduced-motion: reduce",
      "findingIds": [
        "F02"
      ]
    },
    {
      "type": "other",
      "path": "evidence/dialog-probe.json",
      "caption": "Dialog semantics probe",
      "condition": "homepage",
      "findingIds": [
        "F04"
      ]
    },
    {
      "type": "video",
      "path": "evidence/navigation.mp4",
      "caption": "Cross-document navigation recording",
      "condition": "information to guide",
      "findingIds": [
        "F03"
      ]
    },
    {
      "type": "screenshot",
      "path": "evidence/404-mobile.png",
      "caption": "Branded unknown-route recovery state",
      "condition": "390x844",
      "findingIds": []
    },
    {
      "type": "heap",
      "path": "evidence/heap-baseline.json",
      "caption": "Baseline heap summary",
      "condition": "homepage",
      "findingIds": []
    },
    {
      "type": "heap",
      "path": "evidence/heap-post.json",
      "caption": "Post-interaction heap summary",
      "condition": "10 menu toggles",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/robots-sitemap.txt",
      "caption": "robots.txt and sitemap endpoint response",
      "condition": "crawler fetch",
      "findingIds": []
    },
    {
      "type": "other",
      "path": "evidence/sitemap.xml",
      "caption": "Sitemap index",
      "condition": "crawler fetch",
      "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": "Direct artifact review and targeted browser evidence",
      "evidence": "The normal and dark-emulated information screenshots are pixel-equivalent in palette, and the platform probe reports computed colorScheme \"normal\".",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/information-desktop.png",
        "evidence/information-dark.png"
      ],
      "findingIds": [
        "F01"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-reduced-motion",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Under prefers-reduced-motion: reduce, the probe still found two running 1,200ms badge-balloon animations and an initialized looping Splide carousel.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/reduced-motion-probe.json"
      ],
      "findingIds": [
        "F02"
      ]
    },
    {
      "principleId": "respect-user-preferences",
      "checkId": "respects-contrast",
      "status": "pass",
      "confidence": "high",
      "method": "Forced-colors screenshot",
      "evidence": "The forced-colors/high-contrast capture preserves visible text, borders, links and controls across the information template.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/information-contrast.png"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "view-transitions",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The 4-second navigation recording from an information page to the guide shows a conventional full document replacement, with no authored view-transition treatment detected.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/navigation.mp4"
      ],
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "scroll-driven-animations",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and interaction-surface inventory",
      "evidence": "No scroll-linked parallax, scrollytelling or reveal interaction was present on the representative templates.",
      "reason": "No scroll-linked parallax, scrollytelling or reveal interaction was present on the representative templates."
    },
    {
      "principleId": "implement-natural-interactions",
      "checkId": "physical-gestures",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and interaction-surface inventory",
      "evidence": "No swipe, pull-to-reveal, reorder or other gesture-driven component was present in the audited journeys.",
      "reason": "No swipe, pull-to-reveal, reorder or other gesture-driven component was present in the audited journeys."
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "scroll-state-aware-chrome",
      "status": "pass",
      "confidence": "high",
      "method": "Responsive screenshots and DOM review",
      "evidence": "Desktop and narrow captures retain persistent global navigation and location context; no scroll-obscuring chrome was observed.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/information-desktop.png"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "anchored-positioning",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and interaction-surface inventory",
      "evidence": "No tooltip or edge-positioned transient menu requiring an anchor-positioning judgement was observed.",
      "reason": "No tooltip or edge-positioned transient menu requiring an anchor-positioning judgement was observed."
    },
    {
      "principleId": "provide-guided-navigation",
      "checkId": "directs-attention",
      "status": "pass",
      "confidence": "high",
      "method": "Screenshot and focus probe",
      "evidence": "Breadcrumbs, current navigation context, blue archive arrows and visible focus outlines clearly indicate location and focus movement.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/information-desktop.png",
        "evidence/platform-probe.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "no-intrusive-interruptions",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The initial desktop screenshot is dimmed behind a large centered “本日のイチオシ” modal, while a second floating ad also covers the lower-left content.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/dialog-probe.json"
      ],
      "findingIds": [
        "F04"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "semantic-dismissible-primitives",
      "status": "pass",
      "confidence": "high",
      "method": "DOM dialog probe",
      "evidence": "Both promotional overlays are native DIALOG elements with explicit aria-labelled dismiss buttons.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dialog-probe.json"
      ]
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "checkId": "reduced-chrome",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The home and category screenshots show a search header, keyword chips, global navigation, carousel/promotional cards, a fixed bottom navigation and overlapping ad treatments competing simultaneously.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/category-mobile.png"
      ],
      "findingIds": [
        "F05"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "responsive-no-horizontal-scroll",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "At an outer viewport of 390px, the probe reports innerWidth and visualViewport width of 1,048px because the viewport meta is width=1024; the category screenshot is a tiny desktop canvas rather than reflowed mobile UI.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/category-layout.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F06"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "component-level-responsiveness",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The platform probe found zero @container rules, while the 390px category capture preserves multi-column desktop cards and sidebars by shrinking the whole page.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F07"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "checkId": "input-modality-aware",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The fixed 1,024px canvas is scaled to 37% on a 390px device; although desktop CSS target rectangles can be 32–44px, their effective visual size is substantially smaller in the mobile screenshot.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/category-layout.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F08"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-purpose-and-primary-action",
      "status": "pass",
      "confidence": "high",
      "method": "Representative screenshot review",
      "evidence": "The guide clearly explains the 1pt=1円 value and exposes registration; category cards state merchant and point reward.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/guide-desktop.png",
        "evidence/category-mobile.png"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "primary-flow-completion",
      "status": "pass",
      "confidence": "high",
      "method": "Unauthenticated journey walkthrough",
      "evidence": "Browsing reward categories and opening registration worked; registration handed off predictably to the dアカウント ID step without a dead link.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/registration-mobile.png",
        "evidence/registration-probe.json"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "checkId": "clear-system-state-and-recovery",
      "status": "pass",
      "confidence": "high",
      "method": "Invalid/404 and login-state review",
      "evidence": "The login Next action is visibly disabled until an ID is entered, with account-help text; an unknown route returns a branded not-found state and top-page recovery link.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/registration-mobile.png",
        "evidence/404-mobile.png"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "good-core-web-vitals",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Lighthouse measured LCP 3.5s, CLS 0.148, TBT 220ms, Speed Index 10.1s and Time to Interactive 31.8s (performance 68). The raw trace was better on an unthrottled pass, so severity uses the throttled mobile result.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-home-summary.json",
        "evidence/home-trace-summary.json"
      ],
      "findingIds": [
        "F09"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "visual-stability",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Lighthouse recorded CLS 0.148, and the layout primitive observed home shifts totaling 0.060 around 4.3–4.6s. The image audit found 70 images without dimensions.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-home-summary.json",
        "evidence/home-layout.json",
        "evidence/category-images.json"
      ],
      "findingIds": [
        "F10"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-main-thread",
      "status": "pass",
      "confidence": "high",
      "method": "Trace plus Lighthouse",
      "evidence": "The raw trace found one 72ms long task and 22ms TBT; Lighthouse TBT was 220ms, still below the 600ms poor threshold. The larger problems are network and TTI.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-trace-summary.json",
        "evidence/lighthouse-home-summary.json"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "efficient-resource-delivery",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The HAR captured 153 requests and 6.30MB transferred, including 3.80MB images and 1.40MB fonts. Lighthouse reports undiscoverable, unprioritized LCP and parser-blocking jQuery/CSS chains.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json",
        "evidence/lighthouse-details.json"
      ],
      "findingIds": [
        "F11"
      ]
    },
    {
      "principleId": "be-fast-and-stable",
      "checkId": "trim-unused-and-duplicate-code",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Lighthouse estimated 739,843 bytes of unused JavaScript, led by ad code and multiple Google Tag Manager/gtag payloads; HAR recorded 1.03MB of scripts.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-details.json",
        "evidence/home-summary.json"
      ],
      "findingIds": [
        "F12"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "names-roles-labels",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Lighthouse failed image-alt for the homescreen phone image, while the image primitive counted 24 images with no alt value and the app probe found an unlabeled search input.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-details.json",
        "evidence/category-images.json",
        "evidence/app-probe.json"
      ],
      "findingIds": [
        "F13"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "sufficient-contrast",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Lighthouse/axe found 4.25:1 green text at 12px, 4.47:1 bottom-nav labels, and severely low-contrast campaign/consent states, producing an accessibility score of 92.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-details.json",
        "evidence/lighthouse-home-summary.json"
      ],
      "findingIds": [
        "F14"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "structure-and-focus",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The platform probe counted two h1 elements on the information template; recon also observed an empty second h1 in the rendered home DOM. Focus outlines were visible, but the document outline is not clean.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/home-desktop.png"
      ],
      "findingIds": [
        "F15"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "legible-text",
      "status": "pass",
      "confidence": "high",
      "method": "Desktop content screenshot",
      "evidence": "At the authored desktop layout, article text has comfortable line spacing and readable measure; the mobile scaling failure is recorded separately under reflow.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/information-desktop.png"
      ]
    },
    {
      "principleId": "be-inclusive",
      "checkId": "zoom-reflow-targets-and-media",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The page explicitly requests width=1024 even on a 390px device, shrinking the desktop layout and its controls instead of reflowing content. User scaling is allowed, but users must zoom to read and operate the page.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/category-layout.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F16"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "no-console-errors",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Lighthouse captured “Uncaught SyntaxError: Identifier root has already been declared” in common-js-c-modal-dialog-Bc0k2xk5.js, plus a failed ad resource.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-details.json"
      ],
      "findingIds": [
        "F17"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "sound-document-and-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The image audit found 70 of 100 images without dimensions, 10 oversized images and 22 legacy-format images; Lighthouse also found one distorted and one low-resolution rendered image.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/category-images.json",
        "evidence/lighthouse-details.json"
      ],
      "findingIds": [
        "F18"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "checkId": "browser-platform-hygiene",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Lighthouse found deprecated Topics API use, three BFCache failure reasons caused by cache-control:no-store behavior, third-party-cookie issues and DevTools inspector issues.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/lighthouse-details.json"
      ],
      "findingIds": [
        "F19"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "title-and-description",
      "status": "pass",
      "confidence": "high",
      "method": "DOM and raw-HTML comparison",
      "evidence": "Home and article expose descriptive unique titles and meta descriptions in both raw HTML and rendered DOM.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-discoverability.json",
        "evidence/information-discoverability.json"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "crawlable-and-mobile-friendly",
      "status": "pass",
      "confidence": "high",
      "method": "DOM links and robots review",
      "evidence": "Recon found real href links with descriptive Japanese labels, a viewport meta exists, and robots.txt allows public content.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-discoverability.json",
        "evidence/robots-sitemap.txt"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "canonical-and-indexing-signals",
      "status": "pass",
      "confidence": "high",
      "method": "Canonical, status, robots and sitemap review",
      "evidence": "Both sampled public pages returned 200 with canonical URLs; robots points to a functioning /sitemap index and does not apply noindex to content.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/information-discoverability.json",
        "evidence/robots-sitemap.txt",
        "evidence/sitemap.xml"
      ]
    },
    {
      "principleId": "be-discoverable",
      "checkId": "structured-and-shareable-metadata",
      "status": "pass",
      "confidence": "high",
      "method": "Metadata probe",
      "evidence": "The home page exposes seven Open Graph properties and descriptive visible metadata. No article/product rich-result requirement was established for the sampled portal page.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/app-probe.json",
        "evidence/home-discoverability.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "secure-transport-and-headers",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "HTTPS, HSTS, nosniff and SAMEORIGIN are present, but CSP, Referrer-Policy and Permissions-Policy are missing. Cookie evidence reports 12 of 13 cookies without Secure and widespread SameSite=None, including long-lived analytics cookies.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ],
      "findingIds": [
        "F20"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "data-minimisation-and-third-parties",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Tracker evidence found 10 third-party origins and Google Analytics, DoubleClick and Tag Manager; Lighthouse listed 13 cross-site cookies, and HAR attributed 146 of 153 requests and 6.25MB to third-party origins.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home-summary.json",
        "evidence/lighthouse-details.json"
      ],
      "findingIds": [
        "F21"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "in-context-permissions-and-modern-auth",
      "status": "pass",
      "confidence": "high",
      "method": "Permission and authentication entry probe",
      "evidence": "Geolocation remained prompt and Notifications default with no browser prompt on load; authentication is delegated to the first-party dアカウント flow over HTTPS.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/app-probe.json",
        "evidence/registration-probe.json"
      ]
    },
    {
      "principleId": "be-private-and-secure",
      "checkId": "defensive-browser-policies",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The response has HSTS and X-Frame-Options but no CSP/frame-ancestors policy, no Referrer-Policy and no Permissions-Policy; the page also participates in third-party-cookie synchronization.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/headers.json",
        "evidence/lighthouse-details.json"
      ],
      "findingIds": [
        "F22"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "progressive-enhancement",
      "status": "pass",
      "confidence": "high",
      "method": "Raw vs rendered discoverability",
      "evidence": "Both home and article had 100% content-word coverage without JavaScript and were not JS shells.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-discoverability.json",
        "evidence/information-discoverability.json",
        "evidence/information-discoverability-crawler.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "resilient-runtime-behaviour",
      "status": "pass",
      "confidence": "high",
      "method": "Overlay and error-state inspection",
      "evidence": "Native dialogs remain dismissible and the responsive error page provides a recovery link; no clipped menu or blank runtime state appeared in tested paths.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/dialog-probe.json",
        "evidence/404-mobile.png"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "offline-and-installable",
      "status": "pass",
      "confidence": "high",
      "method": "Targeted browser probe",
      "evidence": "The app probe directly found a valid manifest, a registered service worker and a scoped registration for the origin.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/app-probe.json"
      ]
    },
    {
      "principleId": "be-resilient",
      "checkId": "network-and-http-failure-states",
      "status": "pass",
      "confidence": "high",
      "method": "Unknown-route test",
      "evidence": "A deliberately unknown route rendered a branded explanation and a clear “トップへ戻る” recovery action rather than a blank shell.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/404-mobile.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "lang-dir-and-logical-properties",
      "status": "pass",
      "confidence": "high",
      "method": "DOM language inspection",
      "evidence": "The document declares lang=ja and renders Japanese reading order correctly on all sampled templates.",
      "pathIds": [
        "information"
      ],
      "artifacts": [
        "evidence/app-probe.json",
        "evidence/information-desktop.png"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "locale-aware-data",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The Japanese maintenance page displays “2026年7月16日 (Thu) 11:00” and a compact “2026/07/29(水)AM1:00〜AM6:00”, indicating inconsistent formatting rather than one locale-aware pattern.",
      "pathIds": [
        "information"
      ],
      "artifacts": [
        "evidence/information-desktop.png"
      ],
      "findingIds": [
        "F23"
      ]
    },
    {
      "principleId": "be-internationalised",
      "checkId": "time-zone-correctness",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and interaction-surface inventory",
      "evidence": "No cross-zone event scheduling or recurring user-managed time data was present; only editorial maintenance timestamps were observed.",
      "reason": "No cross-zone event scheduling or recurring user-managed time data was present; only editorial maintenance timestamps were observed."
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "no-dark-patterns",
      "status": "pass",
      "confidence": "high",
      "method": "Commercial and account-flow screenshot review",
      "evidence": "Promotional density is intrusive and reported separately, but registration/login labels and commitments observed were direct; no preselected paid continuity or confirmshaming was found.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/registration-mobile.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "humane-error-handling",
      "status": "pass",
      "confidence": "high",
      "method": "Login state inspection",
      "evidence": "The external login step avoids premature error text, disables continuation until input, and provides an account-ID recovery link and explanatory copy.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/registration-mobile.png"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "trustworthy-input-assistance",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The app probe reports the site search input has no associated label and an empty autocomplete attribute.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/app-probe.json",
        "evidence/platform-probe.json"
      ],
      "findingIds": [
        "F24"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "checkId": "safe-commercial-and-account-flows",
      "status": "pass",
      "confidence": "high",
      "method": "Account entry walkthrough",
      "evidence": "Registration redirects to the recognizable dアカウント service with privacy/terms links, a stay-signed-in choice and no hidden price or subscription commitment in the sampled entry step.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/registration-mobile.png",
        "evidence/registration-probe.json"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "optimised-assets",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The HAR transferred 3.80MB of images and 1.40MB of fonts; the largest single image was 473KB, and the image audit found 10 oversized, 22 legacy-format and 9 non-responsive images.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/category-images.json"
      ],
      "findingIds": [
        "F25"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "no-wasteful-work",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "The initial HAR recorded 153 requests, six tag-manager/analytics script loads among top offenders, and Lighthouse estimated about 740KB unused JavaScript.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/lighthouse-details.json"
      ],
      "findingIds": [
        "F26"
      ]
    },
    {
      "principleId": "be-sustainable",
      "checkId": "third-party-and-media-budget",
      "status": "issues",
      "confidence": "high",
      "method": "Direct artifact review and targeted browser evidence",
      "evidence": "Third parties account for 146/153 requests and 6.25MB of 6.30MB transferred; active trackers and a 396KB GIF load on the initial page.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/trackers.json"
      ],
      "findingIds": [
        "F27"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "structured-agent-capabilities",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and interaction-surface inventory",
      "evidence": "This public rewards/content portal exposes no declared agent-facing capability, and the emerging WebMCP check is contextual rather than required.",
      "reason": "This public rewards/content portal exposes no declared agent-facing capability, and the emerging WebMCP check is contextual rather than required."
    },
    {
      "principleId": "be-agent-ready",
      "checkId": "on-device-inference",
      "status": "not-applicable",
      "confidence": "high",
      "method": "Recon and interaction-surface inventory",
      "evidence": "No summarisation or language-model task is part of the observed core journey; on-device inference would not add clear value here.",
      "reason": "No summarisation or language-model task is part of the observed core journey; on-device inference would not add clear value here."
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-leak-under-repeated-interaction",
      "status": "pass",
      "confidence": "medium",
      "method": "Baseline/post heap comparison after 10 menu toggles",
      "evidence": "After closing the promotion and repeating menu toggles about 10 times, the fresh post snapshot was smaller: 383,835 vs 403,687 nodes and 23.58MB vs 24.68MB self size. Fresh-session variance limits confidence but there is no growth signal.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "bounded-footprint",
      "status": "pass",
      "confidence": "medium",
      "method": "Heap summary review",
      "evidence": "The loaded promotional portal used about 24.7MB heap self size. This is proportionate to the rendered page and did not increase in the exercised state.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post.json"
      ]
    },
    {
      "principleId": "be-memory-efficient",
      "checkId": "no-detached-dom-or-unbounded-listeners",
      "status": "pass",
      "confidence": "medium",
      "method": "Heap constructor comparison",
      "evidence": "Node, edge, closure and object counts fell after repeated menu interaction; no growing Detached* constructor population appeared among the summary leaders.",
      "pathIds": [
        "home"
      ],
      "artifacts": [
        "evidence/heap-baseline.json",
        "evidence/heap-post.json"
      ]
    }
  ],
  "principleOutcomes": [
    {
      "principleId": "respect-user-preferences",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F01",
        "F02"
      ]
    },
    {
      "principleId": "implement-natural-interactions",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F03"
      ]
    },
    {
      "principleId": "provide-guided-navigation",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "maximize-content-reduce-noise",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F04",
        "F05"
      ]
    },
    {
      "principleId": "adapt-to-the-form-factor",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F06",
        "F07",
        "F08"
      ]
    },
    {
      "principleId": "support-core-task-success",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-fast-and-stable",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F09",
        "F10",
        "F11",
        "F12"
      ]
    },
    {
      "principleId": "be-inclusive",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F13",
        "F14",
        "F15",
        "F16"
      ]
    },
    {
      "principleId": "follow-best-practices",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F17",
        "F18",
        "F19"
      ]
    },
    {
      "principleId": "be-discoverable",
      "expectation": "default",
      "status": "pass"
    },
    {
      "principleId": "be-private-and-secure",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F20",
        "F21",
        "F22"
      ]
    },
    {
      "principleId": "be-resilient",
      "expectation": "contextual",
      "status": "pass"
    },
    {
      "principleId": "be-internationalised",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F23"
      ]
    },
    {
      "principleId": "be-trustworthy",
      "expectation": "default",
      "status": "issues",
      "findingIds": [
        "F24"
      ]
    },
    {
      "principleId": "be-sustainable",
      "expectation": "contextual",
      "status": "issues",
      "findingIds": [
        "F25",
        "F26",
        "F27"
      ]
    },
    {
      "principleId": "be-agent-ready",
      "expectation": "contextual",
      "status": "not-applicable",
      "reason": "This public rewards/content portal exposes no declared agent-facing capability, and the emerging WebMCP check is contextual rather than required. No summarisation or language-model task is part of the observed core journey; on-device inference would not add clear value here."
    },
    {
      "principleId": "be-memory-efficient",
      "expectation": "default",
      "status": "pass"
    }
  ],
  "paths": [
    {
      "id": "home",
      "description": "Homepage and promotion entry state, representing discovery, campaign chrome, privacy, performance and installability.",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "conditions": [
        "1440x1000",
        "390x844",
        "prefers-reduced-motion: reduce",
        "crawler/no JavaScript"
      ],
      "result": "issues"
    },
    {
      "id": "category",
      "description": "Shopping/service category listing, representing dense card/list templates and narrow-screen browsing.",
      "url": "https://hiroba.dpoint.docomo.ne.jp/category",
      "conditions": [
        "390x844"
      ],
      "result": "issues"
    },
    {
      "id": "guide",
      "description": "Points guide landing page, representing editorial/education content and registration CTA.",
      "url": "https://hiroba.dpoint.docomo.ne.jp/guide",
      "conditions": [
        "1440x1000"
      ],
      "result": "issues"
    },
    {
      "id": "information",
      "description": "Maintenance notice detail, representing article content, archive navigation, dark/contrast preferences and crawler output.",
      "url": "https://hiroba.dpoint.docomo.ne.jp/information/257",
      "conditions": [
        "1440x1000",
        "390x844",
        "prefers-color-scheme: dark",
        "forced-colors: active",
        "crawler/no JavaScript"
      ],
      "result": "issues"
    },
    {
      "id": "registration",
      "description": "Registration/login handoff to dアカウント, representing unauthenticated account entry and input state.",
      "url": "https://hiroba.dpoint.docomo.ne.jp/registration",
      "conditions": [
        "390x844"
      ],
      "result": "issues"
    },
    {
      "id": "unknown-route",
      "description": "Deliberately unknown route, representing HTTP/not-found recovery behavior.",
      "url": "https://hiroba.dpoint.docomo.ne.jp/this-route-should-not-exist-web-uplift",
      "conditions": [
        "390x844"
      ],
      "result": "pass"
    }
  ],
  "findings": [
    {
      "id": "F01",
      "severity": "medium",
      "confidence": "high",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-color-scheme",
      "guidanceId": "dark-mode",
      "guidanceCategory": "web-quality",
      "summary": "The public site ignores the user’s dark color-scheme preference.",
      "evidence": "The normal and dark-emulated information screenshots are pixel-equivalent in palette, and the platform probe reports computed colorScheme \"normal\".",
      "suggestedFix": "Declare color-scheme and provide preference-driven dark surface, text, border and control tokens.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/information-desktop.png",
        "evidence/information-dark.png"
      ]
    },
    {
      "id": "F02",
      "severity": "medium",
      "confidence": "high",
      "principleId": "respect-user-preferences",
      "principleCheckId": "respects-reduced-motion",
      "guidanceId": "accessibility",
      "guidanceCategory": "web-quality",
      "summary": "Motion continues when reduced motion is requested.",
      "evidence": "Under prefers-reduced-motion: reduce, the probe still found two running 1,200ms badge-balloon animations and an initialized looping Splide carousel.",
      "suggestedFix": "Disable non-essential keyframes and carousel autoplay inside prefers-reduced-motion: reduce while retaining manual controls.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/reduced-motion-probe.json"
      ]
    },
    {
      "id": "F03",
      "severity": "low",
      "confidence": "high",
      "principleId": "implement-natural-interactions",
      "principleCheckId": "view-transitions",
      "guidanceId": "cross-document-transitions",
      "guidanceCategory": "web-quality",
      "summary": "Cross-document navigation swaps abruptly.",
      "evidence": "The 4-second navigation recording from an information page to the guide shows a conventional full document replacement, with no authored view-transition treatment detected.",
      "suggestedFix": "Add @view-transition { navigation: auto } for same-origin MPA navigation, then assign stable transition names only where continuity helps.",
      "effort": "small",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/navigation.mp4"
      ]
    },
    {
      "id": "F04",
      "severity": "high",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "no-intrusive-interruptions",
      "guidanceId": "light-dismiss-a-dialog",
      "guidanceCategory": "web-quality",
      "summary": "A promotion blocks the primary content on first load.",
      "evidence": "The initial desktop screenshot is dimmed behind a large centered “本日のイチオシ” modal, while a second floating ad also covers the lower-left content.",
      "suggestedFix": "Do not auto-open promotional dialogs. Present promotions in-flow or after explicit intent, and retain an immediate, clearly labelled dismiss action.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/dialog-probe.json"
      ]
    },
    {
      "id": "F05",
      "severity": "medium",
      "confidence": "high",
      "principleId": "maximize-content-reduce-noise",
      "principleCheckId": "reduced-chrome",
      "guidanceId": "reduce visual clutter maximize content",
      "guidanceCategory": "web-quality",
      "summary": "Dense promotional chrome overwhelms the content and task hierarchy.",
      "evidence": "The home and category screenshots show a search header, keyword chips, global navigation, carousel/promotional cards, a fixed bottom navigation and overlapping ad treatments competing simultaneously.",
      "suggestedFix": "Reduce simultaneous campaigns, reserve one primary promotion, and defer secondary offers into clearly labelled sections.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/home-desktop.png",
        "evidence/category-mobile.png"
      ]
    },
    {
      "id": "F06",
      "severity": "high",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "responsive-no-horizontal-scroll",
      "guidanceId": "fluid-scaling",
      "guidanceCategory": "web-quality",
      "summary": "Mobile visitors receive a scaled-down 1,024px desktop layout.",
      "evidence": "At an outer viewport of 390px, the probe reports innerWidth and visualViewport width of 1,048px because the viewport meta is width=1024; the category screenshot is a tiny desktop canvas rather than reflowed mobile UI.",
      "suggestedFix": "Use width=device-width, initial-scale=1 and reflow layouts intrinsically at narrow widths. Do not force a 1,024px layout viewport.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/category-layout.json",
        "evidence/platform-probe.json"
      ]
    },
    {
      "id": "F07",
      "severity": "medium",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "component-level-responsiveness",
      "guidanceId": "size-aware-styling",
      "guidanceCategory": "web-quality",
      "summary": "Components do not adapt to their available container.",
      "evidence": "The platform probe found zero @container rules, while the 390px category capture preserves multi-column desktop cards and sidebars by shrinking the whole page.",
      "suggestedFix": "Define container contexts for listing, card and sidebar regions and adapt card density/content with size container queries.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/platform-probe.json"
      ]
    },
    {
      "id": "F08",
      "severity": "high",
      "confidence": "high",
      "principleId": "adapt-to-the-form-factor",
      "principleCheckId": "input-modality-aware",
      "guidanceId": "accessibility",
      "guidanceCategory": "web-quality",
      "summary": "Effective mobile controls and text are too small after page-wide scaling.",
      "evidence": "The fixed 1,024px canvas is scaled to 37% on a 390px device; although desktop CSS target rectangles can be 32–44px, their effective visual size is substantially smaller in the mobile screenshot.",
      "suggestedFix": "Fix the viewport and then enforce at least 44 CSS px touch targets, visible focus, and non-hover access to every action.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/category-layout.json",
        "evidence/platform-probe.json"
      ]
    },
    {
      "id": "F09",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "good-core-web-vitals",
      "guidanceId": "performance",
      "guidanceCategory": "web-quality",
      "summary": "Mobile lab performance misses the Core Web Vitals quality bar.",
      "evidence": "Lighthouse measured LCP 3.5s, CLS 0.148, TBT 220ms, Speed Index 10.1s and Time to Interactive 31.8s (performance 68). The raw trace was better on an unthrottled pass, so severity uses the throttled mobile result.",
      "suggestedFix": "Prioritize the LCP asset, remove render-blocking work, reserve late content space and defer non-essential advertising/analytics until after core content.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/lighthouse-home-summary.json",
        "evidence/home-trace-summary.json"
      ]
    },
    {
      "id": "F10",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "visual-stability",
      "guidanceId": "prevent layout shift reserve space CLS aspect-ratio",
      "guidanceCategory": "web-quality",
      "summary": "Late content causes visible layout instability.",
      "evidence": "Lighthouse recorded CLS 0.148, and the layout primitive observed home shifts totaling 0.060 around 4.3–4.6s. The image audit found 70 images without dimensions.",
      "suggestedFix": "Reserve dimensions/aspect-ratio for images and promotional slots, and avoid inserting banners above existing content.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/lighthouse-home-summary.json",
        "evidence/home-layout.json",
        "evidence/category-images.json"
      ]
    },
    {
      "id": "F11",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "efficient-resource-delivery",
      "guidanceId": "optimize-image-priority",
      "guidanceCategory": "web-quality",
      "summary": "The critical resource path is heavy and poorly prioritized.",
      "evidence": "The HAR captured 153 requests and 6.30MB transferred, including 3.80MB images and 1.40MB fonts. Lighthouse reports undiscoverable, unprioritized LCP and parser-blocking jQuery/CSS chains.",
      "suggestedFix": "Make the LCP resource discoverable in initial HTML with fetchpriority=high, subset fonts, remove parser-blocking scripts, and set durable cache headers on campaign assets.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/home.har",
        "evidence/home-summary.json",
        "evidence/lighthouse-details.json"
      ]
    },
    {
      "id": "F12",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-fast-and-stable",
      "principleCheckId": "trim-unused-and-duplicate-code",
      "guidanceId": "identify-heavy-scripts",
      "guidanceCategory": "web-quality",
      "summary": "Unused third-party JavaScript dominates the script budget.",
      "evidence": "Lighthouse estimated 739,843 bytes of unused JavaScript, led by ad code and multiple Google Tag Manager/gtag payloads; HAR recorded 1.03MB of scripts.",
      "suggestedFix": "Consolidate tag containers, gate advertising code by consent and need, and load campaign/analytics modules conditionally after core interaction.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/lighthouse-details.json",
        "evidence/home-summary.json"
      ]
    },
    {
      "id": "F13",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "names-roles-labels",
      "guidanceId": "accessibility",
      "guidanceCategory": "web-quality",
      "summary": "Some meaningful images and fields lack accessible text relationships.",
      "evidence": "Lighthouse failed image-alt for the homescreen phone image, while the image primitive counted 24 images with no alt value and the app probe found an unlabeled search input.",
      "suggestedFix": "Add meaningful alt text where images convey content, empty alt for decorative images, and an explicit label or accessible name for search.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/lighthouse-details.json",
        "evidence/category-images.json",
        "evidence/app-probe.json"
      ]
    },
    {
      "id": "F14",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "sufficient-contrast",
      "guidanceId": "accessibility",
      "guidanceCategory": "web-quality",
      "summary": "Several text and control states fail minimum contrast.",
      "evidence": "Lighthouse/axe found 4.25:1 green text at 12px, 4.47:1 bottom-nav labels, and severely low-contrast campaign/consent states, producing an accessibility score of 92.",
      "suggestedFix": "Raise token contrast to at least 4.5:1 for normal text and test every campaign/consent state, including overlays.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/lighthouse-details.json",
        "evidence/lighthouse-home-summary.json"
      ]
    },
    {
      "id": "F15",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "structure-and-focus",
      "guidanceId": "accessibility",
      "guidanceCategory": "web-quality",
      "summary": "Heading structure is duplicated and inconsistent across templates.",
      "evidence": "The platform probe counted two h1 elements on the information template; recon also observed an empty second h1 in the rendered home DOM. Focus outlines were visible, but the document outline is not clean.",
      "suggestedFix": "Use one descriptive h1 per page, remove empty headings, and preserve the current visible focus treatment.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/platform-probe.json",
        "evidence/home-desktop.png"
      ]
    },
    {
      "id": "F16",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-inclusive",
      "principleCheckId": "zoom-reflow-targets-and-media",
      "guidanceId": "fluid-scaling",
      "guidanceCategory": "web-quality",
      "summary": "The mobile viewport does not provide usable reflow.",
      "evidence": "The page explicitly requests width=1024 even on a 390px device, shrinking the desktop layout and its controls instead of reflowing content. User scaling is allowed, but users must zoom to read and operate the page.",
      "suggestedFix": "Switch to device-width and make each template reflow without two-dimensional scrolling or forced zoom.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/category-mobile.png",
        "evidence/category-layout.json",
        "evidence/platform-probe.json"
      ]
    },
    {
      "id": "F17",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "no-console-errors",
      "guidanceId": "html",
      "guidanceCategory": "web-quality",
      "summary": "The home page logs an uncaught JavaScript exception.",
      "evidence": "Lighthouse captured “Uncaught SyntaxError: Identifier root has already been declared” in common-js-c-modal-dialog-Bc0k2xk5.js, plus a failed ad resource.",
      "suggestedFix": "Fix the duplicate top-level declaration and isolate optional third-party failures so they do not surface as uncaught page errors.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/lighthouse-details.json"
      ]
    },
    {
      "id": "F18",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "sound-document-and-assets",
      "guidanceId": "html",
      "guidanceCategory": "web-quality",
      "summary": "Image sizing is inconsistent and frequently omits intrinsic dimensions.",
      "evidence": "The image audit found 70 of 100 images without dimensions, 10 oversized images and 22 legacy-format images; Lighthouse also found one distorted and one low-resolution rendered image.",
      "suggestedFix": "Provide intrinsic width/height, preserve natural aspect ratios, and use responsive srcset/sizes with correctly sized modern assets.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/category-images.json",
        "evidence/lighthouse-details.json"
      ]
    },
    {
      "id": "F19",
      "severity": "medium",
      "confidence": "high",
      "principleId": "follow-best-practices",
      "principleCheckId": "browser-platform-hygiene",
      "guidanceId": "html",
      "guidanceCategory": "web-quality",
      "summary": "Deprecated and cache-hostile platform behavior remains.",
      "evidence": "Lighthouse found deprecated Topics API use, three BFCache failure reasons caused by cache-control:no-store behavior, third-party-cookie issues and DevTools inspector issues.",
      "suggestedFix": "Remove deprecated Topics integration, review no-store responses that unnecessarily block BFCache, and eliminate inspector issues.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/lighthouse-details.json"
      ]
    },
    {
      "id": "F20",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "secure-transport-and-headers",
      "guidanceId": "security",
      "guidanceCategory": "web-quality",
      "summary": "Security headers and cookie attributes are incomplete.",
      "evidence": "HTTPS, HSTS, nosniff and SAMEORIGIN are present, but CSP, Referrer-Policy and Permissions-Policy are missing. Cookie evidence reports 12 of 13 cookies without Secure and widespread SameSite=None, including long-lived analytics cookies.",
      "suggestedFix": "Deploy a restrictive CSP and explicit Referrer/Permissions policies; mark all HTTPS cookies Secure and use Lax/Strict unless cross-site behavior is essential.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/headers.json",
        "evidence/cookies.json"
      ]
    },
    {
      "id": "F21",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "data-minimisation-and-third-parties",
      "guidanceId": "privacy",
      "guidanceCategory": "web-quality",
      "summary": "The default page load has a broad tracking footprint.",
      "evidence": "Tracker evidence found 10 third-party origins and Google Analytics, DoubleClick and Tag Manager; Lighthouse listed 13 cross-site cookies, and HAR attributed 146 of 153 requests and 6.25MB to third-party origins.",
      "suggestedFix": "Minimize vendors and tag containers, obtain meaningful consent before non-essential tracking, and batch the few analytics events that remain.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/trackers.json",
        "evidence/home-summary.json",
        "evidence/lighthouse-details.json"
      ]
    },
    {
      "id": "F22",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-private-and-secure",
      "principleCheckId": "defensive-browser-policies",
      "guidanceId": "security",
      "guidanceCategory": "web-quality",
      "summary": "Browser-enforced privacy and XSS defenses are underconfigured.",
      "evidence": "The response has HSTS and X-Frame-Options but no CSP/frame-ancestors policy, no Referrer-Policy and no Permissions-Policy; the page also participates in third-party-cookie synchronization.",
      "suggestedFix": "Add CSP with frame-ancestors and Trusted Types where feasible, a strict referrer policy, a least-privilege permissions policy, and phase out cross-site cookie syncing.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/headers.json",
        "evidence/lighthouse-details.json"
      ]
    },
    {
      "id": "F23",
      "severity": "low",
      "confidence": "high",
      "principleId": "be-internationalised",
      "principleCheckId": "locale-aware-data",
      "guidanceId": "coordinate-global-events",
      "guidanceCategory": "web-quality",
      "summary": "Date presentation mixes Japanese content with hard-coded English weekday text.",
      "evidence": "The Japanese maintenance page displays “2026年7月16日 (Thu) 11:00” and a compact “2026/07/29(水)AM1:00〜AM6:00”, indicating inconsistent formatting rather than one locale-aware pattern.",
      "suggestedFix": "Render dates and times with Intl.DateTimeFormat for the active locale and include an explicit time zone for maintenance windows.",
      "effort": "small",
      "pathId": "information",
      "url": "https://hiroba.dpoint.docomo.ne.jp/information/257",
      "artifacts": [
        "evidence/information-desktop.png"
      ]
    },
    {
      "id": "F24",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-trustworthy",
      "principleCheckId": "trustworthy-input-assistance",
      "guidanceId": "forms",
      "guidanceCategory": "web-quality",
      "summary": "Search input assistance and labeling are incomplete.",
      "evidence": "The app probe reports the site search input has no associated label and an empty autocomplete attribute.",
      "suggestedFix": "Give search a persistent label or accessible name and use appropriate inputmode/autocomplete semantics without suppressing browser assistance.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/app-probe.json",
        "evidence/platform-probe.json"
      ]
    },
    {
      "id": "F25",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "optimised-assets",
      "guidanceId": "deliver-optimized-decorative-images",
      "guidanceCategory": "web-quality",
      "summary": "Image and font delivery is disproportionate for the page.",
      "evidence": "The HAR transferred 3.80MB of images and 1.40MB of fonts; the largest single image was 473KB, and the image audit found 10 oversized, 22 legacy-format and 9 non-responsive images.",
      "suggestedFix": "Convert campaign art to AVIF/WebP where appropriate, generate responsive variants, subset Japanese fonts and apply explicit asset budgets.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/category-images.json"
      ]
    },
    {
      "id": "F26",
      "severity": "medium",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "no-wasteful-work",
      "guidanceId": "deprioritize-background-fetches",
      "guidanceCategory": "web-quality",
      "summary": "The page performs substantial non-core work before user intent.",
      "evidence": "The initial HAR recorded 153 requests, six tag-manager/analytics script loads among top offenders, and Lighthouse estimated about 740KB unused JavaScript.",
      "suggestedFix": "Defer ad and analytics work until consent/idle/interaction, remove duplicate tags and cancel background work when hidden.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/lighthouse-details.json"
      ]
    },
    {
      "id": "F27",
      "severity": "high",
      "confidence": "high",
      "principleId": "be-sustainable",
      "principleCheckId": "third-party-and-media-budget",
      "guidanceId": "efficient-background-processing",
      "guidanceCategory": "web-quality",
      "summary": "Third-party and campaign media consume nearly the entire transfer budget.",
      "evidence": "Third parties account for 146/153 requests and 6.25MB of 6.30MB transferred; active trackers and a 396KB GIF load on the initial page.",
      "suggestedFix": "Set a strict third-party budget, replace animated GIF with efficient controlled media, and lazy-load non-primary campaigns after user intent.",
      "effort": "medium",
      "pathId": "home",
      "url": "https://hiroba.dpoint.docomo.ne.jp/",
      "artifacts": [
        "evidence/home-summary.json",
        "evidence/trackers.json"
      ]
    }
  ],
  "taskList": [
    {
      "id": "T01",
      "title": "Use width=device-width, initial-scale=1 and reflow layouts intrinsically at narrow widths",
      "priority": 1,
      "findingIds": [
        "F06"
      ],
      "guidanceId": "fluid-scaling",
      "status": "open"
    },
    {
      "id": "T02",
      "title": "Minimize vendors and tag containers, obtain meaningful consent before non-essential tracking, and batch the few analytics events that remain",
      "priority": 2,
      "findingIds": [
        "F21"
      ],
      "guidanceId": "privacy",
      "status": "open"
    },
    {
      "id": "T03",
      "title": "Make the LCP resource discoverable in initial HTML with fetchpriority=high, subset fonts, remove parser-blocking scripts, and set durable cache headers on campaign assets",
      "priority": 3,
      "findingIds": [
        "F11"
      ],
      "guidanceId": "optimize-image-priority",
      "status": "open"
    },
    {
      "id": "T04",
      "title": "Do not auto-open promotional dialogs",
      "priority": 4,
      "findingIds": [
        "F04"
      ],
      "guidanceId": "light-dismiss-a-dialog",
      "status": "open"
    },
    {
      "id": "T05",
      "title": "Add meaningful alt text where images convey content, empty alt for decorative images, and an explicit label or accessible name for search",
      "priority": 5,
      "findingIds": [
        "F13"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T06",
      "title": "Raise token contrast to at least 4",
      "priority": 6,
      "findingIds": [
        "F14"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T07",
      "title": "Deploy a restrictive CSP and explicit Referrer/Permissions policies; mark all HTTPS cookies Secure and use Lax/Strict unless cross-site behavior is essential",
      "priority": 7,
      "findingIds": [
        "F20"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T08",
      "title": "Convert campaign art to AVIF/WebP where appropriate, generate responsive variants, subset Japanese fonts and apply explicit asset budgets",
      "priority": 8,
      "findingIds": [
        "F25"
      ],
      "guidanceId": "deliver-optimized-decorative-images",
      "status": "open"
    },
    {
      "id": "T09",
      "title": "Set a strict third-party budget, replace animated GIF with efficient controlled media, and lazy-load non-primary campaigns after user intent",
      "priority": 9,
      "findingIds": [
        "F27"
      ],
      "guidanceId": "efficient-background-processing",
      "status": "open"
    },
    {
      "id": "T10",
      "title": "Fix the viewport and then enforce at least 44 CSS px touch targets, visible focus, and non-hover access to every action",
      "priority": 10,
      "findingIds": [
        "F08"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T11",
      "title": "Prioritize the LCP asset, remove render-blocking work, reserve late content space and defer non-essential advertising/analytics until after core content",
      "priority": 11,
      "findingIds": [
        "F09"
      ],
      "guidanceId": "performance",
      "status": "open"
    },
    {
      "id": "T12",
      "title": "Switch to device-width and make each template reflow without two-dimensional scrolling or forced zoom",
      "priority": 12,
      "findingIds": [
        "F16"
      ],
      "guidanceId": "fluid-scaling",
      "status": "open"
    },
    {
      "id": "T13",
      "title": "Declare color-scheme and provide preference-driven dark surface, text, border and control tokens",
      "priority": 13,
      "findingIds": [
        "F01"
      ],
      "guidanceId": "dark-mode",
      "status": "open"
    },
    {
      "id": "T14",
      "title": "Disable non-essential keyframes and carousel autoplay inside prefers-reduced-motion: reduce while retaining manual controls",
      "priority": 14,
      "findingIds": [
        "F02"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T15",
      "title": "Reduce simultaneous campaigns, reserve one primary promotion, and defer secondary offers into clearly labelled sections",
      "priority": 15,
      "findingIds": [
        "F05"
      ],
      "guidanceId": "reduce visual clutter maximize content",
      "status": "open"
    },
    {
      "id": "T16",
      "title": "Define container contexts for listing, card and sidebar regions and adapt card density/content with size container queries",
      "priority": 16,
      "findingIds": [
        "F07"
      ],
      "guidanceId": "size-aware-styling",
      "status": "open"
    },
    {
      "id": "T17",
      "title": "Reserve dimensions/aspect-ratio for images and promotional slots, and avoid inserting banners above existing content",
      "priority": 17,
      "findingIds": [
        "F10"
      ],
      "guidanceId": "prevent layout shift reserve space CLS aspect-ratio",
      "status": "open"
    },
    {
      "id": "T18",
      "title": "Consolidate tag containers, gate advertising code by consent and need, and load campaign/analytics modules conditionally after core interaction",
      "priority": 18,
      "findingIds": [
        "F12"
      ],
      "guidanceId": "identify-heavy-scripts",
      "status": "open"
    },
    {
      "id": "T19",
      "title": "Use one descriptive h1 per page, remove empty headings, and preserve the current visible focus treatment",
      "priority": 19,
      "findingIds": [
        "F15"
      ],
      "guidanceId": "accessibility",
      "status": "open"
    },
    {
      "id": "T20",
      "title": "Fix the duplicate top-level declaration and isolate optional third-party failures so they do not surface as uncaught page errors",
      "priority": 20,
      "findingIds": [
        "F17"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T21",
      "title": "Provide intrinsic width/height, preserve natural aspect ratios, and use responsive srcset/sizes with correctly sized modern assets",
      "priority": 21,
      "findingIds": [
        "F18"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T22",
      "title": "Remove deprecated Topics integration, review no-store responses that unnecessarily block BFCache, and eliminate inspector issues",
      "priority": 22,
      "findingIds": [
        "F19"
      ],
      "guidanceId": "html",
      "status": "open"
    },
    {
      "id": "T23",
      "title": "Add CSP with frame-ancestors and Trusted Types where feasible, a strict referrer policy, a least-privilege permissions policy, and phase out cross-site cookie syncing",
      "priority": 23,
      "findingIds": [
        "F22"
      ],
      "guidanceId": "security",
      "status": "open"
    },
    {
      "id": "T24",
      "title": "Give search a persistent label or accessible name and use appropriate inputmode/autocomplete semantics without suppressing browser assistance",
      "priority": 24,
      "findingIds": [
        "F24"
      ],
      "guidanceId": "forms",
      "status": "open"
    },
    {
      "id": "T25",
      "title": "Defer ad and analytics work until consent/idle/interaction, remove duplicate tags and cancel background work when hidden",
      "priority": 25,
      "findingIds": [
        "F26"
      ],
      "guidanceId": "deprioritize-background-fetches",
      "status": "open"
    },
    {
      "id": "T26",
      "title": "Add @view-transition { navigation: auto } for same-origin MPA navigation, then assign stable transition names only where continuity helps",
      "priority": 26,
      "findingIds": [
        "F03"
      ],
      "guidanceId": "cross-document-transitions",
      "status": "open"
    },
    {
      "id": "T27",
      "title": "Render dates and times with Intl",
      "priority": 27,
      "findingIds": [
        "F23"
      ],
      "guidanceId": "coordinate-global-events",
      "status": "open"
    }
  ],
  "budget": {
    "pathCount": 6,
    "auditPasses": 1
  },
  "agent": "pi",
  "runId": "2026-07-19T00-36-19-518Z"
}
