{"id":254,"date":"2026-03-08T00:00:20","date_gmt":"2026-03-08T00:00:20","guid":{"rendered":"https:\/\/viewanonymous.com\/?page_id=254"},"modified":"2026-03-31T05:35:44","modified_gmt":"2026-03-31T05:35:44","slug":"account","status":"publish","type":"page","link":"https:\/\/viewanonymous.com\/tools\/reddit\/account\/","title":{"rendered":"Reddit Account Viewer \u2013 Check Profiles, Posts &amp; Activity Easily"},"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;]    <link rel=\"canonical\" href=\"\">\r\n      \r\n      <!-- 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              --rduv-primary-color: #8A66FF;\r\n              --rduv-secondary-color: #6A4FE0;\r\n              --rduv-dark-color: #000000;\r\n              --rduv-light-color: #FFFFFF;\r\n              --rduv-gray-color: #F5F3FF;\r\n              --rduv-muted-on-light: #555555;\r\n              --rduv-primary-hover: #7758F0;\r\n              --rduv-secondary-hover: #9B85FF;\r\n              --rduv-section-padding: 100px 0;\r\n          }\r\n          \r\n\/*           body {\r\n              font-family: 'Manrope', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n              scroll-behavior: smooth;\r\n              overflow-x: hidden;\r\n              background-color: var(--rduv-light-color);\r\n              color: var(--rduv-dark-color);\r\n          }\r\n      \r\n      h1, h2, h3, h4, h5, h6 {\r\n          font-family: 'Manrope', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;\r\n          font-weight: 800;\r\n          letter-spacing: -0.02em;\r\n      } *\/\r\n     \r\n      \/* Reddit-style Hero Section *\/\r\n      .rduv-hero-section {\r\n              padding: var(--rduv-section-padding);\r\n              text-align: center;\r\n              background-color: var(--rduv-light-color);\r\n          }\r\n          \r\n          .rduv-hero-content {\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n          \r\n          .rduv-hero-section h1 {\r\n              font-size: 3.5rem;\r\n              font-weight: 800;\r\n              margin-bottom: 1.5rem;\r\n              color: var(--rduv-dark-color);\r\n              -webkit-text-fill-color: var(--rduv-dark-color);\r\n              background: none;\r\n              -webkit-background-clip: unset;\r\n              background-clip: unset;\r\n          }\r\n\r\n          .rduv-hero-section h1 .va-accent {\r\n              color: var(--rduv-primary-color);\r\n              -webkit-text-fill-color: var(--rduv-primary-color);\r\n          }\r\n          \r\n          .rduv-hero-section p {\r\n              font-size: 1.25rem;\r\n              max-width: 700px;\r\n              margin: 0 auto 2rem;\r\n              font-weight: 500;\r\n              color: var(--rduv-muted-on-light);\r\n          }\r\n          \r\n          \/* Work Process \u2014 white \/ lavender (logo-style content) *\/\r\n          .rduv-work-process-section {\r\n              padding: var(--rduv-section-padding);\r\n              background: linear-gradient(180deg, #faf9ff 0%, #F5F3FF 45%, #f0ecff 100%);\r\n              color: var(--rduv-dark-color);\r\n      position: relative;\r\n      overflow: hidden;\r\n              border-top: 1px solid rgba(138, 102, 255, 0.12);\r\n              border-bottom: 1px solid rgba(138, 102, 255, 0.1);\r\n    }\r\n    \r\n          .rduv-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: radial-gradient(ellipse 85% 55% at 50% 0%, rgba(138, 102, 255, 0.09) 0%, transparent 58%);\r\n      pointer-events: none;\r\n    }\r\n    \r\n          .rduv-work-process-section .rduv-light-title {\r\n              color: var(--rduv-dark-color);\r\n          }\r\n\r\n          .rduv-work-process-section .rduv-light-title::after {\r\n              background: linear-gradient(to right, var(--rduv-primary-color), var(--rduv-secondary-color));\r\n          }\r\n\r\n          .rduv-work-process-section .rduv-light-subtitle {\r\n              color: var(--rduv-muted-on-light);\r\n          }\r\n\r\n          .rduv-work-process-section .rduv-process-step {\r\n              background: #ffffff;\r\n              border: 1px solid rgba(138, 102, 255, 0.2);\r\n              box-shadow: 0 10px 28px rgba(138, 102, 255, 0.08);\r\n          }\r\n\r\n          .rduv-work-process-section .rduv-process-step:hover {\r\n              transform: translateY(-10px);\r\n              background: #ffffff;\r\n              box-shadow: 0 16px 36px rgba(138, 102, 255, 0.14);\r\n          }\r\n\r\n          .rduv-work-process-section h4.text-white {\r\n              color: var(--rduv-dark-color) !important;\r\n          }\r\n          \r\n          .rduv-work-process-content {\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n          \r\n          .rduv-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          .rduv-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          .rduv-step-number {\r\n              width: 60px;\r\n              height: 60px;\r\n              background: white;\r\n              background: linear-gradient(45deg, var(--rduv-primary-color), var(--rduv-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          .rduv-features-section {\r\n              padding: var(--rduv-section-padding);\r\n              background: white;\r\n          }\r\n          \r\n          .rduv-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          .rduv-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(--rduv-primary-color), var(--rduv-secondary-color));\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .rduv-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          .rduv-feature-card:hover::before {\r\n              width: 100%;\r\n              opacity: 0.1;\r\n          }\r\n          \r\n          .rduv-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(--rduv-primary-color), var(--rduv-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          .rduv-feature-card:hover .rduv-feature-icon {\r\n              transform: rotate(15deg) scale(1.1);\r\n              background: linear-gradient(45deg, var(--rduv-primary-hover), var(--rduv-secondary-hover));\r\n          }\r\n          \r\n          \/* Why Choose Section *\/\r\n          .rduv-why-choose-section {\r\n              padding: var(--rduv-section-padding);\r\n              background: #f9f9f9;\r\n          }\r\n          \r\n          .rduv-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          .rduv-why-choose-image:hover {\r\n              transform: perspective(1000px) rotateY(0deg);\r\n          }\r\n          \r\n          .rduv-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          .rduv-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          .rduv-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(--rduv-primary-color), var(--rduv-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          .rduv-faq-section {\r\n              padding: var(--rduv-section-padding);\r\n              background: white;\r\n          }\r\n          \r\n          .rduv-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          .rduv-accordion-button {\r\n      font-weight: 600;\r\n              color: var(--rduv-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          .rduv-accordion-button:not(.collapsed) {\r\n              background: white;\r\n              color: var(--rduv-primary-color);\r\n              box-shadow: none;\r\n          }\r\n          \r\n          .rduv-accordion-button:focus {\r\n              box-shadow: none;\r\n              border-color: rgba(138, 102, 255, 0.35);\r\n          }\r\n          \r\n          .rduv-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='%238A66FF'%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          .rduv-accordion-body {\r\n              padding: 25px;\r\n              color: #666;\r\n          }\r\n          \r\n          \/* Section Titles *\/\r\n          .rduv-section-title {\r\n      font-weight: 800;\r\n              color: var(--rduv-dark-color);\r\n              margin-bottom: 1.5rem;\r\n      position: relative;\r\n              display: inline-block;\r\n          }\r\n          \r\n          .rduv-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(--rduv-primary-color), var(--rduv-secondary-color));\r\n              border-radius: 2px;\r\n          }\r\n          \r\n          .rduv-light-title {\r\n              color: white;\r\n          }\r\n          \r\n          .rduv-light-title::after {\r\n              background: white;\r\n          }\r\n          \r\n          .rduv-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          .rduv-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                  --rduv-section-padding: 80px 0;\r\n              }\r\n              \r\n              .rduv-hero-section h1 {\r\n                  font-size: 2.8rem;\r\n              }\r\n              \r\n              .rduv-process-step::before {\r\n                  display: none;\r\n              }\r\n          }\r\n          \r\n          @media (max-width: 767px) {\r\n              :root {\r\n                  --rduv-section-padding: 70px 0;\r\n              }\r\n              \r\n              .rduv-hero-section {\r\n                  padding: 100px 0 60px;\r\n              }\r\n              \r\n              .rduv-hero-section h1 {\r\n                  font-size: 2.2rem;\r\n              }\r\n              \r\n              .rduv-hero-section p {\r\n                  font-size: 1rem;\r\n              }\r\n              \r\n              .rduv-section-title {\r\n                  font-size: 1.8rem;\r\n              }\r\n          }\r\n          \r\n          \/* Animation *\/\r\n          @keyframes rduv-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          .rduv-floating-element {\r\n              animation: rduv-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(--rduv-primary-color), var(--rduv-secondary-color));\r\n              border-radius: 10px;\r\n          }\r\n          \r\n          ::-webkit-scrollbar-thumb:hover {\r\n              background: linear-gradient(var(--rduv-primary-hover), var(--rduv-secondary-hover));\r\n          }\r\n        \r\n  \r\n  <\/style>\r\n  <!-- tools -->\r\n  <style>\r\n  \r\n      :root {\r\n          --primary-color: #8A66FF;\r\n          --primary-light: #A385FF;\r\n          --primary-dark: #6A4FE0;\r\n          --secondary-color: #6A4FE0;\r\n          --secondary-light: #8A66FF;\r\n          --secondary-dark: #5238c4;\r\n          --accent-color: #8A66FF;\r\n          --accent-light: #A385FF;\r\n          --accent-dark: #6A4FE0;\r\n          --warning-color: #D4A017;\r\n          --warning-light: #E8B84A;\r\n          --danger-color: #EF4444;\r\n          --danger-light: #F87171;\r\n          --success-color: #22C55E;\r\n          --success-light: #4ADE80;\r\n          --bg-primary: #111016;\r\n          --bg-secondary: #18181f;\r\n          --bg-tertiary: #22222c;\r\n          --bg-card: #1c1c24;\r\n          --glass-bg: rgba(138, 102, 255, 0.08);\r\n          --glass-border: rgba(138, 102, 255, 0.22);\r\n          --text-primary: #FFFFFF;\r\n          --text-secondary: #CCCCCC;\r\n          --text-muted: #999999;\r\n          --text-accent: #8A66FF;\r\n          --shadow-sm: 0 2px 8px rgba(138, 102, 255, 0.12);\r\n          --shadow-md: 0 4px 16px rgba(138, 102, 255, 0.16);\r\n          --shadow-lg: 0 8px 32px rgba(138, 102, 255, 0.2);\r\n          --shadow-xl: 0 16px 48px rgba(138, 102, 255, 0.22);\r\n          --gradient-primary: linear-gradient(135deg, #8A66FF, #6A4FE0);\r\n          --gradient-secondary: linear-gradient(135deg, #2c2c36, #8A66FF);\r\n          --gradient-accent: linear-gradient(135deg, #8A66FF, #A385FF);\r\n      }\r\n  \r\n      .rduv-hero-tools-section {\r\n          font-family: 'Manrope', 'Inter', sans-serif;\r\n          background-color: #111016;\r\n          background-image:\r\n              radial-gradient(circle at 22% 18%, rgba(138, 102, 255, 0.18) 0%, transparent 46%),\r\n              radial-gradient(circle at 88% 82%, rgba(106, 79, 224, 0.12) 0%, transparent 44%),\r\n              linear-gradient(168deg, #16141f 0%, #111016 50%, #14121c 100%);\r\n          padding: 80px 0;\r\n          line-height: 1.6;\r\n          color: var(--text-primary);\r\n          overflow-x: hidden;\r\n\/*           margin-top: 3rem; *\/\r\n          border-bottom: 1px solid rgba(138, 102, 255, 0.22);\r\n      }\r\n  \r\n      .custom-rduv-container {\r\n          max-width: 1400px;\r\n          margin: 0 auto;\r\n          padding: 20px;\r\n          position: relative;\r\n      }\r\n  \r\n      .header {\r\n      text-align: center;\r\n          margin-bottom: 40px;\r\n          padding: 40px 0;\r\n          animation: slideInDown 1s ease-out;\r\n      }\r\n  \r\n      .logo {\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          gap: 20px;\r\n          margin-bottom: 25px;\r\n          flex-wrap: wrap;\r\n      }\r\n  \r\n      .logo-icon {\r\n          width: 80px;\r\n          height: 80px;\r\n          background: var(--gradient-primary);\r\n          border-radius: 20px;\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          color: white;\r\n          font-size: 36px;\r\n      font-weight: 800;\r\n          box-shadow: var(--shadow-lg);\r\n          animation: float 3s ease-in-out infinite;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .logo-icon::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: -50%;\r\n          left: -50%;\r\n          width: 200%;\r\n          height: 200%;\r\n          background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);\r\n          transform: rotate(45deg);\r\n          animation: shine 3s infinite;\r\n      }\r\n  \r\n      .reddit-badge {\r\n          background: var(--gradient-secondary);\r\n          color: white;\r\n          padding: 8px 16px;\r\n          border-radius: 25px;\r\n          font-size: 14px;\r\n          font-weight: 700;\r\n          box-shadow: var(--shadow-md);\r\n          animation: pulse 2s infinite;\r\n      }\r\n  \r\n      .logo-text {\r\n          font-size: clamp(2.5rem, 6vw, 4rem);\r\n          font-weight: 800;\r\n          font-family: 'Manrope', 'Inter', sans-serif;\r\n          color: #FFFFFF;\r\n          -webkit-text-fill-color: #FFFFFF;\r\n          background: none;\r\n          -webkit-background-clip: unset;\r\n          background-clip: unset;\r\n          letter-spacing: -0.03em;\r\n      }\r\n\r\n      .logo-text .va-accent {\r\n          color: #8A66FF;\r\n          -webkit-text-fill-color: #8A66FF;\r\n      }\r\n  \r\n      .subtitle {\r\n          color: var(--text-secondary);\r\n          font-size: 18px;\r\n          font-weight: 600;\r\n          margin-bottom: 30px;\r\n          max-width: 700px;\r\n          margin-left: auto;\r\n          margin-right: auto;\r\n      }\r\n  \r\n      .features-grid {\r\n      display: grid;\r\n          grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\r\n          gap: 20px;\r\n          margin-bottom: 40px;\r\n      }\r\n  \r\n      .feature-card {\r\n          background: var(--bg-card);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 15px;\r\n          border-radius: 16px;\r\n      text-align: center;\r\n          transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\r\n      position: relative;\r\n      overflow: hidden;\r\n      }\r\n  \r\n      .feature-card::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, rgba(138, 102, 255, 0.12), transparent);\r\n          transition: left 0.5s;\r\n      }\r\n  \r\n      .feature-card:hover::before {\r\n          left: 100%;\r\n      }\r\n  \r\n      .feature-card:hover {\r\n          transform: translateY(-5px);\r\n          box-shadow: var(--shadow-lg);\r\n          border-color: var(--primary-color);\r\n      }\r\n  \r\n      .feature-icon {\r\n          width: 40px;\r\n          height: 40px;\r\n          background: var(--gradient-primary);\r\n          border-radius: 50%;\r\n      display: flex;\r\n      align-items: center;\r\n      justify-content: center;\r\n          margin: 0 auto 10px;\r\n          font-size: 20px;\r\n          color: white;\r\n      }\r\n  \r\n      .feature-title {\r\n          font-weight: 700;\r\n          color: var(--text-primary);\r\n          margin-bottom: 8px;\r\n          font-size: 14px;\r\n      }\r\n  \r\n      .search-container {\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 30px;\r\n          border-radius: 24px;\r\n          box-shadow: var(--shadow-xl);\r\n          margin-bottom: 40px;\r\n          animation: slideInUp 1s ease-out 0.2s both;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .search-container::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 4px;\r\n          background: var(--gradient-primary);\r\n      }\r\n  \r\n      .search-form {\r\n          display: flex;\r\n          gap: 15px;\r\n          margin-bottom: 20px;\r\n          position: relative;\r\n      }\r\n  \r\n      .search-input {\r\n          flex: 1 !important;\r\n          padding: 15px 20px !important;\r\n          border: 2px solid rgba(138, 102, 255, 0.28) !important;\r\n          border-radius: 16px !important;\r\n          font-size: 14px !important;\r\n          font-weight: 500 !important;\r\n          background: #1A1A22 !important;\r\n          transition: all 0.3s ease !important;\r\n          outline: none !important;\r\n          color: var(--text-primary) !important;\r\n          font-family: inherit !important;\r\n      }\r\n  \r\n      .search-input:focus {\r\n          border-color: var(--primary-color);\r\n          box-shadow: 0 0 0 4px rgba(138, 102, 255, 0.18);\r\n          transform: translateY(-2px);\r\n      }\r\n  \r\n      .search-input::placeholder {\r\n          color: var(--text-muted);\r\n          font-weight: 400;\r\n      }\r\n  \r\n      .search-btn {\r\n          padding: 15px 30px;\r\n          background: var(--gradient-primary);\r\n          color: white;\r\n          border: none;\r\n          border-radius: 16px;\r\n          font-size: 14px;\r\n      font-weight: 700;\r\n          cursor: pointer;\r\n          transition: all 0.3s ease;\r\n          min-width: 150px;\r\n          position: relative;\r\n          overflow: hidden;\r\n          box-shadow: var(--shadow-md);\r\n          font-family: inherit;\r\n      }\r\n  \r\n      .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, rgba(255, 255, 255, 0.2), transparent);\r\n          transition: left 0.5s;\r\n      }\r\n  \r\n      .search-btn:hover::before {\r\n          left: 100%;\r\n      }\r\n  \r\n      .search-btn:hover:not(:disabled) {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-lg);\r\n      }\r\n  \r\n      .search-btn:disabled {\r\n          opacity: 0.6;\r\n          cursor: not-allowed;\r\n          transform: none;\r\n      }\r\n  \r\n      .user-info {\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 30px;\r\n          border-radius: 24px;\r\n          box-shadow: var(--shadow-xl);\r\n          margin-bottom: 40px;\r\n          display: none;\r\n          animation: slideInDown 0.8s ease-out;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .user-info::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 4px;\r\n          background: var(--gradient-secondary);\r\n      }\r\n  \r\n      .user-header {\r\n          display: flex;\r\n      align-items: center;\r\n          gap: 25px;\r\n          margin-bottom: 25px;\r\n      }\r\n  \r\n      .user-avatar {\r\n          width: 80px;\r\n          height: 80px;\r\n          border-radius: 50%;\r\n          background: var(--gradient-primary);\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          font-size: 2.5rem;\r\n          color: white;\r\n          font-weight: 900;\r\n          box-shadow: var(--shadow-lg);\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .user-avatar::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: -50%;\r\n          left: -50%;\r\n          width: 200%;\r\n          height: 200%;\r\n          background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);\r\n          transform: rotate(45deg);\r\n          animation: shine 4s infinite;\r\n      }\r\n  \r\n      .user-details h2 {\r\n          font-size: 2rem;\r\n          color: var(--text-primary);\r\n          margin-bottom: 8px;\r\n          font-weight: 900;\r\n      }\r\n  \r\n      .user-description {\r\n          color: var(--text-secondary);\r\n          font-size: 16px;\r\n          font-weight: 500;\r\n      }\r\n  \r\n      .user-stats {\r\n      display: grid;\r\n          grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));\r\n          gap: 20px;\r\n          margin-top: 25px;\r\n      }\r\n  \r\n      .stat-card {\r\n          background: var(--bg-card);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 20px;\r\n          border-radius: 20px;\r\n      text-align: center;\r\n          transition: all 0.3s ease;\r\n      position: relative;\r\n      overflow: hidden;\r\n    }\r\n    \r\n      .stat-card::before {\r\n      content: '';\r\n      position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n      height: 3px;\r\n          background: var(--gradient-accent);\r\n    }\r\n    \r\n      .stat-card:hover {\r\n      transform: translateY(-5px);\r\n      box-shadow: var(--shadow-md);\r\n    }\r\n    \r\n      .stat-number {\r\n          font-size: 1.8rem;\r\n          font-weight: 900;\r\n          color: var(--primary-color);\r\n          margin-bottom: 6px;\r\n      }\r\n  \r\n      .stat-label {\r\n          font-size: 0.9rem;\r\n          color: var(--text-secondary);\r\n          font-weight: 600;\r\n      }\r\n  \r\n      .posts-section {\r\n          display: none;\r\n      }\r\n  \r\n      .section-title {\r\n          color: var(--text-primary);\r\n          font-size: 2rem;\r\n          font-weight: 900;\r\n          margin-bottom: 30px;\r\n          text-align: center;\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 20px;\r\n          border-radius: 20px;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .section-title::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 4px;\r\n          background: var(--gradient-accent);\r\n      }\r\n  \r\n      .posts-grid {\r\n          display: grid;\r\n          grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));\r\n          gap: 25px;\r\n      }\r\n  \r\n      .post-card {\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          border-radius: 20px;\r\n          padding: 20px;\r\n          box-shadow: var(--shadow-xl);\r\n          transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);\r\n          position: relative;\r\n          overflow: hidden;\r\n          animation: slideUp 0.6s ease forwards;\r\n          display: flex;\r\n          flex-direction: column;\r\n          height: 100%;\r\n      }\r\n  \r\n      .post-card::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 4px;\r\n          background: var(--gradient-primary);\r\n          border-radius: 20px 20px 0 0;\r\n      }\r\n  \r\n      .post-card:hover {\r\n          transform: translateY(-10px);\r\n          box-shadow: 0 20px 40px rgba(138, 102, 255, 0.22);\r\n          border-color: var(--primary-color);\r\n      }\r\n  \r\n      .post-header {\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: space-between;\r\n          margin-bottom: 15px;\r\n          padding-bottom: 15px;\r\n          border-bottom: 2px solid var(--bg-tertiary);\r\n      }\r\n  \r\n      .subreddit-info {\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 10px;\r\n          flex-wrap: wrap;\r\n      }\r\n  \r\n      .subreddit-badge {\r\n          background: var(--gradient-primary);\r\n          color: white;\r\n          padding: 6px 12px;\r\n          border-radius: 20px;\r\n          font-size: 0.8rem;\r\n      font-weight: 700;\r\n          box-shadow: var(--shadow-sm);\r\n      }\r\n  \r\n      .post-type {\r\n          background: var(--gradient-secondary);\r\n          color: white;\r\n          padding: 4px 10px;\r\n          border-radius: 15px;\r\n          font-size: 0.7rem;\r\n          font-weight: 600;\r\n          text-transform: capitalize;\r\n      }\r\n  \r\n      .post-meta {\r\n          font-size: 0.8rem;\r\n          color: var(--text-muted);\r\n          font-weight: 500;\r\n          text-align: right;\r\n      }\r\n  \r\n      .post-badges {\r\n          display: flex;\r\n          flex-wrap: wrap;\r\n          gap: 8px;\r\n          margin-bottom: 15px;\r\n      }\r\n  \r\n      .badge {\r\n          padding: 4px 10px;\r\n          border-radius: 12px;\r\n          font-size: 0.7rem;\r\n          font-weight: 600;\r\n          color: white;\r\n          text-transform: uppercase;\r\n          letter-spacing: 0.5px;\r\n      }\r\n  \r\n      .badge.admin { background: var(--gradient-accent); }\r\n      .badge.stickied { background: var(--gradient-secondary); }\r\n      .badge.archived { background: linear-gradient(135deg, #6B7280, #4B5563); }\r\n      .badge.locked { background: var(--gradient-accent); }\r\n      .badge.nsfw { background: linear-gradient(135deg, #7C3AED, #5B21B6); }\r\n  \r\n      .post-title {\r\n          font-size: 1.4rem;\r\n          font-weight: 700;\r\n          margin-bottom: 15px;\r\n          color: var(--text-primary);\r\n          line-height: 1.4;\r\n      }\r\n  \r\n      .post-content {\r\n          margin-bottom: 20px;\r\n          flex-grow: 1;\r\n      }\r\n  \r\n      .post-text {\r\n          color: var(--text-secondary);\r\n          line-height: 1.6;\r\n          margin-bottom: 15px;\r\n          font-weight: 400;\r\n          font-size: 14px;\r\n      }\r\n  \r\n      .media-container {\r\n          margin: 15px 0;\r\n          border-radius: 16px;\r\n      overflow: hidden;\r\n          position: relative;\r\n          box-shadow: var(--shadow-md);\r\n          background: #000;\r\n      }\r\n  \r\n      .image-preview {\r\n          width: 100%;\r\n          max-height: 300px;\r\n          object-fit: cover;\r\n          cursor: pointer;\r\n          transition: transform 0.3s ease;\r\n      }\r\n  \r\n      .image-preview:hover {\r\n          transform: scale(1.02);\r\n      }\r\n  \r\n      .video-container {\r\n          position: relative;\r\n          width: 100%;\r\n          background: #000;\r\n          border-radius: 16px;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .video-player {\r\n          width: 100%;\r\n          height: 250px;\r\n          border-radius: 16px;\r\n      }\r\n  \r\n      .media-controls {\r\n          display: flex;\r\n          gap: 10px;\r\n          margin-top: 15px;\r\n          flex-wrap: wrap;\r\n          align-items: center;\r\n      }\r\n  \r\n      .control-btn {\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 8px;\r\n          padding: 10px 18px;\r\n          border: none;\r\n          border-radius: 12px;\r\n          cursor: pointer;\r\n          font-size: 0.9rem;\r\n          font-weight: 600;\r\n          transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\r\n          font-family: inherit;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .control-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, rgba(255, 255, 255, 0.2), transparent);\r\n          transition: left 0.5s;\r\n      }\r\n  \r\n      .control-btn:hover::before {\r\n          left: 100%;\r\n      }\r\n  \r\n      .stream-audio-btn {\r\n          background: var(--gradient-secondary);\r\n          color: white;\r\n          box-shadow: var(--shadow-md);\r\n      }\r\n  \r\n      .stream-audio-btn:hover {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-lg);\r\n      }\r\n  \r\n      .stream-audio-btn:disabled {\r\n          opacity: 0.6;\r\n          cursor: not-allowed;\r\n          transform: none;\r\n      }\r\n  \r\n      .stream-audio-btn.loading {\r\n          background: linear-gradient(135deg, #6B7280, #4B5563);\r\n      }\r\n  \r\n      .download-btn {\r\n          background: var(--gradient-accent);\r\n          color: white;\r\n          box-shadow: var(--shadow-md);\r\n      }\r\n  \r\n      .download-btn:hover {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-lg);\r\n      }\r\n  \r\n      .download-btn:disabled {\r\n          opacity: 0.6;\r\n          cursor: not-allowed;\r\n          transform: none;\r\n      }\r\n  \r\n      .download-btn.downloading {\r\n          background: var(--gradient-primary);\r\n      }\r\n  \r\n      .external-link {\r\n          display: inline-flex;\r\n          align-items: center;\r\n          gap: 8px;\r\n          background: var(--gradient-primary);\r\n          color: white;\r\n          padding: 10px 18px;\r\n          border-radius: 12px;\r\n          text-decoration: none;\r\n          margin-top: 15px;\r\n          transition: all 0.3s ease;\r\n          font-weight: 600;\r\n          box-shadow: var(--shadow-sm);\r\n          font-size: 0.9rem;\r\n      }\r\n  \r\n      .external-link:hover {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-md);\r\n      }\r\n  \r\n      .post-stats {\r\n          display: grid;\r\n          grid-template-columns: repeat(2, 1fr);\r\n          gap: 10px;\r\n          margin-top: auto;\r\n          padding-top: 15px;\r\n          border-top: 2px solid var(--bg-tertiary);\r\n      }\r\n  \r\n      .stat-item {\r\n          display: flex;\r\n          flex-direction: column;\r\n          align-items: center;\r\n          gap: 6px;\r\n          padding: 12px;\r\n          background: var(--bg-card);\r\n          border: 1px solid var(--glass-border);\r\n          border-radius: 15px;\r\n      text-align: center;\r\n          transition: all 0.3s ease;\r\n      position: relative;\r\n          overflow: hidden;\r\n    }\r\n    \r\n      .stat-item::before {\r\n      content: '';\r\n      position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 2px;\r\n          background: var(--gradient-accent);\r\n      }\r\n  \r\n      .stat-item:hover {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-sm);\r\n      }\r\n  \r\n      .stat-value {\r\n          font-weight: 900;\r\n          font-size: 1.2rem;\r\n      }\r\n  \r\n      .stat-label {\r\n          font-size: 0.8rem;\r\n          color: var(--text-muted);\r\n          font-weight: 600;\r\n          text-transform: capitalize;\r\n      }\r\n  \r\n      .upvotes .stat-value { color: var(--primary-color); }\r\n      .comments .stat-value { color: var(--secondary-color); }\r\n  \r\n      .loading {\r\n          text-align: center;\r\n          padding: 40px;\r\n          color: var(--text-primary);\r\n          font-size: 1.1rem;\r\n          display: none;\r\n      }\r\n  \r\n      .spinner {\r\n          border: 4px solid var(--bg-tertiary);\r\n          border-top: 4px solid var(--primary-color);\r\n      border-radius: 50%;\r\n          width: 50px;\r\n          height: 50px;\r\n          animation: spin 1s linear infinite;\r\n          margin: 20px auto;\r\n      }\r\n  \r\n      .error-message {\r\n          background: rgba(239, 68, 68, 0.1);\r\n          border: 1px solid rgba(239, 68, 68, 0.2);\r\n          color: var(--danger-color);\r\n          padding: 20px;\r\n          border-radius: 16px;\r\n          text-align: center;\r\n          margin: 20px 0;\r\n          font-weight: 600;\r\n          display: none;\r\n          font-size: 14px;\r\n      }\r\n  \r\n      .modal {\r\n          display: none;\r\n          position: fixed;\r\n          z-index: 1000;\r\n          left: 0;\r\n          top: 0;\r\n          width: 100%;\r\n          height: 100%;\r\n          background-color: rgba(0, 0, 0, 0.95);\r\n          animation: fadeIn 0.3s ease;\r\n      }\r\n  \r\n      .modal-content {\r\n          position: absolute;\r\n          top: 50%;\r\n          left: 50%;\r\n          transform: translate(-50%, -50%);\r\n          max-width: 90%;\r\n          max-height: 90%;\r\n      }\r\n  \r\n      .modal img {\r\n          width: 100%;\r\n          height: auto;\r\n          border-radius: 20px;\r\n      }\r\n  \r\n      .close {\r\n          position: absolute;\r\n          top: 20px;\r\n          right: 40px;\r\n          color: #f1f1f1;\r\n          font-size: 45px;\r\n          font-weight: bold;\r\n          cursor: pointer;\r\n          z-index: 1001;\r\n      }\r\n  \r\n      .close:hover {\r\n          color: var(--primary-color);\r\n      }\r\n  \r\n      \/* Download Progress *\/\r\n      .download-progress {\r\n          position: fixed;\r\n          bottom: 25px;\r\n          right: 25px;\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          border-radius: 20px;\r\n          padding: 25px;\r\n          min-width: 350px;\r\n          box-shadow: var(--shadow-xl);\r\n          z-index: 1000;\r\n          display: none;\r\n          color: var(--text-primary);\r\n      }\r\n  \r\n      .download-progress.show {\r\n          display: block;\r\n          animation: slideInRight 0.4s ease-out;\r\n      }\r\n  \r\n      .progress-header {\r\n      display: flex;\r\n          justify-content: space-between;\r\n          align-items: center;\r\n          margin-bottom: 15px;\r\n      }\r\n  \r\n      .progress-text {\r\n          font-weight: 700;\r\n          font-size: 14px;\r\n          color: var(--text-primary);\r\n      }\r\n  \r\n      .cancel-btn {\r\n          background: rgba(239, 68, 68, 0.1);\r\n          border: 1px solid rgba(239, 68, 68, 0.2);\r\n          color: var(--danger-color);\r\n          padding: 8px 16px;\r\n          border-radius: 8px;\r\n          font-size: 12px;\r\n          cursor: pointer;\r\n          transition: all 0.3s ease;\r\n          font-weight: 600;\r\n      }\r\n  \r\n      .cancel-btn:hover {\r\n          background: rgba(239, 68, 68, 0.15);\r\n      }\r\n  \r\n      .progress-bar-container {\r\n      width: 100%;\r\n          height: 12px;\r\n          background: var(--bg-tertiary);\r\n          border-radius: 6px;\r\n          overflow: hidden;\r\n          margin-bottom: 12px;\r\n          box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);\r\n      }\r\n  \r\n      .progress-bar-fill {\r\n          height: 100%;\r\n          background: var(--gradient-primary);\r\n          border-radius: 6px;\r\n          width: 0%;\r\n          transition: width 0.3s ease;\r\n          box-shadow: 0 2px 8px rgba(138, 102, 255, 0.35);\r\n      }\r\n  \r\n      .progress-details {\r\n      display: flex;\r\n      justify-content: space-between;\r\n          font-size: 12px;\r\n          color: var(--text-secondary);\r\n          font-weight: 500;\r\n      }\r\n  \r\n      .expand-btn {\r\n          background: var(--gradient-primary);\r\n          color: white;\r\n          border: none;\r\n          padding: 8px 16px;\r\n          border-radius: 12px;\r\n      cursor: pointer;\r\n          font-size: 0.8rem;\r\n      font-weight: 600;\r\n          margin-top: 10px;\r\n          transition: all 0.3s ease;\r\n          font-family: inherit;\r\n      }\r\n  \r\n      .expand-btn:hover {\r\n          transform: translateY(-2px);\r\n          box-shadow: var(--shadow-sm);\r\n      }\r\n  \r\n      .video-play-overlay {\r\n          position: absolute;\r\n          top: 50%;\r\n          left: 50%;\r\n          transform: translate(-50%, -50%);\r\n          background: rgba(0, 0, 0, 0.7);\r\n          border: none;\r\n      border-radius: 50%;\r\n          width: 50px;\r\n          height: 50px;\r\n          color: white;\r\n          font-size: 20px;\r\n          cursor: pointer;\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          transition: all 0.3s ease;\r\n          z-index: 5;\r\n      }\r\n  \r\n      .video-play-overlay:hover {\r\n          background: rgba(0, 0, 0, 0.9);\r\n          transform: translate(-50%, -50%) scale(1.1);\r\n      }\r\n  \r\n      .video-play-overlay.hidden {\r\n          display: none;\r\n      }\r\n  \r\n      .new-search-btn {\r\n          background: var(--gradient-accent) !important;\r\n          min-width: 130px;\r\n      }\r\n  \r\n      @keyframes float {\r\n          0%, 100% { transform: translateY(0px) scale(1); }\r\n          50% { transform: translateY(-10px) scale(1.02); }\r\n      }\r\n  \r\n      @keyframes shine {\r\n          0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }\r\n          100% { transform: translateX(100%) translateY(100%) rotate(45deg); }\r\n      }\r\n  \r\n      @keyframes slideInDown {\r\n          from { opacity: 0; transform: translateY(-30px); }\r\n          to { opacity: 1; transform: translateY(0); }\r\n      }\r\n  \r\n      @keyframes slideInUp {\r\n          from { opacity: 0; transform: translateY(30px); }\r\n          to { opacity: 1; transform: translateY(0); }\r\n      }\r\n  \r\n      @keyframes slideInRight {\r\n          from { opacity: 0; transform: translateX(100%); }\r\n          to { opacity: 1; transform: translateX(0); }\r\n      }\r\n  \r\n      @keyframes slideUp {\r\n          from {\r\n              opacity: 0;\r\n              transform: translateY(40px);\r\n          }\r\n          to {\r\n              opacity: 1;\r\n              transform: translateY(0);\r\n          }\r\n      }\r\n  \r\n      @keyframes spin {\r\n          0% { transform: rotate(0deg); }\r\n          100% { transform: rotate(360deg); }\r\n      }\r\n  \r\n      @keyframes pulse {\r\n          0%, 100% { transform: scale(1); }\r\n          50% { transform: scale(1.05); }\r\n      }\r\n  \r\n      @keyframes fadeIn {\r\n          from { opacity: 0; }\r\n          to { opacity: 1; }\r\n      }\r\n  \r\n      \/* Video Loading Overlay *\/\r\n      .video-loading-overlay {\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          bottom: 0;\r\n          background: rgba(0, 0, 0, 0.8);\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          flex-direction: column;\r\n          color: white;\r\n          font-weight: 600;\r\n          z-index: 10;\r\n      }\r\n  \r\n      .video-loading-spinner {\r\n          width: 30px;\r\n          height: 30px;\r\n          border: 3px solid rgba(255, 255, 255, 0.3);\r\n          border-top: 3px solid white;\r\n          border-radius: 50%;\r\n          animation: spin 1s linear infinite;\r\n          margin-bottom: 10px;\r\n      }\r\n  \r\n    @media (max-width: 1200px) {\r\n          .posts-grid {\r\n              grid-template-columns: 1fr;\r\n          }\r\n  \r\n          .features-grid {\r\n              grid-template-columns: repeat(2, 1fr);\r\n          }\r\n      }\r\n  \r\n    @media (max-width: 768px) {\r\n          .features-grid {\r\n              grid-template-columns: 1fr;\r\n          }\r\n  \r\n          .user-stats {\r\n              grid-template-columns: repeat(2, 1fr);\r\n          }\r\n  \r\n          .post-stats {\r\n              grid-template-columns: repeat(2, 1fr);\r\n              gap: 8px;\r\n          }\r\n  \r\n          .media-controls {\r\n              flex-direction: column;\r\n          }\r\n  \r\n          .control-btn {\r\n              width: 100%;\r\n              justify-content: center;\r\n          }\r\n  \r\n          .search-form {\r\n              flex-direction: column;\r\n          }\r\n      }\r\n  \r\n      @media (max-width: 480px) {\r\n          .post-stats {\r\n              grid-template-columns: 1fr;\r\n          }\r\n  \r\n          .user-stats {\r\n              grid-template-columns: 1fr;\r\n          }\r\n  \r\n          .custom-rduv-container {\r\n              padding: 15px;\r\n          }\r\n  \r\n          .search-container,\r\n          .user-info,\r\n          .post-card {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .posts-grid {\r\n              grid-template-columns: 1fr;\r\n          }\r\n      }\r\n  <\/style>\r\n <body data-aos-easing=\"ease-in-out\" data-aos-duration=\"800\" data-aos-delay=\"0\" data-new-gr-c-s-check-loaded=\"14.1249.0\" data-gr-ext-installed=\"\" data-new-gr-c-s-loaded=\"14.1223.0\" class=\"\" style=\"\">\r\n  \r\n      <!-- Hero tools -->\r\n      <section class=\"rduv-hero-tools-section\">\r\n          <div class=\"container\">\r\n              <div class=\"custom-rduv-container\">\r\n                  <div class=\"header\">\r\n                      <div class=\"logo\">\r\n                          <div class=\"logo-icon\">\ud83d\ude80<\/div>\r\n          \r\n                          <div><h1 class=\"logo-text\">Reddit Account <span class=\"va-accent\">Viewer<\/span><\/h1><\/div>\r\n        <\/div>\r\n                      <div class=\"subtitle\">Advanced Reddit user analysis with premium insights and enhanced media capabilities<\/div>\r\n                      <div class=\"features-grid\">\r\n                          <div class=\"feature-card\">\r\n                              <div class=\"feature-icon\">\ud83c\udfa8<\/div>\r\n                              <div class=\"feature-title\">Premium Design<\/div>\r\n        <\/div>\r\n                          <div class=\"feature-card\">\r\n                              <div class=\"feature-icon\">\ud83d\udd0a<\/div>\r\n                              <div class=\"feature-title\">Audio Support<\/div>\r\n          <\/div>\r\n                          <div class=\"feature-card\">\r\n                              <div class=\"feature-icon\">\ud83d\udce5<\/div>\r\n                              <div class=\"feature-title\">Smart Downloads<\/div>\r\n          <\/div>\r\n                          <div class=\"feature-card\">\r\n                              <div class=\"feature-icon\">\ud83d\udcca<\/div>\r\n                              <div class=\"feature-title\">Rich Analytics<\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    \r\n                  <div class=\"search-container\">\r\n                      <form class=\"search-form\" id=\"searchForm\">\r\n                          <input type=\"text\" class=\"search-input\" id=\"usernameInput\" placeholder=\"Enter Reddit username (e.g., kn0thing, spez, gallowboob)\" required=\"\">\r\n                          <button type=\"submit\" class=\"search-btn\" id=\"searchBtn\">\r\n                              <span id=\"searchText\">\ud83d\udd0d Explore User<\/span>\r\n                              <div class=\"spinner\" id=\"searchSpinner\" style=\"display: none; width: 20px; height: 20px; margin: 0;\"><\/div>\r\n                          <\/button>\r\n                          <button type=\"button\" class=\"search-btn new-search-btn\" id=\"newSearchBtn\" onclick=\"redditExplorer.newSearch()\">\r\n                              \ud83d\udd04 New Search\r\n                          <\/button>\r\n                      <\/form>\r\n          \r\n                      <div class=\"loading\" id=\"loading\">\r\n                          <div class=\"spinner\"><\/div>\r\n                          <p>Analyzing user data and posts...<\/p>\r\n        <\/div>\r\n          \r\n                      <div class=\"error-message\" id=\"errorMessage\"><\/div>\r\n            <\/div>\r\n          \r\n                  <div class=\"user-info\" id=\"userInfo\">\r\n                      <div class=\"user-header\">\r\n                          <div class=\"user-avatar\" id=\"userAvatar\">U<\/div>\r\n                          <div class=\"user-details\">\r\n                              <h2 id=\"userName\">Username<\/h2>\r\n                              <p class=\"user-description\" id=\"userDescription\">Reddit User Profile<\/p>\r\n            <\/div>\r\n          <\/div>\r\n                      <div class=\"user-stats\" id=\"userStats\">\r\n                          <!-- Stats will be populated dynamically -->\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                  <div class=\"posts-section\" id=\"postsSection\">\r\n                      <h2 class=\"section-title\" id=\"sectionTitle\">Recent Posts & Activity<\/h2>\r\n                      <div id=\"postsContainer\" class=\"posts-grid\"><\/div>\r\n            <\/div>\r\n          <\/div>\r\n    \r\n              <!-- Modal for image preview -->\r\n              <div id=\"imageModal\" class=\"modal\">\r\n                  <span class=\"close\">\u00d7<\/span>\r\n                  <div class=\"modal-content\">\r\n                      <img decoding=\"async\" id=\"modalImage\" src=\"\/placeholder.svg\" alt=\"Full size image\">\r\n            <\/div>\r\n          <\/div>\r\n    \r\n              <!-- Download Progress -->\r\n              <div class=\"download-progress\" id=\"downloadProgress\">\r\n                  <div class=\"progress-header\">\r\n                      <span class=\"progress-text\" id=\"progressText\">Downloading...<\/span>\r\n                      <button class=\"cancel-btn\" onclick=\"cancelDownload()\">Cancel<\/button>\r\n            <\/div>\r\n                  <div class=\"progress-bar-container\">\r\n                      <div class=\"progress-bar-fill\" id=\"progressBarFill\"><\/div>\r\n          <\/div>\r\n                  <div class=\"progress-details\">\r\n                      <span id=\"progressPercent\">0%<\/span>\r\n                      <span id=\"progressSize\">0 MB \/ 0 MB<\/span>\r\n        <\/div>\r\n      <\/div>\r\n    \r\n        <\/div>\r\n      <\/section>\r\n  \r\n  <!-- Work Process Section -->\r\n  <section class=\"rduv-work-process-section\" id=\"how-it-works\">\r\n      <div class=\"container rduv-work-process-content\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"rduv-section-title rduv-light-title\">How Our Reddit Account Viewer Works<\/h2>\r\n              <p class=\"rduv-section-subtitle rduv-light-subtitle\">View Reddit accounts 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=\"rduv-process-step\">\r\n                      <div class=\"rduv-step-number\">1<\/div>\r\n                      <h4 class=\"text-white\">Enter Account Username<\/h4>\r\n                      <p class=\"rduv-light-subtitle\">Enter the Reddit username for the account 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=\"rduv-process-step\">\r\n                      <div class=\"rduv-step-number\">2<\/div>\r\n                      <h4 class=\"text-white\">Process Account Data<\/h4>\r\n                      <p class=\"rduv-light-subtitle\">Our system retrieves account data without connecting to Reddit<\/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=\"rduv-process-step\">\r\n                      <div class=\"rduv-step-number\">3<\/div>\r\n                      <h4 class=\"text-white\">View Full Account<\/h4>\r\n                      <p class=\"rduv-light-subtitle\">See all account details anonymously without leaving any trace<\/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=\"rduv-features-section\">\r\n      <div class=\"container\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"rduv-section-title\">Key Features<\/h2>\r\n              <p class=\"rduv-section-subtitle\">Our Reddit Account 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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-feature-icon\">\r\n                          <i class=\"bx bx-user\"><\/i>\r\n              <\/div>\r\n                      <h4>Complete Anonymity<\/h4>\r\n                      <p>View Reddit accounts 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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-feature-icon\">\r\n                          <i class=\"bx bx-shield\"><\/i>\r\n              <\/div>\r\n                      <h4>No Tracking<\/h4>\r\n                      <p>Reddit won't track your account views or recommend similar users<\/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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-feature-icon\">\r\n                          <i class=\"bx bx-history\"><\/i>\r\n              <\/div>\r\n                      <h4>Full Activity History<\/h4>\r\n                      <p>Access all posts, comments, and activity (when available)<\/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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-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 content in account's activity 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=\"150\">\r\n                  <div class=\"rduv-feature-card\">\r\n                      <div class=\"rduv-feature-icon\">\r\n                          <i class=\"bx bx-time\"><\/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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-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=\"rduv-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=\"rduv-why-choose-image rduv-floating-element\">\r\n                      <img decoding=\"async\" src=\"https:\/\/viewanonymous.com\/wp-content\/uploads\/2026\/03\/Reddit_Account_Viewer.webp\" alt=\"Reddit Account 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=\"rduv-section-title mb-4\">Why Choose Our Reddit Account Viewer?<\/h2>\r\n                  <p class=\"mb-4\">Our tool provides the most private way to browse Reddit accounts without leaving any trace. Whether you're researching users, analyzing activity, or valuing your privacy, we make anonymous account viewing simple and efficient.<\/p>\r\n                  \r\n                  <div class=\"rduv-benefit-item\">\r\n                      <div class=\"rduv-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 accounts without logging in or having a Reddit account<\/p>\r\n                      <\/div>\r\n          <\/div>\r\n    \r\n                  <div class=\"rduv-benefit-item\">\r\n                      <div class=\"rduv-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 accounts beyond Reddit's display limits<\/p>\r\n                      <\/div>\r\n          <\/div>\r\n    \r\n                  <div class=\"rduv-benefit-item\">\r\n                      <div class=\"rduv-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 account data instantly with our optimized system<\/p>\r\n                      <\/div>\r\n          <\/div>\r\n    \r\n                  <div class=\"rduv-benefit-item\">\r\n                      <div class=\"rduv-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=\"rduv-faq-section\">\r\n      <div class=\"container\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"rduv-section-title\">Frequently Asked Questions<\/h2>\r\n              <p class=\"rduv-section-subtitle\">Find answers to common questions about our Reddit Account 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=\"rduv-faqAccordion\">\r\n                      <div class=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading1\">\r\n                              <button class=\"rduv-accordion-button\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse1\" aria-expanded=\"true\" aria-controls=\"rduv-collapse1\">\r\n                                  Is viewing Reddit accounts anonymously legal?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse1\" class=\"accordion-collapse collapse show\" aria-labelledby=\"rduv-heading1\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  Yes, our tool is completely legal to use. It only allows you to view publicly available Reddit accounts through our private viewer. 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=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"100\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading2\">\r\n                              <button class=\"rduv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse2\" aria-expanded=\"false\" aria-controls=\"rduv-collapse2\">\r\n                                  Can I view private or deleted accounts?\r\n            <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse2\" class=\"accordion-collapse collapse\" aria-labelledby=\"rduv-heading2\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  Our tool respects Reddit's privacy settings. We can only show accounts and content that are set to public. For private or deleted accounts, the information won't be available.\r\n                              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                      <div class=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading3\">\r\n                              <button class=\"rduv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse3\" aria-expanded=\"false\" aria-controls=\"rduv-collapse3\">\r\n                                  Will the account owner know I viewed their account?\r\n            <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse3\" class=\"accordion-collapse collapse\" aria-labelledby=\"rduv-heading3\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  No, when you view through our anonymous viewer, your visit won't be counted in Reddit's statistics and the account owner won't know you viewed their account.\r\n                              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                      <div class=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"200\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading4\">\r\n                              <button class=\"rduv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse4\" aria-expanded=\"false\" aria-controls=\"rduv-collapse4\">\r\n                                  Do I need to install any software?\r\n            <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse4\" class=\"accordion-collapse collapse\" aria-labelledby=\"rduv-heading4\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  No, our Reddit Account Viewer is completely web-based. You don't need to download or install any software. Simply visit our website, enter the username, and view accounts anonymously.\r\n                              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                      <div class=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading5\">\r\n                              <button class=\"rduv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse5\" aria-expanded=\"false\" aria-controls=\"rduv-collapse5\">\r\n                                  Can I see deleted or removed content?\r\n            <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse5\" class=\"accordion-collapse collapse\" aria-labelledby=\"rduv-heading5\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  Our current version shows only currently available content. For viewing deleted or removed content, you would need to use specialized archival services that may have limitations.\r\n            <\/div>\r\n          <\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  <\/section>\r\n  \r\n    <!-- Footer -->\r\n    \r\n  \r\n  <!-- Copyright Section -->\r\n  \r\n  \r\n  \r\n  \r\n   <!-- Reddit User Viewer js -->\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>\r\n      class RedditUserExplorerPro {\r\n          constructor() {\r\n              this.currentUser = null;\r\n              this.posts = [];\r\n              this.downloadController = null;\r\n              this.apiEndpoint = 'https:\/\/tools.xrespond.com\/api\/reddit\/users';\r\n              this.init();\r\n          }\r\n  \r\n          init() {\r\n              this.bindEvents();\r\n              this.setupModal();\r\n          }\r\n  \r\n          bindEvents() {\r\n              const searchForm = document.getElementById('searchForm');\r\n              const usernameInput = document.getElementById('usernameInput');\r\n  \r\n              searchForm.addEventListener('submit', (e) => {\r\n                  e.preventDefault();\r\n                  const username = usernameInput.value.trim();\r\n                  if (username) {\r\n                      this.searchUser(username);\r\n                  }\r\n              });\r\n  \r\n              usernameInput.addEventListener('keypress', (e) => {\r\n                  if (e.key === 'Enter') {\r\n                      e.preventDefault();\r\n                      searchForm.dispatchEvent(new Event('submit'));\r\n                  }\r\n              });\r\n          }\r\n  \r\n          async searchUser(username) {\r\n              this.showLoading(true);\r\n              this.clearError();\r\n  \r\n              try {\r\n                  console.log(`\ud83d\udd0d Searching for user: ${username}`);\r\n                  const userData = await this.fetchUserData(username);\r\n  \r\n                  if (userData && userData.data && userData.data.body && userData.data.body.length > 0) {\r\n                      this.currentUser = username;\r\n                      this.posts = userData.data.body;\r\n                      this.displayUserInfo(username, userData.data);\r\n                      this.displayPosts(userData.data.body);\r\n                      this.showPostsSection(true);\r\n                      console.log(`\u2705 Success! Found ${userData.data.body.length} posts for ${username}`);\r\n                  } else {\r\n                      this.showError(`No posts found for user \"${username}\". The user might not exist, have no posts, or their profile might be private.`);\r\n                      this.showPostsSection(false);\r\n                  }\r\n              } catch (error) {\r\n                  console.error('\u274c Error details:', error);\r\n                  this.showError(`Failed to fetch posts for \"${username}\". Error: ${error.message}`);\r\n                  this.showPostsSection(false);\r\n              } finally {\r\n                  this.showLoading(false);\r\n              }\r\n          }\r\n  \r\n          async fetchUserData(username) {\r\n              try {\r\n                  const response = await fetch(this.apiEndpoint, {\r\n                      method: 'POST',\r\n                      headers: {\r\n                          'Content-Type': 'application\/x-www-form-urlencoded',\r\n                      },\r\n                      body: `username=${encodeURIComponent(username)}`\r\n                  });\r\n  \r\n                  if (!response.ok) {\r\n                      throw new Error(`API request failed: ${response.status} ${response.statusText}`);\r\n                  }\r\n  \r\n                  const data = await response.json();\r\n  \r\n                  if (data.status !== 'success') {\r\n                      throw new Error('API returned unsuccessful status');\r\n                  }\r\n  \r\n                  return data;\r\n              } catch (error) {\r\n                  console.error('API Error:', error);\r\n                  throw error;\r\n              }\r\n          }\r\n  \r\n          displayUserInfo(username, userData) {\r\n              const userInfo = document.getElementById('userInfo');\r\n              const userAvatar = document.getElementById('userAvatar');\r\n              const userName = document.getElementById('userName');\r\n              const userDescription = document.getElementById('userDescription');\r\n              const userStats = document.getElementById('userStats');\r\n  \r\n              userAvatar.textContent = username.charAt(0).toUpperCase();\r\n              userName.textContent = `u\/${username}`;\r\n              userDescription.textContent = `Reddit User \u2022 ${userData.body.length} posts analyzed`;\r\n  \r\n              \/\/ Calculate comprehensive stats from the posts\r\n              const posts = userData.body.filter(item => item.title); \/\/ Filter actual posts\r\n              const comments = userData.body.filter(item => item.body && !item.title); \/\/ Filter comments\r\n  \r\n              const totalUpvotes = userData.body.reduce((sum, item) => sum + (item.ups || 0), 0);\r\n              const totalComments = posts.reduce((sum, post) => sum + (post.num_comments || 0), 0);\r\n              const totalAwards = userData.body.reduce((sum, item) => sum + (item.total_awards_received || 0), 0);\r\n              const avgUpvoteRatio = posts.length > 0 ?\r\n                  posts.reduce((sum, post) => sum + (post.upvote_ratio || 0), 0) \/ posts.length : 0;\r\n  \r\n              userStats.innerHTML = `\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${this.formatNumber(totalUpvotes)}<\/div>\r\n                      <div class=\"stat-label\">Total Upvotes<\/div>\r\n                  <\/div>\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${posts.length}<\/div>\r\n                      <div class=\"stat-label\">Posts Created<\/div>\r\n                  <\/div>\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${comments.length}<\/div>\r\n                      <div class=\"stat-label\">Comments Made<\/div>\r\n                  <\/div>\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${totalAwards}<\/div>\r\n                      <div class=\"stat-label\">Awards Received<\/div>\r\n                  <\/div>\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${Math.round(avgUpvoteRatio * 100)}%<\/div>\r\n                      <div class=\"stat-label\">Avg. Upvote Ratio<\/div>\r\n                  <\/div>\r\n              `;\r\n  \r\n              userInfo.style.display = 'block';\r\n          }\r\n  \r\n          displayPosts(posts) {\r\n              const container = document.getElementById('postsContainer');\r\n              const sectionTitle = document.getElementById('sectionTitle');\r\n  \r\n              sectionTitle.textContent = `${posts.length} Posts & Comments from u\/${this.currentUser}`;\r\n              container.innerHTML = '';\r\n  \r\n              posts.forEach((post, index) => {\r\n                  const postCard = this.createPostCard(post);\r\n                  postCard.style.animationDelay = `${index * 0.1}s`;\r\n                  container.appendChild(postCard);\r\n              });\r\n          }\r\n  \r\n          createPostCard(post) {\r\n              const card = document.createElement('div');\r\n              card.className = 'post-card';\r\n  \r\n              \/\/ Determine if this is a post or comment\r\n              const isPost = !!post.title;\r\n              const isComment = !!post.body && !post.title;\r\n              const isVideo = post.is_video || (post.secure_media && post.secure_media.reddit_video);\r\n              const hasImage = post.preview && post.preview.images && post.preview.images.length > 0;\r\n              const isExternalLink = isPost && post.url && !post.url.includes('reddit.com') && !isVideo && !hasImage;\r\n  \r\n              let mediaContent = '';\r\n              let postType = isComment ? 'Comment' : isPost ? 'Post' : 'Activity';\r\n  \r\n              if (isVideo && post.secure_media && post.secure_media.reddit_video) {\r\n                  postType = 'Video';\r\n                  const video = post.secure_media.reddit_video;\r\n                  const videoUrl = video.fallback_url;\r\n                  const redditPostUrl = `https:\/\/www.reddit.com${post.permalink}`;\r\n  \r\n                  mediaContent = `\r\n                      <div class=\"media-container\">\r\n                          <div class=\"video-container\">\r\n                              <video class=\"video-player\" controls preload=\"metadata\" id=\"video-${post.id}\" onclick=\"redditExplorer.toggleVideoPlayPause('${post.id}')\">\r\n                                  <source src=\"${videoUrl}\" type=\"video\/mp4\">\r\n                                  Your browser does not support the video tag.\r\n                              <\/video>\r\n                              <button class=\"video-play-overlay\" id=\"play-overlay-${post.id}\" onclick=\"redditExplorer.toggleVideoPlayPause('${post.id}')\">\u25b6<\/button>\r\n                          <\/div>\r\n                          <div class=\"media-controls\">\r\n                              ${video.has_audio ? `\r\n                                  <button class=\"control-btn stream-audio-btn\" onclick=\"redditExplorer.streamWithAudio(event, '${redditPostUrl}', '${post.id}')\">\r\n                                      \ud83d\udd0a Stream with Audio\r\n                                  <\/button>\r\n                              ` : ''}\r\n                              <button class=\"control-btn download-btn\" onclick=\"redditExplorer.downloadVideoWithAudio(event, '${redditPostUrl}', '${this.sanitizeFilename(post.title || 'video')}.mp4', '${post.id}')\">\r\n                                  \ud83d\udce5 Download Video\r\n                              <\/button>\r\n                          <\/div>\r\n                      <\/div>\r\n                  `;\r\n              } else if (hasImage) {\r\n                  postType = 'Image';\r\n                  const image = post.preview.images[0];\r\n                  const imageUrl = image.source.url.replace(\/&\/g, '&');\r\n                  mediaContent = `\r\n                      <div class=\"media-container\">\r\n                          <img decoding=\"async\" src=\"${imageUrl}\" alt=\"${post.title || 'Image'}\" class=\"image-preview\" onclick=\"redditExplorer.openImageModal('${imageUrl}')\">\r\n                          <div class=\"media-controls\">\r\n                              <button class=\"control-btn download-btn\" onclick=\"redditExplorer.downloadImageBase64WithButtonSpinner(event, this, '${imageUrl}', '${this.sanitizeFilename(post.title || 'image')}.jpg')\">\r\n                                  <span class=\"btn-text\">\ud83d\udce5 Download Image<\/span>\r\n                                  <span class=\"btn-spinner\" style=\"display:none; margin-left:8px;\">\r\n                                      <span class=\"spinner\" style=\"width:18px;height:18px;border:3px solid #eee;border-top:3px solid #8A66FF;border-radius:50%;display:inline-block;vertical-align:middle;animation:spin 1s linear infinite;\"><\/span>\r\n              <\/span>\r\n            <\/button>\r\n            <\/div>\r\n          <\/div>\r\n                  `;\r\n              } else if (isExternalLink) {\r\n                  postType = 'Link';\r\n              }\r\n  \r\n              let externalLinkContent = '';\r\n              if (isExternalLink && post.url) {\r\n                  externalLinkContent = `\r\n                      <a href=\"${post.url}\" target=\"_blank\" class=\"external-link\">\r\n                          \ud83d\udd17 Visit ${post.domain || 'External Link'}\r\n                      <\/a>\r\n                  `;\r\n              }\r\n  \r\n              \/\/ Enhanced post badges\r\n              let badges = '';\r\n              if (post.distinguished === 'admin') badges += '<span class=\"badge admin\">\ud83d\udc51 Admin<\/span>';\r\n              if (post.distinguished === 'moderator') badges += '<span class=\"badge admin\">\ud83d\udee1\ufe0f Mod<\/span>';\r\n              if (post.stickied) badges += '<span class=\"badge stickied\">\ud83d\udccc Stickied<\/span>';\r\n              if (post.archived) badges += '<span class=\"badge archived\">\ud83d\uddc3\ufe0f Archived<\/span>';\r\n              if (post.locked) badges += '<span class=\"badge locked\">\ud83d\udd12 Locked<\/span>';\r\n              if (post.over_18) badges += '<span class=\"badge nsfw\">\ud83d\udd1e NSFW<\/span>';\r\n  \r\n              \/\/ Content handling for both posts and comments - FIXED VERSION\r\n              let contentText = '';\r\n              if (isComment && post.body) {\r\n                  const isLongText = post.body.length > 300;\r\n                  const truncatedText = isLongText ? this.truncateText(post.body, 300) : post.body;\r\n                  contentText = `\r\n                      <div class=\"post-text\" id=\"text-${post.id}\">${truncatedText}<\/div>\r\n                      ${isLongText ? `\r\n                          <button class=\"expand-btn\" data-post-id=\"${post.id}\" data-full-text=\"${this.escapeHtml(post.body)}\" onclick=\"redditExplorer.toggleText(this)\">\r\n                              Show More\r\n            <\/button>\r\n                      ` : ''}\r\n                  `;\r\n              } else if (isPost && post.selftext) {\r\n                  const isLongText = post.selftext.length > 300;\r\n                  const truncatedText = isLongText ? this.truncateText(post.selftext, 300) : post.selftext;\r\n                  contentText = `\r\n                      <div class=\"post-text\" id=\"text-${post.id}\">${truncatedText}<\/div>\r\n                      ${isLongText ? `\r\n                          <button class=\"expand-btn\" data-post-id=\"${post.id}\" data-full-text=\"${this.escapeHtml(post.selftext)}\" onclick=\"redditExplorer.toggleText(this)\">\r\n                              Show More\r\n                          <\/button>\r\n                      ` : ''}\r\n                  `;\r\n              }\r\n  \r\n              \/\/ Title handling\r\n              const title = post.title || (isComment ? `Comment in: ${post.link_title || 'Discussion'}` : 'Reddit Activity');\r\n  \r\n              card.innerHTML = `\r\n                  <div class=\"post-header\">\r\n                      <div class=\"subreddit-info\">\r\n                          <div class=\"subreddit-badge\">${post.subreddit_name_prefixed || 'r\/unknown'}<\/div>\r\n                          <div class=\"post-type\">${postType}<\/div>\r\n                      <\/div>\r\n                      <div class=\"post-meta\">\r\n                          ${this.formatDate(post.created_utc)}\r\n                          ${post.edited ? ` \u2022 Edited` : ''}\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                  ${badges ? `<div class=\"post-badges\">${badges}<\/div>` : ''}\r\n  \r\n                  <h2 class=\"post-title\">${title}<\/h2>\r\n  \r\n                  <div class=\"post-content\">\r\n                      ${contentText}\r\n                      ${mediaContent}\r\n                      ${externalLinkContent}\r\n        <\/div>\r\n  \r\n                  <div class=\"post-stats\">\r\n                      <div class=\"stat-item upvotes\">\r\n                          <div class=\"stat-value\">${this.formatNumber(post.ups || 0)}<\/div>\r\n                          <div class=\"stat-label\">Upvotes<\/div>\r\n      <\/div>\r\n                      <div class=\"stat-item comments\">\r\n                          <div class=\"stat-value\">${this.formatNumber(post.num_comments || 0)}<\/div>\r\n                          <div class=\"stat-label\">Comments<\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              `;\r\n  \r\n              return card;\r\n          }\r\n  \r\n          \/\/ FIXED toggleText function\r\n          toggleText(button) {\r\n              const postId = button.getAttribute('data-post-id');\r\n              const fullText = button.getAttribute('data-full-text');\r\n              const textElement = document.getElementById(`text-${postId}`);\r\n  \r\n              if (button.textContent.trim() === 'Show More') {\r\n                  textElement.innerHTML = fullText;\r\n                  button.textContent = 'Show Less';\r\n              } else {\r\n                  textElement.innerHTML = this.truncateText(fullText, 300);\r\n                  button.textContent = 'Show More';\r\n              }\r\n          }\r\n  \r\n          \/\/ Helper function to escape HTML\r\n          escapeHtml(text) {\r\n              const div = document.createElement('div');\r\n              div.textContent = text;\r\n              return div.innerHTML;\r\n          }\r\n  \r\n          \/\/ Video control functions\r\n          playVideo(postId) {\r\n              const video = document.getElementById(`video-${postId}`);\r\n              const overlay = document.getElementById(`play-overlay-${postId}`);\r\n  \r\n              if (video.paused) {\r\n                  video.play();\r\n                  overlay.innerHTML = '\u23f8\ufe0f';\r\n                  overlay.style.display = 'flex';\r\n              } else {\r\n                  video.pause();\r\n                  overlay.innerHTML = '\u25b6';\r\n                  overlay.style.display = 'flex';\r\n              }\r\n  \r\n              \/\/ Update overlay when video ends\r\n              video.addEventListener('ended', () => {\r\n                  overlay.innerHTML = '\u25b6';\r\n                  overlay.style.display = 'flex';\r\n              });\r\n          }\r\n  \r\n          toggleVideoPlayPause(postId) {\r\n              const video = document.getElementById(`video-${postId}`);\r\n              const overlay = document.getElementById(`play-overlay-${postId}`);\r\n  \r\n              if (video.paused) {\r\n                  video.play();\r\n                  overlay.innerHTML = '\u23f8\ufe0f';\r\n                  overlay.style.display = 'flex';\r\n              } else {\r\n                  video.pause();\r\n                  overlay.innerHTML = '\u25b6';\r\n                  overlay.style.display = 'flex';\r\n              }\r\n          }\r\n  \r\n          async streamWithAudio(event, redditUrl, postId) {\r\n              const button = event.target;\r\n              const originalText = button.innerHTML;\r\n              const videoContainer = document.querySelector(`#video-${postId}`).parentElement;\r\n  \r\n              \/\/ Show loading overlay\r\n              const loadingOverlay = document.createElement('div');\r\n              loadingOverlay.className = 'video-loading-overlay';\r\n              loadingOverlay.innerHTML = `\r\n                  <div class=\"video-loading-spinner\"><\/div>\r\n                  <div>Loading audio-enabled video...<\/div>\r\n              `;\r\n              videoContainer.appendChild(loadingOverlay);\r\n  \r\n              button.disabled = true;\r\n              button.classList.add('loading');\r\n              button.innerHTML = '\u23f3 Loading Audio...';\r\n  \r\n              try {\r\n                  console.log('Fetching audio-enabled video for:', redditUrl);\r\n  \r\n                  const response = await fetch('https:\/\/tools.xrespond.com\/api\/reddit\/video\/downloader', {\r\n                      method: 'POST',\r\n                      headers: {\r\n                          'Content-Type': 'application\/x-www-form-urlencoded',\r\n                      },\r\n                      body: `url=${encodeURIComponent(redditUrl)}`\r\n                  });\r\n  \r\n                  if (!response.ok) {\r\n                      throw new Error(`API request failed: ${response.status}`);\r\n                  }\r\n  \r\n                  const data = await response.json();\r\n  \r\n                  if (data.success && data.data && data.data.data && data.data.data.links && data.data.data.links.length > 0) {\r\n                      const downloadUrl = data.data.data.links[0].download_url;\r\n  \r\n                      const videoElement = document.getElementById(`video-${postId}`);\r\n                      if (videoElement) {\r\n                          videoElement.src = downloadUrl;\r\n                          videoElement.load();\r\n  \r\n                          button.innerHTML = '\ud83d\udd0a Audio Loaded!';\r\n                          button.style.background = 'var(--gradient-accent)';\r\n  \r\n                          setTimeout(() => {\r\n                              button.innerHTML = '\ud83d\udd0a Stream with Audio';\r\n                              button.style.background = '';\r\n                              button.disabled = false;\r\n                              button.classList.remove('loading');\r\n                          }, 2000);\r\n                      }\r\n                  } else {\r\n                      throw new Error('Invalid API response format');\r\n                  }\r\n              } catch (error) {\r\n                  console.error('Error fetching audio video:', error);\r\n                  button.innerHTML = '\u274c Audio Failed';\r\n                  button.style.background = 'var(--gradient-accent)';\r\n  \r\n                  setTimeout(() => {\r\n                      button.innerHTML = originalText;\r\n                      button.style.background = '';\r\n                      button.disabled = false;\r\n                      button.classList.remove('loading');\r\n                  }, 3000);\r\n              } finally {\r\n                  \/\/ Remove loading overlay\r\n                  if (loadingOverlay && loadingOverlay.parentElement) {\r\n                      loadingOverlay.parentElement.removeChild(loadingOverlay);\r\n                  }\r\n              }\r\n          }\r\n  \r\n          async downloadVideoWithAudio(event, redditUrl, filename, postId) {\r\n              const button = event.target;\r\n              const originalText = button.innerHTML;\r\n              button.disabled = true;\r\n              button.classList.add('downloading');\r\n              button.innerHTML = '\u23f3 Preparing...';\r\n  \r\n              this.downloadController = new AbortController();\r\n  \r\n              try {\r\n                  this.showDownloadProgress('Fetching audio-enabled video...', 0);\r\n  \r\n                  const response = await fetch('https:\/\/tools.xrespond.com\/api\/reddit\/video\/downloader', {\r\n                      method: 'POST',\r\n                      headers: {\r\n                          'Content-Type': 'application\/x-www-form-urlencoded',\r\n                      },\r\n                      body: `url=${encodeURIComponent(redditUrl)}`,\r\n                      signal: this.downloadController.signal\r\n                  });\r\n  \r\n                  if (!response.ok) {\r\n                      throw new Error(`API request failed: ${response.status}`);\r\n                  }\r\n  \r\n                  const data = await response.json();\r\n  \r\n                  if (data.success && data.data && data.data.data && data.data.data.links && data.data.data.links.length > 0) {\r\n                      const downloadUrl = data.data.data.links[0].download_url;\r\n  \r\n                      this.showDownloadProgress('Starting video download...', 10);\r\n  \r\n                      const videoResponse = await fetch(downloadUrl, {\r\n                          signal: this.downloadController.signal\r\n                      });\r\n  \r\n                      if (!videoResponse.ok) {\r\n                          throw new Error(`Download failed: ${videoResponse.status}`);\r\n                      }\r\n  \r\n                      const totalSize = parseInt(videoResponse.headers.get('content-length') || '0');\r\n                      const reader = videoResponse.body.getReader();\r\n                      let receivedSize = 0;\r\n                      const chunks = [];\r\n  \r\n                      while (true) {\r\n                          const { done, value } = await reader.read();\r\n                          if (done) break;\r\n  \r\n                          chunks.push(value);\r\n                          receivedSize += value.length;\r\n  \r\n                          const progress = totalSize ? 10 + (receivedSize \/ totalSize) * 80 : 50;\r\n                          this.showDownloadProgress('Downloading video with audio...', progress, receivedSize, totalSize);\r\n                      }\r\n  \r\n                      this.showDownloadProgress('Processing download...', 95, receivedSize, totalSize);\r\n  \r\n                      const blob = new Blob(chunks, { type: 'video\/mp4' });\r\n                      const downloadBlobUrl = URL.createObjectURL(blob);\r\n  \r\n                      const a = document.createElement('a');\r\n                      a.href = downloadBlobUrl;\r\n                      a.download = filename;\r\n                      a.style.display = 'none';\r\n                      document.body.appendChild(a);\r\n                      a.click();\r\n                      document.body.removeChild(a);\r\n  \r\n                      setTimeout(() => URL.revokeObjectURL(downloadBlobUrl), 1000);\r\n  \r\n                      this.showDownloadProgress('Download completed!', 100, receivedSize, totalSize);\r\n                      setTimeout(() => this.hideDownloadProgress(), 3000);\r\n                  } else {\r\n                      throw new Error('Invalid API response format');\r\n                  }\r\n              } catch (error) {\r\n                  if (error.name === 'AbortError') {\r\n                      this.showDownloadProgress('Download cancelled', 0);\r\n                      setTimeout(() => this.hideDownloadProgress(), 2000);\r\n                  } else {\r\n                      console.error('Download error:', error);\r\n                      this.showError(`Download failed: ${error.message}`);\r\n                      this.hideDownloadProgress();\r\n                  }\r\n              } finally {\r\n                  button.disabled = false;\r\n                  button.classList.remove('downloading');\r\n                  button.innerHTML = originalText;\r\n                  this.downloadController = null;\r\n              }\r\n          }\r\n  \r\n          async downloadImageBase64WithButtonSpinner(event, btn, imageUrl, filename) {\r\n              event.preventDefault();\r\n              const textSpan = btn.querySelector('.btn-text');\r\n              const spinnerSpan = btn.querySelector('.btn-spinner');\r\n              btn.disabled = true;\r\n              textSpan.style.display = 'none';\r\n              spinnerSpan.style.display = 'inline-block';\r\n              try {\r\n                  const proxyUrl = `https:\/\/tools.xrespond.com\/api\/reddit\/proxy-media-base64?url=${encodeURIComponent(imageUrl)}`;\r\n                  const response = await fetch(proxyUrl);\r\n                  if (!response.ok) throw new Error('Failed to fetch image');\r\n                  const data = await response.json();\r\n                  const base64data = `data:${data.contentType};base64,${data.base64}`;\r\n                  const a = document.createElement('a');\r\n                  a.href = base64data;\r\n                  a.download = filename;\r\n                  document.body.appendChild(a);\r\n                  a.click();\r\n                  document.body.removeChild(a);\r\n                  await new Promise(res => setTimeout(res, 1200)); \/\/ Show spinner briefly\r\n              } catch (error) {\r\n                  this.showError('Could not download image. Please try again later.');\r\n              } finally {\r\n                  btn.disabled = false;\r\n                  textSpan.style.display = '';\r\n                  spinnerSpan.style.display = 'none';\r\n              }\r\n          }\r\n  \r\n          showDownloadProgress(text, progress = 0, downloaded = 0, total = 0) {\r\n              const progressDiv = document.getElementById('downloadProgress');\r\n              const progressText = document.getElementById('progressText');\r\n              const progressFill = document.getElementById('progressBarFill');\r\n              const progressPercent = document.getElementById('progressPercent');\r\n              const progressSize = document.getElementById('progressSize');\r\n  \r\n              progressText.textContent = text;\r\n              progressFill.style.width = `${progress}%`;\r\n              progressPercent.textContent = `${Math.round(progress)}%`;\r\n              progressSize.textContent = `${this.formatFileSize(downloaded)} \/ ${this.formatFileSize(total)}`;\r\n  \r\n              progressDiv.classList.add('show');\r\n          }\r\n  \r\n          hideDownloadProgress() {\r\n              document.getElementById('downloadProgress').classList.remove('show');\r\n          }\r\n  \r\n          cancelDownload() {\r\n              if (this.downloadController) {\r\n                  this.downloadController.abort();\r\n                  this.downloadController = null;\r\n              }\r\n          }\r\n  \r\n          formatFileSize(bytes) {\r\n              if (bytes === 0) return '0 Bytes';\r\n              const k = 1024;\r\n              const sizes = ['Bytes', 'KB', 'MB', 'GB'];\r\n              const i = Math.floor(Math.log(bytes) \/ Math.log(k));\r\n              return parseFloat((bytes \/ Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i];\r\n          }\r\n  \r\n          newSearch() {\r\n              document.getElementById('usernameInput').value = '';\r\n              document.getElementById('userInfo').style.display = 'none';\r\n              document.getElementById('postsSection').style.display = 'none';\r\n              this.clearError();\r\n              document.getElementById('usernameInput').focus();\r\n          }\r\n  \r\n          setupModal() {\r\n              const modal = document.getElementById('imageModal');\r\n              const closeBtn = document.querySelector('.close');\r\n  \r\n              closeBtn.onclick = () => {\r\n                  modal.style.display = 'none';\r\n              }\r\n  \r\n              window.onclick = (event) => {\r\n                  if (event.target === modal) {\r\n                      modal.style.display = 'none';\r\n                  }\r\n              }\r\n          }\r\n  \r\n          openImageModal(imageUrl) {\r\n              const modal = document.getElementById('imageModal');\r\n              const modalImg = document.getElementById('modalImage');\r\n              modal.style.display = 'block';\r\n              modalImg.src = imageUrl;\r\n          }\r\n  \r\n          showLoading(show) {\r\n              const searchBtn = document.getElementById('searchBtn');\r\n              const searchText = document.getElementById('searchText');\r\n              const searchSpinner = document.getElementById('searchSpinner');\r\n              const loading = document.getElementById('loading');\r\n  \r\n              if (show) {\r\n                  searchBtn.disabled = true;\r\n                  searchText.style.display = 'none';\r\n                  searchSpinner.style.display = 'block';\r\n                  loading.style.display = 'block';\r\n              } else {\r\n                  searchBtn.disabled = false;\r\n                  searchText.style.display = 'block';\r\n                  searchSpinner.style.display = 'none';\r\n                  loading.style.display = 'none';\r\n              }\r\n          }\r\n  \r\n          showPostsSection(show) {\r\n              const postsSection = document.getElementById('postsSection');\r\n              postsSection.style.display = show ? 'block' : 'none';\r\n          }\r\n  \r\n          showError(message) {\r\n              const errorContainer = document.getElementById('errorMessage');\r\n              errorContainer.textContent = message;\r\n              errorContainer.style.display = 'block';\r\n              setTimeout(() => {\r\n                  errorContainer.style.display = 'none';\r\n              }, 8000);\r\n          }\r\n  \r\n          clearError() {\r\n              document.getElementById('errorMessage').style.display = 'none';\r\n          }\r\n  \r\n          formatNumber(num) {\r\n              if (num >= 1000000) {\r\n                  return (num \/ 1000000).toFixed(1) + 'M';\r\n              } else if (num >= 1000) {\r\n                  return (num \/ 1000).toFixed(1) + 'K';\r\n              }\r\n              return num.toString();\r\n          }\r\n  \r\n          formatDate(timestamp) {\r\n              return new Date(timestamp * 1000).toLocaleDateString('en-US', {\r\n                  year: 'numeric',\r\n                  month: 'short',\r\n                  day: 'numeric'\r\n              });\r\n          }\r\n  \r\n          formatDuration(seconds) {\r\n              const mins = Math.floor(seconds \/ 60);\r\n              const secs = seconds % 60;\r\n              return `${mins}:${secs.toString().padStart(2, '0')}`;\r\n          }\r\n  \r\n          truncateText(text, maxLength) {\r\n              if (text.length <= maxLength) return text;\r\n              return text.substring(0, maxLength) + '...';\r\n          }\r\n  \r\n          sanitizeFilename(filename) {\r\n              return filename.replace(\/[^a-z0-9]\/gi, '_').toLowerCase();\r\n          }\r\n      }\r\n  \r\n      \/\/ Global function for cancel download\r\n      function cancelDownload() {\r\n          redditExplorer.cancelDownload();\r\n      }\r\n  \r\n      \/\/ Initialize the app\r\n      const redditExplorer = new RedditUserExplorerPro();\r\n    <\/script>\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    \r\n    <!-- Vvveb Common Js -->\r\n    <script id=\"popper-js\" src=\"..\/js\/popper.min.js\"><\/script>\r\n    <!-- <script src=\"\/js\/bootstrap.min.js\"><\/script> -->\r\n    <!-- <script src=\"\/js\/bootstrap.bundle.min.js\"><\/script> -->\r\n    <script id=\"bootstrap-js\" src=\"..\/js\/bootstrap.min.js\"><\/script>\r\n    <!-- Vvveb Ajax Common Js -->\r\n    <script id=\"app-js\" src=\"..\/js\/app.js\"><\/script>\r\n  \r\n    <!-- Animation -->\r\n  \r\n    <link rel=\"stylesheet\" href=\"..\/js\/aos.css\">\r\n    <noscript>\r\n      <style type=\"text\/css\">\r\n        [data-aos] {\r\n          opacity: 1 !important;\r\n          transform: translate(0) scale(1) !important;\r\n        }\r\n      <\/style>\r\n    <\/noscript>\r\n  \r\n    <script src=\"..\/js\/aos.js\"><\/script>\r\n    <script src=\"..\/js\/theme.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>\r\n  \r\n  <grammarly-desktop-integration data-grammarly-shadow-root=\"true\"><\/grammarly-desktop-integration><grammarly-desktop-integration data-grammarly-shadow-root=\"true\"><\/grammarly-desktop-integration>\r\n  <script defer=\"\" src=\"https:\/\/static.cloudflareinsights.com\/beacon.min.js\/vcd15cbe7772f49c399c6a5babf22c1241717689176015\" integrity=\"sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==\" data-cf-beacon=\"{\"version\":\"2024.11.0\",\"token\":\"786b797d7952407aac48ed2776a3a826\",\"r\":1,\"server_timing\":{\"name\":{\"cfCacheStatus\":true,\"cfEdge\":true,\"cfExtPri\":true,\"cfL4\":true,\"cfOrigin\":true,\"cfSpeedBrain\":true},\"location_startswith\":null}}\" crossorigin=\"anonymous\"><\/script>\r\n  <script defer=\"\" src=\"https:\/\/static.cloudflareinsights.com\/beacon.min.js\/v8c78df7c7c0f484497ecbca7046644da1771523124516\" integrity=\"sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==\" data-cf-beacon=\"{\"version\":\"2024.11.0\",\"token\":\"786b797d7952407aac48ed2776a3a826\",\"r\":1,\"server_timing\":{\"name\":{\"cfCacheStatus\":true,\"cfEdge\":true,\"cfExtPri\":true,\"cfL4\":true,\"cfOrigin\":true,\"cfSpeedBrain\":true},\"location_startswith\":null}}\" crossorigin=\"anonymous\"><\/script>\r\n  [\/et_pb_fullwidth_code][\/et_pb_section]\n","protected":false},"excerpt":{"rendered":"    <link rel=\"canonical\" href=\"\">\r\n      \r\n      <!-- 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              --rduv-primary-color: #8A66FF;\r\n              --rduv-secondary-color: #6A4FE0;\r\n              --rduv-dark-color: #000000;\r\n              --rduv-light-color: #FFFFFF;\r\n              --rduv-gray-color: #F5F3FF;\r\n              --rduv-muted-on-light: #555555;\r\n              --rduv-primary-hover: #7758F0;\r\n              --rduv-secondary-hover: #9B85FF;\r\n              --rduv-section-padding: 100px 0;\r\n          }\r\n          \r\n\/*           body {\r\n              font-family: 'Manrope', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n              scroll-behavior: smooth;\r\n              overflow-x: hidden;\r\n              background-color: var(--rduv-light-color);\r\n              color: var(--rduv-dark-color);\r\n          }\r\n      \r\n      h1, h2, h3, h4, h5, h6 {\r\n          font-family: 'Manrope', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;\r\n          font-weight: 800;\r\n          letter-spacing: -0.02em;\r\n      } *\/\r\n     \r\n      \/* Reddit-style Hero Section *\/\r\n      .rduv-hero-section {\r\n              padding: var(--rduv-section-padding);\r\n              text-align: center;\r\n              background-color: var(--rduv-light-color);\r\n          }\r\n          \r\n          .rduv-hero-content {\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n          \r\n          .rduv-hero-section h1 {\r\n              font-size: 3.5rem;\r\n              font-weight: 800;\r\n              margin-bottom: 1.5rem;\r\n              color: var(--rduv-dark-color);\r\n              -webkit-text-fill-color: var(--rduv-dark-color);\r\n              background: none;\r\n              -webkit-background-clip: unset;\r\n              background-clip: unset;\r\n          }\r\n\r\n          .rduv-hero-section h1 .va-accent {\r\n              color: var(--rduv-primary-color);\r\n              -webkit-text-fill-color: var(--rduv-primary-color);\r\n          }\r\n          \r\n          .rduv-hero-section p {\r\n              font-size: 1.25rem;\r\n              max-width: 700px;\r\n              margin: 0 auto 2rem;\r\n              font-weight: 500;\r\n              color: var(--rduv-muted-on-light);\r\n          }\r\n          \r\n          \/* Work Process \u2014 white \/ lavender (logo-style content) *\/\r\n          .rduv-work-process-section {\r\n              padding: var(--rduv-section-padding);\r\n              background: linear-gradient(180deg, #faf9ff 0%, #F5F3FF 45%, #f0ecff 100%);\r\n              color: var(--rduv-dark-color);\r\n      position: relative;\r\n      overflow: hidden;\r\n              border-top: 1px solid rgba(138, 102, 255, 0.12);\r\n              border-bottom: 1px solid rgba(138, 102, 255, 0.1);\r\n    }\r\n    \r\n          .rduv-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: radial-gradient(ellipse 85% 55% at 50% 0%, rgba(138, 102, 255, 0.09) 0%, transparent 58%);\r\n      pointer-events: none;\r\n    }\r\n    \r\n          .rduv-work-process-section .rduv-light-title {\r\n              color: var(--rduv-dark-color);\r\n          }\r\n\r\n          .rduv-work-process-section .rduv-light-title::after {\r\n              background: linear-gradient(to right, var(--rduv-primary-color), var(--rduv-secondary-color));\r\n          }\r\n\r\n          .rduv-work-process-section .rduv-light-subtitle {\r\n              color: var(--rduv-muted-on-light);\r\n          }\r\n\r\n          .rduv-work-process-section .rduv-process-step {\r\n              background: #ffffff;\r\n              border: 1px solid rgba(138, 102, 255, 0.2);\r\n              box-shadow: 0 10px 28px rgba(138, 102, 255, 0.08);\r\n          }\r\n\r\n          .rduv-work-process-section .rduv-process-step:hover {\r\n              transform: translateY(-10px);\r\n              background: #ffffff;\r\n              box-shadow: 0 16px 36px rgba(138, 102, 255, 0.14);\r\n          }\r\n\r\n          .rduv-work-process-section h4.text-white {\r\n              color: var(--rduv-dark-color) !important;\r\n          }\r\n          \r\n          .rduv-work-process-content {\r\n              position: relative;\r\n              z-index: 1;\r\n          }\r\n          \r\n          .rduv-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          .rduv-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          .rduv-step-number {\r\n              width: 60px;\r\n              height: 60px;\r\n              background: white;\r\n              background: linear-gradient(45deg, var(--rduv-primary-color), var(--rduv-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          .rduv-features-section {\r\n              padding: var(--rduv-section-padding);\r\n              background: white;\r\n          }\r\n          \r\n          .rduv-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          .rduv-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(--rduv-primary-color), var(--rduv-secondary-color));\r\n              transition: all 0.3s ease;\r\n          }\r\n          \r\n          .rduv-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          .rduv-feature-card:hover::before {\r\n              width: 100%;\r\n              opacity: 0.1;\r\n          }\r\n          \r\n          .rduv-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(--rduv-primary-color), var(--rduv-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          .rduv-feature-card:hover .rduv-feature-icon {\r\n              transform: rotate(15deg) scale(1.1);\r\n              background: linear-gradient(45deg, var(--rduv-primary-hover), var(--rduv-secondary-hover));\r\n          }\r\n          \r\n          \/* Why Choose Section *\/\r\n          .rduv-why-choose-section {\r\n              padding: var(--rduv-section-padding);\r\n              background: #f9f9f9;\r\n          }\r\n          \r\n          .rduv-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          .rduv-why-choose-image:hover {\r\n              transform: perspective(1000px) rotateY(0deg);\r\n          }\r\n          \r\n          .rduv-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          .rduv-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          .rduv-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(--rduv-primary-color), var(--rduv-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          .rduv-faq-section {\r\n              padding: var(--rduv-section-padding);\r\n              background: white;\r\n          }\r\n          \r\n          .rduv-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          .rduv-accordion-button {\r\n      font-weight: 600;\r\n              color: var(--rduv-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          .rduv-accordion-button:not(.collapsed) {\r\n              background: white;\r\n              color: var(--rduv-primary-color);\r\n              box-shadow: none;\r\n          }\r\n          \r\n          .rduv-accordion-button:focus {\r\n              box-shadow: none;\r\n              border-color: rgba(138, 102, 255, 0.35);\r\n          }\r\n          \r\n          .rduv-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='%238A66FF'%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          .rduv-accordion-body {\r\n              padding: 25px;\r\n              color: #666;\r\n          }\r\n          \r\n          \/* Section Titles *\/\r\n          .rduv-section-title {\r\n      font-weight: 800;\r\n              color: var(--rduv-dark-color);\r\n              margin-bottom: 1.5rem;\r\n      position: relative;\r\n              display: inline-block;\r\n          }\r\n          \r\n          .rduv-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(--rduv-primary-color), var(--rduv-secondary-color));\r\n              border-radius: 2px;\r\n          }\r\n          \r\n          .rduv-light-title {\r\n              color: white;\r\n          }\r\n          \r\n          .rduv-light-title::after {\r\n              background: white;\r\n          }\r\n          \r\n          .rduv-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          .rduv-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                  --rduv-section-padding: 80px 0;\r\n              }\r\n              \r\n              .rduv-hero-section h1 {\r\n                  font-size: 2.8rem;\r\n              }\r\n              \r\n              .rduv-process-step::before {\r\n                  display: none;\r\n              }\r\n          }\r\n          \r\n          @media (max-width: 767px) {\r\n              :root {\r\n                  --rduv-section-padding: 70px 0;\r\n              }\r\n              \r\n              .rduv-hero-section {\r\n                  padding: 100px 0 60px;\r\n              }\r\n              \r\n              .rduv-hero-section h1 {\r\n                  font-size: 2.2rem;\r\n              }\r\n              \r\n              .rduv-hero-section p {\r\n                  font-size: 1rem;\r\n              }\r\n              \r\n              .rduv-section-title {\r\n                  font-size: 1.8rem;\r\n              }\r\n          }\r\n          \r\n          \/* Animation *\/\r\n          @keyframes rduv-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          .rduv-floating-element {\r\n              animation: rduv-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(--rduv-primary-color), var(--rduv-secondary-color));\r\n              border-radius: 10px;\r\n          }\r\n          \r\n          ::-webkit-scrollbar-thumb:hover {\r\n              background: linear-gradient(var(--rduv-primary-hover), var(--rduv-secondary-hover));\r\n          }\r\n        \r\n  \r\n  <\/style>\r\n  <!-- tools -->\r\n  <style>\r\n  \r\n      :root {\r\n          --primary-color: #8A66FF;\r\n          --primary-light: #A385FF;\r\n          --primary-dark: #6A4FE0;\r\n          --secondary-color: #6A4FE0;\r\n          --secondary-light: #8A66FF;\r\n          --secondary-dark: #5238c4;\r\n          --accent-color: #8A66FF;\r\n          --accent-light: #A385FF;\r\n          --accent-dark: #6A4FE0;\r\n          --warning-color: #D4A017;\r\n          --warning-light: #E8B84A;\r\n          --danger-color: #EF4444;\r\n          --danger-light: #F87171;\r\n          --success-color: #22C55E;\r\n          --success-light: #4ADE80;\r\n          --bg-primary: #111016;\r\n          --bg-secondary: #18181f;\r\n          --bg-tertiary: #22222c;\r\n          --bg-card: #1c1c24;\r\n          --glass-bg: rgba(138, 102, 255, 0.08);\r\n          --glass-border: rgba(138, 102, 255, 0.22);\r\n          --text-primary: #FFFFFF;\r\n          --text-secondary: #CCCCCC;\r\n          --text-muted: #999999;\r\n          --text-accent: #8A66FF;\r\n          --shadow-sm: 0 2px 8px rgba(138, 102, 255, 0.12);\r\n          --shadow-md: 0 4px 16px rgba(138, 102, 255, 0.16);\r\n          --shadow-lg: 0 8px 32px rgba(138, 102, 255, 0.2);\r\n          --shadow-xl: 0 16px 48px rgba(138, 102, 255, 0.22);\r\n          --gradient-primary: linear-gradient(135deg, #8A66FF, #6A4FE0);\r\n          --gradient-secondary: linear-gradient(135deg, #2c2c36, #8A66FF);\r\n          --gradient-accent: linear-gradient(135deg, #8A66FF, #A385FF);\r\n      }\r\n  \r\n      .rduv-hero-tools-section {\r\n          font-family: 'Manrope', 'Inter', sans-serif;\r\n          background-color: #111016;\r\n          background-image:\r\n              radial-gradient(circle at 22% 18%, rgba(138, 102, 255, 0.18) 0%, transparent 46%),\r\n              radial-gradient(circle at 88% 82%, rgba(106, 79, 224, 0.12) 0%, transparent 44%),\r\n              linear-gradient(168deg, #16141f 0%, #111016 50%, #14121c 100%);\r\n          padding: 80px 0;\r\n          line-height: 1.6;\r\n          color: var(--text-primary);\r\n          overflow-x: hidden;\r\n\/*           margin-top: 3rem; *\/\r\n          border-bottom: 1px solid rgba(138, 102, 255, 0.22);\r\n      }\r\n  \r\n      .custom-rduv-container {\r\n          max-width: 1400px;\r\n          margin: 0 auto;\r\n          padding: 20px;\r\n          position: relative;\r\n      }\r\n  \r\n      .header {\r\n      text-align: center;\r\n          margin-bottom: 40px;\r\n          padding: 40px 0;\r\n          animation: slideInDown 1s ease-out;\r\n      }\r\n  \r\n      .logo {\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          gap: 20px;\r\n          margin-bottom: 25px;\r\n          flex-wrap: wrap;\r\n      }\r\n  \r\n      .logo-icon {\r\n          width: 80px;\r\n          height: 80px;\r\n          background: var(--gradient-primary);\r\n          border-radius: 20px;\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          color: white;\r\n          font-size: 36px;\r\n      font-weight: 800;\r\n          box-shadow: var(--shadow-lg);\r\n          animation: float 3s ease-in-out infinite;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .logo-icon::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: -50%;\r\n          left: -50%;\r\n          width: 200%;\r\n          height: 200%;\r\n          background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);\r\n          transform: rotate(45deg);\r\n          animation: shine 3s infinite;\r\n      }\r\n  \r\n      .reddit-badge {\r\n          background: var(--gradient-secondary);\r\n          color: white;\r\n          padding: 8px 16px;\r\n          border-radius: 25px;\r\n          font-size: 14px;\r\n          font-weight: 700;\r\n          box-shadow: var(--shadow-md);\r\n          animation: pulse 2s infinite;\r\n      }\r\n  \r\n      .logo-text {\r\n          font-size: clamp(2.5rem, 6vw, 4rem);\r\n          font-weight: 800;\r\n          font-family: 'Manrope', 'Inter', sans-serif;\r\n          color: #FFFFFF;\r\n          -webkit-text-fill-color: #FFFFFF;\r\n          background: none;\r\n          -webkit-background-clip: unset;\r\n          background-clip: unset;\r\n          letter-spacing: -0.03em;\r\n      }\r\n\r\n      .logo-text .va-accent {\r\n          color: #8A66FF;\r\n          -webkit-text-fill-color: #8A66FF;\r\n      }\r\n  \r\n      .subtitle {\r\n          color: var(--text-secondary);\r\n          font-size: 18px;\r\n          font-weight: 600;\r\n          margin-bottom: 30px;\r\n          max-width: 700px;\r\n          margin-left: auto;\r\n          margin-right: auto;\r\n      }\r\n  \r\n      .features-grid {\r\n      display: grid;\r\n          grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));\r\n          gap: 20px;\r\n          margin-bottom: 40px;\r\n      }\r\n  \r\n      .feature-card {\r\n          background: var(--bg-card);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 15px;\r\n          border-radius: 16px;\r\n      text-align: center;\r\n          transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\r\n      position: relative;\r\n      overflow: hidden;\r\n      }\r\n  \r\n      .feature-card::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, rgba(138, 102, 255, 0.12), transparent);\r\n          transition: left 0.5s;\r\n      }\r\n  \r\n      .feature-card:hover::before {\r\n          left: 100%;\r\n      }\r\n  \r\n      .feature-card:hover {\r\n          transform: translateY(-5px);\r\n          box-shadow: var(--shadow-lg);\r\n          border-color: var(--primary-color);\r\n      }\r\n  \r\n      .feature-icon {\r\n          width: 40px;\r\n          height: 40px;\r\n          background: var(--gradient-primary);\r\n          border-radius: 50%;\r\n      display: flex;\r\n      align-items: center;\r\n      justify-content: center;\r\n          margin: 0 auto 10px;\r\n          font-size: 20px;\r\n          color: white;\r\n      }\r\n  \r\n      .feature-title {\r\n          font-weight: 700;\r\n          color: var(--text-primary);\r\n          margin-bottom: 8px;\r\n          font-size: 14px;\r\n      }\r\n  \r\n      .search-container {\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 30px;\r\n          border-radius: 24px;\r\n          box-shadow: var(--shadow-xl);\r\n          margin-bottom: 40px;\r\n          animation: slideInUp 1s ease-out 0.2s both;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .search-container::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 4px;\r\n          background: var(--gradient-primary);\r\n      }\r\n  \r\n      .search-form {\r\n          display: flex;\r\n          gap: 15px;\r\n          margin-bottom: 20px;\r\n          position: relative;\r\n      }\r\n  \r\n      .search-input {\r\n          flex: 1 !important;\r\n          padding: 15px 20px !important;\r\n          border: 2px solid rgba(138, 102, 255, 0.28) !important;\r\n          border-radius: 16px !important;\r\n          font-size: 14px !important;\r\n          font-weight: 500 !important;\r\n          background: #1A1A22 !important;\r\n          transition: all 0.3s ease !important;\r\n          outline: none !important;\r\n          color: var(--text-primary) !important;\r\n          font-family: inherit !important;\r\n      }\r\n  \r\n      .search-input:focus {\r\n          border-color: var(--primary-color);\r\n          box-shadow: 0 0 0 4px rgba(138, 102, 255, 0.18);\r\n          transform: translateY(-2px);\r\n      }\r\n  \r\n      .search-input::placeholder {\r\n          color: var(--text-muted);\r\n          font-weight: 400;\r\n      }\r\n  \r\n      .search-btn {\r\n          padding: 15px 30px;\r\n          background: var(--gradient-primary);\r\n          color: white;\r\n          border: none;\r\n          border-radius: 16px;\r\n          font-size: 14px;\r\n      font-weight: 700;\r\n          cursor: pointer;\r\n          transition: all 0.3s ease;\r\n          min-width: 150px;\r\n          position: relative;\r\n          overflow: hidden;\r\n          box-shadow: var(--shadow-md);\r\n          font-family: inherit;\r\n      }\r\n  \r\n      .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, rgba(255, 255, 255, 0.2), transparent);\r\n          transition: left 0.5s;\r\n      }\r\n  \r\n      .search-btn:hover::before {\r\n          left: 100%;\r\n      }\r\n  \r\n      .search-btn:hover:not(:disabled) {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-lg);\r\n      }\r\n  \r\n      .search-btn:disabled {\r\n          opacity: 0.6;\r\n          cursor: not-allowed;\r\n          transform: none;\r\n      }\r\n  \r\n      .user-info {\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 30px;\r\n          border-radius: 24px;\r\n          box-shadow: var(--shadow-xl);\r\n          margin-bottom: 40px;\r\n          display: none;\r\n          animation: slideInDown 0.8s ease-out;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .user-info::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 4px;\r\n          background: var(--gradient-secondary);\r\n      }\r\n  \r\n      .user-header {\r\n          display: flex;\r\n      align-items: center;\r\n          gap: 25px;\r\n          margin-bottom: 25px;\r\n      }\r\n  \r\n      .user-avatar {\r\n          width: 80px;\r\n          height: 80px;\r\n          border-radius: 50%;\r\n          background: var(--gradient-primary);\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          font-size: 2.5rem;\r\n          color: white;\r\n          font-weight: 900;\r\n          box-shadow: var(--shadow-lg);\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .user-avatar::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: -50%;\r\n          left: -50%;\r\n          width: 200%;\r\n          height: 200%;\r\n          background: linear-gradient(45deg, transparent, rgba(255, 255, 255, 0.1), transparent);\r\n          transform: rotate(45deg);\r\n          animation: shine 4s infinite;\r\n      }\r\n  \r\n      .user-details h2 {\r\n          font-size: 2rem;\r\n          color: var(--text-primary);\r\n          margin-bottom: 8px;\r\n          font-weight: 900;\r\n      }\r\n  \r\n      .user-description {\r\n          color: var(--text-secondary);\r\n          font-size: 16px;\r\n          font-weight: 500;\r\n      }\r\n  \r\n      .user-stats {\r\n      display: grid;\r\n          grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));\r\n          gap: 20px;\r\n          margin-top: 25px;\r\n      }\r\n  \r\n      .stat-card {\r\n          background: var(--bg-card);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 20px;\r\n          border-radius: 20px;\r\n      text-align: center;\r\n          transition: all 0.3s ease;\r\n      position: relative;\r\n      overflow: hidden;\r\n    }\r\n    \r\n      .stat-card::before {\r\n      content: '';\r\n      position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n      height: 3px;\r\n          background: var(--gradient-accent);\r\n    }\r\n    \r\n      .stat-card:hover {\r\n      transform: translateY(-5px);\r\n      box-shadow: var(--shadow-md);\r\n    }\r\n    \r\n      .stat-number {\r\n          font-size: 1.8rem;\r\n          font-weight: 900;\r\n          color: var(--primary-color);\r\n          margin-bottom: 6px;\r\n      }\r\n  \r\n      .stat-label {\r\n          font-size: 0.9rem;\r\n          color: var(--text-secondary);\r\n          font-weight: 600;\r\n      }\r\n  \r\n      .posts-section {\r\n          display: none;\r\n      }\r\n  \r\n      .section-title {\r\n          color: var(--text-primary);\r\n          font-size: 2rem;\r\n          font-weight: 900;\r\n          margin-bottom: 30px;\r\n          text-align: center;\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          padding: 20px;\r\n          border-radius: 20px;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .section-title::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 4px;\r\n          background: var(--gradient-accent);\r\n      }\r\n  \r\n      .posts-grid {\r\n          display: grid;\r\n          grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));\r\n          gap: 25px;\r\n      }\r\n  \r\n      .post-card {\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          border-radius: 20px;\r\n          padding: 20px;\r\n          box-shadow: var(--shadow-xl);\r\n          transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);\r\n          position: relative;\r\n          overflow: hidden;\r\n          animation: slideUp 0.6s ease forwards;\r\n          display: flex;\r\n          flex-direction: column;\r\n          height: 100%;\r\n      }\r\n  \r\n      .post-card::before {\r\n          content: '';\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 4px;\r\n          background: var(--gradient-primary);\r\n          border-radius: 20px 20px 0 0;\r\n      }\r\n  \r\n      .post-card:hover {\r\n          transform: translateY(-10px);\r\n          box-shadow: 0 20px 40px rgba(138, 102, 255, 0.22);\r\n          border-color: var(--primary-color);\r\n      }\r\n  \r\n      .post-header {\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: space-between;\r\n          margin-bottom: 15px;\r\n          padding-bottom: 15px;\r\n          border-bottom: 2px solid var(--bg-tertiary);\r\n      }\r\n  \r\n      .subreddit-info {\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 10px;\r\n          flex-wrap: wrap;\r\n      }\r\n  \r\n      .subreddit-badge {\r\n          background: var(--gradient-primary);\r\n          color: white;\r\n          padding: 6px 12px;\r\n          border-radius: 20px;\r\n          font-size: 0.8rem;\r\n      font-weight: 700;\r\n          box-shadow: var(--shadow-sm);\r\n      }\r\n  \r\n      .post-type {\r\n          background: var(--gradient-secondary);\r\n          color: white;\r\n          padding: 4px 10px;\r\n          border-radius: 15px;\r\n          font-size: 0.7rem;\r\n          font-weight: 600;\r\n          text-transform: capitalize;\r\n      }\r\n  \r\n      .post-meta {\r\n          font-size: 0.8rem;\r\n          color: var(--text-muted);\r\n          font-weight: 500;\r\n          text-align: right;\r\n      }\r\n  \r\n      .post-badges {\r\n          display: flex;\r\n          flex-wrap: wrap;\r\n          gap: 8px;\r\n          margin-bottom: 15px;\r\n      }\r\n  \r\n      .badge {\r\n          padding: 4px 10px;\r\n          border-radius: 12px;\r\n          font-size: 0.7rem;\r\n          font-weight: 600;\r\n          color: white;\r\n          text-transform: uppercase;\r\n          letter-spacing: 0.5px;\r\n      }\r\n  \r\n      .badge.admin { background: var(--gradient-accent); }\r\n      .badge.stickied { background: var(--gradient-secondary); }\r\n      .badge.archived { background: linear-gradient(135deg, #6B7280, #4B5563); }\r\n      .badge.locked { background: var(--gradient-accent); }\r\n      .badge.nsfw { background: linear-gradient(135deg, #7C3AED, #5B21B6); }\r\n  \r\n      .post-title {\r\n          font-size: 1.4rem;\r\n          font-weight: 700;\r\n          margin-bottom: 15px;\r\n          color: var(--text-primary);\r\n          line-height: 1.4;\r\n      }\r\n  \r\n      .post-content {\r\n          margin-bottom: 20px;\r\n          flex-grow: 1;\r\n      }\r\n  \r\n      .post-text {\r\n          color: var(--text-secondary);\r\n          line-height: 1.6;\r\n          margin-bottom: 15px;\r\n          font-weight: 400;\r\n          font-size: 14px;\r\n      }\r\n  \r\n      .media-container {\r\n          margin: 15px 0;\r\n          border-radius: 16px;\r\n      overflow: hidden;\r\n          position: relative;\r\n          box-shadow: var(--shadow-md);\r\n          background: #000;\r\n      }\r\n  \r\n      .image-preview {\r\n          width: 100%;\r\n          max-height: 300px;\r\n          object-fit: cover;\r\n          cursor: pointer;\r\n          transition: transform 0.3s ease;\r\n      }\r\n  \r\n      .image-preview:hover {\r\n          transform: scale(1.02);\r\n      }\r\n  \r\n      .video-container {\r\n          position: relative;\r\n          width: 100%;\r\n          background: #000;\r\n          border-radius: 16px;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .video-player {\r\n          width: 100%;\r\n          height: 250px;\r\n          border-radius: 16px;\r\n      }\r\n  \r\n      .media-controls {\r\n          display: flex;\r\n          gap: 10px;\r\n          margin-top: 15px;\r\n          flex-wrap: wrap;\r\n          align-items: center;\r\n      }\r\n  \r\n      .control-btn {\r\n          display: flex;\r\n          align-items: center;\r\n          gap: 8px;\r\n          padding: 10px 18px;\r\n          border: none;\r\n          border-radius: 12px;\r\n          cursor: pointer;\r\n          font-size: 0.9rem;\r\n          font-weight: 600;\r\n          transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\r\n          font-family: inherit;\r\n          position: relative;\r\n          overflow: hidden;\r\n      }\r\n  \r\n      .control-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, rgba(255, 255, 255, 0.2), transparent);\r\n          transition: left 0.5s;\r\n      }\r\n  \r\n      .control-btn:hover::before {\r\n          left: 100%;\r\n      }\r\n  \r\n      .stream-audio-btn {\r\n          background: var(--gradient-secondary);\r\n          color: white;\r\n          box-shadow: var(--shadow-md);\r\n      }\r\n  \r\n      .stream-audio-btn:hover {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-lg);\r\n      }\r\n  \r\n      .stream-audio-btn:disabled {\r\n          opacity: 0.6;\r\n          cursor: not-allowed;\r\n          transform: none;\r\n      }\r\n  \r\n      .stream-audio-btn.loading {\r\n          background: linear-gradient(135deg, #6B7280, #4B5563);\r\n      }\r\n  \r\n      .download-btn {\r\n          background: var(--gradient-accent);\r\n          color: white;\r\n          box-shadow: var(--shadow-md);\r\n      }\r\n  \r\n      .download-btn:hover {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-lg);\r\n      }\r\n  \r\n      .download-btn:disabled {\r\n          opacity: 0.6;\r\n          cursor: not-allowed;\r\n          transform: none;\r\n      }\r\n  \r\n      .download-btn.downloading {\r\n          background: var(--gradient-primary);\r\n      }\r\n  \r\n      .external-link {\r\n          display: inline-flex;\r\n          align-items: center;\r\n          gap: 8px;\r\n          background: var(--gradient-primary);\r\n          color: white;\r\n          padding: 10px 18px;\r\n          border-radius: 12px;\r\n          text-decoration: none;\r\n          margin-top: 15px;\r\n          transition: all 0.3s ease;\r\n          font-weight: 600;\r\n          box-shadow: var(--shadow-sm);\r\n          font-size: 0.9rem;\r\n      }\r\n  \r\n      .external-link:hover {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-md);\r\n      }\r\n  \r\n      .post-stats {\r\n          display: grid;\r\n          grid-template-columns: repeat(2, 1fr);\r\n          gap: 10px;\r\n          margin-top: auto;\r\n          padding-top: 15px;\r\n          border-top: 2px solid var(--bg-tertiary);\r\n      }\r\n  \r\n      .stat-item {\r\n          display: flex;\r\n          flex-direction: column;\r\n          align-items: center;\r\n          gap: 6px;\r\n          padding: 12px;\r\n          background: var(--bg-card);\r\n          border: 1px solid var(--glass-border);\r\n          border-radius: 15px;\r\n      text-align: center;\r\n          transition: all 0.3s ease;\r\n      position: relative;\r\n          overflow: hidden;\r\n    }\r\n    \r\n      .stat-item::before {\r\n      content: '';\r\n      position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          height: 2px;\r\n          background: var(--gradient-accent);\r\n      }\r\n  \r\n      .stat-item:hover {\r\n          transform: translateY(-3px);\r\n          box-shadow: var(--shadow-sm);\r\n      }\r\n  \r\n      .stat-value {\r\n          font-weight: 900;\r\n          font-size: 1.2rem;\r\n      }\r\n  \r\n      .stat-label {\r\n          font-size: 0.8rem;\r\n          color: var(--text-muted);\r\n          font-weight: 600;\r\n          text-transform: capitalize;\r\n      }\r\n  \r\n      .upvotes .stat-value { color: var(--primary-color); }\r\n      .comments .stat-value { color: var(--secondary-color); }\r\n  \r\n      .loading {\r\n          text-align: center;\r\n          padding: 40px;\r\n          color: var(--text-primary);\r\n          font-size: 1.1rem;\r\n          display: none;\r\n      }\r\n  \r\n      .spinner {\r\n          border: 4px solid var(--bg-tertiary);\r\n          border-top: 4px solid var(--primary-color);\r\n      border-radius: 50%;\r\n          width: 50px;\r\n          height: 50px;\r\n          animation: spin 1s linear infinite;\r\n          margin: 20px auto;\r\n      }\r\n  \r\n      .error-message {\r\n          background: rgba(239, 68, 68, 0.1);\r\n          border: 1px solid rgba(239, 68, 68, 0.2);\r\n          color: var(--danger-color);\r\n          padding: 20px;\r\n          border-radius: 16px;\r\n          text-align: center;\r\n          margin: 20px 0;\r\n          font-weight: 600;\r\n          display: none;\r\n          font-size: 14px;\r\n      }\r\n  \r\n      .modal {\r\n          display: none;\r\n          position: fixed;\r\n          z-index: 1000;\r\n          left: 0;\r\n          top: 0;\r\n          width: 100%;\r\n          height: 100%;\r\n          background-color: rgba(0, 0, 0, 0.95);\r\n          animation: fadeIn 0.3s ease;\r\n      }\r\n  \r\n      .modal-content {\r\n          position: absolute;\r\n          top: 50%;\r\n          left: 50%;\r\n          transform: translate(-50%, -50%);\r\n          max-width: 90%;\r\n          max-height: 90%;\r\n      }\r\n  \r\n      .modal img {\r\n          width: 100%;\r\n          height: auto;\r\n          border-radius: 20px;\r\n      }\r\n  \r\n      .close {\r\n          position: absolute;\r\n          top: 20px;\r\n          right: 40px;\r\n          color: #f1f1f1;\r\n          font-size: 45px;\r\n          font-weight: bold;\r\n          cursor: pointer;\r\n          z-index: 1001;\r\n      }\r\n  \r\n      .close:hover {\r\n          color: var(--primary-color);\r\n      }\r\n  \r\n      \/* Download Progress *\/\r\n      .download-progress {\r\n          position: fixed;\r\n          bottom: 25px;\r\n          right: 25px;\r\n          background: var(--bg-secondary);\r\n          border: 1px solid var(--glass-border);\r\n          border-radius: 20px;\r\n          padding: 25px;\r\n          min-width: 350px;\r\n          box-shadow: var(--shadow-xl);\r\n          z-index: 1000;\r\n          display: none;\r\n          color: var(--text-primary);\r\n      }\r\n  \r\n      .download-progress.show {\r\n          display: block;\r\n          animation: slideInRight 0.4s ease-out;\r\n      }\r\n  \r\n      .progress-header {\r\n      display: flex;\r\n          justify-content: space-between;\r\n          align-items: center;\r\n          margin-bottom: 15px;\r\n      }\r\n  \r\n      .progress-text {\r\n          font-weight: 700;\r\n          font-size: 14px;\r\n          color: var(--text-primary);\r\n      }\r\n  \r\n      .cancel-btn {\r\n          background: rgba(239, 68, 68, 0.1);\r\n          border: 1px solid rgba(239, 68, 68, 0.2);\r\n          color: var(--danger-color);\r\n          padding: 8px 16px;\r\n          border-radius: 8px;\r\n          font-size: 12px;\r\n          cursor: pointer;\r\n          transition: all 0.3s ease;\r\n          font-weight: 600;\r\n      }\r\n  \r\n      .cancel-btn:hover {\r\n          background: rgba(239, 68, 68, 0.15);\r\n      }\r\n  \r\n      .progress-bar-container {\r\n      width: 100%;\r\n          height: 12px;\r\n          background: var(--bg-tertiary);\r\n          border-radius: 6px;\r\n          overflow: hidden;\r\n          margin-bottom: 12px;\r\n          box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);\r\n      }\r\n  \r\n      .progress-bar-fill {\r\n          height: 100%;\r\n          background: var(--gradient-primary);\r\n          border-radius: 6px;\r\n          width: 0%;\r\n          transition: width 0.3s ease;\r\n          box-shadow: 0 2px 8px rgba(138, 102, 255, 0.35);\r\n      }\r\n  \r\n      .progress-details {\r\n      display: flex;\r\n      justify-content: space-between;\r\n          font-size: 12px;\r\n          color: var(--text-secondary);\r\n          font-weight: 500;\r\n      }\r\n  \r\n      .expand-btn {\r\n          background: var(--gradient-primary);\r\n          color: white;\r\n          border: none;\r\n          padding: 8px 16px;\r\n          border-radius: 12px;\r\n      cursor: pointer;\r\n          font-size: 0.8rem;\r\n      font-weight: 600;\r\n          margin-top: 10px;\r\n          transition: all 0.3s ease;\r\n          font-family: inherit;\r\n      }\r\n  \r\n      .expand-btn:hover {\r\n          transform: translateY(-2px);\r\n          box-shadow: var(--shadow-sm);\r\n      }\r\n  \r\n      .video-play-overlay {\r\n          position: absolute;\r\n          top: 50%;\r\n          left: 50%;\r\n          transform: translate(-50%, -50%);\r\n          background: rgba(0, 0, 0, 0.7);\r\n          border: none;\r\n      border-radius: 50%;\r\n          width: 50px;\r\n          height: 50px;\r\n          color: white;\r\n          font-size: 20px;\r\n          cursor: pointer;\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          transition: all 0.3s ease;\r\n          z-index: 5;\r\n      }\r\n  \r\n      .video-play-overlay:hover {\r\n          background: rgba(0, 0, 0, 0.9);\r\n          transform: translate(-50%, -50%) scale(1.1);\r\n      }\r\n  \r\n      .video-play-overlay.hidden {\r\n          display: none;\r\n      }\r\n  \r\n      .new-search-btn {\r\n          background: var(--gradient-accent) !important;\r\n          min-width: 130px;\r\n      }\r\n  \r\n      @keyframes float {\r\n          0%, 100% { transform: translateY(0px) scale(1); }\r\n          50% { transform: translateY(-10px) scale(1.02); }\r\n      }\r\n  \r\n      @keyframes shine {\r\n          0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }\r\n          100% { transform: translateX(100%) translateY(100%) rotate(45deg); }\r\n      }\r\n  \r\n      @keyframes slideInDown {\r\n          from { opacity: 0; transform: translateY(-30px); }\r\n          to { opacity: 1; transform: translateY(0); }\r\n      }\r\n  \r\n      @keyframes slideInUp {\r\n          from { opacity: 0; transform: translateY(30px); }\r\n          to { opacity: 1; transform: translateY(0); }\r\n      }\r\n  \r\n      @keyframes slideInRight {\r\n          from { opacity: 0; transform: translateX(100%); }\r\n          to { opacity: 1; transform: translateX(0); }\r\n      }\r\n  \r\n      @keyframes slideUp {\r\n          from {\r\n              opacity: 0;\r\n              transform: translateY(40px);\r\n          }\r\n          to {\r\n              opacity: 1;\r\n              transform: translateY(0);\r\n          }\r\n      }\r\n  \r\n      @keyframes spin {\r\n          0% { transform: rotate(0deg); }\r\n          100% { transform: rotate(360deg); }\r\n      }\r\n  \r\n      @keyframes pulse {\r\n          0%, 100% { transform: scale(1); }\r\n          50% { transform: scale(1.05); }\r\n      }\r\n  \r\n      @keyframes fadeIn {\r\n          from { opacity: 0; }\r\n          to { opacity: 1; }\r\n      }\r\n  \r\n      \/* Video Loading Overlay *\/\r\n      .video-loading-overlay {\r\n          position: absolute;\r\n          top: 0;\r\n          left: 0;\r\n          right: 0;\r\n          bottom: 0;\r\n          background: rgba(0, 0, 0, 0.8);\r\n          display: flex;\r\n          align-items: center;\r\n          justify-content: center;\r\n          flex-direction: column;\r\n          color: white;\r\n          font-weight: 600;\r\n          z-index: 10;\r\n      }\r\n  \r\n      .video-loading-spinner {\r\n          width: 30px;\r\n          height: 30px;\r\n          border: 3px solid rgba(255, 255, 255, 0.3);\r\n          border-top: 3px solid white;\r\n          border-radius: 50%;\r\n          animation: spin 1s linear infinite;\r\n          margin-bottom: 10px;\r\n      }\r\n  \r\n    @media (max-width: 1200px) {\r\n          .posts-grid {\r\n              grid-template-columns: 1fr;\r\n          }\r\n  \r\n          .features-grid {\r\n              grid-template-columns: repeat(2, 1fr);\r\n          }\r\n      }\r\n  \r\n    @media (max-width: 768px) {\r\n          .features-grid {\r\n              grid-template-columns: 1fr;\r\n          }\r\n  \r\n          .user-stats {\r\n              grid-template-columns: repeat(2, 1fr);\r\n          }\r\n  \r\n          .post-stats {\r\n              grid-template-columns: repeat(2, 1fr);\r\n              gap: 8px;\r\n          }\r\n  \r\n          .media-controls {\r\n              flex-direction: column;\r\n          }\r\n  \r\n          .control-btn {\r\n              width: 100%;\r\n              justify-content: center;\r\n          }\r\n  \r\n          .search-form {\r\n              flex-direction: column;\r\n          }\r\n      }\r\n  \r\n      @media (max-width: 480px) {\r\n          .post-stats {\r\n              grid-template-columns: 1fr;\r\n          }\r\n  \r\n          .user-stats {\r\n              grid-template-columns: 1fr;\r\n          }\r\n  \r\n          .custom-rduv-container {\r\n              padding: 15px;\r\n          }\r\n  \r\n          .search-container,\r\n          .user-info,\r\n          .post-card {\r\n              padding: 20px;\r\n          }\r\n  \r\n          .posts-grid {\r\n              grid-template-columns: 1fr;\r\n          }\r\n      }\r\n  <\/style>\r\n <body data-aos-easing=\"ease-in-out\" data-aos-duration=\"800\" data-aos-delay=\"0\" data-new-gr-c-s-check-loaded=\"14.1249.0\" data-gr-ext-installed=\"\" data-new-gr-c-s-loaded=\"14.1223.0\" class=\"\" style=\"\">\r\n  \r\n      <!-- Hero tools -->\r\n      <section class=\"rduv-hero-tools-section\">\r\n          <div class=\"container\">\r\n              <div class=\"custom-rduv-container\">\r\n                  <div class=\"header\">\r\n                      <div class=\"logo\">\r\n                          <div class=\"logo-icon\">\ud83d\ude80<\/div>\r\n          \r\n                          <div><h1 class=\"logo-text\">Reddit Account <span class=\"va-accent\">Viewer<\/span><\/h1><\/div>\r\n        <\/div>\r\n                      <div class=\"subtitle\">Advanced Reddit user analysis with premium insights and enhanced media capabilities<\/div>\r\n                      <div class=\"features-grid\">\r\n                          <div class=\"feature-card\">\r\n                              <div class=\"feature-icon\">\ud83c\udfa8<\/div>\r\n                              <div class=\"feature-title\">Premium Design<\/div>\r\n        <\/div>\r\n                          <div class=\"feature-card\">\r\n                              <div class=\"feature-icon\">\ud83d\udd0a<\/div>\r\n                              <div class=\"feature-title\">Audio Support<\/div>\r\n          <\/div>\r\n                          <div class=\"feature-card\">\r\n                              <div class=\"feature-icon\">\ud83d\udce5<\/div>\r\n                              <div class=\"feature-title\">Smart Downloads<\/div>\r\n          <\/div>\r\n                          <div class=\"feature-card\">\r\n                              <div class=\"feature-icon\">\ud83d\udcca<\/div>\r\n                              <div class=\"feature-title\">Rich Analytics<\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    \r\n                  <div class=\"search-container\">\r\n                      <form class=\"search-form\" id=\"searchForm\">\r\n                          <input type=\"text\" class=\"search-input\" id=\"usernameInput\" placeholder=\"Enter Reddit username (e.g., kn0thing, spez, gallowboob)\" required=\"\">\r\n                          <button type=\"submit\" class=\"search-btn\" id=\"searchBtn\">\r\n                              <span id=\"searchText\">\ud83d\udd0d Explore User<\/span>\r\n                              <div class=\"spinner\" id=\"searchSpinner\" style=\"display: none; width: 20px; height: 20px; margin: 0;\"><\/div>\r\n                          <\/button>\r\n                          <button type=\"button\" class=\"search-btn new-search-btn\" id=\"newSearchBtn\" onclick=\"redditExplorer.newSearch()\">\r\n                              \ud83d\udd04 New Search\r\n                          <\/button>\r\n                      <\/form>\r\n          \r\n                      <div class=\"loading\" id=\"loading\">\r\n                          <div class=\"spinner\"><\/div>\r\n                          <p>Analyzing user data and posts...<\/p>\r\n        <\/div>\r\n          \r\n                      <div class=\"error-message\" id=\"errorMessage\"><\/div>\r\n            <\/div>\r\n          \r\n                  <div class=\"user-info\" id=\"userInfo\">\r\n                      <div class=\"user-header\">\r\n                          <div class=\"user-avatar\" id=\"userAvatar\">U<\/div>\r\n                          <div class=\"user-details\">\r\n                              <h2 id=\"userName\">Username<\/h2>\r\n                              <p class=\"user-description\" id=\"userDescription\">Reddit User Profile<\/p>\r\n            <\/div>\r\n          <\/div>\r\n                      <div class=\"user-stats\" id=\"userStats\">\r\n                          <!-- Stats will be populated dynamically -->\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                  <div class=\"posts-section\" id=\"postsSection\">\r\n                      <h2 class=\"section-title\" id=\"sectionTitle\">Recent Posts & Activity<\/h2>\r\n                      <div id=\"postsContainer\" class=\"posts-grid\"><\/div>\r\n            <\/div>\r\n          <\/div>\r\n    \r\n              <!-- Modal for image preview -->\r\n              <div id=\"imageModal\" class=\"modal\">\r\n                  <span class=\"close\">\u00d7<\/span>\r\n                  <div class=\"modal-content\">\r\n                      <img decoding=\"async\" id=\"modalImage\" src=\"\/placeholder.svg\" alt=\"Full size image\">\r\n            <\/div>\r\n          <\/div>\r\n    \r\n              <!-- Download Progress -->\r\n              <div class=\"download-progress\" id=\"downloadProgress\">\r\n                  <div class=\"progress-header\">\r\n                      <span class=\"progress-text\" id=\"progressText\">Downloading...<\/span>\r\n                      <button class=\"cancel-btn\" onclick=\"cancelDownload()\">Cancel<\/button>\r\n            <\/div>\r\n                  <div class=\"progress-bar-container\">\r\n                      <div class=\"progress-bar-fill\" id=\"progressBarFill\"><\/div>\r\n          <\/div>\r\n                  <div class=\"progress-details\">\r\n                      <span id=\"progressPercent\">0%<\/span>\r\n                      <span id=\"progressSize\">0 MB \/ 0 MB<\/span>\r\n        <\/div>\r\n      <\/div>\r\n    \r\n        <\/div>\r\n      <\/section>\r\n  \r\n  <!-- Work Process Section -->\r\n  <section class=\"rduv-work-process-section\" id=\"how-it-works\">\r\n      <div class=\"container rduv-work-process-content\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"rduv-section-title rduv-light-title\">How Our Reddit Account Viewer Works<\/h2>\r\n              <p class=\"rduv-section-subtitle rduv-light-subtitle\">View Reddit accounts 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=\"rduv-process-step\">\r\n                      <div class=\"rduv-step-number\">1<\/div>\r\n                      <h4 class=\"text-white\">Enter Account Username<\/h4>\r\n                      <p class=\"rduv-light-subtitle\">Enter the Reddit username for the account 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=\"rduv-process-step\">\r\n                      <div class=\"rduv-step-number\">2<\/div>\r\n                      <h4 class=\"text-white\">Process Account Data<\/h4>\r\n                      <p class=\"rduv-light-subtitle\">Our system retrieves account data without connecting to Reddit<\/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=\"rduv-process-step\">\r\n                      <div class=\"rduv-step-number\">3<\/div>\r\n                      <h4 class=\"text-white\">View Full Account<\/h4>\r\n                      <p class=\"rduv-light-subtitle\">See all account details anonymously without leaving any trace<\/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=\"rduv-features-section\">\r\n      <div class=\"container\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"rduv-section-title\">Key Features<\/h2>\r\n              <p class=\"rduv-section-subtitle\">Our Reddit Account 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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-feature-icon\">\r\n                          <i class=\"bx bx-user\"><\/i>\r\n              <\/div>\r\n                      <h4>Complete Anonymity<\/h4>\r\n                      <p>View Reddit accounts 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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-feature-icon\">\r\n                          <i class=\"bx bx-shield\"><\/i>\r\n              <\/div>\r\n                      <h4>No Tracking<\/h4>\r\n                      <p>Reddit won't track your account views or recommend similar users<\/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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-feature-icon\">\r\n                          <i class=\"bx bx-history\"><\/i>\r\n              <\/div>\r\n                      <h4>Full Activity History<\/h4>\r\n                      <p>Access all posts, comments, and activity (when available)<\/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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-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 content in account's activity 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=\"150\">\r\n                  <div class=\"rduv-feature-card\">\r\n                      <div class=\"rduv-feature-icon\">\r\n                          <i class=\"bx bx-time\"><\/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=\"rduv-feature-card\">\r\n                      <div class=\"rduv-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=\"rduv-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=\"rduv-why-choose-image rduv-floating-element\">\r\n                      <img decoding=\"async\" src=\"https:\/\/viewanonymous.com\/wp-content\/uploads\/2026\/03\/Reddit_Account_Viewer.webp\" alt=\"Reddit Account 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=\"rduv-section-title mb-4\">Why Choose Our Reddit Account Viewer?<\/h2>\r\n                  <p class=\"mb-4\">Our tool provides the most private way to browse Reddit accounts without leaving any trace. Whether you're researching users, analyzing activity, or valuing your privacy, we make anonymous account viewing simple and efficient.<\/p>\r\n                  \r\n                  <div class=\"rduv-benefit-item\">\r\n                      <div class=\"rduv-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 accounts without logging in or having a Reddit account<\/p>\r\n                      <\/div>\r\n          <\/div>\r\n    \r\n                  <div class=\"rduv-benefit-item\">\r\n                      <div class=\"rduv-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 accounts beyond Reddit's display limits<\/p>\r\n                      <\/div>\r\n          <\/div>\r\n    \r\n                  <div class=\"rduv-benefit-item\">\r\n                      <div class=\"rduv-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 account data instantly with our optimized system<\/p>\r\n                      <\/div>\r\n          <\/div>\r\n    \r\n                  <div class=\"rduv-benefit-item\">\r\n                      <div class=\"rduv-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=\"rduv-faq-section\">\r\n      <div class=\"container\">\r\n          <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n              <h2 class=\"rduv-section-title\">Frequently Asked Questions<\/h2>\r\n              <p class=\"rduv-section-subtitle\">Find answers to common questions about our Reddit Account 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=\"rduv-faqAccordion\">\r\n                      <div class=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading1\">\r\n                              <button class=\"rduv-accordion-button\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse1\" aria-expanded=\"true\" aria-controls=\"rduv-collapse1\">\r\n                                  Is viewing Reddit accounts anonymously legal?\r\n                              <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse1\" class=\"accordion-collapse collapse show\" aria-labelledby=\"rduv-heading1\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  Yes, our tool is completely legal to use. It only allows you to view publicly available Reddit accounts through our private viewer. 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=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"100\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading2\">\r\n                              <button class=\"rduv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse2\" aria-expanded=\"false\" aria-controls=\"rduv-collapse2\">\r\n                                  Can I view private or deleted accounts?\r\n            <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse2\" class=\"accordion-collapse collapse\" aria-labelledby=\"rduv-heading2\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  Our tool respects Reddit's privacy settings. We can only show accounts and content that are set to public. For private or deleted accounts, the information won't be available.\r\n                              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                      <div class=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading3\">\r\n                              <button class=\"rduv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse3\" aria-expanded=\"false\" aria-controls=\"rduv-collapse3\">\r\n                                  Will the account owner know I viewed their account?\r\n            <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse3\" class=\"accordion-collapse collapse\" aria-labelledby=\"rduv-heading3\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  No, when you view through our anonymous viewer, your visit won't be counted in Reddit's statistics and the account owner won't know you viewed their account.\r\n                              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                      <div class=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"200\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading4\">\r\n                              <button class=\"rduv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse4\" aria-expanded=\"false\" aria-controls=\"rduv-collapse4\">\r\n                                  Do I need to install any software?\r\n            <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse4\" class=\"accordion-collapse collapse\" aria-labelledby=\"rduv-heading4\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  No, our Reddit Account Viewer is completely web-based. You don't need to download or install any software. Simply visit our website, enter the username, and view accounts anonymously.\r\n                              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                      <div class=\"rduv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                          <h3 class=\"accordion-header\" id=\"rduv-heading5\">\r\n                              <button class=\"rduv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#rduv-collapse5\" aria-expanded=\"false\" aria-controls=\"rduv-collapse5\">\r\n                                  Can I see deleted or removed content?\r\n            <\/button>\r\n                          <\/h3>\r\n                          <div id=\"rduv-collapse5\" class=\"accordion-collapse collapse\" aria-labelledby=\"rduv-heading5\" data-bs-parent=\"#rduv-faqAccordion\">\r\n                              <div class=\"rduv-accordion-body\">\r\n                                  Our current version shows only currently available content. For viewing deleted or removed content, you would need to use specialized archival services that may have limitations.\r\n            <\/div>\r\n          <\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n      <\/div>\r\n  <\/section>\r\n  \r\n    <!-- Footer -->\r\n    \r\n  \r\n  <!-- Copyright Section -->\r\n  \r\n  \r\n  \r\n  \r\n   <!-- Reddit User Viewer js -->\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>\r\n      class RedditUserExplorerPro {\r\n          constructor() {\r\n              this.currentUser = null;\r\n              this.posts = [];\r\n              this.downloadController = null;\r\n              this.apiEndpoint = 'https:\/\/tools.xrespond.com\/api\/reddit\/users';\r\n              this.init();\r\n          }\r\n  \r\n          init() {\r\n              this.bindEvents();\r\n              this.setupModal();\r\n          }\r\n  \r\n          bindEvents() {\r\n              const searchForm = document.getElementById('searchForm');\r\n              const usernameInput = document.getElementById('usernameInput');\r\n  \r\n              searchForm.addEventListener('submit', (e) => {\r\n                  e.preventDefault();\r\n                  const username = usernameInput.value.trim();\r\n                  if (username) {\r\n                      this.searchUser(username);\r\n                  }\r\n              });\r\n  \r\n              usernameInput.addEventListener('keypress', (e) => {\r\n                  if (e.key === 'Enter') {\r\n                      e.preventDefault();\r\n                      searchForm.dispatchEvent(new Event('submit'));\r\n                  }\r\n              });\r\n          }\r\n  \r\n          async searchUser(username) {\r\n              this.showLoading(true);\r\n              this.clearError();\r\n  \r\n              try {\r\n                  console.log(`\ud83d\udd0d Searching for user: ${username}`);\r\n                  const userData = await this.fetchUserData(username);\r\n  \r\n                  if (userData && userData.data && userData.data.body && userData.data.body.length > 0) {\r\n                      this.currentUser = username;\r\n                      this.posts = userData.data.body;\r\n                      this.displayUserInfo(username, userData.data);\r\n                      this.displayPosts(userData.data.body);\r\n                      this.showPostsSection(true);\r\n                      console.log(`\u2705 Success! Found ${userData.data.body.length} posts for ${username}`);\r\n                  } else {\r\n                      this.showError(`No posts found for user \"${username}\". The user might not exist, have no posts, or their profile might be private.`);\r\n                      this.showPostsSection(false);\r\n                  }\r\n              } catch (error) {\r\n                  console.error('\u274c Error details:', error);\r\n                  this.showError(`Failed to fetch posts for \"${username}\". Error: ${error.message}`);\r\n                  this.showPostsSection(false);\r\n              } finally {\r\n                  this.showLoading(false);\r\n              }\r\n          }\r\n  \r\n          async fetchUserData(username) {\r\n              try {\r\n                  const response = await fetch(this.apiEndpoint, {\r\n                      method: 'POST',\r\n                      headers: {\r\n                          'Content-Type': 'application\/x-www-form-urlencoded',\r\n                      },\r\n                      body: `username=${encodeURIComponent(username)}`\r\n                  });\r\n  \r\n                  if (!response.ok) {\r\n                      throw new Error(`API request failed: ${response.status} ${response.statusText}`);\r\n                  }\r\n  \r\n                  const data = await response.json();\r\n  \r\n                  if (data.status !== 'success') {\r\n                      throw new Error('API returned unsuccessful status');\r\n                  }\r\n  \r\n                  return data;\r\n              } catch (error) {\r\n                  console.error('API Error:', error);\r\n                  throw error;\r\n              }\r\n          }\r\n  \r\n          displayUserInfo(username, userData) {\r\n              const userInfo = document.getElementById('userInfo');\r\n              const userAvatar = document.getElementById('userAvatar');\r\n              const userName = document.getElementById('userName');\r\n              const userDescription = document.getElementById('userDescription');\r\n              const userStats = document.getElementById('userStats');\r\n  \r\n              userAvatar.textContent = username.charAt(0).toUpperCase();\r\n              userName.textContent = `u\/${username}`;\r\n              userDescription.textContent = `Reddit User \u2022 ${userData.body.length} posts analyzed`;\r\n  \r\n              \/\/ Calculate comprehensive stats from the posts\r\n              const posts = userData.body.filter(item => item.title); \/\/ Filter actual posts\r\n              const comments = userData.body.filter(item => item.body && !item.title); \/\/ Filter comments\r\n  \r\n              const totalUpvotes = userData.body.reduce((sum, item) => sum + (item.ups || 0), 0);\r\n              const totalComments = posts.reduce((sum, post) => sum + (post.num_comments || 0), 0);\r\n              const totalAwards = userData.body.reduce((sum, item) => sum + (item.total_awards_received || 0), 0);\r\n              const avgUpvoteRatio = posts.length > 0 ?\r\n                  posts.reduce((sum, post) => sum + (post.upvote_ratio || 0), 0) \/ posts.length : 0;\r\n  \r\n              userStats.innerHTML = `\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${this.formatNumber(totalUpvotes)}<\/div>\r\n                      <div class=\"stat-label\">Total Upvotes<\/div>\r\n                  <\/div>\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${posts.length}<\/div>\r\n                      <div class=\"stat-label\">Posts Created<\/div>\r\n                  <\/div>\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${comments.length}<\/div>\r\n                      <div class=\"stat-label\">Comments Made<\/div>\r\n                  <\/div>\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${totalAwards}<\/div>\r\n                      <div class=\"stat-label\">Awards Received<\/div>\r\n                  <\/div>\r\n                  <div class=\"stat-card\">\r\n                      <div class=\"stat-number\">${Math.round(avgUpvoteRatio * 100)}%<\/div>\r\n                      <div class=\"stat-label\">Avg. Upvote Ratio<\/div>\r\n                  <\/div>\r\n              `;\r\n  \r\n              userInfo.style.display = 'block';\r\n          }\r\n  \r\n          displayPosts(posts) {\r\n              const container = document.getElementById('postsContainer');\r\n              const sectionTitle = document.getElementById('sectionTitle');\r\n  \r\n              sectionTitle.textContent = `${posts.length} Posts & Comments from u\/${this.currentUser}`;\r\n              container.innerHTML = '';\r\n  \r\n              posts.forEach((post, index) => {\r\n                  const postCard = this.createPostCard(post);\r\n                  postCard.style.animationDelay = `${index * 0.1}s`;\r\n                  container.appendChild(postCard);\r\n              });\r\n          }\r\n  \r\n          createPostCard(post) {\r\n              const card = document.createElement('div');\r\n              card.className = 'post-card';\r\n  \r\n              \/\/ Determine if this is a post or comment\r\n              const isPost = !!post.title;\r\n              const isComment = !!post.body && !post.title;\r\n              const isVideo = post.is_video || (post.secure_media && post.secure_media.reddit_video);\r\n              const hasImage = post.preview && post.preview.images && post.preview.images.length > 0;\r\n              const isExternalLink = isPost && post.url && !post.url.includes('reddit.com') && !isVideo && !hasImage;\r\n  \r\n              let mediaContent = '';\r\n              let postType = isComment ? 'Comment' : isPost ? 'Post' : 'Activity';\r\n  \r\n              if (isVideo && post.secure_media && post.secure_media.reddit_video) {\r\n                  postType = 'Video';\r\n                  const video = post.secure_media.reddit_video;\r\n                  const videoUrl = video.fallback_url;\r\n                  const redditPostUrl = `https:\/\/www.reddit.com${post.permalink}`;\r\n  \r\n                  mediaContent = `\r\n                      <div class=\"media-container\">\r\n                          <div class=\"video-container\">\r\n                              <video class=\"video-player\" controls preload=\"metadata\" id=\"video-${post.id}\" onclick=\"redditExplorer.toggleVideoPlayPause('${post.id}')\">\r\n                                  <source src=\"${videoUrl}\" type=\"video\/mp4\">\r\n                                  Your browser does not support the video tag.\r\n                              <\/video>\r\n                              <button class=\"video-play-overlay\" id=\"play-overlay-${post.id}\" onclick=\"redditExplorer.toggleVideoPlayPause('${post.id}')\">\u25b6<\/button>\r\n                          <\/div>\r\n                          <div class=\"media-controls\">\r\n                              ${video.has_audio ? `\r\n                                  <button class=\"control-btn stream-audio-btn\" onclick=\"redditExplorer.streamWithAudio(event, '${redditPostUrl}', '${post.id}')\">\r\n                                      \ud83d\udd0a Stream with Audio\r\n                                  <\/button>\r\n                              ` : ''}\r\n                              <button class=\"control-btn download-btn\" onclick=\"redditExplorer.downloadVideoWithAudio(event, '${redditPostUrl}', '${this.sanitizeFilename(post.title || 'video')}.mp4', '${post.id}')\">\r\n                                  \ud83d\udce5 Download Video\r\n                              <\/button>\r\n                          <\/div>\r\n                      <\/div>\r\n                  `;\r\n              } else if (hasImage) {\r\n                  postType = 'Image';\r\n                  const image = post.preview.images[0];\r\n                  const imageUrl = image.source.url.replace(\/&\/g, '&');\r\n                  mediaContent = `\r\n                      <div class=\"media-container\">\r\n                          <img decoding=\"async\" src=\"${imageUrl}\" alt=\"${post.title || 'Image'}\" class=\"image-preview\" onclick=\"redditExplorer.openImageModal('${imageUrl}')\">\r\n                          <div class=\"media-controls\">\r\n                              <button class=\"control-btn download-btn\" onclick=\"redditExplorer.downloadImageBase64WithButtonSpinner(event, this, '${imageUrl}', '${this.sanitizeFilename(post.title || 'image')}.jpg')\">\r\n                                  <span class=\"btn-text\">\ud83d\udce5 Download Image<\/span>\r\n                                  <span class=\"btn-spinner\" style=\"display:none; margin-left:8px;\">\r\n                                      <span class=\"spinner\" style=\"width:18px;height:18px;border:3px solid #eee;border-top:3px solid #8A66FF;border-radius:50%;display:inline-block;vertical-align:middle;animation:spin 1s linear infinite;\"><\/span>\r\n              <\/span>\r\n            <\/button>\r\n            <\/div>\r\n          <\/div>\r\n                  `;\r\n              } else if (isExternalLink) {\r\n                  postType = 'Link';\r\n              }\r\n  \r\n              let externalLinkContent = '';\r\n              if (isExternalLink && post.url) {\r\n                  externalLinkContent = `\r\n                      <a href=\"${post.url}\" target=\"_blank\" class=\"external-link\">\r\n                          \ud83d\udd17 Visit ${post.domain || 'External Link'}\r\n                      <\/a>\r\n                  `;\r\n              }\r\n  \r\n              \/\/ Enhanced post badges\r\n              let badges = '';\r\n              if (post.distinguished === 'admin') badges += '<span class=\"badge admin\">\ud83d\udc51 Admin<\/span>';\r\n              if (post.distinguished === 'moderator') badges += '<span class=\"badge admin\">\ud83d\udee1\ufe0f Mod<\/span>';\r\n              if (post.stickied) badges += '<span class=\"badge stickied\">\ud83d\udccc Stickied<\/span>';\r\n              if (post.archived) badges += '<span class=\"badge archived\">\ud83d\uddc3\ufe0f Archived<\/span>';\r\n              if (post.locked) badges += '<span class=\"badge locked\">\ud83d\udd12 Locked<\/span>';\r\n              if (post.over_18) badges += '<span class=\"badge nsfw\">\ud83d\udd1e NSFW<\/span>';\r\n  \r\n              \/\/ Content handling for both posts and comments - FIXED VERSION\r\n              let contentText = '';\r\n              if (isComment && post.body) {\r\n                  const isLongText = post.body.length > 300;\r\n                  const truncatedText = isLongText ? this.truncateText(post.body, 300) : post.body;\r\n                  contentText = `\r\n                      <div class=\"post-text\" id=\"text-${post.id}\">${truncatedText}<\/div>\r\n                      ${isLongText ? `\r\n                          <button class=\"expand-btn\" data-post-id=\"${post.id}\" data-full-text=\"${this.escapeHtml(post.body)}\" onclick=\"redditExplorer.toggleText(this)\">\r\n                              Show More\r\n            <\/button>\r\n                      ` : ''}\r\n                  `;\r\n              } else if (isPost && post.selftext) {\r\n                  const isLongText = post.selftext.length > 300;\r\n                  const truncatedText = isLongText ? this.truncateText(post.selftext, 300) : post.selftext;\r\n                  contentText = `\r\n                      <div class=\"post-text\" id=\"text-${post.id}\">${truncatedText}<\/div>\r\n                      ${isLongText ? `\r\n                          <button class=\"expand-btn\" data-post-id=\"${post.id}\" data-full-text=\"${this.escapeHtml(post.selftext)}\" onclick=\"redditExplorer.toggleText(this)\">\r\n                              Show More\r\n                          <\/button>\r\n                      ` : ''}\r\n                  `;\r\n              }\r\n  \r\n              \/\/ Title handling\r\n              const title = post.title || (isComment ? `Comment in: ${post.link_title || 'Discussion'}` : 'Reddit Activity');\r\n  \r\n              card.innerHTML = `\r\n                  <div class=\"post-header\">\r\n                      <div class=\"subreddit-info\">\r\n                          <div class=\"subreddit-badge\">${post.subreddit_name_prefixed || 'r\/unknown'}<\/div>\r\n                          <div class=\"post-type\">${postType}<\/div>\r\n                      <\/div>\r\n                      <div class=\"post-meta\">\r\n                          ${this.formatDate(post.created_utc)}\r\n                          ${post.edited ? ` \u2022 Edited` : ''}\r\n            <\/div>\r\n          <\/div>\r\n    \r\n                  ${badges ? `<div class=\"post-badges\">${badges}<\/div>` : ''}\r\n  \r\n                  <h2 class=\"post-title\">${title}<\/h2>\r\n  \r\n                  <div class=\"post-content\">\r\n                      ${contentText}\r\n                      ${mediaContent}\r\n                      ${externalLinkContent}\r\n        <\/div>\r\n  \r\n                  <div class=\"post-stats\">\r\n                      <div class=\"stat-item upvotes\">\r\n                          <div class=\"stat-value\">${this.formatNumber(post.ups || 0)}<\/div>\r\n                          <div class=\"stat-label\">Upvotes<\/div>\r\n      <\/div>\r\n                      <div class=\"stat-item comments\">\r\n                          <div class=\"stat-value\">${this.formatNumber(post.num_comments || 0)}<\/div>\r\n                          <div class=\"stat-label\">Comments<\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              `;\r\n  \r\n              return card;\r\n          }\r\n  \r\n          \/\/ FIXED toggleText function\r\n          toggleText(button) {\r\n              const postId = button.getAttribute('data-post-id');\r\n              const fullText = button.getAttribute('data-full-text');\r\n              const textElement = document.getElementById(`text-${postId}`);\r\n  \r\n              if (button.textContent.trim() === 'Show More') {\r\n                  textElement.innerHTML = fullText;\r\n                  button.textContent = 'Show Less';\r\n              } else {\r\n                  textElement.innerHTML = this.truncateText(fullText, 300);\r\n                  button.textContent = 'Show More';\r\n              }\r\n          }\r\n  \r\n          \/\/ Helper function to escape HTML\r\n          escapeHtml(text) {\r\n              const div = document.createElement('div');\r\n              div.textContent = text;\r\n              return div.innerHTML;\r\n          }\r\n  \r\n          \/\/ Video control functions\r\n          playVideo(postId) {\r\n              const video = document.getElementById(`video-${postId}`);\r\n              const overlay = document.getElementById(`play-overlay-${postId}`);\r\n  \r\n              if (video.paused) {\r\n                  video.play();\r\n                  overlay.innerHTML = '\u23f8\ufe0f';\r\n                  overlay.style.display = 'flex';\r\n              } else {\r\n                  video.pause();\r\n                  overlay.innerHTML = '\u25b6';\r\n                  overlay.style.display = 'flex';\r\n              }\r\n  \r\n              \/\/ Update overlay when video ends\r\n              video.addEventListener('ended', () => {\r\n                  overlay.innerHTML = '\u25b6';\r\n                  overlay.style.display = 'flex';\r\n              });\r\n          }\r\n  \r\n          toggleVideoPlayPause(postId) {\r\n              const video = document.getElementById(`video-${postId}`);\r\n              const overlay = document.getElementById(`play-overlay-${postId}`);\r\n  \r\n              if (video.paused) {\r\n                  video.play();\r\n                  overlay.innerHTML = '\u23f8\ufe0f';\r\n                  overlay.style.display = 'flex';\r\n              } else {\r\n                  video.pause();\r\n                  overlay.innerHTML = '\u25b6';\r\n                  overlay.style.display = 'flex';\r\n              }\r\n          }\r\n  \r\n          async streamWithAudio(event, redditUrl, postId) {\r\n              const button = event.target;\r\n              const originalText = button.innerHTML;\r\n              const videoContainer = document.querySelector(`#video-${postId}`).parentElement;\r\n  \r\n              \/\/ Show loading overlay\r\n              const loadingOverlay = document.createElement('div');\r\n              loadingOverlay.className = 'video-loading-overlay';\r\n              loadingOverlay.innerHTML = `\r\n                  <div class=\"video-loading-spinner\"><\/div>\r\n                  <div>Loading audio-enabled video...<\/div>\r\n              `;\r\n              videoContainer.appendChild(loadingOverlay);\r\n  \r\n              button.disabled = true;\r\n              button.classList.add('loading');\r\n              button.innerHTML = '\u23f3 Loading Audio...';\r\n  \r\n              try {\r\n                  console.log('Fetching audio-enabled video for:', redditUrl);\r\n  \r\n                  const response = await fetch('https:\/\/tools.xrespond.com\/api\/reddit\/video\/downloader', {\r\n                      method: 'POST',\r\n                      headers: {\r\n                          'Content-Type': 'application\/x-www-form-urlencoded',\r\n                      },\r\n                      body: `url=${encodeURIComponent(redditUrl)}`\r\n                  });\r\n  \r\n                  if (!response.ok) {\r\n                      throw new Error(`API request failed: ${response.status}`);\r\n                  }\r\n  \r\n                  const data = await response.json();\r\n  \r\n                  if (data.success && data.data && data.data.data && data.data.data.links && data.data.data.links.length > 0) {\r\n                      const downloadUrl = data.data.data.links[0].download_url;\r\n  \r\n                      const videoElement = document.getElementById(`video-${postId}`);\r\n                      if (videoElement) {\r\n                          videoElement.src = downloadUrl;\r\n                          videoElement.load();\r\n  \r\n                          button.innerHTML = '\ud83d\udd0a Audio Loaded!';\r\n                          button.style.background = 'var(--gradient-accent)';\r\n  \r\n                          setTimeout(() => {\r\n                              button.innerHTML = '\ud83d\udd0a Stream with Audio';\r\n                              button.style.background = '';\r\n                              button.disabled = false;\r\n                              button.classList.remove('loading');\r\n                          }, 2000);\r\n                      }\r\n                  } else {\r\n                      throw new Error('Invalid API response format');\r\n                  }\r\n              } catch (error) {\r\n                  console.error('Error fetching audio video:', error);\r\n                  button.innerHTML = '\u274c Audio Failed';\r\n                  button.style.background = 'var(--gradient-accent)';\r\n  \r\n                  setTimeout(() => {\r\n                      button.innerHTML = originalText;\r\n                      button.style.background = '';\r\n                      button.disabled = false;\r\n                      button.classList.remove('loading');\r\n                  }, 3000);\r\n              } finally {\r\n                  \/\/ Remove loading overlay\r\n                  if (loadingOverlay && loadingOverlay.parentElement) {\r\n                      loadingOverlay.parentElement.removeChild(loadingOverlay);\r\n                  }\r\n              }\r\n          }\r\n  \r\n          async downloadVideoWithAudio(event, redditUrl, filename, postId) {\r\n              const button = event.target;\r\n              const originalText = button.innerHTML;\r\n              button.disabled = true;\r\n              button.classList.add('downloading');\r\n              button.innerHTML = '\u23f3 Preparing...';\r\n  \r\n              this.downloadController = new AbortController();\r\n  \r\n              try {\r\n                  this.showDownloadProgress('Fetching audio-enabled video...', 0);\r\n  \r\n                  const response = await fetch('https:\/\/tools.xrespond.com\/api\/reddit\/video\/downloader', {\r\n                      method: 'POST',\r\n                      headers: {\r\n                          'Content-Type': 'application\/x-www-form-urlencoded',\r\n                      },\r\n                      body: `url=${encodeURIComponent(redditUrl)}`,\r\n                      signal: this.downloadController.signal\r\n                  });\r\n  \r\n                  if (!response.ok) {\r\n                      throw new Error(`API request failed: ${response.status}`);\r\n                  }\r\n  \r\n                  const data = await response.json();\r\n  \r\n                  if (data.success && data.data && data.data.data && data.data.data.links && data.data.data.links.length > 0) {\r\n                      const downloadUrl = data.data.data.links[0].download_url;\r\n  \r\n                      this.showDownloadProgress('Starting video download...', 10);\r\n  \r\n                      const videoResponse = await fetch(downloadUrl, {\r\n                          signal: this.downloadController.signal\r\n                      });\r\n  \r\n                      if (!videoResponse.ok) {\r\n                          throw new Error(`Download failed: ${videoResponse.status}`);\r\n                      }\r\n  \r\n                      const totalSize = parseInt(videoResponse.headers.get('content-length') || '0');\r\n                      const reader = videoResponse.body.getReader();\r\n                      let receivedSize = 0;\r\n                      const chunks = [];\r\n  \r\n                      while (true) {\r\n                          const { done, value } = await reader.read();\r\n                          if (done) break;\r\n  \r\n                          chunks.push(value);\r\n                          receivedSize += value.length;\r\n  \r\n                          const progress = totalSize ? 10 + (receivedSize \/ totalSize) * 80 : 50;\r\n                          this.showDownloadProgress('Downloading video with audio...', progress, receivedSize, totalSize);\r\n                      }\r\n  \r\n                      this.showDownloadProgress('Processing download...', 95, receivedSize, totalSize);\r\n  \r\n                      const blob = new Blob(chunks, { type: 'video\/mp4' });\r\n                      const downloadBlobUrl = URL.createObjectURL(blob);\r\n  \r\n                      const a = document.createElement('a');\r\n                      a.href = downloadBlobUrl;\r\n                      a.download = filename;\r\n                      a.style.display = 'none';\r\n                      document.body.appendChild(a);\r\n                      a.click();\r\n                      document.body.removeChild(a);\r\n  \r\n                      setTimeout(() => URL.revokeObjectURL(downloadBlobUrl), 1000);\r\n  \r\n                      this.showDownloadProgress('Download completed!', 100, receivedSize, totalSize);\r\n                      setTimeout(() => this.hideDownloadProgress(), 3000);\r\n                  } else {\r\n                      throw new Error('Invalid API response format');\r\n                  }\r\n              } catch (error) {\r\n                  if (error.name === 'AbortError') {\r\n                      this.showDownloadProgress('Download cancelled', 0);\r\n                      setTimeout(() => this.hideDownloadProgress(), 2000);\r\n                  } else {\r\n                      console.error('Download error:', error);\r\n                      this.showError(`Download failed: ${error.message}`);\r\n                      this.hideDownloadProgress();\r\n                  }\r\n              } finally {\r\n                  button.disabled = false;\r\n                  button.classList.remove('downloading');\r\n                  button.innerHTML = originalText;\r\n                  this.downloadController = null;\r\n              }\r\n          }\r\n  \r\n          async downloadImageBase64WithButtonSpinner(event, btn, imageUrl, filename) {\r\n              event.preventDefault();\r\n              const textSpan = btn.querySelector('.btn-text');\r\n              const spinnerSpan = btn.querySelector('.btn-spinner');\r\n              btn.disabled = true;\r\n              textSpan.style.display = 'none';\r\n              spinnerSpan.style.display = 'inline-block';\r\n              try {\r\n                  const proxyUrl = `https:\/\/tools.xrespond.com\/api\/reddit\/proxy-media-base64?url=${encodeURIComponent(imageUrl)}`;\r\n                  const response = await fetch(proxyUrl);\r\n                  if (!response.ok) throw new Error('Failed to fetch image');\r\n                  const data = await response.json();\r\n                  const base64data = `data:${data.contentType};base64,${data.base64}`;\r\n                  const a = document.createElement('a');\r\n                  a.href = base64data;\r\n                  a.download = filename;\r\n                  document.body.appendChild(a);\r\n                  a.click();\r\n                  document.body.removeChild(a);\r\n                  await new Promise(res => setTimeout(res, 1200)); \/\/ Show spinner briefly\r\n              } catch (error) {\r\n                  this.showError('Could not download image. Please try again later.');\r\n              } finally {\r\n                  btn.disabled = false;\r\n                  textSpan.style.display = '';\r\n                  spinnerSpan.style.display = 'none';\r\n              }\r\n          }\r\n  \r\n          showDownloadProgress(text, progress = 0, downloaded = 0, total = 0) {\r\n              const progressDiv = document.getElementById('downloadProgress');\r\n              const progressText = document.getElementById('progressText');\r\n              const progressFill = document.getElementById('progressBarFill');\r\n              const progressPercent = document.getElementById('progressPercent');\r\n              const progressSize = document.getElementById('progressSize');\r\n  \r\n              progressText.textContent = text;\r\n              progressFill.style.width = `${progress}%`;\r\n              progressPercent.textContent = `${Math.round(progress)}%`;\r\n              progressSize.textContent = `${this.formatFileSize(downloaded)} \/ ${this.formatFileSize(total)}`;\r\n  \r\n              progressDiv.classList.add('show');\r\n          }\r\n  \r\n          hideDownloadProgress() {\r\n              document.getElementById('downloadProgress').classList.remove('show');\r\n          }\r\n  \r\n          cancelDownload() {\r\n              if (this.downloadController) {\r\n                  this.downloadController.abort();\r\n                  this.downloadController = null;\r\n              }\r\n          }\r\n  \r\n          formatFileSize(bytes) {\r\n              if (bytes === 0) return '0 Bytes';\r\n              const k = 1024;\r\n              const sizes = ['Bytes', 'KB', 'MB', 'GB'];\r\n              const i = Math.floor(Math.log(bytes) \/ Math.log(k));\r\n              return parseFloat((bytes \/ Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i];\r\n          }\r\n  \r\n          newSearch() {\r\n              document.getElementById('usernameInput').value = '';\r\n              document.getElementById('userInfo').style.display = 'none';\r\n              document.getElementById('postsSection').style.display = 'none';\r\n              this.clearError();\r\n              document.getElementById('usernameInput').focus();\r\n          }\r\n  \r\n          setupModal() {\r\n              const modal = document.getElementById('imageModal');\r\n              const closeBtn = document.querySelector('.close');\r\n  \r\n              closeBtn.onclick = () => {\r\n                  modal.style.display = 'none';\r\n              }\r\n  \r\n              window.onclick = (event) => {\r\n                  if (event.target === modal) {\r\n                      modal.style.display = 'none';\r\n                  }\r\n              }\r\n          }\r\n  \r\n          openImageModal(imageUrl) {\r\n              const modal = document.getElementById('imageModal');\r\n              const modalImg = document.getElementById('modalImage');\r\n              modal.style.display = 'block';\r\n              modalImg.src = imageUrl;\r\n          }\r\n  \r\n          showLoading(show) {\r\n              const searchBtn = document.getElementById('searchBtn');\r\n              const searchText = document.getElementById('searchText');\r\n              const searchSpinner = document.getElementById('searchSpinner');\r\n              const loading = document.getElementById('loading');\r\n  \r\n              if (show) {\r\n                  searchBtn.disabled = true;\r\n                  searchText.style.display = 'none';\r\n                  searchSpinner.style.display = 'block';\r\n                  loading.style.display = 'block';\r\n              } else {\r\n                  searchBtn.disabled = false;\r\n                  searchText.style.display = 'block';\r\n                  searchSpinner.style.display = 'none';\r\n                  loading.style.display = 'none';\r\n              }\r\n          }\r\n  \r\n          showPostsSection(show) {\r\n              const postsSection = document.getElementById('postsSection');\r\n              postsSection.style.display = show ? 'block' : 'none';\r\n          }\r\n  \r\n          showError(message) {\r\n              const errorContainer = document.getElementById('errorMessage');\r\n              errorContainer.textContent = message;\r\n              errorContainer.style.display = 'block';\r\n              setTimeout(() => {\r\n                  errorContainer.style.display = 'none';\r\n              }, 8000);\r\n          }\r\n  \r\n          clearError() {\r\n              document.getElementById('errorMessage').style.display = 'none';\r\n          }\r\n  \r\n          formatNumber(num) {\r\n              if (num >= 1000000) {\r\n                  return (num \/ 1000000).toFixed(1) + 'M';\r\n              } else if (num >= 1000) {\r\n                  return (num \/ 1000).toFixed(1) + 'K';\r\n              }\r\n              return num.toString();\r\n          }\r\n  \r\n          formatDate(timestamp) {\r\n              return new Date(timestamp * 1000).toLocaleDateString('en-US', {\r\n                  year: 'numeric',\r\n                  month: 'short',\r\n                  day: 'numeric'\r\n              });\r\n          }\r\n  \r\n          formatDuration(seconds) {\r\n              const mins = Math.floor(seconds \/ 60);\r\n              const secs = seconds % 60;\r\n              return `${mins}:${secs.toString().padStart(2, '0')}`;\r\n          }\r\n  \r\n          truncateText(text, maxLength) {\r\n              if (text.length <= maxLength) return text;\r\n              return text.substring(0, maxLength) + '...';\r\n          }\r\n  \r\n          sanitizeFilename(filename) {\r\n              return filename.replace(\/[^a-z0-9]\/gi, '_').toLowerCase();\r\n          }\r\n      }\r\n  \r\n      \/\/ Global function for cancel download\r\n      function cancelDownload() {\r\n          redditExplorer.cancelDownload();\r\n      }\r\n  \r\n      \/\/ Initialize the app\r\n      const redditExplorer = new RedditUserExplorerPro();\r\n    <\/script>\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    \r\n    <!-- Vvveb Common Js -->\r\n    <script id=\"popper-js\" src=\"..\/js\/popper.min.js\"><\/script>\r\n    <!-- <script src=\"\/js\/bootstrap.min.js\"><\/script> -->\r\n    <!-- <script src=\"\/js\/bootstrap.bundle.min.js\"><\/script> -->\r\n    <script id=\"bootstrap-js\" src=\"..\/js\/bootstrap.min.js\"><\/script>\r\n    <!-- Vvveb Ajax Common Js -->\r\n    <script id=\"app-js\" src=\"..\/js\/app.js\"><\/script>\r\n  \r\n    <!-- Animation -->\r\n  \r\n    <link rel=\"stylesheet\" href=\"..\/js\/aos.css\">\r\n    <noscript>\r\n      <style type=\"text\/css\">\r\n        [data-aos] {\r\n          opacity: 1 !important;\r\n          transform: translate(0) scale(1) !important;\r\n        }\r\n      <\/style>\r\n    <\/noscript>\r\n  \r\n    <script src=\"..\/js\/aos.js\"><\/script>\r\n    <script src=\"..\/js\/theme.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>\r\n  \r\n  <grammarly-desktop-integration data-grammarly-shadow-root=\"true\"><\/grammarly-desktop-integration><grammarly-desktop-integration data-grammarly-shadow-root=\"true\"><\/grammarly-desktop-integration>\r\n  <script defer=\"\" src=\"https:\/\/static.cloudflareinsights.com\/beacon.min.js\/vcd15cbe7772f49c399c6a5babf22c1241717689176015\" integrity=\"sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==\" data-cf-beacon=\"{\"version\":\"2024.11.0\",\"token\":\"786b797d7952407aac48ed2776a3a826\",\"r\":1,\"server_timing\":{\"name\":{\"cfCacheStatus\":true,\"cfEdge\":true,\"cfExtPri\":true,\"cfL4\":true,\"cfOrigin\":true,\"cfSpeedBrain\":true},\"location_startswith\":null}}\" crossorigin=\"anonymous\"><\/script>\r\n  <script defer=\"\" src=\"https:\/\/static.cloudflareinsights.com\/beacon.min.js\/v8c78df7c7c0f484497ecbca7046644da1771523124516\" integrity=\"sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==\" data-cf-beacon=\"{\"version\":\"2024.11.0\",\"token\":\"786b797d7952407aac48ed2776a3a826\",\"r\":1,\"server_timing\":{\"name\":{\"cfCacheStatus\":true,\"cfEdge\":true,\"cfExtPri\":true,\"cfL4\":true,\"cfOrigin\":true,\"cfSpeedBrain\":true},\"location_startswith\":null}}\" crossorigin=\"anonymous\"><\/script>\r\n  \n","protected":false},"author":1,"featured_media":0,"parent":264,"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-254","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/254","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\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/comments?post=254"}],"version-history":[{"count":5,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/254\/revisions"}],"predecessor-version":[{"id":583,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/254\/revisions\/583"}],"up":[{"embeddable":true,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/264"}],"wp:attachment":[{"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/media?parent=254"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}