{"id":488,"date":"2026-03-28T00:00:32","date_gmt":"2026-03-28T00:00:32","guid":{"rendered":"https:\/\/viewanonymous.com\/?page_id=488"},"modified":"2026-03-31T08:36:46","modified_gmt":"2026-03-31T08:36:46","slug":"title","status":"publish","type":"page","link":"https:\/\/viewanonymous.com\/tools\/youtube\/title\/","title":{"rendered":"YouTube Title Viewer &#8211; View Any Video Title 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    \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&family=Varela+Round:wght@400;500;600;700&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    <style>\r\n        html:not(.aos-init) [data-aos] {\r\n            opacity: 1 !important;\r\n            transform: none !important;\r\n            pointer-events: auto !important;\r\n        }\r\n    <\/style>\r\n    <!-- Font Awesome CSS -->\r\n    <link href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/5.15.3\/css\/all.min.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            --yydv-primary-color: #9170ff;\r\n            --yydv-secondary-color: #b99cff;\r\n            --yydv-dark-color: #111111;\r\n            --yydv-light-color: #FFFFFF;\r\n            --yydv-gray-color: #f3efff;\r\n            --yydv-primary-hover: #7d5af0;\r\n            --yydv-secondary-hover: #a884ff;\r\n            --yydv-section-padding: 100px 0;\r\n        }\r\n\r\n\/*         body {\r\n            font-family: 'Varela Round', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n            scroll-behavior: smooth;\r\n            overflow-x: hidden;\r\n            background-color: var(--yydv-light-color);\r\n            color: var(--yydv-dark-color);\r\n        }\r\n\r\n        h1,\r\n        h2,\r\n        h3,\r\n        h4,\r\n        h5,\r\n        h6 {\r\n            font-family: 'Space Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;\r\n            font-weight: bold;\r\n        } *\/\r\n\r\n        \/* YouTube-style Hero Section *\/\r\n        .yydv-hero-section {\r\n            padding: var(--yydv-section-padding);\r\n            text-align: center;\r\n            background-color: var(--yydv-light-color);\r\n        }\r\n\r\n        .yydv-hero-content {\r\n            position: relative;\r\n            z-index: 1;\r\n        }\r\n\r\n        .yydv-hero-section h1 {\r\n            font-size: 3.5rem;\r\n            font-weight: 700;\r\n            margin-bottom: 1.5rem;\r\n            color: var(--yydv-dark-color);\r\n        }\r\n\r\n        .yydv-hero-section h1 .logo-purple {\r\n            color: var(--yydv-primary-color);\r\n        }\r\n\r\n        .yydv-hero-section p {\r\n            font-size: 1.25rem;\r\n            max-width: 700px;\r\n            margin: 0 auto 2rem;\r\n            opacity: 0.9;\r\n            font-weight: 300;\r\n            color: #666;\r\n        }\r\n\r\n        \/* Work Process Section with YouTube Colors *\/\r\n        .yydv-work-process-section {\r\n            padding: var(--yydv-section-padding);\r\n            background: linear-gradient(135deg, #9170ff 0%, #6b4fd6 55%, #5b43c9 100%);\r\n            color: white;\r\n            position: relative;\r\n            overflow: hidden;\r\n        }\r\n\r\n        .yydv-work-process-section::before {\r\n            content: '';\r\n            position: absolute;\r\n            top: 0;\r\n            left: 0;\r\n            width: 100%;\r\n            height: 100%;\r\n            background: rgba(0, 0, 0, 0.05);\r\n        }\r\n\r\n        .yydv-work-process-content {\r\n            position: relative;\r\n            z-index: 1;\r\n        }\r\n\r\n        .yydv-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        .yydv-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        .yydv-step-number {\r\n            width: 60px;\r\n            height: 60px;\r\n            background: white;\r\n            color: var(--yydv-primary-color);\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        .yydv-features-section {\r\n            padding: var(--yydv-section-padding);\r\n            background: white;\r\n        }\r\n\r\n        .yydv-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        .yydv-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: var(--yydv-primary-color);\r\n            transition: all 0.3s ease;\r\n        }\r\n\r\n        .yydv-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        .yydv-feature-card:hover::before {\r\n            width: 100%;\r\n            opacity: 0.1;\r\n        }\r\n\r\n        .yydv-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: var(--yydv-primary-color);\r\n            color: white;\r\n            font-size: 1.8rem;\r\n            transition: all 0.3s ease;\r\n        }\r\n\r\n        .yydv-feature-card:hover .yydv-feature-icon {\r\n            transform: rotate(15deg) scale(1.1);\r\n            background: var(--yydv-primary-hover);\r\n        }\r\n\r\n        \/* Why Choose Section *\/\r\n        .yydv-why-choose-section {\r\n            padding: var(--yydv-section-padding);\r\n            background: #faf8ff;\r\n        }\r\n\r\n        .yydv-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        .yydv-why-choose-image:hover {\r\n            transform: perspective(1000px) rotateY(0deg);\r\n        }\r\n\r\n        .yydv-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        .yydv-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        .yydv-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: var(--yydv-primary-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        .yydv-faq-section {\r\n            padding: var(--yydv-section-padding);\r\n            background: white;\r\n        }\r\n\r\n        .yydv-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        .yydv-accordion-button {\r\n            font-weight: 600;\r\n            color: var(--yydv-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        .yydv-accordion-button:not(.collapsed) {\r\n            background: white;\r\n            color: var(--yydv-primary-color);\r\n            box-shadow: none;\r\n        }\r\n\r\n        .yydv-accordion-button:focus {\r\n            box-shadow: none;\r\n            border-color: rgba(145, 112, 255, 0.45);\r\n        }\r\n\r\n        .yydv-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='%239170ff'%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        .yydv-accordion-body {\r\n            padding: 25px;\r\n            color: #666;\r\n        }\r\n\r\n        \/* Section Titles *\/\r\n        .yydv-section-title {\r\n            font-weight: 700;\r\n            color: var(--yydv-dark-color);\r\n            margin-bottom: 1.5rem;\r\n            position: relative;\r\n            display: inline-block;\r\n        }\r\n\r\n        .yydv-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: var(--yydv-primary-color);\r\n            border-radius: 2px;\r\n        }\r\n\r\n        .yydv-light-title {\r\n            color: white;\r\n        }\r\n\r\n        .yydv-light-title::after {\r\n            background: white;\r\n        }\r\n\r\n        .yydv-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        .yydv-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                --yydv-section-padding: 80px 0;\r\n            }\r\n\r\n            .yydv-hero-section h1 {\r\n                font-size: 2.8rem;\r\n            }\r\n\r\n            .yydv-process-step::before {\r\n                display: none;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 767px) {\r\n            :root {\r\n                --yydv-section-padding: 70px 0;\r\n            }\r\n\r\n            .yydv-hero-section {\r\n                padding: 100px 0 60px;\r\n            }\r\n\r\n            .yydv-hero-section h1 {\r\n                font-size: 2.2rem;\r\n            }\r\n\r\n            .yydv-hero-section p {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yydv-section-title {\r\n                font-size: 1.8rem;\r\n            }\r\n        }\r\n\r\n        \/* Animation *\/\r\n        @keyframes yydv-float {\r\n            0% {\r\n                transform: translateY(0px);\r\n            }\r\n\r\n            50% {\r\n                transform: translateY(-15px);\r\n            }\r\n\r\n            100% {\r\n                transform: translateY(0px);\r\n            }\r\n        }\r\n\r\n        .yydv-floating-element {\r\n            animation: yydv-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: var(--yydv-primary-color);\r\n            border-radius: 10px;\r\n        }\r\n\r\n        ::-webkit-scrollbar-thumb:hover {\r\n            background: var(--yydv-primary-hover);\r\n        }\r\n\r\n\r\n    <\/style>\r\n    <!-- tools -->\r\n    <style>\r\n        \/* Box model for YouTube tool wrapper only \u2014 global * reset breaks page sections *\/\r\n        .yttv-wrapper,\r\n        .yttv-wrapper * {\r\n            box-sizing: border-box;\r\n        }\r\n\r\n        .ytdv-container {\r\n            max-width: 900px;\r\n            margin: 0 auto;\r\n            padding: 20px;\r\n        }\r\n\r\n        \/* Header *\/\r\n        .ytdv-header {\r\n            text-align: center;\r\n            margin-bottom: 40px;\r\n            padding: 30px 0;\r\n        }\r\n\r\n        .ytdv-logo-container {\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            gap: 15px;\r\n            margin-bottom: 20px;\r\n        }\r\n\r\n        .ytdv-logo {\r\n            width: 50px;\r\n            height: 50px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 12px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            box-shadow: 0 8px 25px rgba(145, 112, 255, 0.35);\r\n        }\r\n\r\n        .ytdv-youtube-icon {\r\n            width: 28px;\r\n            height: 28px;\r\n            fill: white;\r\n        }\r\n\r\n        .ytdv-title {\r\n            font-size: 2.2rem;\r\n            font-weight: 800;\r\n            background: linear-gradient(135deg, #ffffff, #f1f2f6);\r\n            -webkit-background-clip: text;\r\n            -webkit-text-fill-color: transparent;\r\n            background-clip: text;\r\n            margin-bottom: 8px;\r\n        }\r\n\r\n        .ytdv-subtitle {\r\n            font-size: 1rem;\r\n            color: rgba(255, 255, 255, 0.8);\r\n            font-weight: 500;\r\n        }\r\n\r\n        \/* Input Section *\/\r\n        .ytdv-input-section {\r\n            background: rgba(255, 255, 255, 0.1);\r\n            backdrop-filter: blur(20px);\r\n            border-radius: 20px;\r\n            padding: 30px;\r\n            margin-bottom: 30px;\r\n            border: 1px solid rgba(255, 255, 255, 0.2);\r\n            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);\r\n        }\r\n\r\n        .ytdv-input-title {\r\n            font-size: 1.3rem;\r\n            font-weight: 700;\r\n            color: white;\r\n            margin-bottom: 15px;\r\n            text-align: center;\r\n        }\r\n\r\n        .ytdv-input-group {\r\n            display: flex;\r\n            gap: 12px;\r\n            margin-bottom: 20px;\r\n        }\r\n\r\n        .ytdv-input-field {\r\n            flex: 1;\r\n            padding: 14px 18px;\r\n            border: 2px solid rgba(255, 255, 255, 0.2);\r\n            border-radius: 12px;\r\n            background: rgba(255, 255, 255, 0.1);\r\n            color: #ffffff;\r\n            font-size: 14px;\r\n            font-weight: 500;\r\n            transition: all 0.3s ease;\r\n            font-family: 'Inter', sans-serif;\r\n        }\r\n\r\n        .ytdv-input-field:focus {\r\n            outline: none;\r\n            border-color: #9170ff;\r\n            background: rgba(255, 255, 255, 0.15);\r\n        }\r\n\r\n        .ytdv-input-field::placeholder {\r\n            color: rgba(255, 255, 255, 0.6);\r\n        }\r\n\r\n        .ytdv-btn {\r\n            padding: 14px 20px;\r\n            border: none;\r\n            border-radius: 12px;\r\n            font-size: 14px;\r\n            font-weight: 600;\r\n            cursor: pointer;\r\n            transition: all 0.3s ease;\r\n            font-family: 'Inter', sans-serif;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n        }\r\n\r\n        .ytdv-btn-paste {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            box-shadow: 0 4px 15px rgba(145, 112, 255, 0.3);\r\n        }\r\n\r\n        .ytdv-btn-paste:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(145, 112, 255, 0.4);\r\n        }\r\n\r\n        .ytdv-btn-find {\r\n            background: linear-gradient(135deg, #b99cff, #9170ff);\r\n            color: white;\r\n            width: 100%;\r\n            justify-content: center;\r\n            padding: 16px;\r\n            font-size: 16px;\r\n            font-weight: 700;\r\n            box-shadow: 0 4px 15px rgba(185, 156, 255, 0.3);\r\n        }\r\n\r\n        .ytdv-btn-find:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(185, 156, 255, 0.4);\r\n        }\r\n\r\n        .ytdv-btn:disabled {\r\n            opacity: 0.6;\r\n            cursor: not-allowed;\r\n            transform: none !important;\r\n        }\r\n\r\n        .ytdv-btn-icon {\r\n            width: 16px;\r\n            height: 16px;\r\n            fill: currentColor;\r\n        }\r\n\r\n        \/* Loading *\/\r\n        .ytdv-loading {\r\n            display: none;\r\n            text-align: center;\r\n            padding: 40px;\r\n            background: rgba(255, 255, 255, 0.1);\r\n            backdrop-filter: blur(20px);\r\n            border-radius: 20px;\r\n            margin-bottom: 30px;\r\n            border: 1px solid rgba(255, 255, 255, 0.2);\r\n        }\r\n\r\n        .ytdv-loading-spinner {\r\n            width: 40px;\r\n            height: 40px;\r\n            border: 3px solid rgba(255, 255, 255, 0.3);\r\n            border-top: 3px solid #b99cff;\r\n            border-radius: 50%;\r\n            animation: ytdv-spin 1s linear infinite;\r\n            margin: 0 auto 20px;\r\n        }\r\n\r\n        .ytdv-loading-text {\r\n            font-size: 1.1rem;\r\n            font-weight: 600;\r\n            color: white;\r\n        }\r\n\r\n        \/* Results *\/\r\n        .ytdv-results {\r\n            display: none;\r\n        }\r\n\r\n        .ytdv-video-card {\r\n            background: #ffffff;\r\n            border-radius: 20px;\r\n            border: 2px solid rgba(145, 112, 255, 0.22);\r\n            overflow: hidden;\r\n            box-shadow: 0 8px 28px rgba(145, 112, 255, 0.12);\r\n        }\r\n\r\n        \/* Video Header *\/\r\n        .ytdv-video-header {\r\n            padding: 25px;\r\n            display: grid;\r\n            grid-template-columns: 1fr;\r\n            gap: 20px;\r\n        }\r\n\r\n        @media (min-width: 768px) {\r\n            .ytdv-video-header {\r\n                grid-template-columns: 300px 1fr;\r\n            }\r\n        }\r\n\r\n        .ytdv-thumbnail-container {\r\n            position: relative;\r\n            border-radius: 12px;\r\n            overflow: hidden;\r\n            aspect-ratio: 16\/9;\r\n            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);\r\n        }\r\n\r\n        .ytdv-thumbnail {\r\n            width: 100%;\r\n            height: 100%;\r\n            object-fit: cover;\r\n        }\r\n\r\n        .ytdv-video-info h2 {\r\n            font-size: 1.4rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 15px;\r\n            line-height: 1.3;\r\n        }\r\n\r\n        .ytdv-channel-info {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n            padding: 15px;\r\n            background: #f5f2ff;\r\n            border-radius: 12px;\r\n            margin-bottom: 20px;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        .ytdv-channel-avatar {\r\n            width: 40px;\r\n            height: 40px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 10px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .ytdv-channel-icon {\r\n            width: 20px;\r\n            height: 20px;\r\n            fill: white;\r\n        }\r\n\r\n        .ytdv-channel-details h3 {\r\n            font-size: 1rem;\r\n            font-weight: 600;\r\n            color: #111111;\r\n            margin-bottom: 2px;\r\n        }\r\n\r\n        .ytdv-channel-link {\r\n            color: #9170ff;\r\n            text-decoration: none;\r\n            font-weight: 600;\r\n        }\r\n\r\n        .ytdv-channel-link:hover {\r\n            color: #6b4fd6;\r\n        }\r\n\r\n        .ytdv-verified-text {\r\n            color: #666666;\r\n            font-size: 0.85rem;\r\n        }\r\n\r\n        \/* Stats Grid *\/\r\n        .ytdv-stats-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\r\n            gap: 15px;\r\n        }\r\n\r\n        .ytdv-stat-card {\r\n            background: #faf8ff;\r\n            border-radius: 12px;\r\n            padding: 15px;\r\n            text-align: center;\r\n            border: 1px solid rgba(145, 112, 255, 0.22);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .ytdv-stat-card:hover {\r\n            transform: translateY(-3px);\r\n        }\r\n\r\n        .ytdv-stat-icon {\r\n            width: 24px;\r\n            height: 24px;\r\n            margin: 0 auto 8px;\r\n            padding: 6px;\r\n            border-radius: 8px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .ytdv-stat-card.ytdv-views .ytdv-stat-icon {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n        }\r\n\r\n        .ytdv-stat-card.ytdv-likes .ytdv-stat-icon {\r\n            background: linear-gradient(135deg, #b99cff, #9170ff);\r\n        }\r\n\r\n        .ytdv-stat-card.ytdv-published .ytdv-stat-icon {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n        }\r\n\r\n        .ytdv-stat-icon svg {\r\n            width: 12px;\r\n            height: 12px;\r\n            fill: white;\r\n        }\r\n\r\n        .ytdv-stat-label {\r\n            font-size: 0.75rem;\r\n            color: #666666;\r\n            font-weight: 500;\r\n            text-transform: uppercase;\r\n            letter-spacing: 0.5px;\r\n            margin-bottom: 4px;\r\n        }\r\n\r\n        .ytdv-stat-value {\r\n            font-size: 1.1rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n        }\r\n\r\n        \/* Description Section *\/\r\n        .ytdv-description-section {\r\n            padding: 25px;\r\n            background: #faf8ff;\r\n            border-top: 1px solid rgba(145, 112, 255, 0.15);\r\n        }\r\n\r\n        .ytdv-section-header {\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: space-between;\r\n            margin-bottom: 20px;\r\n            flex-wrap: wrap;\r\n            gap: 15px;\r\n        }\r\n\r\n        .ytdv-section-title {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n        }\r\n\r\n        .ytdv-section-icon {\r\n            width: 40px;\r\n            height: 40px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 10px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .ytdv-section-icon svg {\r\n            width: 20px;\r\n            height: 20px;\r\n            fill: white;\r\n        }\r\n\r\n        .ytdv-section-title-text h3 {\r\n            font-size: 1.2rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 2px;\r\n        }\r\n\r\n        .ytdv-section-title-text p {\r\n            font-size: 0.85rem;\r\n            color: #666666;\r\n        }\r\n\r\n        .ytdv-copy-btn {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            border: none;\r\n            padding: 10px 16px;\r\n            border-radius: 10px;\r\n            cursor: pointer;\r\n            font-weight: 600;\r\n            font-size: 0.9rem;\r\n            transition: all 0.3s ease;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n        }\r\n\r\n        .ytdv-copy-btn:hover {\r\n            transform: translateY(-2px);\r\n        }\r\n\r\n        .ytdv-copy-btn.ytdv-copied {\r\n            background: linear-gradient(135deg, #6b4fd6, #b99cff);\r\n        }\r\n\r\n        .ytdv-copy-icon {\r\n            width: 14px;\r\n            height: 14px;\r\n            fill: currentColor;\r\n        }\r\n\r\n        .ytdv-description-content {\r\n            background: #ffffff;\r\n            padding: 20px;\r\n            border-radius: 12px;\r\n            border-left: 4px solid #9170ff;\r\n            color: #333333;\r\n            line-height: 1.6;\r\n            font-size: 0.9rem;\r\n            white-space: pre-wrap;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        \/* Captions Section *\/\r\n        .ytdv-captions-section {\r\n            padding: 25px;\r\n            background: #ffffff;\r\n            border-top: 1px solid rgba(145, 112, 255, 0.15);\r\n        }\r\n\r\n        .ytdv-captions-icon {\r\n            background: linear-gradient(135deg, #b99cff, #9170ff);\r\n        }\r\n\r\n        .ytdv-captions-content {\r\n            background: #faf8ff;\r\n            padding: 20px;\r\n            border-radius: 12px;\r\n            border-left: 4px solid #9170ff;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        .ytdv-caption-item {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n            margin-bottom: 10px;\r\n            font-size: 0.9rem;\r\n        }\r\n\r\n        .ytdv-caption-dot {\r\n            width: 8px;\r\n            height: 8px;\r\n            background: #9170ff;\r\n            border-radius: 50%;\r\n        }\r\n\r\n        .ytdv-caption-label {\r\n            color: #9170ff;\r\n            font-weight: 600;\r\n        }\r\n\r\n        .ytdv-caption-value {\r\n            color: #333333;\r\n        }\r\n\r\n        \/* Error State *\/\r\n        .ytdv-error {\r\n            background: rgba(255, 107, 107, 0.1);\r\n            backdrop-filter: blur(20px);\r\n            border-radius: 20px;\r\n            padding: 30px;\r\n            border: 1px solid rgba(255, 107, 107, 0.2);\r\n            text-align: center;\r\n            margin-bottom: 30px;\r\n        }\r\n\r\n        .ytdv-error-icon {\r\n            font-size: 3rem;\r\n            margin-bottom: 15px;\r\n        }\r\n\r\n        .ytdv-error h3 {\r\n            font-size: 1.3rem;\r\n            font-weight: 700;\r\n            color: #ff6b6b;\r\n            margin-bottom: 10px;\r\n        }\r\n\r\n        .ytdv-error p {\r\n            font-size: 0.95rem;\r\n            color: rgba(255, 107, 107, 0.8);\r\n            margin-bottom: 8px;\r\n        }\r\n\r\n        .ytdv-error .ytdv-error-details {\r\n            color: #666666;\r\n            font-size: 0.85rem;\r\n        }\r\n\r\n        \/* Features Grid *\/\r\n        .ytdv-features-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\r\n            gap: 15px;\r\n            margin-bottom: 30px;\r\n        }\r\n\r\n        .ytdv-feature-card {\r\n            background: #faf8ff;\r\n            border-radius: 12px;\r\n            padding: 20px;\r\n            text-align: center;\r\n            border: 1px solid rgba(145, 112, 255, 0.22);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .ytdv-feature-card:hover {\r\n            transform: translateY(-5px);\r\n        }\r\n\r\n        .ytdv-feature-icon {\r\n            font-size: 1.8rem;\r\n            margin-bottom: 8px;\r\n            display: block;\r\n        }\r\n\r\n        .ytdv-feature-text {\r\n            font-size: 0.85rem;\r\n            font-weight: 600;\r\n            color: #111111;\r\n        }\r\n\r\n        \/* Animations *\/\r\n        @keyframes ytdv-spin {\r\n            to {\r\n                transform: rotate(360deg);\r\n            }\r\n        }\r\n\r\n        \/* \r\n       * FIX: Custom Scrollbar styles are returned to global scope.\r\n       * Prefixing them with an ID prevents them from applying to the main\r\n       * document scrollbar. This change makes them work as intended again.\r\n       *\/\r\n        ::-webkit-scrollbar {\r\n            width: 6px;\r\n        }\r\n\r\n        ::-webkit-scrollbar-track {\r\n            background: rgba(255, 255, 255, 0.1);\r\n            border-radius: 3px;\r\n        }\r\n\r\n        ::-webkit-scrollbar-thumb {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 3px;\r\n        }\r\n\r\n        \/* Responsive *\/\r\n        @media (max-width: 768px) {\r\n            .ytdv-container {\r\n                padding: 15px;\r\n            }\r\n\r\n            .ytdv-title {\r\n                font-size: 1.8rem;\r\n            }\r\n\r\n            .ytdv-input-group {\r\n                flex-direction: column;\r\n            }\r\n\r\n            .ytdv-input-section,\r\n            .ytdv-loading,\r\n            .ytdv-error {\r\n                padding: 20px;\r\n            }\r\n\r\n            .ytdv-video-header,\r\n            .ytdv-description-section,\r\n            .ytdv-captions-section {\r\n                padding: 20px;\r\n            }\r\n\r\n            .ytdv-section-header {\r\n                flex-direction: column;\r\n                align-items: flex-start;\r\n            }\r\n        }\r\n\r\n        \/* Search Again Button *\/\r\n        .ytdv-search-again-section {\r\n            padding: 25px;\r\n            background: rgba(255, 255, 255, 0.05);\r\n            border-top: 1px solid rgba(255, 255, 255, 0.1);\r\n            text-align: center;\r\n        }\r\n\r\n        .ytdv-btn-search-again {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            border: none;\r\n            padding: 14px 24px;\r\n            border-radius: 12px;\r\n            cursor: pointer;\r\n            font-weight: 600;\r\n            font-size: 1rem;\r\n            transition: all 0.3s ease;\r\n            display: inline-flex;\r\n            align-items: center;\r\n            gap: 10px;\r\n            box-shadow: 0 4px 15px rgba(145, 112, 255, 0.3);\r\n        }\r\n\r\n        .ytdv-btn-search-again:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(145, 112, 255, 0.4);\r\n        }\r\n\r\n        .ytdv-search-again-icon {\r\n            width: 16px;\r\n            height: 16px;\r\n            fill: currentColor;\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\r\n\r\n    <!-- youtube tools start here -->\r\n\r\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\">\r\n    <style>\r\n        \/* \r\n         * FIX: Restored the global reset. This is crucial for removing the default\r\n         * body margin that was breaking the full-page background. This is a\r\n         * common and safe reset.\r\n         *\/\r\n        .yttv-wrapper * {\r\n            box-sizing: border-box;\r\n        }\r\n\r\n        \/* \r\n         * The main wrapper styles for encapsulation,\r\n         * ensuring the background and font settings don't leak globally\r\n         * beyond the component itself.\r\n         *\/\r\n        .yttv-wrapper {\r\n            font-family: 'Varela Round', 'Inter', sans-serif;\r\n            background: #ffffff;\r\n            color: #111111;\r\n            min-height: 100vh;\r\n            line-height: 1.5;\r\n            font-size: 1rem;\r\n            font-weight: 400;\r\n            margin-top: 3rem;\r\n            position: relative;\r\n            overflow-x: hidden;\r\n        }\r\n\r\n        .yttv-wrapper::before {\r\n            content: '';\r\n            position: absolute;\r\n            inset: 0;\r\n            background:\r\n                radial-gradient(circle at 18% 22%, rgba(145, 112, 255, 0.1) 0%, transparent 45%),\r\n                radial-gradient(circle at 82% 78%, rgba(145, 112, 255, 0.07) 0%, transparent 48%);\r\n            pointer-events: none;\r\n            z-index: 0;\r\n        }\r\n\r\n        .yttv-container {\r\n            max-width: 60%;\r\n            margin: 0 auto;\r\n            padding: 20px;\r\n            position: relative;\r\n            z-index: 1;\r\n        }\r\n\r\n        \/* Header *\/\r\n        .yttv-header {\r\n            text-align: center;\r\n            margin-bottom: 40px;\r\n            padding: 30px 0;\r\n        }\r\n\r\n        .yttv-logo-container {\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            gap: 15px;\r\n            margin-bottom: 20px;\r\n        }\r\n\r\n        .yttv-logo {\r\n            width: 50px;\r\n            height: 50px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 12px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            box-shadow: 0 8px 25px rgba(145, 112, 255, 0.35);\r\n            border: 2px solid rgba(145, 112, 255, 0.3);\r\n        }\r\n\r\n        .yttv-youtube-icon {\r\n            width: 28px;\r\n            height: 28px;\r\n            fill: white;\r\n        }\r\n\r\n        .yttv-title {\r\n            font-size: 2.2rem;\r\n            font-weight: 800;\r\n            color: #111111;\r\n            -webkit-text-fill-color: #111111;\r\n            margin-bottom: 8px;\r\n        }\r\n\r\n        .yttv-title .logo-purple {\r\n            color: #9170ff;\r\n            -webkit-text-fill-color: #9170ff;\r\n        }\r\n\r\n        .yttv-subtitle {\r\n            font-size: 1rem;\r\n            color: #555555;\r\n            font-weight: 500;\r\n        }\r\n\r\n        \/* Input Section *\/\r\n        .yttv-input-section {\r\n            background: #ffffff;\r\n            border-radius: 20px;\r\n            padding: 30px;\r\n            margin-bottom: 30px;\r\n            border: 2px solid rgba(145, 112, 255, 0.28);\r\n            box-shadow: 0 8px 28px rgba(145, 112, 255, 0.12);\r\n        }\r\n\r\n        .yttv-input-title {\r\n            font-size: 1.3rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 15px;\r\n            text-align: center;\r\n        }\r\n\r\n        .yttv-input-group {\r\n            display: flex;\r\n            gap: 12px;\r\n            margin-bottom: 20px;\r\n        }\r\n\r\n     .yttv-input-field {\r\n\tflex: 1 !important;\r\n\tpadding: 14px 18px !important;\r\n\tborder: 2px solid rgba(145, 112, 255, 0.35) !important;\r\n\tborder-radius: 12px !important;\r\n\tbackground: #ffffff !important;\r\n\tcolor: #111111 !important;\r\n\tfont-size: 14px !important;\r\n\tfont-weight: 500 !important;\r\n\ttransition: all 0.3s ease !important;\r\n\tfont-family: 'Inter', sans-serif !important;\r\n}\r\n\r\n        .yttv-input-field:focus {\r\n            outline: none !important;\r\n            border-color: #9170ff !important;\r\n            box-shadow: 0 0 0 4px rgba(145, 112, 255, 0.15) !important;\r\n        }\r\n\r\n        .yttv-input-field::placeholder {\r\n            color: #666666 !important;\r\n        }\r\n\r\n        .yttv-btn {\r\n            padding: 14px 20px;\r\n            border: none;\r\n            border-radius: 12px;\r\n            font-size: 14px;\r\n            font-weight: 600;\r\n            cursor: pointer;\r\n            transition: all 0.3s ease;\r\n            font-family: 'Inter', sans-serif;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n        }\r\n\r\n        .yttv-btn-paste {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            box-shadow: 0 4px 15px rgba(145, 112, 255, 0.35);\r\n        }\r\n\r\n        .yttv-btn-paste:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(145, 112, 255, 0.4);\r\n        }\r\n\r\n     .yttv-btn-find {\r\n\tbackground: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n\tcolor: white;\r\n\twidth: 100%;\r\n\tjustify-content: center;\r\n\tpadding: 16px;\r\n\tfont-size: 16px;\r\n\tfont-weight: 700;\r\n\tbox-shadow: 0 4px 15px rgba(145, 112, 255, 0.35);\r\n}\r\n\r\n        .yttv-btn-find:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(185, 156, 255, 0.4);\r\n        }\r\n\r\n        .yttv-btn:disabled {\r\n            opacity: 0.6;\r\n            cursor: not-allowed;\r\n            transform: none !important;\r\n        }\r\n\r\n        .yttv-btn-icon {\r\n            width: 16px;\r\n            height: 16px;\r\n            fill: currentColor;\r\n        }\r\n\r\n        \/* Loading *\/\r\n        .yttv-loading {\r\n            display: none;\r\n            text-align: center;\r\n            padding: 40px;\r\n            background: #ffffff;\r\n            border-radius: 20px;\r\n            margin-bottom: 30px;\r\n            border: 2px solid rgba(145, 112, 255, 0.22);\r\n            box-shadow: 0 8px 28px rgba(145, 112, 255, 0.1);\r\n        }\r\n\r\n        .yttv-loading-spinner {\r\n            width: 40px;\r\n            height: 40px;\r\n            border: 3px solid rgba(255, 255, 255, 0.3);\r\n            border-top: 3px solid #b99cff;\r\n            border-radius: 50%;\r\n            animation: yttv-spin 1s linear infinite;\r\n            margin: 0 auto 20px;\r\n        }\r\n\r\n        .yttv-loading-text {\r\n            font-size: 1.1rem;\r\n            font-weight: 600;\r\n            color: #111111;\r\n        }\r\n\r\n        \/* Results *\/\r\n        .yttv-results {\r\n            display: none;\r\n        }\r\n\r\n        .yttv-video-card {\r\n            background: #ffffff;\r\n            border-radius: 20px;\r\n            border: 2px solid rgba(145, 112, 255, 0.22);\r\n            overflow: hidden;\r\n            box-shadow: 0 8px 28px rgba(145, 112, 255, 0.12);\r\n        }\r\n\r\n        \/* Video Header *\/\r\n        .yttv-video-header {\r\n            padding: 25px;\r\n            display: flex;\r\n            flex-direction: column;\r\n            gap: 20px;\r\n        }\r\n\r\n        .yttv-thumbnail-container {\r\n            position: relative;\r\n            border-radius: 12px;\r\n            overflow: hidden;\r\n            aspect-ratio: 16\/9;\r\n            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);\r\n        }\r\n\r\n        .yttv-thumbnail {\r\n            width: 100%;\r\n            height: 100%;\r\n            object-fit: cover;\r\n        }\r\n\r\n        .yttv-video-info .yttv-video-title {\r\n            font-size: 1.4rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 15px;\r\n            line-height: 1.3;\r\n        }\r\n\r\n        .yttv-channel-info {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n            padding: 15px;\r\n            background: #f5f2ff;\r\n            border-radius: 12px;\r\n            margin-bottom: 20px;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        .yttv-channel-avatar {\r\n            width: 40px;\r\n            height: 40px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 10px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .yttv-channel-icon {\r\n            width: 20px;\r\n            height: 20px;\r\n            fill: white;\r\n        }\r\n\r\n        .yttv-channel-details .yttv-channel-name {\r\n            font-size: 1rem;\r\n            font-weight: 600;\r\n            color: #111111;\r\n            margin-bottom: 2px;\r\n        }\r\n\r\n        .yttv-channel-link {\r\n            color: #9170ff;\r\n            text-decoration: none;\r\n            font-weight: 600;\r\n        }\r\n\r\n        .yttv-channel-link:hover {\r\n            color: #6b4fd6;\r\n        }\r\n\r\n        .yttv-verified-text {\r\n            color: #666666;\r\n            font-size: 0.85rem;\r\n        }\r\n\r\n        \/* Stats Grid *\/\r\n        .yttv-stats-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\r\n            gap: 15px;\r\n        }\r\n\r\n        .yttv-stat-card {\r\n            background: #faf8ff;\r\n            border-radius: 12px;\r\n            padding: 15px;\r\n            text-align: center;\r\n            border: 1px solid rgba(145, 112, 255, 0.22);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .yttv-stat-card:hover {\r\n            transform: translateY(-3px);\r\n        }\r\n\r\n        .yttv-stat-icon {\r\n            width: 24px;\r\n            height: 24px;\r\n            margin: 0 auto 8px;\r\n            padding: 6px;\r\n            border-radius: 8px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .yttv-stat-card.yttv-views .yttv-stat-icon {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n        }\r\n\r\n        .yttv-stat-card.yttv-likes .yttv-stat-icon {\r\n            background: linear-gradient(135deg, #b99cff, #9170ff);\r\n        }\r\n\r\n        .yttv-stat-card.yttv-published .yttv-stat-icon {\r\n            background: linear-gradient(135deg, #7d5af0, #5b43c9);\r\n        }\r\n\r\n        .yttv-stat-icon svg {\r\n            width: 12px;\r\n            height: 12px;\r\n            fill: white;\r\n        }\r\n\r\n        .yttv-stat-label {\r\n            font-size: 0.75rem;\r\n            color: #666666;\r\n            font-weight: 500;\r\n            text-transform: uppercase;\r\n            letter-spacing: 0.5px;\r\n            margin-bottom: 4px;\r\n        }\r\n\r\n        .yttv-stat-value {\r\n            font-size: 1.1rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n        }\r\n\r\n        \/* Title Section *\/\r\n        .yttv-title-section {\r\n            padding: 25px;\r\n            background: #faf8ff;\r\n            border-top: 1px solid rgba(145, 112, 255, 0.15);\r\n        }\r\n\r\n        .yttv-section-header {\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: space-between;\r\n            margin-bottom: 20px;\r\n            flex-wrap: wrap;\r\n            gap: 15px;\r\n        }\r\n\r\n        .yttv-section-title {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n        }\r\n\r\n        .yttv-section-icon {\r\n            width: 40px;\r\n            height: 40px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 10px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .yttv-section-icon svg {\r\n            width: 20px;\r\n            height: 20px;\r\n            fill: white;\r\n        }\r\n\r\n        .yttv-section-title-text .yttv-section-title-heading {\r\n            font-size: 1.2rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 2px;\r\n        }\r\n\r\n        .yttv-section-title-text p {\r\n            font-size: 0.85rem;\r\n            color: #666666;\r\n        }\r\n\r\n        .yttv-copy-btn {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            border: none;\r\n            padding: 10px 16px;\r\n            border-radius: 10px;\r\n            cursor: pointer;\r\n            font-weight: 600;\r\n            font-size: 0.9rem;\r\n            transition: all 0.3s ease;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n        }\r\n\r\n        .yttv-copy-btn:hover {\r\n            transform: translateY(-2px);\r\n        }\r\n\r\n        .yttv-copy-btn.yttv-copied {\r\n            background: linear-gradient(135deg, #6b4fd6, #b99cff);\r\n        }\r\n\r\n        .yttv-copy-icon {\r\n            width: 14px;\r\n            height: 14px;\r\n            fill: currentColor;\r\n        }\r\n\r\n        .yttv-title-content {\r\n            background: #ffffff;\r\n            padding: 20px;\r\n            border-radius: 12px;\r\n            border-left: 4px solid #9170ff;\r\n            color: #333333;\r\n            line-height: 1.6;\r\n            font-size: 0.9rem;\r\n            white-space: pre-wrap;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        \/* Error State *\/\r\n        .yttv-error {\r\n            background: rgba(255, 107, 107, 0.1);\r\n            backdrop-filter: blur(20px);\r\n            border-radius: 20px;\r\n            padding: 30px;\r\n            border: 1px solid rgba(255, 107, 107, 0.2);\r\n            text-align: center;\r\n            margin-bottom: 30px;\r\n        }\r\n\r\n        .yttv-error-icon {\r\n            font-size: 3rem;\r\n            margin-bottom: 15px;\r\n        }\r\n\r\n        .yttv-error .yttv-error-title {\r\n            font-size: 1.3rem;\r\n            font-weight: 700;\r\n            color: #ff6b6b;\r\n            margin-bottom: 10px;\r\n        }\r\n\r\n        .yttv-error .yttv-error-message {\r\n            font-size: 0.95rem;\r\n            color: rgba(255, 107, 107, 0.8);\r\n            margin-bottom: 8px;\r\n        }\r\n\r\n        .yttv-error .yttv-error-details {\r\n            color: rgba(255, 255, 255, 0.7);\r\n            font-size: 0.85rem;\r\n        }\r\n\r\n        \/* Features Grid *\/\r\n        .yttv-features-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\r\n            gap: 15px;\r\n            margin-bottom: 30px;\r\n        }\r\n\r\n        .yttv-feature-card {\r\n            background: #faf8ff;\r\n            border-radius: 12px;\r\n            padding: 20px;\r\n            text-align: center;\r\n            border: 1px solid rgba(145, 112, 255, 0.22);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .yttv-feature-card:hover {\r\n            transform: translateY(-5px);\r\n        }\r\n\r\n        .yttv-feature-icon {\r\n            font-size: 1.8rem;\r\n            margin-bottom: 8px;\r\n            display: block;\r\n        }\r\n\r\n        .yttv-feature-text {\r\n            font-size: 0.85rem;\r\n            font-weight: 600;\r\n            color: #161414;\r\n        }\r\n\r\n        \/* Animations *\/\r\n        @keyframes yttv-spin {\r\n            to {\r\n                transform: rotate(360deg);\r\n            }\r\n        }\r\n\r\n        \/* \r\n         * FIX: Custom Scrollbar styles are scoped to wrapper.\r\n         * Prefixing them with wrapper class prevents them from applying to the main\r\n         * document scrollbar. This change makes them work as intended again.\r\n         *\/\r\n        .yttv-wrapper ::-webkit-scrollbar {\r\n            width: 6px;\r\n        }\r\n\r\n        .yttv-wrapper ::-webkit-scrollbar-track {\r\n            background: rgba(255, 255, 255, 0.1);\r\n            border-radius: 3px;\r\n        }\r\n\r\n        .yttv-wrapper ::-webkit-scrollbar-thumb {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 3px;\r\n        }\r\n\r\n        \/* Responsive *\/\r\n        @media (max-width: 768px) {\r\n            .yttv-container {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 1.8rem;\r\n            }\r\n\r\n            .yttv-input-group {\r\n                flex-direction: column;\r\n            }\r\n\r\n            .yttv-input-section,\r\n            .yttv-loading,\r\n            .yttv-error {\r\n                padding: 20px;\r\n            }\r\n\r\n            .yttv-video-header {\r\n                padding: 20px;\r\n            }\r\n        }\r\n\r\n        \/* Search Again Button *\/\r\n        .yttv-search-again-section {\r\n            padding: 25px;\r\n            background: #faf8ff;\r\n            border-top: 1px solid rgba(145, 112, 255, 0.15);\r\n            text-align: center;\r\n        }\r\n\r\n        .yttv-btn-search-again {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            border: none;\r\n            padding: 14px 24px;\r\n            border-radius: 12px;\r\n            cursor: pointer;\r\n            font-weight: 600;\r\n            font-size: 1rem;\r\n            transition: all 0.3s ease;\r\n            display: inline-flex;\r\n            align-items: center;\r\n            gap: 10px;\r\n            box-shadow: 0 4px 15px rgba(145, 112, 255, 0.35);\r\n        }\r\n\r\n        .yttv-btn-search-again:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(145, 112, 255, 0.4);\r\n        }\r\n\r\n        .yttv-search-again-icon {\r\n            width: 16px;\r\n            height: 16px;\r\n            fill: currentColor;\r\n        }\r\n      \r\n              @media (max-width: 991px) {\r\n            .yttv-container {\r\n                max-width: 720px;\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 2rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-input-section,\r\n            .yttv-loading,\r\n            .yttv-error {\r\n                padding: 25px;\r\n            }\r\n\r\n            .yttv-input-title {\r\n                font-size: 1.2rem;\r\n            }\r\n\r\n            .yttv-input-group {\r\n                flex-direction: column;\r\n                gap: 10px;\r\n            }\r\n\r\n            .yttv-btn {\r\n                width: 100%;\r\n                justify-content: center;\r\n            }\r\n\r\n            .yttv-video-header {\r\n                flex-direction: column;\r\n                padding: 20px;\r\n                gap: 15px;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 1.2rem;\r\n                margin-bottom: 10px;\r\n            }\r\n\r\n            .yttv-channel-info {\r\n                padding: 10px;\r\n                margin-bottom: 15px;\r\n            }\r\n\r\n            .yttv-channel-name {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-stats-grid {\r\n                grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));\r\n                gap: 10px;\r\n            }\r\n\r\n            .yttv-stat-card {\r\n                padding: 12px;\r\n            }\r\n\r\n            .yttv-stat-label {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-stat-value {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-section-header {\r\n                flex-direction: column;\r\n                align-items: flex-start;\r\n                gap: 10px;\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 1.1rem;\r\n            }\r\n\r\n            .yttv-copy-btn {\r\n                width: 100%;\r\n                justify-content: center;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                padding: 15px;\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-title {\r\n                font-size: 1.2rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-message {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-features-grid {\r\n                grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\r\n                gap: 10px;\r\n            }\r\n\r\n            .yttv-feature-card {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-feature-text {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-btn-search-again {\r\n                font-size: 0.9rem;\r\n                padding: 12px 20px;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 768px) {\r\n            .yttv-container {\r\n                max-width: 100%;\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 1.8rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-input-section,\r\n            .yttv-loading,\r\n            .yttv-error {\r\n                padding: 20px;\r\n            }\r\n\r\n            .yttv-input-title {\r\n                font-size: 1.1rem;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 1.1rem;\r\n            }\r\n\r\n            .yttv-stats-grid {\r\n                grid-template-columns: 1fr 1fr; \/* Two columns on smaller screens *\/\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-btn-find {\r\n                padding: 14px;\r\n                font-size: 15px;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 600px) {\r\n            .yttv-header {\r\n                padding: 20px 0;\r\n                margin-bottom: 30px;\r\n            }\r\n\r\n            .yttv-logo-container {\r\n                gap: 10px;\r\n                margin-bottom: 15px;\r\n            }\r\n\r\n            .yttv-logo {\r\n                width: 45px;\r\n                height: 45px;\r\n                border-radius: 10px;\r\n            }\r\n\r\n            .yttv-youtube-icon {\r\n                width: 25px;\r\n                height: 25px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 1.6rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-input-field {\r\n                padding: 12px 15px !important;\r\n                font-size: 13px !important;\r\n            }\r\n\r\n            .yttv-btn {\r\n                padding: 12px 15px;\r\n                font-size: 13px;\r\n            }\r\n\r\n            .yttv-btn-find {\r\n                padding: 14px;\r\n                font-size: 14px;\r\n            }\r\n\r\n            .yttv-loading-spinner {\r\n                width: 35px;\r\n                height: 35px;\r\n            }\r\n\r\n            .yttv-loading-text {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-video-header {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-channel-avatar {\r\n                width: 35px;\r\n                height: 35px;\r\n            }\r\n\r\n            .yttv-channel-icon {\r\n                width: 18px;\r\n                height: 18px;\r\n            }\r\n\r\n            .yttv-channel-name {\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-verified-text {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-stats-grid {\r\n                grid-template-columns: 1fr; \/* Stack on very small screens *\/\r\n            }\r\n\r\n            .yttv-stat-card {\r\n                padding: 10px;\r\n            }\r\n\r\n            .yttv-stat-label {\r\n                font-size: 0.65rem;\r\n            }\r\n\r\n            .yttv-stat-value {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-section-icon {\r\n                width: 35px;\r\n                height: 35px;\r\n            }\r\n\r\n            .yttv-section-icon svg {\r\n                width: 18px;\r\n                height: 18px;\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 0.95rem;\r\n            }\r\n\r\n            .yttv-section-title-text p {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-copy-btn {\r\n                padding: 8px 12px;\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                padding: 12px;\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-icon {\r\n                font-size: 2.5rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-title {\r\n                font-size: 1.1rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-message {\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-features-grid {\r\n                grid-template-columns: 1fr 1fr;\r\n            }\r\n\r\n            .yttv-feature-card {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-feature-text {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-btn-search-again {\r\n                font-size: 0.85rem;\r\n                padding: 10px 18px;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 400px) {\r\n            .yttv-container {\r\n                padding: 10px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 1.4rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-input-section,\r\n            .yttv-loading,\r\n            .yttv-error {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-input-title {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-btn-paste {\r\n                padding: 10px 12px;\r\n                font-size: 12px;\r\n            }\r\n\r\n            .yttv-btn-find {\r\n                padding: 12px;\r\n                font-size: 13px;\r\n            }\r\n\r\n            .yttv-loading-spinner {\r\n                width: 30px;\r\n                height: 30px;\r\n            }\r\n\r\n            .yttv-loading-text {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 0.95rem;\r\n            }\r\n\r\n            .yttv-channel-name {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-verified-text {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-section-title-text p {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-copy-btn {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-title {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-message {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-features-grid {\r\n                grid-template-columns: 1fr; \/* Stack on smallest screens *\/\r\n            }\r\n\r\n            .yttv-feature-card {\r\n                padding: 12px;\r\n            }\r\n\r\n            .yttv-feature-text {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-btn-search-again {\r\n                font-size: 0.8rem;\r\n                padding: 8px 15px;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 375px) {\r\n            .yttv-title {\r\n                font-size: 1.3rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-input-field {\r\n                font-size: 12px !important;\r\n            }\r\n\r\n            .yttv-btn-paste {\r\n                font-size: 11px;\r\n            }\r\n\r\n            .yttv-btn-find {\r\n                font-size: 12px;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-channel-name {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-verified-text {\r\n                font-size: 0.65rem;\r\n            }\r\n\r\n            .yttv-stat-label {\r\n                font-size: 0.6rem;\r\n            }\r\n\r\n            .yttv-stat-value {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-section-title-text p {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-copy-btn {\r\n                font-size: 0.7rem;\r\n                padding: 7px 10px;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                font-size: 0.65rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-title {\r\n                font-size: 0.95rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-message {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-feature-text {\r\n                font-size: 0.65rem;\r\n            }\r\n\r\n            .yttv-btn-search-again {\r\n                font-size: 0.75rem;\r\n                padding: 7px 12px;\r\n            }\r\n        }\r\n    <\/style>\r\n\r\n    <div class=\"yttv-wrapper\">\r\n        <div class=\"yttv-container\">\r\n            <!-- Header -->\r\n            <div class=\"yttv-header\">\r\n                <div class=\"yttv-logo-container\">\r\n                    <div class=\"yttv-logo\">\r\n                        <svg class=\"yttv-youtube-icon\" viewBox=\"0 0 24 24\">\r\n                            <path d=\"M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z\"><\/path>\r\n                        <\/svg>\r\n                    <\/div>\r\n                    <div>\r\n                        <h1 class=\"yttv-title\"><span class=\"logo-purple\">YouTube<\/span> Title Viewer<\/h1>\r\n                        <p class=\"yttv-subtitle\">Extract video titles instantly<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <!-- Features Grid -->\r\n                <div class=\"yttv-features-grid\">\r\n                    <div class=\"yttv-feature-card\">\r\n                        <span class=\"yttv-feature-icon\">\u26a1<\/span>\r\n                        <p class=\"yttv-feature-text\">Fast<\/p>\r\n                    <\/div>\r\n                    <div class=\"yttv-feature-card\">\r\n                        <span class=\"yttv-feature-icon\">\ud83d\udd12<\/span>\r\n                        <p class=\"yttv-feature-text\">Secure<\/p>\r\n                    <\/div>\r\n                    <div class=\"yttv-feature-card\">\r\n                        <span class=\"yttv-feature-icon\">\ud83d\udcf1<\/span>\r\n                        <p class=\"yttv-feature-text\">Mobile<\/p>\r\n                    <\/div>\r\n                    <div class=\"yttv-feature-card\">\r\n                        <span class=\"yttv-feature-icon\">\ud83c\udd93<\/span>\r\n                        <p class=\"yttv-feature-text\">Free<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- Input Section -->\r\n            <div class=\"yttv-input-section\">\r\n                <div class=\"yttv-input-title\">Enter YouTube URL<\/div>\r\n\r\n                <div class=\"yttv-input-group\">\r\n                    <input type=\"text\" id=\"yttv-videoInput\" class=\"yttv-input-field\" placeholder=\"Paste YouTube URL here...\">\r\n                    <button class=\"yttv-btn yttv-btn-paste\" onclick=\"pasteFromClipboard()\">\r\n                        <svg class=\"yttv-btn-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                            <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"><\/path>\r\n                        <\/svg>\r\n                        Paste\r\n                    <\/button>\r\n                <\/div>\r\n\r\n                <button class=\"yttv-btn yttv-btn-find\" onclick=\"findTitle()\">\r\n                    <svg class=\"yttv-btn-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                        <path d=\"M9.5,3L8,6.5H4.5L7.91,9.91L6.5,16.5L9.5,14L12.5,16.5L11.09,9.91L14.5,6.5H11L9.5,3Z\"><\/path>\r\n                    <\/svg>\r\n                    Extract Title\r\n                <\/button>\r\n            <\/div>\r\n\r\n            <!-- Loading State -->\r\n            <div class=\"yttv-loading\" id=\"yttv-loading\">\r\n                <div class=\"yttv-loading-spinner\"><\/div>\r\n                <p class=\"yttv-loading-text\">Processing your request...<\/p>\r\n            <\/div>\r\n\r\n            <!-- Results Container -->\r\n            <div class=\"yttv-results\" id=\"yttv-results\">\r\n                <!-- Results will be populated here -->\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\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        let isProcessing = false;\r\n\r\n        async function pasteFromClipboard() {\r\n            try {\r\n                const text = await navigator.clipboard.readText();\r\n                document.getElementById('yttv-videoInput').value = text;\r\n            } catch (err) {\r\n                console.error('Failed to read clipboard contents: ', err);\r\n                alert('Unable to access clipboard. Please paste manually.');\r\n            }\r\n        }\r\n\r\n        async function copyTitle() {\r\n            const titleElement = document.querySelector('.yttv-video-title');\r\n            const copyBtn = document.querySelector('.yttv-copy-btn');\r\n\r\n            if (!titleElement) return;\r\n\r\n            const title = titleElement.textContent;\r\n\r\n            try {\r\n                await navigator.clipboard.writeText(title);\r\n\r\n                copyBtn.innerHTML = `\r\n                    <svg class=\"yttv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                        <path d=\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\"\/>\r\n                    <\/svg>\r\n                    Copied!\r\n                `;\r\n                copyBtn.classList.add('yttv-copied');\r\n\r\n                setTimeout(() => {\r\n                    copyBtn.innerHTML = `\r\n                        <svg class=\"yttv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                            <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"\/>\r\n                        <\/svg>\r\n                        Copy\r\n                    `;\r\n                    copyBtn.classList.remove('yttv-copied');\r\n                }, 2000);\r\n\r\n            } catch (err) {\r\n                console.error('Failed to copy title: ', err);\r\n                alert('Failed to copy title to clipboard');\r\n            }\r\n        }\r\n\r\n        function extractVideoId(url) {\r\n            const patterns = [\r\n                \/(?:youtube\\.com\\\/watch\\?v=|youtu\\.be\\\/|youtube\\.com\\\/embed\\\/|youtube\\.com\\\/v\\\/|youtube\\.com\\\/shorts\\\/)([^&\\n?#]+)\/,\r\n                \/^([a-zA-Z0-9_-]{11})$\/\r\n            ];\r\n\r\n            for (const pattern of patterns) {\r\n                const match = url.match(pattern);\r\n                if (match) return match[1];\r\n            }\r\n            return null;\r\n        }\r\n\r\n        function getThumbnailUrls(videoId) {\r\n            return [\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/maxresdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/hqdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/mqdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/default.jpg`\r\n            ];\r\n        }\r\n\r\n        async function findTitle() {\r\n            if (isProcessing) return;\r\n\r\n            const input = document.getElementById('yttv-videoInput').value.trim();\r\n            if (!input) {\r\n                showError('Please enter a YouTube URL or video ID');\r\n                return;\r\n            }\r\n\r\n            const videoId = extractVideoId(input);\r\n            if (!videoId) {\r\n                showError('Invalid YouTube URL or video ID');\r\n                return;\r\n            }\r\n\r\n            isProcessing = true;\r\n            const loading = document.getElementById('yttv-loading');\r\n            const results = document.getElementById('yttv-results');\r\n            const findBtn = document.querySelector('.yttv-btn-find');\r\n\r\n            \/\/ Update button state\r\n            findBtn.disabled = true;\r\n            findBtn.innerHTML = `\r\n                <div style=\"width: 16px; height: 16px; border: 2px solid white; border-top: 2px solid transparent; border-radius: 50%; animation: yttv-spin 1s linear infinite; margin-right: 8px;\"><\/div>\r\n                Processing...\r\n            `;\r\n\r\n            loading.style.display = 'block';\r\n            results.style.display = 'none';\r\n\r\n            try {\r\n                const formData = new FormData();\r\n                formData.append('url_or_id', input);\r\n\r\n                const response = await fetch('https:\/\/tools.xrespond.com\/api\/youtube\/video-descriptions', {\r\n                    method: 'POST',\r\n                    body: formData\r\n                });\r\n\r\n                if (!response.ok) {\r\n                    const errorText = await response.text();\r\n                    throw new Error(`API Error ${response.status}: ${errorText}`);\r\n                }\r\n\r\n                const data = await response.json();\r\n\r\n                if (data && data.data) {\r\n                    displayResults(data.data, videoId);\r\n                    document.getElementById('yttv-videoInput').value = '';\r\n                } else {\r\n                    throw new Error('Invalid response format from API');\r\n                }\r\n\r\n            } catch (error) {\r\n                console.error('Error:', error);\r\n                showError(error.message);\r\n            } finally {\r\n                isProcessing = false;\r\n                findBtn.disabled = false;\r\n                findBtn.innerHTML = `\r\n                    <svg class=\"yttv-btn-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                        <path d=\"M9.5,3L8,6.5H4.5L7.91,9.91L6.5,16.5L9.5,14L12.5,16.5L11.09,9.91L14.5,6.5H11L9.5,3Z\"\/>\r\n                    <\/svg>\r\n                    Extract Title\r\n                `;\r\n                loading.style.display = 'none';\r\n            }\r\n        }\r\n\r\n        function showError(message) {\r\n            const results = document.getElementById('yttv-results');\r\n            results.innerHTML = `\r\n                <div class=\"yttv-error\">\r\n                    <div class=\"yttv-error-icon\">\u26a0\ufe0f<\/div>\r\n                    <div class=\"yttv-error-title\">Error<\/div>\r\n                    <p class=\"yttv-error-message\"><strong>Message:<\/strong> ${message}<\/p>\r\n                    <p class=\"yttv-error-details\">Please check your YouTube URL and try again.<\/p>\r\n                <\/div>\r\n            `;\r\n            results.style.display = 'block';\r\n        }\r\n\r\n        function createThumbnailWithFallback(videoId) {\r\n            const thumbnailUrls = getThumbnailUrls(videoId);\r\n            let currentIndex = 0;\r\n\r\n            const img = document.createElement('img');\r\n            img.className = 'yttv-thumbnail';\r\n            img.alt = 'Video Thumbnail';\r\n\r\n            function tryNextThumbnail() {\r\n                if (currentIndex < thumbnailUrls.length) {\r\n                    img.src = thumbnailUrls[currentIndex];\r\n                    currentIndex++;\r\n                } else {\r\n                    img.src = 'data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAwIiBoZWlnaHQ9IjE2OSIgdmlld0JveD0iMCAwIDMwMCAxNjkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIzMDAiIGhlaWdodD0iMTY5IiBmaWxsPSIjNDQ0Ii8+Cjx0ZXh0IHg9IjE1MCIgeT0iODQuNSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZmlsbD0iIzk5OSIgZm9udC1zaXplPSIxNCI+VGh1bWJuYWlsPC90ZXh0Pgo8L3N2Zz4=';\r\n                }\r\n            }\r\n\r\n            img.onerror = tryNextThumbnail;\r\n            tryNextThumbnail();\r\n\r\n            return img;\r\n        }\r\n\r\n        function displayResults(data, videoId) {\r\n            const results = document.getElementById('yttv-results');\r\n\r\n            results.innerHTML = `\r\n        <div class=\"yttv-video-card\">\r\n            <div class=\"yttv-video-header\">\r\n                <div class=\"yttv-video-title\">${data?.data.name || 'No title available'}<\/div>\r\n                \r\n                <div class=\"yttv-thumbnail-container\" id=\"yttv-thumbnailContainer\">\r\n                <\/div>\r\n\r\n                <div class=\"yttv-video-info\">\r\n                    <div class=\"yttv-channel-info\">\r\n                        <div class=\"yttv-channel-avatar\">\r\n                            <svg class=\"yttv-channel-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                <path d=\"M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z\"\/>\r\n                            <\/svg>\r\n                        <\/div>\r\n                        <div class=\"yttv-channel-details\">\r\n                            <div class=\"yttv-channel-name\">\r\n                                <a href=\"${data?.data.channelUrl || '#'}\" class=\"yttv-channel-link\" target=\"_blank\">\r\n                                    ${data?.data.channelName || 'Unknown Channel'}\r\n                                <\/a>\r\n                            <\/div>\r\n                            <p class=\"yttv-verified-text\">YouTube Channel<\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yttv-stats-grid\">\r\n                        <div class=\"yttv-stat-card yttv-views\">\r\n                            <div class=\"yttv-stat-icon\">\r\n                                <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                    <path d=\"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\"\/>\r\n                                <\/svg>\r\n                            <\/div>\r\n                            <div class=\"yttv-stat-label\">Views<\/div>\r\n                            <div class=\"yttv-stat-value\">${data.data.viewCount || 'N\/A'}<\/div>\r\n                        <\/div>\r\n\r\n                        <div class=\"yttv-stat-card yttv-likes\">\r\n                            <div class=\"yttv-stat-icon\">\r\n                                <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                    <path d=\"M12,21.35L10.55,20.03C5.4,15.36 2,12.27 2,8.5 2,5.41 4.42,3 7.5,3C9.24,3 10.91,3.81 12,5.08C13.09,3.81 14.76,3 16.5,3C19.58,3 22,5.41 22,8.5C22,12.27 18.6,15.36 13.45,20.03L12,21.35Z\"\/>\r\n                                <\/svg>\r\n                            <\/div>\r\n                            <div class=\"yttv-stat-label\">Likes<\/div>\r\n                            <div class=\"yttv-stat-value\">${data?.data.likesCount || 'N\/A'}<\/div>\r\n                        <\/div>\r\n\r\n                        <div class=\"yttv-stat-card yttv-published\">\r\n                            <div class=\"yttv-stat-icon\">\r\n                                <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                    <path d=\"M19,3H18V1H16V3H8V1H6V3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z\"\/>\r\n                                <\/svg>\r\n                            <\/div>\r\n                            <div class=\"yttv-stat-label\">Date<\/div>\r\n                            <div class=\"yttv-stat-value\">${data?.data.publishDate || 'N\/A'}<\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yttv-title-section\">\r\n                        <div class=\"yttv-section-header\">\r\n                            <div class=\"yttv-section-title\">\r\n                                <div class=\"yttv-section-icon\">\r\n                                    <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                        <path d=\"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20Z\"\/>\r\n                                    <\/svg>\r\n                                <\/div>\r\n                                <div class=\"yttv-section-title-text\">\r\n                                    <div class=\"yttv-section-title-heading\">Video Title<\/div>\r\n                                    <p>Copy the video title<\/p>\r\n                                <\/div>\r\n                            <\/div>\r\n\r\n                            <button class=\"yttv-copy-btn\" onclick=\"copyTitle()\">\r\n                                <svg class=\"yttv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                    <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"\/>\r\n                                <\/svg>\r\n                                Copy\r\n                            <\/button>\r\n                        <\/div>\r\n\r\n                        <div class=\"yttv-title-content\">\r\n                            ${data?.data.name || 'No title available for this video.'}\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"yttv-search-again-section\">\r\n                <button class=\"yttv-btn-search-again\" onclick=\"searchAgain()\">\r\n                    <svg class=\"yttv-search-again-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                        <path d=\"M17.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z\"\/>\r\n                    <\/svg>\r\n                    Search Again\r\n                <\/button>\r\n            <\/div>\r\n        <\/div>\r\n    `;\r\n\r\n            \/\/ Insert thumbnail with fallback\r\n            const thumbnailContainer = document.getElementById('yttv-thumbnailContainer');\r\n            const thumbnailImg = createThumbnailWithFallback(videoId);\r\n            thumbnailContainer.appendChild(thumbnailImg);\r\n\r\n            results.style.display = 'block';\r\n        }\r\n\r\n        function searchAgain() {\r\n            \/\/ Hide results and show input section\r\n            document.getElementById('yttv-results').style.display = 'none';\r\n\r\n            \/\/ Clear the input field\r\n            const inputField = document.getElementById('yttv-videoInput');\r\n            inputField.value = '';\r\n\r\n            \/\/ Focus on the input field\r\n            inputField.focus();\r\n\r\n            \/\/ Scroll to top smoothly\r\n            window.scrollTo({\r\n                top: 0,\r\n                behavior: 'smooth'\r\n            });\r\n        }\r\n\r\n        \/\/ Handle Enter key press\r\n        document.getElementById('yttv-videoInput').addEventListener('keypress', function (e) {\r\n            if (e.key === 'Enter' && !isProcessing) {\r\n                findTitle();\r\n            }\r\n        });\r\n    <\/script>\r\n\r\n<!-- youtube tools end here -->\r\n\r\n <!-- Work Process Section -->\r\n<section class=\"yydv-work-process-section\" id=\"how-it-works\">\r\n    <div class=\"container yydv-work-process-content\">\r\n        <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n            <h2 class=\"yydv-section-title yydv-light-title\">How Our YouTube Title Viewer Works<\/h2>\r\n            <p class=\"yydv-section-subtitle yydv-light-subtitle\">View YouTube video titles anonymously in 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=\"yydv-process-step\">\r\n                    <div class=\"yydv-step-number\">1<\/div>\r\n                    <h4 class=\"text-white\">Enter Video URL<\/h4>\r\n                    <p class=\"yydv-light-subtitle\">Paste the YouTube video URL whose title 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=\"yydv-process-step\">\r\n                    <div class=\"yydv-step-number\">2<\/div>\r\n                    <h4 class=\"text-white\">Extract Title<\/h4>\r\n                    <p class=\"yydv-light-subtitle\">Our system retrieves the video title without revealing your identity<\/p>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"col-md-4\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                <div class=\"yydv-process-step\">\r\n                    <div class=\"yydv-step-number\">3<\/div>\r\n                    <h4 class=\"text-white\">View Title<\/h4>\r\n                    <p class=\"yydv-light-subtitle\">Read the complete video title with all details preserved<\/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=\"yydv-features-section\">\r\n    <div class=\"container\">\r\n        <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n            <h2 class=\"yydv-section-title\">Key Features<\/h2>\r\n            <p class=\"yydv-section-subtitle\">Our YouTube Title Viewer offers powerful features for anonymous title viewing<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-detail\"><\/i>\r\n                    <\/div>\r\n                    <h4>Full Title Access<\/h4>\r\n                    <p>View complete titles of any public YouTube video with all formatting preserved<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-search-alt\"><\/i>\r\n                    <\/div>\r\n                    <h4>Keyword Search<\/h4>\r\n                    <p>Quickly identify specific keywords within video titles<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-copy-alt\"><\/i>\r\n                    <\/div>\r\n                    <h4>Copy to Clipboard<\/h4>\r\n                    <p>Easily copy the entire title or selected portions with one click<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-shield\"><\/i>\r\n                    <\/div>\r\n                    <h4>No Tracking<\/h4>\r\n                    <p>View titles without YouTube tracking your activity or affecting statistics<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-mobile\"><\/i>\r\n                    <\/div>\r\n                    <h4>Cross-Platform<\/h4>\r\n                    <p>Access titles seamlessly on desktop, tablet, or mobile devices<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-time\"><\/i>\r\n                    <\/div>\r\n                    <h4>Instant Retrieval<\/h4>\r\n                    <p>Retrieve video titles quickly without loading the entire video page<\/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=\"yydv-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=\"yydv-why-choose-image yydv-floating-element\">\r\n                    <img decoding=\"async\" src=\"https:\/\/viewanonymous.com\/wp-content\/uploads\/2026\/03\/YouTube_Title_Viewer.webp\" alt=\"YouTube Title 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=\"yydv-section-title mb-4\">Why Choose Our YouTube Title Viewer?<\/h2>\r\n                <p class=\"mb-4\">Our tool offers a private and efficient way to view YouTube video titles without leaving a trace. Perfect for researchers, content creators, or privacy-conscious users seeking quick access to video titles.<\/p>\r\n\r\n                <div class=\"yydv-benefit-item\">\r\n                    <div class=\"yydv-benefit-icon\">\r\n                        <i class=\"bx bx-check\"><\/i>\r\n                    <\/div>\r\n                    <div>\r\n                        <h5 class=\"mb-1\">Complete anonymity<\/h5>\r\n                        <p class=\"mb-0\">View titles without leaving any trace or affecting video stats<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"yydv-benefit-item\">\r\n                    <div class=\"yydv-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\">Access video titles without a YouTube account<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"yydv-benefit-item\">\r\n                    <div class=\"yydv-benefit-icon\">\r\n                        <i class=\"bx bx-check\"><\/i>\r\n                    <\/div>\r\n                    <div>\r\n                        <h5 class=\"mb-1\">Preserved formatting<\/h5>\r\n                        <p class=\"mb-0\">See titles exactly as they appear with all characters and symbols<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"yydv-benefit-item\">\r\n                    <div class=\"yydv-benefit-icon\">\r\n                        <i class=\"bx bx-check\"><\/i>\r\n                    <\/div>\r\n                    <div>\r\n                        <h5 class=\"mb-1\">Fast loading<\/h5>\r\n                        <p class=\"mb-0\">Retrieve titles instantly without loading the entire video page<\/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=\"yydv-faq-section\">\r\n    <div class=\"container\">\r\n        <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n            <h2 class=\"yydv-section-title\">Frequently Asked Questions<\/h2>\r\n            <p class=\"yydv-section-subtitle\">Find answers to common questions about our YouTube Title 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=\"yydv-faqAccordion\">\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading1\">\r\n                            <button class=\"yydv-accordion-button\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse1\" aria-expanded=\"true\" aria-controls=\"yydv-collapse1\">\r\n                                Is viewing YouTube titles anonymously legal?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse1\" class=\"accordion-collapse collapse show\" aria-labelledby=\"yydv-heading1\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                Yes, our tool is completely legal to use. It only allows you to view publicly available YouTube video titles. We don't access private videos or bypass any security measures - we simply display title data that is already publicly accessible on YouTube.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"100\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading2\">\r\n                            <button class=\"yydv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse2\" aria-expanded=\"false\" aria-controls=\"yydv-collapse2\">\r\n                                Can I view titles of private YouTube videos?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse2\" class=\"accordion-collapse collapse\" aria-labelledby=\"yydv-heading2\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                No, our tool respects YouTube's privacy settings. We can only display titles from videos that are set to public. If a video is private or unlisted, our viewer cannot access its title.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading3\">\r\n                            <button class=\"yydv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse3\" aria-expanded=\"false\" aria-controls=\"yydv-collapse3\">\r\n                                Will YouTube know I viewed these titles?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse3\" class=\"accordion-collapse collapse\" aria-labelledby=\"yydv-heading3\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                No, all title viewing is completely anonymous. When you use our tool, YouTube doesn't register that you've accessed the title. The video owner won't know you viewed their video title.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"200\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading4\">\r\n                            <button class=\"yydv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse4\" aria-expanded=\"false\" aria-controls=\"yydv-collapse4\">\r\n                                Do I need to install any software?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse4\" class=\"accordion-collapse collapse\" aria-labelledby=\"yydv-heading4\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                No, our YouTube Title Viewer is completely web-based. You don't need to download or install any software. Simply visit our website, enter the video URL, and view the title directly in your browser.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading5\">\r\n                            <button class=\"yydv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse5\" aria-expanded=\"false\" aria-controls=\"yydv-collapse5\">\r\n                                Can I view titles from age-restricted videos?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse5\" class=\"accordion-collapse collapse\" aria-labelledby=\"yydv-heading5\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                Our tool can only access titles from videos that are publicly available without age verification. For age-restricted content, you would need to log in to YouTube with an account that meets the age requirements.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div><\/section>\r\n\r\n    <!-- Footer -->\r\n    \r\n\r\n    <!-- Copyright Section -->\r\n    \r\n\r\n\r\n\r\n    <!-- YouTube Description viewer js -->\r\n    <script>\r\n        let isProcessing = false;\r\n\r\n        async function pasteFromClipboard() {\r\n            try {\r\n                const text = await navigator.clipboard.readText();\r\n                document.getElementById('ytdv-videoInput').value = text;\r\n            } catch (err) {\r\n                console.error('Failed to read clipboard contents: ', err);\r\n                alert('Unable to access clipboard. Please paste manually.');\r\n            }\r\n        }\r\n\r\n        async function copyDescription() {\r\n            const descriptionElement = document.querySelector('.ytdv-description-content');\r\n            const copyBtn = document.querySelector('.ytdv-copy-btn');\r\n\r\n            if (!descriptionElement) return;\r\n\r\n            const description = descriptionElement.textContent;\r\n\r\n            try {\r\n                await navigator.clipboard.writeText(description);\r\n\r\n                copyBtn.innerHTML = `\r\n                  <svg class=\"ytdv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                      <path d=\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\"\/>\r\n                  <\/svg>\r\n                  Copied!\r\n              `;\r\n                copyBtn.classList.add('ytdv-copied');\r\n\r\n                setTimeout(() => {\r\n                    copyBtn.innerHTML = `\r\n                      <svg class=\"ytdv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                          <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"\/>\r\n                      <\/svg>\r\n                      Copy\r\n                  `;\r\n                    copyBtn.classList.remove('ytdv-copied');\r\n                }, 2000);\r\n\r\n            } catch (err) {\r\n                console.error('Failed to copy description: ', err);\r\n                alert('Failed to copy description to clipboard');\r\n            }\r\n        }\r\n\r\n        function extractVideoId(url) {\r\n            const patterns = [\r\n                \/(?:youtube\\.com\\\/watch\\?v=|youtu\\.be\\\/|youtube\\.com\\\/embed\\\/|youtube\\.com\\\/v\\\/|youtube\\.com\\\/shorts\\\/)([^&\\n?#]+)\/,\r\n                \/^([a-zA-Z0-9_-]{11})$\/\r\n            ];\r\n\r\n            for (const pattern of patterns) {\r\n                const match = url.match(pattern);\r\n                if (match) return match[1];\r\n            }\r\n            return null;\r\n        }\r\n\r\n        function getThumbnailUrls(videoId) {\r\n            return [\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/maxresdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/hqdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/mqdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/default.jpg`\r\n            ];\r\n        }\r\n\r\n        async function findDescription() {\r\n            if (isProcessing) return;\r\n\r\n            const input = document.getElementById('ytdv-videoInput').value.trim();\r\n            if (!input) {\r\n                showError('Please enter a YouTube URL or video ID');\r\n                return;\r\n            }\r\n\r\n            const videoId = extractVideoId(input);\r\n            if (!videoId) {\r\n                showError('Invalid YouTube URL or video ID');\r\n                return;\r\n            }\r\n\r\n            isProcessing = true;\r\n            const loading = document.getElementById('ytdv-loading');\r\n            const results = document.getElementById('ytdv-results');\r\n            const findBtn = document.querySelector('.ytdv-btn-find');\r\n\r\n            \/\/ Update button state\r\n            findBtn.disabled = true;\r\n            findBtn.innerHTML = `\r\n              <div style=\"width: 16px; height: 16px; border: 2px solid white; border-top: 2px solid transparent; border-radius: 50%; animation: ytdv-spin 1s linear infinite; margin-right: 8px;\"><\/div>\r\n              Processing...\r\n          `;\r\n\r\n            loading.style.display = 'block';\r\n            results.style.display = 'none';\r\n\r\n            try {\r\n                const formData = new FormData();\r\n                formData.append('url_or_id', input);\r\n\r\n                const response = await fetch('https:\/\/tools.xrespond.com\/api\/youtube\/video-descriptions', {\r\n                    method: 'POST',\r\n                    body: formData\r\n                });\r\n\r\n                if (!response.ok) {\r\n                    const errorText = await response.text();\r\n                    throw new Error(`API Error ${response.status}: ${errorText}`);\r\n                }\r\n\r\n                const data = await response.json();\r\n\r\n                if (data && data.data) {\r\n                    displayResults(data.data, videoId);\r\n                    document.getElementById('ytdv-videoInput').value = '';\r\n                } else {\r\n                    throw new Error('Invalid response format from API');\r\n                }\r\n\r\n            } catch (error) {\r\n                console.error('Error:', error);\r\n                showError(error.message);\r\n            } finally {\r\n                isProcessing = false;\r\n                findBtn.disabled = false;\r\n                findBtn.innerHTML = `\r\n                  <svg class=\"ytdv-btn-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                      <path d=\"M9.5,3L8,6.5H4.5L7.91,9.91L6.5,16.5L9.5,14L12.5,16.5L11.09,9.91L14.5,6.5H11L9.5,3Z\"\/>\r\n                  <\/svg>\r\n                  Extract Description\r\n              `;\r\n                loading.style.display = 'none';\r\n            }\r\n        }\r\n\r\n        function showError(message) {\r\n            const results = document.getElementById('ytdv-results');\r\n            results.innerHTML = `\r\n              <div class=\"ytdv-error\">\r\n                  <div class=\"ytdv-error-icon\">\u26a0\ufe0f<\/div>\r\n                  <h3>Error<\/h3>\r\n                  <p><strong>Message:<\/strong> ${message}<\/p>\r\n                  <p class=\"ytdv-error-details\">Please check your YouTube URL and try again.<\/p>\r\n              <\/div>\r\n          `;\r\n            results.style.display = 'block';\r\n        }\r\n\r\n        function createThumbnailWithFallback(videoId) {\r\n            const thumbnailUrls = getThumbnailUrls(videoId);\r\n            let currentIndex = 0;\r\n\r\n            const img = document.createElement('img');\r\n            img.className = 'ytdv-thumbnail';\r\n            img.alt = 'Video Thumbnail';\r\n\r\n            function tryNextThumbnail() {\r\n                if (currentIndex < thumbnailUrls.length) {\r\n                    img.src = thumbnailUrls[currentIndex];\r\n                    currentIndex++;\r\n                } else {\r\n                    img.src = 'data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAwIiBoZWlnaHQ9IjE2OSIgdmlld0JveD0iMCAwIDMwMCAxNjkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIzMDAiIGhlaWdodD0iMTY5IiBmaWxsPSIjNDQ0Ii8+Cjx0ZXh0IHg9IjE1MCIgeT0iODQuNSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZmlsbD0iIzk5OSIgZm9udC1zaXplPSIxNCI+VGh1bWJuYWlsPC90ZXh0Pgo8L3N2Zz4=';\r\n                }\r\n            }\r\n\r\n            img.onerror = tryNextThumbnail;\r\n            tryNextThumbnail();\r\n\r\n            return img;\r\n        }\r\n\r\n        function displayResults(data, videoId) {\r\n            const results = document.getElementById('ytdv-results');\r\n\r\n            results.innerHTML = `\r\n      <div class=\"ytdv-video-card\">\r\n          <div class=\"ytdv-video-header\">\r\n              <div class=\"ytdv-thumbnail-container\" id=\"ytdv-thumbnailContainer\">\r\n              <\/div>\r\n  \r\n              <div class=\"ytdv-video-info\">\r\n                  <h2>${data.data.name || 'No title available'}<\/h2>\r\n  \r\n                  <div class=\"ytdv-channel-info\">\r\n                      <div class=\"ytdv-channel-avatar\">\r\n                          <svg class=\"ytdv-channel-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                              <path d=\"M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z\"\/>\r\n                          <\/svg>\r\n                      <\/div>\r\n                      <div class=\"ytdv-channel-details\">\r\n                          <h3>\r\n                              <a href=\"${data.data.channelUrl || '#'}\" class=\"ytdv-channel-link\" target=\"_blank\">\r\n                                  ${data.data.channelName || 'Unknown Channel'}\r\n                              <\/a>\r\n                          <\/h3>\r\n                          <p class=\"ytdv-verified-text\">YouTube Channel<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n  \r\n                  <div class=\"ytdv-stats-grid\">\r\n                      <div class=\"ytdv-stat-card ytdv-views\">\r\n                          <div class=\"ytdv-stat-icon\">\r\n                              <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                  <path d=\"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\"\/>\r\n                              <\/svg>\r\n                          <\/div>\r\n                          <div class=\"ytdv-stat-label\">Views<\/div>\r\n                          <div class=\"ytdv-stat-value\">${data.data.viewCount || 'N\/A'}<\/div>\r\n                      <\/div>\r\n  \r\n                      <div class=\"ytdv-stat-card ytdv-likes\">\r\n                          <div class=\"ytdv-stat-icon\">\r\n                              <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                  <path d=\"M12,21.35L10.55,20.03C5.4,15.36 2,12.27 2,8.5 2,5.41 4.42,3 7.5,3C9.24,3 10.91,3.81 12,5.08C13.09,3.81 14.76,3 16.5,3C19.58,3 22,5.41 22,8.5C22,12.27 18.6,15.36 13.45,20.03L12,21.35Z\"\/>\r\n                              <\/svg>\r\n                          <\/div>\r\n                          <div class=\"ytdv-stat-label\">Likes<\/div>\r\n                          <div class=\"ytdv-stat-value\">${data.data.likesCount || 'N\/A'}<\/div>\r\n                      <\/div>\r\n  \r\n                      <div class=\"ytdv-stat-card ytdv-published\">\r\n                          <div class=\"ytdv-stat-icon\">\r\n                              <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                  <path d=\"M19,3H18V1H16V3H8V1H6V3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z\"\/>\r\n                              <\/svg>\r\n                          <\/div>\r\n                          <div class=\"ytdv-stat-label\">Date<\/div>\r\n                          <div class=\"ytdv-stat-value\">${data.data.publishDate || 'N\/A'}<\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n  \r\n          <div class=\"ytdv-description-section\">\r\n              <div class=\"ytdv-section-header\">\r\n                  <div class=\"ytdv-section-title\">\r\n                      <div class=\"ytdv-section-icon\">\r\n                          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                              <path d=\"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20Z\"\/>\r\n                          <\/svg>\r\n                      <\/div>\r\n                      <div class=\"ytdv-section-title-text\">\r\n                          <h3>Description<\/h3>\r\n                          <p>Video description content<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n  \r\n                  <button class=\"ytdv-copy-btn\" onclick=\"copyDescription()\">\r\n                      <svg class=\"ytdv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                          <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"\/>\r\n                      <\/svg>\r\n                      Copy\r\n                  <\/button>\r\n              <\/div>\r\n  \r\n              <div class=\"ytdv-description-content\">\r\n                  ${data.data.description || 'No description available for this video.'}\r\n              <\/div>\r\n          <\/div>\r\n  \r\n          ${data.data.captions ? `\r\n          <div class=\"ytdv-captions-section\">\r\n              <div class=\"ytdv-section-header\">\r\n                  <div class=\"ytdv-section-title\">\r\n                      <div class=\"ytdv-section-icon ytdv-captions-icon\">\r\n                          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                              <path d=\"M18,11H16.5V10.5H14.5V13.5H16.5V13H18V14A1,1 0 0,1 17,15H14A1,1 0 0,1 13,14V10A1,1 0 0,1 14,9H17A1,1 0 0,1 18,10M11,11H9.5V10.5H7.5V13.5H9.5V13H11V14A1,1 0 0,1 10,15H7A1,1 0 0,1 6,14V10A1,1 0 0,1 7,9H10A1,1 0 0,1 11,10M19,4H5C3.89,4 3,4.89 3,6V18A2,2 0 0,0 5,20H19A2,2 0 0,0 21,18V6C21,4.89 20.1,4 19,4Z\"\/>\r\n                          <\/svg>\r\n                      <\/div>\r\n                      <div class=\"ytdv-section-title-text\">\r\n                          <h3>Captions<\/h3>\r\n                          <p>Subtitle information<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n  \r\n              <div class=\"ytdv-captions-content\">\r\n                  <div class=\"ytdv-caption-item\">\r\n                      <div class=\"ytdv-caption-dot\"><\/div>\r\n                      <span class=\"ytdv-caption-label\">Language:<\/span>\r\n                      <span class=\"ytdv-caption-value\">${data.data.caption_lang || 'N\/A'}<\/span>\r\n                  <\/div>\r\n                  <div class=\"ytdv-caption-item\">\r\n                      <div class=\"ytdv-caption-dot\"><\/div>\r\n                      <span class=\"ytdv-caption-label\">Status:<\/span>\r\n                      <span class=\"ytdv-caption-value\">Available \u2705<\/span>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n          ` : ''}\r\n  \r\n          <div class=\"ytdv-search-again-section\">\r\n              <button class=\"ytdv-btn-search-again\" onclick=\"searchAgain()\">\r\n                  <svg class=\"ytdv-search-again-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                      <path d=\"M17.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z\"\/>\r\n                  <\/svg>\r\n                  Search Again\r\n              <\/button>\r\n          <\/div>\r\n      <\/div>\r\n  `;\r\n\r\n            \/\/ Insert thumbnail with fallback\r\n            const thumbnailContainer = document.getElementById('ytdv-thumbnailContainer');\r\n            const thumbnailImg = createThumbnailWithFallback(videoId);\r\n            thumbnailContainer.appendChild(thumbnailImg);\r\n\r\n            results.style.display = 'block';\r\n        }\r\n\r\n        function searchAgain() {\r\n            \/\/ Hide results and show input section\r\n            document.getElementById('ytdv-results').style.display = 'none';\r\n\r\n            \/\/ Clear the input field\r\n            const inputField = document.getElementById('ytdv-videoInput');\r\n            inputField.value = '';\r\n\r\n            \/\/ Focus on the input field\r\n            inputField.focus();\r\n\r\n            \/\/ Scroll to top smoothly\r\n            window.scrollTo({\r\n                top: 0,\r\n                behavior: 'smooth'\r\n            });\r\n        }\r\n\r\n        \/\/ Handle Enter key press\r\n        (function () {\r\n            var inp = document.getElementById('yttv-videoInput');\r\n            if (inp) {\r\n                inp.addEventListener('keypress', function (e) {\r\n                    if (e.key === 'Enter' && !isProcessing) {\r\n                        findTitle();\r\n                    }\r\n                });\r\n            }\r\n        })();\r\n    <\/script>\r\n\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    <script>\r\n        (function () {\r\n            if (typeof AOS !== 'undefined') {\r\n                AOS.init({\r\n                    duration: 800,\r\n                    easing: 'ease-in-out',\r\n                    once: true\r\n                });\r\n            }\r\n            document.querySelectorAll('a[href^=\"#\"]').forEach(function (anchor) {\r\n                anchor.addEventListener('click', function (e) {\r\n                    var sel = this.getAttribute('href');\r\n                    if (!sel || sel === '#') return;\r\n                    var target = document.querySelector(sel);\r\n                    if (target) {\r\n                        e.preventDefault();\r\n                        target.scrollIntoView({ behavior: 'smooth' });\r\n                    }\r\n                });\r\n            });\r\n        })();\r\n    <\/script>\r\n\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    <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\/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    \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&family=Varela+Round:wght@400;500;600;700&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    <style>\r\n        html:not(.aos-init) [data-aos] {\r\n            opacity: 1 !important;\r\n            transform: none !important;\r\n            pointer-events: auto !important;\r\n        }\r\n    <\/style>\r\n    <!-- Font Awesome CSS -->\r\n    <link href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/5.15.3\/css\/all.min.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            --yydv-primary-color: #9170ff;\r\n            --yydv-secondary-color: #b99cff;\r\n            --yydv-dark-color: #111111;\r\n            --yydv-light-color: #FFFFFF;\r\n            --yydv-gray-color: #f3efff;\r\n            --yydv-primary-hover: #7d5af0;\r\n            --yydv-secondary-hover: #a884ff;\r\n            --yydv-section-padding: 100px 0;\r\n        }\r\n\r\n\/*         body {\r\n            font-family: 'Varela Round', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\r\n            scroll-behavior: smooth;\r\n            overflow-x: hidden;\r\n            background-color: var(--yydv-light-color);\r\n            color: var(--yydv-dark-color);\r\n        }\r\n\r\n        h1,\r\n        h2,\r\n        h3,\r\n        h4,\r\n        h5,\r\n        h6 {\r\n            font-family: 'Space Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;\r\n            font-weight: bold;\r\n        } *\/\r\n\r\n        \/* YouTube-style Hero Section *\/\r\n        .yydv-hero-section {\r\n            padding: var(--yydv-section-padding);\r\n            text-align: center;\r\n            background-color: var(--yydv-light-color);\r\n        }\r\n\r\n        .yydv-hero-content {\r\n            position: relative;\r\n            z-index: 1;\r\n        }\r\n\r\n        .yydv-hero-section h1 {\r\n            font-size: 3.5rem;\r\n            font-weight: 700;\r\n            margin-bottom: 1.5rem;\r\n            color: var(--yydv-dark-color);\r\n        }\r\n\r\n        .yydv-hero-section h1 .logo-purple {\r\n            color: var(--yydv-primary-color);\r\n        }\r\n\r\n        .yydv-hero-section p {\r\n            font-size: 1.25rem;\r\n            max-width: 700px;\r\n            margin: 0 auto 2rem;\r\n            opacity: 0.9;\r\n            font-weight: 300;\r\n            color: #666;\r\n        }\r\n\r\n        \/* Work Process Section with YouTube Colors *\/\r\n        .yydv-work-process-section {\r\n            padding: var(--yydv-section-padding);\r\n            background: linear-gradient(135deg, #9170ff 0%, #6b4fd6 55%, #5b43c9 100%);\r\n            color: white;\r\n            position: relative;\r\n            overflow: hidden;\r\n        }\r\n\r\n        .yydv-work-process-section::before {\r\n            content: '';\r\n            position: absolute;\r\n            top: 0;\r\n            left: 0;\r\n            width: 100%;\r\n            height: 100%;\r\n            background: rgba(0, 0, 0, 0.05);\r\n        }\r\n\r\n        .yydv-work-process-content {\r\n            position: relative;\r\n            z-index: 1;\r\n        }\r\n\r\n        .yydv-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        .yydv-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        .yydv-step-number {\r\n            width: 60px;\r\n            height: 60px;\r\n            background: white;\r\n            color: var(--yydv-primary-color);\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        .yydv-features-section {\r\n            padding: var(--yydv-section-padding);\r\n            background: white;\r\n        }\r\n\r\n        .yydv-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        .yydv-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: var(--yydv-primary-color);\r\n            transition: all 0.3s ease;\r\n        }\r\n\r\n        .yydv-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        .yydv-feature-card:hover::before {\r\n            width: 100%;\r\n            opacity: 0.1;\r\n        }\r\n\r\n        .yydv-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: var(--yydv-primary-color);\r\n            color: white;\r\n            font-size: 1.8rem;\r\n            transition: all 0.3s ease;\r\n        }\r\n\r\n        .yydv-feature-card:hover .yydv-feature-icon {\r\n            transform: rotate(15deg) scale(1.1);\r\n            background: var(--yydv-primary-hover);\r\n        }\r\n\r\n        \/* Why Choose Section *\/\r\n        .yydv-why-choose-section {\r\n            padding: var(--yydv-section-padding);\r\n            background: #faf8ff;\r\n        }\r\n\r\n        .yydv-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        .yydv-why-choose-image:hover {\r\n            transform: perspective(1000px) rotateY(0deg);\r\n        }\r\n\r\n        .yydv-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        .yydv-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        .yydv-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: var(--yydv-primary-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        .yydv-faq-section {\r\n            padding: var(--yydv-section-padding);\r\n            background: white;\r\n        }\r\n\r\n        .yydv-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        .yydv-accordion-button {\r\n            font-weight: 600;\r\n            color: var(--yydv-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        .yydv-accordion-button:not(.collapsed) {\r\n            background: white;\r\n            color: var(--yydv-primary-color);\r\n            box-shadow: none;\r\n        }\r\n\r\n        .yydv-accordion-button:focus {\r\n            box-shadow: none;\r\n            border-color: rgba(145, 112, 255, 0.45);\r\n        }\r\n\r\n        .yydv-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='%239170ff'%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        .yydv-accordion-body {\r\n            padding: 25px;\r\n            color: #666;\r\n        }\r\n\r\n        \/* Section Titles *\/\r\n        .yydv-section-title {\r\n            font-weight: 700;\r\n            color: var(--yydv-dark-color);\r\n            margin-bottom: 1.5rem;\r\n            position: relative;\r\n            display: inline-block;\r\n        }\r\n\r\n        .yydv-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: var(--yydv-primary-color);\r\n            border-radius: 2px;\r\n        }\r\n\r\n        .yydv-light-title {\r\n            color: white;\r\n        }\r\n\r\n        .yydv-light-title::after {\r\n            background: white;\r\n        }\r\n\r\n        .yydv-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        .yydv-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                --yydv-section-padding: 80px 0;\r\n            }\r\n\r\n            .yydv-hero-section h1 {\r\n                font-size: 2.8rem;\r\n            }\r\n\r\n            .yydv-process-step::before {\r\n                display: none;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 767px) {\r\n            :root {\r\n                --yydv-section-padding: 70px 0;\r\n            }\r\n\r\n            .yydv-hero-section {\r\n                padding: 100px 0 60px;\r\n            }\r\n\r\n            .yydv-hero-section h1 {\r\n                font-size: 2.2rem;\r\n            }\r\n\r\n            .yydv-hero-section p {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yydv-section-title {\r\n                font-size: 1.8rem;\r\n            }\r\n        }\r\n\r\n        \/* Animation *\/\r\n        @keyframes yydv-float {\r\n            0% {\r\n                transform: translateY(0px);\r\n            }\r\n\r\n            50% {\r\n                transform: translateY(-15px);\r\n            }\r\n\r\n            100% {\r\n                transform: translateY(0px);\r\n            }\r\n        }\r\n\r\n        .yydv-floating-element {\r\n            animation: yydv-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: var(--yydv-primary-color);\r\n            border-radius: 10px;\r\n        }\r\n\r\n        ::-webkit-scrollbar-thumb:hover {\r\n            background: var(--yydv-primary-hover);\r\n        }\r\n\r\n\r\n    <\/style>\r\n    <!-- tools -->\r\n    <style>\r\n        \/* Box model for YouTube tool wrapper only \u2014 global * reset breaks page sections *\/\r\n        .yttv-wrapper,\r\n        .yttv-wrapper * {\r\n            box-sizing: border-box;\r\n        }\r\n\r\n        .ytdv-container {\r\n            max-width: 900px;\r\n            margin: 0 auto;\r\n            padding: 20px;\r\n        }\r\n\r\n        \/* Header *\/\r\n        .ytdv-header {\r\n            text-align: center;\r\n            margin-bottom: 40px;\r\n            padding: 30px 0;\r\n        }\r\n\r\n        .ytdv-logo-container {\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            gap: 15px;\r\n            margin-bottom: 20px;\r\n        }\r\n\r\n        .ytdv-logo {\r\n            width: 50px;\r\n            height: 50px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 12px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            box-shadow: 0 8px 25px rgba(145, 112, 255, 0.35);\r\n        }\r\n\r\n        .ytdv-youtube-icon {\r\n            width: 28px;\r\n            height: 28px;\r\n            fill: white;\r\n        }\r\n\r\n        .ytdv-title {\r\n            font-size: 2.2rem;\r\n            font-weight: 800;\r\n            background: linear-gradient(135deg, #ffffff, #f1f2f6);\r\n            -webkit-background-clip: text;\r\n            -webkit-text-fill-color: transparent;\r\n            background-clip: text;\r\n            margin-bottom: 8px;\r\n        }\r\n\r\n        .ytdv-subtitle {\r\n            font-size: 1rem;\r\n            color: rgba(255, 255, 255, 0.8);\r\n            font-weight: 500;\r\n        }\r\n\r\n        \/* Input Section *\/\r\n        .ytdv-input-section {\r\n            background: rgba(255, 255, 255, 0.1);\r\n            backdrop-filter: blur(20px);\r\n            border-radius: 20px;\r\n            padding: 30px;\r\n            margin-bottom: 30px;\r\n            border: 1px solid rgba(255, 255, 255, 0.2);\r\n            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);\r\n        }\r\n\r\n        .ytdv-input-title {\r\n            font-size: 1.3rem;\r\n            font-weight: 700;\r\n            color: white;\r\n            margin-bottom: 15px;\r\n            text-align: center;\r\n        }\r\n\r\n        .ytdv-input-group {\r\n            display: flex;\r\n            gap: 12px;\r\n            margin-bottom: 20px;\r\n        }\r\n\r\n        .ytdv-input-field {\r\n            flex: 1;\r\n            padding: 14px 18px;\r\n            border: 2px solid rgba(255, 255, 255, 0.2);\r\n            border-radius: 12px;\r\n            background: rgba(255, 255, 255, 0.1);\r\n            color: #ffffff;\r\n            font-size: 14px;\r\n            font-weight: 500;\r\n            transition: all 0.3s ease;\r\n            font-family: 'Inter', sans-serif;\r\n        }\r\n\r\n        .ytdv-input-field:focus {\r\n            outline: none;\r\n            border-color: #9170ff;\r\n            background: rgba(255, 255, 255, 0.15);\r\n        }\r\n\r\n        .ytdv-input-field::placeholder {\r\n            color: rgba(255, 255, 255, 0.6);\r\n        }\r\n\r\n        .ytdv-btn {\r\n            padding: 14px 20px;\r\n            border: none;\r\n            border-radius: 12px;\r\n            font-size: 14px;\r\n            font-weight: 600;\r\n            cursor: pointer;\r\n            transition: all 0.3s ease;\r\n            font-family: 'Inter', sans-serif;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n        }\r\n\r\n        .ytdv-btn-paste {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            box-shadow: 0 4px 15px rgba(145, 112, 255, 0.3);\r\n        }\r\n\r\n        .ytdv-btn-paste:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(145, 112, 255, 0.4);\r\n        }\r\n\r\n        .ytdv-btn-find {\r\n            background: linear-gradient(135deg, #b99cff, #9170ff);\r\n            color: white;\r\n            width: 100%;\r\n            justify-content: center;\r\n            padding: 16px;\r\n            font-size: 16px;\r\n            font-weight: 700;\r\n            box-shadow: 0 4px 15px rgba(185, 156, 255, 0.3);\r\n        }\r\n\r\n        .ytdv-btn-find:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(185, 156, 255, 0.4);\r\n        }\r\n\r\n        .ytdv-btn:disabled {\r\n            opacity: 0.6;\r\n            cursor: not-allowed;\r\n            transform: none !important;\r\n        }\r\n\r\n        .ytdv-btn-icon {\r\n            width: 16px;\r\n            height: 16px;\r\n            fill: currentColor;\r\n        }\r\n\r\n        \/* Loading *\/\r\n        .ytdv-loading {\r\n            display: none;\r\n            text-align: center;\r\n            padding: 40px;\r\n            background: rgba(255, 255, 255, 0.1);\r\n            backdrop-filter: blur(20px);\r\n            border-radius: 20px;\r\n            margin-bottom: 30px;\r\n            border: 1px solid rgba(255, 255, 255, 0.2);\r\n        }\r\n\r\n        .ytdv-loading-spinner {\r\n            width: 40px;\r\n            height: 40px;\r\n            border: 3px solid rgba(255, 255, 255, 0.3);\r\n            border-top: 3px solid #b99cff;\r\n            border-radius: 50%;\r\n            animation: ytdv-spin 1s linear infinite;\r\n            margin: 0 auto 20px;\r\n        }\r\n\r\n        .ytdv-loading-text {\r\n            font-size: 1.1rem;\r\n            font-weight: 600;\r\n            color: white;\r\n        }\r\n\r\n        \/* Results *\/\r\n        .ytdv-results {\r\n            display: none;\r\n        }\r\n\r\n        .ytdv-video-card {\r\n            background: #ffffff;\r\n            border-radius: 20px;\r\n            border: 2px solid rgba(145, 112, 255, 0.22);\r\n            overflow: hidden;\r\n            box-shadow: 0 8px 28px rgba(145, 112, 255, 0.12);\r\n        }\r\n\r\n        \/* Video Header *\/\r\n        .ytdv-video-header {\r\n            padding: 25px;\r\n            display: grid;\r\n            grid-template-columns: 1fr;\r\n            gap: 20px;\r\n        }\r\n\r\n        @media (min-width: 768px) {\r\n            .ytdv-video-header {\r\n                grid-template-columns: 300px 1fr;\r\n            }\r\n        }\r\n\r\n        .ytdv-thumbnail-container {\r\n            position: relative;\r\n            border-radius: 12px;\r\n            overflow: hidden;\r\n            aspect-ratio: 16\/9;\r\n            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);\r\n        }\r\n\r\n        .ytdv-thumbnail {\r\n            width: 100%;\r\n            height: 100%;\r\n            object-fit: cover;\r\n        }\r\n\r\n        .ytdv-video-info h2 {\r\n            font-size: 1.4rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 15px;\r\n            line-height: 1.3;\r\n        }\r\n\r\n        .ytdv-channel-info {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n            padding: 15px;\r\n            background: #f5f2ff;\r\n            border-radius: 12px;\r\n            margin-bottom: 20px;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        .ytdv-channel-avatar {\r\n            width: 40px;\r\n            height: 40px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 10px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .ytdv-channel-icon {\r\n            width: 20px;\r\n            height: 20px;\r\n            fill: white;\r\n        }\r\n\r\n        .ytdv-channel-details h3 {\r\n            font-size: 1rem;\r\n            font-weight: 600;\r\n            color: #111111;\r\n            margin-bottom: 2px;\r\n        }\r\n\r\n        .ytdv-channel-link {\r\n            color: #9170ff;\r\n            text-decoration: none;\r\n            font-weight: 600;\r\n        }\r\n\r\n        .ytdv-channel-link:hover {\r\n            color: #6b4fd6;\r\n        }\r\n\r\n        .ytdv-verified-text {\r\n            color: #666666;\r\n            font-size: 0.85rem;\r\n        }\r\n\r\n        \/* Stats Grid *\/\r\n        .ytdv-stats-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\r\n            gap: 15px;\r\n        }\r\n\r\n        .ytdv-stat-card {\r\n            background: #faf8ff;\r\n            border-radius: 12px;\r\n            padding: 15px;\r\n            text-align: center;\r\n            border: 1px solid rgba(145, 112, 255, 0.22);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .ytdv-stat-card:hover {\r\n            transform: translateY(-3px);\r\n        }\r\n\r\n        .ytdv-stat-icon {\r\n            width: 24px;\r\n            height: 24px;\r\n            margin: 0 auto 8px;\r\n            padding: 6px;\r\n            border-radius: 8px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .ytdv-stat-card.ytdv-views .ytdv-stat-icon {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n        }\r\n\r\n        .ytdv-stat-card.ytdv-likes .ytdv-stat-icon {\r\n            background: linear-gradient(135deg, #b99cff, #9170ff);\r\n        }\r\n\r\n        .ytdv-stat-card.ytdv-published .ytdv-stat-icon {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n        }\r\n\r\n        .ytdv-stat-icon svg {\r\n            width: 12px;\r\n            height: 12px;\r\n            fill: white;\r\n        }\r\n\r\n        .ytdv-stat-label {\r\n            font-size: 0.75rem;\r\n            color: #666666;\r\n            font-weight: 500;\r\n            text-transform: uppercase;\r\n            letter-spacing: 0.5px;\r\n            margin-bottom: 4px;\r\n        }\r\n\r\n        .ytdv-stat-value {\r\n            font-size: 1.1rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n        }\r\n\r\n        \/* Description Section *\/\r\n        .ytdv-description-section {\r\n            padding: 25px;\r\n            background: #faf8ff;\r\n            border-top: 1px solid rgba(145, 112, 255, 0.15);\r\n        }\r\n\r\n        .ytdv-section-header {\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: space-between;\r\n            margin-bottom: 20px;\r\n            flex-wrap: wrap;\r\n            gap: 15px;\r\n        }\r\n\r\n        .ytdv-section-title {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n        }\r\n\r\n        .ytdv-section-icon {\r\n            width: 40px;\r\n            height: 40px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 10px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .ytdv-section-icon svg {\r\n            width: 20px;\r\n            height: 20px;\r\n            fill: white;\r\n        }\r\n\r\n        .ytdv-section-title-text h3 {\r\n            font-size: 1.2rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 2px;\r\n        }\r\n\r\n        .ytdv-section-title-text p {\r\n            font-size: 0.85rem;\r\n            color: #666666;\r\n        }\r\n\r\n        .ytdv-copy-btn {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            border: none;\r\n            padding: 10px 16px;\r\n            border-radius: 10px;\r\n            cursor: pointer;\r\n            font-weight: 600;\r\n            font-size: 0.9rem;\r\n            transition: all 0.3s ease;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n        }\r\n\r\n        .ytdv-copy-btn:hover {\r\n            transform: translateY(-2px);\r\n        }\r\n\r\n        .ytdv-copy-btn.ytdv-copied {\r\n            background: linear-gradient(135deg, #6b4fd6, #b99cff);\r\n        }\r\n\r\n        .ytdv-copy-icon {\r\n            width: 14px;\r\n            height: 14px;\r\n            fill: currentColor;\r\n        }\r\n\r\n        .ytdv-description-content {\r\n            background: #ffffff;\r\n            padding: 20px;\r\n            border-radius: 12px;\r\n            border-left: 4px solid #9170ff;\r\n            color: #333333;\r\n            line-height: 1.6;\r\n            font-size: 0.9rem;\r\n            white-space: pre-wrap;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        \/* Captions Section *\/\r\n        .ytdv-captions-section {\r\n            padding: 25px;\r\n            background: #ffffff;\r\n            border-top: 1px solid rgba(145, 112, 255, 0.15);\r\n        }\r\n\r\n        .ytdv-captions-icon {\r\n            background: linear-gradient(135deg, #b99cff, #9170ff);\r\n        }\r\n\r\n        .ytdv-captions-content {\r\n            background: #faf8ff;\r\n            padding: 20px;\r\n            border-radius: 12px;\r\n            border-left: 4px solid #9170ff;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        .ytdv-caption-item {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n            margin-bottom: 10px;\r\n            font-size: 0.9rem;\r\n        }\r\n\r\n        .ytdv-caption-dot {\r\n            width: 8px;\r\n            height: 8px;\r\n            background: #9170ff;\r\n            border-radius: 50%;\r\n        }\r\n\r\n        .ytdv-caption-label {\r\n            color: #9170ff;\r\n            font-weight: 600;\r\n        }\r\n\r\n        .ytdv-caption-value {\r\n            color: #333333;\r\n        }\r\n\r\n        \/* Error State *\/\r\n        .ytdv-error {\r\n            background: rgba(255, 107, 107, 0.1);\r\n            backdrop-filter: blur(20px);\r\n            border-radius: 20px;\r\n            padding: 30px;\r\n            border: 1px solid rgba(255, 107, 107, 0.2);\r\n            text-align: center;\r\n            margin-bottom: 30px;\r\n        }\r\n\r\n        .ytdv-error-icon {\r\n            font-size: 3rem;\r\n            margin-bottom: 15px;\r\n        }\r\n\r\n        .ytdv-error h3 {\r\n            font-size: 1.3rem;\r\n            font-weight: 700;\r\n            color: #ff6b6b;\r\n            margin-bottom: 10px;\r\n        }\r\n\r\n        .ytdv-error p {\r\n            font-size: 0.95rem;\r\n            color: rgba(255, 107, 107, 0.8);\r\n            margin-bottom: 8px;\r\n        }\r\n\r\n        .ytdv-error .ytdv-error-details {\r\n            color: #666666;\r\n            font-size: 0.85rem;\r\n        }\r\n\r\n        \/* Features Grid *\/\r\n        .ytdv-features-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\r\n            gap: 15px;\r\n            margin-bottom: 30px;\r\n        }\r\n\r\n        .ytdv-feature-card {\r\n            background: #faf8ff;\r\n            border-radius: 12px;\r\n            padding: 20px;\r\n            text-align: center;\r\n            border: 1px solid rgba(145, 112, 255, 0.22);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .ytdv-feature-card:hover {\r\n            transform: translateY(-5px);\r\n        }\r\n\r\n        .ytdv-feature-icon {\r\n            font-size: 1.8rem;\r\n            margin-bottom: 8px;\r\n            display: block;\r\n        }\r\n\r\n        .ytdv-feature-text {\r\n            font-size: 0.85rem;\r\n            font-weight: 600;\r\n            color: #111111;\r\n        }\r\n\r\n        \/* Animations *\/\r\n        @keyframes ytdv-spin {\r\n            to {\r\n                transform: rotate(360deg);\r\n            }\r\n        }\r\n\r\n        \/* \r\n       * FIX: Custom Scrollbar styles are returned to global scope.\r\n       * Prefixing them with an ID prevents them from applying to the main\r\n       * document scrollbar. This change makes them work as intended again.\r\n       *\/\r\n        ::-webkit-scrollbar {\r\n            width: 6px;\r\n        }\r\n\r\n        ::-webkit-scrollbar-track {\r\n            background: rgba(255, 255, 255, 0.1);\r\n            border-radius: 3px;\r\n        }\r\n\r\n        ::-webkit-scrollbar-thumb {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 3px;\r\n        }\r\n\r\n        \/* Responsive *\/\r\n        @media (max-width: 768px) {\r\n            .ytdv-container {\r\n                padding: 15px;\r\n            }\r\n\r\n            .ytdv-title {\r\n                font-size: 1.8rem;\r\n            }\r\n\r\n            .ytdv-input-group {\r\n                flex-direction: column;\r\n            }\r\n\r\n            .ytdv-input-section,\r\n            .ytdv-loading,\r\n            .ytdv-error {\r\n                padding: 20px;\r\n            }\r\n\r\n            .ytdv-video-header,\r\n            .ytdv-description-section,\r\n            .ytdv-captions-section {\r\n                padding: 20px;\r\n            }\r\n\r\n            .ytdv-section-header {\r\n                flex-direction: column;\r\n                align-items: flex-start;\r\n            }\r\n        }\r\n\r\n        \/* Search Again Button *\/\r\n        .ytdv-search-again-section {\r\n            padding: 25px;\r\n            background: rgba(255, 255, 255, 0.05);\r\n            border-top: 1px solid rgba(255, 255, 255, 0.1);\r\n            text-align: center;\r\n        }\r\n\r\n        .ytdv-btn-search-again {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            border: none;\r\n            padding: 14px 24px;\r\n            border-radius: 12px;\r\n            cursor: pointer;\r\n            font-weight: 600;\r\n            font-size: 1rem;\r\n            transition: all 0.3s ease;\r\n            display: inline-flex;\r\n            align-items: center;\r\n            gap: 10px;\r\n            box-shadow: 0 4px 15px rgba(145, 112, 255, 0.3);\r\n        }\r\n\r\n        .ytdv-btn-search-again:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(145, 112, 255, 0.4);\r\n        }\r\n\r\n        .ytdv-search-again-icon {\r\n            width: 16px;\r\n            height: 16px;\r\n            fill: currentColor;\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\r\n\r\n    <!-- youtube tools start here -->\r\n\r\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Inter:wght@400;500;600;700;800&display=swap\" rel=\"stylesheet\">\r\n    <style>\r\n        \/* \r\n         * FIX: Restored the global reset. This is crucial for removing the default\r\n         * body margin that was breaking the full-page background. This is a\r\n         * common and safe reset.\r\n         *\/\r\n        .yttv-wrapper * {\r\n            box-sizing: border-box;\r\n        }\r\n\r\n        \/* \r\n         * The main wrapper styles for encapsulation,\r\n         * ensuring the background and font settings don't leak globally\r\n         * beyond the component itself.\r\n         *\/\r\n        .yttv-wrapper {\r\n            font-family: 'Varela Round', 'Inter', sans-serif;\r\n            background: #ffffff;\r\n            color: #111111;\r\n            min-height: 100vh;\r\n            line-height: 1.5;\r\n            font-size: 1rem;\r\n            font-weight: 400;\r\n            margin-top: 3rem;\r\n            position: relative;\r\n            overflow-x: hidden;\r\n        }\r\n\r\n        .yttv-wrapper::before {\r\n            content: '';\r\n            position: absolute;\r\n            inset: 0;\r\n            background:\r\n                radial-gradient(circle at 18% 22%, rgba(145, 112, 255, 0.1) 0%, transparent 45%),\r\n                radial-gradient(circle at 82% 78%, rgba(145, 112, 255, 0.07) 0%, transparent 48%);\r\n            pointer-events: none;\r\n            z-index: 0;\r\n        }\r\n\r\n        .yttv-container {\r\n            max-width: 60%;\r\n            margin: 0 auto;\r\n            padding: 20px;\r\n            position: relative;\r\n            z-index: 1;\r\n        }\r\n\r\n        \/* Header *\/\r\n        .yttv-header {\r\n            text-align: center;\r\n            margin-bottom: 40px;\r\n            padding: 30px 0;\r\n        }\r\n\r\n        .yttv-logo-container {\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            gap: 15px;\r\n            margin-bottom: 20px;\r\n        }\r\n\r\n        .yttv-logo {\r\n            width: 50px;\r\n            height: 50px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 12px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            box-shadow: 0 8px 25px rgba(145, 112, 255, 0.35);\r\n            border: 2px solid rgba(145, 112, 255, 0.3);\r\n        }\r\n\r\n        .yttv-youtube-icon {\r\n            width: 28px;\r\n            height: 28px;\r\n            fill: white;\r\n        }\r\n\r\n        .yttv-title {\r\n            font-size: 2.2rem;\r\n            font-weight: 800;\r\n            color: #111111;\r\n            -webkit-text-fill-color: #111111;\r\n            margin-bottom: 8px;\r\n        }\r\n\r\n        .yttv-title .logo-purple {\r\n            color: #9170ff;\r\n            -webkit-text-fill-color: #9170ff;\r\n        }\r\n\r\n        .yttv-subtitle {\r\n            font-size: 1rem;\r\n            color: #555555;\r\n            font-weight: 500;\r\n        }\r\n\r\n        \/* Input Section *\/\r\n        .yttv-input-section {\r\n            background: #ffffff;\r\n            border-radius: 20px;\r\n            padding: 30px;\r\n            margin-bottom: 30px;\r\n            border: 2px solid rgba(145, 112, 255, 0.28);\r\n            box-shadow: 0 8px 28px rgba(145, 112, 255, 0.12);\r\n        }\r\n\r\n        .yttv-input-title {\r\n            font-size: 1.3rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 15px;\r\n            text-align: center;\r\n        }\r\n\r\n        .yttv-input-group {\r\n            display: flex;\r\n            gap: 12px;\r\n            margin-bottom: 20px;\r\n        }\r\n\r\n     .yttv-input-field {\r\n\tflex: 1 !important;\r\n\tpadding: 14px 18px !important;\r\n\tborder: 2px solid rgba(145, 112, 255, 0.35) !important;\r\n\tborder-radius: 12px !important;\r\n\tbackground: #ffffff !important;\r\n\tcolor: #111111 !important;\r\n\tfont-size: 14px !important;\r\n\tfont-weight: 500 !important;\r\n\ttransition: all 0.3s ease !important;\r\n\tfont-family: 'Inter', sans-serif !important;\r\n}\r\n\r\n        .yttv-input-field:focus {\r\n            outline: none !important;\r\n            border-color: #9170ff !important;\r\n            box-shadow: 0 0 0 4px rgba(145, 112, 255, 0.15) !important;\r\n        }\r\n\r\n        .yttv-input-field::placeholder {\r\n            color: #666666 !important;\r\n        }\r\n\r\n        .yttv-btn {\r\n            padding: 14px 20px;\r\n            border: none;\r\n            border-radius: 12px;\r\n            font-size: 14px;\r\n            font-weight: 600;\r\n            cursor: pointer;\r\n            transition: all 0.3s ease;\r\n            font-family: 'Inter', sans-serif;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n        }\r\n\r\n        .yttv-btn-paste {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            box-shadow: 0 4px 15px rgba(145, 112, 255, 0.35);\r\n        }\r\n\r\n        .yttv-btn-paste:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(145, 112, 255, 0.4);\r\n        }\r\n\r\n     .yttv-btn-find {\r\n\tbackground: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n\tcolor: white;\r\n\twidth: 100%;\r\n\tjustify-content: center;\r\n\tpadding: 16px;\r\n\tfont-size: 16px;\r\n\tfont-weight: 700;\r\n\tbox-shadow: 0 4px 15px rgba(145, 112, 255, 0.35);\r\n}\r\n\r\n        .yttv-btn-find:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(185, 156, 255, 0.4);\r\n        }\r\n\r\n        .yttv-btn:disabled {\r\n            opacity: 0.6;\r\n            cursor: not-allowed;\r\n            transform: none !important;\r\n        }\r\n\r\n        .yttv-btn-icon {\r\n            width: 16px;\r\n            height: 16px;\r\n            fill: currentColor;\r\n        }\r\n\r\n        \/* Loading *\/\r\n        .yttv-loading {\r\n            display: none;\r\n            text-align: center;\r\n            padding: 40px;\r\n            background: #ffffff;\r\n            border-radius: 20px;\r\n            margin-bottom: 30px;\r\n            border: 2px solid rgba(145, 112, 255, 0.22);\r\n            box-shadow: 0 8px 28px rgba(145, 112, 255, 0.1);\r\n        }\r\n\r\n        .yttv-loading-spinner {\r\n            width: 40px;\r\n            height: 40px;\r\n            border: 3px solid rgba(255, 255, 255, 0.3);\r\n            border-top: 3px solid #b99cff;\r\n            border-radius: 50%;\r\n            animation: yttv-spin 1s linear infinite;\r\n            margin: 0 auto 20px;\r\n        }\r\n\r\n        .yttv-loading-text {\r\n            font-size: 1.1rem;\r\n            font-weight: 600;\r\n            color: #111111;\r\n        }\r\n\r\n        \/* Results *\/\r\n        .yttv-results {\r\n            display: none;\r\n        }\r\n\r\n        .yttv-video-card {\r\n            background: #ffffff;\r\n            border-radius: 20px;\r\n            border: 2px solid rgba(145, 112, 255, 0.22);\r\n            overflow: hidden;\r\n            box-shadow: 0 8px 28px rgba(145, 112, 255, 0.12);\r\n        }\r\n\r\n        \/* Video Header *\/\r\n        .yttv-video-header {\r\n            padding: 25px;\r\n            display: flex;\r\n            flex-direction: column;\r\n            gap: 20px;\r\n        }\r\n\r\n        .yttv-thumbnail-container {\r\n            position: relative;\r\n            border-radius: 12px;\r\n            overflow: hidden;\r\n            aspect-ratio: 16\/9;\r\n            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);\r\n        }\r\n\r\n        .yttv-thumbnail {\r\n            width: 100%;\r\n            height: 100%;\r\n            object-fit: cover;\r\n        }\r\n\r\n        .yttv-video-info .yttv-video-title {\r\n            font-size: 1.4rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 15px;\r\n            line-height: 1.3;\r\n        }\r\n\r\n        .yttv-channel-info {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n            padding: 15px;\r\n            background: #f5f2ff;\r\n            border-radius: 12px;\r\n            margin-bottom: 20px;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        .yttv-channel-avatar {\r\n            width: 40px;\r\n            height: 40px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 10px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .yttv-channel-icon {\r\n            width: 20px;\r\n            height: 20px;\r\n            fill: white;\r\n        }\r\n\r\n        .yttv-channel-details .yttv-channel-name {\r\n            font-size: 1rem;\r\n            font-weight: 600;\r\n            color: #111111;\r\n            margin-bottom: 2px;\r\n        }\r\n\r\n        .yttv-channel-link {\r\n            color: #9170ff;\r\n            text-decoration: none;\r\n            font-weight: 600;\r\n        }\r\n\r\n        .yttv-channel-link:hover {\r\n            color: #6b4fd6;\r\n        }\r\n\r\n        .yttv-verified-text {\r\n            color: #666666;\r\n            font-size: 0.85rem;\r\n        }\r\n\r\n        \/* Stats Grid *\/\r\n        .yttv-stats-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\r\n            gap: 15px;\r\n        }\r\n\r\n        .yttv-stat-card {\r\n            background: #faf8ff;\r\n            border-radius: 12px;\r\n            padding: 15px;\r\n            text-align: center;\r\n            border: 1px solid rgba(145, 112, 255, 0.22);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .yttv-stat-card:hover {\r\n            transform: translateY(-3px);\r\n        }\r\n\r\n        .yttv-stat-icon {\r\n            width: 24px;\r\n            height: 24px;\r\n            margin: 0 auto 8px;\r\n            padding: 6px;\r\n            border-radius: 8px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .yttv-stat-card.yttv-views .yttv-stat-icon {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n        }\r\n\r\n        .yttv-stat-card.yttv-likes .yttv-stat-icon {\r\n            background: linear-gradient(135deg, #b99cff, #9170ff);\r\n        }\r\n\r\n        .yttv-stat-card.yttv-published .yttv-stat-icon {\r\n            background: linear-gradient(135deg, #7d5af0, #5b43c9);\r\n        }\r\n\r\n        .yttv-stat-icon svg {\r\n            width: 12px;\r\n            height: 12px;\r\n            fill: white;\r\n        }\r\n\r\n        .yttv-stat-label {\r\n            font-size: 0.75rem;\r\n            color: #666666;\r\n            font-weight: 500;\r\n            text-transform: uppercase;\r\n            letter-spacing: 0.5px;\r\n            margin-bottom: 4px;\r\n        }\r\n\r\n        .yttv-stat-value {\r\n            font-size: 1.1rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n        }\r\n\r\n        \/* Title Section *\/\r\n        .yttv-title-section {\r\n            padding: 25px;\r\n            background: #faf8ff;\r\n            border-top: 1px solid rgba(145, 112, 255, 0.15);\r\n        }\r\n\r\n        .yttv-section-header {\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: space-between;\r\n            margin-bottom: 20px;\r\n            flex-wrap: wrap;\r\n            gap: 15px;\r\n        }\r\n\r\n        .yttv-section-title {\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 12px;\r\n        }\r\n\r\n        .yttv-section-icon {\r\n            width: 40px;\r\n            height: 40px;\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 10px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n        }\r\n\r\n        .yttv-section-icon svg {\r\n            width: 20px;\r\n            height: 20px;\r\n            fill: white;\r\n        }\r\n\r\n        .yttv-section-title-text .yttv-section-title-heading {\r\n            font-size: 1.2rem;\r\n            font-weight: 700;\r\n            color: #111111;\r\n            margin-bottom: 2px;\r\n        }\r\n\r\n        .yttv-section-title-text p {\r\n            font-size: 0.85rem;\r\n            color: #666666;\r\n        }\r\n\r\n        .yttv-copy-btn {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            border: none;\r\n            padding: 10px 16px;\r\n            border-radius: 10px;\r\n            cursor: pointer;\r\n            font-weight: 600;\r\n            font-size: 0.9rem;\r\n            transition: all 0.3s ease;\r\n            display: flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n        }\r\n\r\n        .yttv-copy-btn:hover {\r\n            transform: translateY(-2px);\r\n        }\r\n\r\n        .yttv-copy-btn.yttv-copied {\r\n            background: linear-gradient(135deg, #6b4fd6, #b99cff);\r\n        }\r\n\r\n        .yttv-copy-icon {\r\n            width: 14px;\r\n            height: 14px;\r\n            fill: currentColor;\r\n        }\r\n\r\n        .yttv-title-content {\r\n            background: #ffffff;\r\n            padding: 20px;\r\n            border-radius: 12px;\r\n            border-left: 4px solid #9170ff;\r\n            color: #333333;\r\n            line-height: 1.6;\r\n            font-size: 0.9rem;\r\n            white-space: pre-wrap;\r\n            border: 1px solid rgba(145, 112, 255, 0.2);\r\n        }\r\n\r\n        \/* Error State *\/\r\n        .yttv-error {\r\n            background: rgba(255, 107, 107, 0.1);\r\n            backdrop-filter: blur(20px);\r\n            border-radius: 20px;\r\n            padding: 30px;\r\n            border: 1px solid rgba(255, 107, 107, 0.2);\r\n            text-align: center;\r\n            margin-bottom: 30px;\r\n        }\r\n\r\n        .yttv-error-icon {\r\n            font-size: 3rem;\r\n            margin-bottom: 15px;\r\n        }\r\n\r\n        .yttv-error .yttv-error-title {\r\n            font-size: 1.3rem;\r\n            font-weight: 700;\r\n            color: #ff6b6b;\r\n            margin-bottom: 10px;\r\n        }\r\n\r\n        .yttv-error .yttv-error-message {\r\n            font-size: 0.95rem;\r\n            color: rgba(255, 107, 107, 0.8);\r\n            margin-bottom: 8px;\r\n        }\r\n\r\n        .yttv-error .yttv-error-details {\r\n            color: rgba(255, 255, 255, 0.7);\r\n            font-size: 0.85rem;\r\n        }\r\n\r\n        \/* Features Grid *\/\r\n        .yttv-features-grid {\r\n            display: grid;\r\n            grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\r\n            gap: 15px;\r\n            margin-bottom: 30px;\r\n        }\r\n\r\n        .yttv-feature-card {\r\n            background: #faf8ff;\r\n            border-radius: 12px;\r\n            padding: 20px;\r\n            text-align: center;\r\n            border: 1px solid rgba(145, 112, 255, 0.22);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .yttv-feature-card:hover {\r\n            transform: translateY(-5px);\r\n        }\r\n\r\n        .yttv-feature-icon {\r\n            font-size: 1.8rem;\r\n            margin-bottom: 8px;\r\n            display: block;\r\n        }\r\n\r\n        .yttv-feature-text {\r\n            font-size: 0.85rem;\r\n            font-weight: 600;\r\n            color: #161414;\r\n        }\r\n\r\n        \/* Animations *\/\r\n        @keyframes yttv-spin {\r\n            to {\r\n                transform: rotate(360deg);\r\n            }\r\n        }\r\n\r\n        \/* \r\n         * FIX: Custom Scrollbar styles are scoped to wrapper.\r\n         * Prefixing them with wrapper class prevents them from applying to the main\r\n         * document scrollbar. This change makes them work as intended again.\r\n         *\/\r\n        .yttv-wrapper ::-webkit-scrollbar {\r\n            width: 6px;\r\n        }\r\n\r\n        .yttv-wrapper ::-webkit-scrollbar-track {\r\n            background: rgba(255, 255, 255, 0.1);\r\n            border-radius: 3px;\r\n        }\r\n\r\n        .yttv-wrapper ::-webkit-scrollbar-thumb {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            border-radius: 3px;\r\n        }\r\n\r\n        \/* Responsive *\/\r\n        @media (max-width: 768px) {\r\n            .yttv-container {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 1.8rem;\r\n            }\r\n\r\n            .yttv-input-group {\r\n                flex-direction: column;\r\n            }\r\n\r\n            .yttv-input-section,\r\n            .yttv-loading,\r\n            .yttv-error {\r\n                padding: 20px;\r\n            }\r\n\r\n            .yttv-video-header {\r\n                padding: 20px;\r\n            }\r\n        }\r\n\r\n        \/* Search Again Button *\/\r\n        .yttv-search-again-section {\r\n            padding: 25px;\r\n            background: #faf8ff;\r\n            border-top: 1px solid rgba(145, 112, 255, 0.15);\r\n            text-align: center;\r\n        }\r\n\r\n        .yttv-btn-search-again {\r\n            background: linear-gradient(135deg, #9170ff, #6b4fd6);\r\n            color: white;\r\n            border: none;\r\n            padding: 14px 24px;\r\n            border-radius: 12px;\r\n            cursor: pointer;\r\n            font-weight: 600;\r\n            font-size: 1rem;\r\n            transition: all 0.3s ease;\r\n            display: inline-flex;\r\n            align-items: center;\r\n            gap: 10px;\r\n            box-shadow: 0 4px 15px rgba(145, 112, 255, 0.35);\r\n        }\r\n\r\n        .yttv-btn-search-again:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 6px 20px rgba(145, 112, 255, 0.4);\r\n        }\r\n\r\n        .yttv-search-again-icon {\r\n            width: 16px;\r\n            height: 16px;\r\n            fill: currentColor;\r\n        }\r\n      \r\n              @media (max-width: 991px) {\r\n            .yttv-container {\r\n                max-width: 720px;\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 2rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-input-section,\r\n            .yttv-loading,\r\n            .yttv-error {\r\n                padding: 25px;\r\n            }\r\n\r\n            .yttv-input-title {\r\n                font-size: 1.2rem;\r\n            }\r\n\r\n            .yttv-input-group {\r\n                flex-direction: column;\r\n                gap: 10px;\r\n            }\r\n\r\n            .yttv-btn {\r\n                width: 100%;\r\n                justify-content: center;\r\n            }\r\n\r\n            .yttv-video-header {\r\n                flex-direction: column;\r\n                padding: 20px;\r\n                gap: 15px;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 1.2rem;\r\n                margin-bottom: 10px;\r\n            }\r\n\r\n            .yttv-channel-info {\r\n                padding: 10px;\r\n                margin-bottom: 15px;\r\n            }\r\n\r\n            .yttv-channel-name {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-stats-grid {\r\n                grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));\r\n                gap: 10px;\r\n            }\r\n\r\n            .yttv-stat-card {\r\n                padding: 12px;\r\n            }\r\n\r\n            .yttv-stat-label {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-stat-value {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-section-header {\r\n                flex-direction: column;\r\n                align-items: flex-start;\r\n                gap: 10px;\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 1.1rem;\r\n            }\r\n\r\n            .yttv-copy-btn {\r\n                width: 100%;\r\n                justify-content: center;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                padding: 15px;\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-title {\r\n                font-size: 1.2rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-message {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-features-grid {\r\n                grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));\r\n                gap: 10px;\r\n            }\r\n\r\n            .yttv-feature-card {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-feature-text {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-btn-search-again {\r\n                font-size: 0.9rem;\r\n                padding: 12px 20px;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 768px) {\r\n            .yttv-container {\r\n                max-width: 100%;\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 1.8rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-input-section,\r\n            .yttv-loading,\r\n            .yttv-error {\r\n                padding: 20px;\r\n            }\r\n\r\n            .yttv-input-title {\r\n                font-size: 1.1rem;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 1.1rem;\r\n            }\r\n\r\n            .yttv-stats-grid {\r\n                grid-template-columns: 1fr 1fr; \/* Two columns on smaller screens *\/\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-btn-find {\r\n                padding: 14px;\r\n                font-size: 15px;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 600px) {\r\n            .yttv-header {\r\n                padding: 20px 0;\r\n                margin-bottom: 30px;\r\n            }\r\n\r\n            .yttv-logo-container {\r\n                gap: 10px;\r\n                margin-bottom: 15px;\r\n            }\r\n\r\n            .yttv-logo {\r\n                width: 45px;\r\n                height: 45px;\r\n                border-radius: 10px;\r\n            }\r\n\r\n            .yttv-youtube-icon {\r\n                width: 25px;\r\n                height: 25px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 1.6rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-input-field {\r\n                padding: 12px 15px !important;\r\n                font-size: 13px !important;\r\n            }\r\n\r\n            .yttv-btn {\r\n                padding: 12px 15px;\r\n                font-size: 13px;\r\n            }\r\n\r\n            .yttv-btn-find {\r\n                padding: 14px;\r\n                font-size: 14px;\r\n            }\r\n\r\n            .yttv-loading-spinner {\r\n                width: 35px;\r\n                height: 35px;\r\n            }\r\n\r\n            .yttv-loading-text {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-video-header {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-channel-avatar {\r\n                width: 35px;\r\n                height: 35px;\r\n            }\r\n\r\n            .yttv-channel-icon {\r\n                width: 18px;\r\n                height: 18px;\r\n            }\r\n\r\n            .yttv-channel-name {\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-verified-text {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-stats-grid {\r\n                grid-template-columns: 1fr; \/* Stack on very small screens *\/\r\n            }\r\n\r\n            .yttv-stat-card {\r\n                padding: 10px;\r\n            }\r\n\r\n            .yttv-stat-label {\r\n                font-size: 0.65rem;\r\n            }\r\n\r\n            .yttv-stat-value {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-section-icon {\r\n                width: 35px;\r\n                height: 35px;\r\n            }\r\n\r\n            .yttv-section-icon svg {\r\n                width: 18px;\r\n                height: 18px;\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 0.95rem;\r\n            }\r\n\r\n            .yttv-section-title-text p {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-copy-btn {\r\n                padding: 8px 12px;\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                padding: 12px;\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-icon {\r\n                font-size: 2.5rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-title {\r\n                font-size: 1.1rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-message {\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-features-grid {\r\n                grid-template-columns: 1fr 1fr;\r\n            }\r\n\r\n            .yttv-feature-card {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-feature-text {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-btn-search-again {\r\n                font-size: 0.85rem;\r\n                padding: 10px 18px;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 400px) {\r\n            .yttv-container {\r\n                padding: 10px;\r\n            }\r\n\r\n            .yttv-title {\r\n                font-size: 1.4rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-input-section,\r\n            .yttv-loading,\r\n            .yttv-error {\r\n                padding: 15px;\r\n            }\r\n\r\n            .yttv-input-title {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-btn-paste {\r\n                padding: 10px 12px;\r\n                font-size: 12px;\r\n            }\r\n\r\n            .yttv-btn-find {\r\n                padding: 12px;\r\n                font-size: 13px;\r\n            }\r\n\r\n            .yttv-loading-spinner {\r\n                width: 30px;\r\n                height: 30px;\r\n            }\r\n\r\n            .yttv-loading-text {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 0.95rem;\r\n            }\r\n\r\n            .yttv-channel-name {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-verified-text {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-section-title-text p {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-copy-btn {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-title {\r\n                font-size: 1rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-message {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-features-grid {\r\n                grid-template-columns: 1fr; \/* Stack on smallest screens *\/\r\n            }\r\n\r\n            .yttv-feature-card {\r\n                padding: 12px;\r\n            }\r\n\r\n            .yttv-feature-text {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-btn-search-again {\r\n                font-size: 0.8rem;\r\n                padding: 8px 15px;\r\n            }\r\n        }\r\n\r\n        @media (max-width: 375px) {\r\n            .yttv-title {\r\n                font-size: 1.3rem;\r\n            }\r\n\r\n            .yttv-subtitle {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-input-field {\r\n                font-size: 12px !important;\r\n            }\r\n\r\n            .yttv-btn-paste {\r\n                font-size: 11px;\r\n            }\r\n\r\n            .yttv-btn-find {\r\n                font-size: 12px;\r\n            }\r\n\r\n            .yttv-video-info .yttv-video-title {\r\n                font-size: 0.9rem;\r\n            }\r\n\r\n            .yttv-channel-name {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-verified-text {\r\n                font-size: 0.65rem;\r\n            }\r\n\r\n            .yttv-stat-label {\r\n                font-size: 0.6rem;\r\n            }\r\n\r\n            .yttv-stat-value {\r\n                font-size: 0.8rem;\r\n            }\r\n\r\n            .yttv-section-title-text .yttv-section-title-heading {\r\n                font-size: 0.85rem;\r\n            }\r\n\r\n            .yttv-section-title-text p {\r\n                font-size: 0.7rem;\r\n            }\r\n\r\n            .yttv-copy-btn {\r\n                font-size: 0.7rem;\r\n                padding: 7px 10px;\r\n            }\r\n\r\n            .yttv-title-content {\r\n                font-size: 0.65rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-title {\r\n                font-size: 0.95rem;\r\n            }\r\n\r\n            .yttv-error .yttv-error-message {\r\n                font-size: 0.75rem;\r\n            }\r\n\r\n            .yttv-feature-text {\r\n                font-size: 0.65rem;\r\n            }\r\n\r\n            .yttv-btn-search-again {\r\n                font-size: 0.75rem;\r\n                padding: 7px 12px;\r\n            }\r\n        }\r\n    <\/style>\r\n\r\n    <div class=\"yttv-wrapper\">\r\n        <div class=\"yttv-container\">\r\n            <!-- Header -->\r\n            <div class=\"yttv-header\">\r\n                <div class=\"yttv-logo-container\">\r\n                    <div class=\"yttv-logo\">\r\n                        <svg class=\"yttv-youtube-icon\" viewBox=\"0 0 24 24\">\r\n                            <path d=\"M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z\"><\/path>\r\n                        <\/svg>\r\n                    <\/div>\r\n                    <div>\r\n                        <h1 class=\"yttv-title\"><span class=\"logo-purple\">YouTube<\/span> Title Viewer<\/h1>\r\n                        <p class=\"yttv-subtitle\">Extract video titles instantly<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <!-- Features Grid -->\r\n                <div class=\"yttv-features-grid\">\r\n                    <div class=\"yttv-feature-card\">\r\n                        <span class=\"yttv-feature-icon\">\u26a1<\/span>\r\n                        <p class=\"yttv-feature-text\">Fast<\/p>\r\n                    <\/div>\r\n                    <div class=\"yttv-feature-card\">\r\n                        <span class=\"yttv-feature-icon\">\ud83d\udd12<\/span>\r\n                        <p class=\"yttv-feature-text\">Secure<\/p>\r\n                    <\/div>\r\n                    <div class=\"yttv-feature-card\">\r\n                        <span class=\"yttv-feature-icon\">\ud83d\udcf1<\/span>\r\n                        <p class=\"yttv-feature-text\">Mobile<\/p>\r\n                    <\/div>\r\n                    <div class=\"yttv-feature-card\">\r\n                        <span class=\"yttv-feature-icon\">\ud83c\udd93<\/span>\r\n                        <p class=\"yttv-feature-text\">Free<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- Input Section -->\r\n            <div class=\"yttv-input-section\">\r\n                <div class=\"yttv-input-title\">Enter YouTube URL<\/div>\r\n\r\n                <div class=\"yttv-input-group\">\r\n                    <input type=\"text\" id=\"yttv-videoInput\" class=\"yttv-input-field\" placeholder=\"Paste YouTube URL here...\">\r\n                    <button class=\"yttv-btn yttv-btn-paste\" onclick=\"pasteFromClipboard()\">\r\n                        <svg class=\"yttv-btn-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                            <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"><\/path>\r\n                        <\/svg>\r\n                        Paste\r\n                    <\/button>\r\n                <\/div>\r\n\r\n                <button class=\"yttv-btn yttv-btn-find\" onclick=\"findTitle()\">\r\n                    <svg class=\"yttv-btn-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                        <path d=\"M9.5,3L8,6.5H4.5L7.91,9.91L6.5,16.5L9.5,14L12.5,16.5L11.09,9.91L14.5,6.5H11L9.5,3Z\"><\/path>\r\n                    <\/svg>\r\n                    Extract Title\r\n                <\/button>\r\n            <\/div>\r\n\r\n            <!-- Loading State -->\r\n            <div class=\"yttv-loading\" id=\"yttv-loading\">\r\n                <div class=\"yttv-loading-spinner\"><\/div>\r\n                <p class=\"yttv-loading-text\">Processing your request...<\/p>\r\n            <\/div>\r\n\r\n            <!-- Results Container -->\r\n            <div class=\"yttv-results\" id=\"yttv-results\">\r\n                <!-- Results will be populated here -->\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\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        let isProcessing = false;\r\n\r\n        async function pasteFromClipboard() {\r\n            try {\r\n                const text = await navigator.clipboard.readText();\r\n                document.getElementById('yttv-videoInput').value = text;\r\n            } catch (err) {\r\n                console.error('Failed to read clipboard contents: ', err);\r\n                alert('Unable to access clipboard. Please paste manually.');\r\n            }\r\n        }\r\n\r\n        async function copyTitle() {\r\n            const titleElement = document.querySelector('.yttv-video-title');\r\n            const copyBtn = document.querySelector('.yttv-copy-btn');\r\n\r\n            if (!titleElement) return;\r\n\r\n            const title = titleElement.textContent;\r\n\r\n            try {\r\n                await navigator.clipboard.writeText(title);\r\n\r\n                copyBtn.innerHTML = `\r\n                    <svg class=\"yttv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                        <path d=\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\"\/>\r\n                    <\/svg>\r\n                    Copied!\r\n                `;\r\n                copyBtn.classList.add('yttv-copied');\r\n\r\n                setTimeout(() => {\r\n                    copyBtn.innerHTML = `\r\n                        <svg class=\"yttv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                            <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"\/>\r\n                        <\/svg>\r\n                        Copy\r\n                    `;\r\n                    copyBtn.classList.remove('yttv-copied');\r\n                }, 2000);\r\n\r\n            } catch (err) {\r\n                console.error('Failed to copy title: ', err);\r\n                alert('Failed to copy title to clipboard');\r\n            }\r\n        }\r\n\r\n        function extractVideoId(url) {\r\n            const patterns = [\r\n                \/(?:youtube\\.com\\\/watch\\?v=|youtu\\.be\\\/|youtube\\.com\\\/embed\\\/|youtube\\.com\\\/v\\\/|youtube\\.com\\\/shorts\\\/)([^&\\n?#]+)\/,\r\n                \/^([a-zA-Z0-9_-]{11})$\/\r\n            ];\r\n\r\n            for (const pattern of patterns) {\r\n                const match = url.match(pattern);\r\n                if (match) return match[1];\r\n            }\r\n            return null;\r\n        }\r\n\r\n        function getThumbnailUrls(videoId) {\r\n            return [\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/maxresdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/hqdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/mqdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/default.jpg`\r\n            ];\r\n        }\r\n\r\n        async function findTitle() {\r\n            if (isProcessing) return;\r\n\r\n            const input = document.getElementById('yttv-videoInput').value.trim();\r\n            if (!input) {\r\n                showError('Please enter a YouTube URL or video ID');\r\n                return;\r\n            }\r\n\r\n            const videoId = extractVideoId(input);\r\n            if (!videoId) {\r\n                showError('Invalid YouTube URL or video ID');\r\n                return;\r\n            }\r\n\r\n            isProcessing = true;\r\n            const loading = document.getElementById('yttv-loading');\r\n            const results = document.getElementById('yttv-results');\r\n            const findBtn = document.querySelector('.yttv-btn-find');\r\n\r\n            \/\/ Update button state\r\n            findBtn.disabled = true;\r\n            findBtn.innerHTML = `\r\n                <div style=\"width: 16px; height: 16px; border: 2px solid white; border-top: 2px solid transparent; border-radius: 50%; animation: yttv-spin 1s linear infinite; margin-right: 8px;\"><\/div>\r\n                Processing...\r\n            `;\r\n\r\n            loading.style.display = 'block';\r\n            results.style.display = 'none';\r\n\r\n            try {\r\n                const formData = new FormData();\r\n                formData.append('url_or_id', input);\r\n\r\n                const response = await fetch('https:\/\/tools.xrespond.com\/api\/youtube\/video-descriptions', {\r\n                    method: 'POST',\r\n                    body: formData\r\n                });\r\n\r\n                if (!response.ok) {\r\n                    const errorText = await response.text();\r\n                    throw new Error(`API Error ${response.status}: ${errorText}`);\r\n                }\r\n\r\n                const data = await response.json();\r\n\r\n                if (data && data.data) {\r\n                    displayResults(data.data, videoId);\r\n                    document.getElementById('yttv-videoInput').value = '';\r\n                } else {\r\n                    throw new Error('Invalid response format from API');\r\n                }\r\n\r\n            } catch (error) {\r\n                console.error('Error:', error);\r\n                showError(error.message);\r\n            } finally {\r\n                isProcessing = false;\r\n                findBtn.disabled = false;\r\n                findBtn.innerHTML = `\r\n                    <svg class=\"yttv-btn-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                        <path d=\"M9.5,3L8,6.5H4.5L7.91,9.91L6.5,16.5L9.5,14L12.5,16.5L11.09,9.91L14.5,6.5H11L9.5,3Z\"\/>\r\n                    <\/svg>\r\n                    Extract Title\r\n                `;\r\n                loading.style.display = 'none';\r\n            }\r\n        }\r\n\r\n        function showError(message) {\r\n            const results = document.getElementById('yttv-results');\r\n            results.innerHTML = `\r\n                <div class=\"yttv-error\">\r\n                    <div class=\"yttv-error-icon\">\u26a0\ufe0f<\/div>\r\n                    <div class=\"yttv-error-title\">Error<\/div>\r\n                    <p class=\"yttv-error-message\"><strong>Message:<\/strong> ${message}<\/p>\r\n                    <p class=\"yttv-error-details\">Please check your YouTube URL and try again.<\/p>\r\n                <\/div>\r\n            `;\r\n            results.style.display = 'block';\r\n        }\r\n\r\n        function createThumbnailWithFallback(videoId) {\r\n            const thumbnailUrls = getThumbnailUrls(videoId);\r\n            let currentIndex = 0;\r\n\r\n            const img = document.createElement('img');\r\n            img.className = 'yttv-thumbnail';\r\n            img.alt = 'Video Thumbnail';\r\n\r\n            function tryNextThumbnail() {\r\n                if (currentIndex < thumbnailUrls.length) {\r\n                    img.src = thumbnailUrls[currentIndex];\r\n                    currentIndex++;\r\n                } else {\r\n                    img.src = 'data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAwIiBoZWlnaHQ9IjE2OSIgdmlld0JveD0iMCAwIDMwMCAxNjkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIzMDAiIGhlaWdodD0iMTY5IiBmaWxsPSIjNDQ0Ii8+Cjx0ZXh0IHg9IjE1MCIgeT0iODQuNSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZmlsbD0iIzk5OSIgZm9udC1zaXplPSIxNCI+VGh1bWJuYWlsPC90ZXh0Pgo8L3N2Zz4=';\r\n                }\r\n            }\r\n\r\n            img.onerror = tryNextThumbnail;\r\n            tryNextThumbnail();\r\n\r\n            return img;\r\n        }\r\n\r\n        function displayResults(data, videoId) {\r\n            const results = document.getElementById('yttv-results');\r\n\r\n            results.innerHTML = `\r\n        <div class=\"yttv-video-card\">\r\n            <div class=\"yttv-video-header\">\r\n                <div class=\"yttv-video-title\">${data?.data.name || 'No title available'}<\/div>\r\n                \r\n                <div class=\"yttv-thumbnail-container\" id=\"yttv-thumbnailContainer\">\r\n                <\/div>\r\n\r\n                <div class=\"yttv-video-info\">\r\n                    <div class=\"yttv-channel-info\">\r\n                        <div class=\"yttv-channel-avatar\">\r\n                            <svg class=\"yttv-channel-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                <path d=\"M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z\"\/>\r\n                            <\/svg>\r\n                        <\/div>\r\n                        <div class=\"yttv-channel-details\">\r\n                            <div class=\"yttv-channel-name\">\r\n                                <a href=\"${data?.data.channelUrl || '#'}\" class=\"yttv-channel-link\" target=\"_blank\">\r\n                                    ${data?.data.channelName || 'Unknown Channel'}\r\n                                <\/a>\r\n                            <\/div>\r\n                            <p class=\"yttv-verified-text\">YouTube Channel<\/p>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yttv-stats-grid\">\r\n                        <div class=\"yttv-stat-card yttv-views\">\r\n                            <div class=\"yttv-stat-icon\">\r\n                                <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                    <path d=\"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\"\/>\r\n                                <\/svg>\r\n                            <\/div>\r\n                            <div class=\"yttv-stat-label\">Views<\/div>\r\n                            <div class=\"yttv-stat-value\">${data.data.viewCount || 'N\/A'}<\/div>\r\n                        <\/div>\r\n\r\n                        <div class=\"yttv-stat-card yttv-likes\">\r\n                            <div class=\"yttv-stat-icon\">\r\n                                <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                    <path d=\"M12,21.35L10.55,20.03C5.4,15.36 2,12.27 2,8.5 2,5.41 4.42,3 7.5,3C9.24,3 10.91,3.81 12,5.08C13.09,3.81 14.76,3 16.5,3C19.58,3 22,5.41 22,8.5C22,12.27 18.6,15.36 13.45,20.03L12,21.35Z\"\/>\r\n                                <\/svg>\r\n                            <\/div>\r\n                            <div class=\"yttv-stat-label\">Likes<\/div>\r\n                            <div class=\"yttv-stat-value\">${data?.data.likesCount || 'N\/A'}<\/div>\r\n                        <\/div>\r\n\r\n                        <div class=\"yttv-stat-card yttv-published\">\r\n                            <div class=\"yttv-stat-icon\">\r\n                                <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                    <path d=\"M19,3H18V1H16V3H8V1H6V3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z\"\/>\r\n                                <\/svg>\r\n                            <\/div>\r\n                            <div class=\"yttv-stat-label\">Date<\/div>\r\n                            <div class=\"yttv-stat-value\">${data?.data.publishDate || 'N\/A'}<\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yttv-title-section\">\r\n                        <div class=\"yttv-section-header\">\r\n                            <div class=\"yttv-section-title\">\r\n                                <div class=\"yttv-section-icon\">\r\n                                    <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                        <path d=\"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20Z\"\/>\r\n                                    <\/svg>\r\n                                <\/div>\r\n                                <div class=\"yttv-section-title-text\">\r\n                                    <div class=\"yttv-section-title-heading\">Video Title<\/div>\r\n                                    <p>Copy the video title<\/p>\r\n                                <\/div>\r\n                            <\/div>\r\n\r\n                            <button class=\"yttv-copy-btn\" onclick=\"copyTitle()\">\r\n                                <svg class=\"yttv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                    <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"\/>\r\n                                <\/svg>\r\n                                Copy\r\n                            <\/button>\r\n                        <\/div>\r\n\r\n                        <div class=\"yttv-title-content\">\r\n                            ${data?.data.name || 'No title available for this video.'}\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"yttv-search-again-section\">\r\n                <button class=\"yttv-btn-search-again\" onclick=\"searchAgain()\">\r\n                    <svg class=\"yttv-search-again-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                        <path d=\"M17.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z\"\/>\r\n                    <\/svg>\r\n                    Search Again\r\n                <\/button>\r\n            <\/div>\r\n        <\/div>\r\n    `;\r\n\r\n            \/\/ Insert thumbnail with fallback\r\n            const thumbnailContainer = document.getElementById('yttv-thumbnailContainer');\r\n            const thumbnailImg = createThumbnailWithFallback(videoId);\r\n            thumbnailContainer.appendChild(thumbnailImg);\r\n\r\n            results.style.display = 'block';\r\n        }\r\n\r\n        function searchAgain() {\r\n            \/\/ Hide results and show input section\r\n            document.getElementById('yttv-results').style.display = 'none';\r\n\r\n            \/\/ Clear the input field\r\n            const inputField = document.getElementById('yttv-videoInput');\r\n            inputField.value = '';\r\n\r\n            \/\/ Focus on the input field\r\n            inputField.focus();\r\n\r\n            \/\/ Scroll to top smoothly\r\n            window.scrollTo({\r\n                top: 0,\r\n                behavior: 'smooth'\r\n            });\r\n        }\r\n\r\n        \/\/ Handle Enter key press\r\n        document.getElementById('yttv-videoInput').addEventListener('keypress', function (e) {\r\n            if (e.key === 'Enter' && !isProcessing) {\r\n                findTitle();\r\n            }\r\n        });\r\n    <\/script>\r\n\r\n<!-- youtube tools end here -->\r\n\r\n <!-- Work Process Section -->\r\n<section class=\"yydv-work-process-section\" id=\"how-it-works\">\r\n    <div class=\"container yydv-work-process-content\">\r\n        <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n            <h2 class=\"yydv-section-title yydv-light-title\">How Our YouTube Title Viewer Works<\/h2>\r\n            <p class=\"yydv-section-subtitle yydv-light-subtitle\">View YouTube video titles anonymously in 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=\"yydv-process-step\">\r\n                    <div class=\"yydv-step-number\">1<\/div>\r\n                    <h4 class=\"text-white\">Enter Video URL<\/h4>\r\n                    <p class=\"yydv-light-subtitle\">Paste the YouTube video URL whose title 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=\"yydv-process-step\">\r\n                    <div class=\"yydv-step-number\">2<\/div>\r\n                    <h4 class=\"text-white\">Extract Title<\/h4>\r\n                    <p class=\"yydv-light-subtitle\">Our system retrieves the video title without revealing your identity<\/p>\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <div class=\"col-md-4\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                <div class=\"yydv-process-step\">\r\n                    <div class=\"yydv-step-number\">3<\/div>\r\n                    <h4 class=\"text-white\">View Title<\/h4>\r\n                    <p class=\"yydv-light-subtitle\">Read the complete video title with all details preserved<\/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=\"yydv-features-section\">\r\n    <div class=\"container\">\r\n        <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n            <h2 class=\"yydv-section-title\">Key Features<\/h2>\r\n            <p class=\"yydv-section-subtitle\">Our YouTube Title Viewer offers powerful features for anonymous title viewing<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-detail\"><\/i>\r\n                    <\/div>\r\n                    <h4>Full Title Access<\/h4>\r\n                    <p>View complete titles of any public YouTube video with all formatting preserved<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-search-alt\"><\/i>\r\n                    <\/div>\r\n                    <h4>Keyword Search<\/h4>\r\n                    <p>Quickly identify specific keywords within video titles<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-copy-alt\"><\/i>\r\n                    <\/div>\r\n                    <h4>Copy to Clipboard<\/h4>\r\n                    <p>Easily copy the entire title or selected portions with one click<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-shield\"><\/i>\r\n                    <\/div>\r\n                    <h4>No Tracking<\/h4>\r\n                    <p>View titles without YouTube tracking your activity or affecting statistics<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-mobile\"><\/i>\r\n                    <\/div>\r\n                    <h4>Cross-Platform<\/h4>\r\n                    <p>Access titles seamlessly on desktop, tablet, or mobile devices<\/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=\"yydv-feature-card\">\r\n                    <div class=\"yydv-feature-icon\">\r\n                        <i class=\"bx bx-time\"><\/i>\r\n                    <\/div>\r\n                    <h4>Instant Retrieval<\/h4>\r\n                    <p>Retrieve video titles quickly without loading the entire video page<\/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=\"yydv-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=\"yydv-why-choose-image yydv-floating-element\">\r\n                    <img decoding=\"async\" src=\"https:\/\/viewanonymous.com\/wp-content\/uploads\/2026\/03\/YouTube_Title_Viewer.webp\" alt=\"YouTube Title 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=\"yydv-section-title mb-4\">Why Choose Our YouTube Title Viewer?<\/h2>\r\n                <p class=\"mb-4\">Our tool offers a private and efficient way to view YouTube video titles without leaving a trace. Perfect for researchers, content creators, or privacy-conscious users seeking quick access to video titles.<\/p>\r\n\r\n                <div class=\"yydv-benefit-item\">\r\n                    <div class=\"yydv-benefit-icon\">\r\n                        <i class=\"bx bx-check\"><\/i>\r\n                    <\/div>\r\n                    <div>\r\n                        <h5 class=\"mb-1\">Complete anonymity<\/h5>\r\n                        <p class=\"mb-0\">View titles without leaving any trace or affecting video stats<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"yydv-benefit-item\">\r\n                    <div class=\"yydv-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\">Access video titles without a YouTube account<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"yydv-benefit-item\">\r\n                    <div class=\"yydv-benefit-icon\">\r\n                        <i class=\"bx bx-check\"><\/i>\r\n                    <\/div>\r\n                    <div>\r\n                        <h5 class=\"mb-1\">Preserved formatting<\/h5>\r\n                        <p class=\"mb-0\">See titles exactly as they appear with all characters and symbols<\/p>\r\n                    <\/div>\r\n                <\/div>\r\n\r\n                <div class=\"yydv-benefit-item\">\r\n                    <div class=\"yydv-benefit-icon\">\r\n                        <i class=\"bx bx-check\"><\/i>\r\n                    <\/div>\r\n                    <div>\r\n                        <h5 class=\"mb-1\">Fast loading<\/h5>\r\n                        <p class=\"mb-0\">Retrieve titles instantly without loading the entire video page<\/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=\"yydv-faq-section\">\r\n    <div class=\"container\">\r\n        <div class=\"text-center mb-5\" data-aos=\"fade-up\">\r\n            <h2 class=\"yydv-section-title\">Frequently Asked Questions<\/h2>\r\n            <p class=\"yydv-section-subtitle\">Find answers to common questions about our YouTube Title 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=\"yydv-faqAccordion\">\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"50\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading1\">\r\n                            <button class=\"yydv-accordion-button\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse1\" aria-expanded=\"true\" aria-controls=\"yydv-collapse1\">\r\n                                Is viewing YouTube titles anonymously legal?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse1\" class=\"accordion-collapse collapse show\" aria-labelledby=\"yydv-heading1\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                Yes, our tool is completely legal to use. It only allows you to view publicly available YouTube video titles. We don't access private videos or bypass any security measures - we simply display title data that is already publicly accessible on YouTube.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"100\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading2\">\r\n                            <button class=\"yydv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse2\" aria-expanded=\"false\" aria-controls=\"yydv-collapse2\">\r\n                                Can I view titles of private YouTube videos?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse2\" class=\"accordion-collapse collapse\" aria-labelledby=\"yydv-heading2\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                No, our tool respects YouTube's privacy settings. We can only display titles from videos that are set to public. If a video is private or unlisted, our viewer cannot access its title.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"150\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading3\">\r\n                            <button class=\"yydv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse3\" aria-expanded=\"false\" aria-controls=\"yydv-collapse3\">\r\n                                Will YouTube know I viewed these titles?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse3\" class=\"accordion-collapse collapse\" aria-labelledby=\"yydv-heading3\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                No, all title viewing is completely anonymous. When you use our tool, YouTube doesn't register that you've accessed the title. The video owner won't know you viewed their video title.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"200\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading4\">\r\n                            <button class=\"yydv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse4\" aria-expanded=\"false\" aria-controls=\"yydv-collapse4\">\r\n                                Do I need to install any software?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse4\" class=\"accordion-collapse collapse\" aria-labelledby=\"yydv-heading4\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                No, our YouTube Title Viewer is completely web-based. You don't need to download or install any software. Simply visit our website, enter the video URL, and view the title directly in your browser.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n\r\n                    <div class=\"yydv-accordion-item mb-3\" data-aos=\"fade-up\" data-aos-delay=\"250\">\r\n                        <h3 class=\"accordion-header\" id=\"yydv-heading5\">\r\n                            <button class=\"yydv-accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#yydv-collapse5\" aria-expanded=\"false\" aria-controls=\"yydv-collapse5\">\r\n                                Can I view titles from age-restricted videos?\r\n                            <\/button>\r\n                        <\/h3>\r\n                        <div id=\"yydv-collapse5\" class=\"accordion-collapse collapse\" aria-labelledby=\"yydv-heading5\" data-bs-parent=\"#yydv-faqAccordion\">\r\n                            <div class=\"yydv-accordion-body\">\r\n                                Our tool can only access titles from videos that are publicly available without age verification. For age-restricted content, you would need to log in to YouTube with an account that meets the age requirements.\r\n                            <\/div>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div><\/section>\r\n\r\n    <!-- Footer -->\r\n    \r\n\r\n    <!-- Copyright Section -->\r\n    \r\n\r\n\r\n\r\n    <!-- YouTube Description viewer js -->\r\n    <script>\r\n        let isProcessing = false;\r\n\r\n        async function pasteFromClipboard() {\r\n            try {\r\n                const text = await navigator.clipboard.readText();\r\n                document.getElementById('ytdv-videoInput').value = text;\r\n            } catch (err) {\r\n                console.error('Failed to read clipboard contents: ', err);\r\n                alert('Unable to access clipboard. Please paste manually.');\r\n            }\r\n        }\r\n\r\n        async function copyDescription() {\r\n            const descriptionElement = document.querySelector('.ytdv-description-content');\r\n            const copyBtn = document.querySelector('.ytdv-copy-btn');\r\n\r\n            if (!descriptionElement) return;\r\n\r\n            const description = descriptionElement.textContent;\r\n\r\n            try {\r\n                await navigator.clipboard.writeText(description);\r\n\r\n                copyBtn.innerHTML = `\r\n                  <svg class=\"ytdv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                      <path d=\"M9,20.42L2.79,14.21L5.62,11.38L9,14.77L18.88,4.88L21.71,7.71L9,20.42Z\"\/>\r\n                  <\/svg>\r\n                  Copied!\r\n              `;\r\n                copyBtn.classList.add('ytdv-copied');\r\n\r\n                setTimeout(() => {\r\n                    copyBtn.innerHTML = `\r\n                      <svg class=\"ytdv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                          <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"\/>\r\n                      <\/svg>\r\n                      Copy\r\n                  `;\r\n                    copyBtn.classList.remove('ytdv-copied');\r\n                }, 2000);\r\n\r\n            } catch (err) {\r\n                console.error('Failed to copy description: ', err);\r\n                alert('Failed to copy description to clipboard');\r\n            }\r\n        }\r\n\r\n        function extractVideoId(url) {\r\n            const patterns = [\r\n                \/(?:youtube\\.com\\\/watch\\?v=|youtu\\.be\\\/|youtube\\.com\\\/embed\\\/|youtube\\.com\\\/v\\\/|youtube\\.com\\\/shorts\\\/)([^&\\n?#]+)\/,\r\n                \/^([a-zA-Z0-9_-]{11})$\/\r\n            ];\r\n\r\n            for (const pattern of patterns) {\r\n                const match = url.match(pattern);\r\n                if (match) return match[1];\r\n            }\r\n            return null;\r\n        }\r\n\r\n        function getThumbnailUrls(videoId) {\r\n            return [\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/maxresdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/hqdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/mqdefault.jpg`,\r\n                `https:\/\/img.youtube.com\/vi\/${videoId}\/default.jpg`\r\n            ];\r\n        }\r\n\r\n        async function findDescription() {\r\n            if (isProcessing) return;\r\n\r\n            const input = document.getElementById('ytdv-videoInput').value.trim();\r\n            if (!input) {\r\n                showError('Please enter a YouTube URL or video ID');\r\n                return;\r\n            }\r\n\r\n            const videoId = extractVideoId(input);\r\n            if (!videoId) {\r\n                showError('Invalid YouTube URL or video ID');\r\n                return;\r\n            }\r\n\r\n            isProcessing = true;\r\n            const loading = document.getElementById('ytdv-loading');\r\n            const results = document.getElementById('ytdv-results');\r\n            const findBtn = document.querySelector('.ytdv-btn-find');\r\n\r\n            \/\/ Update button state\r\n            findBtn.disabled = true;\r\n            findBtn.innerHTML = `\r\n              <div style=\"width: 16px; height: 16px; border: 2px solid white; border-top: 2px solid transparent; border-radius: 50%; animation: ytdv-spin 1s linear infinite; margin-right: 8px;\"><\/div>\r\n              Processing...\r\n          `;\r\n\r\n            loading.style.display = 'block';\r\n            results.style.display = 'none';\r\n\r\n            try {\r\n                const formData = new FormData();\r\n                formData.append('url_or_id', input);\r\n\r\n                const response = await fetch('https:\/\/tools.xrespond.com\/api\/youtube\/video-descriptions', {\r\n                    method: 'POST',\r\n                    body: formData\r\n                });\r\n\r\n                if (!response.ok) {\r\n                    const errorText = await response.text();\r\n                    throw new Error(`API Error ${response.status}: ${errorText}`);\r\n                }\r\n\r\n                const data = await response.json();\r\n\r\n                if (data && data.data) {\r\n                    displayResults(data.data, videoId);\r\n                    document.getElementById('ytdv-videoInput').value = '';\r\n                } else {\r\n                    throw new Error('Invalid response format from API');\r\n                }\r\n\r\n            } catch (error) {\r\n                console.error('Error:', error);\r\n                showError(error.message);\r\n            } finally {\r\n                isProcessing = false;\r\n                findBtn.disabled = false;\r\n                findBtn.innerHTML = `\r\n                  <svg class=\"ytdv-btn-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                      <path d=\"M9.5,3L8,6.5H4.5L7.91,9.91L6.5,16.5L9.5,14L12.5,16.5L11.09,9.91L14.5,6.5H11L9.5,3Z\"\/>\r\n                  <\/svg>\r\n                  Extract Description\r\n              `;\r\n                loading.style.display = 'none';\r\n            }\r\n        }\r\n\r\n        function showError(message) {\r\n            const results = document.getElementById('ytdv-results');\r\n            results.innerHTML = `\r\n              <div class=\"ytdv-error\">\r\n                  <div class=\"ytdv-error-icon\">\u26a0\ufe0f<\/div>\r\n                  <h3>Error<\/h3>\r\n                  <p><strong>Message:<\/strong> ${message}<\/p>\r\n                  <p class=\"ytdv-error-details\">Please check your YouTube URL and try again.<\/p>\r\n              <\/div>\r\n          `;\r\n            results.style.display = 'block';\r\n        }\r\n\r\n        function createThumbnailWithFallback(videoId) {\r\n            const thumbnailUrls = getThumbnailUrls(videoId);\r\n            let currentIndex = 0;\r\n\r\n            const img = document.createElement('img');\r\n            img.className = 'ytdv-thumbnail';\r\n            img.alt = 'Video Thumbnail';\r\n\r\n            function tryNextThumbnail() {\r\n                if (currentIndex < thumbnailUrls.length) {\r\n                    img.src = thumbnailUrls[currentIndex];\r\n                    currentIndex++;\r\n                } else {\r\n                    img.src = 'data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAwIiBoZWlnaHQ9IjE2OSIgdmlld0JveD0iMCAwIDMwMCAxNjkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxyZWN0IHdpZHRoPSIzMDAiIGhlaWdodD0iMTY5IiBmaWxsPSIjNDQ0Ii8+Cjx0ZXh0IHg9IjE1MCIgeT0iODQuNSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZmlsbD0iIzk5OSIgZm9udC1zaXplPSIxNCI+VGh1bWJuYWlsPC90ZXh0Pgo8L3N2Zz4=';\r\n                }\r\n            }\r\n\r\n            img.onerror = tryNextThumbnail;\r\n            tryNextThumbnail();\r\n\r\n            return img;\r\n        }\r\n\r\n        function displayResults(data, videoId) {\r\n            const results = document.getElementById('ytdv-results');\r\n\r\n            results.innerHTML = `\r\n      <div class=\"ytdv-video-card\">\r\n          <div class=\"ytdv-video-header\">\r\n              <div class=\"ytdv-thumbnail-container\" id=\"ytdv-thumbnailContainer\">\r\n              <\/div>\r\n  \r\n              <div class=\"ytdv-video-info\">\r\n                  <h2>${data.data.name || 'No title available'}<\/h2>\r\n  \r\n                  <div class=\"ytdv-channel-info\">\r\n                      <div class=\"ytdv-channel-avatar\">\r\n                          <svg class=\"ytdv-channel-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                              <path d=\"M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z\"\/>\r\n                          <\/svg>\r\n                      <\/div>\r\n                      <div class=\"ytdv-channel-details\">\r\n                          <h3>\r\n                              <a href=\"${data.data.channelUrl || '#'}\" class=\"ytdv-channel-link\" target=\"_blank\">\r\n                                  ${data.data.channelName || 'Unknown Channel'}\r\n                              <\/a>\r\n                          <\/h3>\r\n                          <p class=\"ytdv-verified-text\">YouTube Channel<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n  \r\n                  <div class=\"ytdv-stats-grid\">\r\n                      <div class=\"ytdv-stat-card ytdv-views\">\r\n                          <div class=\"ytdv-stat-icon\">\r\n                              <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                  <path d=\"M12,9A3,3 0 0,0 9,12A3,3 0 0,0 12,15A3,3 0 0,0 15,12A3,3 0 0,0 12,9M12,17A5,5 0 0,1 7,12A5,5 0 0,1 12,7A5,5 0 0,1 17,12A5,5 0 0,1 12,17M12,4.5C7,4.5 2.73,7.61 1,12C2.73,16.39 7,19.5 12,19.5C17,19.5 21.27,16.39 23,12C21.27,7.61 17,4.5 12,4.5Z\"\/>\r\n                              <\/svg>\r\n                          <\/div>\r\n                          <div class=\"ytdv-stat-label\">Views<\/div>\r\n                          <div class=\"ytdv-stat-value\">${data.data.viewCount || 'N\/A'}<\/div>\r\n                      <\/div>\r\n  \r\n                      <div class=\"ytdv-stat-card ytdv-likes\">\r\n                          <div class=\"ytdv-stat-icon\">\r\n                              <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                  <path d=\"M12,21.35L10.55,20.03C5.4,15.36 2,12.27 2,8.5 2,5.41 4.42,3 7.5,3C9.24,3 10.91,3.81 12,5.08C13.09,3.81 14.76,3 16.5,3C19.58,3 22,5.41 22,8.5C22,12.27 18.6,15.36 13.45,20.03L12,21.35Z\"\/>\r\n                              <\/svg>\r\n                          <\/div>\r\n                          <div class=\"ytdv-stat-label\">Likes<\/div>\r\n                          <div class=\"ytdv-stat-value\">${data.data.likesCount || 'N\/A'}<\/div>\r\n                      <\/div>\r\n  \r\n                      <div class=\"ytdv-stat-card ytdv-published\">\r\n                          <div class=\"ytdv-stat-icon\">\r\n                              <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                                  <path d=\"M19,3H18V1H16V3H8V1H6V3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M19,19H5V8H19V19Z\"\/>\r\n                              <\/svg>\r\n                          <\/div>\r\n                          <div class=\"ytdv-stat-label\">Date<\/div>\r\n                          <div class=\"ytdv-stat-value\">${data.data.publishDate || 'N\/A'}<\/div>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n  \r\n          <div class=\"ytdv-description-section\">\r\n              <div class=\"ytdv-section-header\">\r\n                  <div class=\"ytdv-section-title\">\r\n                      <div class=\"ytdv-section-icon\">\r\n                          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                              <path d=\"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20Z\"\/>\r\n                          <\/svg>\r\n                      <\/div>\r\n                      <div class=\"ytdv-section-title-text\">\r\n                          <h3>Description<\/h3>\r\n                          <p>Video description content<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n  \r\n                  <button class=\"ytdv-copy-btn\" onclick=\"copyDescription()\">\r\n                      <svg class=\"ytdv-copy-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                          <path d=\"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z\"\/>\r\n                      <\/svg>\r\n                      Copy\r\n                  <\/button>\r\n              <\/div>\r\n  \r\n              <div class=\"ytdv-description-content\">\r\n                  ${data.data.description || 'No description available for this video.'}\r\n              <\/div>\r\n          <\/div>\r\n  \r\n          ${data.data.captions ? `\r\n          <div class=\"ytdv-captions-section\">\r\n              <div class=\"ytdv-section-header\">\r\n                  <div class=\"ytdv-section-title\">\r\n                      <div class=\"ytdv-section-icon ytdv-captions-icon\">\r\n                          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                              <path d=\"M18,11H16.5V10.5H14.5V13.5H16.5V13H18V14A1,1 0 0,1 17,15H14A1,1 0 0,1 13,14V10A1,1 0 0,1 14,9H17A1,1 0 0,1 18,10M11,11H9.5V10.5H7.5V13.5H9.5V13H11V14A1,1 0 0,1 10,15H7A1,1 0 0,1 6,14V10A1,1 0 0,1 7,9H10A1,1 0 0,1 11,10M19,4H5C3.89,4 3,4.89 3,6V18A2,2 0 0,0 5,20H19A2,2 0 0,0 21,18V6C21,4.89 20.1,4 19,4Z\"\/>\r\n                          <\/svg>\r\n                      <\/div>\r\n                      <div class=\"ytdv-section-title-text\">\r\n                          <h3>Captions<\/h3>\r\n                          <p>Subtitle information<\/p>\r\n                      <\/div>\r\n                  <\/div>\r\n              <\/div>\r\n  \r\n              <div class=\"ytdv-captions-content\">\r\n                  <div class=\"ytdv-caption-item\">\r\n                      <div class=\"ytdv-caption-dot\"><\/div>\r\n                      <span class=\"ytdv-caption-label\">Language:<\/span>\r\n                      <span class=\"ytdv-caption-value\">${data.data.caption_lang || 'N\/A'}<\/span>\r\n                  <\/div>\r\n                  <div class=\"ytdv-caption-item\">\r\n                      <div class=\"ytdv-caption-dot\"><\/div>\r\n                      <span class=\"ytdv-caption-label\">Status:<\/span>\r\n                      <span class=\"ytdv-caption-value\">Available \u2705<\/span>\r\n                  <\/div>\r\n              <\/div>\r\n          <\/div>\r\n          ` : ''}\r\n  \r\n          <div class=\"ytdv-search-again-section\">\r\n              <button class=\"ytdv-btn-search-again\" onclick=\"searchAgain()\">\r\n                  <svg class=\"ytdv-search-again-icon\" viewBox=\"0 0 24 24\" fill=\"currentColor\">\r\n                      <path d=\"M17.65,6.35C16.2,4.9 14.21,4 12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20C15.73,20 18.84,17.45 19.73,14H17.65C16.83,16.33 14.61,18 12,18A6,6 0 0,1 6,12A6,6 0 0,1 12,6C13.66,6 15.14,6.69 16.22,7.78L13,11H20V4L17.65,6.35Z\"\/>\r\n                  <\/svg>\r\n                  Search Again\r\n              <\/button>\r\n          <\/div>\r\n      <\/div>\r\n  `;\r\n\r\n            \/\/ Insert thumbnail with fallback\r\n            const thumbnailContainer = document.getElementById('ytdv-thumbnailContainer');\r\n            const thumbnailImg = createThumbnailWithFallback(videoId);\r\n            thumbnailContainer.appendChild(thumbnailImg);\r\n\r\n            results.style.display = 'block';\r\n        }\r\n\r\n        function searchAgain() {\r\n            \/\/ Hide results and show input section\r\n            document.getElementById('ytdv-results').style.display = 'none';\r\n\r\n            \/\/ Clear the input field\r\n            const inputField = document.getElementById('ytdv-videoInput');\r\n            inputField.value = '';\r\n\r\n            \/\/ Focus on the input field\r\n            inputField.focus();\r\n\r\n            \/\/ Scroll to top smoothly\r\n            window.scrollTo({\r\n                top: 0,\r\n                behavior: 'smooth'\r\n            });\r\n        }\r\n\r\n        \/\/ Handle Enter key press\r\n        (function () {\r\n            var inp = document.getElementById('yttv-videoInput');\r\n            if (inp) {\r\n                inp.addEventListener('keypress', function (e) {\r\n                    if (e.key === 'Enter' && !isProcessing) {\r\n                        findTitle();\r\n                    }\r\n                });\r\n            }\r\n        })();\r\n    <\/script>\r\n\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    <script>\r\n        (function () {\r\n            if (typeof AOS !== 'undefined') {\r\n                AOS.init({\r\n                    duration: 800,\r\n                    easing: 'ease-in-out',\r\n                    once: true\r\n                });\r\n            }\r\n            document.querySelectorAll('a[href^=\"#\"]').forEach(function (anchor) {\r\n                anchor.addEventListener('click', function (e) {\r\n                    var sel = this.getAttribute('href');\r\n                    if (!sel || sel === '#') return;\r\n                    var target = document.querySelector(sel);\r\n                    if (target) {\r\n                        e.preventDefault();\r\n                        target.scrollIntoView({ behavior: 'smooth' });\r\n                    }\r\n                });\r\n            });\r\n        })();\r\n    <\/script>\r\n\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    <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\/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":243,"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-488","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/488","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=488"}],"version-history":[{"count":5,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/488\/revisions"}],"predecessor-version":[{"id":539,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/488\/revisions\/539"}],"up":[{"embeddable":true,"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/pages\/243"}],"wp:attachment":[{"href":"https:\/\/viewanonymous.com\/wp-json\/wp\/v2\/media?parent=488"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}