{"id":592,"date":"2026-03-31T10:54:05","date_gmt":"2026-03-31T10:54:05","guid":{"rendered":"https:\/\/viewanonymous.com\/?page_id=592"},"modified":"2026-03-31T10:54:05","modified_gmt":"2026-03-31T10:54:05","slug":"friend","status":"publish","type":"page","link":"https:\/\/viewanonymous.com\/tools\/instagram\/friend\/","title":{"rendered":"Instagram Friend Viewer\u00a0\u2013 Explore Friends &amp; Connections"},"content":{"rendered":"\n[et_pb_section fb_built=&#8221;1&#8243; fullwidth=&#8221;on&#8221; theme_builder_area=&#8221;post_content&#8221; _builder_version=&#8221;4.27.4&#8243; _module_preset=&#8221;default&#8221;][et_pb_fullwidth_code _builder_version=&#8221;4.27.4&#8243; _module_preset=&#8221;default&#8221; theme_builder_area=&#8221;post_content&#8221; hover_enabled=&#8221;0&#8243; sticky_enabled=&#8221;0&#8243;]    <!-- Google Fonts - Premium Typography -->\r\n        <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n        <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin=\"\">\r\n        <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Space+Grotesk:wght@300;400;500;600;700&family=Manrope:wght@300;400;500;600;700;800&display=swap\" rel=\"stylesheet\">\r\n        \r\n        <!-- Bootstrap CSS -->\r\n        <link href=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.3.0\/dist\/css\/bootstrap.min.css\" rel=\"stylesheet\">\r\n        <!-- Boxicons -->\r\n        <link href=\"https:\/\/unpkg.com\/boxicons@2.1.4\/css\/boxicons.min.css\" rel=\"stylesheet\">\r\n        <!-- AOS Animation -->\r\n        <link href=\"https:\/\/unpkg.com\/aos@2.3.1\/dist\/aos.css\" rel=\"stylesheet\">\r\n        \r\n  \r\n  <style id=\"vvvebjs-styles\">\r\n      html{\r\n          overflow-x: hidden;\r\n      }\r\n     \r\n:root {\r\n    --igfv-primary-color: #6366F1;\r\n    --igfv-secondary-color: #8c60ff;\r\n    --igfv-dark-color: #0F172A;\r\n    --igfv-light-color: #FFFFFF;\r\n    --igfv-gray-color: #F1F5F9;\r\n    --igfv-primary-hover: #4F46E5;\r\n    --igfv-secondary-hover: #7c3aed;\r\n    --igfv-section-padding: 100px 0;\r\n}\r\n\r\nbody {\r\n    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n    overflow-x: hidden;\r\n    scroll-behavior: smooth;\r\n    line-height: 1.6;\r\n    background-color: var(--va-home-white);\r\n    color: var(--va-home-dark);\r\n}\r\n\r\nh1, h2, h3, h4, h5, h6 {\r\n    font-family: 'Space Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;\r\n    font-weight: 700;\r\n    color: var(--va-home-dark);\r\n    line-height: 1.2;\r\n}   \r\n  \r\n       \/* Instagram-style Hero Section *\/\r\n       .igfv-hero-section {\r\n              padding: var(--igfv-section-padding);\r\n              text-align: center;\r\n              background-color: var(--igfv-light-color);\r\n          }\r\n          \r\n          .igfv-hero-content {\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n          \r\n          .igfv-hero-section h1 {\r\n              font-size: 3.5rem;\r\n              font-weight: 700;\r\n              margin-bottom: 1.5rem;\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              -webkit-background-clip: text;\r\n              -webkit-text-fill-color: transparent;\r\n          }\r\n          \r\n          .igfv-hero-section p {\r\n              font-size: 1.25rem;\r\n              max-width: 700px;\r\n              margin: 0 auto 2rem;\r\n              opacity: 0.9;\r\n              font-weight: 300;\r\n              color: #666;\r\n          }\r\n          \r\n          \/* Work Process Section with Instagram Colors *\/\r\n          .igfv-work-process-section {\r\n              padding: var(--igfv-section-padding);\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              color: white;\r\n              position: relative;\r\n              overflow: hidden;\r\n          }\r\n          \r\n          .igfv-work-process-section::before {\r\n              content: '';\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background: rgba(0,0,0,0.05);\r\n          }\r\n          \r\n          .igfv-work-process-content {\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n          \r\n          .igfv-process-step {\r\n              text-align: center;\r\n              padding: 30px 20px;\r\n              position: relative;\r\n              z-index: 1;\r\n              background: rgba(255,255,255,0.1);\r\n              backdrop-filter: blur(10px);\r\n              border-radius: 16px;\r\n              margin: 15px;\r\n              border: 1px solid rgba(255,255,255,0.2);\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .igfv-process-step:hover {\r\n              transform: translateY(-10px);\r\n              background: rgba(255,255,255,0.15);\r\n              box-shadow: 0 15px 30px rgba(0,0,0,0.2);\r\n          }\r\n          \r\n          .igfv-step-number {\r\n              width: 60px;\r\n              height: 60px;\r\n              background: white;\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              color: white;\r\n              border-radius: 50%;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              font-weight: 700;\r\n              margin: 0 auto 20px;\r\n              font-size: 1.5rem;\r\n              box-shadow: 0 5px 15px rgba(0,0,0,0.1);\r\n          }\r\n          \r\n          \/* Features Section *\/\r\n          .igfv-features-section {\r\n              padding: var(--igfv-section-padding);\r\n              background: white;\r\n          }\r\n          \r\n          .igfv-feature-card {\r\n              padding: 40px 30px;\r\n              border-radius: 16px;\r\n              background: white;\r\n              box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);\r\n              margin-bottom: 30px;\r\n              transition: all 0.3s ease;\r\n              border: 1px solid rgba(0,0,0,0.05);\r\n              height: 100%;\r\n              position: relative;\r\n              overflow: hidden;\r\n          }\r\n          \r\n          .igfv-feature-card::before {\r\n              content: '';\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 4px;\r\n              height: 100%;\r\n              background: linear-gradient(to bottom, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .igfv-feature-card:hover {\r\n              transform: translateY(-10px);\r\n              box-shadow: 0 15px 40px rgba(0,0,0,0.1);\r\n          }\r\n          \r\n          .igfv-feature-card:hover::before {\r\n              width: 100%;\r\n              opacity: 0.1;\r\n          }\r\n          \r\n          .igfv-feature-icon {\r\n              width: 70px;\r\n              height: 70px;\r\n              border-radius: 20px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              margin-bottom: 25px;\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              color: white;\r\n              font-size: 1.8rem;\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .igfv-feature-card:hover .igfv-feature-icon {\r\n              transform: rotate(15deg) scale(1.1);\r\n              background: linear-gradient(45deg, var(--igfv-primary-hover), var(--igfv-secondary-hover));\r\n          }\r\n          \r\n          \/* Why Choose Section *\/\r\n          .igfv-why-choose-section {\r\n              padding: var(--igfv-section-padding);\r\n              background: #f9f9f9;\r\n          }\r\n          \r\n          .igfv-why-choose-image {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              box-shadow: 0 20px 40px rgba(0,0,0,0.1);\r\n              transform: perspective(1000px) rotateY(-5deg);\r\n              transition: all 0.5s ease;\r\n          }\r\n          \r\n          .igfv-why-choose-image:hover {\r\n              transform: perspective(1000px) rotateY(0deg);\r\n          }\r\n          \r\n          .igfv-benefit-item {\r\n              display: flex;\r\n              align-items: flex-start;\r\n              margin-bottom: 20px;\r\n              padding: 15px;\r\n              border-radius: 12px;\r\n              background: white;\r\n              box-shadow: 0 5px 15px rgba(0,0,0,0.03);\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .igfv-benefit-item:hover {\r\n              transform: translateX(10px);\r\n              box-shadow: 0 10px 25px rgba(0,0,0,0.1);\r\n          }\r\n          \r\n          .igfv-benefit-icon {\r\n              width: 40px;\r\n              height: 40px;\r\n              border-radius: 12px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              margin-right: 15px;\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              color: white;\r\n              font-size: 1.2rem;\r\n              flex-shrink: 0;\r\n          }\r\n          \r\n          \/* FAQ Section *\/\r\n          .igfv-faq-section {\r\n              padding: var(--igfv-section-padding);\r\n              background: white;\r\n          }\r\n          \r\n          .igfv-accordion-item {\r\n              border: none;\r\n              border-radius: 12px !important;\r\n              overflow: hidden;\r\n              margin-bottom: 15px;\r\n              box-shadow: 0 5px 15px rgba(0,0,0,0.05);\r\n          }\r\n          \r\n          .igfv-accordion-button {\r\n              font-weight: 600;\r\n              color: var(--igfv-dark-color);\r\n              padding: 20px 25px;\r\n              background: white;\r\n              box-shadow: none;\r\n              border-radius: 12px 12px 0 0 !important;\r\n          }\r\n          \r\n          .igfv-accordion-button:not(.collapsed) {\r\n              background: white;\r\n              color: var(--igfv-primary-color);\r\n              box-shadow: none;\r\n          }\r\n          \r\n          .igfv-accordion-button:focus {\r\n              box-shadow: none;\r\n              border-color: rgba(225, 48, 108, 0.3);\r\n          }\r\n          \r\n          .igfv-accordion-button::after {\r\n              background-image: url(\"data:image\/svg+xml,%3csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 16 16' fill='%23E1306C'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'\/%3e%3c\/svg%3e\");\r\n          }\r\n          \r\n          .igfv-accordion-body {\r\n              padding: 25px;\r\n              color: #666;\r\n          }\r\n          \r\n          \/* Section Titles *\/\r\n          .igfv-section-title {\r\n              font-weight: 700;\r\n              color: var(--igfv-dark-color);\r\n              margin-bottom: 1.5rem;\r\n              position: relative;\r\n              display: inline-block;\r\n          }\r\n          \r\n          .igfv-section-title::after {\r\n              content: '';\r\n              position: absolute;\r\n              bottom: -10px;\r\n              left: 0;\r\n              width: 60px;\r\n              height: 4px;\r\n              background: linear-gradient(to right, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              border-radius: 2px;\r\n          }\r\n          \r\n          .igfv-light-title {\r\n              color: white;\r\n          }\r\n          \r\n          .igfv-light-title::after {\r\n              background: white;\r\n          }\r\n          \r\n          .igfv-section-subtitle {\r\n              color: #666;\r\n              max-width: 700px;\r\n              margin: 0 auto 3rem;\r\n              font-size: 1.1rem;\r\n          }\r\n          \r\n          .igfv-light-subtitle {\r\n              color: rgba(255,255,255,0.8);\r\n          }\r\n          \r\n          \/* Responsive Design *\/\r\n          @media (max-width: 991px) {\r\n              :root {\r\n                  --igfv-section-padding: 80px 0;\r\n              }\r\n              \r\n              .igfv-hero-section h1 {\r\n                  font-size: 2.8rem;\r\n              }\r\n              \r\n              .igfv-process-step::before {\r\n                  display: none;\r\n              }\r\n          }\r\n          \r\n          @media (max-width: 767px) {\r\n              :root {\r\n                  --igfv-section-padding: 70px 0;\r\n              }\r\n              \r\n              .igfv-hero-section {\r\n                  padding: 100px 0 60px;\r\n              }\r\n              \r\n              .igfv-hero-section h1 {\r\n                  font-size: 2.2rem;\r\n              }\r\n              \r\n              .igfv-hero-section p {\r\n                  font-size: 1rem;\r\n              }\r\n              \r\n              .igfv-section-title {\r\n                  font-size: 1.8rem;\r\n              }\r\n          }\r\n          \r\n          \/* Animation *\/\r\n          @keyframes igfv-float {\r\n              0% { transform: translateY(0px); }\r\n              50% { transform: translateY(-15px); }\r\n              100% { transform: translateY(0px); }\r\n          }\r\n          \r\n          .igfv-floating-element {\r\n              animation: igfv-float 6s ease-in-out infinite;\r\n          }\r\n          \r\n          \/* Custom Scrollbar *\/\r\n          ::-webkit-scrollbar {\r\n              width: 8px;\r\n          }\r\n          \r\n          ::-webkit-scrollbar-track {\r\n              background: #f1f1f1;\r\n          }\r\n          \r\n          ::-webkit-scrollbar-thumb {\r\n              background: linear-gradient(var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              border-radius: 10px;\r\n          }\r\n          \r\n          ::-webkit-scrollbar-thumb:hover {\r\n              background: linear-gradient(var(--igfv-primary-hover), var(--igfv-secondary-hover));\r\n          }    \r\n       \r\n    \/* Footer Section *\/\r\n    .footer-section {\r\n      background: radial-gradient(circle, rgba(16, 33, 120, 1) 0%, rgba(94, 7, 6, 1) 100%);\r\n      color: #fff;\r\n      padding-top: 80px;\r\n      padding-bottom: 80px;\r\n    }\r\n  \r\n    .footer-logo {\r\n      width: 200px;\r\n      margin-bottom: 10px;\r\n      cursor: pointer;\r\n    }\r\n  \r\n    .footer-description {\r\n      font-size: 14px;\r\n      color: #bbb;\r\n    }\r\n  \r\n    .footer-heading {\r\n      font-size: 18px;\r\n      font-weight: 600;\r\n      color: #fff;\r\n      margin-bottom: 15px;\r\n    }\r\n  \r\n    \/* Quick Links and Tools *\/\r\n    .footer-links .footer-link, .footer-tools .footer-tool {\r\n      color: #bbb;\r\n      text-decoration: none;\r\n      font-size: 14px;\r\n      display: block;\r\n      margin-bottom: 10px;\r\n      transition: color 0.3s ease;\r\n    }\r\n  \r\n    .footer-links .footer-link:hover, .footer-tools .footer-tool:hover {\r\n      color: #fff;\r\n    }\r\n  \r\n    \/* Social Icons (Boxicons) *\/\r\n    .footer-social .social-icon {\r\n      color: #bbb;\r\n      font-size: 24px;\r\n      text-decoration: none;\r\n      transition: color 0.3s ease;\r\n    }\r\n  \r\n    .footer-social .social-icon:hover {\r\n      color: #fff;\r\n    }\r\n  \r\n    \/* Footer Copyright Section *\/\r\n    .footer-copyright {\r\n      background-color: #1a1a1a;\r\n    }\r\n  \r\n    .footer-bottom-text {\r\n      font-size: 14px;\r\n      color: #bbb;\r\n    }\r\n  \r\n    \/* Responsive Design *\/\r\n    @media (max-width: 767.98px) {\r\n      .footer-logo {\r\n        width: 200px;\r\n      }\r\n  \r\n      .footer-description {\r\n        font-size: 14px;\r\n      }\r\n  \r\n      .footer-heading {\r\n        font-size: 18px;\r\n      }\r\n  \r\n      .footer-link, .footer-tool {\r\n        font-size: 14px;\r\n      }\r\n  \r\n      .footer-bottom-text {\r\n        font-size: 14px;\r\n      }\r\n    }\r\n  \r\n  <\/style>\r\n  <!-- tools -->\r\n  <style>\r\n      :root {\r\n          \/* Instagram-inspired Gradient Theme *\/\r\n          --ifv-c-insta-pink: #d62976;\r\n          --ifv-c-insta-purple: #962fbf;\r\n          --ifv-c-insta-orange: #fa7e1e;\r\n          --ifv-g-accent: linear-gradient(45deg, var(--ifv-c-insta-pink), var(--ifv-c-insta-orange));\r\n          --ifv-g-accent-shadow: 0 8px 25px -5px hsla(328, 68%, 50%, 0.4);\r\n  \r\n          --ifv-c-bg: #0f0f23;\r\n          --ifv-c-surface: #1a1a2e;\r\n          --ifv-c-border: hsla(0, 0%, 100%, 0.15);\r\n          --ifv-c-border-hover: hsla(328, 68%, 50%, 0.6);\r\n          --ifv-c-text-primary: hsl(0, 0%, 98%);\r\n          --ifv-c-text-secondary: hsl(0, 0%, 75%);\r\n          --ifv-c-verified: #0095F6;\r\n          --ifv-radius-md: 10px;\r\n          --ifv-radius-lg: 16px;\r\n          --ifv-transition: 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);\r\n      }\r\n  \r\n      * {\r\n          box-sizing: border-box;\r\n          -webkit-font-smoothing: antialiased;\r\n          -moz-osx-font-smoothing: grayscale;\r\n      }\r\n  \r\n      html {\r\n          font-size: 16px;\r\n      }\r\n  \r\n      .igfv-custom-hero-section {\r\n          margin: 0;\r\n          padding: 0;\r\n          font-family: 'Inter', sans-serif;\r\n          background-color: var(--ifv-c-bg);\r\n          color: var(--ifv-c-text-primary);\r\n          \/* min-height: 100vh; *\/\r\n          padding: 80px 0;\r\n          position: relative;\r\n      }\r\n  \r\n      .ifv-bg-mesh {\r\n          position: fixed;\r\n          inset: 0;\r\n          z-index: 0;\r\n          overflow: hidden;\r\n          opacity: 0.5;\r\n      }\r\n  \r\n      .ifv-bg-mesh-blob {\r\n          position: absolute;\r\n          filter: blur(180px);\r\n          border-radius: 50%;\r\n      }\r\n  \r\n      .ifv-blob-1 {\r\n          top: -10%;\r\n          left: -20%;\r\n          width: 50vw;\r\n          height: 50vh;\r\n          background: var(--ifv-c-insta-purple);\r\n          animation: ifv-move 25s infinite alternate;\r\n      }\r\n  \r\n      .ifv-blob-2 {\r\n          bottom: -15%;\r\n          right: -15%;\r\n          width: 45vw;\r\n          height: 45vh;\r\n          background: var(--ifv-c-insta-orange);\r\n          animation: ifv-move 30s infinite alternate-reverse;\r\n      }\r\n  \r\n      .ifv-container {\r\n          width: 100%;\r\n          max-width: 1600px;\r\n          margin: 0 auto;\r\n          padding: 4rem 1.5rem;\r\n          position: relative;\r\n          z-index: 1;\r\n      }\r\n  \r\n      \/* --- Header --- *\/\r\n      .ifv-header {\r\n          text-align: center;\r\n          margin-bottom: 5rem;\r\n          position: relative;\r\n      }\r\n  \r\n      .ifv-header-icon {\r\n          font-size: 4.5rem;\r\n          margin-bottom: 2rem;\r\n          animation: ifv-float 4s ease-in-out infinite;\r\n          background: var(--ifv-g-accent);\r\n          -webkit-background-clip: text;\r\n          -webkit-text-fill-color: transparent;\r\n          background-clip: text;\r\n          text-fill-color: transparent;\r\n          filter: drop-shadow(0 4px 20px hsla(328, 68%, 50%, 0.3));\r\n      }\r\n  \r\n      .ifv-header h1 {\r\n          font-size: clamp(3.5rem, 7vw, 5rem);\r\n          font-weight: 800;\r\n          letter-spacing: -0.04em;\r\n          margin: 0 0 1rem 0;\r\n          background: linear-gradient(135deg, var(--ifv-c-text-primary) 0%, hsl(0, 0%, 85%) 100%);\r\n          -webkit-background-clip: text;\r\n          -webkit-text-fill-color: transparent;\r\n          background-clip: text;\r\n          text-fill-color: transparent;\r\n      }\r\n  \r\n      .ifv-header-subtitle {\r\n          font-size: 1.4rem;\r\n          color: var(--ifv-c-text-secondary);\r\n          font-weight: 500;\r\n          margin-bottom: 2rem;\r\n          letter-spacing: 0.02em;\r\n      }\r\n  \r\n      .ifv-pro-badge {\r\n          display: inline-block;\r\n          margin-top: 2rem;\r\n          border: 1px solid transparent;\r\n          background: linear-gradient(var(--ifv-c-bg), var(--ifv-c-bg)) padding-box,\r\n              var(--ifv-g-accent) border-box;\r\n          color: var(--ifv-c-text-secondary);\r\n          padding: 0.8rem 2rem;\r\n          border-radius: 50px;\r\n          font-weight: 700;\r\n          font-size: 0.95rem;\r\n          letter-spacing: 0.1em;\r\n          text-transform: uppercase;\r\n          box-shadow: 0 8px 25px -5px hsla(328, 68%, 50%, 0.2);\r\n          transition: all 0.3s ease;\r\n      }\r\n  \r\n      .ifv-pro-badge:hover {\r\n          transform: translateY(-2px);\r\n          box-shadow: 0 12px 35px -8px hsla(328, 68%, 50%, 0.3);\r\n      }\r\n  \r\n      \/* --- Panels & Inputs --- *\/\r\n      .ifv-ui-panel {\r\n          background: hsla(290, 14%, 36%, 0.8);\r\n          backdrop-filter: blur(25px);\r\n          border: 1px solid var(--ifv-c-border);\r\n          border-radius: var(--ifv-radius-lg);\r\n          padding: 3rem;\r\n          margin-bottom: 3rem;\r\n          box-shadow: 0 25px 60px -25px hsla(0, 0%, 0%, 0.5);\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .ifv-ui-panel::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 1px;\r\n          background: linear-gradient(90deg, transparent, var(--ifv-c-insta-pink), transparent);\r\n          opacity: 0.4;\r\n      }\r\n  \r\n      .ifv-search-form {\r\n          display: flex;\r\n          gap: 1.5rem;\r\n          align-items: stretch;\r\n      }\r\n  \r\n      .ifv-search-input,\r\n      .ifv-search-box-followers,\r\n      .ifv-filter-select {\r\n          padding: 1.4rem 2rem;\r\n          border: 1px solid var(--ifv-c-border);\r\n          border-radius: var(--ifv-radius-md);\r\n          font-size: 1.15rem;\r\n          background: linear-gradient(120deg, rgba(150, 47, 191, 0.12) 0%, rgba(218, 41, 142, 0.10) 100%), hsla(290, 14%, 36%, 0.7);\r\n          color: var(--ifv-c-text-primary);\r\n          outline: none;\r\n          transition: all 0.3s ease;\r\n          font-weight: 500;\r\n          width: 100%;\r\n      }\r\n  \r\n      .ifv-search-input:focus,\r\n      .ifv-search-box-followers:focus,\r\n      .ifv-filter-select:focus {\r\n          border-color: var(--ifv-c-border-hover);\r\n          box-shadow: 0 0 0 4px hsla(328, 68%, 50%, 0.13), 0 0 25px -8px hsla(328, 68%, 50%, 0.18) inset;\r\n          background: linear-gradient(120deg, rgba(218, 41, 142, 0.18) 0%, rgba(250, 126, 30, 0.15) 100%), hsla(290, 14%, 36%, 0.95);\r\n      }\r\n  \r\n      .ifv-search-btn {\r\n          cursor: pointer;\r\n          border: none;\r\n          padding: 1.4rem 3rem;\r\n          border-radius: var(--ifv-radius-md);\r\n          font-weight: 700;\r\n          font-size: 1.1rem;\r\n          background: var(--ifv-g-accent);\r\n          color: white;\r\n          transition: all 0.3s ease;\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          gap: 1rem;\r\n          box-shadow: 0 8px 25px -8px hsla(328, 68%, 50%, 0.4);\r\n          text-shadow: 0 1px 3px hsla(0, 0%, 0%, 0.3);\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .ifv-search-btn::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: -100%;\r\n          width: 100%;\r\n          height: 100%;\r\n          background: linear-gradient(90deg, transparent, hsla(0, 0%, 100%, 0.2), transparent);\r\n          transition: left 0.5s ease;\r\n      }\r\n  \r\n      .ifv-search-btn:hover::before {\r\n          left: 100%;\r\n      }\r\n  \r\n      .ifv-search-btn:hover {\r\n          transform: translateY(-4px) scale(1.02);\r\n          box-shadow: var(--ifv-g-accent-shadow);\r\n      }\r\n  \r\n      .ifv-search-btn:disabled {\r\n          opacity: 0.5;\r\n          cursor: not-allowed;\r\n          transform: none;\r\n          box-shadow: none;\r\n      }\r\n  \r\n      \/* --- Follower Card --- *\/\r\n      .ifv-follower-grid {\r\n          display: grid;\r\n          gap: 2rem;\r\n          grid-template-columns: 1fr;\r\n          \/* Default: 1 column for mobile *\/\r\n      }\r\n  \r\n      .ifv-follower-card {\r\n          position: relative;\r\n          border-radius: var(--ifv-radius-lg);\r\n          transition: all var(--ifv-transition);\r\n          opacity: 0;\r\n          transform: translateY(40px);\r\n          animation: ifv-card-enter 0.6s var(--ifv-transition) forwards;\r\n          height: 420px;\r\n          \/* Fixed height for consistency *\/\r\n          display: flex;\r\n          flex-direction: column;\r\n      }\r\n  \r\n      .ifv-follower-card-border {\r\n          position: absolute;\r\n          inset: 0;\r\n          border-radius: var(--ifv-radius-lg);\r\n          padding: 1px;\r\n          background: var(--ifv-c-border);\r\n          transition: background var(--ifv-transition);\r\n          z-index: 0;\r\n      }\r\n  \r\n      .ifv-follower-card:hover .ifv-follower-card-border {\r\n          background: conic-gradient(from var(--ifv-angle), transparent 25%, var(--ifv-c-insta-pink), var(--ifv-c-insta-orange), transparent 75%);\r\n          animation: ifv-spin-border 4s linear infinite;\r\n      }\r\n  \r\n      @property --ifv-angle {\r\n          syntax: '<angle>';\r\n          inherits: false;\r\n          initial-value: 0deg;\r\n      }\r\n  \r\n      .ifv-follower-card-inner {\r\n          background: hsla(290, 14%, 36%, 0.8);\r\n          border-radius: calc(var(--ifv-radius-lg) - 1px);\r\n          overflow: hidden;\r\n          position: relative;\r\n          z-index: 1;\r\n          height: 100%;\r\n          display: flex;\r\n          flex-direction: column;\r\n          box-shadow: 0 8px 32px -8px hsla(0, 15%, 24%, 0.3);\r\n      }\r\n  \r\n      .ifv-follower-card:hover {\r\n          transform: translateY(-12px) scale(1.02);\r\n          box-shadow: 0 20px 60px -20px hsla(0, 0%, 0%, 0.5);\r\n      }\r\n  \r\n      .ifv-card-hero {\r\n          width: 100%;\r\n          height: 280px;\r\n          \/* Fixed height for consistency *\/\r\n          position: relative;\r\n          overflow: hidden;\r\n          background: linear-gradient(135deg, hsl(0, 0%, 18%), hsl(0, 0%, 12%));\r\n      }\r\n  \r\n      .ifv-follower-avatar {\r\n          width: 100%;\r\n          height: 100%;\r\n          object-fit: cover;\r\n          transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);\r\n      }\r\n  \r\n      .ifv-follower-card:hover .ifv-follower-avatar {\r\n          transform: scale(1.08);\r\n      }\r\n  \r\n      .ifv-follower-avatar-fallback {\r\n          width: 100%;\r\n          height: 100%;\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          font-size: 3.5rem;\r\n          font-weight: 700;\r\n          color: var(--ifv-c-text-secondary);\r\n          background: linear-gradient(135deg, hsl(0, 0%, 20%), var(--ifv-c-bg));\r\n          text-shadow: 0 2px 8px hsla(0, 0%, 0%, 0.3);\r\n      }\r\n  \r\n      .ifv-card-content {\r\n          padding: 1.8rem;\r\n          flex: 1;\r\n          display: flex;\r\n          flex-direction: column;\r\n          justify-content: space-between;\r\n      }\r\n  \r\n      .ifv-card-header {\r\n          display: flex;\r\n          align-items: flex-start;\r\n          gap: 1rem;\r\n      }\r\n  \r\n      .ifv-card-info {\r\n          flex: 1;\r\n          min-width: 0;\r\n      }\r\n  \r\n      .ifv-card-name {\r\n          font-size: 1.2rem;\r\n          font-weight: 700;\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 0.6rem;\r\n          white-space: nowrap;\r\n          overflow: hidden;\r\n          text-overflow: ellipsis;\r\n          margin-bottom: 0.3rem;\r\n          color: var(--ifv-c-text-primary);\r\n          line-height: 1.3;\r\n      }\r\n  \r\n      .ifv-verified-badge {\r\n          color: var(--ifv-c-verified);\r\n          font-size: 1.2rem;\r\n          flex-shrink: 0;\r\n          filter: drop-shadow(0 2px 4px hsla(204, 100%, 50%, 0.3));\r\n      }\r\n  \r\n      .ifv-card-username {\r\n          color: var(--ifv-c-text-secondary);\r\n          font-size: 1rem;\r\n          text-decoration: none;\r\n          transition: all 0.3s ease;\r\n          white-space: nowrap;\r\n          overflow: hidden;\r\n          text-overflow: ellipsis;\r\n          font-weight: 500;\r\n          letter-spacing: 0.02em;\r\n      }\r\n  \r\n      .ifv-card-username:hover {\r\n          color: var(--ifv-c-insta-pink);\r\n          transform: translateX(2px);\r\n      }\r\n  \r\n      .ifv-card-stats {\r\n          display: flex;\r\n          gap: 1.5rem;\r\n          margin-top: 1rem;\r\n          padding-top: 1rem;\r\n          border-top: 1px solid hsla(0, 0%, 100%, 0.05);\r\n      }\r\n  \r\n      .ifv-stat-item {\r\n          display: flex;\r\n          flex-direction: column;\r\n          align-items: center;\r\n          flex: 1;\r\n      }\r\n  \r\n      .ifv-stat-value {\r\n          font-size: 1.1rem;\r\n          font-weight: 700;\r\n          color: var(--ifv-c-text-primary);\r\n          margin-bottom: 0.2rem;\r\n      }\r\n  \r\n      .ifv-stat-label {\r\n          font-size: 0.75rem;\r\n          color: var(--ifv-c-text-secondary);\r\n          text-transform: uppercase;\r\n          letter-spacing: 0.05em;\r\n          font-weight: 500;\r\n      }\r\n  \r\n      \/* --- Misc & Responsive --- *\/\r\n      #ifv-command-center {\r\n          display: none;\r\n      }\r\n  \r\n      .ifv-analytics-dashboard {\r\n          display: grid;\r\n          grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\r\n          gap: 1.5rem;\r\n      }\r\n  \r\n      .ifv-analytics-card {\r\n          background: transparent;\r\n          text-align: center;\r\n          padding: 1rem;\r\n          border-radius: var(--ifv-radius-md);\r\n          transition: background var(--ifv-transition);\r\n      }\r\n  \r\n      .ifv-analytics-card:hover {\r\n          background: hsla(0, 0%, 100%, 0.08);\r\n      }\r\n  \r\n      .ifv-analytics-label {\r\n          font-size: 0.9rem;\r\n          color: var(--ifv-c-text-secondary);\r\n          margin-bottom: 0.5rem;\r\n      }\r\n  \r\n      .ifv-analytics-value {\r\n          font-size: 2.2rem;\r\n          font-weight: 700;\r\n          background: var(--ifv-g-accent);\r\n          -webkit-background-clip: text;\r\n          -webkit-text-fill-color: transparent;\r\n          background-clip: text;\r\n          text-fill-color: transparent;\r\n      }\r\n  \r\n      .ifv-controls-section {\r\n          display: flex;\r\n          align-items: center;\r\n          flex-wrap: wrap;\r\n          gap: 1.5rem;\r\n          padding-bottom: 2rem;\r\n          border-bottom: 1px solid var(--ifv-c-border);\r\n          margin-bottom: 2rem;\r\n      }\r\n  \r\n      .ifv-filter-group {\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 0.75rem;\r\n      }\r\n  \r\n      .ifv-filter-label {\r\n          color: var(--ifv-c-text-secondary);\r\n          font-weight: 500;\r\n          font-size: 0.9rem;\r\n      }\r\n  \r\n      .ifv-filter-select {\r\n          font-size: 1.05rem;\r\n          padding: 1.1rem 1.5rem;\r\n      }\r\n  \r\n      .ifv-search-box-followers {\r\n          flex: 1;\r\n          min-width: 200px;\r\n          font-size: 1.05rem;\r\n          padding: 1.1rem 1.5rem;\r\n      }\r\n  \r\n      .ifv-results-header {\r\n          display: flex;\r\n          justify-content: space-between;\r\n          align-items: center;\r\n          margin-bottom: 2rem;\r\n      }\r\n  \r\n      .ifv-results-title {\r\n          font-size: 1.75rem;\r\n          font-weight: 700;\r\n      }\r\n  \r\n      .ifv-results-count {\r\n          color: var(--ifv-c-text-secondary);\r\n          font-size: 1rem;\r\n      }\r\n  \r\n      .ifv-load-more-container {\r\n          display: flex;\r\n          justify-content: center;\r\n          margin-top: 3rem;\r\n      }\r\n  \r\n      .ifv-load-more-btn {\r\n          cursor: pointer;\r\n          border: 1px solid var(--ifv-c-border);\r\n          padding: 0.8rem 2rem;\r\n          border-radius: var(--ifv-radius-md);\r\n          font-weight: 600;\r\n          background: var(--ifv-c-surface);\r\n          color: var(--ifv-c-text-secondary);\r\n          transition: all 0.3s ease;\r\n      }\r\n  \r\n      .ifv-load-more-btn:hover {\r\n          color: var(--ifv-c-text-primary);\r\n          border-color: var(--ifv-c-border-hover);\r\n      }\r\n  \r\n      .ifv-toast {\r\n          position: fixed;\r\n          bottom: 2rem;\r\n          left: 50%;\r\n          transform: translate(-50%, 10rem) scale(0.8);\r\n          background: #222226;\r\n          backdrop-filter: blur(10px);\r\n          color: var(--ifv-c-text-primary);\r\n          padding: 1rem 1.5rem;\r\n          border-radius: var(--ifv-radius-md);\r\n          box-shadow: 0 10px 30px hsla(0, 0%, 0%, 0.4);\r\n          z-index: 1000;\r\n          transition: all 0.5s var(--ifv-transition);\r\n          font-weight: 500;\r\n          border: 1px solid var(--ifv-c-border);\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 1rem;\r\n          opacity: 0;\r\n      }\r\n  \r\n      .ifv-toast.show {\r\n          transform: translate(-50%, 0) scale(1);\r\n          opacity: 1;\r\n      }\r\n  \r\n      .ifv-toast.error .ifv-toast-icon {\r\n          color: #e74c3c;\r\n      }\r\n  \r\n      .ifv-toast.success .ifv-toast-icon {\r\n          color: #2ecc71;\r\n      }\r\n  \r\n      .ifv-toast-icon {\r\n          font-size: 1.2rem;\r\n      }\r\n  \r\n      .ifv-spinner {\r\n          border: 3px solid hsla(0, 0%, 100%, 0.2);\r\n          border-left-color: currentColor;\r\n          border-radius: 50%;\r\n          width: 20px;\r\n          height: 20px;\r\n          animation: ifv-spin 1s linear infinite;\r\n      }\r\n  \r\n      @keyframes ifv-move {\r\n          0% {\r\n              transform: translate(0, 0);\r\n          }\r\n  \r\n          100% {\r\n              transform: translate(10vw, 15vh);\r\n          }\r\n      }\r\n  \r\n      @keyframes ifv-spin-border {\r\n          to {\r\n              --ifv-angle: 360deg;\r\n          }\r\n      }\r\n  \r\n      @keyframes ifv-float {\r\n  \r\n          0%,\r\n          100% {\r\n              transform: translateY(0);\r\n          }\r\n  \r\n          50% {\r\n              transform: translateY(-10px);\r\n          }\r\n      }\r\n  \r\n      @keyframes ifv-card-enter {\r\n          to {\r\n              opacity: 1;\r\n              transform: translateY(0);\r\n          }\r\n      }\r\n  \r\n      @keyframes ifv-spin {\r\n          to {\r\n              transform: rotate(360deg);\r\n          }\r\n      }\r\n  \r\n      \/* Responsive Grid for Follower Cards *\/\r\n      @media (min-width: 600px) {\r\n          .ifv-follower-grid {\r\n              grid-template-columns: repeat(2, 1fr);\r\n              \/* 2 columns for tablets *\/\r\n          }\r\n      }\r\n  \r\n      @media (min-width: 992px) {\r\n          .ifv-follower-grid {\r\n              grid-template-columns: repeat(3, 1fr);\r\n              \/* 3 columns for medium screens *\/\r\n              gap: 1.8rem;\r\n          }\r\n      }\r\n  \r\n      @media (min-width: 1400px) {\r\n          .ifv-follower-grid {\r\n              grid-template-columns: repeat(5, 1fr);\r\n              \/* 5 columns for large screens *\/\r\n          }\r\n      }\r\n  \r\n      @media (max-width: 768px) {\r\n          html {\r\n              font-size: 15px;\r\n          }\r\n  \r\n          .ifv-search-form {\r\n              flex-direction: column;\r\n              align-items: stretch;\r\n          }\r\n  \r\n          .ifv-analytics-dashboard {\r\n              grid-template-columns: repeat(2, 1fr);\r\n          }\r\n      }\r\n  \r\n      @media (max-width: 480px) {\r\n          .ifv-analytics-dashboard {\r\n              grid-template-columns: 1fr;\r\n          }\r\n      }\r\n  <\/style>\r\n  <\/head><body data-aos-easing=\"ease-in-out\" data-aos-duration=\"800\" data-aos-delay=\"0\" data-new-gr-c-s-check-loaded=\"14.1272.0\" data-gr-ext-installed=\"\" data-new-gr-c-s-loaded=\"14.1223.0\" class=\"\" style=\"\">\r\n      <nav class=\"navigation-1 clearfix\" data-v-save-global=\"blank.html,.navigation-1\">\r\n          \r\n        <\/nav>\r\n  \r\n  \r\n   <!-- tools code start here -->\r\n  \r\n      <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.5.0\/css\/all.min.css\">\r\n      <style>\r\n          \/* Reset and Base Styles *\/\r\n          button,\r\n          html input[type=\"button\"],\r\n          input[type=\"reset\"],\r\n          input[type=\"submit\"] {\r\n              padding: 0px;\r\n          }\r\n  \r\n          * {\r\n              margin: 0;\r\n              padding: 0;\r\n              box-sizing: border-box;\r\n          }\r\n  \r\n      \r\n        \r\n        .wrapper {\r\n      padding: 100px 0;\r\n      font-family: 'Inter', -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\r\n      background: white;\r\n  \r\n  filter: progid: DXImageTransform.Microsoft.gradient( startColorstr=\"#9BF8F4\", endColorstr=\"#6F7BF7\", GradientType=1 );\r\n      min-height: 100vh;\r\n      line-height: 1.6;\r\n      position: relative;\r\n      overflow-x: hidden;\r\n  }\r\n  \r\n          .wrapper::before {\r\n              content: '';\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              right: 0;\r\n              bottom: 0;\r\n              background: \r\n                  radial-gradient(circle at 20% 80%, rgba(59, 130, 246, 0.15) 0%, transparent 50%),\r\n                  radial-gradient(circle at 80% 20%, rgba(139, 92, 246, 0.15) 0%, transparent 50%),\r\n                  radial-gradient(circle at 40% 40%, rgba(16, 185, 129, 0.1) 0%, transparent 50%);\r\n              pointer-events: none;\r\n          }\r\n  \r\n          .main-contain {\r\n              max-width: 1200px;\r\n              margin: 0 auto;\r\n              padding: 20px;\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n  \r\n          \/* Professional Instagram Tool Wrapper *\/\r\n        \r\n        \r\n       \r\n       \r\n        \r\n       .ig-tool-wrapper {\r\n      width: 100%;\r\n      margin: 20px auto;\r\n      padding: 40px;\r\n      border-radius: 24px;\r\n      background: linear-gradient(135deg,#6366f1 0%,#8c60ff 100%) !important;\r\n      backdrop-filter: blur(20px);\r\n      border: 2px solid rgba(59, 130, 246, 0.2);\r\n      color: #1e293b;\r\n      text-align: center;\r\n      box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(59, 130, 246, 0.1);\r\n      position: relative;\r\n      overflow: hidden;\r\n      opacity: 0.9;\r\n  }\r\n  \r\n          .ig-tool-wrapper::before {\r\n              content: \"\";\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background: linear-gradient(135deg, rgba(59, 130, 246, 0.05) 0%, rgba(139, 92, 246, 0.05) 100%);\r\n              pointer-events: none;\r\n          }\r\n  \r\n  \r\n          .ig-header h1 {\r\n              font-size: 42px;\r\n              font-weight: 700;\r\n              background: white;\r\n              -webkit-background-clip: text;\r\n              -webkit-text-fill-color: transparent;\r\n              background-clip: text;\r\n              margin-bottom: 20px;\r\n              letter-spacing: -1px;\r\n              text-shadow: none;\r\n              position: relative;\r\n              z-index: 2;\r\n              display: inline-block;\r\n          }\r\n  \r\n          .viewer-anonymous {\r\n              background: white;\r\n              -webkit-background-clip: text;\r\n              -webkit-text-fill-color: transparent;\r\n              background-clip: text;\r\n              position: relative;\r\n              display: inline-block;\r\n          }\r\n  \r\n          .viewer-anonymous::after {\r\n              content: \"\";\r\n              position: absolute;\r\n              bottom: -8px;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 4px;\r\n              background: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 50%, #ec4899 100%);\r\n              border-radius: 2px;\r\n              animation: underlineGlow 2s ease-in-out infinite alternate;\r\n          }\r\n  \r\n          @keyframes underlineGlow {\r\n              0% {\r\n                  opacity: 0.7;\r\n                  transform: scaleX(0.95);\r\n              }\r\n              100% {\r\n                  opacity: 1;\r\n                  transform: scaleX(1.05);\r\n              }\r\n          }\r\n  \r\n          .ig-header p {\r\n              font-size: 18px;\r\n              margin: 20px 0 30px;\r\n              line-height: 1.7;\r\n              font-weight: 400;\r\n              color: #eef4ff;\r\n              max-width: 700px;\r\n              margin-left: auto;\r\n              margin-right: auto;\r\n              position: relative;\r\n              z-index: 2;\r\n          }\r\n  \r\n          \/* Professional Input Area *\/\r\n         \r\n        \r\n      \r\n      \r\n        \r\n        .ig-input-area {\r\n      display: flex;\r\n      align-items: center;\r\n      background: rgba(247, 203, 242, 0.9);\r\n      backdrop-filter: blur(10px);\r\n      padding: 30px 25px;\r\n      border-radius: 20px;\r\n      gap: 20px;\r\n      margin: 0 auto;\r\n      max-width: 100%;\r\n      flex-wrap: wrap;\r\n      box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1), 0 0 0 2px rgba(59, 130, 246, 0.1);\r\n      position: relative;\r\n      border: 2px solid rgba(59, 130, 246, 0.2);\r\n  }\r\n  \r\n          .ig-icon {\r\n              font-size: 16px;\r\n              color: #4a5568;\r\n              font-weight: 600;\r\n              width: 100%;\r\n              text-align: left;\r\n              margin-bottom: 15px;\r\n              position: relative;\r\n              z-index: 2;\r\n          }\r\n  \r\n          .ig-input-area input {\r\n              flex-grow: 1;\r\n              padding: 16px 20px;\r\n              font-size: 16px;\r\n              border: 2px solid #3b82f6;\r\n              outline: none;\r\n              min-width: 200px;\r\n              background: transparent;\r\n              border-radius: 12px;\r\n              transition: all 0.3s ease;\r\n              color: #1e293b;\r\n              font-weight: 500;\r\n              position: relative;\r\n              z-index: 2;\r\n          }\r\n  \r\n          .ig-input-area input:focus {\r\n              background: rgba(59, 130, 246, 0.05);\r\n              border-color: #1e40af;\r\n              box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.1);\r\n              transform: translateY(-1px);\r\n          }\r\n  \r\n          .error-container {\r\n              margin-top: 25px;\r\n              position: absolute;\r\n              bottom: -60px;\r\n              left: 20px;\r\n              right: 20px;\r\n          }\r\n  \r\n          #error-message {\r\n              color: #e53935;\r\n              margin-top: 25px;\r\n              display: none;\r\n              font-weight: 500;\r\n          }\r\n  \r\n          .paste-btn,\r\n          .view-btn {\r\n              border: 2px solid transparent;\r\n              border-radius: 12px;\r\n              padding: 16px 24px;\r\n              cursor: pointer;\r\n              font-weight: 600;\r\n              transition: all 0.3s ease;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 10px;\r\n              font-size: 15px;\r\n              margin-bottom: 15px;\r\n              position: relative;\r\n              z-index: 2;\r\n              text-transform: none;\r\n              letter-spacing: 0.5px;\r\n              background-clip: padding-box;\r\n          }\r\n  \r\n          .paste-btn {\r\n              background: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%);\r\n              color: white;\r\n              box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);\r\n              border: 2px solid #3b82f6;\r\n          }\r\n  \r\n          .paste-btn:hover {\r\n              background: linear-gradient(135deg, #1e40af 0%, #1e3a8a 100%);\r\n              border-color: #1e40af;\r\n              transform: translateY(-2px);\r\n              box-shadow: 0 8px 25px rgba(59, 130, 246, 0.4);\r\n          }\r\n  \r\n          .view-btn {\r\n              background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);\r\n              color: white;\r\n              box-shadow: 0 4px 15px rgba(139, 92, 246, 0.3);\r\n              border: 2px solid #8b5cf6;\r\n          }\r\n  \r\n          .view-btn:hover {\r\n              background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);\r\n              border-color: #7c3aed;\r\n              transform: translateY(-2px);\r\n              box-shadow: 0 8px 25px rgba(139, 92, 246, 0.4);\r\n          }\r\n  \r\n          .view-btn:disabled {\r\n              opacity: 0.6;\r\n              cursor: not-allowed;\r\n              transform: none;\r\n              background: #cbd5e1;\r\n              border-color: #cbd5e1;\r\n              box-shadow: none;\r\n          }\r\n  \r\n          \/* Ad Space *\/\r\n          .ad-space {\r\n              display: none;\r\n              margin-top: 20px;\r\n              text-align: center;\r\n              position: relative;\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              padding: 6px;\r\n              background: linear-gradient(135deg, #e53935, #1e88e5 35%, #8e24aa 70%, #ec407a);\r\n              background-size: 300% 300%;\r\n              animation: gradientBorder 6s ease infinite;\r\n          }\r\n        \r\n       \r\n        \r\n        .ig-tool-wrapper {\r\n      width: 100%;\r\n      margin: 20px auto;\r\n      padding: 40px;\r\n      border-radius: 24px;\r\n      backdrop-filter: blur(20px);\r\n      border: 2px solid rgba(59, 130, 246, 0.2);\r\n      color: #1e293b;\r\n      text-align: center;\r\n      box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(59, 130, 246, 0.1);\r\n      position: relative;\r\n      overflow: hidden;\r\n  }\r\n        \r\n     \r\n        \r\n        .ig-input-area {\r\n      display: flex;\r\n      align-items: center;\r\n      background: rgba(225, 224, 253, 0.9);\r\n      backdrop-filter: blur(10px);\r\n      padding: 30px 25px;\r\n      border-radius: 20px;\r\n      gap: 20px;\r\n      margin: 0 auto;\r\n      max-width: 100%;\r\n      flex-wrap: wrap;\r\n      box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1), 0 0 0 2px rgba(59, 130, 246, 0.1);\r\n      position: relative;\r\n      border: 2px solid rgba(59, 130, 246, 0.2);\r\n  }\r\n  \r\n          @keyframes gradientBorder {\r\n              0% {\r\n                  background-position: 0% 50%;\r\n              }\r\n  \r\n              50% {\r\n                  background-position: 100% 50%;\r\n              }\r\n  \r\n              100% {\r\n                  background-position: 0% 50%;\r\n              }\r\n          }\r\n  \r\n          .ad-inner {\r\n              border-radius: 12px;\r\n              overflow: hidden;\r\n              background-color: #fff;\r\n              box-shadow: 0 10px 24px rgba(0, 0, 0, 0.1);\r\n              transition: transform 0.3s ease;\r\n              animation: floatAd 5s ease-in-out infinite;\r\n          }\r\n  \r\n          @keyframes floatAd {\r\n  \r\n              0%,\r\n              100% {\r\n                  transform: translateY(0px);\r\n              }\r\n  \r\n              50% {\r\n                  transform: translateY(-5px);\r\n              }\r\n          }\r\n  \r\n          .ad-placeholder {\r\n              display: block;\r\n              position: relative;\r\n              text-decoration: none;\r\n              color: inherit;\r\n          }\r\n  \r\n          .ad-placeholder::before {\r\n              content: \"Sponsored\";\r\n              position: absolute;\r\n              top: 12px;\r\n              left: 12px;\r\n              background-color: #fff;\r\n              color: #ec407a;\r\n              font-size: 12px;\r\n              font-weight: 600;\r\n              padding: 3px 10px;\r\n              border-radius: 5px;\r\n              box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);\r\n              animation: pulseTag 2s infinite;\r\n              z-index: 2;\r\n          }\r\n  \r\n          @keyframes pulseTag {\r\n              0% {\r\n                  transform: scale(1);\r\n                  opacity: 1;\r\n              }\r\n  \r\n              50% {\r\n                  transform: scale(1.05);\r\n                  opacity: 0.85;\r\n              }\r\n  \r\n              100% {\r\n                  transform: scale(1);\r\n                  opacity: 1;\r\n              }\r\n          }\r\n  \r\n          .ad-image {\r\n              width: 100%;\r\n              height: auto;\r\n              display: block;\r\n              transition: transform 0.4s ease;\r\n          }\r\n  \r\n          .ad-placeholder:hover .ad-image {\r\n              animation: wiggle 0.4s ease;\r\n              transform: scale(1.04);\r\n          }\r\n  \r\n          @keyframes wiggle {\r\n              0% {\r\n                  transform: rotate(0deg);\r\n              }\r\n  \r\n              25% {\r\n                  transform: rotate(1.5deg);\r\n              }\r\n  \r\n              50% {\r\n                  transform: rotate(-1.5deg);\r\n              }\r\n  \r\n              75% {\r\n                  transform: rotate(1.5deg);\r\n              }\r\n  \r\n              100% {\r\n                  transform: rotate(0deg);\r\n              }\r\n          }\r\n  \r\n          .note {\r\n              font-size: 14px;\r\n              color: rgba(255, 255, 255, 0.8);\r\n              margin-top: 15px;\r\n              font-style: italic;\r\n          }\r\n  \r\n          \/* Result Section *\/\r\n          .tools-result {\r\n              width: 100%;\r\n              margin-top: 60px;\r\n          }\r\n  \r\n        \r\n        .ig-result {\r\n      margin-top: 30px;\r\n      background: linear-gradient(135deg,#6366f1 0%,#8c60ff 100%);\r\n      border-radius: 20px;\r\n      padding: 30px;\r\n      color: #333;\r\n      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);\r\n      animation: fadeIn 0.5s ease-out;\r\n  }\r\n  \r\n          \/* Profile Header *\/\r\n        \r\n        \r\n     \r\n        \r\n      \r\n        \r\n        .ig-profile-header {\r\n      margin-bottom: 40px;\r\n      position: relative;\r\n      background: linear-gradient(to bottom, #c5d7f9, #c4c8ff);\r\n      border-radius: 16px;\r\n      padding: 30px;\r\n      box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);\r\n      border: 1px solid #f1f5f9;\r\n  }\r\n  \r\n          .profile-header-content {\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 30px;\r\n              flex-wrap: wrap;\r\n          }\r\n  \r\n          .profile-image-container {\r\n              position: relative;\r\n              flex-shrink: 0;\r\n          }\r\n  \r\n          .profile-image {\r\n              width: 150px;\r\n              height: 150px;\r\n              border-radius: 50%;\r\n              object-fit: cover;\r\n              border: 4px solid white;\r\n              box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);\r\n              transition: transform 0.3s;\r\n              background: linear-gradient(to bottom right, #1e88e5, #ec407a);\r\n              padding: 3px;\r\n              min-height: 150px;\r\n              min-width: 150px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              color: #94a3b8;\r\n              font-size: 60px;\r\n          }\r\n  \r\n          .profile-image:hover {\r\n              transform: scale(1.03);\r\n          }\r\n  \r\n          .view-profile-img {\r\n              position: absolute;\r\n              bottom: 5px;\r\n              right: 5px;\r\n              background-color: #1e88e5;\r\n              color: white;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 36px;\r\n              height: 36px;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s;\r\n              box-shadow: 0 5px 15px rgba(30, 136, 229, 0.3);\r\n              z-index: 5;\r\n          }\r\n  \r\n          .view-profile-img:hover {\r\n              transform: scale(1.1) rotate(15deg);\r\n              background-color: #1a75c6;\r\n          }\r\n  \r\n          .profile-info {\r\n              flex: 1;\r\n              text-align: left;\r\n              min-width: 250px;\r\n          }\r\n  \r\n          .profile-info h3 {\r\n              font-size: 24px;\r\n              margin: 0 0 5px;\r\n              font-weight: 700;\r\n              color: #1e293b;\r\n          }\r\n  \r\n          .profile-info h4 {\r\n              font-size: 18px;\r\n              margin: 0 0 15px;\r\n              font-weight: 600;\r\n              color: #475569;\r\n          }\r\n  \r\n          .stats {\r\n              display: flex;\r\n              gap: 25px;\r\n              margin: 15px 0;\r\n          }\r\n  \r\n          .stat-item {\r\n              display: flex;\r\n              flex-direction: column;\r\n              align-items: center;\r\n          }\r\n  \r\n          .stat-value {\r\n              font-size: 20px;\r\n              font-weight: 700;\r\n              color: #1e293b;\r\n          }\r\n  \r\n          .stat-label {\r\n              font-size: 14px;\r\n              color: #64748b;\r\n              margin-top: 3px;\r\n          }\r\n  \r\n          .profile-bio {\r\n              margin-top: 25px;\r\n              padding-top: 20px;\r\n              border-top: 1px solid #e2e8f0;\r\n              text-align: left;\r\n              color: #475569;\r\n              line-height: 1.6;\r\n          }\r\n  \r\n          .profile-link {\r\n              display: inline-flex;\r\n              align-items: center;\r\n              gap: 5px;\r\n              color: #1e88e5;\r\n              text-decoration: none;\r\n              font-weight: 500;\r\n              margin-top: 10px;\r\n              transition: all 0.3s;\r\n          }\r\n  \r\n          .profile-link:hover {\r\n              color: #1a75c6;\r\n              text-decoration: underline;\r\n          }\r\n  \r\n          \/* Tabs *\/\r\n          .ig-tabs {\r\n              display: flex;\r\n              justify-content: center;\r\n              margin: 30px 0;\r\n              gap: 15px;\r\n              flex-wrap: wrap;\r\n          }\r\n  \r\n          .ig-tabs button {\r\n              background: #f8fafc;\r\n              color: #64748b;\r\n              border: none;\r\n              font-weight: 600;\r\n              font-size: 15px;\r\n              padding: 12px 24px;\r\n              cursor: pointer;\r\n              border-radius: 50px;\r\n              transition: all 0.3s;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 8px;\r\n              box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);\r\n          }\r\n  \r\n          .ig-tabs button i {\r\n              font-size: 16px;\r\n          }\r\n  \r\n          .ig-tabs button.active {\r\n              background: linear-gradient(135deg, #1e88e5, #ec407a);\r\n              color: white;\r\n              box-shadow: 0 5px 15px rgba(30, 136, 229, 0.3);\r\n              transform: translateY(-2px);\r\n          }\r\n  \r\n          .ig-tabs button:hover:not(.active) {\r\n              background: #f1f5f9;\r\n              color: #334155;\r\n              transform: translateY(-2px);\r\n          }\r\n  \r\n          \/* Tab Content *\/\r\n          .tab-content {\r\n              padding: 20px;\r\n              text-align: center;\r\n              color: #666;\r\n              display: none;\r\n          }\r\n  \r\n          .tab-content.active {\r\n              display: block;\r\n          }\r\n  \r\n       \r\n        \r\n    \r\n     \r\n        \r\n     \r\n        \r\n        .no-result {\r\n      border: 1px dashed #443c62;\r\n      padding: 30px 20px;\r\n      margin-top: 30px;\r\n      text-align: center;\r\n      font-size: 16px;\r\n      font-weight: 500;\r\n      border-radius: 12px;\r\n      color: #64748b;\r\n      background: #e5e7ff;\r\n  }\r\n  \r\n          .no-result i {\r\n              font-size: 48px;\r\n              color: #cbd5e1;\r\n              margin-bottom: 15px;\r\n              display: block;\r\n          }\r\n  \r\n          \/* Private Account Message *\/\r\n          .private-account-message {\r\n              background-color: rgba(229, 57, 53, 0.1);\r\n              color: #e53935;\r\n              padding: 20px;\r\n              border-radius: 12px;\r\n              margin-top: 20px;\r\n              text-align: center;\r\n              font-weight: 500;\r\n              border: 1px solid rgba(229, 57, 53, 0.2);\r\n              animation: fadeIn 0.5s ease-out;\r\n          }\r\n  \r\n          .private-account-message i {\r\n              margin-right: 8px;\r\n              font-size: 18px;\r\n          }\r\n  \r\n          \/* Posts Grid *\/\r\n          .posts-grid {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\r\n              gap: 25px;\r\n              margin-top: 25px;\r\n          }\r\n  \r\n          .post-card {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);\r\n              transition: all 0.3s;\r\n              border: 1px solid #f1f5f9;\r\n              animation: slideUp 0.5s ease-out;\r\n              animation-fill-mode: both;\r\n          }\r\n  \r\n          .post-card:hover {\r\n              transform: translateY(-8px);\r\n              box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .post-img-container {\r\n              position: relative;\r\n              overflow: hidden;\r\n              aspect-ratio: 1 \/ 1;\r\n          }\r\n  \r\n          .post-thumb {\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              display: block;\r\n              transition: transform 0.5s;\r\n          }\r\n  \r\n          .post-overlay {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              right: 0;\r\n              bottom: 0;\r\n              background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.7) 100%);\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              opacity: 1;\r\n              transition: opacity 0.3s ease;\r\n              z-index: 3;\r\n          }\r\n  \r\n          .post-img-container:hover .post-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .post-img-container:hover .post-thumb {\r\n              transform: scale(1.08);\r\n          }\r\n  \r\n          .post-download-btn,\r\n          .post-view-btn {\r\n              background: white;\r\n              color: #ec407a;\r\n              width: 45px;\r\n              height: 45px;\r\n              border-radius: 50%;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s;\r\n              border: none;\r\n              font-size: 16px;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .post-download-btn:hover,\r\n          .post-view-btn:hover {\r\n              transform: scale(1.1) translateY(-3px);\r\n              box-shadow: 0 8px 20px rgba(30, 136, 229, 0.15);\r\n          }\r\n  \r\n          .post-download-btn:hover {\r\n              background: #1e88e5;\r\n              color: white;\r\n          }\r\n  \r\n          .post-view-btn {\r\n              background: rgba(255, 255, 255, 0.9);\r\n              color: #333;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 50px;\r\n              height: 50px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s ease;\r\n              font-size: 20px;\r\n          }\r\n  \r\n          .post-view-btn:hover {\r\n              background: white;\r\n              transform: scale(1.1);\r\n          }\r\n  \r\n          .post-meta {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .post-stats,\r\n          .reel-stats {\r\n              background: linear-gradient(135deg, rgba(30, 136, 229, 0.15), rgba(236, 64, 122, 0.15));\r\n              padding: 8px 12px;\r\n              border-radius: 12px;\r\n              border: 1px solid rgba(30, 136, 229, 0.1);\r\n              backdrop-filter: blur(10px);\r\n              -webkit-backdrop-filter: blur(10px);\r\n          }\r\n  \r\n          .post-stats span,\r\n          .reel-stats span {\r\n              color: #1e293b;\r\n              font-weight: 600;\r\n              font-size: 13px;\r\n          }\r\n  \r\n          .post-stats span i,\r\n          .reel-stats span i {\r\n              color: #ec407a;\r\n              margin-right: 4px;\r\n          }\r\n  \r\n          .post-stats {\r\n              display: flex;\r\n              gap: 15px;\r\n              margin-bottom: 10px;\r\n          }\r\n  \r\n          .post-stats span {\r\n              font-size: 14px;\r\n              color: #64748b;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 5px;\r\n          }\r\n  \r\n          .post-stats span i {\r\n              color: #ec407a;\r\n          }\r\n  \r\n          .post-meta .caption {\r\n              font-size: 15px;\r\n              color: #334155;\r\n              margin-bottom: 10px;\r\n              line-height: 1.5;\r\n              font-weight: 500;\r\n              display: -webkit-box;\r\n              -webkit-line-clamp: 2;\r\n              -webkit-box-orient: vertical;\r\n              overflow: hidden;\r\n          }\r\n  \r\n          .post-meta .time {\r\n              font-size: 13px;\r\n              color: #94a3b8;\r\n              display: block;\r\n              font-weight: 400;\r\n          }\r\n  \r\n          .post-stats-row {\r\n              display: flex;\r\n              justify-content: space-between;\r\n              align-items: center;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          \/* Stories Container *\/\r\n          .stories-container {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\r\n              gap: 20px;\r\n              margin-top: 25px;\r\n          }\r\n  \r\n          .story-card {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\r\n              transition: all 0.3s;\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .story-card:hover {\r\n              transform: translateY(-5px);\r\n              box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);\r\n          }\r\n  \r\n          .story-img-container {\r\n              position: relative;\r\n              overflow: hidden;\r\n              aspect-ratio: 9 \/ 16;\r\n          }\r\n  \r\n          .story-thumb {\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              display: block;\r\n              transition: transform 0.5s;\r\n          }\r\n  \r\n          .story-overlay {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background: rgba(0, 0, 0, 0.4);\r\n              backdrop-filter: blur(2px);\r\n              -webkit-backdrop-filter: blur(2px);\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              opacity: 0;\r\n              transition: all 0.3s;\r\n              gap: 15px;\r\n              flex-direction: column;\r\n          }\r\n  \r\n          .story-img-container:hover .story-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .story-img-container:hover .story-thumb {\r\n              transform: scale(1.05);\r\n          }\r\n  \r\n          .story-download-btn,\r\n          .story-view-btn {\r\n              background: white;\r\n              color: #1e293b;\r\n              width: 40px;\r\n              height: 40px;\r\n              border-radius: 50%;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s;\r\n              border: none;\r\n              font-size: 16px;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);\r\n              padding: 0px;\r\n          }\r\n  \r\n          .story-download-btn:hover,\r\n          .story-view-btn:hover {\r\n              transform: scale(1.1);\r\n              box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);\r\n          }\r\n  \r\n          .story-download-btn:hover {\r\n              background: #8e24aa;\r\n              color: white;\r\n          }\r\n  \r\n          .story-view-btn:hover {\r\n              background: #f8bbd0;\r\n              color: #8e24aa;\r\n          }\r\n  \r\n          .story-meta {\r\n              padding: 12px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .story-meta .time {\r\n              font-size: 13px;\r\n              color: #94a3b8;\r\n              font-weight: 400;\r\n          }\r\n  \r\n          .story-stats-row {\r\n              display: flex;\r\n              justify-content: space-between;\r\n              align-items: center;\r\n              background: linear-gradient(135deg, rgba(236, 64, 122, 0.1), rgba(30, 136, 229, 0.1));\r\n              padding: 6px 10px;\r\n              border-radius: 8px;\r\n              border: 1px solid rgba(236, 64, 122, 0.2);\r\n          }\r\n  \r\n          .story-stats-row .time {\r\n              color: #64748b;\r\n              font-weight: 500;\r\n          }\r\n  \r\n          .story-stats-row {\r\n              display: flex;\r\n              justify-content: space-between;\r\n              align-items: center;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          \/* Highlights Container *\/\r\n          .highlights-container {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\r\n              gap: 20px;\r\n              margin-top: 25px;\r\n          }\r\n  \r\n          .highlight-card {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\r\n              transition: all 0.3s;\r\n              border: 1px solid #f1f5f9;\r\n              cursor: pointer;\r\n              padding: 15px 10px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .highlight-card:hover {\r\n              transform: translateY(-5px) scale(1.02);\r\n              box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);\r\n          }\r\n  \r\n          .highlight-img-container {\r\n              position: relative;\r\n              overflow: hidden;\r\n              aspect-ratio: 1 \/ 1;\r\n              border-radius: 50%;\r\n              width: 120px;\r\n              height: 120px;\r\n              margin: 0 auto 10px;\r\n              border: 3px solid #e53935;\r\n              background: linear-gradient(to bottom right, #1e88e5, #ec407a);\r\n              padding: 3px;\r\n          }\r\n  \r\n          .highlight-thumb {\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              display: block;\r\n              transition: transform 0.5s;\r\n              border-radius: 50%;\r\n          }\r\n  \r\n          .highlight-meta {\r\n              padding: 5px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .highlight-title {\r\n              font-size: 14px;\r\n              color: #334155;\r\n              font-weight: 600;\r\n              margin: 0;\r\n              white-space: nowrap;\r\n              overflow: hidden;\r\n              text-overflow: ellipsis;\r\n          }\r\n  \r\n          .highlight-overlay {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background-color: rgba(0, 0, 0, 0.5);\r\n              opacity: 0;\r\n              transition: opacity 0.3s;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n          }\r\n  \r\n          .highlight-img-container:hover .highlight-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .highlight-view-btn {\r\n              background-color: white;\r\n              color: #1e88e5;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 40px;\r\n              height: 40px;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              cursor: pointer;\r\n              transition: transform 0.2s;\r\n          }\r\n  \r\n          .highlight-view-btn:hover {\r\n              transform: scale(1.1);\r\n          }\r\n  \r\n          \/* Reels Grid *\/\r\n          .reels-grid {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));\r\n              gap: 25px;\r\n              margin-top: 25px;\r\n          }\r\n  \r\n          .reel-card {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);\r\n              transition: all 0.3s;\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .reel-card:hover {\r\n              transform: translateY(-8px);\r\n              box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .reel-img-container {\r\n              position: relative;\r\n              overflow: hidden;\r\n              aspect-ratio: 9 \/ 16;\r\n          }\r\n  \r\n          .reel-thumb {\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              display: block;\r\n              transition: transform 0.5s;\r\n          }\r\n  \r\n          .reel-overlay {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background: rgba(0, 0, 0, 0.4);\r\n              backdrop-filter: blur(2px);\r\n              -webkit-backdrop-filter: blur(2px);\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              opacity: 0;\r\n              transition: all 0.3s;\r\n              gap: 15px;\r\n              flex-direction: column;\r\n          }\r\n  \r\n          .reel-img-container:hover .reel-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .reel-img-container:hover .reel-thumb {\r\n              transform: scale(1.05);\r\n          }\r\n  \r\n          .reel-download-btn,\r\n          .reel-view-btn {\r\n              background: white;\r\n              color: #1e88e5;\r\n              width: 45px;\r\n              height: 45px;\r\n              border-radius: 50%;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s;\r\n              border: none;\r\n              font-size: 16px;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .reel-download-btn:hover {\r\n              background: #1e88e5;\r\n              color: white;\r\n          }\r\n  \r\n          .reel-view-btn:hover {\r\n              background: #ec407a;\r\n              color: #fff;\r\n          }\r\n  \r\n          .reel-meta {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .reel-meta .caption {\r\n              font-size: 15px;\r\n              color: #334155;\r\n              margin-bottom: 10px;\r\n              line-height: 1.5;\r\n              font-weight: 500;\r\n              display: -webkit-box;\r\n              -webkit-line-clamp: 2;\r\n              -webkit-box-orient: vertical;\r\n              overflow: hidden;\r\n          }\r\n  \r\n          .reel-stats,\r\n          .post-stats {\r\n              background: linear-gradient(135deg, rgba(30, 136, 229, 0.15), rgba(236, 64, 122, 0.15));\r\n              padding: 8px 12px;\r\n              border-radius: 12px;\r\n              border: 1px solid rgba(30, 136, 229, 0.1);\r\n              backdrop-filter: blur(10px);\r\n              -webkit-backdrop-filter: blur(10px);\r\n          }\r\n  \r\n          .reel-stats span,\r\n          .post-stats span {\r\n              color: #1e293b;\r\n              font-weight: 600;\r\n              font-size: 13px;\r\n          }\r\n  \r\n          .reel-stats span i,\r\n          .post-stats span i {\r\n              color: #ec407a;\r\n              margin-right: 4px;\r\n          }\r\n  \r\n          .reel-stats {\r\n              display: flex;\r\n              gap: 15px;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          .reel-stats span {\r\n              font-size: 13px;\r\n              color: #64748b;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 5px;\r\n          }\r\n  \r\n          .reel-stats span i {\r\n              color: #8e24aa;\r\n          }\r\n  \r\n          .reel-meta .time {\r\n              font-size: 13px;\r\n              color: #94a3b8;\r\n              display: block;\r\n              font-weight: 400;\r\n          }\r\n  \r\n          .reel-stats-row {\r\n              display: flex;\r\n              justify-content: space-between;\r\n              align-items: center;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          \/* Video Elements *\/\r\n          .post-video,\r\n          .story-video,\r\n          .reel-video {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              z-index: 2;\r\n          }\r\n  \r\n          .post-fullscreen-btn,\r\n          .story-fullscreen-btn,\r\n          .reel-fullscreen-btn {\r\n              position: absolute;\r\n              top: 10px;\r\n              right: 10px;\r\n              background: rgba(255, 255, 255, 0.9);\r\n              color: #333;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 40px;\r\n              height: 40px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s ease;\r\n              font-size: 16px;\r\n              z-index: 4;\r\n          }\r\n  \r\n          .post-fullscreen-btn:hover,\r\n          .story-fullscreen-btn:hover,\r\n          .reel-fullscreen-btn:hover {\r\n              background: white;\r\n              transform: scale(1.1);\r\n          }\r\n  \r\n          \/* Media Type Indicators *\/\r\n          .media-type-indicator {\r\n              position: absolute;\r\n              top: 8px;\r\n              left: 8px;\r\n              background-color: rgba(0, 0, 0, 0.8);\r\n              color: white;\r\n              border-radius: 4px;\r\n              padding: 4px 8px;\r\n              font-size: 11px;\r\n              font-weight: bold;\r\n              z-index: 5;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 4px;\r\n              pointer-events: none;\r\n          }\r\n  \r\n          .video-indicator {\r\n              background-color: rgba(220, 53, 69, 0.9);\r\n          }\r\n  \r\n          .image-indicator {\r\n              background-color: rgba(13, 110, 253, 0.9);\r\n          }\r\n  \r\n          \/* Modal Styles *\/\r\n          .ipgv-profile-img-modal {\r\n              position: fixed;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              z-index: 10000;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              opacity: 0;\r\n              visibility: hidden;\r\n              transition: all 0.3s ease;\r\n          }\r\n  \r\n          .ipgv-profile-img-modal.active {\r\n              opacity: 1;\r\n              visibility: visible;\r\n          }\r\n  \r\n          .ipgv-modal-backdrop {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background-color: rgba(0, 0, 0, 0.85);\r\n              cursor: pointer;\r\n          }\r\n  \r\n          .ipgv-modal-content {\r\n              position: relative;\r\n              max-width: 90vw;\r\n              max-height: 90vh;\r\n              background-color: white;\r\n              border-radius: 12px;\r\n              overflow: hidden;\r\n              box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);\r\n              transform: scale(0.8);\r\n              transition: transform 0.3s ease;\r\n              z-index: 10001;\r\n          }\r\n  \r\n          .ipgv-profile-img-modal.active .ipgv-modal-content {\r\n              transform: scale(1);\r\n          }\r\n  \r\n          .ipgv-modal-img {\r\n              display: block;\r\n              width: 100%;\r\n              max-width: 500px;\r\n              height: auto;\r\n              max-height: 70vh;\r\n              object-fit: contain;\r\n          }\r\n  \r\n          .ipgv-modal-actions {\r\n              display: flex;\r\n              justify-content: center;\r\n              padding: 20px;\r\n              background-color: #f8f9fa;\r\n          }\r\n  \r\n          .ipgv-modal-download-btn {\r\n              background-color: #1e88e5;\r\n              color: white;\r\n              border: none;\r\n              border-radius: 8px;\r\n              padding: 12px 24px;\r\n              font-weight: 600;\r\n              font-size: 14px;\r\n              cursor: pointer;\r\n              transition: all 0.2s ease;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 8px;\r\n          }\r\n  \r\n          .ipgv-modal-download-btn:hover {\r\n              background-color: #1a75c6;\r\n              transform: translateY(-1px);\r\n          }\r\n  \r\n          .ipgv-close-modal {\r\n              position: absolute;\r\n              top: 15px;\r\n              right: 15px;\r\n              background-color: rgba(0, 0, 0, 0.6);\r\n              color: white;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 35px;\r\n              height: 35px;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              cursor: pointer;\r\n              transition: all 0.2s ease;\r\n              z-index: 10002;\r\n          }\r\n  \r\n          .ipgv-close-modal:hover {\r\n              background-color: rgba(0, 0, 0, 0.8);\r\n              transform: scale(1.1);\r\n          }\r\n  \r\n          body.ipgv-modal-open {\r\n              overflow: hidden;\r\n          }\r\n  \r\n          \/* abc *\/\r\n  \r\n          \/* Fixed Reel Controls - Always Visible Play and Fullscreen *\/\r\n          .reel-img-container .reel-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .reel-img-container .reel-view-btn {\r\n              opacity: 1;\r\n              visibility: visible;\r\n          }\r\n  \r\n          .reel-img-container .reel-fullscreen-btn {\r\n              opacity: 1;\r\n              visibility: visible;\r\n              display: flex;\r\n          }\r\n  \r\n          .reel-img-container:hover .reel-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .reel-video.playing {\r\n              display: block;\r\n          }\r\n  \r\n          .reel-thumb.hidden {\r\n              display: none;\r\n          }\r\n  \r\n  \r\n          \/* abc *\/\r\n  \r\n          \/* Skeleton Loaders *\/\r\n          @keyframes shimmer {\r\n              0% {\r\n                  background-position: -1000px 0;\r\n              }\r\n  \r\n              100% {\r\n                  background-position: 1000px 0;\r\n              }\r\n          }\r\n  \r\n          .skeleton-profile {\r\n              width: 100%;\r\n              animation: fadeIn 0.5s ease-out;\r\n          }\r\n  \r\n          .skeleton-profile-header {\r\n              display: flex;\r\n              gap: 30px;\r\n              padding: 30px;\r\n              background: #f9fafb;\r\n              border-radius: 16px;\r\n              margin-bottom: 20px;\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .skeleton-avatar {\r\n              width: 150px;\r\n              height: 150px;\r\n              border-radius: 50%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              flex-shrink: 0;\r\n              border: 4px solid white;\r\n              box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .skeleton-profile-info {\r\n              flex: 1;\r\n              display: flex;\r\n              flex-direction: column;\r\n              gap: 15px;\r\n          }\r\n  \r\n          .skeleton-username {\r\n              height: 28px;\r\n              width: 180px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 6px;\r\n          }\r\n  \r\n          .skeleton-fullname {\r\n              height: 20px;\r\n              width: 140px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 6px;\r\n          }\r\n  \r\n          .skeleton-stats {\r\n              display: flex;\r\n              gap: 25px;\r\n              margin-top: 10px;\r\n          }\r\n  \r\n          .skeleton-stat {\r\n              height: 40px;\r\n              width: 60px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 6px;\r\n          }\r\n  \r\n          .skeleton-bio {\r\n              height: 60px;\r\n              width: 100%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 6px;\r\n              margin-bottom: 30px;\r\n          }\r\n  \r\n          .skeleton-tabs {\r\n              display: flex;\r\n              justify-content: center;\r\n              gap: 15px;\r\n              margin-bottom: 30px;\r\n          }\r\n  \r\n          .skeleton-tab {\r\n              height: 40px;\r\n              width: 100px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 50px;\r\n          }\r\n  \r\n          \/* Posts Skeleton *\/\r\n          .skeleton-posts-grid {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\r\n              gap: 25px;\r\n          }\r\n  \r\n          .skeleton-post {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .skeleton-post-img {\r\n              aspect-ratio: 1 \/ 1;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n          }\r\n  \r\n          .skeleton-post-meta {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .skeleton-post-stats {\r\n              display: flex;\r\n              gap: 15px;\r\n              margin-bottom: 10px;\r\n          }\r\n  \r\n          .skeleton-post-stat {\r\n              height: 16px;\r\n              width: 60px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n          }\r\n  \r\n          .skeleton-post-caption {\r\n              height: 16px;\r\n              width: 100%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          .skeleton-post-caption-short {\r\n              height: 16px;\r\n              width: 70%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin-bottom: 10px;\r\n          }\r\n  \r\n          .skeleton-post-time {\r\n              height: 14px;\r\n              width: 80px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n          }\r\n  \r\n          \/* Stories Skeleton *\/\r\n          .skeleton-stories-container {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\r\n              gap: 20px;\r\n          }\r\n  \r\n          .skeleton-story {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .skeleton-story-img {\r\n              aspect-ratio: 9 \/ 16;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n          }\r\n  \r\n          .skeleton-story-meta {\r\n              padding: 12px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .skeleton-story-time {\r\n              height: 14px;\r\n              width: 80px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin: 0 auto;\r\n          }\r\n  \r\n          \/* Highlights Skeleton *\/\r\n          .skeleton-highlights-container {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\r\n              gap: 20px;\r\n          }\r\n  \r\n          .skeleton-highlight {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\r\n              border: 1px solid #f1f5f9;\r\n              padding: 15px 10px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .skeleton-highlight-img {\r\n              width: 80px;\r\n              height: 80px;\r\n              border-radius: 50%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              margin: 0 auto 10px;\r\n              border: 3px solid #e53935;\r\n          }\r\n  \r\n          .skeleton-highlight-title {\r\n              height: 16px;\r\n              width: 80px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin: 0 auto;\r\n          }\r\n  \r\n          \/* Reels Skeleton *\/\r\n          .skeleton-reels-grid {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));\r\n              gap: 25px;\r\n          }\r\n  \r\n          .skeleton-reel {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .skeleton-reel-img {\r\n              aspect-ratio: 9 \/ 16;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n          }\r\n  \r\n          .skeleton-reel-meta {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .skeleton-reel-caption {\r\n              height: 16px;\r\n              width: 100%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          .skeleton-reel-caption-short {\r\n              height: 16px;\r\n              width: 70%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin-bottom: 10px;\r\n          }\r\n  \r\n          .skeleton-reel-stats {\r\n              display: flex;\r\n              gap: 15px;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          .skeleton-reel-stat {\r\n              height: 16px;\r\n              width: 60px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n          }\r\n  \r\n          .skeleton-reel-time {\r\n              height: 14px;\r\n              width: 80px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n          }\r\n  \r\n          \/* Animations *\/\r\n          @keyframes fadeIn {\r\n              from {\r\n                  opacity: 0;\r\n              }\r\n  \r\n              to {\r\n                  opacity: 1;\r\n              }\r\n          }\r\n  \r\n          @keyframes slideUp {\r\n              from {\r\n                  transform: translateY(20px);\r\n                  opacity: 0;\r\n              }\r\n  \r\n              to {\r\n                  transform: translateY(0);\r\n                  opacity: 1;\r\n              }\r\n          }\r\n  \r\n          @keyframes spin {\r\n              0% {\r\n                  transform: rotate(0deg);\r\n              }\r\n  \r\n              100% {\r\n                  transform: rotate(360deg);\r\n              }\r\n          }\r\n  \r\n          \/* Professional Responsive Design *\/\r\n          @media (max-width: 768px) {\r\n              .wrapper {\r\n                  padding: 100px 0;\r\n              }\r\n  \r\n              .main-contain {\r\n                  padding: 10px;\r\n              }\r\n  \r\n              .ig-tool-wrapper {\r\n                  padding: 25px 20px;\r\n                  margin: 10px auto;\r\n                  border-radius: 20px;\r\n              }\r\n  \r\n              .ig-header h1 {\r\n                  font-size: 28px;\r\n                  margin-bottom: 15px;\r\n                  background: white;\r\n                  -webkit-background-clip: text;\r\n                  -webkit-text-fill-color: transparent;\r\n                  background-clip: text;\r\n              }\r\n  \r\n              .viewer-anonymous {\r\n                  background: white;\r\n                  -webkit-background-clip: text;\r\n                  -webkit-text-fill-color: transparent;\r\n                  background-clip: text;\r\n              }\r\n  \r\n              .ig-header p {\r\n                  font-size: 16px;\r\n                  margin: 15px 0 25px;\r\n              }\r\n  \r\n              .ig-input-area {\r\n                  padding: 20px 15px;\r\n                  flex-direction: column;\r\n                  gap: 15px;\r\n                  border-radius: 16px;\r\n              }\r\n  \r\n              .ig-icon {\r\n                  width: 100%;\r\n                  text-align: left;\r\n                  margin-left: 0;\r\n                  margin-bottom: 10px;\r\n              }\r\n  \r\n              .ig-input-area input {\r\n                  margin: 0 0 15px 0;\r\n                  width: 100%;\r\n                  min-width: 100%;\r\n                  padding: 14px 16px;\r\n              }\r\n  \r\n              .paste-btn {\r\n                  display: none;\r\n              }\r\n  \r\n              .view-btn {\r\n                  width: 100%;\r\n                  justify-content: center;\r\n                  padding: 14px 20px;\r\n              }\r\n  \r\n              .profile-header-content {\r\n                  flex-direction: column;\r\n                  align-items: center;\r\n                  text-align: center;\r\n              }\r\n  \r\n              .profile-info {\r\n                  text-align: center;\r\n              }\r\n  \r\n              .stats {\r\n                  justify-content: center;\r\n              }\r\n  \r\n              .posts-grid {\r\n                  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));\r\n                  gap: 15px;\r\n              }\r\n  \r\n              .stories-container {\r\n                  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\r\n              }\r\n  \r\n              .highlights-container {\r\n                  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\r\n              }\r\n  \r\n              .reels-grid {\r\n                  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\r\n              }\r\n  \r\n              .post-meta .caption,\r\n              .reel-meta .caption {\r\n                  font-size: 14px;\r\n              }\r\n  \r\n              .ig-tabs button {\r\n                  padding: 10px 16px;\r\n                  font-size: 14px;\r\n              }\r\n  \r\n              .ipgv-modal-content {\r\n                  max-width: 95vw;\r\n                  max-height: 85vh;\r\n                  margin: 20px;\r\n              }\r\n  \r\n              .ipgv-modal-img {\r\n                  max-height: 60vh;\r\n              }\r\n  \r\n              .ipgvmodal-actions {\r\n                  padding: 15px;\r\n              }\r\n  \r\n              .ipgv-modal-download-btn {\r\n                  padding: 10px 20px;\r\n                  font-size: 13px;\r\n              }\r\n  \r\n              .skeleton-profile-header {\r\n                  flex-direction: column;\r\n                  align-items: center;\r\n              }\r\n  \r\n              .skeleton-avatar {\r\n                  margin-bottom: 20px;\r\n              }\r\n  \r\n              .skeleton-username,\r\n              .skeleton-fullname {\r\n                  margin: 0 auto;\r\n              }\r\n  \r\n              .skeleton-stats {\r\n                  justify-content: center;\r\n              }\r\n  \r\n              .skeleton-posts-grid {\r\n                  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));\r\n              }\r\n  \r\n              .skeleton-stories-container {\r\n                  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\r\n              }\r\n  \r\n              .skeleton-highlights-container {\r\n                  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\r\n              }\r\n  \r\n              .skeleton-reels-grid {\r\n                  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\r\n              }\r\n        .ig-profile-header {\r\n      margin-bottom: 40px;\r\n      position: relative;\r\n      background: linear-gradient(to bottom, #f2e1f0, #f2e2f1);\r\n      border-radius: 16px;\r\n      padding: 30px;\r\n      box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);\r\n      border: 1px solid #f1f5f9;\r\n      display: flex;\r\n      justify-content: center;\r\n      align-items: center;\r\n      flex-direction: column;\r\n  }\r\n          }\r\n  \r\n          .ipgv-media-modal {\r\n              position: fixed;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              z-index: 10000;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              opacity: 0;\r\n              visibility: hidden;\r\n              transition: all 0.3s ease;\r\n          }\r\n  \r\n          .ipgv-media-modal.active {\r\n              opacity: 1;\r\n              visibility: visible;\r\n          }\r\n  \r\n          .ipgv-modal-media {\r\n              display: block;\r\n              width: 100%;\r\n              height: auto;\r\n              border-radius: 8px;\r\n          }\r\n  \r\n          \/* Medium Device Responsive Design *\/\r\n          @media (max-width: 1024px) and (min-width: 769px) {\r\n              .wrapper {\r\n                  padding: 15px;\r\n              }\r\n  \r\n              .main-contain {\r\n                  padding: 15px;\r\n              }\r\n  \r\n              .ig-tool-wrapper {\r\n                  padding: 35px 30px;\r\n                  margin: 15px auto;\r\n              }\r\n  \r\n              .ig-header h1 {\r\n                  font-size: 36px;\r\n                  background: white;\r\n                  -webkit-background-clip: text;\r\n                  -webkit-text-fill-color: transparent;\r\n                  background-clip: text;\r\n              }\r\n  \r\n              .viewer-anonymous {\r\n                  background: white;\r\n                  -webkit-background-clip: text;\r\n                  -webkit-text-fill-color: transparent;\r\n                  background-clip: text;\r\n              }\r\n  \r\n              .ig-header p {\r\n                  font-size: 17px;\r\n              }\r\n  \r\n              .ig-input-area {\r\n                  padding: 25px 20px;\r\n                  gap: 18px;\r\n              }\r\n  \r\n              .ig-input-area input {\r\n                  padding: 15px 18px;\r\n              }\r\n  \r\n              .paste-btn,\r\n              .view-btn {\r\n                  padding: 15px 22px;\r\n              }\r\n        .ig-profile-header {\r\n      margin-bottom: 40px;\r\n      position: relative;\r\n      background: linear-gradient(to bottom, #f2e1f0, #f2e2f1);\r\n      border-radius: 16px;\r\n      padding: 30px;\r\n      box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);\r\n      border: 1px solid #f1f5f9;\r\n      display: flex;\r\n      justify-content: center;\r\n      align-items: center;\r\n      flex-direction: column;\r\n  }\r\n          }\r\n  \r\n          \/* Enhanced Video Controls *\/\r\n      <\/style>\r\n  \r\n      <div class=\"wrapper\">\r\n          <div class=\"download-status\" id=\"download-status\"><\/div>\r\n  \r\n          <div class=\"main-contain offcontents\">\r\n          <div class=\"ig-tool-wrapper\">\r\n              <div class=\"ig-header\">\r\n                  <h1>Instagram <span class=\"viewer-anonymous\">Friend Viewer<\/span><\/h1>   \r\n                  <p>Instagram profile viewer allows you to watch Instagram stories anonymously and <br> download videos\r\n                      and photos with ease.<\/p>\r\n              <\/div>\r\n  \r\n              <div class=\"ig-input-area\" style=\"position:relative\">\r\n                  <span class=\"ig-icon\">Enter your instagram @username<\/span>\r\n                  <input type=\"text\" id=\"input-url\" required=\"\" placeholder=\"Instagram @username\">\r\n                  <button class=\"paste-btn\" id=\"paste-btn\"><i class=\"fa-solid fa-paste\"><\/i> Paste<\/button>\r\n                  <button class=\"view-btn\" id=\"view-btn\"> <i class=\"fa-solid fa-unlock\"><\/i> View Profile<\/button>\r\n  \r\n                  <div style=\"margin-top:25px; position:absolute;bottom:100px\">\r\n                      <br>\r\n                      <span id=\"error-message\" style=\"color: #e53935; margin-top: 25px; display: none;\"><\/span>\r\n                      <br>\r\n                  <\/div>\r\n              <\/div>\r\n  \r\n              <div class=\"ad-space\">\r\n                  <div class=\"ad-inner\">\r\n                      <a class=\"ad-placeholder\">\r\n                          <img decoding=\"async\" src=\"https:\/\/bitchipdigital.com\/wp-content\/uploads\/2025\/05\/appsumo.png\" alt=\"Advertisement\" class=\"ad-image\">\r\n                      <\/a>\r\n                  <\/div>\r\n              <\/div>\r\n  \r\n              <div class=\"note\">\r\n                  Free unlimited profile viewer tool, enjoy it!\r\n              <\/div>\r\n          <\/div>\r\n  \r\n          <div class=\"tools-result\">\r\n              <div class=\"ig-result\">\r\n                  <!-- Profile Header -->\r\n                  <div class=\"ig-profile-header\">\r\n                      <div class=\"profile-header-content\">\r\n                          <div class=\"profile-image-container\">\r\n                              <div class=\"profile-image\" style=\"background: #f1f5f9; display: flex; align-items: center; justify-content: center; color: #94a3b8;\">\r\n                                  <i class=\"fa-solid fa-user\" style=\"font-size: 60px;\"><\/i>\r\n                              <\/div>\r\n                              <button class=\"view-profile-img\"><i class=\"fa-solid fa-expand\"><\/i><\/button>\r\n                          <\/div>\r\n                          <div class=\"profile-info\">\r\n                              <h3 id=\"profile-username\">@username<\/h3>\r\n                              <h4 id=\"profile-fullname\">Full Name<\/h4>\r\n                              <div class=\"stats\">\r\n                                  <div class=\"stat-item\">\r\n                                      <div class=\"stat-value\" id=\"posts-count\">0<\/div>\r\n                                      <div class=\"stat-label\">posts<\/div>\r\n                                  <\/div>\r\n                                  <div class=\"stat-item\">\r\n                                      <div class=\"stat-value\" id=\"followers-count\">0<\/div>\r\n                                      <div class=\"stat-label\">followers<\/div>\r\n                                  <\/div>\r\n                                  <div class=\"stat-item\">\r\n                                      <div class=\"stat-value\" id=\"following-count\">0<\/div>\r\n                                      <div class=\"stat-label\">following<\/div>\r\n                                  <\/div>\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n  \r\n                  <!-- Tabs -->\r\n                  <div class=\"ig-tabs\">\r\n                      <button class=\"active\" onclick=\"switchTab('posts', this)\">\r\n                          <i class=\"fa-solid fa-grid-2\"><\/i> Posts\r\n                      <\/button>\r\n                      <button onclick=\"switchTab('stories', this)\">\r\n                          <i class=\"fa-solid fa-circle\"><\/i> Stories\r\n                      <\/button>\r\n                      <button onclick=\"switchTab('highlights', this)\">\r\n                          <i class=\"fa-solid fa-star\"><\/i> Highlights\r\n                      <\/button>\r\n                      <button onclick=\"switchTab('reels', this)\">\r\n                          <i class=\"fa-solid fa-video\"><\/i> Reels\r\n                      <\/button>\r\n                  <\/div>\r\n  \r\n                  <!-- Tab Content -->\r\n                  <div id=\"tab-content\">\r\n                      <!-- Posts Tab -->\r\n                      <div id=\"posts-content\" class=\"tab-content active\">\r\n                          <div class=\"no-result\">\r\n                              <i class=\"fa-solid fa-images\" style=\"font-size: 48px; color: #cbd5e1; margin-bottom: 15px;\"><\/i>\r\n                              <p>Enter an Instagram username above to view posts from their profile. You can download and\r\n                                  view their photos and videos easily.<\/p>\r\n                          <\/div>\r\n                      <\/div>\r\n  \r\n                      <!-- Stories Tab -->\r\n                      <div id=\"stories-content\" class=\"tab-content\" style=\"display: none;\">\r\n                          <div class=\"no-result\">\r\n                              <i class=\"fa-solid fa-circle-play\" style=\"font-size: 48px; color: #cbd5e1; margin-bottom: 15px;\"><\/i>\r\n                              <p>Enter an Instagram username above to view their active stories. Watch stories anonymously\r\n                                  without them knowing.<\/p>\r\n                          <\/div>\r\n                      <\/div>\r\n  \r\n                      <!-- Highlights Tab -->\r\n                      <div id=\"highlights-content\" class=\"tab-content\" style=\"display: none;\">\r\n                          <div class=\"no-result\">\r\n                              <i class=\"fa-solid fa-bookmark\" style=\"font-size: 48px; color: #cbd5e1; margin-bottom: 15px;\"><\/i>\r\n                              <p>Enter an Instagram username above to view their story highlights. Access all their saved\r\n                                  stories in one place.<\/p>\r\n                          <\/div>\r\n                      <\/div>\r\n  \r\n                      <!-- Reels Tab -->\r\n                      <div id=\"reels-content\" class=\"tab-content\" style=\"display: none;\">\r\n                          <div class=\"no-result\">\r\n                              <i class=\"fa-solid fa-clapperboard\" style=\"font-size: 48px; color: #cbd5e1; margin-bottom: 15px;\"><\/i>\r\n                              <p>Enter an Instagram username above to view their reels. Download and watch short videos\r\n                                  from their profile.<\/p>\r\n                          <\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  \r\n      <script src=\"https:\/\/code.jquery.com\/jquery-3.7.1.min.js\"><\/script>\r\n    <script src=\"https:\/\/tools.xrespond.com\/api\/rate-limit-handler.js\"><\/script>\r\n    <script src=\"https:\/\/tools.xrespond.com\/api\/js\/client-ip-detector.js\"><\/script>\r\n      <script src=\"fixallInsta.js\"><\/script>\r\n      <script>\r\n          \/\/ Enhanced download functionality with better error handling and media detection\r\n          function showDownloadStatus(message, isError = false) {\r\n              const errorEl = document.getElementById('error-message');\r\n              errorEl.textContent = message;\r\n              errorEl.style.color = isError ? 'red' : 'green';\r\n              errorEl.style.display = 'block';\r\n  \r\n              setTimeout(() => {\r\n                  errorEl.style.display = 'none';\r\n              }, 3000);\r\n          }\r\n  \r\n          \/\/ abc\r\n  \r\n          \/\/ Fixed Reel Play\/Pause Functionality\r\n          $(document).off('click', '.reel-view-btn').on('click', '.reel-view-btn', function (e) {\r\n              e.preventDefault();\r\n              e.stopPropagation();\r\n  \r\n              var $this = $(this);\r\n              var container = $this.closest('.reel-img-container');\r\n              var video = container.find('.reel-video')[0];\r\n              var thumbnail = container.find('.reel-thumb');\r\n              var fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n              \/\/ Pause all other videos first\r\n              $('.reel-video').each(function () {\r\n                  if (this !== video && !this.paused) {\r\n                      this.pause();\r\n                      $(this).removeClass('playing').hide();\r\n                      $(this).closest('.reel-img-container').find('.reel-thumb').removeClass('hidden').show();\r\n                      $(this).closest('.reel-img-container').find('.reel-view-btn').html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  }\r\n              });\r\n  \r\n              if (!video) {\r\n                  var videoUrl = container.data('media');\r\n                  if (videoUrl) {\r\n                      var videoElement = $('<video class=\"reel-video\" controls playsInline muted><\/video>');\r\n                      videoElement.attr('src', videoUrl);\r\n                      container.append(videoElement);\r\n                      video = videoElement[0];\r\n                  }\r\n              }\r\n  \r\n              if (video) {\r\n                  if (video.paused) {\r\n                      \/\/ Play video\r\n                      thumbnail.addClass('hidden').hide();\r\n                      $(video).addClass('playing').show();\r\n                      video.currentTime = 0;\r\n  \r\n                      video.play().then(function () {\r\n                          $this.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                          fullscreenBtn.show();\r\n                      }).catch(function (err) {\r\n                          console.error('Video play failed:', err);\r\n                          thumbnail.removeClass('hidden').show();\r\n                          $(video).removeClass('playing').hide();\r\n                          $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                      });\r\n                  } else {\r\n                      \/\/ Pause video\r\n                      video.pause();\r\n                      $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  }\r\n              }\r\n          });\r\n  \r\n          \/\/ Fixed video event handlers\r\n          $(document).off('play', '.reel-video').on('play', '.reel-video', function () {\r\n              var container = $(this).closest('.reel-img-container');\r\n              var viewBtn = container.find('.reel-view-btn');\r\n              var fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n              viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n              fullscreenBtn.show();\r\n          });\r\n  \r\n          $(document).off('pause', '.reel-video').on('pause', '.reel-video', function () {\r\n              var container = $(this).closest('.reel-img-container');\r\n              var viewBtn = container.find('.reel-view-btn');\r\n  \r\n              viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n          });\r\n  \r\n          $(document).off('ended', '.reel-video').on('ended', '.reel-video', function () {\r\n              var container = $(this).closest('.reel-img-container');\r\n              var viewBtn = container.find('.reel-view-btn');\r\n              var thumbnail = container.find('.reel-thumb');\r\n  \r\n              $(this).removeClass('playing').hide();\r\n              thumbnail.removeClass('hidden').show();\r\n              viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n          });\r\n  \r\n          \/\/ abc\r\n  \r\n          function getMediaUrlAndType() {\r\n              \/\/ Check for image in modal\r\n              const modalImg = document.querySelector('.modal-img');\r\n              if (modalImg && modalImg.src && modalImg.src !== window.location.href) {\r\n                  return {\r\n                      url: modalImg.src,\r\n                      type: 'image',\r\n                      extension: getFileExtension(modalImg.src) || 'jpg'\r\n                  };\r\n              }\r\n  \r\n              \/\/ Check for video in modal\r\n              const modalVideo = document.querySelector('.modal-video');\r\n              if (modalVideo && modalVideo.src && modalVideo.src !== window.location.href) {\r\n                  return {\r\n                      url: modalVideo.src,\r\n                      type: 'video',\r\n                      extension: getFileExtension(modalVideo.src) || 'mp4'\r\n                  };\r\n              }\r\n  \r\n              \/\/ Check for profile image\r\n              const profileImg = document.querySelector('.profile-image img');\r\n              if (profileImg && profileImg.src && profileImg.src !== window.location.href) {\r\n                  return {\r\n                      url: profileImg.src,\r\n                      type: 'image',\r\n                      extension: getFileExtension(profileImg.src) || 'jpg'\r\n                  };\r\n              }\r\n  \r\n              return null;\r\n          }\r\n  \r\n          function getFileExtension(url) {\r\n              try {\r\n                  const urlObj = new URL(url);\r\n                  const pathname = urlObj.pathname;\r\n                  const extension = pathname.split('.').pop().toLowerCase();\r\n  \r\n                  \/\/ Common image extensions\r\n                  if (['jpg', 'jpeg', 'png', 'gif', 'webp', 'bmp'].includes(extension)) {\r\n                      return extension;\r\n                  }\r\n  \r\n                  \/\/ Common video extensions\r\n                  if (['mp4', 'avi', 'mov', 'wmv', 'flv', 'webm', 'mkv'].includes(extension)) {\r\n                      return extension;\r\n                  }\r\n  \r\n                  return null;\r\n              } catch (e) {\r\n                  return null;\r\n              }\r\n          }\r\n  \r\n          function generateFileName(type, extension) {\r\n              const timestamp = new Date().getTime();\r\n              const username = document.getElementById('profile-username')?.textContent?.replace('@', '') || 'instagram';\r\n              return `${username}_${type}_${timestamp}.${extension}`;\r\n          }\r\n  \r\n          async function downloadMediaFile(url, filename, type) {\r\n              try {\r\n                  showDownloadStatus('Preparing download...');\r\n  \r\n                  \/\/ First, try to fetch the media\r\n                  const response = await fetch(url, {\r\n                      method: 'GET',\r\n                      headers: {\r\n                          'Accept': type === 'image' ? 'image\/*' : 'video\/*',\r\n                      }\r\n                  });\r\n  \r\n                  if (!response.ok) {\r\n                      throw new Error(`HTTP error! status: ${response.status}`);\r\n                  }\r\n  \r\n                  const blob = await response.blob();\r\n  \r\n                  if (blob.size === 0) {\r\n                      throw new Error('Downloaded file is empty');\r\n                  }\r\n  \r\n                  \/\/ Create blob URL and download\r\n                  const blobUrl = URL.createObjectURL(blob);\r\n                  const link = document.createElement('a');\r\n                  link.href = blobUrl;\r\n                  link.download = filename;\r\n                  link.style.display = 'none';\r\n  \r\n                  document.body.appendChild(link);\r\n                  link.click();\r\n                  document.body.removeChild(link);\r\n  \r\n                  \/\/ Clean up\r\n                  setTimeout(() => {\r\n                      URL.revokeObjectURL(blobUrl);\r\n                  }, 1000);\r\n  \r\n                  showDownloadStatus(`${type === 'image' ? 'Image' : 'Video'} downloaded successfully!`);\r\n                  return true;\r\n  \r\n              } catch (error) {\r\n                  console.error('Download error:', error);\r\n  \r\n                  \/\/ Fallback: try direct link method\r\n                  try {\r\n                      const link = document.createElement('a');\r\n                      link.href = url;\r\n                      link.download = filename;\r\n                      link.target = '_blank';\r\n                      link.style.display = 'none';\r\n  \r\n                      document.body.appendChild(link);\r\n                      link.click();\r\n                      document.body.removeChild(link);\r\n  \r\n                      showDownloadStatus('Download initiated (check your downloads folder)');\r\n                      return true;\r\n                  } catch (fallbackError) {\r\n                      showDownloadStatus(`Download failed: ${error.message}`, true);\r\n                      return false;\r\n                  }\r\n              }\r\n          }\r\n  \r\n          \/\/ Paste functionality\r\n          $('#paste-btn').click(function () {\r\n              navigator.clipboard.readText().then(function (text) {\r\n                  $(\"#input-url\").val(text);\r\n              }).catch(function (err) {\r\n                  console.error('Failed to read clipboard: ', err);\r\n              });\r\n          });\r\n  \r\n          \/\/ Switch tab function\r\n          function switchTab(tabName, buttonElement) {\r\n              \/\/ Focus on input field when tab is clicked\r\n              const inputField = document.getElementById('input-url');\r\n              inputField.focus();\r\n              inputField.classList.add('input-highlight');\r\n  \r\n              \/\/ Remove highlight class after animation completes\r\n              setTimeout(() => {\r\n                  inputField.classList.remove('input-highlight');\r\n              }, 1000);\r\n  \r\n              \/\/ Update active button\r\n              document.querySelectorAll('.ig-tabs button').forEach(btn => {\r\n                  btn.classList.remove('active');\r\n              });\r\n              buttonElement.classList.add('active');\r\n  \r\n              \/\/ Hide all tab contents\r\n              document.querySelectorAll('.tab-content').forEach(content => {\r\n                  content.style.display = 'none';\r\n              });\r\n  \r\n              \/\/ Show selected tab content\r\n              document.getElementById(tabName + '-content').style.display = 'block';\r\n          }\r\n  \r\n          \/\/ Add enter key support for input\r\n          document.getElementById('input-url').addEventListener('keypress', function (e) {\r\n              if (e.key === 'Enter') {\r\n                  \/\/ Handle enter key if needed\r\n                  const username = this.value.trim();\r\n                  if (username) {\r\n                      showDownloadStatus('This is a demo. In a real app, this would fetch @' + username);\r\n                  } else {\r\n                      showDownloadStatus('Please enter an Instagram username', true);\r\n                  }\r\n              }\r\n          });\r\n  \r\n          \/\/ View button click handler\r\n          document.getElementById('view-btn').addEventListener('click', function () {\r\n              const username = document.getElementById('input-url').value.trim();\r\n              if (!username) {\r\n                  showDownloadStatus('Please enter an Instagram username', true);\r\n                  document.getElementById('input-url').focus();\r\n                  return;\r\n              }\r\n  \r\n              \/\/ In a real app, this would fetch the profile data\r\n              \/\/ For now, just show a message\r\n              showDownloadStatus('This is a demo. In a real app, this would fetch @' + username);\r\n          });\r\n  \r\n          \/\/ Enhanced modal download button handler\r\n          $(document).on(\"click\", \".modal-download-btn\", async function (e) {\r\n              e.preventDefault();\r\n              e.stopPropagation();\r\n  \r\n              const mediaInfo = getMediaUrlAndType();\r\n  \r\n              if (!mediaInfo) {\r\n                  showDownloadStatus('No media found to download', true);\r\n                  return;\r\n              }\r\n  \r\n              const filename = generateFileName(mediaInfo.type, mediaInfo.extension);\r\n  \r\n              \/\/ Use global downloadMedia function if available\r\n              if (typeof window.downloadMedia === 'function') {\r\n                  try {\r\n                      window.downloadMedia(mediaInfo.url, filename, mediaInfo.type);\r\n                      showDownloadStatus(`${mediaInfo.type === 'image' ? 'Image' : 'Video'} download started!`);\r\n  \r\n                      setTimeout(() => {\r\n                          $(\".close-modal\").click();\r\n                      }, 500);\r\n                  } catch (error) {\r\n                      console.error('Global download function failed:', error);\r\n                      \/\/ Fall back to our enhanced method\r\n                      const success = await downloadMediaFile(mediaInfo.url, filename, mediaInfo.type);\r\n                      if (success) {\r\n                          setTimeout(() => {\r\n                              $(\".close-modal\").click();\r\n                          }, 500);\r\n                      }\r\n                  }\r\n                  return;\r\n              }\r\n  \r\n              \/\/ Use our enhanced download method\r\n              const success = await downloadMediaFile(mediaInfo.url, filename, mediaInfo.type);\r\n              if (success) {\r\n                  setTimeout(() => {\r\n                      $(\".close-modal\").click();\r\n                  }, 500);\r\n              }\r\n          });\r\n  \r\n          \/\/ Add download buttons to media items (for posts, stories, etc.)\r\n          $(document).on(\"click\", \".download-media-btn\", async function (e) {\r\n              e.preventDefault();\r\n              e.stopPropagation();\r\n  \r\n              const mediaElement = $(this).closest('.media-item').find('img, video').first();\r\n              if (!mediaElement.length) {\r\n                  showDownloadStatus('No media found to download', true);\r\n                  return;\r\n              }\r\n  \r\n              const mediaUrl = mediaElement.attr('src');\r\n              if (!mediaUrl || mediaUrl === window.location.href) {\r\n                  showDownloadStatus('Invalid media URL', true);\r\n                  return;\r\n              }\r\n  \r\n              const isVideo = mediaElement.is('video');\r\n              const type = isVideo ? 'video' : 'image';\r\n              const extension = getFileExtension(mediaUrl) || (isVideo ? 'mp4' : 'jpg');\r\n              const filename = generateFileName(type, extension);\r\n  \r\n              await downloadMediaFile(mediaUrl, filename, type);\r\n          });\r\n  \r\n  \r\n  \r\n          (function ($) {\r\n              'use strict';\r\n  \r\n              function formatNumber(num) {\r\n                  if (num === null || num === undefined) return '0';\r\n                  num = parseInt(num, 10);\r\n                  if (isNaN(num)) return '0';\r\n  \r\n                  if (num >= 1000000) {\r\n                      return (num \/ 1000000).toFixed(1).replace(\/\\.0$\/, '') + 'M';\r\n                  }\r\n                  if (num >= 1000) {\r\n                      return (num \/ 1000).toFixed(1).replace(\/\\.0$\/, '') + 'K';\r\n                  }\r\n                  return num.toString();\r\n              }\r\n  \r\n              \/\/ Place this at the top level, outside of any function\r\n              async function forceDownloadImage(imgUrl, filename) {\r\n                  try {\r\n                      const resp = await fetch(imgUrl);\r\n                      if (!resp.ok) throw new Error(`Network error: ${resp.status}`);\r\n                      const blob = await resp.blob();\r\n                      const blobUrl = URL.createObjectURL(blob);\r\n                      const a = document.createElement('a');\r\n                      a.href = blobUrl;\r\n                      a.download = filename || '';\r\n                      document.body.appendChild(a);\r\n                      a.click();\r\n                      document.body.removeChild(a);\r\n                      setTimeout(() => URL.revokeObjectURL(blobUrl), 1000);\r\n                  } catch (err) {\r\n                      console.error('Download failed:', err);\r\n  \r\n                  }\r\n              }\r\n  \r\n              function clearAllSkeletons() {\r\n                  $(\".skeleton-profile\").remove();\r\n                  $(\".skeleton-posts-grid\").remove();\r\n                  $(\".skeleton-stories-container\").remove();\r\n                  $(\".skeleton-highlights-container\").remove();\r\n                  $(\".skeleton-reels-grid\").remove();\r\n              }\r\n  \r\n              \/\/ Ensure jQuery is available and wait for DOM ready\r\n              $(document).ready(function () {\r\n                  \/\/ Track if this is the first search\r\n                  var isFirstSearch = true;\r\n                  \/\/ Track loaded tabs\r\n                  var isPrivateAccount = false;\r\n                  var loadedTabs = {\r\n                      posts: false,\r\n                      stories: false,\r\n                      highlights: false,\r\n                      reels: false,\r\n                  };\r\n                  var activeTab = \"posts\";\r\n  \r\n                  \/\/ Download management\r\n                  var activeDownloads = new Map();\r\n                  var downloadCounter = 0;\r\n  \r\n                  \/\/ Create toast container if it doesn't exist\r\n                  function createToastContainer() {\r\n                      if ($(\"#toast-container\").length === 0) {\r\n                          $(\"body\").append(\r\n                              '<div id=\"toast-container\" style=\"' +\r\n                              'position: fixed;' +\r\n                              'top: 20px;' +\r\n                              'right: 20px;' +\r\n                              'z-index: 10000;' +\r\n                              'max-width: 400px;' +\r\n                              'width: 100%;' +\r\n                              '\"><\/div>'\r\n                          );\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Create toast notification with progress bar\r\n                  function createToast(filename, downloadId) {\r\n                      var toastHtml =\r\n                          '<div class=\"download-toast\" id=\"toast-' + downloadId + '\" style=\"' +\r\n                          'background: white;' +\r\n                          'border-radius: 12px;' +\r\n                          'box-shadow: 0 10px 30px rgba(0,0,0,0.15);' +\r\n                          'margin-bottom: 15px;' +\r\n                          'padding: 20px;' +\r\n                          'border-left: 4px solid #8e24aa;' +\r\n                          'animation: slideInRight 0.3s ease-out;' +\r\n                          'position: relative;' +\r\n                          'overflow: hidden;' +\r\n                          '\">' +\r\n                          '<div style=\"display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px;\">' +\r\n                          '<div style=\"display: flex; align-items: center; gap: 10px;\">' +\r\n                          '<i class=\"fa-solid fa-download\" style=\"color: #8e24aa; font-size: 16px;\"><\/i>' +\r\n                          '<span style=\"font-weight: 600; color: #1e293b; font-size: 14px;\">Downloading...<\/span>' +\r\n                          '<\/div>' +\r\n                          '<button class=\"cancel-download\" data-download-id=\"' + downloadId + '\" style=\"' +\r\n                          'background: #ef4444;' +\r\n                          'color: white;' +\r\n                          'border: none;' +\r\n                          'border-radius: 6px;' +\r\n                          'padding: 4px 8px;' +\r\n                          'font-size: 12px;' +\r\n                          'cursor: pointer;' +\r\n                          'transition: all 0.2s;' +\r\n                          'display: flex;' +\r\n                          'align-items: center;' +\r\n                          'justify-content: center;' +\r\n                          'width: 24px;' +\r\n                          'height: 24px;' +\r\n                          '\">' +\r\n                          '<i class=\"fa-solid fa-xmark\"><\/i>' +\r\n                          '<\/button>' +\r\n                          '<\/div>' +\r\n                          '<div style=\"margin-bottom: 8px;\">' +\r\n                          '<div style=\"font-size: 13px; color: #64748b; margin-bottom: 4px; word-break: break-all;\">' + filename + '<\/div>' +\r\n                          '<div style=\"display: flex; justify-content: space-between; align-items: center;\">' +\r\n                          '<span class=\"download-status\" style=\"font-size: 12px; color: #64748b;\">Preparing download...<\/span>' +\r\n                          '<span class=\"download-percentage\" style=\"font-size: 12px; font-weight: 600; color: #8e24aa;\">0%<\/span>' +\r\n                          '<\/div>' +\r\n                          '<\/div>' +\r\n                          '<div class=\"progress-container\" style=\"' +\r\n                          'width: 100%;' +\r\n                          'height: 6px;' +\r\n                          'background: #f1f5f9;' +\r\n                          'border-radius: 3px;' +\r\n                          'overflow: hidden;' +\r\n                          'position: relative;' +\r\n                          '\">' +\r\n                          '<div class=\"progress-bar\" style=\"' +\r\n                          'height: 100%;' +\r\n                          'background: linear-gradient(90deg, #8e24aa, #ec407a);' +\r\n                          'border-radius: 3px;' +\r\n                          'width: 0%;' +\r\n                          'transition: width 0.3s ease;' +\r\n                          'position: relative;' +\r\n                          '\">' +\r\n                          '<div style=\"' +\r\n                          'position: absolute;' +\r\n                          'top: 0;' +\r\n                          'left: 0;' +\r\n                          'right: 0;' +\r\n                          'bottom: 0;' +\r\n                          'background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);' +\r\n                          'animation: shimmer 1.5s infinite;' +\r\n                          '\"><\/div>' +\r\n                          '<\/div>' +\r\n                          '<\/div>' +\r\n                          '<\/div>';\r\n  \r\n                      $(\"#toast-container\").prepend(toastHtml);\r\n  \r\n                      \/\/ Add shimmer animation\r\n                      if (!$(\"#shimmer-style\").length) {\r\n                          $(\"head\").append(\r\n                              '<style id=\"shimmer-style\">' +\r\n                              '@keyframes slideInRight {' +\r\n                              'from { transform: translateX(100%); opacity: 0; }' +\r\n                              'to { transform: translateX(0); opacity: 1; }' +\r\n                              '}' +\r\n                              '@keyframes slideOutRight {' +\r\n                              'from { transform: translateX(0); opacity: 1; }' +\r\n                              'to { transform: translateX(100%); opacity: 0; }' +\r\n                              '}' +\r\n                              '@keyframes shimmer {' +\r\n                              '0% { transform: translateX(-100%); }' +\r\n                              '100% { transform: translateX(100%); }' +\r\n                              '}' +\r\n                              '.cancel-download:hover {' +\r\n                              'background: #dc2626;' +\r\n                              'transform: scale(1.05);' +\r\n                              '}' +\r\n                              '.download-toast.success {' +\r\n                              'border-left-color: #10b981;' +\r\n                              '}' +\r\n                              '.download-toast.error {' +\r\n                              'border-left-color: #ef4444;' +\r\n                              '}' +\r\n                              '<\/style>'\r\n                          );\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Update toast progress\r\n                  function updateToastProgress(downloadId, progress, status) {\r\n                      var toast = $(\"#toast-\" + downloadId);\r\n                      if (toast.length) {\r\n                          toast.find(\".progress-bar\").css(\"width\", progress + \"%\");\r\n                          toast.find(\".download-percentage\").text(Math.round(progress) + \"%\");\r\n                          if (status) {\r\n                              toast.find(\".download-status\").text(status);\r\n                          }\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Complete toast (success or error)\r\n                  function completeToast(downloadId, success, message) {\r\n                      var toast = $(\"#toast-\" + downloadId);\r\n                      if (toast.length) {\r\n                          toast.removeClass(\"success error\").addClass(success ? \"success\" : \"error\");\r\n  \r\n                          var icon = success ? \"fa-check-circle\" : \"fa-exclamation-circle\";\r\n                          var color = success ? \"#10b981\" : \"#ef4444\";\r\n                          var statusText = success ? \"Download completed!\" : \"Download failed!\";\r\n  \r\n                          toast.find(\".fa-download\").removeClass(\"fa-download\").addClass(icon).css(\"color\", color);\r\n                          toast.find(\".download-status\").text(message || statusText);\r\n                          toast.find(\".download-percentage\").text(success ? \"100%\" : \"Failed\");\r\n                          toast.find(\".cancel-download\").hide();\r\n  \r\n                          if (success) {\r\n                              toast.find(\".progress-bar\").css(\"width\", \"100%\");\r\n                          }\r\n  \r\n                          \/\/ Auto remove after 3 seconds\r\n                          setTimeout(function () {\r\n                              toast.css(\"animation\", \"slideOutRight 0.3s ease-in\");\r\n                              setTimeout(function () { toast.remove(); }, 300);\r\n                          }, 3000);\r\n                      }\r\n  \r\n                      \/\/ Remove from active downloads\r\n                      activeDownloads.delete(downloadId);\r\n                  }\r\n  \r\n                  \/\/ Cancel download\r\n                  function cancelDownload(downloadId) {\r\n                      var downloadInfo = activeDownloads.get(downloadId);\r\n                      if (downloadInfo && downloadInfo.controller) {\r\n                          downloadInfo.controller.abort();\r\n                          activeDownloads.delete(downloadId);\r\n  \r\n                          var toast = $(\"#toast-\" + downloadId);\r\n                          toast.css(\"animation\", \"slideOutRight 0.3s ease-in\");\r\n                          setTimeout(function () { toast.remove(); }, 300);\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Enhanced download function with progress tracking\r\n                  async function downloadWithProgress(url, filename, type) {\r\n                      type = type || \"image\";\r\n  \r\n                      if (!url) {\r\n                          console.error(\"No URL provided for download\");\r\n                          \/\/ alert(\"Download URL not found. Please try again.\");\r\n                          return;\r\n                      }\r\n  \r\n                      var downloadId = ++downloadCounter;\r\n                      var controller = new AbortController();\r\n  \r\n                      \/\/ Store download info\r\n                      activeDownloads.set(downloadId, {\r\n                          controller: controller,\r\n                          filename: filename,\r\n                          url: url,\r\n                          type: type,\r\n                      });\r\n  \r\n                      \/\/ Ensure we're getting the highest quality image by removing any size parameters\r\n                      var downloadUrl = url;\r\n                      if (type === \"image\" && url.indexOf(\"instagram\") !== -1) {\r\n                          \/\/ Remove any size parameters to get full resolution\r\n                          downloadUrl = url.split(\"?\")[0];\r\n                      }\r\n  \r\n                      createToastContainer();\r\n                      createToast(filename, downloadId);\r\n  \r\n                      try {\r\n                          updateToastProgress(downloadId, 5, \"Connecting...\");\r\n                          console.log(\"Fetching from URL:\", downloadUrl);\r\n  \r\n                          var response = await fetch(downloadUrl, {\r\n                              signal: controller.signal,\r\n                              mode: \"cors\",\r\n                              headers: {\r\n                                  Accept: \"*\/*\",\r\n                                  \"User-Agent\": \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/91.0.4472.124 Safari\/537.36\",\r\n                              },\r\n                          });\r\n  \r\n                          if (!response.ok) {\r\n                              throw new Error(\"HTTP error! status: \" + response.status);\r\n                          }\r\n  \r\n                          var contentLength = response.headers.get(\"content-length\");\r\n                          var total = parseInt(contentLength, 10);\r\n                          var loaded = 0;\r\n  \r\n                          updateToastProgress(downloadId, 10, \"Downloading...\");\r\n  \r\n                          var reader = response.body.getReader();\r\n                          var chunks = [];\r\n  \r\n                          while (true) {\r\n                              var result = await reader.read();\r\n                              var done = result.done;\r\n                              var value = result.value;\r\n  \r\n                              if (done) break;\r\n  \r\n                              chunks.push(value);\r\n                              loaded += value.length;\r\n  \r\n                              if (total) {\r\n                                  var progress = 10 + (loaded \/ total) * 80; \/\/ 10% to 90%\r\n                                  updateToastProgress(\r\n                                      downloadId,\r\n                                      progress,\r\n                                      \"Downloaded \" + formatBytes(loaded) + (total ? \" of \" + formatBytes(total) : \"\")\r\n                                  );\r\n                              } else {\r\n                                  updateToastProgress(downloadId, 50, \"Downloaded \" + formatBytes(loaded));\r\n                              }\r\n                          }\r\n  \r\n                          updateToastProgress(downloadId, 95, \"Processing...\");\r\n  \r\n                          \/\/ Create blob and download\r\n                          var blob = new Blob(chunks);\r\n                          var blobUrl = URL.createObjectURL(blob);\r\n  \r\n                          \/\/ Use a hidden link to download without opening a new tab\r\n                          var link = document.createElement(\"a\");\r\n                          link.href = blobUrl;\r\n                          link.download = filename;\r\n                          link.style.display = \"none\";\r\n                          document.body.appendChild(link);\r\n  \r\n                          \/\/ Use click() method to trigger download without opening a new tab\r\n                          link.click();\r\n  \r\n                          \/\/ Clean up\r\n                          setTimeout(function () {\r\n                              document.body.removeChild(link);\r\n                              URL.revokeObjectURL(blobUrl);\r\n                          }, 100);\r\n  \r\n                          updateToastProgress(downloadId, 100, \"Completed!\");\r\n                          completeToast(downloadId, true, \"Download completed successfully!\");\r\n                      } catch (error) {\r\n                          if (error.name === \"AbortError\") {\r\n                              console.log(\"Download cancelled\");\r\n                          } else {\r\n                              console.error(\"Download failed:\", error);\r\n                              completeToast(downloadId, false, \"Download failed. Please try again.\");\r\n                          }\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Format bytes helper function\r\n                  function formatBytes(bytes, decimals) {\r\n                      decimals = decimals || 2;\r\n                      if (bytes === 0) return \"0 Bytes\";\r\n                      var k = 1024;\r\n                      var dm = decimals < 0 ? 0 : decimals;\r\n                      var sizes = [\"Bytes\", \"KB\", \"MB\", \"GB\"];\r\n                      var i = Math.floor(Math.log(bytes) \/ Math.log(k));\r\n                      return parseFloat((bytes \/ Math.pow(k, i)).toFixed(dm)) + \" \" + sizes[i];\r\n                  }\r\n  \r\n                  \/\/ Handle cancel button clicks\r\n                  $(document).on(\"click\", \".cancel-download\", function () {\r\n                      var downloadId = parseInt($(this).data(\"download-id\"));\r\n                      cancelDownload(downloadId);\r\n                  });\r\n  \r\n                  \/\/ Check for hash parameter on page load to set active tab\r\n                  var hashTab = window.location.hash.substring(1);\r\n                  if (hashTab && [\"posts\", \"stories\", \"highlights\", \"reels\"].indexOf(hashTab) !== -1) {\r\n                      activeTab = hashTab;\r\n                  }\r\n  \r\n                  \/\/ Global function to pause all videos except the current one\r\n                  function pauseAllVideosExcept(currentVideo) {\r\n                      $(\"video\").each(function () {\r\n                          if (this !== currentVideo) {\r\n                              try {\r\n                                  if (!this.paused) {\r\n                                      this.pause();\r\n                                  }\r\n                              } catch (e) {\r\n                                  console.warn(\"Error pausing video:\", e);\r\n                              }\r\n                          }\r\n                      });\r\n  \r\n                      \/\/ Reset all video controls to show play buttons and thumbnails\r\n                      $(\".post-video, .story-video, .reel-video\")\r\n                          .not($(currentVideo))\r\n                          .each(function () {\r\n                              var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                              var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                              var playBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                              var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                              $(this).hide();\r\n                              container.find(\".post-thumb, .story-thumb, .reel-thumb\").show();\r\n                              playBtn.show().html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              fullscreenBtn.hide();\r\n                          });\r\n                  }\r\n  \r\n                  \/\/ Paste button functionality\r\n                  $(\"#paste-btn\").on(\"click\", function () {\r\n                      if (navigator.clipboard && navigator.clipboard.readText) {\r\n                          navigator.clipboard\r\n                              .readText()\r\n                              .then(function (text) {\r\n                                  $(\"#input-url\").val(text);\r\n                              })\r\n                              .catch(function (err) {\r\n                                  console.error(\"Failed to read clipboard: \", err);\r\n                              });\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Function to determine if media is video\r\n                  function isVideo(post) {\r\n                      return (\r\n                          post &&\r\n                          (post.media_type === 2 ||\r\n                              post.video_versions ||\r\n                              (post.carousel_media && post.carousel_media[0] && post.carousel_media[0].video_versions))\r\n                      );\r\n                  }\r\n  \r\n                  \/\/ Function to get media URL (image or video)\r\n                  function getMediaUrl(post) {\r\n                      if (isVideo(post)) {\r\n                          \/\/ Get video URL - check all possible paths in the API response\r\n                          var videoUrl = \"\";\r\n                          if (post && post.video_versions && post.video_versions[0]) {\r\n                              videoUrl = post.video_versions[0].url;\r\n                          } else if (\r\n                              post &&\r\n                              post.carousel_media &&\r\n                              post.carousel_media[0] &&\r\n                              post.carousel_media[0].video_versions &&\r\n                              post.carousel_media[0].video_versions[0]\r\n                          ) {\r\n                              videoUrl = post.carousel_media[0].video_versions[0].url;\r\n                          } else if (post && post.media && post.media.video_versions && post.media.video_versions[0]) {\r\n                              videoUrl = post.media.video_versions[0].url;\r\n                          }\r\n                          console.log(\"Video URL found:\", videoUrl);\r\n                          return videoUrl;\r\n                      } else {\r\n                          \/\/ Get image URL - check all possible paths in the API response\r\n                          var imageUrl = \"\";\r\n                          if (post && post.image_versions && post.image_versions.items && post.image_versions.items[0]) {\r\n                              imageUrl = post.image_versions.items[0].url;\r\n                          } else if (\r\n                              post &&\r\n                              post.carousel_media &&\r\n                              post.carousel_media[0] &&\r\n                              post.carousel_media[0].image_versions &&\r\n                              post.carousel_media[0].image_versions.items &&\r\n                              post.carousel_media[0].image_versions.items[0]\r\n                          ) {\r\n                              imageUrl = post.carousel_media[0].image_versions.items[0].url;\r\n                          } else if (\r\n                              post &&\r\n                              post.media &&\r\n                              post.media.image_versions &&\r\n                              post.media.image_versions.items &&\r\n                              post.media.image_versions.items[0]\r\n                          ) {\r\n                              imageUrl = post.media.image_versions.items[0].url;\r\n                          }\r\n                          return imageUrl;\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Function to get media thumbnail\r\n                  function getMediaThumbnail(post) {\r\n                      \/\/ For videos, use the first frame as thumbnail\r\n                      \/\/ For images, use the image itself\r\n                      var thumbnailUrl = \"\";\r\n                      if (post && post.image_versions && post.image_versions.items && post.image_versions.items[0]) {\r\n                          thumbnailUrl = post.image_versions.items[0].url;\r\n                      } else if (\r\n                          post &&\r\n                          post.carousel_media &&\r\n                          post.carousel_media[0] &&\r\n                          post.carousel_media[0].image_versions &&\r\n                          post.carousel_media[0].image_versions.items &&\r\n                          post.carousel_media[0].image_versions.items[0]\r\n                      ) {\r\n                          thumbnailUrl = post.carousel_media[0].image_versions.items[0].url;\r\n                      } else if (\r\n                          post &&\r\n                          post.media &&\r\n                          post.media.image_versions &&\r\n                          post.media.image_versions.items &&\r\n                          post.media.image_versions.items[0]\r\n                      ) {\r\n                          thumbnailUrl = post.media.image_versions.items[0].url;\r\n                      }\r\n                      return thumbnailUrl;\r\n                  }\r\n  \r\n                  \/\/ Function to create and play video directly in the card\r\n                  function createAndPlayVideo(container, videoUrl, thumbnailUrl) {\r\n                      \/\/ Remove any existing video\r\n                      container.find('video').remove();\r\n  \r\n                      \/\/ Create new video element\r\n                      const video = $('<video>', {\r\n                          class: 'reel-video',\r\n                          controls: true,\r\n                          playsInline: true,\r\n                          preload: 'auto',\r\n                          muted: true \/\/ Start muted to allow autoplay\r\n                      });\r\n  \r\n                      \/\/ Set up video source\r\n                      const source = $('<source>', {\r\n                          src: videoUrl,\r\n                          type: 'video\/mp4'\r\n                      });\r\n  \r\n                      video.append(source);\r\n                      container.append(video);\r\n  \r\n                      \/\/ Set up video event listeners\r\n                      video.on('loadeddata', function () {\r\n                          \/\/ Video is ready to play\r\n                          console.log('Video data loaded');\r\n                          \/\/ Unmute the video once it's loaded\r\n                          this.muted = false;\r\n                      });\r\n  \r\n                      video.on('error', function (e) {\r\n                          console.error('Video error:', e);\r\n                          \/\/ Show thumbnail if video fails to load\r\n                          container.find('.reel-thumb').show();\r\n                          video.remove();\r\n                      });\r\n  \r\n                      \/\/ Return the video element\r\n                      return video[0];\r\n                  }\r\n  \r\n                  \/\/ Function to create fullscreen video modal\r\n                  function createFullscreenModal(videoUrl, title) {\r\n                      \/\/ Simply open in a new tab instead of creating a modal\r\n                      window.open(videoUrl, \"_blank\");\r\n                  }\r\n  \r\n                  \/\/ Function to load stories\r\n                  function loadStories(profileUrl) {\r\n                      if (loadedTabs.stories) return;\r\n  \r\n                      $(\"#tab-stories\").html(\r\n                          '<div class=\"skeleton-stories-container\">' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          \"<\/div>\"\r\n                      );\r\n  \r\n                      var storiesForm = new FormData();\r\n                      storiesForm.append(\"profile\", profileUrl);\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/media\/stories\",\r\n                          type: \"POST\",\r\n                          data: storiesForm,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (storyRes) {\r\n                              var stories =\r\n                                  storyRes && storyRes.data && storyRes.data.data && storyRes.data.data.items ? storyRes.data.data.items : [];\r\n                              $(\"#tab-stories\").empty();\r\n                              if (!stories.length) {\r\n                                  $(\"#tab-stories\").html(\"<p class='no-result'>No stories found.<\/p>\");\r\n                                  return;\r\n                              }\r\n  \r\n                              var storiesHTML = '<div class=\"stories-container\">';\r\n  \r\n                              for (var index = 0; index < stories.length; index++) {\r\n                                  var story = stories[index];\r\n                                  var isStoryVideo = isVideo(story);\r\n                                  var mediaUrl = getMediaUrl(story);\r\n                                  var thumbnail = getMediaThumbnail(story);\r\n                                  var time = new Date(story && story.taken_at ? story.taken_at * 1000 : Date.now()).toLocaleDateString();\r\n                                  var storyId = story && story.id ? story.id : \"story-\" + index;\r\n  \r\n                                  storiesHTML +=\r\n                                      '<div class=\"story-card\" style=\"animation-delay: ' +\r\n                                      index * 0.05 +\r\n                                      's\">' +\r\n                                      '<div class=\"story-img-container\" data-media=\"' +\r\n                                      mediaUrl +\r\n                                      '\" data-type=\"' +\r\n                                      (isStoryVideo ? \"video\" : \"image\") +\r\n                                      '\">' +\r\n                                      '<img decoding=\"async\" src=\"' +\r\n                                      thumbnail +\r\n                                      '\" class=\"story-thumb\" alt=\"IG Story\" loading=\"lazy\"\/>' +\r\n                                      (isStoryVideo\r\n                                          ? '<video src=\"' +\r\n                                          mediaUrl +\r\n                                          '\" class=\"story-video\" controls playsInline style=\"display:none; width:100%; height:100%; object-fit:cover; position:absolute; top:0; left:0;\"><\/video>'\r\n                                          : \"\") +\r\n                                      '<div class=\"story-overlay\">' +\r\n                                      '<button class=\"story-view-btn\">' +\r\n                                      (isStoryVideo ? '<i class=\"fa-solid fa-play\"><\/i>' : '<i class=\"fa-solid fa-eye\"><\/i>') +\r\n                                      \"<\/button>\" +\r\n                                      (isStoryVideo\r\n                                          ? '<button class=\"story-fullscreen-btn\" style=\"display:none;\"><i class=\"fa-solid fa-expand\"><\/i><\/button>'\r\n                                          : \"\") +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"story-meta\">' +\r\n                                      '<div class=\"story-stats-row\">' +\r\n                                      '<small class=\"time\">' +\r\n                                      time +\r\n                                      \"<\/small>\" +\r\n                                      '<button class=\"story-download-btn\" data-url=\"' +\r\n                                      mediaUrl +\r\n                                      '\" data-filename=\"instagram_story_' +\r\n                                      storyId +\r\n                                      \".\" +\r\n                                      (isStoryVideo ? \"mp4\" : \"jpg\") +\r\n                                      '\" data-type=\"' +\r\n                                      (isStoryVideo ? \"video\" : \"image\") +\r\n                                      '\">' +\r\n                                      '<i class=\"fa-solid fa-download\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              storiesHTML += \"<\/div>\";\r\n  \r\n                              $(\"#tab-stories\").html(storiesHTML);\r\n                              loadedTabs.stories = true;\r\n  \r\n                              \/\/ Add media type indicators\r\n                              setTimeout(addMediaTypeIndicators, 100);\r\n                          },\r\n                          error: function () {\r\n                              $(\"#error-message\").text(\"Failed to load stories. Please try again later\").show();\r\n                              $(\"#tab-stories\").html(\"<p class='no-result'>Failed to load stories.<\/p>\");\r\n                          },\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Function to load highlights\r\n                  function loadHighlights(profileUrl) {\r\n                      if (loadedTabs.highlights) return;\r\n  \r\n                      $(\"#tab-highlights\").html(\r\n                          '<div class=\"skeleton-highlights-container\">' +\r\n                          '<div class=\"skeleton-highlight\"><div class=\"skeleton-highlight-img\"><\/div><div class=\"skeleton-highlight-title\"><\/div><\/div>' +\r\n                          '<div class=\"skeleton-highlight\"><div class=\"skeleton-highlight-img\"><\/div><div class=\"skeleton-highlight-title\"><\/div><\/div>' +\r\n                          '<div class=\"skeleton-highlight\"><div class=\"skeleton-highlight-img\"><\/div><div class=\"skeleton-highlight-title\"><\/div><\/div>' +\r\n                          '<div class=\"skeleton-highlight\"><div class=\"skeleton-highlight-img\"><\/div><div class=\"skeleton-highlight-title\"><\/div><\/div>' +\r\n                          \"<\/div>\"\r\n                      );\r\n  \r\n                      var highlightsForm = new FormData();\r\n                      highlightsForm.append(\"profile\", profileUrl);\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/media\/highlights\",\r\n                          type: \"POST\",\r\n                          data: highlightsForm,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (highlightRes) {\r\n                              var highlights =\r\n                                  highlightRes && highlightRes.data && highlightRes.data.data && highlightRes.data.data.items\r\n                                      ? highlightRes.data.data.items\r\n                                      : [];\r\n                              $(\"#tab-highlights\").empty();\r\n  \r\n                              if (!highlights.length) {\r\n                                  $(\"#tab-highlights\").html(\"<p class='no-result'>No highlights found.<\/p>\");\r\n                                  return;\r\n                              }\r\n  \r\n                              var highlightsHTML = '<div class=\"highlights-container\">';\r\n  \r\n                              for (var index = 0; index < highlights.length; index++) {\r\n                                  var highlight = highlights[index];\r\n                                  var originalCoverImg = \"\";\r\n  \r\n                                  if (\r\n                                      highlight &&\r\n                                      highlight.cover_media &&\r\n                                      highlight.cover_media.cropped_image_version &&\r\n                                      highlight.cover_media.cropped_image_version.url\r\n                                  ) {\r\n                                      originalCoverImg = highlight.cover_media.cropped_image_version.url;\r\n                                  }\r\n  \r\n                                  var coverImg = originalCoverImg\r\n                                      ? \"https:\/\/tools.xrespond.com\/api\/instagram\/highlights\/proxy-image?url=\" + encodeURIComponent(originalCoverImg)\r\n                                      : \"https:\/\/via.placeholder.com\/60?text=No+Image\";\r\n  \r\n                                  var title = highlight && highlight.title ? highlight.title : \"Highlight\";\r\n                                  var highlightId = highlight && highlight.id ? highlight.id : \"highlight-\" + index;\r\n                                  var username = highlight && highlight.user && highlight.user.username ? highlight.user.username : \"\";\r\n                                  var isVerified = highlight && highlight.user && highlight.user.is_verified ? true : false;\r\n                                  var mediaCount = highlight && highlight.media_count ? highlight.media_count : 0;\r\n  \r\n                                  \/\/ Create the highlight items container\r\n                                  var itemsHtml = '';\r\n                                  if (highlight.items && Array.isArray(highlight.items) && highlight.items.length > 0) {\r\n                                      itemsHtml = '<div class=\"highlight-items\" style=\"display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;\">';\r\n                                      highlight.items.forEach(function (media, mediaIndex) {\r\n                                          var imgUrl = '';\r\n                                          var isVideo = false;\r\n  \r\n                                          \/\/ Check for video\r\n                                          if (media.video_versions && media.video_versions.length > 0) {\r\n                                              imgUrl = media.video_versions[0].url;\r\n                                              isVideo = true;\r\n                                          } else if (media.cover_media && media.cover_media.cropped_image_version) {\r\n                                              imgUrl = media.cover_media.cropped_image_version.url;\r\n                                          } else if (media.image_versions2 && media.image_versions2.candidates && media.image_versions2.candidates.length > 0) {\r\n                                              imgUrl = media.image_versions2.candidates[0].url;\r\n                                          }\r\n  \r\n                                          var proxyImg = imgUrl\r\n                                              ? \"https:\/\/tools.xrespond.com\/api\/instagram\/highlights\/proxy-image?url=\" + encodeURIComponent(imgUrl)\r\n                                              : \"https:\/\/via.placeholder.com\/60?text=No+Image\";\r\n  \r\n                                          var mediaType = isVideo ? 'video' : 'image';\r\n                                          var mediaTitle = `${title}-${mediaIndex + 1}`;\r\n  \r\n                                          itemsHtml += `\r\n                                      <div class=\"highlight-item\" style=\"display:flex;flex-direction:column;align-items:center;\">\r\n                                          <div class=\"highlight-img-container\" style=\"position:relative;\">\r\n                                              <img decoding=\"async\" src=\"${proxyImg}\"\r\n                                                   alt=\"Highlight Media\"\r\n                                                   style=\"width:80px;height:80px;object-fit:cover;border-radius:8px;cursor:pointer;border:1px solid #dbdbdb;\"\r\n                                                   onclick=\"window.showMediaModal('${proxyImg}', '${mediaType}', '${mediaTitle}')\" \/>\r\n                                              <div class=\"highlight-overlay\" style=\"position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.3);border-radius:8px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.2s;\">\r\n                                                  <button class=\"highlight-view-btn\" style=\"background:none;border:none;color:white;cursor:pointer;font-size:20px;\">\r\n                                                      <i class=\"fa-solid fa-${isVideo ? 'play' : 'expand'}\"><\/i>\r\n                                                  <\/button>\r\n                                              <\/div>\r\n                                          <\/div>\r\n                                          <button class=\"download-btn\"\r\n                                                  onclick=\"forceDownloadImage('${proxyImg}', '${mediaTitle}.jpg')\"\r\n                                                  style=\"margin-top:4px;font-size:13px;color:#1e88e5;text-decoration:underline;background:none;border:none;cursor:pointer;\">\r\n                                              Download\r\n                                          <\/button>\r\n                                      <\/div>\r\n                                  `;\r\n                                      });\r\n                                      itemsHtml += '<\/div>';\r\n                                  }\r\n  \r\n                                  highlightsHTML +=\r\n                                      '<div class=\"highlight-card\" style=\"animation-delay: ' +\r\n                                      index * 0.05 +\r\n                                      's\" data-id=\"' +\r\n                                      highlightId +\r\n                                      '\">' +\r\n                                      '<div class=\"highlight-img-container\" style=\"position:relative;\">' +\r\n                                      '<img decoding=\"async\" src=\"' +\r\n                                      coverImg +\r\n                                      '\" class=\"highlight-thumb\" alt=\"IG Highlight: ' +\r\n                                      title +\r\n                                      '\" ' +\r\n                                      'loading=\"lazy\" onerror=\"this.onerror=null; this.src=\\'https:\/\/via.placeholder.com\/60?text=No+Image\\';\"\/>' +\r\n                                      '<div class=\"highlight-overlay\" style=\"position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.3);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.2s;\">' +\r\n                                      '<button class=\"highlight-view-btn\" onclick=\"window.showMediaModal(\\'' +\r\n                                      coverImg +\r\n                                      '\\', \\'image\\', \\'' +\r\n                                      title +\r\n                                      '\\')\" style=\"background:none;border:none;color:white;cursor:pointer;font-size:20px;\">' +\r\n                                      '<i class=\"fa-solid fa-expand\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"highlight-meta\">' +\r\n                                      '<p class=\"highlight-title\">' +\r\n                                      title +\r\n                                      \"<\/p>\" +\r\n                                      (mediaCount > 0\r\n                                          ? '<span class=\"highlight-count\"><i class=\"fa-solid fa-photo-film\"><\/i> ' + mediaCount + \"<\/span>\"\r\n                                          : \"\") +\r\n                                      (username\r\n                                          ? '<span class=\"highlight-username\">@' +\r\n                                          username +\r\n                                          (isVerified ? ' <i class=\"fa-solid fa-badge-check\"><\/i>' : \"\") +\r\n                                          \"<\/span>\"\r\n                                          : \"\") +\r\n                                      \"<\/div>\" +\r\n                                      itemsHtml +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              highlightsHTML += \"<\/div>\";\r\n                              $(\"#tab-highlights\").html(highlightsHTML);\r\n                              loadedTabs.highlights = true;\r\n  \r\n                              \/\/ Add hover effects for highlight items\r\n                              $('.highlight-img-container').hover(\r\n                                  function () {\r\n                                      $(this).find('.highlight-overlay').css('opacity', '1');\r\n                                  },\r\n                                  function () {\r\n                                      $(this).find('.highlight-overlay').css('opacity', '0');\r\n                                  }\r\n                              );\r\n                          },\r\n                          error: function (xhr) {\r\n                              $(\"#tab-highlights\").html(\"<p class='no-result'>Failed to load highlights.<\/p>\");\r\n                          },\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Function to load reels\r\n                  function loadReels(profileUrl) {\r\n                      if (loadedTabs.reels) return;\r\n  \r\n                      $(\"#tab-reels\").html(\r\n                          '<div class=\"skeleton-reels-grid\">' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          \"<\/div>\"\r\n                      );\r\n  \r\n                      var reelsForm = new FormData();\r\n                      reelsForm.append(\"profile\", profileUrl);\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/media\/reels\",\r\n                          type: \"POST\",\r\n                          data: reelsForm,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (reelRes) {\r\n  \r\n                              var reels =\r\n                                  reelRes && reelRes.data && reelRes.data.data && reelRes.data.data.items ? reelRes.data.data.items : [];\r\n                              $(\"#tab-reels\").empty();\r\n                              if (!reels.length) {\r\n                                  $(\"#tab-reels\").html(\"<p class='no-result'>No reels found.<\/p>\");\r\n                                  return;\r\n                              }\r\n  \r\n                              var reelsHTML = '<div class=\"reels-grid\">';\r\n  \r\n                              for (var index = 0; index < reels.length; index++) {\r\n                                  var reel = reels[index];\r\n                                  var videoUrl = \"\";\r\n                                  if (reel && reel.video_versions && reel.video_versions[0]) {\r\n                                      videoUrl = reel.video_versions[0].url;\r\n                                  } else if (reel && reel.media && reel.media.video_versions && reel.media.video_versions[0]) {\r\n                                      videoUrl = reel.media.video_versions[0].url;\r\n                                  }\r\n  \r\n                                  var thumbnail = \"\";\r\n                                  if (reel && reel.image_versions && reel.image_versions.items && reel.image_versions.items[0]) {\r\n                                      thumbnail = reel.image_versions.items[0].url;\r\n                                  } else if (\r\n                                      reel &&\r\n                                      reel.media &&\r\n                                      reel.media.image_versions &&\r\n                                      reel.media.image_versions.items &&\r\n                                      reel.media.image_versions.items[0]\r\n                                  ) {\r\n                                      thumbnail = reel.media.image_versions.items[0].url;\r\n                                  }\r\n  \r\n                                  var caption = reel && reel.caption && reel.caption.text ? reel.caption.text : \"\";\r\n                                  var time = new Date(reel && reel.taken_at ? reel.taken_at * 1000 : Date.now()).toLocaleDateString();\r\n                                  var reelId = reel && reel.id ? reel.id : \"reel-\" + index;\r\n                                  var views =\r\n                                      reel && reel.view_count\r\n                                          ? reel.view_count\r\n                                          : reel && reel.media && reel.media.view_count\r\n                                              ? reel.media.view_count\r\n                                              : 0;\r\n                                  var likes =\r\n                                      reel && reel.like_count\r\n                                          ? reel.like_count\r\n                                          : reel && reel.media && reel.media.like_count\r\n                                              ? reel.media.like_count\r\n                                              : 0;\r\n  \r\n                                  \/\/ FIXED: Use data-url attribute for download button\r\n                                  reelsHTML +=\r\n                                      '<div class=\"reel-card\" style=\"animation-delay: ' +\r\n                                      index * 0.05 +\r\n                                      's\">' +\r\n                                      '<div class=\"reel-img-container\" data-media=\"' +\r\n                                      videoUrl +\r\n                                      '\" data-type=\"video\">' +\r\n                                      '<img decoding=\"async\" src=\"' +\r\n                                      thumbnail +\r\n                                      '\" class=\"reel-thumb\" alt=\"IG Reel\" loading=\"lazy\"\/>' +\r\n                                      '<video src=\"' +\r\n                                      videoUrl +\r\n                                      '\" class=\"reel-video\" controls playsInline style=\"display:none; width:100%; height:100%; object-fit:cover; position:absolute; top:0; left:0;\"><\/video>' +\r\n                                      '<div class=\"reel-overlay\">' +\r\n                                      '<button class=\"reel-view-btn\">' +\r\n                                      '<i class=\"fa-solid fa-play\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      '<button class=\"reel-fullscreen-btn\" style=\"display:none;\">' +\r\n                                      '<i class=\"fa-solid fa-expand\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"reel-meta\">' +\r\n                                      '<p class=\"caption\">' +\r\n                                      caption +\r\n                                      \"<\/p>\" +\r\n                                      '<div class=\"reel-stats-row\">' +\r\n                                      '<div class=\"reel-stats\">' +\r\n                                      '<span><i class=\"fa-solid fa-play\"><\/i> ' +\r\n                                      formatNumber(views) +\r\n                                      \"<\/span>\" +\r\n                                      '<span><i class=\"fa-solid fa-heart\"><\/i> ' +\r\n                                      formatNumber(likes) +\r\n                                      \"<\/span>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<button class=\"reel-download-btn\" data-url=\"' +\r\n                                      videoUrl +\r\n                                      '\" data-filename=\"instagram_reel_' +\r\n                                      reelId +\r\n                                      '.mp4\" data-type=\"video\">' +\r\n                                      '<i class=\"fa-solid fa-download\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<small class=\"time\">' +\r\n                                      time +\r\n                                      \"<\/small>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              reelsHTML += \"<\/div>\";\r\n  \r\n                              $(\"#tab-reels\").html(reelsHTML);\r\n                              loadedTabs.reels = true;\r\n  \r\n                              \/\/ Add media type indicators\r\n                              setTimeout(addMediaTypeIndicators, 100);\r\n                          },\r\n                          error: function (xhr) {\r\n                              console.error(\"Reels error:\", xhr);\r\n                              $(\"#tab-reels\").html(\"<p class='no-result'>Failed to load reels.<\/p>\");\r\n                          },\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Function to load posts\r\n                  function loadPosts(profileUrl) {\r\n                      $(\"#tab-posts\").html(\r\n                          '<div class=\"skeleton-posts-grid\">' +\r\n                          Array(6).fill().map(() =>\r\n                              '<div class=\"skeleton-post\">' +\r\n                              '<div class=\"skeleton-post-img\"><\/div>' +\r\n                              '<div class=\"skeleton-post-meta\">' +\r\n                              '<div class=\"skeleton-post-stats\">' +\r\n                              '<div class=\"skeleton-post-stat\"><\/div>' +\r\n                              '<div class=\"skeleton-post-stat\"><\/div>' +\r\n                              '<\/div>' +\r\n                              '<div class=\"skeleton-post-caption\"><\/div>' +\r\n                              '<div class=\"skeleton-post-caption-short\"><\/div>' +\r\n                              '<div class=\"skeleton-post-time\"><\/div>' +\r\n                              '<\/div>' +\r\n                              '<\/div>'\r\n                          ).join('') +\r\n                          '<\/div>'\r\n                      );\r\n                      var postsForm = new FormData();\r\n                      postsForm.append(\"profile\", profileUrl);\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/media\/posts\",\r\n                          type: \"POST\",\r\n                          data: postsForm,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (postRes) {\r\n  \r\n                              var posts =\r\n                                  postRes && postRes.data && postRes.data.data && postRes.data.data.items ? postRes.data.data.items : [];\r\n                              $(\"#tab-posts\").empty();\r\n                              if (!posts.length) {\r\n                                  $(\"#tab-posts\").html(\"<p class='no-result'>No posts found.<\/p>\");\r\n                                  return;\r\n                              }\r\n  \r\n                              var postHTML = '<div class=\"posts-grid\">';\r\n  \r\n                              for (var index = 0; index < posts.length; index++) {\r\n                                  var post = posts[index];\r\n                                  var isPostVideo = isVideo(post);\r\n                                  var mediaUrl = getMediaUrl(post);\r\n                                  var thumbnail = getMediaThumbnail(post);\r\n                                  var caption = post && post.caption && post.caption.text ? post.caption.text : \"\";\r\n                                  var time = new Date(post && post.taken_at ? post.taken_at * 1000 : Date.now()).toLocaleDateString();\r\n                                  var postId = post && post.id ? post.id : \"post-\" + index;\r\n                                  var likes = post && post.like_count ? post.like_count : 0;\r\n                                  var comments = post && post.comment_count ? post.comment_count : 0;\r\n  \r\n                                  postHTML +=\r\n                                      '<div class=\"post-card\" style=\"animation-delay: ' +\r\n                                      index * 0.05 +\r\n                                      's\">' +\r\n                                      '<div class=\"post-img-container\" data-media=\"' +\r\n                                      mediaUrl +\r\n                                      '\" data-type=\"' +\r\n                                      (isPostVideo ? \"video\" : \"image\") +\r\n                                      '\">' +\r\n                                      '<img decoding=\"async\" src=\"' +\r\n                                      thumbnail +\r\n                                      '\" class=\"post-thumb\" alt=\"IG Post\" loading=\"lazy\"\/>' +\r\n                                      (isPostVideo\r\n                                          ? '<video src=\"' +\r\n                                          mediaUrl +\r\n                                          '\" class=\"post-video\" controls playsInline style=\"display:none; width:100%; height:100%; object-fit:cover; position:absolute; top:0; left:0;\"><\/video>'\r\n                                          : \"\") +\r\n                                      '<div class=\"post-overlay\">' +\r\n                                      '<button class=\"post-view-btn\">' +\r\n                                      (isPostVideo ? '<i class=\"fa-solid fa-play\"><\/i>' : '<i class=\"fa-solid fa-eye\"><\/i>') +\r\n                                      \"<\/button>\" +\r\n                                      (isPostVideo\r\n                                          ? '<button class=\"post-fullscreen-btn\" style=\"display:none;\"><i class=\"fa-solid fa-expand\"><\/i><\/button>'\r\n                                          : \"\") +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"post-meta\">' +\r\n                                      '<div class=\"post-stats-row\">' +\r\n                                      '<div class=\"post-stats\">' +\r\n                                      '<span><i class=\"fa-solid fa-heart\"><\/i> ' +\r\n                                      formatNumber(likes) +\r\n                                      \"<\/span>\" +\r\n                                      '<span><i class=\"fa-solid fa-comment\"><\/i> ' +\r\n                                      formatNumber(comments) +\r\n                                      \"<\/span>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<button class=\"post-download-btn\" data-url=\"' +\r\n                                      mediaUrl +\r\n                                      '\" data-filename=\"instagram_post_' +\r\n                                      postId +\r\n                                      \".\" +\r\n                                      (isPostVideo ? \"mp4\" : \"jpg\") +\r\n                                      '\" data-type=\"' +\r\n                                      (isPostVideo ? \"video\" : \"image\") +\r\n                                      '\">' +\r\n                                      '<i class=\"fa-solid fa-download\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<p class=\"caption\">' +\r\n                                      caption +\r\n                                      \"<\/p>\" +\r\n                                      '<small class=\"time\">' +\r\n                                      time +\r\n                                      \"<\/small>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              postHTML += \"<\/div>\";\r\n  \r\n                              $(\"#tab-posts\").html(postHTML);\r\n                              loadedTabs.posts = true;\r\n  \r\n                              \/\/ Add media type indicators\r\n                              setTimeout(addMediaTypeIndicators, 100);\r\n                          },\r\n                          error: function (xhr) {\r\n                              console.error(\"Posts error:\", xhr);\r\n                              $(\"#tab-posts\").html(\"<p class='no-result'>Failed to load posts.<\/p>\");\r\n                          },\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Enhanced download button click handlers - ONLY for explicit download buttons\r\n                  $(document).on(\"click\", \".post-download-btn, .story-download-btn, .reel-download-btn\", function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      \/\/ Get the media URL from data-media if data-url is not available (for backward compatibility)\r\n                      var url = $(this).attr(\"data-url\") || $(this).data(\"url\") || $(this).data(\"media\");\r\n                      var filename = $(this).attr(\"data-filename\") || $(this).data(\"filename\");\r\n                      var type = $(this).attr(\"data-type\") || $(this).data(\"type\");\r\n  \r\n                      console.log(\"Download button clicked:\", { url: url, filename: filename, type: type });\r\n  \r\n                      \/\/ Ensure we're getting the highest quality image\r\n                      if (type === \"image\" && url && url.indexOf(\"instagram\") !== -1) {\r\n                          \/\/ Remove any size parameters to get full resolution\r\n                          url = url.split(\"?\")[0];\r\n                      }\r\n  \r\n                      if (url && filename) {\r\n                          \/\/ Use downloadWithProgress instead of direct fetch to prevent new tab\r\n                          downloadWithProgress(url, filename, type);\r\n                      } else {\r\n                          console.error(\"Missing download data:\", { url: url, filename: filename, type: type });\r\n                          alert(\"Download information is missing. Please try again.\");\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Check if account type is selected before allowing API request\r\n                  $(\".view-btn\").on(\"click\", function (e) {\r\n                      e.preventDefault();\r\n  \r\n                      var profileUrl = $(\".ig-input-area input\").val().trim();\r\n  \r\n                      if (profileUrl === \"\") {\r\n                          $(\"#error-message\").text(\"Please enter an Instagram profile URL or username\").show();\r\n                          return;\r\n                      }\r\n  \r\n                      \/\/ Open new tab on second+ searches but don't navigate to it\r\n                      \/\/ if (!isFirstSearch) {\r\n                      \/\/     var tempLink = document.createElement(\"a\");\r\n                      \/\/     tempLink.href = \"https:\/\/appsumo.8odi.net\/c\/5721360\/2819681\/7443\/#\" + activeTab;\r\n                      \/\/     tempLink.target = \"_blank\";\r\n                      \/\/     tempLink.rel = \"noopener noreferrer\";\r\n                      \/\/     tempLink.style.display = \"none\";\r\n                      \/\/     document.body.appendChild(tempLink);\r\n  \r\n                      \/\/     setTimeout(function () {\r\n                      \/\/         tempLink.click();\r\n                      \/\/         document.body.removeChild(tempLink);\r\n                      \/\/     }, 100);\r\n                      \/\/ } else {\r\n                      \/\/     isFirstSearch = false;\r\n                      \/\/ }\r\n  \r\n                      \/\/ Reset loaded tabs\r\n                      loadedTabs = {\r\n                          posts: false,\r\n                          stories: false,\r\n                          highlights: false,\r\n                          reels: false,\r\n                      };\r\n  \r\n                      var formData = new FormData();\r\n                      formData.append(\"profile\", profileUrl);\r\n  \r\n                      $(\".view-btn\").prop(\"disabled\", true).html(\"<span style='font-weight: 600;'>Loading...<\/span>\");\r\n  \r\n                      $(\".ig-result\").html(\r\n                          '<div class=\"skeleton-profile\">' +\r\n                          '<div class=\"skeleton-profile-header\">' +\r\n                          '<div class=\"skeleton-avatar\"><\/div>' +\r\n                          '<div class=\"skeleton-profile-info\">' +\r\n                          '<div class=\"skeleton-username\"><\/div>' +\r\n                          '<div class=\"skeleton-fullname\"><\/div>' +\r\n                          '<div class=\"skeleton-stats\">' +\r\n                          '<div class=\"skeleton-stat\"><\/div>' +\r\n                          '<div class=\"skeleton-stat\"><\/div>' +\r\n                          '<div class=\"skeleton-stat\"><\/div>' +\r\n                          \"<\/div>\" +\r\n                          \"<\/div>\" +\r\n                          '<div class=\"skeleton-bio\"><\/div>' +\r\n                          '<div class=\"skeleton-tabs\">' +\r\n                          '<div class=\"skeleton-tab\"><\/div>' +\r\n                          '<div class=\"skeleton-tab\"><\/div>' +\r\n                          '<div class=\"skeleton-tab\"><\/div>' +\r\n                          '<div class=\"skeleton-tab\"><\/div>' +\r\n                          \"<\/div>\" +\r\n                          '<div class=\"skeleton-posts-grid\">' +\r\n                          \"<\/div>\" +\r\n                          \"<\/div>\"\r\n                      );\r\n                      $(\"#error-message\").hide().text(\"\");\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/profile-info\",\r\n                          type: \"POST\",\r\n                          data: formData,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (res) {\r\n                              \/\/ Add scroll function\r\n                              function scrollToProfile() {\r\n                                  const profileSection = document.querySelector('.ig-result');\r\n                                  if (profileSection) {\r\n                                      profileSection.scrollIntoView({\r\n                                          behavior: 'smooth',\r\n                                          block: 'start'\r\n                                      });\r\n                                  }\r\n                              }\r\n  \r\n                              \/\/ Modify the existing AJAX success handler in the .view-btn click event\r\n  \r\n                              setTimeout(scrollToProfile, 500);\r\n                              if (res.data.status === \"error\") {\r\n                                  $(\"#error-message\").text(res.data.message).show();\r\n  \r\n                                  loadedTabs.posts = false;\r\n                                  loadedTabs.stories = false;\r\n                                  loadedTabs.highlights = false;\r\n                                  loadedTabs.reels = false;\r\n                                  $(\".view-btn\").prop(\"disabled\", false).html(\"<i class='fa-solid fa-unlock'><\/i> View Profile\");\r\n                                  \/\/ Clear any existing content in the results container\r\n                                  $(\".ig-result\").empty();\r\n  \r\n                                  \/\/ Return immediately to stop further rendering\r\n                                  return;\r\n                              }\r\n                              $(\".view-btn\").prop(\"disabled\", false).html(\"<i class='fa-solid fa-unlock'><\/i> View Profile\");\r\n  \r\n                              var data = res && res.data && res.data.data ? res.data.data : {};\r\n                              console.log(\"Profile data:\", data);\r\n  \r\n                              var profileImage = data.hd_profile_pic_url || data.profile_pic_url || \"\";\r\n                              var profileImageViewer = \"\";\r\n  \r\n                              isPrivateAccount = !!data.is_private;\r\n  \r\n                              if (profileImage) {\r\n                                  profileImageViewer =\r\n                                      '<div class=\"profile-image-container\">' +\r\n                                      '<img decoding=\"async\" class=\"profile-image\" src=\"' +\r\n                                      profileImage +\r\n                                      '\" alt=\"Profile Picture\" referrerpolicy=\"no-referrer\"\/>' +\r\n                                      '<button class=\"view-profile-img\"><i class=\"fa-solid fa-expand\"><\/i><\/button>' +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              $(\".ig-result\").html(\r\n                                  '<div class=\"ig-profile-header\">' +\r\n                                  '<div class=\"profile-header-content\">' +\r\n                                  profileImageViewer +\r\n                                  '<div class=\"profile-info\">' +\r\n                                  \"<h3>@\" +\r\n                                  (data.username || \"username\") +\r\n                                  \"<\/h3>\" +\r\n                                  \"<h4>\" +\r\n                                  (data.full_name || \"\") +\r\n                                  \"<\/h4>\" +\r\n                                  '<div class=\"stats\">' +\r\n                                  '<div class=\"stat-item\">' +\r\n                                  '<span class=\"stat-value\">' +\r\n                                  formatNumber(data.media_count || 0) +\r\n                                  \"<\/span>\" +\r\n                                  '<span class=\"stat-label\">posts<\/span>' +\r\n                                  \"<\/div>\" +\r\n                                  '<div class=\"stat-item\">' +\r\n                                  '<span class=\"stat-value\">' +\r\n                                  formatNumber(data.follower_count || 0) +\r\n                                  \"<\/span>\" +\r\n                                  '<span class=\"stat-label\">followers<\/span>' +\r\n                                  \"<\/div>\" +\r\n                                  '<div class=\"stat-item\">' +\r\n                                  '<span class=\"stat-value\">' +\r\n                                  formatNumber(data.following_count || 0) +\r\n                                  \"<\/span>\" +\r\n                                  '<span class=\"stat-label\">following<\/span>' +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\" +\r\n                                  '<div class=\"profile-bio\">' +\r\n                                  \"<p>\" +\r\n                                  (data.biography || \"\") +\r\n                                  \"<\/p>\" +\r\n                                  (data.external_url\r\n                                      ? '<a href=\"' +\r\n                                      data.external_url +\r\n                                      '\" target=\"_blank\" class=\"profile-link\"><i class=\"fa-solid fa-link\"><\/i> ' +\r\n                                      data.external_url +\r\n                                      \"<\/a>\"\r\n                                      : \"\") +\r\n                                  (data.is_private\r\n                                      ? '<div class=\"private-account-message\" style=\"width:60%; margin:auto; text-align:center; padding:10px 0;\"><i class=\"fa-solid fa-lock\"><\/i> This is a private account. Posts, stories, reels, and highlights are not visible due to Instagram\\'s privacy policy.<\/div>'\r\n                                      : \"\") +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\"\r\n                              );\r\n  \r\n                              var tabHTML =\r\n                                  '<div class=\"ig-tabs\">' +\r\n                                  '<button class=\"tab-btn active\" data-tab=\"posts\"><i class=\"fa-solid fa-grid-2\"><\/i> Posts<\/button>' +\r\n                                  '<button class=\"tab-btn\" data-tab=\"stories\"><i class=\"fa-solid fa-circle-play\"><\/i> Stories<\/button>' +\r\n                                  '<button class=\"tab-btn\" data-tab=\"highlights\"><i class=\"fa-solid fa-star\"><\/i> Highlights<\/button>' +\r\n                                  '<button class=\"tab-btn\" data-tab=\"reels\"><i class=\"fa-solid fa-film\"><\/i> Reels<\/button>' +\r\n                                  \"<\/div>\";\r\n  \r\n                              $(\".ig-result\").append(tabHTML);\r\n  \r\n                              if (isPrivateAccount) {\r\n                                  $(\".ig-result\").append(\r\n                                      '<div class=\"ig-tab-content\" id=\"tab-posts\">' +\r\n                                      '<div class=\"private-account-message\">' +\r\n                                      '<i class=\"fa-solid fa-lock\"><\/i> This content cannot be displayed due to Instagram\\'s privacy policy for private accounts.' +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"ig-tab-content\" id=\"tab-stories\" style=\"display:none;\">' +\r\n                                      '<div class=\"private-account-message\">' +\r\n                                      '<i class=\"fa-solid fa-lock\"><\/i> Stories cannot be displayed due to Instagram\\'s privacy policy for private accounts.' +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"ig-tab-content\" id=\"tab-highlights\" style=\"display:none;\">' +\r\n                                      '<div class=\"private-account-message\">' +\r\n                                      '<i class=\"fa-solid fa-lock\"><\/i> Highlights cannot be displayed due to Instagram\\'s privacy policy for private accounts.' +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"ig-tab-content\" id=\"tab-reels\" style=\"display:none;\">' +\r\n                                      '<div class=\"private-account-message\">' +\r\n                                      '<i class=\"fa-solid fa-lock\"><\/i> Reels cannot be displayed due to Instagram\\'s privacy policy for private accounts.' +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\"\r\n                                  );\r\n                                  return;\r\n                              }\r\n  \r\n                              \/\/ Public account tab content setup\r\n                              $(\".ig-result\").append(\r\n                                  '<div class=\"ig-tab-content\" id=\"tab-posts\">' +\r\n                                  '<div class=\"skeleton-posts-grid\">' +\r\n                                  Array(6)\r\n                                      .fill()\r\n                                      .map(function () {\r\n                                          return (\r\n                                              ''\r\n                                          );\r\n                                      })\r\n                                      .join(\"\") +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\" +\r\n                                  '<div class=\"ig-tab-content\" id=\"tab-stories\" style=\"display:none;\"><\/div>' +\r\n                                  '<div class=\"ig-tab-content\" id=\"tab-highlights\" style=\"display:none;\"><\/div>' +\r\n                                  '<div class=\"ig-tab-content\" id=\"tab-reels\" style=\"display:none;\"><\/div>'\r\n                              );\r\n                              loadPosts(profileUrl);\r\n                              loadedTabs.posts = true;\r\n                          },\r\n                          error: function (err) {\r\n                              $(\"#error-message\").text(\"Wrong input, please check user name\").show();\r\n  \r\n                              loadedTabs.posts = false;\r\n                              loadedTabs.stories = false;\r\n                              loadedTabs.highlights = false;\r\n                              loadedTabs.reels = false;\r\n                              $(\".view-btn\").prop(\"disabled\", false).html(\"<i class='fa-solid fa-unlock'><\/i> View Profile\");\r\n                              \/\/ Clear any existing content in the results container\r\n                              $(\".ig-result\").empty();\r\n  \r\n                              \/\/ Return immediately to stop further rendering\r\n                              return;\r\n                          },\r\n                      });\r\n                  });\r\n  \r\n                  $(document).on(\"click\", \".tab-btn\", function () {\r\n                      var tab = $(this).data(\"tab\");\r\n                      var profileUrl = $(\".ig-input-area input\").val().trim();\r\n  \r\n                      \/\/ Prevent unnecessary re-click\r\n                      if ($(this).hasClass(\"active\")) return;\r\n  \r\n                      \/\/ Store the active tab\r\n                      activeTab = tab;\r\n  \r\n                      \/\/ UI: Highlight current tab\r\n                      $(\".tab-btn\").removeClass(\"active\");\r\n                      $(this).addClass(\"active\");\r\n  \r\n                      \/\/ UI: Show tab content\r\n                      $(\".ig-tab-content\").hide();\r\n                      $(\"#tab-\" + tab).fadeIn(300);\r\n  \r\n                      \/\/ Pause any playing videos and reset buttons\r\n                      pauseAllVideosExcept(null);\r\n  \r\n                      \/\/ External link redirect (DO THIS BEFORE checking if private)\r\n                      \/\/ var externalUrl = null;\r\n                      \/\/ if (tab === \"stories\") {\r\n                      \/\/     externalUrl = \"https:\/\/amzn.to\/4k906Sg\";\r\n                      \/\/ } else if (tab === \"reels\") {\r\n                      \/\/     externalUrl = \"https:\/\/hostinger.sjv.io\/c\/5721360\/1393511\/12282\";\r\n                      \/\/ } else {\r\n                      \/\/     externalUrl = \"https:\/\/appsumo.8odi.net\/c\/5721360\/2819681\/7443\/#\" + tab;\r\n                      \/\/ }\r\n  \r\n                      \/\/ if (externalUrl) {\r\n                      \/\/     var link = document.createElement(\"a\");\r\n                      \/\/     link.href = externalUrl;\r\n                      \/\/     link.target = \"_blank\";\r\n                      \/\/     link.rel = \"noopener noreferrer nofollow\";\r\n                      \/\/     document.body.appendChild(link);\r\n                      \/\/     link.click();\r\n                      \/\/     document.body.removeChild(link);\r\n                      \/\/ }\r\n  \r\n                      \/\/ Now check if private to skip loading content\r\n                      if (isPrivateAccount) return;\r\n  \r\n                      \/\/ Load content if not already loaded\r\n                      if (tab === \"posts\" && !loadedTabs.posts && profileUrl) {\r\n                          loadPosts(profileUrl);\r\n                          loadedTabs.posts = true;\r\n                      } else if (tab === \"stories\" && !loadedTabs.stories && profileUrl) {\r\n                          loadStories(profileUrl);\r\n                          loadedTabs.stories = true;\r\n                      } else if (tab === \"highlights\" && !loadedTabs.highlights && profileUrl) {\r\n                          loadHighlights(profileUrl);\r\n                          loadedTabs.highlights = true;\r\n                      } else if (tab === \"reels\" && !loadedTabs.reels && profileUrl) {\r\n                          loadReels(profileUrl);\r\n                          loadedTabs.reels = true;\r\n                      }\r\n  \r\n                      \/\/ Add media type indicators when switching tabs\r\n                      setTimeout(addMediaTypeIndicators, 200);\r\n                  });\r\n  \r\n                  \/\/ Enhanced Profile Image Modal with Animation\r\n                  $(document).on(\"click\", \".view-profile-img\", function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      \/\/ Get the profile image source directly from the img element\r\n                      var profileImage = $(\".profile-image\").attr(\"src\");\r\n  \r\n                      console.log(\"Original profile image URL:\", profileImage);\r\n  \r\n                      if (!profileImage) {\r\n                          console.error(\"No profile image found\");\r\n                          return;\r\n                      }\r\n  \r\n                      \/\/ Ensure we're getting the highest quality image\r\n                      if (profileImage.indexOf(\"instagram\") !== -1) {\r\n                          \/\/ Remove any size parameters to get full resolution\r\n                          profileImage = profileImage.split(\"?\")[0];\r\n                      }\r\n  \r\n                      console.log(\"Cleaned profile image URL for download:\", profileImage);\r\n  \r\n                      \/\/ Remove existing modal if any\r\n                      $(\".profile-img-modal\").remove();\r\n  \r\n                      \/\/ Create modal elements step by step to ensure proper attribute setting\r\n                      var modal = $('<div class=\"ipgv-profile-img-modal\">');\r\n                      var backdrop = $('<div class=\"ipgv-modal-backdrop\">');\r\n                      var content = $('<div class=\"ipgv-modal-content\">');\r\n                      var img = $('<img class=\"ipgv-modal-img\" referrerpolicy=\"no-referrer\" alt=\"Profile Image\">');\r\n                      var actions = $('<div class=\"ipgv-modal-actions\">');\r\n                      var downloadBtn = $('<button class=\"ipgv-modal-download-btn\">');\r\n                      var closeBtn = $('<button class=\"ipgv-close-modal\">');\r\n  \r\n                      \/\/ Set image source\r\n                      img.attr(\"src\", profileImage);\r\n  \r\n                      \/\/ Set download button content and attributes using both attr() and data()\r\n                      downloadBtn.html('<i class=\"fa-solid fa-download\"><\/i> Download');\r\n                      downloadBtn.attr(\"data-url\", profileImage);\r\n                      downloadBtn.attr(\"data-filename\", \"instagram_profile_hd.jpg\");\r\n                      downloadBtn.attr(\"data-type\", \"image\");\r\n  \r\n                      \/\/ Also set using jQuery data() for redundancy\r\n                      downloadBtn.data(\"url\", profileImage);\r\n                      downloadBtn.data(\"filename\", \"instagram_profile_hd.jpg\");\r\n                      downloadBtn.data(\"type\", \"image\");\r\n  \r\n                      \/\/ Set close button\r\n                      closeBtn.html('<i class=\"fa-solid fa-xmark\"><\/i>');\r\n  \r\n                      \/\/ Assemble modal\r\n                      actions.append(downloadBtn);\r\n                      content.append(img, actions, closeBtn);\r\n                      modal.append(backdrop, content);\r\n  \r\n                      \/\/ Add modal to body\r\n                      $(\"body\").append(modal);\r\n  \r\n                      \/\/ Debug: Verify attributes are set correctly\r\n                      setTimeout(function () {\r\n                          var btn = $(\".ipgv-modal-download-btn\");\r\n                          console.log(\"Download button element:\", btn[0]);\r\n                          console.log(\"Download button outerHTML:\", btn[0].outerHTML);\r\n                          console.log(\"data-url attribute:\", btn.attr(\"data-url\"));\r\n                          console.log(\"data-filename attribute:\", btn.attr(\"data-filename\"));\r\n                          console.log(\"data-type attribute:\", btn.attr(\"data-type\"));\r\n                          console.log(\"jQuery data url:\", btn.data(\"url\"));\r\n                          console.log(\"Direct getAttribute:\", btn[0].getAttribute(\"data-url\"));\r\n                      }, 100);\r\n  \r\n                      \/\/ Show modal with animation\r\n                      setTimeout(function () {\r\n                          modal.addClass(\"active\");\r\n                          $(\"body\").addClass(\"ipgv-modal-open\");\r\n                      }, 10);\r\n                  });\r\n  \r\n                  \/\/ Close modal events\r\n                  $(document).on(\"click\", \".ipgv-close-modal, .ipgv-modal-backdrop\", function (e) {\r\n                      e.preventDefault();\r\n                      $(\".ipgv-profile-img-modal, .ipgv-media-modal\").removeClass(\"active\");\r\n                      $(\"body\").removeClass(\"ipgv-modal-open\");\r\n  \r\n                      setTimeout(function () {\r\n                          $(\".ipgv-profile-img-modal, .ipgv-media-modal\").remove();\r\n                      }, 300);\r\n                  });\r\n  \r\n                  \/\/ Prevent clicks inside modal content from closing the modal\r\n                  $(document).on(\"click\", \".ipgv-modal-content\", function (e) {\r\n                      e.stopPropagation();\r\n                  });\r\n  \r\n                  \/\/ FIXED: Profile image modal download button - downloads directly with toast (NO NEW TAB)\r\n                  $(document).on(\"click\", \".ipgv-modal-download-btn\", function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      \/\/ Try multiple methods to get the URL\r\n                      var $this = $(this);\r\n                      var url = $this.attr(\"data-url\") || $this.data(\"url\") || $this[0].getAttribute(\"data-url\");\r\n                      var filename = $this.attr(\"data-filename\") || $this.data(\"filename\") || \"instagram_profile_hd.jpg\";\r\n                      var type = $this.attr(\"data-type\") || $this.data(\"type\") || \"image\";\r\n  \r\n  \r\n  \r\n                      if (!url) {\r\n                          \/\/ Fallback: try to get URL from the modal image\r\n                          url = $(\".ipgv-modal-img\").attr(\"src\");\r\n                          console.log(\"Fallback URL from modal image:\", url);\r\n                      }\r\n  \r\n                      if (!url) {\r\n                          console.error(\"No URL found for download\");\r\n                          \/\/ alert(\"Download URL not found. Please try again.\");\r\n                          return;\r\n                      }\r\n  \r\n                      \/\/ Ensure we're getting the highest quality image\r\n                      var downloadUrl = url;\r\n                      if (type === \"image\" && url.indexOf(\"instagram\") !== -1) {\r\n                          \/\/ Remove any size parameters to get full resolution\r\n                          downloadUrl = url.split(\"?\")[0];\r\n                      }\r\n  \r\n                      console.log(\"Starting download with URL:\", downloadUrl);\r\n  \r\n                      \/\/ Use the downloadWithProgress function for a better user experience\r\n                      downloadWithProgress(downloadUrl, filename, type);\r\n  \r\n                      \/\/ Close the modal after starting download\r\n                      setTimeout(function () {\r\n                          $(\".ipgv-close-modal\").click();\r\n                      }, 500);\r\n                  });\r\n  \r\n                  \/\/ FIXED: View button handlers - Show media in modal with download option\r\n                  $(document).on(\"click\", \".post-view-btn, .story-view-btn, .reel-view-btn\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var mediaType = container.data(\"type\");\r\n                      var mediaUrl = container.data(\"media\");\r\n                      var overlay = $(this).closest(\".post-overlay, .story-overlay, .reel-overlay\");\r\n  \r\n                      if (mediaType === \"video\") {\r\n                          var video = container.find(\"video\");\r\n                          var img = container.find(\"img.post-thumb, img.story-thumb, img.reel-thumb\");\r\n                          var viewBtn = $(this);\r\n                          var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n                          var videoElement = video.get(0);\r\n  \r\n                          if (videoElement.paused) {\r\n                              \/\/ Pause all other videos first\r\n                              pauseAllVideosExcept(videoElement);\r\n  \r\n                              img.hide();\r\n                              video.show();\r\n  \r\n                              \/\/ Set video to start from beginning and play with a small delay\r\n                              videoElement.currentTime = 0;\r\n                              setTimeout(() => {\r\n                                  videoElement.play()\r\n                                      .then(() => {\r\n                                          viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                          fullscreenBtn.show();\r\n                                      })\r\n                                      .catch((e) => {\r\n                                          console.warn(\"Video play error:\", e);\r\n                                          \/\/ Reset to play button if video fails\r\n                                          viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                          fullscreenBtn.hide();\r\n                                      });\r\n                              }, 100);\r\n                          } else {\r\n                              try {\r\n                                  videoElement.pause();\r\n                                  viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                  fullscreenBtn.hide();\r\n                                  video.hide();\r\n                                  img.show();\r\n                              } catch (e) {\r\n                                  console.warn(\"Error pausing video:\", e);\r\n                              }\r\n                          }\r\n                      } else {\r\n                          \/\/ For images, show in modal with download option\r\n                          var containerType = container.hasClass(\"post-img-container\")\r\n                              ? \"post\"\r\n                              : container.hasClass(\"story-img-container\")\r\n                                  ? \"story\"\r\n                                  : \"media\";\r\n                          var filename = \"instagram_\" + containerType + \"_\" + Date.now() + \".jpg\";\r\n                          window.showMediaModal(mediaUrl, \"image\", filename);\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ FIXED: Fullscreen button handlers - Show media in modal with download option\r\n                  $(document).on(\"click\", \".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var mediaUrl = container.data(\"media\") || container.data(\"video\");\r\n                      var video = container.find(\"video\").get(0);\r\n                      var img = container.find(\"img.post-thumb, img.story-thumb, img.reel-thumb\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = $(this);\r\n  \r\n                      \/\/ Pause the current video and reset the UI\r\n                      if (video && !video.paused) {\r\n                          video.pause();\r\n                      }\r\n  \r\n                      \/\/ Hide video and show thumbnail\r\n                      container.find(\"video\").hide();\r\n                      img.show();\r\n  \r\n                      \/\/ Reset buttons to initial state\r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                      fullscreenBtn.hide();\r\n  \r\n                      \/\/ Show video in modal with download option\r\n                      var containerType = container.hasClass(\"post-img-container\")\r\n                          ? \"post\"\r\n                          : container.hasClass(\"story-img-container\")\r\n                              ? \"story\"\r\n                              : \"reel\";\r\n                      var filename = \"instagram_\" + containerType + \"_\" + Date.now() + \".mp4\";\r\n  \r\n                      window.showMediaModal(mediaUrl, \"video\", filename);\r\n                  });\r\n  \r\n                  \/\/ Function to show media in modal with download option\r\n                  window.showMediaModal = function (mediaUrl, mediaType, filename) {\r\n                      var modal = $('<div class=\"ipgv-media-modal profile-img-modal\">');\r\n                      var backdrop = $('<div class=\"ipgv-modal-backdrop\">');\r\n                      var content = $('<div class=\"ipgv-modal-content\">');\r\n                      var actions = $('<div class=\"ipgv-modal-actions\">');\r\n                      var downloadBtn = $('<button class=\"ipgv-modal-download-btn\">');\r\n                      var closeBtn = $('<button class=\"ipgv-close-modal\">');\r\n  \r\n                      \/\/ Create media element based on type\r\n                      var mediaElement;\r\n                      if (mediaType === \"video\") {\r\n                          mediaElement = $(\r\n                              '<video class=\"ipgv-modal-media\" controls autoplay style=\"max-width: 90vw; max-height: 70vh; object-fit: contain;\" \/>'\r\n                          );\r\n                          mediaElement.attr(\"src\", mediaUrl);\r\n                      } else {\r\n                          mediaElement = $(\r\n                              '<img class=\"ipgv-modal-media modal-img\" referrerpolicy=\"no-referrer\" alt=\"Media\" style=\"max-width: 90vw; max-height: 70vh; object-fit: contain;\" \/>'\r\n                          );\r\n                          mediaElement.attr(\"src\", mediaUrl);\r\n                      }\r\n  \r\n                      \/\/ Always show Download Highlight for highlight modal\r\n                      downloadBtn.html('<i class=\"fa-solid fa-download\"><\/i> Download');\r\n                      downloadBtn.on('click', function () {\r\n                          forceDownloadImage(mediaUrl, filename + '.jpg');\r\n                      });\r\n  \r\n                      \/\/ Set close button\r\n                      closeBtn.html('<i class=\"fa-solid fa-xmark\"><\/i>');\r\n  \r\n                      \/\/ Assemble modal\r\n                      actions.append(downloadBtn);\r\n                      content.append(mediaElement, actions, closeBtn);\r\n                      modal.append(backdrop, content);\r\n  \r\n                      \/\/ Add modal to body\r\n                      $(\"body\").append(modal);\r\n  \r\n                      \/\/ Show modal with animation\r\n                      setTimeout(function () {\r\n                          modal.addClass(\"active\");\r\n                          $(\"body\").addClass(\"ipgv-modal-open\");\r\n                      }, 10);\r\n  \r\n                      \/\/ Close modal when clicking close button or backdrop\r\n                      closeBtn.on('click', function () {\r\n                          modal.removeClass(\"active\");\r\n                          setTimeout(function () {\r\n                              modal.remove();\r\n                              $(\"body\").removeClass(\"ipgv-modal-open\");\r\n                          }, 300);\r\n                      });\r\n  \r\n                      backdrop.on('click', function () {\r\n                          modal.removeClass(\"active\");\r\n                          setTimeout(function () {\r\n                              modal.remove();\r\n                              $(\"body\").removeClass(\"ipgv-modal-open\");\r\n                          }, 300);\r\n                      });\r\n                  };\r\n  \r\n                  \/\/ Modified video event handlers\r\n                  $(document).on(\"click\", \"video\", function (e) {\r\n                      e.stopPropagation();\r\n  \r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                      if (this.paused) {\r\n                          \/\/ Pause all other videos first\r\n                          pauseAllVideosExcept(this);\r\n  \r\n                          \/\/ Add a small delay before playing to prevent race conditions\r\n                          setTimeout(() => {\r\n                              this.play()\r\n                                  .then(() => {\r\n                                      viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                      fullscreenBtn.show();\r\n                                  })\r\n                                  .catch((e) => {\r\n                                      console.warn(\"Video play error:\", e);\r\n                                      \/\/ Reset UI if play fails\r\n                                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                      fullscreenBtn.hide();\r\n                                  });\r\n                          }, 100);\r\n                      } else {\r\n                          try {\r\n                              this.pause();\r\n                              viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              fullscreenBtn.hide();\r\n                          } catch (e) {\r\n                              console.warn(\"Error pausing video:\", e);\r\n                          }\r\n                      }\r\n                  });\r\n  \r\n                  $(document).on(\"ended\", \"video\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                      fullscreenBtn.hide();\r\n                      overlay.css(\"opacity\", \"1\");\r\n                  });\r\n  \r\n                  $(document).on(\"pause\", \"video\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                      fullscreenBtn.hide();\r\n                      overlay.css(\"opacity\", \"1\");\r\n                  });\r\n  \r\n                  \/\/ Modified play event handler\r\n                  $(document).on(\"play\", \"video\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                      \/\/ Pause all other videos with a small delay\r\n                      setTimeout(() => {\r\n                          pauseAllVideosExcept(this);\r\n                      }, 50);\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                      fullscreenBtn.show().css(\"display\", \"flex\");\r\n                      overlay.css(\"opacity\", \"0\");\r\n                  });\r\n  \r\n                  \/\/ Modified escape key handler\r\n                  $(document).keydown(function (e) {\r\n                      if (e.key === \"Escape\") {\r\n                          \/\/ Close any open modals\r\n                          $(\".ipgv-profile-img-modal, .ipgv-media-modal\").fadeOut(300).removeClass(\"active\");\r\n                          $(\"body\").removeClass(\"ipgv-modal-open\");\r\n  \r\n                          \/\/ Pause all videos and reset controls\r\n                          pauseAllVideosExcept(null);\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Prevent video controls from interfering with custom controls\r\n                  $(document).on(\"contextmenu\", \"video\", function (e) {\r\n                      e.preventDefault();\r\n                      return false;\r\n                  });\r\n  \r\n                  \/\/ Handle window resize for fullscreen modal\r\n                  $(window).resize(function () {\r\n                      var modal = $(\".ipgv-fullscreen-video-modal\");\r\n                      if (modal.length && modal.is(\":visible\")) {\r\n                          var video = modal.find(\"video\");\r\n                          if (video.length) {\r\n                              \/\/ Adjust video size on window resize\r\n                              video.css({\r\n                                  \"max-width\": \"90%\",\r\n                                  \"max-height\": \"80%\",\r\n                              });\r\n                          }\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Initialize tooltips for buttons (if needed)\r\n                  $(document).on(\"mouseenter\", \".post-view-btn, .story-view-btn, .reel-view-btn\", function () {\r\n                      var mediaType = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\").data(\"type\");\r\n                      if (mediaType === \"video\") {\r\n                          $(this).attr(\"title\", \"Play\/Pause Video\");\r\n                      } else {\r\n                          $(this).attr(\"title\", \"View Image\");\r\n                      }\r\n                  });\r\n  \r\n                  $(document).on(\"mouseenter\", \".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\", function () {\r\n                      $(this).attr(\"title\", \"View Fullscreen\");\r\n                  });\r\n  \r\n                  $(document).on(\"mouseenter\", \".post-download-btn, .story-download-btn, .reel-download-btn\", function () {\r\n                      $(this).attr(\"title\", \"Download\");\r\n                  });\r\n  \r\n                  \/\/ Performance optimization: Lazy load videos\r\n                  var videoObserver = new IntersectionObserver(\r\n                      function (entries) {\r\n                          entries.forEach(function (entry) {\r\n                              if (entry.isIntersecting) {\r\n                                  var video = entry.target;\r\n                                  if (video.dataset.src && !video.src) {\r\n                                      video.src = video.dataset.src;\r\n                                      video.load();\r\n                                  }\r\n                              }\r\n                          });\r\n                      },\r\n                      {\r\n                          rootMargin: \"50px\",\r\n                      }\r\n                  );\r\n  \r\n                  \/\/ Observe videos for lazy loading\r\n                  $(document).on(\"DOMNodeInserted\", function (e) {\r\n                      var videos = $(e.target).find(\"video[data-src]\");\r\n                      videos.each(function () {\r\n                          videoObserver.observe(this);\r\n                      });\r\n                  });\r\n  \r\n                  \/\/ Clean up observers when page unloads\r\n                  $(window).on(\"beforeunload\", function () {\r\n                      if (videoObserver) {\r\n                          videoObserver.disconnect();\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Function to add media type indicators\r\n                  function addMediaTypeIndicators() {\r\n                      $(\".post-img-container, .story-img-container, .reel-img-container\").each(function () {\r\n                          \/\/ Skip if indicator already exists\r\n                          if ($(this).find(\".media-type-indicator\").length > 0) {\r\n                              return;\r\n                          }\r\n  \r\n                          var mediaType = $(this).data(\"type\");\r\n                          var indicator;\r\n  \r\n                          if (mediaType === \"video\") {\r\n                              indicator = '<div class=\"media-type-indicator video-indicator\"><i class=\"fa-solid fa-video\"><\/i> Video<\/div>';\r\n                          } else {\r\n                              indicator = '<div class=\"media-type-indicator image-indicator\"><i class=\"fa-solid fa-image\"><\/i> Image<\/div>';\r\n                          }\r\n  \r\n                          $(this).prepend(indicator);\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Ensure the profile image container has the correct structure\r\n                  \/\/ This function can be called after the profile data is loaded\r\n                  function setupProfileImageViewer() {\r\n                      \/\/ Check if the profile image container exists but doesn't have the view button\r\n                      if ($(\".profile-image-container\").length && $(\".view-profile-img\").length === 0) {\r\n                          $(\".profile-image-container\").append(\r\n                              '<button class=\"view-profile-img\" title=\"View full size image\">' +\r\n                              '<i class=\"fa-solid fa-expand\"><\/i>' +\r\n                              \"<\/button>\"\r\n                          );\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Call this function after the profile is loaded\r\n                  $(document).ajaxComplete(function (event, xhr, settings) {\r\n                      if (settings.url.indexOf(\"profile-info\") !== -1) {\r\n                          setTimeout(setupProfileImageViewer, 500);\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Show the result container when the view button is clicked\r\n                  $(\".view-btn\").on(\"click\", function () {\r\n                      $(\".ig-result\").show();\r\n                  });\r\n  \r\n                  \/\/ Modified video handling functions\r\n                  function createAndPlayVideo(container, videoUrl, thumbnailUrl) {\r\n                      \/\/ Remove any existing video\r\n                      container.find('video').remove();\r\n  \r\n                      \/\/ Create new video element\r\n                      const video = $('<video>', {\r\n                          class: 'reel-video',\r\n                          controls: true,\r\n                          playsInline: true,\r\n                          preload: 'auto',\r\n                          muted: true \/\/ Start muted to allow autoplay\r\n                      });\r\n  \r\n                      \/\/ Set up video source\r\n                      const source = $('<source>', {\r\n                          src: videoUrl,\r\n                          type: 'video\/mp4'\r\n                      });\r\n  \r\n                      video.append(source);\r\n                      container.append(video);\r\n  \r\n                      \/\/ Set up video event listeners\r\n                      video.on('loadeddata', function () {\r\n                          \/\/ Video is ready to play\r\n                          console.log('Video data loaded');\r\n                          \/\/ Unmute the video once it's loaded\r\n                          this.muted = false;\r\n                      });\r\n  \r\n                      video.on('error', function (e) {\r\n                          console.error('Video error:', e);\r\n                          \/\/ Show thumbnail if video fails to load\r\n                          container.find('.reel-thumb').show();\r\n                          video.remove();\r\n                      });\r\n  \r\n                      \/\/ Return the video element\r\n                      return video[0];\r\n                  }\r\n  \r\n                  \/\/ Modified video click handler\r\n                  $(document).on('click', '.reel-view-btn', function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      const container = $(this).closest('.reel-img-container');\r\n                      const videoUrl = container.data('media');\r\n                      const thumbnail = container.find('.reel-thumb');\r\n                      const viewBtn = $(this);\r\n                      const fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n                      \/\/ Pause all other videos first\r\n                      $('.reel-video').each(function () {\r\n                          if (this !== container.find('video')[0]) {\r\n                              try {\r\n                                  if (!this.paused) {\r\n                                      this.pause();\r\n                                  }\r\n                                  $(this).closest('.reel-img-container').find('.reel-thumb').show();\r\n                                  $(this).closest('.reel-img-container').find('.reel-view-btn').html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              } catch (e) {\r\n                                  console.warn('Error pausing video:', e);\r\n                              }\r\n                          }\r\n                      });\r\n  \r\n                      let video = container.find('video')[0];\r\n  \r\n                      if (!video) {\r\n                          \/\/ Create new video if it doesn't exist\r\n                          video = createAndPlayVideo(container, videoUrl, thumbnail.attr('src'));\r\n  \r\n                          \/\/ Wait for video to be ready\r\n                          video.addEventListener('loadeddata', function onLoad() {\r\n                              \/\/ Remove the listener to prevent multiple calls\r\n                              video.removeEventListener('loadeddata', onLoad);\r\n  \r\n                              \/\/ Hide thumbnail and show video\r\n                              thumbnail.hide();\r\n                              $(video).show();\r\n  \r\n                              \/\/ Play the video\r\n                              const playPromise = video.play();\r\n                              if (playPromise !== undefined) {\r\n                                  playPromise\r\n                                      .then(() => {\r\n                                          viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                          fullscreenBtn.show();\r\n                                      })\r\n                                      .catch(error => {\r\n                                          console.warn('Playback failed:', error);\r\n                                          \/\/ Reset UI if play fails\r\n                                          thumbnail.show();\r\n                                          $(video).hide();\r\n                                          viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                      });\r\n                              }\r\n                          }, { once: true });\r\n                      } else {\r\n                          if (video.paused) {\r\n                              \/\/ Hide thumbnail and show video\r\n                              thumbnail.hide();\r\n                              $(video).show();\r\n  \r\n                              \/\/ Play the video\r\n                              const playPromise = video.play();\r\n                              if (playPromise !== undefined) {\r\n                                  playPromise\r\n                                      .then(() => {\r\n                                          viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                          fullscreenBtn.show();\r\n                                      })\r\n                                      .catch(error => {\r\n                                          console.warn('Playback failed:', error);\r\n                                          \/\/ Reset UI if play fails\r\n                                          thumbnail.show();\r\n                                          $(video).hide();\r\n                                          viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                      });\r\n                              }\r\n                          } else {\r\n                              \/\/ Pause video\r\n                              try {\r\n                                  video.pause();\r\n                                  viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              } catch (e) {\r\n                                  console.warn('Error pausing video:', e);\r\n                              }\r\n                          }\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Modified video event handlers\r\n                  $(document).on('play', '.reel-video', function () {\r\n                      const container = $(this).closest('.reel-img-container');\r\n                      const viewBtn = container.find('.reel-view-btn');\r\n                      const fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                      fullscreenBtn.show();\r\n                  });\r\n  \r\n                  $(document).on('pause', '.reel-video', function () {\r\n                      const container = $(this).closest('.reel-img-container');\r\n                      const viewBtn = container.find('.reel-view-btn');\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  });\r\n  \r\n                  $(document).on('ended', '.reel-video', function () {\r\n                      const container = $(this).closest('.reel-img-container');\r\n                      const viewBtn = container.find('.reel-view-btn');\r\n                      const thumbnail = container.find('.reel-thumb');\r\n  \r\n                      $(this).hide();\r\n                      thumbnail.show();\r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  });\r\n  \r\n                  \/\/ Fixed Reel Play\/Pause Functionality\r\n                  $(document).off('click', '.reel-view-btn').on('click', '.reel-view-btn', function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      var $this = $(this);\r\n                      var container = $this.closest('.reel-img-container');\r\n                      var video = container.find('.reel-video')[0];\r\n                      var thumbnail = container.find('.reel-thumb');\r\n                      var fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n                      \/\/ Pause all other videos first\r\n                      $('.reel-video').each(function () {\r\n                          if (this !== video && !this.paused) {\r\n                              this.pause();\r\n                              $(this).removeClass('playing').hide();\r\n                              $(this).closest('.reel-img-container').find('.reel-thumb').removeClass('hidden').show();\r\n                              $(this).closest('.reel-img-container').find('.reel-view-btn').html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                          }\r\n                      });\r\n  \r\n                      if (!video) {\r\n                          var videoUrl = container.data('media');\r\n                          if (videoUrl) {\r\n                              var videoElement = $('<video class=\"reel-video\" controls playsInline preload=\"auto\"><\/video>');\r\n                              videoElement.attr('src', videoUrl);\r\n                              container.append(videoElement);\r\n                              video = videoElement[0];\r\n  \r\n                              \/\/ Wait for video to be ready\r\n                              video.addEventListener('loadeddata', function () {\r\n                                  \/\/ Hide thumbnail and show video\r\n                                  thumbnail.addClass('hidden').hide();\r\n                                  $(video).addClass('playing').show();\r\n  \r\n                                  \/\/ Play video\r\n                                  video.play().then(function () {\r\n                                      $this.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                      fullscreenBtn.show();\r\n                                  }).catch(function (err) {\r\n                                      console.error('Video play failed:', err);\r\n                                      thumbnail.removeClass('hidden').show();\r\n                                      $(video).removeClass('playing').hide();\r\n                                      $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                  });\r\n                              }, { once: true });\r\n                          }\r\n                      } else {\r\n                          if (video.paused) {\r\n                              \/\/ Play video\r\n                              thumbnail.addClass('hidden').hide();\r\n                              $(video).addClass('playing').show();\r\n  \r\n                              video.play().then(function () {\r\n                                  $this.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                  fullscreenBtn.show();\r\n                              }).catch(function (err) {\r\n                                  console.error('Video play failed:', err);\r\n                                  thumbnail.removeClass('hidden').show();\r\n                                  $(video).removeClass('playing').hide();\r\n                                  $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              });\r\n                          } else {\r\n                              \/\/ Pause video\r\n                              video.pause();\r\n                              $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                          }\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Fixed video event handlers\r\n                  $(document).off('play', '.reel-video').on('play', '.reel-video', function () {\r\n                      var container = $(this).closest('.reel-img-container');\r\n                      var viewBtn = container.find('.reel-view-btn');\r\n                      var fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                      fullscreenBtn.show();\r\n                  });\r\n  \r\n                  $(document).off('pause', '.reel-video').on('pause', '.reel-video', function () {\r\n                      var container = $(this).closest('.reel-img-container');\r\n                      var viewBtn = container.find('.reel-view-btn');\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  });\r\n  \r\n                  $(document).off('ended', '.reel-video').on('ended', '.reel-video', function () {\r\n                      var container = $(this).closest('.reel-img-container');\r\n                      var viewBtn = container.find('.reel-view-btn');\r\n                      var thumbnail = container.find('.reel-thumb');\r\n  \r\n                      $(this).removeClass('playing').hide();\r\n                      thumbnail.removeClass('hidden').show();\r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  });\r\n              });\r\n  \r\n  \r\n  \r\n              \/\/ Add enter key support for input (WordPress compatible)\r\n              $(document).ready(function () {\r\n                  var inputElement = document.getElementById(\"input-url\");\r\n                  if (inputElement) {\r\n                      inputElement.addEventListener(\"keypress\", function (e) {\r\n                          if (e.key === \"Enter\") {\r\n                              var viewBtn = document.querySelector(\".view-btn\");\r\n                              if (viewBtn) {\r\n                                  viewBtn.click();\r\n                              }\r\n                          }\r\n                      });\r\n                  }\r\n              });\r\n  \r\n          })(jQuery);\r\n      <\/script>\r\n  \r\n  <!-- tools code end here -->\r\n    \r\n    <!-- Work Process Section -->\r\n  <section class=\"igfv-work-process-section\" id=\"how-it-works\">\r\n      <div class=\"container igfv-work-process-content\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"igfv-section-title igfv-light-title\">How Our Instagram Friend Viewer Works<\/h2>\r\n              <p class=\"igfv-section-subtitle igfv-light-subtitle\">View Instagram friends' lists anonymously with just 3 simple steps<\/p>\r\n          <\/div>\r\n          \r\n          <div class=\"row\">\r\n              <div class=\"col-md-4\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                  <div class=\"igfv-process-step\">\r\n                      <div class=\"igfv-step-number\">1<\/div>\r\n                      <h4 class=\"text-white\">Enter Profile URL<\/h4>\r\n                      <p class=\"igfv-light-subtitle\">Paste the Instagram profile URL of the account whose friends you want to view<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-md-4\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                  <div class=\"igfv-process-step\">\r\n                      <div class=\"igfv-step-number\">2<\/div>\r\n                      <h4 class=\"text-white\">Process Request<\/h4>\r\n                      <p class=\"igfv-light-subtitle\">Our system retrieves friends' data without revealing your identity<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-md-4\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                  <div class=\"igfv-process-step\">\r\n                      <div class=\"igfv-step-number\">3<\/div>\r\n                      <h4 class=\"text-white\">View All Friends<\/h4>\r\n                      <p class=\"igfv-light-subtitle\">See all friends' lists anonymously without affecting engagement metrics<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  <\/section>\r\n  \r\n  <!-- Features Section -->\r\n  <section class=\"igfv-features-section\">\r\n      <div class=\"container\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"igfv-section-title\">Key Features<\/h2>\r\n              <p class=\"igfv-section-subtitle\">Our Instagram Friend Viewer offers powerful features for anonymous browsing<\/p>\r\n          <\/div>\r\n          \r\n          <div class=\"row\">\r\n              <div class=\"col-lg-4 mb-4\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-user\"><\/i>\r\n                      <\/div>\r\n                      <h4>Complete Anonymity<\/h4>\r\n                      <p>View Instagram friends without revealing your identity or account<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-4\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-shield\"><\/i>\r\n                      <\/div>\r\n                      <h4>No Tracking<\/h4>\r\n                      <p>Instagram won't track your friend list views or recommend similar profiles<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-4\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-group\"><\/i>\r\n                      <\/div>\r\n                      <h4>Full Friend List<\/h4>\r\n                      <p>See all friends including private accounts (when possible)<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-5\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-search-alt\"><\/i>\r\n                      <\/div>\r\n                      <h4>Search Functionality<\/h4>\r\n                      <p>Quickly find specific friends in large lists<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-5\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-history\"><\/i>\r\n                      <\/div>\r\n                      <h4>No History<\/h4>\r\n                      <p>Your viewing activity isn't stored in your browser history<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-5\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-devices\"><\/i>\r\n                      <\/div>\r\n                      <h4>Cross-Platform<\/h4>\r\n                      <p>Works on all devices - desktop, tablet, and mobile<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  <\/section>\r\n  \r\n  <!-- Why Choose Section -->\r\n  <section class=\"igfv-why-choose-section\">\r\n      <div class=\"container\">\r\n          <div class=\"row align-items-center\">\r\n              <div class=\"col-lg-6 mb-5 mb-lg-0\" data-aos=\"fade-right\">\r\n                  <div class=\"igfv-why-choose-image igfv-floating-element\">\r\n                      <img decoding=\"async\" src=\"https:\/\/viewanonymous.com\/wp-content\/uploads\/2026\/03\/Instagram_Friend_Viewer.webp\" alt=\"Instagram Friend Viewer\" class=\"img-fluid rounded-3\">\r\n                  <\/div>\r\n              <\/div>\r\n              <div class=\"col-lg-6\" data-aos=\"fade-left\">\r\n                  <h2 class=\"igfv-section-title mb-4\">Why Choose Our Instagram Friend Viewer?<\/h2>\r\n                  <p class=\"mb-4\">Our tool provides the most private way to browse Instagram friends' lists without leaving any trace. Whether you're researching friends or valuing your privacy, we make anonymous viewing simple and efficient.<\/p>\r\n                  \r\n                  <div class=\"igfv-benefit-item\">\r\n                      <div class=\"igfv-benefit-icon\">\r\n                          <i class=\"bx bx-check\"><\/i>\r\n                      <\/div>\r\n                      <div>\r\n                          <h5 class=\"mb-1\">No account needed<\/h5>\r\n                          <p class=\"mb-0\">View friends without logging in or having an Instagram account<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n                  \r\n                  <div class=\"igfv-benefit-item\">\r\n                      <div class=\"igfv-benefit-icon\">\r\n                          <i class=\"bx bx-check\"><\/i>\r\n                      <\/div>\r\n                      <div>\r\n                          <h5 class=\"mb-1\">Bypass limitations<\/h5>\r\n                          <p class=\"mb-0\">View friends beyond Instagram's display limits<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n                  \r\n                  <div class=\"igfv-benefit-item\">\r\n                      <div class=\"igfv-benefit-icon\">\r\n                          <i class=\"bx bx-check\"><\/i>\r\n                      <\/div>\r\n                      <div>\r\n                          <h5 class=\"mb-1\">Fast and reliable<\/h5>\r\n                          <p class=\"mb-0\">Get friends' list data instantly with our optimized system<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n                  \r\n                  <div class=\"igfv-benefit-item\">\r\n                      <div class=\"igfv-benefit-icon\">\r\n                          <i class=\"bx bx-check\"><\/i>\r\n                      <\/div>\r\n                      <div>\r\n                          <h5 class=\"mb-1\">Privacy focused<\/h5>\r\n                          <p class=\"mb-0\">No cookies, no tracking, no history stored<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  <\/section>\r\n  \r\n  <!-- FAQ Section -->\r\n  <section class=\"igfv-faq-section\">\r\n      <div class=\"container\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"igfv-section-title\">Frequently Asked Questions<\/h2>\r\n              <p class=\"igfv-section-subtitle\">Find answers to common questions about our Instagram Friend Viewer<\/p>\r\n          <\/div>\r\n          \r\n          <div class=\"row justify-content-center\">\r\n              <div class=\"col-lg-8\">\r\n                  <div class=\"accordion\" id=\"igfv-faqAccordion\">\r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading1\">\r\n                              <button class=\"igfv-accordion-button\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse1\" aria-expanded=\"true\" aria-controls=\"igfv-collapse1\">\r\n                                  Is viewing Instagram friends' lists anonymously legal?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse1\" class=\"accordion-collapse collapse show\" aria-labelledby=\"igfv-heading1\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  Yes, our tool is completely legal to use. It only allows you to view publicly available Instagram friends' lists. We don't access private data or bypass any security measures.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                      \r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"100\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading2\">\r\n                              <button class=\"igfv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse2\" aria-expanded=\"false\" aria-controls=\"igfv-collapse2\">\r\n                                  Can I view friends from private accounts?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse2\" class=\"accordion-collapse collapse\" aria-labelledby=\"igfv-heading2\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  Our tool respects Instagram's privacy settings. We can only show friends from accounts that are set to public. For private accounts, you would need to follow them to see their friends.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                      \r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading3\">\r\n                              <button class=\"igfv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse3\" aria-expanded=\"false\" aria-controls=\"igfv-collapse3\">\r\n                                  Will the profile owner know I viewed their friends list?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse3\" class=\"accordion-collapse collapse\" aria-labelledby=\"igfv-heading3\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  No, when you view through our anonymous viewer, your visit won't be counted in Instagram's statistics, and the profile owner won't know you viewed their friends list.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                      \r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"200\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading4\">\r\n                              <button class=\"igfv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse4\" aria-expanded=\"false\" aria-controls=\"igfv-collapse4\">\r\n                                  Do I need to install any software?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse4\" class=\"accordion-collapse collapse\" aria-labelledby=\"igfv-heading4\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  No, our Instagram Friend Viewer is completely web-based. You don't need to download or install any software. Simply visit our website, enter the profile URL, and view friends anonymously.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                      \r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading5\">\r\n                              <button class=\"igfv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse5\" aria-expanded=\"false\" aria-controls=\"igfv-collapse5\">\r\n                                  Can I see who unfriended an account?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse5\" class=\"accordion-collapse collapse\" aria-labelledby=\"igfv-heading5\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  Our current version shows the current friends list only. For tracking unfriends over time, you would need to use specialized tracking services that require login.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div><\/section>\r\n  \r\n  \r\n    <!-- Footer -->\r\n    \r\n  \r\n  <!-- Copyright Section -->\r\n  \r\n    \r\n  \r\n  <!-- IG Follower Viewer js -->\r\n  <script>\r\n          \/\/ DOM Elements\r\n          const searchForm = document.getElementById('search-form'), searchInput = document.getElementById('search-input'), searchBtn = document.getElementById('search-btn'), searchBtnText = document.getElementById('search-btn-text'), commandCenter = document.getElementById('command-center'), analyticsDashboard = document.getElementById('analytics-dashboard'), followerGrid = document.getElementById('follower-grid'), loadMoreContainer = document.getElementById('load-more-container'), toast = document.getElementById('toast'), resultsCountEl = document.getElementById('results-count'), sortFilter = document.getElementById('sort-filter'), filterType = document.getElementById('filter-type'), followerSearch = document.getElementById('follower-search');\r\n  \r\n          \/\/ State\r\n          const API_URL = 'https:\/\/tools.xrespond.com\/api\/instagram\/profile\/followers', IMAGE_PROXY = 'https:\/\/images.weserv.nl\/?url=';\r\n          let nextPageToken = null, currentUsername = null, allFollowers = [], filteredFollowers = [];\r\n  \r\n          function animateCountUp(el, endValue) {\r\n              let start = 0, duration = 1500, frameDuration = 1000 \/ 60, totalFrames = Math.round(duration \/ frameDuration), frame = 0;\r\n              const count = () => {\r\n                  frame++; const progress = frame \/ totalFrames, eased = 1 - Math.pow(1 - progress, 4);\r\n                  el.textContent = Math.round(eased * endValue).toLocaleString();\r\n                  if (frame < totalFrames) requestAnimationFrame(count);\r\n              };\r\n              requestAnimationFrame(count);\r\n          }\r\n  \r\n          function showToast(message, type = 'info') {\r\n              const iconClass = { success: 'fa-check-circle', error: 'fa-times-circle', info: 'fa-info-circle' }[type] || 'fa-info-circle';\r\n              toast.innerHTML = `<i class=\"fas ${iconClass} ifv-toast-icon\"><\/i> ${message}`;\r\n              toast.className = `ifv-toast show ${type}`;\r\n              setTimeout(() => { toast.className = 'ifv-toast'; }, 4000);\r\n          }\r\n  \r\n          function extractUsername(value) {\r\n              try {\r\n                  if (value.includes('instagram.com')) { const url = new URL(value); return url.pathname.split('\/').filter(Boolean)[0]; }\r\n                  return value.replace('@', '').trim();\r\n              } catch { return value.trim(); }\r\n          }\r\n  \r\n          function getInitials(fullName, username) {\r\n              if (fullName) {\r\n                  const names = fullName.split(' ').filter(Boolean);\r\n                  if (names.length > 1) return `${names[0][0]}${names[names.length - 1][0]}`.toUpperCase();\r\n                  return fullName.substring(0, 2).toUpperCase();\r\n              }\r\n              return username.substring(0, 2).toUpperCase();\r\n          }\r\n  \r\n          function updateAnalytics(followers) {\r\n              analyticsDashboard.innerHTML = '';\r\n              const data = [\r\n                  { label: 'Total Followers', value: followers.length },\r\n                  { label: 'Verified Followers', value: followers.filter(f => f.is_verified).length }\r\n              ];\r\n              data.forEach(item => {\r\n                  const card = document.createElement('div');\r\n                  card.className = 'ifv-analytics-card';\r\n                  const valueId = `val-${item.label.replace(\/[^a-zA-Z0-9]\/g, '')}`;\r\n                  card.innerHTML = `<div class=\"ifv-analytics-label\">${item.label}<\/div><div class=\"ifv-analytics-value\" id=\"${valueId}\"><\/div>`;\r\n                  analyticsDashboard.appendChild(card);\r\n                  const valueEl = document.getElementById(valueId);\r\n                  if (typeof item.value === 'number') animateCountUp(valueEl, item.value);\r\n                  else valueEl.textContent = item.value;\r\n              });\r\n          }\r\n  \r\n          function filterAndSortFollowers() {\r\n              let filtered = [...allFollowers];\r\n              const filterValue = filterType.value;\r\n              if (filterValue === 'verified') filtered = filtered.filter(f => f.is_verified);\r\n              else if (filterValue === 'unverified') filtered = filtered.filter(f => !f.is_verified);\r\n  \r\n              const searchValue = followerSearch.value.toLowerCase();\r\n              if (searchValue) filtered = filtered.filter(f => f.username.toLowerCase().includes(searchValue) || (f.full_name && f.full_name.toLowerCase().includes(searchValue)));\r\n  \r\n              const sortValue = sortFilter.value;\r\n              if (sortValue === 'username') filtered.sort((a, b) => a.username.localeCompare(b.username));\r\n              else if (sortValue === 'verified') filtered.sort((a, b) => (b.is_verified ? 1 : 0) - (a.is_verified ? 1 : 0));\r\n  \r\n              filteredFollowers = filtered;\r\n              renderFollowers(filtered, true);\r\n          }\r\n  \r\n          function renderFollowers(followers, isFiltering = false) {\r\n              if (isFiltering) followerGrid.innerHTML = '';\r\n  \r\n              followers.forEach((user, index) => {\r\n                  const verifiedBadge = user.is_verified ? `<i class=\"fas fa-badge-check ifv-verified-badge\" title=\"Verified\"><\/i>` : '';\r\n                  const initials = getInitials(user.full_name, user.username);\r\n  \r\n                  const heroContent = user.profile_pic_url\r\n                      ? `<img decoding=\"async\" src=\"${IMAGE_PROXY}${encodeURIComponent(user.profile_pic_url)}\" alt=\"${user.username}\" class=\"ifv-follower-avatar\">`\r\n                      : `<div class=\"ifv-follower-avatar-fallback\">${initials}<\/div>`;\r\n  \r\n                  const cardHTML = `\r\n                      <div class=\"ifv-follower-card\" style=\"animation-delay: ${index * 40}ms;\">\r\n                          <div class=\"ifv-follower-card-border\"><\/div>\r\n                          <div class=\"ifv-follower-card-inner\">\r\n                              <div class=\"ifv-card-hero\">${heroContent}<\/div>\r\n                              <div class=\"ifv-card-content\">\r\n                                  <div class=\"ifv-card-header\">\r\n                                      <div class=\"ifv-card-info\">\r\n                                          <div class=\"ifv-card-name\">${user.full_name || user.username} ${verifiedBadge}<\/div>\r\n                                          <a href=\"https:\/\/instagram.com\/${user.username}\" target=\"_blank\" class=\"ifv-card-username\">@${user.username}<\/a>\r\n                                      <\/div>\r\n                                  <\/div>\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>`;\r\n                  followerGrid.insertAdjacentHTML('beforeend', cardHTML);\r\n              });\r\n              resultsCountEl.textContent = `${filteredFollowers.length.toLocaleString()} of ${allFollowers.length.toLocaleString()} followers`;\r\n          }\r\n  \r\n          function setLoadingState(isLoading, isLoadMore = false) {\r\n              const button = isLoadMore ? document.getElementById('load-more-btn') : searchBtn;\r\n              if (!button) return;\r\n              button.disabled = isLoading;\r\n              const targetEl = isLoadMore ? button : searchBtnText;\r\n              targetEl.innerHTML = isLoading ? `<div class=\"ifv-spinner\"><\/div>` : (isLoadMore ? 'Load More' : 'Analyze');\r\n          }\r\n  \r\n          async function fetchFollowers(username, token = null) {\r\n              const isFirstPage = !token;\r\n              setLoadingState(true, !isFirstPage);\r\n              if (isFirstPage) followerGrid.innerHTML = '';\r\n  \r\n              try {\r\n                  const formData = new FormData();\r\n                  formData.append('profile', username);\r\n                  if (token) formData.append('token', token);\r\n                  const response = await fetch(API_URL, { method: 'POST', body: formData, headers: { 'Accept': 'application\/json' } });\r\n                  const result = await response.json();\r\n                  if (result.status !== 'success' || !result.data?.data?.items) throw new Error(result.message || 'Profile is private or does not exist.');\r\n  \r\n                  const { items } = result.data.data;\r\n                  nextPageToken = result.data.pagination_token || null;\r\n                  if (isFirstPage) {\r\n                      allFollowers = items;\r\n                      commandCenter.style.display = 'block';\r\n                  } else {\r\n                      allFollowers = [...allFollowers, ...items];\r\n                  }\r\n                  updateAnalytics(allFollowers);\r\n                  filterAndSortFollowers();\r\n                  loadMoreContainer.innerHTML = nextPageToken ? `<button class=\"ifv-load-more-btn\" id=\"load-more-btn\">Load More<\/button>` : '';\r\n              } catch (error) {\r\n                  showToast(error.message, 'error');\r\n                  if (isFirstPage) commandCenter.style.display = 'none';\r\n              } finally {\r\n                  setLoadingState(false, !isFirstPage);\r\n              }\r\n          }\r\n  \r\n          searchForm.addEventListener('submit', e => { e.preventDefault(); currentUsername = extractUsername(searchInput.value); if (currentUsername) fetchFollowers(currentUsername); });\r\n          loadMoreContainer.addEventListener('click', e => { if (e.target.id === 'load-more-btn' && nextPageToken) fetchFollowers(currentUsername, nextPageToken); });\r\n          [sortFilter, filterType, followerSearch].forEach(el => el.addEventListener(el.tagName === 'INPUT' ? 'input' : 'change', filterAndSortFollowers));\r\n      <\/script>\r\n   \r\n   <!-- Scripts -->\r\n    <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.3.0\/dist\/js\/bootstrap.bundle.min.js\"><\/script>\r\n    <script src=\"https:\/\/unpkg.com\/aos@2.3.1\/dist\/aos.js\"><\/script>\r\n  \r\n    <script>\r\n        \/\/ Initialize AOS animation\r\n        AOS.init({\r\n              duration: 800,\r\n              easing: 'ease-in-out',\r\n              once: true\r\n          });\r\n          \r\n          \/\/ Smooth scrolling for anchor links\r\n          document.querySelectorAll('a[href^=\"#\"]').forEach(anchor => {\r\n              anchor.addEventListener('click', function (e) {\r\n                  e.preventDefault();\r\n                  document.querySelector(this.getAttribute('href')).scrollIntoView({\r\n                      behavior: 'smooth'\r\n                  });\r\n              });\r\n          });\r\n  <\/script>[\/et_pb_fullwidth_code][\/et_pb_section]\n","protected":false},"excerpt":{"rendered":"    <!-- Google Fonts - Premium Typography -->\r\n        <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n        <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin=\"\">\r\n        <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Space+Grotesk:wght@300;400;500;600;700&family=Manrope:wght@300;400;500;600;700;800&display=swap\" rel=\"stylesheet\">\r\n        \r\n        <!-- Bootstrap CSS -->\r\n        <link href=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.3.0\/dist\/css\/bootstrap.min.css\" rel=\"stylesheet\">\r\n        <!-- Boxicons -->\r\n        <link href=\"https:\/\/unpkg.com\/boxicons@2.1.4\/css\/boxicons.min.css\" rel=\"stylesheet\">\r\n        <!-- AOS Animation -->\r\n        <link href=\"https:\/\/unpkg.com\/aos@2.3.1\/dist\/aos.css\" rel=\"stylesheet\">\r\n        \r\n  \r\n  <style id=\"vvvebjs-styles\">\r\n      html{\r\n          overflow-x: hidden;\r\n      }\r\n     \r\n:root {\r\n    --igfv-primary-color: #6366F1;\r\n    --igfv-secondary-color: #8c60ff;\r\n    --igfv-dark-color: #0F172A;\r\n    --igfv-light-color: #FFFFFF;\r\n    --igfv-gray-color: #F1F5F9;\r\n    --igfv-primary-hover: #4F46E5;\r\n    --igfv-secondary-hover: #7c3aed;\r\n    --igfv-section-padding: 100px 0;\r\n}\r\n\r\nbody {\r\n    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n    overflow-x: hidden;\r\n    scroll-behavior: smooth;\r\n    line-height: 1.6;\r\n    background-color: var(--va-home-white);\r\n    color: var(--va-home-dark);\r\n}\r\n\r\nh1, h2, h3, h4, h5, h6 {\r\n    font-family: 'Space Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;\r\n    font-weight: 700;\r\n    color: var(--va-home-dark);\r\n    line-height: 1.2;\r\n}   \r\n  \r\n       \/* Instagram-style Hero Section *\/\r\n       .igfv-hero-section {\r\n              padding: var(--igfv-section-padding);\r\n              text-align: center;\r\n              background-color: var(--igfv-light-color);\r\n          }\r\n          \r\n          .igfv-hero-content {\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n          \r\n          .igfv-hero-section h1 {\r\n              font-size: 3.5rem;\r\n              font-weight: 700;\r\n              margin-bottom: 1.5rem;\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              -webkit-background-clip: text;\r\n              -webkit-text-fill-color: transparent;\r\n          }\r\n          \r\n          .igfv-hero-section p {\r\n              font-size: 1.25rem;\r\n              max-width: 700px;\r\n              margin: 0 auto 2rem;\r\n              opacity: 0.9;\r\n              font-weight: 300;\r\n              color: #666;\r\n          }\r\n          \r\n          \/* Work Process Section with Instagram Colors *\/\r\n          .igfv-work-process-section {\r\n              padding: var(--igfv-section-padding);\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              color: white;\r\n              position: relative;\r\n              overflow: hidden;\r\n          }\r\n          \r\n          .igfv-work-process-section::before {\r\n              content: '';\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background: rgba(0,0,0,0.05);\r\n          }\r\n          \r\n          .igfv-work-process-content {\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n          \r\n          .igfv-process-step {\r\n              text-align: center;\r\n              padding: 30px 20px;\r\n              position: relative;\r\n              z-index: 1;\r\n              background: rgba(255,255,255,0.1);\r\n              backdrop-filter: blur(10px);\r\n              border-radius: 16px;\r\n              margin: 15px;\r\n              border: 1px solid rgba(255,255,255,0.2);\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .igfv-process-step:hover {\r\n              transform: translateY(-10px);\r\n              background: rgba(255,255,255,0.15);\r\n              box-shadow: 0 15px 30px rgba(0,0,0,0.2);\r\n          }\r\n          \r\n          .igfv-step-number {\r\n              width: 60px;\r\n              height: 60px;\r\n              background: white;\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              color: white;\r\n              border-radius: 50%;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              font-weight: 700;\r\n              margin: 0 auto 20px;\r\n              font-size: 1.5rem;\r\n              box-shadow: 0 5px 15px rgba(0,0,0,0.1);\r\n          }\r\n          \r\n          \/* Features Section *\/\r\n          .igfv-features-section {\r\n              padding: var(--igfv-section-padding);\r\n              background: white;\r\n          }\r\n          \r\n          .igfv-feature-card {\r\n              padding: 40px 30px;\r\n              border-radius: 16px;\r\n              background: white;\r\n              box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);\r\n              margin-bottom: 30px;\r\n              transition: all 0.3s ease;\r\n              border: 1px solid rgba(0,0,0,0.05);\r\n              height: 100%;\r\n              position: relative;\r\n              overflow: hidden;\r\n          }\r\n          \r\n          .igfv-feature-card::before {\r\n              content: '';\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 4px;\r\n              height: 100%;\r\n              background: linear-gradient(to bottom, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .igfv-feature-card:hover {\r\n              transform: translateY(-10px);\r\n              box-shadow: 0 15px 40px rgba(0,0,0,0.1);\r\n          }\r\n          \r\n          .igfv-feature-card:hover::before {\r\n              width: 100%;\r\n              opacity: 0.1;\r\n          }\r\n          \r\n          .igfv-feature-icon {\r\n              width: 70px;\r\n              height: 70px;\r\n              border-radius: 20px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              margin-bottom: 25px;\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              color: white;\r\n              font-size: 1.8rem;\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .igfv-feature-card:hover .igfv-feature-icon {\r\n              transform: rotate(15deg) scale(1.1);\r\n              background: linear-gradient(45deg, var(--igfv-primary-hover), var(--igfv-secondary-hover));\r\n          }\r\n          \r\n          \/* Why Choose Section *\/\r\n          .igfv-why-choose-section {\r\n              padding: var(--igfv-section-padding);\r\n              background: #f9f9f9;\r\n          }\r\n          \r\n          .igfv-why-choose-image {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              box-shadow: 0 20px 40px rgba(0,0,0,0.1);\r\n              transform: perspective(1000px) rotateY(-5deg);\r\n              transition: all 0.5s ease;\r\n          }\r\n          \r\n          .igfv-why-choose-image:hover {\r\n              transform: perspective(1000px) rotateY(0deg);\r\n          }\r\n          \r\n          .igfv-benefit-item {\r\n              display: flex;\r\n              align-items: flex-start;\r\n              margin-bottom: 20px;\r\n              padding: 15px;\r\n              border-radius: 12px;\r\n              background: white;\r\n              box-shadow: 0 5px 15px rgba(0,0,0,0.03);\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .igfv-benefit-item:hover {\r\n              transform: translateX(10px);\r\n              box-shadow: 0 10px 25px rgba(0,0,0,0.1);\r\n          }\r\n          \r\n          .igfv-benefit-icon {\r\n              width: 40px;\r\n              height: 40px;\r\n              border-radius: 12px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              margin-right: 15px;\r\n              background: linear-gradient(45deg, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              color: white;\r\n              font-size: 1.2rem;\r\n              flex-shrink: 0;\r\n          }\r\n          \r\n          \/* FAQ Section *\/\r\n          .igfv-faq-section {\r\n              padding: var(--igfv-section-padding);\r\n              background: white;\r\n          }\r\n          \r\n          .igfv-accordion-item {\r\n              border: none;\r\n              border-radius: 12px !important;\r\n              overflow: hidden;\r\n              margin-bottom: 15px;\r\n              box-shadow: 0 5px 15px rgba(0,0,0,0.05);\r\n          }\r\n          \r\n          .igfv-accordion-button {\r\n              font-weight: 600;\r\n              color: var(--igfv-dark-color);\r\n              padding: 20px 25px;\r\n              background: white;\r\n              box-shadow: none;\r\n              border-radius: 12px 12px 0 0 !important;\r\n          }\r\n          \r\n          .igfv-accordion-button:not(.collapsed) {\r\n              background: white;\r\n              color: var(--igfv-primary-color);\r\n              box-shadow: none;\r\n          }\r\n          \r\n          .igfv-accordion-button:focus {\r\n              box-shadow: none;\r\n              border-color: rgba(225, 48, 108, 0.3);\r\n          }\r\n          \r\n          .igfv-accordion-button::after {\r\n              background-image: url(\"data:image\/svg+xml,%3csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 16 16' fill='%23E1306C'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'\/%3e%3c\/svg%3e\");\r\n          }\r\n          \r\n          .igfv-accordion-body {\r\n              padding: 25px;\r\n              color: #666;\r\n          }\r\n          \r\n          \/* Section Titles *\/\r\n          .igfv-section-title {\r\n              font-weight: 700;\r\n              color: var(--igfv-dark-color);\r\n              margin-bottom: 1.5rem;\r\n              position: relative;\r\n              display: inline-block;\r\n          }\r\n          \r\n          .igfv-section-title::after {\r\n              content: '';\r\n              position: absolute;\r\n              bottom: -10px;\r\n              left: 0;\r\n              width: 60px;\r\n              height: 4px;\r\n              background: linear-gradient(to right, var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              border-radius: 2px;\r\n          }\r\n          \r\n          .igfv-light-title {\r\n              color: white;\r\n          }\r\n          \r\n          .igfv-light-title::after {\r\n              background: white;\r\n          }\r\n          \r\n          .igfv-section-subtitle {\r\n              color: #666;\r\n              max-width: 700px;\r\n              margin: 0 auto 3rem;\r\n              font-size: 1.1rem;\r\n          }\r\n          \r\n          .igfv-light-subtitle {\r\n              color: rgba(255,255,255,0.8);\r\n          }\r\n          \r\n          \/* Responsive Design *\/\r\n          @media (max-width: 991px) {\r\n              :root {\r\n                  --igfv-section-padding: 80px 0;\r\n              }\r\n              \r\n              .igfv-hero-section h1 {\r\n                  font-size: 2.8rem;\r\n              }\r\n              \r\n              .igfv-process-step::before {\r\n                  display: none;\r\n              }\r\n          }\r\n          \r\n          @media (max-width: 767px) {\r\n              :root {\r\n                  --igfv-section-padding: 70px 0;\r\n              }\r\n              \r\n              .igfv-hero-section {\r\n                  padding: 100px 0 60px;\r\n              }\r\n              \r\n              .igfv-hero-section h1 {\r\n                  font-size: 2.2rem;\r\n              }\r\n              \r\n              .igfv-hero-section p {\r\n                  font-size: 1rem;\r\n              }\r\n              \r\n              .igfv-section-title {\r\n                  font-size: 1.8rem;\r\n              }\r\n          }\r\n          \r\n          \/* Animation *\/\r\n          @keyframes igfv-float {\r\n              0% { transform: translateY(0px); }\r\n              50% { transform: translateY(-15px); }\r\n              100% { transform: translateY(0px); }\r\n          }\r\n          \r\n          .igfv-floating-element {\r\n              animation: igfv-float 6s ease-in-out infinite;\r\n          }\r\n          \r\n          \/* Custom Scrollbar *\/\r\n          ::-webkit-scrollbar {\r\n              width: 8px;\r\n          }\r\n          \r\n          ::-webkit-scrollbar-track {\r\n              background: #f1f1f1;\r\n          }\r\n          \r\n          ::-webkit-scrollbar-thumb {\r\n              background: linear-gradient(var(--igfv-primary-color), var(--igfv-secondary-color));\r\n              border-radius: 10px;\r\n          }\r\n          \r\n          ::-webkit-scrollbar-thumb:hover {\r\n              background: linear-gradient(var(--igfv-primary-hover), var(--igfv-secondary-hover));\r\n          }    \r\n       \r\n    \/* Footer Section *\/\r\n    .footer-section {\r\n      background: radial-gradient(circle, rgba(16, 33, 120, 1) 0%, rgba(94, 7, 6, 1) 100%);\r\n      color: #fff;\r\n      padding-top: 80px;\r\n      padding-bottom: 80px;\r\n    }\r\n  \r\n    .footer-logo {\r\n      width: 200px;\r\n      margin-bottom: 10px;\r\n      cursor: pointer;\r\n    }\r\n  \r\n    .footer-description {\r\n      font-size: 14px;\r\n      color: #bbb;\r\n    }\r\n  \r\n    .footer-heading {\r\n      font-size: 18px;\r\n      font-weight: 600;\r\n      color: #fff;\r\n      margin-bottom: 15px;\r\n    }\r\n  \r\n    \/* Quick Links and Tools *\/\r\n    .footer-links .footer-link, .footer-tools .footer-tool {\r\n      color: #bbb;\r\n      text-decoration: none;\r\n      font-size: 14px;\r\n      display: block;\r\n      margin-bottom: 10px;\r\n      transition: color 0.3s ease;\r\n    }\r\n  \r\n    .footer-links .footer-link:hover, .footer-tools .footer-tool:hover {\r\n      color: #fff;\r\n    }\r\n  \r\n    \/* Social Icons (Boxicons) *\/\r\n    .footer-social .social-icon {\r\n      color: #bbb;\r\n      font-size: 24px;\r\n      text-decoration: none;\r\n      transition: color 0.3s ease;\r\n    }\r\n  \r\n    .footer-social .social-icon:hover {\r\n      color: #fff;\r\n    }\r\n  \r\n    \/* Footer Copyright Section *\/\r\n    .footer-copyright {\r\n      background-color: #1a1a1a;\r\n    }\r\n  \r\n    .footer-bottom-text {\r\n      font-size: 14px;\r\n      color: #bbb;\r\n    }\r\n  \r\n    \/* Responsive Design *\/\r\n    @media (max-width: 767.98px) {\r\n      .footer-logo {\r\n        width: 200px;\r\n      }\r\n  \r\n      .footer-description {\r\n        font-size: 14px;\r\n      }\r\n  \r\n      .footer-heading {\r\n        font-size: 18px;\r\n      }\r\n  \r\n      .footer-link, .footer-tool {\r\n        font-size: 14px;\r\n      }\r\n  \r\n      .footer-bottom-text {\r\n        font-size: 14px;\r\n      }\r\n    }\r\n  \r\n  <\/style>\r\n  <!-- tools -->\r\n  <style>\r\n      :root {\r\n          \/* Instagram-inspired Gradient Theme *\/\r\n          --ifv-c-insta-pink: #d62976;\r\n          --ifv-c-insta-purple: #962fbf;\r\n          --ifv-c-insta-orange: #fa7e1e;\r\n          --ifv-g-accent: linear-gradient(45deg, var(--ifv-c-insta-pink), var(--ifv-c-insta-orange));\r\n          --ifv-g-accent-shadow: 0 8px 25px -5px hsla(328, 68%, 50%, 0.4);\r\n  \r\n          --ifv-c-bg: #0f0f23;\r\n          --ifv-c-surface: #1a1a2e;\r\n          --ifv-c-border: hsla(0, 0%, 100%, 0.15);\r\n          --ifv-c-border-hover: hsla(328, 68%, 50%, 0.6);\r\n          --ifv-c-text-primary: hsl(0, 0%, 98%);\r\n          --ifv-c-text-secondary: hsl(0, 0%, 75%);\r\n          --ifv-c-verified: #0095F6;\r\n          --ifv-radius-md: 10px;\r\n          --ifv-radius-lg: 16px;\r\n          --ifv-transition: 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);\r\n      }\r\n  \r\n      * {\r\n          box-sizing: border-box;\r\n          -webkit-font-smoothing: antialiased;\r\n          -moz-osx-font-smoothing: grayscale;\r\n      }\r\n  \r\n      html {\r\n          font-size: 16px;\r\n      }\r\n  \r\n      .igfv-custom-hero-section {\r\n          margin: 0;\r\n          padding: 0;\r\n          font-family: 'Inter', sans-serif;\r\n          background-color: var(--ifv-c-bg);\r\n          color: var(--ifv-c-text-primary);\r\n          \/* min-height: 100vh; *\/\r\n          padding: 80px 0;\r\n          position: relative;\r\n      }\r\n  \r\n      .ifv-bg-mesh {\r\n          position: fixed;\r\n          inset: 0;\r\n          z-index: 0;\r\n          overflow: hidden;\r\n          opacity: 0.5;\r\n      }\r\n  \r\n      .ifv-bg-mesh-blob {\r\n          position: absolute;\r\n          filter: blur(180px);\r\n          border-radius: 50%;\r\n      }\r\n  \r\n      .ifv-blob-1 {\r\n          top: -10%;\r\n          left: -20%;\r\n          width: 50vw;\r\n          height: 50vh;\r\n          background: var(--ifv-c-insta-purple);\r\n          animation: ifv-move 25s infinite alternate;\r\n      }\r\n  \r\n      .ifv-blob-2 {\r\n          bottom: -15%;\r\n          right: -15%;\r\n          width: 45vw;\r\n          height: 45vh;\r\n          background: var(--ifv-c-insta-orange);\r\n          animation: ifv-move 30s infinite alternate-reverse;\r\n      }\r\n  \r\n      .ifv-container {\r\n          width: 100%;\r\n          max-width: 1600px;\r\n          margin: 0 auto;\r\n          padding: 4rem 1.5rem;\r\n          position: relative;\r\n          z-index: 1;\r\n      }\r\n  \r\n      \/* --- Header --- *\/\r\n      .ifv-header {\r\n          text-align: center;\r\n          margin-bottom: 5rem;\r\n          position: relative;\r\n      }\r\n  \r\n      .ifv-header-icon {\r\n          font-size: 4.5rem;\r\n          margin-bottom: 2rem;\r\n          animation: ifv-float 4s ease-in-out infinite;\r\n          background: var(--ifv-g-accent);\r\n          -webkit-background-clip: text;\r\n          -webkit-text-fill-color: transparent;\r\n          background-clip: text;\r\n          text-fill-color: transparent;\r\n          filter: drop-shadow(0 4px 20px hsla(328, 68%, 50%, 0.3));\r\n      }\r\n  \r\n      .ifv-header h1 {\r\n          font-size: clamp(3.5rem, 7vw, 5rem);\r\n          font-weight: 800;\r\n          letter-spacing: -0.04em;\r\n          margin: 0 0 1rem 0;\r\n          background: linear-gradient(135deg, var(--ifv-c-text-primary) 0%, hsl(0, 0%, 85%) 100%);\r\n          -webkit-background-clip: text;\r\n          -webkit-text-fill-color: transparent;\r\n          background-clip: text;\r\n          text-fill-color: transparent;\r\n      }\r\n  \r\n      .ifv-header-subtitle {\r\n          font-size: 1.4rem;\r\n          color: var(--ifv-c-text-secondary);\r\n          font-weight: 500;\r\n          margin-bottom: 2rem;\r\n          letter-spacing: 0.02em;\r\n      }\r\n  \r\n      .ifv-pro-badge {\r\n          display: inline-block;\r\n          margin-top: 2rem;\r\n          border: 1px solid transparent;\r\n          background: linear-gradient(var(--ifv-c-bg), var(--ifv-c-bg)) padding-box,\r\n              var(--ifv-g-accent) border-box;\r\n          color: var(--ifv-c-text-secondary);\r\n          padding: 0.8rem 2rem;\r\n          border-radius: 50px;\r\n          font-weight: 700;\r\n          font-size: 0.95rem;\r\n          letter-spacing: 0.1em;\r\n          text-transform: uppercase;\r\n          box-shadow: 0 8px 25px -5px hsla(328, 68%, 50%, 0.2);\r\n          transition: all 0.3s ease;\r\n      }\r\n  \r\n      .ifv-pro-badge:hover {\r\n          transform: translateY(-2px);\r\n          box-shadow: 0 12px 35px -8px hsla(328, 68%, 50%, 0.3);\r\n      }\r\n  \r\n      \/* --- Panels & Inputs --- *\/\r\n      .ifv-ui-panel {\r\n          background: hsla(290, 14%, 36%, 0.8);\r\n          backdrop-filter: blur(25px);\r\n          border: 1px solid var(--ifv-c-border);\r\n          border-radius: var(--ifv-radius-lg);\r\n          padding: 3rem;\r\n          margin-bottom: 3rem;\r\n          box-shadow: 0 25px 60px -25px hsla(0, 0%, 0%, 0.5);\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .ifv-ui-panel::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 1px;\r\n          background: linear-gradient(90deg, transparent, var(--ifv-c-insta-pink), transparent);\r\n          opacity: 0.4;\r\n      }\r\n  \r\n      .ifv-search-form {\r\n          display: flex;\r\n          gap: 1.5rem;\r\n          align-items: stretch;\r\n      }\r\n  \r\n      .ifv-search-input,\r\n      .ifv-search-box-followers,\r\n      .ifv-filter-select {\r\n          padding: 1.4rem 2rem;\r\n          border: 1px solid var(--ifv-c-border);\r\n          border-radius: var(--ifv-radius-md);\r\n          font-size: 1.15rem;\r\n          background: linear-gradient(120deg, rgba(150, 47, 191, 0.12) 0%, rgba(218, 41, 142, 0.10) 100%), hsla(290, 14%, 36%, 0.7);\r\n          color: var(--ifv-c-text-primary);\r\n          outline: none;\r\n          transition: all 0.3s ease;\r\n          font-weight: 500;\r\n          width: 100%;\r\n      }\r\n  \r\n      .ifv-search-input:focus,\r\n      .ifv-search-box-followers:focus,\r\n      .ifv-filter-select:focus {\r\n          border-color: var(--ifv-c-border-hover);\r\n          box-shadow: 0 0 0 4px hsla(328, 68%, 50%, 0.13), 0 0 25px -8px hsla(328, 68%, 50%, 0.18) inset;\r\n          background: linear-gradient(120deg, rgba(218, 41, 142, 0.18) 0%, rgba(250, 126, 30, 0.15) 100%), hsla(290, 14%, 36%, 0.95);\r\n      }\r\n  \r\n      .ifv-search-btn {\r\n          cursor: pointer;\r\n          border: none;\r\n          padding: 1.4rem 3rem;\r\n          border-radius: var(--ifv-radius-md);\r\n          font-weight: 700;\r\n          font-size: 1.1rem;\r\n          background: var(--ifv-g-accent);\r\n          color: white;\r\n          transition: all 0.3s ease;\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          gap: 1rem;\r\n          box-shadow: 0 8px 25px -8px hsla(328, 68%, 50%, 0.4);\r\n          text-shadow: 0 1px 3px hsla(0, 0%, 0%, 0.3);\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .ifv-search-btn::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: -100%;\r\n          width: 100%;\r\n          height: 100%;\r\n          background: linear-gradient(90deg, transparent, hsla(0, 0%, 100%, 0.2), transparent);\r\n          transition: left 0.5s ease;\r\n      }\r\n  \r\n      .ifv-search-btn:hover::before {\r\n          left: 100%;\r\n      }\r\n  \r\n      .ifv-search-btn:hover {\r\n          transform: translateY(-4px) scale(1.02);\r\n          box-shadow: var(--ifv-g-accent-shadow);\r\n      }\r\n  \r\n      .ifv-search-btn:disabled {\r\n          opacity: 0.5;\r\n          cursor: not-allowed;\r\n          transform: none;\r\n          box-shadow: none;\r\n      }\r\n  \r\n      \/* --- Follower Card --- *\/\r\n      .ifv-follower-grid {\r\n          display: grid;\r\n          gap: 2rem;\r\n          grid-template-columns: 1fr;\r\n          \/* Default: 1 column for mobile *\/\r\n      }\r\n  \r\n      .ifv-follower-card {\r\n          position: relative;\r\n          border-radius: var(--ifv-radius-lg);\r\n          transition: all var(--ifv-transition);\r\n          opacity: 0;\r\n          transform: translateY(40px);\r\n          animation: ifv-card-enter 0.6s var(--ifv-transition) forwards;\r\n          height: 420px;\r\n          \/* Fixed height for consistency *\/\r\n          display: flex;\r\n          flex-direction: column;\r\n      }\r\n  \r\n      .ifv-follower-card-border {\r\n          position: absolute;\r\n          inset: 0;\r\n          border-radius: var(--ifv-radius-lg);\r\n          padding: 1px;\r\n          background: var(--ifv-c-border);\r\n          transition: background var(--ifv-transition);\r\n          z-index: 0;\r\n      }\r\n  \r\n      .ifv-follower-card:hover .ifv-follower-card-border {\r\n          background: conic-gradient(from var(--ifv-angle), transparent 25%, var(--ifv-c-insta-pink), var(--ifv-c-insta-orange), transparent 75%);\r\n          animation: ifv-spin-border 4s linear infinite;\r\n      }\r\n  \r\n      @property --ifv-angle {\r\n          syntax: '<angle>';\r\n          inherits: false;\r\n          initial-value: 0deg;\r\n      }\r\n  \r\n      .ifv-follower-card-inner {\r\n          background: hsla(290, 14%, 36%, 0.8);\r\n          border-radius: calc(var(--ifv-radius-lg) - 1px);\r\n          overflow: hidden;\r\n          position: relative;\r\n          z-index: 1;\r\n          height: 100%;\r\n          display: flex;\r\n          flex-direction: column;\r\n          box-shadow: 0 8px 32px -8px hsla(0, 15%, 24%, 0.3);\r\n      }\r\n  \r\n      .ifv-follower-card:hover {\r\n          transform: translateY(-12px) scale(1.02);\r\n          box-shadow: 0 20px 60px -20px hsla(0, 0%, 0%, 0.5);\r\n      }\r\n  \r\n      .ifv-card-hero {\r\n          width: 100%;\r\n          height: 280px;\r\n          \/* Fixed height for consistency *\/\r\n          position: relative;\r\n          overflow: hidden;\r\n          background: linear-gradient(135deg, hsl(0, 0%, 18%), hsl(0, 0%, 12%));\r\n      }\r\n  \r\n      .ifv-follower-avatar {\r\n          width: 100%;\r\n          height: 100%;\r\n          object-fit: cover;\r\n          transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);\r\n      }\r\n  \r\n      .ifv-follower-card:hover .ifv-follower-avatar {\r\n          transform: scale(1.08);\r\n      }\r\n  \r\n      .ifv-follower-avatar-fallback {\r\n          width: 100%;\r\n          height: 100%;\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          font-size: 3.5rem;\r\n          font-weight: 700;\r\n          color: var(--ifv-c-text-secondary);\r\n          background: linear-gradient(135deg, hsl(0, 0%, 20%), var(--ifv-c-bg));\r\n          text-shadow: 0 2px 8px hsla(0, 0%, 0%, 0.3);\r\n      }\r\n  \r\n      .ifv-card-content {\r\n          padding: 1.8rem;\r\n          flex: 1;\r\n          display: flex;\r\n          flex-direction: column;\r\n          justify-content: space-between;\r\n      }\r\n  \r\n      .ifv-card-header {\r\n          display: flex;\r\n          align-items: flex-start;\r\n          gap: 1rem;\r\n      }\r\n  \r\n      .ifv-card-info {\r\n          flex: 1;\r\n          min-width: 0;\r\n      }\r\n  \r\n      .ifv-card-name {\r\n          font-size: 1.2rem;\r\n          font-weight: 700;\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 0.6rem;\r\n          white-space: nowrap;\r\n          overflow: hidden;\r\n          text-overflow: ellipsis;\r\n          margin-bottom: 0.3rem;\r\n          color: var(--ifv-c-text-primary);\r\n          line-height: 1.3;\r\n      }\r\n  \r\n      .ifv-verified-badge {\r\n          color: var(--ifv-c-verified);\r\n          font-size: 1.2rem;\r\n          flex-shrink: 0;\r\n          filter: drop-shadow(0 2px 4px hsla(204, 100%, 50%, 0.3));\r\n      }\r\n  \r\n      .ifv-card-username {\r\n          color: var(--ifv-c-text-secondary);\r\n          font-size: 1rem;\r\n          text-decoration: none;\r\n          transition: all 0.3s ease;\r\n          white-space: nowrap;\r\n          overflow: hidden;\r\n          text-overflow: ellipsis;\r\n          font-weight: 500;\r\n          letter-spacing: 0.02em;\r\n      }\r\n  \r\n      .ifv-card-username:hover {\r\n          color: var(--ifv-c-insta-pink);\r\n          transform: translateX(2px);\r\n      }\r\n  \r\n      .ifv-card-stats {\r\n          display: flex;\r\n          gap: 1.5rem;\r\n          margin-top: 1rem;\r\n          padding-top: 1rem;\r\n          border-top: 1px solid hsla(0, 0%, 100%, 0.05);\r\n      }\r\n  \r\n      .ifv-stat-item {\r\n          display: flex;\r\n          flex-direction: column;\r\n          align-items: center;\r\n          flex: 1;\r\n      }\r\n  \r\n      .ifv-stat-value {\r\n          font-size: 1.1rem;\r\n          font-weight: 700;\r\n          color: var(--ifv-c-text-primary);\r\n          margin-bottom: 0.2rem;\r\n      }\r\n  \r\n      .ifv-stat-label {\r\n          font-size: 0.75rem;\r\n          color: var(--ifv-c-text-secondary);\r\n          text-transform: uppercase;\r\n          letter-spacing: 0.05em;\r\n          font-weight: 500;\r\n      }\r\n  \r\n      \/* --- Misc & Responsive --- *\/\r\n      #ifv-command-center {\r\n          display: none;\r\n      }\r\n  \r\n      .ifv-analytics-dashboard {\r\n          display: grid;\r\n          grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));\r\n          gap: 1.5rem;\r\n      }\r\n  \r\n      .ifv-analytics-card {\r\n          background: transparent;\r\n          text-align: center;\r\n          padding: 1rem;\r\n          border-radius: var(--ifv-radius-md);\r\n          transition: background var(--ifv-transition);\r\n      }\r\n  \r\n      .ifv-analytics-card:hover {\r\n          background: hsla(0, 0%, 100%, 0.08);\r\n      }\r\n  \r\n      .ifv-analytics-label {\r\n          font-size: 0.9rem;\r\n          color: var(--ifv-c-text-secondary);\r\n          margin-bottom: 0.5rem;\r\n      }\r\n  \r\n      .ifv-analytics-value {\r\n          font-size: 2.2rem;\r\n          font-weight: 700;\r\n          background: var(--ifv-g-accent);\r\n          -webkit-background-clip: text;\r\n          -webkit-text-fill-color: transparent;\r\n          background-clip: text;\r\n          text-fill-color: transparent;\r\n      }\r\n  \r\n      .ifv-controls-section {\r\n          display: flex;\r\n          align-items: center;\r\n          flex-wrap: wrap;\r\n          gap: 1.5rem;\r\n          padding-bottom: 2rem;\r\n          border-bottom: 1px solid var(--ifv-c-border);\r\n          margin-bottom: 2rem;\r\n      }\r\n  \r\n      .ifv-filter-group {\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 0.75rem;\r\n      }\r\n  \r\n      .ifv-filter-label {\r\n          color: var(--ifv-c-text-secondary);\r\n          font-weight: 500;\r\n          font-size: 0.9rem;\r\n      }\r\n  \r\n      .ifv-filter-select {\r\n          font-size: 1.05rem;\r\n          padding: 1.1rem 1.5rem;\r\n      }\r\n  \r\n      .ifv-search-box-followers {\r\n          flex: 1;\r\n          min-width: 200px;\r\n          font-size: 1.05rem;\r\n          padding: 1.1rem 1.5rem;\r\n      }\r\n  \r\n      .ifv-results-header {\r\n          display: flex;\r\n          justify-content: space-between;\r\n          align-items: center;\r\n          margin-bottom: 2rem;\r\n      }\r\n  \r\n      .ifv-results-title {\r\n          font-size: 1.75rem;\r\n          font-weight: 700;\r\n      }\r\n  \r\n      .ifv-results-count {\r\n          color: var(--ifv-c-text-secondary);\r\n          font-size: 1rem;\r\n      }\r\n  \r\n      .ifv-load-more-container {\r\n          display: flex;\r\n          justify-content: center;\r\n          margin-top: 3rem;\r\n      }\r\n  \r\n      .ifv-load-more-btn {\r\n          cursor: pointer;\r\n          border: 1px solid var(--ifv-c-border);\r\n          padding: 0.8rem 2rem;\r\n          border-radius: var(--ifv-radius-md);\r\n          font-weight: 600;\r\n          background: var(--ifv-c-surface);\r\n          color: var(--ifv-c-text-secondary);\r\n          transition: all 0.3s ease;\r\n      }\r\n  \r\n      .ifv-load-more-btn:hover {\r\n          color: var(--ifv-c-text-primary);\r\n          border-color: var(--ifv-c-border-hover);\r\n      }\r\n  \r\n      .ifv-toast {\r\n          position: fixed;\r\n          bottom: 2rem;\r\n          left: 50%;\r\n          transform: translate(-50%, 10rem) scale(0.8);\r\n          background: #222226;\r\n          backdrop-filter: blur(10px);\r\n          color: var(--ifv-c-text-primary);\r\n          padding: 1rem 1.5rem;\r\n          border-radius: var(--ifv-radius-md);\r\n          box-shadow: 0 10px 30px hsla(0, 0%, 0%, 0.4);\r\n          z-index: 1000;\r\n          transition: all 0.5s var(--ifv-transition);\r\n          font-weight: 500;\r\n          border: 1px solid var(--ifv-c-border);\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 1rem;\r\n          opacity: 0;\r\n      }\r\n  \r\n      .ifv-toast.show {\r\n          transform: translate(-50%, 0) scale(1);\r\n          opacity: 1;\r\n      }\r\n  \r\n      .ifv-toast.error .ifv-toast-icon {\r\n          color: #e74c3c;\r\n      }\r\n  \r\n      .ifv-toast.success .ifv-toast-icon {\r\n          color: #2ecc71;\r\n      }\r\n  \r\n      .ifv-toast-icon {\r\n          font-size: 1.2rem;\r\n      }\r\n  \r\n      .ifv-spinner {\r\n          border: 3px solid hsla(0, 0%, 100%, 0.2);\r\n          border-left-color: currentColor;\r\n          border-radius: 50%;\r\n          width: 20px;\r\n          height: 20px;\r\n          animation: ifv-spin 1s linear infinite;\r\n      }\r\n  \r\n      @keyframes ifv-move {\r\n          0% {\r\n              transform: translate(0, 0);\r\n          }\r\n  \r\n          100% {\r\n              transform: translate(10vw, 15vh);\r\n          }\r\n      }\r\n  \r\n      @keyframes ifv-spin-border {\r\n          to {\r\n              --ifv-angle: 360deg;\r\n          }\r\n      }\r\n  \r\n      @keyframes ifv-float {\r\n  \r\n          0%,\r\n          100% {\r\n              transform: translateY(0);\r\n          }\r\n  \r\n          50% {\r\n              transform: translateY(-10px);\r\n          }\r\n      }\r\n  \r\n      @keyframes ifv-card-enter {\r\n          to {\r\n              opacity: 1;\r\n              transform: translateY(0);\r\n          }\r\n      }\r\n  \r\n      @keyframes ifv-spin {\r\n          to {\r\n              transform: rotate(360deg);\r\n          }\r\n      }\r\n  \r\n      \/* Responsive Grid for Follower Cards *\/\r\n      @media (min-width: 600px) {\r\n          .ifv-follower-grid {\r\n              grid-template-columns: repeat(2, 1fr);\r\n              \/* 2 columns for tablets *\/\r\n          }\r\n      }\r\n  \r\n      @media (min-width: 992px) {\r\n          .ifv-follower-grid {\r\n              grid-template-columns: repeat(3, 1fr);\r\n              \/* 3 columns for medium screens *\/\r\n              gap: 1.8rem;\r\n          }\r\n      }\r\n  \r\n      @media (min-width: 1400px) {\r\n          .ifv-follower-grid {\r\n              grid-template-columns: repeat(5, 1fr);\r\n              \/* 5 columns for large screens *\/\r\n          }\r\n      }\r\n  \r\n      @media (max-width: 768px) {\r\n          html {\r\n              font-size: 15px;\r\n          }\r\n  \r\n          .ifv-search-form {\r\n              flex-direction: column;\r\n              align-items: stretch;\r\n          }\r\n  \r\n          .ifv-analytics-dashboard {\r\n              grid-template-columns: repeat(2, 1fr);\r\n          }\r\n      }\r\n  \r\n      @media (max-width: 480px) {\r\n          .ifv-analytics-dashboard {\r\n              grid-template-columns: 1fr;\r\n          }\r\n      }\r\n  <\/style>\r\n  <\/head><body data-aos-easing=\"ease-in-out\" data-aos-duration=\"800\" data-aos-delay=\"0\" data-new-gr-c-s-check-loaded=\"14.1272.0\" data-gr-ext-installed=\"\" data-new-gr-c-s-loaded=\"14.1223.0\" class=\"\" style=\"\">\r\n      <nav class=\"navigation-1 clearfix\" data-v-save-global=\"blank.html,.navigation-1\">\r\n          \r\n        <\/nav>\r\n  \r\n  \r\n   <!-- tools code start here -->\r\n  \r\n      <link rel=\"stylesheet\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.5.0\/css\/all.min.css\">\r\n      <style>\r\n          \/* Reset and Base Styles *\/\r\n          button,\r\n          html input[type=\"button\"],\r\n          input[type=\"reset\"],\r\n          input[type=\"submit\"] {\r\n              padding: 0px;\r\n          }\r\n  \r\n          * {\r\n              margin: 0;\r\n              padding: 0;\r\n              box-sizing: border-box;\r\n          }\r\n  \r\n      \r\n        \r\n        .wrapper {\r\n      padding: 100px 0;\r\n      font-family: 'Inter', -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\r\n      background: white;\r\n  \r\n  filter: progid: DXImageTransform.Microsoft.gradient( startColorstr=\"#9BF8F4\", endColorstr=\"#6F7BF7\", GradientType=1 );\r\n      min-height: 100vh;\r\n      line-height: 1.6;\r\n      position: relative;\r\n      overflow-x: hidden;\r\n  }\r\n  \r\n          .wrapper::before {\r\n              content: '';\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              right: 0;\r\n              bottom: 0;\r\n              background: \r\n                  radial-gradient(circle at 20% 80%, rgba(59, 130, 246, 0.15) 0%, transparent 50%),\r\n                  radial-gradient(circle at 80% 20%, rgba(139, 92, 246, 0.15) 0%, transparent 50%),\r\n                  radial-gradient(circle at 40% 40%, rgba(16, 185, 129, 0.1) 0%, transparent 50%);\r\n              pointer-events: none;\r\n          }\r\n  \r\n          .main-contain {\r\n              max-width: 1200px;\r\n              margin: 0 auto;\r\n              padding: 20px;\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n  \r\n          \/* Professional Instagram Tool Wrapper *\/\r\n        \r\n        \r\n       \r\n       \r\n        \r\n       .ig-tool-wrapper {\r\n      width: 100%;\r\n      margin: 20px auto;\r\n      padding: 40px;\r\n      border-radius: 24px;\r\n      background: linear-gradient(135deg,#6366f1 0%,#8c60ff 100%) !important;\r\n      backdrop-filter: blur(20px);\r\n      border: 2px solid rgba(59, 130, 246, 0.2);\r\n      color: #1e293b;\r\n      text-align: center;\r\n      box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(59, 130, 246, 0.1);\r\n      position: relative;\r\n      overflow: hidden;\r\n      opacity: 0.9;\r\n  }\r\n  \r\n          .ig-tool-wrapper::before {\r\n              content: \"\";\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background: linear-gradient(135deg, rgba(59, 130, 246, 0.05) 0%, rgba(139, 92, 246, 0.05) 100%);\r\n              pointer-events: none;\r\n          }\r\n  \r\n  \r\n          .ig-header h1 {\r\n              font-size: 42px;\r\n              font-weight: 700;\r\n              background: white;\r\n              -webkit-background-clip: text;\r\n              -webkit-text-fill-color: transparent;\r\n              background-clip: text;\r\n              margin-bottom: 20px;\r\n              letter-spacing: -1px;\r\n              text-shadow: none;\r\n              position: relative;\r\n              z-index: 2;\r\n              display: inline-block;\r\n          }\r\n  \r\n          .viewer-anonymous {\r\n              background: white;\r\n              -webkit-background-clip: text;\r\n              -webkit-text-fill-color: transparent;\r\n              background-clip: text;\r\n              position: relative;\r\n              display: inline-block;\r\n          }\r\n  \r\n          .viewer-anonymous::after {\r\n              content: \"\";\r\n              position: absolute;\r\n              bottom: -8px;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 4px;\r\n              background: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 50%, #ec4899 100%);\r\n              border-radius: 2px;\r\n              animation: underlineGlow 2s ease-in-out infinite alternate;\r\n          }\r\n  \r\n          @keyframes underlineGlow {\r\n              0% {\r\n                  opacity: 0.7;\r\n                  transform: scaleX(0.95);\r\n              }\r\n              100% {\r\n                  opacity: 1;\r\n                  transform: scaleX(1.05);\r\n              }\r\n          }\r\n  \r\n          .ig-header p {\r\n              font-size: 18px;\r\n              margin: 20px 0 30px;\r\n              line-height: 1.7;\r\n              font-weight: 400;\r\n              color: #eef4ff;\r\n              max-width: 700px;\r\n              margin-left: auto;\r\n              margin-right: auto;\r\n              position: relative;\r\n              z-index: 2;\r\n          }\r\n  \r\n          \/* Professional Input Area *\/\r\n         \r\n        \r\n      \r\n      \r\n        \r\n        .ig-input-area {\r\n      display: flex;\r\n      align-items: center;\r\n      background: rgba(247, 203, 242, 0.9);\r\n      backdrop-filter: blur(10px);\r\n      padding: 30px 25px;\r\n      border-radius: 20px;\r\n      gap: 20px;\r\n      margin: 0 auto;\r\n      max-width: 100%;\r\n      flex-wrap: wrap;\r\n      box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1), 0 0 0 2px rgba(59, 130, 246, 0.1);\r\n      position: relative;\r\n      border: 2px solid rgba(59, 130, 246, 0.2);\r\n  }\r\n  \r\n          .ig-icon {\r\n              font-size: 16px;\r\n              color: #4a5568;\r\n              font-weight: 600;\r\n              width: 100%;\r\n              text-align: left;\r\n              margin-bottom: 15px;\r\n              position: relative;\r\n              z-index: 2;\r\n          }\r\n  \r\n          .ig-input-area input {\r\n              flex-grow: 1;\r\n              padding: 16px 20px;\r\n              font-size: 16px;\r\n              border: 2px solid #3b82f6;\r\n              outline: none;\r\n              min-width: 200px;\r\n              background: transparent;\r\n              border-radius: 12px;\r\n              transition: all 0.3s ease;\r\n              color: #1e293b;\r\n              font-weight: 500;\r\n              position: relative;\r\n              z-index: 2;\r\n          }\r\n  \r\n          .ig-input-area input:focus {\r\n              background: rgba(59, 130, 246, 0.05);\r\n              border-color: #1e40af;\r\n              box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.1);\r\n              transform: translateY(-1px);\r\n          }\r\n  \r\n          .error-container {\r\n              margin-top: 25px;\r\n              position: absolute;\r\n              bottom: -60px;\r\n              left: 20px;\r\n              right: 20px;\r\n          }\r\n  \r\n          #error-message {\r\n              color: #e53935;\r\n              margin-top: 25px;\r\n              display: none;\r\n              font-weight: 500;\r\n          }\r\n  \r\n          .paste-btn,\r\n          .view-btn {\r\n              border: 2px solid transparent;\r\n              border-radius: 12px;\r\n              padding: 16px 24px;\r\n              cursor: pointer;\r\n              font-weight: 600;\r\n              transition: all 0.3s ease;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 10px;\r\n              font-size: 15px;\r\n              margin-bottom: 15px;\r\n              position: relative;\r\n              z-index: 2;\r\n              text-transform: none;\r\n              letter-spacing: 0.5px;\r\n              background-clip: padding-box;\r\n          }\r\n  \r\n          .paste-btn {\r\n              background: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%);\r\n              color: white;\r\n              box-shadow: 0 4px 15px rgba(59, 130, 246, 0.3);\r\n              border: 2px solid #3b82f6;\r\n          }\r\n  \r\n          .paste-btn:hover {\r\n              background: linear-gradient(135deg, #1e40af 0%, #1e3a8a 100%);\r\n              border-color: #1e40af;\r\n              transform: translateY(-2px);\r\n              box-shadow: 0 8px 25px rgba(59, 130, 246, 0.4);\r\n          }\r\n  \r\n          .view-btn {\r\n              background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);\r\n              color: white;\r\n              box-shadow: 0 4px 15px rgba(139, 92, 246, 0.3);\r\n              border: 2px solid #8b5cf6;\r\n          }\r\n  \r\n          .view-btn:hover {\r\n              background: linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);\r\n              border-color: #7c3aed;\r\n              transform: translateY(-2px);\r\n              box-shadow: 0 8px 25px rgba(139, 92, 246, 0.4);\r\n          }\r\n  \r\n          .view-btn:disabled {\r\n              opacity: 0.6;\r\n              cursor: not-allowed;\r\n              transform: none;\r\n              background: #cbd5e1;\r\n              border-color: #cbd5e1;\r\n              box-shadow: none;\r\n          }\r\n  \r\n          \/* Ad Space *\/\r\n          .ad-space {\r\n              display: none;\r\n              margin-top: 20px;\r\n              text-align: center;\r\n              position: relative;\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              padding: 6px;\r\n              background: linear-gradient(135deg, #e53935, #1e88e5 35%, #8e24aa 70%, #ec407a);\r\n              background-size: 300% 300%;\r\n              animation: gradientBorder 6s ease infinite;\r\n          }\r\n        \r\n       \r\n        \r\n        .ig-tool-wrapper {\r\n      width: 100%;\r\n      margin: 20px auto;\r\n      padding: 40px;\r\n      border-radius: 24px;\r\n      backdrop-filter: blur(20px);\r\n      border: 2px solid rgba(59, 130, 246, 0.2);\r\n      color: #1e293b;\r\n      text-align: center;\r\n      box-shadow: 0 25px 50px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(59, 130, 246, 0.1);\r\n      position: relative;\r\n      overflow: hidden;\r\n  }\r\n        \r\n     \r\n        \r\n        .ig-input-area {\r\n      display: flex;\r\n      align-items: center;\r\n      background: rgba(225, 224, 253, 0.9);\r\n      backdrop-filter: blur(10px);\r\n      padding: 30px 25px;\r\n      border-radius: 20px;\r\n      gap: 20px;\r\n      margin: 0 auto;\r\n      max-width: 100%;\r\n      flex-wrap: wrap;\r\n      box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1), 0 0 0 2px rgba(59, 130, 246, 0.1);\r\n      position: relative;\r\n      border: 2px solid rgba(59, 130, 246, 0.2);\r\n  }\r\n  \r\n          @keyframes gradientBorder {\r\n              0% {\r\n                  background-position: 0% 50%;\r\n              }\r\n  \r\n              50% {\r\n                  background-position: 100% 50%;\r\n              }\r\n  \r\n              100% {\r\n                  background-position: 0% 50%;\r\n              }\r\n          }\r\n  \r\n          .ad-inner {\r\n              border-radius: 12px;\r\n              overflow: hidden;\r\n              background-color: #fff;\r\n              box-shadow: 0 10px 24px rgba(0, 0, 0, 0.1);\r\n              transition: transform 0.3s ease;\r\n              animation: floatAd 5s ease-in-out infinite;\r\n          }\r\n  \r\n          @keyframes floatAd {\r\n  \r\n              0%,\r\n              100% {\r\n                  transform: translateY(0px);\r\n              }\r\n  \r\n              50% {\r\n                  transform: translateY(-5px);\r\n              }\r\n          }\r\n  \r\n          .ad-placeholder {\r\n              display: block;\r\n              position: relative;\r\n              text-decoration: none;\r\n              color: inherit;\r\n          }\r\n  \r\n          .ad-placeholder::before {\r\n              content: \"Sponsored\";\r\n              position: absolute;\r\n              top: 12px;\r\n              left: 12px;\r\n              background-color: #fff;\r\n              color: #ec407a;\r\n              font-size: 12px;\r\n              font-weight: 600;\r\n              padding: 3px 10px;\r\n              border-radius: 5px;\r\n              box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);\r\n              animation: pulseTag 2s infinite;\r\n              z-index: 2;\r\n          }\r\n  \r\n          @keyframes pulseTag {\r\n              0% {\r\n                  transform: scale(1);\r\n                  opacity: 1;\r\n              }\r\n  \r\n              50% {\r\n                  transform: scale(1.05);\r\n                  opacity: 0.85;\r\n              }\r\n  \r\n              100% {\r\n                  transform: scale(1);\r\n                  opacity: 1;\r\n              }\r\n          }\r\n  \r\n          .ad-image {\r\n              width: 100%;\r\n              height: auto;\r\n              display: block;\r\n              transition: transform 0.4s ease;\r\n          }\r\n  \r\n          .ad-placeholder:hover .ad-image {\r\n              animation: wiggle 0.4s ease;\r\n              transform: scale(1.04);\r\n          }\r\n  \r\n          @keyframes wiggle {\r\n              0% {\r\n                  transform: rotate(0deg);\r\n              }\r\n  \r\n              25% {\r\n                  transform: rotate(1.5deg);\r\n              }\r\n  \r\n              50% {\r\n                  transform: rotate(-1.5deg);\r\n              }\r\n  \r\n              75% {\r\n                  transform: rotate(1.5deg);\r\n              }\r\n  \r\n              100% {\r\n                  transform: rotate(0deg);\r\n              }\r\n          }\r\n  \r\n          .note {\r\n              font-size: 14px;\r\n              color: rgba(255, 255, 255, 0.8);\r\n              margin-top: 15px;\r\n              font-style: italic;\r\n          }\r\n  \r\n          \/* Result Section *\/\r\n          .tools-result {\r\n              width: 100%;\r\n              margin-top: 60px;\r\n          }\r\n  \r\n        \r\n        .ig-result {\r\n      margin-top: 30px;\r\n      background: linear-gradient(135deg,#6366f1 0%,#8c60ff 100%);\r\n      border-radius: 20px;\r\n      padding: 30px;\r\n      color: #333;\r\n      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);\r\n      animation: fadeIn 0.5s ease-out;\r\n  }\r\n  \r\n          \/* Profile Header *\/\r\n        \r\n        \r\n     \r\n        \r\n      \r\n        \r\n        .ig-profile-header {\r\n      margin-bottom: 40px;\r\n      position: relative;\r\n      background: linear-gradient(to bottom, #c5d7f9, #c4c8ff);\r\n      border-radius: 16px;\r\n      padding: 30px;\r\n      box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);\r\n      border: 1px solid #f1f5f9;\r\n  }\r\n  \r\n          .profile-header-content {\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 30px;\r\n              flex-wrap: wrap;\r\n          }\r\n  \r\n          .profile-image-container {\r\n              position: relative;\r\n              flex-shrink: 0;\r\n          }\r\n  \r\n          .profile-image {\r\n              width: 150px;\r\n              height: 150px;\r\n              border-radius: 50%;\r\n              object-fit: cover;\r\n              border: 4px solid white;\r\n              box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);\r\n              transition: transform 0.3s;\r\n              background: linear-gradient(to bottom right, #1e88e5, #ec407a);\r\n              padding: 3px;\r\n              min-height: 150px;\r\n              min-width: 150px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              color: #94a3b8;\r\n              font-size: 60px;\r\n          }\r\n  \r\n          .profile-image:hover {\r\n              transform: scale(1.03);\r\n          }\r\n  \r\n          .view-profile-img {\r\n              position: absolute;\r\n              bottom: 5px;\r\n              right: 5px;\r\n              background-color: #1e88e5;\r\n              color: white;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 36px;\r\n              height: 36px;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s;\r\n              box-shadow: 0 5px 15px rgba(30, 136, 229, 0.3);\r\n              z-index: 5;\r\n          }\r\n  \r\n          .view-profile-img:hover {\r\n              transform: scale(1.1) rotate(15deg);\r\n              background-color: #1a75c6;\r\n          }\r\n  \r\n          .profile-info {\r\n              flex: 1;\r\n              text-align: left;\r\n              min-width: 250px;\r\n          }\r\n  \r\n          .profile-info h3 {\r\n              font-size: 24px;\r\n              margin: 0 0 5px;\r\n              font-weight: 700;\r\n              color: #1e293b;\r\n          }\r\n  \r\n          .profile-info h4 {\r\n              font-size: 18px;\r\n              margin: 0 0 15px;\r\n              font-weight: 600;\r\n              color: #475569;\r\n          }\r\n  \r\n          .stats {\r\n              display: flex;\r\n              gap: 25px;\r\n              margin: 15px 0;\r\n          }\r\n  \r\n          .stat-item {\r\n              display: flex;\r\n              flex-direction: column;\r\n              align-items: center;\r\n          }\r\n  \r\n          .stat-value {\r\n              font-size: 20px;\r\n              font-weight: 700;\r\n              color: #1e293b;\r\n          }\r\n  \r\n          .stat-label {\r\n              font-size: 14px;\r\n              color: #64748b;\r\n              margin-top: 3px;\r\n          }\r\n  \r\n          .profile-bio {\r\n              margin-top: 25px;\r\n              padding-top: 20px;\r\n              border-top: 1px solid #e2e8f0;\r\n              text-align: left;\r\n              color: #475569;\r\n              line-height: 1.6;\r\n          }\r\n  \r\n          .profile-link {\r\n              display: inline-flex;\r\n              align-items: center;\r\n              gap: 5px;\r\n              color: #1e88e5;\r\n              text-decoration: none;\r\n              font-weight: 500;\r\n              margin-top: 10px;\r\n              transition: all 0.3s;\r\n          }\r\n  \r\n          .profile-link:hover {\r\n              color: #1a75c6;\r\n              text-decoration: underline;\r\n          }\r\n  \r\n          \/* Tabs *\/\r\n          .ig-tabs {\r\n              display: flex;\r\n              justify-content: center;\r\n              margin: 30px 0;\r\n              gap: 15px;\r\n              flex-wrap: wrap;\r\n          }\r\n  \r\n          .ig-tabs button {\r\n              background: #f8fafc;\r\n              color: #64748b;\r\n              border: none;\r\n              font-weight: 600;\r\n              font-size: 15px;\r\n              padding: 12px 24px;\r\n              cursor: pointer;\r\n              border-radius: 50px;\r\n              transition: all 0.3s;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 8px;\r\n              box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);\r\n          }\r\n  \r\n          .ig-tabs button i {\r\n              font-size: 16px;\r\n          }\r\n  \r\n          .ig-tabs button.active {\r\n              background: linear-gradient(135deg, #1e88e5, #ec407a);\r\n              color: white;\r\n              box-shadow: 0 5px 15px rgba(30, 136, 229, 0.3);\r\n              transform: translateY(-2px);\r\n          }\r\n  \r\n          .ig-tabs button:hover:not(.active) {\r\n              background: #f1f5f9;\r\n              color: #334155;\r\n              transform: translateY(-2px);\r\n          }\r\n  \r\n          \/* Tab Content *\/\r\n          .tab-content {\r\n              padding: 20px;\r\n              text-align: center;\r\n              color: #666;\r\n              display: none;\r\n          }\r\n  \r\n          .tab-content.active {\r\n              display: block;\r\n          }\r\n  \r\n       \r\n        \r\n    \r\n     \r\n        \r\n     \r\n        \r\n        .no-result {\r\n      border: 1px dashed #443c62;\r\n      padding: 30px 20px;\r\n      margin-top: 30px;\r\n      text-align: center;\r\n      font-size: 16px;\r\n      font-weight: 500;\r\n      border-radius: 12px;\r\n      color: #64748b;\r\n      background: #e5e7ff;\r\n  }\r\n  \r\n          .no-result i {\r\n              font-size: 48px;\r\n              color: #cbd5e1;\r\n              margin-bottom: 15px;\r\n              display: block;\r\n          }\r\n  \r\n          \/* Private Account Message *\/\r\n          .private-account-message {\r\n              background-color: rgba(229, 57, 53, 0.1);\r\n              color: #e53935;\r\n              padding: 20px;\r\n              border-radius: 12px;\r\n              margin-top: 20px;\r\n              text-align: center;\r\n              font-weight: 500;\r\n              border: 1px solid rgba(229, 57, 53, 0.2);\r\n              animation: fadeIn 0.5s ease-out;\r\n          }\r\n  \r\n          .private-account-message i {\r\n              margin-right: 8px;\r\n              font-size: 18px;\r\n          }\r\n  \r\n          \/* Posts Grid *\/\r\n          .posts-grid {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\r\n              gap: 25px;\r\n              margin-top: 25px;\r\n          }\r\n  \r\n          .post-card {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);\r\n              transition: all 0.3s;\r\n              border: 1px solid #f1f5f9;\r\n              animation: slideUp 0.5s ease-out;\r\n              animation-fill-mode: both;\r\n          }\r\n  \r\n          .post-card:hover {\r\n              transform: translateY(-8px);\r\n              box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .post-img-container {\r\n              position: relative;\r\n              overflow: hidden;\r\n              aspect-ratio: 1 \/ 1;\r\n          }\r\n  \r\n          .post-thumb {\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              display: block;\r\n              transition: transform 0.5s;\r\n          }\r\n  \r\n          .post-overlay {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              right: 0;\r\n              bottom: 0;\r\n              background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.7) 100%);\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              opacity: 1;\r\n              transition: opacity 0.3s ease;\r\n              z-index: 3;\r\n          }\r\n  \r\n          .post-img-container:hover .post-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .post-img-container:hover .post-thumb {\r\n              transform: scale(1.08);\r\n          }\r\n  \r\n          .post-download-btn,\r\n          .post-view-btn {\r\n              background: white;\r\n              color: #ec407a;\r\n              width: 45px;\r\n              height: 45px;\r\n              border-radius: 50%;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s;\r\n              border: none;\r\n              font-size: 16px;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .post-download-btn:hover,\r\n          .post-view-btn:hover {\r\n              transform: scale(1.1) translateY(-3px);\r\n              box-shadow: 0 8px 20px rgba(30, 136, 229, 0.15);\r\n          }\r\n  \r\n          .post-download-btn:hover {\r\n              background: #1e88e5;\r\n              color: white;\r\n          }\r\n  \r\n          .post-view-btn {\r\n              background: rgba(255, 255, 255, 0.9);\r\n              color: #333;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 50px;\r\n              height: 50px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s ease;\r\n              font-size: 20px;\r\n          }\r\n  \r\n          .post-view-btn:hover {\r\n              background: white;\r\n              transform: scale(1.1);\r\n          }\r\n  \r\n          .post-meta {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .post-stats,\r\n          .reel-stats {\r\n              background: linear-gradient(135deg, rgba(30, 136, 229, 0.15), rgba(236, 64, 122, 0.15));\r\n              padding: 8px 12px;\r\n              border-radius: 12px;\r\n              border: 1px solid rgba(30, 136, 229, 0.1);\r\n              backdrop-filter: blur(10px);\r\n              -webkit-backdrop-filter: blur(10px);\r\n          }\r\n  \r\n          .post-stats span,\r\n          .reel-stats span {\r\n              color: #1e293b;\r\n              font-weight: 600;\r\n              font-size: 13px;\r\n          }\r\n  \r\n          .post-stats span i,\r\n          .reel-stats span i {\r\n              color: #ec407a;\r\n              margin-right: 4px;\r\n          }\r\n  \r\n          .post-stats {\r\n              display: flex;\r\n              gap: 15px;\r\n              margin-bottom: 10px;\r\n          }\r\n  \r\n          .post-stats span {\r\n              font-size: 14px;\r\n              color: #64748b;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 5px;\r\n          }\r\n  \r\n          .post-stats span i {\r\n              color: #ec407a;\r\n          }\r\n  \r\n          .post-meta .caption {\r\n              font-size: 15px;\r\n              color: #334155;\r\n              margin-bottom: 10px;\r\n              line-height: 1.5;\r\n              font-weight: 500;\r\n              display: -webkit-box;\r\n              -webkit-line-clamp: 2;\r\n              -webkit-box-orient: vertical;\r\n              overflow: hidden;\r\n          }\r\n  \r\n          .post-meta .time {\r\n              font-size: 13px;\r\n              color: #94a3b8;\r\n              display: block;\r\n              font-weight: 400;\r\n          }\r\n  \r\n          .post-stats-row {\r\n              display: flex;\r\n              justify-content: space-between;\r\n              align-items: center;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          \/* Stories Container *\/\r\n          .stories-container {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\r\n              gap: 20px;\r\n              margin-top: 25px;\r\n          }\r\n  \r\n          .story-card {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\r\n              transition: all 0.3s;\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .story-card:hover {\r\n              transform: translateY(-5px);\r\n              box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);\r\n          }\r\n  \r\n          .story-img-container {\r\n              position: relative;\r\n              overflow: hidden;\r\n              aspect-ratio: 9 \/ 16;\r\n          }\r\n  \r\n          .story-thumb {\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              display: block;\r\n              transition: transform 0.5s;\r\n          }\r\n  \r\n          .story-overlay {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background: rgba(0, 0, 0, 0.4);\r\n              backdrop-filter: blur(2px);\r\n              -webkit-backdrop-filter: blur(2px);\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              opacity: 0;\r\n              transition: all 0.3s;\r\n              gap: 15px;\r\n              flex-direction: column;\r\n          }\r\n  \r\n          .story-img-container:hover .story-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .story-img-container:hover .story-thumb {\r\n              transform: scale(1.05);\r\n          }\r\n  \r\n          .story-download-btn,\r\n          .story-view-btn {\r\n              background: white;\r\n              color: #1e293b;\r\n              width: 40px;\r\n              height: 40px;\r\n              border-radius: 50%;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s;\r\n              border: none;\r\n              font-size: 16px;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);\r\n              padding: 0px;\r\n          }\r\n  \r\n          .story-download-btn:hover,\r\n          .story-view-btn:hover {\r\n              transform: scale(1.1);\r\n              box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);\r\n          }\r\n  \r\n          .story-download-btn:hover {\r\n              background: #8e24aa;\r\n              color: white;\r\n          }\r\n  \r\n          .story-view-btn:hover {\r\n              background: #f8bbd0;\r\n              color: #8e24aa;\r\n          }\r\n  \r\n          .story-meta {\r\n              padding: 12px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .story-meta .time {\r\n              font-size: 13px;\r\n              color: #94a3b8;\r\n              font-weight: 400;\r\n          }\r\n  \r\n          .story-stats-row {\r\n              display: flex;\r\n              justify-content: space-between;\r\n              align-items: center;\r\n              background: linear-gradient(135deg, rgba(236, 64, 122, 0.1), rgba(30, 136, 229, 0.1));\r\n              padding: 6px 10px;\r\n              border-radius: 8px;\r\n              border: 1px solid rgba(236, 64, 122, 0.2);\r\n          }\r\n  \r\n          .story-stats-row .time {\r\n              color: #64748b;\r\n              font-weight: 500;\r\n          }\r\n  \r\n          .story-stats-row {\r\n              display: flex;\r\n              justify-content: space-between;\r\n              align-items: center;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          \/* Highlights Container *\/\r\n          .highlights-container {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\r\n              gap: 20px;\r\n              margin-top: 25px;\r\n          }\r\n  \r\n          .highlight-card {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\r\n              transition: all 0.3s;\r\n              border: 1px solid #f1f5f9;\r\n              cursor: pointer;\r\n              padding: 15px 10px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .highlight-card:hover {\r\n              transform: translateY(-5px) scale(1.02);\r\n              box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);\r\n          }\r\n  \r\n          .highlight-img-container {\r\n              position: relative;\r\n              overflow: hidden;\r\n              aspect-ratio: 1 \/ 1;\r\n              border-radius: 50%;\r\n              width: 120px;\r\n              height: 120px;\r\n              margin: 0 auto 10px;\r\n              border: 3px solid #e53935;\r\n              background: linear-gradient(to bottom right, #1e88e5, #ec407a);\r\n              padding: 3px;\r\n          }\r\n  \r\n          .highlight-thumb {\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              display: block;\r\n              transition: transform 0.5s;\r\n              border-radius: 50%;\r\n          }\r\n  \r\n          .highlight-meta {\r\n              padding: 5px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .highlight-title {\r\n              font-size: 14px;\r\n              color: #334155;\r\n              font-weight: 600;\r\n              margin: 0;\r\n              white-space: nowrap;\r\n              overflow: hidden;\r\n              text-overflow: ellipsis;\r\n          }\r\n  \r\n          .highlight-overlay {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background-color: rgba(0, 0, 0, 0.5);\r\n              opacity: 0;\r\n              transition: opacity 0.3s;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n          }\r\n  \r\n          .highlight-img-container:hover .highlight-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .highlight-view-btn {\r\n              background-color: white;\r\n              color: #1e88e5;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 40px;\r\n              height: 40px;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              cursor: pointer;\r\n              transition: transform 0.2s;\r\n          }\r\n  \r\n          .highlight-view-btn:hover {\r\n              transform: scale(1.1);\r\n          }\r\n  \r\n          \/* Reels Grid *\/\r\n          .reels-grid {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));\r\n              gap: 25px;\r\n              margin-top: 25px;\r\n          }\r\n  \r\n          .reel-card {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);\r\n              transition: all 0.3s;\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .reel-card:hover {\r\n              transform: translateY(-8px);\r\n              box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .reel-img-container {\r\n              position: relative;\r\n              overflow: hidden;\r\n              aspect-ratio: 9 \/ 16;\r\n          }\r\n  \r\n          .reel-thumb {\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              display: block;\r\n              transition: transform 0.5s;\r\n          }\r\n  \r\n          .reel-overlay {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background: rgba(0, 0, 0, 0.4);\r\n              backdrop-filter: blur(2px);\r\n              -webkit-backdrop-filter: blur(2px);\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              opacity: 0;\r\n              transition: all 0.3s;\r\n              gap: 15px;\r\n              flex-direction: column;\r\n          }\r\n  \r\n          .reel-img-container:hover .reel-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .reel-img-container:hover .reel-thumb {\r\n              transform: scale(1.05);\r\n          }\r\n  \r\n          .reel-download-btn,\r\n          .reel-view-btn {\r\n              background: white;\r\n              color: #1e88e5;\r\n              width: 45px;\r\n              height: 45px;\r\n              border-radius: 50%;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s;\r\n              border: none;\r\n              font-size: 16px;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .reel-download-btn:hover {\r\n              background: #1e88e5;\r\n              color: white;\r\n          }\r\n  \r\n          .reel-view-btn:hover {\r\n              background: #ec407a;\r\n              color: #fff;\r\n          }\r\n  \r\n          .reel-meta {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .reel-meta .caption {\r\n              font-size: 15px;\r\n              color: #334155;\r\n              margin-bottom: 10px;\r\n              line-height: 1.5;\r\n              font-weight: 500;\r\n              display: -webkit-box;\r\n              -webkit-line-clamp: 2;\r\n              -webkit-box-orient: vertical;\r\n              overflow: hidden;\r\n          }\r\n  \r\n          .reel-stats,\r\n          .post-stats {\r\n              background: linear-gradient(135deg, rgba(30, 136, 229, 0.15), rgba(236, 64, 122, 0.15));\r\n              padding: 8px 12px;\r\n              border-radius: 12px;\r\n              border: 1px solid rgba(30, 136, 229, 0.1);\r\n              backdrop-filter: blur(10px);\r\n              -webkit-backdrop-filter: blur(10px);\r\n          }\r\n  \r\n          .reel-stats span,\r\n          .post-stats span {\r\n              color: #1e293b;\r\n              font-weight: 600;\r\n              font-size: 13px;\r\n          }\r\n  \r\n          .reel-stats span i,\r\n          .post-stats span i {\r\n              color: #ec407a;\r\n              margin-right: 4px;\r\n          }\r\n  \r\n          .reel-stats {\r\n              display: flex;\r\n              gap: 15px;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          .reel-stats span {\r\n              font-size: 13px;\r\n              color: #64748b;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 5px;\r\n          }\r\n  \r\n          .reel-stats span i {\r\n              color: #8e24aa;\r\n          }\r\n  \r\n          .reel-meta .time {\r\n              font-size: 13px;\r\n              color: #94a3b8;\r\n              display: block;\r\n              font-weight: 400;\r\n          }\r\n  \r\n          .reel-stats-row {\r\n              display: flex;\r\n              justify-content: space-between;\r\n              align-items: center;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          \/* Video Elements *\/\r\n          .post-video,\r\n          .story-video,\r\n          .reel-video {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              object-fit: cover;\r\n              z-index: 2;\r\n          }\r\n  \r\n          .post-fullscreen-btn,\r\n          .story-fullscreen-btn,\r\n          .reel-fullscreen-btn {\r\n              position: absolute;\r\n              top: 10px;\r\n              right: 10px;\r\n              background: rgba(255, 255, 255, 0.9);\r\n              color: #333;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 40px;\r\n              height: 40px;\r\n              display: flex;\r\n              align-items: center;\r\n              justify-content: center;\r\n              cursor: pointer;\r\n              transition: all 0.3s ease;\r\n              font-size: 16px;\r\n              z-index: 4;\r\n          }\r\n  \r\n          .post-fullscreen-btn:hover,\r\n          .story-fullscreen-btn:hover,\r\n          .reel-fullscreen-btn:hover {\r\n              background: white;\r\n              transform: scale(1.1);\r\n          }\r\n  \r\n          \/* Media Type Indicators *\/\r\n          .media-type-indicator {\r\n              position: absolute;\r\n              top: 8px;\r\n              left: 8px;\r\n              background-color: rgba(0, 0, 0, 0.8);\r\n              color: white;\r\n              border-radius: 4px;\r\n              padding: 4px 8px;\r\n              font-size: 11px;\r\n              font-weight: bold;\r\n              z-index: 5;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 4px;\r\n              pointer-events: none;\r\n          }\r\n  \r\n          .video-indicator {\r\n              background-color: rgba(220, 53, 69, 0.9);\r\n          }\r\n  \r\n          .image-indicator {\r\n              background-color: rgba(13, 110, 253, 0.9);\r\n          }\r\n  \r\n          \/* Modal Styles *\/\r\n          .ipgv-profile-img-modal {\r\n              position: fixed;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              z-index: 10000;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              opacity: 0;\r\n              visibility: hidden;\r\n              transition: all 0.3s ease;\r\n          }\r\n  \r\n          .ipgv-profile-img-modal.active {\r\n              opacity: 1;\r\n              visibility: visible;\r\n          }\r\n  \r\n          .ipgv-modal-backdrop {\r\n              position: absolute;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              background-color: rgba(0, 0, 0, 0.85);\r\n              cursor: pointer;\r\n          }\r\n  \r\n          .ipgv-modal-content {\r\n              position: relative;\r\n              max-width: 90vw;\r\n              max-height: 90vh;\r\n              background-color: white;\r\n              border-radius: 12px;\r\n              overflow: hidden;\r\n              box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);\r\n              transform: scale(0.8);\r\n              transition: transform 0.3s ease;\r\n              z-index: 10001;\r\n          }\r\n  \r\n          .ipgv-profile-img-modal.active .ipgv-modal-content {\r\n              transform: scale(1);\r\n          }\r\n  \r\n          .ipgv-modal-img {\r\n              display: block;\r\n              width: 100%;\r\n              max-width: 500px;\r\n              height: auto;\r\n              max-height: 70vh;\r\n              object-fit: contain;\r\n          }\r\n  \r\n          .ipgv-modal-actions {\r\n              display: flex;\r\n              justify-content: center;\r\n              padding: 20px;\r\n              background-color: #f8f9fa;\r\n          }\r\n  \r\n          .ipgv-modal-download-btn {\r\n              background-color: #1e88e5;\r\n              color: white;\r\n              border: none;\r\n              border-radius: 8px;\r\n              padding: 12px 24px;\r\n              font-weight: 600;\r\n              font-size: 14px;\r\n              cursor: pointer;\r\n              transition: all 0.2s ease;\r\n              display: flex;\r\n              align-items: center;\r\n              gap: 8px;\r\n          }\r\n  \r\n          .ipgv-modal-download-btn:hover {\r\n              background-color: #1a75c6;\r\n              transform: translateY(-1px);\r\n          }\r\n  \r\n          .ipgv-close-modal {\r\n              position: absolute;\r\n              top: 15px;\r\n              right: 15px;\r\n              background-color: rgba(0, 0, 0, 0.6);\r\n              color: white;\r\n              border: none;\r\n              border-radius: 50%;\r\n              width: 35px;\r\n              height: 35px;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              cursor: pointer;\r\n              transition: all 0.2s ease;\r\n              z-index: 10002;\r\n          }\r\n  \r\n          .ipgv-close-modal:hover {\r\n              background-color: rgba(0, 0, 0, 0.8);\r\n              transform: scale(1.1);\r\n          }\r\n  \r\n          body.ipgv-modal-open {\r\n              overflow: hidden;\r\n          }\r\n  \r\n          \/* abc *\/\r\n  \r\n          \/* Fixed Reel Controls - Always Visible Play and Fullscreen *\/\r\n          .reel-img-container .reel-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .reel-img-container .reel-view-btn {\r\n              opacity: 1;\r\n              visibility: visible;\r\n          }\r\n  \r\n          .reel-img-container .reel-fullscreen-btn {\r\n              opacity: 1;\r\n              visibility: visible;\r\n              display: flex;\r\n          }\r\n  \r\n          .reel-img-container:hover .reel-overlay {\r\n              opacity: 1;\r\n          }\r\n  \r\n          .reel-video.playing {\r\n              display: block;\r\n          }\r\n  \r\n          .reel-thumb.hidden {\r\n              display: none;\r\n          }\r\n  \r\n  \r\n          \/* abc *\/\r\n  \r\n          \/* Skeleton Loaders *\/\r\n          @keyframes shimmer {\r\n              0% {\r\n                  background-position: -1000px 0;\r\n              }\r\n  \r\n              100% {\r\n                  background-position: 1000px 0;\r\n              }\r\n          }\r\n  \r\n          .skeleton-profile {\r\n              width: 100%;\r\n              animation: fadeIn 0.5s ease-out;\r\n          }\r\n  \r\n          .skeleton-profile-header {\r\n              display: flex;\r\n              gap: 30px;\r\n              padding: 30px;\r\n              background: #f9fafb;\r\n              border-radius: 16px;\r\n              margin-bottom: 20px;\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .skeleton-avatar {\r\n              width: 150px;\r\n              height: 150px;\r\n              border-radius: 50%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              flex-shrink: 0;\r\n              border: 4px solid white;\r\n              box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);\r\n          }\r\n  \r\n          .skeleton-profile-info {\r\n              flex: 1;\r\n              display: flex;\r\n              flex-direction: column;\r\n              gap: 15px;\r\n          }\r\n  \r\n          .skeleton-username {\r\n              height: 28px;\r\n              width: 180px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 6px;\r\n          }\r\n  \r\n          .skeleton-fullname {\r\n              height: 20px;\r\n              width: 140px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 6px;\r\n          }\r\n  \r\n          .skeleton-stats {\r\n              display: flex;\r\n              gap: 25px;\r\n              margin-top: 10px;\r\n          }\r\n  \r\n          .skeleton-stat {\r\n              height: 40px;\r\n              width: 60px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 6px;\r\n          }\r\n  \r\n          .skeleton-bio {\r\n              height: 60px;\r\n              width: 100%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 6px;\r\n              margin-bottom: 30px;\r\n          }\r\n  \r\n          .skeleton-tabs {\r\n              display: flex;\r\n              justify-content: center;\r\n              gap: 15px;\r\n              margin-bottom: 30px;\r\n          }\r\n  \r\n          .skeleton-tab {\r\n              height: 40px;\r\n              width: 100px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 50px;\r\n          }\r\n  \r\n          \/* Posts Skeleton *\/\r\n          .skeleton-posts-grid {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\r\n              gap: 25px;\r\n          }\r\n  \r\n          .skeleton-post {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .skeleton-post-img {\r\n              aspect-ratio: 1 \/ 1;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n          }\r\n  \r\n          .skeleton-post-meta {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .skeleton-post-stats {\r\n              display: flex;\r\n              gap: 15px;\r\n              margin-bottom: 10px;\r\n          }\r\n  \r\n          .skeleton-post-stat {\r\n              height: 16px;\r\n              width: 60px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n          }\r\n  \r\n          .skeleton-post-caption {\r\n              height: 16px;\r\n              width: 100%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          .skeleton-post-caption-short {\r\n              height: 16px;\r\n              width: 70%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin-bottom: 10px;\r\n          }\r\n  \r\n          .skeleton-post-time {\r\n              height: 14px;\r\n              width: 80px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n          }\r\n  \r\n          \/* Stories Skeleton *\/\r\n          .skeleton-stories-container {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\r\n              gap: 20px;\r\n          }\r\n  \r\n          .skeleton-story {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .skeleton-story-img {\r\n              aspect-ratio: 9 \/ 16;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n          }\r\n  \r\n          .skeleton-story-meta {\r\n              padding: 12px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .skeleton-story-time {\r\n              height: 14px;\r\n              width: 80px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin: 0 auto;\r\n          }\r\n  \r\n          \/* Highlights Skeleton *\/\r\n          .skeleton-highlights-container {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\r\n              gap: 20px;\r\n          }\r\n  \r\n          .skeleton-highlight {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);\r\n              border: 1px solid #f1f5f9;\r\n              padding: 15px 10px;\r\n              text-align: center;\r\n          }\r\n  \r\n          .skeleton-highlight-img {\r\n              width: 80px;\r\n              height: 80px;\r\n              border-radius: 50%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              margin: 0 auto 10px;\r\n              border: 3px solid #e53935;\r\n          }\r\n  \r\n          .skeleton-highlight-title {\r\n              height: 16px;\r\n              width: 80px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin: 0 auto;\r\n          }\r\n  \r\n          \/* Reels Skeleton *\/\r\n          .skeleton-reels-grid {\r\n              display: grid;\r\n              grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));\r\n              gap: 25px;\r\n          }\r\n  \r\n          .skeleton-reel {\r\n              border-radius: 16px;\r\n              overflow: hidden;\r\n              background: #fff;\r\n              box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);\r\n              border: 1px solid #f1f5f9;\r\n          }\r\n  \r\n          .skeleton-reel-img {\r\n              aspect-ratio: 9 \/ 16;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n          }\r\n  \r\n          .skeleton-reel-meta {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .skeleton-reel-caption {\r\n              height: 16px;\r\n              width: 100%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          .skeleton-reel-caption-short {\r\n              height: 16px;\r\n              width: 70%;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n              margin-bottom: 10px;\r\n          }\r\n  \r\n          .skeleton-reel-stats {\r\n              display: flex;\r\n              gap: 15px;\r\n              margin-bottom: 8px;\r\n          }\r\n  \r\n          .skeleton-reel-stat {\r\n              height: 16px;\r\n              width: 60px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n          }\r\n  \r\n          .skeleton-reel-time {\r\n              height: 14px;\r\n              width: 80px;\r\n              background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%);\r\n              background-size: 1000px 100%;\r\n              animation: shimmer 2s infinite linear;\r\n              border-radius: 4px;\r\n          }\r\n  \r\n          \/* Animations *\/\r\n          @keyframes fadeIn {\r\n              from {\r\n                  opacity: 0;\r\n              }\r\n  \r\n              to {\r\n                  opacity: 1;\r\n              }\r\n          }\r\n  \r\n          @keyframes slideUp {\r\n              from {\r\n                  transform: translateY(20px);\r\n                  opacity: 0;\r\n              }\r\n  \r\n              to {\r\n                  transform: translateY(0);\r\n                  opacity: 1;\r\n              }\r\n          }\r\n  \r\n          @keyframes spin {\r\n              0% {\r\n                  transform: rotate(0deg);\r\n              }\r\n  \r\n              100% {\r\n                  transform: rotate(360deg);\r\n              }\r\n          }\r\n  \r\n          \/* Professional Responsive Design *\/\r\n          @media (max-width: 768px) {\r\n              .wrapper {\r\n                  padding: 100px 0;\r\n              }\r\n  \r\n              .main-contain {\r\n                  padding: 10px;\r\n              }\r\n  \r\n              .ig-tool-wrapper {\r\n                  padding: 25px 20px;\r\n                  margin: 10px auto;\r\n                  border-radius: 20px;\r\n              }\r\n  \r\n              .ig-header h1 {\r\n                  font-size: 28px;\r\n                  margin-bottom: 15px;\r\n                  background: white;\r\n                  -webkit-background-clip: text;\r\n                  -webkit-text-fill-color: transparent;\r\n                  background-clip: text;\r\n              }\r\n  \r\n              .viewer-anonymous {\r\n                  background: white;\r\n                  -webkit-background-clip: text;\r\n                  -webkit-text-fill-color: transparent;\r\n                  background-clip: text;\r\n              }\r\n  \r\n              .ig-header p {\r\n                  font-size: 16px;\r\n                  margin: 15px 0 25px;\r\n              }\r\n  \r\n              .ig-input-area {\r\n                  padding: 20px 15px;\r\n                  flex-direction: column;\r\n                  gap: 15px;\r\n                  border-radius: 16px;\r\n              }\r\n  \r\n              .ig-icon {\r\n                  width: 100%;\r\n                  text-align: left;\r\n                  margin-left: 0;\r\n                  margin-bottom: 10px;\r\n              }\r\n  \r\n              .ig-input-area input {\r\n                  margin: 0 0 15px 0;\r\n                  width: 100%;\r\n                  min-width: 100%;\r\n                  padding: 14px 16px;\r\n              }\r\n  \r\n              .paste-btn {\r\n                  display: none;\r\n              }\r\n  \r\n              .view-btn {\r\n                  width: 100%;\r\n                  justify-content: center;\r\n                  padding: 14px 20px;\r\n              }\r\n  \r\n              .profile-header-content {\r\n                  flex-direction: column;\r\n                  align-items: center;\r\n                  text-align: center;\r\n              }\r\n  \r\n              .profile-info {\r\n                  text-align: center;\r\n              }\r\n  \r\n              .stats {\r\n                  justify-content: center;\r\n              }\r\n  \r\n              .posts-grid {\r\n                  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));\r\n                  gap: 15px;\r\n              }\r\n  \r\n              .stories-container {\r\n                  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\r\n              }\r\n  \r\n              .highlights-container {\r\n                  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\r\n              }\r\n  \r\n              .reels-grid {\r\n                  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\r\n              }\r\n  \r\n              .post-meta .caption,\r\n              .reel-meta .caption {\r\n                  font-size: 14px;\r\n              }\r\n  \r\n              .ig-tabs button {\r\n                  padding: 10px 16px;\r\n                  font-size: 14px;\r\n              }\r\n  \r\n              .ipgv-modal-content {\r\n                  max-width: 95vw;\r\n                  max-height: 85vh;\r\n                  margin: 20px;\r\n              }\r\n  \r\n              .ipgv-modal-img {\r\n                  max-height: 60vh;\r\n              }\r\n  \r\n              .ipgvmodal-actions {\r\n                  padding: 15px;\r\n              }\r\n  \r\n              .ipgv-modal-download-btn {\r\n                  padding: 10px 20px;\r\n                  font-size: 13px;\r\n              }\r\n  \r\n              .skeleton-profile-header {\r\n                  flex-direction: column;\r\n                  align-items: center;\r\n              }\r\n  \r\n              .skeleton-avatar {\r\n                  margin-bottom: 20px;\r\n              }\r\n  \r\n              .skeleton-username,\r\n              .skeleton-fullname {\r\n                  margin: 0 auto;\r\n              }\r\n  \r\n              .skeleton-stats {\r\n                  justify-content: center;\r\n              }\r\n  \r\n              .skeleton-posts-grid {\r\n                  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));\r\n              }\r\n  \r\n              .skeleton-stories-container {\r\n                  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));\r\n              }\r\n  \r\n              .skeleton-highlights-container {\r\n                  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\r\n              }\r\n  \r\n              .skeleton-reels-grid {\r\n                  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\r\n              }\r\n        .ig-profile-header {\r\n      margin-bottom: 40px;\r\n      position: relative;\r\n      background: linear-gradient(to bottom, #f2e1f0, #f2e2f1);\r\n      border-radius: 16px;\r\n      padding: 30px;\r\n      box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);\r\n      border: 1px solid #f1f5f9;\r\n      display: flex;\r\n      justify-content: center;\r\n      align-items: center;\r\n      flex-direction: column;\r\n  }\r\n          }\r\n  \r\n          .ipgv-media-modal {\r\n              position: fixed;\r\n              top: 0;\r\n              left: 0;\r\n              width: 100%;\r\n              height: 100%;\r\n              z-index: 10000;\r\n              display: flex;\r\n              justify-content: center;\r\n              align-items: center;\r\n              opacity: 0;\r\n              visibility: hidden;\r\n              transition: all 0.3s ease;\r\n          }\r\n  \r\n          .ipgv-media-modal.active {\r\n              opacity: 1;\r\n              visibility: visible;\r\n          }\r\n  \r\n          .ipgv-modal-media {\r\n              display: block;\r\n              width: 100%;\r\n              height: auto;\r\n              border-radius: 8px;\r\n          }\r\n  \r\n          \/* Medium Device Responsive Design *\/\r\n          @media (max-width: 1024px) and (min-width: 769px) {\r\n              .wrapper {\r\n                  padding: 15px;\r\n              }\r\n  \r\n              .main-contain {\r\n                  padding: 15px;\r\n              }\r\n  \r\n              .ig-tool-wrapper {\r\n                  padding: 35px 30px;\r\n                  margin: 15px auto;\r\n              }\r\n  \r\n              .ig-header h1 {\r\n                  font-size: 36px;\r\n                  background: white;\r\n                  -webkit-background-clip: text;\r\n                  -webkit-text-fill-color: transparent;\r\n                  background-clip: text;\r\n              }\r\n  \r\n              .viewer-anonymous {\r\n                  background: white;\r\n                  -webkit-background-clip: text;\r\n                  -webkit-text-fill-color: transparent;\r\n                  background-clip: text;\r\n              }\r\n  \r\n              .ig-header p {\r\n                  font-size: 17px;\r\n              }\r\n  \r\n              .ig-input-area {\r\n                  padding: 25px 20px;\r\n                  gap: 18px;\r\n              }\r\n  \r\n              .ig-input-area input {\r\n                  padding: 15px 18px;\r\n              }\r\n  \r\n              .paste-btn,\r\n              .view-btn {\r\n                  padding: 15px 22px;\r\n              }\r\n        .ig-profile-header {\r\n      margin-bottom: 40px;\r\n      position: relative;\r\n      background: linear-gradient(to bottom, #f2e1f0, #f2e2f1);\r\n      border-radius: 16px;\r\n      padding: 30px;\r\n      box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);\r\n      border: 1px solid #f1f5f9;\r\n      display: flex;\r\n      justify-content: center;\r\n      align-items: center;\r\n      flex-direction: column;\r\n  }\r\n          }\r\n  \r\n          \/* Enhanced Video Controls *\/\r\n      <\/style>\r\n  \r\n      <div class=\"wrapper\">\r\n          <div class=\"download-status\" id=\"download-status\"><\/div>\r\n  \r\n          <div class=\"main-contain offcontents\">\r\n          <div class=\"ig-tool-wrapper\">\r\n              <div class=\"ig-header\">\r\n                  <h1>Instagram <span class=\"viewer-anonymous\">Friend Viewer<\/span><\/h1>   \r\n                  <p>Instagram profile viewer allows you to watch Instagram stories anonymously and <br> download videos\r\n                      and photos with ease.<\/p>\r\n              <\/div>\r\n  \r\n              <div class=\"ig-input-area\" style=\"position:relative\">\r\n                  <span class=\"ig-icon\">Enter your instagram @username<\/span>\r\n                  <input type=\"text\" id=\"input-url\" required=\"\" placeholder=\"Instagram @username\">\r\n                  <button class=\"paste-btn\" id=\"paste-btn\"><i class=\"fa-solid fa-paste\"><\/i> Paste<\/button>\r\n                  <button class=\"view-btn\" id=\"view-btn\"> <i class=\"fa-solid fa-unlock\"><\/i> View Profile<\/button>\r\n  \r\n                  <div style=\"margin-top:25px; position:absolute;bottom:100px\">\r\n                      <br>\r\n                      <span id=\"error-message\" style=\"color: #e53935; margin-top: 25px; display: none;\"><\/span>\r\n                      <br>\r\n                  <\/div>\r\n              <\/div>\r\n  \r\n              <div class=\"ad-space\">\r\n                  <div class=\"ad-inner\">\r\n                      <a class=\"ad-placeholder\">\r\n                          <img decoding=\"async\" src=\"https:\/\/bitchipdigital.com\/wp-content\/uploads\/2025\/05\/appsumo.png\" alt=\"Advertisement\" class=\"ad-image\">\r\n                      <\/a>\r\n                  <\/div>\r\n              <\/div>\r\n  \r\n              <div class=\"note\">\r\n                  Free unlimited profile viewer tool, enjoy it!\r\n              <\/div>\r\n          <\/div>\r\n  \r\n          <div class=\"tools-result\">\r\n              <div class=\"ig-result\">\r\n                  <!-- Profile Header -->\r\n                  <div class=\"ig-profile-header\">\r\n                      <div class=\"profile-header-content\">\r\n                          <div class=\"profile-image-container\">\r\n                              <div class=\"profile-image\" style=\"background: #f1f5f9; display: flex; align-items: center; justify-content: center; color: #94a3b8;\">\r\n                                  <i class=\"fa-solid fa-user\" style=\"font-size: 60px;\"><\/i>\r\n                              <\/div>\r\n                              <button class=\"view-profile-img\"><i class=\"fa-solid fa-expand\"><\/i><\/button>\r\n                          <\/div>\r\n                          <div class=\"profile-info\">\r\n                              <h3 id=\"profile-username\">@username<\/h3>\r\n                              <h4 id=\"profile-fullname\">Full Name<\/h4>\r\n                              <div class=\"stats\">\r\n                                  <div class=\"stat-item\">\r\n                                      <div class=\"stat-value\" id=\"posts-count\">0<\/div>\r\n                                      <div class=\"stat-label\">posts<\/div>\r\n                                  <\/div>\r\n                                  <div class=\"stat-item\">\r\n                                      <div class=\"stat-value\" id=\"followers-count\">0<\/div>\r\n                                      <div class=\"stat-label\">followers<\/div>\r\n                                  <\/div>\r\n                                  <div class=\"stat-item\">\r\n                                      <div class=\"stat-value\" id=\"following-count\">0<\/div>\r\n                                      <div class=\"stat-label\">following<\/div>\r\n                                  <\/div>\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n  \r\n                  <!-- Tabs -->\r\n                  <div class=\"ig-tabs\">\r\n                      <button class=\"active\" onclick=\"switchTab('posts', this)\">\r\n                          <i class=\"fa-solid fa-grid-2\"><\/i> Posts\r\n                      <\/button>\r\n                      <button onclick=\"switchTab('stories', this)\">\r\n                          <i class=\"fa-solid fa-circle\"><\/i> Stories\r\n                      <\/button>\r\n                      <button onclick=\"switchTab('highlights', this)\">\r\n                          <i class=\"fa-solid fa-star\"><\/i> Highlights\r\n                      <\/button>\r\n                      <button onclick=\"switchTab('reels', this)\">\r\n                          <i class=\"fa-solid fa-video\"><\/i> Reels\r\n                      <\/button>\r\n                  <\/div>\r\n  \r\n                  <!-- Tab Content -->\r\n                  <div id=\"tab-content\">\r\n                      <!-- Posts Tab -->\r\n                      <div id=\"posts-content\" class=\"tab-content active\">\r\n                          <div class=\"no-result\">\r\n                              <i class=\"fa-solid fa-images\" style=\"font-size: 48px; color: #cbd5e1; margin-bottom: 15px;\"><\/i>\r\n                              <p>Enter an Instagram username above to view posts from their profile. You can download and\r\n                                  view their photos and videos easily.<\/p>\r\n                          <\/div>\r\n                      <\/div>\r\n  \r\n                      <!-- Stories Tab -->\r\n                      <div id=\"stories-content\" class=\"tab-content\" style=\"display: none;\">\r\n                          <div class=\"no-result\">\r\n                              <i class=\"fa-solid fa-circle-play\" style=\"font-size: 48px; color: #cbd5e1; margin-bottom: 15px;\"><\/i>\r\n                              <p>Enter an Instagram username above to view their active stories. Watch stories anonymously\r\n                                  without them knowing.<\/p>\r\n                          <\/div>\r\n                      <\/div>\r\n  \r\n                      <!-- Highlights Tab -->\r\n                      <div id=\"highlights-content\" class=\"tab-content\" style=\"display: none;\">\r\n                          <div class=\"no-result\">\r\n                              <i class=\"fa-solid fa-bookmark\" style=\"font-size: 48px; color: #cbd5e1; margin-bottom: 15px;\"><\/i>\r\n                              <p>Enter an Instagram username above to view their story highlights. Access all their saved\r\n                                  stories in one place.<\/p>\r\n                          <\/div>\r\n                      <\/div>\r\n  \r\n                      <!-- Reels Tab -->\r\n                      <div id=\"reels-content\" class=\"tab-content\" style=\"display: none;\">\r\n                          <div class=\"no-result\">\r\n                              <i class=\"fa-solid fa-clapperboard\" style=\"font-size: 48px; color: #cbd5e1; margin-bottom: 15px;\"><\/i>\r\n                              <p>Enter an Instagram username above to view their reels. Download and watch short videos\r\n                                  from their profile.<\/p>\r\n                          <\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  \r\n      <script src=\"https:\/\/code.jquery.com\/jquery-3.7.1.min.js\"><\/script>\r\n    <script src=\"https:\/\/tools.xrespond.com\/api\/rate-limit-handler.js\"><\/script>\r\n    <script src=\"https:\/\/tools.xrespond.com\/api\/js\/client-ip-detector.js\"><\/script>\r\n      <script src=\"fixallInsta.js\"><\/script>\r\n      <script>\r\n          \/\/ Enhanced download functionality with better error handling and media detection\r\n          function showDownloadStatus(message, isError = false) {\r\n              const errorEl = document.getElementById('error-message');\r\n              errorEl.textContent = message;\r\n              errorEl.style.color = isError ? 'red' : 'green';\r\n              errorEl.style.display = 'block';\r\n  \r\n              setTimeout(() => {\r\n                  errorEl.style.display = 'none';\r\n              }, 3000);\r\n          }\r\n  \r\n          \/\/ abc\r\n  \r\n          \/\/ Fixed Reel Play\/Pause Functionality\r\n          $(document).off('click', '.reel-view-btn').on('click', '.reel-view-btn', function (e) {\r\n              e.preventDefault();\r\n              e.stopPropagation();\r\n  \r\n              var $this = $(this);\r\n              var container = $this.closest('.reel-img-container');\r\n              var video = container.find('.reel-video')[0];\r\n              var thumbnail = container.find('.reel-thumb');\r\n              var fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n              \/\/ Pause all other videos first\r\n              $('.reel-video').each(function () {\r\n                  if (this !== video && !this.paused) {\r\n                      this.pause();\r\n                      $(this).removeClass('playing').hide();\r\n                      $(this).closest('.reel-img-container').find('.reel-thumb').removeClass('hidden').show();\r\n                      $(this).closest('.reel-img-container').find('.reel-view-btn').html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  }\r\n              });\r\n  \r\n              if (!video) {\r\n                  var videoUrl = container.data('media');\r\n                  if (videoUrl) {\r\n                      var videoElement = $('<video class=\"reel-video\" controls playsInline muted><\/video>');\r\n                      videoElement.attr('src', videoUrl);\r\n                      container.append(videoElement);\r\n                      video = videoElement[0];\r\n                  }\r\n              }\r\n  \r\n              if (video) {\r\n                  if (video.paused) {\r\n                      \/\/ Play video\r\n                      thumbnail.addClass('hidden').hide();\r\n                      $(video).addClass('playing').show();\r\n                      video.currentTime = 0;\r\n  \r\n                      video.play().then(function () {\r\n                          $this.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                          fullscreenBtn.show();\r\n                      }).catch(function (err) {\r\n                          console.error('Video play failed:', err);\r\n                          thumbnail.removeClass('hidden').show();\r\n                          $(video).removeClass('playing').hide();\r\n                          $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                      });\r\n                  } else {\r\n                      \/\/ Pause video\r\n                      video.pause();\r\n                      $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  }\r\n              }\r\n          });\r\n  \r\n          \/\/ Fixed video event handlers\r\n          $(document).off('play', '.reel-video').on('play', '.reel-video', function () {\r\n              var container = $(this).closest('.reel-img-container');\r\n              var viewBtn = container.find('.reel-view-btn');\r\n              var fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n              viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n              fullscreenBtn.show();\r\n          });\r\n  \r\n          $(document).off('pause', '.reel-video').on('pause', '.reel-video', function () {\r\n              var container = $(this).closest('.reel-img-container');\r\n              var viewBtn = container.find('.reel-view-btn');\r\n  \r\n              viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n          });\r\n  \r\n          $(document).off('ended', '.reel-video').on('ended', '.reel-video', function () {\r\n              var container = $(this).closest('.reel-img-container');\r\n              var viewBtn = container.find('.reel-view-btn');\r\n              var thumbnail = container.find('.reel-thumb');\r\n  \r\n              $(this).removeClass('playing').hide();\r\n              thumbnail.removeClass('hidden').show();\r\n              viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n          });\r\n  \r\n          \/\/ abc\r\n  \r\n          function getMediaUrlAndType() {\r\n              \/\/ Check for image in modal\r\n              const modalImg = document.querySelector('.modal-img');\r\n              if (modalImg && modalImg.src && modalImg.src !== window.location.href) {\r\n                  return {\r\n                      url: modalImg.src,\r\n                      type: 'image',\r\n                      extension: getFileExtension(modalImg.src) || 'jpg'\r\n                  };\r\n              }\r\n  \r\n              \/\/ Check for video in modal\r\n              const modalVideo = document.querySelector('.modal-video');\r\n              if (modalVideo && modalVideo.src && modalVideo.src !== window.location.href) {\r\n                  return {\r\n                      url: modalVideo.src,\r\n                      type: 'video',\r\n                      extension: getFileExtension(modalVideo.src) || 'mp4'\r\n                  };\r\n              }\r\n  \r\n              \/\/ Check for profile image\r\n              const profileImg = document.querySelector('.profile-image img');\r\n              if (profileImg && profileImg.src && profileImg.src !== window.location.href) {\r\n                  return {\r\n                      url: profileImg.src,\r\n                      type: 'image',\r\n                      extension: getFileExtension(profileImg.src) || 'jpg'\r\n                  };\r\n              }\r\n  \r\n              return null;\r\n          }\r\n  \r\n          function getFileExtension(url) {\r\n              try {\r\n                  const urlObj = new URL(url);\r\n                  const pathname = urlObj.pathname;\r\n                  const extension = pathname.split('.').pop().toLowerCase();\r\n  \r\n                  \/\/ Common image extensions\r\n                  if (['jpg', 'jpeg', 'png', 'gif', 'webp', 'bmp'].includes(extension)) {\r\n                      return extension;\r\n                  }\r\n  \r\n                  \/\/ Common video extensions\r\n                  if (['mp4', 'avi', 'mov', 'wmv', 'flv', 'webm', 'mkv'].includes(extension)) {\r\n                      return extension;\r\n                  }\r\n  \r\n                  return null;\r\n              } catch (e) {\r\n                  return null;\r\n              }\r\n          }\r\n  \r\n          function generateFileName(type, extension) {\r\n              const timestamp = new Date().getTime();\r\n              const username = document.getElementById('profile-username')?.textContent?.replace('@', '') || 'instagram';\r\n              return `${username}_${type}_${timestamp}.${extension}`;\r\n          }\r\n  \r\n          async function downloadMediaFile(url, filename, type) {\r\n              try {\r\n                  showDownloadStatus('Preparing download...');\r\n  \r\n                  \/\/ First, try to fetch the media\r\n                  const response = await fetch(url, {\r\n                      method: 'GET',\r\n                      headers: {\r\n                          'Accept': type === 'image' ? 'image\/*' : 'video\/*',\r\n                      }\r\n                  });\r\n  \r\n                  if (!response.ok) {\r\n                      throw new Error(`HTTP error! status: ${response.status}`);\r\n                  }\r\n  \r\n                  const blob = await response.blob();\r\n  \r\n                  if (blob.size === 0) {\r\n                      throw new Error('Downloaded file is empty');\r\n                  }\r\n  \r\n                  \/\/ Create blob URL and download\r\n                  const blobUrl = URL.createObjectURL(blob);\r\n                  const link = document.createElement('a');\r\n                  link.href = blobUrl;\r\n                  link.download = filename;\r\n                  link.style.display = 'none';\r\n  \r\n                  document.body.appendChild(link);\r\n                  link.click();\r\n                  document.body.removeChild(link);\r\n  \r\n                  \/\/ Clean up\r\n                  setTimeout(() => {\r\n                      URL.revokeObjectURL(blobUrl);\r\n                  }, 1000);\r\n  \r\n                  showDownloadStatus(`${type === 'image' ? 'Image' : 'Video'} downloaded successfully!`);\r\n                  return true;\r\n  \r\n              } catch (error) {\r\n                  console.error('Download error:', error);\r\n  \r\n                  \/\/ Fallback: try direct link method\r\n                  try {\r\n                      const link = document.createElement('a');\r\n                      link.href = url;\r\n                      link.download = filename;\r\n                      link.target = '_blank';\r\n                      link.style.display = 'none';\r\n  \r\n                      document.body.appendChild(link);\r\n                      link.click();\r\n                      document.body.removeChild(link);\r\n  \r\n                      showDownloadStatus('Download initiated (check your downloads folder)');\r\n                      return true;\r\n                  } catch (fallbackError) {\r\n                      showDownloadStatus(`Download failed: ${error.message}`, true);\r\n                      return false;\r\n                  }\r\n              }\r\n          }\r\n  \r\n          \/\/ Paste functionality\r\n          $('#paste-btn').click(function () {\r\n              navigator.clipboard.readText().then(function (text) {\r\n                  $(\"#input-url\").val(text);\r\n              }).catch(function (err) {\r\n                  console.error('Failed to read clipboard: ', err);\r\n              });\r\n          });\r\n  \r\n          \/\/ Switch tab function\r\n          function switchTab(tabName, buttonElement) {\r\n              \/\/ Focus on input field when tab is clicked\r\n              const inputField = document.getElementById('input-url');\r\n              inputField.focus();\r\n              inputField.classList.add('input-highlight');\r\n  \r\n              \/\/ Remove highlight class after animation completes\r\n              setTimeout(() => {\r\n                  inputField.classList.remove('input-highlight');\r\n              }, 1000);\r\n  \r\n              \/\/ Update active button\r\n              document.querySelectorAll('.ig-tabs button').forEach(btn => {\r\n                  btn.classList.remove('active');\r\n              });\r\n              buttonElement.classList.add('active');\r\n  \r\n              \/\/ Hide all tab contents\r\n              document.querySelectorAll('.tab-content').forEach(content => {\r\n                  content.style.display = 'none';\r\n              });\r\n  \r\n              \/\/ Show selected tab content\r\n              document.getElementById(tabName + '-content').style.display = 'block';\r\n          }\r\n  \r\n          \/\/ Add enter key support for input\r\n          document.getElementById('input-url').addEventListener('keypress', function (e) {\r\n              if (e.key === 'Enter') {\r\n                  \/\/ Handle enter key if needed\r\n                  const username = this.value.trim();\r\n                  if (username) {\r\n                      showDownloadStatus('This is a demo. In a real app, this would fetch @' + username);\r\n                  } else {\r\n                      showDownloadStatus('Please enter an Instagram username', true);\r\n                  }\r\n              }\r\n          });\r\n  \r\n          \/\/ View button click handler\r\n          document.getElementById('view-btn').addEventListener('click', function () {\r\n              const username = document.getElementById('input-url').value.trim();\r\n              if (!username) {\r\n                  showDownloadStatus('Please enter an Instagram username', true);\r\n                  document.getElementById('input-url').focus();\r\n                  return;\r\n              }\r\n  \r\n              \/\/ In a real app, this would fetch the profile data\r\n              \/\/ For now, just show a message\r\n              showDownloadStatus('This is a demo. In a real app, this would fetch @' + username);\r\n          });\r\n  \r\n          \/\/ Enhanced modal download button handler\r\n          $(document).on(\"click\", \".modal-download-btn\", async function (e) {\r\n              e.preventDefault();\r\n              e.stopPropagation();\r\n  \r\n              const mediaInfo = getMediaUrlAndType();\r\n  \r\n              if (!mediaInfo) {\r\n                  showDownloadStatus('No media found to download', true);\r\n                  return;\r\n              }\r\n  \r\n              const filename = generateFileName(mediaInfo.type, mediaInfo.extension);\r\n  \r\n              \/\/ Use global downloadMedia function if available\r\n              if (typeof window.downloadMedia === 'function') {\r\n                  try {\r\n                      window.downloadMedia(mediaInfo.url, filename, mediaInfo.type);\r\n                      showDownloadStatus(`${mediaInfo.type === 'image' ? 'Image' : 'Video'} download started!`);\r\n  \r\n                      setTimeout(() => {\r\n                          $(\".close-modal\").click();\r\n                      }, 500);\r\n                  } catch (error) {\r\n                      console.error('Global download function failed:', error);\r\n                      \/\/ Fall back to our enhanced method\r\n                      const success = await downloadMediaFile(mediaInfo.url, filename, mediaInfo.type);\r\n                      if (success) {\r\n                          setTimeout(() => {\r\n                              $(\".close-modal\").click();\r\n                          }, 500);\r\n                      }\r\n                  }\r\n                  return;\r\n              }\r\n  \r\n              \/\/ Use our enhanced download method\r\n              const success = await downloadMediaFile(mediaInfo.url, filename, mediaInfo.type);\r\n              if (success) {\r\n                  setTimeout(() => {\r\n                      $(\".close-modal\").click();\r\n                  }, 500);\r\n              }\r\n          });\r\n  \r\n          \/\/ Add download buttons to media items (for posts, stories, etc.)\r\n          $(document).on(\"click\", \".download-media-btn\", async function (e) {\r\n              e.preventDefault();\r\n              e.stopPropagation();\r\n  \r\n              const mediaElement = $(this).closest('.media-item').find('img, video').first();\r\n              if (!mediaElement.length) {\r\n                  showDownloadStatus('No media found to download', true);\r\n                  return;\r\n              }\r\n  \r\n              const mediaUrl = mediaElement.attr('src');\r\n              if (!mediaUrl || mediaUrl === window.location.href) {\r\n                  showDownloadStatus('Invalid media URL', true);\r\n                  return;\r\n              }\r\n  \r\n              const isVideo = mediaElement.is('video');\r\n              const type = isVideo ? 'video' : 'image';\r\n              const extension = getFileExtension(mediaUrl) || (isVideo ? 'mp4' : 'jpg');\r\n              const filename = generateFileName(type, extension);\r\n  \r\n              await downloadMediaFile(mediaUrl, filename, type);\r\n          });\r\n  \r\n  \r\n  \r\n          (function ($) {\r\n              'use strict';\r\n  \r\n              function formatNumber(num) {\r\n                  if (num === null || num === undefined) return '0';\r\n                  num = parseInt(num, 10);\r\n                  if (isNaN(num)) return '0';\r\n  \r\n                  if (num >= 1000000) {\r\n                      return (num \/ 1000000).toFixed(1).replace(\/\\.0$\/, '') + 'M';\r\n                  }\r\n                  if (num >= 1000) {\r\n                      return (num \/ 1000).toFixed(1).replace(\/\\.0$\/, '') + 'K';\r\n                  }\r\n                  return num.toString();\r\n              }\r\n  \r\n              \/\/ Place this at the top level, outside of any function\r\n              async function forceDownloadImage(imgUrl, filename) {\r\n                  try {\r\n                      const resp = await fetch(imgUrl);\r\n                      if (!resp.ok) throw new Error(`Network error: ${resp.status}`);\r\n                      const blob = await resp.blob();\r\n                      const blobUrl = URL.createObjectURL(blob);\r\n                      const a = document.createElement('a');\r\n                      a.href = blobUrl;\r\n                      a.download = filename || '';\r\n                      document.body.appendChild(a);\r\n                      a.click();\r\n                      document.body.removeChild(a);\r\n                      setTimeout(() => URL.revokeObjectURL(blobUrl), 1000);\r\n                  } catch (err) {\r\n                      console.error('Download failed:', err);\r\n  \r\n                  }\r\n              }\r\n  \r\n              function clearAllSkeletons() {\r\n                  $(\".skeleton-profile\").remove();\r\n                  $(\".skeleton-posts-grid\").remove();\r\n                  $(\".skeleton-stories-container\").remove();\r\n                  $(\".skeleton-highlights-container\").remove();\r\n                  $(\".skeleton-reels-grid\").remove();\r\n              }\r\n  \r\n              \/\/ Ensure jQuery is available and wait for DOM ready\r\n              $(document).ready(function () {\r\n                  \/\/ Track if this is the first search\r\n                  var isFirstSearch = true;\r\n                  \/\/ Track loaded tabs\r\n                  var isPrivateAccount = false;\r\n                  var loadedTabs = {\r\n                      posts: false,\r\n                      stories: false,\r\n                      highlights: false,\r\n                      reels: false,\r\n                  };\r\n                  var activeTab = \"posts\";\r\n  \r\n                  \/\/ Download management\r\n                  var activeDownloads = new Map();\r\n                  var downloadCounter = 0;\r\n  \r\n                  \/\/ Create toast container if it doesn't exist\r\n                  function createToastContainer() {\r\n                      if ($(\"#toast-container\").length === 0) {\r\n                          $(\"body\").append(\r\n                              '<div id=\"toast-container\" style=\"' +\r\n                              'position: fixed;' +\r\n                              'top: 20px;' +\r\n                              'right: 20px;' +\r\n                              'z-index: 10000;' +\r\n                              'max-width: 400px;' +\r\n                              'width: 100%;' +\r\n                              '\"><\/div>'\r\n                          );\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Create toast notification with progress bar\r\n                  function createToast(filename, downloadId) {\r\n                      var toastHtml =\r\n                          '<div class=\"download-toast\" id=\"toast-' + downloadId + '\" style=\"' +\r\n                          'background: white;' +\r\n                          'border-radius: 12px;' +\r\n                          'box-shadow: 0 10px 30px rgba(0,0,0,0.15);' +\r\n                          'margin-bottom: 15px;' +\r\n                          'padding: 20px;' +\r\n                          'border-left: 4px solid #8e24aa;' +\r\n                          'animation: slideInRight 0.3s ease-out;' +\r\n                          'position: relative;' +\r\n                          'overflow: hidden;' +\r\n                          '\">' +\r\n                          '<div style=\"display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px;\">' +\r\n                          '<div style=\"display: flex; align-items: center; gap: 10px;\">' +\r\n                          '<i class=\"fa-solid fa-download\" style=\"color: #8e24aa; font-size: 16px;\"><\/i>' +\r\n                          '<span style=\"font-weight: 600; color: #1e293b; font-size: 14px;\">Downloading...<\/span>' +\r\n                          '<\/div>' +\r\n                          '<button class=\"cancel-download\" data-download-id=\"' + downloadId + '\" style=\"' +\r\n                          'background: #ef4444;' +\r\n                          'color: white;' +\r\n                          'border: none;' +\r\n                          'border-radius: 6px;' +\r\n                          'padding: 4px 8px;' +\r\n                          'font-size: 12px;' +\r\n                          'cursor: pointer;' +\r\n                          'transition: all 0.2s;' +\r\n                          'display: flex;' +\r\n                          'align-items: center;' +\r\n                          'justify-content: center;' +\r\n                          'width: 24px;' +\r\n                          'height: 24px;' +\r\n                          '\">' +\r\n                          '<i class=\"fa-solid fa-xmark\"><\/i>' +\r\n                          '<\/button>' +\r\n                          '<\/div>' +\r\n                          '<div style=\"margin-bottom: 8px;\">' +\r\n                          '<div style=\"font-size: 13px; color: #64748b; margin-bottom: 4px; word-break: break-all;\">' + filename + '<\/div>' +\r\n                          '<div style=\"display: flex; justify-content: space-between; align-items: center;\">' +\r\n                          '<span class=\"download-status\" style=\"font-size: 12px; color: #64748b;\">Preparing download...<\/span>' +\r\n                          '<span class=\"download-percentage\" style=\"font-size: 12px; font-weight: 600; color: #8e24aa;\">0%<\/span>' +\r\n                          '<\/div>' +\r\n                          '<\/div>' +\r\n                          '<div class=\"progress-container\" style=\"' +\r\n                          'width: 100%;' +\r\n                          'height: 6px;' +\r\n                          'background: #f1f5f9;' +\r\n                          'border-radius: 3px;' +\r\n                          'overflow: hidden;' +\r\n                          'position: relative;' +\r\n                          '\">' +\r\n                          '<div class=\"progress-bar\" style=\"' +\r\n                          'height: 100%;' +\r\n                          'background: linear-gradient(90deg, #8e24aa, #ec407a);' +\r\n                          'border-radius: 3px;' +\r\n                          'width: 0%;' +\r\n                          'transition: width 0.3s ease;' +\r\n                          'position: relative;' +\r\n                          '\">' +\r\n                          '<div style=\"' +\r\n                          'position: absolute;' +\r\n                          'top: 0;' +\r\n                          'left: 0;' +\r\n                          'right: 0;' +\r\n                          'bottom: 0;' +\r\n                          'background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);' +\r\n                          'animation: shimmer 1.5s infinite;' +\r\n                          '\"><\/div>' +\r\n                          '<\/div>' +\r\n                          '<\/div>' +\r\n                          '<\/div>';\r\n  \r\n                      $(\"#toast-container\").prepend(toastHtml);\r\n  \r\n                      \/\/ Add shimmer animation\r\n                      if (!$(\"#shimmer-style\").length) {\r\n                          $(\"head\").append(\r\n                              '<style id=\"shimmer-style\">' +\r\n                              '@keyframes slideInRight {' +\r\n                              'from { transform: translateX(100%); opacity: 0; }' +\r\n                              'to { transform: translateX(0); opacity: 1; }' +\r\n                              '}' +\r\n                              '@keyframes slideOutRight {' +\r\n                              'from { transform: translateX(0); opacity: 1; }' +\r\n                              'to { transform: translateX(100%); opacity: 0; }' +\r\n                              '}' +\r\n                              '@keyframes shimmer {' +\r\n                              '0% { transform: translateX(-100%); }' +\r\n                              '100% { transform: translateX(100%); }' +\r\n                              '}' +\r\n                              '.cancel-download:hover {' +\r\n                              'background: #dc2626;' +\r\n                              'transform: scale(1.05);' +\r\n                              '}' +\r\n                              '.download-toast.success {' +\r\n                              'border-left-color: #10b981;' +\r\n                              '}' +\r\n                              '.download-toast.error {' +\r\n                              'border-left-color: #ef4444;' +\r\n                              '}' +\r\n                              '<\/style>'\r\n                          );\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Update toast progress\r\n                  function updateToastProgress(downloadId, progress, status) {\r\n                      var toast = $(\"#toast-\" + downloadId);\r\n                      if (toast.length) {\r\n                          toast.find(\".progress-bar\").css(\"width\", progress + \"%\");\r\n                          toast.find(\".download-percentage\").text(Math.round(progress) + \"%\");\r\n                          if (status) {\r\n                              toast.find(\".download-status\").text(status);\r\n                          }\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Complete toast (success or error)\r\n                  function completeToast(downloadId, success, message) {\r\n                      var toast = $(\"#toast-\" + downloadId);\r\n                      if (toast.length) {\r\n                          toast.removeClass(\"success error\").addClass(success ? \"success\" : \"error\");\r\n  \r\n                          var icon = success ? \"fa-check-circle\" : \"fa-exclamation-circle\";\r\n                          var color = success ? \"#10b981\" : \"#ef4444\";\r\n                          var statusText = success ? \"Download completed!\" : \"Download failed!\";\r\n  \r\n                          toast.find(\".fa-download\").removeClass(\"fa-download\").addClass(icon).css(\"color\", color);\r\n                          toast.find(\".download-status\").text(message || statusText);\r\n                          toast.find(\".download-percentage\").text(success ? \"100%\" : \"Failed\");\r\n                          toast.find(\".cancel-download\").hide();\r\n  \r\n                          if (success) {\r\n                              toast.find(\".progress-bar\").css(\"width\", \"100%\");\r\n                          }\r\n  \r\n                          \/\/ Auto remove after 3 seconds\r\n                          setTimeout(function () {\r\n                              toast.css(\"animation\", \"slideOutRight 0.3s ease-in\");\r\n                              setTimeout(function () { toast.remove(); }, 300);\r\n                          }, 3000);\r\n                      }\r\n  \r\n                      \/\/ Remove from active downloads\r\n                      activeDownloads.delete(downloadId);\r\n                  }\r\n  \r\n                  \/\/ Cancel download\r\n                  function cancelDownload(downloadId) {\r\n                      var downloadInfo = activeDownloads.get(downloadId);\r\n                      if (downloadInfo && downloadInfo.controller) {\r\n                          downloadInfo.controller.abort();\r\n                          activeDownloads.delete(downloadId);\r\n  \r\n                          var toast = $(\"#toast-\" + downloadId);\r\n                          toast.css(\"animation\", \"slideOutRight 0.3s ease-in\");\r\n                          setTimeout(function () { toast.remove(); }, 300);\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Enhanced download function with progress tracking\r\n                  async function downloadWithProgress(url, filename, type) {\r\n                      type = type || \"image\";\r\n  \r\n                      if (!url) {\r\n                          console.error(\"No URL provided for download\");\r\n                          \/\/ alert(\"Download URL not found. Please try again.\");\r\n                          return;\r\n                      }\r\n  \r\n                      var downloadId = ++downloadCounter;\r\n                      var controller = new AbortController();\r\n  \r\n                      \/\/ Store download info\r\n                      activeDownloads.set(downloadId, {\r\n                          controller: controller,\r\n                          filename: filename,\r\n                          url: url,\r\n                          type: type,\r\n                      });\r\n  \r\n                      \/\/ Ensure we're getting the highest quality image by removing any size parameters\r\n                      var downloadUrl = url;\r\n                      if (type === \"image\" && url.indexOf(\"instagram\") !== -1) {\r\n                          \/\/ Remove any size parameters to get full resolution\r\n                          downloadUrl = url.split(\"?\")[0];\r\n                      }\r\n  \r\n                      createToastContainer();\r\n                      createToast(filename, downloadId);\r\n  \r\n                      try {\r\n                          updateToastProgress(downloadId, 5, \"Connecting...\");\r\n                          console.log(\"Fetching from URL:\", downloadUrl);\r\n  \r\n                          var response = await fetch(downloadUrl, {\r\n                              signal: controller.signal,\r\n                              mode: \"cors\",\r\n                              headers: {\r\n                                  Accept: \"*\/*\",\r\n                                  \"User-Agent\": \"Mozilla\/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/91.0.4472.124 Safari\/537.36\",\r\n                              },\r\n                          });\r\n  \r\n                          if (!response.ok) {\r\n                              throw new Error(\"HTTP error! status: \" + response.status);\r\n                          }\r\n  \r\n                          var contentLength = response.headers.get(\"content-length\");\r\n                          var total = parseInt(contentLength, 10);\r\n                          var loaded = 0;\r\n  \r\n                          updateToastProgress(downloadId, 10, \"Downloading...\");\r\n  \r\n                          var reader = response.body.getReader();\r\n                          var chunks = [];\r\n  \r\n                          while (true) {\r\n                              var result = await reader.read();\r\n                              var done = result.done;\r\n                              var value = result.value;\r\n  \r\n                              if (done) break;\r\n  \r\n                              chunks.push(value);\r\n                              loaded += value.length;\r\n  \r\n                              if (total) {\r\n                                  var progress = 10 + (loaded \/ total) * 80; \/\/ 10% to 90%\r\n                                  updateToastProgress(\r\n                                      downloadId,\r\n                                      progress,\r\n                                      \"Downloaded \" + formatBytes(loaded) + (total ? \" of \" + formatBytes(total) : \"\")\r\n                                  );\r\n                              } else {\r\n                                  updateToastProgress(downloadId, 50, \"Downloaded \" + formatBytes(loaded));\r\n                              }\r\n                          }\r\n  \r\n                          updateToastProgress(downloadId, 95, \"Processing...\");\r\n  \r\n                          \/\/ Create blob and download\r\n                          var blob = new Blob(chunks);\r\n                          var blobUrl = URL.createObjectURL(blob);\r\n  \r\n                          \/\/ Use a hidden link to download without opening a new tab\r\n                          var link = document.createElement(\"a\");\r\n                          link.href = blobUrl;\r\n                          link.download = filename;\r\n                          link.style.display = \"none\";\r\n                          document.body.appendChild(link);\r\n  \r\n                          \/\/ Use click() method to trigger download without opening a new tab\r\n                          link.click();\r\n  \r\n                          \/\/ Clean up\r\n                          setTimeout(function () {\r\n                              document.body.removeChild(link);\r\n                              URL.revokeObjectURL(blobUrl);\r\n                          }, 100);\r\n  \r\n                          updateToastProgress(downloadId, 100, \"Completed!\");\r\n                          completeToast(downloadId, true, \"Download completed successfully!\");\r\n                      } catch (error) {\r\n                          if (error.name === \"AbortError\") {\r\n                              console.log(\"Download cancelled\");\r\n                          } else {\r\n                              console.error(\"Download failed:\", error);\r\n                              completeToast(downloadId, false, \"Download failed. Please try again.\");\r\n                          }\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Format bytes helper function\r\n                  function formatBytes(bytes, decimals) {\r\n                      decimals = decimals || 2;\r\n                      if (bytes === 0) return \"0 Bytes\";\r\n                      var k = 1024;\r\n                      var dm = decimals < 0 ? 0 : decimals;\r\n                      var sizes = [\"Bytes\", \"KB\", \"MB\", \"GB\"];\r\n                      var i = Math.floor(Math.log(bytes) \/ Math.log(k));\r\n                      return parseFloat((bytes \/ Math.pow(k, i)).toFixed(dm)) + \" \" + sizes[i];\r\n                  }\r\n  \r\n                  \/\/ Handle cancel button clicks\r\n                  $(document).on(\"click\", \".cancel-download\", function () {\r\n                      var downloadId = parseInt($(this).data(\"download-id\"));\r\n                      cancelDownload(downloadId);\r\n                  });\r\n  \r\n                  \/\/ Check for hash parameter on page load to set active tab\r\n                  var hashTab = window.location.hash.substring(1);\r\n                  if (hashTab && [\"posts\", \"stories\", \"highlights\", \"reels\"].indexOf(hashTab) !== -1) {\r\n                      activeTab = hashTab;\r\n                  }\r\n  \r\n                  \/\/ Global function to pause all videos except the current one\r\n                  function pauseAllVideosExcept(currentVideo) {\r\n                      $(\"video\").each(function () {\r\n                          if (this !== currentVideo) {\r\n                              try {\r\n                                  if (!this.paused) {\r\n                                      this.pause();\r\n                                  }\r\n                              } catch (e) {\r\n                                  console.warn(\"Error pausing video:\", e);\r\n                              }\r\n                          }\r\n                      });\r\n  \r\n                      \/\/ Reset all video controls to show play buttons and thumbnails\r\n                      $(\".post-video, .story-video, .reel-video\")\r\n                          .not($(currentVideo))\r\n                          .each(function () {\r\n                              var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                              var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                              var playBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                              var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                              $(this).hide();\r\n                              container.find(\".post-thumb, .story-thumb, .reel-thumb\").show();\r\n                              playBtn.show().html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              fullscreenBtn.hide();\r\n                          });\r\n                  }\r\n  \r\n                  \/\/ Paste button functionality\r\n                  $(\"#paste-btn\").on(\"click\", function () {\r\n                      if (navigator.clipboard && navigator.clipboard.readText) {\r\n                          navigator.clipboard\r\n                              .readText()\r\n                              .then(function (text) {\r\n                                  $(\"#input-url\").val(text);\r\n                              })\r\n                              .catch(function (err) {\r\n                                  console.error(\"Failed to read clipboard: \", err);\r\n                              });\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Function to determine if media is video\r\n                  function isVideo(post) {\r\n                      return (\r\n                          post &&\r\n                          (post.media_type === 2 ||\r\n                              post.video_versions ||\r\n                              (post.carousel_media && post.carousel_media[0] && post.carousel_media[0].video_versions))\r\n                      );\r\n                  }\r\n  \r\n                  \/\/ Function to get media URL (image or video)\r\n                  function getMediaUrl(post) {\r\n                      if (isVideo(post)) {\r\n                          \/\/ Get video URL - check all possible paths in the API response\r\n                          var videoUrl = \"\";\r\n                          if (post && post.video_versions && post.video_versions[0]) {\r\n                              videoUrl = post.video_versions[0].url;\r\n                          } else if (\r\n                              post &&\r\n                              post.carousel_media &&\r\n                              post.carousel_media[0] &&\r\n                              post.carousel_media[0].video_versions &&\r\n                              post.carousel_media[0].video_versions[0]\r\n                          ) {\r\n                              videoUrl = post.carousel_media[0].video_versions[0].url;\r\n                          } else if (post && post.media && post.media.video_versions && post.media.video_versions[0]) {\r\n                              videoUrl = post.media.video_versions[0].url;\r\n                          }\r\n                          console.log(\"Video URL found:\", videoUrl);\r\n                          return videoUrl;\r\n                      } else {\r\n                          \/\/ Get image URL - check all possible paths in the API response\r\n                          var imageUrl = \"\";\r\n                          if (post && post.image_versions && post.image_versions.items && post.image_versions.items[0]) {\r\n                              imageUrl = post.image_versions.items[0].url;\r\n                          } else if (\r\n                              post &&\r\n                              post.carousel_media &&\r\n                              post.carousel_media[0] &&\r\n                              post.carousel_media[0].image_versions &&\r\n                              post.carousel_media[0].image_versions.items &&\r\n                              post.carousel_media[0].image_versions.items[0]\r\n                          ) {\r\n                              imageUrl = post.carousel_media[0].image_versions.items[0].url;\r\n                          } else if (\r\n                              post &&\r\n                              post.media &&\r\n                              post.media.image_versions &&\r\n                              post.media.image_versions.items &&\r\n                              post.media.image_versions.items[0]\r\n                          ) {\r\n                              imageUrl = post.media.image_versions.items[0].url;\r\n                          }\r\n                          return imageUrl;\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Function to get media thumbnail\r\n                  function getMediaThumbnail(post) {\r\n                      \/\/ For videos, use the first frame as thumbnail\r\n                      \/\/ For images, use the image itself\r\n                      var thumbnailUrl = \"\";\r\n                      if (post && post.image_versions && post.image_versions.items && post.image_versions.items[0]) {\r\n                          thumbnailUrl = post.image_versions.items[0].url;\r\n                      } else if (\r\n                          post &&\r\n                          post.carousel_media &&\r\n                          post.carousel_media[0] &&\r\n                          post.carousel_media[0].image_versions &&\r\n                          post.carousel_media[0].image_versions.items &&\r\n                          post.carousel_media[0].image_versions.items[0]\r\n                      ) {\r\n                          thumbnailUrl = post.carousel_media[0].image_versions.items[0].url;\r\n                      } else if (\r\n                          post &&\r\n                          post.media &&\r\n                          post.media.image_versions &&\r\n                          post.media.image_versions.items &&\r\n                          post.media.image_versions.items[0]\r\n                      ) {\r\n                          thumbnailUrl = post.media.image_versions.items[0].url;\r\n                      }\r\n                      return thumbnailUrl;\r\n                  }\r\n  \r\n                  \/\/ Function to create and play video directly in the card\r\n                  function createAndPlayVideo(container, videoUrl, thumbnailUrl) {\r\n                      \/\/ Remove any existing video\r\n                      container.find('video').remove();\r\n  \r\n                      \/\/ Create new video element\r\n                      const video = $('<video>', {\r\n                          class: 'reel-video',\r\n                          controls: true,\r\n                          playsInline: true,\r\n                          preload: 'auto',\r\n                          muted: true \/\/ Start muted to allow autoplay\r\n                      });\r\n  \r\n                      \/\/ Set up video source\r\n                      const source = $('<source>', {\r\n                          src: videoUrl,\r\n                          type: 'video\/mp4'\r\n                      });\r\n  \r\n                      video.append(source);\r\n                      container.append(video);\r\n  \r\n                      \/\/ Set up video event listeners\r\n                      video.on('loadeddata', function () {\r\n                          \/\/ Video is ready to play\r\n                          console.log('Video data loaded');\r\n                          \/\/ Unmute the video once it's loaded\r\n                          this.muted = false;\r\n                      });\r\n  \r\n                      video.on('error', function (e) {\r\n                          console.error('Video error:', e);\r\n                          \/\/ Show thumbnail if video fails to load\r\n                          container.find('.reel-thumb').show();\r\n                          video.remove();\r\n                      });\r\n  \r\n                      \/\/ Return the video element\r\n                      return video[0];\r\n                  }\r\n  \r\n                  \/\/ Function to create fullscreen video modal\r\n                  function createFullscreenModal(videoUrl, title) {\r\n                      \/\/ Simply open in a new tab instead of creating a modal\r\n                      window.open(videoUrl, \"_blank\");\r\n                  }\r\n  \r\n                  \/\/ Function to load stories\r\n                  function loadStories(profileUrl) {\r\n                      if (loadedTabs.stories) return;\r\n  \r\n                      $(\"#tab-stories\").html(\r\n                          '<div class=\"skeleton-stories-container\">' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-story\"><div class=\"skeleton-story-img\"><\/div><div class=\"skeleton-story-meta\"><div class=\"skeleton-story-time\"><\/div><\/div><\/div>' +\r\n                          \"<\/div>\"\r\n                      );\r\n  \r\n                      var storiesForm = new FormData();\r\n                      storiesForm.append(\"profile\", profileUrl);\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/media\/stories\",\r\n                          type: \"POST\",\r\n                          data: storiesForm,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (storyRes) {\r\n                              var stories =\r\n                                  storyRes && storyRes.data && storyRes.data.data && storyRes.data.data.items ? storyRes.data.data.items : [];\r\n                              $(\"#tab-stories\").empty();\r\n                              if (!stories.length) {\r\n                                  $(\"#tab-stories\").html(\"<p class='no-result'>No stories found.<\/p>\");\r\n                                  return;\r\n                              }\r\n  \r\n                              var storiesHTML = '<div class=\"stories-container\">';\r\n  \r\n                              for (var index = 0; index < stories.length; index++) {\r\n                                  var story = stories[index];\r\n                                  var isStoryVideo = isVideo(story);\r\n                                  var mediaUrl = getMediaUrl(story);\r\n                                  var thumbnail = getMediaThumbnail(story);\r\n                                  var time = new Date(story && story.taken_at ? story.taken_at * 1000 : Date.now()).toLocaleDateString();\r\n                                  var storyId = story && story.id ? story.id : \"story-\" + index;\r\n  \r\n                                  storiesHTML +=\r\n                                      '<div class=\"story-card\" style=\"animation-delay: ' +\r\n                                      index * 0.05 +\r\n                                      's\">' +\r\n                                      '<div class=\"story-img-container\" data-media=\"' +\r\n                                      mediaUrl +\r\n                                      '\" data-type=\"' +\r\n                                      (isStoryVideo ? \"video\" : \"image\") +\r\n                                      '\">' +\r\n                                      '<img decoding=\"async\" src=\"' +\r\n                                      thumbnail +\r\n                                      '\" class=\"story-thumb\" alt=\"IG Story\" loading=\"lazy\"\/>' +\r\n                                      (isStoryVideo\r\n                                          ? '<video src=\"' +\r\n                                          mediaUrl +\r\n                                          '\" class=\"story-video\" controls playsInline style=\"display:none; width:100%; height:100%; object-fit:cover; position:absolute; top:0; left:0;\"><\/video>'\r\n                                          : \"\") +\r\n                                      '<div class=\"story-overlay\">' +\r\n                                      '<button class=\"story-view-btn\">' +\r\n                                      (isStoryVideo ? '<i class=\"fa-solid fa-play\"><\/i>' : '<i class=\"fa-solid fa-eye\"><\/i>') +\r\n                                      \"<\/button>\" +\r\n                                      (isStoryVideo\r\n                                          ? '<button class=\"story-fullscreen-btn\" style=\"display:none;\"><i class=\"fa-solid fa-expand\"><\/i><\/button>'\r\n                                          : \"\") +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"story-meta\">' +\r\n                                      '<div class=\"story-stats-row\">' +\r\n                                      '<small class=\"time\">' +\r\n                                      time +\r\n                                      \"<\/small>\" +\r\n                                      '<button class=\"story-download-btn\" data-url=\"' +\r\n                                      mediaUrl +\r\n                                      '\" data-filename=\"instagram_story_' +\r\n                                      storyId +\r\n                                      \".\" +\r\n                                      (isStoryVideo ? \"mp4\" : \"jpg\") +\r\n                                      '\" data-type=\"' +\r\n                                      (isStoryVideo ? \"video\" : \"image\") +\r\n                                      '\">' +\r\n                                      '<i class=\"fa-solid fa-download\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              storiesHTML += \"<\/div>\";\r\n  \r\n                              $(\"#tab-stories\").html(storiesHTML);\r\n                              loadedTabs.stories = true;\r\n  \r\n                              \/\/ Add media type indicators\r\n                              setTimeout(addMediaTypeIndicators, 100);\r\n                          },\r\n                          error: function () {\r\n                              $(\"#error-message\").text(\"Failed to load stories. Please try again later\").show();\r\n                              $(\"#tab-stories\").html(\"<p class='no-result'>Failed to load stories.<\/p>\");\r\n                          },\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Function to load highlights\r\n                  function loadHighlights(profileUrl) {\r\n                      if (loadedTabs.highlights) return;\r\n  \r\n                      $(\"#tab-highlights\").html(\r\n                          '<div class=\"skeleton-highlights-container\">' +\r\n                          '<div class=\"skeleton-highlight\"><div class=\"skeleton-highlight-img\"><\/div><div class=\"skeleton-highlight-title\"><\/div><\/div>' +\r\n                          '<div class=\"skeleton-highlight\"><div class=\"skeleton-highlight-img\"><\/div><div class=\"skeleton-highlight-title\"><\/div><\/div>' +\r\n                          '<div class=\"skeleton-highlight\"><div class=\"skeleton-highlight-img\"><\/div><div class=\"skeleton-highlight-title\"><\/div><\/div>' +\r\n                          '<div class=\"skeleton-highlight\"><div class=\"skeleton-highlight-img\"><\/div><div class=\"skeleton-highlight-title\"><\/div><\/div>' +\r\n                          \"<\/div>\"\r\n                      );\r\n  \r\n                      var highlightsForm = new FormData();\r\n                      highlightsForm.append(\"profile\", profileUrl);\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/media\/highlights\",\r\n                          type: \"POST\",\r\n                          data: highlightsForm,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (highlightRes) {\r\n                              var highlights =\r\n                                  highlightRes && highlightRes.data && highlightRes.data.data && highlightRes.data.data.items\r\n                                      ? highlightRes.data.data.items\r\n                                      : [];\r\n                              $(\"#tab-highlights\").empty();\r\n  \r\n                              if (!highlights.length) {\r\n                                  $(\"#tab-highlights\").html(\"<p class='no-result'>No highlights found.<\/p>\");\r\n                                  return;\r\n                              }\r\n  \r\n                              var highlightsHTML = '<div class=\"highlights-container\">';\r\n  \r\n                              for (var index = 0; index < highlights.length; index++) {\r\n                                  var highlight = highlights[index];\r\n                                  var originalCoverImg = \"\";\r\n  \r\n                                  if (\r\n                                      highlight &&\r\n                                      highlight.cover_media &&\r\n                                      highlight.cover_media.cropped_image_version &&\r\n                                      highlight.cover_media.cropped_image_version.url\r\n                                  ) {\r\n                                      originalCoverImg = highlight.cover_media.cropped_image_version.url;\r\n                                  }\r\n  \r\n                                  var coverImg = originalCoverImg\r\n                                      ? \"https:\/\/tools.xrespond.com\/api\/instagram\/highlights\/proxy-image?url=\" + encodeURIComponent(originalCoverImg)\r\n                                      : \"https:\/\/via.placeholder.com\/60?text=No+Image\";\r\n  \r\n                                  var title = highlight && highlight.title ? highlight.title : \"Highlight\";\r\n                                  var highlightId = highlight && highlight.id ? highlight.id : \"highlight-\" + index;\r\n                                  var username = highlight && highlight.user && highlight.user.username ? highlight.user.username : \"\";\r\n                                  var isVerified = highlight && highlight.user && highlight.user.is_verified ? true : false;\r\n                                  var mediaCount = highlight && highlight.media_count ? highlight.media_count : 0;\r\n  \r\n                                  \/\/ Create the highlight items container\r\n                                  var itemsHtml = '';\r\n                                  if (highlight.items && Array.isArray(highlight.items) && highlight.items.length > 0) {\r\n                                      itemsHtml = '<div class=\"highlight-items\" style=\"display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;\">';\r\n                                      highlight.items.forEach(function (media, mediaIndex) {\r\n                                          var imgUrl = '';\r\n                                          var isVideo = false;\r\n  \r\n                                          \/\/ Check for video\r\n                                          if (media.video_versions && media.video_versions.length > 0) {\r\n                                              imgUrl = media.video_versions[0].url;\r\n                                              isVideo = true;\r\n                                          } else if (media.cover_media && media.cover_media.cropped_image_version) {\r\n                                              imgUrl = media.cover_media.cropped_image_version.url;\r\n                                          } else if (media.image_versions2 && media.image_versions2.candidates && media.image_versions2.candidates.length > 0) {\r\n                                              imgUrl = media.image_versions2.candidates[0].url;\r\n                                          }\r\n  \r\n                                          var proxyImg = imgUrl\r\n                                              ? \"https:\/\/tools.xrespond.com\/api\/instagram\/highlights\/proxy-image?url=\" + encodeURIComponent(imgUrl)\r\n                                              : \"https:\/\/via.placeholder.com\/60?text=No+Image\";\r\n  \r\n                                          var mediaType = isVideo ? 'video' : 'image';\r\n                                          var mediaTitle = `${title}-${mediaIndex + 1}`;\r\n  \r\n                                          itemsHtml += `\r\n                                      <div class=\"highlight-item\" style=\"display:flex;flex-direction:column;align-items:center;\">\r\n                                          <div class=\"highlight-img-container\" style=\"position:relative;\">\r\n                                              <img decoding=\"async\" src=\"${proxyImg}\"\r\n                                                   alt=\"Highlight Media\"\r\n                                                   style=\"width:80px;height:80px;object-fit:cover;border-radius:8px;cursor:pointer;border:1px solid #dbdbdb;\"\r\n                                                   onclick=\"window.showMediaModal('${proxyImg}', '${mediaType}', '${mediaTitle}')\" \/>\r\n                                              <div class=\"highlight-overlay\" style=\"position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.3);border-radius:8px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.2s;\">\r\n                                                  <button class=\"highlight-view-btn\" style=\"background:none;border:none;color:white;cursor:pointer;font-size:20px;\">\r\n                                                      <i class=\"fa-solid fa-${isVideo ? 'play' : 'expand'}\"><\/i>\r\n                                                  <\/button>\r\n                                              <\/div>\r\n                                          <\/div>\r\n                                          <button class=\"download-btn\"\r\n                                                  onclick=\"forceDownloadImage('${proxyImg}', '${mediaTitle}.jpg')\"\r\n                                                  style=\"margin-top:4px;font-size:13px;color:#1e88e5;text-decoration:underline;background:none;border:none;cursor:pointer;\">\r\n                                              Download\r\n                                          <\/button>\r\n                                      <\/div>\r\n                                  `;\r\n                                      });\r\n                                      itemsHtml += '<\/div>';\r\n                                  }\r\n  \r\n                                  highlightsHTML +=\r\n                                      '<div class=\"highlight-card\" style=\"animation-delay: ' +\r\n                                      index * 0.05 +\r\n                                      's\" data-id=\"' +\r\n                                      highlightId +\r\n                                      '\">' +\r\n                                      '<div class=\"highlight-img-container\" style=\"position:relative;\">' +\r\n                                      '<img decoding=\"async\" src=\"' +\r\n                                      coverImg +\r\n                                      '\" class=\"highlight-thumb\" alt=\"IG Highlight: ' +\r\n                                      title +\r\n                                      '\" ' +\r\n                                      'loading=\"lazy\" onerror=\"this.onerror=null; this.src=\\'https:\/\/via.placeholder.com\/60?text=No+Image\\';\"\/>' +\r\n                                      '<div class=\"highlight-overlay\" style=\"position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.3);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.2s;\">' +\r\n                                      '<button class=\"highlight-view-btn\" onclick=\"window.showMediaModal(\\'' +\r\n                                      coverImg +\r\n                                      '\\', \\'image\\', \\'' +\r\n                                      title +\r\n                                      '\\')\" style=\"background:none;border:none;color:white;cursor:pointer;font-size:20px;\">' +\r\n                                      '<i class=\"fa-solid fa-expand\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"highlight-meta\">' +\r\n                                      '<p class=\"highlight-title\">' +\r\n                                      title +\r\n                                      \"<\/p>\" +\r\n                                      (mediaCount > 0\r\n                                          ? '<span class=\"highlight-count\"><i class=\"fa-solid fa-photo-film\"><\/i> ' + mediaCount + \"<\/span>\"\r\n                                          : \"\") +\r\n                                      (username\r\n                                          ? '<span class=\"highlight-username\">@' +\r\n                                          username +\r\n                                          (isVerified ? ' <i class=\"fa-solid fa-badge-check\"><\/i>' : \"\") +\r\n                                          \"<\/span>\"\r\n                                          : \"\") +\r\n                                      \"<\/div>\" +\r\n                                      itemsHtml +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              highlightsHTML += \"<\/div>\";\r\n                              $(\"#tab-highlights\").html(highlightsHTML);\r\n                              loadedTabs.highlights = true;\r\n  \r\n                              \/\/ Add hover effects for highlight items\r\n                              $('.highlight-img-container').hover(\r\n                                  function () {\r\n                                      $(this).find('.highlight-overlay').css('opacity', '1');\r\n                                  },\r\n                                  function () {\r\n                                      $(this).find('.highlight-overlay').css('opacity', '0');\r\n                                  }\r\n                              );\r\n                          },\r\n                          error: function (xhr) {\r\n                              $(\"#tab-highlights\").html(\"<p class='no-result'>Failed to load highlights.<\/p>\");\r\n                          },\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Function to load reels\r\n                  function loadReels(profileUrl) {\r\n                      if (loadedTabs.reels) return;\r\n  \r\n                      $(\"#tab-reels\").html(\r\n                          '<div class=\"skeleton-reels-grid\">' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          '<div class=\"skeleton-reel\"><div class=\"skeleton-reel-img\"><\/div><div class=\"skeleton-reel-meta\"><div class=\"skeleton-reel-caption\"><\/div><div class=\"skeleton-reel-caption-short\"><\/div><div class=\"skeleton-reel-stats\"><div class=\"skeleton-reel-stat\"><\/div><div class=\"skeleton-reel-stat\"><\/div><\/div><div class=\"skeleton-reel-time\"><\/div><\/div><\/div>' +\r\n                          \"<\/div>\"\r\n                      );\r\n  \r\n                      var reelsForm = new FormData();\r\n                      reelsForm.append(\"profile\", profileUrl);\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/media\/reels\",\r\n                          type: \"POST\",\r\n                          data: reelsForm,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (reelRes) {\r\n  \r\n                              var reels =\r\n                                  reelRes && reelRes.data && reelRes.data.data && reelRes.data.data.items ? reelRes.data.data.items : [];\r\n                              $(\"#tab-reels\").empty();\r\n                              if (!reels.length) {\r\n                                  $(\"#tab-reels\").html(\"<p class='no-result'>No reels found.<\/p>\");\r\n                                  return;\r\n                              }\r\n  \r\n                              var reelsHTML = '<div class=\"reels-grid\">';\r\n  \r\n                              for (var index = 0; index < reels.length; index++) {\r\n                                  var reel = reels[index];\r\n                                  var videoUrl = \"\";\r\n                                  if (reel && reel.video_versions && reel.video_versions[0]) {\r\n                                      videoUrl = reel.video_versions[0].url;\r\n                                  } else if (reel && reel.media && reel.media.video_versions && reel.media.video_versions[0]) {\r\n                                      videoUrl = reel.media.video_versions[0].url;\r\n                                  }\r\n  \r\n                                  var thumbnail = \"\";\r\n                                  if (reel && reel.image_versions && reel.image_versions.items && reel.image_versions.items[0]) {\r\n                                      thumbnail = reel.image_versions.items[0].url;\r\n                                  } else if (\r\n                                      reel &&\r\n                                      reel.media &&\r\n                                      reel.media.image_versions &&\r\n                                      reel.media.image_versions.items &&\r\n                                      reel.media.image_versions.items[0]\r\n                                  ) {\r\n                                      thumbnail = reel.media.image_versions.items[0].url;\r\n                                  }\r\n  \r\n                                  var caption = reel && reel.caption && reel.caption.text ? reel.caption.text : \"\";\r\n                                  var time = new Date(reel && reel.taken_at ? reel.taken_at * 1000 : Date.now()).toLocaleDateString();\r\n                                  var reelId = reel && reel.id ? reel.id : \"reel-\" + index;\r\n                                  var views =\r\n                                      reel && reel.view_count\r\n                                          ? reel.view_count\r\n                                          : reel && reel.media && reel.media.view_count\r\n                                              ? reel.media.view_count\r\n                                              : 0;\r\n                                  var likes =\r\n                                      reel && reel.like_count\r\n                                          ? reel.like_count\r\n                                          : reel && reel.media && reel.media.like_count\r\n                                              ? reel.media.like_count\r\n                                              : 0;\r\n  \r\n                                  \/\/ FIXED: Use data-url attribute for download button\r\n                                  reelsHTML +=\r\n                                      '<div class=\"reel-card\" style=\"animation-delay: ' +\r\n                                      index * 0.05 +\r\n                                      's\">' +\r\n                                      '<div class=\"reel-img-container\" data-media=\"' +\r\n                                      videoUrl +\r\n                                      '\" data-type=\"video\">' +\r\n                                      '<img decoding=\"async\" src=\"' +\r\n                                      thumbnail +\r\n                                      '\" class=\"reel-thumb\" alt=\"IG Reel\" loading=\"lazy\"\/>' +\r\n                                      '<video src=\"' +\r\n                                      videoUrl +\r\n                                      '\" class=\"reel-video\" controls playsInline style=\"display:none; width:100%; height:100%; object-fit:cover; position:absolute; top:0; left:0;\"><\/video>' +\r\n                                      '<div class=\"reel-overlay\">' +\r\n                                      '<button class=\"reel-view-btn\">' +\r\n                                      '<i class=\"fa-solid fa-play\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      '<button class=\"reel-fullscreen-btn\" style=\"display:none;\">' +\r\n                                      '<i class=\"fa-solid fa-expand\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"reel-meta\">' +\r\n                                      '<p class=\"caption\">' +\r\n                                      caption +\r\n                                      \"<\/p>\" +\r\n                                      '<div class=\"reel-stats-row\">' +\r\n                                      '<div class=\"reel-stats\">' +\r\n                                      '<span><i class=\"fa-solid fa-play\"><\/i> ' +\r\n                                      formatNumber(views) +\r\n                                      \"<\/span>\" +\r\n                                      '<span><i class=\"fa-solid fa-heart\"><\/i> ' +\r\n                                      formatNumber(likes) +\r\n                                      \"<\/span>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<button class=\"reel-download-btn\" data-url=\"' +\r\n                                      videoUrl +\r\n                                      '\" data-filename=\"instagram_reel_' +\r\n                                      reelId +\r\n                                      '.mp4\" data-type=\"video\">' +\r\n                                      '<i class=\"fa-solid fa-download\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<small class=\"time\">' +\r\n                                      time +\r\n                                      \"<\/small>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              reelsHTML += \"<\/div>\";\r\n  \r\n                              $(\"#tab-reels\").html(reelsHTML);\r\n                              loadedTabs.reels = true;\r\n  \r\n                              \/\/ Add media type indicators\r\n                              setTimeout(addMediaTypeIndicators, 100);\r\n                          },\r\n                          error: function (xhr) {\r\n                              console.error(\"Reels error:\", xhr);\r\n                              $(\"#tab-reels\").html(\"<p class='no-result'>Failed to load reels.<\/p>\");\r\n                          },\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Function to load posts\r\n                  function loadPosts(profileUrl) {\r\n                      $(\"#tab-posts\").html(\r\n                          '<div class=\"skeleton-posts-grid\">' +\r\n                          Array(6).fill().map(() =>\r\n                              '<div class=\"skeleton-post\">' +\r\n                              '<div class=\"skeleton-post-img\"><\/div>' +\r\n                              '<div class=\"skeleton-post-meta\">' +\r\n                              '<div class=\"skeleton-post-stats\">' +\r\n                              '<div class=\"skeleton-post-stat\"><\/div>' +\r\n                              '<div class=\"skeleton-post-stat\"><\/div>' +\r\n                              '<\/div>' +\r\n                              '<div class=\"skeleton-post-caption\"><\/div>' +\r\n                              '<div class=\"skeleton-post-caption-short\"><\/div>' +\r\n                              '<div class=\"skeleton-post-time\"><\/div>' +\r\n                              '<\/div>' +\r\n                              '<\/div>'\r\n                          ).join('') +\r\n                          '<\/div>'\r\n                      );\r\n                      var postsForm = new FormData();\r\n                      postsForm.append(\"profile\", profileUrl);\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/media\/posts\",\r\n                          type: \"POST\",\r\n                          data: postsForm,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (postRes) {\r\n  \r\n                              var posts =\r\n                                  postRes && postRes.data && postRes.data.data && postRes.data.data.items ? postRes.data.data.items : [];\r\n                              $(\"#tab-posts\").empty();\r\n                              if (!posts.length) {\r\n                                  $(\"#tab-posts\").html(\"<p class='no-result'>No posts found.<\/p>\");\r\n                                  return;\r\n                              }\r\n  \r\n                              var postHTML = '<div class=\"posts-grid\">';\r\n  \r\n                              for (var index = 0; index < posts.length; index++) {\r\n                                  var post = posts[index];\r\n                                  var isPostVideo = isVideo(post);\r\n                                  var mediaUrl = getMediaUrl(post);\r\n                                  var thumbnail = getMediaThumbnail(post);\r\n                                  var caption = post && post.caption && post.caption.text ? post.caption.text : \"\";\r\n                                  var time = new Date(post && post.taken_at ? post.taken_at * 1000 : Date.now()).toLocaleDateString();\r\n                                  var postId = post && post.id ? post.id : \"post-\" + index;\r\n                                  var likes = post && post.like_count ? post.like_count : 0;\r\n                                  var comments = post && post.comment_count ? post.comment_count : 0;\r\n  \r\n                                  postHTML +=\r\n                                      '<div class=\"post-card\" style=\"animation-delay: ' +\r\n                                      index * 0.05 +\r\n                                      's\">' +\r\n                                      '<div class=\"post-img-container\" data-media=\"' +\r\n                                      mediaUrl +\r\n                                      '\" data-type=\"' +\r\n                                      (isPostVideo ? \"video\" : \"image\") +\r\n                                      '\">' +\r\n                                      '<img decoding=\"async\" src=\"' +\r\n                                      thumbnail +\r\n                                      '\" class=\"post-thumb\" alt=\"IG Post\" loading=\"lazy\"\/>' +\r\n                                      (isPostVideo\r\n                                          ? '<video src=\"' +\r\n                                          mediaUrl +\r\n                                          '\" class=\"post-video\" controls playsInline style=\"display:none; width:100%; height:100%; object-fit:cover; position:absolute; top:0; left:0;\"><\/video>'\r\n                                          : \"\") +\r\n                                      '<div class=\"post-overlay\">' +\r\n                                      '<button class=\"post-view-btn\">' +\r\n                                      (isPostVideo ? '<i class=\"fa-solid fa-play\"><\/i>' : '<i class=\"fa-solid fa-eye\"><\/i>') +\r\n                                      \"<\/button>\" +\r\n                                      (isPostVideo\r\n                                          ? '<button class=\"post-fullscreen-btn\" style=\"display:none;\"><i class=\"fa-solid fa-expand\"><\/i><\/button>'\r\n                                          : \"\") +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"post-meta\">' +\r\n                                      '<div class=\"post-stats-row\">' +\r\n                                      '<div class=\"post-stats\">' +\r\n                                      '<span><i class=\"fa-solid fa-heart\"><\/i> ' +\r\n                                      formatNumber(likes) +\r\n                                      \"<\/span>\" +\r\n                                      '<span><i class=\"fa-solid fa-comment\"><\/i> ' +\r\n                                      formatNumber(comments) +\r\n                                      \"<\/span>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<button class=\"post-download-btn\" data-url=\"' +\r\n                                      mediaUrl +\r\n                                      '\" data-filename=\"instagram_post_' +\r\n                                      postId +\r\n                                      \".\" +\r\n                                      (isPostVideo ? \"mp4\" : \"jpg\") +\r\n                                      '\" data-type=\"' +\r\n                                      (isPostVideo ? \"video\" : \"image\") +\r\n                                      '\">' +\r\n                                      '<i class=\"fa-solid fa-download\"><\/i>' +\r\n                                      \"<\/button>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<p class=\"caption\">' +\r\n                                      caption +\r\n                                      \"<\/p>\" +\r\n                                      '<small class=\"time\">' +\r\n                                      time +\r\n                                      \"<\/small>\" +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              postHTML += \"<\/div>\";\r\n  \r\n                              $(\"#tab-posts\").html(postHTML);\r\n                              loadedTabs.posts = true;\r\n  \r\n                              \/\/ Add media type indicators\r\n                              setTimeout(addMediaTypeIndicators, 100);\r\n                          },\r\n                          error: function (xhr) {\r\n                              console.error(\"Posts error:\", xhr);\r\n                              $(\"#tab-posts\").html(\"<p class='no-result'>Failed to load posts.<\/p>\");\r\n                          },\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Enhanced download button click handlers - ONLY for explicit download buttons\r\n                  $(document).on(\"click\", \".post-download-btn, .story-download-btn, .reel-download-btn\", function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      \/\/ Get the media URL from data-media if data-url is not available (for backward compatibility)\r\n                      var url = $(this).attr(\"data-url\") || $(this).data(\"url\") || $(this).data(\"media\");\r\n                      var filename = $(this).attr(\"data-filename\") || $(this).data(\"filename\");\r\n                      var type = $(this).attr(\"data-type\") || $(this).data(\"type\");\r\n  \r\n                      console.log(\"Download button clicked:\", { url: url, filename: filename, type: type });\r\n  \r\n                      \/\/ Ensure we're getting the highest quality image\r\n                      if (type === \"image\" && url && url.indexOf(\"instagram\") !== -1) {\r\n                          \/\/ Remove any size parameters to get full resolution\r\n                          url = url.split(\"?\")[0];\r\n                      }\r\n  \r\n                      if (url && filename) {\r\n                          \/\/ Use downloadWithProgress instead of direct fetch to prevent new tab\r\n                          downloadWithProgress(url, filename, type);\r\n                      } else {\r\n                          console.error(\"Missing download data:\", { url: url, filename: filename, type: type });\r\n                          alert(\"Download information is missing. Please try again.\");\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Check if account type is selected before allowing API request\r\n                  $(\".view-btn\").on(\"click\", function (e) {\r\n                      e.preventDefault();\r\n  \r\n                      var profileUrl = $(\".ig-input-area input\").val().trim();\r\n  \r\n                      if (profileUrl === \"\") {\r\n                          $(\"#error-message\").text(\"Please enter an Instagram profile URL or username\").show();\r\n                          return;\r\n                      }\r\n  \r\n                      \/\/ Open new tab on second+ searches but don't navigate to it\r\n                      \/\/ if (!isFirstSearch) {\r\n                      \/\/     var tempLink = document.createElement(\"a\");\r\n                      \/\/     tempLink.href = \"https:\/\/appsumo.8odi.net\/c\/5721360\/2819681\/7443\/#\" + activeTab;\r\n                      \/\/     tempLink.target = \"_blank\";\r\n                      \/\/     tempLink.rel = \"noopener noreferrer\";\r\n                      \/\/     tempLink.style.display = \"none\";\r\n                      \/\/     document.body.appendChild(tempLink);\r\n  \r\n                      \/\/     setTimeout(function () {\r\n                      \/\/         tempLink.click();\r\n                      \/\/         document.body.removeChild(tempLink);\r\n                      \/\/     }, 100);\r\n                      \/\/ } else {\r\n                      \/\/     isFirstSearch = false;\r\n                      \/\/ }\r\n  \r\n                      \/\/ Reset loaded tabs\r\n                      loadedTabs = {\r\n                          posts: false,\r\n                          stories: false,\r\n                          highlights: false,\r\n                          reels: false,\r\n                      };\r\n  \r\n                      var formData = new FormData();\r\n                      formData.append(\"profile\", profileUrl);\r\n  \r\n                      $(\".view-btn\").prop(\"disabled\", true).html(\"<span style='font-weight: 600;'>Loading...<\/span>\");\r\n  \r\n                      $(\".ig-result\").html(\r\n                          '<div class=\"skeleton-profile\">' +\r\n                          '<div class=\"skeleton-profile-header\">' +\r\n                          '<div class=\"skeleton-avatar\"><\/div>' +\r\n                          '<div class=\"skeleton-profile-info\">' +\r\n                          '<div class=\"skeleton-username\"><\/div>' +\r\n                          '<div class=\"skeleton-fullname\"><\/div>' +\r\n                          '<div class=\"skeleton-stats\">' +\r\n                          '<div class=\"skeleton-stat\"><\/div>' +\r\n                          '<div class=\"skeleton-stat\"><\/div>' +\r\n                          '<div class=\"skeleton-stat\"><\/div>' +\r\n                          \"<\/div>\" +\r\n                          \"<\/div>\" +\r\n                          '<div class=\"skeleton-bio\"><\/div>' +\r\n                          '<div class=\"skeleton-tabs\">' +\r\n                          '<div class=\"skeleton-tab\"><\/div>' +\r\n                          '<div class=\"skeleton-tab\"><\/div>' +\r\n                          '<div class=\"skeleton-tab\"><\/div>' +\r\n                          '<div class=\"skeleton-tab\"><\/div>' +\r\n                          \"<\/div>\" +\r\n                          '<div class=\"skeleton-posts-grid\">' +\r\n                          \"<\/div>\" +\r\n                          \"<\/div>\"\r\n                      );\r\n                      $(\"#error-message\").hide().text(\"\");\r\n  \r\n                      $.ajax({\r\n                          url: \"https:\/\/tools.xrespond.com\/api\/instagram\/profile-info\",\r\n                          type: \"POST\",\r\n                          data: formData,\r\n                          contentType: false,\r\n                          processData: false,\r\n                          success: function (res) {\r\n                              \/\/ Add scroll function\r\n                              function scrollToProfile() {\r\n                                  const profileSection = document.querySelector('.ig-result');\r\n                                  if (profileSection) {\r\n                                      profileSection.scrollIntoView({\r\n                                          behavior: 'smooth',\r\n                                          block: 'start'\r\n                                      });\r\n                                  }\r\n                              }\r\n  \r\n                              \/\/ Modify the existing AJAX success handler in the .view-btn click event\r\n  \r\n                              setTimeout(scrollToProfile, 500);\r\n                              if (res.data.status === \"error\") {\r\n                                  $(\"#error-message\").text(res.data.message).show();\r\n  \r\n                                  loadedTabs.posts = false;\r\n                                  loadedTabs.stories = false;\r\n                                  loadedTabs.highlights = false;\r\n                                  loadedTabs.reels = false;\r\n                                  $(\".view-btn\").prop(\"disabled\", false).html(\"<i class='fa-solid fa-unlock'><\/i> View Profile\");\r\n                                  \/\/ Clear any existing content in the results container\r\n                                  $(\".ig-result\").empty();\r\n  \r\n                                  \/\/ Return immediately to stop further rendering\r\n                                  return;\r\n                              }\r\n                              $(\".view-btn\").prop(\"disabled\", false).html(\"<i class='fa-solid fa-unlock'><\/i> View Profile\");\r\n  \r\n                              var data = res && res.data && res.data.data ? res.data.data : {};\r\n                              console.log(\"Profile data:\", data);\r\n  \r\n                              var profileImage = data.hd_profile_pic_url || data.profile_pic_url || \"\";\r\n                              var profileImageViewer = \"\";\r\n  \r\n                              isPrivateAccount = !!data.is_private;\r\n  \r\n                              if (profileImage) {\r\n                                  profileImageViewer =\r\n                                      '<div class=\"profile-image-container\">' +\r\n                                      '<img decoding=\"async\" class=\"profile-image\" src=\"' +\r\n                                      profileImage +\r\n                                      '\" alt=\"Profile Picture\" referrerpolicy=\"no-referrer\"\/>' +\r\n                                      '<button class=\"view-profile-img\"><i class=\"fa-solid fa-expand\"><\/i><\/button>' +\r\n                                      \"<\/div>\";\r\n                              }\r\n  \r\n                              $(\".ig-result\").html(\r\n                                  '<div class=\"ig-profile-header\">' +\r\n                                  '<div class=\"profile-header-content\">' +\r\n                                  profileImageViewer +\r\n                                  '<div class=\"profile-info\">' +\r\n                                  \"<h3>@\" +\r\n                                  (data.username || \"username\") +\r\n                                  \"<\/h3>\" +\r\n                                  \"<h4>\" +\r\n                                  (data.full_name || \"\") +\r\n                                  \"<\/h4>\" +\r\n                                  '<div class=\"stats\">' +\r\n                                  '<div class=\"stat-item\">' +\r\n                                  '<span class=\"stat-value\">' +\r\n                                  formatNumber(data.media_count || 0) +\r\n                                  \"<\/span>\" +\r\n                                  '<span class=\"stat-label\">posts<\/span>' +\r\n                                  \"<\/div>\" +\r\n                                  '<div class=\"stat-item\">' +\r\n                                  '<span class=\"stat-value\">' +\r\n                                  formatNumber(data.follower_count || 0) +\r\n                                  \"<\/span>\" +\r\n                                  '<span class=\"stat-label\">followers<\/span>' +\r\n                                  \"<\/div>\" +\r\n                                  '<div class=\"stat-item\">' +\r\n                                  '<span class=\"stat-value\">' +\r\n                                  formatNumber(data.following_count || 0) +\r\n                                  \"<\/span>\" +\r\n                                  '<span class=\"stat-label\">following<\/span>' +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\" +\r\n                                  '<div class=\"profile-bio\">' +\r\n                                  \"<p>\" +\r\n                                  (data.biography || \"\") +\r\n                                  \"<\/p>\" +\r\n                                  (data.external_url\r\n                                      ? '<a href=\"' +\r\n                                      data.external_url +\r\n                                      '\" target=\"_blank\" class=\"profile-link\"><i class=\"fa-solid fa-link\"><\/i> ' +\r\n                                      data.external_url +\r\n                                      \"<\/a>\"\r\n                                      : \"\") +\r\n                                  (data.is_private\r\n                                      ? '<div class=\"private-account-message\" style=\"width:60%; margin:auto; text-align:center; padding:10px 0;\"><i class=\"fa-solid fa-lock\"><\/i> This is a private account. Posts, stories, reels, and highlights are not visible due to Instagram\\'s privacy policy.<\/div>'\r\n                                      : \"\") +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\"\r\n                              );\r\n  \r\n                              var tabHTML =\r\n                                  '<div class=\"ig-tabs\">' +\r\n                                  '<button class=\"tab-btn active\" data-tab=\"posts\"><i class=\"fa-solid fa-grid-2\"><\/i> Posts<\/button>' +\r\n                                  '<button class=\"tab-btn\" data-tab=\"stories\"><i class=\"fa-solid fa-circle-play\"><\/i> Stories<\/button>' +\r\n                                  '<button class=\"tab-btn\" data-tab=\"highlights\"><i class=\"fa-solid fa-star\"><\/i> Highlights<\/button>' +\r\n                                  '<button class=\"tab-btn\" data-tab=\"reels\"><i class=\"fa-solid fa-film\"><\/i> Reels<\/button>' +\r\n                                  \"<\/div>\";\r\n  \r\n                              $(\".ig-result\").append(tabHTML);\r\n  \r\n                              if (isPrivateAccount) {\r\n                                  $(\".ig-result\").append(\r\n                                      '<div class=\"ig-tab-content\" id=\"tab-posts\">' +\r\n                                      '<div class=\"private-account-message\">' +\r\n                                      '<i class=\"fa-solid fa-lock\"><\/i> This content cannot be displayed due to Instagram\\'s privacy policy for private accounts.' +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"ig-tab-content\" id=\"tab-stories\" style=\"display:none;\">' +\r\n                                      '<div class=\"private-account-message\">' +\r\n                                      '<i class=\"fa-solid fa-lock\"><\/i> Stories cannot be displayed due to Instagram\\'s privacy policy for private accounts.' +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"ig-tab-content\" id=\"tab-highlights\" style=\"display:none;\">' +\r\n                                      '<div class=\"private-account-message\">' +\r\n                                      '<i class=\"fa-solid fa-lock\"><\/i> Highlights cannot be displayed due to Instagram\\'s privacy policy for private accounts.' +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\" +\r\n                                      '<div class=\"ig-tab-content\" id=\"tab-reels\" style=\"display:none;\">' +\r\n                                      '<div class=\"private-account-message\">' +\r\n                                      '<i class=\"fa-solid fa-lock\"><\/i> Reels cannot be displayed due to Instagram\\'s privacy policy for private accounts.' +\r\n                                      \"<\/div>\" +\r\n                                      \"<\/div>\"\r\n                                  );\r\n                                  return;\r\n                              }\r\n  \r\n                              \/\/ Public account tab content setup\r\n                              $(\".ig-result\").append(\r\n                                  '<div class=\"ig-tab-content\" id=\"tab-posts\">' +\r\n                                  '<div class=\"skeleton-posts-grid\">' +\r\n                                  Array(6)\r\n                                      .fill()\r\n                                      .map(function () {\r\n                                          return (\r\n                                              ''\r\n                                          );\r\n                                      })\r\n                                      .join(\"\") +\r\n                                  \"<\/div>\" +\r\n                                  \"<\/div>\" +\r\n                                  '<div class=\"ig-tab-content\" id=\"tab-stories\" style=\"display:none;\"><\/div>' +\r\n                                  '<div class=\"ig-tab-content\" id=\"tab-highlights\" style=\"display:none;\"><\/div>' +\r\n                                  '<div class=\"ig-tab-content\" id=\"tab-reels\" style=\"display:none;\"><\/div>'\r\n                              );\r\n                              loadPosts(profileUrl);\r\n                              loadedTabs.posts = true;\r\n                          },\r\n                          error: function (err) {\r\n                              $(\"#error-message\").text(\"Wrong input, please check user name\").show();\r\n  \r\n                              loadedTabs.posts = false;\r\n                              loadedTabs.stories = false;\r\n                              loadedTabs.highlights = false;\r\n                              loadedTabs.reels = false;\r\n                              $(\".view-btn\").prop(\"disabled\", false).html(\"<i class='fa-solid fa-unlock'><\/i> View Profile\");\r\n                              \/\/ Clear any existing content in the results container\r\n                              $(\".ig-result\").empty();\r\n  \r\n                              \/\/ Return immediately to stop further rendering\r\n                              return;\r\n                          },\r\n                      });\r\n                  });\r\n  \r\n                  $(document).on(\"click\", \".tab-btn\", function () {\r\n                      var tab = $(this).data(\"tab\");\r\n                      var profileUrl = $(\".ig-input-area input\").val().trim();\r\n  \r\n                      \/\/ Prevent unnecessary re-click\r\n                      if ($(this).hasClass(\"active\")) return;\r\n  \r\n                      \/\/ Store the active tab\r\n                      activeTab = tab;\r\n  \r\n                      \/\/ UI: Highlight current tab\r\n                      $(\".tab-btn\").removeClass(\"active\");\r\n                      $(this).addClass(\"active\");\r\n  \r\n                      \/\/ UI: Show tab content\r\n                      $(\".ig-tab-content\").hide();\r\n                      $(\"#tab-\" + tab).fadeIn(300);\r\n  \r\n                      \/\/ Pause any playing videos and reset buttons\r\n                      pauseAllVideosExcept(null);\r\n  \r\n                      \/\/ External link redirect (DO THIS BEFORE checking if private)\r\n                      \/\/ var externalUrl = null;\r\n                      \/\/ if (tab === \"stories\") {\r\n                      \/\/     externalUrl = \"https:\/\/amzn.to\/4k906Sg\";\r\n                      \/\/ } else if (tab === \"reels\") {\r\n                      \/\/     externalUrl = \"https:\/\/hostinger.sjv.io\/c\/5721360\/1393511\/12282\";\r\n                      \/\/ } else {\r\n                      \/\/     externalUrl = \"https:\/\/appsumo.8odi.net\/c\/5721360\/2819681\/7443\/#\" + tab;\r\n                      \/\/ }\r\n  \r\n                      \/\/ if (externalUrl) {\r\n                      \/\/     var link = document.createElement(\"a\");\r\n                      \/\/     link.href = externalUrl;\r\n                      \/\/     link.target = \"_blank\";\r\n                      \/\/     link.rel = \"noopener noreferrer nofollow\";\r\n                      \/\/     document.body.appendChild(link);\r\n                      \/\/     link.click();\r\n                      \/\/     document.body.removeChild(link);\r\n                      \/\/ }\r\n  \r\n                      \/\/ Now check if private to skip loading content\r\n                      if (isPrivateAccount) return;\r\n  \r\n                      \/\/ Load content if not already loaded\r\n                      if (tab === \"posts\" && !loadedTabs.posts && profileUrl) {\r\n                          loadPosts(profileUrl);\r\n                          loadedTabs.posts = true;\r\n                      } else if (tab === \"stories\" && !loadedTabs.stories && profileUrl) {\r\n                          loadStories(profileUrl);\r\n                          loadedTabs.stories = true;\r\n                      } else if (tab === \"highlights\" && !loadedTabs.highlights && profileUrl) {\r\n                          loadHighlights(profileUrl);\r\n                          loadedTabs.highlights = true;\r\n                      } else if (tab === \"reels\" && !loadedTabs.reels && profileUrl) {\r\n                          loadReels(profileUrl);\r\n                          loadedTabs.reels = true;\r\n                      }\r\n  \r\n                      \/\/ Add media type indicators when switching tabs\r\n                      setTimeout(addMediaTypeIndicators, 200);\r\n                  });\r\n  \r\n                  \/\/ Enhanced Profile Image Modal with Animation\r\n                  $(document).on(\"click\", \".view-profile-img\", function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      \/\/ Get the profile image source directly from the img element\r\n                      var profileImage = $(\".profile-image\").attr(\"src\");\r\n  \r\n                      console.log(\"Original profile image URL:\", profileImage);\r\n  \r\n                      if (!profileImage) {\r\n                          console.error(\"No profile image found\");\r\n                          return;\r\n                      }\r\n  \r\n                      \/\/ Ensure we're getting the highest quality image\r\n                      if (profileImage.indexOf(\"instagram\") !== -1) {\r\n                          \/\/ Remove any size parameters to get full resolution\r\n                          profileImage = profileImage.split(\"?\")[0];\r\n                      }\r\n  \r\n                      console.log(\"Cleaned profile image URL for download:\", profileImage);\r\n  \r\n                      \/\/ Remove existing modal if any\r\n                      $(\".profile-img-modal\").remove();\r\n  \r\n                      \/\/ Create modal elements step by step to ensure proper attribute setting\r\n                      var modal = $('<div class=\"ipgv-profile-img-modal\">');\r\n                      var backdrop = $('<div class=\"ipgv-modal-backdrop\">');\r\n                      var content = $('<div class=\"ipgv-modal-content\">');\r\n                      var img = $('<img class=\"ipgv-modal-img\" referrerpolicy=\"no-referrer\" alt=\"Profile Image\">');\r\n                      var actions = $('<div class=\"ipgv-modal-actions\">');\r\n                      var downloadBtn = $('<button class=\"ipgv-modal-download-btn\">');\r\n                      var closeBtn = $('<button class=\"ipgv-close-modal\">');\r\n  \r\n                      \/\/ Set image source\r\n                      img.attr(\"src\", profileImage);\r\n  \r\n                      \/\/ Set download button content and attributes using both attr() and data()\r\n                      downloadBtn.html('<i class=\"fa-solid fa-download\"><\/i> Download');\r\n                      downloadBtn.attr(\"data-url\", profileImage);\r\n                      downloadBtn.attr(\"data-filename\", \"instagram_profile_hd.jpg\");\r\n                      downloadBtn.attr(\"data-type\", \"image\");\r\n  \r\n                      \/\/ Also set using jQuery data() for redundancy\r\n                      downloadBtn.data(\"url\", profileImage);\r\n                      downloadBtn.data(\"filename\", \"instagram_profile_hd.jpg\");\r\n                      downloadBtn.data(\"type\", \"image\");\r\n  \r\n                      \/\/ Set close button\r\n                      closeBtn.html('<i class=\"fa-solid fa-xmark\"><\/i>');\r\n  \r\n                      \/\/ Assemble modal\r\n                      actions.append(downloadBtn);\r\n                      content.append(img, actions, closeBtn);\r\n                      modal.append(backdrop, content);\r\n  \r\n                      \/\/ Add modal to body\r\n                      $(\"body\").append(modal);\r\n  \r\n                      \/\/ Debug: Verify attributes are set correctly\r\n                      setTimeout(function () {\r\n                          var btn = $(\".ipgv-modal-download-btn\");\r\n                          console.log(\"Download button element:\", btn[0]);\r\n                          console.log(\"Download button outerHTML:\", btn[0].outerHTML);\r\n                          console.log(\"data-url attribute:\", btn.attr(\"data-url\"));\r\n                          console.log(\"data-filename attribute:\", btn.attr(\"data-filename\"));\r\n                          console.log(\"data-type attribute:\", btn.attr(\"data-type\"));\r\n                          console.log(\"jQuery data url:\", btn.data(\"url\"));\r\n                          console.log(\"Direct getAttribute:\", btn[0].getAttribute(\"data-url\"));\r\n                      }, 100);\r\n  \r\n                      \/\/ Show modal with animation\r\n                      setTimeout(function () {\r\n                          modal.addClass(\"active\");\r\n                          $(\"body\").addClass(\"ipgv-modal-open\");\r\n                      }, 10);\r\n                  });\r\n  \r\n                  \/\/ Close modal events\r\n                  $(document).on(\"click\", \".ipgv-close-modal, .ipgv-modal-backdrop\", function (e) {\r\n                      e.preventDefault();\r\n                      $(\".ipgv-profile-img-modal, .ipgv-media-modal\").removeClass(\"active\");\r\n                      $(\"body\").removeClass(\"ipgv-modal-open\");\r\n  \r\n                      setTimeout(function () {\r\n                          $(\".ipgv-profile-img-modal, .ipgv-media-modal\").remove();\r\n                      }, 300);\r\n                  });\r\n  \r\n                  \/\/ Prevent clicks inside modal content from closing the modal\r\n                  $(document).on(\"click\", \".ipgv-modal-content\", function (e) {\r\n                      e.stopPropagation();\r\n                  });\r\n  \r\n                  \/\/ FIXED: Profile image modal download button - downloads directly with toast (NO NEW TAB)\r\n                  $(document).on(\"click\", \".ipgv-modal-download-btn\", function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      \/\/ Try multiple methods to get the URL\r\n                      var $this = $(this);\r\n                      var url = $this.attr(\"data-url\") || $this.data(\"url\") || $this[0].getAttribute(\"data-url\");\r\n                      var filename = $this.attr(\"data-filename\") || $this.data(\"filename\") || \"instagram_profile_hd.jpg\";\r\n                      var type = $this.attr(\"data-type\") || $this.data(\"type\") || \"image\";\r\n  \r\n  \r\n  \r\n                      if (!url) {\r\n                          \/\/ Fallback: try to get URL from the modal image\r\n                          url = $(\".ipgv-modal-img\").attr(\"src\");\r\n                          console.log(\"Fallback URL from modal image:\", url);\r\n                      }\r\n  \r\n                      if (!url) {\r\n                          console.error(\"No URL found for download\");\r\n                          \/\/ alert(\"Download URL not found. Please try again.\");\r\n                          return;\r\n                      }\r\n  \r\n                      \/\/ Ensure we're getting the highest quality image\r\n                      var downloadUrl = url;\r\n                      if (type === \"image\" && url.indexOf(\"instagram\") !== -1) {\r\n                          \/\/ Remove any size parameters to get full resolution\r\n                          downloadUrl = url.split(\"?\")[0];\r\n                      }\r\n  \r\n                      console.log(\"Starting download with URL:\", downloadUrl);\r\n  \r\n                      \/\/ Use the downloadWithProgress function for a better user experience\r\n                      downloadWithProgress(downloadUrl, filename, type);\r\n  \r\n                      \/\/ Close the modal after starting download\r\n                      setTimeout(function () {\r\n                          $(\".ipgv-close-modal\").click();\r\n                      }, 500);\r\n                  });\r\n  \r\n                  \/\/ FIXED: View button handlers - Show media in modal with download option\r\n                  $(document).on(\"click\", \".post-view-btn, .story-view-btn, .reel-view-btn\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var mediaType = container.data(\"type\");\r\n                      var mediaUrl = container.data(\"media\");\r\n                      var overlay = $(this).closest(\".post-overlay, .story-overlay, .reel-overlay\");\r\n  \r\n                      if (mediaType === \"video\") {\r\n                          var video = container.find(\"video\");\r\n                          var img = container.find(\"img.post-thumb, img.story-thumb, img.reel-thumb\");\r\n                          var viewBtn = $(this);\r\n                          var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n                          var videoElement = video.get(0);\r\n  \r\n                          if (videoElement.paused) {\r\n                              \/\/ Pause all other videos first\r\n                              pauseAllVideosExcept(videoElement);\r\n  \r\n                              img.hide();\r\n                              video.show();\r\n  \r\n                              \/\/ Set video to start from beginning and play with a small delay\r\n                              videoElement.currentTime = 0;\r\n                              setTimeout(() => {\r\n                                  videoElement.play()\r\n                                      .then(() => {\r\n                                          viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                          fullscreenBtn.show();\r\n                                      })\r\n                                      .catch((e) => {\r\n                                          console.warn(\"Video play error:\", e);\r\n                                          \/\/ Reset to play button if video fails\r\n                                          viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                          fullscreenBtn.hide();\r\n                                      });\r\n                              }, 100);\r\n                          } else {\r\n                              try {\r\n                                  videoElement.pause();\r\n                                  viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                  fullscreenBtn.hide();\r\n                                  video.hide();\r\n                                  img.show();\r\n                              } catch (e) {\r\n                                  console.warn(\"Error pausing video:\", e);\r\n                              }\r\n                          }\r\n                      } else {\r\n                          \/\/ For images, show in modal with download option\r\n                          var containerType = container.hasClass(\"post-img-container\")\r\n                              ? \"post\"\r\n                              : container.hasClass(\"story-img-container\")\r\n                                  ? \"story\"\r\n                                  : \"media\";\r\n                          var filename = \"instagram_\" + containerType + \"_\" + Date.now() + \".jpg\";\r\n                          window.showMediaModal(mediaUrl, \"image\", filename);\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ FIXED: Fullscreen button handlers - Show media in modal with download option\r\n                  $(document).on(\"click\", \".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var mediaUrl = container.data(\"media\") || container.data(\"video\");\r\n                      var video = container.find(\"video\").get(0);\r\n                      var img = container.find(\"img.post-thumb, img.story-thumb, img.reel-thumb\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = $(this);\r\n  \r\n                      \/\/ Pause the current video and reset the UI\r\n                      if (video && !video.paused) {\r\n                          video.pause();\r\n                      }\r\n  \r\n                      \/\/ Hide video and show thumbnail\r\n                      container.find(\"video\").hide();\r\n                      img.show();\r\n  \r\n                      \/\/ Reset buttons to initial state\r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                      fullscreenBtn.hide();\r\n  \r\n                      \/\/ Show video in modal with download option\r\n                      var containerType = container.hasClass(\"post-img-container\")\r\n                          ? \"post\"\r\n                          : container.hasClass(\"story-img-container\")\r\n                              ? \"story\"\r\n                              : \"reel\";\r\n                      var filename = \"instagram_\" + containerType + \"_\" + Date.now() + \".mp4\";\r\n  \r\n                      window.showMediaModal(mediaUrl, \"video\", filename);\r\n                  });\r\n  \r\n                  \/\/ Function to show media in modal with download option\r\n                  window.showMediaModal = function (mediaUrl, mediaType, filename) {\r\n                      var modal = $('<div class=\"ipgv-media-modal profile-img-modal\">');\r\n                      var backdrop = $('<div class=\"ipgv-modal-backdrop\">');\r\n                      var content = $('<div class=\"ipgv-modal-content\">');\r\n                      var actions = $('<div class=\"ipgv-modal-actions\">');\r\n                      var downloadBtn = $('<button class=\"ipgv-modal-download-btn\">');\r\n                      var closeBtn = $('<button class=\"ipgv-close-modal\">');\r\n  \r\n                      \/\/ Create media element based on type\r\n                      var mediaElement;\r\n                      if (mediaType === \"video\") {\r\n                          mediaElement = $(\r\n                              '<video class=\"ipgv-modal-media\" controls autoplay style=\"max-width: 90vw; max-height: 70vh; object-fit: contain;\" \/>'\r\n                          );\r\n                          mediaElement.attr(\"src\", mediaUrl);\r\n                      } else {\r\n                          mediaElement = $(\r\n                              '<img class=\"ipgv-modal-media modal-img\" referrerpolicy=\"no-referrer\" alt=\"Media\" style=\"max-width: 90vw; max-height: 70vh; object-fit: contain;\" \/>'\r\n                          );\r\n                          mediaElement.attr(\"src\", mediaUrl);\r\n                      }\r\n  \r\n                      \/\/ Always show Download Highlight for highlight modal\r\n                      downloadBtn.html('<i class=\"fa-solid fa-download\"><\/i> Download');\r\n                      downloadBtn.on('click', function () {\r\n                          forceDownloadImage(mediaUrl, filename + '.jpg');\r\n                      });\r\n  \r\n                      \/\/ Set close button\r\n                      closeBtn.html('<i class=\"fa-solid fa-xmark\"><\/i>');\r\n  \r\n                      \/\/ Assemble modal\r\n                      actions.append(downloadBtn);\r\n                      content.append(mediaElement, actions, closeBtn);\r\n                      modal.append(backdrop, content);\r\n  \r\n                      \/\/ Add modal to body\r\n                      $(\"body\").append(modal);\r\n  \r\n                      \/\/ Show modal with animation\r\n                      setTimeout(function () {\r\n                          modal.addClass(\"active\");\r\n                          $(\"body\").addClass(\"ipgv-modal-open\");\r\n                      }, 10);\r\n  \r\n                      \/\/ Close modal when clicking close button or backdrop\r\n                      closeBtn.on('click', function () {\r\n                          modal.removeClass(\"active\");\r\n                          setTimeout(function () {\r\n                              modal.remove();\r\n                              $(\"body\").removeClass(\"ipgv-modal-open\");\r\n                          }, 300);\r\n                      });\r\n  \r\n                      backdrop.on('click', function () {\r\n                          modal.removeClass(\"active\");\r\n                          setTimeout(function () {\r\n                              modal.remove();\r\n                              $(\"body\").removeClass(\"ipgv-modal-open\");\r\n                          }, 300);\r\n                      });\r\n                  };\r\n  \r\n                  \/\/ Modified video event handlers\r\n                  $(document).on(\"click\", \"video\", function (e) {\r\n                      e.stopPropagation();\r\n  \r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                      if (this.paused) {\r\n                          \/\/ Pause all other videos first\r\n                          pauseAllVideosExcept(this);\r\n  \r\n                          \/\/ Add a small delay before playing to prevent race conditions\r\n                          setTimeout(() => {\r\n                              this.play()\r\n                                  .then(() => {\r\n                                      viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                      fullscreenBtn.show();\r\n                                  })\r\n                                  .catch((e) => {\r\n                                      console.warn(\"Video play error:\", e);\r\n                                      \/\/ Reset UI if play fails\r\n                                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                      fullscreenBtn.hide();\r\n                                  });\r\n                          }, 100);\r\n                      } else {\r\n                          try {\r\n                              this.pause();\r\n                              viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              fullscreenBtn.hide();\r\n                          } catch (e) {\r\n                              console.warn(\"Error pausing video:\", e);\r\n                          }\r\n                      }\r\n                  });\r\n  \r\n                  $(document).on(\"ended\", \"video\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                      fullscreenBtn.hide();\r\n                      overlay.css(\"opacity\", \"1\");\r\n                  });\r\n  \r\n                  $(document).on(\"pause\", \"video\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                      fullscreenBtn.hide();\r\n                      overlay.css(\"opacity\", \"1\");\r\n                  });\r\n  \r\n                  \/\/ Modified play event handler\r\n                  $(document).on(\"play\", \"video\", function () {\r\n                      var container = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\");\r\n                      var overlay = container.find(\".post-overlay, .story-overlay, .reel-overlay\");\r\n                      var viewBtn = overlay.find(\".post-view-btn, .story-view-btn, .reel-view-btn\");\r\n                      var fullscreenBtn = overlay.find(\".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\");\r\n  \r\n                      \/\/ Pause all other videos with a small delay\r\n                      setTimeout(() => {\r\n                          pauseAllVideosExcept(this);\r\n                      }, 50);\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                      fullscreenBtn.show().css(\"display\", \"flex\");\r\n                      overlay.css(\"opacity\", \"0\");\r\n                  });\r\n  \r\n                  \/\/ Modified escape key handler\r\n                  $(document).keydown(function (e) {\r\n                      if (e.key === \"Escape\") {\r\n                          \/\/ Close any open modals\r\n                          $(\".ipgv-profile-img-modal, .ipgv-media-modal\").fadeOut(300).removeClass(\"active\");\r\n                          $(\"body\").removeClass(\"ipgv-modal-open\");\r\n  \r\n                          \/\/ Pause all videos and reset controls\r\n                          pauseAllVideosExcept(null);\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Prevent video controls from interfering with custom controls\r\n                  $(document).on(\"contextmenu\", \"video\", function (e) {\r\n                      e.preventDefault();\r\n                      return false;\r\n                  });\r\n  \r\n                  \/\/ Handle window resize for fullscreen modal\r\n                  $(window).resize(function () {\r\n                      var modal = $(\".ipgv-fullscreen-video-modal\");\r\n                      if (modal.length && modal.is(\":visible\")) {\r\n                          var video = modal.find(\"video\");\r\n                          if (video.length) {\r\n                              \/\/ Adjust video size on window resize\r\n                              video.css({\r\n                                  \"max-width\": \"90%\",\r\n                                  \"max-height\": \"80%\",\r\n                              });\r\n                          }\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Initialize tooltips for buttons (if needed)\r\n                  $(document).on(\"mouseenter\", \".post-view-btn, .story-view-btn, .reel-view-btn\", function () {\r\n                      var mediaType = $(this).closest(\".post-img-container, .story-img-container, .reel-img-container\").data(\"type\");\r\n                      if (mediaType === \"video\") {\r\n                          $(this).attr(\"title\", \"Play\/Pause Video\");\r\n                      } else {\r\n                          $(this).attr(\"title\", \"View Image\");\r\n                      }\r\n                  });\r\n  \r\n                  $(document).on(\"mouseenter\", \".post-fullscreen-btn, .story-fullscreen-btn, .reel-fullscreen-btn\", function () {\r\n                      $(this).attr(\"title\", \"View Fullscreen\");\r\n                  });\r\n  \r\n                  $(document).on(\"mouseenter\", \".post-download-btn, .story-download-btn, .reel-download-btn\", function () {\r\n                      $(this).attr(\"title\", \"Download\");\r\n                  });\r\n  \r\n                  \/\/ Performance optimization: Lazy load videos\r\n                  var videoObserver = new IntersectionObserver(\r\n                      function (entries) {\r\n                          entries.forEach(function (entry) {\r\n                              if (entry.isIntersecting) {\r\n                                  var video = entry.target;\r\n                                  if (video.dataset.src && !video.src) {\r\n                                      video.src = video.dataset.src;\r\n                                      video.load();\r\n                                  }\r\n                              }\r\n                          });\r\n                      },\r\n                      {\r\n                          rootMargin: \"50px\",\r\n                      }\r\n                  );\r\n  \r\n                  \/\/ Observe videos for lazy loading\r\n                  $(document).on(\"DOMNodeInserted\", function (e) {\r\n                      var videos = $(e.target).find(\"video[data-src]\");\r\n                      videos.each(function () {\r\n                          videoObserver.observe(this);\r\n                      });\r\n                  });\r\n  \r\n                  \/\/ Clean up observers when page unloads\r\n                  $(window).on(\"beforeunload\", function () {\r\n                      if (videoObserver) {\r\n                          videoObserver.disconnect();\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Function to add media type indicators\r\n                  function addMediaTypeIndicators() {\r\n                      $(\".post-img-container, .story-img-container, .reel-img-container\").each(function () {\r\n                          \/\/ Skip if indicator already exists\r\n                          if ($(this).find(\".media-type-indicator\").length > 0) {\r\n                              return;\r\n                          }\r\n  \r\n                          var mediaType = $(this).data(\"type\");\r\n                          var indicator;\r\n  \r\n                          if (mediaType === \"video\") {\r\n                              indicator = '<div class=\"media-type-indicator video-indicator\"><i class=\"fa-solid fa-video\"><\/i> Video<\/div>';\r\n                          } else {\r\n                              indicator = '<div class=\"media-type-indicator image-indicator\"><i class=\"fa-solid fa-image\"><\/i> Image<\/div>';\r\n                          }\r\n  \r\n                          $(this).prepend(indicator);\r\n                      });\r\n                  }\r\n  \r\n                  \/\/ Ensure the profile image container has the correct structure\r\n                  \/\/ This function can be called after the profile data is loaded\r\n                  function setupProfileImageViewer() {\r\n                      \/\/ Check if the profile image container exists but doesn't have the view button\r\n                      if ($(\".profile-image-container\").length && $(\".view-profile-img\").length === 0) {\r\n                          $(\".profile-image-container\").append(\r\n                              '<button class=\"view-profile-img\" title=\"View full size image\">' +\r\n                              '<i class=\"fa-solid fa-expand\"><\/i>' +\r\n                              \"<\/button>\"\r\n                          );\r\n                      }\r\n                  }\r\n  \r\n                  \/\/ Call this function after the profile is loaded\r\n                  $(document).ajaxComplete(function (event, xhr, settings) {\r\n                      if (settings.url.indexOf(\"profile-info\") !== -1) {\r\n                          setTimeout(setupProfileImageViewer, 500);\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Show the result container when the view button is clicked\r\n                  $(\".view-btn\").on(\"click\", function () {\r\n                      $(\".ig-result\").show();\r\n                  });\r\n  \r\n                  \/\/ Modified video handling functions\r\n                  function createAndPlayVideo(container, videoUrl, thumbnailUrl) {\r\n                      \/\/ Remove any existing video\r\n                      container.find('video').remove();\r\n  \r\n                      \/\/ Create new video element\r\n                      const video = $('<video>', {\r\n                          class: 'reel-video',\r\n                          controls: true,\r\n                          playsInline: true,\r\n                          preload: 'auto',\r\n                          muted: true \/\/ Start muted to allow autoplay\r\n                      });\r\n  \r\n                      \/\/ Set up video source\r\n                      const source = $('<source>', {\r\n                          src: videoUrl,\r\n                          type: 'video\/mp4'\r\n                      });\r\n  \r\n                      video.append(source);\r\n                      container.append(video);\r\n  \r\n                      \/\/ Set up video event listeners\r\n                      video.on('loadeddata', function () {\r\n                          \/\/ Video is ready to play\r\n                          console.log('Video data loaded');\r\n                          \/\/ Unmute the video once it's loaded\r\n                          this.muted = false;\r\n                      });\r\n  \r\n                      video.on('error', function (e) {\r\n                          console.error('Video error:', e);\r\n                          \/\/ Show thumbnail if video fails to load\r\n                          container.find('.reel-thumb').show();\r\n                          video.remove();\r\n                      });\r\n  \r\n                      \/\/ Return the video element\r\n                      return video[0];\r\n                  }\r\n  \r\n                  \/\/ Modified video click handler\r\n                  $(document).on('click', '.reel-view-btn', function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      const container = $(this).closest('.reel-img-container');\r\n                      const videoUrl = container.data('media');\r\n                      const thumbnail = container.find('.reel-thumb');\r\n                      const viewBtn = $(this);\r\n                      const fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n                      \/\/ Pause all other videos first\r\n                      $('.reel-video').each(function () {\r\n                          if (this !== container.find('video')[0]) {\r\n                              try {\r\n                                  if (!this.paused) {\r\n                                      this.pause();\r\n                                  }\r\n                                  $(this).closest('.reel-img-container').find('.reel-thumb').show();\r\n                                  $(this).closest('.reel-img-container').find('.reel-view-btn').html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              } catch (e) {\r\n                                  console.warn('Error pausing video:', e);\r\n                              }\r\n                          }\r\n                      });\r\n  \r\n                      let video = container.find('video')[0];\r\n  \r\n                      if (!video) {\r\n                          \/\/ Create new video if it doesn't exist\r\n                          video = createAndPlayVideo(container, videoUrl, thumbnail.attr('src'));\r\n  \r\n                          \/\/ Wait for video to be ready\r\n                          video.addEventListener('loadeddata', function onLoad() {\r\n                              \/\/ Remove the listener to prevent multiple calls\r\n                              video.removeEventListener('loadeddata', onLoad);\r\n  \r\n                              \/\/ Hide thumbnail and show video\r\n                              thumbnail.hide();\r\n                              $(video).show();\r\n  \r\n                              \/\/ Play the video\r\n                              const playPromise = video.play();\r\n                              if (playPromise !== undefined) {\r\n                                  playPromise\r\n                                      .then(() => {\r\n                                          viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                          fullscreenBtn.show();\r\n                                      })\r\n                                      .catch(error => {\r\n                                          console.warn('Playback failed:', error);\r\n                                          \/\/ Reset UI if play fails\r\n                                          thumbnail.show();\r\n                                          $(video).hide();\r\n                                          viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                      });\r\n                              }\r\n                          }, { once: true });\r\n                      } else {\r\n                          if (video.paused) {\r\n                              \/\/ Hide thumbnail and show video\r\n                              thumbnail.hide();\r\n                              $(video).show();\r\n  \r\n                              \/\/ Play the video\r\n                              const playPromise = video.play();\r\n                              if (playPromise !== undefined) {\r\n                                  playPromise\r\n                                      .then(() => {\r\n                                          viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                          fullscreenBtn.show();\r\n                                      })\r\n                                      .catch(error => {\r\n                                          console.warn('Playback failed:', error);\r\n                                          \/\/ Reset UI if play fails\r\n                                          thumbnail.show();\r\n                                          $(video).hide();\r\n                                          viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                      });\r\n                              }\r\n                          } else {\r\n                              \/\/ Pause video\r\n                              try {\r\n                                  video.pause();\r\n                                  viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              } catch (e) {\r\n                                  console.warn('Error pausing video:', e);\r\n                              }\r\n                          }\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Modified video event handlers\r\n                  $(document).on('play', '.reel-video', function () {\r\n                      const container = $(this).closest('.reel-img-container');\r\n                      const viewBtn = container.find('.reel-view-btn');\r\n                      const fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                      fullscreenBtn.show();\r\n                  });\r\n  \r\n                  $(document).on('pause', '.reel-video', function () {\r\n                      const container = $(this).closest('.reel-img-container');\r\n                      const viewBtn = container.find('.reel-view-btn');\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  });\r\n  \r\n                  $(document).on('ended', '.reel-video', function () {\r\n                      const container = $(this).closest('.reel-img-container');\r\n                      const viewBtn = container.find('.reel-view-btn');\r\n                      const thumbnail = container.find('.reel-thumb');\r\n  \r\n                      $(this).hide();\r\n                      thumbnail.show();\r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  });\r\n  \r\n                  \/\/ Fixed Reel Play\/Pause Functionality\r\n                  $(document).off('click', '.reel-view-btn').on('click', '.reel-view-btn', function (e) {\r\n                      e.preventDefault();\r\n                      e.stopPropagation();\r\n  \r\n                      var $this = $(this);\r\n                      var container = $this.closest('.reel-img-container');\r\n                      var video = container.find('.reel-video')[0];\r\n                      var thumbnail = container.find('.reel-thumb');\r\n                      var fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n                      \/\/ Pause all other videos first\r\n                      $('.reel-video').each(function () {\r\n                          if (this !== video && !this.paused) {\r\n                              this.pause();\r\n                              $(this).removeClass('playing').hide();\r\n                              $(this).closest('.reel-img-container').find('.reel-thumb').removeClass('hidden').show();\r\n                              $(this).closest('.reel-img-container').find('.reel-view-btn').html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                          }\r\n                      });\r\n  \r\n                      if (!video) {\r\n                          var videoUrl = container.data('media');\r\n                          if (videoUrl) {\r\n                              var videoElement = $('<video class=\"reel-video\" controls playsInline preload=\"auto\"><\/video>');\r\n                              videoElement.attr('src', videoUrl);\r\n                              container.append(videoElement);\r\n                              video = videoElement[0];\r\n  \r\n                              \/\/ Wait for video to be ready\r\n                              video.addEventListener('loadeddata', function () {\r\n                                  \/\/ Hide thumbnail and show video\r\n                                  thumbnail.addClass('hidden').hide();\r\n                                  $(video).addClass('playing').show();\r\n  \r\n                                  \/\/ Play video\r\n                                  video.play().then(function () {\r\n                                      $this.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                      fullscreenBtn.show();\r\n                                  }).catch(function (err) {\r\n                                      console.error('Video play failed:', err);\r\n                                      thumbnail.removeClass('hidden').show();\r\n                                      $(video).removeClass('playing').hide();\r\n                                      $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                                  });\r\n                              }, { once: true });\r\n                          }\r\n                      } else {\r\n                          if (video.paused) {\r\n                              \/\/ Play video\r\n                              thumbnail.addClass('hidden').hide();\r\n                              $(video).addClass('playing').show();\r\n  \r\n                              video.play().then(function () {\r\n                                  $this.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                                  fullscreenBtn.show();\r\n                              }).catch(function (err) {\r\n                                  console.error('Video play failed:', err);\r\n                                  thumbnail.removeClass('hidden').show();\r\n                                  $(video).removeClass('playing').hide();\r\n                                  $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                              });\r\n                          } else {\r\n                              \/\/ Pause video\r\n                              video.pause();\r\n                              $this.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                          }\r\n                      }\r\n                  });\r\n  \r\n                  \/\/ Fixed video event handlers\r\n                  $(document).off('play', '.reel-video').on('play', '.reel-video', function () {\r\n                      var container = $(this).closest('.reel-img-container');\r\n                      var viewBtn = container.find('.reel-view-btn');\r\n                      var fullscreenBtn = container.find('.reel-fullscreen-btn');\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-pause\"><\/i>');\r\n                      fullscreenBtn.show();\r\n                  });\r\n  \r\n                  $(document).off('pause', '.reel-video').on('pause', '.reel-video', function () {\r\n                      var container = $(this).closest('.reel-img-container');\r\n                      var viewBtn = container.find('.reel-view-btn');\r\n  \r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  });\r\n  \r\n                  $(document).off('ended', '.reel-video').on('ended', '.reel-video', function () {\r\n                      var container = $(this).closest('.reel-img-container');\r\n                      var viewBtn = container.find('.reel-view-btn');\r\n                      var thumbnail = container.find('.reel-thumb');\r\n  \r\n                      $(this).removeClass('playing').hide();\r\n                      thumbnail.removeClass('hidden').show();\r\n                      viewBtn.html('<i class=\"fa-solid fa-play\"><\/i>');\r\n                  });\r\n              });\r\n  \r\n  \r\n  \r\n              \/\/ Add enter key support for input (WordPress compatible)\r\n              $(document).ready(function () {\r\n                  var inputElement = document.getElementById(\"input-url\");\r\n                  if (inputElement) {\r\n                      inputElement.addEventListener(\"keypress\", function (e) {\r\n                          if (e.key === \"Enter\") {\r\n                              var viewBtn = document.querySelector(\".view-btn\");\r\n                              if (viewBtn) {\r\n                                  viewBtn.click();\r\n                              }\r\n                          }\r\n                      });\r\n                  }\r\n              });\r\n  \r\n          })(jQuery);\r\n      <\/script>\r\n  \r\n  <!-- tools code end here -->\r\n    \r\n    <!-- Work Process Section -->\r\n  <section class=\"igfv-work-process-section\" id=\"how-it-works\">\r\n      <div class=\"container igfv-work-process-content\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"igfv-section-title igfv-light-title\">How Our Instagram Friend Viewer Works<\/h2>\r\n              <p class=\"igfv-section-subtitle igfv-light-subtitle\">View Instagram friends' lists anonymously with just 3 simple steps<\/p>\r\n          <\/div>\r\n          \r\n          <div class=\"row\">\r\n              <div class=\"col-md-4\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                  <div class=\"igfv-process-step\">\r\n                      <div class=\"igfv-step-number\">1<\/div>\r\n                      <h4 class=\"text-white\">Enter Profile URL<\/h4>\r\n                      <p class=\"igfv-light-subtitle\">Paste the Instagram profile URL of the account whose friends you want to view<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-md-4\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                  <div class=\"igfv-process-step\">\r\n                      <div class=\"igfv-step-number\">2<\/div>\r\n                      <h4 class=\"text-white\">Process Request<\/h4>\r\n                      <p class=\"igfv-light-subtitle\">Our system retrieves friends' data without revealing your identity<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-md-4\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                  <div class=\"igfv-process-step\">\r\n                      <div class=\"igfv-step-number\">3<\/div>\r\n                      <h4 class=\"text-white\">View All Friends<\/h4>\r\n                      <p class=\"igfv-light-subtitle\">See all friends' lists anonymously without affecting engagement metrics<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  <\/section>\r\n  \r\n  <!-- Features Section -->\r\n  <section class=\"igfv-features-section\">\r\n      <div class=\"container\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"igfv-section-title\">Key Features<\/h2>\r\n              <p class=\"igfv-section-subtitle\">Our Instagram Friend Viewer offers powerful features for anonymous browsing<\/p>\r\n          <\/div>\r\n          \r\n          <div class=\"row\">\r\n              <div class=\"col-lg-4 mb-4\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-user\"><\/i>\r\n                      <\/div>\r\n                      <h4>Complete Anonymity<\/h4>\r\n                      <p>View Instagram friends without revealing your identity or account<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-4\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-shield\"><\/i>\r\n                      <\/div>\r\n                      <h4>No Tracking<\/h4>\r\n                      <p>Instagram won't track your friend list views or recommend similar profiles<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-4\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-group\"><\/i>\r\n                      <\/div>\r\n                      <h4>Full Friend List<\/h4>\r\n                      <p>See all friends including private accounts (when possible)<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-5\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-search-alt\"><\/i>\r\n                      <\/div>\r\n                      <h4>Search Functionality<\/h4>\r\n                      <p>Quickly find specific friends in large lists<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-5\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-history\"><\/i>\r\n                      <\/div>\r\n                      <h4>No History<\/h4>\r\n                      <p>Your viewing activity isn't stored in your browser history<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n              \r\n              <div class=\"col-lg-4 mb-5\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                  <div class=\"igfv-feature-card\">\r\n                      <div class=\"igfv-feature-icon\">\r\n                          <i class=\"bx bx-devices\"><\/i>\r\n                      <\/div>\r\n                      <h4>Cross-Platform<\/h4>\r\n                      <p>Works on all devices - desktop, tablet, and mobile<\/p>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  <\/section>\r\n  \r\n  <!-- Why Choose Section -->\r\n  <section class=\"igfv-why-choose-section\">\r\n      <div class=\"container\">\r\n          <div class=\"row align-items-center\">\r\n              <div class=\"col-lg-6 mb-5 mb-lg-0\" data-aos=\"fade-right\">\r\n                  <div class=\"igfv-why-choose-image igfv-floating-element\">\r\n                      <img decoding=\"async\" src=\"https:\/\/viewanonymous.com\/wp-content\/uploads\/2026\/03\/Instagram_Friend_Viewer.webp\" alt=\"Instagram Friend Viewer\" class=\"img-fluid rounded-3\">\r\n                  <\/div>\r\n              <\/div>\r\n              <div class=\"col-lg-6\" data-aos=\"fade-left\">\r\n                  <h2 class=\"igfv-section-title mb-4\">Why Choose Our Instagram Friend Viewer?<\/h2>\r\n                  <p class=\"mb-4\">Our tool provides the most private way to browse Instagram friends' lists without leaving any trace. Whether you're researching friends or valuing your privacy, we make anonymous viewing simple and efficient.<\/p>\r\n                  \r\n                  <div class=\"igfv-benefit-item\">\r\n                      <div class=\"igfv-benefit-icon\">\r\n                          <i class=\"bx bx-check\"><\/i>\r\n                      <\/div>\r\n                      <div>\r\n                          <h5 class=\"mb-1\">No account needed<\/h5>\r\n                          <p class=\"mb-0\">View friends without logging in or having an Instagram account<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n                  \r\n                  <div class=\"igfv-benefit-item\">\r\n                      <div class=\"igfv-benefit-icon\">\r\n                          <i class=\"bx bx-check\"><\/i>\r\n                      <\/div>\r\n                      <div>\r\n                          <h5 class=\"mb-1\">Bypass limitations<\/h5>\r\n                          <p class=\"mb-0\">View friends beyond Instagram's display limits<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n                  \r\n                  <div class=\"igfv-benefit-item\">\r\n                      <div class=\"igfv-benefit-icon\">\r\n                          <i class=\"bx bx-check\"><\/i>\r\n                      <\/div>\r\n                      <div>\r\n                          <h5 class=\"mb-1\">Fast and reliable<\/h5>\r\n                          <p class=\"mb-0\">Get friends' list data instantly with our optimized system<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n                  \r\n                  <div class=\"igfv-benefit-item\">\r\n                      <div class=\"igfv-benefit-icon\">\r\n                          <i class=\"bx bx-check\"><\/i>\r\n                      <\/div>\r\n                      <div>\r\n                          <h5 class=\"mb-1\">Privacy focused<\/h5>\r\n                          <p class=\"mb-0\">No cookies, no tracking, no history stored<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  <\/section>\r\n  \r\n  <!-- FAQ Section -->\r\n  <section class=\"igfv-faq-section\">\r\n      <div class=\"container\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"igfv-section-title\">Frequently Asked Questions<\/h2>\r\n              <p class=\"igfv-section-subtitle\">Find answers to common questions about our Instagram Friend Viewer<\/p>\r\n          <\/div>\r\n          \r\n          <div class=\"row justify-content-center\">\r\n              <div class=\"col-lg-8\">\r\n                  <div class=\"accordion\" id=\"igfv-faqAccordion\">\r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading1\">\r\n                              <button class=\"igfv-accordion-button\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse1\" aria-expanded=\"true\" aria-controls=\"igfv-collapse1\">\r\n                                  Is viewing Instagram friends' lists anonymously legal?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse1\" class=\"accordion-collapse collapse show\" aria-labelledby=\"igfv-heading1\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  Yes, our tool is completely legal to use. It only allows you to view publicly available Instagram friends' lists. We don't access private data or bypass any security measures.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                      \r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"100\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading2\">\r\n                              <button class=\"igfv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse2\" aria-expanded=\"false\" aria-controls=\"igfv-collapse2\">\r\n                                  Can I view friends from private accounts?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse2\" class=\"accordion-collapse collapse\" aria-labelledby=\"igfv-heading2\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  Our tool respects Instagram's privacy settings. We can only show friends from accounts that are set to public. For private accounts, you would need to follow them to see their friends.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                      \r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading3\">\r\n                              <button class=\"igfv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse3\" aria-expanded=\"false\" aria-controls=\"igfv-collapse3\">\r\n                                  Will the profile owner know I viewed their friends list?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse3\" class=\"accordion-collapse collapse\" aria-labelledby=\"igfv-heading3\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  No, when you view through our anonymous viewer, your visit won't be counted in Instagram's statistics, and the profile owner won't know you viewed their friends list.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                      \r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"200\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading4\">\r\n                              <button class=\"igfv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse4\" aria-expanded=\"false\" aria-controls=\"igfv-collapse4\">\r\n                                  Do I need to install any software?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse4\" class=\"accordion-collapse collapse\" aria-labelledby=\"igfv-heading4\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  No, our Instagram Friend Viewer is completely web-based. You don't need to download or install any software. Simply visit our website, enter the profile URL, and view friends anonymously.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                      \r\n                      <div class=\"igfv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                          <h3 class=\"accordion-header\" id=\"igfv-heading5\">\r\n                              <button class=\"igfv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#igfv-collapse5\" aria-expanded=\"false\" aria-controls=\"igfv-collapse5\">\r\n                                  Can I see who unfriended an account?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"igfv-collapse5\" class=\"accordion-collapse collapse\" aria-labelledby=\"igfv-heading5\" data-bs-parent=\"#igfv-faqAccordion\">\r\n                              <div class=\"igfv-accordion-body\">\r\n                                  Our current version shows the current friends list only. For tracking unfriends over time, you would need to use specialized tracking services that require login.\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div><\/section>\r\n  \r\n  \r\n    <!-- Footer -->\r\n    \r\n  \r\n  <!-- Copyright Section -->\r\n  \r\n    \r\n  \r\n  <!-- IG Follower Viewer js -->\r\n  <script>\r\n          \/\/ DOM Elements\r\n          const searchForm = document.getElementById('search-form'), searchInput = document.getElementById('search-input'), searchBtn = document.getElementById('search-btn'), searchBtnText = document.getElementById('search-btn-text'), commandCenter = document.getElementById('command-center'), analyticsDashboard = document.getElementById('analytics-dashboard'), followerGrid = document.getElementById('follower-grid'), loadMoreContainer = document.getElementById('load-more-container'), toast = document.getElementById('toast'), resultsCountEl = document.getElementById('results-count'), sortFilter = document.getElementById('sort-filter'), filterType = document.getElementById('filter-type'), followerSearch = document.getElementById('follower-search');\r\n  \r\n          \/\/ State\r\n          const API_URL = 'https:\/\/tools.xrespond.com\/api\/instagram\/profile\/followers', IMAGE_PROXY = 'https:\/\/images.weserv.nl\/?url=';\r\n          let nextPageToken = null, currentUsername = null, allFollowers = [], filteredFollowers = [];\r\n  \r\n          function animateCountUp(el, endValue) {\r\n              let start = 0, duration = 1500, frameDuration = 1000 \/ 60, totalFrames = Math.round(duration \/ frameDuration), frame = 0;\r\n              const count = () => {\r\n                  frame++; const progress = frame \/ totalFrames, eased = 1 - Math.pow(1 - progress, 4);\r\n                  el.textContent = Math.round(eased * endValue).toLocaleString();\r\n                  if (frame < totalFrames) requestAnimationFrame(count);\r\n              };\r\n              requestAnimationFrame(count);\r\n          }\r\n  \r\n          function showToast(message, type = 'info') {\r\n              const iconClass = { success: 'fa-check-circle', error: 'fa-times-circle', info: 'fa-info-circle' }[type] || 'fa-info-circle';\r\n              toast.innerHTML = `<i class=\"fas ${iconClass} ifv-toast-icon\"><\/i> ${message}`;\r\n              toast.className = `ifv-toast show ${type}`;\r\n              setTimeout(() => { toast.className = 'ifv-toast'; }, 4000);\r\n          }\r\n  \r\n          function extractUsername(value) {\r\n              try {\r\n                  if (value.includes('instagram.com')) { const url = new URL(value); return url.pathname.split('\/').filter(Boolean)[0]; }\r\n                  return value.replace('@', '').trim();\r\n              } catch { return value.trim(); }\r\n          }\r\n  \r\n          function getInitials(fullName, username) {\r\n              if (fullName) {\r\n                  const names = fullName.split(' ').filter(Boolean);\r\n                  if (names.length > 1) return `${names[0][0]}${names[names.length - 1][0]}`.toUpperCase();\r\n                  return fullName.substring(0, 2).toUpperCase();\r\n              }\r\n              return username.substring(0, 2).toUpperCase();\r\n          }\r\n  \r\n          function updateAnalytics(followers) {\r\n              analyticsDashboard.innerHTML = '';\r\n              const data = [\r\n                  { label: 'Total Followers', value: followers.length },\r\n                  { label: 'Verified Followers', value: followers.filter(f => f.is_verified).length }\r\n              ];\r\n              data.forEach(item => {\r\n                  const card = document.createElement('div');\r\n                  card.className = 'ifv-analytics-card';\r\n                  const valueId = `val-${item.label.replace(\/[^a-zA-Z0-9]\/g, '')}`;\r\n                  card.innerHTML = `<div class=\"ifv-analytics-label\">${item.label}<\/div><div class=\"ifv-analytics-value\" id=\"${valueId}\"><\/div>`;\r\n                  analyticsDashboard.appendChild(card);\r\n                  const valueEl = document.getElementById(valueId);\r\n                  if (typeof item.value === 'number') animateCountUp(valueEl, item.value);\r\n                  else valueEl.textContent = item.value;\r\n              });\r\n          }\r\n  \r\n          function filterAndSortFollowers() {\r\n              let filtered = [...allFollowers];\r\n              const filterValue = filterType.value;\r\n              if (filterValue === 'verified') filtered = filtered.filter(f => f.is_verified);\r\n              else if (filterValue === 'unverified') filtered = filtered.filter(f => !f.is_verified);\r\n  \r\n              const searchValue = followerSearch.value.toLowerCase();\r\n              if (searchValue) filtered = filtered.filter(f => f.username.toLowerCase().includes(searchValue) || (f.full_name && f.full_name.toLowerCase().includes(searchValue)));\r\n  \r\n              const sortValue = sortFilter.value;\r\n              if (sortValue === 'username') filtered.sort((a, b) => a.username.localeCompare(b.username));\r\n              else if (sortValue === 'verified') filtered.sort((a, b) => (b.is_verified ? 1 : 0) - (a.is_verified ? 1 : 0));\r\n  \r\n              filteredFollowers = filtered;\r\n              renderFollowers(filtered, true);\r\n          }\r\n  \r\n          function renderFollowers(followers, isFiltering = false) {\r\n              if (isFiltering) followerGrid.innerHTML = '';\r\n  \r\n              followers.forEach((user, index) => {\r\n                  const verifiedBadge = user.is_verified ? `<i class=\"fas fa-badge-check ifv-verified-badge\" title=\"Verified\"><\/i>` : '';\r\n                  const initials = getInitials(user.full_name, user.username);\r\n  \r\n                  const heroContent = user.profile_pic_url\r\n                      ? `<img decoding=\"async\" src=\"${IMAGE_PROXY}${encodeURIComponent(user.profile_pic_url)}\" alt=\"${user.username}\" class=\"ifv-follower-avatar\">`\r\n                      : `<div class=\"ifv-follower-avatar-fallback\">${initials}<\/div>`;\r\n  \r\n                  const cardHTML = `\r\n                      <div class=\"ifv-follower-card\" style=\"animation-delay: ${index * 40}ms;\">\r\n                          <div class=\"ifv-follower-card-border\"><\/div>\r\n                          <div class=\"ifv-follower-card-inner\">\r\n                              <div class=\"ifv-card-hero\">${heroContent}<\/div>\r\n                              <div class=\"ifv-card-content\">\r\n                                  <div class=\"ifv-card-header\">\r\n                                      <div class=\"ifv-card-info\">\r\n                                          <div class=\"ifv-card-name\">${user.full_name || user.username} ${verifiedBadge}<\/div>\r\n                                          <a href=\"https:\/\/instagram.com\/${user.username}\" target=\"_blank\" class=\"ifv-card-username\">@${user.username}<\/a>\r\n                                      <\/div>\r\n                                  <\/div>\r\n                              <\/div>\r\n                          <\/div>\r\n                      <\/div>`;\r\n                  followerGrid.insertAdjacentHTML('beforeend', cardHTML);\r\n              });\r\n              resultsCountEl.textContent = `${filteredFollowers.length.toLocaleString()} of ${allFollowers.length.toLocaleString()} followers`;\r\n          }\r\n  \r\n          function setLoadingState(isLoading, isLoadMore = false) {\r\n              const button = isLoadMore ? document.getElementById('load-more-btn') : searchBtn;\r\n              if (!button) return;\r\n              button.disabled = isLoading;\r\n              const targetEl = isLoadMore ? button : searchBtnText;\r\n              targetEl.innerHTML = isLoading ? `<div class=\"ifv-spinner\"><\/div>` : (isLoadMore ? 'Load More' : 'Analyze');\r\n          }\r\n  \r\n          async function fetchFollowers(username, token = null) {\r\n              const isFirstPage = !token;\r\n              setLoadingState(true, !isFirstPage);\r\n              if (isFirstPage) followerGrid.innerHTML = '';\r\n  \r\n              try {\r\n                  const formData = new FormData();\r\n                  formData.append('profile', username);\r\n                  if (token) formData.append('token', token);\r\n                  const response = await fetch(API_URL, { method: 'POST', body: formData, headers: { 'Accept': 'application\/json' } });\r\n                  const result = await response.json();\r\n                  if (result.status !== 'success' || !result.data?.data?.items) throw new Error(result.message || 'Profile is private or does not exist.');\r\n  \r\n                  const { items } = result.data.data;\r\n                  nextPageToken = result.data.pagination_token || null;\r\n                  if (isFirstPage) {\r\n                      allFollowers = items;\r\n                      commandCenter.style.display = 'block';\r\n                  } else {\r\n                      allFollowers = [...allFollowers, ...items];\r\n                  }\r\n                  updateAnalytics(allFollowers);\r\n                  filterAndSortFollowers();\r\n                  loadMoreContainer.innerHTML = nextPageToken ? `<button class=\"ifv-load-more-btn\" id=\"load-more-btn\">Load More<\/button>` : '';\r\n              } catch (error) {\r\n                  showToast(error.message, 'error');\r\n                  if (isFirstPage) commandCenter.style.display = 'none';\r\n              } finally {\r\n                  setLoadingState(false, !isFirstPage);\r\n              }\r\n          }\r\n  \r\n          searchForm.addEventListener('submit', e => { e.preventDefault(); currentUsername = extractUsername(searchInput.value); if (currentUsername) fetchFollowers(currentUsername); });\r\n          loadMoreContainer.addEventListener('click', e => { if (e.target.id === 'load-more-btn' && nextPageToken) fetchFollowers(currentUsername, nextPageToken); });\r\n          [sortFilter, filterType, followerSearch].forEach(el => el.addEventListener(el.tagName === 'INPUT' ? 'input' : 'change', filterAndSortFollowers));\r\n      <\/script>\r\n   \r\n   <!-- Scripts -->\r\n    <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.3.0\/dist\/js\/bootstrap.bundle.min.js\"><\/script>\r\n    <script src=\"https:\/\/unpkg.com\/aos@2.3.1\/dist\/aos.js\"><\/script>\r\n  \r\n    <script>\r\n        \/\/ Initialize AOS animation\r\n        AOS.init({\r\n              duration: 800,\r\n              easing: 'ease-in-out',\r\n              once: true\r\n          });\r\n          \r\n          \/\/ Smooth scrolling for anchor links\r\n          document.querySelectorAll('a[href^=\"#\"]').forEach(anchor => {\r\n              anchor.addEventListener('click', function (e) {\r\n                  e.preventDefault();\r\n                  document.querySelector(this.getAttribute('href')).scrollIntoView({\r\n                      behavior: 'smooth'\r\n                  });\r\n              });\r\n          });\r\n  <\/script>\n","protected":false},"author":4,"featured_media":0,"parent":221,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-592","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/592","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/comments?post=592"}],"version-history":[{"count":4,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/592\/revisions"}],"predecessor-version":[{"id":680,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/592\/revisions\/680"}],"up":[{"embeddable":true,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/221"}],"wp:attachment":[{"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/media?parent=592"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}