<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Radio Uživo &#8211; Kalesijski.ba</title>
	<atom:link href="https://kalesijski.ba/category/radio-uzivo/feed/" rel="self" type="application/rss+xml" />
	<link>https://kalesijski.ba</link>
	<description>Kalesijski Portal</description>
	<lastBuildDate>Mon, 12 Oct 2026 14:32:04 +0000</lastBuildDate>
	<language>bs-BA</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.3</generator>

<image>
	<url>https://kalesijski.ba/wp-content/uploads/2026/08/cropped-Gemini_Generated_Image_x85wuux85wuux85w-32x32.jpg</url>
	<title>Radio Uživo &#8211; Kalesijski.ba</title>
	<link>https://kalesijski.ba</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Uhvati naš ritam i zaboravi na visoke temperature!</title>
		<link>https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 01 Aug 2026 11:36:38 +0000</pubDate>
				<category><![CDATA[Radio]]></category>
		<category><![CDATA[Radio Uživo]]></category>
		<category><![CDATA[Kalesijski Radio]]></category>
		<category><![CDATA[Radio Kalesijski ba]]></category>
		<guid isPermaLink="false">https://kalesijski.ba/?p=18820</guid>

					<description><![CDATA[Ljetni talas je stigao, ali s Radio Kalesijski Ba, vrućina je samo riječ! Dok se vani peče, mi smo tu&#8230;]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Ljetni talas je stigao, ali s Radio Kalesijski Ba, vrućina je samo riječ!</p>



<p class="wp-block-paragraph">Dok se vani peče, mi smo tu da te rashladimo najboljom muzikom i svježim informacijama. Uhvati naš ritam i zaboravi na visoke temperature!</p>



<p class="wp-block-paragraph">Gdje god da si – na poslu, u autu ili na odmoru – pusti nas i uživaj u ljetu bez stresa!</p>



<p class="wp-block-paragraph">​✅ Slušaj nas online <a href="https://kalesijski.ba/radio-uzivo/" data-type="link" data-id="https://kalesijski.ba/radio-uzivo/">OVDJE</a></p>



<p class="wp-block-paragraph">✅ Sa nama nema vrućine!</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Radio Bombonica Kalesija &#8211; Slušaj uživo</title>
		<link>https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sun, 14 Dec 2025 11:51:55 +0000</pubDate>
				<category><![CDATA[Radio Uživo]]></category>
		<category><![CDATA[Radio Bombonica Kalesija]]></category>
		<guid isPermaLink="false">https://kalesijski.ba/?p=11589</guid>

					<description><![CDATA[Radio Kalesijski Ba &#8211; Web Player Viber WhatsApp Preuzmi HTML Kod Offline HTTPS MP3 Radio Kalesijski Radio Kalesijski Ba Pritisnite&#8230;]]></description>
										<content:encoded><![CDATA[
<html lang="bs"><head><script data-bard-client-injected="true">(function(firebaseConfig, initialAuthToken, appId) {
        window.__firebase_config = firebaseConfig;
        window.__initial_auth_token = initialAuthToken;
        window.__app_id = appId;
            })("\n{\n  \"apiKey\": \"AIzaSyCqyCcs2R2e7AegGjvFAwG98wlamtbHvZY\",\n  \"authDomain\": \"bard-frontend.firebaseapp.com\",\n  \"projectId\": \"bard-frontend\",\n  \"storageBucket\": \"bard-frontend.firebasestorage.app\",\n  \"messagingSenderId\": \"175205271074\",\n  \"appId\": \"1:175205271074:web:2b7bd4d34d33bf38e6ec7b\"\n}\n","eyJhbGciOiJSUzI1NiIsImtpZCI6IjExNjRiNzdiNDMzZDdhMDAyMWI4NjE4YjhjYTU3ZTMyZGI5MWUxMTMiLCJ0eXAiOiJKV1QifQ.eyJzdWIiOiJmaXJlYmFzZS1hZG1pbnNkay1mYnN2Y0BiYXJkLWZyb250ZW5kLmlhbS5nc2VydmljZWFjY291bnQuY29tIiwiYXVkIjoiaHR0cHM6Ly9pZGVudGl0eXRvb2xraXQuZ29vZ2xlYXBpcy5jb20vZ29vZ2xlLmlkZW50aXR5LmlkZW50aXR5dG9vbGtpdC52MS5JZGVudGl0eVRvb2xraXQiLCJ1aWQiOiIwMTQ2MzE1NzQxMTA5MTM2MTQ2OCIsImlzcyI6ImZpcmViYXNlLWFkbWluc2RrLWZic3ZjQGJhcmQtZnJvbnRlbmQuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20iLCJjbGFpbXMiOnsiYXBwSWQiOiJjXzI4NWM0OWM5NTE1Nzc3ZjBfaW5kZXguaHRtbC01NjUifSwiZXhwIjoxNzkxODE4OTY2LCJpYXQiOjE3OTE4MTUzNjYsImFsZyI6IlJTMjU2In0.BHD01KFd5KLHImPa6I9aFtbvnJM2PuBh5aC2OIH1qBHFfSSxXQUI0PsiiJocp0vkXreg80PLINvc0DV7y24u8PvGsoq5hQv8a8oxW2BKB_kBd8PoTzmmt1kXcV3k9UfwbbhOWOy8TG965cZNKv3eeyeae-dFJjecfcn6klkhBNCrtx_BMVdjZiBg5UWiN-gVAkJekUUeG6fhndKjm8sjwXMf2QSifbaOBLKVsJuihwY61BKJFzZSMyqmVcP6GJJunJeOt2uD66eR5d166rWAn_OePfWDnPY0f3P0gmQuFIr30eo_AutEBedcIXj50jRHvoLZBD-HM6B4icqz0da58g","c_285c49c9515777f0_index.html-565")</script><script data-bard-client-injected="true">
  document.addEventListener('input', (event) => {
    if (event.target && (event.target.isContentEditable || event.target.hasAttribute('contenteditable'))) {
      const clonedDoc = document.cloneNode(true);
      const injectedScripts = clonedDoc.querySelectorAll('[data-bard-client-injected="true"]');
      injectedScripts.forEach(el => el.remove());
      window.parent.postMessage({
        type: 'inlineEdit',
        html: '<!DOCTYPE html>\n' + clonedDoc.documentElement.outerHTML
      }, '*');
    }
  });
</script><script data-bard-client-injected="true">(function(){'use strict';window.addEventListener("message",a=>{a.data&&a.data.type==="SUPPLEMENTAL_DATA_UPDATE"&&window.dispatchEvent(new CustomEvent("supplementaldataupdate",{detail:a.data.data}))});}).call(this);
</script><script data-bard-client-injected="true">(function() {
  const SCROLL_KEYS = new Set([
    'ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight',
    ' ', 'Spacebar', 'PageUp', 'PageDown', 'Home', 'End',
  ]);
  const HORIZONTAL_KEYS = new Set(['ArrowLeft', 'ArrowRight']);

  function isTextEntryTarget(target) {
    if (!target) return false;
    const tagName = target.tagName;
    return tagName === 'INPUT' || tagName === 'TEXTAREA' ||
        tagName === 'SELECT' || target.isContentEditable === true;
  }

  // An element absorbs the key only if it both overflows on the axis being
  // scrolled and is configured to scroll on that axis. The cheap dimension
  // test runs first because getComputedStyle forces a style recalc, and this
  // runs on every keypress. Each axis is read from its own longhand: the
  // 'overflow' shorthand serializes as two values when the axes differ, which
  // is the common 'overflow-x: hidden; overflow-y: auto' pane.
  function canScroll(node, horizontal) {
    const overflows = horizontal ? node.scrollWidth > node.clientWidth
                                 : node.scrollHeight > node.clientHeight;
    if (!overflows) return false;
    const style = window.getComputedStyle(node);
    const overflow = horizontal ? style.overflowX : style.overflowY;
    return overflow === 'auto' || overflow === 'scroll';
  }

  // Walks up from the event target so nested scrollers keep their behavior.
  // <body> is included because pages that pin the root height make it the
  // scroll container.
  function hasScrollableAncestor(target, horizontal) {
    let node = target;
    while (node && node !== document.documentElement) {
      if (canScroll(node, horizontal)) return true;
      node = node.parentElement;
    }
    return false;
  }

  function rootCanScroll(horizontal) {
    const scroller = document.scrollingElement || document.documentElement;
    if (!scroller) return false;
    // Tolerate a pixel of rounding so subpixel layouts do not look scrollable.
    return horizontal ? scroller.scrollWidth > window.innerWidth + 1
                      : scroller.scrollHeight > window.innerHeight + 1;
  }

  window.addEventListener('keydown', function(event) {
    if (!SCROLL_KEYS.has(event.key)) return;
    if (event.defaultPrevented) return;
    // Alt and Meta turn arrows into browser history navigation, and Ctrl is
    // reserved for shortcuts, so none of them are scroll intent.
    if (event.altKey || event.metaKey || event.ctrlKey) return;

    const target = event.target;
    if (isTextEntryTarget(target)) return;

    // Anything that can still absorb the scroll gets to keep it.
    const horizontal = HORIZONTAL_KEYS.has(event.key);
    if (rootCanScroll(horizontal)) return;
    if (hasScrollableAncestor(target, horizontal)) return;

    event.preventDefault();
  }, {capture: true, passive: false});
})();</script><script data-bard-client-injected="true">(function() {
  // Ensure this script is executed only once
  if (window.firebaseAuthBridgeScriptLoaded) {
    return;
  }
  window.firebaseAuthBridgeScriptLoaded = true;

  let nextTokenPromiseId = 0;

  // Stores { resolve, reject } for ongoing token requests
  const pendingTokenPromises = {};

  // Listen for messages from the Host Application
  window.addEventListener('message', function(event) {

    const messageData = event.data;

  if (messageData && messageData.type === 'RESOLVE_NEW_FIREBASE_TOKEN') {
      const { success, token, error, promiseId } = messageData ?? {};
      if (pendingTokenPromises[promiseId]) {
        if (success) {
          pendingTokenPromises[promiseId].resolve(token);
        } else {
          pendingTokenPromises[promiseId].reject(new Error(error || 'Token refresh failed from host.'));
        }
        delete pendingTokenPromises[promiseId];
      }
    }
  });

  // Expose a function for the Generated App to request a new Firebase token
  window.requestNewFirebaseToken = function() {
    const currentPromiseId = nextTokenPromiseId++;
    const promise = new Promise((resolve, reject) => {
      pendingTokenPromises[currentPromiseId] = { resolve, reject };
    });
    if (window.parent && window.parent !== window) {
      window.parent.postMessage({
        type: 'REQUEST_NEW_FIREBASE_TOKEN',
        promiseId: currentPromiseId
      }, '*');
    } else {
      pendingTokenPromises[currentPromiseId].reject(new Error('No parent window to request token from.'));
      delete pendingTokenPromises[currentPromiseId];
    }
    return promise;
  };
})();</script><script data-bard-client-injected="true">
let realOriginalGetUserMedia = null;
if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
  realOriginalGetUserMedia = navigator.mediaDevices.getUserMedia.bind(navigator.mediaDevices);
}

(function() {
  if (navigator.mediaDevices && navigator.mediaDevices.__proto__) {
    try {
      Object.defineProperty(navigator.mediaDevices.__proto__, 'getUserMedia', {
        get: function() {
          return undefined; // Or throw an error
        },
        configurable: false
      });
    } catch (error) {
      console.error("Error defining prototype getter:", error);
    }
  }
})();

(function() {
  const pendingMediaResolvers = {};
  let nextMediaPromiseId = 0;

  function requestMediaPermissions(constraints) {
    const mediaPromiseId = nextMediaPromiseId++;
    const promise = new Promise((resolve, reject) => {
      pendingMediaResolvers[mediaPromiseId] = (granted) => {
        delete pendingMediaResolvers[mediaPromiseId];
        resolve(granted);
      };
    });

    window.parent.postMessage({
      type: 'requestMediaPermission',
      constraints: constraints,
      promiseId: mediaPromiseId,
    }, '*');

    return promise;
  }

  let originalGetUserMedia = realOriginalGetUserMedia;

  function interceptGetUserMedia() {
    if (navigator.mediaDevices) {
      Object.defineProperty(navigator.mediaDevices, 'getUserMedia', {
        value: function(constraints) {
          return requestMediaPermissions(constraints).then((granted) => {
            if (granted) {
              if (originalGetUserMedia) {
                return originalGetUserMedia(constraints);
              } else {
                throw new Error("Original getUserMedia not available.");
              }
            } else {
              throw new DOMException('Permission denied', 'NotAllowedError');
            }
          });
        },
        writable: false,
        configurable: false
      });
    }
  }

  interceptGetUserMedia();

  const observer = new MutationObserver(function(mutationsList, observer) {
    for (const mutation of mutationsList) {
      if (mutation.type === 'reconfigured' && mutation.name === 'getUserMedia' && mutation.object === navigator.mediaDevices) {
        interceptGetUserMedia();
      } else if (mutation.type === 'attributes' && mutation.attributeName === 'getUserMedia' && mutation.target === navigator.mediaDevices) {
        interceptGetUserMedia();
      } else if (mutation.type === 'childList' && mutation.addedNodes) {
        mutation.addedNodes.forEach(node => {
          if (node === navigator.mediaDevices) {
            interceptGetUserMedia();
          }
        });
      }
    }
  });

  function interceptSpeechRecognition() {
    if (!window.SpeechRecognition && !window.webkitSpeechRecognition) {
      return;
    }

    const OriginalSpeechRecognition = window.SpeechRecognition || window.webkitSpeechRecognition;

    const SpeechRecognitionWrapper = function(...args) {
      const recognizer = new OriginalSpeechRecognition(...args);
      const originalStart = recognizer.start.bind(recognizer);

      recognizer.start = function() {
        requestMediaPermissions({ audio: true }).then(granted => {
          if (granted) {
            originalStart();
          } else {
            const errorEvent = new SpeechRecognitionErrorEvent('error');
            errorEvent.error = 'not-allowed'; // This is the standard error for permission denial.
            recognizer.dispatchEvent(errorEvent);
          }
        });
      };

      return recognizer;
    };

    SpeechRecognitionWrapper.prototype = OriginalSpeechRecognition.prototype;
    SpeechRecognitionWrapper.prototype.constructor = SpeechRecognitionWrapper;

    if (window.SpeechRecognition) {
      window.SpeechRecognition = SpeechRecognitionWrapper;
    }
    if (window.webkitSpeechRecognition) {
      window.webkitSpeechRecognition = SpeechRecognitionWrapper;
    }
  }

  interceptSpeechRecognition();

  window.addEventListener('message', function(event) {
    if (event.data) {
      if (event.data.type === 'resolveMediaPermission') {
        const { promiseId, granted } = event.data;
        if (pendingMediaResolvers[promiseId]) {
          pendingMediaResolvers[promiseId](granted);
        }
      }
    }
  });

})();</script><script ws-interception-config="{&quot;parentOrigin&quot;:&quot;https://gemini.google.com&quot;,&quot;proxiedDomains&quot;:[]}" data-bard-client-injected="true">(function(){'use strict';var u=typeof Object.defineProperties=="function"?Object.defineProperty:function(b,d,e){if(b==Array.prototype||b==Object.prototype)return b;b[d]=e.value;return b};function v(b){b=["object"==typeof globalThis&&globalThis,b,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var d=0;d<b.length;++d){var e=b[d];if(e&#038;&#038;e.Math==Math)return e}throw Error("Cannot find global object");}var w=v(this);
function y(b,d){if(d)a:{var e=w;b=b.split(".");for(var h=0;h<b.length-1;h++){var k=b[h];if(!(k in e))break a;e=e[k]}b=b[b.length-1];h=e[b];d=d(h);d!=h&#038;&#038;d!=null&#038;&#038;u(e,b,{configurable:!0,writable:!0,value:d})}}function z(b){function d(h){return b.next(h)}function e(h){return b.throw(h)}return new Promise(function(h,k){function m(n){n.done?h(n.value):Promise.resolve(n.value).then(d,e).then(m,k)}m(b.next())})}y("globalThis",function(b){return b||w});/*

 Copyright The Closure Library Authors.
 SPDX-License-Identifier: Apache-2.0
*/
function A(b,d){function e(){}e.prototype=d.prototype;b.j=d.prototype;b.prototype=new e;b.prototype.constructor=b;b.h=function(h,k,m){for(var n=Array(arguments.length-2),p=2;p<arguments.length;p++)n[p-2]=arguments[p];return d.prototype[k].apply(h,n)}};function B(b,d,e="*"){function h(a){if(typeof a==="string")return F.encode(a).buffer;if(a instanceof ArrayBuffer)return a.slice(0);if(ArrayBuffer.isView(a))return a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength);throw Error("Invalid data type");}function k(a){a=h(a);var f={type:"send",data:new Uint8Array(a)},g;(g=r)==null||g.postMessage(f,[a])}function m(){if(!r)throw Error("Data port not captured yet.");r.onmessage=a=>{if(a.data.type==="message"){a=new MessageEvent("message",{data:G.decode(a.data.data)});
let f;(f=c.onmessage)==null||f.call(c,a);c.dispatchEvent(a)}}}function n(){if(!t)throw Error("Control port not captured yet.");t.onmessage=a=>{switch(a.data.type){case "open":l=1;var f=new Event("open"),g;(g=c.onopen)==null||g.call(c,f);c.dispatchEvent(f);q.forEach(H=>{k(H)});q=[];break;case "close":g=a.data;l=3;g=new CloseEvent("close",{code:g.code,reason:g.reason,wasClean:g.wasClean});(f=c.onclose)==null||f.call(c,g);c.dispatchEvent(g);break;case "error":l=3;f=new Event("error");let x;(x=c.onerror)==
null||x.call(c,f);c.dispatchEvent(f)}}}function p(a){return z(function*(){var f=new MessageChannel;t=f.port1;var g=new MessageChannel;r=g.port1;n();m();window.parent.postMessage({type:"websocket_open",portOrdering:["control","data"],url:b,protocols:a||[],connectionId:I},e,[f.port2,g.port2])}())}var c=Reflect.construct(EventTarget,[],new.target);c.CONNECTING=0;c.OPEN=1;c.CLOSING=2;c.CLOSED=3;c.url=b;c.binaryType="arraybuffer";c.protocol="";c.i="";var l=0,t=null,r=null,q=[],F=new TextEncoder,G=new TextDecoder;
c.onopen=null;c.onmessage=null;c.onclose=null;c.onerror=null;Object.defineProperty(c,"readyState",{get:()=>l,enumerable:!0,configurable:!0});Object.defineProperty(c,"bufferedAmount",{get:()=>{var a=0;q.forEach(f=>{a+=typeof f==="string"?f.length:f.byteLength});return a},enumerable:!0,configurable:!0});var I=function(){var a;return((a=globalThis.crypto)==null?0:a.randomUUID)?globalThis.crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,f=>{var g=Math.random()*16|0;return(f===
"x"?g:g&3|8).toString(16)})}();c.send=a=>{if(l===1)a instanceof Blob?a.arrayBuffer().then(f=>{k(f)}):k(a);else if(l===0)if(typeof a==="string")q.push(a);else if(a instanceof ArrayBuffer||ArrayBuffer.isView(a))q.push(h(a));else throw Error("Sending Blob is not supported before the connection is open.");else console.debug("WebSocket send called in CLOSING or CLOSED state; ignored.")};c.close=(a=1E3,f="")=>{if(l!==2&&l!==3){l=2;a={type:"close",code:a,reason:f,wasClean:a===1E3};var g;(g=t)==null||g.postMessage(a)}};
Promise.resolve().then(()=>p(d));return c}A(B,EventTarget);var C=document.currentScript,D=C==null?void 0:C.getAttribute("ws-interception-config");if(!D)throw Error("WebSocket Interceptor: Missing ws-interception-config attribute in the script tag.");var E=JSON.parse(D);if(!E.parentOrigin||typeof E.parentOrigin!=="string")throw Error("WebSocket Interceptor: Invalid parentOrigin in ws-interception-config");
(function(b){var d=Object.getOwnPropertyDescriptor(window,"WebSocket");if(!d||d.writable||d.configurable)d=Object.assign(function(e,h){try{let k=(new URL(e)).hostname;if(b.proxiedDomains.some(m=>k===m||k.endsWith(`.${m}`)))return new B(e,h,b.parentOrigin)}catch(k){throw window.parent.postMessage({type:"websocket_blocked",url:e,reason:"blocked_invalid_url"},b.parentOrigin),new DOMException(`WebSocket connection to '${e}' is not allowed in Canvas.`,"SecurityError");}window.parent.postMessage({type:"websocket_blocked",
url:e,reason:"blocked_domain_not_allowlisted"},b.parentOrigin);throw new DOMException(`WebSocket connection to '${e}' is not allowed in Canvas.`,"SecurityError");},{CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3}),Object.defineProperty(window,"WebSocket",{value:d,writable:!1,configurable:!1})})({proxiedDomains:E.proxiedDomains||[],parentOrigin:E.parentOrigin});}).call(this);
</script><script data-bard-client-injected="true">((function(modelInformation) {
  const originalFetch = window.fetch;
  // TODO: b/421908508 - Move these out of the script and match all generative AI model calls.
  let googleLlmBaseApiUrls = [
    'https://generativelanguage.googleapis.com/v1beta/models/' + modelInformation.textModelName + ':streamGenerateContent',
    'https://generativelanguage.googleapis.com/v1beta/models/' + modelInformation.textModelName + ':generateContent',
    'https://generativelanguage.googleapis.com/v1beta/models/' + modelInformation.imageModelName + ':predict',
    'https://generativelanguage.googleapis.com/v1beta/models/' + modelInformation.imageModelName + ':predictLongRunning',
    'https://generativelanguage.googleapis.com/v1beta/models/' + modelInformation.imageEditModelName + ':generateContent',
    'https://generativelanguage.googleapis.com/v1beta/models/' + modelInformation.imageTransformModelName + ':generateContent',
    'https://generativelanguage.googleapis.com/v1beta/models/' + modelInformation.videoModelName + ':predict',
    'https://generativelanguage.googleapis.com/v1beta/models/' + modelInformation.videoModelName + ':predictLongRunning',
    'https://generativelanguage.googleapis.com/v1beta/models/' + modelInformation.ttsModelName + ':generateContent',
  ];
  modelInformation.deprecatedTextModelNames.forEach((modelName) => {
    googleLlmBaseApiUrls.push(
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':streamGenerateContent',
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':generateContent',
    );
  });
  modelInformation.deprecatedImageModelNames.forEach((modelName) => {
    googleLlmBaseApiUrls.push(
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':predict',
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':predictLongRunning',
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':generateContent',
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':streamGenerateContent',
    );
  });
  modelInformation.deprecatedGenerateImageModelNames.forEach((modelName) => {
    googleLlmBaseApiUrls.push(
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':generateContent',
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':streamGenerateContent',
    );
  });
  modelInformation.deprecatedImageTransformModelNames.forEach((modelName) => {
    googleLlmBaseApiUrls.push(
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':generateContent',
      'https://generativelanguage.googleapis.com/v1beta/models/' + modelName + ':streamGenerateContent',
    );
  });

  const pendingFetchResolvers = {};
  let nextPromiseId = 0;

  function handleStringInput(input, optionsArgument) {
    const actualUrl = input;
    const fetchCallArgs = [actualUrl, optionsArgument];
    const effectiveOptions = optionsArgument || {};
    const bodyForApiKeyCheck = effectiveOptions.body;
    const bodyForPostMessage = effectiveOptions.body;
    return { actualUrl, fetchCallArgs, effectiveOptions, bodyForApiKeyCheck, bodyForPostMessage };
  }

  function handleRequestInput(input, optionsArgument) {
    const actualUrl = input.url;
    const fetchCallArgs = [input, optionsArgument];
    const effectiveOptions = { method: input.method, headers: new Headers(input.headers) };
    let bodyForApiKeyCheck;
    let bodyForPostMessage;

    if (optionsArgument) {
      if (optionsArgument.method) effectiveOptions.method = optionsArgument.method;
      if (optionsArgument.headers) effectiveOptions.headers = new Headers(optionsArgument.headers);
      if ('body' in optionsArgument) {
        bodyForApiKeyCheck = optionsArgument.body;
        bodyForPostMessage = optionsArgument.body;
      } else {
        bodyForApiKeyCheck = undefined;
        bodyForPostMessage = input.body;
      }
    } else {
      bodyForApiKeyCheck = undefined;
      bodyForPostMessage = input.body;
    }
    return { actualUrl, fetchCallArgs, effectiveOptions, bodyForApiKeyCheck, bodyForPostMessage };
  }

  window.fetch = function(input, optionsArgument) {
    let actualUrl;
    let fetchCallArgs;
    let effectiveOptions = {};
    let bodyForApiKeyCheck;
    let bodyForPostMessage;

    if (typeof input === 'string') {
      ({actualUrl, fetchCallArgs, effectiveOptions, bodyForApiKeyCheck, bodyForPostMessage} = handleStringInput(input, optionsArgument));
    } else if (input instanceof Request) {
      ({actualUrl, fetchCallArgs, effectiveOptions, bodyForApiKeyCheck, bodyForPostMessage} = handleRequestInput(input, optionsArgument));
    } else {
      return originalFetch.apply(window, [input, optionsArgument]);
    }

    effectiveOptions.method = effectiveOptions.method || 'GET';
    if (!effectiveOptions.headers) {
      effectiveOptions.headers = new Headers();
    }


    if (typeof actualUrl === 'string' && googleLlmBaseApiUrls.some((url) => actualUrl.startsWith(url))) {
      let apiKeyIsNull = true;

      const regex = new RegExp("models/([^:]+)");
      const modelNameMatch = actualUrl.match(regex);
      const modelName = modelNameMatch ? modelNameMatch[1] : 'unspecified';


      try {
        const urlObject = new URL(actualUrl);  // Use URL object for robust parsing
        const apiKeyParam = urlObject.searchParams.get('key');
        if (apiKeyParam) {
          apiKeyIsNull = false;
        }
      } catch (e) {
        // Continue checks even if URL parsing fails
      }

      if (apiKeyIsNull && effectiveOptions.headers) {
        const h = new Headers(effectiveOptions.headers);
        const apiKeyHeaderValue = h.get('X-API-Key') || h.get('x-api-key');
        if (apiKeyHeaderValue) {
          apiKeyIsNull = false;
          return originalFetch.apply(window, fetchCallArgs);
        }
      }

      if (apiKeyIsNull && effectiveOptions.method && ['POST', 'PUT', 'PATCH'].includes(effectiveOptions.method.toUpperCase()) && typeof bodyForApiKeyCheck === 'string') {
        try {
          const bodyData = JSON.parse(bodyForApiKeyCheck);
          if (bodyData && bodyData.apiKey) {
            apiKeyIsNull = false;
            return originalFetch.apply(window, fetchCallArgs);
          }
        } catch (e) {
          // Ignore JSON parsing errors
        }
      }

      if(apiKeyIsNull) {
        const promiseId = nextPromiseId++;
        const promise = new Promise((resolve) => {
          pendingFetchResolvers[promiseId] = (resolvedResponse) => {
            delete pendingFetchResolvers[promiseId];
            resolve(resolvedResponse);
          };
        });

        let serializedBodyForPostMessage;
        if (typeof bodyForPostMessage === 'string' || bodyForPostMessage == null) {
            serializedBodyForPostMessage = bodyForPostMessage;
        } else if (bodyForPostMessage instanceof ReadableStream) {
            serializedBodyForPostMessage = null;
        } else {
            try {
                serializedBodyForPostMessage = JSON.stringify(bodyForPostMessage);
            } catch (e) {
                serializedBodyForPostMessage = null;
            }
        }

        const messageOptions = {
            method: effectiveOptions.method,
            headers: Object.fromEntries(new Headers(effectiveOptions.headers).entries()),
            body: serializedBodyForPostMessage
        };

        window.parent.postMessage({
          type: 'requestFetch',
          url: actualUrl,
          modelName: modelName,
          options: messageOptions,
          promiseId: promiseId,
        }, '*');

        return promise;
      }
      return originalFetch.apply(window, fetchCallArgs);
    }
    return originalFetch.apply(window, fetchCallArgs);
  };

  window.addEventListener('message', function(event) {
    if (event.data && event.data.type === 'resolveFetch') {
      const { promiseId, response } = event.data;
      if (pendingFetchResolvers[promiseId]) {
        try {
          const reconstructedResponse = new Response(response.body, {
            status: response.status,
            statusText: response.statusText,
            headers: new Headers(response.headers),
          });
          pendingFetchResolvers[promiseId](reconstructedResponse);
        } catch (error) {
          pendingFetchResolvers[promiseId](new Response(null, { status: 500, statusText: "Interceptor Response Reconstruction Error" }));
        }
      }
    }
  });

}))({"textModelName":"gemini-3-flash-preview","imageModelName":"imagen-4.0-generate-001","imageEditModelName":"gemini-3.1-flash-image","imageTransformModelName":"gemini-3-pro-image","videoModelName":"veo-2.0-generate-001","ttsModelName":"gemini-2.5-flash-preview-tts","deprecatedTextModelNames":["gemini-2.0-flash","gemini-2.5-flash","gemini-2.5-flash-preview-04-17","gemini-2.5-flash-preview-05-20","gemini-2.5-flash-preview-09-2025"],"deprecatedImageModelNames":["imagen-3.0-generate-001","imagen-3.0-generate-002"],"deprecatedGenerateImageModelNames":["gemini-2.5-flash-image-preview","gemini-2.5-flash-image","gemini-3.1-flash-image-preview"],"deprecatedImageTransformModelNames":["gemini-3-pro-image-preview-11-2025"]})</script><script data-bard-client-injected="true">(function(){'use strict';function a(){window.parent.postMessage({type:"interaction"},"*")}window.addEventListener("click",a,{capture:!0,passive:!0});window.addEventListener("touchstart",a,{capture:!0,passive:!0});window.addEventListener("keydown",a,{capture:!0,passive:!0});}).call(this);
</script><script data-bard-client-injected="true">(function() {
  const originalConsoleLog = console.log;
  const originalConsoleError = console.error;

    /**
   * Normalizes an error event or a promise rejection reason into a structured error object.
   * @param {*} errorEventOrReason The error object or reason.
   * @return {object} Structured error data { message, name, stack }.
   */
  function getErrorObject(errorEventOrReason) {
    if (errorEventOrReason instanceof Error) {
      return {
        message: errorEventOrReason.message,
        name: errorEventOrReason.name,
        stack: errorEventOrReason.stack,
      };
    }
    // Fallback for non-Error objects.
    try {
      return {
        message: JSON.stringify(errorEventOrReason),
        name: 'UnknownErrorType',
        stack: null,
      };
    } catch (e) {
      return {
        message: String(errorEventOrReason),
        name: 'UnknownErrorTypeNonStringifiable',
        stack: null,
      };
    }
  }

  /**
   * Converts an array of arguments (from log/error) into a single string.
   * Handles Error objects specially to include their message and stack.
   * @param {Array<*>} args - Arguments passed to console methods.
   * @return {string} A string representation of the arguments.
   */
  function stringifyArgs(args) {
    return args
      .map((arg) => {
        if (arg instanceof Error) {
          const {message, stack} = arg;
          return `Error: ${message}${stack ? ('\nStack: ' + stack) : ''}`;
        }
        if (typeof arg === 'object' && arg !== null) {
          try {
            return JSON.stringify(arg);
          } catch (error) {
            return '[Circular Object]';
          }
        } else {
          return String(arg);
        }
      })
      .join(' ');
  }

  console.log = function(...args) {
    const logString = stringifyArgs(args);
    window.parent.postMessage({ type: 'log', message: logString }, '*');
    originalConsoleLog.apply(console, args);
  };

  console.error = function(...args) {
    let errorData;
    if (args.length > 0 && args[0] instanceof Error) {
      const err = args[0];
      // If the first arg is an Error, capture its details.
      errorData = {
        type: 'error',
        source: 'CONSOLE_ERROR',
        ...getErrorObject(err),
        rawArgsString: stringifyArgs(args.slice(1)),
        timestamp: new Date().toISOString(),
      };
    } else {
      // If not an Error object, treat all args as a general error message.
      errorData = {
        type: 'error',
        source: 'CONSOLE_ERROR',
        message: stringifyArgs(args),
        name: 'ConsoleLoggedError',
        stack: null,
        timestamp: new Date().toISOString(),
      };
    }
    window.parent.postMessage(errorData, '*');
    originalConsoleError.apply(console, args);
  };

  // Listen for global unhandled synchronous errors.
  window.addEventListener('error', function(event) {
    const errorDetails = event.error ? getErrorObject(event.error) : {
      message: event.message,
      name: 'GlobalError',
      stack: null,
      filename: event.filename,
      lineno: event.lineno,
      colno: event.colno,
    };

    window.parent.postMessage({
      type: 'error',
      source: 'global',
      ...errorDetails,
      message: errorDetails.message || event.message,
      timestamp: new Date().toISOString(),
    }, '*');
  });

  // Listen for unhandled promise rejections (asynchronous errors).
  window.addEventListener('unhandledrejection', function(event) {
    const errorDetails = getErrorObject(event.reason);

    window.parent.postMessage({
      type: 'error',
      source: 'unhandledrejection',
      ...errorDetails,
      message: errorDetails.message || 'Unhandled Promise Rejection',
      timestamp: new Date().toISOString(),
    }, '*');
  });

})();</script>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Radio Kalesijski Ba &#8211; Web Player</title>

  <!-- Tailwind CSS CDN -->
  <script src="https://cdn.tailwindcss.com"></script>

  <!-- Lucide Icons -->
  <script src="https://unpkg.com/lucide@latest" crossorigin="anonymous"></script>

  <!-- Google Fonts -->
  <link rel="preconnect" href="https://fonts.googleapis.com">
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="">
  <link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&amp;display=swap" rel="stylesheet">

  <script>
    tailwind.config = {
      darkMode: 'class',
      theme: {
        extend: {
          fontFamily: {
            sans: ['"Plus Jakarta Sans"', 'sans-serif'],
          },
          colors: {
            brand: {
              primary: '#ef4444',
              primaryHover: '#dc2626',
              accent: '#06b6d4',
              darkBg: '#0b0f19',
              cardDark: 'rgba(17, 24, 39, 0.75)',
              cardLight: 'rgba(255, 255, 255, 0.85)',
            }
          },
          animation: {
            'spin-slow': 'spin 16s linear infinite',
            'pulse-glow': 'pulseGlow 2s infinite',
          },
          keyframes: {
            pulseGlow: {
              '0%, 100%': { opacity: 1, filter: 'drop-shadow(0 0 15px rgba(239, 68, 68, 0.6))' },
              '50%': { opacity: 0.5, filter: 'drop-shadow(0 0 5px rgba(239, 68, 68, 0.2))' },
            }
          }
        }
      }
    }
  </script>

  <style>
    body {
      transition: background-color 0.3s, color 0.3s;
    }

    .glass-card {
      backdrop-filter: blur(20px);
      -webkit-backdrop-filter: blur(20px);
      box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.35);
    }

    /* Custom Range Slider */
    input[type=range] {
      -webkit-appearance: none;
      background: transparent;
    }
    input[type=range]:focus {
      outline: none;
    }
    input[type=range]::-webkit-slider-runnable-track {
      width: 100%;
      height: 6px;
      cursor: pointer;
      background: rgba(156, 163, 175, 0.3);
      border-radius: 999px;
    }
    input[type=range]::-webkit-slider-thumb {
      height: 18px;
      width: 18px;
      border-radius: 50%;
      background: #ef4444;
      cursor: pointer;
      -webkit-appearance: none;
      margin-top: -6px;
      box-shadow: 0 0 12px rgba(239, 68, 68, 0.7);
      transition: transform 0.15s ease;
    }
    input[type=range]::-webkit-slider-thumb:hover {
      transform: scale(1.2);
    }

    /* Animated Visualizer Equalizer */
    .eq-bar {
      width: 4px;
      background: linear-gradient(to top, #ef4444, #06b6d4);
      border-radius: 4px;
      height: 6px;
      transition: height 0.15s ease;
    }

    .playing .bar-1 { animation: eqAnim 0.7s infinite alternate ease-in-out; }
    .playing .bar-2 { animation: eqAnim 1.0s infinite alternate ease-in-out 0.2s; }
    .playing .bar-3 { animation: eqAnim 0.6s infinite alternate ease-in-out 0.4s; }
    .playing .bar-4 { animation: eqAnim 0.9s infinite alternate ease-in-out 0.1s; }
    .playing .bar-5 { animation: eqAnim 1.1s infinite alternate ease-in-out 0.3s; }

    @keyframes eqAnim {
      0% { height: 6px; }
      100% { height: 28px; }
    }

    pre code {
      font-family: monospace;
      font-size: 0.85rem;
    }
  </style>
<style>*, ::before, ::after{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246 / 0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/* ! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com */*,::after,::before{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}::after,::before{--tw-content:''}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:"Plus Jakarta Sans", sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0px}.-bottom-12{bottom:-3rem}.-bottom-3{bottom:-0.75rem}.-left-12{left:-3rem}.-right-12{right:-3rem}.-top-10{top:-2.5rem}.-top-12{top:-3rem}.left-1\/2{left:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.my-2{margin-top:0.5rem;margin-bottom:0.5rem}.my-auto{margin-top:auto;margin-bottom:auto}.-mb-2{margin-bottom:-0.5rem}.mb-2{margin-bottom:0.5rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:0.25rem}.mt-2{margin-top:0.5rem}.mt-6{margin-top:1.5rem}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-16{height:4rem}.h-2\.5{height:0.625rem}.h-3\.5{height:0.875rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-56{height:14rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-full{height:100%}.max-h-\[85vh\]{max-height:85vh}.max-h-64{max-height:16rem}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-16{width:4rem}.w-2\.5{width:0.625rem}.w-3\.5{width:0.875rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-md{max-width:28rem}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0\.5{--tw-translate-x:0.125rem;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.grid-cols-2{grid-template-columns:repeat(2, minmax(0, 1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:0.25rem}.gap-1\.5{gap:0.375rem}.gap-2{gap:0.5rem}.gap-2\.5{gap:0.625rem}.gap-3{gap:0.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:0.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:0.5rem}.rounded-xl{border-radius:0.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-brand-primary\/30{border-color:rgb(239 68 68 / 0.3)}.border-emerald-400\/30{border-color:rgb(52 211 153 / 0.3)}.border-purple-400\/30{border-color:rgb(192 132 252 / 0.3)}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-200\/80{border-color:rgb(226 232 240 / 0.8)}.border-slate-300\/50{border-color:rgb(203 213 225 / 0.5)}.border-slate-600{--tw-border-opacity:1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.border-slate-700{--tw-border-opacity:1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.border-slate-800{--tw-border-opacity:1;border-color:rgb(30 41 59 / var(--tw-border-opacity, 1))}.bg-brand-accent\/20{background-color:rgb(6 182 212 / 0.2)}.bg-brand-primary\/10{background-color:rgb(239 68 68 / 0.1)}.bg-brand-primary\/20{background-color:rgb(239 68 68 / 0.2)}.bg-emerald-600{--tw-bg-opacity:1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.bg-purple-600{--tw-bg-opacity:1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-200{--tw-bg-opacity:1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.bg-slate-400{--tw-bg-opacity:1;background-color:rgb(148 163 184 / var(--tw-bg-opacity, 1))}.bg-slate-800{--tw-bg-opacity:1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.bg-slate-900{--tw-bg-opacity:1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-slate-900\/90{background-color:rgb(15 23 42 / 0.9)}.bg-slate-950{--tw-bg-opacity:1;background-color:rgb(2 6 23 / var(--tw-bg-opacity, 1))}.bg-slate-950\/80{background-color:rgb(2 6 23 / 0.8)}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/80{background-color:rgb(255 255 255 / 0.8)}.bg-brand-primary{--tw-bg-opacity:1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-gradient-to-tr{background-image:linear-gradient(to top right, var(--tw-gradient-stops))}.from-brand-primary{--tw-gradient-from:#ef4444 var(--tw-gradient-from-position);--tw-gradient-to:rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-brand-primary\/20{--tw-gradient-from:rgb(239 68 68 / 0.2) var(--tw-gradient-from-position);--tw-gradient-to:rgb(239 68 68 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.via-slate-200{--tw-gradient-to:rgb(226 232 240 / 0)  var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #e2e8f0 var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-brand-accent\/20{--tw-gradient-to:rgb(6 182 212 / 0.2) var(--tw-gradient-to-position)}.to-rose-600{--tw-gradient-to:#e11d48 var(--tw-gradient-to-position)}.fill-current{fill:currentColor}.p-2{padding:0.5rem}.p-3{padding:0.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2\.5{padding-left:0.625rem;padding-right:0.625rem}.px-3{padding-left:0.75rem;padding-right:0.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:0.25rem;padding-bottom:0.25rem}.py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem}.py-2{padding-top:0.5rem;padding-bottom:0.5rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem}.pb-3{padding-bottom:0.75rem}.pt-2{padding-top:0.5rem}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}.font-sans{font-family:"Plus Jakarta Sans", sans-serif}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:0.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tracking-tight{letter-spacing:-0.025em}.tracking-wider{letter-spacing:0.05em}.tracking-widest{letter-spacing:0.1em}.text-brand-accent{--tw-text-opacity:1;color:rgb(6 182 212 / var(--tw-text-opacity, 1))}.text-brand-primary{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-slate-100{--tw-text-opacity:1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity:1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity:1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity:1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity:1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-slate-200{--tw-text-opacity:1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-40{opacity:0.4}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgb(0 0 0 / 0.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 rgb(0 0 0 / 0.05);--tw-shadow-colored:inset 0 2px 4px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0 / 0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.shadow-brand-primary\/30{--tw-shadow-color:rgb(239 68 68 / 0.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-brand-primary\/40{--tw-shadow-color:rgb(239 68 68 / 0.4);--tw-shadow:var(--tw-shadow-colored)}.shadow-emerald-600\/30{--tw-shadow-color:rgb(5 150 105 / 0.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-purple-600\/30{--tw-shadow-color:rgb(147 51 234 / 0.3);--tw-shadow:var(--tw-shadow-colored)}.blur-3xl{--tw-blur:blur(64px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-colors{transition-property:color, background-color, border-color, fill, stroke, -webkit-text-decoration-color;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, -webkit-text-decoration-color;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.duration-200{transition-duration:200ms}.duration-300{transition-duration:300ms}.duration-500{transition-duration:500ms}.duration-700{transition-duration:700ms}.selection\:bg-brand-primary *::selection{--tw-bg-opacity:1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.selection\:text-white *::selection{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.selection\:bg-brand-primary::selection{--tw-bg-opacity:1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.selection\:text-white::selection{--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-emerald-700:hover{--tw-bg-opacity:1;background-color:rgb(4 120 87 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-700:hover{--tw-bg-opacity:1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-200:hover{--tw-bg-opacity:1;background-color:rgb(226 232 240 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-300:hover{--tw-bg-opacity:1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.hover\:bg-brand-primaryHover:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:from-brand-primaryHover:hover{--tw-gradient-from:#dc2626 var(--tw-gradient-from-position);--tw-gradient-to:rgb(220 38 38 / 0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-rose-700:hover{--tw-gradient-to:#be123c var(--tw-gradient-to-position)}.hover\:text-slate-600:hover{--tw-text-opacity:1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.hover\:text-slate-900:hover{--tw-text-opacity:1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.hover\:shadow-brand-primary\/60:hover{--tw-shadow-color:rgb(239 68 68 / 0.6);--tw-shadow:var(--tw-shadow-colored)}.hover\:shadow-emerald-600\/50:hover{--tw-shadow-color:rgb(5 150 105 / 0.5);--tw-shadow:var(--tw-shadow-colored)}.hover\:shadow-purple-600\/50:hover{--tw-shadow-color:rgb(147 51 234 / 0.5);--tw-shadow:var(--tw-shadow-colored)}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.97\]:active{--tw-scale-x:0.97;--tw-scale-y:0.97;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dark\:border-slate-700:is(.dark *){--tw-border-opacity:1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.dark\:border-slate-700\/50:is(.dark *){border-color:rgb(51 65 85 / 0.5)}.dark\:border-slate-700\/60:is(.dark *){border-color:rgb(51 65 85 / 0.6)}.dark\:border-slate-800:is(.dark *){--tw-border-opacity:1;border-color:rgb(30 41 59 / var(--tw-border-opacity, 1))}.dark\:border-slate-800\/80:is(.dark *){border-color:rgb(30 41 59 / 0.8)}.dark\:bg-slate-800\/50:is(.dark *){background-color:rgb(30 41 59 / 0.5)}.dark\:bg-slate-800\/60:is(.dark *){background-color:rgb(30 41 59 / 0.6)}.dark\:bg-slate-800\/80:is(.dark *){background-color:rgb(30 41 59 / 0.8)}.dark\:bg-slate-800\/90:is(.dark *){background-color:rgb(30 41 59 / 0.9)}.dark\:bg-slate-900:is(.dark *){--tw-bg-opacity:1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.dark\:bg-slate-900\/80:is(.dark *){background-color:rgb(15 23 42 / 0.8)}.dark\:bg-slate-950:is(.dark *){--tw-bg-opacity:1;background-color:rgb(2 6 23 / var(--tw-bg-opacity, 1))}.dark\:via-slate-800:is(.dark *){--tw-gradient-to:rgb(30 41 59 / 0)  var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #1e293b var(--tw-gradient-via-position), var(--tw-gradient-to)}.dark\:text-slate-200:is(.dark *){--tw-text-opacity:1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.dark\:text-slate-400:is(.dark *){--tw-text-opacity:1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.dark\:text-slate-500:is(.dark *){--tw-text-opacity:1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.dark\:text-white:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:hover\:bg-slate-700:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-slate-800:hover:is(.dark *){--tw-bg-opacity:1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark\:hover\:text-white:hover:is(.dark *){--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:h-10{height:2.5rem}.sm\:h-20{height:5rem}.sm\:h-56{height:14rem}.sm\:w-10{width:2.5rem}.sm\:w-20{width:5rem}.sm\:w-56{width:14rem}.sm\:w-auto{width:auto}.sm\:flex-row{flex-direction:row}.sm\:p-4{padding:1rem}.sm\:p-8{padding:2rem}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-sm{font-size:0.875rem;line-height:1.25rem}}</style></head>

<body class="dark bg-slate-950 text-slate-100 min-h-screen flex flex-col items-center justify-between p-4 sm:p-8 font-sans antialiased selection:bg-brand-primary selection:text-white">

  <!-- Top Bar / Navigation -->
  <header class="w-full max-w-4xl flex items-center justify-between mb-6">
    <div class="flex items-center gap-3">
      <div class="w-10 h-10 rounded-2xl bg-gradient-to-tr from-brand-primary to-rose-600 flex items-center justify-center text-white shadow-lg shadow-brand-primary/30">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="radio" aria-hidden="true" class="lucide lucide-radio w-5 h-5"><path d="M16.247 7.761a6 6 0 0 1 0 8.478"></path><path d="M19.075 4.933a10 10 0 0 1 0 14.134"></path><path d="M4.925 19.067a10 10 0 0 1 0-14.134"></path><path d="M7.753 16.239a6 6 0 0 1 0-8.478"></path><circle cx="12" cy="12" r="2"></circle></svg>
      </div>
    <!-- Right Controls: Viber & WhatsApp Request Buttons, Code Toggle & Dark/Light Toggle -->
    <div class="flex items-center gap-2">
      <!-- Viber Header Quick Link -->
      <a href="viber://chat?number=%2B38761657412" title="Muzička želja na Viber" class="hidden sm:flex items-center gap-1.5 px-3 py-2 text-xs font-bold rounded-xl bg-purple-600 hover:bg-purple-700 text-white shadow-md shadow-purple-600/30 transition-all active:scale-95">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="message-circle" aria-hidden="true" class="lucide lucide-message-circle w-4 h-4"><path d="M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719"></path></svg>
        <span>Viber</span>
      </a>

      <!-- WhatsApp Header Quick Link -->
      <a href="https://wa.me/38761657412?text=Pozdrav,%20imam%20muzi%C4%8Dku%20%C5%BEelju:" target="_blank" title="Muzička želja na WhatsApp" class="hidden sm:flex items-center gap-1.5 px-3 py-2 text-xs font-bold rounded-xl bg-emerald-600 hover:bg-emerald-700 text-white shadow-md shadow-emerald-600/30 transition-all active:scale-95" rel="noopener">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="message-square" aria-hidden="true" class="lucide lucide-message-square w-4 h-4"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path></svg>
        <span>WhatsApp</span>
      </a>

      <button id="toggleCodeBtn" onclick="toggleCodeModal()" class="flex items-center gap-1.5 px-3 py-2 text-xs font-semibold rounded-xl bg-slate-200 dark:bg-slate-800/80 hover:bg-slate-300 dark:hover:bg-slate-700 text-slate-700 dark:text-slate-200 border border-slate-300/50 dark:border-slate-700 transition-all">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="code" aria-hidden="true" class="lucide lucide-code w-4 h-4"><path d="m16 18 6-6-6-6"></path><path d="m8 6-6 6 6 6"></path></svg>
        <span class="hidden sm:inline">Preuzmi HTML Kod</span>
      </button>

      <button id="themeToggle" onclick="toggleTheme()" class="p-2 rounded-xl bg-slate-200 dark:bg-slate-800/80 hover:bg-slate-300 dark:hover:bg-slate-700 text-slate-700 dark:text-slate-200 border border-slate-300/50 dark:border-slate-700 transition-all">
        <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="sun" aria-hidden="true" id="themeIcon" class="lucide lucide-sun w-4 h-4"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg>
      </button>
    </div>
  </div></header>

  <!-- Main Radio Player Card -->
  <main class="w-full max-w-md my-auto relative">
    
    <!-- Background Glow Blobs -->
    <div class="absolute -top-12 -left-12 w-56 h-56 bg-brand-primary/20 rounded-full blur-3xl pointer-events-none"></div>
    <div class="absolute -bottom-12 -right-12 w-56 h-56 bg-brand-accent/20 rounded-full blur-3xl pointer-events-none"></div>

    <div class="glass-card bg-white/80 dark:bg-slate-900/80 border border-slate-200/80 dark:border-slate-800/80 rounded-3xl p-6 sm:p-8 flex flex-col items-center relative z-10">

      <!-- Status Header -->
      <div class="w-full flex items-center justify-between mb-8">
        <!-- Live Status Pill -->
        <div class="flex items-center gap-2 px-3 py-1.5 rounded-full bg-slate-100 dark:bg-slate-800/90 border border-slate-200 dark:border-slate-700/60 shadow-sm">
          <span id="liveDot" class="w-2.5 h-2.5 rounded-full bg-slate-400 transition-all"></span>
          <span id="statusText" class="text-xs font-bold uppercase tracking-wider text-slate-500 dark:text-slate-400">Offline</span>
        </div>

        <!-- Audio Format Tag -->
        <div class="flex items-center gap-1.5 text-xs font-medium text-slate-500 dark:text-slate-400 bg-slate-100 dark:bg-slate-800/50 px-3 py-1.5 rounded-full border border-slate-200 dark:border-slate-800">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="wifi" aria-hidden="true" class="lucide lucide-wifi w-3.5 h-3.5 text-brand-accent"><path d="M12 20h.01"></path><path d="M2 8.82a15 15 0 0 1 20 0"></path><path d="M5 12.859a10 10 0 0 1 14 0"></path><path d="M8.5 16.429a5 5 0 0 1 7 0"></path></svg>
          <span>HTTPS MP3</span>
        </div>
      </div>

      <!-- Vinyl / Album Artwork Container -->
      <div class="relative group my-2">
        <div id="artRing" class="w-48 h-48 sm:w-56 sm:h-56 rounded-full p-2 bg-gradient-to-tr from-brand-primary/20 via-slate-200 dark:via-slate-800 to-brand-accent/20 flex items-center justify-center transition-all duration-500 shadow-xl">
          <div id="artDisc" class="w-full h-full rounded-full bg-slate-900 dark:bg-slate-950 border-4 border-slate-200 dark:border-slate-800 overflow-hidden relative flex items-center justify-center shadow-inner transition-transform duration-700">
            
            <!-- Center Logo / Icon -->
            <div class="flex flex-col items-center justify-center text-center p-4">
              <div class="w-16 h-16 rounded-full bg-brand-primary/10 border border-brand-primary/30 flex items-center justify-center mb-2 shadow-inner">
                <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="radio-tower" aria-hidden="true" class="lucide lucide-radio-tower w-8 h-8 text-brand-primary"><path d="M4.9 16.1C1 12.2 1 5.8 4.9 1.9"></path><path d="M7.8 4.7a6.14 6.14 0 0 0-.8 7.5"></path><circle cx="12" cy="9" r="2"></circle><path d="M16.2 4.8c2 2 2.26 5.11.8 7.47"></path><path d="M19.1 1.9a9.96 9.96 0 0 1 0 14.1"></path><path d="M9.5 18h5"></path><path d="m8 22 4-11 4 11"></path></svg>
              </div>
              <span class="text-[11px] font-extrabold uppercase tracking-widest text-slate-300">Radio Kalesijski</span>
            </div>

            <!-- Vinyl Center Spindle -->
            <div class="w-6 h-6 rounded-full bg-slate-800 dark:bg-slate-900 border-2 border-slate-600 absolute z-20 shadow"></div>
          </div>
        </div>

        <!-- Visualizer Bar Pill -->
        <div id="eqPill" class="absolute -bottom-3 left-1/2 -translate-x-1/2 bg-slate-900/90 text-white border border-slate-700 px-4 py-2 rounded-full flex items-center gap-1 shadow-lg opacity-40 transition-opacity duration-300">
          <div class="eq-bar bar-1"></div>
          <div class="eq-bar bar-2"></div>
          <div class="eq-bar bar-3"></div>
          <div class="eq-bar bar-4"></div>
          <div class="eq-bar bar-5"></div>
        </div>
      </div>

      <!-- Station Info -->
      <div class="text-center mt-6 mb-6 w-full">
        <h2 class="text-xl sm:text-2xl font-bold text-slate-900 dark:text-white tracking-tight">Radio Kalesijski Ba</h2>
        <p id="subTitle" class="text-xs sm:text-sm text-slate-500 dark:text-slate-400 mt-1 font-medium truncate">Pritisnite Play za slušanje uživo</p>
      </div>

      <!-- Control Buttons -->
      <div class="w-full flex flex-col items-center gap-5">
        <div class="flex items-center justify-center gap-5">
          
          <!-- Osvježi / Reload Button -->
          <button onclick="reloadStream()" title="Osvježi Stream" class="p-3 text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white bg-slate-100 dark:bg-slate-800/60 hover:bg-slate-200 dark:hover:bg-slate-800 rounded-full transition-all border border-slate-200 dark:border-slate-700/50 active:scale-95">
            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="rotate-cw" aria-hidden="true" class="lucide lucide-rotate-cw w-5 h-5"><path d="M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8"></path><path d="M21 3v5h-5"></path></svg>
          </button>

          <!-- Play / Pause Button -->
          <button id="playBtn" onclick="togglePlay()" class="w-16 h-16 sm:w-20 sm:h-20 rounded-full bg-gradient-to-tr from-brand-primary to-rose-600 hover:from-brand-primaryHover hover:to-rose-700 text-white flex items-center justify-center shadow-lg shadow-brand-primary/40 hover:shadow-brand-primary/60 hover:scale-105 active:scale-95 transition-all duration-300">
            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="play" aria-hidden="true" id="playIcon" class="lucide lucide-play w-8 h-8 sm:w-10 sm:h-10 fill-current translate-x-0.5"><path d="M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z"></path></svg>
          </button>

          <!-- Share Button -->
          <button onclick="copyShareLink()" title="Kopiraj Stream Link" class="p-3 text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white bg-slate-100 dark:bg-slate-800/60 hover:bg-slate-200 dark:hover:bg-slate-800 rounded-full transition-all border border-slate-200 dark:border-slate-700/50 active:scale-95 relative">
            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="share-2" aria-hidden="true" class="lucide lucide-share-2 w-5 h-5"><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" x2="15.42" y1="13.51" y2="17.49"></line><line x1="15.41" x2="8.59" y1="6.51" y2="10.49"></line></svg>
            <span id="shareToast" class="absolute -top-10 left-1/2 -translate-x-1/2 bg-slate-900 text-white text-[10px] py-1 px-2.5 rounded shadow border border-slate-700 opacity-0 pointer-events-none transition-all duration-200 whitespace-nowrap">Link Kopiran!</span>
          </button>
        </div>

        <!-- Music Request Section Title -->
        <div class="w-full text-center -mb-2 mt-2">
          <span class="text-[11px] font-extrabold uppercase tracking-wider text-slate-400 dark:text-slate-500">Muzičke Želje (061 657 412)</span>
        </div>

        <!-- Viber & WhatsApp Buttons Grid -->
        <div class="w-full grid grid-cols-2 gap-3">
          <!-- Viber Button -->
          <a href="viber://chat?number=%2B38761657412" target="_blank" class="bg-purple-600 hover:bg-purple-700 text-white p-3 rounded-2xl flex items-center justify-center gap-2.5 shadow-lg shadow-purple-600/30 hover:shadow-purple-600/50 transition-all duration-300 border border-purple-400/30 active:scale-[0.97]">
            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="phone-call" aria-hidden="true" class="lucide lucide-phone-call w-5 h-5"><path d="M13 2a9 9 0 0 1 9 9"></path><path d="M13 6a5 5 0 0 1 5 5"></path><path d="M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384"></path></svg>
            <span class="text-xs font-extrabold uppercase tracking-wider">Viber</span>
          </a>

          <!-- WhatsApp Button -->
          <a href="https://wa.me/38761657412?text=Pozdrav,%20imam%20muzi%C4%8Dku%20%C5%BEelju:" target="_blank" class="bg-emerald-600 hover:bg-emerald-700 text-white p-3 rounded-2xl flex items-center justify-center gap-2.5 shadow-lg shadow-emerald-600/30 hover:shadow-emerald-600/50 transition-all duration-300 border border-emerald-400/30 active:scale-[0.97]" rel="noopener">
            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="message-square" aria-hidden="true" class="lucide lucide-message-square w-5 h-5"><path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"></path></svg>
            <span class="text-xs font-extrabold uppercase tracking-wider">WhatsApp</span>
          </a>
        </div>

        <!-- Volume Bar -->
        <div class="w-full bg-slate-100 dark:bg-slate-800/50 border border-slate-200 dark:border-slate-800 p-3 sm:p-4 rounded-2xl flex items-center gap-3">
          <button id="muteBtn" onclick="toggleMute()" class="text-slate-600 dark:text-slate-400 hover:text-slate-900 dark:hover:text-white transition-colors">
            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="volume-2" aria-hidden="true" id="volumeIcon" class="lucide lucide-volume-2 w-5 h-5"><path d="M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"></path><path d="M16 9a5 5 0 0 1 0 6"></path><path d="M19.364 18.364a9 9 0 0 0 0-12.728"></path></svg>
          </button>
          
          <input type="range" id="volumeSlider" min="0" max="1" step="0.01" value="0.8" oninput="handleVolumeChange(this.value)" class="w-full">
          
          <span id="volumeValue" class="text-xs text-slate-500 dark:text-slate-400 font-mono w-8 text-right">80%</span>
        </div>
      </div>

      <!-- Hidden Audio Element -->
      <audio id="radioAudio" preload="none">
        <source src="https://stream1.srvnetplus.com:18102/;" type="audio/mpeg">
      </audio>

    </div>
  </main>

  <!-- HTML Code Embed Modal -->
  <div id="codeModal" class="fixed inset-0 bg-slate-950/80 backdrop-blur-sm z-50 flex items-center justify-center p-4 opacity-0 pointer-events-none transition-opacity duration-300">
    <div class="bg-white dark:bg-slate-900 border border-slate-200 dark:border-slate-800 w-full max-w-2xl rounded-3xl p-6 sm:p-8 flex flex-col gap-4 shadow-2xl relative max-h-[85vh] overflow-hidden">
      
      <div class="flex items-center justify-between pb-3 border-b border-slate-200 dark:border-slate-800">
        <div class="flex items-center gap-2">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="code-2" aria-hidden="true" class="lucide lucide-code-2 w-5 h-5 text-brand-primary"><path d="m18 16 4-4-4-4"></path><path d="m6 8-4 4 4 4"></path><path d="m14.5 4-5 16"></path></svg>
          <h3 class="font-bold text-lg text-slate-900 dark:text-white">Uputstvo za Kopiranje u HTML</h3>
        </div>
        <button onclick="toggleCodeModal()" class="p-2 text-slate-400 hover:text-slate-600 dark:hover:text-white rounded-lg">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="x" aria-hidden="true" class="lucide lucide-x w-5 h-5"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg>
        </button>
      </div>

      <p class="text-xs sm:text-sm text-slate-600 dark:text-slate-400">
        Kliknite na dugme ispod kako biste kopirali kompletan kod. Zatim ga nalijepite u vašu <strong>index.html</strong> datoteku ili unutar HTML dodataka na vašoj web stranici.
      </p>

      <div class="relative bg-slate-900 rounded-2xl p-4 overflow-x-auto border border-slate-800 max-h-64 text-slate-200">
        <pre><code id="htmlCodeBlock">&lt;!-- Preuzmi kompletan player kod sa glavne stranice --&gt;</code></pre>
      </div>

      <div class="flex flex-col sm:flex-row items-center justify-between gap-3 pt-2">
        <span class="text-xs text-slate-500">Uključuje SSL Stream, Tailwind CSS &amp; Lucide ikone.</span>
        <button onclick="copyFullCode()" class="w-full sm:w-auto px-5 py-2.5 rounded-xl bg-brand-primary hover:bg-brand-primaryHover text-white text-xs font-bold flex items-center justify-center gap-2 transition-all active:scale-95 shadow-lg shadow-brand-primary/30">
          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" data-lucide="copy" aria-hidden="true" class="lucide lucide-copy w-4 h-4"><rect width="14" height="14" x="8" y="8" rx="2" ry="2"></rect><path d="M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"></path></svg>
          <span id="copyBtnText">Kopiraj Sav Kod</span>
        </button>
      </div>
    </div>
  </div>

  <!-- Footer -->
  <footer class="w-full max-w-4xl text-center mt-6 text-xs text-slate-500 dark:text-slate-500">
    © Radio Kalesijski Ba • Sva prava zadržana
  </footer>

  <script>
    // State Variables
    const audio = document.getElementById('radioAudio');
    const playBtn = document.getElementById('playBtn');
    const playIcon = document.getElementById('playIcon');
    const liveDot = document.getElementById('liveDot');
    const statusText = document.getElementById('statusText');
    const subTitle = document.getElementById('subTitle');
    const eqPill = document.getElementById('eqPill');
    const artDisc = document.getElementById('artDisc');
    const volumeSlider = document.getElementById('volumeSlider');
    const volumeValue = document.getElementById('volumeValue');
    const muteBtn = document.getElementById('muteBtn');
    const themeIcon = document.getElementById('themeIcon');

    let isPlaying = false;
    let lastVolume = 0.8;

    // Initialize Lucide Icons
    lucide.createIcons();

    // Toggle Play / Pause
    function togglePlay() {
      if (isPlaying) {
        pauseRadio();
      } else {
        playRadio();
      }
    }

    function playRadio() {
      // Force reload of stream to maintain live synchronization
      audio.load();
      audio.play().then(() => {
        isPlaying = true;
        updateUI(true);
      }).catch(err => {
        console.error("Greska pri pokretanju streama: ", err);
        subTitle.textContent = "Greška pri spajanju na radio stream!";
      });
    }

    function pauseRadio() {
      audio.pause();
      isPlaying = false;
      updateUI(false);
    }

    function reloadStream() {
      subTitle.textContent = "Osvježavanje veze uživo...";
      const wasPlaying = isPlaying;
      audio.pause();
      audio.load();
      if (wasPlaying) {
        setTimeout(() => { playRadio(); }, 300);
      } else {
        setTimeout(() => { subTitle.textContent = "Pritisnite Play za slušanje uživo"; }, 800);
      }
    }

    function updateUI(playing) {
      if (playing) {
        playBtn.innerHTML = `<i data-lucide="pause" class="w-8 h-8 sm:w-10 sm:h-10 fill-current"></i>`;
        
        liveDot.className = "w-2.5 h-2.5 rounded-full bg-brand-primary animate-pulse-glow";
        statusText.textContent = "UŽIVO";
        statusText.className = "text-xs font-bold uppercase tracking-wider text-brand-primary";
        subTitle.textContent = "Slušate Radio Kalesijski Ba Uživo";

        eqPill.classList.add('playing');
        eqPill.classList.replace('opacity-40', 'opacity-100');
        artDisc.classList.add('animate-spin-slow');
      } else {
        playBtn.innerHTML = `<i data-lucide="play" class="w-8 h-8 sm:w-10 sm:h-10 fill-current translate-x-0.5"></i>`;
        
        liveDot.className = "w-2.5 h-2.5 rounded-full bg-slate-400";
        statusText.textContent = "PAUZIRANO";
        statusText.className = "text-xs font-bold uppercase tracking-wider text-slate-500 dark:text-slate-400";
        subTitle.textContent = "Pritisnite Play za ponovno pokretanje";

        eqPill.classList.remove('playing');
        eqPill.classList.replace('opacity-100', 'opacity-40');
        artDisc.classList.remove('animate-spin-slow');
      }
      lucide.createIcons();
    }

    function handleVolumeChange(val) {
      audio.volume = val;
      volumeValue.textContent = Math.round(val * 100) + '%';
      updateVolumeIcon(val);
    }

    function toggleMute() {
      if (audio.volume > 0) {
        lastVolume = audio.volume;
        audio.volume = 0;
        volumeSlider.value = 0;
        volumeValue.textContent = '0%';
        updateVolumeIcon(0);
      } else {
        audio.volume = lastVolume;
        volumeSlider.value = lastVolume;
        volumeValue.textContent = Math.round(lastVolume * 100) + '%';
        updateVolumeIcon(lastVolume);
      }
    }

    function updateVolumeIcon(val) {
      let iconName = 'volume-2';
      if (val == 0) {
        iconName = 'volume-x';
      } else if (val < 0.5) {
        iconName = 'volume-1';
      }
      muteBtn.innerHTML = `<i data-lucide="${iconName}" class="w-5 h-5"></i>`;
      lucide.createIcons();
    }

    function toggleTheme() {
      const isDark = document.body.classList.toggle('dark');
      themeIcon.setAttribute('data-lucide', isDark ? 'sun' : 'moon');
      lucide.createIcons();
    }

    function copyShareLink() {
      const link = "https://stream1.srvnetplus.com:18102/";
      const tempInput = document.createElement("input");
      tempInput.value = link;
      document.body.appendChild(tempInput);
      tempInput.select();
      document.execCommand("copy");
      document.body.removeChild(tempInput);

      const toast = document.getElementById("shareToast");
      toast.classList.replace("opacity-0", "opacity-100");
      setTimeout(() => {
        toast.classList.replace("opacity-100", "opacity-0");
      }, 2000);
    }

    function toggleCodeModal() {
      const modal = document.getElementById('codeModal');
      const isHidden = modal.classList.contains('pointer-events-none');
      if (isHidden) {
        document.getElementById('htmlCodeBlock').textContent = document.documentElement.outerHTML;
        modal.classList.remove('opacity-0', 'pointer-events-none');
      } else {
        modal.classList.add('opacity-0', 'pointer-events-none');
      }
    }

    function copyFullCode() {
      const codeText = document.documentElement.outerHTML;
      const tempInput = document.createElement("textarea");
      tempInput.value = codeText;
      document.body.appendChild(tempInput);
      tempInput.select();
      document.execCommand("copy");
      document.body.removeChild(tempInput);

      const copyBtnText = document.getElementById("copyBtnText");
      copyBtnText.textContent = "Kopirano u Clipboard!";
      setTimeout(() => {
        copyBtnText.textContent = "Kopiraj Sav Kod";
      }, 2500);
    }
  </script>

</body></html>



<div style="background: #222; padding: 15px; border-radius: 8px; text-align: center; max-width: 350px;">
  <p style="color: #fff; margin-bottom: 10px; font-weight: bold; font-family: sans-serif;">Slušajte Uživo</p>
  <audio controls style="width: 100%;">
    <source src="https://stream1.srvnetplus.com:18102/;" type="audio/mpeg">
    Vaš pretraživač ne podržava audio element.
  </audio>
</div>



<p class="wp-block-paragraph">Uživo Radio Bombonica Kalesija! <em>Radio Bombonica &#8211; Kalesija &#8211; BiH</em>. Pritisni play za slušanje uživo</p>



<iframe width="100%" height="210" src="https://worldsradios.online/embedded/3274" frameborder="0"></iframe>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><a href="http://play.keepone.net/39991" target="_blank" rel="noopener"><img fetchpriority="high" decoding="async" width="600" height="600" src="https://kalesijski.ba/wp-content/uploads/2025/12/camera.504.jpg" alt="" class="wp-image-14110" style="width:148px;height:auto" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/camera.504.jpg 600w, https://kalesijski.ba/wp-content/uploads/2025/12/camera.504-300x300.jpg 300w, https://kalesijski.ba/wp-content/uploads/2025/12/camera.504-150x150.jpg 150w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure>
</div>


<p class="wp-block-paragraph">Radio stanice uživo</p>



<div class="wp-block-query is-layout-flow wp-block-query-is-layout-flow"><ul class="wp-block-post-template is-layout-flow wp-block-post-template-is-layout-flow"><li class="wp-block-post post-11491 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="1024" height="410" src="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Kalesijski Ba &#8211; Slušaj uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png 1024w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-768x308.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self">Radio Kalesijski Ba &#8211; Slušaj uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11493 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-glas-drine tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="313" src="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Glas Drine &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png 600w, https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647-300x157.png 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self">Radio Glas Drine &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11496 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-feral tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="315" src="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Feral Kalesija &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp 600w, https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija-300x158.webp 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self">Radio Feral Kalesija &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11529 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-narodni-radio-tuzla tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="322" src="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Narodni Radio Tuzla &#8211; Slušaj Uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-300x97.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-768x247.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self">Narodni Radio Tuzla &#8211; Slušaj Uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-11589 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-bombonica-kalesija tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="400" src="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Bombonica Kalesija &#8211; Slušaj uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-768x307.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self">Radio Bombonica Kalesija &#8211; Slušaj uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-18820 post type-post status-publish format-standard has-post-thumbnail hentry category-radio category-radio-uzivo tag-kalesijski-radio tag-radio tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self"><img decoding="async" width="1408" height="768" src="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Uhvati naš ritam i zaboravi na visoke temperature!" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png 1408w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-300x164.png 300w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-1024x559.png 1024w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-768x419.png 768w" sizes="(max-width: 1408px) 100vw, 1408px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self">Uhvati naš ritam i zaboravi na visoke temperature!</a></h2></div>
</div>

</li></ul></div>


]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Narodni Radio Tuzla &#8211; Slušaj Uživo</title>
		<link>https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 13 Dec 2025 21:35:02 +0000</pubDate>
				<category><![CDATA[Radio Uživo]]></category>
		<category><![CDATA[Narodni Radio Tuzla]]></category>
		<guid isPermaLink="false">https://kalesijski.ba/?p=11529</guid>

					<description><![CDATA[Slušaj Uživo Narodni Radio Tuzla Narodni radio Tuzla]]></description>
										<content:encoded><![CDATA[
<p class="has-text-align-center wp-block-paragraph">Slušaj Uživo Narodni Radio Tuzla</p>



<!--OnlineRadioBox Player widget-->
<div class="orbP" id="orb_player_3341050fbb49e3" vlm="0.8">
<style media="screen">.orbP{position:relative;box-sizing:border-box;overflow:hidden;font-weight:normal;border:1px solid transparent;user-select:none;text-align:left}.orbP br,.orbP>br{display:none!important}.orbP p,.orbP>p{margin:0!important;padding:0!important;line-height:normal!important;font-size:inherit!important}.orbPh{display:block;position:absolute;z-index:100;top:50%;margin-top:-12px!important;right:10px;width:21px!important;text-decoration:none!important;cursor:pointer}.orbPh>img{margin:0!important;border:none;height:24px!important;-webkit-filter:drop-shadow(2px 2px 0 rgba(47,99,160,.2));filter:drop-shadow(2px 2px 0 rgba(47,99,160,.2))}.orbPt{text-decoration:none!important}.orbPti{float:left;margin:0 10px 0 0!important;vertical-align:top!important;height:48px!important;width:89px!important;border:none!important;border-radius:2px!important;opacity:1!important}.orbPtn{display:block;margin-right:52px;line-height:24px!important;font-size:17px!important;font-weight:bold!important;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.orbPtt{display:block;margin-right:52px;text-decoration:none!important;line-height:24px!important;font-size:12px!important;opacity:.85;transition:opacity .2s;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.orbPtt:hover{opacity:1}.orbPp,.orbPs{float:left!important;margin:0 10px 0 0!important;padding:0!important;height:48px!important;width:48px!important;line-height:48px!important;border-radius:2px!important;border:none!important;text-align:center!important;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none!important}.orbPp::before,.orbPs::before{display:inline-block;vertical-align:middle;content:"";width:0;height:0;border-style:solid}.orbPp::before{border-width:16px 0 16px 26px}.orbPs::before{border-width:16px}.orbPp:hover,.orbPs:hover{-webkit-transform:scale(1.087);transform:scale(1.087)}.orbPhc{position:relative!important;box-sizing:border-box!important;padding:10px!important;overflow:hidden}.orbPpl{position:relative;overflow:auto;overflow-x:hidden;overflow-y:auto;margin:0!important;padding:0!important;list-style:none!important}.orbPpli{box-sizing:border-box;margin:0!important;padding:0 10px!important;list-style:none!important;background-image:none;float:none!important;height:auto!important}.orbPpli>a,.orbPpli>span{display:block!important;padding:0!important;margin:0!important;height:auto!important;font-weight:normal!important;text-decoration:none!important;line-height:32px!important;font-size:14px!important;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;transition:color .125s;border:none!important;text-align:left!important}.orbPpli>a:hover,.orbPpli>span:hover{background:transparent!important}.orbPpli>a>time,.orbPpli>span>time{display:inline-block;font-size:12px!important;width:3em!important}.orbPpli+li{border-style:solid!important;border-width:1px 0 0!important}.orbV{position:absolute;z-index:1!important;width:24px!important;right:48px!important;top:0!important;bottom:0!important;line-height:1!important;overflow:hidden!important;transition:width .3s}.orbV:hover{width:160px!important}.orbVC{position:absolute!important;height:18px!important;left:24px!important;top:50%!important;margin:-9px 0 0 11px!important}.orbVC::after{display:block;content:"";margin-top:4px;width:0;height:0;border-style:solid;border-width:4px 100px 4px 0;opacity:.33}.orbVCs{position:absolute!important;z-index:2!important;top:0!important;width:18px!important;height:18px!important;border-radius:50%!important;cursor:ew-resize!important;box-shadow:0 6px 8px -2px rgba(0,9,18,0.36)}.orbVb{position:absolute!important;width:24px!important;height:24px!important;top:50%!important;left:0!important;margin-top:-12px;white-space:nowrap!important;cursor:pointer;transition:opacity .3s}.orbVb::before{display:inline-block;content:"";vertical-align:middle;width:7px;height:12px}.orbVb::after{display:inline-block;content:"";vertical-align:middle;border-width:12px 12px 12px 0;border-style:solid;height:0;width:0;margin-left:-6px}.orbV:hover .orbVb{opacity:.33!important;cursor:default}.orbVb>._m{display:block!important;width:7px!important;height:18px!important;position:absolute!important;top:50%;margin-top:-9px!important;right:0;overflow:hidden!important}.orbVb>._m::before{display:block;content:"";position:absolute;right:0;top:50%;width:28px;height:24px;margin-top:-12px;border:1px solid;border-radius:50%}.orbVb>._m::after{display:block;content:"";position:absolute;right:4px;top:50%;width:14px;height:14px;margin-top:-7px;border:1px solid;border-radius:50%}.orbF{padding:0 0 10px 10px!important;border-top:1px solid;display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-flow:row nowrap!important;flex-flow:row nowrap!important}.orbFl{margin:0!important;padding:0!important;list-style:none!important}.orbFli,.orbFh{display:inline-block!important;vertical-align:top!important;line-height:18px!important;white-space:nowrap!important;margin:10px 7px 0 0!important;padding:0 6px 0 0!important;text-indent:0!important;list-style:none!important;font-size:11px!important;text-align:right}.orbFlif{float:left!important;width:27px!important;height:18px!important;margin-right:5px!important}.orbFhi{position:relative!important;display:inline-block!important;vertical-align:baseline!important;width:8px!important;height:9px!important;margin:0 8px 0 5px!important;border-style:solid!important;border-width:2px 1px 0 1px!important;border-radius:5px 5px 0 0!important;opacity:.5}.orbFhi::before,.orbFhi::after{display:block;content:"";position:absolute;bottom:-2px;width:0;height:3px;border-style:solid;border-width:2px;border-radius:3px}.orbFhi::before{left:-4px}.orbFhi::after{right:-4px}.orbPm{margin:0!important;padding:0!important;list-style:none!important}.orbPmi{position:relative;margin:0!important;padding:10px!important;list-style:none!important;border:dotted rgba(204,204,204,0.5);border-width:1px 0 0;font-size:12px!important;overflow:hidden;white-space:nowrap;line-height:1!important;cursor:pointer}.orbPmi::before{display:block;content:"";position:absolute;z-index:1;top:50%;right:10px;margin-top:-8px;width:0;height:0;border-style:solid;border-width:8px 0 8px 13px;opacity:.5;filter:alpha(opacity=50);transition:opacity .2s}.orbPmi:hover::before{opacity:1;filter:alpha(opacity=100)}.orbPmi::after{display:block;content:"";position:absolute;top:0;bottom:0;right:0;width:36px}.orbPmii{display:inline-block;vertical-align:middle;margin-right:10px;width:30px;height:16px;border:none!important;border-radius:2px!important}.orbPmin{display:inline-block;vertical-align:middle}.cmpct .orbPti{height:24px!important;width:44px!important}.cmpct .orbPtn{line-height:12px!important;font-size:12px!important}.cmpct .orbPtt{line-height:12px!important;font-size:10px!important}.cmpct .orbPp,.cmpct .orbPs{height:24px!important;width:24px!important;line-height:24px!important}.cmpct .orbPp::before{border-width:8px 0 8px 13px!important}.cmpct .orbPs::before{border-width:8px!important}.cmpct .orbPpli>a,.cmpct .orbPpli>span{line-height:24px!important;font-size:12px!important}.cmpct .orbPpli>a>time,.cmpct .orbPpli>span>time{font-size:11px!important}</style>
<style media="screen" id="orb_player_3341050fbb49e3_settings">.orbP{background-color:#2f63a0!important}.orbP{border-style:solid;border-color:#2f63a0!important;border-radius:5px}.orbPp,.orbPs{background:#7094bf!important}.orbPp::before{border-color:transparent transparent transparent #ffffff!important}.orbPs::before{border-color:#ffffff!important}.orbPtn,.orbPtt,.orbPtt:hover{color:#ffffff!important}.orbPpl{height:185px;background:#ffffff!important}.orbPpli>a,.orbPpli>a:visited,.orbPpli>span,.orbPpli>a:hover>time,.orbPpli.a>a>time,.orbPpli.a>span>time{color:#333333!important}.orbPpli>a:hover,.orbPpli.a>a,.orbPpli.a>span{color:#f07700!important}.orbPpli>a>time,.orbPpli>span>time{color:#aeaeae!important}.orbPpli.a{background:#f3f3f3!important}.orbPpli+li{border-color:#eeeeee!important}.orbV{background-color:#2f63a0!important;box-shadow:0 0 32px 32px #2f63a0!important}.orbVC::after,.orbVb::after{border-color:transparent #ffffff transparent transparent!important}.orbVb::before,.orbVCs{background:#ffffff!important}.orbVb>._m::before,.orbVb>._m::after{border-color:#ffffff!important}</style>
<div class="orbPhc">
  <a class="orbPh" href="https://onlineradiobox.com/ba/" title="Listen on Online Radio Box!" target="_blank" rel="noopener"><img decoding="async" src="//ecdn.onlineradiobox.com/img/wl.svg" alt="Listen on Online Radio Box!"></a>
<audio id="orb_player_3341050fbb49e3_p" crossorigin="true" style="width:1px;height:1px;overflow:hidden;position:absolute;"></audio>

  <button class="orbPp" title="Listen live" country="ba" alias="narodnituzla" stream="1" autoplay="autoplay"></button>
  <a class="orbPt" href="https://onlineradiobox.com/ba/narodnituzla/" target="_blank" rel="noopener">
    <img decoding="async" class="orbPti" src="//cdn.onlineradiobox.com/img/l/5/77925.v6.png" alt="Narodni radio Tuzla">
    <span class="orbPtn">Narodni radio Tuzla</span>
  </a>
  <span class="orbPtt" loading="loading" playing="playing" error="playback error" not_supported="this browser can't play it" external="Listen now (Opens in popup player)" geo_blocked="Not available in your country"></span>
  <div class="orbV"><div class="orbVb"><i class="_m"></i></div><div class="orbVC"><div class="orbVCs" style="left: 80%;"></div></div></div>
</div>
<ul class="orbPpl"></ul>

<script>
  var orbp_w = orbp_w || { lang: "en-us" };
  orbp_w.cmd = orbp_w.cmd || [];
  orbp_w.apiUrl = "https://onlineradiobox.com";
  orbp_w.cmd.push(function() {
    orbp_w.init("orb_player_3341050fbb49e3");
  });
  var s, t; s = document.createElement('script'); s.type = 'text/javascript';
s.src = "//ecdn.onlineradiobox.com/js/pwidget2.min.235ca64e.js";
  t = document.getElementsByTagName('script')[0]; t.parentNode.insertBefore(s, t);
</script>
</div>
<!--OnlineRadioBox Player widget-->




<div class="wp-block-query is-layout-flow wp-block-query-is-layout-flow"><ul class="wp-block-post-template is-layout-flow wp-block-post-template-is-layout-flow"><li class="wp-block-post post-11491 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="1024" height="410" src="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Kalesijski Ba &#8211; Slušaj uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png 1024w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-768x308.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self">Radio Kalesijski Ba &#8211; Slušaj uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11493 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-glas-drine tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="313" src="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Glas Drine &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png 600w, https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647-300x157.png 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self">Radio Glas Drine &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11496 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-feral tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="315" src="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Feral Kalesija &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp 600w, https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija-300x158.webp 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self">Radio Feral Kalesija &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11529 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-narodni-radio-tuzla tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="322" src="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Narodni Radio Tuzla &#8211; Slušaj Uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-300x97.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-768x247.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self">Narodni Radio Tuzla &#8211; Slušaj Uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-11589 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-bombonica-kalesija tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="400" src="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Bombonica Kalesija &#8211; Slušaj uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-768x307.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self">Radio Bombonica Kalesija &#8211; Slušaj uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-18820 post type-post status-publish format-standard has-post-thumbnail hentry category-radio category-radio-uzivo tag-kalesijski-radio tag-radio tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self"><img decoding="async" width="1408" height="768" src="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Uhvati naš ritam i zaboravi na visoke temperature!" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png 1408w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-300x164.png 300w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-1024x559.png 1024w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-768x419.png 768w" sizes="(max-width: 1408px) 100vw, 1408px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self">Uhvati naš ritam i zaboravi na visoke temperature!</a></h2></div>
</div>

</li></ul></div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Radio Feral Kalesija &#8211; Slušaj Uživo na internetu</title>
		<link>https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 13 Dec 2025 18:55:53 +0000</pubDate>
				<category><![CDATA[Radio Uživo]]></category>
		<category><![CDATA[Radio Feral]]></category>
		<guid isPermaLink="false">https://kalesijski.ba/?p=11496</guid>

					<description><![CDATA[Slušaj Radio Feral Kalesija uživo &#8211; klikni na play &#8211; Sve Radio Stanice Uživo – Klikni Ovdje –]]></description>
										<content:encoded><![CDATA[
<p class="has-text-align-center wp-block-paragraph">Slušaj Radio Feral Kalesija uživo &#8211; klikni na play &#8211; </p>



<div style="text-align: center; padding: 10px;"><iframe src="https://radiolar.online/stations/radio-feral-ba-radio-feral-kalesija/embed/" width="320px" height="97px" scrolling="no" frameborder="no" loading="lazy"></iframe></div>



<div class="wp-block-query is-layout-flow wp-block-query-is-layout-flow"><ul class="wp-block-post-template is-layout-flow wp-block-post-template-is-layout-flow"><li class="wp-block-post post-11491 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="1024" height="410" src="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Kalesijski Ba &#8211; Slušaj uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png 1024w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-768x308.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self">Radio Kalesijski Ba &#8211; Slušaj uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11493 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-glas-drine tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="313" src="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Glas Drine &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png 600w, https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647-300x157.png 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self">Radio Glas Drine &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11496 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-feral tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="315" src="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Feral Kalesija &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp 600w, https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija-300x158.webp 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self">Radio Feral Kalesija &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11529 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-narodni-radio-tuzla tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="322" src="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Narodni Radio Tuzla &#8211; Slušaj Uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-300x97.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-768x247.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self">Narodni Radio Tuzla &#8211; Slušaj Uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-11589 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-bombonica-kalesija tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="400" src="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Bombonica Kalesija &#8211; Slušaj uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-768x307.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self">Radio Bombonica Kalesija &#8211; Slušaj uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-18820 post type-post status-publish format-standard has-post-thumbnail hentry category-radio category-radio-uzivo tag-kalesijski-radio tag-radio tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self"><img decoding="async" width="1408" height="768" src="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Uhvati naš ritam i zaboravi na visoke temperature!" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png 1408w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-300x164.png 300w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-1024x559.png 1024w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-768x419.png 768w" sizes="(max-width: 1408px) 100vw, 1408px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self">Uhvati naš ritam i zaboravi na visoke temperature!</a></h2></div>
</div>

</li></ul></div>



<p class="has-text-align-center wp-block-paragraph"><strong><a href="https://kalesijski.ba/radio-stanice-uzivo/" target="_blank" rel="noreferrer noopener">Sve Radio Stanice Uživo – Klikni Ovdje –</a></strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-medium"><a href="https://kalesijski.ba/radio-stanice-uzivo/" target="_blank" rel=" noreferrer noopener"><img decoding="async" width="300" height="200" src="https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-300x200.png" alt="" class="wp-image-11512" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-300x200.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-1024x683.png 1024w, https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-768x512.png 768w, https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608.png 1536w" sizes="(max-width: 300px) 100vw, 300px" /></a></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Radio Glas Drine &#8211; Slušaj Uživo na internetu</title>
		<link>https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 13 Dec 2025 18:43:28 +0000</pubDate>
				<category><![CDATA[Radio Uživo]]></category>
		<category><![CDATA[Radio Glas Drine]]></category>
		<guid isPermaLink="false">https://kalesijski.ba/?p=11493</guid>

					<description><![CDATA[Slušaj Radio Glas Drine Sapna uživo &#8211; Klikni na Play &#8211; Sve Radio Stanice Uživo – Klikni Ovdje –]]></description>
										<content:encoded><![CDATA[
<p class="has-text-align-center wp-block-paragraph">Slušaj Radio Glas Drine Sapna uživo &#8211; Klikni na Play &#8211;</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><a href="http://158.69.119.6:8014/stream" target="_blank" rel=" noreferrer noopener"><img decoding="async" width="600" height="600" src="https://kalesijski.ba/wp-content/uploads/2025/12/camera.504.jpg" alt="" class="wp-image-14110" style="width:142px;height:auto" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/camera.504.jpg 600w, https://kalesijski.ba/wp-content/uploads/2025/12/camera.504-300x300.jpg 300w, https://kalesijski.ba/wp-content/uploads/2025/12/camera.504-150x150.jpg 150w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure>
</div>


<div class="wp-block-query is-layout-flow wp-block-query-is-layout-flow"><ul class="wp-block-post-template is-layout-flow wp-block-post-template-is-layout-flow"><li class="wp-block-post post-11491 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="1024" height="410" src="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Kalesijski Ba &#8211; Slušaj uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png 1024w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-768x308.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self">Radio Kalesijski Ba &#8211; Slušaj uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11493 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-glas-drine tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="313" src="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Glas Drine &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png 600w, https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647-300x157.png 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self">Radio Glas Drine &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11496 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-feral tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="315" src="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Feral Kalesija &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp 600w, https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija-300x158.webp 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self">Radio Feral Kalesija &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11529 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-narodni-radio-tuzla tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="322" src="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Narodni Radio Tuzla &#8211; Slušaj Uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-300x97.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-768x247.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self">Narodni Radio Tuzla &#8211; Slušaj Uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-11589 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-bombonica-kalesija tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="400" src="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Bombonica Kalesija &#8211; Slušaj uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-768x307.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self">Radio Bombonica Kalesija &#8211; Slušaj uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-18820 post type-post status-publish format-standard has-post-thumbnail hentry category-radio category-radio-uzivo tag-kalesijski-radio tag-radio tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self"><img decoding="async" width="1408" height="768" src="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Uhvati naš ritam i zaboravi na visoke temperature!" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png 1408w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-300x164.png 300w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-1024x559.png 1024w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-768x419.png 768w" sizes="(max-width: 1408px) 100vw, 1408px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self">Uhvati naš ritam i zaboravi na visoke temperature!</a></h2></div>
</div>

</li></ul></div>



<p class="has-text-align-center wp-block-paragraph"><strong><a href="https://kalesijski.ba/radio-stanice-uzivo/" target="_blank" rel="noreferrer noopener">Sve Radio Stanice Uživo – Klikni Ovdje –</a></strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-medium"><a href="https://kalesijski.ba/radio-stanice-uzivo/" target="_blank" rel=" noreferrer noopener"><img decoding="async" width="300" height="200" src="https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-300x200.png" alt="" class="wp-image-11512" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-300x200.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-1024x683.png 1024w, https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-768x512.png 768w, https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608.png 1536w" sizes="(max-width: 300px) 100vw, 300px" /></a></figure>
</div>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Radio Kalesijski Ba &#8211; Slušaj uživo na internetu</title>
		<link>https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 13 Dec 2025 18:31:46 +0000</pubDate>
				<category><![CDATA[Radio Uživo]]></category>
		<category><![CDATA[Radio Kalesijski ba]]></category>
		<guid isPermaLink="false">https://kalesijski.ba/?p=11491</guid>

					<description><![CDATA[Slušaj Radio Kalesijski Ba Kalesija uživo Radio Kalesijski Ba Sve Radio Stanice Uživo &#8211; Klikni Ovdje &#8211;]]></description>
										<content:encoded><![CDATA[
<p class="has-text-align-center wp-block-paragraph">Slušaj Radio Kalesijski Ba Kalesija uživo</p>



<!--OnlineRadioBox Player widget-->
<div class="orbP" id="orb_player_31d5e53cf077bfac" vlm="0.8">
<style media="screen">.orbP{position:relative;box-sizing:border-box;overflow:hidden;font-weight:normal;border:1px solid transparent;user-select:none;text-align:left}.orbP br,.orbP>br{display:none!important}.orbP p,.orbP>p{margin:0!important;padding:0!important;line-height:normal!important;font-size:inherit!important}.orbPh{display:block;position:absolute;z-index:100;top:50%;margin-top:-12px!important;right:10px;width:21px!important;text-decoration:none!important;cursor:pointer}.orbPh>img{margin:0!important;border:none;height:24px!important;-webkit-filter:drop-shadow(2px 2px 0 rgba(47,99,160,.2));filter:drop-shadow(2px 2px 0 rgba(47,99,160,.2))}.orbPt{text-decoration:none!important}.orbPti{float:left;margin:0 10px 0 0!important;vertical-align:top!important;height:48px!important;width:89px!important;border:none!important;border-radius:2px!important;opacity:1!important}.orbPtn{display:block;margin-right:52px;line-height:24px!important;font-size:17px!important;font-weight:bold!important;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.orbPtt{display:block;margin-right:52px;text-decoration:none!important;line-height:24px!important;font-size:12px!important;opacity:.85;transition:opacity .2s;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.orbPtt:hover{opacity:1}.orbPp,.orbPs{float:left!important;margin:0 10px 0 0!important;padding:0!important;height:48px!important;width:48px!important;line-height:48px!important;border-radius:2px!important;border:none!important;text-align:center!important;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none!important}.orbPp::before,.orbPs::before{display:inline-block;vertical-align:middle;content:"";width:0;height:0;border-style:solid}.orbPp::before{border-width:16px 0 16px 26px}.orbPs::before{border-width:16px}.orbPp:hover,.orbPs:hover{-webkit-transform:scale(1.087);transform:scale(1.087)}.orbPhc{position:relative!important;box-sizing:border-box!important;padding:10px!important;overflow:hidden}.orbPpl{position:relative;overflow:auto;overflow-x:hidden;overflow-y:auto;margin:0!important;padding:0!important;list-style:none!important}.orbPpli{box-sizing:border-box;margin:0!important;padding:0 10px!important;list-style:none!important;background-image:none;float:none!important;height:auto!important}.orbPpli>a,.orbPpli>span{display:block!important;padding:0!important;margin:0!important;height:auto!important;font-weight:normal!important;text-decoration:none!important;line-height:32px!important;font-size:14px!important;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;transition:color .125s;border:none!important;text-align:left!important}.orbPpli>a:hover,.orbPpli>span:hover{background:transparent!important}.orbPpli>a>time,.orbPpli>span>time{display:inline-block;font-size:12px!important;width:3em!important}.orbPpli+li{border-style:solid!important;border-width:1px 0 0!important}.orbV{position:absolute;z-index:1!important;width:24px!important;right:48px!important;top:0!important;bottom:0!important;line-height:1!important;overflow:hidden!important;transition:width .3s}.orbV:hover{width:160px!important}.orbVC{position:absolute!important;height:18px!important;left:24px!important;top:50%!important;margin:-9px 0 0 11px!important}.orbVC::after{display:block;content:"";margin-top:4px;width:0;height:0;border-style:solid;border-width:4px 100px 4px 0;opacity:.33}.orbVCs{position:absolute!important;z-index:2!important;top:0!important;width:18px!important;height:18px!important;border-radius:50%!important;cursor:ew-resize!important;box-shadow:0 6px 8px -2px rgba(0,9,18,0.36)}.orbVb{position:absolute!important;width:24px!important;height:24px!important;top:50%!important;left:0!important;margin-top:-12px;white-space:nowrap!important;cursor:pointer;transition:opacity .3s}.orbVb::before{display:inline-block;content:"";vertical-align:middle;width:7px;height:12px}.orbVb::after{display:inline-block;content:"";vertical-align:middle;border-width:12px 12px 12px 0;border-style:solid;height:0;width:0;margin-left:-6px}.orbV:hover .orbVb{opacity:.33!important;cursor:default}.orbVb>._m{display:block!important;width:7px!important;height:18px!important;position:absolute!important;top:50%;margin-top:-9px!important;right:0;overflow:hidden!important}.orbVb>._m::before{display:block;content:"";position:absolute;right:0;top:50%;width:28px;height:24px;margin-top:-12px;border:1px solid;border-radius:50%}.orbVb>._m::after{display:block;content:"";position:absolute;right:4px;top:50%;width:14px;height:14px;margin-top:-7px;border:1px solid;border-radius:50%}.orbF{padding:0 0 10px 10px!important;border-top:1px solid;display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-flow:row nowrap!important;flex-flow:row nowrap!important}.orbFl{margin:0!important;padding:0!important;list-style:none!important}.orbFli,.orbFh{display:inline-block!important;vertical-align:top!important;line-height:18px!important;white-space:nowrap!important;margin:10px 7px 0 0!important;padding:0 6px 0 0!important;text-indent:0!important;list-style:none!important;font-size:11px!important;text-align:right}.orbFlif{float:left!important;width:27px!important;height:18px!important;margin-right:5px!important}.orbFhi{position:relative!important;display:inline-block!important;vertical-align:baseline!important;width:8px!important;height:9px!important;margin:0 8px 0 5px!important;border-style:solid!important;border-width:2px 1px 0 1px!important;border-radius:5px 5px 0 0!important;opacity:.5}.orbFhi::before,.orbFhi::after{display:block;content:"";position:absolute;bottom:-2px;width:0;height:3px;border-style:solid;border-width:2px;border-radius:3px}.orbFhi::before{left:-4px}.orbFhi::after{right:-4px}.orbPm{margin:0!important;padding:0!important;list-style:none!important}.orbPmi{position:relative;margin:0!important;padding:10px!important;list-style:none!important;border:dotted rgba(204,204,204,0.5);border-width:1px 0 0;font-size:12px!important;overflow:hidden;white-space:nowrap;line-height:1!important;cursor:pointer}.orbPmi::before{display:block;content:"";position:absolute;z-index:1;top:50%;right:10px;margin-top:-8px;width:0;height:0;border-style:solid;border-width:8px 0 8px 13px;opacity:.5;filter:alpha(opacity=50);transition:opacity .2s}.orbPmi:hover::before{opacity:1;filter:alpha(opacity=100)}.orbPmi::after{display:block;content:"";position:absolute;top:0;bottom:0;right:0;width:36px}.orbPmii{display:inline-block;vertical-align:middle;margin-right:10px;width:30px;height:16px;border:none!important;border-radius:2px!important}.orbPmin{display:inline-block;vertical-align:middle}.cmpct .orbPti{height:24px!important;width:44px!important}.cmpct .orbPtn{line-height:12px!important;font-size:12px!important}.cmpct .orbPtt{line-height:12px!important;font-size:10px!important}.cmpct .orbPp,.cmpct .orbPs{height:24px!important;width:24px!important;line-height:24px!important}.cmpct .orbPp::before{border-width:8px 0 8px 13px!important}.cmpct .orbPs::before{border-width:8px!important}.cmpct .orbPpli>a,.cmpct .orbPpli>span{line-height:24px!important;font-size:12px!important}.cmpct .orbPpli>a>time,.cmpct .orbPpli>span>time{font-size:11px!important}</style>
<style media="screen" id="orb_player_31d5e53cf077bfac_settings">.orbP{background-color:#2f63a0!important}.orbP{border-style:solid;border-color:#2f63a0!important;border-radius:5px}.orbPp,.orbPs{background:#7094bf!important}.orbPp::before{border-color:transparent transparent transparent #ffffff!important}.orbPs::before{border-color:#ffffff!important}.orbPtn,.orbPtt,.orbPtt:hover{color:#ffffff!important}.orbPpl{height:185px;background:#ffffff!important}.orbPpli>a,.orbPpli>a:visited,.orbPpli>span,.orbPpli>a:hover>time,.orbPpli.a>a>time,.orbPpli.a>span>time{color:#333333!important}.orbPpli>a:hover,.orbPpli.a>a,.orbPpli.a>span{color:#f07700!important}.orbPpli>a>time,.orbPpli>span>time{color:#aeaeae!important}.orbPpli.a{background:#f3f3f3!important}.orbPpli+li{border-color:#eeeeee!important}.orbV{background-color:#2f63a0!important;box-shadow:0 0 32px 32px #2f63a0!important}.orbVC::after,.orbVb::after{border-color:transparent #ffffff transparent transparent!important}.orbVb::before,.orbVCs{background:#ffffff!important}.orbVb>._m::before,.orbVb>._m::after{border-color:#ffffff!important}</style>
<div class="orbPhc">
  <a class="orbPh" href="https://onlineradiobox.com/ba/" title="Listen on Online Radio Box!" target="_blank" rel="noopener"><img decoding="async" src="//ecdn.onlineradiobox.com/img/wl.svg" alt="Listen on Online Radio Box!"></a>
<audio id="orb_player_31d5e53cf077bfac_p" crossorigin="true" style="width:1px;height:1px;overflow:hidden;position:absolute;"></audio>

  <button class="orbPp" title="Listen live" country="ba" alias="kalesijskiba" stream="1" autoplay="autoplay"></button>
  <a class="orbPt" href="https://onlineradiobox.com/ba/kalesijskiba/" target="_blank" rel="noopener"><img decoding="async" class="orbPti" src="//cdn.onlineradiobox.com/img/logo/0/86990.png" alt="Radio Kalesijski Ba" style="display: block;"><span class="orbPtn" style="display: block;">Radio Kalesijski Ba</span></a>
  <span class="orbPtt" loading="loading" playing="playing" error="playback error" not_supported="this browser can't play it" external="Listen now (Opens in popup player)" geo_blocked="Not available in your country" style="display: block;"></span>
  <div class="orbV"><div class="orbVb"><i class="_m"></i></div><div class="orbVC"><div class="orbVCs" style="left: 80%;"></div></div></div>
</div>
<ul class="orbPpl"></ul>

<script>
  var orbp_w = orbp_w || { lang: "en-us" };
  orbp_w.cmd = orbp_w.cmd || [];
  orbp_w.apiUrl = "https://onlineradiobox.com";
  orbp_w.cmd.push(function() {
    orbp_w.init("orb_player_31d5e53cf077bfac");
  });
  var s, t; s = document.createElement('script'); s.type = 'text/javascript';
s.src = "//ecdn.onlineradiobox.com/js/pwidget2.min.235ca64e.js";
  t = document.getElementsByTagName('script')[0]; t.parentNode.insertBefore(s, t);
</script>
</div>
<!--OnlineRadioBox Player widget-->




<div class="wp-block-query is-layout-flow wp-block-query-is-layout-flow"><ul class="wp-block-post-template is-layout-flow wp-block-post-template-is-layout-flow"><li class="wp-block-post post-11491 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="1024" height="410" src="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Kalesijski Ba &#8211; Slušaj uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977.png 1024w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/07/ChatGPT-Image-Jul-26-2025-04_54_09-PM-e1765652481977-768x308.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-kalesijski-ba-slusaj-uzivo-na-internetu/" target="_self">Radio Kalesijski Ba &#8211; Slušaj uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11493 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-glas-drine tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="313" src="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Glas Drine &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647.png 600w, https://kalesijski.ba/wp-content/uploads/2025/12/7c777a7502e891acc9428da77250c076-e1765656437647-300x157.png 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-glas-drine-slusaj-uzivo-na-internetu/" target="_self">Radio Glas Drine &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11496 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-feral tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self"><img decoding="async" width="600" height="315" src="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Feral Kalesija &#8211; Slušaj Uživo na internetu" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija.webp 600w, https://kalesijski.ba/wp-content/uploads/2025/12/feral-kalesija-300x158.webp 300w" sizes="(max-width: 600px) 100vw, 600px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-feral-kalesija-slusaj-uzivo-na-internetu/" target="_self">Radio Feral Kalesija &#8211; Slušaj Uživo na internetu</a></h2></div>
</div>

</li><li class="wp-block-post post-11529 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-narodni-radio-tuzla tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="322" src="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Narodni Radio Tuzla &#8211; Slušaj Uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-300x97.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/narodni-radio-tuzla-e1765661629452-768x247.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/narodni-radio-tuzla-slusaj-uzivo/" target="_self">Narodni Radio Tuzla &#8211; Slušaj Uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-11589 post type-post status-publish format-standard has-post-thumbnail hentry category-radio-uzivo tag-radio-bombonica-kalesija tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self"><img decoding="async" width="1000" height="400" src="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Radio Bombonica Kalesija &#8211; Slušaj uživo" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454.png 1000w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-300x120.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/radio-bombonica-e1765713062454-768x307.png 768w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/radio-bombonica-kalesija-slusaj-uzivo/" target="_self">Radio Bombonica Kalesija &#8211; Slušaj uživo</a></h2></div>
</div>

</li><li class="wp-block-post post-18820 post type-post status-publish format-standard has-post-thumbnail hentry category-radio category-radio-uzivo tag-kalesijski-radio tag-radio tag-radio-kalesijski-ba tag-radio-uzivo">

<div class="wp-block-columns are-vertically-aligned-center is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:25%"><figure class="wp-block-post-featured-image"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self"><img decoding="async" width="1408" height="768" src="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="Uhvati naš ritam i zaboravi na visoke temperature!" style="object-fit:cover;" srcset="https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774.png 1408w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-300x164.png 300w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-1024x559.png 1024w, https://kalesijski.ba/wp-content/uploads/2026/08/1785584116774-768x419.png 768w" sizes="(max-width: 1408px) 100vw, 1408px" /></a></figure></div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:75%"><h2 class="wp-block-post-title"><a href="https://kalesijski.ba/uhvati-nas-ritam-i-zaboravi-na-visoke-temperature/" target="_self">Uhvati naš ritam i zaboravi na visoke temperature!</a></h2></div>
</div>

</li></ul></div>



<p class="has-text-align-center wp-block-paragraph"><strong><a href="https://kalesijski.ba/radio-stanice-uzivo/" target="_blank" rel="noreferrer noopener">Sve Radio Stanice Uživo &#8211; Klikni Ovdje &#8211;</a></strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-medium"><a href="https://kalesijski.ba/radio-stanice-uzivo/" target="_blank" rel=" noreferrer noopener"><img decoding="async" width="300" height="200" src="https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-300x200.png" alt="" class="wp-image-11512" srcset="https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-300x200.png 300w, https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-1024x683.png 1024w, https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608-768x512.png 768w, https://kalesijski.ba/wp-content/uploads/2025/12/65888430-873e-439f-9a19-364c42357608.png 1536w" sizes="(max-width: 300px) 100vw, 300px" /></a></figure>
</div>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
