{"product_id":"osaki-solo-flex","title":"Osaki Solo Flex","description":"\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003e4D MASSAGE\u003c\/strong\u003e MECHANISM\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eAI HEALTH\u003c\/strong\u003e DETECTION\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eROBO WALKING\u003c\/strong\u003e TECHNOLOGY\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e16 AUTO\u003c\/strong\u003e PROGRAMS \u0026amp; \u003cstrong\u003e6 MANUAL\u003c\/strong\u003e MODES\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSPECIALIZED FOOT\u003c\/strong\u003e ROLLERS\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eAUTOMATIC EXTENDABLE\u003c\/strong\u003e CALFREST\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e14 SAFETY\u003c\/strong\u003e SENSORS\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTOUCHSCREEN\u003c\/strong\u003e CONTROLLER \u0026amp; \u003cstrong\u003eINTELLIGENT MEMORY\u003c\/strong\u003e FUNCTION\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eZERO GRAVITY\u003c\/strong\u003e RECLINING\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eQUALITY BLUETOOTH\u003c\/strong\u003e SPEAKERS\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c!-- more --\u003e\n\u003cdiv style=\"min-height: 200px;\" id=\"SoloFlex-content-anchor\"\u003e\n\u003cp style=\"text-align: center; color: #999; padding: 50px;\"\u003eLoading Solo Flex Product Detail...\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript crossorigin=\"anonymous\" integrity=\"sha256-2Pmvv0kuTBOenSvLm6bvfBSSHrUJ+3A7x6P5Ebd07\/g=\" src=\"https:\/\/code.jquery.com\/jquery-3.7.0.min.js\"\u003e\u003c\/script\u003e \u003cscript\u003e\n    (function () {\n        \/\/ 💡 [경로 수정] GitHub 레포지토리의 SoloFlex 폴더로 타겟 변경\n        \/\/ (실제 GitHub 리포지토리에 생성하신 폴더명 'SoloFlex'와 정확히 일치시켜야 합니다)\n        var baseURL = \"https:\/\/RobinChoi00.github.io\/Product\/SoloFlex\/\";\n        var v = new Date().getTime(); \/\/ Cache Busting (브라우저 캐시 무력화)\n\n        \/\/ 1) CSS Injection\n        if (!$('link[href*=\"SoloFlex\/style.css\"]').length) {\n            $('head').append(`\u003clink rel=\"stylesheet\" href=\"${baseURL}style.css?v=${v}\" type=\"text\/css\" \/\u003e`);\n        }\n        \n        \/\/ 2) Google Fonts Integration (Solo Flex 디자인 시스템에 맞춘 폰트 로드)\n        $('head').append(`\u003clink href=\"https:\/\/fonts.googleapis.com\/css2?family=Nunito:wght@300;400;500;600;700;800\u0026family=Oswald:wght@300;400;500;600;700\u0026family=Poppins:wght@300;400;500;600;700;800\u0026family=Roboto:wght@300;400;500;600;700;900\u0026display=swap\" rel=\"stylesheet\"\u003e`);\n\n        \/\/ 3) HTML Fetching \u0026 Image Path Repairing\n        $.ajax({\n            url: baseURL + \"index.html\",\n            data: { v: v },\n            dataType: \"html\",\n            success: function (data) {\n                var parser = new DOMParser();\n                var doc = parser.parseFromString(data, \"text\/html\");\n                var $content = $(doc.body).contents();\n\n                \/\/ 상대 경로 이미지를 절대 경로(GitHub)로 변환 (Cross-Origin 대응)\n                $content.find('img, video source').each(function () {\n                    var src = $(this).attr('src');\n                    if (src \u0026\u0026 !src.startsWith('http')) {\n                        $(this).attr('src', baseURL + src);\n                    }\n                });\n                \n                \/\/ 비디오 태그 소스 재로딩\n                $content.find('video').each(function() {\n                    this.load();\n                });\n\n                \/\/ XSS 방어 및 중복 실행 방지를 위한 script 태그 제거\n                $content.find('script').remove();\n                \n                \/\/ 💡 Solo Flex 앵커에 정제된 HTML 주입 (DOM Injection)\n                $('#SoloFlex-content-anchor').empty().append($content);\n\n                \/\/ 4) External JS Execution (의자 스크립트 등 로직 실행 필요 시)\n                var script = document.createElement(\"script\");\n                script.src = baseURL + \"script.js?v=\" + v;\n                script.defer = true;\n                document.body.appendChild(script);\n            },\n            error: function () {\n                \/\/ 💡 에러 메시지 텍스트를 Solo Flex로 변경\n                $('#SoloFlex-content-anchor').html('\u003cp style=\"color:red; text-align:center;\"\u003eFailed to load Solo Flex content. Please check the network or repository URL.\u003c\/p\u003e');\n            }\n        });\n    })();\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Osaki-Titan","offers":[{"title":"Black \/ Curbside - Free \/ 1 Year (Parts\/Labor) 2\u00263 Year (Parts Only) - Free","offer_id":48618658562277,"sku":"Osaki-Solo-Flex0","price":7999.0,"currency_code":"USD","in_stock":true},{"title":"Black \/ Curbside - Free \/ 1 Year Extended (Parts\/Labor) - $249.95","offer_id":48618658595045,"sku":"Osaki-Solo-Flex1","price":8248.95,"currency_code":"USD","in_stock":true},{"title":"Black \/ Curbside - Free \/ 2 Year Extended (Parts\/Labor) - $349.95","offer_id":48618658627813,"sku":"Osaki-Solo-Flex2","price":8348.95,"currency_code":"USD","in_stock":true},{"title":"Black \/ White Glove - $275 \/ 1 Year (Parts\/Labor) 2\u00263 Year (Parts Only) - Free","offer_id":48618658660581,"sku":"Osaki-Solo-Flex3","price":8274.0,"currency_code":"USD","in_stock":true},{"title":"Black \/ White Glove - $275 \/ 1 Year Extended (Parts\/Labor) - $249.95","offer_id":48618658693349,"sku":"Osaki-Solo-Flex4","price":8523.95,"currency_code":"USD","in_stock":true},{"title":"Black \/ White Glove - $275 \/ 2 Year Extended (Parts\/Labor) - $349.95","offer_id":48618658726117,"sku":"Osaki-Solo-Flex5","price":8623.95,"currency_code":"USD","in_stock":true},{"title":"Brown \/ Curbside - Free \/ 1 Year (Parts\/Labor) 2\u00263 Year (Parts Only) - Free","offer_id":48618658758885,"sku":"Osaki-Solo-Flex6","price":7999.0,"currency_code":"USD","in_stock":true},{"title":"Brown \/ Curbside - Free \/ 1 Year Extended (Parts\/Labor) - $249.95","offer_id":48618658791653,"sku":"Osaki-Solo-Flex7","price":8248.95,"currency_code":"USD","in_stock":true},{"title":"Brown \/ Curbside - Free \/ 2 Year Extended (Parts\/Labor) - $349.95","offer_id":48618658824421,"sku":"Osaki-Solo-Flex8","price":8348.95,"currency_code":"USD","in_stock":true},{"title":"Brown \/ White Glove - $275 \/ 1 Year (Parts\/Labor) 2\u00263 Year (Parts Only) - Free","offer_id":48618658857189,"sku":"Osaki-Solo-Flex9","price":8274.0,"currency_code":"USD","in_stock":true},{"title":"Brown \/ White Glove - $275 \/ 1 Year Extended (Parts\/Labor) - $249.95","offer_id":48618658889957,"sku":"Osaki-Solo-Flex10","price":8523.95,"currency_code":"USD","in_stock":true},{"title":"Brown \/ White Glove - $275 \/ 2 Year Extended (Parts\/Labor) - $349.95","offer_id":48618658922725,"sku":"Osaki-Solo-Flex11","price":8623.95,"currency_code":"USD","in_stock":true},{"title":"Taupe \/ Curbside - Free \/ 1 Year (Parts\/Labor) 2\u00263 Year (Parts Only) - Free","offer_id":48618658955493,"sku":"Osaki-Solo-Flex12","price":7999.0,"currency_code":"USD","in_stock":true},{"title":"Taupe \/ Curbside - Free \/ 1 Year Extended (Parts\/Labor) - $249.95","offer_id":48618658988261,"sku":"Osaki-Solo-Flex13","price":8248.95,"currency_code":"USD","in_stock":true},{"title":"Taupe \/ Curbside - Free \/ 2 Year Extended (Parts\/Labor) - $349.95","offer_id":48618659021029,"sku":"Osaki-Solo-Flex14","price":8348.95,"currency_code":"USD","in_stock":true},{"title":"Taupe \/ White Glove - $275 \/ 1 Year (Parts\/Labor) 2\u00263 Year (Parts Only) - Free","offer_id":48618659053797,"sku":"Osaki-Solo-Flex15","price":8274.0,"currency_code":"USD","in_stock":true},{"title":"Taupe \/ White Glove - $275 \/ 1 Year Extended (Parts\/Labor) - $249.95","offer_id":48618659086565,"sku":"Osaki-Solo-Flex16","price":8523.95,"currency_code":"USD","in_stock":true},{"title":"Taupe \/ White Glove - $275 \/ 2 Year Extended (Parts\/Labor) - $349.95","offer_id":48618659119333,"sku":"Osaki-Solo-Flex17","price":8623.95,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0714\/7500\/3621\/files\/solo_flex_1500px_black_modelMedium_c75291f5-661c-46e1-865b-4405a8f6f887.jpg?v=1774633443","url":"https:\/\/seattlemassagechair.com\/products\/osaki-solo-flex","provider":"OTA-Seattle","version":"1.0","type":"link"}