{
  "total": 214,
  "passed": 214,
  "failed": 0,
  "results": [
    {
      "test": "page_loads_200:/index.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/index.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/index.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "page_loads_200:/services.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/services.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/services.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "page_loads_200:/how-it-works.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/how-it-works.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/how-it-works.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "page_loads_200:/pricing.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/pricing.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/pricing.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "page_loads_200:/about.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/about.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/about.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "page_loads_200:/faq.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/faq.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/faq.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "page_loads_200:/contact.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/contact.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/contact.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "page_loads_200:/privacy-policy.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/privacy-policy.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/privacy-policy.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "page_loads_200:/terms.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/terms.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/terms.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "page_loads_200:/portal/index.html",
      "passed": true,
      "detail": "status=200"
    },
    {
      "test": "exactly_one_h1:/portal/index.html",
      "passed": true,
      "detail": "h1_count=1"
    },
    {
      "test": "no_console_errors:/portal/index.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_title_present:/index.html",
      "passed": true,
      "detail": "'NRI Property Guard \u2014 Verified Property Inspection & Management for NRIs in India'"
    },
    {
      "test": "seo_description_present:/index.html",
      "passed": true,
      "detail": "'Independent, GPS-verified property inspection and remote management for NRIs. Tamper-evident reports, a live owner dashboard, and on-ground teams across 12+ Indian states.'"
    },
    {
      "test": "seo_canonical_present:/index.html",
      "passed": true,
      "detail": "'https://www.nripropertyguard.in/'"
    },
    {
      "test": "seo_og_tags_present:/index.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_indexable_no_noindex:/index.html",
      "passed": true,
      "detail": "'index, follow, max-image-preview:large'"
    },
    {
      "test": "seo_title_present:/services.html",
      "passed": true,
      "detail": "'Services \u2014 Property Verification, Inspection & Management | NRI Property Guard'"
    },
    {
      "test": "seo_description_present:/services.html",
      "passed": true,
      "detail": "'GPS-verified property inspection, tamper-evident reports, ongoing remote management and Prime Emergency SOS for NRI-owned property in India.'"
    },
    {
      "test": "seo_canonical_present:/services.html",
      "passed": true,
      "detail": "'https://www.nripropertyguard.in/services.html'"
    },
    {
      "test": "seo_og_tags_present:/services.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_indexable_no_noindex:/services.html",
      "passed": true,
      "detail": "'index, follow, max-image-preview:large'"
    },
    {
      "test": "seo_title_present:/how-it-works.html",
      "passed": true,
      "detail": "'How It Works \u2014 The NRI Property Guard Verification Workflow'"
    },
    {
      "test": "seo_description_present:/how-it-works.html",
      "passed": true,
      "detail": "'See exactly how a property moves from registration through Admin review, Manager assignment, on-site inspection and a tamper-evident report on your dashboard.'"
    },
    {
      "test": "seo_canonical_present:/how-it-works.html",
      "passed": true,
      "detail": "'https://www.nripropertyguard.in/how-it-works.html'"
    },
    {
      "test": "seo_og_tags_present:/how-it-works.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_indexable_no_noindex:/how-it-works.html",
      "passed": true,
      "detail": "'index, follow, max-image-preview:large'"
    },
    {
      "test": "seo_title_present:/pricing.html",
      "passed": true,
      "detail": "'Pricing \u2014 Regular & Prime Plans | NRI Property Guard'"
    },
    {
      "test": "seo_description_present:/pricing.html",
      "passed": true,
      "detail": "'Transparent monthly pricing: Regular (1 visit/month) from Rs 2,000/property, Prime (2 visits/month) from Rs 3,500/property \u2014 automatically discounted per property once you register more than 2 properties.'"
    },
    {
      "test": "seo_canonical_present:/pricing.html",
      "passed": true,
      "detail": "'https://www.nripropertyguard.in/pricing.html'"
    },
    {
      "test": "seo_og_tags_present:/pricing.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_indexable_no_noindex:/pricing.html",
      "passed": true,
      "detail": "'index, follow, max-image-preview:large'"
    },
    {
      "test": "seo_title_present:/about.html",
      "passed": true,
      "detail": "'About Us \u2014 NRI Property Guard'"
    },
    {
      "test": "seo_description_present:/about.html",
      "passed": true,
      "detail": "'Learn why NRI Property Guard was built: independent, verifiable, GPS-tagged property inspection and management for Non-Resident Indians.'"
    },
    {
      "test": "seo_canonical_present:/about.html",
      "passed": true,
      "detail": "'https://www.nripropertyguard.in/about.html'"
    },
    {
      "test": "seo_og_tags_present:/about.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_indexable_no_noindex:/about.html",
      "passed": true,
      "detail": "'index, follow, max-image-preview:large'"
    },
    {
      "test": "seo_title_present:/faq.html",
      "passed": true,
      "detail": "'FAQ \u2014 Frequently Asked Questions | NRI Property Guard'"
    },
    {
      "test": "seo_description_present:/faq.html",
      "passed": true,
      "detail": "'Answers to the most common questions NRIs ask about property verification, inspection frequency, tamper-evident reports, pricing and Emergency SOS.'"
    },
    {
      "test": "seo_canonical_present:/faq.html",
      "passed": true,
      "detail": "'https://www.nripropertyguard.in/faq.html'"
    },
    {
      "test": "seo_og_tags_present:/faq.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_indexable_no_noindex:/faq.html",
      "passed": true,
      "detail": "'index, follow, max-image-preview:large'"
    },
    {
      "test": "seo_title_present:/contact.html",
      "passed": true,
      "detail": "'Contact Us | NRI Property Guard'"
    },
    {
      "test": "seo_description_present:/contact.html",
      "passed": true,
      "detail": "\"Get in touch with the NRI Property Guard team by WhatsApp, phone or email \u2014 we'll help you get your property registered and verified.\""
    },
    {
      "test": "seo_canonical_present:/contact.html",
      "passed": true,
      "detail": "'https://www.nripropertyguard.in/contact.html'"
    },
    {
      "test": "seo_og_tags_present:/contact.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_indexable_no_noindex:/contact.html",
      "passed": true,
      "detail": "'index, follow, max-image-preview:large'"
    },
    {
      "test": "seo_title_present:/privacy-policy.html",
      "passed": true,
      "detail": "'Privacy Policy | NRI Property Guard'"
    },
    {
      "test": "seo_description_present:/privacy-policy.html",
      "passed": true,
      "detail": "'How NRI Property Guard collects, uses and protects your personal and property data.'"
    },
    {
      "test": "seo_canonical_present:/privacy-policy.html",
      "passed": true,
      "detail": "'https://www.nripropertyguard.in/privacy-policy.html'"
    },
    {
      "test": "seo_og_tags_present:/privacy-policy.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_indexable_no_noindex:/privacy-policy.html",
      "passed": true,
      "detail": "'index, follow, max-image-preview:large'"
    },
    {
      "test": "seo_title_present:/terms.html",
      "passed": true,
      "detail": "'Terms of Service | NRI Property Guard'"
    },
    {
      "test": "seo_description_present:/terms.html",
      "passed": true,
      "detail": "\"The terms governing use of NRI Property Guard's property verification, inspection and management services.\""
    },
    {
      "test": "seo_canonical_present:/terms.html",
      "passed": true,
      "detail": "'https://www.nripropertyguard.in/terms.html'"
    },
    {
      "test": "seo_og_tags_present:/terms.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "seo_indexable_no_noindex:/terms.html",
      "passed": true,
      "detail": "'index, follow, max-image-preview:large'"
    },
    {
      "test": "portal_login_is_noindex",
      "passed": true,
      "detail": "'noindex, follow'"
    },
    {
      "test": "home_has_organization_jsonld",
      "passed": true,
      "detail": ""
    },
    {
      "test": "faq_has_faqpage_jsonld",
      "passed": true,
      "detail": ""
    },
    {
      "test": "wa_fab_present",
      "passed": true,
      "detail": ""
    },
    {
      "test": "wa_panel_opens_on_click",
      "passed": true,
      "detail": ""
    },
    {
      "test": "wa_link_correct_number",
      "passed": true,
      "detail": "\"https://wa.me/919948039325?text=Hi%20NRI%20Property%20Guard%2C%20I'd%20like%20to%20know%20more%20about%20your%20property%20verification%20%26%20management%20service.\""
    },
    {
      "test": "call_link_correct_number",
      "passed": true,
      "detail": "'tel:+919948039325'"
    },
    {
      "test": "wa_panel_closes_on_close_click",
      "passed": true,
      "detail": ""
    },
    {
      "test": "mobile_nav_toggle_visible",
      "passed": true,
      "detail": ""
    },
    {
      "test": "mobile_nav_opens",
      "passed": true,
      "detail": ""
    },
    {
      "test": "mobile_nav_closes_on_link_click",
      "passed": true,
      "detail": ""
    },
    {
      "test": "owner_login_link_never_wrongly_active_on_home",
      "passed": true,
      "detail": ""
    },
    {
      "test": "active_class_scoped_to_same_directory_links",
      "passed": true,
      "detail": "structural check only"
    },
    {
      "test": "faq_accordion_starts_closed",
      "passed": true,
      "detail": ""
    },
    {
      "test": "faq_accordion_opens",
      "passed": true,
      "detail": ""
    },
    {
      "test": "faq_accordion_closes",
      "passed": true,
      "detail": ""
    },
    {
      "test": "lead_form_posts_to_website_leads",
      "passed": true,
      "detail": "https://kwzjscbvyuotwhrcbxkw.supabase.co/rest/v1/website_leads"
    },
    {
      "test": "lead_form_uses_post",
      "passed": true,
      "detail": ""
    },
    {
      "test": "lead_form_sends_apikey_header",
      "passed": true,
      "detail": ""
    },
    {
      "test": "lead_form_payload_has_lead_type_contact",
      "passed": true,
      "detail": "'contact'"
    },
    {
      "test": "lead_form_payload_captures_name",
      "passed": true,
      "detail": ""
    },
    {
      "test": "lead_form_payload_captures_source_page",
      "passed": true,
      "detail": "'/contact.html'"
    },
    {
      "test": "lead_form_shows_success_message",
      "passed": true,
      "detail": ""
    },
    {
      "test": "role_redirect_customer_reaches_dashboard.html",
      "passed": true,
      "detail": "http://localhost:8899/portal/dashboard.html"
    },
    {
      "test": "role_redirect_admin_reaches_admin-dashboard.html",
      "passed": true,
      "detail": "http://localhost:8899/portal/admin-dashboard.html"
    },
    {
      "test": "role_redirect_super_admin_reaches_admin-dashboard.html",
      "passed": true,
      "detail": "http://localhost:8899/portal/admin-dashboard.html"
    },
    {
      "test": "role_redirect_property_manager_reaches_manager-dashboard.html",
      "passed": true,
      "detail": "http://localhost:8899/portal/manager-dashboard.html"
    },
    {
      "test": "role_redirect_property_executive_reaches_executive-dashboard.html",
      "passed": true,
      "detail": "http://localhost:8899/portal/executive-dashboard.html"
    },
    {
      "test": "admin-dashboard.html_rejects_customer_never_shown",
      "passed": true,
      "detail": "http://localhost:8899/portal/dashboard.html"
    },
    {
      "test": "admin-dashboard.html_rejects_customer_lands_on_own_dashboard",
      "passed": true,
      "detail": "http://localhost:8899/portal/dashboard.html"
    },
    {
      "test": "manager-dashboard.html_rejects_customer_never_shown",
      "passed": true,
      "detail": "http://localhost:8899/portal/dashboard.html"
    },
    {
      "test": "manager-dashboard.html_rejects_customer_lands_on_own_dashboard",
      "passed": true,
      "detail": "http://localhost:8899/portal/dashboard.html"
    },
    {
      "test": "executive-dashboard.html_rejects_property_manager_never_shown",
      "passed": true,
      "detail": "http://localhost:8899/portal/manager-dashboard.html"
    },
    {
      "test": "executive-dashboard.html_rejects_property_manager_lands_on_own_dashboard",
      "passed": true,
      "detail": "http://localhost:8899/portal/manager-dashboard.html"
    },
    {
      "test": "admin-dashboard.html_shell_renders_for_admin",
      "passed": true,
      "detail": "http://localhost:8899/portal/admin-dashboard.html"
    },
    {
      "test": "admin-dashboard.html_shows_expected_nav",
      "passed": true,
      "detail": ""
    },
    {
      "test": "admin-dashboard.html_hides_loading_gate",
      "passed": true,
      "detail": ""
    },
    {
      "test": "manager-dashboard.html_shell_renders_for_property_manager",
      "passed": true,
      "detail": "http://localhost:8899/portal/manager-dashboard.html"
    },
    {
      "test": "manager-dashboard.html_shows_expected_nav",
      "passed": true,
      "detail": ""
    },
    {
      "test": "manager-dashboard.html_hides_loading_gate",
      "passed": true,
      "detail": ""
    },
    {
      "test": "executive-dashboard.html_shell_renders_for_property_executive",
      "passed": true,
      "detail": "http://localhost:8899/portal/executive-dashboard.html"
    },
    {
      "test": "executive-dashboard.html_shows_expected_nav",
      "passed": true,
      "detail": ""
    },
    {
      "test": "executive-dashboard.html_hides_loading_gate",
      "passed": true,
      "detail": ""
    },
    {
      "test": "admin_reassign_button_shown_for_assigned_property",
      "passed": true,
      "detail": "Reassign"
    },
    {
      "test": "admin_reassign_modal_title_says_reassign",
      "passed": true,
      "detail": "Reassign Property to a Different Manager"
    },
    {
      "test": "admin_reassign_context_shows_owner_name",
      "passed": true,
      "detail": "Owner: Ravi Kumar\nProperty: Jubilee Hills Villa\nVisit schedule: 5 Sept 2026, 10:30 am (Scheduled)\nCurrently: Suresh Reddy"
    },
    {
      "test": "admin_reassign_context_shows_property_name",
      "passed": true,
      "detail": "Owner: Ravi Kumar\nProperty: Jubilee Hills Villa\nVisit schedule: 5 Sept 2026, 10:30 am (Scheduled)\nCurrently: Suresh Reddy"
    },
    {
      "test": "admin_reassign_context_shows_schedule",
      "passed": true,
      "detail": "Owner: Ravi Kumar\nProperty: Jubilee Hills Villa\nVisit schedule: 5 Sept 2026, 10:30 am (Scheduled)\nCurrently: Suresh Reddy"
    },
    {
      "test": "admin_reassign_preselects_current_manager",
      "passed": true,
      "detail": "mgr-1"
    },
    {
      "test": "owner_ticket_reply_shows_response_received_badge",
      "passed": true,
      "detail": "Response Received"
    },
    {
      "test": "owner_visits_list_shows_clickable_row",
      "passed": true,
      "detail": ""
    },
    {
      "test": "owner_visit_detail_view_opens",
      "passed": true,
      "detail": ""
    },
    {
      "test": "owner_visit_detail_shows_property_name",
      "passed": true,
      "detail": "Jubilee Hills Villa\nApproved\n\n123 Road No. 5, Hyderabad, Telangana\n\nScheduled: 15 Aug 2026, 11:00 am\nInspection Checklist & Notes\nCondition: Healthy\n\u2705 Doors and locks checked\n\u2b1c Water leakage inspected"
    },
    {
      "test": "owner_visit_detail_shows_checklist_item",
      "passed": true,
      "detail": "Jubilee Hills Villa\nApproved\n\n123 Road No. 5, Hyderabad, Telangana\n\nScheduled: 15 Aug 2026, 11:00 am\nInspection Checklist & Notes\nCondition: Healthy\n\u2705 Doors and locks checked\n\u2b1c Water leakage inspected\n\nNotes: All good overall.\n\nManager Remarks\n\nLooks fine, approved.\n\nPhotos (0 approved)\n\ud83d\udcf8\n\nNo approved photos from this visit yet.\n\nVideos (0 approved)\n\ud83c\udfa5\n\nNo approved videos from this visit yet."
    },
    {
      "test": "owner_visit_detail_shows_manager_remarks",
      "passed": true,
      "detail": "Jubilee Hills Villa\nApproved\n\n123 Road No. 5, Hyderabad, Telangana\n\nScheduled: 15 Aug 2026, 11:00 am\nInspection Checklist & Notes\nCondition: Healthy\n\u2705 Doors and locks checked\n\u2b1c Water leakage inspected\n\nNotes: All good overall.\n\nManager Remarks\n\nLooks fine, approved.\n\nPhotos (0 approved)\n\ud83d\udcf8\n\nNo approved photos from this visit yet.\n\nVideos (0 approved)\n\ud83c\udfa5\n\nNo approved videos from this visit yet."
    },
    {
      "test": "manager_reassign_button_present",
      "passed": true,
      "detail": ""
    },
    {
      "test": "manager_reassign_context_shows_owner_name",
      "passed": true,
      "detail": "Owner: Ravi Kumar\nProperty: Jubilee Hills Villa\nScheduled: 10 Sept 2026, 09:00 am\nCurrently: Kiran Exec"
    },
    {
      "test": "manager_reassign_context_shows_property_name",
      "passed": true,
      "detail": "Owner: Ravi Kumar\nProperty: Jubilee Hills Villa\nScheduled: 10 Sept 2026, 09:00 am\nCurrently: Kiran Exec"
    },
    {
      "test": "manager_reassign_context_shows_schedule",
      "passed": true,
      "detail": "Owner: Ravi Kumar\nProperty: Jubilee Hills Villa\nScheduled: 10 Sept 2026, 09:00 am\nCurrently: Kiran Exec"
    },
    {
      "test": "manager_reassign_context_shows_current_executive",
      "passed": true,
      "detail": "Owner: Ravi Kumar\nProperty: Jubilee Hills Villa\nScheduled: 10 Sept 2026, 09:00 am\nCurrently: Kiran Exec"
    },
    {
      "test": "my_property_list_shows_property_card",
      "passed": true,
      "detail": ""
    },
    {
      "test": "my_property_list_shows_thumbnail",
      "passed": true,
      "detail": ""
    },
    {
      "test": "my_property_detail_view_opens",
      "passed": true,
      "detail": ""
    },
    {
      "test": "my_property_detail_shows_property_name",
      "passed": true,
      "detail": "Uppendar Villa\nApproved\n\n123 Road No. 5, Hyderabad, Telangana 500001, India\n\nProperty Assigned Date: 20 Aug 2026\nApartment\nHyderabad\nManager: Suresh Reddy\nCondition: Healthy\nStatus Timeline\nSubmitted "
    },
    {
      "test": "my_property_detail_shows_status_timeline",
      "passed": true,
      "detail": "Uppendar Villa\nApproved\n\n123 Road No. 5, Hyderabad, Telangana 500001, India\n\nProperty Assigned Date: 20 Aug 2026\nApartment\nHyderabad\nManager: Suresh Reddy\nCondition: Healthy\nStatus Timeline\nSubmitted "
    },
    {
      "test": "my_property_detail_shows_checklist_item",
      "passed": true,
      "detail": "Uppendar Villa\nApproved\n\n123 Road No. 5, Hyderabad, Telangana 500001, India\n\nProperty Assigned Date: 20 Aug 2026\nApartment\nHyderabad\nManager: Suresh Reddy\nCondition: Healthy\nStatus Timeline\nSubmitted by you\nUnder Admin review\nAssigned to Property Manager\nProperty Executive assigned\nSite visit scheduled\nInspection in progress\nInspection completed\nAwaiting Manager approval\nApproved & verified\nLatest Inspection Checklist & Notes\nCondition: Healthy\n\u2705 Doors and locks checked\n\u2b1c Water leakage inspected"
    },
    {
      "test": "my_property_detail_shows_report_history",
      "passed": true,
      "detail": "Uppendar Villa\nApproved\n\n123 Road No. 5, Hyderabad, Telangana 500001, India\n\nProperty Assigned Date: 20 Aug 2026\nApartment\nHyderabad\nManager: Suresh Reddy\nCondition: Healthy\nStatus Timeline\nSubmitted by you\nUnder Admin review\nAssigned to Property Manager\nProperty Executive assigned\nSite visit scheduled\nInspection in progress\nInspection completed\nAwaiting Manager approval\nApproved & verified\nLatest Inspection Checklist & Notes\nCondition: Healthy\n\u2705 Doors and locks checked\n\u2b1c Water leakage inspected"
    },
    {
      "test": "my_property_detail_shows_photos_count",
      "passed": true,
      "detail": "Uppendar Villa\nApproved\n\n123 Road No. 5, Hyderabad, Telangana 500001, India\n\nProperty Assigned Date: 20 Aug 2026\nApartment\nHyderabad\nManager: Suresh Reddy\nCondition: Healthy\nStatus Timeline\nSubmitted by you\nUnder Admin review\nAssigned to Property Manager\nProperty Executive assigned\nSite visit scheduled\nInspection in progress\nInspection completed\nAwaiting Manager approval\nApproved & verified\nLatest Inspection Checklist & Notes\nCondition: Healthy\n\u2705 Doors and locks checked\n\u2b1c Water leakage inspected\n\nNotes: All good overall.\n\nObservations: Minor paint wear near balcony.\n\nReport History\nREPORT #\tVERSION\tGENERATED\t\nRPT-95A39390\tv1\t24 Aug 2026\tDownload\nPhotos (1 approved)\n\ud83d\uddbc\ufe0f\nVideos (0 approved)\n\ud83c\udfa5\n\nNo approved videos yet."
    },
    {
      "test": "my_property_media_tile_present_no_crash",
      "passed": true,
      "detail": ""
    },
    {
      "test": "my_property_lightbox_has_no_geo_stamp_overlay",
      "passed": true,
      "detail": ""
    },
    {
      "test": "my_property_lightbox_has_no_timestamp_text",
      "passed": true,
      "detail": ""
    },
    {
      "test": "my_property_media_tile_has_no_cap_overlay",
      "passed": true,
      "detail": ""
    },
    {
      "test": "admin_customers_list_shows_plan_badge",
      "passed": true,
      "detail": "NAME\tEMAIL\tPHONE\tPLAN\tPROPERTIES\tPAID\tDUE\t\nRavi Kumar\travi@test.com\t9999999999\tPrime\t1\t\u20b95,000\t\u20b95,000\tView Statement"
    },
    {
      "test": "admin_customers_list_shows_paid_amount",
      "passed": true,
      "detail": "NAME\tEMAIL\tPHONE\tPLAN\tPROPERTIES\tPAID\tDUE\t\nRavi Kumar\travi@test.com\t9999999999\tPrime\t1\t\u20b95,000\t\u20b95,000\tView Statement"
    },
    {
      "test": "admin_customers_list_shows_due_amount",
      "passed": true,
      "detail": "NAME\tEMAIL\tPHONE\tPLAN\tPROPERTIES\tPAID\tDUE\t\nRavi Kumar\travi@test.com\t9999999999\tPrime\t1\t\u20b95,000\t\u20b95,000\tView Statement"
    },
    {
      "test": "admin_customers_list_has_view_statement_button",
      "passed": true,
      "detail": ""
    },
    {
      "test": "customer_detail_view_opens",
      "passed": true,
      "detail": ""
    },
    {
      "test": "customer_detail_shows_customer_name",
      "passed": true,
      "detail": "Ravi Kumar\nPrime\nravi@test.com\n9999999999\nCustomer since 1 Jan 2025\n1 property\nProperties, Manager & Executive\nPROPERTY\tSTATUS\tMANAGER\tLATEST VISIT EXECUTIVE\nJubilee Hills Villa\nHyderabad, Telangana\n\t"
    },
    {
      "test": "customer_detail_shows_property_and_manager",
      "passed": true,
      "detail": "Ravi Kumar\nPrime\nravi@test.com\n9999999999\nCustomer since 1 Jan 2025\n1 property\nProperties, Manager & Executive\nPROPERTY\tSTATUS\tMANAGER\tLATEST VISIT EXECUTIVE\nJubilee Hills Villa\nHyderabad, Telangana\n\tApproved\tSuresh Reddy\tKiran Exec\nFinancial Statement\nTOTAL INVOICED\n\u20b910,000\nTOTAL PAID\n\u20b95,000\nTOTAL DUE\n\u20b95,000\nINVOICES\n2\nBILLING MONTH\tDESCRIPTION\tAMOUNT\tSTATUS\tDUE DATE\n1 Jul 2026\tPrime plan\t\u20b95,000\t"
    },
    {
      "test": "customer_detail_shows_latest_executive",
      "passed": true,
      "detail": "Ravi Kumar\nPrime\nravi@test.com\n9999999999\nCustomer since 1 Jan 2025\n1 property\nProperties, Manager & Executive\nPROPERTY\tSTATUS\tMANAGER\tLATEST VISIT EXECUTIVE\nJubilee Hills Villa\nHyderabad, Telangana\n\tApproved\tSuresh Reddy\tKiran Exec\nFinancial Statement\nTOTAL INVOICED\n\u20b910,000\nTOTAL PAID\n\u20b95,000\nTOTAL DUE\n\u20b95,000\nINVOICES\n2\nBILLING MONTH\tDESCRIPTION\tAMOUNT\tSTATUS\tDUE DATE\n1 Jul 2026\tPrime plan\t\u20b95,000\t"
    },
    {
      "test": "customer_detail_shows_financial_totals",
      "passed": true,
      "detail": "Ravi Kumar\nPrime\nravi@test.com\n9999999999\nCustomer since 1 Jan 2025\n1 property\nProperties, Manager & Executive\nPROPERTY\tSTATUS\tMANAGER\tLATEST VISIT EXECUTIVE\nJubilee Hills Villa\nHyderabad, Telangana\n\tApproved\tSuresh Reddy\tKiran Exec\nFinancial Statement\nTOTAL INVOICED\n\u20b910,000\nTOTAL PAID\n\u20b95,000\nTOTAL DUE\n\u20b95,000\nINVOICES\n2\nBILLING MONTH\tDESCRIPTION\tAMOUNT\tSTATUS\tDUE DATE\n1 Jul 2026\tPrime plan\t\u20b95,000\tPaid\t10 Jul 2026\n1 Aug 2026\tPrime plan\t\u20b95,000\tDue\t10 Aug 2026"
    },
    {
      "test": "customer_detail_shows_invoice_lines",
      "passed": true,
      "detail": "Ravi Kumar\nPrime\nravi@test.com\n9999999999\nCustomer since 1 Jan 2025\n1 property\nProperties, Manager & Executive\nPROPERTY\tSTATUS\tMANAGER\tLATEST VISIT EXECUTIVE\nJubilee Hills Villa\nHyderabad, Telangana\n\tApproved\tSuresh Reddy\tKiran Exec\nFinancial Statement\nTOTAL INVOICED\n\u20b910,000\nTOTAL PAID\n\u20b95,000\nTOTAL DUE\n\u20b95,000\nINVOICES\n2\nBILLING MONTH\tDESCRIPTION\tAMOUNT\tSTATUS\tDUE DATE\n1 Jul 2026\tPrime plan\t\u20b95,000\tPaid\t10 Jul 2026\n1 Aug 2026\tPrime plan\t\u20b95,000\tDue\t10 Aug 2026"
    },
    {
      "test": "manager_approval_tile_has_no_geo_stamp",
      "passed": true,
      "detail": "\ud83d\uddbc\ufe0f"
    },
    {
      "test": "manager_approval_lightbox_has_no_gps_overlay",
      "passed": true,
      "detail": ""
    },
    {
      "test": "manager_approval_lightbox_has_no_geo_stamp_element",
      "passed": true,
      "detail": ""
    },
    {
      "test": "executive_media_grid_has_no_geo_stamp",
      "passed": true,
      "detail": "\ud83d\uddbc\ufe0f"
    },
    {
      "test": "executive_lightbox_has_no_gps_overlay",
      "passed": true,
      "detail": ""
    },
    {
      "test": "executive_lightbox_has_no_geo_stamp_element",
      "passed": true,
      "detail": ""
    },
    {
      "test": "executive_upload_blocked_without_gps",
      "passed": true,
      "detail": ""
    },
    {
      "test": "executive_upload_blocked_shows_error_toast",
      "passed": true,
      "detail": "Location is required for every photo and video. Please allow location access (or move somewhere with a GPS signal) and try again."
    },
    {
      "test": "auto_refresh_reloads_data_after_30s",
      "passed": true,
      "detail": "before=1 after=2"
    },
    {
      "test": "property_thumbnail_signed_once_at_boot",
      "passed": true,
      "detail": "count=1"
    },
    {
      "test": "property_thumbnail_renders_from_cache",
      "passed": true,
      "detail": ""
    },
    {
      "test": "property_thumbnail_not_resigned_on_autorefresh",
      "passed": true,
      "detail": "count=1"
    },
    {
      "test": "property_thumbnail_still_renders_after_autorefresh",
      "passed": true,
      "detail": ""
    },
    {
      "test": "portal_supabase_client_initializes_and_session_check_completes",
      "passed": true,
      "detail": ""
    },
    {
      "test": "portal_register_tab_shows_tier_picker",
      "passed": true,
      "detail": ""
    },
    {
      "test": "portal_tier_picker_prime_selectable",
      "passed": true,
      "detail": ""
    },
    {
      "test": "portal_password_field_masked",
      "passed": true,
      "detail": ""
    },
    {
      "test": "portal_email_field_correct_type",
      "passed": true,
      "detail": ""
    },
    {
      "test": "robots_txt_200",
      "passed": true,
      "detail": ""
    },
    {
      "test": "robots_txt_disallows_dashboard",
      "passed": true,
      "detail": "User-agent: *\nAllow: /\nDisallow: /portal/dashboard.html\nDisallow: /portal/admin-dashboard.html\nDisallow: /portal/manager-dashboard.html\nDisallow: /portal/executive-dashboard.html\n\nSitemap: https://www"
    },
    {
      "test": "robots_txt_references_sitemap",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_xml_200",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_xml_has_urlset",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_includes:index.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_includes:services.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_includes:how-it-works.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_includes:pricing.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_includes:about.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_includes:faq.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_includes:contact.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_includes:privacy-policy.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "sitemap_includes:terms.html",
      "passed": true,
      "detail": ""
    },
    {
      "test": "internal_links_no_404",
      "passed": true,
      "detail": "[]"
    },
    {
      "test": "no_horizontal_overflow_at_375px",
      "passed": true,
      "detail": "[]"
    },
    {
      "test": "navbar_links_share_one_baseline_at_1366px",
      "passed": true,
      "detail": "[56, 56, 56, 56, 56, 56, 56]"
    },
    {
      "test": "mobile_drawer_clears_header_at_375px",
      "passed": true,
      "detail": "drawer_top=170.015625 header_bottom=170.015625"
    },
    {
      "test": "lightbox_has_no_internal_scroll",
      "passed": true,
      "detail": "{'scrollH': 720, 'clientH': 720, 'scrollW': 920, 'clientW': 920}"
    },
    {
      "test": "lightbox_maximize_control_present",
      "passed": true,
      "detail": ""
    },
    {
      "test": "lightbox_maximize_expands_view",
      "passed": true,
      "detail": ""
    },
    {
      "test": "lightbox_maximize_state_resets_on_close",
      "passed": true,
      "detail": ""
    },
    {
      "test": "pricing_one_property_regular_is_2000",
      "passed": true,
      "detail": "{'oneRegular': 2000, 'onePrime': 3500, 'twoRegular': 4000, 'threeRegular': 4500, 'threePrime': 7500, 'eightPrime': 20000}"
    },
    {
      "test": "pricing_one_property_prime_is_3500",
      "passed": true,
      "detail": "{'oneRegular': 2000, 'onePrime': 3500, 'twoRegular': 4000, 'threeRegular': 4500, 'threePrime': 7500, 'eightPrime': 20000}"
    },
    {
      "test": "pricing_two_properties_uses_standard_rate",
      "passed": true,
      "detail": "{'oneRegular': 2000, 'onePrime': 3500, 'twoRegular': 4000, 'threeRegular': 4500, 'threePrime': 7500, 'eightPrime': 20000}"
    },
    {
      "test": "pricing_three_properties_uses_bulk_rate",
      "passed": true,
      "detail": "{'oneRegular': 2000, 'onePrime': 3500, 'twoRegular': 4000, 'threeRegular': 4500, 'threePrime': 7500, 'eightPrime': 20000}"
    },
    {
      "test": "pricing_three_properties_prime_bulk_rate",
      "passed": true,
      "detail": "{'oneRegular': 2000, 'onePrime': 3500, 'twoRegular': 4000, 'threeRegular': 4500, 'threePrime': 7500, 'eightPrime': 20000}"
    },
    {
      "test": "pricing_eight_properties_prime_bulk_rate",
      "passed": true,
      "detail": "{'oneRegular': 2000, 'onePrime': 3500, 'twoRegular': 4000, 'threeRegular': 4500, 'threePrime': 7500, 'eightPrime': 20000}"
    },
    {
      "test": "docinv_documents_tab_active_by_default",
      "passed": true,
      "detail": ""
    },
    {
      "test": "docinv_document_card_renders",
      "passed": true,
      "detail": "\ud83d\udcc4\nSupporting document \u2014 Uppendar Villa\nKYC \u00b7 Uppendar Villa \u00b7 20 Aug 2026\n\u2b07"
    },
    {
      "test": "docinv_invoices_tab_switches",
      "passed": true,
      "detail": ""
    },
    {
      "test": "docinv_invoice_card_shows_amount_and_rate",
      "passed": true,
      "detail": "Monitoring subscription \u2014 August 2026\nDue 11 Aug 2026\n\u20b97,500\nDue\n3 properties x Rs 2,500/property/month (Prime \u2014 2 visits/month)\n\u2b07 Download PDF\n\ud83d\udcb3 Pay Now\nMonitoring subscription \u2014 July 2026\nDue 11 Jul 2026\n\u20b97,500\nPaid\n3 properties x Rs 2,500/property/month (Prime \u2014 2 visits/month)\n\u2b07 Download PDF"
    },
    {
      "test": "docinv_pay_now_only_on_due_invoice",
      "passed": true,
      "detail": ""
    },
    {
      "test": "docinv_status_chips_styled",
      "passed": true,
      "detail": ""
    },
    {
      "test": "docinv_due_chip_has_color_not_transparent",
      "passed": true,
      "detail": "rgb(251, 241, 217)"
    },
    {
      "test": "docinv_pay_now_desktop_fallback_toast",
      "passed": true,
      "detail": "Pay by UPI to nripropertyguard@upi (\u20b97,500) from your phone, or open this on your phone to pay directly."
    },
    {
      "test": "profile_shows_dynamic_pricing_estimate",
      "passed": true,
      "detail": "Account Details\nFull name\nPhone\nEmail\nSave Changes\nMembership Plan\n\nCurrent plan: Prime \u2014 2 inspection visits/month\n\n3 properties \u00d7 \u20b92,500/month (Prime \u2014 2 visits/month)\n\nEstimated monthly cost: \u20b97,500\n\nYour actual monthly invoice is confirmed on the Documents & Invoices tab.\n\nEmergency SOS is active on your account.\n\nChange Password\nNew password\nConfirm new password\nUpdate Password"
    },
    {
      "test": "pricing_page_shows_new_tiers",
      "passed": true,
      "detail": ""
    },
    {
      "test": "pricing_page_no_stale_flat_rate_claim",
      "passed": true,
      "detail": ""
    }
  ]
}