{"id":8544,"date":"2025-05-24T14:37:06","date_gmt":"2025-05-24T11:07:06","guid":{"rendered":"https:\/\/minorifa.com\/fa\/?page_id=8544"},"modified":"2026-05-29T19:21:31","modified_gmt":"2026-05-29T15:51:31","slug":"demo","status":"publish","type":"page","link":"https:\/\/minorifa.com\/fa\/demo\/","title":{"rendered":"\u0646\u0645\u0648\u0646\u0647 \u06a9\u0627\u0631\u0647\u0627"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"8544\" class=\"elementor elementor-8544\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7b00de8 e-con-full elementor-hidden-tablet e-flex e-con e-parent\" data-id=\"7b00de8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-83e7ded elementor-widget elementor-widget-spacer\" data-id=\"83e7ded\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-e821d78 e-flex e-con-boxed e-con e-parent\" data-id=\"e821d78\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-a89bb13 e-con-full e-flex e-con e-child\" data-id=\"a89bb13\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-3567df6 e-con-full e-flex e-con e-child\" data-id=\"3567df6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ea713ff elementor-widget elementor-widget-heading\" data-id=\"ea713ff\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">\u0628\u0627 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627 \u0635\u062f\u0627\u062a\u0648 \u0628\u0647 \u0635\u062f\u0627\u06cc \u06af\u0648\u06cc\u0646\u062f\u06af\u0627\u0646 \u062d\u0631\u0641\u0647 \u0627\u06cc \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0646!<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dc35802 elementor-widget elementor-widget-text-editor\" data-id=\"dc35802\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>\u0628\u0627 \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\u060c \u0635\u062f\u0627\u062a\u0648 \u0628\u0647 \u0635\u062f\u0627\u06cc \u06af\u0648\u06cc\u0646\u062f\u06af\u0627\u0646 \u062d\u0631\u0641\u0647\u200c\u0627\u06cc \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0646 \u062a\u0627 \u0628\u062a\u0648\u0646\u06cc\u060c \u062a\u0648\u0644\u06cc\u062f \u0645\u062d\u062a\u0648\u0627 \u062d\u0631\u0641\u0647 \u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0628\u062f\u06cc \u0648 \u062f\u0631\u0622\u0645\u062f \u062f\u0644\u0627\u0631\u06cc \u06cc\u0627 \u0631\u06cc\u0627\u0644\u06cc \u06a9\u0633\u0628 \u06a9\u0646\u06cc!<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7ed6266 e-con-full e-flex e-con e-child\" data-id=\"7ed6266\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-d7a138f e-con-full e-flex e-con e-child\" data-id=\"d7a138f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3e1ec92 elementor-align-justify elementor-tablet-align-justify elementor-mobile-align-justify elementor-widget elementor-widget-button\" data-id=\"3e1ec92\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/minorifa.com\/fa\/voice-changer\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u0634\u0631\u0648\u0639 \u06a9\u0646!<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-6b96430 e-con-full e-flex e-con e-child\" data-id=\"6b96430\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-051f90a elementor-mobile-align-justify elementor-align-justify elementor-tablet-align-justify elementor-widget elementor-widget-button\" data-id=\"051f90a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/minorifa.com\/fa\/td\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u0646\u0645\u0648\u0646\u0647 \u06a9\u0627\u0631 \u0628\u06cc\u0634\u062a\u0631<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-fa15050 e-con-full e-flex e-con e-child\" data-id=\"fa15050\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8a2cd5a elementor-hidden-desktop elementor-hidden-tablet elementor-widget elementor-widget-spacer\" data-id=\"8a2cd5a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3bba1de elementor-skin-carousel elementor-arrows-yes elementor-widget elementor-widget-media-carousel\" data-id=\"3bba1de\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;lazyload&quot;:&quot;yes&quot;,&quot;space_between&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:8,&quot;sizes&quot;:[]},&quot;slides_per_view&quot;:&quot;3&quot;,&quot;slides_per_view_tablet&quot;:&quot;3&quot;,&quot;slides_per_view_mobile&quot;:&quot;1&quot;,&quot;skin&quot;:&quot;carousel&quot;,&quot;effect&quot;:&quot;slide&quot;,&quot;show_arrows&quot;:&quot;yes&quot;,&quot;speed&quot;:500,&quot;space_between_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]},&quot;space_between_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:10,&quot;sizes&quot;:[]}}\" data-widget_type=\"media-carousel.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-swiper\">\n\t\t\t\t\t<div class=\"elementor-main-swiper swiper\" role=\"region\" aria-roledescription=\"carousel\" aria-label=\"\u0627\u0633\u0644\u0627\u06cc\u062f\u0647\u0627\">\n\t\t\t\t<div class=\"swiper-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"\u0634\u062e\u0635\u06cc\u062a \u0645\u0631\u0645\u0648\u0632\" data-background=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/11\/Shakhsiat-Marmooz-1.webp\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-carousel-image-overlay e-overlay-animation-slide-up\">\n\t\t\t\t\u0634\u062e\u0635\u06cc\u062a \u0645\u0631\u0645\u0648\u0632\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"\u0628\u0686\u0647 \u0634\u06cc\u0637\u0648\u0646\" data-background=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/11\/bache-sheytoon-1.webp\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-carousel-image-overlay e-overlay-animation-slide-up\">\n\t\t\t\t\u0628\u0686\u0647 \u0634\u06cc\u0637\u0648\u0646\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide\" role=\"group\" aria-roledescription=\"slide\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-carousel-image swiper-lazy\" role=\"img\" aria-label=\"\u062f\u0648\u0628\u0644\u0648\u0631 \u0645\u0631\u062f\" data-background=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/11\/doblore-mard-1.webp\">\n\n\t\t\t\t\t\t\t<div class=\"swiper-lazy-preloader\"><\/div>\n\t\t\t\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"elementor-carousel-image-overlay e-overlay-animation-slide-up\">\n\t\t\t\t\u062f\u0648\u0628\u0644\u0648\u0631 \u0645\u0631\u062f\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"elementor-swiper-button elementor-swiper-button-prev\" role=\"button\" tabindex=\"0\" aria-label=\"\u0642\u0628\u0644\">\n\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-chevron-right\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M696 533C708 521 713 504 713 487 713 471 708 454 696 446L400 146C388 133 375 125 354 125 338 125 325 129 313 142 300 154 292 171 292 187 292 204 296 221 308 233L563 492 304 771C292 783 288 800 288 817 288 833 296 850 308 863 321 871 338 875 354 875 371 875 388 867 400 854L696 533Z\"><\/path><\/svg>\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"elementor-swiper-button elementor-swiper-button-next\" role=\"button\" tabindex=\"0\" aria-label=\"\u0628\u0639\u062f\u06cc\">\n\t\t\t\t\t\t\t<svg aria-hidden=\"true\" class=\"e-font-icon-svg e-eicon-chevron-left\" viewBox=\"0 0 1000 1000\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M646 125C629 125 613 133 604 142L308 442C296 454 292 471 292 487 292 504 296 521 308 533L604 854C617 867 629 875 646 875 663 875 679 871 692 858 704 846 713 829 713 812 713 796 708 779 692 767L438 487 692 225C700 217 708 204 708 187 708 171 704 154 692 142 675 129 663 125 646 125Z\"><\/path><\/svg>\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-aa71936 elementor-widget elementor-widget-html\" data-id=\"aa71936\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script>\r\n(function() {\r\n    'use strict';\r\n    \r\n    \/\/ =======================\r\n    \/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0648 \u062b\u0648\u0627\u0628\u062a\r\n    \/\/ =======================\r\n    const CONFIG = {\r\n        audioLinks: [\r\n            'https:\/\/dl.minorifa.com\/Voice-Model-demo\/Minorifa-Nemone-Seda-Shakhsiat-Marmooz.mp3',\r\n            'https:\/\/dl.minorifa.com\/Voice-Model-demo\/Minorifa-Nemone-Seda-Bache-Sheytoon.mp3',\r\n            'https:\/\/dl.minorifa.com\/Voice-Model-demo\/Minorifa-Nemone-Seda-Doubler-Mard.mp3'\r\n        ],\r\n        defaultVolume: 0.8,\r\n        preloadStrategy: 'metadata',\r\n        playingClass: 'playing',\r\n        carouselSelector: '.elementor-main-swiper',\r\n        slideSelector: '.swiper-slide:not(.swiper-slide-duplicate)'\r\n    };\r\n    \r\n    \/\/ =======================\r\n    \/\/ \u06a9\u0644\u0627\u0633 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0635\u062f\u0627\r\n    \/\/ =======================\r\n    class AudioManager {\r\n        constructor() {\r\n            this.players = new Map();\r\n            this.states = new Map();\r\n            this.currentIndex = null;\r\n        }\r\n        \r\n        getOrCreatePlayer(index, url) {\r\n            if (!this.players.has(index)) {\r\n                const audio = new Audio(url);\r\n                audio.volume = CONFIG.defaultVolume;\r\n                audio.preload = CONFIG.preloadStrategy;\r\n                \r\n                \/\/ Event listeners\r\n                audio.addEventListener('ended', () => this.onEnded(index));\r\n                audio.addEventListener('error', (e) => this.onError(e, index));\r\n                audio.addEventListener('canplay', () => console.log(`Audio ${index} ready`));\r\n                \r\n                this.players.set(index, audio);\r\n                this.states.set(index, false);\r\n            }\r\n            \r\n            return this.players.get(index);\r\n        }\r\n        \r\n        async play(index, url) {\r\n            const audio = this.getOrCreatePlayer(index, url);\r\n            \r\n            try {\r\n                await audio.play();\r\n                this.states.set(index, true);\r\n                this.currentIndex = index;\r\n                return true;\r\n            } catch (error) {\r\n                console.error(`\u062e\u0637\u0627 \u062f\u0631 \u067e\u062e\u0634 \u0635\u062f\u0627\u06cc \u0627\u0633\u0644\u0627\u06cc\u062f ${index}:`, error);\r\n                this.states.set(index, false);\r\n                return false;\r\n            }\r\n        }\r\n        \r\n        stop(index) {\r\n            const audio = this.players.get(index);\r\n            \r\n            if (audio && !audio.paused) {\r\n                audio.pause();\r\n                audio.currentTime = 0;\r\n            }\r\n            \r\n            this.states.set(index, false);\r\n            \r\n            if (this.currentIndex === index) {\r\n                this.currentIndex = null;\r\n            }\r\n        }\r\n        \r\n        stopAll() {\r\n            this.players.forEach((audio, index) => {\r\n                if (audio && !audio.paused) {\r\n                    audio.pause();\r\n                    audio.currentTime = 0;\r\n                }\r\n                this.states.set(index, false);\r\n            });\r\n            \r\n            this.currentIndex = null;\r\n            \r\n            \/\/ \u062a\u0648\u0642\u0641 \u067e\u0644\u06cc\u0631\u0647\u0627\u06cc \u062e\u0627\u0631\u062c\u06cc (showcase)\r\n            if (window.audioShowcasePlayers) {\r\n                window.audioShowcasePlayers.forEach(player => {\r\n                    if (player.stop) player.stop();\r\n                });\r\n            }\r\n        }\r\n        \r\n        isPlaying(index) {\r\n            return this.states.get(index) || false;\r\n        }\r\n        \r\n        setVolume(volume) {\r\n            const vol = Math.max(0, Math.min(1, volume));\r\n            this.players.forEach(audio => {\r\n                if (audio) audio.volume = vol;\r\n            });\r\n        }\r\n        \r\n        onEnded(index) {\r\n            this.states.set(index, false);\r\n            this.currentIndex = null;\r\n        }\r\n        \r\n        onError(error, index) {\r\n            console.error(`\u062e\u0637\u0627\u06cc \u0635\u062f\u0627\u06cc \u0627\u0633\u0644\u0627\u06cc\u062f ${index}:`, error);\r\n            this.states.set(index, false);\r\n            if (this.currentIndex === index) {\r\n                this.currentIndex = null;\r\n            }\r\n        }\r\n        \r\n        cleanup() {\r\n            this.players.forEach(audio => {\r\n                if (audio) {\r\n                    audio.pause();\r\n                    audio.src = '';\r\n                    audio.load();\r\n                }\r\n            });\r\n            this.players.clear();\r\n            this.states.clear();\r\n            this.currentIndex = null;\r\n        }\r\n        \r\n        getStatus() {\r\n            return {\r\n                totalSlides: CONFIG.audioLinks.length,\r\n                currentPlaying: this.currentIndex,\r\n                playingStates: Object.fromEntries(this.states)\r\n            };\r\n        }\r\n    }\r\n    \r\n    \/\/ =======================\r\n    \/\/ \u06a9\u0644\u0627\u0633 \u0645\u062f\u06cc\u0631\u06cc\u062a UI\r\n    \/\/ =======================\r\n    class UIManager {\r\n        constructor(carousel) {\r\n            this.carousel = carousel;\r\n        }\r\n        \r\n        getSlides() {\r\n            return Array.from(this.carousel.querySelectorAll(CONFIG.slideSelector));\r\n        }\r\n        \r\n        getSlideIndex(slide) {\r\n            return this.getSlides().indexOf(slide);\r\n        }\r\n        \r\n        updatePlayButton(slide, isPlaying) {\r\n            if (!slide) return;\r\n            \r\n            try {\r\n                if (isPlaying) {\r\n                    slide.classList.add(CONFIG.playingClass);\r\n                } else {\r\n                    slide.classList.remove(CONFIG.playingClass);\r\n                }\r\n            } catch (error) {\r\n                console.error('\u062e\u0637\u0627 \u062f\u0631 \u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc \u062f\u06a9\u0645\u0647:', error);\r\n            }\r\n        }\r\n        \r\n        updateAllButtons() {\r\n            this.getSlides().forEach(slide => {\r\n                this.updatePlayButton(slide, false);\r\n            });\r\n        }\r\n    }\r\n    \r\n    \/\/ =======================\r\n    \/\/ \u06a9\u0644\u0627\u0633 \u0627\u0635\u0644\u06cc \u06a9\u0646\u062a\u0631\u0644\u0631\r\n    \/\/ =======================\r\n    class CarouselAudioController {\r\n        constructor() {\r\n            this.audioManager = new AudioManager();\r\n            this.carousel = document.querySelector(CONFIG.carouselSelector);\r\n            \r\n            if (!this.carousel) {\r\n                console.warn('\u0639\u0646\u0635\u0631 \u06a9\u0627\u0631\u0648\u0633\u0644 \u06cc\u0627\u0641\u062a \u0646\u0634\u062f');\r\n                return;\r\n            }\r\n            \r\n            this.uiManager = new UIManager(this.carousel);\r\n            this.init();\r\n        }\r\n        \r\n        init() {\r\n            \/\/ Event listeners\r\n            this.carousel.addEventListener('click', (e) => this.handleClick(e), true);\r\n            window.addEventListener('beforeunload', () => this.cleanup());\r\n            \r\n            \/\/ API \u0639\u0645\u0648\u0645\u06cc\r\n            this.exposeAPI();\r\n            \r\n            console.log('\u2705 Carousel Audio Player \u0622\u0645\u0627\u062f\u0647 \u0627\u0633\u062a');\r\n            console.log(`\ud83d\udcc0 ${CONFIG.audioLinks.length} \u0641\u0627\u06cc\u0644 \u0635\u0648\u062a\u06cc \u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u0634\u062f`);\r\n        }\r\n        \r\n        handleClick(e) {\r\n            const slide = e.target.closest('.swiper-slide');\r\n            if (!slide) return;\r\n            \r\n            \/\/ \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0627\u0632 \u062d\u0631\u06a9\u062a \u06a9\u0627\u0631\u0648\u0633\u0644\r\n            e.preventDefault();\r\n            e.stopPropagation();\r\n            e.stopImmediatePropagation();\r\n            \r\n            const slideIndex = this.uiManager.getSlideIndex(slide);\r\n            \r\n            if (slideIndex === -1 || !CONFIG.audioLinks[slideIndex]) {\r\n                console.warn(`\u0644\u06cc\u0646\u06a9 \u0635\u0648\u062a\u06cc \u0628\u0631\u0627\u06cc \u0627\u0633\u0644\u0627\u06cc\u062f ${slideIndex} \u0648\u062c\u0648\u062f \u0646\u062f\u0627\u0631\u062f`);\r\n                return false;\r\n            }\r\n            \r\n            this.toggleAudio(slideIndex, slide);\r\n            return false;\r\n        }\r\n        \r\n        async toggleAudio(index, slide) {\r\n            const isPlaying = this.audioManager.isPlaying(index);\r\n            \r\n            if (isPlaying) {\r\n                this.stopAudio(index, slide);\r\n            } else {\r\n                await this.playAudio(index, slide);\r\n            }\r\n        }\r\n        \r\n        async playAudio(index, slide) {\r\n            \/\/ \u0627\u0628\u062a\u062f\u0627 \u0647\u0645\u0647 \u0631\u0627 \u0645\u062a\u0648\u0642\u0641 \u06a9\u0646\r\n            this.audioManager.stopAll();\r\n            this.uiManager.updateAllButtons();\r\n            \r\n            \/\/ \u0633\u067e\u0633 \u0635\u062f\u0627\u06cc \u062c\u062f\u06cc\u062f \u0631\u0627 \u067e\u062e\u0634 \u06a9\u0646\r\n            const success = await this.audioManager.play(index, CONFIG.audioLinks[index]);\r\n            \r\n            if (success) {\r\n                this.uiManager.updatePlayButton(slide, true);\r\n            }\r\n        }\r\n        \r\n        stopAudio(index, slide) {\r\n            this.audioManager.stop(index);\r\n            this.uiManager.updatePlayButton(slide, false);\r\n        }\r\n        \r\n        cleanup() {\r\n            this.audioManager.cleanup();\r\n        }\r\n        \r\n        \/\/ =======================\r\n        \/\/ API \u0639\u0645\u0648\u0645\u06cc\r\n        \/\/ =======================\r\n        exposeAPI() {\r\n            window.carouselAudioPlayer = {\r\n                stopAll: () => {\r\n                    this.audioManager.stopAll();\r\n                    this.uiManager.updateAllButtons();\r\n                },\r\n                \r\n                getCurrentPlaying: () => this.audioManager.currentIndex,\r\n                \r\n                setVolume: (volume) => this.audioManager.setVolume(volume),\r\n                \r\n                getAudioState: (index) => this.audioManager.isPlaying(index),\r\n                \r\n                playSlide: async (index) => {\r\n                    const slides = this.uiManager.getSlides();\r\n                    if (slides[index] && CONFIG.audioLinks[index]) {\r\n                        await this.playAudio(index, slides[index]);\r\n                    }\r\n                },\r\n                \r\n                stopSlide: (index) => {\r\n                    const slides = this.uiManager.getSlides();\r\n                    if (slides[index]) {\r\n                        this.stopAudio(index, slides[index]);\r\n                    }\r\n                },\r\n                \r\n                addSlideLink: (index, url) => {\r\n                    if (index >= 0 && url) {\r\n                        CONFIG.audioLinks[index] = url;\r\n                    }\r\n                },\r\n                \r\n                getStatus: () => this.audioManager.getStatus()\r\n            };\r\n        }\r\n    }\r\n    \r\n    \/\/ =======================\r\n    \/\/ \u0627\u062c\u0631\u0627\u06cc \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a\r\n    \/\/ =======================\r\n    if (document.readyState === 'loading') {\r\n        document.addEventListener('DOMContentLoaded', () => {\r\n            new CarouselAudioController();\r\n        });\r\n    } else {\r\n        new CarouselAudioController();\r\n    }\r\n    \r\n})();\r\n\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1b7bbb3 e-con-full e-flex e-con e-parent\" data-id=\"1b7bbb3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-2c33c2f e-flex e-con-boxed e-con e-child\" data-id=\"2c33c2f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-21e3f3d e-con-full e-flex e-con e-child\" data-id=\"21e3f3d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d95334b elementor-widget elementor-widget-spacer\" data-id=\"d95334b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3a7aebf elementor-widget elementor-widget-heading\" data-id=\"3a7aebf\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0622\u0647\u0646\u06af \u062a\u0648 \u0628\u0627 \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u0628\u0633\u0627\u0632<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8174e2d elementor-widget elementor-widget-text-editor\" data-id=\"8174e2d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>\u0628\u0627 \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\u060c \u062f\u0631 \u06a9\u0645\u062a\u0631 5 \u062f\u0642\u06cc\u0642\u0647 \u0645\u0648\u0632\u06cc\u06a9 \u062f\u0644\u062e\u0648\u0627\u0647\u062a \u0631\u0648 \u0628\u0633\u0627\u0632 \u0648 \u062a\u062c\u0631\u0628\u0647\u200c\u0627\u06cc \u0645\u062a\u0641\u0627\u0648\u062a \u0627\u0632 \u062f\u0646\u06cc\u0627\u06cc \u0645\u0648\u0633\u06cc\u0642\u06cc \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634!<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-1a7db21 e-con-full e-flex e-con e-child\" data-id=\"1a7db21\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-efeac5f e-con-full e-flex e-con e-child\" data-id=\"efeac5f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8d18865 elementor-align-justify elementor-tablet-align-justify elementor-mobile-align-justify elementor-widget elementor-widget-button\" data-id=\"8d18865\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/minorifa.com\/fa\/music-ai\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u0634\u0631\u0648\u0639 \u06a9\u0646!<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f02d42a e-con-full e-flex e-con e-child\" data-id=\"f02d42a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c9e440f elementor-mobile-align-justify elementor-align-justify elementor-tablet-align-justify elementor-widget elementor-widget-button\" data-id=\"c9e440f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/minorifa.com\/fa\/md\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u0646\u0645\u0648\u0646\u0647 \u06a9\u0627\u0631 \u0628\u06cc\u0634\u062a\u0631<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b542698 e-flex e-con-boxed e-con e-child\" data-id=\"b542698\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-347e6c7 e-con-full e-flex e-con e-child\" data-id=\"347e6c7\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-a439444 e-con-full e-flex e-con e-child\" data-id=\"a439444\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b4c9fee elementor-widget elementor-widget-html\" data-id=\"b4c9fee\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"audio-showcase-wrapper\">\r\n  <style scoped>\r\n    .audio-showcase-wrapper { \r\n      width: 100%; margin: 0 auto; padding: 16px; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .audio-showcase-wrapper * { \r\n      margin: 0; padding: 0; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .asw-player {\r\n      background: #282828; border-radius: 16px; padding: 20px; width: 100%; \r\n      color: #fff; display: flex; align-items: center; gap: 20px; \r\n      transition: all .3s ease; position: relative; overflow: hidden; \r\n      animation: asw-fadeIn .5s ease-out; cursor: default;\r\n    }\r\n    .asw-thumbnail { \r\n      width: 64px; height: 64px; border-radius: 12px; position: relative; \r\n      overflow: hidden; flex-shrink: 0; cursor: default;\r\n    }\r\n    .asw-thumbnail img { \r\n      width: 100%; height: 100%; object-fit: cover; border-radius: 12px; \r\n      display: block; cursor: default;\r\n    }\r\n    .asw-ai-badge { \r\n      position: absolute; left: 0; bottom: 0; width: 29px; height: 29px; \r\n      background: linear-gradient(135deg, #fe88fc, #00f2ff); color: #000; \r\n      border-radius: 50%; display: flex; align-items: center; justify-content: center; \r\n      font-weight: bold; font-size: 13px; z-index: 3; cursor: default;\r\n    }\r\n    .asw-track-info { \r\n      display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; \r\n      cursor: default;\r\n    }\r\n    .asw-title { \r\n      font-size: 18px; font-weight: 600; color: #fff; white-space: nowrap; \r\n      overflow: hidden; text-overflow: ellipsis; line-height: 1.3; cursor: default;\r\n    }\r\n    .asw-subtitle { \r\n      font-size: 13px; color: rgba(255,255,255,.6); font-weight: 400; \r\n      white-space: nowrap; overflow: hidden; text-overflow: ellipsis; \r\n      margin-top: 10px; cursor: default;\r\n    }\r\n    .asw-play-btn { \r\n      width: 45px; height: 45px; background: #fff; border: none; border-radius: 12px; \r\n      display: flex; align-items: center; justify-content: center; \r\n      cursor: pointer !important; transition: transform .2s, box-shadow .2s; \r\n      box-shadow: 0 4px 12px rgba(0,0,0,.15); flex-shrink: 0; outline: none;\r\n      font-size: 16px; color: #000; position: relative;\r\n    }\r\n    .asw-play-btn:hover { \r\n      transform: scale(1.05); box-shadow: 0 6px 20px rgba(0,0,0,.2);\r\n    }\r\n    .asw-play-btn:active { transform: scale(.98); }\r\n    .asw-play-btn:disabled { opacity: 0.6; cursor: not-allowed !important; }\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644 *\/\r\n.asw-play-btn::before {\r\n  content: \"\";\r\n  width: 16px;\r\n  height: 16px;\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Play.svg') center\/contain no-repeat;\r\n  display: block;\r\n  transition: all 0.2s ease;\r\n}\r\n\r\n\/* \u0622\u06cc\u06a9\u0646 \u067e\u0627\u0632 *\/\r\n.asw-playing .asw-play-btn::before {\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Pause.svg') center\/contain no-repeat !important;\r\n}\r\n\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646 \u0644\u0648\u062f\u06cc\u0646\u06af *\/\r\n    .asw-loading .asw-play-btn::before {\r\n      content: \"\u25ef\";\r\n      animation: asw-spin 1s linear infinite;\r\n    }\r\n    \r\n    .asw-playing { background: #282828; }\r\n    .asw-playing .asw-thumbnail { \r\n      animation: asw-glow 2s ease-in-out infinite alternate;\r\n    }\r\n    \r\n    \/* \u0631\u0641\u0639 \u0645\u0634\u06a9\u0644 cursor *\/\r\n    .elementor-element .audio-showcase-wrapper *,\r\n    .elementor-widget .audio-showcase-wrapper *,\r\n    .wp-block .audio-showcase-wrapper * {\r\n      cursor: default !important;\r\n    }\r\n    .elementor-element .asw-play-btn,\r\n    .elementor-widget .asw-play-btn,\r\n    .wp-block .asw-play-btn {\r\n      cursor: pointer !important;\r\n    }\r\n    \r\n    @keyframes asw-glow { \r\n      from { box-shadow: 0 4px 20px rgba(0,0,0,.3); } \r\n      to { box-shadow: 0 4px 20px rgba(255,255,255,.1); }\r\n    }\r\n    @keyframes asw-fadeIn { \r\n      from { opacity: 0; transform: translateY(10px); } \r\n      to { opacity: 1; transform: translateY(0); }\r\n    }\r\n    @keyframes asw-spin { \r\n      from { transform: rotate(0deg); } \r\n      to { transform: rotate(360deg); }\r\n    }\r\n    \r\n\/* Responsive *\/\r\n@media (max-width: 768px) {\r\n  .asw-player { \r\n    flex-direction: column !important; text-align: center !important; \r\n    gap: 16px !important; padding: 20px !important; \r\n  }\r\n  .asw-thumbnail { \r\n    display: block !important; order: 1 !important; \r\n  }\r\n  .asw-track-info { \r\n    order: 2 !important; \r\n  }\r\n  .asw-title { \r\n    font-size: 16px !important; \r\n    white-space: nowrap !important; overflow: hidden !important; \r\n    text-overflow: ellipsis !important; \r\n  }\r\n  .asw-subtitle { \r\n    font-size: 12px !important;\r\n    white-space: normal !important; \/* \u0627\u06cc\u0646\u062c\u0627 normal \u06a9\u0631\u062f\u0645 *\/\r\n    line-height: 1.4 !important; \/* \u0628\u0631\u0627\u06cc \u0641\u0627\u0635\u0644\u0647 \u062e\u0637 \u0628\u0647\u062a\u0631 *\/\r\n  }\r\n  .asw-play-btn { \r\n    width: 40px !important; height: 40px !important; order: 3 !important; \r\n  }\r\n  .asw-play-btn::before {\r\n    font-size: 14px !important;\r\n  }\r\n}\r\n\r\n\r\n  <\/style>\r\n  \r\n  <div class=\"asw-player\">\r\n    <div class=\"asw-thumbnail\">\r\n      <img decoding=\"async\" src=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/11\/Dokhtar-Irony.webp\" alt=\"Track thumbnail\">\r\n      <span class=\"asw-ai-badge\">AI<\/span>\r\n    <\/div>\r\n    <div class=\"asw-track-info\">\r\n      <div class=\"asw-title\">\u062f\u062e\u062a\u0631 \u0627\u06cc\u0631\u0648\u0646\u06cc<\/div>\r\n      <div class=\"asw-subtitle\">\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627<\/div>\r\n    <\/div>\r\n    <button class=\"asw-play-btn\"><\/button>\r\n    <audio preload=\"metadata\"><\/audio>\r\n  <\/div>\r\n  \r\n  <script>\r\n    (function() {\r\n      'use strict';\r\n      \r\n      \/\/ \u062a\u0648\u0644\u06cc\u062f ID \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f\r\n      const playerId = 'player-' + Math.random().toString(36).substr(2, 9);\r\n      \r\n      \/\/ \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u0646 wrapper \u062c\u0627\u0631\u06cc\r\n      const wrapper = document.currentScript.closest('.audio-showcase-wrapper');\r\n      if (!wrapper) return;\r\n      \r\n      const player = wrapper.querySelector('.asw-player');\r\n      const audio = wrapper.querySelector('audio');\r\n      const playBtn = wrapper.querySelector('.asw-play-btn');\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645 ID\r\n      player.setAttribute('data-player-id', playerId);\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      const AUDIO_CONFIG = {\r\n        src: \"https:\/\/dl.minorifa.com\/demos\/md\/Dokhtar-Ironi.mp3\",\r\n        title: \"\u062f\u062e\u062a\u0631 \u0627\u06cc\u0631\u0648\u0646\u06cc\",\r\n        subtitle: \"\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\"\r\n      };\r\n      \r\n      \/\/ \u0627\u0639\u0645\u0627\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      audio.src = AUDIO_CONFIG.src;\r\n      wrapper.querySelector('.asw-title').textContent = AUDIO_CONFIG.title;\r\n      wrapper.querySelector('.asw-subtitle').textContent = AUDIO_CONFIG.subtitle;\r\n      \r\n      \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u0633\u0627\u06cc\u0631 \u067e\u0644\u06cc\u0631\u0647\u0627 (\u0634\u0627\u0645\u0644 \u06a9\u0627\u0631\u0648\u0633\u0644)\r\n      const pauseOthers = () => {\r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631\u0647\u0627\u06cc showcase\r\n        document.querySelectorAll('.asw-player[data-player-id]').forEach(p => {\r\n          if (p.getAttribute('data-player-id') !== playerId) {\r\n            const otherAudio = p.querySelector('audio');\r\n            if (otherAudio && !otherAudio.paused) {\r\n              otherAudio.pause();\r\n            }\r\n          }\r\n        });\r\n        \r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n        if (window.carouselAudioPlayer) {\r\n          window.carouselAudioPlayer.stopAll();\r\n        }\r\n      };\r\n      \r\n      \/\/ \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a - \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n      const setState = (isPlaying, isLoading = false) => {\r\n        player.classList.remove('asw-playing', 'asw-loading');\r\n        \r\n        if (isLoading) {\r\n          player.classList.add('asw-loading');\r\n          playBtn.disabled = true;\r\n        } else if (isPlaying) {\r\n          player.classList.add('asw-playing');\r\n          playBtn.disabled = false;\r\n        } else {\r\n          playBtn.disabled = false;\r\n        }\r\n      };\r\n      \r\n      \/\/ \u06a9\u0644\u06cc\u06a9 \u067e\u062e\u0634\/\u062a\u0648\u0642\u0641\r\n      playBtn.addEventListener('click', async () => {\r\n        try {\r\n          if (audio.paused) {\r\n            setState(false, true); \/\/ loading\r\n            pauseOthers();\r\n            await audio.play();\r\n            setState(true, false); \/\/ playing\r\n          } else {\r\n            audio.pause();\r\n            setState(false, false); \/\/ stopped\r\n          }\r\n        } catch (error) {\r\n          setState(false, false); \/\/ error\r\n          console.error('\u062e\u0637\u0627 \u062f\u0631 \u067e\u062e\u0634:', error);\r\n        }\r\n      });\r\n      \r\n      \/\/ \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc \u0635\u0648\u062a\r\n      audio.addEventListener('pause', () => setState(false, false));\r\n      audio.addEventListener('ended', () => setState(false, false));\r\n      audio.addEventListener('error', () => setState(false, false));\r\n      \r\n      \/\/ \u0631\u062c\u06cc\u0633\u062a\u0631 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 global\r\n      if (!window.audioShowcasePlayers) {\r\n        window.audioShowcasePlayers = new Set();\r\n      }\r\n      window.audioShowcasePlayers.add({\r\n        id: playerId,\r\n        audio: audio,\r\n        stop: () => {\r\n          if (!audio.paused) {\r\n            audio.pause();\r\n            setState(false, false);\r\n          }\r\n        }\r\n      });\r\n      \r\n    })();\r\n  <\/script>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4ccca56 e-con-full e-flex e-con e-child\" data-id=\"4ccca56\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-34b59ab elementor-widget elementor-widget-html\" data-id=\"34b59ab\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"audio-showcase-wrapper\">\r\n  <style scoped>\r\n    .audio-showcase-wrapper { \r\n      width: 100%; margin: 0 auto; padding: 16px; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .audio-showcase-wrapper * { \r\n      margin: 0; padding: 0; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .asw-player {\r\n      background: #282828; border-radius: 16px; padding: 20px; width: 100%; \r\n      color: #fff; display: flex; align-items: center; gap: 20px; \r\n      transition: all .3s ease; position: relative; overflow: hidden; \r\n      animation: asw-fadeIn .5s ease-out; cursor: default;\r\n    }\r\n    .asw-thumbnail { \r\n      width: 64px; height: 64px; border-radius: 12px; position: relative; \r\n      overflow: hidden; flex-shrink: 0; cursor: default;\r\n    }\r\n    .asw-thumbnail img { \r\n      width: 100%; height: 100%; object-fit: cover; border-radius: 12px; \r\n      display: block; cursor: default;\r\n    }\r\n    .asw-ai-badge { \r\n      position: absolute; left: 0; bottom: 0; width: 29px; height: 29px; \r\n      background: linear-gradient(135deg, #fe88fc, #00f2ff); color: #000; \r\n      border-radius: 50%; display: flex; align-items: center; justify-content: center; \r\n      font-weight: bold; font-size: 13px; z-index: 3; cursor: default;\r\n    }\r\n    .asw-track-info { \r\n      display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; \r\n      cursor: default;\r\n    }\r\n    .asw-title { \r\n      font-size: 18px; font-weight: 600; color: #fff; white-space: nowrap; \r\n      overflow: hidden; text-overflow: ellipsis; line-height: 1.3; cursor: default;\r\n    }\r\n    .asw-subtitle { \r\n      font-size: 13px; color: rgba(255,255,255,.6); font-weight: 400; \r\n      white-space: nowrap; overflow: hidden; text-overflow: ellipsis; \r\n      margin-top: 10px; cursor: default;\r\n    }\r\n    .asw-play-btn { \r\n      width: 45px; height: 45px; background: #fff; border: none; border-radius: 12px; \r\n      display: flex; align-items: center; justify-content: center; \r\n      cursor: pointer !important; transition: transform .2s, box-shadow .2s; \r\n      box-shadow: 0 4px 12px rgba(0,0,0,.15); flex-shrink: 0; outline: none;\r\n      font-size: 16px; color: #000; position: relative;\r\n    }\r\n    .asw-play-btn:hover { \r\n      transform: scale(1.05); box-shadow: 0 6px 20px rgba(0,0,0,.2);\r\n    }\r\n    .asw-play-btn:active { transform: scale(.98); }\r\n    .asw-play-btn:disabled { opacity: 0.6; cursor: not-allowed !important; }\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644 *\/\r\n   .asw-play-btn::before {\r\n  content: \"\";\r\n  width: 16px;\r\n  height: 16px;\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Play.svg') center\/contain no-repeat;\r\n  display: block;\r\n  transition: all 0.2s ease;\r\n}\r\n\r\n\/* \u0622\u06cc\u06a9\u0646 \u067e\u0627\u0632 *\/\r\n.asw-playing .asw-play-btn::before {\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Pause.svg') center\/contain no-repeat !important;\r\n}\r\n\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646 \u0644\u0648\u062f\u06cc\u0646\u06af *\/\r\n    .asw-loading .asw-play-btn::before {\r\n      content: \"\u25ef\";\r\n      animation: asw-spin 1s linear infinite;\r\n    }\r\n    \r\n    .asw-playing { background: #282828; }\r\n    .asw-playing .asw-thumbnail { \r\n      animation: asw-glow 2s ease-in-out infinite alternate;\r\n    }\r\n    \r\n    \/* \u0631\u0641\u0639 \u0645\u0634\u06a9\u0644 cursor *\/\r\n    .elementor-element .audio-showcase-wrapper *,\r\n    .elementor-widget .audio-showcase-wrapper *,\r\n    .wp-block .audio-showcase-wrapper * {\r\n      cursor: default !important;\r\n    }\r\n    .elementor-element .asw-play-btn,\r\n    .elementor-widget .asw-play-btn,\r\n    .wp-block .asw-play-btn {\r\n      cursor: pointer !important;\r\n    }\r\n    \r\n    @keyframes asw-glow { \r\n      from { box-shadow: 0 4px 20px rgba(0,0,0,.3); } \r\n      to { box-shadow: 0 4px 20px rgba(255,255,255,.1); }\r\n    }\r\n    @keyframes asw-fadeIn { \r\n      from { opacity: 0; transform: translateY(10px); } \r\n      to { opacity: 1; transform: translateY(0); }\r\n    }\r\n    @keyframes asw-spin { \r\n      from { transform: rotate(0deg); } \r\n      to { transform: rotate(360deg); }\r\n    }\r\n    \r\n\/* Responsive *\/\r\n@media (max-width: 768px) {\r\n  .asw-player { \r\n    flex-direction: column !important; text-align: center !important; \r\n    gap: 16px !important; padding: 20px !important; \r\n  }\r\n  .asw-thumbnail { \r\n    display: block !important; order: 1 !important; \r\n  }\r\n  .asw-track-info { \r\n    order: 2 !important; \r\n  }\r\n  .asw-title { \r\n    font-size: 16px !important; \r\n    white-space: nowrap !important; overflow: hidden !important; \r\n    text-overflow: ellipsis !important; \r\n  }\r\n  .asw-subtitle { \r\n    font-size: 12px !important;\r\n    white-space: normal !important; \/* \u0627\u06cc\u0646\u062c\u0627 normal \u06a9\u0631\u062f\u0645 *\/\r\n    line-height: 1.4 !important; \/* \u0628\u0631\u0627\u06cc \u0641\u0627\u0635\u0644\u0647 \u062e\u0637 \u0628\u0647\u062a\u0631 *\/\r\n  }\r\n  .asw-play-btn { \r\n    width: 40px !important; height: 40px !important; order: 3 !important; \r\n  }\r\n  .asw-play-btn::before {\r\n    font-size: 14px !important;\r\n  }\r\n}\r\n\r\n  <\/style>\r\n  \r\n  <div class=\"asw-player\">\r\n    <div class=\"asw-thumbnail\">\r\n      <img decoding=\"async\" src=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/11\/Faghat-Bia.webp\" alt=\"Track thumbnail\">\r\n      <span class=\"asw-ai-badge\">AI<\/span>\r\n    <\/div>\r\n    <div class=\"asw-track-info\">\r\n      <div class=\"asw-title\">\u062a\u0648 \u0641\u0642\u0637 \u0628\u06cc\u0627<\/div>\r\n      <div class=\"asw-subtitle\">\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627<\/div>\r\n    <\/div>\r\n    <button class=\"asw-play-btn\"><\/button>\r\n    <audio preload=\"metadata\"><\/audio>\r\n  <\/div>\r\n  \r\n  <script>\r\n    (function() {\r\n      'use strict';\r\n      \r\n      \/\/ \u062a\u0648\u0644\u06cc\u062f ID \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f\r\n      const playerId = 'player-' + Math.random().toString(36).substr(2, 9);\r\n      \r\n      \/\/ \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u0646 wrapper \u062c\u0627\u0631\u06cc\r\n      const wrapper = document.currentScript.closest('.audio-showcase-wrapper');\r\n      if (!wrapper) return;\r\n      \r\n      const player = wrapper.querySelector('.asw-player');\r\n      const audio = wrapper.querySelector('audio');\r\n      const playBtn = wrapper.querySelector('.asw-play-btn');\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645 ID\r\n      player.setAttribute('data-player-id', playerId);\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      const AUDIO_CONFIG = {\r\n        src: \"https:\/\/dl.minorifa.com\/demos\/md\/Minorifa-Bia.mp3\",\r\n        title: \"\u062a\u0648 \u0641\u0642\u0637 \u0628\u06cc\u0627\",\r\n        subtitle: \"\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\"\r\n      };\r\n      \r\n      \/\/ \u0627\u0639\u0645\u0627\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      audio.src = AUDIO_CONFIG.src;\r\n      wrapper.querySelector('.asw-title').textContent = AUDIO_CONFIG.title;\r\n      wrapper.querySelector('.asw-subtitle').textContent = AUDIO_CONFIG.subtitle;\r\n      \r\n      \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u0633\u0627\u06cc\u0631 \u067e\u0644\u06cc\u0631\u0647\u0627 (\u0634\u0627\u0645\u0644 \u06a9\u0627\u0631\u0648\u0633\u0644)\r\n      const pauseOthers = () => {\r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631\u0647\u0627\u06cc showcase\r\n        document.querySelectorAll('.asw-player[data-player-id]').forEach(p => {\r\n          if (p.getAttribute('data-player-id') !== playerId) {\r\n            const otherAudio = p.querySelector('audio');\r\n            if (otherAudio && !otherAudio.paused) {\r\n              otherAudio.pause();\r\n            }\r\n          }\r\n        });\r\n        \r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n        if (window.carouselAudioPlayer) {\r\n          window.carouselAudioPlayer.stopAll();\r\n        }\r\n      };\r\n      \r\n      \/\/ \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a - \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n      const setState = (isPlaying, isLoading = false) => {\r\n        player.classList.remove('asw-playing', 'asw-loading');\r\n        \r\n        if (isLoading) {\r\n          player.classList.add('asw-loading');\r\n          playBtn.disabled = true;\r\n        } else if (isPlaying) {\r\n          player.classList.add('asw-playing');\r\n          playBtn.disabled = false;\r\n        } else {\r\n          playBtn.disabled = false;\r\n        }\r\n      };\r\n      \r\n      \/\/ \u06a9\u0644\u06cc\u06a9 \u067e\u062e\u0634\/\u062a\u0648\u0642\u0641\r\n      playBtn.addEventListener('click', async () => {\r\n        try {\r\n          if (audio.paused) {\r\n            setState(false, true); \/\/ loading\r\n            pauseOthers();\r\n            await audio.play();\r\n            setState(true, false); \/\/ playing\r\n          } else {\r\n            audio.pause();\r\n            setState(false, false); \/\/ stopped\r\n          }\r\n        } catch (error) {\r\n          setState(false, false); \/\/ error\r\n          console.error('\u062e\u0637\u0627 \u062f\u0631 \u067e\u062e\u0634:', error);\r\n        }\r\n      });\r\n      \r\n      \/\/ \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc \u0635\u0648\u062a\r\n      audio.addEventListener('pause', () => setState(false, false));\r\n      audio.addEventListener('ended', () => setState(false, false));\r\n      audio.addEventListener('error', () => setState(false, false));\r\n      \r\n      \/\/ \u0631\u062c\u06cc\u0633\u062a\u0631 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 global\r\n      if (!window.audioShowcasePlayers) {\r\n        window.audioShowcasePlayers = new Set();\r\n      }\r\n      window.audioShowcasePlayers.add({\r\n        id: playerId,\r\n        audio: audio,\r\n        stop: () => {\r\n          if (!audio.paused) {\r\n            audio.pause();\r\n            setState(false, false);\r\n          }\r\n        }\r\n      });\r\n      \r\n    })();\r\n  <\/script>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d4b7919 e-con-full e-flex e-con e-child\" data-id=\"d4b7919\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-2245f94 e-con-full e-flex e-con e-child\" data-id=\"2245f94\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1c0e9ea elementor-widget elementor-widget-html\" data-id=\"1c0e9ea\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"audio-showcase-wrapper\">\r\n  <style scoped>\r\n    .audio-showcase-wrapper { \r\n      width: 100%; margin: 0 auto; padding: 16px; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .audio-showcase-wrapper * { \r\n      margin: 0; padding: 0; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .asw-player {\r\n      background: #282828; border-radius: 16px; padding: 20px; width: 100%; \r\n      color: #fff; display: flex; align-items: center; gap: 20px; \r\n      transition: all .3s ease; position: relative; overflow: hidden; \r\n      animation: asw-fadeIn .5s ease-out; cursor: default;\r\n    }\r\n    .asw-thumbnail { \r\n      width: 64px; height: 64px; border-radius: 12px; position: relative; \r\n      overflow: hidden; flex-shrink: 0; cursor: default;\r\n    }\r\n    .asw-thumbnail img { \r\n      width: 100%; height: 100%; object-fit: cover; border-radius: 12px; \r\n      display: block; cursor: default;\r\n    }\r\n    .asw-ai-badge { \r\n      position: absolute; left: 0; bottom: 0; width: 29px; height: 29px; \r\n      background: linear-gradient(135deg, #fe88fc, #00f2ff); color: #000; \r\n      border-radius: 50%; display: flex; align-items: center; justify-content: center; \r\n      font-weight: bold; font-size: 13px; z-index: 3; cursor: default;\r\n    }\r\n    .asw-track-info { \r\n      display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; \r\n      cursor: default;\r\n    }\r\n    .asw-title { \r\n      font-size: 18px; font-weight: 600; color: #fff; white-space: nowrap; \r\n      overflow: hidden; text-overflow: ellipsis; line-height: 1.3; cursor: default;\r\n    }\r\n    .asw-subtitle { \r\n      font-size: 13px; color: rgba(255,255,255,.6); font-weight: 400; \r\n      white-space: nowrap; overflow: hidden; text-overflow: ellipsis; \r\n      margin-top: 10px; cursor: default;\r\n    }\r\n    .asw-play-btn { \r\n      width: 45px; height: 45px; background: #fff; border: none; border-radius: 12px; \r\n      display: flex; align-items: center; justify-content: center; \r\n      cursor: pointer !important; transition: transform .2s, box-shadow .2s; \r\n      box-shadow: 0 4px 12px rgba(0,0,0,.15); flex-shrink: 0; outline: none;\r\n      font-size: 16px; color: #000; position: relative;\r\n    }\r\n    .asw-play-btn:hover { \r\n      transform: scale(1.05); box-shadow: 0 6px 20px rgba(0,0,0,.2);\r\n    }\r\n    .asw-play-btn:active { transform: scale(.98); }\r\n    .asw-play-btn:disabled { opacity: 0.6; cursor: not-allowed !important; }\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644 *\/\r\n    .asw-play-btn::before {\r\n  content: \"\";\r\n  width: 16px;\r\n  height: 16px;\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Play.svg') center\/contain no-repeat;\r\n  display: block;\r\n  transition: all 0.2s ease;\r\n}\r\n\r\n\/* \u0622\u06cc\u06a9\u0646 \u067e\u0627\u0632 *\/\r\n.asw-playing .asw-play-btn::before {\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Pause.svg') center\/contain no-repeat !important;\r\n}\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646 \u0644\u0648\u062f\u06cc\u0646\u06af *\/\r\n    .asw-loading .asw-play-btn::before {\r\n      content: \"\u25ef\";\r\n      animation: asw-spin 1s linear infinite;\r\n    }\r\n    \r\n    .asw-playing { background: #282828; }\r\n    .asw-playing .asw-thumbnail { \r\n      animation: asw-glow 2s ease-in-out infinite alternate;\r\n    }\r\n    \r\n    \/* \u0631\u0641\u0639 \u0645\u0634\u06a9\u0644 cursor *\/\r\n    .elementor-element .audio-showcase-wrapper *,\r\n    .elementor-widget .audio-showcase-wrapper *,\r\n    .wp-block .audio-showcase-wrapper * {\r\n      cursor: default !important;\r\n    }\r\n    .elementor-element .asw-play-btn,\r\n    .elementor-widget .asw-play-btn,\r\n    .wp-block .asw-play-btn {\r\n      cursor: pointer !important;\r\n    }\r\n    \r\n    @keyframes asw-glow { \r\n      from { box-shadow: 0 4px 20px rgba(0,0,0,.3); } \r\n      to { box-shadow: 0 4px 20px rgba(255,255,255,.1); }\r\n    }\r\n    @keyframes asw-fadeIn { \r\n      from { opacity: 0; transform: translateY(10px); } \r\n      to { opacity: 1; transform: translateY(0); }\r\n    }\r\n    @keyframes asw-spin { \r\n      from { transform: rotate(0deg); } \r\n      to { transform: rotate(360deg); }\r\n    }\r\n    \r\n    \/* Responsive *\/\r\n@media (max-width: 768px) {\r\n  .asw-player { \r\n    flex-direction: column !important; text-align: center !important; \r\n    gap: 16px !important; padding: 20px !important; \r\n  }\r\n  .asw-thumbnail { \r\n    display: block !important; order: 1 !important; \r\n  }\r\n  .asw-track-info { \r\n    order: 2 !important; \r\n  }\r\n  .asw-title { \r\n    font-size: 16px !important; \r\n    white-space: nowrap !important; overflow: hidden !important; \r\n    text-overflow: ellipsis !important; \r\n  }\r\n  .asw-subtitle { \r\n    font-size: 12px !important;\r\n    white-space: normal !important; \/* \u0627\u06cc\u0646\u062c\u0627 normal \u06a9\u0631\u062f\u0645 *\/\r\n    line-height: 1.4 !important; \/* \u0628\u0631\u0627\u06cc \u0641\u0627\u0635\u0644\u0647 \u062e\u0637 \u0628\u0647\u062a\u0631 *\/\r\n  }\r\n  .asw-play-btn { \r\n    width: 40px !important; height: 40px !important; order: 3 !important; \r\n  }\r\n  .asw-play-btn::before {\r\n    font-size: 14px !important;\r\n  }\r\n}\r\n\r\n  <\/style>\r\n  \r\n  <div class=\"asw-player\">\r\n    <div class=\"asw-thumbnail\">\r\n      <img decoding=\"async\" src=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/11\/sokoote-sard.webp\" alt=\"Track thumbnail\">\r\n      <span class=\"asw-ai-badge\">AI<\/span>\r\n    <\/div>\r\n    <div class=\"asw-track-info\">\r\n      <div class=\"asw-title\">\u0633\u06a9\u0648\u062a \u0633\u0631\u062f<\/div>\r\n      <div class=\"asw-subtitle\">\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627<\/div>\r\n    <\/div>\r\n    <button class=\"asw-play-btn\"><\/button>\r\n    <audio preload=\"metadata\"><\/audio>\r\n  <\/div>\r\n  \r\n  <script>\r\n    (function() {\r\n      'use strict';\r\n      \r\n      \/\/ \u062a\u0648\u0644\u06cc\u062f ID \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f\r\n      const playerId = 'player-' + Math.random().toString(36).substr(2, 9);\r\n      \r\n      \/\/ \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u0646 wrapper \u062c\u0627\u0631\u06cc\r\n      const wrapper = document.currentScript.closest('.audio-showcase-wrapper');\r\n      if (!wrapper) return;\r\n      \r\n      const player = wrapper.querySelector('.asw-player');\r\n      const audio = wrapper.querySelector('audio');\r\n      const playBtn = wrapper.querySelector('.asw-play-btn');\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645 ID\r\n      player.setAttribute('data-player-id', playerId);\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      const AUDIO_CONFIG = {\r\n        src: \"https:\/\/dl.minorifa.com\/demos\/md\/Minorifa-Sokoot-Sard.mp3\",\r\n        title: \"\u0633\u06a9\u0648\u062a \u0633\u0631\u062f\",\r\n        subtitle: \"\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\"\r\n      };\r\n      \r\n      \/\/ \u0627\u0639\u0645\u0627\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      audio.src = AUDIO_CONFIG.src;\r\n      wrapper.querySelector('.asw-title').textContent = AUDIO_CONFIG.title;\r\n      wrapper.querySelector('.asw-subtitle').textContent = AUDIO_CONFIG.subtitle;\r\n      \r\n      \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u0633\u0627\u06cc\u0631 \u067e\u0644\u06cc\u0631\u0647\u0627 (\u0634\u0627\u0645\u0644 \u06a9\u0627\u0631\u0648\u0633\u0644)\r\n      const pauseOthers = () => {\r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631\u0647\u0627\u06cc showcase\r\n        document.querySelectorAll('.asw-player[data-player-id]').forEach(p => {\r\n          if (p.getAttribute('data-player-id') !== playerId) {\r\n            const otherAudio = p.querySelector('audio');\r\n            if (otherAudio && !otherAudio.paused) {\r\n              otherAudio.pause();\r\n            }\r\n          }\r\n        });\r\n        \r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n        if (window.carouselAudioPlayer) {\r\n          window.carouselAudioPlayer.stopAll();\r\n        }\r\n      };\r\n      \r\n      \/\/ \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a - \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n      const setState = (isPlaying, isLoading = false) => {\r\n        player.classList.remove('asw-playing', 'asw-loading');\r\n        \r\n        if (isLoading) {\r\n          player.classList.add('asw-loading');\r\n          playBtn.disabled = true;\r\n        } else if (isPlaying) {\r\n          player.classList.add('asw-playing');\r\n          playBtn.disabled = false;\r\n        } else {\r\n          playBtn.disabled = false;\r\n        }\r\n      };\r\n      \r\n      \/\/ \u06a9\u0644\u06cc\u06a9 \u067e\u062e\u0634\/\u062a\u0648\u0642\u0641\r\n      playBtn.addEventListener('click', async () => {\r\n        try {\r\n          if (audio.paused) {\r\n            setState(false, true); \/\/ loading\r\n            pauseOthers();\r\n            await audio.play();\r\n            setState(true, false); \/\/ playing\r\n          } else {\r\n            audio.pause();\r\n            setState(false, false); \/\/ stopped\r\n          }\r\n        } catch (error) {\r\n          setState(false, false); \/\/ error\r\n          console.error('\u062e\u0637\u0627 \u062f\u0631 \u067e\u062e\u0634:', error);\r\n        }\r\n      });\r\n      \r\n      \/\/ \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc \u0635\u0648\u062a\r\n      audio.addEventListener('pause', () => setState(false, false));\r\n      audio.addEventListener('ended', () => setState(false, false));\r\n      audio.addEventListener('error', () => setState(false, false));\r\n      \r\n      \/\/ \u0631\u062c\u06cc\u0633\u062a\u0631 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 global\r\n      if (!window.audioShowcasePlayers) {\r\n        window.audioShowcasePlayers = new Set();\r\n      }\r\n      window.audioShowcasePlayers.add({\r\n        id: playerId,\r\n        audio: audio,\r\n        stop: () => {\r\n          if (!audio.paused) {\r\n            audio.pause();\r\n            setState(false, false);\r\n          }\r\n        }\r\n      });\r\n      \r\n    })();\r\n  <\/script>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c987fda e-con-full e-flex e-con e-child\" data-id=\"c987fda\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-aa7e95a elementor-widget elementor-widget-html\" data-id=\"aa7e95a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"audio-showcase-wrapper\">\r\n  <style scoped>\r\n    .audio-showcase-wrapper { \r\n      width: 100%; margin: 0 auto; padding: 16px; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .audio-showcase-wrapper * { \r\n      margin: 0; padding: 0; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .asw-player {\r\n      background: #282828; border-radius: 16px; padding: 20px; width: 100%; \r\n      color: #fff; display: flex; align-items: center; gap: 20px; \r\n      transition: all .3s ease; position: relative; overflow: hidden; \r\n      animation: asw-fadeIn .5s ease-out; cursor: default;\r\n    }\r\n    .asw-thumbnail { \r\n      width: 64px; height: 64px; border-radius: 12px; position: relative; \r\n      overflow: hidden; flex-shrink: 0; cursor: default;\r\n    }\r\n    .asw-thumbnail img { \r\n      width: 100%; height: 100%; object-fit: cover; border-radius: 12px; \r\n      display: block; cursor: default;\r\n    }\r\n    .asw-ai-badge { \r\n      position: absolute; left: 0; bottom: 0; width: 29px; height: 29px; \r\n      background: linear-gradient(135deg, #fe88fc, #00f2ff); color: #000; \r\n      border-radius: 50%; display: flex; align-items: center; justify-content: center; \r\n      font-weight: bold; font-size: 13px; z-index: 3; cursor: default;\r\n    }\r\n    .asw-track-info { \r\n      display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; \r\n      cursor: default;\r\n    }\r\n    .asw-title { \r\n      font-size: 18px; font-weight: 600; color: #fff; white-space: nowrap; \r\n      overflow: hidden; text-overflow: ellipsis; line-height: 1.3; cursor: default;\r\n    }\r\n    .asw-subtitle { \r\n      font-size: 13px; color: rgba(255,255,255,.6); font-weight: 400; \r\n      white-space: nowrap; overflow: hidden; text-overflow: ellipsis; \r\n      margin-top: 10px; cursor: default;\r\n    }\r\n    .asw-play-btn { \r\n      width: 45px; height: 45px; background: #fff; border: none; border-radius: 12px; \r\n      display: flex; align-items: center; justify-content: center; \r\n      cursor: pointer !important; transition: transform .2s, box-shadow .2s; \r\n      box-shadow: 0 4px 12px rgba(0,0,0,.15); flex-shrink: 0; outline: none;\r\n      font-size: 16px; color: #000; position: relative;\r\n    }\r\n    .asw-play-btn:hover { \r\n      transform: scale(1.05); box-shadow: 0 6px 20px rgba(0,0,0,.2);\r\n    }\r\n    .asw-play-btn:active { transform: scale(.98); }\r\n    .asw-play-btn:disabled { opacity: 0.6; cursor: not-allowed !important; }\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644 *\/\r\n.asw-play-btn::before {\r\n  content: \"\";\r\n  width: 16px;\r\n  height: 16px;\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Play.svg') center\/contain no-repeat;\r\n  display: block;\r\n  transition: all 0.2s ease;\r\n}\r\n\r\n\/* \u0622\u06cc\u06a9\u0646 \u067e\u0627\u0632 *\/\r\n.asw-playing .asw-play-btn::before {\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Pause.svg') center\/contain no-repeat !important;\r\n}\r\n\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646 \u0644\u0648\u062f\u06cc\u0646\u06af *\/\r\n    .asw-loading .asw-play-btn::before {\r\n      content: \"\u25ef\";\r\n      animation: asw-spin 1s linear infinite;\r\n    }\r\n    \r\n    .asw-playing { background: #282828; }\r\n    .asw-playing .asw-thumbnail { \r\n      animation: asw-glow 2s ease-in-out infinite alternate;\r\n    }\r\n    \r\n    \/* \u0631\u0641\u0639 \u0645\u0634\u06a9\u0644 cursor *\/\r\n    .elementor-element .audio-showcase-wrapper *,\r\n    .elementor-widget .audio-showcase-wrapper *,\r\n    .wp-block .audio-showcase-wrapper * {\r\n      cursor: default !important;\r\n    }\r\n    .elementor-element .asw-play-btn,\r\n    .elementor-widget .asw-play-btn,\r\n    .wp-block .asw-play-btn {\r\n      cursor: pointer !important;\r\n    }\r\n    \r\n    @keyframes asw-glow { \r\n      from { box-shadow: 0 4px 20px rgba(0,0,0,.3); } \r\n      to { box-shadow: 0 4px 20px rgba(255,255,255,.1); }\r\n    }\r\n    @keyframes asw-fadeIn { \r\n      from { opacity: 0; transform: translateY(10px); } \r\n      to { opacity: 1; transform: translateY(0); }\r\n    }\r\n    @keyframes asw-spin { \r\n      from { transform: rotate(0deg); } \r\n      to { transform: rotate(360deg); }\r\n    }\r\n    \r\n\/* Responsive *\/\r\n@media (max-width: 768px) {\r\n  .asw-player { \r\n    flex-direction: column !important; text-align: center !important; \r\n    gap: 16px !important; padding: 20px !important; \r\n  }\r\n  .asw-thumbnail { \r\n    display: block !important; order: 1 !important; \r\n  }\r\n  .asw-track-info { \r\n    order: 2 !important; \r\n  }\r\n  .asw-title { \r\n    font-size: 16px !important; \r\n    white-space: nowrap !important; overflow: hidden !important; \r\n    text-overflow: ellipsis !important; \r\n  }\r\n  .asw-subtitle { \r\n    font-size: 12px !important;\r\n    white-space: normal !important; \/* \u0627\u06cc\u0646\u062c\u0627 normal \u06a9\u0631\u062f\u0645 *\/\r\n    line-height: 1.4 !important; \/* \u0628\u0631\u0627\u06cc \u0641\u0627\u0635\u0644\u0647 \u062e\u0637 \u0628\u0647\u062a\u0631 *\/\r\n  }\r\n  .asw-play-btn { \r\n    width: 40px !important; height: 40px !important; order: 3 !important; \r\n  }\r\n  .asw-play-btn::before {\r\n    font-size: 14px !important;\r\n  }\r\n}\r\n\r\n  <\/style>\r\n  \r\n  <div class=\"asw-player\">\r\n    <div class=\"asw-thumbnail\">\r\n      <img decoding=\"async\" src=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/11\/shabe-siah.webp\" alt=\"Track thumbnail\">\r\n      <span class=\"asw-ai-badge\">AI<\/span>\r\n    <\/div>\r\n    <div class=\"asw-track-info\">\r\n      <div class=\"asw-title\">\u0634\u0628 \u0633\u06cc\u0627\u0647<\/div>\r\n      <div class=\"asw-subtitle\">\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627<\/div>\r\n    <\/div>\r\n    <button class=\"asw-play-btn\"><\/button>\r\n    <audio preload=\"metadata\"><\/audio>\r\n  <\/div>\r\n  \r\n  <script>\r\n    (function() {\r\n      'use strict';\r\n      \r\n      \/\/ \u062a\u0648\u0644\u06cc\u062f ID \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f\r\n      const playerId = 'player-' + Math.random().toString(36).substr(2, 9);\r\n      \r\n      \/\/ \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u0646 wrapper \u062c\u0627\u0631\u06cc\r\n      const wrapper = document.currentScript.closest('.audio-showcase-wrapper');\r\n      if (!wrapper) return;\r\n      \r\n      const player = wrapper.querySelector('.asw-player');\r\n      const audio = wrapper.querySelector('audio');\r\n      const playBtn = wrapper.querySelector('.asw-play-btn');\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645 ID\r\n      player.setAttribute('data-player-id', playerId);\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      const AUDIO_CONFIG = {\r\n        src: \"https:\/\/dl.minorifa.com\/demos\/md\/Minorifa-Shabe-Siah.mp3\",\r\n        title: \"\u0634\u0628 \u0633\u06cc\u0627\u0647\",\r\n        subtitle: \"\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\"\r\n      };\r\n      \r\n      \/\/ \u0627\u0639\u0645\u0627\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      audio.src = AUDIO_CONFIG.src;\r\n      wrapper.querySelector('.asw-title').textContent = AUDIO_CONFIG.title;\r\n      wrapper.querySelector('.asw-subtitle').textContent = AUDIO_CONFIG.subtitle;\r\n      \r\n      \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u0633\u0627\u06cc\u0631 \u067e\u0644\u06cc\u0631\u0647\u0627 (\u0634\u0627\u0645\u0644 \u06a9\u0627\u0631\u0648\u0633\u0644)\r\n      const pauseOthers = () => {\r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631\u0647\u0627\u06cc showcase\r\n        document.querySelectorAll('.asw-player[data-player-id]').forEach(p => {\r\n          if (p.getAttribute('data-player-id') !== playerId) {\r\n            const otherAudio = p.querySelector('audio');\r\n            if (otherAudio && !otherAudio.paused) {\r\n              otherAudio.pause();\r\n            }\r\n          }\r\n        });\r\n        \r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n        if (window.carouselAudioPlayer) {\r\n          window.carouselAudioPlayer.stopAll();\r\n        }\r\n      };\r\n      \r\n      \/\/ \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a - \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n      const setState = (isPlaying, isLoading = false) => {\r\n        player.classList.remove('asw-playing', 'asw-loading');\r\n        \r\n        if (isLoading) {\r\n          player.classList.add('asw-loading');\r\n          playBtn.disabled = true;\r\n        } else if (isPlaying) {\r\n          player.classList.add('asw-playing');\r\n          playBtn.disabled = false;\r\n        } else {\r\n          playBtn.disabled = false;\r\n        }\r\n      };\r\n      \r\n      \/\/ \u06a9\u0644\u06cc\u06a9 \u067e\u062e\u0634\/\u062a\u0648\u0642\u0641\r\n      playBtn.addEventListener('click', async () => {\r\n        try {\r\n          if (audio.paused) {\r\n            setState(false, true); \/\/ loading\r\n            pauseOthers();\r\n            await audio.play();\r\n            setState(true, false); \/\/ playing\r\n          } else {\r\n            audio.pause();\r\n            setState(false, false); \/\/ stopped\r\n          }\r\n        } catch (error) {\r\n          setState(false, false); \/\/ error\r\n          console.error('\u062e\u0637\u0627 \u062f\u0631 \u067e\u062e\u0634:', error);\r\n        }\r\n      });\r\n      \r\n      \/\/ \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc \u0635\u0648\u062a\r\n      audio.addEventListener('pause', () => setState(false, false));\r\n      audio.addEventListener('ended', () => setState(false, false));\r\n      audio.addEventListener('error', () => setState(false, false));\r\n      \r\n      \/\/ \u0631\u062c\u06cc\u0633\u062a\u0631 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 global\r\n      if (!window.audioShowcasePlayers) {\r\n        window.audioShowcasePlayers = new Set();\r\n      }\r\n      window.audioShowcasePlayers.add({\r\n        id: playerId,\r\n        audio: audio,\r\n        stop: () => {\r\n          if (!audio.paused) {\r\n            audio.pause();\r\n            setState(false, false);\r\n          }\r\n        }\r\n      });\r\n      \r\n    })();\r\n  <\/script>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-a82d797 e-con-full e-flex e-con e-child\" data-id=\"a82d797\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-27fea2a e-con-full e-flex e-con e-child\" data-id=\"27fea2a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0b15a1c elementor-widget elementor-widget-html\" data-id=\"0b15a1c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"audio-showcase-wrapper\">\r\n  <style scoped>\r\n    .audio-showcase-wrapper { \r\n      width: 100%; margin: 0 auto; padding: 16px; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .audio-showcase-wrapper * { \r\n      margin: 0; padding: 0; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .asw-player {\r\n      background: #282828; border-radius: 16px; padding: 20px; width: 100%; \r\n      color: #fff; display: flex; align-items: center; gap: 20px; \r\n      transition: all .3s ease; position: relative; overflow: hidden; \r\n      animation: asw-fadeIn .5s ease-out; cursor: default;\r\n    }\r\n    .asw-thumbnail { \r\n      width: 64px; height: 64px; border-radius: 12px; position: relative; \r\n      overflow: hidden; flex-shrink: 0; cursor: default;\r\n    }\r\n    .asw-thumbnail img { \r\n      width: 100%; height: 100%; object-fit: cover; border-radius: 12px; \r\n      display: block; cursor: default;\r\n    }\r\n    .asw-ai-badge { \r\n      position: absolute; left: 0; bottom: 0; width: 29px; height: 29px; \r\n      background: linear-gradient(135deg, #fe88fc, #00f2ff); color: #000; \r\n      border-radius: 50%; display: flex; align-items: center; justify-content: center; \r\n      font-weight: bold; font-size: 13px; z-index: 3; cursor: default;\r\n    }\r\n    .asw-track-info { \r\n      display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; \r\n      cursor: default;\r\n    }\r\n    .asw-title { \r\n      font-size: 18px; font-weight: 600; color: #fff; white-space: nowrap; \r\n      overflow: hidden; text-overflow: ellipsis; line-height: 1.3; cursor: default;\r\n    }\r\n    .asw-subtitle { \r\n      font-size: 13px; color: rgba(255,255,255,.6); font-weight: 400; \r\n      white-space: nowrap; overflow: hidden; text-overflow: ellipsis; \r\n      margin-top: 10px; cursor: default;\r\n    }\r\n    .asw-play-btn { \r\n      width: 45px; height: 45px; background: #fff; border: none; border-radius: 12px; \r\n      display: flex; align-items: center; justify-content: center; \r\n      cursor: pointer !important; transition: transform .2s, box-shadow .2s; \r\n      box-shadow: 0 4px 12px rgba(0,0,0,.15); flex-shrink: 0; outline: none;\r\n      font-size: 16px; color: #000; position: relative;\r\n    }\r\n    .asw-play-btn:hover { \r\n      transform: scale(1.05); box-shadow: 0 6px 20px rgba(0,0,0,.2);\r\n    }\r\n    .asw-play-btn:active { transform: scale(.98); }\r\n    .asw-play-btn:disabled { opacity: 0.6; cursor: not-allowed !important; }\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644 *\/\r\n.asw-play-btn::before {\r\n  content: \"\";\r\n  width: 16px;\r\n  height: 16px;\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Play.svg') center\/contain no-repeat;\r\n  display: block;\r\n  transition: all 0.2s ease;\r\n}\r\n\r\n\/* \u0622\u06cc\u06a9\u0646 \u067e\u0627\u0632 *\/\r\n.asw-playing .asw-play-btn::before {\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Pause.svg') center\/contain no-repeat !important;\r\n}\r\n\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646 \u0644\u0648\u062f\u06cc\u0646\u06af *\/\r\n    .asw-loading .asw-play-btn::before {\r\n      content: \"\u25ef\";\r\n      animation: asw-spin 1s linear infinite;\r\n    }\r\n    \r\n    .asw-playing { background: #282828; }\r\n    .asw-playing .asw-thumbnail { \r\n      animation: asw-glow 2s ease-in-out infinite alternate;\r\n    }\r\n    \r\n    \/* \u0631\u0641\u0639 \u0645\u0634\u06a9\u0644 cursor *\/\r\n    .elementor-element .audio-showcase-wrapper *,\r\n    .elementor-widget .audio-showcase-wrapper *,\r\n    .wp-block .audio-showcase-wrapper * {\r\n      cursor: default !important;\r\n    }\r\n    .elementor-element .asw-play-btn,\r\n    .elementor-widget .asw-play-btn,\r\n    .wp-block .asw-play-btn {\r\n      cursor: pointer !important;\r\n    }\r\n    \r\n    @keyframes asw-glow { \r\n      from { box-shadow: 0 4px 20px rgba(0,0,0,.3); } \r\n      to { box-shadow: 0 4px 20px rgba(255,255,255,.1); }\r\n    }\r\n    @keyframes asw-fadeIn { \r\n      from { opacity: 0; transform: translateY(10px); } \r\n      to { opacity: 1; transform: translateY(0); }\r\n    }\r\n    @keyframes asw-spin { \r\n      from { transform: rotate(0deg); } \r\n      to { transform: rotate(360deg); }\r\n    }\r\n    \r\n\/* Responsive *\/\r\n@media (max-width: 768px) {\r\n  .asw-player { \r\n    flex-direction: column !important; text-align: center !important; \r\n    gap: 16px !important; padding: 20px !important; \r\n  }\r\n  .asw-thumbnail { \r\n    display: block !important; order: 1 !important; \r\n  }\r\n  .asw-track-info { \r\n    order: 2 !important; \r\n  }\r\n  .asw-title { \r\n    font-size: 16px !important; \r\n    white-space: nowrap !important; overflow: hidden !important; \r\n    text-overflow: ellipsis !important; \r\n  }\r\n  .asw-subtitle { \r\n    font-size: 12px !important;\r\n    white-space: normal !important; \/* \u0627\u06cc\u0646\u062c\u0627 normal \u06a9\u0631\u062f\u0645 *\/\r\n    line-height: 1.4 !important; \/* \u0628\u0631\u0627\u06cc \u0641\u0627\u0635\u0644\u0647 \u062e\u0637 \u0628\u0647\u062a\u0631 *\/\r\n  }\r\n  .asw-play-btn { \r\n    width: 40px !important; height: 40px !important; order: 3 !important; \r\n  }\r\n  .asw-play-btn::before {\r\n    font-size: 14px !important;\r\n  }\r\n}\r\n\r\n  <\/style>\r\n  \r\n  <div class=\"asw-player\">\r\n    <div class=\"asw-thumbnail\">\r\n      <img decoding=\"async\" src=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/mother-day.webp\" alt=\"Track thumbnail\">\r\n      <span class=\"asw-ai-badge\">AI<\/span>\r\n    <\/div>\r\n    <div class=\"asw-track-info\">\r\n      <div class=\"asw-title\">\u0631\u0648\u0632 \u0645\u0627\u062f\u0631<\/div>\r\n      <div class=\"asw-subtitle\">\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627<\/div>\r\n    <\/div>\r\n    <button class=\"asw-play-btn\"><\/button>\r\n    <audio preload=\"metadata\"><\/audio>\r\n  <\/div>\r\n  \r\n  <script>\r\n    (function() {\r\n      'use strict';\r\n      \r\n      \/\/ \u062a\u0648\u0644\u06cc\u062f ID \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f\r\n      const playerId = 'player-' + Math.random().toString(36).substr(2, 9);\r\n      \r\n      \/\/ \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u0646 wrapper \u062c\u0627\u0631\u06cc\r\n      const wrapper = document.currentScript.closest('.audio-showcase-wrapper');\r\n      if (!wrapper) return;\r\n      \r\n      const player = wrapper.querySelector('.asw-player');\r\n      const audio = wrapper.querySelector('audio');\r\n      const playBtn = wrapper.querySelector('.asw-play-btn');\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645 ID\r\n      player.setAttribute('data-player-id', playerId);\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      const AUDIO_CONFIG = {\r\n        src: \"https:\/\/dl.minorifa.com\/demos\/rooze-madar.mp3\",\r\n        title: \"\u0631\u0648\u0632 \u0645\u0627\u062f\u0631\",\r\n        subtitle: \"\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\"\r\n      };\r\n      \r\n      \/\/ \u0627\u0639\u0645\u0627\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      audio.src = AUDIO_CONFIG.src;\r\n      wrapper.querySelector('.asw-title').textContent = AUDIO_CONFIG.title;\r\n      wrapper.querySelector('.asw-subtitle').textContent = AUDIO_CONFIG.subtitle;\r\n      \r\n      \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u0633\u0627\u06cc\u0631 \u067e\u0644\u06cc\u0631\u0647\u0627 (\u0634\u0627\u0645\u0644 \u06a9\u0627\u0631\u0648\u0633\u0644)\r\n      const pauseOthers = () => {\r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631\u0647\u0627\u06cc showcase\r\n        document.querySelectorAll('.asw-player[data-player-id]').forEach(p => {\r\n          if (p.getAttribute('data-player-id') !== playerId) {\r\n            const otherAudio = p.querySelector('audio');\r\n            if (otherAudio && !otherAudio.paused) {\r\n              otherAudio.pause();\r\n            }\r\n          }\r\n        });\r\n        \r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n        if (window.carouselAudioPlayer) {\r\n          window.carouselAudioPlayer.stopAll();\r\n        }\r\n      };\r\n      \r\n      \/\/ \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a - \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n      const setState = (isPlaying, isLoading = false) => {\r\n        player.classList.remove('asw-playing', 'asw-loading');\r\n        \r\n        if (isLoading) {\r\n          player.classList.add('asw-loading');\r\n          playBtn.disabled = true;\r\n        } else if (isPlaying) {\r\n          player.classList.add('asw-playing');\r\n          playBtn.disabled = false;\r\n        } else {\r\n          playBtn.disabled = false;\r\n        }\r\n      };\r\n      \r\n      \/\/ \u06a9\u0644\u06cc\u06a9 \u067e\u062e\u0634\/\u062a\u0648\u0642\u0641\r\n      playBtn.addEventListener('click', async () => {\r\n        try {\r\n          if (audio.paused) {\r\n            setState(false, true); \/\/ loading\r\n            pauseOthers();\r\n            await audio.play();\r\n            setState(true, false); \/\/ playing\r\n          } else {\r\n            audio.pause();\r\n            setState(false, false); \/\/ stopped\r\n          }\r\n        } catch (error) {\r\n          setState(false, false); \/\/ error\r\n          console.error('\u062e\u0637\u0627 \u062f\u0631 \u067e\u062e\u0634:', error);\r\n        }\r\n      });\r\n      \r\n      \/\/ \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc \u0635\u0648\u062a\r\n      audio.addEventListener('pause', () => setState(false, false));\r\n      audio.addEventListener('ended', () => setState(false, false));\r\n      audio.addEventListener('error', () => setState(false, false));\r\n      \r\n      \/\/ \u0631\u062c\u06cc\u0633\u062a\u0631 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 global\r\n      if (!window.audioShowcasePlayers) {\r\n        window.audioShowcasePlayers = new Set();\r\n      }\r\n      window.audioShowcasePlayers.add({\r\n        id: playerId,\r\n        audio: audio,\r\n        stop: () => {\r\n          if (!audio.paused) {\r\n            audio.pause();\r\n            setState(false, false);\r\n          }\r\n        }\r\n      });\r\n      \r\n    })();\r\n  <\/script>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-730a992 e-con-full e-flex e-con e-child\" data-id=\"730a992\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-89226e0 elementor-widget elementor-widget-html\" data-id=\"89226e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"audio-showcase-wrapper\">\r\n  <style scoped>\r\n    .audio-showcase-wrapper { \r\n      width: 100%; margin: 0 auto; padding: 16px; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .audio-showcase-wrapper * { \r\n      margin: 0; padding: 0; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .asw-player {\r\n      background: #282828; border-radius: 16px; padding: 20px; width: 100%; \r\n      color: #fff; display: flex; align-items: center; gap: 20px; \r\n      transition: all .3s ease; position: relative; overflow: hidden; \r\n      animation: asw-fadeIn .5s ease-out; cursor: default;\r\n    }\r\n    .asw-thumbnail { \r\n      width: 64px; height: 64px; border-radius: 12px; position: relative; \r\n      overflow: hidden; flex-shrink: 0; cursor: default;\r\n    }\r\n    .asw-thumbnail img { \r\n      width: 100%; height: 100%; object-fit: cover; border-radius: 12px; \r\n      display: block; cursor: default;\r\n    }\r\n    .asw-ai-badge { \r\n      position: absolute; left: 0; bottom: 0; width: 29px; height: 29px; \r\n      background: linear-gradient(135deg, #fe88fc, #00f2ff); color: #000; \r\n      border-radius: 50%; display: flex; align-items: center; justify-content: center; \r\n      font-weight: bold; font-size: 13px; z-index: 3; cursor: default;\r\n    }\r\n    .asw-track-info { \r\n      display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; \r\n      cursor: default;\r\n    }\r\n    .asw-title { \r\n      font-size: 18px; font-weight: 600; color: #fff; white-space: nowrap; \r\n      overflow: hidden; text-overflow: ellipsis; line-height: 1.3; cursor: default;\r\n    }\r\n    .asw-subtitle { \r\n      font-size: 13px; color: rgba(255,255,255,.6); font-weight: 400; \r\n      white-space: nowrap; overflow: hidden; text-overflow: ellipsis; \r\n      margin-top: 10px; cursor: default;\r\n    }\r\n    .asw-play-btn { \r\n      width: 45px; height: 45px; background: #fff; border: none; border-radius: 12px; \r\n      display: flex; align-items: center; justify-content: center; \r\n      cursor: pointer !important; transition: transform .2s, box-shadow .2s; \r\n      box-shadow: 0 4px 12px rgba(0,0,0,.15); flex-shrink: 0; outline: none;\r\n      font-size: 16px; color: #000; position: relative;\r\n    }\r\n    .asw-play-btn:hover { \r\n      transform: scale(1.05); box-shadow: 0 6px 20px rgba(0,0,0,.2);\r\n    }\r\n    .asw-play-btn:active { transform: scale(.98); }\r\n    .asw-play-btn:disabled { opacity: 0.6; cursor: not-allowed !important; }\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644 *\/\r\n.asw-play-btn::before {\r\n  content: \"\";\r\n  width: 16px;\r\n  height: 16px;\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Play.svg') center\/contain no-repeat;\r\n  display: block;\r\n  transition: all 0.2s ease;\r\n}\r\n\r\n\/* \u0622\u06cc\u06a9\u0646 \u067e\u0627\u0632 *\/\r\n.asw-playing .asw-play-btn::before {\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Pause.svg') center\/contain no-repeat !important;\r\n}\r\n\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646 \u0644\u0648\u062f\u06cc\u0646\u06af *\/\r\n    .asw-loading .asw-play-btn::before {\r\n      content: \"\u25ef\";\r\n      animation: asw-spin 1s linear infinite;\r\n    }\r\n    \r\n    .asw-playing { background: #282828; }\r\n    .asw-playing .asw-thumbnail { \r\n      animation: asw-glow 2s ease-in-out infinite alternate;\r\n    }\r\n    \r\n    \/* \u0631\u0641\u0639 \u0645\u0634\u06a9\u0644 cursor *\/\r\n    .elementor-element .audio-showcase-wrapper *,\r\n    .elementor-widget .audio-showcase-wrapper *,\r\n    .wp-block .audio-showcase-wrapper * {\r\n      cursor: default !important;\r\n    }\r\n    .elementor-element .asw-play-btn,\r\n    .elementor-widget .asw-play-btn,\r\n    .wp-block .asw-play-btn {\r\n      cursor: pointer !important;\r\n    }\r\n    \r\n    @keyframes asw-glow { \r\n      from { box-shadow: 0 4px 20px rgba(0,0,0,.3); } \r\n      to { box-shadow: 0 4px 20px rgba(255,255,255,.1); }\r\n    }\r\n    @keyframes asw-fadeIn { \r\n      from { opacity: 0; transform: translateY(10px); } \r\n      to { opacity: 1; transform: translateY(0); }\r\n    }\r\n    @keyframes asw-spin { \r\n      from { transform: rotate(0deg); } \r\n      to { transform: rotate(360deg); }\r\n    }\r\n    \r\n\/* Responsive *\/\r\n@media (max-width: 768px) {\r\n  .asw-player { \r\n    flex-direction: column !important; text-align: center !important; \r\n    gap: 16px !important; padding: 20px !important; \r\n  }\r\n  .asw-thumbnail { \r\n    display: block !important; order: 1 !important; \r\n  }\r\n  .asw-track-info { \r\n    order: 2 !important; \r\n  }\r\n  .asw-title { \r\n    font-size: 16px !important; \r\n    white-space: nowrap !important; overflow: hidden !important; \r\n    text-overflow: ellipsis !important; \r\n  }\r\n  .asw-subtitle { \r\n    font-size: 12px !important;\r\n    white-space: normal !important; \/* \u0627\u06cc\u0646\u062c\u0627 normal \u06a9\u0631\u062f\u0645 *\/\r\n    line-height: 1.4 !important; \/* \u0628\u0631\u0627\u06cc \u0641\u0627\u0635\u0644\u0647 \u062e\u0637 \u0628\u0647\u062a\u0631 *\/\r\n  }\r\n  .asw-play-btn { \r\n    width: 40px !important; height: 40px !important; order: 3 !important; \r\n  }\r\n  .asw-play-btn::before {\r\n    font-size: 14px !important;\r\n  }\r\n}\r\n\r\n  <\/style>\r\n  \r\n  <div class=\"asw-player\">\r\n    <div class=\"asw-thumbnail\">\r\n      <img decoding=\"async\" src=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/11\/pedar1.webp\" alt=\"Track thumbnail\">\r\n      <span class=\"asw-ai-badge\">AI<\/span>\r\n    <\/div>\r\n    <div class=\"asw-track-info\">\r\n      <div class=\"asw-title\">\u067e\u062f\u0631 \u06a9\u062c\u0627\u06cc\u06cc\u061f<\/div>\r\n      <div class=\"asw-subtitle\">\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627<\/div>\r\n    <\/div>\r\n    <button class=\"asw-play-btn\"><\/button>\r\n    <audio preload=\"metadata\"><\/audio>\r\n  <\/div>\r\n  \r\n  <script>\r\n    (function() {\r\n      'use strict';\r\n      \r\n      \/\/ \u062a\u0648\u0644\u06cc\u062f ID \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f\r\n      const playerId = 'player-' + Math.random().toString(36).substr(2, 9);\r\n      \r\n      \/\/ \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u0646 wrapper \u062c\u0627\u0631\u06cc\r\n      const wrapper = document.currentScript.closest('.audio-showcase-wrapper');\r\n      if (!wrapper) return;\r\n      \r\n      const player = wrapper.querySelector('.asw-player');\r\n      const audio = wrapper.querySelector('audio');\r\n      const playBtn = wrapper.querySelector('.asw-play-btn');\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645 ID\r\n      player.setAttribute('data-player-id', playerId);\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      const AUDIO_CONFIG = {\r\n        src: \"https:\/\/dl.minorifa.com\/demos\/md\/Minorifa-Pedar.mp3\",\r\n        title: \"\u067e\u062f\u0631 \u06a9\u062c\u0627\u06cc\u06cc\u061f\",\r\n        subtitle: \"\u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\"\r\n      };\r\n      \r\n      \/\/ \u0627\u0639\u0645\u0627\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      audio.src = AUDIO_CONFIG.src;\r\n      wrapper.querySelector('.asw-title').textContent = AUDIO_CONFIG.title;\r\n      wrapper.querySelector('.asw-subtitle').textContent = AUDIO_CONFIG.subtitle;\r\n      \r\n      \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u0633\u0627\u06cc\u0631 \u067e\u0644\u06cc\u0631\u0647\u0627 (\u0634\u0627\u0645\u0644 \u06a9\u0627\u0631\u0648\u0633\u0644)\r\n      const pauseOthers = () => {\r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631\u0647\u0627\u06cc showcase\r\n        document.querySelectorAll('.asw-player[data-player-id]').forEach(p => {\r\n          if (p.getAttribute('data-player-id') !== playerId) {\r\n            const otherAudio = p.querySelector('audio');\r\n            if (otherAudio && !otherAudio.paused) {\r\n              otherAudio.pause();\r\n            }\r\n          }\r\n        });\r\n        \r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n        if (window.carouselAudioPlayer) {\r\n          window.carouselAudioPlayer.stopAll();\r\n        }\r\n      };\r\n      \r\n      \/\/ \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a - \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n      const setState = (isPlaying, isLoading = false) => {\r\n        player.classList.remove('asw-playing', 'asw-loading');\r\n        \r\n        if (isLoading) {\r\n          player.classList.add('asw-loading');\r\n          playBtn.disabled = true;\r\n        } else if (isPlaying) {\r\n          player.classList.add('asw-playing');\r\n          playBtn.disabled = false;\r\n        } else {\r\n          playBtn.disabled = false;\r\n        }\r\n      };\r\n      \r\n      \/\/ \u06a9\u0644\u06cc\u06a9 \u067e\u062e\u0634\/\u062a\u0648\u0642\u0641\r\n      playBtn.addEventListener('click', async () => {\r\n        try {\r\n          if (audio.paused) {\r\n            setState(false, true); \/\/ loading\r\n            pauseOthers();\r\n            await audio.play();\r\n            setState(true, false); \/\/ playing\r\n          } else {\r\n            audio.pause();\r\n            setState(false, false); \/\/ stopped\r\n          }\r\n        } catch (error) {\r\n          setState(false, false); \/\/ error\r\n          console.error('\u062e\u0637\u0627 \u062f\u0631 \u067e\u062e\u0634:', error);\r\n        }\r\n      });\r\n      \r\n      \/\/ \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc \u0635\u0648\u062a\r\n      audio.addEventListener('pause', () => setState(false, false));\r\n      audio.addEventListener('ended', () => setState(false, false));\r\n      audio.addEventListener('error', () => setState(false, false));\r\n      \r\n      \/\/ \u0631\u062c\u06cc\u0633\u062a\u0631 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 global\r\n      if (!window.audioShowcasePlayers) {\r\n        window.audioShowcasePlayers = new Set();\r\n      }\r\n      window.audioShowcasePlayers.add({\r\n        id: playerId,\r\n        audio: audio,\r\n        stop: () => {\r\n          if (!audio.paused) {\r\n            audio.pause();\r\n            setState(false, false);\r\n          }\r\n        }\r\n      });\r\n      \r\n    })();\r\n  <\/script>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-79fc1e0 elementor-widget elementor-widget-spacer\" data-id=\"79fc1e0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-b2c5942 e-flex e-con-boxed e-con e-parent\" data-id=\"b2c5942\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-e62a797 e-con-full e-flex e-con e-child\" data-id=\"e62a797\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-0e1648b e-con-full e-flex e-con e-child\" data-id=\"0e1648b\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-337a3fb elementor-widget elementor-widget-heading\" data-id=\"337a3fb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0635\u062f\u0627\u06cc \u062e\u0648\u0627\u0646\u0646\u062f\u0647 \u0631\u0648 \u0641\u0642\u0637 \u0628\u0627 \u06cc\u0647 \u06a9\u0644\u06cc\u06a9 \u0627\u0632 \u0622\u0647\u0646\u06af \u062c\u062f\u0627 \u06a9\u0646!<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cbb735e elementor-widget elementor-widget-text-editor\" data-id=\"cbb735e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>\u0628\u0627 \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\u060c \u0635\u062f\u0627\u06cc \u062e\u0648\u0627\u0646\u0646\u062f\u0647 \u0631\u0648 \u0627\u0632 \u0622\u0647\u0646\u06af \u062c\u062f\u0627 \u06a9\u0646 \u0648 \u06cc\u0627 \u0635\u062f\u0627\u06cc \u062e\u0627\u0645 \u062e\u0648\u0627\u0646\u0646\u062f\u0647 \u0631\u0648 \u0628\u0647 \u0635\u0648\u0631\u062a \u062c\u062f\u0627\u06af\u0627\u0646\u0647 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634!<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5035f55 elementor-align-center elementor-tablet-align-center elementor-mobile-align-justify elementor-widget elementor-widget-button\" data-id=\"5035f55\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/minorifa.com\/fa\/vocal-remover\/\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u0634\u0631\u0648\u0639 \u06a9\u0646!<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-deca368 e-con-full e-flex e-con e-child\" data-id=\"deca368\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e571dd5 e-n-tabs-mobile elementor-widget elementor-widget-n-tabs\" data-id=\"e571dd5\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;horizontal_scroll_mobile&quot;:&quot;enable&quot;,&quot;horizontal_scroll&quot;:&quot;disable&quot;}\" data-widget_type=\"nested-tabs.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"e-n-tabs\" data-widget-number=\"240590293\" aria-label=\"\u0632\u0628\u0627\u0646\u0647\u200c\u0647\u0627. \u0645\u0648\u0627\u0631\u062f \u0631\u0627 \u0628\u0627 Enter \u06cc\u0627 Space \u0628\u0627\u0632 \u06a9\u0646\u06cc\u062f\u060c \u0628\u0627 Escape \u0628\u0628\u0646\u062f\u06cc\u062f \u0648 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u06a9\u0644\u06cc\u062f\u0647\u0627\u06cc \u062c\u0647\u062a\u200c\u0646\u0645\u0627 \u067e\u06cc\u0645\u0627\u06cc\u0634 \u06a9\u0646\u06cc\u062f.\">\n\t\t\t<div class=\"e-n-tabs-heading\" role=\"tablist\">\n\t\t\t\t\t<button id=\"e-n-tab-title-2405902931\" data-tab-title-id=\"e-n-tab-title-2405902931\" class=\"e-n-tab-title\" aria-selected=\"true\" data-tab-index=\"1\" role=\"tab\" tabindex=\"0\" aria-controls=\"e-n-tab-content-2405902931\" style=\"--n-tabs-title-order: 1;\">\n\t\t\t\t\t<span class=\"e-n-tab-icon\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" id=\"Layer_1\" data-name=\"Layer 1\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" width=\"24\" height=\"24\" color=\"#ffffff\"><defs><style>.cls-6374f543b67f094e4896c5d7-1{fill:none;stroke:currentColor;stroke-miterlimit:10;}<\/style><\/defs><circle class=\"cls-6374f543b67f094e4896c5d7-1\" cx=\"17.73\" cy=\"6.27\" r=\"4.77\"><\/circle><polyline class=\"cls-6374f543b67f094e4896c5d7-1\" points=\"12.96 6.27 3.41 18.68 5.32 20.59 17.73 11.04\"><\/polyline><line class=\"cls-6374f543b67f094e4896c5d7-1\" x1=\"1.5\" y1=\"22.5\" x2=\"4.36\" y2=\"19.64\"><\/line><line class=\"cls-6374f543b67f094e4896c5d7-1\" x1=\"11.05\" y1=\"12\" x2=\"9.63\" y2=\"10.59\"><\/line><line class=\"cls-6374f543b67f094e4896c5d7-1\" x1=\"13.43\" y1=\"1.98\" x2=\"22.02\" y2=\"10.57\"><\/line><\/svg>\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" id=\"Layer_1\" data-name=\"Layer 1\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" width=\"24\" height=\"24\" color=\"#ffffff\"><defs><style>.cls-6374f543b67f094e4896c5d7-1{fill:none;stroke:currentColor;stroke-miterlimit:10;}<\/style><\/defs><circle class=\"cls-6374f543b67f094e4896c5d7-1\" cx=\"17.73\" cy=\"6.27\" r=\"4.77\"><\/circle><polyline class=\"cls-6374f543b67f094e4896c5d7-1\" points=\"12.96 6.27 3.41 18.68 5.32 20.59 17.73 11.04\"><\/polyline><line class=\"cls-6374f543b67f094e4896c5d7-1\" x1=\"1.5\" y1=\"22.5\" x2=\"4.36\" y2=\"19.64\"><\/line><line class=\"cls-6374f543b67f094e4896c5d7-1\" x1=\"11.05\" y1=\"12\" x2=\"9.63\" y2=\"10.59\"><\/line><line class=\"cls-6374f543b67f094e4896c5d7-1\" x1=\"13.43\" y1=\"1.98\" x2=\"22.02\" y2=\"10.57\"><\/line><\/svg>\t\t<\/span>\n\t\t\t\t\t<span class=\"e-n-tab-title-text\">\n\t\t\t\t\u0622\u0647\u0646\u06af \u0628\u0627 \u06a9\u0644\u0627\u0645\t\t\t<\/span>\n\t\t<\/button>\n\t\t\t\t<button id=\"e-n-tab-title-2405902932\" data-tab-title-id=\"e-n-tab-title-2405902932\" class=\"e-n-tab-title\" aria-selected=\"false\" data-tab-index=\"2\" role=\"tab\" tabindex=\"-1\" aria-controls=\"e-n-tab-content-2405902932\" style=\"--n-tabs-title-order: 2;\">\n\t\t\t\t\t<span class=\"e-n-tab-icon\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" id=\"Layer_1\" data-name=\"Layer 1\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" width=\"24\" height=\"24\" color=\"#ffffff\"><defs><style>.cls-6374f543b67f094e4896c5e1-1{fill:none;stroke:currentColor;stroke-miterlimit:10;}<\/style><\/defs><line class=\"cls-6374f543b67f094e4896c5e1-1\" x1=\"12\" y1=\"22.5\" x2=\"12\" y2=\"18.68\"><\/line><rect class=\"cls-6374f543b67f094e4896c5e1-1\" x=\"8.18\" y=\"1.5\" width=\"7.64\" height=\"13.36\" rx=\"3.7\"><\/rect><path class=\"cls-6374f543b67f094e4896c5e1-1\" d=\"M19.64,11.05h0A7.64,7.64,0,0,1,12,18.68h0a7.64,7.64,0,0,1-7.64-7.63h0\"><\/path><line class=\"cls-6374f543b67f094e4896c5e1-1\" x1=\"9.14\" y1=\"22.5\" x2=\"14.86\" y2=\"22.5\"><\/line><line class=\"cls-6374f543b67f094e4896c5e1-1\" x1=\"22.5\" y1=\"1.5\" x2=\"1.5\" y2=\"22.5\"><\/line><\/svg>\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" id=\"Layer_1\" data-name=\"Layer 1\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" width=\"24\" height=\"24\" color=\"#ffffff\"><defs><style>.cls-6374f543b67f094e4896c5e1-1{fill:none;stroke:currentColor;stroke-miterlimit:10;}<\/style><\/defs><line class=\"cls-6374f543b67f094e4896c5e1-1\" x1=\"12\" y1=\"22.5\" x2=\"12\" y2=\"18.68\"><\/line><rect class=\"cls-6374f543b67f094e4896c5e1-1\" x=\"8.18\" y=\"1.5\" width=\"7.64\" height=\"13.36\" rx=\"3.7\"><\/rect><path class=\"cls-6374f543b67f094e4896c5e1-1\" d=\"M19.64,11.05h0A7.64,7.64,0,0,1,12,18.68h0a7.64,7.64,0,0,1-7.64-7.63h0\"><\/path><line class=\"cls-6374f543b67f094e4896c5e1-1\" x1=\"9.14\" y1=\"22.5\" x2=\"14.86\" y2=\"22.5\"><\/line><line class=\"cls-6374f543b67f094e4896c5e1-1\" x1=\"22.5\" y1=\"1.5\" x2=\"1.5\" y2=\"22.5\"><\/line><\/svg>\t\t<\/span>\n\t\t\t\t\t<span class=\"e-n-tab-title-text\">\n\t\t\t\t\u0622\u0647\u0646\u06af \u0628\u06cc \u06a9\u0644\u0627\u0645\t\t\t<\/span>\n\t\t<\/button>\n\t\t\t\t\t<\/div>\n\t\t\t<div class=\"e-n-tabs-content\">\n\t\t\t\t<div id=\"e-n-tab-content-2405902931\" role=\"tabpanel\" aria-labelledby=\"e-n-tab-title-2405902931\" data-tab-index=\"1\" style=\"--n-tabs-title-order: 1;\" class=\"e-active elementor-element elementor-element-e60e823 e-con-full e-flex e-con e-child\" data-id=\"e60e823\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-93e75ae elementor-widget elementor-widget-html\" data-id=\"93e75ae\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"audio-showcase-wrapper\">\r\n  <style scoped>\r\n    .audio-showcase-wrapper { \r\n      width: 100%; margin: 0 auto; padding: 16px; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .audio-showcase-wrapper * { \r\n      margin: 0; padding: 0; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .asw-player {\r\n      background: #282828; border-radius: 16px; padding: 20px; width: 100%; \r\n      color: #fff; display: flex; align-items: center; gap: 20px; \r\n      transition: all .3s ease; position: relative; overflow: hidden; \r\n      animation: asw-fadeIn .5s ease-out; cursor: default;\r\n    }\r\n    .asw-thumbnail { \r\n      width: 64px; height: 64px; border-radius: 12px; position: relative; \r\n      overflow: hidden; flex-shrink: 0; cursor: default;\r\n    }\r\n    .asw-thumbnail img { \r\n      width: 100%; height: 100%; object-fit: cover; border-radius: 12px; \r\n      display: block; cursor: default;\r\n    }\r\n    .asw-track-info { \r\n      display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; \r\n      cursor: default;\r\n    }\r\n    .asw-title { \r\n      font-size: 18px; font-weight: 600; color: #fff; white-space: nowrap; \r\n      overflow: hidden; text-overflow: ellipsis; line-height: 1.3; cursor: default;\r\n    }\r\n    .asw-subtitle { \r\n      font-size: 13px; color: rgba(255,255,255,.6); font-weight: 400; \r\n      white-space: nowrap; overflow: hidden; text-overflow: ellipsis; \r\n      margin-top: 10px; cursor: default;\r\n    }\r\n    .asw-play-btn { \r\n      width: 45px; height: 45px; background: #fff; border: none; border-radius: 12px; \r\n      display: flex; align-items: center; justify-content: center; \r\n      cursor: pointer !important; transition: transform .2s, box-shadow .2s; \r\n      box-shadow: 0 4px 12px rgba(0,0,0,.15); flex-shrink: 0; outline: none;\r\n      font-size: 16px; color: #000; position: relative;\r\n    }\r\n    .asw-play-btn:hover { \r\n      transform: scale(1.05); box-shadow: 0 6px 20px rgba(0,0,0,.2);\r\n    }\r\n    .asw-play-btn:active { transform: scale(.98); }\r\n    .asw-play-btn:disabled { opacity: 0.6; cursor: not-allowed !important; }\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644 *\/\r\n.asw-play-btn::before {\r\n  content: \"\";\r\n  width: 16px;\r\n  height: 16px;\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Play.svg') center\/contain no-repeat;\r\n  display: block;\r\n  transition: all 0.2s ease;\r\n}\r\n\r\n\/* \u0622\u06cc\u06a9\u0646 \u067e\u0627\u0632 *\/\r\n.asw-playing .asw-play-btn::before {\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Pause.svg') center\/contain no-repeat !important;\r\n}\r\n\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646 \u0644\u0648\u062f\u06cc\u0646\u06af *\/\r\n    .asw-loading .asw-play-btn::before {\r\n      content: \"\u25ef\";\r\n      animation: asw-spin 1s linear infinite;\r\n    }\r\n    \r\n    .asw-playing { background: #282828; }\r\n    .asw-playing .asw-thumbnail { \r\n      animation: asw-glow 2s ease-in-out infinite alternate;\r\n    }\r\n    \r\n    \/* \u0631\u0641\u0639 \u0645\u0634\u06a9\u0644 cursor *\/\r\n    .elementor-element .audio-showcase-wrapper *,\r\n    .elementor-widget .audio-showcase-wrapper *,\r\n    .wp-block .audio-showcase-wrapper * {\r\n      cursor: default !important;\r\n    }\r\n    .elementor-element .asw-play-btn,\r\n    .elementor-widget .asw-play-btn,\r\n    .wp-block .asw-play-btn {\r\n      cursor: pointer !important;\r\n    }\r\n    \r\n    @keyframes asw-glow { \r\n      from { box-shadow: 0 4px 20px rgba(0,0,0,.3); } \r\n      to { box-shadow: 0 4px 20px rgba(255,255,255,.1); }\r\n    }\r\n    @keyframes asw-fadeIn { \r\n      from { opacity: 0; transform: translateY(10px); } \r\n      to { opacity: 1; transform: translateY(0); }\r\n    }\r\n    @keyframes asw-spin { \r\n      from { transform: rotate(0deg); } \r\n      to { transform: rotate(360deg); }\r\n    }\r\n    \r\n\/* Responsive *\/\r\n@media (max-width: 768px) {\r\n  .asw-player { \r\n    flex-direction: column !important; text-align: center !important; \r\n    gap: 16px !important; padding: 20px !important; \r\n  }\r\n  .asw-thumbnail { \r\n    display: block !important; order: 1 !important; \r\n  }\r\n  .asw-track-info { \r\n    order: 2 !important; \r\n  }\r\n  .asw-title { \r\n    font-size: 16px !important; \r\n    white-space: nowrap !important; overflow: hidden !important; \r\n    text-overflow: ellipsis !important; \r\n  }\r\n  .asw-subtitle { \r\n    font-size: 12px !important;\r\n    white-space: normal !important; \/* \u0627\u06cc\u0646\u062c\u0627 normal \u06a9\u0631\u062f\u0645 *\/\r\n    line-height: 1.4 !important; \/* \u0628\u0631\u0627\u06cc \u0641\u0627\u0635\u0644\u0647 \u062e\u0637 \u0628\u0647\u062a\u0631 *\/\r\n  }\r\n  .asw-play-btn { \r\n    width: 40px !important; height: 40px !important; order: 3 !important; \r\n  }\r\n  .asw-play-btn::before {\r\n    font-size: 14px !important;\r\n  }\r\n}\r\n\r\n  <\/style>\r\n  \r\n  <div class=\"asw-player\">\r\n    <div class=\"asw-thumbnail\">\r\n      <img decoding=\"async\" src=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Behnam-Bani-Shabe-Eshgh.webp\" alt=\"Track thumbnail\">\r\n    <\/div>\r\n    <div class=\"asw-track-info\">\r\n      <div class=\"asw-title\">\u0642\u0628\u0644 \u0627\u0632 \u062a\u063a\u06cc\u06cc\u0631<\/div>\r\n      <div class=\"asw-subtitle\">\u0628\u0647\u0646\u0627\u0645 \u0628\u0627\u0646\u06cc - \u0634\u0628 \u0639\u0634\u0642<\/div>\r\n    <\/div>\r\n    <button class=\"asw-play-btn\"><\/button>\r\n    <audio preload=\"metadata\"><\/audio>\r\n  <\/div>\r\n  \r\n  <script>\r\n    (function() {\r\n      'use strict';\r\n      \r\n      \/\/ \u062a\u0648\u0644\u06cc\u062f ID \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f\r\n      const playerId = 'player-' + Math.random().toString(36).substr(2, 9);\r\n      \r\n      \/\/ \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u0646 wrapper \u062c\u0627\u0631\u06cc\r\n      const wrapper = document.currentScript.closest('.audio-showcase-wrapper');\r\n      if (!wrapper) return;\r\n      \r\n      const player = wrapper.querySelector('.asw-player');\r\n      const audio = wrapper.querySelector('audio');\r\n      const playBtn = wrapper.querySelector('.asw-play-btn');\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645 ID\r\n      player.setAttribute('data-player-id', playerId);\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      const AUDIO_CONFIG = {\r\n        src: \"https:\/\/dl.minorifa.com\/demos\/Behnam-Bani-Shabe-Eshgh.mp3\",\r\n        title: \"\u0642\u0628\u0644 \u0627\u0632 \u062a\u063a\u06cc\u06cc\u0631\",\r\n        subtitle: \"\u0628\u0647\u0646\u0627\u0645 \u0628\u0627\u0646\u06cc - \u0634\u0628 \u0639\u0634\u0642\"\r\n      };\r\n      \r\n      \/\/ \u0627\u0639\u0645\u0627\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      audio.src = AUDIO_CONFIG.src;\r\n      wrapper.querySelector('.asw-title').textContent = AUDIO_CONFIG.title;\r\n      wrapper.querySelector('.asw-subtitle').textContent = AUDIO_CONFIG.subtitle;\r\n      \r\n      \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u0633\u0627\u06cc\u0631 \u067e\u0644\u06cc\u0631\u0647\u0627 (\u0634\u0627\u0645\u0644 \u06a9\u0627\u0631\u0648\u0633\u0644)\r\n      const pauseOthers = () => {\r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631\u0647\u0627\u06cc showcase\r\n        document.querySelectorAll('.asw-player[data-player-id]').forEach(p => {\r\n          if (p.getAttribute('data-player-id') !== playerId) {\r\n            const otherAudio = p.querySelector('audio');\r\n            if (otherAudio && !otherAudio.paused) {\r\n              otherAudio.pause();\r\n            }\r\n          }\r\n        });\r\n        \r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n        if (window.carouselAudioPlayer) {\r\n          window.carouselAudioPlayer.stopAll();\r\n        }\r\n      };\r\n      \r\n      \/\/ \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a - \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n      const setState = (isPlaying, isLoading = false) => {\r\n        player.classList.remove('asw-playing', 'asw-loading');\r\n        \r\n        if (isLoading) {\r\n          player.classList.add('asw-loading');\r\n          playBtn.disabled = true;\r\n        } else if (isPlaying) {\r\n          player.classList.add('asw-playing');\r\n          playBtn.disabled = false;\r\n        } else {\r\n          playBtn.disabled = false;\r\n        }\r\n      };\r\n      \r\n      \/\/ \u06a9\u0644\u06cc\u06a9 \u067e\u062e\u0634\/\u062a\u0648\u0642\u0641\r\n      playBtn.addEventListener('click', async () => {\r\n        try {\r\n          if (audio.paused) {\r\n            setState(false, true); \/\/ loading\r\n            pauseOthers();\r\n            await audio.play();\r\n            setState(true, false); \/\/ playing\r\n          } else {\r\n            audio.pause();\r\n            setState(false, false); \/\/ stopped\r\n          }\r\n        } catch (error) {\r\n          setState(false, false); \/\/ error\r\n          console.error('\u062e\u0637\u0627 \u062f\u0631 \u067e\u062e\u0634:', error);\r\n        }\r\n      });\r\n      \r\n      \/\/ \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc \u0635\u0648\u062a\r\n      audio.addEventListener('pause', () => setState(false, false));\r\n      audio.addEventListener('ended', () => setState(false, false));\r\n      audio.addEventListener('error', () => setState(false, false));\r\n      \r\n      \/\/ \u0631\u062c\u06cc\u0633\u062a\u0631 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 global\r\n      if (!window.audioShowcasePlayers) {\r\n        window.audioShowcasePlayers = new Set();\r\n      }\r\n      window.audioShowcasePlayers.add({\r\n        id: playerId,\r\n        audio: audio,\r\n        stop: () => {\r\n          if (!audio.paused) {\r\n            audio.pause();\r\n            setState(false, false);\r\n          }\r\n        }\r\n      });\r\n      \r\n    })();\r\n  <\/script>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div id=\"e-n-tab-content-2405902932\" role=\"tabpanel\" aria-labelledby=\"e-n-tab-title-2405902932\" data-tab-index=\"2\" style=\"--n-tabs-title-order: 2;\" class=\" elementor-element elementor-element-03b7880 e-con-full e-flex e-con e-child\" data-id=\"03b7880\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e94d598 elementor-widget elementor-widget-html\" data-id=\"e94d598\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"audio-showcase-wrapper\">\r\n  <style scoped>\r\n    .audio-showcase-wrapper { \r\n      width: 100%; margin: 0 auto; padding: 16px; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .audio-showcase-wrapper * { \r\n      margin: 0; padding: 0; box-sizing: border-box; \r\n      cursor: default;\r\n    }\r\n    .asw-player {\r\n      background: #282828; border-radius: 16px; padding: 20px; width: 100%; \r\n      color: #fff; display: flex; align-items: center; gap: 20px; \r\n      transition: all .3s ease; position: relative; overflow: hidden; \r\n      animation: asw-fadeIn .5s ease-out; cursor: default;\r\n    }\r\n    .asw-thumbnail { \r\n      width: 64px; height: 64px; border-radius: 12px; position: relative; \r\n      overflow: hidden; flex-shrink: 0; cursor: default;\r\n    }\r\n    .asw-thumbnail img { \r\n      width: 100%; height: 100%; object-fit: cover; border-radius: 12px; \r\n      display: block; cursor: default;\r\n    }\r\n    .asw-ai-badge { \r\n      position: absolute; left: 0; bottom: 0; width: 29px; height: 29px; \r\n      background: linear-gradient(135deg, #fe88fc, #00f2ff); color: #000; \r\n      border-radius: 50%; display: flex; align-items: center; justify-content: center; \r\n      font-weight: bold; font-size: 13px; z-index: 3; cursor: default;\r\n    }\r\n    .asw-track-info { \r\n      display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 0; \r\n      cursor: default;\r\n    }\r\n    .asw-title { \r\n      font-size: 18px; font-weight: 600; color: #fff; white-space: nowrap; \r\n      overflow: hidden; text-overflow: ellipsis; line-height: 1.3; cursor: default;\r\n    }\r\n    .asw-subtitle { \r\n      font-size: 13px; color: rgba(255,255,255,.6); font-weight: 400; \r\n      white-space: nowrap; overflow: hidden; text-overflow: ellipsis; \r\n      margin-top: 10px; cursor: default;\r\n    }\r\n    .asw-play-btn { \r\n      width: 45px; height: 45px; background: #fff; border: none; border-radius: 12px; \r\n      display: flex; align-items: center; justify-content: center; \r\n      cursor: pointer !important; transition: transform .2s, box-shadow .2s; \r\n      box-shadow: 0 4px 12px rgba(0,0,0,.15); flex-shrink: 0; outline: none;\r\n      font-size: 16px; color: #000; position: relative;\r\n    }\r\n    .asw-play-btn:hover { \r\n      transform: scale(1.05); box-shadow: 0 6px 20px rgba(0,0,0,.2);\r\n    }\r\n    .asw-play-btn:active { transform: scale(.98); }\r\n    .asw-play-btn:disabled { opacity: 0.6; cursor: not-allowed !important; }\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644 *\/\r\n.asw-play-btn::before {\r\n  content: \"\";\r\n  width: 16px;\r\n  height: 16px;\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Play.svg') center\/contain no-repeat;\r\n  display: block;\r\n  transition: all 0.2s ease;\r\n}\r\n\r\n\/* \u0622\u06cc\u06a9\u0646 \u067e\u0627\u0632 *\/\r\n.asw-playing .asw-play-btn::before {\r\n  background: url('https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Pause.svg') center\/contain no-repeat !important;\r\n}\r\n    \r\n    \/* \u0622\u06cc\u06a9\u0646 \u0644\u0648\u062f\u06cc\u0646\u06af *\/\r\n    .asw-loading .asw-play-btn::before {\r\n      content: \"\u25ef\";\r\n      animation: asw-spin 1s linear infinite;\r\n    }\r\n    \r\n    .asw-playing { background: #282828; }\r\n    .asw-playing .asw-thumbnail { \r\n      animation: asw-glow 2s ease-in-out infinite alternate;\r\n    }\r\n    \r\n    \/* \u0631\u0641\u0639 \u0645\u0634\u06a9\u0644 cursor *\/\r\n    .elementor-element .audio-showcase-wrapper *,\r\n    .elementor-widget .audio-showcase-wrapper *,\r\n    .wp-block .audio-showcase-wrapper * {\r\n      cursor: default !important;\r\n    }\r\n    .elementor-element .asw-play-btn,\r\n    .elementor-widget .asw-play-btn,\r\n    .wp-block .asw-play-btn {\r\n      cursor: pointer !important;\r\n    }\r\n    \r\n    @keyframes asw-glow { \r\n      from { box-shadow: 0 4px 20px rgba(0,0,0,.3); } \r\n      to { box-shadow: 0 4px 20px rgba(255,255,255,.1); }\r\n    }\r\n    @keyframes asw-fadeIn { \r\n      from { opacity: 0; transform: translateY(10px); } \r\n      to { opacity: 1; transform: translateY(0); }\r\n    }\r\n    @keyframes asw-spin { \r\n      from { transform: rotate(0deg); } \r\n      to { transform: rotate(360deg); }\r\n    }\r\n    \r\n\/* Responsive *\/\r\n@media (max-width: 768px) {\r\n  .asw-player { \r\n    flex-direction: column !important; text-align: center !important; \r\n    gap: 16px !important; padding: 20px !important; \r\n  }\r\n  .asw-thumbnail { \r\n    display: block !important; order: 1 !important; \r\n  }\r\n  .asw-track-info { \r\n    order: 2 !important; \r\n  }\r\n  .asw-title { \r\n    font-size: 16px !important; \r\n    white-space: nowrap !important; overflow: hidden !important; \r\n    text-overflow: ellipsis !important; \r\n  }\r\n  .asw-subtitle { \r\n    font-size: 12px !important;\r\n    white-space: normal !important; \/* \u0627\u06cc\u0646\u062c\u0627 normal \u06a9\u0631\u062f\u0645 *\/\r\n    line-height: 1.4 !important; \/* \u0628\u0631\u0627\u06cc \u0641\u0627\u0635\u0644\u0647 \u062e\u0637 \u0628\u0647\u062a\u0631 *\/\r\n  }\r\n  .asw-play-btn { \r\n    width: 40px !important; height: 40px !important; order: 3 !important; \r\n  }\r\n  .asw-play-btn::before {\r\n    font-size: 14px !important;\r\n  }\r\n}\r\n\r\n  <\/style>\r\n  \r\n  <div class=\"asw-player\">\r\n    <div class=\"asw-thumbnail\">\r\n      <img decoding=\"async\" src=\"https:\/\/minorifa.com\/fa\/wp-content\/uploads\/2025\/07\/Behnam-Bani-Shabe-Eshgh.webp\" alt=\"Track thumbnail\">\r\n      <span class=\"asw-ai-badge\">AI<\/span>\r\n    <\/div>\r\n    <div class=\"asw-track-info\">\r\n      <div class=\"asw-title\">\u0628\u0639\u062f \u0627\u0632 \u062a\u063a\u06cc\u06cc\u0631<\/div>\r\n      <div class=\"asw-subtitle\">\u0628\u0647\u0646\u0627\u0645 \u0628\u0627\u0646\u06cc - \u0634\u0628 \u0639\u0634\u0642<\/div>\r\n    <\/div>\r\n    <button class=\"asw-play-btn\"><\/button>\r\n    <audio preload=\"metadata\"><\/audio>\r\n  <\/div>\r\n  \r\n  <script>\r\n    (function() {\r\n      'use strict';\r\n      \r\n      \/\/ \u062a\u0648\u0644\u06cc\u062f ID \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f\r\n      const playerId = 'player-' + Math.random().toString(36).substr(2, 9);\r\n      \r\n      \/\/ \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u0646 wrapper \u062c\u0627\u0631\u06cc\r\n      const wrapper = document.currentScript.closest('.audio-showcase-wrapper');\r\n      if (!wrapper) return;\r\n      \r\n      const player = wrapper.querySelector('.asw-player');\r\n      const audio = wrapper.querySelector('audio');\r\n      const playBtn = wrapper.querySelector('.asw-play-btn');\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645 ID\r\n      player.setAttribute('data-player-id', playerId);\r\n      \r\n      \/\/ \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      const AUDIO_CONFIG = {\r\n        src: \"https:\/\/dl.minorifa.com\/demos\/Behnam-Bani-Shabe-Eshgh-instrument.mp3\",\r\n        title: \"\u0628\u0639\u062f \u0627\u0632 \u062a\u063a\u06cc\u06cc\u0631\",\r\n        subtitle: \"\u0628\u0647\u0646\u0627\u0645 \u0628\u0627\u0646\u06cc - \u0634\u0628 \u0639\u0634\u0642\"\r\n      };\r\n      \r\n      \/\/ \u0627\u0639\u0645\u0627\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\r\n      audio.src = AUDIO_CONFIG.src;\r\n      wrapper.querySelector('.asw-title').textContent = AUDIO_CONFIG.title;\r\n      wrapper.querySelector('.asw-subtitle').textContent = AUDIO_CONFIG.subtitle;\r\n      \r\n      \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u0633\u0627\u06cc\u0631 \u067e\u0644\u06cc\u0631\u0647\u0627 (\u0634\u0627\u0645\u0644 \u06a9\u0627\u0631\u0648\u0633\u0644)\r\n      const pauseOthers = () => {\r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631\u0647\u0627\u06cc showcase\r\n        document.querySelectorAll('.asw-player[data-player-id]').forEach(p => {\r\n          if (p.getAttribute('data-player-id') !== playerId) {\r\n            const otherAudio = p.querySelector('audio');\r\n            if (otherAudio && !otherAudio.paused) {\r\n              otherAudio.pause();\r\n            }\r\n          }\r\n        });\r\n        \r\n        \/\/ \u0645\u062a\u0648\u0642\u0641 \u06a9\u0631\u062f\u0646 \u067e\u0644\u06cc\u0631 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n        if (window.carouselAudioPlayer) {\r\n          window.carouselAudioPlayer.stopAll();\r\n        }\r\n      };\r\n      \r\n      \/\/ \u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a - \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u0627\u0628\u0647 \u06a9\u0627\u0631\u0648\u0633\u0644\r\n      const setState = (isPlaying, isLoading = false) => {\r\n        player.classList.remove('asw-playing', 'asw-loading');\r\n        \r\n        if (isLoading) {\r\n          player.classList.add('asw-loading');\r\n          playBtn.disabled = true;\r\n        } else if (isPlaying) {\r\n          player.classList.add('asw-playing');\r\n          playBtn.disabled = false;\r\n        } else {\r\n          playBtn.disabled = false;\r\n        }\r\n      };\r\n      \r\n      \/\/ \u06a9\u0644\u06cc\u06a9 \u067e\u062e\u0634\/\u062a\u0648\u0642\u0641\r\n      playBtn.addEventListener('click', async () => {\r\n        try {\r\n          if (audio.paused) {\r\n            setState(false, true); \/\/ loading\r\n            pauseOthers();\r\n            await audio.play();\r\n            setState(true, false); \/\/ playing\r\n          } else {\r\n            audio.pause();\r\n            setState(false, false); \/\/ stopped\r\n          }\r\n        } catch (error) {\r\n          setState(false, false); \/\/ error\r\n          console.error('\u062e\u0637\u0627 \u062f\u0631 \u067e\u062e\u0634:', error);\r\n        }\r\n      });\r\n      \r\n      \/\/ \u0631\u0648\u06cc\u062f\u0627\u062f\u0647\u0627\u06cc \u0635\u0648\u062a\r\n      audio.addEventListener('pause', () => setState(false, false));\r\n      audio.addEventListener('ended', () => setState(false, false));\r\n      audio.addEventListener('error', () => setState(false, false));\r\n      \r\n      \/\/ \u0631\u062c\u06cc\u0633\u062a\u0631 \u062f\u0631 \u0633\u06cc\u0633\u062a\u0645 global\r\n      if (!window.audioShowcasePlayers) {\r\n        window.audioShowcasePlayers = new Set();\r\n      }\r\n      window.audioShowcasePlayers.add({\r\n        id: playerId,\r\n        audio: audio,\r\n        stop: () => {\r\n          if (!audio.paused) {\r\n            audio.pause();\r\n            setState(false, false);\r\n          }\r\n        }\r\n      });\r\n      \r\n    })();\r\n  <\/script>\r\n<\/div>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u0628\u0627 \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627 \u0635\u062f\u0627\u062a\u0648 \u0628\u0647 \u0635\u062f\u0627\u06cc \u06af\u0648\u06cc\u0646\u062f\u06af\u0627\u0646 \u062d\u0631\u0641\u0647 \u0627\u06cc \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0646! \u0628\u0627 \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u0645\u06cc\u0646\u0648\u0631\u06cc\u0641\u0627\u060c \u0635\u062f\u0627\u062a\u0648 \u0628\u0647 \u0635\u062f\u0627\u06cc \u06af\u0648\u06cc\u0646\u062f\u06af\u0627\u0646 \u062d\u0631\u0641\u0647\u200c\u0627\u06cc \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0646 \u062a\u0627 \u0628\u062a\u0648\u0646\u06cc\u060c \u062a\u0648\u0644\u06cc\u062f \u0645\u062d\u062a\u0648\u0627 \u062d\u0631\u0641\u0647 \u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0628\u062f\u06cc \u0648 \u062f\u0631\u0622\u0645\u062f \u062f\u0644\u0627\u0631\u06cc \u06cc\u0627 \u0631\u06cc\u0627\u0644\u06cc \u06a9\u0633\u0628 \u06a9\u0646\u06cc! \u0634\u0631\u0648\u0639 \u06a9\u0646! \u0646\u0645\u0648\u0646\u0647 \u06a9\u0627\u0631 \u0628\u06cc\u0634\u062a\u0631 \u0634\u062e\u0635\u06cc\u062a \u0645\u0631\u0645\u0648\u0632 \u0628\u0686\u0647 \u0634\u06cc\u0637\u0648\u0646 \u062f\u0648\u0628\u0644\u0648\u0631 \u0645\u0631\u062f \u0622\u0647\u0646\u06af \u062a\u0648 \u0628\u0627 \u0647\u0648\u0634 \u0645\u0635\u0646\u0648\u0639\u06cc \u0628\u0633\u0627\u0632 \u0628\u0627 \u0647\u0648\u0634 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-8544","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/minorifa.com\/fa\/wp-json\/wp\/v2\/pages\/8544","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/minorifa.com\/fa\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/minorifa.com\/fa\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/minorifa.com\/fa\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/minorifa.com\/fa\/wp-json\/wp\/v2\/comments?post=8544"}],"version-history":[{"count":30,"href":"https:\/\/minorifa.com\/fa\/wp-json\/wp\/v2\/pages\/8544\/revisions"}],"predecessor-version":[{"id":27051,"href":"https:\/\/minorifa.com\/fa\/wp-json\/wp\/v2\/pages\/8544\/revisions\/27051"}],"wp:attachment":[{"href":"https:\/\/minorifa.com\/fa\/wp-json\/wp\/v2\/media?parent=8544"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}