{"id":15,"date":"2026-08-14T06:29:26","date_gmt":"2026-08-14T06:29:26","guid":{"rendered":"https:\/\/drfo.health\/?page_id=15"},"modified":"2026-09-17T13:08:27","modified_gmt":"2026-09-17T13:08:27","slug":"health-concerns","status":"publish","type":"page","link":"https:\/\/drfo.health\/ur\/health-concerns\/","title":{"rendered":"\u0622\u0646 \u0644\u0627\u0626\u0646 \u0645\u0634\u0627\u0648\u0631\u062a"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"15\" class=\"elementor elementor-15\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0c52b3a e-con e-atomic-element e-flexbox-base e-791ef3d \" data-id=\"0c52b3a\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"0c52b3a\">\n    <div class=\"elementor-element elementor-element-fe7cb9f e-con e-atomic-element e-flexbox-base e-ca9f003 \" data-id=\"fe7cb9f\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"fe7cb9f\">\n    <div class=\"elementor-element elementor-element-b2dabf7 e-con e-atomic-element e-flexbox-base e-b2dabf7-00d15cf \" data-id=\"b2dabf7\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"b2dabf7\">\n    <div class=\"elementor-element elementor-element-b06b938 e-con e-atomic-element e-flexbox-base e-b06b938-49a9b04 \" data-id=\"b06b938\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"b06b938\">\n    <div class=\"elementor-element elementor-element-c3f5307 e-con e-atomic-element e-flexbox-base e-c3f5307-1769578 \" data-id=\"c3f5307\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"c3f5307\">\n    \t\t<div class=\"elementor-element elementor-element-451269d elementor-widget elementor-widget-heading\" data-id=\"451269d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Book Online Consultation<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-245cd09 elementor-widget elementor-widget-heading\" data-id=\"245cd09\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Private, Convenient &amp; Personalized Care<\/h2>\t\t\t\t<\/div>\n\t\t\t\t\t<p class=\"e-7ec5e87-5180fd2 e-paragraph-base\" data-interaction-id=\"7ec5e87\">Choose your preferred consultation type, select a convenient date and time, and submit your booking request through WhatsApp. After your booking details are reviewed, payment is confirmed manually for security, and your private consultation link will be shared with you.<\/p>\n\t\t\t\t<div class=\"elementor-element elementor-element-fe0006f elementor-widget elementor-widget-heading\" data-id=\"fe0006f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Note: For patients in Pakistan, medicines can be delivered to their home upon request. For international patients, guidance regarding the recommended medicines will be provided, allowing them to purchase them from a nearby pharmacy in their respective country.<\/h2>\t\t\t\t<\/div>\n\t\t\n<\/div>\n\n<\/div>\n\n<\/div>\n\n<\/div>\n<div class=\"elementor-element elementor-element-59e2a94 e-con e-atomic-element e-flexbox-base e-59e2a94-13eafa3 \" data-id=\"59e2a94\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"59e2a94\">\n    <div class=\"elementor-element elementor-element-09afa9b e-con e-atomic-element e-flexbox-base e-09afa9b-ea2f589 \" data-id=\"09afa9b\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"09afa9b\">\n    <div class=\"elementor-element elementor-element-50eddf7 e-con e-atomic-element e-flexbox-base e-50eddf7-66599a6 \" data-id=\"50eddf7\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"50eddf7\">\n    <div class=\"elementor-element elementor-element-2d3c710 e-con e-atomic-element e-flexbox-base e-2d3c710-036b791 \" data-id=\"2d3c710\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"2d3c710\">\n    \t\t<div class=\"elementor-element elementor-element-94f0aca elementor-widget elementor-widget-heading\" data-id=\"94f0aca\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h5 class=\"elementor-heading-title elementor-size-default\">Booking Type<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8171208 elementor-widget elementor-widget-html\" data-id=\"8171208\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"booking-fees\">\r\n  <div class=\"fee-line\">\r\n    <span class=\"fee-label\">Standard Booking<\/span>\r\n    <span class=\"fee-amount\">$45<\/span>\r\n  <\/div>\r\n  <div class=\"fee-line\">\r\n    <span class=\"fee-label\">Priority Fast Track Booking<\/span>\r\n    <span class=\"fee-amount\">$90<\/span>\r\n  <\/div>\r\n<\/div>\r\n\r\n<style>\r\n.booking-fees {\r\n  margin-top: 14px;\r\n  font-family: 'Segoe UI', Arial, sans-serif;\r\n}\r\n\r\n.fee-line {\r\n  display: flex;\r\n  justify-content: space-between;\r\n  align-items: baseline;\r\n  padding: 8px 0;\r\n  border-bottom: 1px solid #e3ddd0;\r\n  max-width: 360px;\r\n}\r\n\r\n.fee-label {\r\n  font-size: 14px;\r\n  font-weight: 600;\r\n  color: #26302b;\r\n}\r\n\r\n.fee-amount {\r\n  font-size: 16px;\r\n  font-weight: 700;\r\n  color: #1f4d3d;\r\n}\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t\t<p class=\"e-ac8a867-75df827 e-paragraph-base\" data-interaction-id=\"ac8a867\">Payment confirmation required before meeting link is sent.<\/p>\n\t\t\n<\/div>\n\n<\/div>\n\n<\/div>\n\n<\/div>\n\n<\/div>\n<div class=\"elementor-element elementor-element-7b57cc9 e-con e-atomic-element e-flexbox-base e-29982d0 \" data-id=\"7b57cc9\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"7b57cc9\">\n    \t\t<div class=\"elementor-element elementor-element-9fba97e elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"9fba97e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<title>Consultation Booking<\/title>\r\n<style>\r\n  :root{\r\n    --green-dark:#1f4d3d;\r\n    --green:#2f6f4e;\r\n    --green-light:#e8f3ec;\r\n    --cream:#f7f4ee;\r\n    --card:#ffffff;\r\n    --border:#e3ddd0;\r\n    --text:#26302b;\r\n    --muted:#7a8079;\r\n    --warn-bg:#fdf2e3;\r\n    --warn-text:#b5651d;\r\n    --pending-bg:#fdeccb;\r\n    --pending-text:#9a6a12;\r\n  }\r\n  *{box-sizing:border-box;}\r\n  body{\r\n    margin:0;\r\n    font-family:'Segoe UI', 'Helvetica Neue', Arial, sans-serif;\r\n    background:var(--cream);\r\n    color:var(--text);\r\n    padding:32px 16px 80px;\r\n  }\r\n  .wrap{max-width:760px;margin:0 auto;}\r\n  .tabs{display:flex;gap:10px;margin-bottom:16px;}\r\n  .tab{\r\n    flex:1;\r\n    text-align:center;\r\n    padding:10px 14px;\r\n    border-radius:8px;\r\n    font-size:13px;\r\n    font-weight:600;\r\n    border:1.5px solid var(--green);\r\n    color:var(--green-dark);\r\n    background:#fff;\r\n    cursor:default;\r\n    transition:.2s;\r\n  }\r\n  .tab.active{background:var(--green);color:#fff;border-color:var(--green);}\r\n  .tab.clickable{cursor:pointer;}\r\n  .card{\r\n    background:var(--card);\r\n    border:1px solid var(--border);\r\n    border-radius:14px;\r\n    padding:28px 28px 26px;\r\n    box-shadow:0 1px 3px rgba(0,0,0,.03);\r\n  }\r\n  h1{font-size:22px;margin:2px 0 22px;color:var(--text);}\r\n  .eyebrow{font-size:11px;letter-spacing:.08em;color:var(--green);font-weight:700;text-transform:uppercase;}\r\n  label{\r\n    display:block;\r\n    font-size:12.5px;\r\n    font-weight:600;\r\n    margin:16px 0 6px;\r\n    color:var(--text);\r\n  }\r\n  label .req{color:#c0392b;}\r\n  input[type=text], input[type=email], input[type=tel], input[type=number], input[type=date],\r\n  textarea{\r\n    width:100%;\r\n    padding:10px 12px;\r\n    border:1.4px solid var(--border);\r\n    border-radius:8px;\r\n    font-size:14px;\r\n    background:#fff;\r\n    color:var(--text);\r\n    font-family:inherit;\r\n  }\r\n  input:focus, textarea:focus{outline:2px solid var(--green);outline-offset:1px;border-color:var(--green);}\r\n  textarea{resize:vertical;min-height:70px;}\r\n  .hint{font-size:11px;color:var(--muted);margin-top:4px;}\r\n  .row2{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;}\r\n  @media (max-width:560px){.row2{grid-template-columns:1fr;}}\r\n  .checks{margin-top:18px;display:flex;flex-direction:column;gap:10px;}\r\n  .check-item{\r\n    display:flex !important;\r\n    align-items:flex-start !important;\r\n    gap:10px !important;\r\n    font-size:13px !important;\r\n    line-height:1.4 !important;\r\n    cursor:pointer;\r\n    position:relative;\r\n  }\r\n  .check-item input[type=checkbox]{\r\n    position:absolute !important;\r\n    opacity:0 !important;\r\n    width:20px !important;\r\n    height:20px !important;\r\n    margin:0 !important;\r\n    top:0;\r\n    left:0;\r\n    cursor:pointer;\r\n    z-index:2;\r\n  }\r\n  .check-item .box{\r\n    flex:0 0 20px;\r\n    width:20px;\r\n    height:20px;\r\n    border:2px solid var(--green) !important;\r\n    border-radius:5px !important;\r\n    background:#fff !important;\r\n    position:relative;\r\n    margin-top:1px;\r\n    transition:.15s;\r\n  }\r\n  .check-item .box::after{\r\n    content:\"\";\r\n    position:absolute;\r\n    display:none;\r\n    left:6px;\r\n    top:2px;\r\n    width:5px;\r\n    height:10px;\r\n    border:solid #fff;\r\n    border-width:0 3px 3px 0;\r\n    transform:rotate(45deg);\r\n  }\r\n  .check-item input[type=checkbox]:checked ~ .box{\r\n    background:var(--green) !important;\r\n    border-color:var(--green) !important;\r\n  }\r\n  .check-item input[type=checkbox]:checked ~ .box::after{\r\n    display:block;\r\n  }\r\n  .check-item input[type=checkbox]:focus-visible ~ .box{\r\n    outline:2px solid var(--green-dark);\r\n    outline-offset:2px;\r\n  }\r\n\r\n  \/* ===== Custom dropdown (replaces native <select> so TranslatePress can\r\n     detect + translate every option, since each option is now a real DOM\r\n     element instead of native OS-rendered <option> list) ===== *\/\r\n  .custom-select{position:relative;}\r\n  .custom-select .cs-trigger{\r\n    width:100%;\r\n    padding:10px 12px;\r\n    border:1.4px solid var(--border);\r\n    border-radius:8px;\r\n    font-size:14px;\r\n    background:#fff;\r\n    color:var(--text);\r\n    cursor:pointer;\r\n    display:flex;\r\n    align-items:center;\r\n    justify-content:space-between;\r\n    gap:8px;\r\n    user-select:none;\r\n  }\r\n  .custom-select .cs-trigger:focus{outline:2px solid var(--green);outline-offset:1px;border-color:var(--green);}\r\n  .custom-select.invalid .cs-trigger{border-color:#c0392b;}\r\n  .custom-select .cs-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}\r\n  .custom-select .cs-value.placeholder{color:#8b8f86;}\r\n  .custom-select .cs-arrow{font-size:10px;color:var(--muted);flex:0 0 auto;transition:transform .15s;}\r\n  .custom-select.open .cs-arrow{transform:rotate(180deg);}\r\n  .custom-select .cs-options{\r\n    display:none;\r\n    position:absolute;\r\n    top:calc(100% + 6px);\r\n    left:0;\r\n    right:0;\r\n    max-height:230px;\r\n    overflow-y:auto;\r\n    background:#fff;\r\n    border:1.4px solid var(--border);\r\n    border-radius:8px;\r\n    box-shadow:0 10px 30px rgba(31,77,61,.15);\r\n    z-index:40;\r\n    padding:4px;\r\n  }\r\n  .custom-select.open .cs-options{display:block;}\r\n  .custom-select .cs-option{\r\n    padding:9px 10px;\r\n    border-radius:6px;\r\n    font-size:13.5px;\r\n    cursor:pointer;\r\n    color:var(--text);\r\n  }\r\n  .custom-select .cs-option:hover{background:var(--green-light);}\r\n  .custom-select .cs-option.selected{background:var(--green-dark);color:#fff;font-weight:600;}\r\n\r\n  \/* Preferred Time submenu is locked to the English visual style (LTR,\r\n     left-aligned, default Latin font) even when the page is otherwise\r\n     shown in Urdu\/RTL. Nothing else on the page is affected. *\/\r\n  #csPrefTime, #csPrefTime *{\r\n    direction:ltr !important;\r\n    text-align:left !important;\r\n    font-family:'Segoe UI','Helvetica Neue',Arial,sans-serif !important;\r\n  }\r\n  #csPrefTime .cs-trigger{justify-content:space-between !important;}\r\n\r\n  .date-field{position:relative;}\r\n  .date-field input{cursor:pointer;padding-right:36px;background:#fff;}\r\n  .date-icon{\r\n    position:absolute;right:12px;top:50%;transform:translateY(-50%);\r\n    font-size:14px;pointer-events:none;opacity:.7;\r\n  }\r\n  .calendar-pop{\r\n    display:none;\r\n    position:absolute;\r\n    bottom:calc(100% + 8px);\r\n    left:0;\r\n    width:280px;\r\n    max-width:90vw;\r\n    background:#fff;\r\n    border:1.4px solid var(--border);\r\n    border-radius:12px;\r\n    box-shadow:0 10px 30px rgba(31,77,61,.18);\r\n    padding:14px;\r\n    z-index:50;\r\n  }\r\n  .calendar-pop.open{display:block;}\r\n  .cal-header{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:10px;}\r\n  .cal-nav{\r\n    border:1.4px solid var(--border);background:#fff;color:var(--green-dark);\r\n    width:28px;height:28px;border-radius:7px;font-size:15px;cursor:pointer;\r\n    display:flex;align-items:center;justify-content:center;flex:0 0 auto;\r\n  }\r\n  .cal-nav:hover{background:var(--green-light);}\r\n  .cal-title{display:flex;gap:6px;flex:1;}\r\n  .cal-title select{\r\n    padding:5px 6px;font-size:12.5px;border:1.4px solid var(--border);border-radius:7px;\r\n    background:#fff;font-weight:600;color:var(--text);\r\n  }\r\n  .cal-weekdays{\r\n    display:grid;grid-template-columns:repeat(7,1fr);\r\n    font-size:10.5px;color:var(--muted);text-align:center;font-weight:700;\r\n    margin-bottom:4px;\r\n  }\r\n  .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;}\r\n  .cal-day{\r\n    aspect-ratio:1;display:flex;align-items:center;justify-content:center;\r\n    font-size:12.5px;border-radius:7px;cursor:pointer;color:var(--text);\r\n    border:1.4px solid transparent;\r\n  }\r\n  .cal-day:hover{background:var(--green-light);}\r\n  .cal-day.other-month{color:#c9c4b6;}\r\n  .cal-day.today{border-color:var(--green);font-weight:700;}\r\n  .cal-day.selected{background:var(--green-dark);color:#fff;font-weight:700;}\r\n  .cal-day.disabled{color:#d8d3c6;cursor:not-allowed;pointer-events:none;}\r\n\r\n  .info-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px;}\r\n  @media (max-width:560px){.info-grid{grid-template-columns:1fr;}}\r\n  .info-box{background:var(--green-light);border-radius:10px;padding:14px 16px;}\r\n  .info-box h4{margin:0 0 6px;font-size:12.5px;color:var(--green-dark);}\r\n  .info-box p{margin:0;font-size:12px;color:var(--muted);line-height:1.5;}\r\n  .err{color:#c0392b;font-size:11.5px;margin-top:4px;display:none;}\r\n  .invalid{border-color:#c0392b !important;}\r\n  .btn{\r\n    display:inline-block;\r\n    width:100%;\r\n    padding:13px 18px;\r\n    border-radius:9px;\r\n    font-size:14.5px;\r\n    font-weight:700;\r\n    text-align:center;\r\n    cursor:pointer;\r\n    border:1.6px solid var(--green);\r\n    margin-top:22px;\r\n    transition:.15s;\r\n  }\r\n  .btn-primary{background:var(--green-dark);color:#fff;border-color:var(--green-dark);}\r\n  .btn-primary:hover{background:#173c30;}\r\n  .btn-outline{background:#fff;color:var(--green-dark);}\r\n  .btn-outline:hover{background:var(--green-light);}\r\n  .btn-row{display:flex;gap:10px;margin-top:10px;}\r\n  .btn-row .btn{margin-top:0;}\r\n\r\n  .receipt-layout{display:grid;grid-template-columns:1fr 260px;gap:20px;align-items:start;}\r\n  @media (max-width:700px){.receipt-layout{grid-template-columns:1fr;}}\r\n  .receipt-header{display:flex;justify-content:space-between;align-items:flex-start;}\r\n  .badge{\r\n    background:var(--pending-bg);color:var(--pending-text);\r\n    font-size:11px;font-weight:700;padding:5px 12px;border-radius:20px;\r\n    letter-spacing:.03em;\r\n  }\r\n  table.details{width:100%;border-collapse:collapse;margin-top:16px;font-size:13.5px;}\r\n  table.details tr{border-bottom:1px solid var(--border);}\r\n  table.details td{padding:10px 4px;vertical-align:top;}\r\n  table.details td:first-child{color:var(--muted);width:44%;}\r\n  table.details td:last-child{font-weight:600;text-align:right;}\r\n  .strike{text-decoration:line-through;color:var(--muted);font-weight:500;}\r\n  .payable-row td{background:var(--green-light);font-size:16px;color:var(--green-dark);}\r\n  .status-pending{color:var(--pending-text);}\r\n  .note-box{\r\n    background:var(--warn-bg);\r\n    border:1px solid #f1ddb8;\r\n    border-radius:10px;\r\n    padding:14px 16px;\r\n    font-size:12.5px;\r\n    color:#6b4a1a;\r\n    margin-top:18px;\r\n    line-height:1.55;\r\n  }\r\n  .side-box{\r\n    background:#fff;border:1px solid var(--border);border-radius:12px;padding:18px;\r\n  }\r\n  .side-box h3{font-size:14px;margin:0 0 10px;color:var(--text);}\r\n  .side-box p{font-size:12px;color:var(--muted);line-height:1.6;margin:0 0 10px;}\r\n  .side-box p.warn{color:var(--warn-text);font-weight:600;}\r\n  .side-box p.warn2{color:#c0392b;font-weight:700;font-size:11.5px;}\r\n  #view2{display:none;}\r\n  .print-only{display:none;}\r\n  @media print{\r\n    @page{ margin:14mm 12mm; }\r\n    html, body{ margin:0 !important; padding:0 !important; background:#fff !important; }\r\n    body *{ visibility:hidden !important; }\r\n    #receiptCard, #receiptCard *{ visibility:visible !important; }\r\n    #receiptCard{\r\n      position:absolute !important;\r\n      left:0; top:0;\r\n      width:100% !important;\r\n      margin:0 !important;\r\n      padding:0 !important;\r\n      border:none !important;\r\n      box-shadow:none !important;\r\n    }\r\n    .print-only{ display:block !important; }\r\n    .print-letterhead{\r\n      display:flex !important;\r\n      align-items:center;\r\n      justify-content:space-between;\r\n      border-bottom:2.5px solid var(--green-dark);\r\n      padding-bottom:12px;\r\n      margin-bottom:18px;\r\n    }\r\n    .print-letterhead .clinic-name{\r\n      font-size:19px;font-weight:800;color:var(--green-dark);letter-spacing:.01em;\r\n    }\r\n    .print-letterhead .clinic-tagline{\r\n      font-size:10.5px;color:var(--muted);margin-top:2px;\r\n    }\r\n    .print-letterhead .print-meta{\r\n      text-align:right;font-size:10.5px;color:var(--muted);\r\n    }\r\n    .print-footer{\r\n      margin-top:26px;\r\n      padding-top:12px;\r\n      border-top:1px solid var(--border);\r\n      font-size:10px;\r\n      color:var(--muted);\r\n      text-align:center;\r\n    }\r\n    .receipt-header{ margin-top:0 !important; }\r\n    .badge{ -webkit-print-color-adjust:exact; print-color-adjust:exact; }\r\n    .payable-row td{ -webkit-print-color-adjust:exact; print-color-adjust:exact; }\r\n  }\r\n\r\n  \/* ===== Patient report upload field ===== *\/\r\n  .file-upload-box{\r\n    border:1.6px dashed var(--border);\r\n    border-radius:10px;\r\n    padding:16px;\r\n    background:var(--green-light);\r\n    margin-top:6px;\r\n  }\r\n  .file-upload-box input[type=file]{\r\n    width:100%;\r\n    font-size:13px;\r\n    color:var(--text);\r\n  }\r\n  #fileList{\r\n    margin-top:10px;\r\n    font-size:12px;\r\n    color:var(--green-dark);\r\n    display:flex;\r\n    flex-direction:column;\r\n    gap:4px;\r\n  }\r\n  #fileList .file-row{\r\n    display:flex;\r\n    align-items:center;\r\n    gap:6px;\r\n    background:#fff;\r\n    border:1px solid var(--border);\r\n    border-radius:6px;\r\n    padding:5px 10px;\r\n  }\r\n  #uploadStatus{\r\n    font-size:11.5px;\r\n    margin-top:6px;\r\n    color:var(--muted);\r\n  }\r\n  #uploadStatus.success{color:var(--green-dark);font-weight:600;}\r\n  #uploadStatus.error{color:#c0392b;font-weight:600;}\r\n<\/style>\r\n<\/head>\r\n<body>\r\n<div class=\"wrap\">\r\n\r\n  <div class=\"tabs\">\r\n    <div class=\"tab active\" id=\"tabStepBooking\" data-i18n=\"tab_booking\">1. Booking details<\/div>\r\n    <div class=\"tab\" id=\"tabStepReceipt\" data-i18n=\"tab_receipt\">2. Receipt<\/div>\r\n  <\/div>\r\n\r\n<!-- ===================== VIEW 1: BOOKING FORM ===================== -->\r\n  <div id=\"view1\" class=\"card\">\r\n    <h1 data-i18n=\"h1_bookingDetails\">Booking Details<\/h1>\r\n\r\n    <label><span data-i18n=\"label_bookingType\">Booking Type<\/span> <span class=\"req\">*<\/span><\/label>\r\n    <div class=\"custom-select\" id=\"csBookingType\">\r\n      <input type=\"hidden\" id=\"bookingType\" value=\"\">\r\n      <div class=\"cs-trigger\" tabindex=\"0\" role=\"button\" aria-haspopup=\"listbox\">\r\n        <span class=\"cs-value placeholder\" data-i18n=\"ph_bookingType\">Select booking type<\/span>\r\n        <span class=\"cs-arrow\">&#9662;<\/span>\r\n      <\/div>\r\n      <div class=\"cs-options\" role=\"listbox\">\r\n        <div class=\"cs-option\" data-value=\"Standard Booking\" data-i18n=\"opt_standardBooking\" role=\"option\">Standard Booking<\/div>\r\n        <div class=\"cs-option\" data-value=\"Priority Fast Track Booking\" data-i18n=\"opt_priorityBooking\" role=\"option\">Priority Fast Track Booking<\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"err\" id=\"err-bookingType\" data-i18n=\"err_bookingType\">Please select a booking type.<\/div>\r\n\r\n    <div class=\"row2\">\r\n      <div>\r\n        <label><span data-i18n=\"label_fullName\">Full Name<\/span> <span class=\"req\">*<\/span><\/label>\r\n        <input type=\"text\" id=\"fullName\" placeholder=\"Enter your full name\" data-i18n-placeholder=\"ph_fullName\">\r\n        <div class=\"err\" id=\"err-fullName\" data-i18n=\"err_fullName\">Please enter the patient's full name.<\/div>\r\n      <\/div>\r\n      <div>\r\n        <label data-i18n=\"label_email\">Email<\/label>\r\n        <input type=\"email\" id=\"email\" placeholder=\"name@example.com\" data-i18n-placeholder=\"ph_email\">\r\n        <div class=\"err\" id=\"err-email\" data-i18n=\"err_email\">Please enter a valid email.<\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"row2\">\r\n      <div>\r\n        <label><span data-i18n=\"label_whatsapp\">WhatsApp Number<\/span> <span class=\"req\">*<\/span><\/label>\r\n        <input type=\"tel\" id=\"whatsapp\" placeholder=\"Enter your WhatsApp number\" data-i18n-placeholder=\"ph_whatsapp\">\r\n        <div class=\"err\" id=\"err-whatsapp\" data-i18n=\"err_whatsapp\">Please enter a valid WhatsApp number.<\/div>\r\n      <\/div>\r\n      <div>\r\n        <label><span data-i18n=\"label_country\">Country<\/span> <span class=\"req\">*<\/span><\/label>\r\n        <div class=\"custom-select\" id=\"csCountry\">\r\n          <input type=\"hidden\" id=\"country\" value=\"\">\r\n          <div class=\"cs-trigger\" tabindex=\"0\" role=\"button\" aria-haspopup=\"listbox\">\r\n            <span class=\"cs-value placeholder\" data-i18n=\"ph_country\">Select country<\/span>\r\n            <span class=\"cs-arrow\">&#9662;<\/span>\r\n          <\/div>\r\n          <div class=\"cs-options\" role=\"listbox\">\r\n            <div class=\"cs-option\" data-value=\"Pakistan\" data-i18n=\"opt_country_Pakistan\" role=\"option\">Pakistan<\/div>\r\n            <div class=\"cs-option\" data-value=\"United Arab Emirates\" data-i18n=\"opt_country_UAE\" role=\"option\">United Arab Emirates<\/div>\r\n            <div class=\"cs-option\" data-value=\"Saudi Arabia\" data-i18n=\"opt_country_SaudiArabia\" role=\"option\">Saudi Arabia<\/div>\r\n            <div class=\"cs-option\" data-value=\"Qatar\" data-i18n=\"opt_country_Qatar\" role=\"option\">Qatar<\/div>\r\n            <div class=\"cs-option\" data-value=\"Kuwait\" data-i18n=\"opt_country_Kuwait\" role=\"option\">Kuwait<\/div>\r\n            <div class=\"cs-option\" data-value=\"Oman\" data-i18n=\"opt_country_Oman\" role=\"option\">Oman<\/div>\r\n            <div class=\"cs-option\" data-value=\"Bahrain\" data-i18n=\"opt_country_Bahrain\" role=\"option\">Bahrain<\/div>\r\n            <div class=\"cs-option\" data-value=\"United Kingdom\" data-i18n=\"opt_country_UK\" role=\"option\">United Kingdom<\/div>\r\n            <div class=\"cs-option\" data-value=\"Germany\" data-i18n=\"opt_country_Germany\" role=\"option\">Germany<\/div>\r\n            <div class=\"cs-option\" data-value=\"Norway\" data-i18n=\"opt_country_Norway\" role=\"option\">Norway<\/div>\r\n            <div class=\"cs-option\" data-value=\"Sweden\" data-i18n=\"opt_country_Sweden\" role=\"option\">Sweden<\/div>\r\n            <div class=\"cs-option\" data-value=\"Denmark\" data-i18n=\"opt_country_Denmark\" role=\"option\">Denmark<\/div>\r\n            <div class=\"cs-option\" data-value=\"Italy\" data-i18n=\"opt_country_Italy\" role=\"option\">Italy<\/div>\r\n            <div class=\"cs-option\" data-value=\"Spain\" data-i18n=\"opt_country_Spain\" role=\"option\">Spain<\/div>\r\n            <div class=\"cs-option\" data-value=\"Canada\" data-i18n=\"opt_country_Canada\" role=\"option\">Canada<\/div>\r\n            <div class=\"cs-option\" data-value=\"United States\" data-i18n=\"opt_country_US\" role=\"option\">United States<\/div>\r\n            <div class=\"cs-option\" data-value=\"Australia\" data-i18n=\"opt_country_Australia\" role=\"option\">Australia<\/div>\r\n            <div class=\"cs-option\" data-value=\"Other\" data-i18n=\"opt_country_Other\" role=\"option\">Other<\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"err\" id=\"err-country\" data-i18n=\"err_country\">Please select a country.<\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <label data-i18n=\"label_language\">Preferred Language<\/label>\r\n    <div class=\"custom-select\" id=\"csLanguage\">\r\n      <input type=\"hidden\" id=\"language\" value=\"English\" data-label=\"English\">\r\n      <div class=\"cs-trigger\" tabindex=\"0\" role=\"button\" aria-haspopup=\"listbox\">\r\n        <span class=\"cs-value\" data-i18n=\"opt_lang_en\">English<\/span>\r\n        <span class=\"cs-arrow\">&#9662;<\/span>\r\n      <\/div>\r\n      <div class=\"cs-options\" role=\"listbox\">\r\n        <div class=\"cs-option selected\" data-value=\"English\" data-i18n=\"opt_lang_en\" role=\"option\">English<\/div>\r\n        <div class=\"cs-option\" data-value=\"Urdu\" data-i18n=\"opt_lang_ur\" role=\"option\">Urdu<\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <label><span data-i18n=\"label_consultMode\">Consultation Mode<\/span> <span class=\"req\">*<\/span><\/label>\r\n    <div class=\"custom-select\" id=\"csConsultMode\">\r\n      <input type=\"hidden\" id=\"consultMode\" value=\"\">\r\n      <div class=\"cs-trigger\" tabindex=\"0\" role=\"button\" aria-haspopup=\"listbox\">\r\n        <span class=\"cs-value placeholder\" data-i18n=\"ph_consultMode\">Select audio or video<\/span>\r\n        <span class=\"cs-arrow\">&#9662;<\/span>\r\n      <\/div>\r\n      <div class=\"cs-options\" role=\"listbox\">\r\n        <div class=\"cs-option\" data-value=\"Audio Call\" data-i18n=\"opt_audioCall\" role=\"option\">Audio Call<\/div>\r\n        <div class=\"cs-option\" data-value=\"Video Call\" data-i18n=\"opt_videoCall\" role=\"option\">Video Call<\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"err\" id=\"err-consultMode\" data-i18n=\"err_consultMode\">Please select audio or video.<\/div>\r\n\r\n    <label><span data-i18n=\"label_consultType\">Consultation Type<\/span> <span class=\"req\">*<\/span><\/label>\r\n    <div class=\"custom-select\" id=\"csConsultType\">\r\n      <input type=\"hidden\" id=\"consultType\" value=\"\">\r\n      <div class=\"cs-trigger\" tabindex=\"0\" role=\"button\" aria-haspopup=\"listbox\">\r\n        <span class=\"cs-value placeholder\" data-i18n=\"ph_consultType\">Select consultation type<\/span>\r\n        <span class=\"cs-arrow\">&#9662;<\/span>\r\n      <\/div>\r\n      <div class=\"cs-options\" role=\"listbox\">\r\n        <div class=\"cs-option\" data-value=\"Fertility & Sperm Health\" data-i18n=\"opt_ct_1\" role=\"option\">1. Fertility &amp; Sperm Health<\/div>\r\n        <div class=\"cs-option\" data-value=\"Erectile Dysfunction (ED)\" data-i18n=\"opt_ct_2\" role=\"option\">2. Erectile Dysfunction (ED)<\/div>\r\n        <div class=\"cs-option\" data-value=\"Premature Ejaculation (PE)\" data-i18n=\"opt_ct_3\" role=\"option\">3. Premature Ejaculation (PE)<\/div>\r\n        <div class=\"cs-option\" data-value=\"Ejaculation & Orgasm Disorders\" data-i18n=\"opt_ct_4\" role=\"option\">4. Ejaculation &amp; Orgasm Disorders<\/div>\r\n        <div class=\"cs-option\" data-value=\"Retrograde Ejaculation\" data-i18n=\"opt_ct_5\" role=\"option\">5. Retrograde Ejaculation<\/div>\r\n        <div class=\"cs-option\" data-value=\"Spermatorrhea\" data-i18n=\"opt_ct_6\" role=\"option\">6. Spermatorrhea<\/div>\r\n        <div class=\"cs-option\" data-value=\"Chronic Masturbation Side Effects\" data-i18n=\"opt_ct_7\" role=\"option\">7. Chronic Masturbation Side Effects<\/div>\r\n        <div class=\"cs-option\" data-value=\"Hypersexuality \/ Compulsive Sexual Behavior\" data-i18n=\"opt_ct_8\" role=\"option\">8. Hypersexuality \/ Compulsive Sexual Behavior<\/div>\r\n        <div class=\"cs-option\" data-value=\"Prostate Disorders (Prostatitis & BPH)\" data-i18n=\"opt_ct_9\" role=\"option\">9. Prostate Disorders (Prostatitis &amp; BPH)<\/div>\r\n        <div class=\"cs-option\" data-value=\"Performance Anxiety & Sexual Phobia\" data-i18n=\"opt_ct_10\" role=\"option\">10. Performance Anxiety &amp; Sexual Phobia<\/div>\r\n        <div class=\"cs-option\" data-value=\"Testicular & Scrotal Disorders\" data-i18n=\"opt_ct_11\" role=\"option\">11. Testicular &amp; Scrotal Disorders<\/div>\r\n        <div class=\"cs-option\" data-value=\"Andropause \/ Hypogonadism (Low Testosterone)\" data-i18n=\"opt_ct_12\" role=\"option\">12. Andropause \/ Hypogonadism (Low Testosterone)<\/div>\r\n        <div class=\"cs-option\" data-value=\"Peyronie's Disease\" data-i18n=\"opt_ct_13\" role=\"option\">13. Peyronie's Disease<\/div>\r\n        <div class=\"cs-option\" data-value=\"Male Infertility Disorders\" data-i18n=\"opt_ct_14\" role=\"option\">14. Male Infertility Disorders<\/div>\r\n        <div class=\"cs-option\" data-value=\"Sexually Transmitted Infections (STIs \/ STDs)\" data-i18n=\"opt_ct_15\" role=\"option\">15. Sexually Transmitted Infections (STIs \/ STDs)<\/div>\r\n        <div class=\"cs-option\" data-value=\"Erectile Dysfunction (ED)\" data-i18n=\"opt_ct_16\" role=\"option\">16. Erectile Dysfunction (ED)<\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"err\" id=\"err-consultType\" data-i18n=\"err_consultType\">Please select a consultation type.<\/div>\r\n\r\n    <div class=\"row2\">\r\n      <div>\r\n        <label><span data-i18n=\"label_prefDate\">Preferred Date<\/span> <span class=\"req\">*<\/span><\/label>\r\n        <div class=\"date-field\" id=\"dateField\">\r\n          <input type=\"text\" id=\"prefDate\" placeholder=\"dd\/mm\/yyyy\" readonly autocomplete=\"off\" data-i18n-placeholder=\"ph_prefDateInput\">\r\n          <span class=\"date-icon\">&#128197;<\/span>\r\n          <div class=\"calendar-pop\" id=\"calendarPop\">\r\n            <div class=\"cal-header\">\r\n              <button type=\"button\" class=\"cal-nav\" id=\"calPrevMonth\">&#8249;<\/button>\r\n              <div class=\"cal-title\">\r\n                <select id=\"calMonthSelect\"><\/select>\r\n                <select id=\"calYearSelect\"><\/select>\r\n              <\/div>\r\n              <button type=\"button\" class=\"cal-nav\" id=\"calNextMonth\">&#8250;<\/button>\r\n            <\/div>\r\n            <div class=\"cal-weekdays\">\r\n              <span>Su<\/span><span>Mo<\/span><span>Tu<\/span><span>We<\/span><span>Th<\/span><span>Fr<\/span><span>Sa<\/span>\r\n            <\/div>\r\n            <div class=\"cal-grid\" id=\"calGrid\"><\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"err\" id=\"err-prefDate\" data-i18n=\"err_prefDate\">Please choose a preferred date.<\/div>\r\n      <\/div>\r\n      <div>\r\n        <label><span data-i18n=\"label_prefTime\">Preferred Time<\/span> <span class=\"req\">*<\/span><\/label>\r\n        <div class=\"custom-select\" id=\"csPrefTime\">\r\n          <input type=\"hidden\" id=\"prefTime\" value=\"\">\r\n          <div class=\"cs-trigger\" tabindex=\"0\" role=\"button\" aria-haspopup=\"listbox\">\r\n            <span class=\"cs-value placeholder\" data-i18n=\"ph_prefTime\">Select preferred time<\/span>\r\n            <span class=\"cs-arrow\">&#9662;<\/span>\r\n          <\/div>\r\n          <div class=\"cs-options\" role=\"listbox\">\r\n            <div class=\"cs-option\" data-value=\"06:00 AM PKT\" data-i18n=\"opt_pt_1\" role=\"option\">06:00 AM (Pakistan Time)<\/div>\r\n            <div class=\"cs-option\" data-value=\"07:00 AM PKT\" data-i18n=\"opt_pt_2\" role=\"option\">07:00 AM (Pakistan Time)<\/div>\r\n            <div class=\"cs-option\" data-value=\"08:00 AM PKT\" data-i18n=\"opt_pt_3\" role=\"option\">08:00 AM (Pakistan Time)<\/div>\r\n            <div class=\"cs-option\" data-value=\"09:00 AM PKT\" data-i18n=\"opt_pt_4\" role=\"option\">09:00 AM (Pakistan Time)<\/div>\r\n            <div class=\"cs-option\" data-value=\"10:00 AM PKT\" data-i18n=\"opt_pt_5\" role=\"option\">10:00 AM (Pakistan Time)<\/div>\r\n            <div class=\"cs-option\" data-value=\"06:00 PM PKT\" data-i18n=\"opt_pt_6\" role=\"option\">06:00 PM (Pakistan Time)<\/div>\r\n            <div class=\"cs-option\" data-value=\"07:00 PM PKT\" data-i18n=\"opt_pt_7\" role=\"option\">07:00 PM (Pakistan Time)<\/div>\r\n            <div class=\"cs-option\" data-value=\"08:00 PM PKT\" data-i18n=\"opt_pt_8\" role=\"option\">08:00 PM (Pakistan Time)<\/div>\r\n            <div class=\"cs-option\" data-value=\"09:00 PM PKT\" data-i18n=\"opt_pt_9\" role=\"option\">09:00 PM (Pakistan Time)<\/div>\r\n            <div class=\"cs-option\" data-value=\"10:00 PM PKT\" data-i18n=\"opt_pt_10\" role=\"option\">10:00 PM (Pakistan Time)<\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"hint\" id=\"prefTimeHint\" data-i18n=\"hint_prefTime\">Times shown in Pakistan Standard Time. Select your country above to see your local equivalent.<\/div>\r\n        <div class=\"err\" id=\"err-prefTime\" data-i18n=\"err_prefTime\">Please select a preferred time.<\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <label data-i18n=\"label_age\">Patient Age<\/label>\r\n    <input type=\"number\" id=\"age\" min=\"0\" max=\"120\" placeholder=\"e.g. 32\" data-i18n-placeholder=\"ph_age\">\r\n\r\n    <label><span data-i18n=\"label_sugarBp\">Do you have Diabetes or Blood Pressure?<\/span> <span class=\"req\">*<\/span><\/label>\r\n    <div class=\"custom-select\" id=\"csSugarBp\">\r\n      <input type=\"hidden\" id=\"sugarBp\" value=\"\">\r\n      <div class=\"cs-trigger\" tabindex=\"0\" role=\"button\" aria-haspopup=\"listbox\">\r\n        <span class=\"cs-value placeholder\" data-i18n=\"ph_sugarBp\">Select an option<\/span>\r\n        <span class=\"cs-arrow\">&#9662;<\/span>\r\n      <\/div>\r\n      <div class=\"cs-options\" role=\"listbox\">\r\n        <div class=\"cs-option\" data-value=\"None\" data-i18n=\"opt_sugarbp_none\" role=\"option\">No, I don't have Diabetes or Blood Pressure<\/div>\r\n        <div class=\"cs-option\" data-value=\"Diabetes\" data-i18n=\"opt_sugarbp_diabetes\" role=\"option\">Yes, I have Diabetes<\/div>\r\n        <div class=\"cs-option\" data-value=\"Blood Pressure\" data-i18n=\"opt_sugarbp_bp\" role=\"option\">Yes, I have Blood Pressure<\/div>\r\n        <div class=\"cs-option\" data-value=\"Both\" data-i18n=\"opt_sugarbp_both\" role=\"option\">Yes, I have both Diabetes and Blood Pressure<\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"err\" id=\"err-sugarBp\" data-i18n=\"err_sugarBp\">Please let us know if you have Diabetes or Blood Pressure.<\/div>\r\n\r\n    <label><span data-i18n=\"label_concern\">Health Goal<\/span> <span class=\"req\">*<\/span><\/label>\r\n    <textarea id=\"concern\" placeholder=\"Briefly describe the concern you'd like discussed during the consultation.\" data-i18n-placeholder=\"ph_concern\"><\/textarea>\r\n    <div class=\"err\" id=\"err-concern\" data-i18n=\"err_concern\">Please describe your health concern \/ goal.<\/div>\r\n\r\n\r\n    <label data-i18n=\"label_notes\">Notes, optional<\/label>\r\n    <textarea id=\"notes\" placeholder=\"Anything else the clinic team should know.\" data-i18n-placeholder=\"ph_notes\"><\/textarea>\r\n\r\n    <label data-i18n=\"label_reports\">Upload Previous Reports \/ Prescriptions (Optional)<\/label>\r\n    <div class=\"file-upload-box\">\r\n      <input type=\"file\" id=\"patientFiles\" accept=\".pdf,.jpg,.jpeg,.png\" multiple>\r\n      <div class=\"hint\" data-i18n=\"hint_reports\">If you have any previous test reports, prescriptions, or relevant medical images, you may upload them here. Accepted formats: PDF, JPG, PNG \u2014 max 10MB per file.<\/div>\r\n      <div id=\"fileList\"><\/div>\r\n      <div id=\"uploadStatus\"><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"checks\">\r\n      <label class=\"check-item\">\r\n  <input type=\"checkbox\" id=\"chk1\">\r\n  <span class=\"box\"><\/span>\r\n  <span data-i18n=\"chk1_text\">Homeopathic guidance for reproductive, sexual, hormonal, and wellness concerns.<\/span>\r\n<\/label>\r\n\r\n<label class=\"check-item\">\r\n  <input type=\"checkbox\" id=\"chk2\">\r\n  <span class=\"box\"><\/span>\r\n  <span data-i18n=\"chk2_text\">This is not an emergency.<\/span>\r\n<\/label>\r\n\r\n<label class=\"check-item\">\r\n  <input type=\"checkbox\" id=\"chk3\">\r\n  <span class=\"box\"><\/span>\r\n  <span data-i18n=\"chk3_text\">My meeting link will be sent after payment confirmation.<\/span>\r\n<\/label>\r\n\r\n<label class=\"check-item\">\r\n  <input type=\"checkbox\" id=\"chk4\">\r\n  <span class=\"box\"><\/span>\r\n  <span data-i18n=\"chk4_text\">Please maintain respectful behavior. Inappropriate or abusive conduct may end the consultation without a refund.<\/span>\r\n<\/label>    <\/div>\r\n    <div class=\"err\" id=\"err-checks\" data-i18n=\"err_checks\">Please confirm all four statements above to continue.<\/div>\r\n\r\n    <div class=\"info-grid\">\r\n      <div class=\"info-box\">\r\n        <h4 data-i18n=\"info1_heading\">Safety Disclaimer<\/h4>\r\n        <p data-i18n=\"info1_text\">Online consultations are intended for homeopathic guidance and supportive care for reproductive, sexual, hormonal, urological, and related wellness concerns.They do not replace emergency medical care, diagnosis, or treatment from a licensed physician in your country. For emergencies or serious symptoms, contact your local emergency healthcare provider immediately.<\/p>\r\n      <\/div>\r\n      <div class=\"info-box\">\r\n        <h4 data-i18n=\"info2_heading\">Payment &amp; Privacy<\/h4>\r\n        <p data-i18n=\"info2_text\">Payment is confirmed manually by the clinic team. Meeting links are sent only after payment confirmation. Your privacy is very important to us. Your personal information, medical history, consultation details, and reports are kept private and confidential. We use this information only to provide you with the best possible consultation and treatment, with care, respect, and professionalism. Uploaded reports and images are stored securely and accessed only by the consulting doctor.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <button class=\"btn btn-primary\" id=\"reviewBtn\" data-i18n=\"btn_review\">Review Receipt<\/button>\r\n  <\/div>\r\n\r\n  <!-- ===================== VIEW 2: RECEIPT ===================== -->\r\n  <div id=\"view2\" class=\"card\" style=\"padding:0;background:transparent;border:none;box-shadow:none;\">\r\n    <div class=\"receipt-layout\">\r\n      <div class=\"card\" id=\"receiptCard\">\r\n        <div class=\"print-only print-letterhead\">\r\n          <div>\r\n            <div class=\"clinic-name\">Dr. Fo <\/div>\r\n            <div class=\"clinic-tagline\" data-i18n=\"clinic_tagline\">Online Homeopathic, Wellness &amp; Reproductive Health Consultations<\/div>\r\n          <\/div>\r\n          <div class=\"print-meta\" id=\"printDate\"><\/div>\r\n        <\/div>\r\n        <div class=\"receipt-header\">\r\n          <div>\r\n            <div class=\"eyebrow\" data-i18n=\"receipt_step\">Step 2<\/div>\r\n            <h1 style=\"margin-top:4px;\" data-i18n=\"receipt_title\">Consultation Booking Receipt<\/h1>\r\n          <\/div>\r\n          <div class=\"badge\" data-i18n=\"receipt_badge\">PENDING<\/div>\r\n        <\/div>\r\n\r\n        <table class=\"details\">\r\n          <tr><td data-i18n=\"r_label_bookingId\">Booking ID<\/td><td id=\"r-bookingId\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_bookingType\">Booking Type<\/td><td id=\"r-bookingType\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_fullName\">Patient Name<\/td><td id=\"r-fullName\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_whatsapp\">WhatsApp Number<\/td><td id=\"r-whatsapp\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_country\">Country<\/td><td id=\"r-country\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_language\">Preferred Language<\/td><td id=\"r-language\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_consultMode\">Consultation Mode<\/td><td id=\"r-consultMode\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_consultType\">Consultation Type<\/td><td id=\"r-consultType\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_prefDate\">Preferred Date<\/td><td id=\"r-prefDate\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_prefTime\">Preferred Time<\/td><td id=\"r-prefTime\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_sugarBp\">Diabetes \/ Blood Pressure<\/td><td id=\"r-sugarBp\"><\/td><\/tr>\r\n          <tr id=\"row-origFee\"><td data-i18n=\"r_label_origFee\">Original Fee<\/td><td><span class=\"strike\" id=\"r-origFee\"><\/span><\/td><\/tr>\r\n          <tr id=\"row-discount\"><td data-i18n=\"r_label_discount\">Discount<\/td><td id=\"r-discount\"><\/td><\/tr>\r\n          <tr class=\"payable-row\"><td data-i18n=\"r_label_payable\">Payable Amount<\/td><td id=\"r-payable\"><\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_paymentStatus\">Payment Status<\/td><td class=\"status-pending\" data-i18n=\"r_status_pending\">Pending Manual Confirmation<\/td><\/tr>\r\n          <tr><td data-i18n=\"r_label_meetingLinkStatus\">Meeting Link Status<\/td><td data-i18n=\"r_meetingStatus\">Will be sent after payment confirmation<\/td><\/tr>\r\n        <\/table>\r\n\r\n        <div class=\"note-box\" data-i18n=\"note_box_text\">\r\n          Your consultation request is not confirmed until payment is verified by the clinic team.\r\n          Please send this booking receipt on WhatsApp, complete payment through the method shared by the clinic, and send your payment screenshot on WhatsApp.\r\n        <\/div>\r\n\r\n        <div class=\"btn-row no-print\">\r\n          <button class=\"btn btn-primary\" id=\"waBtn\" style=\"margin-top:18px;\" data-i18n=\"btn_whatsapp\">Send Booking on WhatsApp<\/button>\r\n        <\/div>\r\n        <div class=\"btn-row no-print\">\r\n          <button class=\"btn btn-outline\" id=\"editBtn\" data-i18n=\"btn_edit\">Edit Details<\/button>\r\n          <button class=\"btn btn-outline\" id=\"printBtn\" data-i18n=\"btn_print\">Print \/ Save Receipt<\/button>\r\n        <\/div>\r\n\r\n        <div class=\"print-only print-footer\" data-i18n=\"print_footer_text\">\r\n          This is a system-generated booking receipt and does not confirm payment. Payment is verified manually by the clinic team via WhatsApp.\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"side-box\">\r\n        <h3 data-i18n=\"side_heading\">Manual Payment Confirmation<\/h3>\r\n        <p data-i18n=\"side_p1\">Because payment is confirmed manually, please send your booking receipt on WhatsApp first. The clinic team will share the suitable payment method. After payment, send your screenshot on the same WhatsApp chat for your consultation link to be sent after verification.<\/p>\r\n        <p class=\"warn\" data-i18n=\"side_p2\">Please do not send payment to any number or account unless it is confirmed through the official clinic WhatsApp.<\/p>\r\n        <p class=\"warn2\" data-i18n=\"side_p3\">This no-backend version does not store bookings. The official record is the WhatsApp conversation and payment screenshot sent by the patient.<\/p>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n<script>\r\n  \/\/ ====== CONFIGURE THIS ======\r\n  const CLINIC_WHATSAPP_NUMBER = \"92336 5112631\"; \/\/ replace with the clinic's real WhatsApp number, digits only, country code first\r\n  const ORIGINAL_FEE = 70;           \/\/ shown as a struck-through \"original fee\" for Standard Booking\r\n  const STANDARD_PAYABLE_FEE = 45;   \/\/ Standard Booking payable amount (after discount)\r\n  const PRIORITY_PAYABLE_FEE = 90;   \/\/ Priority Fast Track Booking payable amount (no discount shown)\r\n  const WP_AJAX_URL = \"https:\/\/drfo.health\/wp-admin\/admin-ajax.php\";\r\n  \/\/ =============================\r\n\r\n  \/\/ ================= URDU TRANSLATION DICTIONARY =================\r\n  \/\/ How this works:\r\n  \/\/  - Every translatable piece of text on the page has a data-i18n=\"key\"\r\n  \/\/    attribute (or data-i18n-placeholder=\"key\" for input placeholders).\r\n  \/\/  - The value below is the ENGLISH text, used as a safe fallback.\r\n  \/\/  - To add Urdu, just replace the string on the right with your Urdu\r\n  \/\/    text. You do NOT need to touch the HTML at all \u2014 only this list.\r\n  \/\/  - This works independently of TranslatePress; it detects the Urdu\r\n  \/\/    page itself (isUrduPage() below) and swaps the text directly.\r\n  \/\/\r\n  \/\/ NOTE: dropdown \"value\" attributes used by the form's logic (data-value)\r\n  \/\/ are never touched \u2014 only the visible label text changes.\r\n  const UR_TEXT = {\r\n    \/\/ ---- Tabs \/ heading ----\r\n    tab_booking: \"1. Booking details\",\r\n    tab_receipt: \"2. Receipt\",\r\n    h1_bookingDetails: \"Booking Details\",\r\n\r\n    \/\/ ---- Booking type ----\r\n    label_bookingType: \"Booking Type\",\r\n    ph_bookingType: \"Select booking type\",\r\n    opt_standardBooking: \"Standard Booking\",\r\n    opt_priorityBooking: \"Priority Fast Track Booking\",\r\n    err_bookingType: \"Please select a booking type.\",\r\n\r\n    \/\/ ---- Full name \/ email ----\r\n    label_fullName: \"Full Name\",\r\n    ph_fullName: \"Enter your full name\",\r\n    err_fullName: \"Please enter the patient's full name.\",\r\n    label_email: \"Email\",\r\n    ph_email: \"name@example.com\",\r\n    err_email: \"Please enter a valid email.\",\r\n\r\n    \/\/ ---- WhatsApp \/ Country ----\r\n    label_whatsapp: \"WhatsApp Number\",\r\n    ph_whatsapp: \"Enter your WhatsApp number\",\r\n    err_whatsapp: \"Please enter a valid WhatsApp number.\",\r\n    label_country: \"Country\",\r\n    ph_country: \"Select country\",\r\n    opt_country_Pakistan: \"Pakistan\",\r\n    opt_country_UAE: \"United Arab Emirates\",\r\n    opt_country_SaudiArabia: \"Saudi Arabia\",\r\n    opt_country_Qatar: \"Qatar\",\r\n    opt_country_Kuwait: \"Kuwait\",\r\n    opt_country_Oman: \"Oman\",\r\n    opt_country_Bahrain: \"Bahrain\",\r\n    opt_country_UK: \"United Kingdom\",\r\n    opt_country_Germany: \"Germany\",\r\n    opt_country_Norway: \"Norway\",\r\n    opt_country_Sweden: \"Sweden\",\r\n    opt_country_Denmark: \"Denmark\",\r\n    opt_country_Italy: \"Italy\",\r\n    opt_country_Spain: \"Spain\",\r\n    opt_country_Canada: \"Canada\",\r\n    opt_country_US: \"United States\",\r\n    opt_country_Australia: \"Australia\",\r\n    opt_country_Other: \"Other\",\r\n    err_country: \"Please select a country.\",\r\n\r\n    \/\/ ---- Preferred language ----\r\n    label_language: \"Preferred Language\",\r\n    opt_lang_en: \"English\",\r\n    opt_lang_ur: \"Urdu\",\r\n\r\n    \/\/ ---- Consultation mode ----\r\n    label_consultMode: \"Consultation Mode\",\r\n    ph_consultMode: \"Select audio or video\",\r\n    opt_audioCall: \"Audio Call\",\r\n    opt_videoCall: \"Video Call\",\r\n    err_consultMode: \"Please select audio or video.\",\r\n\r\n    \/\/ ---- Consultation type (16 options) ----\r\n    label_consultType: \"Consultation Type\",\r\n    ph_consultType: \"Select consultation type\",\r\n    opt_ct_1: \"1. Fertility & Sperm Health\",\r\n    opt_ct_2: \"2. Erectile Dysfunction (ED)\",\r\n    opt_ct_3: \"3. Premature Ejaculation (PE)\",\r\n    opt_ct_4: \"4. Ejaculation & Orgasm Disorders\",\r\n    opt_ct_5: \"5. Retrograde Ejaculation\",\r\n    opt_ct_6: \"6. Spermatorrhea\",\r\n    opt_ct_7: \"7. Chronic Masturbation Side Effects\",\r\n    opt_ct_8: \"8. Hypersexuality \/ Compulsive Sexual Behavior\",\r\n    opt_ct_9: \"9. Prostate Disorders (Prostatitis & BPH)\",\r\n    opt_ct_10: \"10. Performance Anxiety & Sexual Phobia\",\r\n    opt_ct_11: \"11. Testicular & Scrotal Disorders\",\r\n    opt_ct_12: \"12. Andropause \/ Hypogonadism (Low Testosterone)\",\r\n    opt_ct_13: \"13. Peyronie's Disease\",\r\n    opt_ct_14: \"14. Male Infertility Disorders\",\r\n    opt_ct_15: \"15. Sexually Transmitted Infections (STIs \/ STDs)\",\r\n    opt_ct_16: \"16. Erectile Dysfunction (ED)\",\r\n    err_consultType: \"Please select a consultation type.\",\r\n\r\n    \/\/ ---- Preferred date \/ time ----\r\n    label_prefDate: \"Preferred Date\",\r\n    ph_prefDateInput: \"dd\/mm\/yyyy\",\r\n    err_prefDate: \"Please choose a preferred date.\",\r\n    label_prefTime: \"Preferred Time\",\r\n    ph_prefTime: \"Select preferred time\",\r\n    opt_pt_1: \"06:00 AM (Pakistan Time)\",\r\n    opt_pt_2: \"07:00 AM (Pakistan Time)\",\r\n    opt_pt_3: \"08:00 AM (Pakistan Time)\",\r\n    opt_pt_4: \"09:00 AM (Pakistan Time)\",\r\n    opt_pt_5: \"10:00 AM (Pakistan Time)\",\r\n    opt_pt_6: \"06:00 PM (Pakistan Time)\",\r\n    opt_pt_7: \"07:00 PM (Pakistan Time)\",\r\n    opt_pt_8: \"08:00 PM (Pakistan Time)\",\r\n    opt_pt_9: \"09:00 PM (Pakistan Time)\",\r\n    opt_pt_10: \"10:00 PM (Pakistan Time)\",\r\n    hint_prefTime: \"Times shown in Pakistan Standard Time. Select your country above to see your local equivalent.\",\r\n    err_prefTime: \"Please select a preferred time.\",\r\n\r\n    \/\/ ---- Age ----\r\n    label_age: \"Patient Age\",\r\n    ph_age: \"e.g. 32\",\r\n\r\n    \/\/ ---- Diabetes \/ Blood Pressure ----\r\n    label_sugarBp: \"Do you have Diabetes or Blood Pressure?\",\r\n    ph_sugarBp: \"Select an option\",\r\n    opt_sugarbp_none: \"No, I don't have Diabetes or Blood Pressure\",\r\n    opt_sugarbp_diabetes: \"Yes, I have Diabetes\",\r\n    opt_sugarbp_bp: \"Yes, I have Blood Pressure\",\r\n    opt_sugarbp_both: \"Yes, I have both Diabetes and Blood Pressure\",\r\n    err_sugarBp: \"Please let us know if you have Diabetes or Blood Pressure.\",\r\n\r\n    \/\/ ---- Health goal \/ notes ----\r\n    label_concern: \"Health Goal\",\r\n    ph_concern: \"Briefly describe the concern you'd like discussed during the consultation.\",\r\n    err_concern: \"Please describe your health concern \/ goal.\",\r\n    label_notes: \"Notes, optional\",\r\n    ph_notes: \"Anything else the clinic team should know.\",\r\n\r\n    \/\/ ---- Reports upload ----\r\n    label_reports: \"Upload Previous Reports \/ Prescriptions (Optional)\",\r\n    hint_reports: \"If you have any previous test reports, prescriptions, or relevant medical images, you may upload them here. Accepted formats: PDF, JPG, PNG \u2014 max 10MB per file.\",\r\n\r\n    \/\/ ---- Checkboxes ----\r\n    chk1_text: \"Homeopathic guidance for reproductive, sexual, hormonal, and wellness concerns.\",\r\n    chk2_text: \"This is not an emergency.\",\r\n    chk3_text: \"My meeting link will be sent after payment confirmation.\",\r\n    chk4_text: \"Please maintain respectful behavior. Inappropriate or abusive conduct may end the consultation without a refund.\",\r\n    err_checks: \"Please confirm all four statements above to continue.\",\r\n\r\n    \/\/ ---- Info boxes ----\r\n    info1_heading: \"Safety Disclaimer\",\r\n    info1_text: \"Online consultations are intended for homeopathic guidance and supportive care for reproductive, sexual, hormonal, urological, and related wellness concerns. They do not replace emergency medical care, diagnosis, or treatment from a licensed physician in your country. For emergencies or serious symptoms, contact your local emergency healthcare provider immediately.\",\r\n    info2_heading: \"Payment & Privacy\",\r\n    info2_text: \"Payment is confirmed manually by the clinic team. Meeting links are sent only after payment confirmation. Your privacy is very important to us. Your personal information, medical history, consultation details, and reports are kept private and confidential. We use this information only to provide you with the best possible consultation and treatment, with care, respect, and professionalism. Uploaded reports and images are stored securely and accessed only by the consulting doctor.\",\r\n\r\n    btn_review: \"Review Receipt\",\r\n\r\n    \/\/ ---- Receipt page ----\r\n    clinic_tagline: \"Online Homeopathic, Wellness & Reproductive Health Consultations\",\r\n    receipt_step: \"Step 2\",\r\n    receipt_title: \"Consultation Booking Receipt\",\r\n    receipt_badge: \"PENDING\",\r\n    r_label_bookingId: \"Booking ID\",\r\n    r_label_bookingType: \"Booking Type\",\r\n    r_label_fullName: \"Patient Name\",\r\n    r_label_whatsapp: \"WhatsApp Number\",\r\n    r_label_country: \"Country\",\r\n    r_label_language: \"Preferred Language\",\r\n    r_label_consultMode: \"Consultation Mode\",\r\n    r_label_consultType: \"Consultation Type\",\r\n    r_label_prefDate: \"Preferred Date\",\r\n    r_label_prefTime: \"Preferred Time\",\r\n    r_label_sugarBp: \"Diabetes \/ Blood Pressure\",\r\n    r_label_origFee: \"Original Fee\",\r\n    r_label_discount: \"Discount\",\r\n    r_label_payable: \"Payable Amount\",\r\n    r_label_paymentStatus: \"Payment Status\",\r\n    r_status_pending: \"Pending Manual Confirmation\",\r\n    r_label_meetingLinkStatus: \"Meeting Link Status\",\r\n    r_meetingStatus: \"Will be sent after payment confirmation\",\r\n    note_box_text: \"Your consultation request is not confirmed until payment is verified by the clinic team. Please send this booking receipt on WhatsApp, complete payment through the method shared by the clinic, and send your payment screenshot on WhatsApp.\",\r\n    btn_whatsapp: \"Send Booking on WhatsApp\",\r\n    btn_edit: \"Edit Details\",\r\n    btn_print: \"Print \/ Save Receipt\",\r\n    print_footer_text: \"This is a system-generated booking receipt and does not confirm payment. Payment is verified manually by the clinic team via WhatsApp.\",\r\n    side_heading: \"Manual Payment Confirmation\",\r\n    side_p1: \"Because payment is confirmed manually, please send your booking receipt on WhatsApp first. The clinic team will share the suitable payment method. After payment, send your screenshot on the same WhatsApp chat for your consultation link to be sent after verification.\",\r\n    side_p2: \"Please do not send payment to any number or account unless it is confirmed through the official clinic WhatsApp.\",\r\n    side_p3: \"This no-backend version does not store bookings. The official record is the WhatsApp conversation and payment screenshot sent by the patient.\",\r\n\r\n    \/\/ ---- WhatsApp message sent to the clinic (built at submit time) ----\r\n    wa_msg_title: \"New Consultation Booking\",\r\n    wa_msg_bookingId: \"Booking ID\",\r\n    wa_msg_bookingType: \"Booking Type\",\r\n    wa_msg_patientName: \"Patient Name\",\r\n    wa_msg_whatsapp: \"WhatsApp\",\r\n    wa_msg_country: \"Country\",\r\n    wa_msg_consultMode: \"Consultation Mode\",\r\n    wa_msg_consultType: \"Consultation Type\",\r\n    wa_msg_prefDate: \"Preferred Date\",\r\n    wa_msg_prefTime: \"Preferred Time\",\r\n    wa_msg_sugarBp: \"Diabetes \/ Blood Pressure\",\r\n    wa_msg_concern: \"Health Goal\",\r\n    wa_msg_payable: \"Payable Amount\",\r\n    wa_msg_paymentStatus: \"Payment Status\",\r\n    wa_msg_paymentStatusValue: \"Pending Manual Confirmation\",\r\n    wa_msg_closing: \"I have submitted my booking. Please share the payment method so I can complete payment and send my screenshot here.\"\r\n  };\r\n\r\n  \/\/ Detects whether the current page is the Urdu version. TranslatePress\r\n  \/\/ normally adds \/ur\/ to the URL or sets <html lang=\"ur\">, so this checks\r\n  \/\/ both, plus a ?lang=ur query param as a manual override\/testing switch.\r\n  function isUrduPage(){\r\n    const lang = (document.documentElement.lang || '').toLowerCase();\r\n    if(lang.startsWith('ur')) return true;\r\n    if(\/^\\\/ur(\\\/|$)\/.test(location.pathname)) return true;\r\n    if(new URLSearchParams(location.search).get('lang') === 'ur') return true;\r\n    return false;\r\n  }\r\n\r\n  \/\/ Walks every element with data-i18n \/ data-i18n-placeholder and swaps in\r\n  \/\/ the Urdu text from UR_TEXT. Falls back to whatever text is already in\r\n  \/\/ the HTML (English) if a key is missing or still empty. Runs once, early,\r\n  \/\/ before the dropdowns are initialised, so all option labels are already\r\n  \/\/ in Urdu by the time the rest of the script reads\/copies their text.\r\n  function applyI18n(){\r\n    if(!isUrduPage()) return;\r\n\r\n    document.querySelectorAll('[data-i18n]').forEach(el => {\r\n      const key = el.getAttribute('data-i18n');\r\n      const val = UR_TEXT[key];\r\n      if(val){\r\n        el.textContent = val;\r\n        \/\/ keep the dropdown's own \"selected\" state readable after translation\r\n        if(el.classList.contains('cs-value') && el.classList.contains('placeholder')){\r\n          \/\/ still a placeholder, nothing else to do\r\n        }\r\n      }\r\n    });\r\n\r\n    document.querySelectorAll('[data-i18n-placeholder]').forEach(el => {\r\n      const key = el.getAttribute('data-i18n-placeholder');\r\n      const val = UR_TEXT[key];\r\n      if(val){\r\n        el.setAttribute('placeholder', val);\r\n      }\r\n    });\r\n\r\n    \/\/ Right-to-left layout for Urdu content (optional but recommended).\r\n    document.documentElement.setAttribute('dir', 'rtl');\r\n    document.body.style.fontFamily = \"'Noto Nastaliq Urdu','Segoe UI',Tahoma,sans-serif\";\r\n  }\r\n\r\n  \/\/ NOTE: applyI18n() is intentionally NOT called here anymore.\r\n  \/\/ You're translating directly inside TranslatePress, so this script must\r\n  \/\/ not overwrite that translated text with the English fallback strings\r\n  \/\/ above. The data-i18n attributes are left in place (harmless) in case\r\n  \/\/ you want to switch back to the JS dictionary later \u2014 just uncomment\r\n  \/\/ the line below to re-enable it.\r\n  \/\/ applyI18n();\r\n  \/\/ ================= END URDU TRANSLATION DICTIONARY =================\r\n\r\n  const view1 = document.getElementById('view1');\r\n  const view2 = document.getElementById('view2');\r\n  const tabBooking = document.getElementById('tabStepBooking');\r\n  const tabReceipt = document.getElementById('tabStepReceipt');\r\n\r\n  let bookingData = null;\r\n\r\n  function showView(step){\r\n    if(step === 1){\r\n      view1.style.display = 'block';\r\n      view2.style.display = 'none';\r\n      tabBooking.classList.add('active');\r\n      tabReceipt.classList.remove('active');\r\n    } else {\r\n      view1.style.display = 'none';\r\n      view2.style.display = 'block';\r\n      tabReceipt.classList.add('active');\r\n      tabBooking.classList.remove('active');\r\n    }\r\n    window.scrollTo({top:0, behavior:'smooth'});\r\n  }\r\n\r\n  function clearErrors(){\r\n    document.querySelectorAll('.err').forEach(e => e.style.display = 'none');\r\n    document.querySelectorAll('.invalid').forEach(e => e.classList.remove('invalid'));\r\n  }\r\n\r\n  function markInvalid(id, errId){\r\n    const el = document.getElementById(id);\r\n    const visual = el.closest('.custom-select') || el;\r\n    visual.classList.add('invalid');\r\n    document.getElementById(errId).style.display = 'block';\r\n  }\r\n\r\n  function generateBookingId(){\r\n    const d = new Date();\r\n    const y = d.getFullYear();\r\n    const m = String(d.getMonth()+1).padStart(2,'0');\r\n    const day = String(d.getDate()).padStart(2,'0');\r\n    const rand = Math.random().toString(36).substring(2,6).toUpperCase();\r\n    return `AKH-${y}${m}${day}-${rand}`;\r\n  }\r\n\r\n  function formatDate(dateStr){\r\n    if(!dateStr) return '\u2014';\r\n    const d = new Date(dateStr + 'T00:00:00');\r\n    return d.toLocaleDateString('en-GB', {year:'numeric', month:'short', day:'2-digit'});\r\n  }\r\n\r\n  \/\/ ================= Custom Dropdown Controller =================\r\n  \/\/ Turns a `.custom-select` container (hidden input + .cs-trigger + .cs-options\r\n  \/\/ full of .cs-option divs) into a working dropdown. Because every option is a\r\n  \/\/ real DOM element, TranslatePress's visual editor can hover + translate it,\r\n  \/\/ exactly like it already does for the rest of the page's text.\r\n  class CustomSelect{\r\n    constructor(containerId, onChange){\r\n      this.container = document.getElementById(containerId);\r\n      this.hiddenInput = this.container.querySelector('input[type=hidden]');\r\n      this.trigger = this.container.querySelector('.cs-trigger');\r\n      this.valueSpan = this.container.querySelector('.cs-value');\r\n      this.options = Array.from(this.container.querySelectorAll('.cs-option'));\r\n      this.onChange = onChange;\r\n      this._bind();\r\n    }\r\n    _bind(){\r\n      this.trigger.addEventListener('click', (e) => { e.stopPropagation(); this.toggle(); });\r\n      this.trigger.addEventListener('keydown', (e) => {\r\n        if(e.key === 'Enter' || e.key === ' '){ e.preventDefault(); this.toggle(); }\r\n        if(e.key === 'Escape') this.close();\r\n      });\r\n      this.options.forEach(opt => {\r\n        opt.addEventListener('click', () => this.select(opt));\r\n      });\r\n      document.addEventListener('click', (e) => {\r\n        if(!this.container.contains(e.target)) this.close();\r\n      });\r\n    }\r\n    toggle(){ this.container.classList.contains('open') ? this.close() : this.open(); }\r\n    open(){\r\n      document.querySelectorAll('.custom-select.open').forEach(cs => {\r\n        if(cs !== this.container) cs.classList.remove('open');\r\n      });\r\n      this.container.classList.add('open');\r\n    }\r\n    close(){ this.container.classList.remove('open'); }\r\n    select(opt){\r\n      this.options.forEach(o => o.classList.remove('selected'));\r\n      opt.classList.add('selected');\r\n      const label = opt.textContent.trim();\r\n      this.valueSpan.textContent = label;\r\n      this.valueSpan.classList.remove('placeholder');\r\n      this.hiddenInput.value = opt.dataset.value;\r\n      this.hiddenInput.dataset.label = label;\r\n      this.container.classList.remove('invalid');\r\n      this.close();\r\n      if(this.onChange) this.onChange(opt.dataset.value, opt);\r\n    }\r\n    refreshSelectedLabel(){\r\n      const selected = this.options.find(o => o.classList.contains('selected'));\r\n      if(selected){\r\n        const label = selected.textContent.trim();\r\n        this.valueSpan.textContent = label;\r\n        this.hiddenInput.dataset.label = label;\r\n      }\r\n    }\r\n  }\r\n\r\n  const csBookingType = new CustomSelect('csBookingType');\r\n  const csCountry = new CustomSelect('csCountry', (value) => updatePrefTimeLabels(value));\r\n  const csLanguage = new CustomSelect('csLanguage');\r\n  const csConsultMode = new CustomSelect('csConsultMode');\r\n  const csConsultType = new CustomSelect('csConsultType');\r\n  const csSugarBp = new CustomSelect('csSugarBp');\r\n  const csPrefTime = new CustomSelect('csPrefTime');\r\n\r\n  \/\/ ================= Country Timezone \u2192 Availability Conversion =================\r\n  \/\/ Base option labels stay as static, translatable DOM text. This code only\r\n  \/\/ APPENDS the local-time hint after a country is chosen; it never rebuilds\r\n  \/\/ the options with innerHTML, so translated labels are preserved.\r\n  const PKT_OFFSET = 5;\r\n  const COUNTRY_OFFSETS = {\r\n    'Pakistan': 5,\r\n    'United Arab Emirates': 4,\r\n    'Saudi Arabia': 3,\r\n    'Qatar': 3,\r\n    'Kuwait': 3,\r\n    'Oman': 4,\r\n    'Bahrain': 3,\r\n    'United Kingdom': 0,\r\n    'Germany': 1,\r\n    'Norway': 1,\r\n    'Sweden': 1,\r\n    'Denmark': 1,\r\n    'Italy': 1,\r\n    'Spain': 1,\r\n    'Canada': -5,\r\n    'United States': -5,\r\n    'Australia': 10\r\n  };\r\n  const prefTimeHint = document.getElementById('prefTimeHint');\r\n  const prefTimeHidden = document.getElementById('prefTime');\r\n\r\n  \/\/ ---- Urdu detection + manual translations for the dynamically-built part\r\n  \/\/ of the label (country name, \"Time\" word, AM\/PM, day offset). This text is\r\n  \/\/ generated at runtime by JS, so TranslatePress cannot translate it on its\r\n  \/\/ own \u2014 we detect the page language ourselves and swap in fixed Urdu text.\r\n  function isUrduPage(){\r\n    const lang = (document.documentElement.lang || '').toLowerCase();\r\n    if(lang.startsWith('ur')) return true;\r\n    if(\/^\\\/ur(\\\/|$)\/.test(location.pathname)) return true;\r\n    if(new URLSearchParams(location.search).get('lang') === 'ur') return true;\r\n    return false;\r\n  }\r\n\r\n  const COUNTRY_NAMES_UR = {\r\n    'Pakistan': '\u067e\u0627\u06a9\u0633\u062a\u0627\u0646',\r\n    'United Arab Emirates': '\u0645\u062a\u062d\u062f\u06c1 \u0639\u0631\u0628 \u0627\u0645\u0627\u0631\u0627\u062a',\r\n    'Saudi Arabia': '\u0633\u0639\u0648\u062f\u06cc \u0639\u0631\u0628',\r\n    'Qatar': '\u0642\u0637\u0631',\r\n    'Kuwait': '\u06a9\u0648\u06cc\u062a',\r\n    'Oman': '\u0639\u0645\u0627\u0646',\r\n    'Bahrain': '\u0628\u062d\u0631\u06cc\u0646',\r\n    'United Kingdom': '\u0628\u0631\u0637\u0627\u0646\u06cc\u06c1',\r\n    'Germany': '\u062c\u0631\u0645\u0646\u06cc',\r\n    'Norway': '\u0646\u0627\u0631\u0648\u06d2',\r\n    'Sweden': '\u0633\u0648\u06cc\u0688\u0646',\r\n    'Denmark': '\u0688\u0646\u0645\u0627\u0631\u06a9',\r\n    'Italy': '\u0627\u0679\u0644\u06cc',\r\n    'Spain': '\u0627\u0633\u067e\u06cc\u0646',\r\n    'Canada': '\u06a9\u06cc\u0646\u06cc\u0688\u0627',\r\n    'United States': '\u0627\u0645\u0631\u06cc\u06a9\u06c1',\r\n    'Australia': '\u0622\u0633\u0679\u0631\u06cc\u0644\u06cc\u0627',\r\n    'Other': '\u062f\u06cc\u06af\u0631'\r\n  };\r\n\r\n  \/\/ Store each option's original (translatable) label ONCE so we can always\r\n  \/\/ rebuild from the ORIGINAL text instead of stacking appended text on top\r\n  \/\/ of previously appended text.\r\n  const prefTimeBase = csPrefTime.options.map(opt => ({\r\n    el: opt,\r\n    value: opt.dataset.value,\r\n    baseLabel: opt.textContent.trim()\r\n  }));\r\n\r\n  function formatHour(h24, urdu){\r\n    const period = urdu ? (h24 >= 12 ? '\u0634\u0627\u0645' : '\u0635\u0628\u062d') : (h24 >= 12 ? 'PM' : 'AM');\r\n    let h = h24 % 12;\r\n    if(h === 0) h = 12;\r\n    return `${String(h).padStart(2,'0')}:00 ${period}`;\r\n  }\r\n\r\n  function convertHour(h24, diff){\r\n    let total = h24 + diff;\r\n    let dayOffset = 0;\r\n    if(total < 0){ total += 24; dayOffset = -1; }\r\n    if(total >= 24){ total -= 24; dayOffset = 1; }\r\n    return { hour: total, dayOffset };\r\n  }\r\n\r\n  function valueToHour24(value){\r\n    const match = value.match(\/^(\\d{2}):00 (AM|PM) PKT$\/);\r\n    if(!match) return null;\r\n    let h = parseInt(match[1], 10);\r\n    const period = match[2];\r\n    if(period === 'PM' && h !== 12) h += 12;\r\n    if(period === 'AM' && h === 12) h = 0;\r\n    return h;\r\n  }\r\n\r\n  function updatePrefTimeLabels(countryName){\r\n    const hasCountry = countryName && COUNTRY_OFFSETS.hasOwnProperty(countryName) && countryName !== 'Pakistan';\r\n    const diff = hasCountry ? COUNTRY_OFFSETS[countryName] - PKT_OFFSET : 0;\r\n    \/\/ Preferred Time submenu (options + hint) is locked to the English\r\n    \/\/ pattern always \u2014 regardless of whether the page is English or Urdu.\r\n    \/\/ Everything else on the page still follows the normal Urdu\/English\r\n    \/\/ flow untouched.\r\n    const urdu = false;\r\n    const displayCountryName = urdu ? (COUNTRY_NAMES_UR[countryName] || countryName) : countryName;\r\n    const timeWord = urdu ? '\u0648\u0642\u062a' : 'Time';\r\n    const dayPlus = urdu ? '(\u0627\u06af\u0644\u0627 \u062f\u0646)' : '(+1 day)';\r\n    const dayMinus = urdu ? '(\u067e\u0686\u06be\u0644\u0627 \u062f\u0646)' : '(-1 day)';\r\n\r\n    prefTimeBase.forEach(base => {\r\n      let newLabel = base.baseLabel;\r\n      if(hasCountry){\r\n        const h24 = valueToHour24(base.value);\r\n        if(h24 !== null){\r\n          const conv = convertHour(h24, diff);\r\n          const dayTag = conv.dayOffset === 1 ? dayPlus : conv.dayOffset === -1 ? dayMinus : '';\r\n          const localLabel = formatHour(conv.hour, urdu) + (dayTag ? ' ' + dayTag : '');\r\n          newLabel = `${base.baseLabel} \u2014 ${localLabel} ${displayCountryName} ${timeWord}`;\r\n        }\r\n      }\r\n      base.el.textContent = newLabel;\r\n    });\r\n\r\n    \/\/ If a time is already selected, refresh the visible trigger text too.\r\n    csPrefTime.refreshSelectedLabel();\r\n\r\n    if(!countryName || countryName === 'Other' || !COUNTRY_OFFSETS.hasOwnProperty(countryName)){\r\n      prefTimeHint.textContent = urdu\r\n        ? '\u0627\u0648\u0642\u0627\u062a \u067e\u0627\u06a9\u0633\u062a\u0627\u0646 \u06a9\u06d2 \u0648\u0642\u062a \u06a9\u06d2 \u0645\u0637\u0627\u0628\u0642 \u062f\u06a9\u06be\u0627\u0626\u06d2 \u06af\u0626\u06d2 \u06c1\u06cc\u06ba\u06d4 \u0627\u067e\u0646\u0627 \u0645\u0644\u06a9 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba \u062a\u0627\u06a9\u06c1 \u0622\u067e \u06a9\u0627 \u0645\u0642\u0627\u0645\u06cc \u0648\u0642\u062a \u0628\u06be\u06cc \u062f\u06a9\u06be\u0627\u06cc\u0627 \u062c\u0627 \u0633\u06a9\u06d2\u06d4'\r\n        : 'Times shown in Pakistan Time. Select your country above to also see your local equivalent.';\r\n    } else if(countryName === 'Pakistan'){\r\n      prefTimeHint.textContent = urdu\r\n        ? '\u0627\u0648\u0642\u0627\u062a \u067e\u0627\u06a9\u0633\u062a\u0627\u0646 \u06a9\u06d2 \u0648\u0642\u062a \u06a9\u06d2 \u0645\u0637\u0627\u0628\u0642 \u062f\u06a9\u06be\u0627\u0626\u06d2 \u06af\u0626\u06d2 \u06c1\u06cc\u06ba\u06d4'\r\n        : 'Times shown in Pakistan Time.';\r\n    } else {\r\n      prefTimeHint.textContent = urdu\r\n        ? `\u06c1\u0631 \u0622\u067e\u0634\u0646 \u067e\u0627\u06a9\u0633\u062a\u0627\u0646 \u06a9\u0627 \u0648\u0642\u062a \u0627\u0648\u0631 \u0627\u0633 \u06a9\u06d2 \u0645\u0633\u0627\u0648\u06cc ${displayCountryName} \u06a9\u0627 \u0648\u0642\u062a \u062f\u06a9\u06be\u0627\u062a\u0627 \u06c1\u06d2\u06d4`\r\n        : `Each option shows Pakistan Time and the equivalent ${countryName} Time.`;\r\n    }\r\n  }\r\n\r\n  \/\/ ================= Custom Calendar (Preferred Date) =================\r\n  (function(){\r\n    const dateInput = document.getElementById('prefDate');\r\n    const dateField = document.getElementById('dateField');\r\n    const pop = document.getElementById('calendarPop');\r\n    const monthSelect = document.getElementById('calMonthSelect');\r\n    const yearSelect = document.getElementById('calYearSelect');\r\n    const grid = document.getElementById('calGrid');\r\n    const prevBtn = document.getElementById('calPrevMonth');\r\n    const nextBtn = document.getElementById('calNextMonth');\r\n\r\n    const monthNames = ['January','February','March','April','May','June','July','August','September','October','November','December'];\r\n    const today = new Date();\r\n    today.setHours(0,0,0,0);\r\n\r\n    let viewMonth = today.getMonth();\r\n    let viewYear = today.getFullYear();\r\n    let selectedDate = null;\r\n\r\n    monthNames.forEach((name, i) => {\r\n      const opt = document.createElement('option');\r\n      opt.value = i;\r\n      opt.textContent = name;\r\n      monthSelect.appendChild(opt);\r\n    });\r\n\r\n    for(let y = today.getFullYear(); y <= today.getFullYear() + 2; y++){\r\n      const opt = document.createElement('option');\r\n      opt.value = y;\r\n      opt.textContent = y;\r\n      yearSelect.appendChild(opt);\r\n    }\r\n\r\n    function pad(n){ return String(n).padStart(2,'0'); }\r\n\r\n    function toISODate(d){\r\n      return `${d.getFullYear()}-${pad(d.getMonth()+1)}-${pad(d.getDate())}`;\r\n    }\r\n\r\n    function toDisplayDate(d){\r\n      return `${pad(d.getDate())}\/${pad(d.getMonth()+1)}\/${d.getFullYear()}`;\r\n    }\r\n\r\n    function renderGrid(){\r\n      monthSelect.value = viewMonth;\r\n      yearSelect.value = viewYear;\r\n      grid.innerHTML = '';\r\n\r\n      const firstOfMonth = new Date(viewYear, viewMonth, 1);\r\n      const startOffset = firstOfMonth.getDay();\r\n      const daysInMonth = new Date(viewYear, viewMonth + 1, 0).getDate();\r\n      const daysInPrevMonth = new Date(viewYear, viewMonth, 0).getDate();\r\n\r\n      const cells = [];\r\n\r\n      for(let i = startOffset - 1; i >= 0; i--){\r\n        cells.push({day: daysInPrevMonth - i, otherMonth:true, m: viewMonth - 1, y: viewYear});\r\n      }\r\n      for(let d = 1; d <= daysInMonth; d++){\r\n        cells.push({day:d, otherMonth:false, m: viewMonth, y: viewYear});\r\n      }\r\n      while(cells.length % 7 !== 0){\r\n        const next = cells.length - (startOffset + daysInMonth) + 1;\r\n        cells.push({day: next, otherMonth:true, m: viewMonth + 1, y: viewYear});\r\n      }\r\n\r\n      cells.forEach(cell => {\r\n        const cellDate = new Date(cell.y, cell.m, cell.day);\r\n        const btn = document.createElement('div');\r\n        btn.className = 'cal-day';\r\n        btn.textContent = cell.day;\r\n        if(cell.otherMonth) btn.classList.add('other-month');\r\n        if(cellDate.getTime() === today.getTime()) btn.classList.add('today');\r\n        if(selectedDate && cellDate.getTime() === selectedDate.getTime()) btn.classList.add('selected');\r\n        if(cellDate.getTime() < today.getTime()) btn.classList.add('disabled');\r\n\r\n        btn.addEventListener('click', () => {\r\n          selectedDate = cellDate;\r\n          dateInput.value = toDisplayDate(cellDate);\r\n          dateInput.dataset.iso = toISODate(cellDate);\r\n          dateInput.classList.remove('invalid');\r\n          document.getElementById('err-prefDate').style.display = 'none';\r\n          closeCalendar();\r\n        });\r\n\r\n        grid.appendChild(btn);\r\n      });\r\n    }\r\n\r\n    function openCalendar(){\r\n      if(!selectedDate){\r\n        viewMonth = today.getMonth();\r\n        viewYear = today.getFullYear();\r\n      } else {\r\n        viewMonth = selectedDate.getMonth();\r\n        viewYear = selectedDate.getFullYear();\r\n      }\r\n      renderGrid();\r\n      pop.classList.add('open');\r\n    }\r\n\r\n    function closeCalendar(){\r\n      pop.classList.remove('open');\r\n    }\r\n\r\n    dateInput.addEventListener('click', (e) => {\r\n      e.stopPropagation();\r\n      pop.classList.contains('open') ? closeCalendar() : openCalendar();\r\n    });\r\n\r\n    prevBtn.addEventListener('click', () => {\r\n      viewMonth--;\r\n      if(viewMonth < 0){ viewMonth = 11; viewYear--; }\r\n      renderGrid();\r\n    });\r\n    nextBtn.addEventListener('click', () => {\r\n      viewMonth++;\r\n      if(viewMonth > 11){ viewMonth = 0; viewYear++; }\r\n      renderGrid();\r\n    });\r\n    monthSelect.addEventListener('change', () => { viewMonth = parseInt(monthSelect.value,10); renderGrid(); });\r\n    yearSelect.addEventListener('change', () => { viewYear = parseInt(yearSelect.value,10); renderGrid(); });\r\n\r\n    document.addEventListener('click', (e) => {\r\n      if(!dateField.contains(e.target)) closeCalendar();\r\n    });\r\n  })();\r\n\r\n  \/\/ ================= Patient Report File Upload =================\r\n  const patientFilesInput = document.getElementById('patientFiles');\r\n  const fileListDiv = document.getElementById('fileList');\r\n  const MAX_FILE_SIZE = 10 * 1024 * 1024; \/\/ 10MB\r\n  const ALLOWED_EXTENSIONS = ['pdf','jpg','jpeg','png'];\r\n\r\n  patientFilesInput.addEventListener('change', function(){\r\n    fileListDiv.innerHTML = '';\r\n    Array.from(patientFilesInput.files).forEach(file => {\r\n      const ext = file.name.split('.').pop().toLowerCase();\r\n      const sizeOk = file.size <= MAX_FILE_SIZE;\r\n      const typeOk = ALLOWED_EXTENSIONS.includes(ext);\r\n      const row = document.createElement('div');\r\n      row.className = 'file-row';\r\n      const sizeMB = (file.size \/ (1024*1024)).toFixed(1);\r\n      if(!typeOk){\r\n        row.style.color = '#c0392b';\r\n        row.textContent = `${file.name} \u2014 unsupported file type`;\r\n      } else if(!sizeOk){\r\n        row.style.color = '#c0392b';\r\n        row.textContent = `${file.name} (${sizeMB}MB) \u2014 exceeds 10MB limit`;\r\n      } else {\r\n        row.textContent = `${file.name} (${sizeMB}MB)`;\r\n      }\r\n      fileListDiv.appendChild(row);\r\n    });\r\n  });\r\n\r\n  \/\/ Sends the selected files + patient identifiers to WordPress in the\r\n  \/\/ background. Runs silently after the booking review is confirmed;\r\n  \/\/ does not block or delay the receipt view from showing.\r\n  async function uploadPatientData(){\r\n    const uploadStatus = document.getElementById('uploadStatus');\r\n    if(!patientFilesInput.files || patientFilesInput.files.length === 0) return;\r\n\r\n    const formData = new FormData();\r\n    formData.append('action', 'submit_patient_report');\r\n    formData.append('booking_id', bookingData.bookingId);\r\n    formData.append('full_name', bookingData.fullName);\r\n    formData.append('whatsapp', bookingData.whatsapp);\r\n    for(const file of patientFilesInput.files){\r\n      formData.append('reports[]', file);\r\n    }\r\n\r\n    uploadStatus.textContent = 'Uploading your files\u2026';\r\n    uploadStatus.className = '';\r\n\r\n    try{\r\n      const res = await fetch(WP_AJAX_URL, { method: 'POST', body: formData });\r\n      const data = await res.json();\r\n      if(data && data.success){\r\n        uploadStatus.textContent = 'Files uploaded successfully.';\r\n        uploadStatus.className = 'success';\r\n      } else {\r\n        uploadStatus.textContent = 'File upload failed. Please try again or send via WhatsApp.';\r\n        uploadStatus.className = 'error';\r\n      }\r\n    }catch(err){\r\n      console.error('Report upload failed:', err);\r\n      uploadStatus.textContent = 'File upload failed. Please try again or send via WhatsApp.';\r\n      uploadStatus.className = 'error';\r\n    }\r\n  }\r\n\r\n  document.getElementById('reviewBtn').addEventListener('click', function(){\r\n    clearErrors();\r\n    let valid = true;\r\n\r\n    const bookingType = document.getElementById('bookingType').value;\r\n    const fullName = document.getElementById('fullName').value.trim();\r\n    const email = document.getElementById('email').value.trim();\r\n    const whatsapp = document.getElementById('whatsapp').value.trim();\r\n    const country = document.getElementById('country').value;\r\n    const consultMode = document.getElementById('consultMode').value;\r\n    const consultType = document.getElementById('consultType').value;\r\n    const prefDateEl = document.getElementById('prefDate');\r\n    const prefDate = prefDateEl.dataset.iso || '';\r\n    const prefTimeEl = document.getElementById('prefTime');\r\n    const prefTime = prefTimeEl.value;\r\n    const prefTimeDisplay = prefTimeEl.dataset.label || '';\r\n    const sugarBpEl = document.getElementById('sugarBp');\r\n    const sugarBp = sugarBpEl.value;\r\n    const sugarBpDisplay = sugarBpEl.dataset.label || '';\r\n    const concern = document.getElementById('concern').value.trim();\r\n    const chk1 = document.getElementById('chk1').checked;\r\n    const chk2 = document.getElementById('chk2').checked;\r\n    const chk3 = document.getElementById('chk3').checked;\r\n    const chk4 = document.getElementById('chk4').checked;\r\n\r\n    if(!bookingType){ markInvalid('bookingType','err-bookingType'); valid = false; }\r\n    if(!fullName){ markInvalid('fullName','err-fullName'); valid = false; }\r\n    if(email && !\/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(email)){ markInvalid('email','err-email'); valid = false; }\r\n    if(!whatsapp || whatsapp.replace(\/\\D\/g,'').length < 7){ markInvalid('whatsapp','err-whatsapp'); valid = false; }\r\n    if(!country){ markInvalid('country','err-country'); valid = false; }\r\n    if(!consultMode){ markInvalid('consultMode','err-consultMode'); valid = false; }\r\n    if(!consultType){ markInvalid('consultType','err-consultType'); valid = false; }\r\n    if(!prefDate){ markInvalid('prefDate','err-prefDate'); valid = false; }\r\n    if(!prefTime){ markInvalid('prefTime','err-prefTime'); valid = false; }\r\n    if(!sugarBp){ markInvalid('sugarBp','err-sugarBp'); valid = false; }\r\n    if(!concern){ markInvalid('concern','err-concern'); valid = false; }\r\n    if(!(chk1 && chk2 && chk3 && chk4)){ document.getElementById('err-checks').style.display = 'block'; valid = false; }\r\n\r\n    if(!valid){\r\n      const firstInvalid = document.querySelector('.invalid');\r\n      if(firstInvalid) firstInvalid.scrollIntoView({behavior:'smooth', block:'center'});\r\n      return;\r\n    }\r\n\r\n    bookingData = {\r\n      bookingId: generateBookingId(),\r\n      bookingType,\r\n      fullName, email: email || '\u2014', whatsapp,\r\n      country,\r\n      language: document.getElementById('language').dataset.label || document.getElementById('language').value,\r\n      consultMode,\r\n      consultType,\r\n      prefDate: formatDate(prefDate),\r\n      prefTime: prefTimeDisplay,\r\n      age: document.getElementById('age').value,\r\n      sugarBp: sugarBpDisplay,\r\n      concern,\r\n      notes: document.getElementById('notes').value.trim()\r\n    };\r\n\r\n    uploadPatientData(); \/\/ background: send report files to WordPress\r\n    renderReceipt();\r\n    showView(2);\r\n  });\r\n\r\n  function renderReceipt(){\r\n    const isPriority = bookingData.bookingType === 'Priority Fast Track Booking';\r\n\r\n    document.getElementById('r-bookingId').textContent = bookingData.bookingId;\r\n    document.getElementById('r-bookingType').textContent = bookingData.bookingType;\r\n    document.getElementById('r-fullName').textContent = bookingData.fullName;\r\n    document.getElementById('r-whatsapp').textContent = bookingData.whatsapp;\r\n    document.getElementById('r-country').textContent = bookingData.country;\r\n    document.getElementById('r-language').textContent = bookingData.language;\r\n    document.getElementById('r-consultMode').textContent = bookingData.consultMode;\r\n    document.getElementById('r-consultType').textContent = bookingData.consultType;\r\n    document.getElementById('r-prefDate').textContent = bookingData.prefDate;\r\n    document.getElementById('r-prefTime').textContent = bookingData.prefTime;\r\n    document.getElementById('r-sugarBp').textContent = bookingData.sugarBp;\r\n\r\n    const origFeeRow = document.getElementById('row-origFee');\r\n    const discountRow = document.getElementById('row-discount');\r\n\r\n    origFeeRow.style.display = 'none';\r\n    discountRow.style.display = 'none';\r\n\r\n    if(isPriority){\r\n      bookingData.payableAmount = PRIORITY_PAYABLE_FEE;\r\n      document.getElementById('r-payable').textContent = `$${PRIORITY_PAYABLE_FEE}`;\r\n    } else {\r\n      bookingData.payableAmount = STANDARD_PAYABLE_FEE;\r\n      document.getElementById('r-payable').textContent = `$${STANDARD_PAYABLE_FEE}`;\r\n    }\r\n\r\n    const now = new Date();\r\n    document.getElementById('printDate').textContent = 'Generated: ' + now.toLocaleDateString('en-GB', {year:'numeric', month:'short', day:'2-digit'}) + ' ' + now.toLocaleTimeString('en-GB', {hour:'2-digit', minute:'2-digit'});\r\n  }\r\n\r\n  document.getElementById('editBtn').addEventListener('click', function(){\r\n    showView(1);\r\n  });\r\n\r\n  document.getElementById('printBtn').addEventListener('click', function(){\r\n    window.print();\r\n  });\r\n\r\n  document.getElementById('waBtn').addEventListener('click', function(){\r\n    if(!bookingData) return;\r\n    const urdu = isUrduPage();\r\n    const L = (key, fallback) => (urdu && UR_TEXT[key]) ? UR_TEXT[key] : fallback;\r\n    const msg =\r\n`${L('wa_msg_title','New Consultation Booking')}\r\n${L('wa_msg_bookingId','Booking ID')}: ${bookingData.bookingId}\r\n${L('wa_msg_bookingType','Booking Type')}: ${bookingData.bookingType}\r\n${L('wa_msg_patientName','Patient Name')}: ${bookingData.fullName}\r\n${L('wa_msg_whatsapp','WhatsApp')}: ${bookingData.whatsapp}\r\n${L('wa_msg_country','Country')}: ${bookingData.country}\r\n${L('wa_msg_consultMode','Consultation Mode')}: ${bookingData.consultMode}\r\n${L('wa_msg_consultType','Consultation Type')}: ${bookingData.consultType}\r\n${L('wa_msg_prefDate','Preferred Date')}: ${bookingData.prefDate}\r\n${L('wa_msg_prefTime','Preferred Time')}: ${bookingData.prefTime}\r\n${L('wa_msg_sugarBp','Diabetes \/ Blood Pressure')}: ${bookingData.sugarBp}\r\n${L('wa_msg_concern','Health Goal')}: ${bookingData.concern}\r\n${L('wa_msg_payable','Payable Amount')}: $${bookingData.payableAmount}\r\n${L('wa_msg_paymentStatus','Payment Status')}: ${L('wa_msg_paymentStatusValue','Pending Manual Confirmation')}\r\n\r\n${L('wa_msg_closing',\"I have submitted my booking. Please share the payment method so I can complete payment and send my screenshot here.\")}`;\r\n    const url = `https:\/\/wa.me\/${CLINIC_WHATSAPP_NUMBER}?text=${encodeURIComponent(msg)}`;\r\n    window.open(url, '_blank');\r\n  });\r\n\r\n  tabBooking.classList.add('clickable');\r\n  tabBooking.addEventListener('click', () => showView(1));\r\n  tabReceipt.addEventListener('click', () => { if(bookingData) showView(2); });\r\n\r\n  showView(1);\r\n<\/script>\r\n<\/body>\r\n<\/html>\r\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Book Online Consultation Private, Convenient &amp; Personalized Care Choose your preferred consultation type, select a convenient date and time, and [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-15","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/drfo.health\/ur\/wp-json\/wp\/v2\/pages\/15","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/drfo.health\/ur\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/drfo.health\/ur\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/drfo.health\/ur\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/drfo.health\/ur\/wp-json\/wp\/v2\/comments?post=15"}],"version-history":[{"count":188,"href":"https:\/\/drfo.health\/ur\/wp-json\/wp\/v2\/pages\/15\/revisions"}],"predecessor-version":[{"id":1049,"href":"https:\/\/drfo.health\/ur\/wp-json\/wp\/v2\/pages\/15\/revisions\/1049"}],"wp:attachment":[{"href":"https:\/\/drfo.health\/ur\/wp-json\/wp\/v2\/media?parent=15"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}