PageSourceSearch

https://www.newvideos.com/file/newvideos1/play/vid-d479144e-bf16-4bde-b8cf-d1782d07b2b3/index.html

html newvideos.com collected 2026-09-30 22:37:12 UTC 67,062 bytes, 1,145 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3<head>
4  <meta charset="UTF-8">
5  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6  <title>Wild  News Beyond the Headlines, CNN&#039;s Future &amp; Elon Musk&#039;s Next Move - NewVideos.com</title>
7  <meta name="description" content="Dan returns to &quot;I Allegedly Live&quot; with a no-holds-barred look at the alleged Trump assassination attempt, questioning media narratives and highlighting the suspicious death of Jim Capenhover. He sharply criticizes the press, particularly CNN, for their biased coverage and curious reporting details surrounding the incident.
8
9But the big news might be CNN&#039;s future! Dan uncovers a groundbreaking potential development: Larry and David Ellison are reportedly seeking Elon Musk&#039;s investment in a major merger that could give Elon partial ownership of CNN. This episode also features a critical take on foreign reporters during Xi Jinping&#039;s recent visit.">
10  <meta property="og:title" content="Wild  News Beyond the Headlines, CNN&#039;s Future &amp; Elon Musk&#039;s Next Move">
11  <meta property="og:description" content="Dan returns to &quot;I Allegedly Live&quot; with a no-holds-barred look at the alleged Trump assassination attempt, questioning media narratives and highlighting the suspicious death of Jim Capenhover. He sharply criticizes the press, particularly CNN, for their biased coverage and curious reporting details surrounding the incident.
12
13But the big news might be CNN&#039;s future! Dan uncovers a groundbreaking potential development: Larry and David Ellison are reportedly seeking Elon Musk&#039;s investment in a major merger that could give Elon partial ownership of CNN. This episode also features a critical take on foreign reporters during Xi Jinping&#039;s recent visit.">
14  <meta property="og:image" content="https://f000.backblazeb2.com/file/newvideos1/videos/vid-d479144e-bf16-4bde-b8cf-d1782d07b2b3/thumbnails/thumb_01_640.jpg">
15  <meta property="og:type" content="video.other">
16  
16<script src="https://cdn.jsdelivr.net/npm/hls.js@1"></script>
16<script src="https://cdn.jsdelivr.net/npm/mux-embed@5"></script>
16
17  <style id="pageStyles">
18    * { margin: 0; padding: 0; box-sizing: border-box; }
19    body { font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: #0a0a0a; color: #fff; min-height: 100vh; }
20    .site-header { position: sticky; top: 0; z-index: 100; }
21    main { margin: 0 auto; }
22    .page-layout { display: grid; grid-template-columns: 1fr 350px; gap: 2rem; max-width: 1400px; margin: 0 auto; padding: 2rem; }
23    .player-container { position: relative; width: 100%; background: #000; border-radius: 12px; overflow: hidden; margin-bottom: 1.5rem; }
24    .sidebar { display: flex; flex-direction: column; gap: 0.5rem; }
25    .sidebar h2 { font-size: 1rem; font-weight: 600; margin-bottom: 0.25rem; }
26    .related-card { display: flex; gap: 0.75rem; text-decoration: none; color: inherit; padding: 0.5rem; border-radius: 8px; transition: background 0.2s; }
27    .related-card:hover { background: #1a1a1a; }
28    .related-thumb { width: 168px; min-width: 168px; aspect-ratio: 16/9; border-radius: 6px; overflow: hidden; background: #222; }
29    .related-thumb img { width: 100%; height: 100%; object-fit: cover; }
30    .related-info { display: flex; flex-direction: column; gap: 0.25rem; min-width: 0; }
31    .related-info h3 { font-size: 0.85rem; font-weight: 500; line-height: 1.3; margin: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
32    .related-meta { font-size: 0.75rem; color: #888; }
33    .video-info h1 { font-size: 1.5rem; margin-bottom: 0.5rem; }
34    .meta { color: #888; font-size: 0.875rem; margin-bottom: 1rem; display: flex; gap: 1rem; }
35    .description { color: #ccc; line-height: 1.6; }
36    
37    /* Share button */
38    .share-btn { display: inline-flex; align-items: center; gap: 8px; background: #3b82f6; color: #fff; border: none; padding: 10px 20px; border-radius: 8px; font-size: 0.9rem; font-weight: 500; cursor: pointer; transition: background 0.2s; margin-bottom: 1rem; }
39    .share-btn:hover { background: #2563eb; }
40    .share-btn svg { width: 18px; height: 18px; }
41    
42    /* Share modal */
43    .share-modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.7); display: none; align-items: center; justify-content: center; z-index: 100; }
44    .share-modal-overlay.open { display: flex; }
45    .share-modal { background: #1a1a1a; border: 1px solid #333; border-radius: 12px; padding: 24px; width: 90%; max-width: 400px; }
46    .share-modal-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
47    .share-modal-header h3 { font-size: 1.25rem; margin: 0; }
48    .share-modal-close { background: none; border: none; color: #888; cursor: pointer; padding: 4px; }
49    .share-modal-close:hover { color: #fff; }
50    .share-modal-close svg { width: 24px; height: 24px; }
51    .share-options { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
52    .share-option { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 16px 8px; background: #222; border: 1px solid #333; border-radius: 8px; cursor: pointer; transition: background 0.2s, border-color 0.2s; text-decoration: none; color: inherit; }
53    .share-option:hover { background: #2a2a2a; border-color: #444; }
54    .share-option svg { width: 28px; height: 28px; }
55    .share-option span { font-size: 0.75rem; color: #ccc; }
56    .share-option.facebook svg { color: #1877f2; }
57    .share-option.x svg { color: #fff; }
58    .share-option.truth svg { color: #5448ee; }
59    .share-option.copy svg { color: #10b981; }
60    .share-option.email svg { color: #f59e0b; }
61    .share-option.sms svg { color: #06b6d4; }
62    .copy-feedback { position: fixed; bottom: 24px; left: 50%; transform: translateX(-50%); background: #10b981; color: #fff; padding: 12px 24px; border-radius: 8px; font-size: 0.9rem; display: none; z-index: 200; }
63    .copy-feedback.show { display: block; }
64    
65    /* Transcript section */
66    .transcript-section { margin-top: 2rem; padding: 1.5rem; background: #111; border: 1px solid #222; border-radius: 12px; }
67    .transcript-header { display: flex; align-items: center; gap: 0.5rem; margin-bottom: 1rem; cursor: pointer; }
68    .transcript-header h2 { font-size: 1rem; font-weight: 600; margin: 0; }
69    .transcript-header svg { width: 20px; height: 20px; color: #888; transition: transform 0.2s; }
70    .transcript-header.open svg { transform: rotate(180deg); }
71    .transcript-content { max-height: 300px; overflow-y: auto; color: #ccc; line-height: 1.8; font-size: 0.9rem; white-space: pre-wrap; }
72    .transcript-content::-webkit-scrollbar { width: 6px; }
73    .transcript-content::-webkit-scrollbar-track { background: #1a1a1a; border-radius: 3px; }
74    .transcript-content::-webkit-scrollbar-thumb { background: #333; border-radius: 3px; }
75    .transcript-content::-webkit-scrollbar-thumb:hover { background: #444; }
76    .no-transcript { color: #666; font-style: italic; }
77    
78    /* Subscribe form */
79    .subscribe-section { margin-top: 1.5rem; padding: 1.25rem 1.5rem; background: #111; border: 1px solid #222; border-radius: 12px; }
80    .subscribe-header { display: flex; align-items: flex-start; gap: 1rem; margin-bottom: 0.75rem; }
81    .subscribe-icon { width: 48px; height: 48px; min-width: 48px; color: #60a5fa; flex-shrink: 0; margin-top: 2px; }
82    .subscribe-header p { margin: 0; font-size: 0.92rem; line-height: 1.5; color: #ccc; }
83    .subscribe-section h3 { font-size: 1rem; font-weight: 600; margin: 0 0 0.75rem 0; }
84    .subscribe-section form { display: flex; gap: 0.5rem; }
85    .subscribe-section input[type="email"] { flex: 1; padding: 0.6rem 1rem; background: #1a1a1a; border: 1px solid #333; border-radius: 8px; color: #fff; font-size: 0.9rem; outline: none; transition: border-color 0.2s; }
86    .subscribe-section input[type="email"]::placeholder { color: #666; }
87    .subscribe-section input[type="email"]:focus { border-color: #3b82f6; }
88    .subscribe-section button[type="submit"] { padding: 0.6rem 1.5rem; background: #3b82f6; color: #fff; border: none; border-radius: 8px; font-size: 0.9rem; font-weight: 500; cursor: pointer; transition: background 0.2s; white-space: nowrap; }
89    .subscribe-section button[type="submit"]:hover { background: #2563eb; }
90    .subscribe-section button[type="submit"]:disabled { background: #555; cursor: not-allowed; }
91    .subscribe-msg { margin-top: 0.5rem; font-size: 0.85rem; }
92    .subscribe-msg.success { color: #10b981; }
93    .subscribe-msg.error { color: #f87171; }
94
95    @media (max-width: 900px) { .page-layout { grid-template-columns: 1fr; } .sidebar { margin-top: 1.5rem; } .related-thumb { width: 140px; min-width: 140px; } }
96    @media (max-width: 640px) { .page-layout { padding: 1rem; } .share-options { grid-template-columns: repeat(2, 1fr); } .transcript-section { padding: 1rem; } .subscribe-section form { flex-direction: column; } .ask-ai-form { flex-direction: column; } }
97    .site-header { background: #fff; padding: 8px 16px; border-bottom: 1px solid #e0e0e0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; }
98html.light .site-header { background: #fff; border-bottom-color: #e0e0e0; }
99.site-header-inner { max-width: 1400px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
100.site-header-left { display: flex; align-items: center; }
101.site-header-left a { display: inline-flex; align-items: center; gap: 8px; color: #222; text-decoration: none; font-size: 15px; font-weight: 700; }
102.site-header-right { display: flex; align-items: center; }
103  
104    /* Ask AI section */
105    .ask-ai-section { margin-bottom: 1.5rem; padding: 1.25rem 1.5rem; background: linear-gradient(135deg, #0f172a 0%, #1e1b4b 100%); border: 1px solid #312e81; border-radius: 12px; }
106    .ask-ai-header { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; }
107    .ask-ai-header svg { width: 24px; height: 24px; color: #818cf8; flex-shrink: 0; }
108    .ask-ai-header h3 { font-size: 0.95rem; font-weight: 600; margin: 0; color: #e0e7ff; }
109    .ask-ai-form { display: flex; gap: 0.5rem; }
110    .ask-ai-form input { flex: 1; padding: 0.6rem 1rem; background: #1e1b4b; border: 1px solid #3730a3; border-radius: 8px; color: #fff; font-size: 0.9rem; outline: none; transition: border-color 0.2s; }
111    .ask-ai-form input::placeholder { color: #6366f1; }
112    .ask-ai-form input:focus { border-color: #818cf8; }
113    .ask-ai-form button { padding: 0.6rem 1.25rem; background: #6366f1; color: #fff; border: none; border-radius: 8px; font-size: 0.9rem; font-weight: 500; cursor: pointer; transition: background 0.2s; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px; }
114    .ask-ai-form button:hover { background: #4f46e5; }
115    .ask-ai-form button:disabled { background: #3730a3;
115 cursor: not-allowed; }
116    .ask-ai-form button svg { width: 16px; height: 16px; }
117    .ask-ai-response { margin-top: 1rem; padding: 1rem; background: rgba(99,102,241,0.08); border: 1px solid #312e81; border-radius: 8px; display: none; }
118    .ask-ai-response.visible { display: block; }
119    .ask-ai-response-label { font-size: 0.75rem; color: #818cf8; text-transform: uppercase; letter-spacing: 0.05em; font-weight: 600; margin-bottom: 0.5rem; display: flex; align-items: center; gap: 6px; }
120    .ask-ai-response-label .ai-dot { width: 6px; height: 6px; border-radius: 50%; background: #818cf8; }
121    .ask-ai-response-label .ai-dot.streaming { animation: aiPulse 1s infinite; }
122    @keyframes aiPulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } }
123    .ask-ai-answer { color: #d1d5db; line-height: 1.7; font-size: 0.9rem; word-wrap: break-word; }
124    .ask-ai-answer strong, .ask-ai-answer b { color: #e0e7ff; font-weight: 600; }
125    .ask-ai-answer h1 { font-size: 1.3rem; font-weight: 700; color: #e0e7ff; margin: 1rem 0 0.5rem; }
126    .ask-ai-answer h2 { font-size: 1.15rem; font-weight: 700; color: #e0e7ff; margin: 0.85rem 0 0.4rem; }
127    .ask-ai-answer h3 { font-size: 1.05rem; font-weight: 600; color: #e0e7ff; margin: 0.75rem 0 0.35rem; }
128    .ask-ai-answer p { margin: 0.4rem 0; }
129    .ask-ai-answer ul, .ask-ai-answer ol { margin: 0.4rem 0 0.4rem 1.5rem; padding: 0; }
130    .ask-ai-answer li { margin: 0.2rem 0; }
131    .ask-ai-answer em, .ask-ai-answer i { font-style: italic; color: #c7d2fe; }
132    .ask-ai-answer a { color: #818cf8; text-decoration: underline; text-underline-offset: 2px; }
133    .ask-ai-answer a:hover { color: #a5b4fc; }
134    .ask-ai-answer code { background: rgba(99,102,241,0.15); padding: 0.15em 0.4em; border-radius: 4px; font-size: 0.85em; font-family: monospace; }
135    .ask-ai-answer pre { background: rgba(15,23,42,0.6); border: 1px solid #312e81; border-radius: 6px; padding: 0.75rem; overflow-x: auto; margin: 0.5rem 0; }
136    .ask-ai-answer pre code { background: none; padding: 0; }
137    .ask-ai-error { color: #f87171; font-size: 0.85rem; margin-top: 0.5rem; }
138    .ask-ai-powered { margin-top: 0.75rem; font-size: 0.7rem; color: #4f46e5; text-align: right; }
139    .ask-ai-powered a { color: #818cf8; text-decoration: none; }
140    .ask-ai-powered a:hover { text-decoration: underline; }
141    @media (max-width: 640px) { .ask-ai-form { flex-direction: column; } }
142
143.submit-video-btn { display: inline-flex; align-items: center; gap: 6px; background: var(--accent, #3b82f6); color: #fff; text-decoration: none; padding: 8px 20px; border-radius: 20px; font-size: 0.9rem; font-weight: 500; white-space: nowrap; transition: background 0.2s; flex-shrink: 0; }
144.submit-video-btn:hover { background: #2563eb; }
145</style>
146</head>
147<body>
148  <div class="site-header"><div class="site-header-inner"><div class="site-header-left"><a href="https://newvideos.com/">NewVideos.com</a></div><div class="site-header-right"><a href="https://newvideos.com/public/submit/index.html" class="submit-video-btn" data-testid="button-submit-your-video">Submit Your Video</a><button class="theme-toggle" id="themeToggle" aria-label="Toggle theme"><svg class="sun-icon" viewBox="0 0 24 24"><path d="M12 7a5 5 0 100 10 5 5 0 000-10zm0-5a1 1 0 011 1v1a1 1 0 11-2 0V3a1 1 0 011-1zm0 18a1 1 0 011 1v1a1 1 0 11-2 0v-1a1 1 0 011-1zm9-9a1 1 0 110 2h-1a1 1 0 110-2h1zM4 12a1 1 0 110 2H3a1 1 0 110-2h1zm14.95-6.36a1 1 0 010 1.41l-.71.71a1 1 0 11-1.41-1.41l.71-.71a1 1 0 011.41 0zM7.17 16.59a1 1 0 010 1.41l-.71.71a1 1 0 11-1.41-1.41l.71-.71a1 1 0 011.41 0zm11.31 2.12a1 1 0 01-1.41 0l-.71-.71a1 1 0 111.41-1.41l.71.71a1 1 0 010 1.41zM7.17 7.41a1 1 0 01-1.41 0l-.71-.71a1 1 0 111.41-1.41l.71.71a1 1 0 010 1.41z"/></svg><svg class="moon-icon" viewBox="0 0 24 24"><path d="M12 3a9 9 0 109 9c0-.46-.04-.92-.1-1.36a5.389 5.389 0 01-4.4 2.26 5.403 5.403 0 01-3.14-9.8c-.44-.06-.9-.1-1.36-.1z"/></svg></button></div></div></div>
149  <main>
150    <div class="page-layout">
151      <div class="content-column">
152        <div class="player-container">
153          <video id="videoPlayer" poster="https://f000.backblazeb2.com/file/newvideos1/videos/vid-d479144e-bf16-4bde-b8cf-d1782d07b2b3/thumbn
153ails/thumb_01_640.jpg" controls playsinline preload="auto" style="width:100%;display:block;aspect-ratio:16/9;background:#000;"></video>
154      
154<script>
155        (function() {
156          var video = document.getElementById('videoPlayer');
157          var src = 'https://stream.mux.com/IQX2W9nSU5026WDUvsy1e02TRF5lmd9Wdr5K402sXy51qs.m3u8';
158          if (!src) return;
159          var container = video.parentElement;
160          var networkRetries = 0;
161          var MAX_RETRIES = 3;
162          var mediaAttempt = 0;
163          var hlsInstance = null;
164
165          // --- "Tap to unmute" overlay ---
166          function showUnmuteOverlay() {
167            if (document.getElementById('unmuteOverlay')) return;
168            container.style.position = 'relative';
169            var el = document.createElement('div');
170            el.id = 'unmuteOverlay';
171            el.style.cssText = 'position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(0,0,0,0.5);z-index:20;cursor:pointer;user-select:none;';
172            el.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="56" height="56" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" style="filter:drop-shadow(0 2px 8px rgba(0,0,0,0.6));"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"/><line x1="23" y1="9" x2="17" y2="15"/><line x1="17" y1="9" x2="23" y2="15"/></svg><div style="color:#fff;font-family:Inter,system-ui,sans-serif;font-size:1.1rem;font-weight:500;margin-top:12px;text-shadow:0 1px 4px rgba(0,0,0,0.7);">Tap to unmute</div>';
173            container.appendChild(el);
174            el.addEventListener('click', function(e) {
175              e.stopPropagation();
176              video.muted = false;
177              video.volume = 1;
178              if (video.paused) video.play().catch(function(){});
179              dismissUnmuteOverlay();
180              try { localStorage.setItem('brightvideo_unmuted', 'true'); } catch(x) {}
181            });
182          }
183          function dismissUnmuteOverlay() {
184            var el = document.getElementById('unmuteOverlay');
185            if (el && el.parentNode) el.parentNode.removeChild(el);
186          }
187
188          // --- Play overlay (when even muted autoplay is blocked) ---
189          function showPlayOverlay() {
190            if (document.getElementById('playOverlay')) return;
191            container.style.position = 'relative';
192            var el = document.createElement('div');
193            el.id = 'playOverlay';
194            el.style.cssText = 'position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,0.4);z-index:20;cursor:pointer;';
195            el.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="72" height="72" viewBox="0 0 24 24" fill="white" style="filter:drop-shadow(0 2px 8px rgba(0,0,0,0.5));"><polygon points="5 3 19 12 5 21 5 3"></polygon></svg>';
196            container.appendChild(el);
197            el.addEventListener('click', function() {
198              if (el.parentNode) el.parentNode.removeChild(el);
199              video.muted = false;
200              video.volume = 1;
201              video.play().then(function() {
202                try { localStorage.setItem('brightvideo_unmuted', 'true'); } catch(x) {}
203              }).catch(function() {});
204            });
205          }
206
207          // --- Autoplay: always muted + unmute overlay ---
208          function tryPlay() {
209            video.muted = true;
210            video.volume = 1;
211            video.play().then(function() {
212              showUnmuteOverlay();
213            }).catch(function() {
214              showPlayOverlay();
215            });
216          }
217
218          // --- Error handling ---
219          function showError(msg) {
220            var old = document.getElementById('playerError');
221            if (old) old.remove();
222            var el = document.createElement('div');
223            el.id = 'playerError';
224            el.style.cssText = 'position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(0,0,0,0.85);z-index:30;gap:16px;text-align:center;padding:2rem;';
225            el.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="#f87171" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><line x1="12" y1="8" x2="12" y2="12"/>
225<line x1="12" y1="16" x2="12.01" y2="16"/></svg>'
226              + '<div style="color:#f87171;font-size:1rem;">' + msg + '</div>'
227              + '<button id="playerRetryBtn" style="padding:10px 28px;background:#3b82f6;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:0.95rem;font-weight:500;">Try Again</button>';
228            container.style.position = 'relative';
229            container.appendChild(el);
230            document.getElementById('playerRetryBtn').addEventListener('click', function() {
231              el.remove();
232              networkRetries = 0;
233              mediaAttempt = 0;
234              initPlayer();
235            });
236          }
237
238          video.addEventListener('error', function() {
239            var c = video.error ? video.error.code : 0;
240            var m = {1:'Video loading was aborted',2:'Network error — please check your connection',3:'This video format is not supported by your browser',4:'Video cannot be played'};
241            showError(m[c] || 'Unable to play this video');
242          });
243
244          // --- Mux Data monitoring ---
245          function startMuxMonitor(hls) {
246            if (typeof mux === 'undefined') return;
247            var opts = {
248              data: {
249                env_key: 'qg4vteopbpll8pvia665vghct',
250                video_id: 'vid-d479144e-bf16-4bde-b8cf-d1782d07b2b3',
251                video_title: 'Wild  News Beyond the Headlines, CNN\'s Future & Elon Musk\'s Next Move',
252                player_name: 'NewVideos.com',
253                player_version: '1.0'
254              }
255            };
256            if (hls) { opts.hlsjs = hls; opts.Hls = Hls; }
257            try { mux.monitor('#videoPlayer', opts); } catch(e) {}
258          }
259
260          // --- Player init ---
261          function initPlayer() {
262            video.muted = true;
263            video.volume = 1;
264            dismissUnmuteOverlay();
265
266            if (typeof Hls !== 'undefined' && Hls.isSupported()) {
267              hlsInstance = new Hls({ enableWorker: true, startLevel: -1 });
268              hlsInstance.loadSource(src);
269              hlsInstance.attachMedia(video);
270              hlsInstance.on(Hls.Events.MANIFEST_PARSED, function() {
271                tryPlay();
272              });
273              hlsInstance.on(Hls.Events.ERROR, function(event, data) {
274                if (!data.fatal) return;
275                if (data.type === Hls.ErrorTypes.NETWORK_ERROR) {
276                  networkRetries++;
277                  if (networkRetries <= MAX_RETRIES) {
278                    setTimeout(function() { hlsInstance.startLoad(); }, networkRetries * 2000);
279                  } else {
280                    hlsInstance.destroy(); hlsInstance = null;
281                    showError('Network error — please check your connection and try again');
282                  }
283                } else if (data.type === Hls.ErrorTypes.MEDIA_ERROR) {
284                  mediaAttempt++;
285                  if (mediaAttempt === 1) { hlsInstance.recoverMediaError(); }
286                  else if (mediaAttempt === 2) { hlsInstance.swapAudioCodec(); hlsInstance.recoverMediaError(); }
287                  else { hlsInstance.destroy(); hlsInstance = null; showError('Media playback error — try a different browser'); }
288                } else {
289                  hlsInstance.destroy(); hlsInstance = null;
290                  video.src = src;
291                  tryPlay();
292                }
293              });
294              startMuxMonitor(hlsInstance);
295            } else if (video.canPlayType('application/vnd.apple.mpegurl')) {
296              // Safari — native HLS
297              video.src = src;
298              video.addEventListener('canplay', function onCanPlay() {
299                video.removeEventListener('canplay', onCanPlay);
300                tryPlay();
301              });
302              tryPlay();
303              startMuxMonitor(null);
304            } else {
305              showError('Your browser does not support video playback');
306            }
307          }
308
309          // --- Sliding text-ad overlay (ads embedded at render time, fully static) ---
310          // Two slots: one at 1 minute and one at 10 minutes. Both pick from the
311          // ads hard-coded into AD_LIST; the 10-minute slot avoids repeating the
312          // ad shown at 1 minute when more than one ad qualifies.
313          var AD_LIST = [{"id":"ac0c55c2-8907-4937-bdb2-b84ecd4b7725","title":"Get Bright Answers","adText":"Uncensored answers for all your questions, with deep research and document citations: BrightAnswers.ai","clickUrl":"https://brightanswers.ai"}];
314          var AD_TRACK = 'https://video-forge-cwc.replit.app';
315
316          function adBeacon(url) {
317            try {
318              if (navigator.sendBeacon) { navigator.sendBeacon(url); }
319              else { fetch(url, { method: 'POST', keepalive: true, mode: 'no-cors' }).catch(function(){}); }
320            } catch (e) {}
321          }
322
323          function pickAd() {
324            if (!AD_LIST || !AD_LIST.length) return null;
325            return AD_LIST[Math.floor(Math.random() * AD_LIST.length)];
326          }
327
328          function pickAdExcluding(excludeId) {
329            if (!AD_LIST || !AD_LIST.length) return null;
330            if (AD_LIST.length === 1 || !excludeId) return pickAd();
331            var pool = AD_LIST.filter(function(x) { return x.id !== excludeId; });
332            if (!pool.length) return pickAd();
333            return pool[Math.floor(Math.random() * pool.length)];
334          }
335
336          function renderTextAd(ad) {
337            if (!ad) return false;
338            if (document.getElementById('bvBlurbBar')) return false;
339            container.style.position = 'relative';
340            var a = document.createElement('a');
341            a.id = 'bvBlurbBar';
342            a.href = ad.clickUrl || '#';
343            a.target = '_blank';
344            a.rel = 'noopener noreferrer';
345            a.style.cssText = 'position:absolute;left:0;right:0;bottom:0;min-height:20%;background:rgba(0,0,0,0.82);color:#fff;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:10px 16px;box-sizing:border-box;text-decoration:none;z-index:25;transform:translateY(100%);transition:transform 0.5s ease;font-family:Inter,system-ui,sans-serif;cursor:pointer;';
346            var t = document.createElement('div');
347            t.textContent = ad.title || '';
348            t.style.cssText = 'font-weight:700;font-size:1rem;line-height:1.2;';
349            var b = document.createElement('div');
350            b.textContent = ad.adText || '';
351            b.style.cssText = 'font-weight:400;font-size:0.875rem;line-height:1.3;';
352            a.appendChild(t);
353            a.appendChild(b);
354            a.addEventListener('click', function() {
355              if (ad.id) adBeacon(AD_TRACK + '/api/text-ads/' + encodeURIComponent(ad.id) + '/click');
356            });
357            container.appendChild(a);
358            requestAnimationFrame(function() {
359              requestAnimationFrame(function() { a.style.transform = 'translateY(0)'; });
360            });
361            if (ad.id) adBeacon(AD_TRACK + '/api/text-ads/' + encodeURIComponent(ad.id) + '/view');
362            setTimeout(function() {
363              a.style.transform = 'translateY(100%)';
364              setTimeout(function() { if (a.parentNode) a.parentNode.removeChild(a); }, 600);
365            }, 8000);
366            return true;
367          }
368
369          function setupTextAd() {
370            if (!AD_LIST || !AD_LIST.length) return;
371            var shown1 = false, shown2 = false, firstAdId = null;
372            video.addEventListener('timeupdate', function onAdTime() {
373              var t = video.currentTime || 0;
374              // Re-arm on a new playback cycle (replay / seek back near start)
375              // so fresh random ads can be shown on the next pass.
376              if ((shown1 || shown2) && t < 1.5) {
377                shown1 = false; shown2 = false; firstAdId = null;
378                var existing = document.getElementById('bvBlurbBar');
379                if (existing && existing.parentNode) existing.parentNode.removeChild(existing);
380              }
381              // Slot flags are only set once the ad actually renders, so a slot is
382              // never silently consumed (e.g. when seeking straight to 10 min while
383              // the 1-minute bar is still visible — slot 2 retries until it clears).
384              if (!shown1 && t >= 60) {
385                var ad1 = pickAd();
386                if (renderTextAd(ad1)) {
387                  shown1 = true;
388                  firstAdId = ad1 && ad1.id;
389                }
390              } else if (!shown2 && t >= 600) {
391                if (renderTextAd(pickAdExcluding(firstAdId))) {
392                  shown2 = true;
393                }
394              }
395            });
396          }
397
398          // Expose cleanup for turbo navigation
399          window.__brightCleanup = function() {
400            dismissUnmuteOverlay();
401            if (hlsInstance) { hlsInstance.destroy(); hlsInstance = null; }
402            video.pause();
403            video.removeAttribute('src');
404            video.load();
405          };
406
407          initPlayer();
408          try { setupTextAd(); } catch (e) {}
409        })();
410      </script>
410
411        </div>
412        <button id="shareBtn" class="share-btn">
413          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="5" r="3"></circle><circle cx="6" cy="12" r="3"></circle><circle cx="18" cy="19" r="3"></circle><line x1="8.59" y1="13.51" x2="15.42" y2="17.49"></line><line x1="15.41" y1="6.51" x2="8.59" y2="10.49"></line></svg>
414          Share
415        </button>
416        
417        <div class="ask-ai-section" id="askAiSection" data-video-id="vid-d479144e-bf16-4bde-b8cf-d1782d07b2b3" data-site-id="587cf40c-fe46-4b3d-af26-198e8df4b69d" data-ts="1790789421814">
418          <div class="ask-ai-header">
419            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2a4 4 0 0 1 4 4v1h1a3 3 0 0 1 3 3v1a3 3 0 0 1-1.1 2.3"></path><path d="M6 7h1V6a4 4 0 0 1 8 0"></path><path d="M4.5 10.3A3 3 0 0 1 4 8.7V8a3 3 0 0 1 3-1"></path><circle cx="12" cy="17" r="5"></circle><path d="M12 15v2"></path><path d="M14 17h-4"></path></svg>
420            <h3>Ask AI about this video</h3>
421          </div>
422          <form class="ask-ai-form" id="askAiForm">
423            <input type="text" id="askAiInput" placeholder="e.g. What are the key points?" required autocomplete="off" />
424            <div style="position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden;" aria-hidden="true"><input type="text" id="askAiWebsite" name="website" tabindex="-1" autocomplete="off" /></div>
425            <button type="submit" id="askAiBtn">
426              <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="22" y1="2" x2="11" y2="13"></line><polygon points="22 2 15 22 11 13 2 9 22 2"></polygon></svg>
427              Ask
428            </button>
429          </form>
430          <div class="ask-ai-response" id="askAiResponse">
431            <div class="ask-ai-response-label"><span class="ai-dot" id="askAiDot"></span> AI Answer</div>
432            <div class="ask-ai-answer" id="askAiAnswer"></div>
433            <div class="ask-ai-error" id="askAiError" style="display:none;"></div>
434            <div class="ask-ai-powered">Powered by <a href="https://brightanswers.ai" target="_blank" rel="noopener noreferrer">BrightAnswers.ai</a></div>
435          </div>
436        </div>
437<div class="video-info">
438          <h1>Wild  News Beyond the Headlines, CNN&#039;s Future &amp; Elon Musk&#039;s Next Move</h1>
439          <div class="meta">
440            <span>32 views</span>
441            <span>5:51</span>
442          </div>
443          <p class="description">Dan returns to &quot;I Allegedly Live&quot; with a no-holds-barred look at the alleged Trump assassination attempt, questioning media narratives and highlighting the suspicious death of Jim Capenhover. He sharply criticizes the press, particularly CNN, for their biased coverage and curious reporting details surrounding the incident.<br><br>But the big news might be CNN&#039;s future! Dan uncovers a groundbreaking potential development: Larry and David Ellison are reportedly seeking Elon Musk&#039;s investment in a major merger that could give Elon partial ownership of CNN. This episode also features a critical take on foreign reporters during Xi Jinping&#039;s recent visit.</p>
444        </div>
445        <div class="subscribe-section">
446    <div class="subscribe-header">
447      <svg class="subscribe-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="4" width="20" height="16" rx="3" ry="3"></rect><path d="M2 7l8.8 5.3a2.5 2.5 0 0 0 2.4 0L22 7"></path></svg>
448      <p>Subscribe to the BrightVideos.com email newsletter to receive a daily digest of the most important and popular videos uploaded each day. (You can unsubscribe at any time.)</p>
449    </div>
450    <form id="subscribe-form">
451      <input type="email" id="sub-email" placeholder="Your email" required />
452      <button type="submit">OK</button>
453    </form>
454    <div id="subscribe-msg" class="subscribe-msg" style="display:none;"></div>
455  </div>
456        <div class="transcript-section">
457        <div class="transcript-header" onclick="this.classList.toggle('open'); this.nextElementSibling.style.display = this.classList.contains('open') ? 'block' : 'none';">
458          <h2>Transcript</h2>
459          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>
460        </div>
461        <div class="transcript-content" style="display: none;">Hey, it&#039;s Dan. Welcome back to I Allegedly Live. Got a few good things for you today. Uh Jim C
461apenhover died. Who&#039;s he? He is the other man that was injured in Trump&#039;s assassination attempt in uh July of 2024, July 13th, 2024 to be exact. He was the other man that was shot and 74-year-old man died. Again, remember it didn&#039;t happen. Okay, guys got a bullet wound. Prove it dead. I hate the press. I really do. Do you want to know if there&#039;s something really disgusting? Do you know CNN never covered a Donald Trump uh, you know, rally except for that one in Butler? Hmm, isn&#039;t that interesting? Isn&#039;t it also interesting that a man who was a high-speed photographer was, they let him have a pass, who had never covered a rally also. Let him sit uh off to the side and get close-ups with his super fast high-speed camera. Hmm, wonder what they thought was gonna happen. You can only imagine. Uh, fuck CNN. Listen, CNN got their press credentials turned back, but there&#039;s a little bit of a twist today. And the twist is funny in that Larry Ellison and David Ellison, his ...</div>
462      </div>
463      </div>
464      <div class="sidebar">
465        <h2>Related Videos</h2>
466        <a href="https://newvideos.com/play/vid-36f8ad7c-272d-4677-bf20-38b8e88234bd/index.html" class="related-card">
467  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-36f8ad7c-272d-4677-bf20-38b8e88234bd/thumbnails/thumb_01_320.jpg" alt="Media&#039;s Double Standard: Blocking Trump vs. Being Blocked" loading="lazy"></div>
468  <div class="related-info">
469    <h3>Media&#039;s Double Standard: Blocking Trump vs. Being Blocked</h3>
470    <span class="related-meta">23 views · 4:55</span>
471  </div>
472</a>
473<a href="https://newvideos.com/play/vid-bc1a38fb-a300-456c-bbc5-0d2cff240c81/index.html" class="related-card">
474  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-bc1a38fb-a300-456c-bbc5-0d2cff240c81/thumbnails/thumb_01_320.jpg" alt="Are You Ready? Why Preparation is Critical in Chaotic Times" loading="lazy"></div>
475  <div class="related-info">
476    <h3>Are You Ready? Why Preparation is Critical in Chaotic Times</h3>
477    <span class="related-meta">42 views · 8:36</span>
478  </div>
479</a>
480<a href="https://newvideos.com/play/vid-7a2abb07-f807-4acf-9d14-c58c8cc98119/index.html" class="related-card">
481  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-7a2abb07-f807-4acf-9d14-c58c8cc98119/thumbnails/thumb_04_320.jpg" alt="9/11: Personal Memory, NYPD Heroism, and Today&#039;s Political Reality" loading="lazy"></div>
482  <div class="related-info">
483    <h3>9/11: Personal Memory, NYPD Heroism, and Today&#039;s Political Reality</h3>
484    <span class="related-meta">38 views · 6:38</span>
485  </div>
486</a>
487<a href="https://newvideos.com/play/vid-40490827-cda6-4e8f-997b-55f8b04a7c54/index.html" class="related-card">
488  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-40490827-cda6-4e8f-997b-55f8b04a7c54/thumbnails/thumb_01_320.jpg" alt="House Of Abhinandan Lodha Shimla | HoABL Villas &amp; Plots" loading="lazy"></div>
489  <div class="related-info">
490    <h3>House Of Abhinandan Lodha Shimla | HoABL Villas &amp; Plots</h3>
491    <span class="related-meta">9 views · 1:36</span>
492  </div>
493</a>
494<a href="https://newvideos.com/play/vid-d304c5fb-2d81-4245-8527-c3c826a3db1f/index.html" class="related-card">
495  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-d304c5fb-2d81-4245-8527-c3c826a3db1f/thumbnails/thumb_01_320.jpg" alt="Forum Selection &amp; Civil Remedies in Delhi NCR" loading="lazy"></div>
496  <div class="related-info">
497    <h3>Forum Selection &amp; Civil Remedies in Delhi NCR</h3>
498    <span class="related-meta">10 views · 9:32</span>
499  </div>
500</a>
501<a href="https://newvideos.com/play/vid-2cb77a75-352e-4eee-a6a7-314f679c6922/index.html" class="related-card">
502  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-2cb77a75-352e-4eee-a6a7-314f679c6922/thumbnails/thumb_04_320.jpg" alt="iAllegedly Live - Flock Cameras: Life Saving Tech or Stalker&#039;s Dream?" loading="lazy"></div>
503  <div class="related-info">
504    <h3>iAllegedly Live - Flock Cameras: Life Saving Tech or Stalker&#039;s Dream?</h3>
505    <span class="related-meta">48 views · 8:15</span>
506  </div>
507</a>
508<a href="https://newvideos.com/play/vid-a746f9c9-975e-40ad-b87a-33083ca7db74/index.html" class="related-card">
509  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-a746f9c9-975e-40ad-b87a-33083ca7db74/thumbnails/thumb_01_320.jpg" alt="Ohio&#039;s Danger Zone: Acton Attack, Scams &amp; Political Battle" loading="lazy"></div>
510  <div class="related-info">
511    <h3>Ohio&#039;s Danger Zone: Acton Attack, Scams &amp; Political Battle</h3>
512    <span class="related-meta">39 views · 6:45</span>
513  </div>
514</a>
515<a href="https://newvideos.com/play/vid-0799f0d4-edf3-4e9f-acd6-b2003a45a589/index.html" class="related-card">
516  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-0799f0d4-edf3-4e9f-acd6-b2003a45a589/thumbnails/thumb_01_320.jpg" alt="Alibaug One - Lifestyle Villa Plots Backed By Strong Returns" loading="lazy"></div>
517  <div class="related-info">
518    <h3>Alibaug One - Lifestyle Villa Plots Backed By Strong Returns</h3>
519    <span class="related-meta">9 views · 2:00</span>
520  </div>
521</a>
522<a href="https://newvideos.com/play/vid-82e29741-eb05-4924-bd38-62f0ad8cab61/index.html" class="related-card">
523  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-82e29741-eb05-4924-bd38-62f0ad8cab61/thumbnails/thumb_01_320.jpg" alt="Professional Banners Solutions" loading="lazy"></div>
524  <div class="related-info">
525    <h3>Professional Banners Solutions</h3>
526    <span class="related-meta">8 views · 0:30</span>
527  </div>
528</a>
529<a href="https://newvideos.com/play/vid-999364de-a3b2-4f9f-916f-600806e911cb/index.html" class="related-card">
530  <div class="related-thumb"><img src="https://f000.backblazeb2.com/file/newvideos1/videos/vid-999364de-a3b2-4f9f-916f-600806e911cb/thumbnails/thumb_01_320.jpg" alt="LA&#039;s Shady Election Funds: Is This Even Legal?" loading="lazy"></div>
531  <div class="related-info">
532    <h3>LA&#039;s Shady Election Funds: Is This Even Legal?</h3>
533    <span class="related-meta">24 views · 3:32</span>
534  </div>
535</a>
536      </div>
537    </div>
538  </main>
539  
540  <!-- Share Modal -->
541  <div id="shareModal" class="share-modal-overlay">
542    <div class="share-modal">
543      <div class="share-modal-header">
544        <h3>Share this video</h3>
545        <button id="shareModalClose" class="share-modal-close">
546          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>
547        </button>
548      </div>
549      <div class="share-options">
550        <button id="shareEmbed" class="share-option embed" style="grid-column:span 1;">
551          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="color:#a78bfa;"><polyline points="16 18 22 12 16 6"></polyline><polyline points="8 6 2 12 8 18"></polyline></svg>
552          <span>Embed</span>
553        </button>
554        <a id="shareFacebook" class="share-option facebook" target="_blank" rel="noopener noreferrer">
555          <svg viewBox="0 0 24 24" fill="currentColor"><path d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"/></svg>
556          <span>Facebook</span>
557        </a>
558        <a id="shareX" class="share-option x" target="_blank" rel="noopener noreferrer">
559          <svg viewBox="0 0 24 24" fill="currentColor"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/></svg>
560          <span>X</span>
561        </a>
562        <a id="shareTruth" class="share-option truth" target="_blank" rel="noopener noreferrer">
563          <svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 15h-2v-6h2v6zm0-8h-2V7h2v2zm4 8h-2v-4h2v4zm0-6h-2V9h2v2z"/></svg>
564          <span>Truth Social</span>
565        </a>
566        <button id="shareCopy" class="share-option copy">
567          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg>
568          <span>Copy Link</span>
569        </button>
570        <a id="shareEmail" class="share-option email">
571          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path><polyline points="22,6 12,13 2,6"></polyline></svg>
572          <span>Email</span>
573        </a>
574        <a id="shareSMS" class="share-option sms">
575          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg>
576          <span>SMS</span>
577        </a>
578      </div>
579    </div>
580  </div>
581  <div id="copyFeedback" class="copy-feedback">Link copied to clipboard!</div>
582  
582<script>
583    // Share functionality
584    (function() {
585      var shareBtn = document.getElementById('shareBtn');
586      var shareModal = document.getElementById('shareModal');
587      var shareModalClose = document.getElementById('shareModalClose');
588      var shareFacebook = document.getElementById('shareFacebook');
589      var shareX = document.getElementById('shareX');
590      var shareTruth = document.getElementById('shareTruth');
591      var shareCopy = document.getElementById('shareCopy');
592      var shareEmail = document.getElementById('shareEmail');
593      var shareSMS = document.getElementById('shareSMS');
594      var copyFeedback = document.getElementById('copyFeedback');
595      
596      var pageUrl = encodeURIComponent(window.location.href);
597      var pageTitle = encodeURIComponent(document.title);
598      
599      shareFacebook.href = 'https://www.facebook.com/sharer/sharer.php?u=' + pageUrl;
600      shareX.href = 'https://x.com/intent/post?text=' + pageTitle + '&url=' + pageUrl;
601      shareTruth.href = 'https://truthsocial.com/share?text=' + pageTitle + '&url=' + pageUrl;
602      shareEmail.href = 'mailto:?subject=' + pageTitle + '&body=Check out this video: ' + pageUrl;
603      shareSMS.href = 'sms:?body=' + pageTitle + ' ' + pageUrl;
604      
605      shareBtn.addEventListener('click', function() {
606        shareModal.classList.add('open');
607      });
608      
609      shareModalClose.addEventListener('click', function() {
610        shareModal.classList.remove('open');
611      });
612      
613      shareModal.addEventListener('click', function(e) {
614        if (e.target === shareModal) {
615          shareModal.classList.remove('open');
616        }
617      });
618      
619      shareCopy.addEventListener('click', function() {
620        navigator.clipboard.writeText(window.location.href).then(function() {
621          copyFeedback.classList.add('show');
622          setTimeout(function() {
623            copyFeedback.classList.remove('show');
624          }, 2000);
625          shareModal.classList.remove('open');
626        }).catch(function() {
627          alert('Failed to copy link');
628        });
629      });
630      
631      document.addEventListener('keydown', function(e) {
632        if (e.key === 'Escape' && shareModal.classList.contains('open')) {
633          shareModal.classList.remove('open');
634        }
635      });
636    })();
637  </script>
637
638  
638<script>
639    // View counter - async fire and forget
640    (function() {
641      var videoId = "vid-d479144e-bf16-4bde-b8cf-d1782d07b2b3";
642      if (!videoId || videoId === "") return;
643      var url = "https://brighto.io/api/videoviews/" + videoId;
644      if (navigator.sendBeacon) {
645        navigator.sendBeacon(url);
646      } else {
647        fetch(url, { method: "POST", keepalive: true }).catch(function() {});
648      }
649    })();
650  </script>
650
651  
651<script>
652    (function() {
653      var sh = document.querySelector('.site-header');
654      var hdr = document.querySelector('header');
655      if (sh && hdr) {
656        hdr.style.top = sh.offsetHeight + 'px';
657      }
658    })();
659  </script>
659
660  
660<script>
661(function() {
662  if (window.__turboNav) return;
663  window.__turboNav = true;
664
665  var navigating = false;
666  var prefetchCache = {};
667
668  // Progress bar
669  var bar = document.createElement('div');
670  bar.id = 'turboProgress';
671  bar.style.cssText = 'position:fixed;top:0;left:0;height:3px;background:#3b82f6;z-index:99999;width:0;transition:width 0.3s ease;pointer-events:none;';
672  document.body.appendChild(bar);
673
674  function setProgress(pct) {
675    bar.style.width = pct + '%';
676    if (pct >= 100) setTimeout(function() { bar.style.width = '0'; }, 400);
677  }
678
679  function scriptLoaded(src) {
680    var all = document.querySelectorAll('script[src]');
681    for (var i = 0; i < all.length; i++) {
682      if (all[i].getAttribute('src') === src) return true;
683    }
684    return false;
685  }
686
687  function loadScript(src) {
688    return new Promise(function(resolve) {
689      if (scriptLoaded(src)) { resolve(); return; }
690      var s = document.createElement('script');
691      s.src = src;
692      s.onload = resolve;
693      s.onerror = resolve;
694      document.head.appendChild(s);
695    });
696  }
697
698  function cleanup() {
699    if (typeof window.__brightCleanup === 'function') {
700      try { window.__brightCleanup(); } catch(e) {}
701      window.__brightCleanup = null;
702    }
703  }
704
705  // Prefetch pages on hover/touch for instant navigation
706  function prefetchLink(href) {
707    try {
708      var full = new URL(href, location.origin);
709      if (full.origin !== location.origin || full.href === location.href) return;
710      if (prefetchCache[full.href]) return;
711      prefetchCache[full.href] = fetch(full.href, { credentials: 'same-origin' })
712        .then(function(r) { return r.ok ? r.text() : null; })
713        .catch(function() { return null; });
714    } catch(ex) {}
715  }
716  document.addEventListener('mouseover', function(e) {
717    var link = e.target.closest ? e.target.closest('a[href]') : null;
718    if (!link) return;
719    var href = link.getAttribute('href');
720    if (href && href.charAt(0) !== '#') prefetchLink(href);
721  }, { passive: true });
722  document.addEventListener('touchstart', function(e) {
723    var link = e.target.closest ? e.target.closest('a[href]') : null;
724    if (!link) return;
725    var href = link.getAttribute('href');
726    if (href && href.charAt(0) !== '#') prefetchLink(href);
727  }, { passive: true });
728
729  function navigateTo(url, push) {
730    if (navigating) return;
731    navigating = true;
732    setProgress(15);
733
734    // Use prefetch cache if available (page was fetched on hover/touch)
735    var htmlPromise;
736    if (prefetchCache[url]) {
737      htmlPromise = prefetchCache[url].then(function(cached) {
738        delete prefetchCache[url];
739        if (!cached) throw new Error('Prefetch empty');
740        return cached;
741      });
742    } else {
743      htmlPromise = fetch(url, { credentials: 'same-origin' })
744        .then(function(res) {
745          if (!res.ok) throw new Error('HTTP ' + res.status);
746          return res.text();
747        });
748    }
749
750    htmlPromise.then(function(html) {
751        setProgress(50);
752
753        var parser = new DOMParser();
754        var doc = parser.parseFromString(html, 'text/html');
755
756        // If the target page isn't turbo-compatible, fall back to normal nav
757        if (!doc.head.querySelector('style#pageStyles')) {
758          window.location.href = url;
759          navigating = false;
760          return;
761        }
762
763        cleanup();
764
765        document.title = doc.title;
766
767        // Swap page styles
768        var newStyle = doc.head.querySelector('style#pageStyles');
769        var curStyle = document.head.querySelector('style#pageStyles');
770        if (newStyle && curStyle) {
771          curStyle.textContent = newStyle.textContent;
772        } else if (newStyle) {
773          var s = document.createElement('style');
774          s.id = 'pageStyles';
775          s.textContent = newStyle.textContent;
776          document.head.appendChild(s);
777        }
778
779        // Update meta tags
780        var mNames = ['description'];
781        var mProps = ['og:title', 'og:description', 'og:image', 'og:type'];
782        mNames.forEach(function(n) {
783          var nw = doc.head.querySelector('meta[name="' + n + '"]');
784          var cur = document.head.querySelector('meta[name="' + n + '"]');
785          if (nw && cur) cur.setAttribute('content', nw.getAttribute('content') || '');
786          else if (nw) document.head.appendChild(nw.cloneNode(true));
787        });
788        mProps.forEach(function(p) {
789          var nw = doc.head.querySelector('meta[property="' + p + '"]');
790          var cur = document.head.querySelector('meta[property="' + p + '"]');
791          if (nw && cur) cur.setAttribute('content', nw.getAttribute('content') || '');
792          else if (nw) document.head.appendChild(nw.cloneNode(true));
793        });
794
795        // Load external scripts from new page head (e.g. HLS.js)
796        var headScripts = doc.head.querySelectorAll('script[src]');
797        var promises = [];
798        for (var i = 0; i < headScripts.length; i++) {
799          var scriptSrc = headScripts[i].getAttribute('src');
800          if (scriptSrc) promises.push(loadScript(scriptSrc));
801        }
802
803        return Promise.all(promises).then(function() {
804          setProgress(75);
805
806          // Update URL BEFORE executing scripts so they see the correct location
807          if (push) history.pushState({}, '', url);
808
809          document.body.innerHTML = doc.body.innerHTML;
810          document.body.appendChild(bar);
811
812          // Re-execute inline scripts — innerHTML scripts are inert
813          var bodyScripts = document.body.querySelectorAll('script');
814          var chain = Promise.resolve();
815
816          for (var j = 0; j < bodyScripts.length; j++) {
817            (function(el) {
818              if (el.src) {
819                chain = chain.then(function() {
820                  return loadScript(el.getAttribute('src'));
821                });
822              } else if (el.textContent.trim()) {
823                if (el.textContent.indexOf('__turboNav') !== -1) return;
824                chain = chain.then(function() {
825                  var fresh = document.createElement('script');
826                  fresh.textContent = el.textContent;
827                  el.parentNode.replaceChild(fresh, el);
828                });
829              }
830            })(bodyScripts[j]);
831          }
832
833          return chain;
834        });
835      })
836      .then(function() {
837        window.scrollTo(0, 0);
838        setProgress(100);
839        navigating = false;
840      })
841      .catch(function(err) {
842        console.error('[Turbo] Navigation error:', err);
843        setProgress(0);
844        navigating = false;
845        window.location.href = url;
846      });
847  }
848
849  document.addEventListener('click', function(e) {
850    var link = e.target.closest ? e.target.closest('a[href]') : null;
851    if (!link) return;
852
853    var href = link.getAttribute('href');
854    if (!href || href.charAt(0) === '#' || href.indexOf('javascript:') === 0) return;
855    if (e.ctrlKey || e.metaKey || e.shiftKey || e.altKey) return;
856    if (link.target && link.target !== '_self') return;
857    if (link.hasAttribute('download')) return;
858    if (/\.(jpg|jpeg|png|gif|svg|pdf|zip|mp4|mp3)$/i.test(href)) return;
859
860    var full;
861    try { full = new URL(href, location.origin); } catch(ex) { return; }
862    if (full.origin !== location.origin) return;
863    if (full.href === location.href) return;
864
865    e.preventDefault();
866    navigateTo(full.href, true);
867  });
868
869  window.addEventListener('popstate', function() {
870    navigateTo(location.href, false);
871  });
872
873  history.replaceState({}, '', location.href);
874})();
875</script>
vendor: 1 bytes, line 875
875
876<script>
877    (function() {
878      var section = document.getElementById('askAiSection');
879      if (!section) return;
880      var videoId = section.getAttribute('data-video-id') || '';
881      var siteId = section.getAttribute('data-site-id') || '';
882      if (!videoId) {
883        var scripts = document.querySelectorAll('script');
884        for (var i = 0; i < scripts.length; i++) {
885          var t = scripts[i].textContent || '';
886          var vidMatch = t.match(/var videoId\s*=\s*["']([^"']+)["']/);
887          if (vidMatch) { videoId = vidMatch[1]; break; }
888        }
889      }
890      if (!videoId || !siteId) return;
891
892      var form = document.getElementById('askAiForm');
893      var input = document.getElementById('askAiInput');
894      var btn = document.getElementById('askAiBtn');
895      var responseBox = document.getElementById('askAiResponse');
896      var answerEl = document.getElementById('askAiAnswer');
897      var errorEl = document.getElementById('askAiError');
898      var dotEl = document.getElementById('askAiDot');
899      var honeypot = document.getElementById('askAiWebsite');
900      var currentSource = null;
901
902      var humanSignals = { mouse: false, keyboard: false, scroll: false };
903      var pageLoadTime = Date.now();
904      var lastSubmitTime = 0;
905      var submitCount = 0;
906      var DWELL_MIN_MS = 3000;
907      var COOLDOWN_MS = 10000;
908      var MAX_SUBMITS_PER_SESSION = 10;
909
910      function onMouse() { humanSignals.mouse = true; }
911      function onKey() { humanSignals.keyboard = true; }
912      function onScroll() { humanSignals.scroll = true; }
913      document.addEventListener('mousemove', onMouse, { once: true, passive: true });
914      document.addEventListener('touchstart', onMouse, { once: true, passive: true });
915      document.addEventListener('keydown', onKey, { once: true, passive: true });
916      document.addEventListener('scroll', onScroll, { once: true, passive: true });
917
918      function humanScore() {
919        var s = 0;
920        if (humanSignals.mouse) s++;
921        if (humanSignals.keyboard) s++;
922        if (humanSignals.scroll) s++;
923        return s;
924      }
925
926      function generateToken(ts, vid) {
927        var raw = vid + ':' + ts + ':' + (ts % 97);
928        var h = 0;
929        for (var i = 0; i < raw.length; i++) {
930          h = ((h << 5) - h + raw.charCodeAt(i)) | 0;
931        }
932        var challenge = Math.abs(h).toString(36);
933        var nonce = 0;
934        var target = (ts % 7) + 1;
935        while (nonce < 100000) {
936          var check = challenge + ':' + nonce;
937          var sum = 0;
938          for (var j = 0; j < check.length; j++) sum = ((sum << 3) - sum + check.charCodeAt(j)) | 0;
939          if (Math.abs(sum) % 10 < target) return challenge + '.' + nonce + '.' + ts;
940          nonce++;
941        }
942        return challenge + '.0.' + ts;
943      }
944
945      form.addEventListener('submit', function(e) {
946        e.preventDefault();
947
948        if (honeypot && honeypot.value) return;
949
950        var now = Date.now();
951        var dwell = now - pageLoadTime;
952        if (dwell < DWELL_MIN_MS) {
953          errorEl.textContent = 'Please wait a moment before asking.';
954          errorEl.style.display = 'block';
955          responseBox.classList.add('visible');
956          return;
957        }
958
959        if (humanScore() < 1) {
960          errorEl.textContent = 'Interaction required. Please move your mouse or scroll first.';
961          errorEl.style.display = 'block';
962          responseBox.classList.add('visible');
963          return;
964        }
965
966        if (lastSubmitTime && (now - lastSubmitTime) < COOLDOWN_MS) {
967          var wait = Math.ceil((COOLDOWN_MS - (now - lastSubmitTime)) / 1000);
968          errorEl.textContent = 'Please wait ' + wait + ' seconds before asking again.';
969          errorEl.style.display = 'block';
970          responseBox.classList.add('visible');
971          return;
972        }
973
974        if (submitCount >= MAX_SUBMITS_PER_SESSION) {
975          errorEl.textContent = 'You have reached the maximum number of questions for this session. Please refresh the page.';
976          errorEl.style.display = 'block';
977          responseBox.classList.add('visible');
978          return;
979        }
980
981        var prompt = input.value.trim();
982        if (!prompt) return;
983        if (prompt.length > 500) {
984          errorEl.textContent = 'Question is too long. Please keep it under 500 characters.';
985          errorEl.style.display = 'block';
986          responseBox.classList.add('visible');
987          return;
988        }
989
990        lastSubmitTime = now;
991        submitCount++;
992
993        if (currentSource) { currentSource.close(); currentSource = null; }
994        btn.disabled = true;
995        btn.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="12" cy="12" r="10"/><path d="M12 6v6l4 2"/></svg> Thinking\u2026';
996        answerEl.innerHTML = '';
997        errorEl.style.display = 'none';
998        responseBox.classList.add('visible');
999        dotEl.classList.add('streaming');
1000
1001        var rawText = '';
1002        var isCompiling = false;
1003
1004        function escHtml(s) {
1005          return s.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;').replace(/"/g,'&quot;');
1006        }
1007
1008        function renderMarkdown(md) {
1009          var lines = md.split('\n');
1010          var html = '';
1011          var inUl = false, inOl = false, inCode = false, codeLang = '';
1012          for (var li = 0; li < lines.length; li++) {
1013            var line = lines[li];
1014            if (inCode) {
1015              if (line.match(/^```\s*$/)) { html += '</code></pre>'; inCode = false; }
1016              else { html += escHtml(line) + '\n'; }
1017              continue;
1018            }
1019            var codeStart = line.match(/^```(\w*)\s*$/);
1020            if (codeStart) { inCode = true; codeLang = codeStart[1]; html += '<pre><code>'; continue; }
1021            if (line.match(/^\s*[-*]\s+/)) {
1022              if (!inUl) { html += '<ul>'; inUl = true; }
1023              html += '<li>' + inlineFormat(line.replace(/^\s*[-*]\s+/, '')) + '</li>';
1024              continue;
1025            } else if (inUl) { html += '</ul>'; inUl = false; }
1026            if (line.match(/^\s*\d+\.\s+/)) {
1027              if (!inOl) { html += '<ol>'; inOl = true; }
1028              html += '<li>' + inlineFormat(line.replace(/^\s*\d+\.\s+/, '')) + '</li>';
1029              continue;
1030            } else if (inOl) { html += '</ol>'; inOl = false; }
1031            if (line.match(/^###\s+/)) { html += '<h3>' + inlineFormat(line.replace(/^###\s+/, '')) + '</h3>'; continue; }
1032            if (line.match(/^##\s+/)) { html += '<h2>' + inlineFormat(line.replace(/^##\s+/, '')) + '</h2>'; continue; }
1033            if (line.match(/^#\s+/)) { html += '<h1>' + inlineFormat(line.replace(/^#\s+/, '')) + '</h1>'; continue; }
1034            if (line.trim() === '') { html += '<br>'; continue; }
1035            html += '<p>' + inlineFormat(line) + '</p>';
1036          }
1037          if (inUl) html += '</ul>';
1038          if (inOl) html += '</ol>';
1039          if (inCode) html += '</code></pre>';
1040          return html;
1041        }
1042
1043        function inlineFormat(text) {
1044          text = escHtml(text);
1045          text = text.replace(/`([^`]+)`/g, '<code>$1</code>');
1046          text = text.replace(/\*\*\*(.+?)\*\*\*/g, '<strong><em>$1</em></strong>');
1047          text = text.replace(/\*\*(.+?)\*\*/g, '<strong>$1</strong>');
1048          text = text.replace(/\*(.+?)\*/g, '<em>$1</em>');
1049          text = text.replace(/(https?:\/\/[^\s<&]+)/g, '<a href="$1" target="_blank" rel="noopener noreferrer">$1</a>');
1050          text = text.replace(/(?<!["\/a-zA-Z0-9])([a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.(?:com|org|net|io|ai|co|shop|store|us|info|biz|me|tv|app|dev|health|news|live|world|xyz|site|online|tech|edu|gov)(?:\/[^\s<&]*)?)(?!["\/a-zA-Z])/gi, '<a href="https://$1" target="_blank" rel="noopener noreferrer">$1</a>');
1051          return text;
1052        }
1053
1054        var token = generateToken(now, videoId);
1055        var params = new URLSearchParams({ video_id: videoId, site_id: siteId, prompt: prompt, _t: token, _h: String(humanScore()), _d: String(Math.floor(dwell / 1000)) });
1056        var url = 'https://brightanswers.ai/api/bright_videos_query?' + params.toString();
1057        var es = new EventSource(url);
1058        currentSource = es;
1059        var askBtnSvg = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="22" y1="2" x2="11" y2="13"></line><polygon points="22 2 15 22 11 13 2 9 22 2"></polygon></svg> Ask';
1060        es.onmessage = function(event) {
1061          try {
1062            var data = JSON.parse(event.data);
1063            if (data.status === 'compiling') {
1064              isCompiling = true;
1065              answerEl.innerHTML = '<p>Analyzing video content\u2026</p>';
1066            } else if (data.chunk) {
1067              if (isCompiling) { rawText = ''; isCompiling = false; }
1068              rawText += data.chunk;
1069              answerEl.innerHTML = renderMarkdown(rawText);
1070            } else if (data.done) {
1071              if (rawText) answerEl.innerHTML = renderMarkdown(rawText);
1072              es.close(); currentSource = null;
1073              dotEl.classList.remove('streaming');
1074              btn.disabled = false; btn.innerHTML = askBtnSvg;
1075            } else if (data.error) {
1076              errorEl.textContent = data.error; errorEl.style.display = 'block';
1077              es.close(); currentSource = null;
1078              dotEl.classList.remove('streaming');
1079              btn.disabled = false; btn.innerHTML = askBtnSvg;
1080            }
1081          } catch(ex) {}
1082        };
1083        es.onerror = function() {
1084          es.close(); currentSource = null;
1085          if (!rawText && !isCompiling) {
1086            errorEl.textContent = 'Connection error. Please try again.';
1087            errorEl.style.display = 'block';
1088          } else if (rawText) {
1089            answerEl.innerHTML = renderMarkdown(rawText);
1090          }
1091          dotEl.classList.remove('streaming');
1092          btn.disabled = false; btn.innerHTML = askBtnSvg;
1093        };
1094      });
1095    })();
1096  </script>
1096
1097
1098  <div id="embedPanel" class="share-modal-overlay">
1099    <div class="share-modal">
1100      <div class="share-modal-header">
1101        <h3>Embed this video</h3>
1102        <button id="embedPanelClose" class="share-modal-close">
1103          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>
1104        </button>
1105      </div>
1106      <p style="color:#aaa;font-size:0.85rem;margin:0 0 12px 0;">Copy this code and paste it into your website's HTML:</p>
1107      <textarea id="embedCodeBox" readonly style="width:100%;height:110px;background:#0d0d0d;color:#ddd;border:1px solid #333;border-radius:8px;padding:10px;font-family:monospace;font-size:0.78rem;resize:none;box-sizing:border-box;"></textarea>
1108      <button id="embedCopyBtn" style="margin-top:12px;width:100%;padding:10px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:0.9rem;font-weight:500;cursor:pointer;">Copy Embed Code</button>
1109    </div>
1110  </div>
1111  
1111<script>
1112  (function() {
1113    var btn = document.getElementById('shareEmbed');
1114    var panel = document.getElementById('embedPanel');
1115    var closeBtn = document.getElementById('embedPanelClose');
1116    var box = document.getElementById('embedCodeBox');
1117    var copyBtn = document.getElementById('embedCopyBtn');
1118    var shareModal = document.getElementById('shareModal');
1119    if (!btn || !panel || !box) return;
1120    box.value = "<iframe src=\"https://newvideos.com/embed/vid-d479144e-bf16-4bde-b8cf-d1782d07b2b3/index.html\" width=\"560\" height=\"315\" style=\"border:0;max-width:100%;aspect-ratio:16/9;\" allow=\"autoplay; fullscreen; picture-in-picture; encrypted-media\" allowfullscreen loading=\"lazy\" title=\"Video player\"></iframe>";
1121    btn.addEventListener('click', function() {
1122      if (shareModal) shareModal.classList.remove('open');
1123      panel.classList.add('open');
1124    });
1125    function closePanel() { panel.classList.remove('open'); }
1126    closeBtn.addEventListener('click', closePanel);
1127    panel.addEventListener('click', function(e) { if (e.target === panel) closePanel(); });
1128    document.addEventListener('keydown', function(e) { if (e.key === 'Escape') closePanel(); });
1129    copyBtn.addEventListener('click', function() {
1130      var done = function() {
1131        copyBtn.textContent = 'Copied!';
1132        setTimeout(function() { copyBtn.textContent = 'Copy Embed Code'; }, 2000);
1133      };
1134      if (navigator.clipboard && navigator.clipboard.writeText) {
1135        navigator.clipboard.writeText(box.value).then(done).catch(function() {
1136          box.select(); document.execCommand('copy'); done();
1137        });
1138      } else {
1139        box.select(); document.execCommand('copy'); done();
1140      }
1141    });
1142  })();
1143  </script>
1143
1144</body>
1145</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.